diff --git a/.circleci/config.yml b/.circleci/config.yml index 3b36cc4802..b40f7d3c8d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -58,9 +58,6 @@ commands: source .venv/bin/activate uv pip install . uv pip install -r ./test_requirements/requirements_optional.txt - cd js - npm ci - npm run build - when: condition: @@ -269,22 +266,18 @@ jobs: steps: - checkout - - run: - name: initial NPM Build + name: PyPI Build command: | - python -m venv venv - . venv/bin/activate + curl -LsSf https://astral.sh/uv/install.sh | sh + uv venv + source .venv/bin/activate + uv pip install build + uv pip install jupyter cd js npm ci npm run build - git status - - - run: - name: PyPI Build - command: | - . venv/bin/activate - pip install build + cd .. python -m build --sdist --wheel -o dist cp -R dist output git status @@ -310,7 +303,6 @@ jobs: - checkout - browser-tools/install-chrome - browser-tools/install-chromedriver - - run: name: Install dependencies command: | @@ -319,16 +311,11 @@ jobs: uv venv source .venv/bin/activate uv pip install -r requirements.txt + cd .. if [ "${CIRCLE_BRANCH}" != "doc-prod" ]; then uv pip uninstall plotly - cd .. uv pip install -e . - cd js - npm ci - npm run build - cd ../doc fi - cd .. - run: name: make html @@ -420,7 +407,7 @@ workflows: release_build: jobs: - full_build - + build: jobs: - test_core_py: @@ -449,4 +436,4 @@ workflows: pandas_version: "1.2.4" numpy_version: "1.26.4" - python_311_percy - - build-doc + - build-doc \ No newline at end of file diff --git a/.github/workflows/check-js-build.yml b/.github/workflows/check-js-build.yml new file mode 100644 index 0000000000..d5e4ea1f8a --- /dev/null +++ b/.github/workflows/check-js-build.yml @@ -0,0 +1,66 @@ +on: push + +jobs: + check-js-build: + name: Check JS build artifacts + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - name: Install Node + uses: actions/setup-node@v2 + with: + node-version: '22' + + - name: Copy current files to a temporary directory + run: | + cp -R plotly/labextension/ plotly/labextension-tmp/ + + - name: Install dependencies and build + run: | + curl -LsSf https://astral.sh/uv/install.sh | sh + uv venv + source .venv/bin/activate + uv pip install jupyter + cd js + npm ci + npm run build + - name: Check JupyterLab build artifacts + run: | + # 1. Hash contents of all static files, sort by content hash + find plotly/labextension/static -type f -exec sha256sum {} \; | awk '{print $1}' | sort > new_hashes.txt + find plotly/labextension-tmp/static -type f -exec sha256sum {} \; | awk '{print $1}' | sort > old_hashes.txt + + # 2. Compare the sorted content hashes + diff old_hashes.txt new_hashes.txt > content_diff.txt + + # Remove the "load" line from both package.json files before comparing + grep -v '"load": "static/' plotly/labextension/package.json > pkg1.json + grep -v '"load": "static/' plotly/labextension-tmp/package.json > pkg2.json + + # Compare stripped versions + diff pkg1.json pkg2.json > package_json_diff.txt + + # 5. Final check + if [ -s content_diff.txt ] || [ -s package_json_diff.txt ]; then + echo "❌ Build artifacts differ:" + echo "--- Unexpected diffs ---" + cat content_diff.txt + echo "--- Unexpected package.json diffs ---" + cat package_json_diff.txt + echo "Please replace the 'plotly/labextension' directory with the artifacts of this CI run." + exit 1 + else + echo "✅ Build artifacts match expected output (ignoring known 'load' hash in package.json)." + fi + + - name: Store the build artifacts from plotly/labextension + uses: actions/upload-artifact@v4 + if: failure() + with: + name: labextension + path: plotly/labextension diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index 12d6e03955..498e798ee0 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -10,8 +10,6 @@ jobs: steps: - uses: actions/checkout@v4 - with: - persist-credentials: false - name: Set up Python uses: actions/setup-python@v5 with: @@ -20,7 +18,7 @@ jobs: - name: Install Node uses: actions/setup-node@v2 with: - node-version: '18' + node-version: '22' - name: Install npm dependencies run: | diff --git a/.gitignore b/.gitignore index 0da5fe396a..dc12befc82 100644 --- a/.gitignore +++ b/.gitignore @@ -59,7 +59,6 @@ doc/python/.mapbox_token doc/.ipynb_checkpoints tags doc/check-or-enforce-order.py -plotly/package_data/widgetbundle.js tests/percy/*.html tests/percy/pandas2/*.html diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a9c8fa7623..a6ab588ed0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -169,6 +169,19 @@ and [`pip`](https://pip.pypa.io/en/stable/reference/pip_install/#install-editable) documentation on _development mode_. +### Updating the `js/` directory +**This is only necessary if you're making changes to files in the `js/` directory.** +If you make changes to any files in the `js/` directory, you must run `npm install && npm run build` from the `js/` directory to rebuild the FigureWidget and JupyterLab extension. +You must then commit the build artifacts produced in `plotly/labextension`. A CI job will verify that this step has been done correctly. + +**Notes on the contents of the `js/` directory:** +The `js/` directory contains Javascript code which helps with using Plotly in Jupyter notebooks. + +There are two kinds of Jupyter support included in the `js/` directory: +1. **Mime Renderer JupyterLab extension**: This is the default renderer for Plotly `Figure()` objects in Jupyter notebooks. The Plotly mime renderer JupyterLab extension is used automatically by JupyterLab / Jupyter Notebook +when it sees the mimetype `application/vnd.plotly.v1+json` in the notebook output. The mime renderer loads `plotly.js` a single time and references it each time a Plotly figure is used in the notebook. This allows us to avoid embedding `plotly.js` in the notebook output. The JupyterLab extension source code is located at `js/src/mimeExtension.ts` and the compiled extension code is located at `plotly/labextension` in the built Python package. The command `jupyter labextension build` (which is one of the steps called by `npm run build`) compiles the extension and places the build artifacts in `plotly/labextension`. +2. **FigureWidget**: This is a more-interactive method for rendering Plotly charts in notebooks. FigureWidget used by creating a `FigureWidget()` object inside the notebook code (in place of a `Figure()`). It allows for communication between the Javascript frontend and Python backend, and requires the installation of an additional Python package (`anywidget`). The FigureWidget source code is located at `js/src/widget.ts`, and is included in the built Python package at `plotly/package_data/widgetbundle.js`. + ### Configure black code formatting This repo uses the [Black](https://black.readthedocs.io/en/stable/) code formatter, diff --git a/js/install.json b/js/install.json new file mode 100644 index 0000000000..556c5ebc79 --- /dev/null +++ b/js/install.json @@ -0,0 +1,9 @@ +{ + "schemaVersion": 1, + "name": "jupyterlab-plotly", + "version": "6.0.1", + "jupyterlab": { + "mimeExtension": "lib/mimeExtension.js" + } +} + \ No newline at end of file diff --git a/js/lib/mimeExtension.js b/js/lib/mimeExtension.js new file mode 100644 index 0000000000..1bdbb0c3bd --- /dev/null +++ b/js/lib/mimeExtension.js @@ -0,0 +1,3865 @@ +var lB=Object.create;var TS=Object.defineProperty;var uB=Object.getOwnPropertyDescriptor;var cB=Object.getOwnPropertyNames;var fB=Object.getPrototypeOf,hB=Object.prototype.hasOwnProperty;var Tw=(Ft,Ae)=>()=>(Ae||Ft((Ae={exports:{}}).exports,Ae),Ae.exports);var dB=(Ft,Ae,wt,At)=>{if(Ae&&typeof Ae=="object"||typeof Ae=="function")for(let Vt of cB(Ae))!hB.call(Ft,Vt)&&Vt!==wt&&TS(Ft,Vt,{get:()=>Ae[Vt],enumerable:!(At=uB(Ae,Vt))||At.enumerable});return Ft};var Jv=(Ft,Ae,wt)=>(wt=Ft!=null?lB(fB(Ft)):{},dB(Ae||!Ft||!Ft.__esModule?TS(wt,"default",{value:Ft,enumerable:!0}):wt,Ft));var Lm=Tw((e_,AS)=>{(function(Ft,Ae){typeof e_=="object"&&typeof AS<"u"?Ae(e_):typeof define=="function"&&define.amd?define(["exports"],Ae):(Ft=typeof globalThis<"u"?globalThis:Ft||self,Ae(Ft.lumino_algorithm={}))})(e_,function(Ft){"use strict";Ft.ArrayExt=void 0,function(Xn){function zn(no,Ro,Qn=0,ta=-1){let ua=no.length;if(ua===0)return-1;Qn<0?Qn=Math.max(0,Qn+ua):Qn=Math.min(Qn,ua-1),ta<0?ta=Math.max(0,ta+ua):ta=Math.min(ta,ua-1);let jo;ta0;){let wd=cc>>1,Np=ms+wd;Qn(no[Np],Ro)<0?(ms=Np+1,cc-=wd+1):cc=wd}return ms}Xn.lowerBound=lu;function uf(no,Ro,Qn,ta=0,ua=-1){let jo=no.length;if(jo===0)return 0;ta<0?ta=Math.max(0,ta+jo):ta=Math.min(ta,jo-1),ua<0?ua=Math.max(0,ua+jo):ua=Math.min(ua,jo-1);let ms=ta,cc=ua-ta+1;for(;cc>0;){let wd=cc>>1,Np=ms+wd;Qn(no[Np],Ro)>0?cc=wd:(ms=Np+1,cc-=wd+1)}return ms}Xn.upperBound=uf;function ju(no,Ro,Qn){if(no===Ro)return!0;if(no.length!==Ro.length)return!1;for(let ta=0,ua=no.length;ta=jo&&(Qn=ua<0?jo-1:jo),ta===void 0?ta=ua<0?-1:jo:ta<0?ta=Math.max(ta+jo,ua<0?-1:0):ta>=jo&&(ta=ua<0?jo-1:jo);let ms;ua<0&&ta>=Qn||ua>0&&Qn>=ta?ms=0:ua<0?ms=Math.floor((ta-Qn+1)/ua+1):ms=Math.floor((ta-Qn-1)/ua+1);let cc=[];for(let wd=0;wd=ta))return;let jo=ta-Qn+1;if(Ro>0?Ro=Ro%jo:Ro<0&&(Ro=(Ro%jo+jo)%jo),Ro===0)return;let ms=Qn+Ro;Vl(no,Qn,ms-1),Vl(no,ms,ta),Vl(no,Qn,ta)}Xn.rotate=ho;function bl(no,Ro,Qn=0,ta=-1){let ua=no.length;if(ua===0)return;Qn<0?Qn=Math.max(0,Qn+ua):Qn=Math.min(Qn,ua-1),ta<0?ta=Math.max(0,ta+ua):ta=Math.min(ta,ua-1);let jo;taRo;--ua)no[ua]=no[ua-1];no[Ro]=Qn}Xn.insert=Bm;function Pd(no,Ro){let Qn=no.length;if(Ro<0&&(Ro+=Qn),Ro<0||Ro>=Qn)return;let ta=no[Ro];for(let ua=Ro+1;ua=Qn&&ms<=ta&&no[ms]===Ro||ta=Qn)&&no[ms]===Ro?jo++:jo>0&&(no[ms-jo]=no[ms]);return jo>0&&(no.length=ua-jo),jo}Xn.removeAllOf=lp;function gf(no,Ro,Qn=0,ta=-1){let ua,jo=Ao(no,Ro,Qn,ta);return jo!==-1&&(ua=Pd(no,jo)),{index:jo,value:ua}}Xn.removeFirstWhere=gf;function $a(no,Ro,Qn=-1,ta=0){let ua,jo=$s(no,Ro,Qn,ta);return jo!==-1&&(ua=Pd(no,jo)),{index:jo,value:ua}}Xn.removeLastWhere=$a;function Iv(no,Ro,Qn=0,ta=-1){let ua=no.length;if(ua===0)return 0;Qn<0?Qn=Math.max(0,Qn+ua):Qn=Math.min(Qn,ua-1),ta<0?ta=Math.max(0,ta+ua):ta=Math.min(ta,ua-1);let jo=0;for(let ms=0;ms=Qn&&ms<=ta&&Ro(no[ms],ms)||ta=Qn)&&Ro(no[ms],ms)?jo++:jo>0&&(no[ms-jo]=no[ms]);return jo>0&&(no.length=ua-jo),jo}Xn.removeAllWhere=Iv}(Ft.ArrayExt||(Ft.ArrayExt={}));function*Ae(...Xn){for(let zn of Xn)yield*zn}function*wt(){}function*At(Xn,zn=0){for(let $n of Xn)yield[zn++,$n]}function*Vt(Xn,zn){let $n=0;for(let Ao of Xn)zn(Ao,$n++)&&(yield Ao)}function rr(Xn,zn){let $n=0;for(let Ao of Xn)if(zn(Ao,$n++))return Ao}function hi(Xn,zn){let $n=0;for(let Ao of Xn)if(zn(Ao,$n++))return $n-1;return-1}function Xr(Xn,zn){let $n;for(let Ao of Xn){if($n===void 0){$n=Ao;continue}zn(Ao,$n)<0&&($n=Ao)}return $n}function ai(Xn,zn){let $n;for(let Ao of Xn){if($n===void 0){$n=Ao;continue}zn(Ao,$n)>0&&($n=Ao)}return $n}function Ti(Xn,zn){let $n=!0,Ao,$s;for(let cl of Xn)$n?(Ao=cl,$s=cl,$n=!1):zn(cl,Ao)<0?Ao=cl:zn(cl,$s)>0&&($s=cl);return $n?void 0:[Ao,$s]}function ei(Xn){return Array.from(Xn)}function di(Xn){let zn={};for(let[$n,Ao]of Xn)zn[$n]=Ao;return zn}function Ei(Xn,zn){let $n=0;for(let Ao of Xn)if(zn(Ao,$n++)===!1)return}function pi(Xn,zn){let $n=0;for(let Ao of Xn)if(zn(Ao,$n++)===!1)return!1;return!0}function Jr(Xn,zn){let $n=0;for(let Ao of Xn)if(zn(Ao,$n++))return!0;return!1}function*Le(Xn,zn){let $n=0;for(let Ao of Xn)yield zn(Ao,$n++)}function*Qi(Xn,zn,$n){zn===void 0?(zn=Xn,Xn=0,$n=1):$n===void 0&&($n=1);let Ao=En.rangeLength(Xn,zn,$n);for(let $s=0;$sAo&&$s>0||$n-1;zn--)yield Xn[zn]}function Ji(Xn){let zn=[],$n=new Set,Ao=new Map;for(let jl of Xn)$s(jl);for(let[jl]of Ao)cl(jl);return zn;function $s(jl){let[lu,uf]=jl,ju=Ao.get(uf);ju?ju.push(lu):Ao.set(uf,[lu])}function cl(jl){if($n.has(jl))return;$n.add(jl);let lu=Ao.get(jl);if(lu)for(let uf of lu)cl(uf);zn.push(jl)}}function*za(Xn,zn){let $n=0;for(let Ao of Xn)$n++%zn===0&&(yield Ao)}Ft.StringExt=void 0,function(Xn){function zn(jl,lu,uf=0){let ju=new Array(lu.length);for(let Tc=0,Vu=uf,Vl=lu.length;Tclu?1:0}Xn.cmp=cl}(Ft.StringExt||(Ft.StringExt={}));function*Ia(Xn,zn){if(zn<1)return;let $n=Xn[Symbol.iterator](),Ao;for(;0Ao[Symbol.iterator]()),$n=zn.map(Ao=>Ao.next());for(;pi($n,Ao=>!Ao.done);$n=zn.map(Ao=>Ao.next()))yield $n.map(Ao=>Ao.value)}Ft.chain=Ae,Ft.each=Ei,Ft.empty=wt,Ft.enumerate=At,Ft.every=pi,Ft.filter=Vt,Ft.find=rr,Ft.findIndex=hi,Ft.map=Le,Ft.max=ai,Ft.min=Xr,Ft.minmax=Ti,Ft.once=gn,Ft.range=Qi,Ft.reduce=wn,Ft.repeat=Wi,Ft.retro=Sn,Ft.some=Jr,Ft.stride=za,Ft.take=Ia,Ft.toArray=ei,Ft.toObject=di,Ft.topologicSort=Ji,Ft.zip=To})});var r_=Tw((t_,MS)=>{(function(Ft,Ae){typeof t_=="object"&&typeof MS<"u"?Ae(t_,Lm()):typeof define=="function"&&define.amd?define(["exports","@lumino/algorithm"],Ae):(Ft=typeof globalThis<"u"?globalThis:Ft||self,Ae(Ft.lumino_coreutils={},Ft.lumino_algorithm))})(t_,function(Ft,Ae){"use strict";Ft.JSONExt=void 0,function(Ti){Ti.emptyObject=Object.freeze({}),Ti.emptyArray=Object.freeze([]);function ei(Wi){return Wi===null||typeof Wi=="boolean"||typeof Wi=="number"||typeof Wi=="string"}Ti.isPrimitive=ei;function di(Wi){return Array.isArray(Wi)}Ti.isArray=di;function Ei(Wi){return!ei(Wi)&&!di(Wi)}Ti.isObject=Ei;function pi(Wi,gn){if(Wi===gn)return!0;if(ei(Wi)||ei(gn))return!1;let Sn=di(Wi),Ji=di(gn);return Sn!==Ji?!1:Sn&&Ji?Le(Wi,gn):Qi(Wi,gn)}Ti.deepEqual=pi;function Jr(Wi){return ei(Wi)?Wi:di(Wi)?En(Wi):wn(Wi)}Ti.deepCopy=Jr;function Le(Wi,gn){if(Wi===gn)return!0;if(Wi.length!==gn.length)return!1;for(let Sn=0,Ji=Wi.length;Sn!0,this._plugins=new Map,this._services=new Map,ei.validatePlugin&&(console.info("Plugins may be rejected by the custom validation plugin method."),this._validatePlugin=ei.validatePlugin)}get application(){return this._application}set application(ei){if(this._application!==null)throw Error("PluginRegistry.application is already set. It cannot be overridden.");this._application=ei}get deferredPlugins(){return Array.from(this._plugins).filter(([ei,di])=>di.autoStart==="defer").map(([ei,di])=>ei)}getPluginDescription(ei){var di,Ei;return(Ei=(di=this._plugins.get(ei))===null||di===void 0?void 0:di.description)!==null&&Ei!==void 0?Ei:""}hasPlugin(ei){return this._plugins.has(ei)}isPluginActivated(ei){var di,Ei;return(Ei=(di=this._plugins.get(ei))===null||di===void 0?void 0:di.activated)!==null&&Ei!==void 0?Ei:!1}listPlugins(){return Array.from(this._plugins.keys())}registerPlugin(ei){if(this._plugins.has(ei.id))throw new TypeError(`Plugin '${ei.id}' is already registered.`);if(!this._validatePlugin(ei))throw new Error(`Plugin '${ei.id}' is not valid.`);let di=Vt.createPluginData(ei);Vt.ensureNoCycle(di,this._plugins,this._services),di.provides&&this._services.set(di.provides,di.id),this._plugins.set(di.id,di)}registerPlugins(ei){for(let di of ei)this.registerPlugin(di)}deregisterPlugin(ei,di){let Ei=this._plugins.get(ei);if(Ei){if(Ei.activated&&!di)throw new Error(`Plugin '${ei}' is still active.`);this._plugins.delete(ei)}}async activatePlugin(ei){let di=this._plugins.get(ei);if(!di)throw new ReferenceError(`Plugin '${ei}' is not registered.`);if(di.activated)return;if(di.promise)return di.promise;let Ei=di.requires.map(Jr=>this.resolveRequiredService(Jr)),pi=di.optional.map(Jr=>this.resolveOptionalService(Jr));return di.promise=Promise.all([...Ei,...pi]).then(Jr=>di.activate.apply(void 0,[this.application,...Jr])).then(Jr=>{di.service=Jr,di.activated=!0,di.promise=null}).catch(Jr=>{throw di.promise=null,Jr}),di.promise}async activatePlugins(ei,di={}){switch(ei){case"defer":{let Ei=this.deferredPlugins.filter(pi=>this._plugins.get(pi).autoStart).map(pi=>this.activatePlugin(pi));await Promise.all(Ei);break}case"startUp":{let pi=Vt.collectStartupPlugins(this._plugins,di).map(async Jr=>{try{return await this.activatePlugin(Jr)}catch(Le){console.error(`Plugin '${Jr}' failed to activate.`,Le)}});await Promise.all(pi);break}}}async deactivatePlugin(ei){let di=this._plugins.get(ei);if(!di)throw new ReferenceError(`Plugin '${ei}' is not registered.`);if(!di.activated)return[];if(!di.deactivate)throw new TypeError(`Plugin '${ei}'#deactivate() method missing`);let Ei=Vt.findDependents(ei,this._plugins,this._services),pi=Ei.map(Jr=>this._plugins.get(Jr));for(let Jr of pi)if(!Jr.deactivate)throw new TypeError(`Plugin ${Jr.id}#deactivate() method missing (depends on ${ei})`);for(let Jr of pi){let Le=[...Jr.requires,...Jr.optional].map(Qi=>{let En=this._services.get(Qi);return En?this._plugins.get(En).service:null});await Jr.deactivate(this.application,...Le),Jr.service=null,Jr.activated=!1}return Ei.pop(),Ei}async resolveRequiredService(ei){let di=this._services.get(ei);if(!di)throw new TypeError(`No provider for: ${ei.name}.`);let Ei=this._plugins.get(di);return Ei.activated||await this.activatePlugin(di),Ei.service}async resolveOptionalService(ei){let di=this._services.get(ei);if(!di)return null;let Ei=this._plugins.get(di);if(!Ei.activated)try{await this.activatePlugin(di)}catch(pi){return console.error(pi),null}return Ei.service}}var Vt;(function(Ti){class ei{constructor(Qi){var En,wn,Wi,gn;this._activated=!1,this._promise=null,this._service=null,this.id=Qi.id,this.description=(En=Qi.description)!==null&&En!==void 0?En:"",this.activate=Qi.activate,this.deactivate=(wn=Qi.deactivate)!==null&&wn!==void 0?wn:null,this.provides=(Wi=Qi.provides)!==null&&Wi!==void 0?Wi:null,this.autoStart=(gn=Qi.autoStart)!==null&&gn!==void 0?gn:!1,this.requires=Qi.requires?Qi.requires.slice():[],this.optional=Qi.optional?Qi.optional.slice():[]}get activated(){return this._activated}set activated(Qi){this._activated=Qi}get service(){return this._service}set service(Qi){this._service=Qi}get promise(){return this._promise}set promise(Qi){this._promise=Qi}}function di(Le){return new ei(Le)}Ti.createPluginData=di;function Ei(Le,Qi,En){let wn=[...Le.requires,...Le.optional],Wi=Sn=>{if(Sn===Le.provides)return!0;let Ji=En.get(Sn);if(!Ji)return!1;let za=Qi.get(Ji),Ia=[...za.requires,...za.optional];return Ia.length===0?!1:(gn.push(Ji),Ia.some(Wi)?!0:(gn.pop(),!1))};if(!Le.provides||wn.length===0)return;let gn=[Le.id];if(wn.some(Wi))throw new ReferenceError(`Cycle detected: ${gn.join(" -> ")}.`)}Ti.ensureNoCycle=Ei;function pi(Le,Qi,En){let wn=new Array,Wi=Ia=>{let To=Qi.get(Ia),Xn=[...To.requires,...To.optional];wn.push(...Xn.reduce((zn,$n)=>{let Ao=En.get($n);return Ao&&zn.push([Ia,Ao]),zn},[]))};for(let Ia of Qi.keys())Wi(Ia);let gn=wn.filter(Ia=>Ia[1]===Le),Sn=0;for(;gn.length>Sn;){let Ia=gn.length,To=new Set(gn.map(Xn=>Xn[0]));for(let Xn of To)wn.filter(zn=>zn[1]===Xn).forEach(zn=>{gn.includes(zn)||gn.push(zn)});Sn=Ia}let Ji=Ae.topologicSort(gn),za=Ji.findIndex(Ia=>Ia===Le);return za===-1?[Le]:Ji.slice(0,za+1)}Ti.findDependents=pi;function Jr(Le,Qi){let En=new Set;for(let wn of Le.keys())Le.get(wn).autoStart===!0&&En.add(wn);if(Qi.startPlugins)for(let wn of Qi.startPlugins)En.add(wn);if(Qi.ignorePlugins)for(let wn of Qi.ignorePlugins)En.delete(wn);return Array.from(En)}Ti.collectStartupPlugins=Jr})(Vt||(Vt={}));class rr{constructor(){this.promise=new Promise((ei,di)=>{this._resolve=ei,this._reject=di})}resolve(ei){let di=this._resolve;di(ei)}reject(ei){let di=this._reject;di(ei)}}class hi{constructor(ei,di){this.name=ei,this.description=di??"",this._tokenStructuralPropertyT=null}}function Xr(Ti){let ei=0;for(let di=0,Ei=Ti.length;di>>0),Ti[di]=ei&255,ei>>>=8}Ft.Random=void 0,function(Ti){Ti.getRandomValues=(()=>{let ei=typeof window<"u"&&(window.crypto||window.msCrypto)||null;return ei&&typeof ei.getRandomValues=="function"?function(Ei){return ei.getRandomValues(Ei)}:Xr})()}(Ft.Random||(Ft.Random={}));function ai(Ti){let ei=new Uint8Array(16),di=new Array(256);for(let Ei=0;Ei<16;++Ei)di[Ei]="0"+Ei.toString(16);for(let Ei=16;Ei<256;++Ei)di[Ei]=Ei.toString(16);return function(){return Ti(ei),ei[6]=64|ei[6]&15,ei[8]=128|ei[8]&63,di[ei[0]]+di[ei[1]]+di[ei[2]]+di[ei[3]]+"-"+di[ei[4]]+di[ei[5]]+"-"+di[ei[6]]+di[ei[7]]+"-"+di[ei[8]]+di[ei[9]]+"-"+di[ei[10]]+di[ei[11]]+di[ei[12]]+di[ei[13]]+di[ei[14]]+di[ei[15]]}}Ft.UUID=void 0,function(Ti){Ti.uuid4=ai(Ft.Random.getRandomValues)}(Ft.UUID||(Ft.UUID={})),Ft.MimeData=wt,Ft.PluginRegistry=At,Ft.PromiseDelegate=rr,Ft.Token=hi})});var DS=Tw((RS,d_)=>{(function(Ft,Ae){typeof d_=="object"&&d_.exports?d_.exports=Ae():Ft.moduleName=Ae()})(typeof self<"u"?self:RS,()=>{"use strict";var Ft=(()=>{var Ae=Object.create,wt=Object.defineProperty,At=Object.defineProperties,Vt=Object.getOwnPropertyDescriptor,rr=Object.getOwnPropertyDescriptors,hi=Object.getOwnPropertyNames,Xr=Object.getOwnPropertySymbols,ai=Object.getPrototypeOf,Ti=Object.prototype.hasOwnProperty,ei=Object.prototype.propertyIsEnumerable,di=(Z,H,g)=>H in Z?wt(Z,H,{enumerable:!0,configurable:!0,writable:!0,value:g}):Z[H]=g,Ei=(Z,H)=>{for(var g in H||(H={}))Ti.call(H,g)&&di(Z,g,H[g]);if(Xr)for(var g of Xr(H))ei.call(H,g)&&di(Z,g,H[g]);return Z},pi=(Z,H)=>At(Z,rr(H)),Jr=(Z,H)=>function(){return Z&&(H=(0,Z[hi(Z)[0]])(Z=0)),H},Le=(Z,H)=>function(){return H||(0,Z[hi(Z)[0]])((H={exports:{}}).exports,H),H.exports},Qi=(Z,H)=>{for(var g in H)wt(Z,g,{get:H[g],enumerable:!0})},En=(Z,H,g,x)=>{if(H&&typeof H=="object"||typeof H=="function")for(let A of hi(H))!Ti.call(Z,A)&&A!==g&&wt(Z,A,{get:()=>H[A],enumerable:!(x=Vt(H,A))||x.enumerable});return Z},wn=(Z,H,g)=>(g=Z!=null?Ae(ai(Z)):{},En(H||!Z||!Z.__esModule?wt(g,"default",{value:Z,enumerable:!0}):g,Z)),Wi=Z=>En(wt({},"__esModule",{value:!0}),Z),gn=Le({"src/version.js"(Z){"use strict";Z.version="3.0.1"}}),Sn=Le({"node_modules/native-promise-only/lib/npo.src.js"(Z,H){(function(x,A,S){A[x]=A[x]||S(),typeof H<"u"&&H.exports&&(H.exports=A[x])})("Promise",typeof window<"u"?window:Z,function(){"use strict";var x,A,S,e=Object.prototype.toString,t=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),x=function(_,w,M,E){return Object.defineProperty(_,w,{value:M,writable:!0,configurable:E!==!1})}}catch{x=function(w,M,E){return w[M]=E,w}}S=function(){var _,w,M;function E(m,b){this.fn=m,this.self=b,this.next=void 0}return{add:function(b,v){M=new E(b,v),w?w.next=M:_=M,w=M,M=void 0},drain:function(){var b=_;for(_=w=A=void 0;b;)b.fn.call(b.self),b=b.next}}}();function r(l,_){S.add(l,_),A||(A=t(S.drain))}function o(l){var _,w=typeof l;return l!=null&&(w=="object"||w=="function")&&(_=l.then),typeof _=="function"?_:!1}function i(){for(var l=0;l0&&r(i,w))}catch(M){s.call(new h(w),M)}}}function s(l){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=l,_.state=2,_.chain.length>0&&r(i,_))}function c(l,_,w,M){for(var E=0;E<_.length;E++)(function(b){l.resolve(_[b]).then(function(u){w(b,u)},M)})(E)}function h(l){this.def=l,this.triggered=!1}function p(l){this.promise=l,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function d(l){if(typeof l!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(M,E){var m={success:typeof M=="function"?M:!0,failure:typeof E=="function"?E:!1};return m.promise=new this.constructor(function(v,u){if(typeof v!="function"||typeof u!="function")throw TypeError("Not a function");m.resolve=v,m.reject=u}),_.chain.push(m),_.state!==0&&r(i,_),m.promise},this.catch=function(M){return this.then(void 0,M)};try{l.call(void 0,function(M){a.call(_,M)},function(M){s.call(_,M)})}catch(w){s.call(_,w)}}var T=x({},"constructor",d,!1);return d.prototype=T,x(T,"__NPO__",0,!1),x(d,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");E(_)})}),x(d,"reject",function(_){return new this(function(M,E){if(typeof M!="function"||typeof E!="function")throw TypeError("Not a function");E(_)})}),x(d,"all",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");var b=_.length,v=Array(b),u=0;c(w,_,function(f,P){v[f]=P,++u===b&&E(v)},m)})}),x(d,"race",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");c(w,_,function(v,u){E(u)},m)})}),d})}}),Ji=Le({"node_modules/@plotly/d3/d3.js"(Z,H){(function(){var g={version:"3.8.2"},x=[].slice,A=function(de){return x.call(de)},S=self.document;function e(de){return de&&(de.ownerDocument||de.document||de).documentElement}function t(de){return de&&(de.ownerDocument&&de.ownerDocument.defaultView||de.document&&de||de.defaultView)}if(S)try{A(S.documentElement.childNodes)[0].nodeType}catch{A=function(Re){for(var Ke=Re.length,ft=new Array(Ke);Ke--;)ft[Ke]=Re[Ke];return ft}}if(Date.now||(Date.now=function(){return+new Date}),S)try{S.createElement("DIV").style.setProperty("opacity",0,"")}catch{var r=this.Element.prototype,o=r.setAttribute,i=r.setAttributeNS,n=this.CSSStyleDeclaration.prototype,a=n.setProperty;r.setAttribute=function(Re,Ke){o.call(this,Re,Ke+"")},r.setAttributeNS=function(Re,Ke,ft){i.call(this,Re,Ke,ft+"")},n.setProperty=function(Re,Ke,ft){a.call(this,Re,Ke+"",ft)}}g.ascending=s;function s(de,Re){return deRe?1:de>=Re?0:NaN}g.descending=function(de,Re){return Rede?1:Re>=de?0:NaN},g.min=function(de,Re){var Ke=-1,ft=de.length,dt,xt;if(arguments.length===1){for(;++Ke=xt){dt=xt;break}for(;++Kext&&(dt=xt)}else{for(;++Ke=xt){dt=xt;break}for(;++Kext&&(dt=xt)}return dt},g.max=function(de,Re){var Ke=-1,ft=de.length,dt,xt;if(arguments.length===1){for(;++Ke=xt){dt=xt;break}for(;++Kedt&&(dt=xt)}else{for(;++Ke=xt){dt=xt;break}for(;++Kedt&&(dt=xt)}return dt},g.extent=function(de,Re){var Ke=-1,ft=de.length,dt,xt,Jt;if(arguments.length===1){for(;++Ke=xt){dt=Jt=xt;break}for(;++Kext&&(dt=xt),Jt=xt){dt=Jt=xt;break}for(;++Kext&&(dt=xt),Jt1)return Jt/(sr-1)},g.deviation=function(){var de=g.variance.apply(this,arguments);return de&&Math.sqrt(de)};function p(de){return{left:function(Re,Ke,ft,dt){for(arguments.length<3&&(ft=0),arguments.length<4&&(dt=Re.length);ft>>1;de(Re[xt],Ke)<0?ft=xt+1:dt=xt}return ft},right:function(Re,Ke,ft,dt){for(arguments.length<3&&(ft=0),arguments.length<4&&(dt=Re.length);ft>>1;de(Re[xt],Ke)>0?dt=xt:ft=xt+1}return ft}}}var d=p(s);g.bisectLeft=d.left,g.bisect=g.bisectRight=d.right,g.bisector=function(de){return p(de.length===1?function(Re,Ke){return s(de(Re),Ke)}:de)},g.shuffle=function(de,Re,Ke){(ft=arguments.length)<3&&(Ke=de.length,ft<2&&(Re=0));for(var ft=Ke-Re,dt,xt;ft;)xt=Math.random()*ft--|0,dt=de[ft+Re],de[ft+Re]=de[xt+Re],de[xt+Re]=dt;return de},g.permute=function(de,Re){for(var Ke=Re.length,ft=new Array(Ke);Ke--;)ft[Ke]=de[Re[Ke]];return ft},g.pairs=function(de){for(var Re=0,Ke=de.length-1,ft,dt=de[0],xt=new Array(Ke<0?0:Ke);Re=0;)for(Jt=de[Re],Ke=Jt.length;--Ke>=0;)xt[--dt]=Jt[Ke];return xt};var l=Math.abs;g.range=function(de,Re,Ke){if(arguments.length<3&&(Ke=1,arguments.length<2&&(Re=de,de=0)),(Re-de)/Ke===1/0)throw new Error("infinite range");var ft=[],dt=_(l(Ke)),xt=-1,Jt;if(de*=dt,Re*=dt,Ke*=dt,Ke<0)for(;(Jt=de+Ke*++xt)>Re;)ft.push(Jt/dt);else for(;(Jt=de+Ke*++xt)=Re.length)return dt?dt.call(de,sr):ft?sr.sort(ft):sr;for(var Or=-1,bi=sr.length,gi=Re[zr++],Ki,rn,Si,Ui=new M,Xi;++Or=Re.length)return It;var zr=[],Or=Ke[sr++];return It.forEach(function(bi,gi){zr.push({key:bi,values:Jt(gi,sr)})}),Or?zr.sort(function(bi,gi){return Or(bi.key,gi.key)}):zr}return de.map=function(It,sr){return xt(sr,It,0)},de.entries=function(It){return Jt(xt(g.map,It,0),0)},de.key=function(It){return Re.push(It),de},de.sortKeys=function(It){return Ke[Re.length-1]=It,de},de.sortValues=function(It){return ft=It,de},de.rollup=function(It){return dt=It,de},de},g.set=function(de){var Re=new z;if(de)for(var Ke=0,ft=de.length;Ke=0&&(ft=de.slice(Ke+1),de=de.slice(0,Ke)),de)return arguments.length<2?this[de].on(ft):this[de].on(ft,Re);if(arguments.length===2){if(Re==null)for(de in this)this.hasOwnProperty(de)&&this[de].on(ft,null);return this}};function W(de){var Re=[],Ke=new M;function ft(){for(var dt=Re,xt=-1,Jt=dt.length,It;++xt=0&&(Ke=de.slice(0,Re))!=="xmlns"&&(de=de.slice(Re+1)),ce.hasOwnProperty(Ke)?{space:ce[Ke],local:de}:de}},ae.attr=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var Ke=this.node();return de=g.ns.qualify(de),de.local?Ke.getAttributeNS(de.space,de.local):Ke.getAttribute(de)}for(Re in de)this.each(_e(Re,de[Re]));return this}return this.each(_e(de,Re))};function _e(de,Re){de=g.ns.qualify(de);function Ke(){this.removeAttribute(de)}function ft(){this.removeAttributeNS(de.space,de.local)}function dt(){this.setAttribute(de,Re)}function xt(){this.setAttributeNS(de.space,de.local,Re)}function Jt(){var sr=Re.apply(this,arguments);sr==null?this.removeAttribute(de):this.setAttribute(de,sr)}function It(){var sr=Re.apply(this,arguments);sr==null?this.removeAttributeNS(de.space,de.local):this.setAttributeNS(de.space,de.local,sr)}return Re==null?de.local?ft:Ke:typeof Re=="function"?de.local?It:Jt:de.local?xt:dt}function we(de){return de.trim().replace(/\s+/g," ")}ae.classed=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var Ke=this.node(),ft=(de=Ie(de)).length,dt=-1;if(Re=Ke.classList){for(;++dt=0;)(xt=Ke[ft])&&(dt&&dt!==xt.nextSibling&&dt.parentNode.insertBefore(xt,dt),dt=xt);return this},ae.sort=function(de){de=ze.apply(this,arguments);for(var Re=-1,Ke=this.length;++Re=Re&&(Re=dt+1);!(sr=Jt[Re])&&++Re0&&(de=de.slice(0,dt));var Jt=Bt.get(de);Jt&&(de=Jt,xt=cr);function It(){var Or=this[ft];Or&&(this.removeEventListener(de,Or,Or.$),delete this[ft])}function sr(){var Or=xt(Re,A(arguments));It.call(this),this.addEventListener(de,this[ft]=Or,Or.$=Ke),Or._=Re}function zr(){var Or=new RegExp("^__on([^.]+)"+g.requote(de)+"$"),bi;for(var gi in this)if(bi=gi.match(Or)){var Ki=this[gi];this.removeEventListener(bi[1],Ki,Ki.$),delete this[gi]}}return dt?Re?sr:It:Re?N:zr}var Bt=g.map({mouseenter:"mouseover",mouseleave:"mouseout"});S&&Bt.forEach(function(de){"on"+de in S&&Bt.remove(de)});function jt(de,Re){return function(Ke){var ft=g.event;g.event=Ke,Re[0]=this.__data__;try{de.apply(this,Re)}finally{g.event=ft}}}function cr(de,Re){var Ke=jt(de,Re);return function(ft){var dt=this,xt=ft.relatedTarget;(!xt||xt!==dt&&!(xt.compareDocumentPosition(dt)&8))&&Ke.call(dt,ft)}}var nr,Lr=0;function mr(de){var Re=".dragsuppress-"+ ++Lr,Ke="click"+Re,ft=g.select(t(de)).on("touchmove"+Re,Q).on("dragstart"+Re,Q).on("selectstart"+Re,Q);if(nr==null&&(nr="onselectstart"in de?!1:B(de.style,"userSelect")),nr){var dt=e(de).style,xt=dt[nr];dt[nr]="none"}return function(Jt){if(ft.on(Re,null),nr&&(dt[nr]=xt),Jt){var It=function(){ft.on(Ke,null)};ft.on(Ke,function(){Q(),It()},!0),setTimeout(It,0)}}}g.mouse=function(de){return mt(de,le())};var xr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function mt(de,Re){Re.changedTouches&&(Re=Re.changedTouches[0]);var Ke=de.ownerSVGElement||de;if(Ke.createSVGPoint){var ft=Ke.createSVGPoint();if(xr<0){var dt=t(de);if(dt.scrollX||dt.scrollY){Ke=g.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var xt=Ke[0][0].getScreenCTM();xr=!(xt.f||xt.e),Ke.remove()}}return xr?(ft.x=Re.pageX,ft.y=Re.pageY):(ft.x=Re.clientX,ft.y=Re.clientY),ft=ft.matrixTransform(de.getScreenCTM().inverse()),[ft.x,ft.y]}var Jt=de.getBoundingClientRect();return[Re.clientX-Jt.left-de.clientLeft,Re.clientY-Jt.top-de.clientTop]}g.touch=function(de,Re,Ke){if(arguments.length<3&&(Ke=Re,Re=le().changedTouches),Re){for(var ft=0,dt=Re.length,xt;ft0?1:de<0?-1:0}function yt(de,Re,Ke){return(Re[0]-de[0])*(Ke[1]-de[1])-(Re[1]-de[1])*(Ke[0]-de[0])}function Pt(de){return de>1?0:de<-1?Se:Math.acos(de)}function Ot(de){return de>1?be:de<-1?-be:Math.asin(de)}function Wt(de){return((de=Math.exp(de))-1/de)/2}function $t(de){return((de=Math.exp(de))+1/de)/2}function lr(de){return((de=Math.exp(2*de))-1)/(de+1)}function fi(de){return(de=Math.sin(de/2))*de}var Pi=Math.SQRT2,Bi=2,zi=4;g.interpolateZoom=function(de,Re){var Ke=de[0],ft=de[1],dt=de[2],xt=Re[0],Jt=Re[1],It=Re[2],sr=xt-Ke,zr=Jt-ft,Or=sr*sr+zr*zr,bi,gi;if(Or0&&(oa=oa.transition().duration(Jt)),oa.call(nn.event)}function ro(){Ui&&Ui.domain(Si.range().map(function(oa){return(oa-de.x)/de.k}).map(Si.invert)),ln&&ln.domain(Xi.range().map(function(oa){return(oa-de.y)/de.k}).map(Xi.invert))}function ao(oa){It++||oa({type:"zoomstart"})}function is(oa){ro(),oa({type:"zoom",scale:de.k,translate:[de.x,de.y]})}function lo(oa){--It||(oa({type:"zoomend"}),Ke=null)}function ts(){var oa=this,wo=rn.of(oa,arguments),ws=0,Cs=g.select(t(oa)).on(zr,xu).on(Or,Ul),Al=ji(g.mouse(oa)),Gl=mr(oa);ja.call(oa),ao(wo);function xu(){ws=1,ga(g.mouse(oa),Al),is(wo)}function Ul(){Cs.on(zr,null).on(Or,null),Gl(ws),lo(wo)}}function ul(){var oa=this,wo=rn.of(oa,arguments),ws={},Cs=0,Al,Gl=".zoom-"+g.event.changedTouches[0].identifier,xu="touchmove"+Gl,Ul="touchend"+Gl,_c=[],er=g.select(oa),oi=mr(oa);mn(),ao(wo),er.on(sr,null).on(gi,mn);function Li(){var Dn=g.touches(oa);return Al=de.k,Dn.forEach(function(Jn){Jn.identifier in ws&&(ws[Jn.identifier]=ji(Jn))}),Dn}function mn(){var Dn=g.event.target;g.select(Dn).on(xu,Fn).on(Ul,Rn),_c.push(Dn);for(var Jn=g.event.changedTouches,Sa=0,Ea=Jn.length;Sa1){var wa=ca[0],Ta=ca[1],ea=wa[0]-Ta[0],_n=wa[1]-Ta[1];Cs=ea*ea+_n*_n}}function Fn(){var Dn=g.touches(oa),Jn,Sa,Ea,ca;ja.call(oa);for(var $o=0,wa=Dn.length;$o1?1:Re,Ke=Ke<0?0:Ke>1?1:Ke,dt=Ke<=.5?Ke*(1+Re):Ke+Re-Ke*Re,ft=2*Ke-dt;function xt(It){return It>360?It-=360:It<0&&(It+=360),It<60?ft+(dt-ft)*It/60:It<180?dt:It<240?ft+(dt-ft)*(240-It)/60:ft}function Jt(It){return Math.round(xt(It)*255)}return new wr(Jt(de+120),Jt(de),Jt(de-120))}g.hcl=Ut;function Ut(de,Re,Ke){return this instanceof Ut?(this.h=+de,this.c=+Re,void(this.l=+Ke)):arguments.length<2?de instanceof Ut?new Ut(de.h,de.c,de.l):de instanceof _i?vt(de.l,de.a,de.b):vt((de=mi((de=g.rgb(de)).r,de.g,de.b)).l,de.a,de.b):new Ut(de,Re,Ke)}var br=Ut.prototype=new vn;br.brighter=function(de){return new Ut(this.h,this.c,Math.min(100,this.l+Yr*(arguments.length?de:1)))},br.darker=function(de){return new Ut(this.h,this.c,Math.max(0,this.l-Yr*(arguments.length?de:1)))},br.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(de,Re,Ke){return isNaN(de)&&(de=0),isNaN(Re)&&(Re=0),new _i(Ke,Math.cos(de*=Ce)*Re,Math.sin(de)*Re)}g.lab=_i;function _i(de,Re,Ke){return this instanceof _i?(this.l=+de,this.a=+Re,void(this.b=+Ke)):arguments.length<2?de instanceof _i?new _i(de.l,de.a,de.b):de instanceof Ut?Zr(de.h,de.c,de.l):mi((de=wr(de)).r,de.g,de.b):new _i(de,Re,Ke)}var Yr=18,Di=.95047,qi=1,$i=1.08883,Mi=_i.prototype=new vn;Mi.brighter=function(de){return new _i(Math.min(100,this.l+Yr*(arguments.length?de:1)),this.a,this.b)},Mi.darker=function(de){return new _i(Math.max(0,this.l-Yr*(arguments.length?de:1)),this.a,this.b)},Mi.rgb=function(){return sn(this.l,this.a,this.b)};function sn(de,Re,Ke){var ft=(de+16)/116,dt=ft+Re/500,xt=ft-Ke/200;return dt=pt(dt)*Di,ft=pt(ft)*qi,xt=pt(xt)*$i,new wr(Cr(3.2404542*dt-1.5371385*ft-.4985314*xt),Cr(-.969266*dt+1.8760108*ft+.041556*xt),Cr(.0556434*dt-.2040259*ft+1.0572252*xt))}function vt(de,Re,Ke){return de>0?new Ut(Math.atan2(Ke,Re)*et,Math.sqrt(Re*Re+Ke*Ke),de):new Ut(NaN,NaN,de)}function pt(de){return de>.206893034?de*de*de:(de-4/29)/7.787037}function kr(de){return de>.008856?Math.pow(de,1/3):7.787037*de+4/29}function Cr(de){return Math.round(255*(de<=.00304?12.92*de:1.055*Math.pow(de,1/2.4)-.055))}g.rgb=wr;function wr(de,Re,Ke){return this instanceof wr?(this.r=~~de,this.g=~~Re,void(this.b=~~Ke)):arguments.length<2?de instanceof wr?new wr(de.r,de.g,de.b):Qr(""+de,wr,qt):new wr(de,Re,Ke)}function Ar(de){return new wr(de>>16,de>>8&255,de&255)}function Er(de){return Ar(de)+""}var Br=wr.prototype=new vn;Br.brighter=function(de){de=Math.pow(.7,arguments.length?de:1);var Re=this.r,Ke=this.g,ft=this.b,dt=30;return!Re&&!Ke&&!ft?new wr(dt,dt,dt):(Re&&Re>4,ft=ft>>4|ft,dt=sr&240,dt=dt>>4|dt,xt=sr&15,xt=xt<<4|xt):de.length===7&&(ft=(sr&16711680)>>16,dt=(sr&65280)>>8,xt=sr&255)),Re(ft,dt,xt))}function ci(de,Re,Ke){var ft=Math.min(de/=255,Re/=255,Ke/=255),dt=Math.max(de,Re,Ke),xt=dt-ft,Jt,It,sr=(dt+ft)/2;return xt?(It=sr<.5?xt/(dt+ft):xt/(2-dt-ft),de==dt?Jt=(Re-Ke)/xt+(Re0&&sr<1?0:Jt),new Xt(Jt,It,sr)}function mi(de,Re,Ke){de=Et(de),Re=Et(Re),Ke=Et(Ke);var ft=kr((.4124564*de+.3575761*Re+.1804375*Ke)/Di),dt=kr((.2126729*de+.7151522*Re+.072175*Ke)/qi),xt=kr((.0193339*de+.119192*Re+.9503041*Ke)/$i);return _i(116*dt-16,500*(ft-dt),200*(dt-xt))}function Et(de){return(de/=255)<=.04045?de/12.92:Math.pow((de+.055)/1.055,2.4)}function ar(de){var Re=parseFloat(de);return de.charAt(de.length-1)==="%"?Math.round(Re*2.55):Re}var gr=g.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});gr.forEach(function(de,Re){gr.set(de,Ar(Re))});function ti(de){return typeof de=="function"?de:function(){return de}}g.functor=ti,g.xhr=wi(F);function wi(de){return function(Re,Ke,ft){return arguments.length===2&&typeof Ke=="function"&&(ft=Ke,Ke=null),Gi(Re,Ke,de,ft)}}function Gi(de,Re,Ke,ft){var dt={},xt=g.dispatch("beforesend","progress","load","error"),Jt={},It=new XMLHttpRequest,sr=null;self.XDomainRequest&&!("withCredentials"in It)&&/^(http(s)?:)?\/\//.test(de)&&(It=new XDomainRequest),"onload"in It?It.onload=It.onerror=zr:It.onreadystatechange=function(){It.readyState>3&&zr()};function zr(){var Or=It.status,bi;if(!Or&&xi(It)||Or>=200&&Or<300||Or===304){try{bi=Ke.call(dt,It)}catch(gi){xt.error.call(dt,gi);return}xt.load.call(dt,bi)}else xt.error.call(dt,It)}return It.onprogress=function(Or){var bi=g.event;g.event=Or;try{xt.progress.call(dt,It)}finally{g.event=bi}},dt.header=function(Or,bi){return Or=(Or+"").toLowerCase(),arguments.length<2?Jt[Or]:(bi==null?delete Jt[Or]:Jt[Or]=bi+"",dt)},dt.mimeType=function(Or){return arguments.length?(Re=Or==null?null:Or+"",dt):Re},dt.responseType=function(Or){return arguments.length?(sr=Or,dt):sr},dt.response=function(Or){return Ke=Or,dt},["get","post"].forEach(function(Or){dt[Or]=function(){return dt.send.apply(dt,[Or].concat(A(arguments)))}}),dt.send=function(Or,bi,gi){if(arguments.length===2&&typeof bi=="function"&&(gi=bi,bi=null),It.open(Or,de,!0),Re!=null&&!("accept"in Jt)&&(Jt.accept=Re+",*/*"),It.setRequestHeader)for(var Ki in Jt)It.setRequestHeader(Ki,Jt[Ki]);return Re!=null&&It.overrideMimeType&&It.overrideMimeType(Re),sr!=null&&(It.responseType=sr),gi!=null&&dt.on("error",gi).on("load",function(rn){gi(null,rn)}),xt.beforesend.call(dt,It),It.send(bi??null),dt},dt.abort=function(){return It.abort(),dt},g.rebind(dt,xt,"on"),ft==null?dt:dt.get(Fi(ft))}function Fi(de){return de.length===1?function(Re,Ke){de(Re==null?Ke:null)}:de}function xi(de){var Re=de.responseType;return Re&&Re!=="text"?de.response:de.responseText}g.dsv=function(de,Re){var Ke=new RegExp('["'+de+` +]`),ft=de.charCodeAt(0);function dt(zr,Or,bi){arguments.length<3&&(bi=Or,Or=null);var gi=Gi(zr,Re,Or==null?xt:Jt(Or),bi);return gi.row=function(Ki){return arguments.length?gi.response((Or=Ki)==null?xt:Jt(Ki)):Or},gi}function xt(zr){return dt.parse(zr.responseText)}function Jt(zr){return function(Or){return dt.parse(Or.responseText,zr)}}dt.parse=function(zr,Or){var bi;return dt.parseRows(zr,function(gi,Ki){if(bi)return bi(gi,Ki-1);var rn=function(Si){for(var Ui={},Xi=gi.length,ln=0;ln=rn)return gi;if(ln)return ln=!1,bi;var Kn=Si;if(zr.charCodeAt(Kn)===34){for(var ia=Kn;ia++24?(isFinite(Re)&&(clearTimeout(ba),ba=setTimeout(Qa,Re)),hn=0):(hn=1,Aa(Qa))}g.timer.flush=function(){yo(),Ga()};function yo(){for(var de=Date.now(),Re=Ii;Re;)de>=Re.t&&Re.c(de-Re.t)&&(Re.c=null),Re=Re.n;return de}function Ga(){for(var de,Re=Ii,Ke=1/0;Re;)Re.c?(Re.t=0;--It)Si.push(dt[zr[bi[It]][2]]);for(It=+Ki;It1&&yt(de[Ke[ft-2]],de[Ke[ft-1]],de[dt])<=0;)--ft;Ke[ft++]=dt}return Ke.slice(0,ft)}function es(de,Re){return de[0]-Re[0]||de[1]-Re[1]}g.geom.polygon=function(de){return G(de,bs),de};var bs=g.geom.polygon.prototype=[];bs.area=function(){for(var de=-1,Re=this.length,Ke,ft=this[Re-1],dt=0;++deZe)It=It.L;else if(Jt=Re-ko(It,Ke),Jt>Ze){if(!It.R){ft=It;break}It=It.R}else{xt>-Ze?(ft=It.P,dt=It):Jt>-Ze?(ft=It,dt=It.N):ft=dt=It;break}var sr=ps(de);if(gs.insert(ft,sr),!(!ft&&!dt)){if(ft===dt){Ho(ft),dt=ps(ft.site),gs.insert(sr,dt),sr.edge=dt.edge=tu(ft.site,sr.site),aa(ft),aa(dt);return}if(!dt){sr.edge=tu(ft.site,sr.site);return}Ho(ft),Ho(dt);var zr=ft.site,Or=zr.x,bi=zr.y,gi=de.x-Or,Ki=de.y-bi,rn=dt.site,Si=rn.x-Or,Ui=rn.y-bi,Xi=2*(gi*Ui-Ki*Si),ln=gi*gi+Ki*Ki,nn=Si*Si+Ui*Ui,ji={x:(Ui*ln-Ki*nn)/Xi+Or,y:(gi*nn-Si*ln)/Xi+bi};kl(dt.edge,zr,rn,ji),sr.edge=tu(zr,de,null,ji),dt.edge=tu(de,rn,null,ji),aa(ft),aa(dt)}}function Ys(de,Re){var Ke=de.site,ft=Ke.x,dt=Ke.y,xt=dt-Re;if(!xt)return ft;var Jt=de.P;if(!Jt)return-1/0;Ke=Jt.site;var It=Ke.x,sr=Ke.y,zr=sr-Re;if(!zr)return It;var Or=It-ft,bi=1/xt-1/zr,gi=Or/zr;return bi?(-gi+Math.sqrt(gi*gi-2*bi*(Or*Or/(-2*zr)-sr+zr/2+dt-xt/2)))/bi+ft:(ft+It)/2}function ko(de,Re){var Ke=de.N;if(Ke)return Ys(Ke,Re);var ft=de.site;return ft.y===Re?ft.x:1/0}function Js(de){this.site=de,this.edges=[]}Js.prototype.prepare=function(){for(var de=this.edges,Re=de.length,Ke;Re--;)Ke=de[Re].edge,(!Ke.b||!Ke.a)&&de.splice(Re,1);return de.sort(ml),de.length};function ks(de){for(var Re=de[0][0],Ke=de[1][0],ft=de[0][1],dt=de[1][1],xt,Jt,It,sr,zr=ss,Or=zr.length,bi,gi,Ki,rn,Si,Ui;Or--;)if(bi=zr[Or],!(!bi||!bi.prepare()))for(Ki=bi.edges,rn=Ki.length,gi=0;giZe||l(sr-Jt)>Ze)&&(Ki.splice(gi,0,new Hu(Ju(bi.site,Ui,l(It-Re)Ze?{x:Re,y:l(xt-Re)Ze?{x:l(Jt-dt)Ze?{x:Ke,y:l(xt-Ke)Ze?{x:l(Jt-ft)=-Ne)){var gi=sr*sr+zr*zr,Ki=Or*Or+Ui*Ui,rn=(Ui*gi-zr*Ki)/bi,Si=(sr*Ki-Or*gi)/bi,Ui=Si+It,Xi=Hs.pop()||new El;Xi.arc=de,Xi.site=dt,Xi.x=rn+Jt,Xi.y=Ui+Math.sqrt(rn*rn+Si*Si),Xi.cy=Ui,de.circle=Xi;for(var ln=null,nn=Ds._;nn;)if(Xi.y0)){if(Si/=Ki,Ki<0){if(Si0){if(Si>gi)return;Si>bi&&(bi=Si)}if(Si=Ke-It,!(!Ki&&Si<0)){if(Si/=Ki,Ki<0){if(Si>gi)return;Si>bi&&(bi=Si)}else if(Ki>0){if(Si0)){if(Si/=rn,rn<0){if(Si0){if(Si>gi)return;Si>bi&&(bi=Si)}if(Si=ft-sr,!(!rn&&Si<0)){if(Si/=rn,rn<0){if(Si>gi)return;Si>bi&&(bi=Si)}else if(rn>0){if(Si0&&(dt.a={x:It+bi*Ki,y:sr+bi*rn}),gi<1&&(dt.b={x:It+gi*Ki,y:sr+gi*rn}),dt}}}}}}function zs(de){for(var Re=Qo,Ke=po(de[0][0],de[0][1],de[1][0],de[1][1]),ft=Re.length,dt;ft--;)dt=Re[ft],(!hs(dt,de)||!Ke(dt)||l(dt.a.x-dt.b.x)=xt)return;if(Or>gi){if(!ft)ft={x:rn,y:Jt};else if(ft.y>=It)return;Ke={x:rn,y:It}}else{if(!ft)ft={x:rn,y:It};else if(ft.y1)if(Or>gi){if(!ft)ft={x:(Jt-Xi)/Ui,y:Jt};else if(ft.y>=It)return;Ke={x:(It-Xi)/Ui,y:It}}else{if(!ft)ft={x:(It-Xi)/Ui,y:It};else if(ft.y=xt)return;Ke={x:xt,y:Ui*xt+Xi}}else{if(!ft)ft={x:xt,y:Ui*xt+Xi};else if(ft.x=Or&&Xi.x<=gi&&Xi.y>=bi&&Xi.y<=Ki?[[Or,Ki],[gi,Ki],[gi,bi],[Or,bi]]:[];ln.point=sr[Si]}),zr}function It(sr){return sr.map(function(zr,Or){return{x:Math.round(ft(zr,Or)/Ze)*Ze,y:Math.round(dt(zr,Or)/Ze)*Ze,i:Or}})}return Jt.links=function(sr){return Qu(It(sr)).edges.filter(function(zr){return zr.l&&zr.r}).map(function(zr){return{source:sr[zr.l.i],target:sr[zr.r.i]}})},Jt.triangles=function(sr){var zr=[];return Qu(It(sr)).cells.forEach(function(Or,bi){for(var gi=Or.site,Ki=Or.edges.sort(ml),rn=-1,Si=Ki.length,Ui,Xi,ln=Ki[Si-1].edge,nn=ln.l===gi?ln.r:ln.l;++rnnn&&(nn=Or.x),Or.y>ji&&(ji=Or.y),Ki.push(Or.x),rn.push(Or.y);else for(Si=0;Sinn&&(nn=Kn),ia>ji&&(ji=ia),Ki.push(Kn),rn.push(ia)}var ga=nn-Xi,ka=ji-ln;ga>ka?ji=ln+ga:nn=Xi+ka;function ro(lo,ts,ul,nl,xl,oa,wo,ws){if(!(isNaN(ul)||isNaN(nl)))if(lo.leaf){var Cs=lo.x,Al=lo.y;if(Cs!=null)if(l(Cs-ul)+l(Al-nl)<.01)ao(lo,ts,ul,nl,xl,oa,wo,ws);else{var Gl=lo.point;lo.x=lo.y=lo.point=null,ao(lo,Gl,Cs,Al,xl,oa,wo,ws),ao(lo,ts,ul,nl,xl,oa,wo,ws)}else lo.x=ul,lo.y=nl,lo.point=ts}else ao(lo,ts,ul,nl,xl,oa,wo,ws)}function ao(lo,ts,ul,nl,xl,oa,wo,ws){var Cs=(xl+wo)*.5,Al=(oa+ws)*.5,Gl=ul>=Cs,xu=nl>=Al,Ul=xu<<1|Gl;lo.leaf=!1,lo=lo.nodes[Ul]||(lo.nodes[Ul]=ru()),Gl?xl=Cs:wo=Cs,xu?oa=Al:ws=Al,ro(lo,ts,ul,nl,xl,oa,wo,ws)}var is=ru();if(is.add=function(lo){ro(is,lo,+bi(lo,++Si),+gi(lo,Si),Xi,ln,nn,ji)},is.visit=function(lo){Cl(lo,is,Xi,ln,nn,ji)},is.find=function(lo){return fc(is,lo[0],lo[1],Xi,ln,nn,ji)},Si=-1,Re==null){for(;++Sixt||gi>Jt||Ki=Kn,ka=Ke>=ia,ro=ka<<1|ga,ao=ro+4;roKe&&(xt=Re.slice(Ke,xt),It[Jt]?It[Jt]+=xt:It[++Jt]=xt),(ft=ft[0])===(dt=dt[0])?It[Jt]?It[Jt]+=dt:It[++Jt]=dt:(It[++Jt]=null,sr.push({i:Jt,x:Ll(ft,dt)})),Ke=hc.lastIndex;return Ke=0&&!(ft=g.interpolators[Ke](de,Re)););return ft}g.interpolators=[function(de,Re){var Ke=typeof Re;return(Ke==="string"?gr.has(Re.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(Re)?Ac:Ks:Re instanceof vn?Ac:Array.isArray(Re)?ec:Ke==="object"&&isNaN(Re)?ol:Ll)(de,Re)}],g.interpolateArray=ec;function ec(de,Re){var Ke=[],ft=[],dt=de.length,xt=Re.length,Jt=Math.min(de.length,Re.length),It;for(It=0;It=0?de.slice(0,Re):de,ft=Re>=0?de.slice(Re+1):"in";return Ke=jh.get(Ke)||hl,ft=ys.get(ft)||F,Lh(ft(Ke.apply(null,x.call(arguments,1))))};function Lh(de){return function(Re){return Re<=0?0:Re>=1?1:de(Re)}}function Us(de){return function(Re){return 1-de(1-Re)}}function Wo(de){return function(Re){return .5*(Re<.5?de(2*Re):2-de(2-2*Re))}}function ff(de){return de*de}function tc(de){return de*de*de}function yu(de){if(de<=0)return 0;if(de>=1)return 1;var Re=de*de,Ke=Re*de;return 4*(de<.5?Ke:3*(de-Re)+Ke-.75)}function Uf(de){return function(Re){return Math.pow(Re,de)}}function Bc(de){return 1-Math.cos(de*be)}function hf(de){return Math.pow(2,10*(de-1))}function Xl(de){return 1-Math.sqrt(1-de*de)}function rh(de,Re){var Ke;return arguments.length<2&&(Re=.45),arguments.length?Ke=Re/Ve*Math.asin(1/de):(de=1,Ke=Re/4),function(ft){return 1+de*Math.pow(2,-10*ft)*Math.sin((ft-Ke)*Ve/Re)}}function jf(de){return de||(de=1.70158),function(Re){return Re*Re*((de+1)*Re-de)}}function Cf(de){return de<1/2.75?7.5625*de*de:de<2/2.75?7.5625*(de-=1.5/2.75)*de+.75:de<2.5/2.75?7.5625*(de-=2.25/2.75)*de+.9375:7.5625*(de-=2.625/2.75)*de+.984375}g.interpolateHcl=Jc;function Jc(de,Re){de=g.hcl(de),Re=g.hcl(Re);var Ke=de.h,ft=de.c,dt=de.l,xt=Re.h-Ke,Jt=Re.c-ft,It=Re.l-dt;return isNaN(Jt)&&(Jt=0,ft=isNaN(ft)?Re.c:ft),isNaN(xt)?(xt=0,Ke=isNaN(Ke)?Re.h:Ke):xt>180?xt-=360:xt<-180&&(xt+=360),function(sr){return Zr(Ke+xt*sr,ft+Jt*sr,dt+It*sr)+""}}g.interpolateHsl=Vf;function Vf(de,Re){de=g.hsl(de),Re=g.hsl(Re);var Ke=de.h,ft=de.s,dt=de.l,xt=Re.h-Ke,Jt=Re.s-ft,It=Re.l-dt;return isNaN(Jt)&&(Jt=0,ft=isNaN(ft)?Re.s:ft),isNaN(xt)?(xt=0,Ke=isNaN(Ke)?Re.h:Ke):xt>180?xt-=360:xt<-180&&(xt+=360),function(sr){return qt(Ke+xt*sr,ft+Jt*sr,dt+It*sr)+""}}g.interpolateLab=ih;function ih(de,Re){de=g.lab(de),Re=g.lab(Re);var Ke=de.l,ft=de.a,dt=de.b,xt=Re.l-Ke,Jt=Re.a-ft,It=Re.b-dt;return function(sr){return sn(Ke+xt*sr,ft+Jt*sr,dt+It*sr)+""}}g.interpolateRound=rc;function rc(de,Re){return Re-=de,function(Ke){return Math.round(de+Re*Ke)}}g.transform=function(de){var Re=S.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function(Ke){if(Ke!=null){Re.setAttribute("transform",Ke);var ft=Re.transform.baseVal.consolidate()}return new Lf(ft?ft.matrix:_f)})(de)};function Lf(de){var Re=[de.a,de.b],Ke=[de.c,de.d],ft=Qc(Re),dt=Oc(Re,Ke),xt=Qc(Pu(Ke,Re,-dt))||0;Re[0]*Ke[1]180?Re+=360:Re-de>180&&(de+=360),ft.push({i:Ke.push(Nc(Ke)+"rotate(",null,")")-2,x:Ll(de,Re)})):Re&&Ke.push(Nc(Ke)+"rotate("+Re+")")}function Ph(de,Re,Ke,ft){de!==Re?ft.push({i:Ke.push(Nc(Ke)+"skewX(",null,")")-2,x:Ll(de,Re)}):Re&&Ke.push(Nc(Ke)+"skewX("+Re+")")}function nh(de,Re,Ke,ft){if(de[0]!==Re[0]||de[1]!==Re[1]){var dt=Ke.push(Nc(Ke)+"scale(",null,",",null,")");ft.push({i:dt-4,x:Ll(de[0],Re[0])},{i:dt-2,x:Ll(de[1],Re[1])})}else(Re[0]!==1||Re[1]!==1)&&Ke.push(Nc(Ke)+"scale("+Re+")")}function df(de,Re){var Ke=[],ft=[];return de=g.transform(de),Re=g.transform(Re),Qs(de.translate,Re.translate,Ke,ft),qf(de.rotate,Re.rotate,Ke,ft),Ph(de.skew,Re.skew,Ke,ft),nh(de.scale,Re.scale,Ke,ft),de=Re=null,function(dt){for(var xt=-1,Jt=ft.length,It;++xt0?xt=ji:(Ke.c=null,Ke.t=NaN,Ke=null,Re.end({type:"end",alpha:xt=0})):ji>0&&(Re.start({type:"start",alpha:xt=ji}),Ke=Va(de.tick)),de):xt},de.start=function(){var ji,Kn=Ki.length,ia=rn.length,ga=ft[0],ka=ft[1],ro,ao;for(ji=0;ji=0;)xt.push(Or=zr[sr]),Or.parent=It,Or.depth=It.depth+1;Ke&&(It.value=0),It.children=zr}else Ke&&(It.value=+Ke.call(ft,It,It.depth)||0),delete It.children;return dc(dt,function(bi){var gi,Ki;de&&(gi=bi.children)&&gi.sort(de),Ke&&(Ki=bi.parent)&&(Ki.value+=bi.value)}),Jt}return ft.sort=function(dt){return arguments.length?(de=dt,ft):de},ft.children=function(dt){return arguments.length?(Re=dt,ft):Re},ft.value=function(dt){return arguments.length?(Ke=dt,ft):Ke},ft.revalue=function(dt){return Ke&&(Sc(dt,function(xt){xt.children&&(xt.value=0)}),dc(dt,function(xt){var Jt;xt.children||(xt.value=+Ke.call(ft,xt,xt.depth)||0),(Jt=xt.parent)&&(Jt.value+=xt.value)})),dt},ft};function Wu(de,Re){return g.rebind(de,Re,"sort","children","value"),de.nodes=de,de.links=Du,de}function Sc(de,Re){for(var Ke=[de];(de=Ke.pop())!=null;)if(Re(de),(dt=de.children)&&(ft=dt.length))for(var ft,dt;--ft>=0;)Ke.push(dt[ft])}function dc(de,Re){for(var Ke=[de],ft=[];(de=Ke.pop())!=null;)if(ft.push(de),(Jt=de.children)&&(xt=Jt.length))for(var dt=-1,xt,Jt;++dtdt&&(dt=It),ft.push(It)}for(Jt=0;Jtft&&(Ke=Re,ft=dt);return Ke}function dl(de){return de.reduce(pf,0)}function pf(de,Re){return de+Re[1]}g.layout.histogram=function(){var de=!0,Re=Number,Ke=bf,ft=Ec;function dt(xt,gi){for(var It=[],sr=xt.map(Re,this),zr=Ke.call(this,sr,gi),Or=ft.call(this,zr,sr,gi),bi,gi=-1,Ki=sr.length,rn=Or.length-1,Si=de?1:1/Ki,Ui;++gi0)for(gi=-1;++gi=zr[0]&&Ui<=zr[1]&&(bi=It[g.bisect(Or,Ui,1,rn)-1],bi.y+=Si,bi.push(xt[gi]));return It}return dt.value=function(xt){return arguments.length?(Re=xt,dt):Re},dt.range=function(xt){return arguments.length?(Ke=ti(xt),dt):Ke},dt.bins=function(xt){return arguments.length?(ft=typeof xt=="number"?function(Jt){return Xu(Jt,xt)}:ti(xt),dt):ft},dt.frequency=function(xt){return arguments.length?(de=!!xt,dt):de},dt};function Ec(de,Re){return Xu(de,Math.ceil(Math.log(Re.length)/Math.LN2+1))}function Xu(de,Re){for(var Ke=-1,ft=+de[0],dt=(de[1]-ft)/Re,xt=[];++Ke<=Re;)xt[Ke]=dt*Ke+ft;return xt}function bf(de){return[g.min(de),g.max(de)]}g.layout.pack=function(){var de=g.layout.hierarchy().sort(vc),Re=0,Ke=[1,1],ft;function dt(xt,Jt){var It=de.call(this,xt,Jt),sr=It[0],zr=Ke[0],Or=Ke[1],bi=ft==null?Math.sqrt:typeof ft=="function"?ft:function(){return ft};if(sr.x=sr.y=0,dc(sr,function(Ki){Ki.r=+bi(Ki.value)}),dc(sr,Wf),Re){var gi=Re*(ft?1:Math.max(2*sr.r/zr,2*sr.r/Or))/2;dc(sr,function(Ki){Ki.r+=gi}),dc(sr,Wf),dc(sr,function(Ki){Ki.r-=gi})}return pc(sr,zr/2,Or/2,ft?1:1/Math.max(2*sr.r/zr,2*sr.r/Or)),It}return dt.size=function(xt){return arguments.length?(Ke=xt,dt):Ke},dt.radius=function(xt){return arguments.length?(ft=xt==null||typeof xt=="function"?xt:+xt,dt):ft},dt.padding=function(xt){return arguments.length?(Re=+xt,dt):Re},Wu(dt,de)};function vc(de,Re){return de.value-Re.value}function tf(de,Re){var Ke=de._pack_next;de._pack_next=Re,Re._pack_prev=de,Re._pack_next=Ke,Ke._pack_prev=Re}function Gf(de,Re){de._pack_next=Re,Re._pack_prev=de}function Jl(de,Re){var Ke=Re.x-de.x,ft=Re.y-de.y,dt=de.r+Re.r;return .999*dt*dt>Ke*Ke+ft*ft}function Wf(de){if(!(Re=de.children)||!(gi=Re.length))return;var Re,Ke=1/0,ft=-1/0,dt=1/0,xt=-1/0,Jt,It,sr,zr,Or,bi,gi;function Ki(ji){Ke=Math.min(ji.x-ji.r,Ke),ft=Math.max(ji.x+ji.r,ft),dt=Math.min(ji.y-ji.r,dt),xt=Math.max(ji.y+ji.r,xt)}if(Re.forEach(Zu),Jt=Re[0],Jt.x=-Jt.r,Jt.y=0,Ki(Jt),gi>1&&(It=Re[1],It.x=It.r,It.y=0,Ki(It),gi>2))for(sr=Re[2],Nl(Jt,It,sr),Ki(sr),tf(Jt,sr),Jt._pack_prev=sr,tf(sr,It),It=Jt._pack_next,zr=3;zrUi.x&&(Ui=Kn),Kn.depth>Xi.depth&&(Xi=Kn)});var ln=Re(Si,Ui)/2-Si.x,nn=Ke[0]/(Ui.x+Re(Ui,Si)/2+ln),ji=Ke[1]/(Xi.depth||1);Sc(Ki,function(Kn){Kn.x=(Kn.x+ln)*nn,Kn.y=Kn.depth*ji})}return gi}function xt(Or){for(var bi={A:null,children:[Or]},gi=[bi],Ki;(Ki=gi.pop())!=null;)for(var rn=Ki.children,Si,Ui=0,Xi=rn.length;Ui0&&(nc(Zt(Si,Or,gi),Or,Kn),Xi+=Kn,ln+=Kn),nn+=Si.m,Xi+=Ki.m,ji+=Ui.m,ln+=rn.m;Si&&!jc(rn)&&(rn.t=Si,rn.m+=nn-ln),Ki&&!mc(Ui)&&(Ui.t=Ki,Ui.m+=Xi-ji,gi=Or)}return gi}function zr(Or){Or.x*=Ke[0],Or.y=Or.depth*Ke[1]}return dt.separation=function(Or){return arguments.length?(Re=Or,dt):Re},dt.size=function(Or){return arguments.length?(ft=(Ke=Or)==null?zr:null,dt):ft?null:Ke},dt.nodeSize=function(Or){return arguments.length?(ft=(Ke=Or)==null?null:zr,dt):ft?Ke:null},Wu(dt,de)};function hu(de,Re){return de.parent==Re.parent?1:2}function mc(de){var Re=de.children;return Re.length?Re[0]:de.t}function jc(de){var Re=de.children,Ke;return(Ke=Re.length)?Re[Ke-1]:de.t}function nc(de,Re,Ke){var ft=Ke/(Re.i-de.i);Re.c-=ft,Re.s+=Ke,de.c+=ft,Re.z+=Ke,Re.m+=Ke}function rf(de){for(var Re=0,Ke=0,ft=de.children,dt=ft.length,xt;--dt>=0;)xt=ft[dt],xt.z+=Re,xt.m+=Re,Re+=xt.s+(Ke+=xt.c)}function Zt(de,Re,Ke){return de.a.parent===Re.parent?de.a:Ke}g.layout.cluster=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=hu,Ke=[1,1],ft=!1;function dt(xt,Jt){var It=de.call(this,xt,Jt),sr=It[0],zr,Or=0;dc(sr,function(Si){var Ui=Si.children;Ui&&Ui.length?(Si.x=Kr(Ui),Si.y=hr(Ui)):(Si.x=zr?Or+=Re(Si,zr):0,Si.y=0,zr=Si)});var bi=qr(sr),gi=ki(sr),Ki=bi.x-Re(bi,gi)/2,rn=gi.x+Re(gi,bi)/2;return dc(sr,ft?function(Si){Si.x=(Si.x-sr.x)*Ke[0],Si.y=(sr.y-Si.y)*Ke[1]}:function(Si){Si.x=(Si.x-Ki)/(rn-Ki)*Ke[0],Si.y=(1-(sr.y?Si.y/sr.y:1))*Ke[1]}),It}return dt.separation=function(xt){return arguments.length?(Re=xt,dt):Re},dt.size=function(xt){return arguments.length?(ft=(Ke=xt)==null,dt):ft?null:Ke},dt.nodeSize=function(xt){return arguments.length?(ft=(Ke=xt)!=null,dt):ft?Ke:null},Wu(dt,de)};function hr(de){return 1+g.max(de,function(Re){return Re.y})}function Kr(de){return de.reduce(function(Re,Ke){return Re+Ke.x},0)/de.length}function qr(de){var Re=de.children;return Re&&Re.length?qr(Re[0]):de}function ki(de){var Re=de.children,Ke;return Re&&(Ke=Re.length)?ki(Re[Ke-1]):de}g.layout.treemap=function(){var de=g.layout.hierarchy(),Re=Math.round,Ke=[1,1],ft=null,dt=an,xt=!1,Jt,It="squarify",sr=.5*(1+Math.sqrt(5));function zr(Si,Ui){for(var Xi=-1,ln=Si.length,nn,ji;++Xi0;)ln.push(ji=nn[ka-1]),ln.area+=ji.area,It!=="squarify"||(ia=gi(ln,ga))<=Kn?(nn.pop(),Kn=ia):(ln.area-=ln.pop().area,Ki(ln,ga,Xi,!1),ga=Math.min(Xi.dx,Xi.dy),ln.length=ln.area=0,Kn=1/0);ln.length&&(Ki(ln,ga,Xi,!0),ln.length=ln.area=0),Ui.forEach(Or)}}function bi(Si){var Ui=Si.children;if(Ui&&Ui.length){var Xi=dt(Si),ln=Ui.slice(),nn,ji=[];for(zr(ln,Xi.dx*Xi.dy/Si.value),ji.area=0;nn=ln.pop();)ji.push(nn),ji.area+=nn.area,nn.z!=null&&(Ki(ji,nn.z?Xi.dx:Xi.dy,Xi,!ln.length),ji.length=ji.area=0);Ui.forEach(bi)}}function gi(Si,Ui){for(var Xi=Si.area,ln,nn=0,ji=1/0,Kn=-1,ia=Si.length;++Knnn&&(nn=ln));return Xi*=Xi,Ui*=Ui,Xi?Math.max(Ui*nn*sr/Xi,Xi/(Ui*ji*sr)):1/0}function Ki(Si,Ui,Xi,ln){var nn=-1,ji=Si.length,Kn=Xi.x,ia=Xi.y,ga=Ui?Re(Si.area/Ui):0,ka;if(Ui==Xi.dx){for((ln||ga>Xi.dy)&&(ga=Xi.dy);++nnXi.dx)&&(ga=Xi.dx);++nn1);return de+Re*ft*Math.sqrt(-2*Math.log(xt)/xt)}},logNormal:function(){var de=g.random.normal.apply(g,arguments);return function(){return Math.exp(de())}},bates:function(de){var Re=g.random.irwinHall(de);return function(){return Re()/de}},irwinHall:function(de){return function(){for(var Re=0,Ke=0;Ke2?cn:ra,zr=ft?Iu:hh;return dt=sr(de,Re,zr,Ke),xt=sr(Re,de,zr,Wl),It}function It(sr){return dt(sr)}return It.invert=function(sr){return xt(sr)},It.domain=function(sr){return arguments.length?(de=sr.map(Number),Jt()):de},It.range=function(sr){return arguments.length?(Re=sr,Jt()):Re},It.rangeRound=function(sr){return It.range(sr).interpolate(rc)},It.clamp=function(sr){return arguments.length?(ft=sr,Jt()):ft},It.interpolate=function(sr){return arguments.length?(Ke=sr,Jt()):Ke},It.ticks=function(sr){return Mo(de,sr)},It.tickFormat=function(sr,zr){return d3_scale_linearTickFormat(de,sr,zr)},It.nice=function(sr){return uo(de,sr),Jt()},It.copy=function(){return xa(de,Re,Ke,ft)},Jt()}function mo(de,Re){return g.rebind(de,Re,"range","rangeRound","interpolate","clamp")}function uo(de,Re){return yn(de,In(go(de,Re)[2])),yn(de,In(go(de,Re)[2])),de}function go(de,Re){Re==null&&(Re=10);var Ke=Pn(de),ft=Ke[1]-Ke[0],dt=Math.pow(10,Math.floor(Math.log(ft/Re)/Math.LN10)),xt=Re/ft*dt;return xt<=.15?dt*=10:xt<=.35?dt*=5:xt<=.75&&(dt*=2),Ke[0]=Math.ceil(Ke[0]/dt)*dt,Ke[1]=Math.floor(Ke[1]/dt)*dt+dt*.5,Ke[2]=dt,Ke}function Mo(de,Re){return g.range.apply(g,go(de,Re))}var ya={s:1,g:1,p:1,r:1,e:1};function Zn(de){return-Math.floor(Math.log(de)/Math.LN10+.01)}function Po(de,Re){var Ke=Zn(Re[2]);return de in ya?Math.abs(Ke-Zn(Math.max(l(Re[0]),l(Re[1]))))+ +(de!=="e"):Ke-(de==="%")*2}g.scale.log=function(){return us(g.scale.linear().domain([0,1]),10,!0,[1,10])};function us(de,Re,Ke,ft){function dt(It){return(Ke?Math.log(It<0?0:It):-Math.log(It>0?0:-It))/Math.log(Re)}function xt(It){return Ke?Math.pow(Re,It):-Math.pow(Re,-It)}function Jt(It){return de(dt(It))}return Jt.invert=function(It){return xt(de.invert(It))},Jt.domain=function(It){return arguments.length?(Ke=It[0]>=0,de.domain((ft=It.map(Number)).map(dt)),Jt):ft},Jt.base=function(It){return arguments.length?(Re=+It,de.domain(ft.map(dt)),Jt):Re},Jt.nice=function(){var It=yn(ft.map(dt),Ke?Math:Bs);return de.domain(It),ft=It.map(xt),Jt},Jt.ticks=function(){var It=Pn(ft),sr=[],zr=It[0],Or=It[1],bi=Math.floor(dt(zr)),gi=Math.ceil(dt(Or)),Ki=Re%1?2:Re;if(isFinite(gi-bi)){if(Ke){for(;bi0;rn--)sr.push(xt(bi)*rn);for(bi=0;sr[bi]Or;gi--);sr=sr.slice(bi,gi)}return sr},Jt.copy=function(){return us(de.copy(),Re,Ke,ft)},mo(Jt,de)}var Bs={floor:function(de){return-Math.ceil(-de)},ceil:function(de){return-Math.floor(-de)}};g.scale.pow=function(){return sl(g.scale.linear(),1,[0,1])};function sl(de,Re,Ke){var ft=js(Re),dt=js(1/Re);function xt(Jt){return de(ft(Jt))}return xt.invert=function(Jt){return dt(de.invert(Jt))},xt.domain=function(Jt){return arguments.length?(de.domain((Ke=Jt.map(Number)).map(ft)),xt):Ke},xt.ticks=function(Jt){return Mo(Ke,Jt)},xt.tickFormat=function(Jt,It){return d3_scale_linearTickFormat(Ke,Jt,It)},xt.nice=function(Jt){return xt.domain(uo(Ke,Jt))},xt.exponent=function(Jt){return arguments.length?(ft=js(Re=Jt),dt=js(1/Re),de.domain(Ke.map(ft)),xt):Re},xt.copy=function(){return sl(de.copy(),Re,Ke)},mo(xt,de)}function js(de){return function(Re){return Re<0?-Math.pow(-Re,de):Math.pow(Re,de)}}g.scale.sqrt=function(){return g.scale.pow().exponent(.5)},g.scale.ordinal=function(){return il([],{t:"range",a:[[]]})};function il(de,Re){var Ke,ft,dt;function xt(It){return ft[((Ke.get(It)||(Re.t==="range"?Ke.set(It,de.push(It)):NaN))-1)%ft.length]}function Jt(It,sr){return g.range(de.length).map(function(zr){return It+sr*zr})}return xt.domain=function(It){if(!arguments.length)return de;de=[],Ke=new M;for(var sr=-1,zr=It.length,Or;++sr0?Ke[xt-1]:de[0],xtgi?0:1;if(Or=Ee)return sr(Or,rn)+(zr?sr(zr,1-rn):"")+"Z";var Si,Ui,Xi,ln,nn=0,ji=0,Kn,ia,ga,ka,ro,ao,is,lo,ts=[];if((ln=(+Jt.apply(this,arguments)||0)/2)&&(Xi=ft===zu?Math.sqrt(zr*zr+Or*Or):+ft.apply(this,arguments),rn||(ji*=-1),Or&&(ji=Ot(Xi/Or*Math.sin(ln))),zr&&(nn=Ot(Xi/zr*Math.sin(ln)))),Or){Kn=Or*Math.cos(bi+ji),ia=Or*Math.sin(bi+ji),ga=Or*Math.cos(gi-ji),ka=Or*Math.sin(gi-ji);var ul=Math.abs(gi-bi-2*ji)<=Se?0:1;if(ji&&Cc(Kn,ia,ga,ka)===rn^ul){var nl=(bi+gi)/2;Kn=Or*Math.cos(nl),ia=Or*Math.sin(nl),ga=ka=null}}else Kn=ia=0;if(zr){ro=zr*Math.cos(gi-nn),ao=zr*Math.sin(gi-nn),is=zr*Math.cos(bi+nn),lo=zr*Math.sin(bi+nn);var xl=Math.abs(bi-gi+2*nn)<=Se?0:1;if(nn&&Cc(ro,ao,is,lo)===1-rn^xl){var oa=(bi+gi)/2;ro=zr*Math.cos(oa),ao=zr*Math.sin(oa),is=lo=null}}else ro=ao=0;if(Ki>Ze&&(Si=Math.min(Math.abs(Or-zr)/2,+Ke.apply(this,arguments)))>.001){Ui=zr0?0:1}function bo(de,Re,Ke,ft,dt){var xt=de[0]-Re[0],Jt=de[1]-Re[1],It=(dt?ft:-ft)/Math.sqrt(xt*xt+Jt*Jt),sr=It*Jt,zr=-It*xt,Or=de[0]+sr,bi=de[1]+zr,gi=Re[0]+sr,Ki=Re[1]+zr,rn=(Or+gi)/2,Si=(bi+Ki)/2,Ui=gi-Or,Xi=Ki-bi,ln=Ui*Ui+Xi*Xi,nn=Ke-ft,ji=Or*Ki-gi*bi,Kn=(Xi<0?-1:1)*Math.sqrt(Math.max(0,nn*nn*ln-ji*ji)),ia=(ji*Xi-Ui*Kn)/ln,ga=(-ji*Ui-Xi*Kn)/ln,ka=(ji*Xi+Ui*Kn)/ln,ro=(-ji*Ui+Xi*Kn)/ln,ao=ia-rn,is=ga-Si,lo=ka-rn,ts=ro-Si;return ao*ao+is*is>lo*lo+ts*ts&&(ia=ka,ga=ro),[[ia-sr,ga-zr],[ia*Ke/nn,ga*Ke/nn]]}function Ko(){return!0}function qc(de){var Re=Yo,Ke=da,ft=Ko,dt=yc,xt=dt.key,Jt=.7;function It(sr){var zr=[],Or=[],bi=-1,gi=sr.length,Ki,rn=ti(Re),Si=ti(Ke);function Ui(){zr.push("M",dt(de(Or),Jt))}for(;++bi1?de.join("L"):de+"Z"}function Be(de){return de.join("L")+"Z"}function R(de){for(var Re=0,Ke=de.length,ft=de[0],dt=[ft[0],",",ft[1]];++Re1&&dt.push("H",ft[0]),dt.join("")}function ie(de){for(var Re=0,Ke=de.length,ft=de[0],dt=[ft[0],",",ft[1]];++Re1){It=Re[1],xt=de[sr],sr++,ft+="C"+(dt[0]+Jt[0])+","+(dt[1]+Jt[1])+","+(xt[0]-It[0])+","+(xt[1]-It[1])+","+xt[0]+","+xt[1];for(var zr=2;zr9&&(xt=Ke*3/Math.sqrt(xt),Jt[It]=xt*ft,Jt[It+1]=xt*dt));for(It=-1;++It<=sr;)xt=(de[Math.min(sr,It+1)][0]-de[Math.max(0,It-1)][0])/(6*(1+Jt[It]*Jt[It])),Re.push([xt||0,Jt[It]*xt||0]);return Re}function tr(de){return de.length<3?yc(de):de[0]+_t(de,Lt(de))}g.svg.line.radial=function(){var de=qc(or);return de.radius=de.x,delete de.x,de.angle=de.y,delete de.y,de};function or(de){for(var Re,Ke=-1,ft=de.length,dt,xt;++KeSe)+",1 "+bi}function zr(Or,bi,gi,Ki){return"Q 0,0 "+Ki}return xt.radius=function(Or){return arguments.length?(Ke=ti(Or),xt):Ke},xt.source=function(Or){return arguments.length?(de=ti(Or),xt):de},xt.target=function(Or){return arguments.length?(Re=ti(Or),xt):Re},xt.startAngle=function(Or){return arguments.length?(ft=ti(Or),xt):ft},xt.endAngle=function(Or){return arguments.length?(dt=ti(Or),xt):dt},xt};function yi(de){return de.radius}g.svg.diagonal=function(){var de=Sr,Re=Wr,Ke=Ai;function ft(dt,xt){var Jt=de.call(this,dt,xt),It=Re.call(this,dt,xt),sr=(Jt.y+It.y)/2,zr=[Jt,{x:Jt.x,y:sr},{x:It.x,y:sr},It];return zr=zr.map(Ke),"M"+zr[0]+"C"+zr[1]+" "+zr[2]+" "+zr[3]}return ft.source=function(dt){return arguments.length?(de=ti(dt),ft):de},ft.target=function(dt){return arguments.length?(Re=ti(dt),ft):Re},ft.projection=function(dt){return arguments.length?(Ke=dt,ft):Ke},ft};function Ai(de){return[de.x,de.y]}g.svg.diagonal.radial=function(){var de=g.svg.diagonal(),Re=Ai,Ke=de.projection;return de.projection=function(ft){return arguments.length?Ke(Oi(Re=ft)):Re},de};function Oi(de){return function(){var Re=de.apply(this,arguments),Ke=Re[0],ft=Re[1]-be;return[Ke*Math.cos(ft),Ke*Math.sin(ft)]}}g.svg.symbol=function(){var de=Mn,Re=on;function Ke(ft,dt){return(qn.get(de.call(this,ft,dt))||An)(Re.call(this,ft,dt))}return Ke.type=function(ft){return arguments.length?(de=ti(ft),Ke):de},Ke.size=function(ft){return arguments.length?(Re=ti(ft),Ke):Re},Ke};function on(){return 64}function Mn(){return"circle"}function An(de){var Re=Math.sqrt(de/Se);return"M0,"+Re+"A"+Re+","+Re+" 0 1,1 0,"+-Re+"A"+Re+","+Re+" 0 1,1 0,"+Re+"Z"}var qn=g.map({circle:An,cross:function(de){var Re=Math.sqrt(de/5)/2;return"M"+-3*Re+","+-Re+"H"+-Re+"V"+-3*Re+"H"+Re+"V"+-Re+"H"+3*Re+"V"+Re+"H"+Re+"V"+3*Re+"H"+-Re+"V"+Re+"H"+-3*Re+"Z"},diamond:function(de){var Re=Math.sqrt(de/(2*eo)),Ke=Re*eo;return"M0,"+-Re+"L"+Ke+",0 0,"+Re+" "+-Ke+",0Z"},square:function(de){var Re=Math.sqrt(de)/2;return"M"+-Re+","+-Re+"L"+Re+","+-Re+" "+Re+","+Re+" "+-Re+","+Re+"Z"},"triangle-down":function(de){var Re=Math.sqrt(de/ma),Ke=Re*ma/2;return"M0,"+Ke+"L"+Re+","+-Ke+" "+-Re+","+-Ke+"Z"},"triangle-up":function(de){var Re=Math.sqrt(de/ma),Ke=Re*ma/2;return"M0,"+-Ke+"L"+Re+","+Ke+" "+-Re+","+Ke+"Z"}});g.svg.symbolTypes=qn.keys();var ma=Math.sqrt(3),eo=Math.tan(30*Ce);ae.transition=function(de){for(var Re=Ms||++as,Ke=ls(de),ft=[],dt,xt,Jt=pl||{time:Date.now(),ease:yu,delay:0,duration:250},It=-1,sr=this.length;++It0;)bi[--ln].call(de,Xi);if(Ui>=1)return Jt.event&&Jt.event.end.call(de,de.__data__,Re),--xt.count?delete xt[ft]:delete de[Ke],1}Jt||(It=dt.time,sr=Va(gi,0,It),Jt=xt[ft]={tween:new M,time:It,timer:sr,delay:dt.delay,duration:dt.duration,ease:dt.ease,index:Re},dt=null,++xt.count)}g.svg.axis=function(){var de=g.scale.linear(),Re=iu,Ke=6,ft=6,dt=3,xt=[10],Jt=null,It;function sr(zr){zr.each(function(){var Or=g.select(this),bi=this.__chart__||de,gi=this.__chart__=de.copy(),Ki=Jt??(gi.ticks?gi.ticks.apply(gi,xt):gi.domain()),rn=It??(gi.tickFormat?gi.tickFormat.apply(gi,xt):F),Si=Or.selectAll(".tick").data(Ki,gi),Ui=Si.enter().insert("g",".domain").attr("class","tick").style("opacity",Ze),Xi=g.transition(Si.exit()).style("opacity",Ze).remove(),ln=g.transition(Si.order()).style("opacity",1),nn=Math.max(Ke,0)+dt,ji,Kn=Vn(gi),ia=Or.selectAll(".domain").data([0]),ga=(ia.enter().append("path").attr("class","domain"),g.transition(ia));Ui.append("line"),Ui.append("text");var ka=Ui.select("line"),ro=ln.select("line"),ao=Si.select("text").text(rn),is=Ui.select("text"),lo=ln.select("text"),ts=Re==="top"||Re==="left"?-1:1,ul,nl,xl,oa;if(Re==="bottom"||Re==="top"?(ji=_u,ul="x",xl="y",nl="x2",oa="y2",ao.attr("dy",ts<0?"0em":".71em").style("text-anchor","middle"),ga.attr("d","M"+Kn[0]+","+ts*ft+"V0H"+Kn[1]+"V"+ts*ft)):(ji=Il,ul="y",xl="x",nl="y2",oa="x2",ao.attr("dy",".32em").style("text-anchor",ts<0?"end":"start"),ga.attr("d","M"+ts*ft+","+Kn[0]+"H0V"+Kn[1]+"H"+ts*ft)),ka.attr(oa,ts*Ke),is.attr(xl,ts*nn),ro.attr(nl,0).attr(oa,ts*Ke),lo.attr(ul,0).attr(xl,ts*nn),gi.rangeBand){var wo=gi,ws=wo.rangeBand()/2;bi=gi=function(Cs){return wo(Cs)+ws}}else bi.rangeBand?bi=gi:Xi.call(ji,gi,bi);Ui.call(ji,bi,gi),ln.call(ji,gi,gi)})}return sr.scale=function(zr){return arguments.length?(de=zr,sr):de},sr.orient=function(zr){return arguments.length?(Re=zr in Yu?zr+"":iu,sr):Re},sr.ticks=function(){return arguments.length?(xt=A(arguments),sr):xt},sr.tickValues=function(zr){return arguments.length?(Jt=zr,sr):Jt},sr.tickFormat=function(zr){return arguments.length?(It=zr,sr):It},sr.tickSize=function(zr){var Or=arguments.length;return Or?(Ke=+zr,ft=+arguments[Or-1],sr):Ke},sr.innerTickSize=function(zr){return arguments.length?(Ke=+zr,sr):Ke},sr.outerTickSize=function(zr){return arguments.length?(ft=+zr,sr):ft},sr.tickPadding=function(zr){return arguments.length?(dt=+zr,sr):dt},sr.tickSubdivide=function(){return arguments.length&&sr},sr};var iu="bottom",Yu={top:1,right:1,bottom:1,left:1};function _u(de,Re,Ke){de.attr("transform",function(ft){var dt=Re(ft);return"translate("+(isFinite(dt)?dt:Ke(ft))+",0)"})}function Il(de,Re,Ke){de.attr("transform",function(ft){var dt=Re(ft);return"translate(0,"+(isFinite(dt)?dt:Ke(ft))+")"})}g.svg.brush=function(){var de=se(Or,"brushstart","brush","brushend"),Re=null,Ke=null,ft=[0,0],dt=[0,0],xt,Jt,It=!0,sr=!0,zr=Lc[0];function Or(Si){Si.each(function(){var Ui=g.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",rn).on("touchstart.brush",rn),Xi=Ui.selectAll(".background").data([0]);Xi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ui.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var ln=Ui.selectAll(".resize").data(zr,F);ln.exit().remove(),ln.enter().append("g").attr("class",function(ia){return"resize "+ia}).style("cursor",function(ia){return vu[ia]}).append("rect").attr("x",function(ia){return/[ew]$/.test(ia)?-3:null}).attr("y",function(ia){return/^[ns]/.test(ia)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),ln.style("display",Or.empty()?"none":null);var nn=g.transition(Ui),ji=g.transition(Xi),Kn;Re&&(Kn=Vn(Re),ji.attr("x",Kn[0]).attr("width",Kn[1]-Kn[0]),gi(nn)),Ke&&(Kn=Vn(Ke),ji.attr("y",Kn[0]).attr("height",Kn[1]-Kn[0]),Ki(nn)),bi(nn)})}Or.event=function(Si){Si.each(function(){var Ui=de.of(this,arguments),Xi={x:ft,y:dt,i:xt,j:Jt},ln=this.__chart__||Xi;this.__chart__=Xi,Ms?g.select(this).transition().each("start.brush",function(){xt=ln.i,Jt=ln.j,ft=ln.x,dt=ln.y,Ui({type:"brushstart"})}).tween("brush:brush",function(){var nn=ec(ft,Xi.x),ji=ec(dt,Xi.y);return xt=Jt=null,function(Kn){ft=Xi.x=nn(Kn),dt=Xi.y=ji(Kn),Ui({type:"brush",mode:"resize"})}}).each("end.brush",function(){xt=Xi.i,Jt=Xi.j,Ui({type:"brush",mode:"resize"}),Ui({type:"brushend"})}):(Ui({type:"brushstart"}),Ui({type:"brush",mode:"resize"}),Ui({type:"brushend"}))})};function bi(Si){Si.selectAll(".resize").attr("transform",function(Ui){return"translate("+ft[+/e$/.test(Ui)]+","+dt[+/^s/.test(Ui)]+")"})}function gi(Si){Si.select(".extent").attr("x",ft[0]),Si.selectAll(".extent,.n>rect,.s>rect").attr("width",ft[1]-ft[0])}function Ki(Si){Si.select(".extent").attr("y",dt[0]),Si.selectAll(".extent,.e>rect,.w>rect").attr("height",dt[1]-dt[0])}function rn(){var Si=this,Ui=g.select(g.event.target),Xi=de.of(Si,arguments),ln=g.select(Si),nn=Ui.datum(),ji=!/^(n|s)$/.test(nn)&&Re,Kn=!/^(e|w)$/.test(nn)&&Ke,ia=Ui.classed("extent"),ga=mr(Si),ka,ro=g.mouse(Si),ao,is=g.select(t(Si)).on("keydown.brush",ul).on("keyup.brush",nl);if(g.event.changedTouches?is.on("touchmove.brush",xl).on("touchend.brush",wo):is.on("mousemove.brush",xl).on("mouseup.brush",wo),ln.interrupt().selectAll("*").interrupt(),ia)ro[0]=ft[0]-ro[0],ro[1]=dt[0]-ro[1];else if(nn){var lo=+/w$/.test(nn),ts=+/^n/.test(nn);ao=[ft[1-lo]-ro[0],dt[1-ts]-ro[1]],ro[0]=ft[lo],ro[1]=dt[ts]}else g.event.altKey&&(ka=ro.slice());ln.style("pointer-events","none").selectAll(".resize").style("display",null),g.select("body").style("cursor",Ui.style("cursor")),Xi({type:"brushstart"}),xl();function ul(){g.event.keyCode==32&&(ia||(ka=null,ro[0]-=ft[1],ro[1]-=dt[1],ia=2),Q())}function nl(){g.event.keyCode==32&&ia==2&&(ro[0]+=ft[1],ro[1]+=dt[1],ia=0,Q())}function xl(){var ws=g.mouse(Si),Cs=!1;ao&&(ws[0]+=ao[0],ws[1]+=ao[1]),ia||(g.event.altKey?(ka||(ka=[(ft[0]+ft[1])/2,(dt[0]+dt[1])/2]),ro[0]=ft[+(ws[0]0))return jt;do jt.push(cr=new Date(+kt)),ze(kt,Bt),ue(kt);while(cr=Mt)for(;ue(Mt),!kt(Mt);)Mt.setTime(Mt-1)},function(Mt,Bt){if(Mt>=Mt)if(Bt<0)for(;++Bt<=0;)for(;ze(Mt,-1),!kt(Mt););else for(;--Bt>=0;)for(;ze(Mt,1),!kt(Mt););})},Qe&&($e.count=function(kt,Mt){return x.setTime(+kt),A.setTime(+Mt),ue(x),ue(A),Math.floor(Qe(x,A))},$e.every=function(kt){return kt=Math.floor(kt),!isFinite(kt)||!(kt>0)?null:kt>1?$e.filter(it?function(Mt){return it(Mt)%kt===0}:function(Mt){return $e.count(0,Mt)%kt===0}):$e}),$e}var e=S(function(){},function(ue,ze){ue.setTime(+ue+ze)},function(ue,ze){return ze-ue});e.every=function(ue){return ue=Math.floor(ue),!isFinite(ue)||!(ue>0)?null:ue>1?S(function(ze){ze.setTime(Math.floor(ze/ue)*ue)},function(ze,Qe){ze.setTime(+ze+Qe*ue)},function(ze,Qe){return(Qe-ze)/ue}):e};var t=e.range,r=1e3,o=6e4,i=36e5,n=864e5,a=6048e5,s=S(function(ue){ue.setTime(ue-ue.getMilliseconds())},function(ue,ze){ue.setTime(+ue+ze*r)},function(ue,ze){return(ze-ue)/r},function(ue){return ue.getUTCSeconds()}),c=s.range,h=S(function(ue){ue.setTime(ue-ue.getMilliseconds()-ue.getSeconds()*r)},function(ue,ze){ue.setTime(+ue+ze*o)},function(ue,ze){return(ze-ue)/o},function(ue){return ue.getMinutes()}),p=h.range,d=S(function(ue){ue.setTime(ue-ue.getMilliseconds()-ue.getSeconds()*r-ue.getMinutes()*o)},function(ue,ze){ue.setTime(+ue+ze*i)},function(ue,ze){return(ze-ue)/i},function(ue){return ue.getHours()}),T=d.range,l=S(function(ue){ue.setHours(0,0,0,0)},function(ue,ze){ue.setDate(ue.getDate()+ze)},function(ue,ze){return(ze-ue-(ze.getTimezoneOffset()-ue.getTimezoneOffset())*o)/n},function(ue){return ue.getDate()-1}),_=l.range;function w(ue){return S(function(ze){ze.setDate(ze.getDate()-(ze.getDay()+7-ue)%7),ze.setHours(0,0,0,0)},function(ze,Qe){ze.setDate(ze.getDate()+Qe*7)},function(ze,Qe){return(Qe-ze-(Qe.getTimezoneOffset()-ze.getTimezoneOffset())*o)/a})}var M=w(0),E=w(1),m=w(2),b=w(3),v=w(4),u=w(5),y=w(6),f=M.range,P=E.range,L=m.range,z=b.range,F=v.range,O=u.range,B=y.range,I=S(function(ue){ue.setDate(1),ue.setHours(0,0,0,0)},function(ue,ze){ue.setMonth(ue.getMonth()+ze)},function(ue,ze){return ze.getMonth()-ue.getMonth()+(ze.getFullYear()-ue.getFullYear())*12},function(ue){return ue.getMonth()}),N=I.range,U=S(function(ue){ue.setMonth(0,1),ue.setHours(0,0,0,0)},function(ue,ze){ue.setFullYear(ue.getFullYear()+ze)},function(ue,ze){return ze.getFullYear()-ue.getFullYear()},function(ue){return ue.getFullYear()});U.every=function(ue){return!isFinite(ue=Math.floor(ue))||!(ue>0)?null:S(function(ze){ze.setFullYear(Math.floor(ze.getFullYear()/ue)*ue),ze.setMonth(0,1),ze.setHours(0,0,0,0)},function(ze,Qe){ze.setFullYear(ze.getFullYear()+Qe*ue)})};var W=U.range,Q=S(function(ue){ue.setUTCSeconds(0,0)},function(ue,ze){ue.setTime(+ue+ze*o)},function(ue,ze){return(ze-ue)/o},function(ue){return ue.getUTCMinutes()}),le=Q.range,se=S(function(ue){ue.setUTCMinutes(0,0,0)},function(ue,ze){ue.setTime(+ue+ze*i)},function(ue,ze){return(ze-ue)/i},function(ue){return ue.getUTCHours()}),fe=se.range,G=S(function(ue){ue.setUTCHours(0,0,0,0)},function(ue,ze){ue.setUTCDate(ue.getUTCDate()+ze)},function(ue,ze){return(ze-ue)/n},function(ue){return ue.getUTCDate()-1}),J=G.range;function $(ue){return S(function(ze){ze.setUTCDate(ze.getUTCDate()-(ze.getUTCDay()+7-ue)%7),ze.setUTCHours(0,0,0,0)},function(ze,Qe){ze.setUTCDate(ze.getUTCDate()+Qe*7)},function(ze,Qe){return(Qe-ze)/a})}var X=$(0),re=$(1),ae=$(2),j=$(3),ee=$(4),ne=$(5),ce=$(6),_e=X.range,we=re.range,Oe=ae.range,Ie=j.range,Xe=ee.range,tt=ne.range,rt=ce.range,Je=S(function(ue){ue.setUTCDate(1),ue.setUTCHours(0,0,0,0)},function(ue,ze){ue.setUTCMonth(ue.getUTCMonth()+ze)},function(ue,ze){return ze.getUTCMonth()-ue.getUTCMonth()+(ze.getUTCFullYear()-ue.getUTCFullYear())*12},function(ue){return ue.getUTCMonth()}),ot=Je.range,Me=S(function(ue){ue.setUTCMonth(0,1),ue.setUTCHours(0,0,0,0)},function(ue,ze){ue.setUTCFullYear(ue.getUTCFullYear()+ze)},function(ue,ze){return ze.getUTCFullYear()-ue.getUTCFullYear()},function(ue){return ue.getUTCFullYear()});Me.every=function(ue){return!isFinite(ue=Math.floor(ue))||!(ue>0)?null:S(function(ze){ze.setUTCFullYear(Math.floor(ze.getUTCFullYear()/ue)*ue),ze.setUTCMonth(0,1),ze.setUTCHours(0,0,0,0)},function(ze,Qe){ze.setUTCFullYear(ze.getUTCFullYear()+Qe*ue)})};var pe=Me.range;g.timeDay=l,g.timeDays=_,g.timeFriday=u,g.timeFridays=O,g.timeHour=d,g.timeHours=T,g.timeInterval=S,g.timeMillisecond=e,g.timeMilliseconds=t,g.timeMinute=h,g.timeMinutes=p,g.timeMonday=E,g.timeMondays=P,g.timeMonth=I,g.timeMonths=N,g.timeSaturday=y,g.timeSaturdays=B,g.timeSecond=s,g.timeSeconds=c,g.timeSunday=M,g.timeSundays=f,g.timeThursday=v,g.timeThursdays=F,g.timeTuesday=m,g.timeTuesdays=L,g.timeWednesday=b,g.timeWednesdays=z,g.timeWeek=M,g.timeWeeks=f,g.timeYear=U,g.timeYears=W,g.utcDay=G,g.utcDays=J,g.utcFriday=ne,g.utcFridays=tt,g.utcHour=se,g.utcHours=fe,g.utcMillisecond=e,g.utcMilliseconds=t,g.utcMinute=Q,g.utcMinutes=le,g.utcMonday=re,g.utcMondays=we,g.utcMonth=Je,g.utcMonths=ot,g.utcSaturday=ce,g.utcSaturdays=rt,g.utcSecond=s,g.utcSeconds=c,g.utcSunday=X,g.utcSundays=_e,g.utcThursday=ee,g.utcThursdays=Xe,g.utcTuesday=ae,g.utcTuesdays=Oe,g.utcWednesday=j,g.utcWednesdays=Ie,g.utcWeek=X,g.utcWeeks=_e,g.utcYear=Me,g.utcYears=pe,Object.defineProperty(g,"__esModule",{value:!0})})}}),Ia=Le({"node_modules/d3-time-format/dist/d3-time-format.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z,za()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(Z,function(g,x){"use strict";function A(Fe){if(0<=Fe.y&&Fe.y<100){var Ze=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ze.setFullYear(Fe.y),Ze}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function S(Fe){if(0<=Fe.y&&Fe.y<100){var Ze=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ze.setUTCFullYear(Fe.y),Ze}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function e(Fe,Ze,Ne){return{y:Fe,m:Ze,d:Ne,H:0,M:0,S:0,L:0}}function t(Fe){var Ze=Fe.dateTime,Ne=Fe.date,Se=Fe.time,Ve=Fe.periods,Ee=Fe.days,be=Fe.shortDays,Ce=Fe.months,et=Fe.shortMonths,ht=c(Ve),yt=h(Ve),Pt=c(Ee),Ot=h(Ee),Wt=c(be),$t=h(be),lr=c(Ce),fi=h(Ce),Pi=c(et),Bi=h(et),zi={a:qi,A:$i,b:Mi,B:sn,c:null,d:I,e:I,f:le,H:N,I:U,j:W,L:Q,m:se,M:fe,p:vt,q:pt,Q:Mt,s:Bt,S:G,u:J,U:$,V:X,w:re,W:ae,x:null,X:null,y:j,Y:ee,Z:ne,"%":kt},en={a:kr,A:Cr,b:wr,B:Ar,c:null,d:ce,e:ce,f:Xe,H:_e,I:we,j:Oe,L:Ie,m:tt,M:rt,p:Er,q:Br,Q:Mt,s:Bt,S:Je,u:ot,U:Me,V:pe,w:ue,W:ze,x:null,X:null,y:Qe,Y:it,Z:$e,"%":kt},Ri={a:qt,A:Ut,b:br,B:Zr,c:_i,d:v,e:v,f:z,H:y,I:y,j:u,L,m:b,M:f,p:Dt,q:m,Q:O,s:B,S:P,u:d,U:T,V:l,w:p,W:_,x:Yr,X:Di,y:M,Y:w,Z:E,"%":F};zi.x=Zi(Ne,zi),zi.X=Zi(Se,zi),zi.c=Zi(Ze,zi),en.x=Zi(Ne,en),en.X=Zi(Se,en),en.c=Zi(Ze,en);function Zi(Pr,Qr){return function(ci){var mi=[],Et=-1,ar=0,gr=Pr.length,ti,wi,Gi;for(ci instanceof Date||(ci=new Date(+ci));++Et53)return null;"w"in mi||(mi.w=1),"Z"in mi?(ar=S(e(mi.y,0,1)),gr=ar.getUTCDay(),ar=gr>4||gr===0?x.utcMonday.ceil(ar):x.utcMonday(ar),ar=x.utcDay.offset(ar,(mi.V-1)*7),mi.y=ar.getUTCFullYear(),mi.m=ar.getUTCMonth(),mi.d=ar.getUTCDate()+(mi.w+6)%7):(ar=A(e(mi.y,0,1)),gr=ar.getDay(),ar=gr>4||gr===0?x.timeMonday.ceil(ar):x.timeMonday(ar),ar=x.timeDay.offset(ar,(mi.V-1)*7),mi.y=ar.getFullYear(),mi.m=ar.getMonth(),mi.d=ar.getDate()+(mi.w+6)%7)}else("W"in mi||"U"in mi)&&("w"in mi||(mi.w="u"in mi?mi.u%7:"W"in mi?1:0),gr="Z"in mi?S(e(mi.y,0,1)).getUTCDay():A(e(mi.y,0,1)).getDay(),mi.m=0,mi.d="W"in mi?(mi.w+6)%7+mi.W*7-(gr+5)%7:mi.w+mi.U*7-(gr+6)%7);return"Z"in mi?(mi.H+=mi.Z/100|0,mi.M+=mi.Z%100,S(mi)):A(mi)}}function Xt(Pr,Qr,ci,mi){for(var Et=0,ar=Qr.length,gr=ci.length,ti,wi;Et=gr)return-1;if(ti=Qr.charCodeAt(Et++),ti===37){if(ti=Qr.charAt(Et++),wi=Ri[ti in r?Qr.charAt(Et++):ti],!wi||(mi=wi(Pr,ci,mi))<0)return-1}else if(ti!=ci.charCodeAt(mi++))return-1}return mi}function Dt(Pr,Qr,ci){var mi=ht.exec(Qr.slice(ci));return mi?(Pr.p=yt[mi[0].toLowerCase()],ci+mi[0].length):-1}function qt(Pr,Qr,ci){var mi=Wt.exec(Qr.slice(ci));return mi?(Pr.w=$t[mi[0].toLowerCase()],ci+mi[0].length):-1}function Ut(Pr,Qr,ci){var mi=Pt.exec(Qr.slice(ci));return mi?(Pr.w=Ot[mi[0].toLowerCase()],ci+mi[0].length):-1}function br(Pr,Qr,ci){var mi=Pi.exec(Qr.slice(ci));return mi?(Pr.m=Bi[mi[0].toLowerCase()],ci+mi[0].length):-1}function Zr(Pr,Qr,ci){var mi=lr.exec(Qr.slice(ci));return mi?(Pr.m=fi[mi[0].toLowerCase()],ci+mi[0].length):-1}function _i(Pr,Qr,ci){return Xt(Pr,Ze,Qr,ci)}function Yr(Pr,Qr,ci){return Xt(Pr,Ne,Qr,ci)}function Di(Pr,Qr,ci){return Xt(Pr,Se,Qr,ci)}function qi(Pr){return be[Pr.getDay()]}function $i(Pr){return Ee[Pr.getDay()]}function Mi(Pr){return et[Pr.getMonth()]}function sn(Pr){return Ce[Pr.getMonth()]}function vt(Pr){return Ve[+(Pr.getHours()>=12)]}function pt(Pr){return 1+~~(Pr.getMonth()/3)}function kr(Pr){return be[Pr.getUTCDay()]}function Cr(Pr){return Ee[Pr.getUTCDay()]}function wr(Pr){return et[Pr.getUTCMonth()]}function Ar(Pr){return Ce[Pr.getUTCMonth()]}function Er(Pr){return Ve[+(Pr.getUTCHours()>=12)]}function Br(Pr){return 1+~~(Pr.getUTCMonth()/3)}return{format:function(Pr){var Qr=Zi(Pr+="",zi);return Qr.toString=function(){return Pr},Qr},parse:function(Pr){var Qr=vn(Pr+="",!1);return Qr.toString=function(){return Pr},Qr},utcFormat:function(Pr){var Qr=Zi(Pr+="",en);return Qr.toString=function(){return Pr},Qr},utcParse:function(Pr){var Qr=vn(Pr+="",!0);return Qr.toString=function(){return Pr},Qr}}}var r={"-":"",_:" ",0:"0"},o=/^\s*\d+/,i=/^%/,n=/[\\^$*+?|[\]().{}]/g;function a(Fe,Ze,Ne){var Se=Fe<0?"-":"",Ve=(Se?-Fe:Fe)+"",Ee=Ve.length;return Se+(Ee68?1900:2e3),Ne+Se[0].length):-1}function E(Fe,Ze,Ne){var Se=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ze.slice(Ne,Ne+6));return Se?(Fe.Z=Se[1]?0:-(Se[2]+(Se[3]||"00")),Ne+Se[0].length):-1}function m(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+1));return Se?(Fe.q=Se[0]*3-3,Ne+Se[0].length):-1}function b(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+2));return Se?(Fe.m=Se[0]-1,Ne+Se[0].length):-1}function v(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+2));return Se?(Fe.d=+Se[0],Ne+Se[0].length):-1}function u(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+3));return Se?(Fe.m=0,Fe.d=+Se[0],Ne+Se[0].length):-1}function y(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+2));return Se?(Fe.H=+Se[0],Ne+Se[0].length):-1}function f(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+2));return Se?(Fe.M=+Se[0],Ne+Se[0].length):-1}function P(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+2));return Se?(Fe.S=+Se[0],Ne+Se[0].length):-1}function L(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+3));return Se?(Fe.L=+Se[0],Ne+Se[0].length):-1}function z(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne,Ne+6));return Se?(Fe.L=Math.floor(Se[0]/1e3),Ne+Se[0].length):-1}function F(Fe,Ze,Ne){var Se=i.exec(Ze.slice(Ne,Ne+1));return Se?Ne+Se[0].length:-1}function O(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne));return Se?(Fe.Q=+Se[0],Ne+Se[0].length):-1}function B(Fe,Ze,Ne){var Se=o.exec(Ze.slice(Ne));return Se?(Fe.s=+Se[0],Ne+Se[0].length):-1}function I(Fe,Ze){return a(Fe.getDate(),Ze,2)}function N(Fe,Ze){return a(Fe.getHours(),Ze,2)}function U(Fe,Ze){return a(Fe.getHours()%12||12,Ze,2)}function W(Fe,Ze){return a(1+x.timeDay.count(x.timeYear(Fe),Fe),Ze,3)}function Q(Fe,Ze){return a(Fe.getMilliseconds(),Ze,3)}function le(Fe,Ze){return Q(Fe,Ze)+"000"}function se(Fe,Ze){return a(Fe.getMonth()+1,Ze,2)}function fe(Fe,Ze){return a(Fe.getMinutes(),Ze,2)}function G(Fe,Ze){return a(Fe.getSeconds(),Ze,2)}function J(Fe){var Ze=Fe.getDay();return Ze===0?7:Ze}function $(Fe,Ze){return a(x.timeSunday.count(x.timeYear(Fe)-1,Fe),Ze,2)}function X(Fe,Ze){var Ne=Fe.getDay();return Fe=Ne>=4||Ne===0?x.timeThursday(Fe):x.timeThursday.ceil(Fe),a(x.timeThursday.count(x.timeYear(Fe),Fe)+(x.timeYear(Fe).getDay()===4),Ze,2)}function re(Fe){return Fe.getDay()}function ae(Fe,Ze){return a(x.timeMonday.count(x.timeYear(Fe)-1,Fe),Ze,2)}function j(Fe,Ze){return a(Fe.getFullYear()%100,Ze,2)}function ee(Fe,Ze){return a(Fe.getFullYear()%1e4,Ze,4)}function ne(Fe){var Ze=Fe.getTimezoneOffset();return(Ze>0?"-":(Ze*=-1,"+"))+a(Ze/60|0,"0",2)+a(Ze%60,"0",2)}function ce(Fe,Ze){return a(Fe.getUTCDate(),Ze,2)}function _e(Fe,Ze){return a(Fe.getUTCHours(),Ze,2)}function we(Fe,Ze){return a(Fe.getUTCHours()%12||12,Ze,2)}function Oe(Fe,Ze){return a(1+x.utcDay.count(x.utcYear(Fe),Fe),Ze,3)}function Ie(Fe,Ze){return a(Fe.getUTCMilliseconds(),Ze,3)}function Xe(Fe,Ze){return Ie(Fe,Ze)+"000"}function tt(Fe,Ze){return a(Fe.getUTCMonth()+1,Ze,2)}function rt(Fe,Ze){return a(Fe.getUTCMinutes(),Ze,2)}function Je(Fe,Ze){return a(Fe.getUTCSeconds(),Ze,2)}function ot(Fe){var Ze=Fe.getUTCDay();return Ze===0?7:Ze}function Me(Fe,Ze){return a(x.utcSunday.count(x.utcYear(Fe)-1,Fe),Ze,2)}function pe(Fe,Ze){var Ne=Fe.getUTCDay();return Fe=Ne>=4||Ne===0?x.utcThursday(Fe):x.utcThursday.ceil(Fe),a(x.utcThursday.count(x.utcYear(Fe),Fe)+(x.utcYear(Fe).getUTCDay()===4),Ze,2)}function ue(Fe){return Fe.getUTCDay()}function ze(Fe,Ze){return a(x.utcMonday.count(x.utcYear(Fe)-1,Fe),Ze,2)}function Qe(Fe,Ze){return a(Fe.getUTCFullYear()%100,Ze,2)}function it(Fe,Ze){return a(Fe.getUTCFullYear()%1e4,Ze,4)}function $e(){return"+0000"}function kt(){return"%"}function Mt(Fe){return+Fe}function Bt(Fe){return Math.floor(+Fe/1e3)}var jt;cr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function cr(Fe){return jt=t(Fe),g.timeFormat=jt.format,g.timeParse=jt.parse,g.utcFormat=jt.utcFormat,g.utcParse=jt.utcParse,jt}var nr="%Y-%m-%dT%H:%M:%S.%LZ";function Lr(Fe){return Fe.toISOString()}var mr=Date.prototype.toISOString?Lr:g.utcFormat(nr);function xr(Fe){var Ze=new Date(Fe);return isNaN(Ze)?null:Ze}var mt=+new Date("2000-01-01T00:00:00.000Z")?xr:g.utcParse(nr);g.isoFormat=mr,g.isoParse=mt,g.timeFormatDefaultLocale=cr,g.timeFormatLocale=t,Object.defineProperty(g,"__esModule",{value:!0})})}}),To=Le({"node_modules/d3-format/dist/d3-format.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z):(g=typeof globalThis<"u"?globalThis:g||self,x(g.d3=g.d3||{}))})(Z,function(g){"use strict";function x(b){return Math.abs(b=Math.round(b))>=1e21?b.toLocaleString("en").replace(/,/g,""):b.toString(10)}function A(b,v){if((u=(b=v?b.toExponential(v-1):b.toExponential()).indexOf("e"))<0)return null;var u,y=b.slice(0,u);return[y.length>1?y[0]+y.slice(2):y,+b.slice(u+1)]}function S(b){return b=A(Math.abs(b)),b?b[1]:NaN}function e(b,v){return function(u,y){for(var f=u.length,P=[],L=0,z=b[0],F=0;f>0&&z>0&&(F+z+1>y&&(z=Math.max(1,y-F)),P.push(u.substring(f-=z,f+z)),!((F+=z+1)>y));)z=b[L=(L+1)%b.length];return P.reverse().join(v)}}function t(b){return function(v){return v.replace(/[0-9]/g,function(u){return b[+u]})}}var r=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(b){if(!(v=r.exec(b)))throw new Error("invalid format: "+b);var v;return new i({fill:v[1],align:v[2],sign:v[3],symbol:v[4],zero:v[5],width:v[6],comma:v[7],precision:v[8]&&v[8].slice(1),trim:v[9],type:v[10]})}o.prototype=i.prototype;function i(b){this.fill=b.fill===void 0?" ":b.fill+"",this.align=b.align===void 0?">":b.align+"",this.sign=b.sign===void 0?"-":b.sign+"",this.symbol=b.symbol===void 0?"":b.symbol+"",this.zero=!!b.zero,this.width=b.width===void 0?void 0:+b.width,this.comma=!!b.comma,this.precision=b.precision===void 0?void 0:+b.precision,this.trim=!!b.trim,this.type=b.type===void 0?"":b.type+""}i.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function n(b){e:for(var v=b.length,u=1,y=-1,f;u0&&(y=0);break}return y>0?b.slice(0,y)+b.slice(f+1):b}var a;function s(b,v){var u=A(b,v);if(!u)return b+"";var y=u[0],f=u[1],P=f-(a=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,L=y.length;return P===L?y:P>L?y+new Array(P-L+1).join("0"):P>0?y.slice(0,P)+"."+y.slice(P):"0."+new Array(1-P).join("0")+A(b,Math.max(0,v+P-1))[0]}function c(b,v){var u=A(b,v);if(!u)return b+"";var y=u[0],f=u[1];return f<0?"0."+new Array(-f).join("0")+y:y.length>f+1?y.slice(0,f+1)+"."+y.slice(f+1):y+new Array(f-y.length+2).join("0")}var h={"%":function(b,v){return(b*100).toFixed(v)},b:function(b){return Math.round(b).toString(2)},c:function(b){return b+""},d:x,e:function(b,v){return b.toExponential(v)},f:function(b,v){return b.toFixed(v)},g:function(b,v){return b.toPrecision(v)},o:function(b){return Math.round(b).toString(8)},p:function(b,v){return c(b*100,v)},r:c,s,X:function(b){return Math.round(b).toString(16).toUpperCase()},x:function(b){return Math.round(b).toString(16)}};function p(b){return b}var d=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function l(b){var v=b.grouping===void 0||b.thousands===void 0?p:e(d.call(b.grouping,Number),b.thousands+""),u=b.currency===void 0?"":b.currency[0]+"",y=b.currency===void 0?"":b.currency[1]+"",f=b.decimal===void 0?".":b.decimal+"",P=b.numerals===void 0?p:t(d.call(b.numerals,String)),L=b.percent===void 0?"%":b.percent+"",z=b.minus===void 0?"-":b.minus+"",F=b.nan===void 0?"NaN":b.nan+"";function O(I){I=o(I);var N=I.fill,U=I.align,W=I.sign,Q=I.symbol,le=I.zero,se=I.width,fe=I.comma,G=I.precision,J=I.trim,$=I.type;$==="n"?(fe=!0,$="g"):h[$]||(G===void 0&&(G=12),J=!0,$="g"),(le||N==="0"&&U==="=")&&(le=!0,N="0",U="=");var X=Q==="$"?u:Q==="#"&&/[boxX]/.test($)?"0"+$.toLowerCase():"",re=Q==="$"?y:/[%p]/.test($)?L:"",ae=h[$],j=/[defgprs%]/.test($);G=G===void 0?6:/[gprs]/.test($)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G));function ee(ne){var ce=X,_e=re,we,Oe,Ie;if($==="c")_e=ae(ne)+_e,ne="";else{ne=+ne;var Xe=ne<0||1/ne<0;if(ne=isNaN(ne)?F:ae(Math.abs(ne),G),J&&(ne=n(ne)),Xe&&+ne==0&&W!=="+"&&(Xe=!1),ce=(Xe?W==="("?W:z:W==="-"||W==="("?"":W)+ce,_e=($==="s"?T[8+a/3]:"")+_e+(Xe&&W==="("?")":""),j){for(we=-1,Oe=ne.length;++weIe||Ie>57){_e=(Ie===46?f+ne.slice(we+1):ne.slice(we))+_e,ne=ne.slice(0,we);break}}}fe&&!le&&(ne=v(ne,1/0));var tt=ce.length+ne.length+_e.length,rt=tt>1)+ce+ne+_e+rt.slice(tt);break;default:ne=rt+ce+ne+_e;break}return P(ne)}return ee.toString=function(){return I+""},ee}function B(I,N){var U=O((I=o(I),I.type="f",I)),W=Math.max(-8,Math.min(8,Math.floor(S(N)/3)))*3,Q=Math.pow(10,-W),le=T[8+W/3];return function(se){return U(Q*se)+le}}return{format:O,formatPrefix:B}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(b){return _=l(b),g.format=_.format,g.formatPrefix=_.formatPrefix,_}function M(b){return Math.max(0,-S(Math.abs(b)))}function E(b,v){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(S(v)/3)))*3-S(Math.abs(b)))}function m(b,v){return b=Math.abs(b),v=Math.abs(v)-b,Math.max(0,S(v)-S(b))+1}g.FormatSpecifier=i,g.formatDefaultLocale=w,g.formatLocale=l,g.formatSpecifier=o,g.precisionFixed=M,g.precisionPrefix=E,g.precisionRound=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),Xn=Le({"node_modules/is-string-blank/index.js"(Z,H){"use strict";H.exports=function(g){for(var x=g.length,A,S=0;S13)&&A!==32&&A!==133&&A!==160&&A!==5760&&A!==6158&&(A<8192||A>8205)&&A!==8232&&A!==8233&&A!==8239&&A!==8287&&A!==8288&&A!==12288&&A!==65279)return!1;return!0}}}),zn=Le({"node_modules/fast-isnumeric/index.js"(Z,H){"use strict";var g=Xn();H.exports=function(x){var A=typeof x;if(A==="string"){var S=x;if(x=+x,x===0&&g(S))return!1}else if(A!=="number")return!1;return x-x<1}}}),$n=Le({"src/constants/numerical.js"(Z,H){"use strict";H.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}}}),Ao=Le({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z):(g=typeof globalThis<"u"?globalThis:g||self,x(g["base64-arraybuffer"]={}))})(Z,function(g){"use strict";for(var x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A=typeof Uint8Array>"u"?[]:new Uint8Array(256),S=0;S>2],a+=x[(o[i]&3)<<4|o[i+1]>>4],a+=x[(o[i+1]&15)<<2|o[i+2]>>6],a+=x[o[i+2]&63];return n%3===2?a=a.substring(0,a.length-1)+"=":n%3===1&&(a=a.substring(0,a.length-2)+"=="),a},t=function(r){var o=r.length*.75,i=r.length,n,a=0,s,c,h,p;r[r.length-1]==="="&&(o--,r[r.length-2]==="="&&o--);var d=new ArrayBuffer(o),T=new Uint8Array(d);for(n=0;n>4,T[a++]=(c&15)<<4|h>>2,T[a++]=(h&3)<<6|p&63;return d};g.decode=t,g.encode=e,Object.defineProperty(g,"__esModule",{value:!0})})}}),$s=Le({"src/lib/is_plain_object.js"(Z,H){"use strict";H.exports=function(x){return window&&window.process&&window.process.versions?Object.prototype.toString.call(x)==="[object Object]":Object.prototype.toString.call(x)==="[object Object]"&&Object.getPrototypeOf(x).hasOwnProperty("hasOwnProperty")}}}),cl=Le({"src/lib/array.js"(Z){"use strict";var H=Ao().decode,g=$s(),x=Array.isArray,A=ArrayBuffer,S=DataView;function e(s){return A.isView(s)&&!(s instanceof S)}Z.isTypedArray=e;function t(s){return x(s)||e(s)}Z.isArrayOrTypedArray=t;function r(s){return!t(s[0])}Z.isArray1D=r,Z.ensureArray=function(s,c){return x(s)||(s=[]),s.length=c,s};var o={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};o.uint8c=o.u1c,o.uint8=o.u1,o.int8=o.i1,o.uint16=o.u2,o.int16=o.i2,o.uint32=o.u4,o.int32=o.i4,o.float32=o.f4,o.float64=o.f8;function i(s){return s.constructor===ArrayBuffer}Z.isArrayBuffer=i,Z.decodeTypedArraySpec=function(s){var c=[],h=n(s),p=h.dtype,d=o[p];if(!d)throw new Error('Error in dtype: "'+p+'"');var T=d.BYTES_PER_ELEMENT,l=h.bdata;i(l)||(l=H(l));var _=h.shape===void 0?[l.byteLength/T]:(""+h.shape).split(",");_.reverse();var w=_.length,M,E,m=+_[0],b=T*m,v=0;if(w===1)c=new d(l);else if(w===2)for(M=+_[1],E=0;E2)return d[M]=d[M]|e,_.set(w,null);if(l){for(c=M;c0)return Math.log(A)/Math.LN10;var e=Math.log(Math.min(S[0],S[1]))/Math.LN10;return g(e)||(e=Math.log(Math.max(S[0],S[1]))/Math.LN10-6),e}}}),Tc=Le({"src/lib/relink_private.js"(Z,H){"use strict";var g=cl().isArrayOrTypedArray,x=$s();H.exports=function A(S,e){for(var t in e){var r=e[t],o=S[t];if(o!==r)if(t.charAt(0)==="_"||typeof r=="function"){if(t in S)continue;S[t]=r}else if(g(r)&&g(o)&&x(r[0])){if(t==="customdata"||t==="ids")continue;for(var i=Math.min(r.length,o.length),n=0;nS/2?A-Math.round(A/S)*S:A}H.exports={mod:g,modHalf:x}}}),Vl=Le({"node_modules/tinycolor2/tinycolor.js"(Z,H){(function(g){var x=/^\s+/,A=/\s+$/,S=0,e=g.round,t=g.min,r=g.max,o=g.random;function i(j,ee){if(j=j||"",ee=ee||{},j instanceof i)return j;if(!(this instanceof i))return new i(j,ee);var ne=n(j);this._originalInput=j,this._r=ne.r,this._g=ne.g,this._b=ne.b,this._a=ne.a,this._roundA=e(100*this._a)/100,this._format=ee.format||ne.format,this._gradientType=ee.gradientType,this._r<1&&(this._r=e(this._r)),this._g<1&&(this._g=e(this._g)),this._b<1&&(this._b=e(this._b)),this._ok=ne.ok,this._tc_id=S++}i.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),ee,ne,ce,_e,we,Oe;return ee=j.r/255,ne=j.g/255,ce=j.b/255,ee<=.03928?_e=ee/12.92:_e=g.pow((ee+.055)/1.055,2.4),ne<=.03928?we=ne/12.92:we=g.pow((ne+.055)/1.055,2.4),ce<=.03928?Oe=ce/12.92:Oe=g.pow((ce+.055)/1.055,2.4),.2126*_e+.7152*we+.0722*Oe},setAlpha:function(j){return this._a=I(j),this._roundA=e(100*this._a)/100,this},toHsv:function(){var j=h(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=h(this._r,this._g,this._b),ee=e(j.h*360),ne=e(j.s*100),ce=e(j.v*100);return this._a==1?"hsv("+ee+", "+ne+"%, "+ce+"%)":"hsva("+ee+", "+ne+"%, "+ce+"%, "+this._roundA+")"},toHsl:function(){var j=s(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=s(this._r,this._g,this._b),ee=e(j.h*360),ne=e(j.s*100),ce=e(j.l*100);return this._a==1?"hsl("+ee+", "+ne+"%, "+ce+"%)":"hsla("+ee+", "+ne+"%, "+ce+"%, "+this._roundA+")"},toHex:function(j){return d(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return T(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},toRgb:function(){return{r:e(this._r),g:e(this._g),b:e(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+e(this._r)+", "+e(this._g)+", "+e(this._b)+")":"rgba("+e(this._r)+", "+e(this._g)+", "+e(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:e(N(this._r,255)*100)+"%",g:e(N(this._g,255)*100)+"%",b:e(N(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%)":"rgba("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:O[d(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var ee="#"+l(this._r,this._g,this._b,this._a),ne=ee,ce=this._gradientType?"GradientType = 1, ":"";if(j){var _e=i(j);ne="#"+l(_e._r,_e._g,_e._b,_e._a)}return"progid:DXImageTransform.Microsoft.gradient("+ce+"startColorstr="+ee+",endColorstr="+ne+")"},toString:function(j){var ee=!!j;j=j||this._format;var ne=!1,ce=this._a<1&&this._a>=0,_e=!ee&&ce&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return _e?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(ne=this.toRgbString()),j==="prgb"&&(ne=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(ne=this.toHexString()),j==="hex3"&&(ne=this.toHexString(!0)),j==="hex4"&&(ne=this.toHex8String(!0)),j==="hex8"&&(ne=this.toHex8String()),j==="name"&&(ne=this.toName()),j==="hsl"&&(ne=this.toHslString()),j==="hsv"&&(ne=this.toHsvString()),ne||this.toHexString())},clone:function(){return i(this.toString())},_applyModification:function(j,ee){var ne=j.apply(null,[this].concat([].slice.call(ee)));return this._r=ne._r,this._g=ne._g,this._b=ne._b,this.setAlpha(ne._a),this},lighten:function(){return this._applyModification(E,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(M,arguments)},spin:function(){return this._applyModification(v,arguments)},_applyCombination:function(j,ee){return j.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(L,arguments)},complement:function(){return this._applyCombination(u,arguments)},monochromatic:function(){return this._applyCombination(z,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(f,arguments)}},i.fromRatio=function(j,ee){if(typeof j=="object"){var ne={};for(var ce in j)j.hasOwnProperty(ce)&&(ce==="a"?ne[ce]=j[ce]:ne[ce]=fe(j[ce]));j=ne}return i(j,ee)};function n(j){var ee={r:0,g:0,b:0},ne=1,ce=null,_e=null,we=null,Oe=!1,Ie=!1;return typeof j=="string"&&(j=re(j)),typeof j=="object"&&(X(j.r)&&X(j.g)&&X(j.b)?(ee=a(j.r,j.g,j.b),Oe=!0,Ie=String(j.r).substr(-1)==="%"?"prgb":"rgb"):X(j.h)&&X(j.s)&&X(j.v)?(ce=fe(j.s),_e=fe(j.v),ee=p(j.h,ce,_e),Oe=!0,Ie="hsv"):X(j.h)&&X(j.s)&&X(j.l)&&(ce=fe(j.s),we=fe(j.l),ee=c(j.h,ce,we),Oe=!0,Ie="hsl"),j.hasOwnProperty("a")&&(ne=j.a)),ne=I(ne),{ok:Oe,format:j.format||Ie,r:t(255,r(ee.r,0)),g:t(255,r(ee.g,0)),b:t(255,r(ee.b,0)),a:ne}}function a(j,ee,ne){return{r:N(j,255)*255,g:N(ee,255)*255,b:N(ne,255)*255}}function s(j,ee,ne){j=N(j,255),ee=N(ee,255),ne=N(ne,255);var ce=r(j,ee,ne),_e=t(j,ee,ne),we,Oe,Ie=(ce+_e)/2;if(ce==_e)we=Oe=0;else{var Xe=ce-_e;switch(Oe=Ie>.5?Xe/(2-ce-_e):Xe/(ce+_e),ce){case j:we=(ee-ne)/Xe+(ee1&&(Je-=1),Je<1/6?tt+(rt-tt)*6*Je:Je<1/2?rt:Je<2/3?tt+(rt-tt)*(2/3-Je)*6:tt}if(ee===0)ce=_e=we=ne;else{var Ie=ne<.5?ne*(1+ee):ne+ee-ne*ee,Xe=2*ne-Ie;ce=Oe(Xe,Ie,j+1/3),_e=Oe(Xe,Ie,j),we=Oe(Xe,Ie,j-1/3)}return{r:ce*255,g:_e*255,b:we*255}}function h(j,ee,ne){j=N(j,255),ee=N(ee,255),ne=N(ne,255);var ce=r(j,ee,ne),_e=t(j,ee,ne),we,Oe,Ie=ce,Xe=ce-_e;if(Oe=ce===0?0:Xe/ce,ce==_e)we=0;else{switch(ce){case j:we=(ee-ne)/Xe+(ee>1)+720)%360;--ee;)ce.h=(ce.h+_e)%360,we.push(i(ce));return we}function z(j,ee){ee=ee||6;for(var ne=i(j).toHsv(),ce=ne.h,_e=ne.s,we=ne.v,Oe=[],Ie=1/ee;ee--;)Oe.push(i({h:ce,s:_e,v:we})),we=(we+Ie)%1;return Oe}i.mix=function(j,ee,ne){ne=ne===0?0:ne||50;var ce=i(j).toRgb(),_e=i(ee).toRgb(),we=ne/100,Oe={r:(_e.r-ce.r)*we+ce.r,g:(_e.g-ce.g)*we+ce.g,b:(_e.b-ce.b)*we+ce.b,a:(_e.a-ce.a)*we+ce.a};return i(Oe)},i.readability=function(j,ee){var ne=i(j),ce=i(ee);return(g.max(ne.getLuminance(),ce.getLuminance())+.05)/(g.min(ne.getLuminance(),ce.getLuminance())+.05)},i.isReadable=function(j,ee,ne){var ce=i.readability(j,ee),_e,we;switch(we=!1,_e=ae(ne),_e.level+_e.size){case"AAsmall":case"AAAlarge":we=ce>=4.5;break;case"AAlarge":we=ce>=3;break;case"AAAsmall":we=ce>=7;break}return we},i.mostReadable=function(j,ee,ne){var ce=null,_e=0,we,Oe,Ie,Xe;ne=ne||{},Oe=ne.includeFallbackColors,Ie=ne.level,Xe=ne.size;for(var tt=0;tt_e&&(_e=we,ce=i(ee[tt]));return i.isReadable(j,ce,{level:Ie,size:Xe})||!Oe?ce:(ne.includeFallbackColors=!1,i.mostReadable(j,["#fff","#000"],ne))};var F=i.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},O=i.hexNames=B(F);function B(j){var ee={};for(var ne in j)j.hasOwnProperty(ne)&&(ee[j[ne]]=ne);return ee}function I(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function N(j,ee){Q(j)&&(j="100%");var ne=le(j);return j=t(ee,r(0,parseFloat(j))),ne&&(j=parseInt(j*ee,10)/100),g.abs(j-ee)<1e-6?1:j%ee/parseFloat(ee)}function U(j){return t(1,r(0,j))}function W(j){return parseInt(j,16)}function Q(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function le(j){return typeof j=="string"&&j.indexOf("%")!=-1}function se(j){return j.length==1?"0"+j:""+j}function fe(j){return j<=1&&(j=j*100+"%"),j}function G(j){return g.round(parseFloat(j)*255).toString(16)}function J(j){return W(j)/255}var $=function(){var j="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",ne="(?:"+ee+")|(?:"+j+")",ce="[\\s|\\(]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")\\s*\\)?",_e="[\\s|\\(]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")\\s*\\)?";return{CSS_UNIT:new RegExp(ne),rgb:new RegExp("rgb"+ce),rgba:new RegExp("rgba"+_e),hsl:new RegExp("hsl"+ce),hsla:new RegExp("hsla"+_e),hsv:new RegExp("hsv"+ce),hsva:new RegExp("hsva"+_e),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function X(j){return!!$.CSS_UNIT.exec(j)}function re(j){j=j.replace(x,"").replace(A,"").toLowerCase();var ee=!1;if(F[j])j=F[j],ee=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ne;return(ne=$.rgb.exec(j))?{r:ne[1],g:ne[2],b:ne[3]}:(ne=$.rgba.exec(j))?{r:ne[1],g:ne[2],b:ne[3],a:ne[4]}:(ne=$.hsl.exec(j))?{h:ne[1],s:ne[2],l:ne[3]}:(ne=$.hsla.exec(j))?{h:ne[1],s:ne[2],l:ne[3],a:ne[4]}:(ne=$.hsv.exec(j))?{h:ne[1],s:ne[2],v:ne[3]}:(ne=$.hsva.exec(j))?{h:ne[1],s:ne[2],v:ne[3],a:ne[4]}:(ne=$.hex8.exec(j))?{r:W(ne[1]),g:W(ne[2]),b:W(ne[3]),a:J(ne[4]),format:ee?"name":"hex8"}:(ne=$.hex6.exec(j))?{r:W(ne[1]),g:W(ne[2]),b:W(ne[3]),format:ee?"name":"hex"}:(ne=$.hex4.exec(j))?{r:W(ne[1]+""+ne[1]),g:W(ne[2]+""+ne[2]),b:W(ne[3]+""+ne[3]),a:J(ne[4]+""+ne[4]),format:ee?"name":"hex8"}:(ne=$.hex3.exec(j))?{r:W(ne[1]+""+ne[1]),g:W(ne[2]+""+ne[2]),b:W(ne[3]+""+ne[3]),format:ee?"name":"hex"}:!1}function ae(j){var ee,ne;return j=j||{level:"AA",size:"small"},ee=(j.level||"AA").toUpperCase(),ne=(j.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),ne!=="small"&&ne!=="large"&&(ne="small"),{level:ee,size:ne}}typeof H<"u"&&H.exports?H.exports=i:window.tinycolor=i})(Math)}}),ho=Le({"src/lib/extend.js"(Z){"use strict";var H=$s(),g=Array.isArray;function x(S,e){var t,r;for(t=0;t=0)))return i;if(h===3)s[h]>1&&(s[h]=1);else if(s[h]>=1)return i}var p=Math.round(s[0]*255)+", "+Math.round(s[1]*255)+", "+Math.round(s[2]*255);return c?"rgba("+p+", "+s[3]+")":"rgb("+p+")"}}}),Iv=Le({"src/constants/interactions.js"(Z,H){"use strict";H.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}}}),no=Le({"src/lib/regex.js"(Z){"use strict";Z.counter=function(H,g,x,A){var S=(g||"")+(x?"":"$"),e=A===!1?"":"^";return H==="xy"?new RegExp(e+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+S):new RegExp(e+H+"([2-9]|[1-9][0-9]+)?"+S)}}}),Ro=Le({"src/lib/coerce.js"(Z){"use strict";var H=zn(),g=Vl(),x=ho().extendFlat,A=Sl(),S=lp(),e=$a(),t=Iv().DESELECTDIM,r=jl(),o=no().counter,i=Vu().modHalf,n=cl().isArrayOrTypedArray,a=cl().isTypedArraySpec,s=cl().decodeTypedArraySpec;Z.valObjectMeta={data_array:{coerceFunction:function(h,p,d){p.set(n(h)?h:a(h)?s(h):d)}},enumerated:{coerceFunction:function(h,p,d,T){T.coerceNumber&&(h=+h),T.values.indexOf(h)===-1?p.set(d):p.set(h)},validateFunction:function(h,p){p.coerceNumber&&(h=+h);for(var d=p.values,T=0;TT.max?p.set(d):p.set(+h)}},integer:{coerceFunction:function(h,p,d,T){if((T.extras||[]).indexOf(h)!==-1){p.set(h);return}a(h)&&(h=s(h)),h%1||!H(h)||T.min!==void 0&&hT.max?p.set(d):p.set(+h)}},string:{coerceFunction:function(h,p,d,T){if(typeof h!="string"){var l=typeof h=="number";T.strict===!0||!l?p.set(d):p.set(String(h))}else T.noBlank&&!h?p.set(d):p.set(h)}},color:{coerceFunction:function(h,p,d){a(h)&&(h=s(h)),g(h).isValid()?p.set(h):p.set(d)}},colorlist:{coerceFunction:function(h,p,d){function T(l){return g(l).isValid()}!Array.isArray(h)||!h.length?p.set(d):h.every(T)?p.set(h):p.set(d)}},colorscale:{coerceFunction:function(h,p,d){p.set(S.get(h,d))}},angle:{coerceFunction:function(h,p,d){a(h)&&(h=s(h)),h==="auto"?p.set("auto"):H(h)?p.set(i(+h,360)):p.set(d)}},subplotid:{coerceFunction:function(h,p,d,T){var l=T.regex||o(d);if(typeof h=="string"&&l.test(h)){p.set(h);return}p.set(d)},validateFunction:function(h,p){var d=p.dflt;return h===d?!0:typeof h!="string"?!1:!!o(d).test(h)}},flaglist:{coerceFunction:function(h,p,d,T){if((T.extras||[]).indexOf(h)!==-1){p.set(h);return}if(typeof h!="string"){p.set(d);return}for(var l=h.split("+"),_=0;_/g),h=0;h1){var e=["LOG:"];for(S=0;S1){var t=[];for(S=0;S"),"long")}},A.warn=function(){var S;if(g.logging>0){var e=["WARN:"];for(S=0;S0){var t=[];for(S=0;S"),"stick")}},A.error=function(){var S;if(g.logging>0){var e=["ERROR:"];for(S=0;S0){var t=[];for(S=0;S"),"stick")}}}}),jo=Le({"src/lib/noop.js"(Z,H){"use strict";H.exports=function(){}}}),ms=Le({"src/lib/push_unique.js"(Z,H){"use strict";H.exports=function(x,A){if(A instanceof RegExp){for(var S=A.toString(),e=0;e0){for(var r=[],o=0;o=l&&F<=_?F:e}if(typeof F!="string"&&typeof F!="number")return e;F=String(F);var U=d(O),W=F.charAt(0);U&&(W==="G"||W==="g")&&(F=F.substr(1),O="");var Q=U&&O.substr(0,7)==="chinese",le=F.match(Q?h:c);if(!le)return e;var se=le[1],fe=le[3]||"1",G=Number(le[5]||1),J=Number(le[7]||0),$=Number(le[9]||0),X=Number(le[11]||0);if(U){if(se.length===2)return e;se=Number(se);var re;try{var ae=a.getComponentMethod("calendars","getCal")(O);if(Q){var j=fe.charAt(fe.length-1)==="i";fe=parseInt(fe,10),re=ae.newDate(se,ae.toMonthIndex(se,fe,j),G)}else re=ae.newDate(se,Number(fe),G)}catch{return e}return re?(re.toJD()-n)*t+J*r+$*o+X*i:e}se.length===2?se=(Number(se)+2e3-p)%100+p:se=Number(se),fe-=1;var ee=new Date(Date.UTC(2e3,fe,G,J,$));return ee.setUTCFullYear(se),ee.getUTCMonth()!==fe||ee.getUTCDate()!==G?e:ee.getTime()+X*i},l=Z.MIN_MS=Z.dateTime2ms("-9999"),_=Z.MAX_MS=Z.dateTime2ms("9999-12-31 23:59:59.9999"),Z.isDateTime=function(F,O){return Z.dateTime2ms(F,O)!==e};function w(F,O){return String(F+Math.pow(10,O)).substr(1)}var M=90*t,E=3*r,m=5*o;Z.ms2DateTime=function(F,O,B){if(typeof F!="number"||!(F>=l&&F<=_))return e;O||(O=0);var I=Math.floor(A(F+.05,1)*10),N=Math.round(F-I/10),U,W,Q,le,se,fe;if(d(B)){var G=Math.floor(N/t)+n,J=Math.floor(A(F,t));try{U=a.getComponentMethod("calendars","getCal")(B).fromJD(G).formatDate("yyyy-mm-dd")}catch{U=s("G%Y-%m-%d")(new Date(N))}if(U.charAt(0)==="-")for(;U.length<11;)U="-0"+U.substr(1);else for(;U.length<10;)U="0"+U;W=O=l+t&&F<=_-t))return e;var O=Math.floor(A(F+.05,1)*10),B=new Date(Math.round(F-O/10)),I=H("%Y-%m-%d")(B),N=B.getHours(),U=B.getMinutes(),W=B.getSeconds(),Q=B.getUTCMilliseconds()*10+O;return b(I,N,U,W,Q)};function b(F,O,B,I,N){if((O||B||I||N)&&(F+=" "+w(O,2)+":"+w(B,2),(I||N)&&(F+=":"+w(I,2),N))){for(var U=4;N%10===0;)U-=1,N/=10;F+="."+w(N,U)}return F}Z.cleanDate=function(F,O,B){if(F===e)return O;if(Z.isJSDate(F)||typeof F=="number"&&isFinite(F)){if(d(B))return x.error("JS Dates and milliseconds are incompatible with world calendars",F),O;if(F=Z.ms2DateTimeLocal(+F),!F&&O!==void 0)return O}else if(!Z.isDateTime(F,B))return x.error("unrecognized date",F),O;return F};var v=/%\d?f/g,u=/%h/g,y={1:"1",2:"1",3:"2",4:"2"};function f(F,O,B,I){F=F.replace(v,function(U){var W=Math.min(+U.charAt(1)||6,6),Q=(O/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0";return Q});var N=new Date(Math.floor(O+.05));if(F=F.replace(u,function(){return y[B("%q")(N)]}),d(I))try{F=a.getComponentMethod("calendars","worldCalFmt")(F,O,I)}catch{return"Invalid"}return B(F)(N)}var P=[59,59.9,59.99,59.999,59.9999];function L(F,O){var B=A(F+.05,t),I=w(Math.floor(B/r),2)+":"+w(A(Math.floor(B/o),60),2);if(O!=="M"){g(O)||(O=0);var N=Math.min(A(F/i,60),P[O]),U=(100+N).toFixed(O).substr(1);O>0&&(U=U.replace(/0+$/,"").replace(/[\.]$/,"")),I+=":"+U}return I}Z.formatDate=function(F,O,B,I,N,U){if(N=d(N)&&N,!O)if(B==="y")O=U.year;else if(B==="m")O=U.month;else if(B==="d")O=U.dayMonth+` +`+U.year;else return L(F,B)+` +`+f(U.dayMonthYear,F,I,N);return f(O,F,I,N)};var z=3*t;Z.incrementMonth=function(F,O,B){B=d(B)&&B;var I=A(F,t);if(F=Math.round(F-I),B)try{var N=Math.round(F/t)+n,U=a.getComponentMethod("calendars","getCal")(B),W=U.fromJD(N);return O%12?U.add(W,O,"m"):U.add(W,O/12,"y"),(W.toJD()-n)*t+I}catch{x.error("invalid ms "+F+" in calendar "+B)}var Q=new Date(F+z);return Q.setUTCMonth(Q.getUTCMonth()+O)+I-z},Z.findExactDates=function(F,O){for(var B=0,I=0,N=0,U=0,W,Q,le=d(O)&&a.getComponentMethod("calendars","getCal")(O),se=0;se1?(n[c-1]-n[0])/(c-1):1,d,T;for(p>=0?T=a?e:t:T=a?o:r,i+=p*S*(a?-1:1)*(p>=0?1:-1);s90&&g.log("Long binary search..."),s-1};function e(i,n){return in}function o(i,n){return i>=n}Z.sorterAsc=function(i,n){return i-n},Z.sorterDes=function(i,n){return n-i},Z.distinctVals=function(i){var n=i.slice();n.sort(Z.sorterAsc);var a;for(a=n.length-1;a>-1&&n[a]===A;a--);for(var s=n[a]-n[0]||1,c=s/(a||1)/1e4,h=[],p,d=0;d<=a;d++){var T=n[d],l=T-p;p===void 0?(h.push(T),p=T):l>c&&(s=Math.min(s,l),h.push(T),p=T)}return{vals:h,minDiff:s}},Z.roundUp=function(i,n,a){for(var s=0,c=n.length-1,h,p=0,d=a?0:1,T=a?1:0,l=a?Math.ceil:Math.floor;s0&&(s=1),a&&s)return i.sort(n)}return s?i:i.reverse()},Z.findIndexOfMin=function(i,n){n=n||x;for(var a=1/0,s,c=0;cS.length)&&(e=S.length),H(A)||(A=!1),g(S[0])){for(r=new Array(e),t=0;tx.length-1)return x[x.length-1];var S=A%1;return S*x[Math.ceil(A)]+(1-S)*x[Math.floor(A)]}}}),hE=Le({"src/lib/angles.js"(Z,H){"use strict";var g=Vu(),x=g.mod,A=g.modHalf,S=Math.PI,e=2*S;function t(T){return T/180*S}function r(T){return T/S*180}function o(T){return Math.abs(T[1]-T[0])>e-1e-14}function i(T,l){return A(l-T,e)}function n(T,l){return Math.abs(i(T,l))}function a(T,l){if(o(l))return!0;var _,w;l[0]w&&(w+=e);var M=x(T,e),E=M+e;return M>=_&&M<=w||E>=_&&E<=w}function s(T,l,_,w){if(!a(l,w))return!1;var M,E;return _[0]<_[1]?(M=_[0],E=_[1]):(M=_[1],E=_[0]),T>=M&&T<=E}function c(T,l,_,w,M,E,m){M=M||0,E=E||0;var b=o([_,w]),v,u,y,f,P;b?(v=0,u=S,y=e):_1/3&&g.x<2/3},Z.isRightAnchor=function(g){return g.xanchor==="right"||g.xanchor==="auto"&&g.x>=2/3},Z.isTopAnchor=function(g){return g.yanchor==="top"||g.yanchor==="auto"&&g.y>=2/3},Z.isMiddleAnchor=function(g){return g.yanchor==="middle"||g.yanchor==="auto"&&g.y>1/3&&g.y<2/3},Z.isBottomAnchor=function(g){return g.yanchor==="bottom"||g.yanchor==="auto"&&g.y<=1/3}}}),vE=Le({"src/lib/geometry2d.js"(Z){"use strict";var H=Vu().mod;Z.segmentsIntersect=g;function g(t,r,o,i,n,a,s,c){var h=o-t,p=n-t,d=s-n,T=i-r,l=a-r,_=c-a,w=h*_-d*T;if(w===0)return null;var M=(p*_-d*l)/w,E=(p*T-h*l)/w;return E<0||E>1||M<0||M>1?null:{x:t+h*M,y:r+T*M}}Z.segmentDistance=function(r,o,i,n,a,s,c,h){if(g(r,o,i,n,a,s,c,h))return 0;var p=i-r,d=n-o,T=c-a,l=h-s,_=p*p+d*d,w=T*T+l*l,M=Math.min(x(p,d,_,a-r,s-o),x(p,d,_,c-r,h-o),x(T,l,w,r-a,o-s),x(T,l,w,i-a,n-s));return Math.sqrt(M)};function x(t,r,o,i,n){var a=i*t+n*r;if(a<0)return i*i+n*n;if(a>o){var s=i-t,c=n-r;return s*s+c*c}else{var h=i*r-n*t;return h*h/o}}var A,S,e;Z.getTextLocation=function(r,o,i,n){if((r!==S||n!==e)&&(A={},S=r,e=n),A[i])return A[i];var a=r.getPointAtLength(H(i-n/2,o)),s=r.getPointAtLength(H(i+n/2,o)),c=Math.atan((s.y-a.y)/(s.x-a.x)),h=r.getPointAtLength(H(i,o)),p=(h.x*4+a.x+s.x)/6,d=(h.y*4+a.y+s.y)/6,T={x:p,y:d,theta:c};return A[i]=T,T},Z.clearLocationCache=function(){S=null},Z.getVisibleSegment=function(r,o,i){var n=o.left,a=o.right,s=o.top,c=o.bottom,h=0,p=r.getTotalLength(),d=p,T,l;function _(M){var E=r.getPointAtLength(M);M===0?T=E:M===p&&(l=E);var m=E.xa?E.x-a:0,b=E.yc?E.y-c:0;return Math.sqrt(m*m+b*b)}for(var w=_(h);w;){if(h+=w+i,h>d)return;w=_(h)}for(w=_(d);w;){if(d-=w+i,h>d)return;w=_(d)}return{min:h,max:d,len:d-h,total:p,isClosed:h===0&&d===p&&Math.abs(T.x-l.x)<.1&&Math.abs(T.y-l.y)<.1}},Z.findPointOnPath=function(r,o,i,n){n=n||{};for(var a=n.pathLength||r.getTotalLength(),s=n.tolerance||.001,c=n.iterationLimit||30,h=r.getPointAtLength(0)[i]>r.getPointAtLength(a)[i]?-1:1,p=0,d=0,T=a,l,_,w;p0?T=l:d=l,p++}return _}}}),y_=Le({"src/lib/throttle.js"(Z){"use strict";var H={};Z.throttle=function(A,S,e){var t=H[A],r=Date.now();if(!t){for(var o in H)H[o].tst.ts+S){i();return}t.timer=setTimeout(function(){i(),t.timer=null},S)},Z.done=function(x){var A=H[x];return!A||!A.timer?Promise.resolve():new Promise(function(S){var e=A.onDone;A.onDone=function(){e&&e(),S(),A.onDone=null}})},Z.clear=function(x){if(x)g(H[x]),delete H[x];else for(var A in H)Z.clear(A)};function g(x){x&&x.timer!==null&&(clearTimeout(x.timer),x.timer=null)}}}),pE=Le({"src/lib/clear_responsive.js"(Z,H){"use strict";H.exports=function(x){x._responsiveChartHandler&&(window.removeEventListener("resize",x._responsiveChartHandler),delete x._responsiveChartHandler)}}}),mE=Le({"node_modules/is-mobile/index.js"(Z,H){"use strict";H.exports=S,H.exports.isMobile=S,H.exports.default=S;var g=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,x=/CrOS/,A=/android|ipad|playbook|silk/i;function S(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=g.test(t)&&!x.test(t)||!!e.tablet&&A.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}}}),gE=Le({"src/lib/preserve_drawing_buffer.js"(Z,H){"use strict";var g=zn(),x=mE();H.exports=function(e){var t;if(e&&e.hasOwnProperty("userAgent")?t=e.userAgent:t=A(),typeof t!="string")return!0;var r=x({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var o=t.split(" "),i=1;i-1;a--){var s=o[a];if(s.substr(0,8)==="Version/"){var c=s.substr(8).split(".")[0];if(g(c)&&(c=+c),c>=13)return!0}}}return r};function A(){var S;return typeof navigator<"u"&&(S=navigator.userAgent),S&&S.headers&&typeof S.headers["user-agent"]=="string"&&(S=S.headers["user-agent"]),S}}}),yE=Le({"src/lib/make_trace_groups.js"(Z,H){"use strict";var g=Ji();H.exports=function(A,S,e){var t=A.selectAll("g."+e.replace(/\s/g,".")).data(S,function(o){return o[0].trace.uid});t.exit().remove(),t.enter().append("g").attr("class",e),t.order();var r=A.classed("rangeplot")?"nodeRangePlot3":"node3";return t.each(function(o){o[0][r]=g.select(this)}),t}}}),_E=Le({"src/lib/localize.js"(Z,H){"use strict";var g=so();H.exports=function(A,S){for(var e=A._context.locale,t=0;t<2;t++){for(var r=A._context.locales,o=0;o<2;o++){var i=(r[e]||{}).dictionary;if(i){var n=i[S];if(n)return n}r=g.localeRegistry}var a=e.split("-")[0];if(a===e)break;e=a}return S}}}),Bw=Le({"src/lib/filter_unique.js"(Z,H){"use strict";H.exports=function(x){for(var A={},S=[],e=0,t=0;t1?(S*x+S*A)/S:x+A,t=String(e).length;if(t>16){var r=String(A).length,o=String(x).length;if(t>=o+r){var i=parseFloat(e).toPrecision(12);i.indexOf("e+")===-1&&(e=+i)}}return e}}}),wE=Le({"src/lib/clean_number.js"(Z,H){"use strict";var g=zn(),x=$n().BADNUM,A=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;H.exports=function(e){return typeof e=="string"&&(e=e.replace(A,"")),g(e)?Number(e):x}}}),ni=Le({"src/lib/index.js"(Z,H){"use strict";var g=Ji(),x=Ia().utcFormat,A=To().format,S=zn(),e=$n(),t=e.FP_SAFE,r=-t,o=e.BADNUM,i=H.exports={};i.adjustFormat=function(ae){return!ae||/^\d[.]\df/.test(ae)||/[.]\d%/.test(ae)?ae:ae==="0.f"?"~f":/^\d%/.test(ae)?"~%":/^\ds/.test(ae)?"~s":!/^[~,.0$]/.test(ae)&&/[&fps]/.test(ae)?"~"+ae:ae};var n={};i.warnBadFormat=function(re){var ae=String(re);n[ae]||(n[ae]=1,i.warn('encountered bad format: "'+ae+'"'))},i.noFormat=function(re){return String(re)},i.numberFormat=function(re){var ae;try{ae=A(i.adjustFormat(re))}catch{return i.warnBadFormat(re),i.noFormat}return ae},i.nestedProperty=jl(),i.keyedContainer=lu(),i.relativeAttr=uf(),i.isPlainObject=$s(),i.toLogRange=ju(),i.relinkPrivateKeys=Tc();var a=cl();i.isArrayBuffer=a.isArrayBuffer,i.isTypedArray=a.isTypedArray,i.isArrayOrTypedArray=a.isArrayOrTypedArray,i.isArray1D=a.isArray1D,i.ensureArray=a.ensureArray,i.concat=a.concat,i.maxRowLength=a.maxRowLength,i.minRowLength=a.minRowLength;var s=Vu();i.mod=s.mod,i.modHalf=s.modHalf;var c=Ro();i.valObjectMeta=c.valObjectMeta,i.coerce=c.coerce,i.coerce2=c.coerce2,i.coerceFont=c.coerceFont,i.coercePattern=c.coercePattern,i.coerceHoverinfo=c.coerceHoverinfo,i.coerceSelectionMarkerOpacity=c.coerceSelectionMarkerOpacity,i.validate=c.validate;var h=cE();i.dateTime2ms=h.dateTime2ms,i.isDateTime=h.isDateTime,i.ms2DateTime=h.ms2DateTime,i.ms2DateTimeLocal=h.ms2DateTimeLocal,i.cleanDate=h.cleanDate,i.isJSDate=h.isJSDate,i.formatDate=h.formatDate,i.incrementMonth=h.incrementMonth,i.dateTick0=h.dateTick0,i.dfltRange=h.dfltRange,i.findExactDates=h.findExactDates,i.MIN_MS=h.MIN_MS,i.MAX_MS=h.MAX_MS;var p=g_();i.findBin=p.findBin,i.sorterAsc=p.sorterAsc,i.sorterDes=p.sorterDes,i.distinctVals=p.distinctVals,i.roundUp=p.roundUp,i.sort=p.sort,i.findIndexOfMin=p.findIndexOfMin,i.sortObjectKeys=Up();var d=fE();i.aggNums=d.aggNums,i.len=d.len,i.mean=d.mean,i.geometricMean=d.geometricMean,i.median=d.median,i.midRange=d.midRange,i.variance=d.variance,i.stdev=d.stdev,i.interp=d.interp;var T=v_();i.init2dArray=T.init2dArray,i.transposeRagged=T.transposeRagged,i.dot=T.dot,i.translationMatrix=T.translationMatrix,i.rotationMatrix=T.rotationMatrix,i.rotationXYMatrix=T.rotationXYMatrix,i.apply3DTransform=T.apply3DTransform,i.apply2DTransform=T.apply2DTransform,i.apply2DTransform2=T.apply2DTransform2,i.convertCssMatrix=T.convertCssMatrix,i.inverseTransformMatrix=T.inverseTransformMatrix;var l=hE();i.deg2rad=l.deg2rad,i.rad2deg=l.rad2deg,i.angleDelta=l.angleDelta,i.angleDist=l.angleDist,i.isFullCircle=l.isFullCircle,i.isAngleInsideSector=l.isAngleInsideSector,i.isPtInsideSector=l.isPtInsideSector,i.pathArc=l.pathArc,i.pathSector=l.pathSector,i.pathAnnulus=l.pathAnnulus;var _=dE();i.isLeftAnchor=_.isLeftAnchor,i.isCenterAnchor=_.isCenterAnchor,i.isRightAnchor=_.isRightAnchor,i.isTopAnchor=_.isTopAnchor,i.isMiddleAnchor=_.isMiddleAnchor,i.isBottomAnchor=_.isBottomAnchor;var w=vE();i.segmentsIntersect=w.segmentsIntersect,i.segmentDistance=w.segmentDistance,i.getTextLocation=w.getTextLocation,i.clearLocationCache=w.clearLocationCache,i.getVisibleSegment=w.getVisibleSegment,i.findPointOnPath=w.findPointOnPath;var M=ho();i.extendFlat=M.extendFlat,i.extendDeep=M.extendDeep,i.extendDeepAll=M.extendDeepAll,i.extendDeepNoArrays=M.extendDeepNoArrays;var E=ua();i.log=E.log,i.warn=E.warn,i.error=E.error;var m=no();i.counterRegex=m.counter;var b=y_();i.throttle=b.throttle,i.throttleDone=b.done,i.clearThrottle=b.clear;var v=iy();i.getGraphDiv=v.getGraphDiv,i.isPlotDiv=v.isPlotDiv,i.removeElement=v.removeElement,i.addStyleRule=v.addStyleRule,i.addRelatedStyleRule=v.addRelatedStyleRule,i.deleteRelatedStyleRule=v.deleteRelatedStyleRule,i.setStyleOnHover=v.setStyleOnHover,i.getFullTransformMatrix=v.getFullTransformMatrix,i.getElementTransformMatrix=v.getElementTransformMatrix,i.getElementAndAncestors=v.getElementAndAncestors,i.equalDomRects=v.equalDomRects,i.clearResponsive=pE(),i.preserveDrawingBuffer=gE(),i.makeTraceGroups=yE(),i._=_E(),i.notifier=ta(),i.filterUnique=Bw(),i.filterVisible=xE(),i.pushUnique=ms(),i.increment=bE(),i.cleanNumber=wE(),i.ensureNumber=function(ae){return S(ae)?(ae=Number(ae),ae>t||ae=ae?!1:S(re)&&re>=0&&re%1===0},i.noop=jo(),i.identity=ay(),i.repeat=function(re,ae){for(var j=new Array(ae),ee=0;eej?Math.max(j,Math.min(ae,re)):Math.max(ae,Math.min(j,re))},i.bBoxIntersect=function(re,ae,j){return j=j||0,re.left<=ae.right+j&&ae.left<=re.right+j&&re.top<=ae.bottom+j&&ae.top<=re.bottom+j},i.simpleMap=function(re,ae,j,ee,ne){for(var ce=re.length,_e=new Array(ce),we=0;we=Math.pow(2,j)?ne>10?(i.warn("randstr failed uniqueness"),_e):re(ae,j,ee,(ne||0)+1):_e},i.OptionControl=function(re,ae){re||(re={}),ae||(ae="opt");var j={};return j.optionList=[],j._newoption=function(ee){ee[ae]=re,j[ee.name]=ee,j.optionList.push(ee)},j["_"+ae]=re,j},i.smooth=function(re,ae){if(ae=Math.round(ae)||0,ae<2)return re;var j=re.length,ee=2*j,ne=2*ae-1,ce=new Array(ne),_e=new Array(j),we,Oe,Ie,Xe;for(we=0;we=ee&&(Ie-=ee*Math.floor(Ie/ee)),Ie<0?Ie=-1-Ie:Ie>=j&&(Ie=ee-1-Ie),Xe+=re[Ie]*ce[Oe];_e[we]=Xe}return _e},i.syncOrAsync=function(re,ae,j){var ee,ne;function ce(){return i.syncOrAsync(re,ae,j)}for(;re.length;)if(ne=re.splice(0,1)[0],ee=ne(ae),ee&&ee.then)return ee.then(ce);return j&&j(ae)},i.stripTrailingSlash=function(re){return re.substr(-1)==="/"?re.substr(0,re.length-1):re},i.noneOrAll=function(re,ae,j){if(re){var ee=!1,ne=!0,ce,_e;for(ce=0;ce0?ne:0})},i.fillArray=function(re,ae,j,ee){if(ee=ee||i.identity,i.isArrayOrTypedArray(re))for(var ne=0;ne1?ne+_e[1]:"";if(ce&&(_e.length>1||we.length>4||j))for(;ee.test(we);)we=we.replace(ee,"$1"+ce+"$2");return we+Oe},i.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var B=/^\w*$/;i.templateString=function(re,ae){var j={};return re.replace(i.TEMPLATE_STRING_REGEX,function(ee,ne){var ce;return B.test(ne)?ce=ae[ne]:(j[ne]=j[ne]||i.nestedProperty(ae,ne).get,ce=j[ne](!0)),ce!==void 0?ce:""})};var I={max:10,count:0,name:"hovertemplate"};i.hovertemplateString=function(){return se.apply(I,arguments)};var N={max:10,count:0,name:"texttemplate"};i.texttemplateString=function(){return se.apply(N,arguments)};var U=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function W(re){var ae=re.match(U);return ae?{key:ae[1],op:ae[2],number:Number(ae[3])}:{key:re,op:null,number:null}}var Q={max:10,count:0,name:"texttemplate",parseMultDiv:!0};i.texttemplateStringForShapes=function(){return se.apply(Q,arguments)};var le=/^[:|\|]/;function se(re,ae,j){var ee=this,ne=arguments;return ae||(ae={}),re.replace(i.TEMPLATE_STRING_REGEX,function(ce,_e,we){var Oe=_e==="xother"||_e==="yother",Ie=_e==="_xother"||_e==="_yother",Xe=_e==="_xother_"||_e==="_yother_",tt=_e==="xother_"||_e==="yother_",rt=Oe||Ie||tt||Xe,Je=_e;(Ie||Xe)&&(Je=Je.substring(1)),(tt||Xe)&&(Je=Je.substring(0,Je.length-1));var ot=null,Me=null;if(ee.parseMultDiv){var pe=W(Je);Je=pe.key,ot=pe.op,Me=pe.number}var ue;if(rt){if(ue=ae[Je],ue===void 0)return""}else{var ze,Qe;for(Qe=3;Qe=fe&&_e<=G,Ie=we>=fe&&we<=G;if(Oe&&(ee=10*ee+_e-fe),Ie&&(ne=10*ne+we-fe),!Oe||!Ie){if(ee!==ne)return ee-ne;if(_e!==we)return _e-we}}return ne-ee};var J=2e9;i.seedPseudoRandom=function(){J=2e9},i.pseudoRandom=function(){var re=J;return J=(69069*J+1)%4294967296,Math.abs(J-re)<429496729?i.pseudoRandom():J/4294967296},i.fillText=function(re,ae,j){var ee=Array.isArray(j)?function(_e){j.push(_e)}:function(_e){j.text=_e},ne=i.extractOption(re,ae,"htx","hovertext");if(i.isValidTextValue(ne))return ee(ne);var ce=i.extractOption(re,ae,"tx","text");if(i.isValidTextValue(ce))return ee(ce)},i.isValidTextValue=function(re){return re||re===0},i.formatPercent=function(re,ae){ae=ae||0;for(var j=(Math.round(100*re*Math.pow(10,ae))*Math.pow(.1,ae)).toFixed(ae)+"%",ee=0;ee1&&(Ie=1):Ie=0,i.strTranslate(ne-Ie*(j+_e),ce-Ie*(ee+we))+i.strScale(Ie)+(Oe?"rotate("+Oe+(ae?"":" "+j+" "+ee)+")":"")},i.setTransormAndDisplay=function(re,ae){re.attr("transform",i.getTextTransform(ae)),re.style("display",ae.scale?null:"none")},i.ensureUniformFontSize=function(re,ae){var j=i.extendFlat({},ae);return j.size=Math.max(ae.size,re._fullLayout.uniformtext.minsize||0),j},i.join2=function(re,ae,j){var ee=re.length;return ee>1?re.slice(0,-1).join(ae)+j+re[ee-1]:re.join(ae)},i.bigFont=function(re){return Math.round(1.2*re)};var $=i.getFirefoxVersion(),X=$!==null&&$<86;i.getPositionFromD3Event=function(){return X?[g.event.layerX,g.event.layerY]:[g.event.offsetX,g.event.offsetY]}}}),TE=Le({"build/plotcss.js"(){"use strict";var Z=ni(),H={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(x in H)g=x.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),Z.addStyleRule(g,H[x]);var g,x}}),Ow=Le({"node_modules/is-browser/client.js"(Z,H){H.exports=!0}}),Nw=Le({"node_modules/has-hover/index.js"(Z,H){"use strict";var g=Ow(),x;typeof window.matchMedia=="function"?x=!window.matchMedia("(hover: none)").matches:x=g,H.exports=x}}),Om=Le({"node_modules/events/events.js"(Z,H){"use strict";var g=typeof Reflect=="object"?Reflect:null,x=g&&typeof g.apply=="function"?g.apply:function(E,m,b){return Function.prototype.apply.call(E,m,b)},A;g&&typeof g.ownKeys=="function"?A=g.ownKeys:Object.getOwnPropertySymbols?A=function(E){return Object.getOwnPropertyNames(E).concat(Object.getOwnPropertySymbols(E))}:A=function(E){return Object.getOwnPropertyNames(E)};function S(M){console&&console.warn&&console.warn(M)}var e=Number.isNaN||function(E){return E!==E};function t(){t.init.call(this)}H.exports=t,H.exports.once=l,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._eventsCount=0,t.prototype._maxListeners=void 0;var r=10;function o(M){if(typeof M!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof M)}Object.defineProperty(t,"defaultMaxListeners",{enumerable:!0,get:function(){return r},set:function(M){if(typeof M!="number"||M<0||e(M))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+M+".");r=M}}),t.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},t.prototype.setMaxListeners=function(E){if(typeof E!="number"||E<0||e(E))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+E+".");return this._maxListeners=E,this};function i(M){return M._maxListeners===void 0?t.defaultMaxListeners:M._maxListeners}t.prototype.getMaxListeners=function(){return i(this)},t.prototype.emit=function(E){for(var m=[],b=1;b0&&(y=m[0]),y instanceof Error)throw y;var f=new Error("Unhandled error."+(y?" ("+y.message+")":""));throw f.context=y,f}var P=u[E];if(P===void 0)return!1;if(typeof P=="function")x(P,this,m);else for(var L=P.length,z=p(P,L),b=0;b0&&y.length>v&&!y.warned){y.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+y.length+" "+String(E)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=M,f.type=E,f.count=y.length,S(f)}return M}t.prototype.addListener=function(E,m){return n(this,E,m,!1)},t.prototype.on=t.prototype.addListener,t.prototype.prependListener=function(E,m){return n(this,E,m,!0)};function a(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s(M,E,m){var b={fired:!1,wrapFn:void 0,target:M,type:E,listener:m},v=a.bind(b);return v.listener=m,b.wrapFn=v,v}t.prototype.once=function(E,m){return o(m),this.on(E,s(this,E,m)),this},t.prototype.prependOnceListener=function(E,m){return o(m),this.prependListener(E,s(this,E,m)),this},t.prototype.removeListener=function(E,m){var b,v,u,y,f;if(o(m),v=this._events,v===void 0)return this;if(b=v[E],b===void 0)return this;if(b===m||b.listener===m)--this._eventsCount===0?this._events=Object.create(null):(delete v[E],v.removeListener&&this.emit("removeListener",E,b.listener||m));else if(typeof b!="function"){for(u=-1,y=b.length-1;y>=0;y--)if(b[y]===m||b[y].listener===m){f=b[y].listener,u=y;break}if(u<0)return this;u===0?b.shift():d(b,u),b.length===1&&(v[E]=b[0]),v.removeListener!==void 0&&this.emit("removeListener",E,f||m)}return this},t.prototype.off=t.prototype.removeListener,t.prototype.removeAllListeners=function(E){var m,b,v;if(b=this._events,b===void 0)return this;if(b.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):b[E]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete b[E]),this;if(arguments.length===0){var u=Object.keys(b),y;for(v=0;v=0;v--)this.removeListener(E,m[v]);return this};function c(M,E,m){var b=M._events;if(b===void 0)return[];var v=b[E];return v===void 0?[]:typeof v=="function"?m?[v.listener||v]:[v]:m?T(v):p(v,v.length)}t.prototype.listeners=function(E){return c(this,E,!0)},t.prototype.rawListeners=function(E){return c(this,E,!1)},t.listenerCount=function(M,E){return typeof M.listenerCount=="function"?M.listenerCount(E):h.call(M,E)},t.prototype.listenerCount=h;function h(M){var E=this._events;if(E!==void 0){var m=E[M];if(typeof m=="function")return 1;if(m!==void 0)return m.length}return 0}t.prototype.eventNames=function(){return this._eventsCount>0?A(this._events):[]};function p(M,E){for(var m=new Array(E),b=0;bx.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)},S.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},S.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},S.undo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o=I.length)return!1;if(L.dimensions===2){if(F++,z.length===F)return L;var N=z[F];if(!w(N))return!1;L=I[B][N]}else L=I[B]}else L=I}}return L}function w(L){return L===Math.round(L)&&L>=0}function M(L){var z,F;z=H.modules[L]._module,F=z.basePlotModule;var O={};O.type=null;var B=o({},x),I=o({},z.attributes);Z.crawl(I,function(W,Q,le,se,fe){a(B,fe).set(void 0),W===void 0&&a(I,fe).set(void 0)}),o(O,B),H.traceIs(L,"noOpacity")&&delete O.opacity,H.traceIs(L,"showLegend")||(delete O.showlegend,delete O.legendgroup),H.traceIs(L,"noHover")&&(delete O.hoverinfo,delete O.hoverlabel),z.selectPoints||delete O.selectedpoints,o(O,I),F.attributes&&o(O,F.attributes),O.type=L;var N={meta:z.meta||{},categories:z.categories||{},animatable:!!z.animatable,type:L,attributes:b(O)};if(z.layoutAttributes){var U={};o(U,z.layoutAttributes),N.layoutAttributes=b(U)}return z.animatable||Z.crawl(N,function(W){Z.isValObject(W)&&"anim"in W&&delete W.anim}),N}function E(){var L={},z,F;o(L,A);for(z in H.subplotsRegistry)if(F=H.subplotsRegistry[z],!!F.layoutAttributes)if(Array.isArray(F.attr))for(var O=0;O=i&&(o._input||{})._templateitemname;a&&(n=i);var s=r+"["+n+"]",c;function h(){c={},a&&(c[s]={},c[s][x]=a)}h();function p(_,w){c[_]=w}function d(_,w){a?H.nestedProperty(c[s],_).set(w):c[s+"."+_]=w}function T(){var _=c;return h(),_}function l(_,w){_&&d(_,w);var M=T();for(var E in M)H.nestedProperty(t,E).set(M[E])}return{modifyBase:p,modifyItem:d,getUpdateObj:T,applyUpdate:l}}}}),ch=Le({"src/plots/cartesian/constants.js"(Z,H){"use strict";var g=no().counter;H.exports={idRegex:{x:g("x","( domain)?"),y:g("y","( domain)?")},attrRegex:g("[xy]axis"),xAxisMatch:g("xaxis"),yAxisMatch:g("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),Kc=Le({"src/plots/cartesian/axis_ids.js"(Z){"use strict";var H=so(),g=ch();Z.id2name=function(S){if(!(typeof S!="string"||!S.match(g.AX_ID_PATTERN))){var e=S.split(" ")[0].substr(1);return e==="1"&&(e=""),S.charAt(0)+"axis"+e}},Z.name2id=function(S){if(S.match(g.AX_NAME_PATTERN)){var e=S.substr(5);return e==="1"&&(e=""),S.charAt(0)+e}},Z.cleanId=function(S,e,t){var r=/( domain)$/.test(S);if(!(typeof S!="string"||!S.match(g.AX_ID_PATTERN))&&!(e&&S.charAt(0)!==e)&&!(r&&!t)){var o=S.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),S.charAt(0)+o+(r&&t?" domain":"")}},Z.list=function(A,S,e){var t=A._fullLayout;if(!t)return[];var r=Z.listIds(A,S),o=new Array(r.length),i;for(i=0;it?1:-1:+(A.substr(1)||1)-+(S.substr(1)||1)},Z.ref2id=function(A){return/^[xyz]/.test(A)?A.split(" ")[0]:!1};function x(A,S){if(S&&S.length){for(var e=0;e0?".":"")+a;g.isPlainObject(s)?t(s,o,c,n+1):o(c,a,s)}})}}}),Ku=Le({"src/plots/plots.js"(Z,H){"use strict";var g=Ji(),x=Ia().timeFormatLocale,A=To().formatLocale,S=zn(),e=Ao(),t=so(),r=Xg(),o=wl(),i=ni(),n=$a(),a=$n().BADNUM,s=Kc(),c=jp().clearOutline,h=__(),p=ny(),d=Uw(),T=Mh().getModuleCalcData,l=i.relinkPrivateKeys,_=i._,w=H.exports={};i.extendFlat(w,t),w.attributes=Sl(),w.attributes.type.values=w.allTypes,w.fontAttrs=bl(),w.layoutAttributes=Gg();var M=ME();w.executeAPICommand=M.executeAPICommand,w.computeAPICommandBindings=M.computeAPICommandBindings,w.manageCommandObserver=M.manageCommandObserver,w.hasSimpleAPICommandBindings=M.hasSimpleAPICommandBindings,w.redrawText=function(G){return G=i.getGraphDiv(G),new Promise(function(J){setTimeout(function(){G._fullLayout&&(t.getComponentMethod("annotations","draw")(G),t.getComponentMethod("legend","draw")(G),t.getComponentMethod("colorbar","draw")(G),J(w.previousPromises(G)))},300)})},w.resize=function(G){G=i.getGraphDiv(G);var J,$=new Promise(function(X,re){(!G||i.isHidden(G))&&re(new Error("Resize must be passed a displayed plot div element.")),G._redrawTimer&&clearTimeout(G._redrawTimer),G._resolveResize&&(J=G._resolveResize),G._resolveResize=X,G._redrawTimer=setTimeout(function(){if(!G.layout||G.layout.width&&G.layout.height||i.isHidden(G)){X(G);return}delete G.layout.width,delete G.layout.height;var ae=G.changed;G.autoplay=!0,t.call("relayout",G,{autosize:!0}).then(function(){G.changed=ae,G._resolveResize===X&&(delete G._resolveResize,X(G))})},100)});return J&&J($),$},w.previousPromises=function(G){if((G._promises||[]).length)return Promise.all(G._promises).then(function(){G._promises=[]})},w.addLinks=function(G){if(!(!G._context.showLink&&!G._context.showSources)){var J=G._fullLayout,$=i.ensureSingle(J._paper,"text","js-plot-link-container",function(ne){ne.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:n.defaultLine,"pointer-events":"all"}).each(function(){var ce=g.select(this);ce.append("tspan").classed("js-link-to-tool",!0),ce.append("tspan").classed("js-link-spacer",!0),ce.append("tspan").classed("js-sourcelinks",!0)})}),X=$.node(),re={y:J._paper.attr("height")-9};document.body.contains(X)&&X.getComputedTextLength()>=J.width-20?(re["text-anchor"]="start",re.x=5):(re["text-anchor"]="end",re.x=J._paper.attr("width")-7),$.attr(re);var ae=$.select(".js-link-to-tool"),j=$.select(".js-link-spacer"),ee=$.select(".js-sourcelinks");G._context.showSources&&G._context.showSources(G),G._context.showLink&&E(G,ae),j.text(ae.text()&&ee.text()?" - ":"")}};function E(G,J){J.text("");var $=J.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(G._context.linkText+" \xBB");if(G._context.sendData)$.on("click",function(){w.sendDataToCloud(G)});else{var X=window.location.pathname.split("/"),re=window.location.search;$.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+X[2].split(".")[0]+"/"+X[1]+re})}}w.sendDataToCloud=function(G){var J=(window.PLOTLYENV||{}).BASE_URL||G._context.plotlyServerURL;if(J){G.emit("plotly_beforeexport");var $=g.select(G).append("div").attr("id","hiddenform").style("display","none"),X=$.append("form").attr({action:J+"/external",method:"post",target:"_blank"}),re=X.append("input").attr({type:"text",name:"data"});return re.node().value=w.graphJson(G,!1,"keepdata"),X.node().submit(),$.remove(),G.emit("plotly_afterexport"),!1}};var m=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],b=["year","month","dayMonth","dayMonthYear"];w.supplyDefaults=function(G,J){var $=J&&J.skipUpdateCalc,X=G._fullLayout||{};if(X._skipDefaults){delete X._skipDefaults;return}var re=G._fullLayout={},ae=G.layout||{},j=G._fullData||[],ee=G._fullData=[],ne=G.data||[],ce=G.calcdata||[],_e=G._context||{},we;G._transitionData||w.createTransitionData(G),re._dfltTitle={plot:_(G,"Click to enter Plot title"),subtitle:_(G,"Click to enter Plot subtitle"),x:_(G,"Click to enter X axis title"),y:_(G,"Click to enter Y axis title"),colorbar:_(G,"Click to enter Colorscale title"),annotation:_(G,"new text")},re._traceWord=_(G,"trace");var Oe=y(G,m);if(re._mapboxAccessToken=_e.mapboxAccessToken,X._initialAutoSizeIsDone){var Ie=X.width,Xe=X.height;w.supplyLayoutGlobalDefaults(ae,re,Oe),ae.width||(re.width=Ie),ae.height||(re.height=Xe),w.sanitizeMargins(re)}else{w.supplyLayoutGlobalDefaults(ae,re,Oe);var tt=!ae.width||!ae.height,rt=re.autosize,Je=_e.autosizable,ot=tt&&(rt||Je);ot?w.plotAutoSize(G,ae,re):tt&&w.sanitizeMargins(re),!rt&&tt&&(ae.width=re.width,ae.height=re.height)}re._d3locale=f(Oe,re.separators),re._extraFormat=y(G,b),re._initialAutoSizeIsDone=!0,re._dataLength=ne.length,re._modules=[],re._visibleModules=[],re._basePlotModules=[];var Me=re._subplots=u(),pe=re._splomAxes={x:{},y:{}},ue=re._splomSubplots={};re._splomGridDflt={},re._scatterStackOpts={},re._firstScatter={},re._alignmentOpts={},re._colorAxes={},re._requestRangeslider={},re._traceUids=v(j,ne),w.supplyDataDefaults(ne,ee,ae,re);var ze=Object.keys(pe.x),Qe=Object.keys(pe.y);if(ze.length>1&&Qe.length>1){for(t.getComponentMethod("grid","sizeDefaults")(ae,re),we=0;we15&&Qe.length>15&&re.shapes.length===0&&re.images.length===0,w.linkSubplots(ee,re,j,X),w.cleanPlot(ee,re,j,X);var Bt=!!(X._has&&X._has("cartesian")),jt=!!(re._has&&re._has("cartesian")),cr=Bt,nr=jt;cr&&!nr?X._bgLayer.remove():nr&&!cr&&(re._shouldCreateBgLayer=!0),X._zoomlayer&&!G._dragging&&c({_fullLayout:X}),P(ee,re),l(re,X),t.getComponentMethod("colorscale","crossTraceDefaults")(ee,re),re._preGUI||(re._preGUI={}),re._tracePreGUI||(re._tracePreGUI={});var Lr=re._tracePreGUI,mr={},xr;for(xr in Lr)mr[xr]="old";for(we=0;we0){var _e=1-2*ae;j=Math.round(_e*j),ee=Math.round(_e*ee)}}var we=w.layoutAttributes.width.min,Oe=w.layoutAttributes.height.min;j1,Xe=!$.height&&Math.abs(X.height-ee)>1;(Xe||Ie)&&(Ie&&(X.width=j),Xe&&(X.height=ee)),J._initialAutoSize||(J._initialAutoSize={width:j,height:ee}),w.sanitizeMargins(X)},w.supplyLayoutModuleDefaults=function(G,J,$,X){var re=t.componentsRegistry,ae=J._basePlotModules,j,ee,ne,ce=t.subplotsRegistry.cartesian;for(j in re)ne=re[j],ne.includeBasePlot&&ne.includeBasePlot(G,J);ae.length||ae.push(ce),J._has("cartesian")&&(t.getComponentMethod("grid","contentDefaults")(G,J),ce.finalizeSubplots(G,J));for(var _e in J._subplots)J._subplots[_e].sort(i.subplotSort);for(ee=0;ee1&&($.l/=rt,$.r/=rt)}if(Oe){var Je=($.t+$.b)/Oe;Je>1&&($.t/=Je,$.b/=Je)}var ot=$.xl!==void 0?$.xl:$.x,Me=$.xr!==void 0?$.xr:$.x,pe=$.yt!==void 0?$.yt:$.y,ue=$.yb!==void 0?$.yb:$.y;Ie[J]={l:{val:ot,size:$.l+tt},r:{val:Me,size:$.r+tt},b:{val:ue,size:$.b+tt},t:{val:pe,size:$.t+tt}},Xe[J]=1}if(!X._replotting)return w.doAutoMargin(G)}};function I(G){if("_redrawFromAutoMarginCount"in G._fullLayout)return!1;var J=s.list(G,"",!0);for(var $ in J)if(J[$].autoshift||J[$].shift)return!0;return!1}w.doAutoMargin=function(G){var J=G._fullLayout,$=J.width,X=J.height;J._size||(J._size={}),F(J);var re=J._size,ae=J.margin,j={t:0,b:0,l:0,r:0},ee=i.extendFlat({},re),ne=ae.l,ce=ae.r,_e=ae.t,we=ae.b,Oe=J._pushmargin,Ie=J._pushmarginIds,Xe=J.minreducedwidth,tt=J.minreducedheight;if(ae.autoexpand!==!1){for(var rt in Oe)Ie[rt]||delete Oe[rt];var Je=G._fullLayout._reservedMargin;for(var ot in Je)for(var Me in Je[ot]){var pe=Je[ot][Me];j[Me]=Math.max(j[Me],pe)}Oe.base={l:{val:0,size:ne},r:{val:1,size:ce},t:{val:1,size:_e},b:{val:0,size:we}};for(var ue in j){var ze=0;for(var Qe in Oe)Qe!=="base"&&S(Oe[Qe][ue].size)&&(ze=Oe[Qe][ue].size>ze?Oe[Qe][ue].size:ze);var it=Math.max(0,ae[ue]-ze);j[ue]=Math.max(0,j[ue]-it)}for(var $e in Oe){var kt=Oe[$e].l||{},Mt=Oe[$e].b||{},Bt=kt.val,jt=kt.size,cr=Mt.val,nr=Mt.size,Lr=$-j.r-j.l,mr=X-j.t-j.b;for(var xr in Oe){if(S(jt)&&Oe[xr].r){var mt=Oe[xr].r.val,Fe=Oe[xr].r.size;if(mt>Bt){var Ze=(jt*mt+(Fe-Lr)*Bt)/(mt-Bt),Ne=(Fe*(1-Bt)+(jt-Lr)*(1-mt))/(mt-Bt);Ze+Ne>ne+ce&&(ne=Ze,ce=Ne)}}if(S(nr)&&Oe[xr].t){var Se=Oe[xr].t.val,Ve=Oe[xr].t.size;if(Se>cr){var Ee=(nr*Se+(Ve-mr)*cr)/(Se-cr),be=(Ve*(1-cr)+(nr-mr)*(1-Se))/(Se-cr);Ee+be>we+_e&&(we=Ee,_e=be)}}}}}var Ce=i.constrain($-ae.l-ae.r,O,Xe),et=i.constrain(X-ae.t-ae.b,B,tt),ht=Math.max(0,$-Ce),yt=Math.max(0,X-et);if(ht){var Pt=(ne+ce)/ht;Pt>1&&(ne/=Pt,ce/=Pt)}if(yt){var Ot=(we+_e)/yt;Ot>1&&(we/=Ot,_e/=Ot)}if(re.l=Math.round(ne)+j.l,re.r=Math.round(ce)+j.r,re.t=Math.round(_e)+j.t,re.b=Math.round(we)+j.b,re.p=Math.round(ae.pad),re.w=Math.round($)-re.l-re.r,re.h=Math.round(X)-re.t-re.b,!J._replotting&&(w.didMarginChange(ee,re)||I(G))){"_redrawFromAutoMarginCount"in J?J._redrawFromAutoMarginCount++:J._redrawFromAutoMarginCount=1;var Wt=3*(1+Object.keys(Ie).length);if(J._redrawFromAutoMarginCount1)return!0}return!1},w.graphJson=function(G,J,$,X,re,ae){(re&&J&&!G._fullData||re&&!J&&!G._fullLayout)&&w.supplyDefaults(G);var j=re?G._fullData:G.data,ee=re?G._fullLayout:G.layout,ne=(G._transitionData||{})._frames;function ce(Oe,Ie){if(typeof Oe=="function")return Ie?"_function_":null;if(i.isPlainObject(Oe)){var Xe={},tt;return Object.keys(Oe).sort().forEach(function(Me){if(["_","["].indexOf(Me.charAt(0))===-1){if(typeof Oe[Me]=="function"){Ie&&(Xe[Me]="_function");return}if($==="keepdata"){if(Me.substr(Me.length-3)==="src")return}else if($==="keepstream"){if(tt=Oe[Me+"src"],typeof tt=="string"&&tt.indexOf(":")>0&&!i.isPlainObject(Oe.stream))return}else if($!=="keepall"&&(tt=Oe[Me+"src"],typeof tt=="string"&&tt.indexOf(":")>0))return;Xe[Me]=ce(Oe[Me],Ie)}}),Xe}var rt=Array.isArray(Oe),Je=i.isTypedArray(Oe);if((rt||Je)&&Oe.dtype&&Oe.shape){var ot=Oe.bdata;return ce({dtype:Oe.dtype,shape:Oe.shape,bdata:i.isArrayBuffer(ot)?e.encode(ot):ot},Ie)}return rt?Oe.map(function(Me){return ce(Me,Ie)}):Je?i.simpleMap(Oe,i.identity):i.isJSDate(Oe)?i.ms2DateTimeLocal(+Oe):Oe}var _e={data:(j||[]).map(function(Oe){var Ie=ce(Oe);return J&&delete Ie.fit,Ie})};if(!J&&(_e.layout=ce(ee),re)){var we=ee._size;_e.layout.computed={margin:{b:we.b,l:we.l,r:we.r,t:we.t}}}return ne&&(_e.frames=ce(ne)),ae&&(_e.config=ce(G._context,!0)),X==="object"?_e:JSON.stringify(_e)},w.modifyFrames=function(G,J){var $,X,re,ae=G._transitionData._frames,j=G._transitionData._frameHash;for($=0;$0&&(G._transitioningWithDuration=!0),G._transitionData._interruptCallbacks.push(function(){X=!0}),$.redraw&&G._transitionData._interruptCallbacks.push(function(){return t.call("redraw",G)}),G._transitionData._interruptCallbacks.push(function(){G.emit("plotly_transitioninterrupted",[])});var Oe=0,Ie=0;function Xe(){return Oe++,function(){Ie++,!X&&Ie===Oe&&ee(we)}}$.runFn(Xe),setTimeout(Xe())})}function ee(we){if(G._transitionData)return ae(G._transitionData._interruptCallbacks),Promise.resolve().then(function(){if($.redraw)return t.call("redraw",G)}).then(function(){G._transitioning=!1,G._transitioningWithDuration=!1,G.emit("plotly_transitioned",[])}).then(we)}function ne(){if(G._transitionData)return G._transitioning=!1,re(G._transitionData._interruptCallbacks)}var ce=[w.previousPromises,ne,$.prepareFn,w.rehover,w.reselect,j],_e=i.syncOrAsync(ce,G);return(!_e||!_e.then)&&(_e=Promise.resolve()),_e.then(function(){return G})}w.doCalcdata=function(G,J){var $=s.list(G),X=G._fullData,re=G._fullLayout,ae,j,ee,ne,ce=new Array(X.length),_e=(G.calcdata||[]).slice();for(G.calcdata=ce,re._numBoxes=0,re._numViolins=0,re._violinScaleGroupStats={},G._hmpixcount=0,G._hmlumcount=0,re._piecolormap={},re._sunburstcolormap={},re._treemapcolormap={},re._iciclecolormap={},re._funnelareacolormap={},ee=0;ee=0;ne--)if(ue[ne].enabled){ae._indexToPoints=ue[ne]._indexToPoints;break}j&&j.calc&&(pe=j.calc(G,ae))}(!Array.isArray(pe)||!pe[0])&&(pe=[{x:a,y:a}]),pe[0].t||(pe[0].t={}),pe[0].trace=ae,ce[ot]=pe}}for(se($,X,re),ee=0;eeee||Ie>ne)&&(ae.style("overflow","hidden"),we=ae.node().getBoundingClientRect(),Oe=we.width,Ie=we.height);var Xe=+B.attr("x"),tt=+B.attr("y"),rt=G||B.node().getBoundingClientRect().height,Je=-rt/4;if(le[0]==="y")j.attr({transform:"rotate("+[-90,Xe,tt]+")"+x(-Oe/2,Je-Ie/2)});else if(le[0]==="l")tt=Je-Ie/2;else if(le[0]==="a"&&le.indexOf("atitle")!==0)Xe=0,tt=Je;else{var ot=B.attr("text-anchor");Xe=Xe-Oe*(ot==="middle"?.5:ot==="end"?1:0),tt=tt+Je-Ie/2}ae.attr({x:Xe,y:tt}),N&&N.call(B,j),fe(j)})})):se(),B};var t=/(<|<|<)/g,r=/(>|>|>)/g;function o(B){return B.replace(t,"\\lt ").replace(r,"\\gt ")}var i=[["$","$"],["\\(","\\)"]];function n(B,I,N){var U=parseInt((MathJax.version||"").split(".")[0]);if(U!==2&&U!==3){g.warn("No MathJax version:",MathJax.version);return}var W,Q,le,se,fe=function(){return Q=g.extendDeepAll({},MathJax.Hub.config),le=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:i},displayAlign:"left"})},G=function(){Q=g.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=i},J=function(){if(W=MathJax.Hub.config.menuSettings.renderer,W!=="SVG")return MathJax.Hub.setRenderer("SVG")},$=function(){W=MathJax.config.startup.output,W!=="svg"&&(MathJax.config.startup.output="svg")},X=function(){var ce="math-output-"+g.randstr({},64);se=H.select("body").append("div").attr({id:ce}).style({visibility:"hidden",position:"absolute","font-size":I.fontSize+"px"}).text(o(B));var _e=se.node();return U===2?MathJax.Hub.Typeset(_e):MathJax.typeset([_e])},re=function(){var ce=se.select(U===2?".MathJax_SVG":".MathJax"),_e=!ce.empty()&&se.select("svg").node();if(!_e)g.log("There was an error in the tex syntax.",B),N();else{var we=_e.getBoundingClientRect(),Oe;U===2?Oe=H.select("body").select("#MathJax_SVG_glyphs"):Oe=ce.select("defs"),N(ce,Oe,we)}se.remove()},ae=function(){if(W!=="SVG")return MathJax.Hub.setRenderer(W)},j=function(){W!=="svg"&&(MathJax.config.startup.output=W)},ee=function(){return le!==void 0&&(MathJax.Hub.processSectionDelay=le),MathJax.Hub.Config(Q)},ne=function(){MathJax.config=Q};U===2?MathJax.Hub.Queue(fe,J,X,re,ae,ee):U===3&&(G(),$(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){X(),re(),j(),ne()}))}var a={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},s={sub:"0.3em",sup:"-0.6em"},c={sub:"-0.21em",sup:"0.42em"},h="\u200B",p=["http:","https:","mailto:","",void 0,":"],d=Z.NEWLINES=/(\r\n?|\n)/g,T=/(<[^<>]*>)/,l=/<(\/?)([^ >]*)(\s+(.*))?>/i,_=//i;Z.BR_TAG_ALL=//gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,M=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,E=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,m=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function b(B,I){if(!B)return null;var N=B.match(I),U=N&&(N[3]||N[4]);return U&&f(U)}var v=/(^|;)\s*color:/;Z.plainText=function(B,I){I=I||{};for(var N=I.len!==void 0&&I.len!==-1?I.len:1/0,U=I.allowedTags!==void 0?I.allowedTags:["br"],W="...",Q=W.length,le=B.split(T),se=[],fe="",G=0,J=0;JQ?se.push($.substr(0,j-Q)+W):se.push($.substr(0,j));break}fe=""}}return se.join("")};var u={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},y=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function f(B){return B.replace(y,function(I,N){var U;return N.charAt(0)==="#"?U=P(N.charAt(1)==="x"?parseInt(N.substr(2),16):parseInt(N.substr(1),10)):U=u[N],U||I})}Z.convertEntities=f;function P(B){if(!(B>1114111)){var I=String.fromCodePoint;if(I)return I(B);var N=String.fromCharCode;return B<=65535?N(B):N((B>>10)+55232,B%1024+56320)}}function L(B,I){I=I.replace(d," ");var N=!1,U=[],W,Q=-1;function le(){Q++;var Ie=document.createElementNS(A.svg,"tspan");H.select(Ie).attr({class:"line",dy:Q*S+"em"}),B.appendChild(Ie),W=Ie;var Xe=U;if(U=[{node:Ie}],Xe.length>1)for(var tt=1;tt.",I);return}var Xe=U.pop();Ie!==Xe.type&&g.log("Start tag <"+Xe.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",I),W=U[U.length-1].node}var J=_.test(I);J?le():(W=B,U=[{node:B}]);for(var $=I.split(T),X=0;X<$.length;X++){var re=$[X],ae=re.match(l),j=ae&&ae[2].toLowerCase(),ee=a[j];if(j==="br")le();else if(ee===void 0)fe(W,f(re));else if(ae[1])G(j);else{var ne=ae[4],ce={type:j},_e=b(ne,w);if(_e?(_e=_e.replace(v,"$1 fill:"),ee&&(_e+=";"+ee)):ee&&(_e=ee),_e&&(ce.style=_e),j==="a"){N=!0;var we=b(ne,M);if(we){var Oe=z(we);Oe&&(ce.href=Oe,ce.target=b(ne,E)||"_blank",ce.popup=b(ne,m))}}se(ce)}}return N}function z(B){var I=encodeURI(decodeURI(B)),N=document.createElement("a"),U=document.createElement("a");N.href=B,U.href=I;var W=N.protocol,Q=U.protocol;return p.indexOf(W)!==-1&&p.indexOf(Q)!==-1?I:""}Z.sanitizeHTML=function(I){I=I.replace(d," ");for(var N=document.createElement("p"),U=N,W=[],Q=I.split(T),le=0;le=0;_--,w++){var M=d[_];l[w]=[1-M[0],M[1]]}return l}function c(d,T){T=T||{};for(var l=d.domain,_=d.range,w=_.length,M=new Array(w),E=0;Ed-h?h=d-(p-d):p-d=0?_=o.colorscale.sequential:_=o.colorscale.sequentialminus,s._sync("colorscale",_)}}}}),Cu=Le({"src/components/colorscale/index.js"(Z,H){"use strict";var g=lp(),x=ud();H.exports={moduleType:"component",name:"colorscale",attributes:uu(),layoutAttributes:jw(),supplyLayoutDefaults:SE(),handleDefaults:th(),crossTraceDefaults:EE(),calc:cd(),scales:g.scales,defaultScale:g.defaultScale,getScale:g.get,isValidScale:g.isValid,hasColorscale:x.hasColorscale,extractOpts:x.extractOpts,extractScale:x.extractScale,flipScale:x.flipScale,makeColorScaleFunc:x.makeColorScaleFunc,makeColorScaleFuncFromTrace:x.makeColorScaleFuncFromTrace}}}),gu=Le({"src/traces/scatter/subtypes.js"(Z,H){"use strict";var g=ni(),x=cl().isTypedArraySpec;H.exports={hasLines:function(A){return A.visible&&A.mode&&A.mode.indexOf("lines")!==-1},hasMarkers:function(A){return A.visible&&(A.mode&&A.mode.indexOf("markers")!==-1||A.type==="splom")},hasText:function(A){return A.visible&&A.mode&&A.mode.indexOf("text")!==-1},isBubble:function(A){var S=A.marker;return g.isPlainObject(S)&&(g.isArrayOrTypedArray(S.size)||x(S.size))}}}}),Yg=Le({"src/traces/scatter/make_bubble_size_func.js"(Z,H){"use strict";var g=zn();H.exports=function(A,S){S||(S=2);var e=A.marker,t=e.sizeref||1,r=e.sizemin||0,o=e.sizemode==="area"?function(i){return Math.sqrt(i/t)}:function(i){return i/t};return function(i){var n=o(i/S);return g(n)&&n>0?Math.max(n,r):0}}}}),Td=Le({"src/components/fx/helpers.js"(Z){"use strict";var H=ni();Z.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},Z.isTraceInSubplots=function(t,r){if(t.type==="splom"){for(var o=t.xaxes||[],i=t.yaxes||[],n=0;n=0&&o.index2&&(r.push([i].concat(n.splice(0,2))),a="l",i=i=="m"?"l":"L");;){if(n.length==g[a])return n.unshift(i),r.push(n);if(n.length0&&(pe=100,Me=Me.replace("-open","")),Me.indexOf("-dot")>0&&(pe+=200,Me=Me.replace("-dot","")),Me=l.symbolNames.indexOf(Me),Me>=0&&(Me+=pe)}return Me%100>=v||Me>=400?0:Math.floor(Math.max(Me,0))};function y(Me,pe,ue,ze){var Qe=Me%100;return l.symbolFuncs[Qe](pe,ue,ze)+(Me>=200?u:"")}var f=A("~f"),P={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};l.gradient=function(Me,pe,ue,ze,Qe,it){var $e=P[ze];return L(Me,pe,ue,$e.type,Qe,it,$e.start,$e.stop,!1,$e.reversed)};function L(Me,pe,ue,ze,Qe,it,$e,kt,Mt,Bt){var jt=Qe.length,cr;ze==="linear"?cr={node:"linearGradient",attrs:{x1:$e.x,y1:$e.y,x2:kt.x,y2:kt.y,gradientUnits:Mt?"userSpaceOnUse":"objectBoundingBox"},reversed:Bt}:ze==="radial"&&(cr={node:"radialGradient",reversed:Bt});for(var nr=new Array(jt),Lr=0;Lr=0&&Me.i===void 0&&(Me.i=it.i),pe.style("opacity",ze.selectedOpacityFn?ze.selectedOpacityFn(Me):Me.mo===void 0?$e.opacity:Me.mo),ze.ms2mrc){var Mt;Me.ms==="various"||$e.size==="various"?Mt=3:Mt=ze.ms2mrc(Me.ms),Me.mrc=Mt,ze.selectedSizeFn&&(Mt=Me.mrc=ze.selectedSizeFn(Me));var Bt=l.symbolNumber(Me.mx||$e.symbol)||0;Me.om=Bt%200>=100;var jt=ot(Me,ue),cr=ee(Me,ue);pe.attr("d",y(Bt,Mt,jt,cr))}var nr=!1,Lr,mr,xr;if(Me.so)xr=kt.outlierwidth,mr=kt.outliercolor,Lr=$e.outliercolor;else{var mt=(kt||{}).width;xr=(Me.mlw+1||mt+1||(Me.trace?(Me.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in Me?mr=Me.mlcc=ze.lineScale(Me.mlc):x.isArrayOrTypedArray(kt.color)?mr=r.defaultLine:mr=kt.color,x.isArrayOrTypedArray($e.color)&&(Lr=r.defaultLine,nr=!0),"mc"in Me?Lr=Me.mcc=ze.markerScale(Me.mc):Lr=$e.color||$e.colors||"rgba(0,0,0,0)",ze.selectedColorFn&&(Lr=ze.selectedColorFn(Me))}if(Me.om)pe.call(r.stroke,Lr).style({"stroke-width":(xr||1)+"px",fill:"none"});else{pe.style("stroke-width",(Me.isBlank?0:xr)+"px");var Fe=$e.gradient,Ze=Me.mgt;Ze?nr=!0:Ze=Fe&&Fe.type,x.isArrayOrTypedArray(Ze)&&(Ze=Ze[0],P[Ze]||(Ze=0));var Ne=$e.pattern,Se=Ne&&l.getPatternAttr(Ne.shape,Me.i,"");if(Ze&&Ze!=="none"){var Ve=Me.mgc;Ve?nr=!0:Ve=Fe.color;var Ee=ue.uid;nr&&(Ee+="-"+Me.i),l.gradient(pe,Qe,Ee,Ze,[[0,Ve],[1,Lr]],"fill")}else if(Se){var be=!1,Ce=Ne.fgcolor;!Ce&&it&&it.color&&(Ce=it.color,be=!0);var et=l.getPatternAttr(Ce,Me.i,it&&it.color||null),ht=l.getPatternAttr(Ne.bgcolor,Me.i,null),yt=Ne.fgopacity,Pt=l.getPatternAttr(Ne.size,Me.i,8),Ot=l.getPatternAttr(Ne.solidity,Me.i,.3);be=be||Me.mcc||x.isArrayOrTypedArray(Ne.shape)||x.isArrayOrTypedArray(Ne.bgcolor)||x.isArrayOrTypedArray(Ne.fgcolor)||x.isArrayOrTypedArray(Ne.size)||x.isArrayOrTypedArray(Ne.solidity);var Wt=ue.uid;be&&(Wt+="-"+Me.i),l.pattern(pe,"point",Qe,Wt,Se,Pt,Ot,Me.mcc,Ne.fillmode,ht,et,yt)}else x.isArrayOrTypedArray(Lr)?r.fill(pe,Lr[Me.i]):r.fill(pe,Lr);xr&&r.stroke(pe,mr)}},l.makePointStyleFns=function(Me){var pe={},ue=Me.marker;return pe.markerScale=l.tryColorscale(ue,""),pe.lineScale=l.tryColorscale(ue,"line"),t.traceIs(Me,"symbols")&&(pe.ms2mrc=p.isBubble(Me)?d(Me):function(){return(ue.size||6)/2}),Me.selectedpoints&&x.extendFlat(pe,l.makeSelectedPointStyleFns(Me)),pe},l.makeSelectedPointStyleFns=function(Me){var pe={},ue=Me.selected||{},ze=Me.unselected||{},Qe=Me.marker||{},it=ue.marker||{},$e=ze.marker||{},kt=Qe.opacity,Mt=it.opacity,Bt=$e.opacity,jt=Mt!==void 0,cr=Bt!==void 0;(x.isArrayOrTypedArray(kt)||jt||cr)&&(pe.selectedOpacityFn=function(Se){var Ve=Se.mo===void 0?Qe.opacity:Se.mo;return Se.selected?jt?Mt:Ve:cr?Bt:h*Ve});var nr=Qe.color,Lr=it.color,mr=$e.color;(Lr||mr)&&(pe.selectedColorFn=function(Se){var Ve=Se.mcc||nr;return Se.selected?Lr||Ve:mr||Ve});var xr=Qe.size,mt=it.size,Fe=$e.size,Ze=mt!==void 0,Ne=Fe!==void 0;return t.traceIs(Me,"symbols")&&(Ze||Ne)&&(pe.selectedSizeFn=function(Se){var Ve=Se.mrc||xr/2;return Se.selected?Ze?mt/2:Ve:Ne?Fe/2:Ve}),pe},l.makeSelectedTextStyleFns=function(Me){var pe={},ue=Me.selected||{},ze=Me.unselected||{},Qe=Me.textfont||{},it=ue.textfont||{},$e=ze.textfont||{},kt=Qe.color,Mt=it.color,Bt=$e.color;return pe.selectedTextColorFn=function(jt){var cr=jt.tc||kt;return jt.selected?Mt||cr:Bt||(Mt?cr:r.addOpacity(cr,h))},pe},l.selectedPointStyle=function(Me,pe){if(!(!Me.size()||!pe.selectedpoints)){var ue=l.makeSelectedPointStyleFns(pe),ze=pe.marker||{},Qe=[];ue.selectedOpacityFn&&Qe.push(function(it,$e){it.style("opacity",ue.selectedOpacityFn($e))}),ue.selectedColorFn&&Qe.push(function(it,$e){r.fill(it,ue.selectedColorFn($e))}),ue.selectedSizeFn&&Qe.push(function(it,$e){var kt=$e.mx||ze.symbol||0,Mt=ue.selectedSizeFn($e);it.attr("d",y(l.symbolNumber(kt),Mt,ot($e,pe),ee($e,pe))),$e.mrc2=Mt}),Qe.length&&Me.each(function(it){for(var $e=g.select(this),kt=0;kt0?ue:0}l.textPointStyle=function(Me,pe,ue){if(Me.size()){var ze;if(pe.selectedpoints){var Qe=l.makeSelectedTextStyleFns(pe);ze=Qe.selectedTextColorFn}var it=pe.texttemplate,$e=ue._fullLayout;Me.each(function(kt){var Mt=g.select(this),Bt=it?x.extractOption(kt,pe,"txt","texttemplate"):x.extractOption(kt,pe,"tx","text");if(!Bt&&Bt!==0){Mt.remove();return}if(it){var jt=pe._module.formatLabels,cr=jt?jt(kt,pe,$e):{},nr={};T(nr,pe,kt.i);var Lr=pe._meta||{};Bt=x.texttemplateString(Bt,cr,$e._d3locale,nr,kt,Lr)}var mr=kt.tp||pe.textposition,xr=O(kt,pe),mt=ze?ze(kt):kt.tc||pe.textfont.color;Mt.call(l.font,{family:kt.tf||pe.textfont.family,weight:kt.tw||pe.textfont.weight,style:kt.ty||pe.textfont.style,variant:kt.tv||pe.textfont.variant,textcase:kt.tC||pe.textfont.textcase,lineposition:kt.tE||pe.textfont.lineposition,shadow:kt.tS||pe.textfont.shadow,size:xr,color:mt}).text(Bt).call(n.convertToTspans,ue).call(F,mr,xr,kt.mrc)})}},l.selectedTextStyle=function(Me,pe){if(!(!Me.size()||!pe.selectedpoints)){var ue=l.makeSelectedTextStyleFns(pe);Me.each(function(ze){var Qe=g.select(this),it=ue.selectedTextColorFn(ze),$e=ze.tp||pe.textposition,kt=O(ze,pe);r.fill(Qe,it);var Mt=t.traceIs(pe,"bar-like");F(Qe,$e,kt,ze.mrc2||ze.mrc,Mt)})}};var B=.5;l.smoothopen=function(Me,pe){if(Me.length<3)return"M"+Me.join("L");var ue="M"+Me[0],ze=[],Qe;for(Qe=1;Qe=Mt||Se>=jt&&Se<=Mt)&&(Ve<=cr&&Ve>=Bt||Ve>=cr&&Ve<=Bt)&&(Me=[Se,Ve])}return Me}l.applyBackoff=G,l.makeTester=function(){var Me=x.ensureSingleById(g.select("body"),"svg","js-plotly-tester",function(ue){ue.attr(a.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),pe=x.ensureSingle(Me,"path","js-reference-point",function(ue){ue.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});l.tester=Me,l.testref=pe},l.savedBBoxes={};var J=0,$=1e4;l.bBox=function(Me,pe,ue){ue||(ue=X(Me));var ze;if(ue){if(ze=l.savedBBoxes[ue],ze)return x.extendFlat({},ze)}else if(Me.childNodes.length===1){var Qe=Me.childNodes[0];if(ue=X(Qe),ue){var it=+Qe.getAttribute("x")||0,$e=+Qe.getAttribute("y")||0,kt=Qe.getAttribute("transform");if(!kt){var Mt=l.bBox(Qe,!1,ue);return it&&(Mt.left+=it,Mt.right+=it),$e&&(Mt.top+=$e,Mt.bottom+=$e),Mt}if(ue+="~"+it+"~"+$e+"~"+kt,ze=l.savedBBoxes[ue],ze)return x.extendFlat({},ze)}}var Bt,jt;pe?Bt=Me:(jt=l.tester.node(),Bt=Me.cloneNode(!0),jt.appendChild(Bt)),g.select(Bt).attr("transform",null).call(n.positionText,0,0);var cr=Bt.getBoundingClientRect(),nr=l.testref.node().getBoundingClientRect();pe||jt.removeChild(Bt);var Lr={height:cr.height,width:cr.width,left:cr.left-nr.left,top:cr.top-nr.top,right:cr.right-nr.left,bottom:cr.bottom-nr.top};return J>=$&&(l.savedBBoxes={},J=0),ue&&(l.savedBBoxes[ue]=Lr),J++,x.extendFlat({},Lr)};function X(Me){var pe=Me.getAttribute("data-unformatted");if(pe!==null)return pe+Me.getAttribute("data-math")+Me.getAttribute("text-anchor")+Me.getAttribute("style")}l.setClipUrl=function(Me,pe,ue){Me.attr("clip-path",re(pe,ue))};function re(Me,pe){if(!Me)return null;var ue=pe._context,ze=ue._exportedPlot?"":ue._baseUrl||"";return ze?"url('"+ze+"#"+Me+"')":"url(#"+Me+")"}l.getTranslate=function(Me){var pe=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,ue=Me.attr?"attr":"getAttribute",ze=Me[ue]("transform")||"",Qe=ze.replace(pe,function(it,$e,kt){return[$e,kt].join(" ")}).split(" ");return{x:+Qe[0]||0,y:+Qe[1]||0}},l.setTranslate=function(Me,pe,ue){var ze=/(\btranslate\(.*?\);?)/,Qe=Me.attr?"attr":"getAttribute",it=Me.attr?"attr":"setAttribute",$e=Me[Qe]("transform")||"";return pe=pe||0,ue=ue||0,$e=$e.replace(ze,"").trim(),$e+=i(pe,ue),$e=$e.trim(),Me[it]("transform",$e),$e},l.getScale=function(Me){var pe=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,ue=Me.attr?"attr":"getAttribute",ze=Me[ue]("transform")||"",Qe=ze.replace(pe,function(it,$e,kt){return[$e,kt].join(" ")}).split(" ");return{x:+Qe[0]||1,y:+Qe[1]||1}},l.setScale=function(Me,pe,ue){var ze=/(\bscale\(.*?\);?)/,Qe=Me.attr?"attr":"getAttribute",it=Me.attr?"attr":"setAttribute",$e=Me[Qe]("transform")||"";return pe=pe||1,ue=ue||1,$e=$e.replace(ze,"").trim(),$e+="scale("+pe+","+ue+")",$e=$e.trim(),Me[it]("transform",$e),$e};var ae=/\s*sc.*/;l.setPointGroupScale=function(Me,pe,ue){if(pe=pe||1,ue=ue||1,!!Me){var ze=pe===1&&ue===1?"":"scale("+pe+","+ue+")";Me.each(function(){var Qe=(this.getAttribute("transform")||"").replace(ae,"");Qe+=ze,Qe=Qe.trim(),this.setAttribute("transform",Qe)})}};var j=/translate\([^)]*\)\s*$/;l.setTextPointsScale=function(Me,pe,ue){Me&&Me.each(function(){var ze,Qe=g.select(this),it=Qe.select("text");if(it.node()){var $e=parseFloat(it.attr("x")||0),kt=parseFloat(it.attr("y")||0),Mt=(Qe.attr("transform")||"").match(j);pe===1&&ue===1?ze=[]:ze=[i($e,kt),"scale("+pe+","+ue+")",i(-$e,-kt)],Mt&&ze.push(Mt),Qe.attr("transform",ze.join(""))}})};function ee(Me,pe){var ue;return Me&&(ue=Me.mf),ue===void 0&&(ue=pe.marker&&pe.marker.standoff||0),!pe._geo&&!pe._xA?-ue:ue}l.getMarkerStandoff=ee;var ne=Math.atan2,ce=Math.cos,_e=Math.sin;function we(Me,pe){var ue=pe[0],ze=pe[1];return[ue*ce(Me)-ze*_e(Me),ue*_e(Me)+ze*ce(Me)]}var Oe,Ie,Xe,tt,rt,Je;function ot(Me,pe){var ue=Me.ma;ue===void 0&&(ue=pe.marker.angle,(!ue||x.isArrayOrTypedArray(ue))&&(ue=0));var ze,Qe,it=pe.marker.angleref;if(it==="previous"||it==="north"){if(pe._geo){var $e=pe._geo.project(Me.lonlat);ze=$e[0],Qe=$e[1]}else{var kt=pe._xA,Mt=pe._yA;if(kt&&Mt)ze=kt.c2p(Me.x),Qe=Mt.c2p(Me.y);else return 90}if(pe._geo){var Bt=Me.lonlat[0],jt=Me.lonlat[1],cr=pe._geo.project([Bt,jt+1e-5]),nr=pe._geo.project([Bt+1e-5,jt]),Lr=ne(nr[1]-Qe,nr[0]-ze),mr=ne(cr[1]-Qe,cr[0]-ze),xr;if(it==="north")xr=ue/180*Math.PI;else if(it==="previous"){var mt=Bt/180*Math.PI,Fe=jt/180*Math.PI,Ze=Oe/180*Math.PI,Ne=Ie/180*Math.PI,Se=Ze-mt,Ve=ce(Ne)*_e(Se),Ee=_e(Ne)*ce(Fe)-ce(Ne)*_e(Fe)*ce(Se);xr=-ne(Ve,Ee)-Math.PI,Oe=Bt,Ie=jt}var be=we(Lr,[ce(xr),0]),Ce=we(mr,[_e(xr),0]);ue=ne(be[1]+Ce[1],be[0]+Ce[0])/Math.PI*180,it==="previous"&&!(Je===pe.uid&&Me.i===rt+1)&&(ue=null)}if(it==="previous"&&!pe._geo)if(Je===pe.uid&&Me.i===rt+1&&S(ze)&&S(Qe)){var et=ze-Xe,ht=Qe-tt,yt=pe.line&&pe.line.shape||"",Pt=yt.slice(yt.length-1);Pt==="h"&&(ht=0),Pt==="v"&&(et=0),ue+=ne(ht,et)/Math.PI*180+90}else ue=null}return Xe=ze,tt=Qe,rt=Me.i,Je=pe.uid,ue}l.getMarkerAngle=ot}}),Um=Le({"src/components/titles/index.js"(Z,H){"use strict";var g=Ji(),x=zn(),A=Ku(),S=so(),e=ni(),t=e.strTranslate,r=rs(),o=$a(),i=$l(),n=Iv(),a=eh().OPPOSITE_SIDE,s=/ [XY][0-9]* /,c=1.6,h=1.6;function p(d,T,l){var _=d._fullLayout,w=l.propContainer,M=l.propName,E=l.placeholder,m=l.traceIndex,b=l.avoid||{},v=l.attributes,u=l.transform,y=l.containerGroup,f=1,P=w.title,L=(P&&P.text?P.text:"").trim(),z=!1,F=P&&P.font?P.font:{},O=F.family,B=F.size,I=F.color,N=F.weight,U=F.style,W=F.variant,Q=F.textcase,le=F.lineposition,se=F.shadow,fe=l.subtitlePropName,G=!!fe,J=l.subtitlePlaceholder,$=(w.title||{}).subtitle||{text:"",font:{}},X=$.text.trim(),re=!1,ae=1,j=$.font,ee=j.family,ne=j.size,ce=j.color,_e=j.weight,we=j.style,Oe=j.variant,Ie=j.textcase,Xe=j.lineposition,tt=j.shadow,rt;M==="title.text"?rt="titleText":M.indexOf("axis")!==-1?rt="axisTitleText":M.indexOf("colorbar"!==-1)&&(rt="colorbarTitleText");var Je=d._context.edits[rt];function ot(nr,Lr){return nr===void 0||Lr===void 0?!1:nr.replace(s," % ")===Lr.replace(s," % ")}L===""?f=0:ot(L,E)&&(Je||(L=""),f=.2,z=!0),G&&(X===""?ae=0:ot(X,J)&&(Je||(X=""),ae=.2,re=!0)),l._meta?L=e.templateString(L,l._meta):_._meta&&(L=e.templateString(L,_._meta));var Me=L||X||Je,pe;y||(y=e.ensureSingle(_._infolayer,"g","g-"+T),pe=_._hColorbarMoveTitle);var ue=y.selectAll("text."+T).data(Me?[0]:[]);ue.enter().append("text"),ue.text(L).attr("class",T),ue.exit().remove();var ze=null,Qe=T+"-subtitle",it=X||Je;if(G&&it&&(ze=y.selectAll("text."+Qe).data(it?[0]:[]),ze.enter().append("text"),ze.text(X).attr("class",Qe),ze.exit().remove()),!Me)return y;function $e(nr,Lr){e.syncOrAsync([kt,Mt],{title:nr,subtitle:Lr})}function kt(nr){var Lr=nr.title,mr=nr.subtitle,xr;!u&&pe&&(u={}),u?(xr="",u.rotate&&(xr+="rotate("+[u.rotate,v.x,v.y]+")"),(u.offset||pe)&&(xr+=t(0,(u.offset||0)-(pe||0)))):xr=null,Lr.attr("transform",xr);function mt(Ee){if(Ee){var be=g.select(Ee.node().parentNode).select("."+Qe);if(!be.empty()){var Ce=Ee.node().getBBox();if(Ce.height){var et=Ce.y+Ce.height+c*ne;be.attr("y",et)}}}}if(Lr.style("opacity",f*o.opacity(I)).call(r.font,{color:o.rgb(I),size:g.round(B,2),family:O,weight:N,style:U,variant:W,textcase:Q,shadow:se,lineposition:le}).attr(v).call(i.convertToTspans,d,mt),mr){var Fe=y.select("."+T+"-math-group"),Ze=Lr.node().getBBox(),Ne=Fe.node()?Fe.node().getBBox():void 0,Se=Ne?Ne.y+Ne.height+c*ne:Ze.y+Ze.height+h*ne,Ve=e.extendFlat({},v,{y:Se});mr.attr("transform",xr),mr.style("opacity",ae*o.opacity(ce)).call(r.font,{color:o.rgb(ce),size:g.round(ne,2),family:ee,weight:_e,style:we,variant:Oe,textcase:Ie,shadow:tt,lineposition:Xe}).attr(Ve).call(i.convertToTspans,d)}return A.previousPromises(d)}function Mt(nr){var Lr=nr.title,mr=g.select(Lr.node().parentNode);if(b&&b.selection&&b.side&&L){mr.attr("transform",null);var xr=a[b.side],mt=b.side==="left"||b.side==="top"?-1:1,Fe=x(b.pad)?b.pad:2,Ze=r.bBox(mr.node()),Ne={t:0,b:0,l:0,r:0},Se=d._fullLayout._reservedMargin;for(var Ve in Se)for(var Ee in Se[Ve]){var be=Se[Ve][Ee];Ne[Ee]=Math.max(Ne[Ee],be)}var Ce={left:Ne.l,top:Ne.t,right:_.width-Ne.r,bottom:_.height-Ne.b},et=b.maxShift||mt*(Ce[b.side]-Ze[b.side]),ht=0;if(et<0)ht=et;else{var yt=b.offsetLeft||0,Pt=b.offsetTop||0;Ze.left-=yt,Ze.right-=yt,Ze.top-=Pt,Ze.bottom-=Pt,b.selection.each(function(){var Wt=r.bBox(this);e.bBoxIntersect(Ze,Wt,Fe)&&(ht=Math.max(ht,mt*(Wt[b.side]-Ze[xr])+Fe))}),ht=Math.min(et,ht),w._titleScoot=Math.abs(ht)}if(ht>0||et<0){var Ot={left:[-ht,0],right:[ht,0],top:[0,-ht],bottom:[0,ht]}[b.side];mr.attr("transform",t(Ot[0],Ot[1]))}}}ue.call($e,ze);function Bt(nr,Lr){nr.text(Lr).on("mouseover.opacity",function(){g.select(this).transition().duration(n.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){g.select(this).transition().duration(n.HIDE_PLACEHOLDER).style("opacity",0)})}if(Je&&(L?ue.on(".opacity",null):(Bt(ue,E),z=!0),ue.call(i.makeEditable,{gd:d}).on("edit",function(nr){m!==void 0?S.call("_guiRestyle",d,M,nr,m):S.call("_guiRelayout",d,M,nr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call($e)}).on("input",function(nr){this.text(nr||" ").call(i.positionText,v.x,v.y)}),G)){if(G&&!L){var jt=ue.node().getBBox(),cr=jt.y+jt.height+h*ne;ze.attr("y",cr)}X?ze.on(".opacity",null):(Bt(ze,J),re=!0),ze.call(i.makeEditable,{gd:d}).on("edit",function(nr){S.call("_guiRelayout",d,"title.subtitle.text",nr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call($e)}).on("input",function(nr){this.text(nr||" ").call(i.positionText,ze.attr("x"),ze.attr("y"))})}return ue.classed("js-placeholder",z),ze&&ze.classed("js-placeholder",re),y}H.exports={draw:p,SUBTITLE_PADDING_EM:h,SUBTITLE_PADDING_MATHJAX_EM:c}}}),Rv=Le({"src/plots/cartesian/set_convert.js"(Z,H){"use strict";var g=Ji(),x=Ia().utcFormat,A=ni(),S=A.numberFormat,e=zn(),t=A.cleanNumber,r=A.ms2DateTime,o=A.dateTime2ms,i=A.ensureNumber,n=A.isArrayOrTypedArray,a=$n(),s=a.FP_SAFE,c=a.BADNUM,h=a.LOG_CLIP,p=a.ONEWEEK,d=a.ONEDAY,T=a.ONEHOUR,l=a.ONEMIN,_=a.ONESEC,w=Kc(),M=ch(),E=M.HOUR_PATTERN,m=M.WEEKDAY_PATTERN;function b(u){return Math.pow(10,u)}function v(u){return u!=null}H.exports=function(y,f){f=f||{};var P=y._id||"x",L=P.charAt(0);function z(X,re){if(X>0)return Math.log(X)/Math.LN10;if(X<=0&&re&&y.range&&y.range.length===2){var ae=y.range[0],j=y.range[1];return .5*(ae+j-2*h*Math.abs(ae-j))}else return c}function F(X,re,ae,j){if((j||{}).msUTC&&e(X))return+X;var ee=o(X,ae||y.calendar);if(ee===c)if(e(X)){X=+X;var ne=Math.floor(A.mod(X+.05,1)*10),ce=Math.round(X-ne/10);ee=o(new Date(ce))+ne/10}else return c;return ee}function O(X,re,ae){return r(X,re,ae||y.calendar)}function B(X){return y._categories[Math.round(X)]}function I(X){if(v(X)){if(y._categoriesMap===void 0&&(y._categoriesMap={}),y._categoriesMap[X]!==void 0)return y._categoriesMap[X];y._categories.push(typeof X=="number"?String(X):X);var re=y._categories.length-1;return y._categoriesMap[X]=re,re}return c}function N(X,re){for(var ae=new Array(re),j=0;jy.range[1]&&(ae=!ae);for(var j=ae?-1:1,ee=j*X,ne=0,ce=0;cewe)ne=ce+1;else{ne=ee<(_e+we)/2?ce:ce+1;break}}var Oe=y._B[ne]||0;return isFinite(Oe)?le(X,y._m2,Oe):0},G=function(X){var re=y._rangebreaks.length;if(!re)return se(X,y._m,y._b);for(var ae=0,j=0;jy._rangebreaks[j].pmax&&(ae=j+1);return se(X,y._m2,y._B[ae])}}y.c2l=y.type==="log"?z:i,y.l2c=y.type==="log"?b:i,y.l2p=fe,y.p2l=G,y.c2p=y.type==="log"?function(X,re){return fe(z(X,re))}:fe,y.p2c=y.type==="log"?function(X){return b(G(X))}:G,["linear","-"].indexOf(y.type)!==-1?(y.d2r=y.r2d=y.d2c=y.r2c=y.d2l=y.r2l=t,y.c2d=y.c2r=y.l2d=y.l2r=i,y.d2p=y.r2p=function(X){return y.l2p(t(X))},y.p2d=y.p2r=G,y.cleanPos=i):y.type==="log"?(y.d2r=y.d2l=function(X,re){return z(t(X),re)},y.r2d=y.r2c=function(X){return b(t(X))},y.d2c=y.r2l=t,y.c2d=y.l2r=i,y.c2r=z,y.l2d=b,y.d2p=function(X,re){return y.l2p(y.d2r(X,re))},y.p2d=function(X){return b(G(X))},y.r2p=function(X){return y.l2p(t(X))},y.p2r=G,y.cleanPos=i):y.type==="date"?(y.d2r=y.r2d=A.identity,y.d2c=y.r2c=y.d2l=y.r2l=F,y.c2d=y.c2r=y.l2d=y.l2r=O,y.d2p=y.r2p=function(X,re,ae){return y.l2p(F(X,0,ae))},y.p2d=y.p2r=function(X,re,ae){return O(G(X),re,ae)},y.cleanPos=function(X){return A.cleanDate(X,c,y.calendar)}):y.type==="category"?(y.d2c=y.d2l=I,y.r2d=y.c2d=y.l2d=B,y.d2r=y.d2l_noadd=W,y.r2c=function(X){var re=Q(X);return re!==void 0?re:y.fraction2r(.5)},y.l2r=y.c2r=i,y.r2l=Q,y.d2p=function(X){return y.l2p(y.r2c(X))},y.p2d=function(X){return B(G(X))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(X){return typeof X=="string"&&X!==""?X:i(X)}):y.type==="multicategory"&&(y.r2d=y.c2d=y.l2d=B,y.d2r=y.d2l_noadd=W,y.r2c=function(X){var re=W(X);return re!==void 0?re:y.fraction2r(.5)},y.r2c_just_indices=U,y.l2r=y.c2r=i,y.r2l=W,y.d2p=function(X){return y.l2p(y.r2c(X))},y.p2d=function(X){return B(G(X))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(X){return Array.isArray(X)||typeof X=="string"&&X!==""?X:i(X)},y.setupMultiCategory=function(X){var re=y._traceIndices,ae,j,ee=y._matchGroup;if(ee&&y._categories.length===0){for(var ne in ee)if(ne!==P){var ce=f[w.id2name(ne)];re=re.concat(ce._traceIndices)}}var _e=[[0,{}],[0,{}]],we=[];for(ae=0;aece[1]&&(j[ne?0:1]=ae),j[0]===j[1]){var _e=y.l2r(re),we=y.l2r(ae);if(re!==void 0){var Oe=_e+1;ae!==void 0&&(Oe=Math.min(Oe,we)),j[ne?1:0]=Oe}if(ae!==void 0){var Ie=we+1;re!==void 0&&(Ie=Math.max(Ie,_e)),j[ne?0:1]=Ie}}}},y.cleanRange=function(X,re){y._cleanRange(X,re),y.limitRange(X)},y._cleanRange=function(X,re){re||(re={}),X||(X="range");var ae=A.nestedProperty(y,X).get(),j,ee;if(y.type==="date"?ee=A.dfltRange(y.calendar):L==="y"?ee=M.DFLTRANGEY:y._name==="realaxis"?ee=[0,1]:ee=re.dfltRange||M.DFLTRANGEX,ee=ee.slice(),(y.rangemode==="tozero"||y.rangemode==="nonnegative")&&(ee[0]=0),!ae||ae.length!==2){A.nestedProperty(y,X).set(ee);return}var ne=ae[0]===null,ce=ae[1]===null;for(y.type==="date"&&!y.autorange&&(ae[0]=A.cleanDate(ae[0],c,y.calendar),ae[1]=A.cleanDate(ae[1],c,y.calendar)),j=0;j<2;j++)if(y.type==="date"){if(!A.isDateTime(ae[j],y.calendar)){y[X]=ee;break}if(y.r2l(ae[0])===y.r2l(ae[1])){var _e=A.constrain(y.r2l(ae[0]),A.MIN_MS+1e3,A.MAX_MS-1e3);ae[0]=y.l2r(_e-1e3),ae[1]=y.l2r(_e+1e3);break}}else{if(!e(ae[j]))if(!(ne||ce)&&e(ae[1-j]))ae[j]=ae[1-j]*(j?10:.1);else{y[X]=ee;break}if(ae[j]<-s?ae[j]=-s:ae[j]>s&&(ae[j]=s),ae[0]===ae[1]){var we=Math.max(1,Math.abs(ae[0]*1e-6));ae[0]-=we,ae[1]+=we}}},y.setScale=function(X){var re=f._size;if(y.overlaying){var ae=w.getFromId({_fullLayout:f},y.overlaying);y.domain=ae.domain}var j=X&&y._r?"_r":"range",ee=y.calendar;y.cleanRange(j);var ne=y.r2l(y[j][0],ee),ce=y.r2l(y[j][1],ee),_e=L==="y";if(_e?(y._offset=re.t+(1-y.domain[1])*re.h,y._length=re.h*(y.domain[1]-y.domain[0]),y._m=y._length/(ne-ce),y._b=-y._m*ce):(y._offset=re.l+y.domain[0]*re.w,y._length=re.w*(y.domain[1]-y.domain[0]),y._m=y._length/(ce-ne),y._b=-y._m*ne),y._rangebreaks=[],y._lBreaks=0,y._m2=0,y._B=[],y.rangebreaks){var we,Oe;if(y._rangebreaks=y.locateBreaks(Math.min(ne,ce),Math.max(ne,ce)),y._rangebreaks.length){for(we=0;wece&&(Ie=!Ie),Ie&&y._rangebreaks.reverse();var Xe=Ie?-1:1;for(y._m2=Xe*y._length/(Math.abs(ce-ne)-y._lBreaks),y._B.push(-y._m2*(_e?ce:ne)),we=0;weee&&(ee+=7,neee&&(ee+=24,ne=j&&ne=j&&X=$e.min&&(ue<$e.min&&($e.min=ue),ze>$e.max&&($e.max=ze),Qe=!1)}Qe&&ce.push({min:ue,max:ze})}};for(ae=0;ae<_e.length;ae++){var Oe=_e[ae];if(Oe.enabled)if(Oe.bounds){var Ie=X,Xe=re;Oe.pattern&&(Ie=Math.floor(Ie)),j=A.simpleMap(Oe.bounds,Oe.pattern?t:y.r2l),ee=j[0],ne=j[1];var tt=new Date(Ie),rt,Je;switch(Oe.pattern){case m:Je=p,rt=((ne_*2}function a(h){return Math.max(1,(h-1)/1e3)}function s(h,p){for(var d=h.length,T=a(d),l=0,_=0,w={},M=0;Ml*2}function c(h){return S(h[0])&&S(h[1])}}}),cv=Le({"src/plots/cartesian/autorange.js"(Z,H){"use strict";var g=Ji(),x=zn(),A=ni(),S=$n().FP_SAFE,e=so(),t=rs(),r=Kc(),o=r.getFromId,i=r.isLinked;H.exports={applyAutorangeOptions:y,getAutoRange:n,makePadFn:s,doAutoRange:d,findExtremes:T,concatExtremes:p};function n(f,P){var L,z,F=[],O=f._fullLayout,B=s(O,P,0),I=s(O,P,1),N=p(f,P),U=N.min,W=N.max;if(U.length===0||W.length===0)return A.simpleMap(P.range,P.r2l);var Q=U[0].val,le=W[0].val;for(L=1;L0&&(we=re-B(ee)-I(ne),we>ae?Oe/we>j&&(ce=ee,_e=ne,j=Oe/we):Oe/re>j&&(ce={val:ee.val,nopad:1},_e={val:ne.val,nopad:1},j=Oe/re));function Ie(ot,Me){return Math.max(ot,I(Me))}if(Q===le){var Xe=Q-1,tt=Q+1;if($)if(Q===0)F=[0,1];else{var rt=(Q>0?W:U).reduce(Ie,0),Je=Q/(1-Math.min(.5,rt/re));F=Q>0?[0,Je]:[Je,0]}else X?F=[Math.max(0,Xe),Math.max(1,tt)]:F=[Xe,tt]}else $?(ce.val>=0&&(ce={val:0,nopad:1}),_e.val<=0&&(_e={val:0,nopad:1})):X&&(ce.val-j*B(ce)<0&&(ce={val:0,nopad:1}),_e.val<=0&&(_e={val:1,nopad:1})),j=(_e.val-ce.val-a(P,ee.val,ne.val))/(re-B(ce)-I(_e)),F=[ce.val-j*B(ce),_e.val+j*I(_e)];return F=y(F,P),P.limitRange&&P.limitRange(),fe&&F.reverse(),A.simpleMap(F,P.l2r||Number)}function a(f,P,L){var z=0;if(f.rangebreaks)for(var F=f.locateBreaks(P,L),O=0;O0?L.ppadplus:L.ppadminus)||L.ppad||0),ee=ae((f._m>0?L.ppadminus:L.ppadplus)||L.ppad||0),ne=ae(L.vpadplus||L.vpad),ce=ae(L.vpadminus||L.vpad);if(!U){if(X=1/0,re=-1/0,N)for(Q=0;Q0&&(X=le),le>re&&le-S&&(X=le),le>re&&le=Oe;Q--)we(Q);return{min:z,max:F,opts:L}}function l(f,P,L,z){w(f,P,L,z,E)}function _(f,P,L,z){w(f,P,L,z,m)}function w(f,P,L,z,F){for(var O=z.tozero,B=z.extrapad,I=!0,N=0;N=L&&(U.extrapad||!B)){I=!1;break}else F(P,U.val)&&U.pad<=L&&(B||!U.extrapad)&&(f.splice(N,1),N--)}if(I){var W=O&&P===0;f.push({val:P,pad:W?0:L,extrapad:W?!1:B})}}function M(f){return x(f)&&Math.abs(f)=P}function b(f,P){var L=P.autorangeoptions;return L&&L.minallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.minallowed:L&&L.clipmin!==void 0&&u(P,L.clipmin,L.clipmax)?Math.max(f,P.d2l(L.clipmin)):f}function v(f,P){var L=P.autorangeoptions;return L&&L.maxallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.maxallowed:L&&L.clipmax!==void 0&&u(P,L.clipmin,L.clipmax)?Math.min(f,P.d2l(L.clipmax)):f}function u(f,P,L){return P!==void 0&&L!==void 0?(P=f.d2l(P),L=f.d2l(L),P=N&&(O=N,L=N),B<=N&&(B=N,z=N)}}return L=b(L,P),z=v(z,P),[L,z]}}}),Zo=Le({"src/plots/cartesian/axes.js"(Z,H){"use strict";var g=Ji(),x=zn(),A=Ku(),S=so(),e=ni(),t=e.strTranslate,r=$l(),o=Um(),i=$a(),n=rs(),a=Sh(),s=qw(),c=$n(),h=c.ONEMAXYEAR,p=c.ONEAVGYEAR,d=c.ONEMINYEAR,T=c.ONEMAXQUARTER,l=c.ONEAVGQUARTER,_=c.ONEMINQUARTER,w=c.ONEMAXMONTH,M=c.ONEAVGMONTH,E=c.ONEMINMONTH,m=c.ONEWEEK,b=c.ONEDAY,v=b/2,u=c.ONEHOUR,y=c.ONEMIN,f=c.ONESEC,P=c.ONEMILLI,L=c.ONEMICROSEC,z=c.MINUS_SIGN,F=c.BADNUM,O={K:"zeroline"},B={K:"gridline",L:"path"},I={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},W={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Q=eh(),le=Q.MID_SHIFT,se=Q.CAP_SHIFT,fe=Q.LINE_SPACING,G=Q.OPPOSITE_SIDE,J=3,$=H.exports={};$.setConvert=Rv();var X=Kg(),re=Kc(),ae=re.idSort,j=re.isLinked;$.id2name=re.id2name,$.name2id=re.name2id,$.cleanId=re.cleanId,$.list=re.list,$.listIds=re.listIds,$.getFromId=re.getFromId,$.getFromTrace=re.getFromTrace;var ee=cv();$.getAutoRange=ee.getAutoRange,$.findExtremes=ee.findExtremes;var ne=1e-4;function ce(vt){var pt=(vt[1]-vt[0])*ne;return[vt[0]-pt,vt[1]+pt]}$.coerceRef=function(vt,pt,kr,Cr,wr,Ar){var Er=Cr.charAt(Cr.length-1),Br=kr._fullLayout._subplots[Er+"axis"],Pr=Cr+"ref",Qr={};return wr||(wr=Br[0]||(typeof Ar=="string"?Ar:Ar[0])),Ar||(Ar=wr),Br=Br.concat(Br.map(function(ci){return ci+" domain"})),Qr[Pr]={valType:"enumerated",values:Br.concat(Ar?typeof Ar=="string"?[Ar]:Ar:[]),dflt:wr},e.coerce(vt,pt,Qr,Pr)},$.getRefType=function(vt){return vt===void 0?vt:vt==="paper"?"paper":vt==="pixel"?"pixel":/( domain)$/.test(vt)?"domain":"range"},$.coercePosition=function(vt,pt,kr,Cr,wr,Ar){var Er,Br,Pr=$.getRefType(Cr);if(Pr!=="range")Er=e.ensureNumber,Br=kr(wr,Ar);else{var Qr=$.getFromId(pt,Cr);Ar=Qr.fraction2r(Ar),Br=kr(wr,Ar),Er=Qr.cleanPos}vt[wr]=Er(Br)},$.cleanPosition=function(vt,pt,kr){var Cr=kr==="paper"||kr==="pixel"?e.ensureNumber:$.getFromId(pt,kr).cleanPos;return Cr(vt)},$.redrawComponents=function(vt,pt){pt=pt||$.listIds(vt);var kr=vt._fullLayout;function Cr(wr,Ar,Er,Br){for(var Pr=S.getComponentMethod(wr,Ar),Qr={},ci=0;ci2e-6||((kr-vt._forceTick0)/vt._minDtick%1+1.000001)%1>2e-6)&&(vt._minDtick=0))},$.saveRangeInitial=function(vt,pt){for(var kr=$.list(vt,"",!0),Cr=!1,wr=0;wrmi*.3||Qr(Cr)||Qr(wr))){var Et=kr.dtick/2;vt+=vt+EtEr){var Br=Number(kr.substr(1));Ar.exactYears>Er&&Br%12===0?vt=$.tickIncrement(vt,"M6","reverse")+b*1.5:Ar.exactMonths>Er?vt=$.tickIncrement(vt,"M1","reverse")+b*15.5:vt-=v;var Pr=$.tickIncrement(vt,kr);if(Pr<=Cr)return Pr}return vt}$.prepMinorTicks=function(vt,pt,kr){if(!pt.minor.dtick){delete vt.dtick;var Cr=pt.dtick&&x(pt._tmin),wr;if(Cr){var Ar=$.tickIncrement(pt._tmin,pt.dtick,!0);wr=[pt._tmin,Ar*.99+pt._tmin*.01]}else{var Er=e.simpleMap(pt.range,pt.r2l);wr=[Er[0],.8*Er[0]+.2*Er[1]]}if(vt.range=e.simpleMap(wr,pt.l2r),vt._isMinor=!0,$.prepTicks(vt,kr),Cr){var Br=x(pt.dtick),Pr=x(vt.dtick),Qr=Br?pt.dtick:+pt.dtick.substring(1),ci=Pr?vt.dtick:+vt.dtick.substring(1);Br&&Pr?tt(Qr,ci)?Qr===2*m&&ci===2*b&&(vt.dtick=m):Qr===2*m&&ci===3*b?vt.dtick=m:Qr===m&&!(pt._input.minor||{}).nticks?vt.dtick=b:rt(Qr/ci,2.5)?vt.dtick=Qr/2:vt.dtick=Qr:String(pt.dtick).charAt(0)==="M"?Pr?vt.dtick="M1":tt(Qr,ci)?Qr>=12&&ci===2&&(vt.dtick="M3"):vt.dtick=pt.dtick:String(vt.dtick).charAt(0)==="L"?String(pt.dtick).charAt(0)==="L"?tt(Qr,ci)||(vt.dtick=rt(Qr/ci,2.5)?pt.dtick/2:pt.dtick):vt.dtick="D1":vt.dtick==="D2"&&+pt.dtick>1&&(vt.dtick=1)}vt.range=pt.range}pt.minor._tick0Init===void 0&&(vt.tick0=pt.tick0)};function tt(vt,pt){return Math.abs((vt/pt+.5)%1-.5)<.001}function rt(vt,pt){return Math.abs(vt/pt-1)<.001}$.prepTicks=function(vt,pt){var kr=e.simpleMap(vt.range,vt.r2l,void 0,void 0,pt);if(vt.tickmode==="auto"||!vt.dtick){var Cr=vt.nticks,wr;Cr||(vt.type==="category"||vt.type==="multicategory"?(wr=vt.tickfont?e.bigFont(vt.tickfont.size||12):15,Cr=vt._length/wr):(wr=vt._id.charAt(0)==="y"?40:80,Cr=e.constrain(vt._length/wr,4,9)+1),vt._name==="radialaxis"&&(Cr*=2)),vt.minor&&vt.minor.tickmode!=="array"||vt.tickmode==="array"&&(Cr*=100),vt._roughDTick=Math.abs(kr[1]-kr[0])/Cr,$.autoTicks(vt,vt._roughDTick),vt._minDtick>0&&vt.dtick0?(Ar=Cr-1,Er=Cr):(Ar=Cr,Er=Cr);var Br=vt[Ar].value,Pr=vt[Er].value,Qr=Math.abs(Pr-Br),ci=kr||Qr,mi=0;ci>=d?Qr>=d&&Qr<=h?mi=Qr:mi=p:kr===l&&ci>=_?Qr>=_&&Qr<=T?mi=Qr:mi=l:ci>=E?Qr>=E&&Qr<=w?mi=Qr:mi=M:kr===m&&ci>=m?mi=m:ci>=b?mi=b:kr===v&&ci>=v?mi=v:kr===u&&ci>=u&&(mi=u);var Et;mi>=Qr&&(mi=Qr,Et=!0);var ar=wr+mi;if(pt.rangebreaks&&mi>0){for(var gr=84,ti=0,wi=0;wim&&(mi=Qr)}(mi>0||Cr===0)&&(vt[Cr].periodX=wr+mi/2)}}$.calcTicks=function(pt,kr){for(var Cr=pt.type,wr=pt.calendar,Ar=pt.ticklabelstep,Er=pt.ticklabelmode==="period",Br=pt.range[0]>pt.range[1],Pr=!pt.ticklabelindex||e.isArrayOrTypedArray(pt.ticklabelindex)?pt.ticklabelindex:[pt.ticklabelindex],Qr=e.simpleMap(pt.range,pt.r2l,void 0,void 0,kr),ci=Qr[1]=(xi?0:1);Ii--){var Bn=!Ii;Ii?(pt._dtickInit=pt.dtick,pt._tick0Init=pt.tick0):(pt.minor._dtickInit=pt.minor.dtick,pt.minor._tick0Init=pt.minor.tick0);var hn=Ii?pt:e.extendFlat({},pt,pt.minor);if(Bn?$.prepMinorTicks(hn,pt,kr):$.prepTicks(hn,kr),hn.tickmode==="array"){Ii?(wi=[],gr=ze(pt,!Bn)):(Gi=[],ti=ze(pt,!Bn));continue}if(hn.tickmode==="sync"){wi=[],gr=ue(pt);continue}var ba=ce(Qr),Aa=ba[0],Va=ba[1],Qa=x(hn.dtick),yo=Cr==="log"&&!(Qa||hn.dtick.charAt(0)==="L"),Ga=$.tickFirst(hn,kr);if(Ii){if(pt._tmin=Ga,Ga=Va:da<=Va;da=$.tickIncrement(da,bs,ci,wr)){if(Ii&&vs++,hn.rangebreaks&&!ci){if(da=Et)break}if(wi.length>ar||da===Yo)break;Yo=da;var Xa={value:da};Ii?(yo&&da!==(da|0)&&(Xa.simpleLabel=!0),Ar>1&&vs%Ar&&(Xa.skipLabel=!0),wi.push(Xa)):(Xa.minor=!0,Gi.push(Xa))}}if(!Gi||Gi.length<2)Pr=!1;else{var Bo=(Gi[1].value-Gi[0].value)*(Br?-1:1);sn(Bo,pt.tickformat)||(Pr=!1)}if(!Pr)Fi=wi;else{var Za=wi.concat(Gi);Er&&wi.length&&(Za=Za.slice(1)),Za=Za.sort(function(po,zs){return po.value-zs.value}).filter(function(po,zs,hs){return zs===0||po.value!==hs[zs-1].value});var Qo=Za.map(function(po,zs){return po.minor===void 0&&!po.skipLabel?zs:null}).filter(function(po){return po!==null});Qo.forEach(function(po){Pr.map(function(zs){var hs=po+zs;hs>=0&&hs-1;bn--){if(wi[bn].drop){wi.splice(bn,1);continue}wi[bn].value=Yr(wi[bn].value,pt);var ko=pt.c2p(wi[bn].value);(Ra?Ys>ko-_l:YsEt||toEt&&(hs.periodX=Et),towr&&Etp)pt/=p,Cr=wr(10),vt.dtick="M"+12*cr(pt,Cr,Qe);else if(Ar>M)pt/=M,vt.dtick="M"+cr(pt,1,it);else if(Ar>b){if(vt.dtick=cr(pt,b,vt._hasDayOfWeekBreaks?[1,2,7,14]:kt),!kr){var Er=$.getTickFormat(vt),Br=vt.ticklabelmode==="period";Br&&(vt._rawTick0=vt.tick0),/%[uVW]/.test(Er)?vt.tick0=e.dateTick0(vt.calendar,2):vt.tick0=e.dateTick0(vt.calendar,1),Br&&(vt._dowTick0=vt.tick0)}}else Ar>u?vt.dtick=cr(pt,u,it):Ar>y?vt.dtick=cr(pt,y,$e):Ar>f?vt.dtick=cr(pt,f,$e):(Cr=wr(10),vt.dtick=cr(pt,Cr,Qe))}else if(vt.type==="log"){vt.tick0=0;var Pr=e.simpleMap(vt.range,vt.r2l);if(vt._isMinor&&(pt*=1.5),pt>.7)vt.dtick=Math.ceil(pt);else if(Math.abs(Pr[1]-Pr[0])<1){var Qr=1.5*Math.abs((Pr[1]-Pr[0])/pt);pt=Math.abs(Math.pow(10,Pr[1])-Math.pow(10,Pr[0]))/Qr,Cr=wr(10),vt.dtick="L"+cr(pt,Cr,Qe)}else vt.dtick=pt>.3?"D2":"D1"}else vt.type==="category"||vt.type==="multicategory"?(vt.tick0=0,vt.dtick=Math.ceil(Math.max(pt,1))):_i(vt)?(vt.tick0=0,Cr=1,vt.dtick=cr(pt,Cr,jt)):(vt.tick0=0,Cr=wr(10),vt.dtick=cr(pt,Cr,Qe));if(vt.dtick===0&&(vt.dtick=1),!x(vt.dtick)&&typeof vt.dtick!="string"){var ci=vt.dtick;throw vt.dtick=1,"ax.dtick error: "+String(ci)}};function nr(vt){var pt=vt.dtick;if(vt._tickexponent=0,!x(pt)&&typeof pt!="string"&&(pt=1),(vt.type==="category"||vt.type==="multicategory")&&(vt._tickround=null),vt.type==="date"){var kr=vt.r2l(vt.tick0),Cr=vt.l2r(kr).replace(/(^-|i)/g,""),wr=Cr.length;if(String(pt).charAt(0)==="M")wr>10||Cr.substr(5)!=="01-01"?vt._tickround="d":vt._tickround=+pt.substr(1)%12===0?"y":"m";else if(pt>=b&&wr<=10||pt>=b*15)vt._tickround="d";else if(pt>=y&&wr<=16||pt>=u)vt._tickround="M";else if(pt>=f&&wr<=19||pt>=y)vt._tickround="S";else{var Ar=vt.l2r(kr+pt).replace(/^-/,"").length;vt._tickround=Math.max(wr,Ar)-20,vt._tickround<0&&(vt._tickround=4)}}else if(x(pt)||pt.charAt(0)==="L"){var Er=vt.range.map(vt.r2d||Number);x(pt)||(pt=Number(pt.substr(1))),vt._tickround=2-Math.floor(Math.log(pt)/Math.LN10+.01);var Br=Math.max(Math.abs(Er[0]),Math.abs(Er[1])),Pr=Math.floor(Math.log(Br)/Math.LN10+.01),Qr=vt.minexponent===void 0?3:vt.minexponent;Math.abs(Pr)>Qr&&(Ee(vt.exponentformat)&&!be(Pr)?vt._tickexponent=3*Math.round((Pr-1)/3):vt._tickexponent=Pr)}else vt._tickround=null}$.tickIncrement=function(vt,pt,kr,Cr){var wr=kr?-1:1;if(x(pt))return e.increment(vt,wr*pt);var Ar=pt.charAt(0),Er=wr*Number(pt.substr(1));if(Ar==="M")return e.incrementMonth(vt,Er,Cr);if(Ar==="L")return Math.log(Math.pow(10,vt)+Er)/Math.LN10;if(Ar==="D"){var Br=pt==="D2"?Bt:Mt,Pr=vt+wr*.01,Qr=e.roundUp(e.mod(Pr,1),Br,kr);return Math.floor(Pr)+Math.log(g.round(Math.pow(10,Qr),1))/Math.LN10}throw"unrecognized dtick "+String(pt)},$.tickFirst=function(vt,pt){var kr=vt.r2l||Number,Cr=e.simpleMap(vt.range,kr,void 0,void 0,pt),wr=Cr[1]=0&&Gi<=vt._length?wi:null};if(Ar&&e.isArrayOrTypedArray(vt.ticktext)){var mi=e.simpleMap(vt.range,vt.r2l),Et=(Math.abs(mi[1]-mi[0])-(vt._lBreaks||0))/1e4;for(Qr=0;Qr"+Br;else{var Qr=Di(vt),ci=vt._trueSide||vt.side;(!Qr&&ci==="top"||Qr&&ci==="bottom")&&(Er+="
")}pt.text=Er}function xr(vt,pt,kr,Cr,wr){var Ar=vt.dtick,Er=pt.x,Br=vt.tickformat,Pr=typeof Ar=="string"&&Ar.charAt(0);if(wr==="never"&&(wr=""),Cr&&Pr!=="L"&&(Ar="L3",Pr="L"),Br||Pr==="L")pt.text=Ce(Math.pow(10,Er),vt,wr,Cr);else if(x(Ar)||Pr==="D"&&e.mod(Er+.01,1)<.1){var Qr=Math.round(Er),ci=Math.abs(Qr),mi=vt.exponentformat;mi==="power"||Ee(mi)&&be(Qr)?(Qr===0?pt.text=1:Qr===1?pt.text="10":pt.text="10"+(Qr>1?"":z)+ci+"",pt.fontSize*=1.25):(mi==="e"||mi==="E")&&ci>2?pt.text="1"+mi+(Qr>0?"+":z)+ci:(pt.text=Ce(Math.pow(10,Er),vt,"","fakehover"),Ar==="D1"&&vt._id.charAt(0)==="y"&&(pt.dy-=pt.fontSize/6))}else if(Pr==="D")pt.text=String(Math.round(Math.pow(10,e.mod(Er,1)))),pt.fontSize*=.75;else throw"unrecognized dtick "+String(Ar);if(vt.dtick==="D1"){var Et=String(pt.text).charAt(0);(Et==="0"||Et==="1")&&(vt._id.charAt(0)==="y"?pt.dx-=pt.fontSize/4:(pt.dy+=pt.fontSize/2,pt.dx+=(vt.range[1]>vt.range[0]?1:-1)*pt.fontSize*(Er<0?.5:.25)))}}function mt(vt,pt){var kr=vt._categories[Math.round(pt.x)];kr===void 0&&(kr=""),pt.text=String(kr)}function Fe(vt,pt,kr){var Cr=Math.round(pt.x),wr=vt._categories[Cr]||[],Ar=wr[1]===void 0?"":String(wr[1]),Er=wr[0]===void 0?"":String(wr[0]);kr?pt.text=Er+" - "+Ar:(pt.text=Ar,pt.text2=Er)}function Ze(vt,pt,kr,Cr,wr){wr==="never"?wr="":vt.showexponent==="all"&&Math.abs(pt.x/vt.dtick)<1e-6&&(wr="hide"),pt.text=Ce(pt.x,vt,wr,Cr)}function Ne(vt,pt,kr,Cr,wr){if(vt.thetaunit==="radians"&&!kr){var Ar=pt.x/180;if(Ar===0)pt.text="0";else{var Er=Se(Ar);if(Er[1]>=100)pt.text=Ce(e.deg2rad(pt.x),vt,wr,Cr);else{var Br=pt.x<0;Er[1]===1?Er[0]===1?pt.text="\u03C0":pt.text=Er[0]+"\u03C0":pt.text=["",Er[0],"","\u2044","",Er[1],"","\u03C0"].join(""),Br&&(pt.text=z+pt.text)}}}else pt.text=Ce(pt.x,vt,wr,Cr)}function Se(vt){function pt(Br,Pr){return Math.abs(Br-Pr)<=1e-6}function kr(Br,Pr){return pt(Pr,0)?Br:kr(Pr,Br%Pr)}function Cr(Br){for(var Pr=1;!pt(Math.round(Br*Pr)/Pr,Br);)Pr*=10;return Pr}var wr=Cr(vt),Ar=vt*wr,Er=Math.abs(kr(Ar,wr));return[Math.round(Ar/Er),Math.round(wr/Er)]}var Ve=["f","p","n","\u03BC","m","","k","M","G","T"];function Ee(vt){return vt==="SI"||vt==="B"}function be(vt){return vt>14||vt<-15}function Ce(vt,pt,kr,Cr){var wr=vt<0,Ar=pt._tickround,Er=kr||pt.exponentformat||"B",Br=pt._tickexponent,Pr=$.getTickFormat(pt),Qr=pt.separatethousands;if(Cr){var ci={exponentformat:Er,minexponent:pt.minexponent,dtick:pt.showexponent==="none"?pt.dtick:x(vt)&&Math.abs(vt)||1,range:pt.showexponent==="none"?pt.range.map(pt.r2d):[0,vt||1]};nr(ci),Ar=(Number(ci._tickround)||0)+4,Br=ci._tickexponent,pt.hoverformat&&(Pr=pt.hoverformat)}if(Pr)return pt._numFormat(Pr)(vt).replace(/-/g,z);var mi=Math.pow(10,-Ar)/2;if(Er==="none"&&(Br=0),vt=Math.abs(vt),vt"+gr+"":Er==="B"&&Br===9?vt+="B":Ee(Er)&&(vt+=Ve[Br/3+5])}return wr?z+vt:vt}$.getTickFormat=function(vt){var pt;function kr(Pr){return typeof Pr!="string"?Pr:Number(Pr.replace("M",""))*M}function Cr(Pr,Qr){var ci=["L","D"];if(typeof Pr==typeof Qr){if(typeof Pr=="number")return Pr-Qr;var mi=ci.indexOf(Pr.charAt(0)),Et=ci.indexOf(Qr.charAt(0));return mi===Et?Number(Pr.replace(/(L|D)/g,""))-Number(Qr.replace(/(L|D)/g,"")):mi-Et}else return typeof Pr=="number"?1:-1}function wr(Pr,Qr,ci){var mi=ci||function(gr){return gr},Et=Qr[0],ar=Qr[1];return(!Et&&typeof Et!="number"||mi(Et)<=mi(Pr))&&(!ar&&typeof ar!="number"||mi(ar)>=mi(Pr))}function Ar(Pr,Qr){var ci=Qr[0]===null,mi=Qr[1]===null,Et=Cr(Pr,Qr[0])>=0,ar=Cr(Pr,Qr[1])<=0;return(ci||Et)&&(mi||ar)}var Er,Br;if(vt.tickformatstops&&vt.tickformatstops.length>0)switch(vt.type){case"date":case"linear":{for(pt=0;pt=0&&wr.unshift(wr.splice(ci,1).shift())}});var Br={false:{left:0,right:0}};return e.syncOrAsync(wr.map(function(Pr){return function(){if(Pr){var Qr=$.getFromId(vt,Pr);kr||(kr={}),kr.axShifts=Br,kr.overlayingShiftedAx=Er;var ci=$.drawOne(vt,Qr,kr);return Qr._shiftPusher&&$i(Qr,Qr._fullDepth||0,Br,!0),Qr._r=Qr.range.slice(),Qr._rl=e.simpleMap(Qr._r,Qr.r2l),ci}}}))},$.drawOne=function(vt,pt,kr){kr=kr||{};var Cr=kr.axShifts||{},wr=kr.overlayingShiftedAx||[],Ar,Er,Br;pt.setScale();var Pr=vt._fullLayout,Qr=pt._id,ci=Qr.charAt(0),mi=$.counterLetter(Qr),Et=Pr._plots[pt._mainSubplot];if(!Et)return;if(pt._shiftPusher=pt.autoshift||wr.indexOf(pt._id)!==-1||wr.indexOf(pt.overlaying)!==-1,pt._shiftPusher&pt.anchor==="free"){var ar=pt.linewidth/2||0;pt.ticks==="inside"&&(ar+=pt.ticklen),$i(pt,ar,Cr,!0),$i(pt,pt.shift||0,Cr,!1)}(kr.skipTitle!==!0||pt._shift===void 0)&&(pt._shift=Mi(pt,Cr));var gr=Et[ci+"axislayer"],ti=pt._mainLinePosition,wi=ti+=pt._shift,Gi=pt._mainMirrorPosition,Fi=pt._vals=$.calcTicks(pt),xi=[pt.mirror,wi,Gi].join("_");for(Ar=0;Ar0?hs.bottom-po:0,zs))));var kl=0,Hu=0;if(pt._shiftPusher&&(kl=Math.max(zs,hs.height>0?aa==="l"?po-hs.left:hs.right-po:0),pt.title.text!==Pr._dfltTitle[ci]&&(Hu=(pt._titleStandoff||0)+(pt._titleScoot||0),aa==="l"&&(Hu+=Pi(pt))),pt._fullDepth=Math.max(kl,Hu)),pt.automargin){to={x:0,y:0,r:0,l:0,t:0,b:0};var Bl=[0,1],rl=typeof pt._shift=="number"?pt._shift:0;if(ci==="x"){if(aa==="b"?to[aa]=pt._depth:(to[aa]=pt._depth=Math.max(hs.width>0?po-hs.top:0,zs),Bl.reverse()),hs.width>0){var au=hs.right-(pt._offset+pt._length);au>0&&(to.xr=1,to.r=au);var Gu=pt._offset-hs.left;Gu>0&&(to.xl=0,to.l=Gu)}}else if(aa==="l"?(pt._depth=Math.max(hs.height>0?po-hs.left:0,zs),to[aa]=pt._depth-rl):(pt._depth=Math.max(hs.height>0?hs.right-po:0,zs),to[aa]=pt._depth+rl,Bl.reverse()),hs.height>0){var Fc=hs.bottom-(pt._offset+pt._length);Fc>0&&(to.yb=0,to.b=Fc);var Qu=pt._offset-hs.top;Qu>0&&(to.yt=1,to.t=Qu)}to[mi]=pt.anchor==="free"?pt.position:pt._anchorAxis.domain[Bl[0]],pt.title.text!==Pr._dfltTitle[ci]&&(to[aa]+=Pi(pt)+(pt.title.standoff||0)),pt.mirror&&pt.anchor!=="free"&&(tu={x:0,y:0,r:0,l:0,t:0,b:0},tu[Ho]=pt.linewidth,pt.mirror&&pt.mirror!==!0&&(tu[Ho]+=zs),pt.mirror===!0||pt.mirror==="ticks"?tu[mi]=pt._anchorAxis.domain[Bl[1]]:(pt.mirror==="all"||pt.mirror==="allticks")&&(tu[mi]=[pt._counterDomainMin,pt._counterDomainMax][Bl[1]]))}El&&(Ju=S.getComponentMethod("rangeslider","autoMarginOpts")(vt,pt)),typeof pt.automargin=="string"&&(et(to,pt.automargin),et(tu,pt.automargin)),A.autoMargin(vt,vn(pt),to),A.autoMargin(vt,Xt(pt),tu),A.autoMargin(vt,Dt(pt),Ju)}),e.syncOrAsync(ks)}};function et(vt,pt){if(vt){var kr=Object.keys(W).reduce(function(Cr,wr){return pt.indexOf(wr)!==-1&&W[wr].forEach(function(Ar){Cr[Ar]=1}),Cr},{});Object.keys(vt).forEach(function(Cr){kr[Cr]||(Cr.length===1?vt[Cr]=0:delete vt[Cr])})}}function ht(vt,pt){var kr=[],Cr,wr=function(Ar,Er){var Br=Ar.xbnd[Er];Br!==null&&kr.push(e.extendFlat({},Ar,{x:Br}))};if(pt.length){for(Cr=0;Crvt.range[1],Br=vt.ticklabelposition&&vt.ticklabelposition.indexOf("inside")!==-1,Pr=!Br;if(kr){var Qr=Er?-1:1;kr=kr*Qr}if(Cr){var ci=vt.side,mi=Br&&(ci==="top"||ci==="left")||Pr&&(ci==="bottom"||ci==="right")?1:-1;Cr=Cr*mi}return vt._id.charAt(0)==="x"?function(Et){return t(wr+vt._offset+vt.l2p(Wt(Et))+kr,Ar+Cr)}:function(Et){return t(Ar+Cr,wr+vt._offset+vt.l2p(Wt(Et))+kr)}};function Wt(vt){return vt.periodX!==void 0?vt.periodX:vt.x}function $t(vt){var pt=vt.ticklabelposition||"",kr=function(ar){return pt.indexOf(ar)!==-1},Cr=kr("top"),wr=kr("left"),Ar=kr("right"),Er=kr("bottom"),Br=kr("inside"),Pr=Er||wr||Cr||Ar;if(!Pr&&!Br)return[0,0];var Qr=vt.side,ci=Pr?(vt.tickwidth||0)/2:0,mi=J,Et=vt.tickfont?vt.tickfont.size:12;return(Er||Cr)&&(ci+=Et*se,mi+=(vt.linewidth||0)/2),(wr||Ar)&&(ci+=(vt.linewidth||0)/2,mi+=J),Br&&Qr==="top"&&(mi-=Et*(1-se)),(wr||Cr)&&(ci=-ci),(Qr==="bottom"||Qr==="right")&&(mi=-mi),[Pr?ci:0,Br?mi:0]}$.makeTickPath=function(vt,pt,kr,Cr){Cr||(Cr={});var wr=Cr.minor;if(wr&&!vt.minor)return"";var Ar=Cr.len!==void 0?Cr.len:wr?vt.minor.ticklen:vt.ticklen,Er=vt._id.charAt(0),Br=(vt.linewidth||1)/2;return Er==="x"?"M0,"+(pt+Br*kr)+"v"+Ar*kr:"M"+(pt+Br*kr)+",0h"+Ar*kr},$.makeLabelFns=function(vt,pt,kr){var Cr=vt.ticklabelposition||"",wr=function(Ga){return Cr.indexOf(Ga)!==-1},Ar=wr("top"),Er=wr("left"),Br=wr("right"),Pr=wr("bottom"),Qr=Pr||Er||Ar||Br,ci=wr("inside"),mi=Cr==="inside"&&vt.ticks==="inside"||!ci&&vt.ticks==="outside"&&vt.tickson!=="boundaries",Et=0,ar=0,gr=mi?vt.ticklen:0;if(ci?gr*=-1:Qr&&(gr=0),mi&&(Et+=gr,kr)){var ti=e.deg2rad(kr);Et=gr*Math.cos(ti)+1,ar=gr*Math.sin(ti)}vt.showticklabels&&(mi||vt.showline)&&(Et+=.2*vt.tickfont.size),Et+=(vt.linewidth||1)/2*(ci?-1:1);var wi={labelStandoff:Et,labelShift:ar},Gi,Fi,xi,Ii,Bn=0,hn=vt.side,ba=vt._id.charAt(0),Aa=vt.tickangle,Va;if(ba==="x")Va=!ci&&hn==="bottom"||ci&&hn==="top",Ii=Va?1:-1,ci&&(Ii*=-1),Gi=ar*Ii,Fi=pt+Et*Ii,xi=Va?1:-.2,Math.abs(Aa)===90&&(ci?xi+=le:Aa===-90&&hn==="bottom"?xi=se:Aa===90&&hn==="top"?xi=le:xi=.5,Bn=le/2*(Aa/90)),wi.xFn=function(Ga){return Ga.dx+Gi+Bn*Ga.fontSize},wi.yFn=function(Ga){return Ga.dy+Fi+Ga.fontSize*xi},wi.anchorFn=function(Ga,Yo){if(Qr){if(Er)return"end";if(Br)return"start"}return!x(Yo)||Yo===0||Yo===180?"middle":Yo*Ii<0!==ci?"end":"start"},wi.heightFn=function(Ga,Yo,da){return Yo<-60||Yo>60?-.5*da:vt.side==="top"!==ci?-da:0};else if(ba==="y"){if(Va=!ci&&hn==="left"||ci&&hn==="right",Ii=Va?1:-1,ci&&(Ii*=-1),Gi=Et,Fi=ar*Ii,xi=0,!ci&&Math.abs(Aa)===90&&(Aa===-90&&hn==="left"||Aa===90&&hn==="right"?xi=se:xi=.5),ci){var Qa=x(Aa)?+Aa:0;if(Qa!==0){var yo=e.deg2rad(Qa);Bn=Math.abs(Math.sin(yo))*se*Ii,xi=0}}wi.xFn=function(Ga){return Ga.dx+pt-(Gi+Ga.fontSize*xi)*Ii+Bn*Ga.fontSize},wi.yFn=function(Ga){return Ga.dy+Fi+Ga.fontSize*le},wi.anchorFn=function(Ga,Yo){return x(Yo)&&Math.abs(Yo)===90?"middle":Va?"end":"start"},wi.heightFn=function(Ga,Yo,da){return vt.side==="right"&&(Yo*=-1),Yo<-30?-da:Yo<30?-.5*da:0}}return wi};function lr(vt){return[vt.text,vt.x,vt.axInfo,vt.font,vt.fontSize,vt.fontColor].join("_")}$.drawTicks=function(vt,pt,kr){kr=kr||{};var Cr=pt._id+"tick",wr=[].concat(pt.minor&&pt.minor.ticks?kr.vals.filter(function(Er){return Er.minor&&!Er.noTick}):[]).concat(pt.ticks?kr.vals.filter(function(Er){return!Er.minor&&!Er.noTick}):[]),Ar=kr.layer.selectAll("path."+Cr).data(wr,lr);Ar.exit().remove(),Ar.enter().append("path").classed(Cr,1).classed("ticks",1).classed("crisp",kr.crisp!==!1).each(function(Er){return i.stroke(g.select(this),Er.minor?pt.minor.tickcolor:pt.tickcolor)}).style("stroke-width",function(Er){return n.crispRound(vt,Er.minor?pt.minor.tickwidth:pt.tickwidth,1)+"px"}).attr("d",kr.path).style("display",null),qi(pt,[N]),Ar.attr("transform",kr.transFn)},$.drawGrid=function(vt,pt,kr){if(kr=kr||{},pt.tickmode!=="sync"){var Cr=pt._id+"grid",wr=pt.minor&&pt.minor.showgrid,Ar=wr?kr.vals.filter(function(Gi){return Gi.minor}):[],Er=pt.showgrid?kr.vals.filter(function(Gi){return!Gi.minor}):[],Br=kr.counterAxis;if(Br&&$.shouldShowZeroLine(vt,pt,Br))for(var Pr=pt.tickmode==="array",Qr=0;Qr=0;gr--){var ti=gr?Et:ar;if(ti){var wi=ti.selectAll("path."+Cr).data(gr?Er:Ar,lr);wi.exit().remove(),wi.enter().append("path").classed(Cr,1).classed("crisp",kr.crisp!==!1),wi.attr("transform",kr.transFn).attr("d",kr.path).each(function(Gi){return i.stroke(g.select(this),Gi.minor?pt.minor.gridcolor:pt.gridcolor||"#ddd")}).style("stroke-dasharray",function(Gi){return n.dashStyle(Gi.minor?pt.minor.griddash:pt.griddash,Gi.minor?pt.minor.gridwidth:pt.gridwidth)}).style("stroke-width",function(Gi){return(Gi.minor?mi:pt._gw)+"px"}).style("display",null),typeof kr.path=="function"&&wi.attr("d",kr.path)}}qi(pt,[B,I])}},$.drawZeroLine=function(vt,pt,kr){kr=kr||kr;var Cr=pt._id+"zl",wr=$.shouldShowZeroLine(vt,pt,kr.counterAxis),Ar=kr.layer.selectAll("path."+Cr).data(wr?[{x:0,id:pt._id}]:[]);Ar.exit().remove(),Ar.enter().append("path").classed(Cr,1).classed("zl",1).classed("crisp",kr.crisp!==!1).each(function(){kr.layer.selectAll("path").sort(function(Er,Br){return ae(Er.id,Br.id)})}),Ar.attr("transform",kr.transFn).attr("d",kr.path).call(i.stroke,pt.zerolinecolor||i.defaultLine).style("stroke-width",n.crispRound(vt,pt.zerolinewidth,pt._gw||1)+"px").style("display",null),qi(pt,[O])},$.drawLabels=function(vt,pt,kr){kr=kr||{};var Cr=vt._fullLayout,wr=pt._id,Ar=kr.cls||wr+"tick",Er=kr.vals.filter(function(Xa){return Xa.text}),Br=kr.labelFns,Pr=kr.secondary?0:pt.tickangle,Qr=(pt._prevTickAngles||{})[Ar],ci=kr.layer.selectAll("g."+Ar).data(pt.showticklabels?Er:[],lr),mi=[];ci.enter().append("g").classed(Ar,1).append("text").attr("text-anchor","middle").each(function(Xa){var Bo=g.select(this),Za=vt._promises.length;Bo.call(r.positionText,Br.xFn(Xa),Br.yFn(Xa)).call(n.font,{family:Xa.font,size:Xa.fontSize,color:Xa.fontColor,weight:Xa.fontWeight,style:Xa.fontStyle,variant:Xa.fontVariant,textcase:Xa.fontTextcase,lineposition:Xa.fontLineposition,shadow:Xa.fontShadow}).text(Xa.text).call(r.convertToTspans,vt),vt._promises[Za]?mi.push(vt._promises.pop().then(function(){Et(Bo,Pr)})):Et(Bo,Pr)}),qi(pt,[U]),ci.exit().remove(),kr.repositionOnUpdate&&ci.each(function(Xa){g.select(this).select("text").call(r.positionText,Br.xFn(Xa),Br.yFn(Xa))});function Et(Xa,Bo){Xa.each(function(Za){var Qo=g.select(this),ss=Qo.select(".text-math-group"),gs=Br.anchorFn(Za,Bo),vo=kr.transFn.call(Qo.node(),Za)+(x(Bo)&&+Bo!=0?" rotate("+Bo+","+Br.xFn(Za)+","+(Br.yFn(Za)-Za.fontSize/2)+")":""),zo=r.lineCount(Qo),Ds=fe*Za.fontSize,Hs=Br.heightFn(Za,x(Bo)?+Bo:0,(zo-1)*Ds);if(Hs&&(vo+=t(0,Hs)),ss.empty()){var Zs=Qo.select("text");Zs.attr({transform:vo,"text-anchor":gs}),Zs.style("opacity",1),pt._adjustTickLabelsOverflow&&pt._adjustTickLabelsOverflow()}else{var ps=n.bBox(ss.node()).width,bn=ps*{end:-.5,start:.5}[gs];ss.attr("transform",vo+t(bn,0))}})}pt._adjustTickLabelsOverflow=function(){var Xa=pt.ticklabeloverflow;if(!(!Xa||Xa==="allow")){var Bo=Xa.indexOf("hide")!==-1,Za=pt._id.charAt(0)==="x",Qo=0,ss=Za?vt._fullLayout.width:vt._fullLayout.height;if(Xa.indexOf("domain")!==-1){var gs=e.simpleMap(pt.range,pt.r2l);Qo=pt.l2p(gs[0])+pt._offset,ss=pt.l2p(gs[1])+pt._offset}var vo=Math.min(Qo,ss),zo=Math.max(Qo,ss),Ds=pt.side,Hs=1/0,Zs=-1/0;ci.each(function(_l){var Ys=g.select(this),ko=Ys.select(".text-math-group");if(ko.empty()){var Js=n.bBox(Ys.node()),ks=0;Za?(Js.right>zo||Js.leftzo||Js.top+(pt.tickangle?0:_l.fontSize/4)pt["_visibleLabelMin_"+gs._id]?_l.style("display","none"):zo.K==="tick"&&!vo&&_l.style("display",null)})})})})},Et(ci,Qr+1?Qr:Pr);function ar(){return mi.length&&Promise.all(mi)}var gr=null;function ti(){if(Et(ci,Pr),Er.length&&pt.autotickangles&&(pt.type!=="log"||String(pt.dtick).charAt(0)!=="D")){gr=pt.autotickangles[0];var Xa=0,Bo=[],Za,Qo=1;ci.each(function(hs){Xa=Math.max(Xa,hs.fontSize);var to=pt.l2p(hs.x),tu=Zi(this),Ju=n.bBox(tu.node());Qo=Math.max(Qo,r.lineCount(tu)),Bo.push({top:0,bottom:10,height:10,left:to-Ju.width/2,right:to+Ju.width/2+2,width:Ju.width+2})});var ss=(pt.tickson==="boundaries"||pt.showdividers)&&!kr.secondary,gs=Er.length,vo=Math.abs((Er[gs-1].x-Er[0].x)*pt._m)/(gs-1),zo=ss?vo/2:vo,Ds=ss?pt.ticklen:Xa*1.25*Qo,Hs=Math.sqrt(Math.pow(zo,2)+Math.pow(Ds,2)),Zs=zo/Hs,ps=pt.autotickangles.map(function(hs){return hs*Math.PI/180}),bn=ps.find(function(hs){return Math.abs(Math.cos(hs))<=Zs});bn===void 0&&(bn=ps.reduce(function(hs,to){return Math.abs(Math.cos(hs))vs*da&&(yo=da,Aa[ba]=Va[ba]=Ga[ba])}var es=Math.abs(yo-Qa);es-Ii>0?(es-=Ii,Ii*=1+Ii/es):Ii=0,pt._id.charAt(0)!=="y"&&(Ii=-Ii),Aa[hn]=Fi.p2r(Fi.r2p(Va[hn])+Bn*Ii),Fi.autorange==="min"||Fi.autorange==="max reversed"?(Aa[0]=null,Fi._rangeInitial0=void 0,Fi._rangeInitial1=void 0):(Fi.autorange==="max"||Fi.autorange==="min reversed")&&(Aa[1]=null,Fi._rangeInitial0=void 0,Fi._rangeInitial1=void 0),Cr._insideTickLabelsUpdaterange[Fi._name+".range"]=Aa}var bs=e.syncOrAsync(wi);return bs&&bs.then&&vt._promises.push(bs),bs};function fi(vt,pt,kr){var Cr=pt._id+"divider",wr=kr.vals,Ar=kr.layer.selectAll("path."+Cr).data(wr,lr);Ar.exit().remove(),Ar.enter().insert("path",":first-child").classed(Cr,1).classed("crisp",1).call(i.stroke,pt.dividercolor).style("stroke-width",n.crispRound(vt,pt.dividerwidth,1)+"px"),Ar.attr("transform",kr.transFn).attr("d",kr.path)}$.getPxPosition=function(vt,pt){var kr=vt._fullLayout._size,Cr=pt._id.charAt(0),wr=pt.side,Ar;if(pt.anchor!=="free"?Ar=pt._anchorAxis:Cr==="x"?Ar={_offset:kr.t+(1-(pt.position||0))*kr.h,_length:0}:Cr==="y"&&(Ar={_offset:kr.l+(pt.position||0)*kr.w+pt._shift,_length:0}),wr==="top"||wr==="left")return Ar._offset;if(wr==="bottom"||wr==="right")return Ar._offset+Ar._length};function Pi(vt){var pt=vt.title.font.size,kr=(vt.title.text.match(r.BR_TAG_ALL)||[]).length;return vt.title.hasOwnProperty("standoff")?pt*(se+kr*fe):kr?pt*(kr+1)*fe:pt}function Bi(vt,pt){var kr=vt._fullLayout,Cr=pt._id,wr=Cr.charAt(0),Ar=pt.title.font.size,Er,Br=(pt.title.text.match(r.BR_TAG_ALL)||[]).length;if(pt.title.hasOwnProperty("standoff"))pt.side==="bottom"||pt.side==="right"?Er=pt._depth+pt.title.standoff+Ar*se:(pt.side==="top"||pt.side==="left")&&(Er=pt._depth+pt.title.standoff+Ar*(le+Br*fe));else{var Pr=Di(pt);if(pt.type==="multicategory")Er=pt._depth;else{var Qr=1.5*Ar;Pr&&(Qr=.5*Ar,pt.ticks==="outside"&&(Qr+=pt.ticklen)),Er=10+Qr+(pt.linewidth?pt.linewidth-1:0)}Pr||(wr==="x"?Er+=pt.side==="top"?Ar*(pt.showticklabels?1:0):Ar*(pt.showticklabels?1.5:.5):Er+=pt.side==="right"?Ar*(pt.showticklabels?1:.5):Ar*(pt.showticklabels?.5:0))}var ci=$.getPxPosition(vt,pt),mi,Et,ar;wr==="x"?(Et=pt._offset+pt._length/2,ar=pt.side==="top"?ci-Er:ci+Er):(ar=pt._offset+pt._length/2,Et=pt.side==="right"?ci+Er:ci-Er,mi={rotate:"-90",offset:0});var gr;if(pt.type!=="multicategory"){var ti=pt._selections[pt._id+"tick"];if(gr={selection:ti,side:pt.side},ti&&ti.node()&&ti.node().parentNode){var wi=n.getTranslate(ti.node().parentNode);gr.offsetLeft=wi.x,gr.offsetTop=wi.y}pt.title.hasOwnProperty("standoff")&&(gr.pad=0)}return pt._titleStandoff=Er,o.draw(vt,Cr+"title",{propContainer:pt,propName:pt._name+".title.text",placeholder:kr._dfltTitle[wr],avoid:gr,transform:mi,attributes:{x:Et,y:ar,"text-anchor":"middle"}})}$.shouldShowZeroLine=function(vt,pt,kr){var Cr=e.simpleMap(pt.range,pt.r2l);return Cr[0]*Cr[1]<=0&&pt.zeroline&&(pt.type==="linear"||pt.type==="-")&&!(pt.rangebreaks&&pt.maskBreaks(0)===F)&&(zi(pt,0)||!en(vt,pt,kr,Cr)||Ri(vt,pt))},$.clipEnds=function(vt,pt){return pt.filter(function(kr){return zi(vt,kr.x)})};function zi(vt,pt){var kr=vt.l2p(pt);return kr>1&&kr1)for(wr=1;wr=wr.min&&vt=L:/%L/.test(pt)?vt>=P:/%[SX]/.test(pt)?vt>=f:/%M/.test(pt)?vt>=y:/%[HI]/.test(pt)?vt>=u:/%p/.test(pt)?vt>=v:/%[Aadejuwx]/.test(pt)?vt>=b:/%[UVW]/.test(pt)?vt>=m:/%[Bbm]/.test(pt)?vt>=E:/%[q]/.test(pt)?vt>=_:/%[Yy]/.test(pt)?vt>=d:!0}}}),Ww=Le({"src/plots/cartesian/autorange_options_defaults.js"(Z,H){"use strict";H.exports=function(x,A,S){var e,t;if(S){var r=A==="reversed"||A==="min reversed"||A==="max reversed";e=S[r?1:0],t=S[r?0:1]}var o=x("autorangeoptions.minallowed",t===null?e:void 0),i=x("autorangeoptions.maxallowed",e===null?t:void 0);o===void 0&&x("autorangeoptions.clipmin"),i===void 0&&x("autorangeoptions.clipmax"),x("autorangeoptions.include")}}}),Xw=Le({"src/plots/cartesian/range_defaults.js"(Z,H){"use strict";var g=Ww();H.exports=function(A,S,e,t){var r=S._template||{},o=S.type||r.type||"-";e("minallowed"),e("maxallowed");var i=e("range");if(!i){var n;!t.noInsiderange&&o!=="log"&&(n=e("insiderange"),n&&(n[0]===null||n[1]===null)&&(S.insiderange=!1,n=void 0),n&&(i=e("range",n)))}var a=S.getAutorangeDflt(i,t),s=e("autorange",a),c;i&&(i[0]===null&&i[1]===null||(i[0]===null||i[1]===null)&&(s==="reversed"||s===!0)||i[0]!==null&&(s==="min"||s==="max reversed")||i[1]!==null&&(s==="max"||s==="min reversed"))&&(i=void 0,delete S.range,S.autorange=!0,c=!0),c||(a=S.getAutorangeDflt(i,t),s=e("autorange",a)),s&&(g(e,s,i),(o==="linear"||o==="-")&&e("rangemode")),S.cleanRange()}}}),CE=Le({"node_modules/mouse-event-offset/index.js"(Z,H){var g={left:0,top:0};H.exports=x;function x(S,e,t){e=e||S.currentTarget||S.srcElement,Array.isArray(t)||(t=[0,0]);var r=S.clientX||0,o=S.clientY||0,i=A(e);return t[0]=r-i.left,t[1]=o-i.top,t}function A(S){return S===window||S===document||S===document.body?g:S.getBoundingClientRect()}}}),b_=Le({"node_modules/has-passive-events/index.js"(Z,H){"use strict";var g=Ow();function x(){var A=!1;try{var S=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",null,S),window.removeEventListener("test",null,S)}catch{A=!1}return A}H.exports=g&&x()}}),LE=Le({"src/components/dragelement/align.js"(Z,H){"use strict";H.exports=function(x,A,S,e,t){var r=(x-S)/(e-S),o=r+A/(e-S),i=(r+o)/2;return t==="left"||t==="bottom"?r:t==="center"||t==="middle"?i:t==="right"||t==="top"?o:r<2/3-i?r:o>4/3-i?o:i}}}),PE=Le({"src/components/dragelement/cursor.js"(Z,H){"use strict";var g=ni(),x=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];H.exports=function(S,e,t,r){return t==="left"?S=0:t==="center"?S=1:t==="right"?S=2:S=g.constrain(Math.floor(S*3),0,2),r==="bottom"?e=0:r==="middle"?e=1:r==="top"?e=2:e=g.constrain(Math.floor(e*3),0,2),x[e][S]}}}),IE=Le({"src/components/dragelement/unhover.js"(Z,H){"use strict";var g=Wg(),x=y_(),A=iy().getGraphDiv,S=Bm(),e=H.exports={};e.wrapped=function(t,r,o){t=A(t),t._fullLayout&&x.clear(t._fullLayout._uid+S.HOVERID),e.raw(t,r,o)},e.raw=function(r,o){var i=r._fullLayout,n=r._hoverdata;o||(o={}),!(o.target&&!r._dragged&&g.triggerHandler(r,"plotly_beforehover",o)===!1)&&(i._hoverlayer.selectAll("g").remove(),i._hoverlayer.selectAll("line").remove(),i._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,o.target&&n&&r.emit("plotly_unhover",{event:o,points:n}))}}}),Kh=Le({"src/components/dragelement/index.js"(Z,H){"use strict";var g=CE(),x=Nw(),A=b_(),S=ni().removeElement,e=ch(),t=H.exports={};t.align=LE(),t.getCursor=PE();var r=IE();t.unhover=r.wrapped,t.unhoverRaw=r.raw,t.init=function(a){var s=a.gd,c=1,h=s._context.doubleClickDelay,p=a.element,d,T,l,_,w,M,E,m;s._mouseDownTime||(s._mouseDownTime=0),p.style.pointerEvents="all",p.onmousedown=u,A?(p._ontouchstart&&p.removeEventListener("touchstart",p._ontouchstart),p._ontouchstart=u,p.addEventListener("touchstart",u,{passive:!1})):p.ontouchstart=u;function b(P,L,z){return Math.abs(P)"u"&&typeof P.clientY>"u"&&(P.clientX=d,P.clientY=T),l=new Date().getTime(),l-s._mouseDownTimeh&&(c=Math.max(c-1,1)),s._dragged)a.doneFn&&a.doneFn();else{var L;M.target===E?L=M:(L={target:E,srcElement:E,toElement:E},Object.keys(M).concat(Object.keys(M.__proto__)).forEach(z=>{var F=M[z];!L[z]&&typeof F!="function"&&(L[z]=F)})),a.clickFn&&a.clickFn(c,L),m||E.dispatchEvent(new MouseEvent("click",P))}s._dragging=!1,s._dragged=!1}};function o(){var n=document.createElement("div");n.className="dragcover";var a=n.style;return a.position="fixed",a.left=0,a.right=0,a.top=0,a.bottom=0,a.zIndex=999999999,a.background="none",document.body.appendChild(n),n}t.coverSlip=o;function i(n){return g(n.changedTouches?n.changedTouches[0]:n,document.body)}}}),fv=Le({"src/lib/setcursor.js"(Z,H){"use strict";H.exports=function(x,A){(x.attr("class")||"").split(" ").forEach(function(S){S.indexOf("cursor-")===0&&x.classed(S,!1)}),A&&x.classed("cursor-"+A,!0)}}}),RE=Le({"src/lib/override_cursor.js"(Z,H){"use strict";var g=fv(),x="data-savedcursor",A="!!";H.exports=function(e,t){var r=e.attr(x);if(t){if(!r){for(var o=(e.attr("class")||"").split(" "),i=0;i(i==="legend"?1:0));if(P===!1&&(a[i]=void 0),!(P===!1&&!c.uirevision)&&(p("uirevision",a.uirevision),P!==!1)){p("borderwidth");var L=p("orientation"),z=p("yref"),F=p("xref"),O=L==="h",B=z==="paper",I=F==="paper",N,U,W,Q="left";O?(N=0,g.getComponentMethod("rangeslider","isVisible")(n.xaxis)?B?(U=1.1,W="bottom"):(U=1,W="top"):B?(U=-.1,W="top"):(U=0,W="bottom")):(U=1,W="auto",I?N=1.02:(N=1,Q="right")),x.coerce(c,h,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:N}},"x"),x.coerce(c,h,{y:{valType:"number",editType:"legend",min:B?-2:0,max:B?3:1,dflt:U}},"y"),p("traceorder",b),r.isGrouped(a[i])&&p("tracegroupgap"),p("entrywidth"),p("entrywidthmode"),p("indentation"),p("itemsizing"),p("itemwidth"),p("itemclick"),p("itemdoubleclick"),p("groupclick"),p("xanchor",Q),p("yanchor",W),p("valign"),x.noneOrAll(c,h,["x","y"]);var le=p("title.text");if(le){p("title.side",O?"left":"top");var se=x.extendFlat({},d,{size:x.bigFont(d.size)});x.coerceFont(p,"title.font",se)}}}}H.exports=function(n,a,s){var c,h=s.slice(),p=a.shapes;if(p)for(c=0;cP&&(f=P)}u[d][0]._groupMinRank=f,u[d][0]._preGroupSort=d}var L=function(N,U){return N[0]._groupMinRank-U[0]._groupMinRank||N[0]._preGroupSort-U[0]._preGroupSort},z=function(N,U){return N.trace.legendrank-U.trace.legendrank||N._preSort-U._preSort};for(u.forEach(function(N,U){N[0]._preGroupSort=U}),u.sort(L),d=0;d0)re=J.width;else return 0;return v?X:Math.min(re,$)};M.each(function(G){var J=g.select(this),$=A.ensureSingle(J,"g","layers");$.style("opacity",G[0].trace.opacity);var X=m.indentation,re=m.valign,ae=G[0].lineHeight,j=G[0].height;if(re==="middle"&&X===0||!ae||!j)$.attr("transform",null);else{var ee={top:1,bottom:-1}[re],ne=ee*(.5*(ae-j+3))||0,ce=m.indentation;$.attr("transform",S(ce,ne))}var _e=$.selectAll("g.legendfill").data([G]);_e.enter().append("g").classed("legendfill",!0);var we=$.selectAll("g.legendlines").data([G]);we.enter().append("g").classed("legendlines",!0);var Oe=$.selectAll("g.legendsymbols").data([G]);Oe.enter().append("g").classed("legendsymbols",!0),Oe.selectAll("g.legendpoints").data([G]).enter().append("g").classed("legendpoints",!0)}).each(fe).each(F).each(B).each(O).each(N).each(le).each(Q).each(L).each(z).each(U).each(W);function L(G){var J=l(G),$=J.showFill,X=J.showLine,re=J.showGradientLine,ae=J.showGradientFill,j=J.anyFill,ee=J.anyLine,ne=G[0],ce=ne.trace,_e,we,Oe=r(ce),Ie=Oe.colorscale,Xe=Oe.reversescale,tt=function(ze){if(ze.size())if($)e.fillGroupStyle(ze,E,!0);else{var Qe="legendfill-"+ce.uid;e.gradient(ze,E,Qe,T(Xe),Ie,"fill")}},rt=function(ze){if(ze.size()){var Qe="legendline-"+ce.uid;e.lineGroupStyle(ze),e.gradient(ze,E,Qe,T(Xe),Ie,"stroke")}},Je=o.hasMarkers(ce)||!j?"M5,0":ee?"M5,-2":"M5,-3",ot=g.select(this),Me=ot.select(".legendfill").selectAll("path").data($||ae?[G]:[]);if(Me.enter().append("path").classed("js-fill",!0),Me.exit().remove(),Me.attr("d",Je+"h"+u+"v6h-"+u+"z").call(tt),X||re){var pe=P(void 0,ce.line,p,c);we=A.minExtend(ce,{line:{width:pe}}),_e=[A.minExtend(ne,{trace:we})]}var ue=ot.select(".legendlines").selectAll("path").data(X||re?[_e]:[]);ue.enter().append("path").classed("js-line",!0),ue.exit().remove(),ue.attr("d",Je+(re?"l"+u+",0.0001":"h"+u)).call(X?e.lineGroupStyle:rt)}function z(G){var J=l(G),$=J.anyFill,X=J.anyLine,re=J.showLine,ae=J.showMarker,j=G[0],ee=j.trace,ne=!ae&&!X&&!$&&o.hasText(ee),ce,_e;function we(Me,pe,ue,ze){var Qe=A.nestedProperty(ee,Me).get(),it=A.isArrayOrTypedArray(Qe)&&pe?pe(Qe):Qe;if(v&&it&&ze!==void 0&&(it=ze),ue){if(itue[1])return ue[1]}return it}function Oe(Me){return j._distinct&&j.index&&Me[j.index]?Me[j.index]:Me[0]}if(ae||ne||re){var Ie={},Xe={};if(ae){Ie.mc=we("marker.color",Oe),Ie.mx=we("marker.symbol",Oe),Ie.mo=we("marker.opacity",A.mean,[.2,1]),Ie.mlc=we("marker.line.color",Oe),Ie.mlw=we("marker.line.width",A.mean,[0,5],h),Xe.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var tt=we("marker.size",A.mean,[2,16],s);Ie.ms=tt,Xe.marker.size=tt}re&&(Xe.line={width:we("line.width",Oe,[0,10],c)}),ne&&(Ie.tx="Aa",Ie.tp=we("textposition",Oe),Ie.ts=10,Ie.tc=we("textfont.color",Oe),Ie.tf=we("textfont.family",Oe),Ie.tw=we("textfont.weight",Oe),Ie.ty=we("textfont.style",Oe),Ie.tv=we("textfont.variant",Oe),Ie.tC=we("textfont.textcase",Oe),Ie.tE=we("textfont.lineposition",Oe),Ie.tS=we("textfont.shadow",Oe)),ce=[A.minExtend(j,Ie)],_e=A.minExtend(ee,Xe),_e.selectedpoints=null,_e.texttemplate=null}var rt=g.select(this).select("g.legendpoints"),Je=rt.selectAll("path.scatterpts").data(ae?ce:[]);Je.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",f),Je.exit().remove(),Je.call(e.pointStyle,_e,E),ae&&(ce[0].mrc=3);var ot=rt.selectAll("g.pointtext").data(ne?ce:[]);ot.enter().append("g").classed("pointtext",!0).append("text").attr("transform",f),ot.exit().remove(),ot.selectAll("text").call(e.textPointStyle,_e,E)}function F(G){var J=G[0].trace,$=J.type==="waterfall";if(G[0]._distinct&&$){var X=G[0].trace[G[0].dir].marker;return G[0].mc=X.color,G[0].mlw=X.line.width,G[0].mlc=X.line.color,I(G,this,"waterfall")}var re=[];J.visible&&$&&(re=G[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var ae=g.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(re);ae.enter().append("path").classed("legendwaterfall",!0).attr("transform",f).style("stroke-miterlimit",1),ae.exit().remove(),ae.each(function(j){var ee=g.select(this),ne=J[j[0]].marker,ce=P(void 0,ne.line,d,h);ee.attr("d",j[1]).style("stroke-width",ce+"px").call(t.fill,ne.color),ce&&ee.call(t.stroke,ne.line.color)})}function O(G){I(G,this)}function B(G){I(G,this,"funnel")}function I(G,J,$){var X=G[0].trace,re=X.marker||{},ae=re.line||{},j=re.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ee=$?X.visible&&X.type===$:x.traceIs(X,"bar"),ne=g.select(J).select("g.legendpoints").selectAll("path.legend"+$).data(ee?[G]:[]);ne.enter().append("path").classed("legend"+$,!0).attr("d",j).attr("transform",f),ne.exit().remove(),ne.each(function(ce){var _e=g.select(this),we=ce[0],Oe=P(we.mlw,re.line,d,h);_e.style("stroke-width",Oe+"px");var Ie=we.mcc;if(!m._inHover&&"mc"in we){var Xe=r(re),tt=Xe.mid;tt===void 0&&(tt=(Xe.max+Xe.min)/2),Ie=e.tryColorscale(re,"")(tt)}var rt=Ie||we.mc||re.color,Je=re.pattern,ot=Je&&e.getPatternAttr(Je.shape,0,"");if(ot){var Me=e.getPatternAttr(Je.bgcolor,0,null),pe=e.getPatternAttr(Je.fgcolor,0,null),ue=Je.fgopacity,ze=_(Je.size,8,10),Qe=_(Je.solidity,.5,1),it="legend-"+X.uid;_e.call(e.pattern,"legend",E,it,ot,ze,Qe,Ie,Je.fillmode,Me,pe,ue)}else _e.call(t.fill,rt);Oe&&t.stroke(_e,we.mlc||ae.color)})}function N(G){var J=G[0].trace,$=g.select(this).select("g.legendpoints").selectAll("path.legendbox").data(J.visible&&x.traceIs(J,"box-violin")?[G]:[]);$.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),$.exit().remove(),$.each(function(){var X=g.select(this);if((J.boxpoints==="all"||J.points==="all")&&t.opacity(J.fillcolor)===0&&t.opacity((J.line||{}).color)===0){var re=A.minExtend(J,{marker:{size:v?s:A.constrain(J.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});$.call(e.pointStyle,re,E)}else{var ae=P(void 0,J.line,d,h);X.style("stroke-width",ae+"px").call(t.fill,J.fillcolor),ae&&t.stroke(X,J.line.color)}})}function U(G){var J=G[0].trace,$=g.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(J.visible&&J.type==="candlestick"?[G,G]:[]);$.enter().append("path").classed("legendcandle",!0).attr("d",function(X,re){return re?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",f).style("stroke-miterlimit",1),$.exit().remove(),$.each(function(X,re){var ae=g.select(this),j=J[re?"increasing":"decreasing"],ee=P(void 0,j.line,d,h);ae.style("stroke-width",ee+"px").call(t.fill,j.fillcolor),ee&&t.stroke(ae,j.line.color)})}function W(G){var J=G[0].trace,$=g.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(J.visible&&J.type==="ohlc"?[G,G]:[]);$.enter().append("path").classed("legendohlc",!0).attr("d",function(X,re){return re?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",f).style("stroke-miterlimit",1),$.exit().remove(),$.each(function(X,re){var ae=g.select(this),j=J[re?"increasing":"decreasing"],ee=P(void 0,j.line,d,h);ae.style("fill","none").call(e.dashLine,j.line.dash,ee),ee&&t.stroke(ae,j.line.color)})}function Q(G){se(G,this,"pie")}function le(G){se(G,this,"funnelarea")}function se(G,J,$){var X=G[0],re=X.trace,ae=$?re.visible&&re.type===$:x.traceIs(re,$),j=g.select(J).select("g.legendpoints").selectAll("path.legend"+$).data(ae?[G]:[]);if(j.enter().append("path").classed("legend"+$,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),j.exit().remove(),j.size()){var ee=re.marker||{},ne=P(n(ee.line.width,X.pts),ee.line,d,h),ce="pieLike",_e=A.minExtend(re,{marker:{line:{width:ne}}},ce),we=A.minExtend(X,{trace:_e},ce);i(j,we,_e,E)}}function fe(G){var J=G[0].trace,$,X=[];if(J.visible)switch(J.type){case"histogram2d":case"heatmap":X=[["M-15,-2V4H15V-2Z"]],$=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":X=[["M-6,-6V6H6V-6Z"]],$=!0;break;case"densitymapbox":case"densitymap":X=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],$="radial";break;case"cone":X=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],$=!1;break;case"streamtube":X=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],$=!1;break;case"surface":X=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],$=!0;break;case"mesh3d":X=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],$=!1;break;case"volume":X=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],$=!0;break;case"isosurface":X=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],$=!1;break}var re=g.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(X);re.enter().append("path").classed("legend3dandfriends",!0).attr("transform",f).style("stroke-miterlimit",1),re.exit().remove(),re.each(function(ae,j){var ee=g.select(this),ne=r(J),ce=ne.colorscale,_e=ne.reversescale,we=function(tt){if(tt.size()){var rt="legendfill-"+J.uid;e.gradient(tt,E,rt,T(_e,$==="radial"),ce,"fill")}},Oe;if(ce){if(!$){var Xe=ce.length;Oe=j===0?ce[_e?Xe-1:0][1]:j===1?ce[_e?0:Xe-1][1]:ce[Math.floor((Xe-1)/2)][1]}}else{var Ie=J.vertexcolor||J.facecolor||J.color;Oe=A.isArrayOrTypedArray(Ie)?Ie[j]||Ie[0]:Ie}ee.attr("d",ae[0]),Oe?ee.call(t.fill,Oe):ee.call(we)})}};function T(w,M){var E=M?"radial":"horizontal";return E+(w?"":"reversed")}function l(w){var M=w[0].trace,E=M.contours,m=o.hasLines(M),b=o.hasMarkers(M),v=M.visible&&M.fill&&M.fill!=="none",u=!1,y=!1;if(E){var f=E.coloring;f==="lines"?u=!0:m=f==="none"||f==="heatmap"||E.showlines,E.type==="constraint"?v=E._operation!=="=":(f==="fill"||f==="heatmap")&&(y=!0)}return{showMarker:b,showLine:m,showFill:v,showGradientLine:u,showGradientFill:y,anyLine:m||u,anyFill:v||y}}function _(w,M,E){return w&&A.isArrayOrTypedArray(w)?M:w>E?E:w}}}),Jw=Le({"src/components/legend/draw.js"(Z,H){"use strict";var g=Ji(),x=ni(),A=Ku(),S=so(),e=Wg(),t=Kh(),r=rs(),o=$a(),i=$l(),n=DE(),a=Kw(),s=eh(),c=s.LINE_SPACING,h=s.FROM_TL,p=s.FROM_BR,d=zE(),T=$w(),l=w_(),_=1,w=/^legend[0-9]*$/;H.exports=function(U,W){if(W)E(U,W);else{var Q=U._fullLayout,le=Q._legends,se=Q._infolayer.selectAll('[class^="legend"]');se.each(function(){var $=g.select(this),X=$.attr("class"),re=X.split(" ")[0];re.match(w)&&le.indexOf(re)===-1&&$.remove()});for(var fe=0;fe1)}var ee=Q.hiddenlabels||[];if(!G&&(!Q.showlegend||!J.length))return fe.selectAll("."+le).remove(),Q._topdefs.select("#"+se).remove(),A.autoMargin(N,le);var ne=x.ensureSingle(fe,"g",le,function(Je){G||Je.attr("pointer-events","all")}),ce=x.ensureSingleById(Q._topdefs,"clipPath",se,function(Je){Je.append("rect")}),_e=x.ensureSingle(ne,"rect","bg",function(Je){Je.attr("shape-rendering","crispEdges")});_e.call(o.stroke,W.bordercolor).call(o.fill,W.bgcolor).style("stroke-width",W.borderwidth+"px");var we=x.ensureSingle(ne,"g","scrollbox"),Oe=W.title;W._titleWidth=0,W._titleHeight=0;var Ie;Oe.text?(Ie=x.ensureSingle(we,"text",le+"titletext"),Ie.attr("text-anchor","start").call(r.font,Oe.font).text(Oe.text),f(Ie,we,N,W,_)):we.selectAll("."+le+"titletext").remove();var Xe=x.ensureSingle(ne,"rect","scrollbar",function(Je){Je.attr(a.scrollBarEnterAttrs).call(o.fill,a.scrollBarColor)}),tt=we.selectAll("g.groups").data(J);tt.enter().append("g").attr("class","groups"),tt.exit().remove();var rt=tt.selectAll("g.traces").data(x.identity);rt.enter().append("g").attr("class","traces"),rt.exit().remove(),rt.style("opacity",function(Je){var ot=Je[0].trace;return S.traceIs(ot,"pie-like")?ee.indexOf(Je[0].label)!==-1?.5:1:ot.visible==="legendonly"?.5:1}).each(function(){g.select(this).call(v,N,W)}).call(T,N,W).each(function(){G||g.select(this).call(y,N,le)}),x.syncOrAsync([A.previousPromises,function(){return z(N,tt,rt,W)},function(){var Je=Q._size,ot=W.borderwidth,Me=W.xref==="paper",pe=W.yref==="paper";if(Oe.text&&M(Ie,W,ot),!G){var ue,ze;Me?ue=Je.l+Je.w*W.x-h[O(W)]*W._width:ue=Q.width*W.x-h[O(W)]*W._width,pe?ze=Je.t+Je.h*(1-W.y)-h[B(W)]*W._effHeight:ze=Q.height*(1-W.y)-h[B(W)]*W._effHeight;var Qe=F(N,le,ue,ze);if(Qe)return;if(Q.margin.autoexpand){var it=ue,$e=ze;ue=Me?x.constrain(ue,0,Q.width-W._width):it,ze=pe?x.constrain(ze,0,Q.height-W._effHeight):$e,ue!==it&&x.log("Constrain "+le+".x to make legend fit inside graph"),ze!==$e&&x.log("Constrain "+le+".y to make legend fit inside graph")}r.setTranslate(ne,ue,ze)}if(Xe.on(".drag",null),ne.on("wheel",null),G||W._height<=W._maxHeight||N._context.staticPlot){var kt=W._effHeight;G&&(kt=W._height),_e.attr({width:W._width-ot,height:kt-ot,x:ot/2,y:ot/2}),r.setTranslate(we,0,0),ce.select("rect").attr({width:W._width-2*ot,height:kt-2*ot,x:ot,y:ot}),r.setClipUrl(we,se,N),r.setRect(Xe,0,0,0,0),delete W._scrollY}else{var Mt=Math.max(a.scrollBarMinHeight,W._effHeight*W._effHeight/W._height),Bt=W._effHeight-Mt-2*a.scrollBarMargin,jt=W._height-W._effHeight,cr=Bt/jt,nr=Math.min(W._scrollY||0,jt);_e.attr({width:W._width-2*ot+a.scrollBarWidth+a.scrollBarMargin,height:W._effHeight-ot,x:ot/2,y:ot/2}),ce.select("rect").attr({width:W._width-2*ot+a.scrollBarWidth+a.scrollBarMargin,height:W._effHeight-2*ot,x:ot,y:ot+nr}),r.setClipUrl(we,se,N),Se(nr,Mt,cr),ne.on("wheel",function(){nr=x.constrain(W._scrollY+g.event.deltaY/Bt*jt,0,jt),Se(nr,Mt,cr),nr!==0&&nr!==jt&&g.event.preventDefault()});var Lr,mr,xr,mt=function(et,ht,yt){var Pt=(yt-ht)/cr+et;return x.constrain(Pt,0,jt)},Fe=function(et,ht,yt){var Pt=(ht-yt)/cr+et;return x.constrain(Pt,0,jt)},Ze=g.behavior.drag().on("dragstart",function(){var et=g.event.sourceEvent;et.type==="touchstart"?Lr=et.changedTouches[0].clientY:Lr=et.clientY,xr=nr}).on("drag",function(){var et=g.event.sourceEvent;et.buttons===2||et.ctrlKey||(et.type==="touchmove"?mr=et.changedTouches[0].clientY:mr=et.clientY,nr=mt(xr,Lr,mr),Se(nr,Mt,cr))});Xe.call(Ze);var Ne=g.behavior.drag().on("dragstart",function(){var et=g.event.sourceEvent;et.type==="touchstart"&&(Lr=et.changedTouches[0].clientY,xr=nr)}).on("drag",function(){var et=g.event.sourceEvent;et.type==="touchmove"&&(mr=et.changedTouches[0].clientY,nr=Fe(xr,Lr,mr),Se(nr,Mt,cr))});we.call(Ne)}function Se(et,ht,yt){W._scrollY=N._fullLayout[le]._scrollY=et,r.setTranslate(we,0,-et),r.setRect(Xe,W._width,a.scrollBarMargin+et*yt,a.scrollBarWidth,ht),ce.select("rect").attr("y",ot+et)}if(N._context.edits.legendPosition){var Ve,Ee,be,Ce;ne.classed("cursor-move",!0),t.init({element:ne.node(),gd:N,prepFn:function(et){if(et.target!==Xe.node()){var ht=r.getTranslate(ne);be=ht.x,Ce=ht.y}},moveFn:function(et,ht){if(be!==void 0&&Ce!==void 0){var yt=be+et,Pt=Ce+ht;r.setTranslate(ne,yt,Pt),Ve=t.align(yt,W._width,Je.l,Je.l+Je.w,W.xanchor),Ee=t.align(Pt+W._height,-W._height,Je.t+Je.h,Je.t,W.yanchor)}},doneFn:function(){if(Ve!==void 0&&Ee!==void 0){var et={};et[le+".x"]=Ve,et[le+".y"]=Ee,S.call("_guiRelayout",N,et)}},clickFn:function(et,ht){var yt=fe.selectAll("g.traces").filter(function(){var Pt=this.getBoundingClientRect();return ht.clientX>=Pt.left&&ht.clientX<=Pt.right&&ht.clientY>=Pt.top&&ht.clientY<=Pt.bottom});yt.size()>0&&b(N,ne,yt,et,ht)}})}}],N)}}function m(N,U,W){var Q=N[0],le=Q.width,se=U.entrywidthmode,fe=Q.trace.legendwidth||U.entrywidth;return se==="fraction"?U._maxWidth*fe:W+(fe||le)}function b(N,U,W,Q,le){var se=W.data()[0][0].trace,fe={event:le,node:W.node(),curveNumber:se.index,expandedIndex:se.index,data:N.data,layout:N.layout,frames:N._transitionData._frames,config:N._context,fullData:N._fullData,fullLayout:N._fullLayout};se._group&&(fe.group=se._group),S.traceIs(se,"pie-like")&&(fe.label=W.datum()[0].label);var G=e.triggerHandler(N,"plotly_legendclick",fe);if(Q===1){if(G===!1)return;U._clickTimeout=setTimeout(function(){N._fullLayout&&n(W,N,Q)},N._context.doubleClickDelay)}else if(Q===2){U._clickTimeout&&clearTimeout(U._clickTimeout),N._legendMouseDownTime=0;var J=e.triggerHandler(N,"plotly_legenddoubleclick",fe);J!==!1&&G!==!1&&n(W,N,Q)}}function v(N,U,W){var Q=I(W),le=N.data()[0][0],se=le.trace,fe=S.traceIs(se,"pie-like"),G=!W._inHover&&U._context.edits.legendText&&!fe,J=W._maxNameLength,$,X;le.groupTitle?($=le.groupTitle.text,X=le.groupTitle.font):(X=W.font,W.entries?$=le.text:($=fe?le.label:se.name,se._meta&&($=x.templateString($,se._meta))));var re=x.ensureSingle(N,"text",Q+"text");re.attr("text-anchor","start").call(r.font,X).text(G?u($,J):$);var ae=W.indentation+W.itemwidth+a.itemGap*2;i.positionText(re,ae,0),G?re.call(i.makeEditable,{gd:U,text:$}).call(f,N,U,W).on("edit",function(j){this.text(u(j,J)).call(f,N,U,W);var ee=le.trace._fullInput||{},ne={};return ne.name=j,ee._isShape?S.call("_guiRelayout",U,"shapes["+se.index+"].name",ne.name):S.call("_guiRestyle",U,ne,se.index)}):f(re,N,U,W)}function u(N,U){var W=Math.max(4,U);if(N&&N.trim().length>=W/2)return N;N=N||"";for(var Q=W-N.length;Q>0;Q--)N+=" ";return N}function y(N,U,W){var Q=U._context.doubleClickDelay,le,se=1,fe=x.ensureSingle(N,"rect",W+"toggle",function(G){U._context.staticPlot||G.style("cursor","pointer").attr("pointer-events","all"),G.call(o.fill,"rgba(0,0,0,0)")});U._context.staticPlot||(fe.on("mousedown",function(){le=new Date().getTime(),le-U._legendMouseDownTimeQ&&(se=Math.max(se-1,1)),b(U,G,N,se,g.event)}}))}function f(N,U,W,Q,le){Q._inHover&&N.attr("data-notex",!0),i.convertToTspans(N,W,function(){P(U,W,Q,le)})}function P(N,U,W,Q){var le=N.data()[0][0];if(!W._inHover&&le&&!le.trace.showlegend){N.remove();return}var se=N.select("g[class*=math-group]"),fe=se.node(),G=I(W);W||(W=U._fullLayout[G]);var J=W.borderwidth,$;Q===_?$=W.title.font:le.groupTitle?$=le.groupTitle.font:$=W.font;var X=$.size*c,re,ae;if(fe){var j=r.bBox(fe);re=j.height,ae=j.width,Q===_?r.setTranslate(se,J,J+re*.75):r.setTranslate(se,0,re*.25)}else{var ee="."+G+(Q===_?"title":"")+"text",ne=N.select(ee),ce=i.lineCount(ne),_e=ne.node();if(re=X*ce,ae=_e?r.bBox(_e).width:0,Q===_)W.title.side==="left"&&(ae+=a.itemGap*2),i.positionText(ne,J+a.titlePad,J+X);else{var we=a.itemGap*2+W.indentation+W.itemwidth;le.groupTitle&&(we=a.itemGap,ae-=W.indentation+W.itemwidth),i.positionText(ne,we,-X*((ce-1)/2-.3))}}Q===_?(W._titleWidth=ae,W._titleHeight=re):(le.lineHeight=X,le.height=Math.max(re,16)+3,le.width=ae)}function L(N){var U=0,W=0,Q=N.title.side;return Q&&(Q.indexOf("left")!==-1&&(U=N._titleWidth),Q.indexOf("top")!==-1&&(W=N._titleHeight)),[U,W]}function z(N,U,W,Q){var le=N._fullLayout,se=I(Q);Q||(Q=le[se]);var fe=le._size,G=l.isVertical(Q),J=l.isGrouped(Q),$=Q.entrywidthmode==="fraction",X=Q.borderwidth,re=2*X,ae=a.itemGap,j=Q.indentation+Q.itemwidth+ae*2,ee=2*(X+ae),ne=B(Q),ce=Q.y<0||Q.y===0&&ne==="top",_e=Q.y>1||Q.y===1&&ne==="bottom",we=Q.tracegroupgap,Oe={};Q._maxHeight=Math.max(ce||_e?le.height/2:fe.h,30);var Ie=0;Q._width=0,Q._height=0;var Xe=L(Q);if(G)W.each(function(xr){var mt=xr[0].height;r.setTranslate(this,X+Xe[0],X+Xe[1]+Q._height+mt/2+ae),Q._height+=mt,Q._width=Math.max(Q._width,xr[0].width)}),Ie=j+Q._width,Q._width+=ae+j+re,Q._height+=ee,J&&(U.each(function(xr,mt){r.setTranslate(this,0,mt*Q.tracegroupgap)}),Q._height+=(Q._lgroupsLength-1)*Q.tracegroupgap);else{var tt=O(Q),rt=Q.x<0||Q.x===0&&tt==="right",Je=Q.x>1||Q.x===1&&tt==="left",ot=_e||ce,Me=le.width/2;Q._maxWidth=Math.max(rt?ot&&tt==="left"?fe.l+fe.w:Me:Je?ot&&tt==="right"?fe.r+fe.w:Me:fe.w,2*j);var pe=0,ue=0;W.each(function(xr){var mt=m(xr,Q,j);pe=Math.max(pe,mt),ue+=mt}),Ie=null;var ze=0;if(J){var Qe=0,it=0,$e=0;U.each(function(){var xr=0,mt=0;g.select(this).selectAll("g.traces").each(function(Ze){var Ne=m(Ze,Q,j),Se=Ze[0].height;r.setTranslate(this,Xe[0],Xe[1]+X+ae+Se/2+mt),mt+=Se,xr=Math.max(xr,Ne),Oe[Ze[0].trace.legendgroup]=xr});var Fe=xr+ae;it>0&&Fe+X+it>Q._maxWidth?(ze=Math.max(ze,it),it=0,$e+=Qe+we,Qe=mt):Qe=Math.max(Qe,mt),r.setTranslate(this,it,$e),it+=Fe}),Q._width=Math.max(ze,it)+X,Q._height=$e+Qe+ee}else{var kt=W.size(),Mt=ue+re+(kt-1)*ae=Q._maxWidth&&(ze=Math.max(ze,nr),jt=0,cr+=Bt,Q._height+=Bt,Bt=0),r.setTranslate(this,Xe[0]+X+jt,Xe[1]+X+cr+mt/2+ae),nr=jt+Fe+ae,jt+=Ze,Bt=Math.max(Bt,mt)}),Mt?(Q._width=jt+re,Q._height=Bt+ee):(Q._width=Math.max(ze,nr)+re,Q._height+=Bt+ee)}}Q._width=Math.ceil(Math.max(Q._width+Xe[0],Q._titleWidth+2*(X+a.titlePad))),Q._height=Math.ceil(Math.max(Q._height+Xe[1],Q._titleHeight+2*(X+a.itemGap))),Q._effHeight=Math.min(Q._height,Q._maxHeight);var Lr=N._context.edits,mr=Lr.legendText||Lr.legendPosition;W.each(function(xr){var mt=g.select(this).select("."+se+"toggle"),Fe=xr[0].height,Ze=xr[0].trace.legendgroup,Ne=m(xr,Q,j);J&&Ze!==""&&(Ne=Oe[Ze]);var Se=mr?j:Ie||Ne;!G&&!$&&(Se+=ae/2),r.setRect(mt,0,-Fe/2,Se,Fe)})}function F(N,U,W,Q){var le=N._fullLayout,se=le[U],fe=O(se),G=B(se),J=se.xref==="paper",$=se.yref==="paper";N._fullLayout._reservedMargin[U]={};var X=se.y<.5?"b":"t",re=se.x<.5?"l":"r",ae={r:le.width-W,l:W+se._width,b:le.height-Q,t:Q+se._effHeight};if(J&&$)return A.autoMargin(N,U,{x:se.x,y:se.y,l:se._width*h[fe],r:se._width*p[fe],b:se._effHeight*p[G],t:se._effHeight*h[G]});J?N._fullLayout._reservedMargin[U][X]=ae[X]:$||se.orientation==="v"?N._fullLayout._reservedMargin[U][re]=ae[re]:N._fullLayout._reservedMargin[U][X]=ae[X]}function O(N){return x.isRightAnchor(N)?"right":x.isCenterAnchor(N)?"center":"left"}function B(N){return x.isBottomAnchor(N)?"bottom":x.isMiddleAnchor(N)?"middle":"top"}function I(N){return N._id||"legend"}}}),Qw=Le({"src/components/fx/hover.js"(Z){"use strict";var H=Ji(),g=zn(),x=Vl(),A=ni(),S=A.pushUnique,e=A.strTranslate,t=A.strRotate,r=Wg(),o=$l(),i=RE(),n=rs(),a=$a(),s=Kh(),c=Zo(),h=ch().zindexSeparator,p=so(),d=Td(),T=Bm(),l=Yw(),_=Jw(),w=T.YANGLE,M=Math.PI*w/180,E=1/Math.sin(M),m=Math.cos(M),b=Math.sin(M),v=T.HOVERARROWSIZE,u=T.HOVERTEXTPAD,y={box:!0,ohlc:!0,violin:!0,candlestick:!0},f={scatter:!0,scattergl:!0,splom:!0};function P(j,ee){return j.distance-ee.distance}Z.hover=function(ee,ne,ce,_e){ee=A.getGraphDiv(ee);var we=ne.target;A.throttle(ee._fullLayout._uid+T.HOVERID,T.HOVERMINTIME,function(){L(ee,ne,ce,_e,we)})},Z.loneHover=function(ee,ne){var ce=!0;Array.isArray(ee)||(ce=!1,ee=[ee]);var _e=ne.gd,we=X(_e),Oe=re(_e),Ie=ee.map(function(ze){var Qe=ze._x0||ze.x0||ze.x||0,it=ze._x1||ze.x1||ze.x||0,$e=ze._y0||ze.y0||ze.y||0,kt=ze._y1||ze.y1||ze.y||0,Mt=ze.eventData;if(Mt){var Bt=Math.min(Qe,it),jt=Math.max(Qe,it),cr=Math.min($e,kt),nr=Math.max($e,kt),Lr=ze.trace;if(p.traceIs(Lr,"gl3d")){var mr=_e._fullLayout[Lr.scene]._scene.container,xr=mr.offsetLeft,mt=mr.offsetTop;Bt+=xr,jt+=xr,cr+=mt,nr+=mt}Mt.bbox={x0:Bt+Oe,x1:jt+Oe,y0:cr+we,y1:nr+we},ne.inOut_bbox&&ne.inOut_bbox.push(Mt.bbox)}else Mt=!1;return{color:ze.color||a.defaultLine,x0:ze.x0||ze.x||0,x1:ze.x1||ze.x||0,y0:ze.y0||ze.y||0,y1:ze.y1||ze.y||0,xLabel:ze.xLabel,yLabel:ze.yLabel,zLabel:ze.zLabel,text:ze.text,name:ze.name,idealAlign:ze.idealAlign,borderColor:ze.borderColor,fontFamily:ze.fontFamily,fontSize:ze.fontSize,fontColor:ze.fontColor,fontWeight:ze.fontWeight,fontStyle:ze.fontStyle,fontVariant:ze.fontVariant,nameLength:ze.nameLength,textAlign:ze.textAlign,trace:ze.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:ze.hovertemplate||!1,hovertemplateLabels:ze.hovertemplateLabels||!1,eventData:Mt}}),Xe=!1,tt=O(Ie,{gd:_e,hovermode:"closest",rotateLabels:Xe,bgColor:ne.bgColor||a.background,container:H.select(ne.container),outerContainer:ne.outerContainer||ne.container}),rt=tt.hoverLabels,Je=5,ot=0,Me=0;rt.sort(function(ze,Qe){return ze.y0-Qe.y0}).each(function(ze,Qe){var it=ze.y0-ze.by/2;it-Jejt[0]._length||en<0||en>cr[0]._length)return s.unhoverRaw(j,ee)}if(ee.pointerX=zi+jt[0]._offset,ee.pointerY=en+cr[0]._offset,"xval"in ee?Ne=d.flat(we,ee.xval):Ne=d.p2c(jt,zi),"yval"in ee?Se=d.flat(we,ee.yval):Se=d.p2c(cr,en),!g(Ne[0])||!g(Se[0]))return A.warn("Fx.hover failed",ee,j),s.unhoverRaw(j,ee)}var vn=1/0;function Xt(da,vs){for(Ee=0;Ee$t&&(Fe.splice(0,$t),vn=Fe[0].distance),Je&&mt!==0&&Fe.length===0){Wt.distance=mt,Wt.index=!1;var Za=Ce._module.hoverPoints(Wt,Pt,Ot,"closest",{hoverLayer:Ie._hoverlayer});if(Za&&(Za=Za.filter(function(Ds){return Ds.spikeDistance<=mt})),Za&&Za.length){var Qo,ss=Za.filter(function(Ds){return Ds.xa.showspikes&&Ds.xa.spikesnap!=="hovered data"});if(ss.length){var gs=ss[0];g(gs.x0)&&g(gs.y0)&&(Qo=qt(gs),(!lr.vLinePoint||lr.vLinePoint.spikeDistance>Qo.spikeDistance)&&(lr.vLinePoint=Qo))}var vo=Za.filter(function(Ds){return Ds.ya.showspikes&&Ds.ya.spikesnap!=="hovered data"});if(vo.length){var zo=vo[0];g(zo.x0)&&g(zo.y0)&&(Qo=qt(zo),(!lr.hLinePoint||lr.hLinePoint.spikeDistance>Qo.spikeDistance)&&(lr.hLinePoint=Qo))}}}}}Xt();function Dt(da,vs,es){for(var bs=null,Xa=1/0,Bo,Za=0;Za0&&Math.abs(da.distance)kr-1;Qr--)Pr(Fe[Qr]);Fe=Ar,_i()}var ci=j._hoverdata,mi=[],Et=X(j),ar=re(j);for(Ve=0;Ve1||Fe.length>1)||ot==="closest"&&fi&&Fe.length>1,Qa=a.combine(Ie.plot_bgcolor||a.background,Ie.paper_bgcolor),yo=O(Fe,{gd:j,hovermode:ot,rotateLabels:Va,bgColor:Qa,container:Ie._hoverlayer,outerContainer:Ie._paper.node(),commonLabelOpts:Ie.hoverlabel,hoverdistance:Ie.hoverdistance}),Ga=yo.hoverLabels;if(d.isUnifiedHover(ot)||(I(Ga,Va,Ie,yo.commonLabelBoundingBox),W(Ga,Va,Ie._invScaleX,Ie._invScaleY)),_e&&_e.tagName){var Yo=p.getComponentMethod("annotations","hasClickToShow")(j,mi);i(H.select(_e),Yo?"pointer":"")}!_e||ce||!se(j,ee,ci)||(ci&&j.emit("plotly_unhover",{event:ee,points:ci}),j.emit("plotly_hover",{event:ee,points:j._hoverdata,xaxes:jt,yaxes:cr,xvals:Ne,yvals:Se}))}function z(j){return[j.trace.index,j.index,j.x0,j.y0,j.name,j.attr,j.xa?j.xa._id:"",j.ya?j.ya._id:""].join(",")}var F=/([\s\S]*)<\/extra>/;function O(j,ee){var ne=ee.gd,ce=ne._fullLayout,_e=ee.hovermode,we=ee.rotateLabels,Oe=ee.bgColor,Ie=ee.container,Xe=ee.outerContainer,tt=ee.commonLabelOpts||{};if(j.length===0)return[[]];var rt=ee.fontFamily||T.HOVERFONT,Je=ee.fontSize||T.HOVERFONTSIZE,ot=ee.fontWeight||ce.font.weight,Me=ee.fontStyle||ce.font.style,pe=ee.fontVariant||ce.font.variant,ue=ee.fontTextcase||ce.font.textcase,ze=ee.fontLineposition||ce.font.lineposition,Qe=ee.fontShadow||ce.font.shadow,it=j[0],$e=it.xa,kt=it.ya,Mt=_e.charAt(0),Bt=Mt+"Label",jt=it[Bt];if(jt===void 0&&$e.type==="multicategory")for(var cr=0;crce.width-ci&&(mi=ce.width-ci),sn.attr("d","M"+(Br-mi)+",0L"+(Br-mi+v)+","+Qr+v+"H"+ci+"v"+Qr+(u*2+Er.height)+"H"+-ci+"V"+Qr+v+"H"+(Br-mi-v)+"Z"),Br=mi,Ee.minX=Br-ci,Ee.maxX=Br+ci,$e.side==="top"?(Ee.minY=Pr-(u*2+Er.height),Ee.maxY=Pr-u):(Ee.minY=Pr+u,Ee.maxY=Pr+(u*2+Er.height))}else{var Et,ar,gr;kt.side==="right"?(Et="start",ar=1,gr="",Br=$e._offset+$e._length):(Et="end",ar=-1,gr="-",Br=$e._offset),Pr=kt._offset+(it.y0+it.y1)/2,vt.attr("text-anchor",Et),sn.attr("d","M0,0L"+gr+v+","+v+"V"+(u+Er.height/2)+"h"+gr+(u*2+Er.width)+"V-"+(u+Er.height/2)+"H"+gr+v+"V-"+v+"Z"),Ee.minY=Pr-(u+Er.height/2),Ee.maxY=Pr+(u+Er.height/2),kt.side==="right"?(Ee.minX=Br+v,Ee.maxX=Br+v+(u*2+Er.width)):(Ee.minX=Br-v-(u*2+Er.width),Ee.maxX=Br-v);var ti=Er.height/2,wi=Lr-Er.top-ti,Gi="clip"+ce._uid+"commonlabel"+kt._id,Fi;if(Br=0?Di=br:Zr+en=0?Di=Zr:_i+en=0?qi=qt:Ut+Ri=0?qi=Ut:Yr+Ri=0,(Mi.idealAlign==="top"||!Bn)&&hn?(gr-=wi/2,Mi.anchor="end"):Bn?(gr+=wi/2,Mi.anchor="start"):Mi.anchor="middle",Mi.crossPos=gr;else{if(Mi.pos=gr,Bn=ar+ti/2+Ii<=mr,hn=ar-ti/2-Ii>=0,(Mi.idealAlign==="left"||!Bn)&&hn)ar-=ti/2,Mi.anchor="end";else if(Bn)ar+=ti/2,Mi.anchor="start";else{Mi.anchor="middle";var ba=Ii/2,Aa=ar+ba-mr,Va=ar-ba;Aa>0&&(ar-=Aa),Va<0&&(ar+=-Va)}Mi.crossPos=ar}Pr.attr("text-anchor",Mi.anchor),ci&&Qr.attr("text-anchor",Mi.anchor),sn.attr("transform",e(ar,gr)+(we?t(w):""))}),{hoverLabels:$i,commonLabelBoundingBox:Ee}}function B(j,ee,ne,ce,_e,we){var Oe="",Ie="";j.nameOverride!==void 0&&(j.name=j.nameOverride),j.name&&(j.trace._meta&&(j.name=A.templateString(j.name,j.trace._meta)),Oe=G(j.name,j.nameLength));var Xe=ne.charAt(0),tt=Xe==="x"?"y":"x";j.zLabel!==void 0?(j.xLabel!==void 0&&(Ie+="x: "+j.xLabel+"
"),j.yLabel!==void 0&&(Ie+="y: "+j.yLabel+"
"),j.trace.type!=="choropleth"&&j.trace.type!=="choroplethmapbox"&&j.trace.type!=="choroplethmap"&&(Ie+=(Ie?"z: ":"")+j.zLabel)):ee&&j[Xe+"Label"]===_e?Ie=j[tt+"Label"]||"":j.xLabel===void 0?j.yLabel!==void 0&&j.trace.type!=="scattercarpet"&&(Ie=j.yLabel):j.yLabel===void 0?Ie=j.xLabel:Ie="("+j.xLabel+", "+j.yLabel+")",(j.text||j.text===0)&&!Array.isArray(j.text)&&(Ie+=(Ie?"
":"")+j.text),j.extraText!==void 0&&(Ie+=(Ie?"
":"")+j.extraText),we&&Ie===""&&!j.hovertemplate&&(Oe===""&&we.remove(),Ie=Oe);var rt=j.hovertemplate||!1;if(rt){var Je=j.hovertemplateLabels||j;j[Xe+"Label"]!==_e&&(Je[Xe+"other"]=Je[Xe+"Val"],Je[Xe+"otherLabel"]=Je[Xe+"Label"]),Ie=A.hovertemplateString(rt,Je,ce._d3locale,j.eventData[0]||{},j.trace._meta),Ie=Ie.replace(F,function(ot,Me){return Oe=G(Me,j.nameLength),""})}return[Ie,Oe]}function I(j,ee,ne,ce){var _e=ee?"xa":"ya",we=ee?"ya":"xa",Oe=0,Ie=1,Xe=j.size(),tt=new Array(Xe),rt=0,Je=ce.minX,ot=ce.maxX,Me=ce.minY,pe=ce.maxY,ue=function(Ne){return Ne*ne._invScaleX},ze=function(Ne){return Ne*ne._invScaleY};j.each(function(Ne){var Se=Ne[_e],Ve=Ne[we],Ee=Se._id.charAt(0)==="x",be=Se.range;rt===0&&be&&be[0]>be[1]!==Ee&&(Ie=-1);var Ce=0,et=Ee?ne.width:ne.height;if(ne.hovermode==="x"||ne.hovermode==="y"){var ht=N(Ne,ee),yt=Ne.anchor,Pt=yt==="end"?-1:1,Ot,Wt;if(yt==="middle")Ot=Ne.crossPos+(Ee?ze(ht.y-Ne.by/2):ue(Ne.bx/2+Ne.tx2width/2)),Wt=Ot+(Ee?ze(Ne.by):ue(Ne.bx));else if(Ee)Ot=Ne.crossPos+ze(v+ht.y)-ze(Ne.by/2-v),Wt=Ot+ze(Ne.by);else{var $t=ue(Pt*v+ht.x),lr=$t+ue(Pt*Ne.bx);Ot=Ne.crossPos+Math.min($t,lr),Wt=Ne.crossPos+Math.max($t,lr)}Ee?Me!==void 0&&pe!==void 0&&Math.min(Wt,pe)-Math.max(Ot,Me)>1&&(Ve.side==="left"?(Ce=Ve._mainLinePosition,et=ne.width):et=Ve._mainLinePosition):Je!==void 0&&ot!==void 0&&Math.min(Wt,ot)-Math.max(Ot,Je)>1&&(Ve.side==="top"?(Ce=Ve._mainLinePosition,et=ne.height):et=Ve._mainLinePosition)}tt[rt++]=[{datum:Ne,traceIndex:Ne.trace.index,dp:0,pos:Ne.pos,posref:Ne.posref,size:Ne.by*(Ee?E:1)/2,pmin:Ce,pmax:et}]}),tt.sort(function(Ne,Se){return Ne[0].posref-Se[0].posref||Ie*(Se[0].traceIndex-Ne[0].traceIndex)});var Qe,it,$e,kt,Mt,Bt,jt;function cr(Ne){var Se=Ne[0],Ve=Ne[Ne.length-1];if(it=Se.pmin-Se.pos-Se.dp+Se.size,$e=Ve.pos+Ve.dp+Ve.size-Se.pmax,it>.01){for(Mt=Ne.length-1;Mt>=0;Mt--)Ne[Mt].dp+=it;Qe=!1}if(!($e<.01)){if(it<-.01){for(Mt=Ne.length-1;Mt>=0;Mt--)Ne[Mt].dp-=$e;Qe=!1}if(Qe){var Ee=0;for(kt=0;ktSe.pmax&&Ee++;for(kt=Ne.length-1;kt>=0&&!(Ee<=0);kt--)Bt=Ne[kt],Bt.pos>Se.pmax-1&&(Bt.del=!0,Ee--);for(kt=0;kt=0;Mt--)Ne[Mt].dp-=$e;for(kt=Ne.length-1;kt>=0&&!(Ee<=0);kt--)Bt=Ne[kt],Bt.pos+Bt.dp+Bt.size>Se.pmax&&(Bt.del=!0,Ee--)}}}for(;!Qe&&Oe<=Xe;){for(Oe++,Qe=!0,kt=0;kt.01){for(Mt=Lr.length-1;Mt>=0;Mt--)Lr[Mt].dp+=it;for(nr.push.apply(nr,Lr),tt.splice(kt+1,1),jt=0,Mt=nr.length-1;Mt>=0;Mt--)jt+=nr[Mt].dp;for($e=jt/nr.length,Mt=nr.length-1;Mt>=0;Mt--)nr[Mt].dp-=$e;Qe=!1}else kt++}tt.forEach(cr)}for(kt=tt.length-1;kt>=0;kt--){var mt=tt[kt];for(Mt=mt.length-1;Mt>=0;Mt--){var Fe=mt[Mt],Ze=Fe.datum;Ze.offset=Fe.dp,Ze.del=Fe.del}}}function N(j,ee){var ne=0,ce=j.offset;return ee&&(ce*=-b,ne=j.offset*m),{x:ne,y:ce}}function U(j){var ee={start:1,end:-1,middle:0}[j.anchor],ne=ee*(v+u),ce=ne+ee*(j.txwidth+u),_e=j.anchor==="middle";return _e&&(ne-=j.tx2width/2,ce+=j.txwidth/2+u),{alignShift:ee,textShiftX:ne,text2ShiftX:ce}}function W(j,ee,ne,ce){var _e=function(Oe){return Oe*ne},we=function(Oe){return Oe*ce};j.each(function(Oe){var Ie=H.select(this);if(Oe.del)return Ie.remove();var Xe=Ie.select("text.nums"),tt=Oe.anchor,rt=tt==="end"?-1:1,Je=U(Oe),ot=N(Oe,ee),Me=ot.x,pe=ot.y,ue=tt==="middle";Ie.select("path").attr("d",ue?"M-"+_e(Oe.bx/2+Oe.tx2width/2)+","+we(pe-Oe.by/2)+"h"+_e(Oe.bx)+"v"+we(Oe.by)+"h-"+_e(Oe.bx)+"Z":"M0,0L"+_e(rt*v+Me)+","+we(v+pe)+"v"+we(Oe.by/2-v)+"h"+_e(rt*Oe.bx)+"v-"+we(Oe.by)+"H"+_e(rt*v+Me)+"V"+we(pe-v)+"Z");var ze=Me+Je.textShiftX,Qe=pe+Oe.ty0-Oe.by/2+u,it=Oe.textAlign||"auto";it!=="auto"&&(it==="left"&&tt!=="start"?(Xe.attr("text-anchor","start"),ze=ue?-Oe.bx/2-Oe.tx2width/2+u:-Oe.bx-u):it==="right"&&tt!=="end"&&(Xe.attr("text-anchor","end"),ze=ue?Oe.bx/2-Oe.tx2width/2-u:Oe.bx+u)),Xe.call(o.positionText,_e(ze),we(Qe)),Oe.tx2width&&(Ie.select("text.name").call(o.positionText,_e(Je.text2ShiftX+Je.alignShift*u+Me),we(pe+Oe.ty0-Oe.by/2+u)),Ie.select("rect").call(n.setRect,_e(Je.text2ShiftX+(Je.alignShift-1)*Oe.tx2width/2+Me),we(pe-Oe.by/2-1),_e(Oe.tx2width),we(Oe.by+2)))})}function Q(j,ee){var ne=j.index,ce=j.trace||{},_e=j.cd[0],we=j.cd[ne]||{};function Oe(ot){return ot||g(ot)&&ot===0}var Ie=Array.isArray(ne)?function(ot,Me){var pe=A.castOption(_e,ne,ot);return Oe(pe)?pe:A.extractOption({},ce,"",Me)}:function(ot,Me){return A.extractOption(we,ce,ot,Me)};function Xe(ot,Me,pe){var ue=Ie(Me,pe);Oe(ue)&&(j[ot]=ue)}if(Xe("hoverinfo","hi","hoverinfo"),Xe("bgcolor","hbg","hoverlabel.bgcolor"),Xe("borderColor","hbc","hoverlabel.bordercolor"),Xe("fontFamily","htf","hoverlabel.font.family"),Xe("fontSize","hts","hoverlabel.font.size"),Xe("fontColor","htc","hoverlabel.font.color"),Xe("fontWeight","htw","hoverlabel.font.weight"),Xe("fontStyle","hty","hoverlabel.font.style"),Xe("fontVariant","htv","hoverlabel.font.variant"),Xe("nameLength","hnl","hoverlabel.namelength"),Xe("textAlign","hta","hoverlabel.align"),j.posref=ee==="y"||ee==="closest"&&ce.orientation==="h"?j.xa._offset+(j.x0+j.x1)/2:j.ya._offset+(j.y0+j.y1)/2,j.x0=A.constrain(j.x0,0,j.xa._length),j.x1=A.constrain(j.x1,0,j.xa._length),j.y0=A.constrain(j.y0,0,j.ya._length),j.y1=A.constrain(j.y1,0,j.ya._length),j.xLabelVal!==void 0&&(j.xLabel="xLabel"in j?j.xLabel:c.hoverLabelText(j.xa,j.xLabelVal,ce.xhoverformat),j.xVal=j.xa.c2d(j.xLabelVal)),j.yLabelVal!==void 0&&(j.yLabel="yLabel"in j?j.yLabel:c.hoverLabelText(j.ya,j.yLabelVal,ce.yhoverformat),j.yVal=j.ya.c2d(j.yLabelVal)),j.zLabelVal!==void 0&&j.zLabel===void 0&&(j.zLabel=String(j.zLabelVal)),!isNaN(j.xerr)&&!(j.xa.type==="log"&&j.xerr<=0)){var tt=c.tickText(j.xa,j.xa.c2l(j.xerr),"hover").text;j.xerrneg!==void 0?j.xLabel+=" +"+tt+" / -"+c.tickText(j.xa,j.xa.c2l(j.xerrneg),"hover").text:j.xLabel+=" \xB1 "+tt,ee==="x"&&(j.distance+=1)}if(!isNaN(j.yerr)&&!(j.ya.type==="log"&&j.yerr<=0)){var rt=c.tickText(j.ya,j.ya.c2l(j.yerr),"hover").text;j.yerrneg!==void 0?j.yLabel+=" +"+rt+" / -"+c.tickText(j.ya,j.ya.c2l(j.yerrneg),"hover").text:j.yLabel+=" \xB1 "+rt,ee==="y"&&(j.distance+=1)}var Je=j.hoverinfo||j.trace.hoverinfo;return Je&&Je!=="all"&&(Je=Array.isArray(Je)?Je:Je.split("+"),Je.indexOf("x")===-1&&(j.xLabel=void 0),Je.indexOf("y")===-1&&(j.yLabel=void 0),Je.indexOf("z")===-1&&(j.zLabel=void 0),Je.indexOf("text")===-1&&(j.text=void 0),Je.indexOf("name")===-1&&(j.name=void 0)),j}function le(j,ee,ne){var ce=ne.container,_e=ne.fullLayout,we=_e._size,Oe=ne.event,Ie=!!ee.hLinePoint,Xe=!!ee.vLinePoint,tt,rt;if(ce.selectAll(".spikeline").remove(),!!(Xe||Ie)){var Je=a.combine(_e.plot_bgcolor,_e.paper_bgcolor);if(Ie){var ot=ee.hLinePoint,Me,pe;tt=ot&&ot.xa,rt=ot&&ot.ya;var ue=rt.spikesnap;ue==="cursor"?(Me=Oe.pointerX,pe=Oe.pointerY):(Me=tt._offset+ot.x,pe=rt._offset+ot.y);var ze=x.readability(ot.color,Je)<1.5?a.contrast(Je):ot.color,Qe=rt.spikemode,it=rt.spikethickness,$e=rt.spikecolor||ze,kt=c.getPxPosition(j,rt),Mt,Bt;if(Qe.indexOf("toaxis")!==-1||Qe.indexOf("across")!==-1){if(Qe.indexOf("toaxis")!==-1&&(Mt=kt,Bt=Me),Qe.indexOf("across")!==-1){var jt=rt._counterDomainMin,cr=rt._counterDomainMax;rt.anchor==="free"&&(jt=Math.min(jt,rt.position),cr=Math.max(cr,rt.position)),Mt=we.l+jt*we.w,Bt=we.l+cr*we.w}ce.insert("line",":first-child").attr({x1:Mt,x2:Bt,y1:pe,y2:pe,"stroke-width":it,stroke:$e,"stroke-dasharray":n.dashStyle(rt.spikedash,it)}).classed("spikeline",!0).classed("crisp",!0),ce.insert("line",":first-child").attr({x1:Mt,x2:Bt,y1:pe,y2:pe,"stroke-width":it+2,stroke:Je}).classed("spikeline",!0).classed("crisp",!0)}Qe.indexOf("marker")!==-1&&ce.insert("circle",":first-child").attr({cx:kt+(rt.side!=="right"?it:-it),cy:pe,r:it,fill:$e}).classed("spikeline",!0)}if(Xe){var nr=ee.vLinePoint,Lr,mr;tt=nr&&nr.xa,rt=nr&&nr.ya;var xr=tt.spikesnap;xr==="cursor"?(Lr=Oe.pointerX,mr=Oe.pointerY):(Lr=tt._offset+nr.x,mr=rt._offset+nr.y);var mt=x.readability(nr.color,Je)<1.5?a.contrast(Je):nr.color,Fe=tt.spikemode,Ze=tt.spikethickness,Ne=tt.spikecolor||mt,Se=c.getPxPosition(j,tt),Ve,Ee;if(Fe.indexOf("toaxis")!==-1||Fe.indexOf("across")!==-1){if(Fe.indexOf("toaxis")!==-1&&(Ve=Se,Ee=mr),Fe.indexOf("across")!==-1){var be=tt._counterDomainMin,Ce=tt._counterDomainMax;tt.anchor==="free"&&(be=Math.min(be,tt.position),Ce=Math.max(Ce,tt.position)),Ve=we.t+(1-Ce)*we.h,Ee=we.t+(1-be)*we.h}ce.insert("line",":first-child").attr({x1:Lr,x2:Lr,y1:Ve,y2:Ee,"stroke-width":Ze,stroke:Ne,"stroke-dasharray":n.dashStyle(tt.spikedash,Ze)}).classed("spikeline",!0).classed("crisp",!0),ce.insert("line",":first-child").attr({x1:Lr,x2:Lr,y1:Ve,y2:Ee,"stroke-width":Ze+2,stroke:Je}).classed("spikeline",!0).classed("crisp",!0)}Fe.indexOf("marker")!==-1&&ce.insert("circle",":first-child").attr({cx:Lr,cy:Se-(tt.side!=="top"?Ze:-Ze),r:Ze,fill:Ne}).classed("spikeline",!0)}}}function se(j,ee,ne){if(!ne||ne.length!==j._hoverdata.length)return!0;for(var ce=ne.length-1;ce>=0;ce--){var _e=ne[ce],we=j._hoverdata[ce];if(_e.curveNumber!==we.curveNumber||String(_e.pointNumber)!==String(we.pointNumber)||String(_e.pointNumbers)!==String(we.pointNumbers))return!0}return!1}function fe(j,ee){return!ee||ee.vLinePoint!==j._spikepoints.vLinePoint||ee.hLinePoint!==j._spikepoints.hLinePoint}function G(j,ee){return o.plainText(j||"",{len:ee,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function J(j,ee){for(var ne=ee.charAt(0),ce=[],_e=[],we=[],Oe=0;Oe"," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}}}),A_=Le({"src/components/shapes/draw_newshape/constants.js"(Z,H){"use strict";var g=32;H.exports={CIRCLE_SIDES:g,i000:0,i090:g/4,i180:g/2,i270:g/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),M_=Le({"src/components/selections/helpers.js"(Z,H){"use strict";var g=ni().strTranslate;function x(t,r){switch(t.type){case"log":return t.p2d(r);case"date":return t.p2r(r,0,t.calendar);default:return t.p2r(r)}}function A(t,r){switch(t.type){case"log":return t.d2p(r);case"date":return t.r2p(r,0,t.calendar);default:return t.r2p(r)}}function S(t){var r=t._id.charAt(0)==="y"?1:0;return function(o){return x(t,o[r])}}function e(t){return g(t.xaxis._offset,t.yaxis._offset)}H.exports={p2r:x,r2p:A,axValue:S,getTransform:e}}}),Gp=Le({"src/components/shapes/draw_newshape/helpers.js"(Z){"use strict";var H=oy(),g=A_(),x=g.CIRCLE_SIDES,A=g.SQRT2,S=M_(),e=S.p2r,t=S.r2p,r=[0,3,4,5,6,1,2],o=[0,3,4,1,2];Z.writePaths=function(a){var s=a.length;if(!s)return"M0,0Z";for(var c="",h=0;h0&&_l&&(w="X"),w});return h>l&&(_=_.replace(/[\s,]*X.*/,""),g.log("Ignoring extra params in segment "+c)),p+_})}function S(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}}}),r2=Le({"src/components/shapes/display_labels.js"(Z,H){"use strict";var g=ni(),x=Zo(),A=$l(),S=rs(),e=Gp().readPaths,t=Wp(),r=t.getPathString,o=p_(),i=eh().FROM_TL;H.exports=function(c,h,p,d){if(d.selectAll(".shape-label").remove(),!!(p.label.text||p.label.texttemplate)){var T;if(p.label.texttemplate){var l={};if(p.type!=="path"){var _=x.getFromId(c,p.xref),w=x.getFromId(c,p.yref);for(var M in o){var E=o[M](p,_,w);E!==void 0&&(l[M]=E)}}T=g.texttemplateStringForShapes(p.label.texttemplate,{},c._fullLayout._d3locale,l)}else T=p.label.text;var m={"data-index":h},b=p.label.font,v={"data-notex":1},u=d.append("g").attr(m).classed("shape-label",!0),y=u.append("text").attr(v).classed("shape-label-text",!0).text(T),f,P,L,z;if(p.path){var F=r(c,p),O=e(F,c);f=1/0,L=1/0,P=-1/0,z=-1/0;for(var B=0;B=s?d=c-p:d=p-c,-180/Math.PI*Math.atan2(d,T)}function a(s,c,h,p,d,T,l){var _=d.label.textposition,w=d.label.textangle,M=d.label.padding,E=d.type,m=Math.PI/180*T,b=Math.sin(m),v=Math.cos(m),u=d.label.xanchor,y=d.label.yanchor,f,P,L,z;if(E==="line"){_==="start"?(f=s,P=c):_==="end"?(f=h,P=p):(f=(s+h)/2,P=(c+p)/2),u==="auto"&&(_==="start"?w==="auto"?h>s?u="left":hs?u="right":hs?u="right":hs?u="left":h1&&!(Je.length===2&&Je[1][0]==="Z")&&(G===0&&(Je[0][0]="M"),f[fe]=Je,O(),B())}}function ce(Je,ot){if(Je===2){fe=+ot.srcElement.getAttribute("data-i"),G=+ot.srcElement.getAttribute("data-j");var Me=f[fe];!T(Me)&&!l(Me)&&ne()}}function _e(Je){le=[];for(var ot=0;otO&&be>B&&!Se.shiftKey?s.getCursor(Ce/Ee,1-et/be):"move";c(f,ht),Mt=ht.split("-")[0]}}function nr(Se){l(y)||(I&&(J=ue(P.xanchor)),N&&($=ze(P.yanchor)),P.type==="path"?we=P.path:(le=I?P.x0:ue(P.x0),se=N?P.y0:ze(P.y0),fe=I?P.x1:ue(P.x1),G=N?P.y1:ze(P.y1)),leG?(X=se,ee="y0",re=G,ne="y1"):(X=G,ee="y1",re=se,ne="y0"),cr(Se),Fe(z,P),Ne(f,P,y),kt.moveFn=Mt==="move"?xr:mt,kt.altKey=Se.altKey)}function Lr(){l(y)||(c(f),Ze(z),M(f,y,P),x.call("_guiRelayout",y,F.getUpdateObj()))}function mr(){l(y)||Ze(z)}function xr(Se,Ve){if(P.type==="path"){var Ee=function(et){return et},be=Ee,Ce=Ee;I?Q("xanchor",P.xanchor=Qe(J+Se)):(be=function(ht){return Qe(ue(ht)+Se)},Ie&&Ie.type==="date"&&(be=p.encodeDate(be))),N?Q("yanchor",P.yanchor=it($+Ve)):(Ce=function(ht){return it(ze(ht)+Ve)},tt&&tt.type==="date"&&(Ce=p.encodeDate(Ce))),Q("path",P.path=m(we,be,Ce))}else I?Q("xanchor",P.xanchor=Qe(J+Se)):(Q("x0",P.x0=Qe(le+Se)),Q("x1",P.x1=Qe(fe+Se))),N?Q("yanchor",P.yanchor=it($+Ve)):(Q("y0",P.y0=it(se+Ve)),Q("y1",P.y1=it(G+Ve)));f.attr("d",d(y,P)),Fe(z,P),r(y,L,P,Oe)}function mt(Se,Ve){if(W){var Ee=function(Ri){return Ri},be=Ee,Ce=Ee;I?Q("xanchor",P.xanchor=Qe(J+Se)):(be=function(Zi){return Qe(ue(Zi)+Se)},Ie&&Ie.type==="date"&&(be=p.encodeDate(be))),N?Q("yanchor",P.yanchor=it($+Ve)):(Ce=function(Zi){return it(ze(Zi)+Ve)},tt&&tt.type==="date"&&(Ce=p.encodeDate(Ce))),Q("path",P.path=m(we,be,Ce))}else if(U){if(Mt==="resize-over-start-point"){var et=le+Se,ht=N?se-Ve:se+Ve;Q("x0",P.x0=I?et:Qe(et)),Q("y0",P.y0=N?ht:it(ht))}else if(Mt==="resize-over-end-point"){var yt=fe+Se,Pt=N?G-Ve:G+Ve;Q("x1",P.x1=I?yt:Qe(yt)),Q("y1",P.y1=N?Pt:it(Pt))}}else{var Ot=function(Ri){return Mt.indexOf(Ri)!==-1},Wt=Ot("n"),$t=Ot("s"),lr=Ot("w"),fi=Ot("e"),Pi=Wt?X+Ve:X,Bi=$t?re+Ve:re,zi=lr?ae+Se:ae,en=fi?j+Se:j;N&&(Wt&&(Pi=X-Ve),$t&&(Bi=re-Ve)),(!N&&Bi-Pi>B||N&&Pi-Bi>B)&&(Q(ee,P[ee]=N?Pi:it(Pi)),Q(ne,P[ne]=N?Bi:it(Bi))),en-zi>O&&(Q(ce,P[ce]=I?zi:Qe(zi)),Q(_e,P[_e]=I?en:Qe(en)))}f.attr("d",d(y,P)),Fe(z,P),r(y,L,P,Oe)}function Fe(Se,Ve){(I||N)&&Ee();function Ee(){var be=Ve.type!=="path",Ce=Se.selectAll(".visual-cue").data([0]),et=1;Ce.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":et}).classed("visual-cue",!0);var ht=ue(I?Ve.xanchor:A.midRange(be?[Ve.x0,Ve.x1]:p.extractPathCoords(Ve.path,h.paramIsX))),yt=ze(N?Ve.yanchor:A.midRange(be?[Ve.y0,Ve.y1]:p.extractPathCoords(Ve.path,h.paramIsY)));if(ht=p.roundPositionForSharpStrokeRendering(ht,et),yt=p.roundPositionForSharpStrokeRendering(yt,et),I&&N){var Pt="M"+(ht-1-et)+","+(yt-1-et)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ce.attr("d",Pt)}else if(I){var Ot="M"+(ht-1-et)+","+(yt-9-et)+"v18 h2 v-18 Z";Ce.attr("d",Ot)}else{var Wt="M"+(ht-9-et)+","+(yt-1-et)+"h18 v2 h-18 Z";Ce.attr("d",Wt)}}}function Ze(Se){Se.selectAll(".visual-cue").remove()}function Ne(Se,Ve,Ee){var be=Ve.xref,Ce=Ve.yref,et=S.getFromId(Ee,be),ht=S.getFromId(Ee,Ce),yt="";be!=="paper"&&!et.autorange&&(yt+=be),Ce!=="paper"&&!ht.autorange&&(yt+=Ce),n.setClipUrl(Se,yt?"clip"+Ee._fullLayout._uid+yt:null,Ee)}}function m(y,f,P){return y.replace(h.segmentRE,function(L){var z=0,F=L.charAt(0),O=h.paramIsX[F],B=h.paramIsY[F],I=h.numParams[F],N=L.substr(1).replace(h.paramRE,function(U){return z>=I||(O[z]?U=f(U):B[z]&&(U=P(U)),z++),U});return F+N})}function b(y,f){if(_(y)){var P=f.node(),L=+P.getAttribute("data-index");if(L>=0){if(L===y._fullLayout._activeShapeIndex){v(y);return}y._fullLayout._activeShapeIndex=L,y._fullLayout._deactivateShape=v,T(y)}}}function v(y){if(_(y)){var f=y._fullLayout._activeShapeIndex;f>=0&&(o(y),delete y._fullLayout._activeShapeIndex,T(y))}}function u(y){if(_(y)){o(y);var f=y._fullLayout._activeShapeIndex,P=(y.layout||{}).shapes||[];if(f1?(se=["toggleHover"],fe=["resetViews"]):u?(le=["zoomInGeo","zoomOutGeo"],se=["hoverClosestGeo"],fe=["resetGeo"]):v?(se=["hoverClosest3d"],fe=["resetCameraDefault3d","resetCameraLastSave3d"]):L?(le=["zoomInMapbox","zoomOutMapbox"],se=["toggleHover"],fe=["resetViewMapbox"]):z?(le=["zoomInMap","zoomOutMap"],se=["toggleHover"],fe=["resetViewMap"]):y?se=["hoverClosestPie"]:B?(se=["hoverClosestCartesian","hoverCompareCartesian"],fe=["resetViewSankey"]):se=["toggleHover"],b&&se.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(s(T)||N)&&(se=[]),b&&!I&&(le=["zoomIn2d","zoomOut2d","autoScale2d"],fe[0]!=="resetViews"&&(fe=["resetScale2d"])),v?G=["zoom3d","pan3d","orbitRotation","tableRotation"]:b&&!I||P?G=["zoom2d","pan2d"]:L||z||u?G=["pan2d"]:F&&(G=["zoom2d"]),a(T)&&G.push("select2d","lasso2d");var J=[],$=function(j){J.indexOf(j)===-1&&se.indexOf(j)!==-1&&J.push(j)};if(Array.isArray(E)){for(var X=[],re=0;rew?T.substr(w):l.substr(_))+M}function c(p,d){for(var T=d._size,l=T.h/T.w,_={},w=Object.keys(p),M=0;Mt*P&&!O)){for(w=0;wG&&nese&&(se=ne);var _e=(se-le)/(2*fe);u/=_e,le=m.l2r(le),se=m.l2r(se),m.range=m._input.range=U=B[1]||W[1]<=B[0])&&Q[0]I[0])return!0}return!1}function M(B){var I=B._fullLayout,N=I._size,U=N.p,W=n.list(B,"",!0),Q,le,se,fe,G,J;if(I._paperdiv.style({width:B._context.responsive&&I.autosize&&!B._context._hasZeroWidth&&!B.layout.width?"100%":I.width+"px",height:B._context.responsive&&I.autosize&&!B._context._hasZeroHeight&&!B.layout.height?"100%":I.height+"px"}).selectAll(".main-svg").call(r.setSize,I.width,I.height),B._context.setBackground(B,I.paper_bgcolor),Z.drawMainTitle(B),i.manage(B),!I._has("cartesian"))return x.previousPromises(B);function $(Ne,Se,Ve){var Ee=Ne._lw/2;if(Ne._id.charAt(0)==="x"){if(Se){if(Ve==="top")return Se._offset-U-Ee}else return N.t+N.h*(1-(Ne.position||0))+Ee%1;return Se._offset+Se._length+U+Ee}if(Se){if(Ve==="right")return Se._offset+Se._length+U+Ee}else return N.l+N.w*(Ne.position||0)+Ee%1;return Se._offset-U-Ee}for(Q=0;Q0){f(B,Q,G,fe),se.attr({x:le,y:Q,"text-anchor":U,dy:z(I.yanchor)}).call(S.positionText,le,Q);var J=(I.text.match(S.BR_TAG_ALL)||[]).length;if(J){var $=a.LINE_SPACING*J+a.MID_SHIFT;I.y===0&&($=-$),se.selectAll(".line").each(function(){var ee=+this.getAttribute("dy").slice(0,-2)-$+"em";this.setAttribute("dy",ee)})}var X=H.selectAll(".gtitle-subtitle");if(X.node()){var re=se.node().getBBox(),ae=re.y+re.height,j=ae+o.SUBTITLE_PADDING_EM*I.subtitle.font.size;X.attr({x:le,y:j,"text-anchor":U,dy:z(I.yanchor)}).call(S.positionText,le,j)}}}};function v(B,I,N,U,W){var Q=I.yref==="paper"?B._fullLayout._size.h:B._fullLayout.height,le=A.isTopAnchor(I)?U:U-W,se=N==="b"?Q-le:le;return A.isTopAnchor(I)&&N==="t"||A.isBottomAnchor(I)&&N==="b"?!1:se.5?"t":"b",le=B._fullLayout.margin[Q],se=0;return I.yref==="paper"?se=N+I.pad.t+I.pad.b:I.yref==="container"&&(se=u(Q,U,W,B._fullLayout.height,N)+I.pad.t+I.pad.b),se>le?se:0}function f(B,I,N,U){var W="title.automargin",Q=B._fullLayout.title,le=Q.y>.5?"t":"b",se={x:Q.x,y:Q.y,t:0,b:0},fe={};Q.yref==="paper"&&v(B,Q,le,I,U)?se[le]=N:Q.yref==="container"&&(fe[le]=N,B._fullLayout._reservedMargin[W]=fe),x.allowAutoMargin(B,W),x.autoMargin(B,W,se)}function P(B,I){var N=B.title,U=B._size,W=0;switch(I===d?W=N.pad.l:I===l&&(W=-N.pad.r),N.xref){case"paper":return U.l+U.w*N.x+W;case"container":default:return B.width*N.x+W}}function L(B,I){var N=B.title,U=B._size,W=0;if(I==="0em"||!I?W=-N.pad.b:I===a.CAP_SHIFT+"em"&&(W=N.pad.t),N.y==="auto")return U.t/2;switch(N.yref){case"paper":return U.t+U.h-U.h*N.y+W;case"container":default:return B.height-B.height*N.y+W}}function z(B){return B==="top"?a.CAP_SHIFT+.3+"em":B==="bottom"?"-0.3em":a.MID_SHIFT+"em"}function F(B){var I=B.title,N=T;return A.isRightAnchor(I)?N=l:A.isLeftAnchor(I)&&(N=d),N}function O(B){var I=B.title,N="0em";return A.isTopAnchor(I)?N=a.CAP_SHIFT+"em":A.isMiddleAnchor(I)&&(N=a.MID_SHIFT+"em"),N}Z.doTraceStyle=function(B){var I=B.calcdata,N=[],U;for(U=0;U=0;F--){var O=E.append("path").attr(b).style("opacity",F?.1:v).call(S.stroke,y).call(S.fill,u).call(e.dashLine,F?"solid":P,F?4+f:f);if(s(O,d,_),L){var B=t(d.layout,"selections",_);O.style({cursor:"move"});var I={element:O.node(),plotinfo:w,gd:d,editHelpers:B,isActiveSelection:!0},N=g(m,d);x(N,O,I)}else O.style("pointer-events",F?"all":"none");z[F]=O}var U=z[0],W=z[1];W.node().addEventListener("click",function(){return c(d,U)})}}function s(d,T,l){var _=l.xref+l.yref;e.setClipUrl(d,"clip"+T._fullLayout._uid+_,T)}function c(d,T){if(n(d)){var l=T.node(),_=+l.getAttribute("data-index");if(_>=0){if(_===d._fullLayout._activeSelectionIndex){p(d);return}d._fullLayout._activeSelectionIndex=_,d._fullLayout._deactivateSelection=p,i(d)}}}function h(d){if(n(d)){var T=d._fullLayout.selections.length-1;d._fullLayout._activeSelectionIndex=T,d._fullLayout._deactivateSelection=p,i(d)}}function p(d){if(n(d)){var T=d._fullLayout._activeSelectionIndex;T>=0&&(A(d),delete d._fullLayout._activeSelectionIndex,i(d))}}}}),GE=Le({"node_modules/polybooljs/lib/build-log.js"(Z,H){function g(){var x,A=0,S=!1;function e(t,r){return x.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),x}return x={list:[],segmentId:function(){return A++},checkIntersection:function(t,r){return e("check",{seg1:t,seg2:r})},segmentChop:function(t,r){return e("div_seg",{seg:t,pt:r}),e("chop",{seg:t,pt:r})},statusRemove:function(t){return e("pop_seg",{seg:t})},segmentUpdate:function(t){return e("seg_update",{seg:t})},segmentNew:function(t,r){return e("new_seg",{seg:t,primary:r})},segmentRemove:function(t){return e("rem_seg",{seg:t})},tempStatus:function(t,r,o){return e("temp_status",{seg:t,above:r,below:o})},rewind:function(t){return e("rewind",{seg:t})},status:function(t,r,o){return e("status",{seg:t,above:r,below:o})},vert:function(t){return t===S?x:(S=t,e("vert",{x:t}))},log:function(t){return typeof t!="string"&&(t=JSON.stringify(t,!1," ")),e("log",{txt:t})},reset:function(){return e("reset")},selected:function(t){return e("selected",{segs:t})},chainStart:function(t){return e("chain_start",{seg:t})},chainRemoveHead:function(t,r){return e("chain_rem_head",{index:t,pt:r})},chainRemoveTail:function(t,r){return e("chain_rem_tail",{index:t,pt:r})},chainNew:function(t,r){return e("chain_new",{pt1:t,pt2:r})},chainMatch:function(t){return e("chain_match",{index:t})},chainClose:function(t){return e("chain_close",{index:t})},chainAddHead:function(t,r){return e("chain_add_head",{index:t,pt:r})},chainAddTail:function(t,r){return e("chain_add_tail",{index:t,pt:r})},chainConnect:function(t,r){return e("chain_con",{index1:t,index2:r})},chainReverse:function(t){return e("chain_rev",{index:t})},chainJoin:function(t,r){return e("chain_join",{index1:t,index2:r})},done:function(){return e("done")}},x}H.exports=g}}),WE=Le({"node_modules/polybooljs/lib/epsilon.js"(Z,H){function g(x){typeof x!="number"&&(x=1e-10);var A={epsilon:function(S){return typeof S=="number"&&(x=S),x},pointAboveOrOnLine:function(S,e,t){var r=e[0],o=e[1],i=t[0],n=t[1],a=S[0],s=S[1];return(i-r)*(s-o)-(n-o)*(a-r)>=-x},pointBetween:function(S,e,t){var r=S[1]-e[1],o=t[0]-e[0],i=S[0]-e[0],n=t[1]-e[1],a=i*o+r*n;if(a-x)},pointsSameX:function(S,e){return Math.abs(S[0]-e[0])x!=i-r>x&&(o-s)*(r-c)/(i-c)+s-t>x&&(n=!n),o=s,i=c}return n}};return A}H.exports=g}}),XE=Le({"node_modules/polybooljs/lib/linked-list.js"(Z,H){var g={create:function(){var x={root:{root:!0,next:null},exists:function(A){return!(A===null||A===x.root)},isEmpty:function(){return x.root.next===null},getHead:function(){return x.root.next},insertBefore:function(A,S){for(var e=x.root,t=x.root.next;t!==null;){if(S(t)){A.prev=t.prev,A.next=t,t.prev.next=A,t.prev=A;return}e=t,t=t.next}e.next=A,A.prev=e,A.next=null},findTransition:function(A){for(var S=x.root,e=x.root.next;e!==null&&!A(e);)S=e,e=e.next;return{before:S===x.root?null:S,after:e,insert:function(t){return t.prev=S,t.next=e,S.next=t,e!==null&&(e.prev=t),t}}}};return x},node:function(x){return x.prev=null,x.next=null,x.remove=function(){x.prev.next=x.next,x.next&&(x.next.prev=x.prev),x.prev=null,x.next=null},x}};H.exports=g}}),ZE=Le({"node_modules/polybooljs/lib/intersecter.js"(Z,H){var g=XE();function x(A,S,e){function t(T,l){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:null,below:null},otherFill:null}}function r(T,l,_){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:_.myFill.above,below:_.myFill.below},otherFill:null}}var o=g.create();function i(T,l,_,w,M,E){var m=S.pointsCompare(l,M);return m!==0?m:S.pointsSame(_,E)?0:T!==w?T?1:-1:S.pointAboveOrOnLine(_,w?M:E,w?E:M)?1:-1}function n(T,l){o.insertBefore(T,function(_){var w=i(T.isStart,T.pt,l,_.isStart,_.pt,_.other.pt);return w<0})}function a(T,l){var _=g.node({isStart:!0,pt:T.start,seg:T,primary:l,other:null,status:null});return n(_,T.end),_}function s(T,l,_){var w=g.node({isStart:!1,pt:l.end,seg:l,primary:_,other:T,status:null});T.other=w,n(w,T.pt)}function c(T,l){var _=a(T,l);return s(_,T,l),_}function h(T,l){e&&e.segmentChop(T.seg,l),T.other.remove(),T.seg.end=l,T.other.pt=l,n(T.other,T.pt)}function p(T,l){var _=r(l,T.seg.end,T.seg);return h(T,l),c(_,T.primary)}function d(T,l){var _=g.create();function w(B,I){var N=B.seg.start,U=B.seg.end,W=I.seg.start,Q=I.seg.end;return S.pointsCollinear(N,W,Q)?S.pointsCollinear(U,W,Q)||S.pointAboveOrOnLine(U,W,Q)?1:-1:S.pointAboveOrOnLine(N,W,Q)?1:-1}function M(B){return _.findTransition(function(I){var N=w(B,I.ev);return N>0})}function E(B,I){var N=B.seg,U=I.seg,W=N.start,Q=N.end,le=U.start,se=U.end;e&&e.checkIntersection(N,U);var fe=S.linesIntersect(W,Q,le,se);if(fe===!1){if(!S.pointsCollinear(W,Q,le)||S.pointsSame(W,se)||S.pointsSame(Q,le))return!1;var G=S.pointsSame(W,le),J=S.pointsSame(Q,se);if(G&&J)return I;var $=!G&&S.pointBetween(W,le,se),X=!J&&S.pointBetween(Q,le,se);if(G)return X?p(I,Q):p(B,se),I;$&&(J||(X?p(I,Q):p(B,se)),p(I,W))}else fe.alongA===0&&(fe.alongB===-1?p(B,le):fe.alongB===0?p(B,fe.pt):fe.alongB===1&&p(B,se)),fe.alongB===0&&(fe.alongA===-1?p(I,W):fe.alongA===0?p(I,fe.pt):fe.alongA===1&&p(I,Q));return!1}for(var m=[];!o.isEmpty();){var b=o.getHead();if(e&&e.vert(b.pt[0]),b.isStart){let B=function(){if(y){var I=E(b,y);if(I)return I}return f?E(b,f):!1};var v=B;e&&e.segmentNew(b.seg,b.primary);var u=M(b),y=u.before?u.before.ev:null,f=u.after?u.after.ev:null;e&&e.tempStatus(b.seg,y?y.seg:!1,f?f.seg:!1);var P=B();if(P){if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,L&&(P.seg.myFill.above=!P.seg.myFill.above)}else P.seg.otherFill=b.seg.myFill;e&&e.segmentUpdate(P.seg),b.other.remove(),b.remove()}if(o.getHead()!==b){e&&e.rewind(b.seg);continue}if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,f?b.seg.myFill.below=f.seg.myFill.above:b.seg.myFill.below=T,L?b.seg.myFill.above=!b.seg.myFill.below:b.seg.myFill.above=b.seg.myFill.below}else if(b.seg.otherFill===null){var z;f?b.primary===f.primary?z=f.seg.otherFill.above:z=f.seg.myFill.above:z=b.primary?l:T,b.seg.otherFill={above:z,below:z}}e&&e.status(b.seg,y?y.seg:!1,f?f.seg:!1),b.other.status=u.insert(g.node({ev:b}))}else{var F=b.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(_.exists(F.prev)&&_.exists(F.next)&&E(F.prev.ev,F.next.ev),e&&e.statusRemove(F.ev.seg),F.remove(),!b.primary){var O=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=O}m.push(b.seg)}o.getHead().remove()}return e&&e.done(),m}return A?{addRegion:function(T){for(var l,_=T[T.length-1],w=0;wr!=p>r&&t<(h-s)*(r-c)/(p-c)+s;d&&(o=!o)}return o}}}),fy=Le({"src/lib/polygon.js"(Z,H){"use strict";var g=v_().dot,x=$n().BADNUM,A=H.exports={};A.tester=function(e){var t=e.slice(),r=t[0][0],o=r,i=t[0][1],n=i,a;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),a=1;ao||M===x||Mn||_&&c(l))}function p(l,_){var w=l[0],M=l[1];if(w===x||wo||M===x||Mn)return!1;var E=t.length,m=t[0][0],b=t[0][1],v=0,u,y,f,P,L;for(u=1;uMath.max(y,m)||M>Math.max(f,b)))if(Ma||Math.abs(g(p,c))>o)return!0;return!1},A.filter=function(e,t){var r=[e[0]],o=0,i=0;function n(s){e.push(s);var c=r.length,h=o;r.splice(i+1);for(var p=h+1;p1){var a=e.pop();n(a)}return{addPt:n,raw:e,filtered:r}}}}),e5=Le({"src/components/selections/constants.js"(Z,H){"use strict";H.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),t5=Le({"src/components/selections/select.js"(Z,H){"use strict";var g=JE(),x=QE(),A=so(),S=rs().dashStyle,e=$a(),t=Dc(),r=Td().makeEventData,o=hv(),i=o.freeMode,n=o.rectMode,a=o.drawMode,s=o.openMode,c=o.selectMode,h=Wp(),p=uy(),d=E_(),T=jp().clearOutline,l=Gp(),_=l.handleEllipse,w=l.readPaths,M=S_().newShapes,E=t2(),m=l2().activateLastSelection,b=ni(),v=b.sorterAsc,u=fy(),y=y_(),f=Kc().getFromId,P=ly(),L=cy().redrawReglTraces,z=e5(),F=z.MINSELECT,O=u.filter,B=u.tester,I=M_(),N=I.p2r,U=I.axValue,W=I.getTransform;function Q(Fe){return Fe.subplot!==void 0}function le(Fe,Ze,Ne,Se,Ve){var Ee=!Q(Se),be=i(Ve),Ce=n(Ve),et=s(Ve),ht=a(Ve),yt=c(Ve),Pt=Ve==="drawline",Ot=Ve==="drawcircle",Wt=Pt||Ot,$t=Se.gd,lr=$t._fullLayout,fi=yt&&lr.newselection.mode==="immediate"&&Ee,Pi=lr._zoomlayer,Bi=Se.element.getBoundingClientRect(),zi=Se.plotinfo,en=W(zi),Ri=Ze-Bi.left,Zi=Ne-Bi.top;lr._calcInverseTransform($t);var vn=b.apply3DTransform(lr._invTransform)(Ri,Zi);Ri=vn[0],Zi=vn[1];var Xt=lr._invScaleX,Dt=lr._invScaleY,qt=Ri,Ut=Zi,br="M"+Ri+","+Zi,Zr=Se.xaxes[0],_i=Se.yaxes[0],Yr=Zr._length,Di=_i._length,qi=Fe.altKey&&!(a(Ve)&&et),$i,Mi,sn,vt,pt,kr,Cr;X(Fe,$t,Se),be&&($i=O([[Ri,Zi]],z.BENDPX));var wr=Pi.selectAll("path.select-outline-"+zi.id).data([1]),Ar=ht?lr.newshape:lr.newselection;ht&&(Se.hasText=Ar.label.text||Ar.label.texttemplate);var Er=ht&&!et?Ar.fillcolor:"rgba(0,0,0,0)",Br=Ar.line.color||(Ee?e.contrast($t._fullLayout.plot_bgcolor):"#7f7f7f");wr.enter().append("path").attr("class","select-outline select-outline-"+zi.id).style({opacity:ht?Ar.opacity/2:1,"stroke-dasharray":S(Ar.line.dash,Ar.line.width),"stroke-width":Ar.line.width+"px","shape-rendering":"crispEdges"}).call(e.stroke,Br).call(e.fill,Er).attr("fill-rule","evenodd").classed("cursor-move",!!ht).attr("transform",en).attr("d",br+"Z");var Pr=Pi.append("path").attr("class","zoombox-corners").style({fill:e.background,stroke:e.defaultLine,"stroke-width":1}).attr("transform",en).attr("d","M0,0Z");if(ht&&Se.hasText){var Qr=Pi.select(".label-temp");Qr.empty()&&(Qr=Pi.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var ci=lr._uid+z.SELECTID,mi=[],Et=ne($t,Se.xaxes,Se.yaxes,Se.subplot);fi&&!Fe.shiftKey&&(Se._clearSubplotSelections=function(){if(Ee){var gr=Zr._id,ti=_i._id;it($t,gr,ti,Et);for(var wi=($t.layout||{}).selections||[],Gi=[],Fi=!1,xi=0;xi=0){$t._fullLayout._deactivateShape($t);return}if(!ht){var wi=lr.clickmode;y.done(ci).then(function(){if(y.clear(ci),gr===2){for(wr.remove(),pt=0;pt-1&&se(ti,$t,Se.xaxes,Se.yaxes,Se.subplot,Se,wr),wi==="event"&&xr($t,void 0);t.click($t,ti,zi.id)}).catch(b.error)}},Se.doneFn=function(){Pr.remove(),y.done(ci).then(function(){y.clear(ci),!fi&&vt&&Se.selectionDefs&&(vt.subtract=qi,Se.selectionDefs.push(vt),Se.mergedPolygons.length=0,[].push.apply(Se.mergedPolygons,sn)),(fi||ht)&&j(Se,fi),Se.doneFnCompleted&&Se.doneFnCompleted(mi),yt&&xr($t,Cr)}).catch(b.error)}}function se(Fe,Ze,Ne,Se,Ve,Ee,be){var Ce=Ze._hoverdata,et=Ze._fullLayout,ht=et.clickmode,yt=ht.indexOf("event")>-1,Pt=[],Ot,Wt,$t,lr,fi,Pi,Bi,zi,en,Ri;if(_e(Ce)){X(Fe,Ze,Ee),Ot=ne(Ze,Ne,Se,Ve);var Zi=we(Ce,Ot),vn=Zi.pointNumbers.length>0;if(vn?Ie(Ot,Zi):Xe(Ot)&&(Bi=Oe(Zi))){for(be&&be.remove(),Ri=0;Ri=0}function ae(Fe){return Fe._fullLayout._activeSelectionIndex>=0}function j(Fe,Ze){var Ne=Fe.dragmode,Se=Fe.plotinfo,Ve=Fe.gd;re(Ve)&&Ve._fullLayout._deactivateShape(Ve),ae(Ve)&&Ve._fullLayout._deactivateSelection(Ve);var Ee=Ve._fullLayout,be=Ee._zoomlayer,Ce=a(Ne),et=c(Ne);if(Ce||et){var ht=be.selectAll(".select-outline-"+Se.id);if(ht&&Ve._fullLayout._outlining){var yt;Ce&&(yt=M(ht,Fe)),yt&&A.call("_guiRelayout",Ve,{shapes:yt});var Pt;et&&!Q(Fe)&&(Pt=E(ht,Fe)),Pt&&(Ve._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Ve,{selections:Pt}).then(function(){Ze&&m(Ve)})),Ve._fullLayout._outlining=!1}}Se.selection={},Se.selection.selectionDefs=Fe.selectionDefs=[],Se.selection.mergedPolygons=Fe.mergedPolygons=[]}function ee(Fe){return Fe._id}function ne(Fe,Ze,Ne,Se){if(!Fe.calcdata)return[];var Ve=[],Ee=Ze.map(ee),be=Ne.map(ee),Ce,et,ht;for(ht=0;ht0,Ee=Ve?Se[0]:Ne;return Ze.selectedpoints?Ze.selectedpoints.indexOf(Ee)>-1:!1}function Ie(Fe,Ze){var Ne=[],Se,Ve,Ee,be;for(be=0;be0&&Ne.push(Se);if(Ne.length===1&&(Ee=Ne[0]===Ze.searchInfo,Ee&&(Ve=Ze.searchInfo.cd[0].trace,Ve.selectedpoints.length===Ze.pointNumbers.length))){for(be=0;be1||(Ze+=Se.selectedpoints.length,Ze>1)))return!1;return Ze===1}function tt(Fe,Ze,Ne){var Se;for(Se=0;Se-1&&Ze;if(!be&&Ze){var gr=kt(Fe,!0);if(gr.length){var ti=gr[0].xref,wi=gr[0].yref;if(ti&&wi){var Gi=jt(gr),Fi=nr([f(Fe,ti,"x"),f(Fe,wi,"y")]);Fi(mi,Gi)}}Fe._fullLayout._noEmitSelectedAtStart?Fe._fullLayout._noEmitSelectedAtStart=!1:ar&&xr(Fe,mi),Ot._reselect=!1}if(!be&&Ot._deselect){var xi=Ot._deselect;Ce=xi.xref,et=xi.yref,Qe(Ce,et,yt)||it(Fe,Ce,et,Se),ar&&(mi.points.length?xr(Fe,mi):mt(Fe)),Ot._deselect=!1}return{eventData:mi,selectionTesters:Ne}}function ze(Fe){var Ze=Fe.calcdata;if(Ze)for(var Ne=0;Ne=0){Er._fullLayout._deactivateShape(Er);return}var Br=Er._fullLayout.clickmode;if(J(Er),wr===2&&!Me&&Mi(),ot)Br.indexOf("select")>-1&&v(Ar,Er,it,$e,_e.id,yt),Br.indexOf("event")>-1&&a.click(Er,Ar,_e.id);else if(wr===1&&Me){var Pr=tt?ue:pe,Qr=tt==="s"||rt==="w"?0:1,ci=Pr._name+".range["+Qr+"]",mi=I(Pr,Qr),Et="left",ar="middle";if(Pr.fixedrange)return;tt?(ar=tt==="n"?"top":"bottom",Pr.side==="right"&&(Et="right")):rt==="e"&&(Et="right"),Er._context.showAxisRangeEntryBoxes&&g.select(ht).call(o.makeEditable,{gd:Er,immediate:!0,background:Er._fullLayout.paper_bgcolor,text:String(mi),fill:Pr.tickfont?Pr.tickfont.color:"#444",horizontalAlign:Et,verticalAlign:ar}).on("edit",function(gr){var ti=Pr.d2r(gr);ti!==void 0&&t.call("_guiRelayout",Er,ci,ti)})}}h.init(yt);var Wt,$t,lr,fi,Pi,Bi,zi,en,Ri,Zi;function vn(wr,Ar,Er){var Br=ht.getBoundingClientRect();Wt=Ar-Br.left,$t=Er-Br.top,ce._fullLayout._calcInverseTransform(ce);var Pr=x.apply3DTransform(ce._fullLayout._invTransform)(Wt,$t);Wt=Pr[0],$t=Pr[1],lr={l:Wt,r:Wt,w:0,t:$t,b:$t,h:0},fi=ce._hmpixcount?ce._hmlumcount/ce._hmpixcount:S(ce._fullLayout.plot_bgcolor).getLuminance(),Pi="M0,0H"+Bt+"V"+jt+"H0V0",Bi=!1,zi="xy",Zi=!1,en=le(Je,fi,kt,Mt,Pi),Ri=se(Je,kt,Mt)}function Xt(wr,Ar){if(ce._transitioningWithDuration)return!1;var Er=Math.max(0,Math.min(Bt,Ee*wr+Wt)),Br=Math.max(0,Math.min(jt,be*Ar+$t)),Pr=Math.abs(Er-Wt),Qr=Math.abs(Br-$t);lr.l=Math.min(Wt,Er),lr.r=Math.max(Wt,Er),lr.t=Math.min($t,Br),lr.b=Math.max($t,Br);function ci(){zi="",lr.r=lr.l,lr.t=lr.b,Ri.attr("d","M0,0Z")}if(cr.isSubplotConstrained)Pr>P||Qr>P?(zi="xy",Pr/Bt>Qr/jt?(Qr=Pr*jt/Bt,$t>Br?lr.t=$t-Qr:lr.b=$t+Qr):(Pr=Qr*Bt/jt,Wt>Er?lr.l=Wt-Pr:lr.r=Wt+Pr),Ri.attr("d",ae(lr))):ci();else if(nr.isSubplotConstrained)if(Pr>P||Qr>P){zi="xy";var mi=Math.min(lr.l/Bt,(jt-lr.b)/jt),Et=Math.max(lr.r/Bt,(jt-lr.t)/jt);lr.l=mi*Bt,lr.r=Et*Bt,lr.b=(1-mi)*jt,lr.t=(1-Et)*jt,Ri.attr("d",ae(lr))}else ci();else!mr||Qr0){var gr;if(nr.isSubplotConstrained||!Lr&&mr.length===1){for(gr=0;gr1&&(ci.maxallowed!==void 0&&mt===(ci.range[0]1&&(mi.maxallowed!==void 0&&Fe===(mi.range[0]=0?Math.min(ce,.9):1/(1/Math.max(ce,-.3)+3.222))}function Q(ce,_e,we){return ce?ce==="nsew"?we?"":_e==="pan"?"move":"crosshair":ce.toLowerCase()+"-resize":"pointer"}function le(ce,_e,we,Oe,Ie){return ce.append("path").attr("class","zoombox").style({fill:_e>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",r(we,Oe)).attr("d",Ie+"Z")}function se(ce,_e,we){return ce.append("path").attr("class","zoombox-corners").style({fill:i.background,stroke:i.defaultLine,"stroke-width":1,opacity:0}).attr("transform",r(_e,we)).attr("d","M0,0Z")}function fe(ce,_e,we,Oe,Ie,Xe){ce.attr("d",Oe+"M"+we.l+","+we.t+"v"+we.h+"h"+we.w+"v-"+we.h+"h-"+we.w+"Z"),G(ce,_e,Ie,Xe)}function G(ce,_e,we,Oe){we||(ce.transition().style("fill",Oe>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_e.transition().style("opacity",1).duration(200))}function J(ce){g.select(ce).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function $(ce){L&&ce.data&&ce._context.showTips&&(x.notifier(x._(ce,"Double-click to zoom back out"),"long"),L=!1)}function X(ce,_e){return"M"+(ce.l-.5)+","+(_e-P-.5)+"h-3v"+(2*P+1)+"h3ZM"+(ce.r+.5)+","+(_e-P-.5)+"h3v"+(2*P+1)+"h-3Z"}function re(ce,_e){return"M"+(_e-P-.5)+","+(ce.t-.5)+"v-3h"+(2*P+1)+"v3ZM"+(_e-P-.5)+","+(ce.b+.5)+"v3h"+(2*P+1)+"v-3Z"}function ae(ce){var _e=Math.floor(Math.min(ce.b-ce.t,ce.r-ce.l,P)/2);return"M"+(ce.l-3.5)+","+(ce.t-.5+_e)+"h3v"+-_e+"h"+_e+"v-3h-"+(_e+3)+"ZM"+(ce.r+3.5)+","+(ce.t-.5+_e)+"h-3v"+-_e+"h"+-_e+"v-3h"+(_e+3)+"ZM"+(ce.r+3.5)+","+(ce.b+.5-_e)+"h-3v"+_e+"h"+-_e+"v3h"+(_e+3)+"ZM"+(ce.l-3.5)+","+(ce.b+.5-_e)+"h3v"+_e+"h"+_e+"v3h-"+(_e+3)+"Z"}function j(ce,_e,we,Oe,Ie){for(var Xe=!1,tt={},rt={},Je,ot,Me,pe,ue=(Ie||{}).xaHash,ze=(Ie||{}).yaHash,Qe=0;Qe<_e.length;Qe++){var it=_e[Qe];for(Je in we)if(it[Je]){for(Me in it)!(Ie&&(ue[Me]||ze[Me]))&&!(Me.charAt(0)==="x"?we:Oe)[Me]&&(tt[Me]=Je);for(ot in Oe)!(Ie&&(ue[ot]||ze[ot]))&&it[ot]&&(Xe=!0)}for(ot in Oe)if(it[ot])for(pe in it)!(Ie&&(ue[pe]||ze[pe]))&&!(pe.charAt(0)==="x"?we:Oe)[pe]&&(rt[pe]=ot)}Xe&&(x.extendFlat(tt,rt),rt={});var $e={},kt=[];for(Me in tt){var Mt=E(ce,Me);kt.push(Mt),$e[Mt._id]=Mt}var Bt={},jt=[];for(pe in rt){var cr=E(ce,pe);jt.push(cr),Bt[cr._id]=cr}return{xaHash:$e,yaHash:Bt,xaxes:kt,yaxes:jt,xLinks:tt,yLinks:rt,isSubplotConstrained:Xe}}function ee(ce,_e){if(!e)ce.onwheel!==void 0?ce.onwheel=_e:ce.onmousewheel!==void 0?ce.onmousewheel=_e:ce.isAddedWheelEvent||(ce.isAddedWheelEvent=!0,ce.addEventListener("wheel",_e,{passive:!1}));else{var we=ce.onwheel!==void 0?"wheel":"mousewheel";ce._onwheel&&ce.removeEventListener(we,ce._onwheel),ce._onwheel=_e,ce.addEventListener(we,_e,{passive:!1})}}function ne(ce){var _e=[];for(var we in ce)_e.push(ce[we]);return _e}H.exports={makeDragBox:z,makeDragger:F,makeRectDragger:O,makeZoombox:le,makeCorners:se,updateZoombox:fe,xyCorners:ae,transitionZoombox:G,removeZoombox:J,showDoubleClickNotifier:$,attachWheelEventHandler:ee}}}),h2=Le({"src/plots/cartesian/graph_interact.js"(Z){"use strict";var H=Ji(),g=Dc(),x=Kh(),A=fv(),S=f2().makeDragBox,e=ch().DRAGGERSIZE;Z.initInteractions=function(r){var o=r._fullLayout;if(r._context.staticPlot){H.select(r).selectAll(".drag").remove();return}if(!(!o._has("cartesian")&&!o._has("splom"))){var i=Object.keys(o._plots||{}).sort(function(a,s){if((o._plots[a].mainplot&&!0)===(o._plots[s].mainplot&&!0)){var c=a.split("y"),h=s.split("y");return c[0]===h[0]?Number(c[1]||1)-Number(h[1]||1):Number(c[0]||1)-Number(h[0]||1)}return o._plots[a].mainplot?1:-1});i.forEach(function(a){var s=o._plots[a],c=s.xaxis,h=s.yaxis;if(!s.mainplot){var p=S(r,s,c._offset,h._offset,c._length,h._length,"ns","ew");p.onmousemove=function(l){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===a&&r._fullLayout._plots[a]&&g.hover(r,l,a)},g.hover(r,l,a),r._fullLayout._lasthover=p,r._fullLayout._hoversubplot=a},p.onmouseout=function(l){r._dragging||(r._fullLayout._hoversubplot=null,x.unhover(r,l))},r._context.showAxisDragHandles&&(S(r,s,c._offset-e,h._offset-e,e,e,"n","w"),S(r,s,c._offset+c._length,h._offset-e,e,e,"n","e"),S(r,s,c._offset-e,h._offset+h._length,e,e,"s","w"),S(r,s,c._offset+c._length,h._offset+h._length,e,e,"s","e"))}if(r._context.showAxisDragHandles){if(a===c._mainSubplot){var d=c._mainLinePosition;c.side==="top"&&(d-=e),S(r,s,c._offset+c._length*.1,d,c._length*.8,e,"","ew"),S(r,s,c._offset,d,c._length*.1,e,"","w"),S(r,s,c._offset+c._length*.9,d,c._length*.1,e,"","e")}if(a===h._mainSubplot){var T=h._mainLinePosition;h.side!=="right"&&(T-=e),S(r,s,T,h._offset+h._length*.1,e,h._length*.8,"ns",""),S(r,s,T,h._offset+h._length*.9,e,h._length*.1,"s",""),S(r,s,T,h._offset,e,h._length*.1,"n","")}}});var n=o._hoverlayer.node();n.onmousemove=function(a){a.target=r._fullLayout._lasthover,g.hover(r,a,o._hoversubplot)},n.onclick=function(a){a.target=r._fullLayout._lasthover,g.click(r,a)},n.onmousedown=function(a){r._fullLayout._lasthover.onmousedown(a)},Z.updateFx(r)}},Z.updateFx=function(t){var r=t._fullLayout,o=r.dragmode==="pan"?"move":"crosshair";A(r._draggers,o)}}}),n5=Le({"src/plot_api/container_array_match.js"(Z,H){"use strict";var g=so();H.exports=function(A){for(var S=g.layoutArrayContainers,e=g.layoutArrayRegexes,t=A.split("[")[0],r,o,i=0;i1&&x.warn("Full array edits are incompatible with other edits",c);var w=n[""][""];if(t(w))i.set(null);else if(Array.isArray(w))i.set(w);else return x.warn("Unrecognized full array edit value",c,w),!0;return T?!1:(h(l,_),p(o),!0)}var M=Object.keys(n).map(Number).sort(A),E=i.get(),m=E||[],b=s(_,c).get(),v=[],u=-1,y=m.length,f,P,L,z,F,O,B,I;for(f=0;fm.length-(B?0:1)){x.warn("index out of range",c,L);continue}if(O!==void 0)F.length>1&&x.warn("Insertion & removal are incompatible with edits to the same index.",c,L),t(O)?v.push(L):B?(O==="add"&&(O={}),m.splice(L,0,O),b&&b.splice(L,0,{})):x.warn("Unrecognized full object edit value",c,L,O),u===-1&&(u=L);else for(P=0;P=0;f--)m.splice(v[f],1),b&&b.splice(v[f],1);if(m.length?E||i.set(m):i.set(null),T)return!1;if(h(l,_),d!==g){var N;if(u===-1)N=M;else{for(y=Math.max(m.length,y),N=[],f=0;f=u));f++)N.push(L);for(f=u;f0&&A.log("Clearing previous rejected promises from queue."),l._promises=[]},Z.cleanLayout=function(l){var _,w;l||(l={}),l.xaxis1&&(l.xaxis||(l.xaxis=l.xaxis1),delete l.xaxis1),l.yaxis1&&(l.yaxis||(l.yaxis=l.yaxis1),delete l.yaxis1),l.scene1&&(l.scene||(l.scene=l.scene1),delete l.scene1);var M=(S.subplotsRegistry.cartesian||{}).attrRegex,E=(S.subplotsRegistry.polar||{}).attrRegex,m=(S.subplotsRegistry.ternary||{}).attrRegex,b=(S.subplotsRegistry.gl3d||{}).attrRegex,v=Object.keys(l);for(_=0;_3?(B.x=1.02,B.xanchor="left"):B.x<-2&&(B.x=-.02,B.xanchor="right"),B.y>3?(B.y=1.02,B.yanchor="bottom"):B.y<-2&&(B.y=-.02,B.yanchor="top")),l.dragmode==="rotate"&&(l.dragmode="orbit"),t.clean(l),l.template&&l.template.layout&&Z.cleanLayout(l.template.layout),l};function n(l,_){var w=l[_],M=_.charAt(0);w&&w!=="paper"&&(l[_]=r(w,M,!0))}Z.cleanData=function(l){for(var _=0;_0)return l.substr(0,_)}Z.hasParent=function(l,_){for(var w=d(_);w;){if(w in l)return!0;w=d(w)}return!1};var T=["x","y","z"];Z.clearAxisTypes=function(l,_,w){for(var M=0;M<_.length;M++)for(var E=l._fullData[M],m=0;m<3;m++){var b=o(l,E,T[m]);if(b&&b.type!=="log"){var v=b._name,u=b._id.substr(1);if(u.substr(0,5)==="scene"){if(w[u]!==void 0)continue;v=u+"."+v}var y=v+".type";w[v]===void 0&&w[y]===void 0&&A.nestedProperty(l.layout,y).set(null)}}}}}),C_=Le({"src/plot_api/plot_api.js"(Z){"use strict";var H=Ji(),g=zn(),x=Nw(),A=ni(),S=A.nestedProperty,e=Wg(),t=AE(),r=so(),o=Xg(),i=Ku(),n=Zo(),a=Xw(),s=Sh(),c=rs(),h=$a(),p=h2().initInteractions,d=Bd(),T=cf().clearOutline,l=Qn().dfltConfig,_=a5(),w=o5(),M=cy(),E=qu(),m=ch().AX_NAME_PATTERN,b=0,v=5;function u(Se,Ve,Ee,be){var Ce;if(Se=A.getGraphDiv(Se),e.init(Se),A.isPlainObject(Ve)){var et=Ve;Ve=et.data,Ee=et.layout,be=et.config,Ce=et.frames}var ht=e.triggerHandler(Se,"plotly_beforeplot",[Ve,Ee,be]);if(ht===!1)return Promise.reject();!Ve&&!Ee&&!A.isPlotDiv(Se)&&A.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",Se);function yt(){if(Ce)return Z.addFrames(Se,Ce)}z(Se,be),Ee||(Ee={}),H.select(Se).classed("js-plotly-plot",!0),c.makeTester(),Array.isArray(Se._promises)||(Se._promises=[]);var Pt=(Se.data||[]).length===0&&Array.isArray(Ve);Array.isArray(Ve)&&(w.cleanData(Ve),Pt?Se.data=Ve:Se.data.push.apply(Se.data,Ve),Se.empty=!1),(!Se.layout||Pt)&&(Se.layout=w.cleanLayout(Ee)),i.supplyDefaults(Se);var Ot=Se._fullLayout,Wt=Ot._has("cartesian");Ot._replotting=!0,(Pt||Ot._shouldCreateBgLayer)&&(Ne(Se),Ot._shouldCreateBgLayer&&delete Ot._shouldCreateBgLayer),c.initGradients(Se),c.initPatterns(Se),Pt&&n.saveShowSpikeInitial(Se);var $t=!Se.calcdata||Se.calcdata.length!==(Se._fullData||[]).length;$t&&i.doCalcdata(Se);for(var lr=0;lr=Se.data.length||Ce<-Se.data.length)throw new Error(Ee+" must be valid indices for gd.data.");if(Ve.indexOf(Ce,be+1)>-1||Ce>=0&&Ve.indexOf(-Se.data.length+Ce)>-1||Ce<0&&Ve.indexOf(Se.data.length+Ce)>-1)throw new Error("each index in "+Ee+" must be unique.")}}function N(Se,Ve,Ee){if(!Array.isArray(Se.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(Ve)||(Ve=[Ve]),I(Se,Ve,"currentIndices"),typeof Ee<"u"&&!Array.isArray(Ee)&&(Ee=[Ee]),typeof Ee<"u"&&I(Se,Ee,"newIndices"),typeof Ee<"u"&&Ve.length!==Ee.length)throw new Error("current and new indices must be of equal length.")}function U(Se,Ve,Ee){var be,Ce;if(!Array.isArray(Se.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("traces must be defined.");for(Array.isArray(Ve)||(Ve=[Ve]),be=0;be"u")throw new Error("indices must be an integer or array of integers");I(Se,Ee,"indices");for(var et in Ve){if(!Array.isArray(Ve[et])||Ve[et].length!==Ee.length)throw new Error("attribute "+et+" must be an array of length equal to indices array length");if(Ce&&(!(et in be)||!Array.isArray(be[et])||be[et].length!==Ve[et].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}function Q(Se,Ve,Ee,be){var Ce=A.isPlainObject(be),et=[],ht,yt,Pt,Ot,Wt;Array.isArray(Ee)||(Ee=[Ee]),Ee=B(Ee,Se.data.length-1);for(var $t in Ve)for(var lr=0;lr=0&&Wt<$t.length?$t.splice(0,$t.length-Wt):[];return[$t,lr]}var et=le(Se,Ve,Ee,be,Ce),ht=Z.redraw(Se),yt=[Se,et.update,Ee,et.maxPoints];return t.add(Se,Z.prependTraces,yt,fe,arguments),ht}function G(Se,Ve,Ee,be){Se=A.getGraphDiv(Se);function Ce(Pt,Ot,Wt){var $t,lr;if(A.isTypedArray(Pt))if(Wt<=0){var fi=new Pt.constructor(0),Pi=se(Ot,Pt);Wt<0?($t=Pi,lr=fi):($t=fi,lr=Pi)}else if($t=new Pt.constructor(Wt),lr=new Pt.constructor(Pt.length+Ot.length-Wt),Wt===Ot.length)$t.set(Ot),lr.set(Pt);else if(Wt=0&&Wt<$t.length?$t.splice(Wt,$t.length):[];return[$t,lr]}var et=le(Se,Ve,Ee,be,Ce),ht=Z.redraw(Se),yt=[Se,et.update,Ee,et.maxPoints];return t.add(Se,Z.extendTraces,yt,G,arguments),ht}function J(Se,Ve,Ee){Se=A.getGraphDiv(Se);var be=[],Ce=Z.deleteTraces,et=J,ht=[Se,be],yt=[Se,Ve],Pt,Ot;for(U(Se,Ve,Ee),Array.isArray(Ve)||(Ve=[Ve]),Ve=Ve.map(function(Wt){return A.extendFlat({},Wt)}),w.cleanData(Ve),Pt=0;Pt"u")return Ot=Z.redraw(Se),t.add(Se,Ce,ht,et,yt),Ot;Array.isArray(Ee)||(Ee=[Ee]);try{N(Se,be,Ee)}catch(Wt){throw Se.data.splice(Se.data.length-Ve.length,Ve.length),Wt}return t.startSequence(Se),t.add(Se,Ce,ht,et,yt),Ot=Z.moveTraces(Se,be,Ee),t.stopSequence(Se),Ot}function $(Se,Ve){Se=A.getGraphDiv(Se);var Ee=[],be=Z.addTraces,Ce=$,et=[Se,Ee,Ve],ht=[Se,Ve],yt,Pt;if(typeof Ve>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ve)||(Ve=[Ve]),I(Se,Ve,"indices"),Ve=B(Ve,Se.data.length-1),Ve.sort(A.sorterDes),yt=0;yt"u")for(Ee=[],Ot=0;Ot0&&typeof Ut.parts[_i]!="string";)_i--;var Yr=Ut.parts[_i],Di=Ut.parts[_i-1]+"."+Yr,qi=Ut.parts.slice(0,_i).join("."),$i=S(Se.layout,qi).get(),Mi=S(be,qi).get(),sn=Ut.get();if(br!==void 0){en[qt]=br,Ri[qt]=Yr==="reverse"?br:ae(sn);var vt=o.getLayoutValObject(be,Ut.parts);if(vt&&vt.impliedEdits&&br!==null)for(var pt in vt.impliedEdits)Zi(A.relativeAttr(qt,pt),vt.impliedEdits[pt]);if(["width","height"].indexOf(qt)!==-1)if(br){Zi("autosize",null);var kr=qt==="height"?"width":"height";Zi(kr,be[kr])}else be[qt]=Se._initialAutoSize[qt];else if(qt==="autosize")Zi("width",br?null:be.width),Zi("height",br?null:be.height);else if(Di.match(Ie))Dt(Di),S(be,qi+"._inputRange").set(null);else if(Di.match(Xe)){Dt(Di),S(be,qi+"._inputRange").set(null);var Cr=S(be,qi).get();Cr._inputDomain&&(Cr._input.domain=Cr._inputDomain.slice())}else Di.match(tt)&&S(be,qi+"._inputDomain").set(null);if(Yr==="type"){Xt=$i;var wr=Mi.type==="linear"&&br==="log",Ar=Mi.type==="log"&&br==="linear";if(wr||Ar){if(!Xt||!Xt.range)Zi(qi+".autorange",!0);else if(Mi.autorange)wr&&(Xt.range=Xt.range[1]>Xt.range[0]?[1,2]:[2,1]);else{var Er=Xt.range[0],Br=Xt.range[1];wr?(Er<=0&&Br<=0&&Zi(qi+".autorange",!0),Er<=0?Er=Br/1e6:Br<=0&&(Br=Er/1e6),Zi(qi+".range[0]",Math.log(Er)/Math.LN10),Zi(qi+".range[1]",Math.log(Br)/Math.LN10)):(Zi(qi+".range[0]",Math.pow(10,Er)),Zi(qi+".range[1]",Math.pow(10,Br)))}Array.isArray(be._subplots.polar)&&be._subplots.polar.length&&be[Ut.parts[0]]&&Ut.parts[1]==="radialaxis"&&delete be[Ut.parts[0]]._subplot.viewInitial["radialaxis.range"],r.getComponentMethod("annotations","convertCoords")(Se,Mi,br,Zi),r.getComponentMethod("images","convertCoords")(Se,Mi,br,Zi)}else Zi(qi+".autorange",!0),Zi(qi+".range",null);S(be,qi+"._inputRange").set(null)}else if(Yr.match(m)){var Pr=S(be,qt).get(),Qr=(br||{}).type;(!Qr||Qr==="-")&&(Qr="linear"),r.getComponentMethod("annotations","convertCoords")(Se,Pr,Qr,Zi),r.getComponentMethod("images","convertCoords")(Se,Pr,Qr,Zi)}var ci=_.containerArrayMatch(qt);if(ci){Wt=ci.array,$t=ci.index;var mi=ci.property,Et=vt||{editType:"calc"};$t!==""&&mi===""&&(_.isAddVal(br)?Ri[qt]=null:_.isRemoveVal(br)?Ri[qt]=(S(Ee,Wt).get()||[])[$t]:A.warn("unrecognized full object value",Ve)),E.update(zi,Et),Ot[Wt]||(Ot[Wt]={});var ar=Ot[Wt][$t];ar||(ar=Ot[Wt][$t]={}),ar[mi]=br,delete Ve[qt]}else Yr==="reverse"?($i.range?$i.range.reverse():(Zi(qi+".autorange",!0),$i.range=[1,0]),Mi.autorange?zi.calc=!0:zi.plot=!0):(qt==="dragmode"&&(br===!1&&sn!==!1||br!==!1&&sn===!1)||be._has("scatter-like")&&be._has("regl")&&qt==="dragmode"&&(br==="lasso"||br==="select")&&!(sn==="lasso"||sn==="select")?zi.plot=!0:vt?E.update(zi,vt):zi.calc=!0,Ut.set(br))}}for(Wt in Ot){var gr=_.applyContainerArrayChanges(Se,et(Ee,Wt),Ot[Wt],zi,et);gr||(zi.plot=!0)}for(var ti in vn){Xt=n.getFromId(Se,ti);var wi=Xt&&Xt._constraintGroup;if(wi){zi.calc=!0;for(var Gi in wi)vn[Gi]||(n.getFromId(Se,Gi)._constraintShrinkable=!0)}}(Je(Se)||Ve.height||Ve.width)&&(zi.plot=!0);var Fi=be.shapes;for($t=0;$t1;)if(be.pop(),Ee=S(Ve,be.join(".")+".uirevision").get(),Ee!==void 0)return Ee;return Ve.uirevision}function it(Se,Ve){for(var Ee=0;Ee=Ce.length?Ce[0]:Ce[Ot]:Ce}function yt(Ot){return Array.isArray(et)?Ot>=et.length?et[0]:et[Ot]:et}function Pt(Ot,Wt){var $t=0;return function(){if(Ot&&++$t===Wt)return Ot()}}return new Promise(function(Ot,Wt){function $t(){if(be._frameQueue.length!==0){for(;be._frameQueue.length;){var Yr=be._frameQueue.pop();Yr.onInterrupt&&Yr.onInterrupt()}Se.emit("plotly_animationinterrupted",[])}}function lr(Yr){if(Yr.length!==0){for(var Di=0;Dibe._timeToNext&&Pi()};Yr()}var zi=0;function en(Yr){return Array.isArray(Ce)?zi>=Ce.length?Yr.transitionOpts=Ce[zi]:Yr.transitionOpts=Ce[0]:Yr.transitionOpts=Ce,zi++,Yr}var Ri,Zi,vn=[],Xt=Ve==null,Dt=Array.isArray(Ve),qt=!Xt&&!Dt&&A.isPlainObject(Ve);if(qt)vn.push({type:"object",data:en(A.extendFlat({},Ve))});else if(Xt||["string","number"].indexOf(typeof Ve)!==-1)for(Ri=0;Ri0&&ZrZr)&&_i.push(Zi);vn=_i}}vn.length>0?lr(vn):(Se.emit("plotly_animated"),Ot())})}function xr(Se,Ve,Ee){if(Se=A.getGraphDiv(Se),Ve==null)return Promise.resolve();if(!A.isPlotDiv(Se))throw new Error("This element is not a Plotly plot: "+Se+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var be,Ce,et,ht,yt=Se._transitionData._frames,Pt=Se._transitionData._frameHash;if(!Array.isArray(Ve))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+Ve);var Ot=yt.length+Ve.length*2,Wt=[],$t={};for(be=Ve.length-1;be>=0;be--)if(A.isPlainObject(Ve[be])){var lr=Ve[be].name,fi=(Pt[lr]||$t[lr]||{}).name,Pi=Ve[be].name,Bi=Pt[fi]||$t[fi];fi&&Pi&&typeof Pi=="number"&&Bi&&bUt.index?-1:qt.index=0;be--){if(Ce=Wt[be].frame,typeof Ce.name=="number"&&A.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Ce.name)for(;Pt[Ce.name="frame "+Se._transitionData._counter++];);if(Pt[Ce.name]){for(et=0;et=0;Ee--)be=Ve[Ee],et.push({type:"delete",index:be}),ht.unshift({type:"insert",index:be,value:Ce[be]});var yt=i.modifyFrames,Pt=i.modifyFrames,Ot=[Se,ht],Wt=[Se,et];return t&&t.add(Se,yt,Ot,Pt,Wt),i.modifyFrames(Se,et)}function Fe(Se){Se=A.getGraphDiv(Se);var Ve=Se._fullLayout||{},Ee=Se._fullData||[];return i.cleanPlot([],{},Ee,Ve),i.purge(Se),e.purge(Se),Ve._container&&Ve._container.remove(),delete Se._context,Se}function Ze(Se){var Ve=Se._fullLayout,Ee=Se.getBoundingClientRect();if(!A.equalDomRects(Ee,Ve._lastBBox)){var be=Ve._invTransform=A.inverseTransformMatrix(A.getFullTransformMatrix(Se));Ve._invScaleX=Math.sqrt(be[0][0]*be[0][0]+be[0][1]*be[0][1]+be[0][2]*be[0][2]),Ve._invScaleY=Math.sqrt(be[1][0]*be[1][0]+be[1][1]*be[1][1]+be[1][2]*be[1][2]),Ve._lastBBox=Ee}}function Ne(Se){var Ve=H.select(Se),Ee=Se._fullLayout;if(Ee._calcInverseTransform=Ze,Ee._calcInverseTransform(Se),Ee._container=Ve.selectAll(".plot-container").data([0]),Ee._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),Ee._paperdiv=Ee._container.selectAll(".svg-container").data([0]),Ee._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),Ee._glcontainer=Ee._paperdiv.selectAll(".gl-container").data([{}]),Ee._glcontainer.enter().append("div").classed("gl-container",!0),Ee._paperdiv.selectAll(".main-svg").remove(),Ee._paperdiv.select(".modebar-container").remove(),Ee._paper=Ee._paperdiv.insert("svg",":first-child").classed("main-svg",!0),Ee._toppaper=Ee._paperdiv.append("svg").classed("main-svg",!0),Ee._modebardiv=Ee._paperdiv.append("div"),delete Ee._modeBar,Ee._hoverpaper=Ee._paperdiv.append("svg").classed("main-svg",!0),!Ee._uid){var be={};H.selectAll("defs").each(function(){this.id&&(be[this.id.split("-")[1]]=1)}),Ee._uid=A.randstr(be)}Ee._paperdiv.selectAll(".main-svg").attr(d.svgAttrs),Ee._defs=Ee._paper.append("defs").attr("id","defs-"+Ee._uid),Ee._clips=Ee._defs.append("g").classed("clips",!0),Ee._topdefs=Ee._toppaper.append("defs").attr("id","topdefs-"+Ee._uid),Ee._topclips=Ee._topdefs.append("g").classed("clips",!0),Ee._bgLayer=Ee._paper.append("g").classed("bglayer",!0),Ee._draggers=Ee._paper.append("g").classed("draglayer",!0);var Ce=Ee._paper.append("g").classed("layer-below",!0);Ee._imageLowerLayer=Ce.append("g").classed("imagelayer",!0),Ee._shapeLowerLayer=Ce.append("g").classed("shapelayer",!0),Ee._cartesianlayer=Ee._paper.append("g").classed("cartesianlayer",!0),Ee._polarlayer=Ee._paper.append("g").classed("polarlayer",!0),Ee._smithlayer=Ee._paper.append("g").classed("smithlayer",!0),Ee._ternarylayer=Ee._paper.append("g").classed("ternarylayer",!0),Ee._geolayer=Ee._paper.append("g").classed("geolayer",!0),Ee._funnelarealayer=Ee._paper.append("g").classed("funnelarealayer",!0),Ee._pielayer=Ee._paper.append("g").classed("pielayer",!0),Ee._iciclelayer=Ee._paper.append("g").classed("iciclelayer",!0),Ee._treemaplayer=Ee._paper.append("g").classed("treemaplayer",!0),Ee._sunburstlayer=Ee._paper.append("g").classed("sunburstlayer",!0),Ee._indicatorlayer=Ee._toppaper.append("g").classed("indicatorlayer",!0),Ee._glimages=Ee._paper.append("g").classed("glimages",!0);var et=Ee._toppaper.append("g").classed("layer-above",!0);Ee._imageUpperLayer=et.append("g").classed("imagelayer",!0),Ee._shapeUpperLayer=et.append("g").classed("shapelayer",!0),Ee._selectionLayer=Ee._toppaper.append("g").classed("selectionlayer",!0),Ee._infolayer=Ee._toppaper.append("g").classed("infolayer",!0),Ee._menulayer=Ee._toppaper.append("g").classed("menulayer",!0),Ee._zoomlayer=Ee._toppaper.append("g").classed("zoomlayer",!0),Ee._hoverlayer=Ee._hoverpaper.append("g").classed("hoverlayer",!0),Ee._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),Se.emit("plotly_framework")}Z.animate=mr,Z.addFrames=xr,Z.deleteFrames=mt,Z.addTraces=J,Z.deleteTraces=$,Z.extendTraces=fe,Z.moveTraces=X,Z.prependTraces=G,Z.newPlot=O,Z._doPlot=u,Z.purge=Fe,Z.react=Bt,Z.redraw=F,Z.relayout=_e,Z.restyle=re,Z.setPlotConfig=f,Z.update=ot,Z._guiRelayout=Me(_e),Z._guiRestyle=Me(re),Z._guiUpdate=Me(ot),Z._storeDirectGUIEdit=ne}}),up=Le({"src/snapshot/helpers.js"(Z){"use strict";var H=so();Z.getDelay=function(A){return A._has&&(A._has("gl3d")||A._has("mapbox")||A._has("map"))?500:0},Z.getRedrawFunc=function(A){return function(){H.getComponentMethod("colorbar","draw")(A)}},Z.encodeSVG=function(A){return"data:image/svg+xml,"+encodeURIComponent(A)},Z.encodeJSON=function(A){return"data:application/json,"+encodeURIComponent(A)};var g=window.URL||window.webkitURL;Z.createObjectURL=function(A){return g.createObjectURL(A)},Z.revokeObjectURL=function(A){return g.revokeObjectURL(A)},Z.createBlob=function(A,S){if(S==="svg")return new window.Blob([A],{type:"image/svg+xml;charset=utf-8"});if(S==="full-json")return new window.Blob([A],{type:"application/json;charset=utf-8"});var e=x(window.atob(A));return new window.Blob([e],{type:"image/"+S})},Z.octetStream=function(A){document.location.href="data:application/octet-stream"+A};function x(A){for(var S=A.length,e=new ArrayBuffer(S),t=new Uint8Array(e),r=0;r")!==-1?"":s.html(h).text()});return s.remove(),c}function n(a){return a.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}H.exports=function(s,c,h){var p=s._fullLayout,d=p._paper,T=p._toppaper,l=p.width,_=p.height,w;d.insert("rect",":first-child").call(A.setRect,0,0,l,_).call(S.fill,p.paper_bgcolor);var M=p._basePlotModules||[];for(w=0;w1&&E.push(s("object","layout"))),x.supplyDefaults(m);for(var u=m._fullData,y=b.length,f=0;fP.length&&M.push(s("unused",E,y.concat(P.length)));var I=P.length,N=Array.isArray(B);N&&(I=Math.min(I,B.length));var U,W,Q,le,se;if(L.dimensions===2)for(W=0;WP[W].length&&M.push(s("unused",E,y.concat(W,P[W].length)));var fe=P[W].length;for(U=0;U<(N?Math.min(fe,B[W].length):fe);U++)Q=N?B[W][U]:B,le=f[W][U],se=P[W][U],g.validate(le,Q)?se!==le&&se!==+le&&M.push(s("dynamic",E,y.concat(W,U),le,se)):M.push(s("value",E,y.concat(W,U),le))}else M.push(s("array",E,y.concat(W),f[W]));else for(W=0;WF?M.push({code:"unused",traceType:f,templateCount:z,dataCount:F}):F>z&&M.push({code:"reused",traceType:f,templateCount:z,dataCount:F})}}function O(B,I){for(var N in B)if(N.charAt(0)!=="_"){var U=B[N],W=s(B,N,I);g(U)?(Array.isArray(B)&&U._template===!1&&U.templateitemname&&M.push({code:"missing",path:W,templateitemname:U.templateitemname}),O(U,W)):Array.isArray(U)&&c(U)&&O(U,W)}}if(O({data:m,layout:E},""),M.length)return M.map(h)};function c(p){for(var d=0;d=0;h--){var p=e[h];if(p.type==="scatter"&&p.xaxis===s.xaxis&&p.yaxis===s.yaxis){p.opacity=void 0;break}}}}}}}),d5=Le({"src/traces/scatter/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=__();H.exports=function(A,S){function e(r,o){return g.coerce(A,S,x,r,o)}var t=S.barmode==="group";S.scattermode==="group"&&e("scattergap",t?S.bargap:.2)}}}),mv=Le({"src/plots/cartesian/align_period.js"(Z,H){"use strict";var g=zn(),x=ni(),A=x.dateTime2ms,S=x.incrementMonth,e=$n(),t=e.ONEAVGMONTH;H.exports=function(o,i,n,a){if(i.type!=="date")return{vals:a};var s=o[n+"periodalignment"];if(!s)return{vals:a};var c=o[n+"period"],h;if(g(c)){if(c=+c,c<=0)return{vals:a}}else if(typeof c=="string"&&c.charAt(0)==="M"){var p=+c.substring(1);if(p>0&&Math.round(p)===p)h=p;else return{vals:a}}for(var d=i.calendar,T=s==="start",l=s==="end",_=o[n+"period0"],w=A(_,d)||0,M=[],E=[],m=[],b=a.length,v=0;vu;)P=S(P,-h,d);for(;P<=u;)P=S(P,h,d);f=S(P,-h,d)}else{for(y=Math.round((u-w)/c),P=w+y*c;P>u;)P-=c;for(;P<=u;)P+=c;f=P-c}M[v]=T?f:l?P:(f+P)/2,E[v]=f,m[v]=P}return{vals:M,starts:E,ends:m}}}}),Zd=Le({"src/traces/scatter/colorscale_calc.js"(Z,H){"use strict";var g=ud().hasColorscale,x=cd(),A=gu();H.exports=function(e,t){A.hasLines(t)&&g(t,"line")&&x(e,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),A.hasMarkers(t)&&(g(t,"marker")&&x(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g(t,"marker.line")&&x(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),zv=Le({"src/traces/scatter/arrays_to_calcdata.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){for(var e=0;eO&&f[I].gap;)I--;for(U=f[I].s,B=f.length-1;B>I;B--)f[B].s=U;for(;ON+B||!g(I))}for(var W=0;Wz[d]&&d0?e:t)/(d._m*_*(d._m>0?e:t)))),Pt*=1e3}if(Ot===A){if(l&&(Ot=d.c2p(yt.y,!0)),Ot===A)return!1;Ot*=1e3}return[Pt,Ot]}function ee(ht,yt,Pt,Ot){var Wt=Pt-ht,$t=Ot-yt,lr=.5-ht,fi=.5-yt,Pi=Wt*Wt+$t*$t,Bi=Wt*lr+$t*fi;if(Bi>0&&Bi1||Math.abs(lr.y-Pt[0][1])>1)&&(lr=[lr.x,lr.y],Ot&&we(lr,ht)Xe||ht[1]rt)return[i(ht[0],Ie,Xe),i(ht[1],tt,rt)]}function kt(ht,yt){if(ht[0]===yt[0]&&(ht[0]===Ie||ht[0]===Xe)||ht[1]===yt[1]&&(ht[1]===tt||ht[1]===rt))return!0}function Mt(ht,yt){var Pt=[],Ot=$e(ht),Wt=$e(yt);return Ot&&Wt&&kt(Ot,Wt)||(Ot&&Pt.push(Ot),Wt&&Pt.push(Wt)),Pt}function Bt(ht,yt,Pt){return function(Ot,Wt){var $t=$e(Ot),lr=$e(Wt),fi=[];if($t&&lr&&kt($t,lr))return fi;$t&&fi.push($t),lr&&fi.push(lr);var Pi=2*r.constrain((Ot[ht]+Wt[ht])/2,yt,Pt)-(($t||Ot)[ht]+(lr||Wt)[ht]);if(Pi){var Bi;$t&&lr?Bi=Pi>0==$t[ht]>lr[ht]?$t:lr:Bi=$t||lr,Bi[ht]+=Pi}return fi}}var jt;v==="linear"||v==="spline"?jt=it:v==="hv"||v==="vh"?jt=Mt:v==="hvh"?jt=Bt(0,Ie,Xe):v==="vhv"&&(jt=Bt(1,tt,rt));function cr(ht,yt){var Pt=yt[0]-ht[0],Ot=(yt[1]-ht[1])/Pt,Wt=(ht[1]*yt[0]-yt[1]*ht[0])/Pt;return Wt>0?[Ot>0?Ie:Xe,rt]:[Ot>0?Xe:Ie,tt]}function nr(ht){var yt=ht[0],Pt=ht[1],Ot=yt===z[F-1][0],Wt=Pt===z[F-1][1];if(!(Ot&&Wt))if(F>1){var $t=yt===z[F-2][0],lr=Pt===z[F-2][1];Ot&&(yt===Ie||yt===Xe)&&$t?lr?F--:z[F-1]=ht:Wt&&(Pt===tt||Pt===rt)&&lr?$t?F--:z[F-1]=ht:z[F++]=ht}else z[F++]=ht}function Lr(ht){z[F-1][0]!==ht[0]&&z[F-1][1]!==ht[1]&&nr([pe,ue]),nr(ht),ze=null,pe=ue=0}var mr=r.isArrayOrTypedArray(E);function xr(ht){if(ht&&M&&(ht.i=O,ht.d=s,ht.trace=h,ht.marker=mr?E[ht.i]:E,ht.backoff=M),ne=ht[0]/_,ce=ht[1]/w,ot=ht[0]Xe?Xe:0,Me=ht[1]rt?rt:0,ot||Me){if(!F)z[F++]=[ot||ht[0],Me||ht[1]];else if(ze){var yt=jt(ze,ht);yt.length>1&&(Lr(yt[0]),z[F++]=yt[1])}else Qe=jt(z[F-1],ht)[0],z[F++]=Qe;var Pt=z[F-1];ot&&Me&&(Pt[0]!==ot||Pt[1]!==Me)?(ze&&(pe!==ot&&ue!==Me?nr(pe&&ue?cr(ze,ht):[pe||ot,ue||Me]):pe&&ue&&nr([pe,ue])),nr([ot,Me])):pe-ot&&ue-Me&&nr([ot||pe,Me||ue]),ze=ht,pe=ot,ue=Me}else ze&&Lr(jt(ze,ht)[0]),z[F++]=ht}for(O=0;O_e(W,mt))break;I=W,$=se[0]*le[0]+se[1]*le[1],$>G?(G=$,N=W,Q=!1):$=s.length||!W)break;xr(W),B=W}}ze&&nr([pe||ze[0],ue||ze[1]]),f.push(z.slice(0,F))}var Fe=v.slice(v.length-1);if(M&&Fe!=="h"&&Fe!=="v"){for(var Ze=!1,Ne=-1,Se=[],Ve=0;Ve=0?n=p:(n=p=h,h++),n0,v=i(p,d,T);if(M=l.selectAll("g.trace").data(v,function(y){return y[0].trace.uid}),M.enter().append("g").attr("class",function(y){return"trace scatter trace"+y[0].trace.uid}).style("stroke-miterlimit",2),M.order(),a(p,M,d),b){w&&(E=w());var u=g.transition().duration(_.duration).ease(_.easing).each("end",function(){E&&E()}).each("interrupt",function(){E&&E()});u.each(function(){l.selectAll("g.trace").each(function(y,f){s(p,f,d,y,v,this,_)})})}else M.each(function(y,f){s(p,f,d,y,v,this,_)});m&&M.exit().remove(),l.selectAll("path:not([d])").remove()};function a(h,p,d){p.each(function(T){var l=S(g.select(this),"g","fills");t.setClipUrl(l,d.layerClipId,h);var _=T[0].trace,w=[];_._ownfill&&w.push("_ownFill"),_._nexttrace&&w.push("_nextFill");var M=l.selectAll("g").data(w,e);M.enter().append("g"),M.exit().each(function(E){_[E]=null}).remove(),M.order().each(function(E){_[E]=S(g.select(this),"path","js-fill")})})}function s(h,p,d,T,l,_,w){var M=h._context.staticPlot,E;c(h,p,d,T,l);var m=!!w&&w.duration>0;function b(nr){return m?nr.transition():nr}var v=d.xaxis,u=d.yaxis,y=T[0].trace,f=y.line,P=g.select(_),L=S(P,"g","errorbars"),z=S(P,"g","lines"),F=S(P,"g","points"),O=S(P,"g","text");if(x.getComponentMethod("errorbars","plot")(h,L,d,w),y.visible!==!0)return;b(P).style("opacity",y.opacity);var B,I,N=y.fill.charAt(y.fill.length-1);N!=="x"&&N!=="y"&&(N="");var U,W;N==="y"?(U=1,W=u.c2p(0,!0)):N==="x"&&(U=0,W=v.c2p(0,!0)),T[0][d.isRangePlot?"nodeRangePlot3":"node3"]=P;var Q="",le=[],se=y._prevtrace,fe=null,G=null;se&&(Q=se._prevRevpath||"",I=se._nextFill,le=se._ownPolygons,fe=se._fillsegments,G=se._fillElement);var J,$,X="",re="",ae,j,ee,ne,ce,_e,we=[];y._polygons=[];var Oe=[],Ie=[],Xe=A.noop;if(B=y._ownFill,r.hasLines(y)||y.fill!=="none"){I&&I.datum(T),["hv","vh","hvh","vhv"].indexOf(f.shape)!==-1?(ae=t.steps(f.shape),j=t.steps(f.shape.split("").reverse().join(""))):f.shape==="spline"?ae=j=function(nr){var Lr=nr[nr.length-1];return nr.length>1&&nr[0][0]===Lr[0]&&nr[0][1]===Lr[1]?t.smoothclosed(nr.slice(1),f.smoothing):t.smoothopen(nr,f.smoothing)}:ae=j=function(nr){return"M"+nr.join("L")},ee=function(nr){return j(nr.reverse())},Ie=o(T,{xaxis:v,yaxis:u,trace:y,connectGaps:y.connectgaps,baseTolerance:Math.max(f.width||1,3)/4,shape:f.shape,backoff:f.backoff,simplify:f.simplify,fill:y.fill}),Oe=new Array(Ie.length);var tt=0;for(E=0;E=M[0]&&P.x<=M[1]&&P.y>=E[0]&&P.y<=E[1]}),u=Math.ceil(v.length/b),y=0;l.forEach(function(P,L){var z=P[0].trace;r.hasMarkers(z)&&z.marker.maxdisplayed>0&&L=Math.min(se,fe)&&d<=Math.max(se,fe)?0:1/0}var G=Math.max(3,le.mrc||0),J=1-1/G,$=Math.abs(h.c2p(le.x)-d);return $=Math.min(se,fe)&&T<=Math.max(se,fe)?0:1/0}var G=Math.max(3,le.mrc||0),J=1-1/G,$=Math.abs(p.c2p(le.y)-T);return $re!=Oe>=re&&(ce=ee[j-1][0],_e=ee[j][0],Oe-we&&(ne=ce+(_e-ce)*(re-we)/(Oe-we),G=Math.min(G,ne),J=Math.max(J,ne)));return G=Math.max(G,0),J=Math.min(J,h._length),{x0:G,x1:J,y0:re,y1:re}}if(_.indexOf("fills")!==-1&&c._fillElement){var U=I(c._fillElement)&&!I(c._fillExclusionElement);if(U){var W=N(c._polygons);W===null&&(W={x0:l[0],x1:l[0],y0:l[1],y1:l[1]});var Q=e.defaultLine;return e.opacity(c.fillcolor)?Q=c.fillcolor:e.opacity((c.line||{}).color)&&(Q=c.line.color),g.extendFlat(o,{distance:o.maxHoverDistance,x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1,color:Q,hovertemplate:!1}),delete o.index,c.text&&!g.isArrayOrTypedArray(c.text)?o.text=String(c.text):o.text=c.name,[o]}}}}}),i0=Le({"src/traces/scatter/select.js"(Z,H){"use strict";var g=gu();H.exports=function(A,S){var e=A.cd,t=A.xaxis,r=A.yaxis,o=[],i=e[0].trace,n,a,s,c,h=!g.hasMarkers(i)&&!g.hasText(i);if(h)return[];if(S===!1)for(n=0;n0&&(a["_"+i+"axes"]||{})[o])return a;if((a[i+"axis"]||i)===o){if(t(a,i))return a;if((a[i]||[]).length||a[i+"0"])return a}}}function e(r){return{v:"x",h:"y"}[r.orientation||"v"]}function t(r,o){var i=e(r),n=g(r,"box-violin"),a=g(r._fullInput||{},"candlestick");return n&&!a&&o===i&&r[i]===void 0&&r[i+"0"]===void 0}}}),R_=Le({"src/plots/cartesian/category_order_defaults.js"(Z,H){"use strict";var g=cl().isTypedArraySpec;function x(A,S){var e=S.dataAttr||A._id.charAt(0),t={},r,o,i;if(S.axData)r=S.axData;else for(r=[],o=0;o0||g(o),n;i&&(n="array");var a=t("categoryorder",n),s;a==="array"&&(s=t("categoryarray")),!i&&a==="array"&&(a=e.categoryorder="trace"),a==="trace"?e._initialCategories=[]:a==="array"?e._initialCategories=s.slice():(s=x(e,r).sort(),a==="category ascending"?e._initialCategories=s:a==="category descending"&&(e._initialCategories=s.reverse()))}}}}),vy=Le({"src/plots/cartesian/line_grid_defaults.js"(Z,H){"use strict";var g=Vl().mix,x=gf(),A=ni();H.exports=function(e,t,r,o){o=o||{};var i=o.dfltColor;function n(y,f){return A.coerce2(e,t,o.attributes,y,f)}var a=n("linecolor",i),s=n("linewidth"),c=r("showline",o.showLine||!!a||!!s);c||(delete t.linecolor,delete t.linewidth);var h=g(i,o.bgColor,o.blend||x.lightFraction).toRgbString(),p=n("gridcolor",h),d=n("gridwidth"),T=n("griddash"),l=r("showgrid",o.showGrid||!!p||!!d||!!T);if(l||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),o.hasMinor){var _=g(t.gridcolor,o.bgColor,67).toRgbString(),w=n("minor.gridcolor",_),M=n("minor.gridwidth",t.gridwidth||1),E=n("minor.griddash",t.griddash||"solid"),m=r("minor.showgrid",!!w||!!M||!!E);m||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!o.noZeroLine){var b=n("zerolinecolor",i),v=n("zerolinewidth"),u=r("zeroline",o.showGrid||!!b||!!v);u||(delete t.zerolinecolor,delete t.zerolinewidth)}}}}),py=Le({"src/plots/cartesian/axis_defaults.js"(Z,H){"use strict";var g=zn(),x=so(),A=ni(),S=wl(),e=Nh(),t=Sh(),r=Nm(),o=Zg(),i=Vp(),n=qp(),a=R_(),s=vy(),c=Xw(),h=Rv(),p=ch().WEEKDAY_PATTERN,d=ch().HOUR_PATTERN;H.exports=function(M,E,m,b,v){var u=b.letter,y=b.font||{},f=b.splomStash||{},P=m("visible",!b.visibleDflt),L=E._template||{},z=E.type||L.type||"-",F;if(z==="date"){var O=x.getComponentMethod("calendars","handleDefaults");O(M,E,"calendar",b.calendar),b.noTicklabelmode||(F=m("ticklabelmode"))}!b.noTicklabelindex&&(z==="date"||z==="linear")&&m("ticklabelindex");var B="";(!b.noTicklabelposition||z==="multicategory")&&(B=A.coerce(M,E,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:F==="period"?["outside","inside"]:u==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),b.noTicklabeloverflow||m("ticklabeloverflow",B.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),h(E,v),c(M,E,m,b),a(M,E,m,b),z!=="category"&&!b.noHover&&m("hoverformat");var I=m("color"),N=I!==t.color.dflt?I:y.color,U=f.label||v._dfltTitle[u];if(n(M,E,m,z,b),!P)return E;m("title.text",U),A.coerceFont(m,"title.font",y,{overrideDflt:{size:A.bigFont(y.size),color:N}}),r(M,E,m,z);var W=b.hasMinor;if(W&&(S.newContainer(E,"minor"),r(M,E,m,z,{isMinor:!0})),i(M,E,m,z,b),o(M,E,m,b),W){var Q=b.isMinor;b.isMinor=!0,o(M,E,m,b),b.isMinor=Q}s(M,E,m,{dfltColor:I,bgColor:b.bgColor,showGrid:b.showGrid,hasMinor:W,attributes:t}),W&&!E.minor.ticks&&!E.minor.showgrid&&delete E.minor,(E.showline||E.ticks)&&m("mirror");var le=z==="multicategory";if(!b.noTickson&&(z==="category"||le)&&(E.ticks||E.showgrid)){var se;le&&(se="boundaries");var fe=m("tickson",se);fe==="boundaries"&&delete E.ticklabelposition}if(le){var G=m("showdividers");G&&(m("dividercolor"),m("dividerwidth"))}if(z==="date")if(e(M,E,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:T}),!E.rangebreaks.length)delete E.rangebreaks;else{for(var J=0;J=2){var u="",y,f;if(v.length===2){for(y=0;y<2;y++)if(f=_(v[y]),f){u=p;break}}var P=m("pattern",u);if(P===p)for(y=0;y<2;y++)f=_(v[y]),f&&(M.bounds[y]=v[y]=f-1);if(P)for(y=0;y<2;y++)switch(f=v[y],P){case p:if(!g(f)){M.enabled=!1;return}if(f=+f,f!==Math.floor(f)||f<0||f>=7){M.enabled=!1;return}M.bounds[y]=v[y]=f;break;case d:if(!g(f)){M.enabled=!1;return}if(f=+f,f<0||f>24){M.enabled=!1;return}M.bounds[y]=v[y]=f;break}if(E.autorange===!1){var L=E.range;if(L[0]L[1]){M.enabled=!1;return}}else if(v[0]>L[0]&&v[1]m[1]-1/4096&&(e.domain=h),x.noneOrAll(S.domain,e.domain,h),e.tickmode==="sync"&&(e.tickmode="auto")}return t("layer"),e}}}),g5=Le({"src/plots/cartesian/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=$a(),A=Td().isUnifiedHover,S=e2(),e=wl(),t=Gg(),r=Sh(),o=y2(),i=py(),n=jm(),a=D_(),s=Kc(),c=s.id2name,h=s.name2id,p=ch().AX_ID_PATTERN,d=so(),T=d.traceIs,l=d.getComponentMethod;function _(w,M,E){Array.isArray(w[M])?w[M].push(E):w[M]=[E]}H.exports=function(M,E,m){var b=E.autotypenumbers,v={},u={},y={},f={},P={},L={},z={},F={},O={},B={},I,N;for(I=0;I rect").call(S.setTranslate,0,0).call(S.setScale,1,1),E.plot.call(S.setTranslate,m._offset,b._offset).call(S.setScale,1,1);var v=E.plot.selectAll(".scatterlayer .trace");v.selectAll(".point").call(S.setPointGroupScale,1,1),v.selectAll(".textpoint").call(S.setTextPointsScale,1,1),v.call(S.hideOutsideRangePoints,E)}function c(E,m){var b=E.plotinfo,v=b.xaxis,u=b.yaxis,y=v._length,f=u._length,P=!!E.xr1,L=!!E.yr1,z=[];if(P){var F=A.simpleMap(E.xr0,v.r2l),O=A.simpleMap(E.xr1,v.r2l),B=F[1]-F[0],I=O[1]-O[0];z[0]=(F[0]*(1-m)+m*O[0]-F[0])/(F[1]-F[0])*y,z[2]=y*(1-m+m*I/B),v.range[0]=v.l2r(F[0]*(1-m)+m*O[0]),v.range[1]=v.l2r(F[1]*(1-m)+m*O[1])}else z[0]=0,z[2]=y;if(L){var N=A.simpleMap(E.yr0,u.r2l),U=A.simpleMap(E.yr1,u.r2l),W=N[1]-N[0],Q=U[1]-U[0];z[1]=(N[1]*(1-m)+m*U[1]-N[1])/(N[0]-N[1])*f,z[3]=f*(1-m+m*Q/W),u.range[0]=v.l2r(N[0]*(1-m)+m*U[0]),u.range[1]=u.l2r(N[1]*(1-m)+m*U[1])}else z[1]=0,z[3]=f;e.drawOne(r,v,{skipTitle:!0}),e.drawOne(r,u,{skipTitle:!0}),e.redrawComponents(r,[v._id,u._id]);var le=P?y/z[2]:1,se=L?f/z[3]:1,fe=P?z[0]:0,G=L?z[1]:0,J=P?z[0]/z[2]*y:0,$=L?z[1]/z[3]*f:0,X=v._offset-J,re=u._offset-$;b.clipRect.call(S.setTranslate,fe,G).call(S.setScale,1/le,1/se),b.plot.call(S.setTranslate,X,re).call(S.setScale,le,se),S.setPointGroupScale(b.zoomScalePts,1/le,1/se),S.setTextPointsScale(b.zoomScaleTxt,1/le,1/se)}var h;n&&(h=n());function p(){for(var E={},m=0;mi.duration?(p(),_=window.cancelAnimationFrame(M)):_=window.requestAnimationFrame(M)}return T=Date.now(),_=window.requestAnimationFrame(M),Promise.resolve()}}}),Ef=Le({"src/plots/cartesian/index.js"(Z){"use strict";var H=Ji(),g=so(),x=ni(),A=Ku(),S=rs(),e=Mh().getModuleCalcData,t=Kc(),r=ch(),o=Bd(),i=x.ensureSingle;function n(T,l,_){return x.ensureSingle(T,l,_,function(w){w.datum(_)})}var a=r.zindexSeparator;Z.name="cartesian",Z.attr=["xaxis","yaxis"],Z.idRoot=["x","y"],Z.idRegex=r.idRegex,Z.attrRegex=r.attrRegex,Z.attributes=m5(),Z.layoutAttributes=Sh(),Z.supplyLayoutDefaults=g5(),Z.transitionAxes=y5(),Z.finalizeSubplots=function(T,l){var _=l._subplots,w=_.xaxis,M=_.yaxis,E=_.cartesian,m=E,b={},v={},u,y,f;for(u=0;u0){var L=P.id;if(L.indexOf(a)!==-1)continue;L+=a+(u+1),P=x.extendFlat({},P,{id:L,plot:M._cartesianlayer.selectAll(".subplot").select("."+L)})}for(var z=[],F,O=0;O1&&(W+=a+U),N.push(b+W),m=0;m1,f=l.mainplotinfo;if(!l.mainplot||y)if(u)l.xlines=i(w,"path","xlines-above"),l.ylines=i(w,"path","ylines-above"),l.xaxislayer=i(w,"g","xaxislayer-above"),l.yaxislayer=i(w,"g","yaxislayer-above");else{if(!m){var P=i(w,"g","layer-subplot");l.shapelayer=i(P,"g","shapelayer"),l.imagelayer=i(P,"g","imagelayer"),f&&y?(l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer):(l.minorGridlayer=i(w,"g","minor-gridlayer"),l.gridlayer=i(w,"g","gridlayer"),l.zerolinelayer=i(w,"g","zerolinelayer"));var L=i(w,"g","layer-between");l.shapelayerBetween=i(L,"g","shapelayer"),l.imagelayerBetween=i(L,"g","imagelayer"),i(w,"path","xlines-below"),i(w,"path","ylines-below"),l.overlinesBelow=i(w,"g","overlines-below"),i(w,"g","xaxislayer-below"),i(w,"g","yaxislayer-below"),l.overaxesBelow=i(w,"g","overaxes-below")}l.overplot=i(w,"g","overplot"),l.plot=i(l.overplot,"g",M),m||(l.xlines=i(w,"path","xlines-above"),l.ylines=i(w,"path","ylines-above"),l.overlinesAbove=i(w,"g","overlines-above"),i(w,"g","xaxislayer-above"),i(w,"g","yaxislayer-above"),l.overaxesAbove=i(w,"g","overaxes-above"),l.xlines=w.select(".xlines-"+b),l.ylines=w.select(".ylines-"+v),l.xaxislayer=w.select(".xaxislayer-"+b),l.yaxislayer=w.select(".yaxislayer-"+v))}else{var z=f.plotgroup,F=M+"-x",O=M+"-y";l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer,i(f.overlinesBelow,"path",F),i(f.overlinesBelow,"path",O),i(f.overaxesBelow,"g",F),i(f.overaxesBelow,"g",O),l.plot=i(f.overplot,"g",M),i(f.overlinesAbove,"path",F),i(f.overlinesAbove,"path",O),i(f.overaxesAbove,"g",F),i(f.overaxesAbove,"g",O),l.xlines=z.select(".overlines-"+b).select("."+F),l.ylines=z.select(".overlines-"+v).select("."+O),l.xaxislayer=z.select(".overaxes-"+b).select("."+F),l.yaxislayer=z.select(".overaxes-"+v).select("."+O)}m||(u||(n(l.minorGridlayer,"g",l.xaxis._id),n(l.minorGridlayer,"g",l.yaxis._id),l.minorGridlayer.selectAll("g").map(function(B){return B[0]}).sort(t.idSort),n(l.gridlayer,"g",l.xaxis._id),n(l.gridlayer,"g",l.yaxis._id),l.gridlayer.selectAll("g").map(function(B){return B[0]}).sort(t.idSort)),l.xlines.style("fill","none").classed("crisp",!0),l.ylines.style("fill","none").classed("crisp",!0))}function p(T,l){if(T){var _={};T.each(function(v){var u=v[0],y=H.select(this);y.remove(),d(u,l),_[u]=!0});for(var w in l._plots)for(var M=l._plots[w],E=M.overlays||[],m=0;m=0,l=n.indexOf("end")>=0,_=c.backoff*p+a.standoff,w=h.backoff*d+a.startstandoff,M,E,m,b;if(s.nodeName==="line"){M={x:+i.attr("x1"),y:+i.attr("y1")},E={x:+i.attr("x2"),y:+i.attr("y2")};var v=M.x-E.x,u=M.y-E.y;if(m=Math.atan2(u,v),b=m+Math.PI,_&&w&&_+w>Math.sqrt(v*v+u*u)){W();return}if(_){if(_*_>v*v+u*u){W();return}var y=_*Math.cos(m),f=_*Math.sin(m);E.x+=y,E.y+=f,i.attr({x2:E.x,y2:E.y})}if(w){if(w*w>v*v+u*u){W();return}var P=w*Math.cos(m),L=w*Math.sin(m);M.x-=P,M.y-=L,i.attr({x1:M.x,y1:M.y})}}else if(s.nodeName==="path"){var z=s.getTotalLength(),F="";if(z<_+w){W();return}var O=s.getPointAtLength(0),B=s.getPointAtLength(.1);m=Math.atan2(O.y-B.y,O.x-B.x),M=s.getPointAtLength(Math.min(w,z)),F="0px,"+w+"px,";var I=s.getPointAtLength(z),N=s.getPointAtLength(z-.1);b=Math.atan2(I.y-N.y,I.x-N.x),E=s.getPointAtLength(Math.max(0,z-_));var U=F?w+_:_;F+=z-U+"px,"+z+"px",i.style("stroke-dasharray",F)}function W(){i.style("stroke-dasharray","0px,100px")}function Q(le,se,fe,G){le.path&&(le.noRotate&&(fe=0),g.select(s.parentNode).append("path").attr({class:i.attr("class"),d:le.path,transform:r(se.x,se.y)+t(fe*180/Math.PI)+e(G)}).style({fill:x.rgb(a.arrowcolor),"stroke-width":0}))}T&&Q(h,M,m,d),l&&Q(c,E,b,p)}}}),z_=Le({"src/components/annotations/draw.js"(Z,H){"use strict";var g=Ji(),x=so(),A=Ku(),S=ni(),e=S.strTranslate,t=Zo(),r=$a(),o=rs(),i=Dc(),n=$l(),a=fv(),s=Kh(),c=wl().arrayEditor,h=x5();H.exports={draw:p,drawOne:d,drawRaw:l};function p(_){var w=_._fullLayout;w._infolayer.selectAll(".annotation").remove();for(var M=0;M2/3?Ri="right":Ri="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ri]}for(var Qe=!1,it=["x","y"],$e=0;$e1)&&(Bt===Mt?(Ce=jt.r2fraction(w["a"+kt]),(Ce<0||Ce>1)&&(Qe=!0)):Qe=!0),Ze=jt._offset+jt.r2p(w[kt]),Ve=.5}else{var et=be==="domain";kt==="x"?(Se=w[kt],Ze=et?jt._offset+jt._length*Se:Ze=u.l+u.w*Se):(Se=1-w[kt],Ze=et?jt._offset+jt._length*Se:Ze=u.t+u.h*Se),Ve=w.showarrow?.5:Se}if(w.showarrow){Fe.head=Ze;var ht=w["a"+kt];if(Ee=nr*ze(.5,w.xanchor)-Lr*ze(.5,w.yanchor),Bt===Mt){var yt=t.getRefType(Bt);yt==="domain"?(kt==="y"&&(ht=1-ht),Fe.tail=jt._offset+jt._length*ht):yt==="paper"?kt==="y"?(ht=1-ht,Fe.tail=u.t+u.h*ht):Fe.tail=u.l+u.w*ht:Fe.tail=jt._offset+jt.r2p(ht),Ne=Ee}else Fe.tail=Ze+ht,Ne=Ee+ht;Fe.text=Fe.tail+Ee;var Pt=v[kt==="x"?"width":"height"];if(Mt==="paper"&&(Fe.head=S.constrain(Fe.head,1,Pt-1)),Bt==="pixel"){var Ot=-Math.max(Fe.tail-3,Fe.text),Wt=Math.min(Fe.tail+3,Fe.text)-Pt;Ot>0?(Fe.tail+=Ot,Fe.text+=Ot):Wt>0&&(Fe.tail-=Wt,Fe.text-=Wt)}Fe.tail+=mt,Fe.head+=mt}else Ee=mr*ze(Ve,xr),Ne=Ee,Fe.text=Ze+Ee;Fe.text+=mt,Ee+=mt,Ne+=mt,w["_"+kt+"padplus"]=mr/2+Ne,w["_"+kt+"padminus"]=mr/2-Ne,w["_"+kt+"size"]=mr,w["_"+kt+"shift"]=Ee}if(Qe){fe.remove();return}var $t=0,lr=0;if(w.align!=="left"&&($t=(ot-rt)*(w.align==="center"?.5:1)),w.valign!=="top"&&(lr=(Me-Je)*(w.valign==="middle"?.5:1)),Xe)Ie.select("svg").attr({x:$+$t-1,y:$+lr}).call(o.setClipUrl,re?B:null,_);else{var fi=$+lr-tt.top,Pi=$+$t-tt.left;ne.call(n.positionText,Pi,fi).call(o.setClipUrl,re?B:null,_)}ae.select("rect").call(o.setRect,$,$,ot,Me),X.call(o.setRect,G/2,G/2,pe-G,ue-G),fe.call(o.setTranslate,Math.round(I.x.text-pe/2),Math.round(I.y.text-ue/2)),W.attr({transform:"rotate("+N+","+I.x.text+","+I.y.text+")"});var Bi=function(en,Ri){U.selectAll(".annotation-arrow-g").remove();var Zi=I.x.head,vn=I.y.head,Xt=I.x.tail+en,Dt=I.y.tail+Ri,qt=I.x.text+en,Ut=I.y.text+Ri,br=S.rotationXYMatrix(N,qt,Ut),Zr=S.apply2DTransform(br),_i=S.apply2DTransform2(br),Yr=+X.attr("width"),Di=+X.attr("height"),qi=qt-.5*Yr,$i=qi+Yr,Mi=Ut-.5*Di,sn=Mi+Di,vt=[[qi,Mi,qi,sn],[qi,sn,$i,sn],[$i,sn,$i,Mi],[$i,Mi,qi,Mi]].map(_i);if(!vt.reduce(function(Et,ar){return Et^!!S.segmentsIntersect(Zi,vn,Zi+1e6,vn+1e6,ar[0],ar[1],ar[2],ar[3])},!1)){vt.forEach(function(Et){var ar=S.segmentsIntersect(Xt,Dt,Zi,vn,Et[0],Et[1],Et[2],Et[3]);ar&&(Xt=ar.x,Dt=ar.y)});var pt=w.arrowwidth,kr=w.arrowcolor,Cr=w.arrowside,wr=U.append("g").style({opacity:r.opacity(kr)}).classed("annotation-arrow-g",!0),Ar=wr.append("path").attr("d","M"+Xt+","+Dt+"L"+Zi+","+vn).style("stroke-width",pt+"px").call(r.stroke,r.rgb(kr));if(h(Ar,Cr,w),y.annotationPosition&&Ar.node().parentNode&&!E){var Er=Zi,Br=vn;if(w.standoff){var Pr=Math.sqrt(Math.pow(Zi-Xt,2)+Math.pow(vn-Dt,2));Er+=w.standoff*(Xt-Zi)/Pr,Br+=w.standoff*(Dt-vn)/Pr}var Qr=wr.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Xt-Er)+","+(Dt-Br),transform:e(Er,Br)}).style("stroke-width",pt+6+"px").call(r.stroke,"rgba(0,0,0,0)").call(r.fill,"rgba(0,0,0,0)"),ci,mi;s.init({element:Qr.node(),gd:_,prepFn:function(){var Et=o.getTranslate(fe);ci=Et.x,mi=Et.y,m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0)},moveFn:function(Et,ar){var gr=Zr(ci,mi),ti=gr[0]+Et,wi=gr[1]+ar;fe.call(o.setTranslate,ti,wi),F("x",T(m,Et,"x",u,w)),F("y",T(b,ar,"y",u,w)),w.axref===w.xref&&F("ax",T(m,Et,"ax",u,w)),w.ayref===w.yref&&F("ay",T(b,ar,"ay",u,w)),wr.attr("transform",e(Et,ar)),W.attr({transform:"rotate("+N+","+ti+","+wi+")"})},doneFn:function(){x.call("_guiRelayout",_,O());var Et=document.querySelector(".js-notes-box-panel");Et&&Et.redraw(Et.selectedObj)}})}}};if(w.showarrow&&Bi(0,0),Q){var zi;s.init({element:fe.node(),gd:_,prepFn:function(){zi=W.attr("transform")},moveFn:function(en,Ri){var Zi="pointer";if(w.showarrow)w.axref===w.xref?F("ax",T(m,en,"ax",u,w)):F("ax",w.ax+en),w.ayref===w.yref?F("ay",T(b,Ri,"ay",u.w,w)):F("ay",w.ay+Ri),Bi(en,Ri);else{if(E)return;var vn,Xt;if(m)vn=T(m,en,"x",u,w);else{var Dt=w._xsize/u.w,qt=w.x+(w._xshift-w.xshift)/u.w-Dt/2;vn=s.align(qt+en/u.w,Dt,0,1,w.xanchor)}if(b)Xt=T(b,Ri,"y",u,w);else{var Ut=w._ysize/u.h,br=w.y-(w._yshift+w.yshift)/u.h-Ut/2;Xt=s.align(br-Ri/u.h,Ut,0,1,w.yanchor)}F("x",vn),F("y",Xt),(!m||!b)&&(Zi=s.getCursor(m?.5:vn,b?.5:Xt,w.xanchor,w.yanchor))}W.attr({transform:e(en,Ri)+zi}),a(fe,Zi)},clickFn:function(en,Ri){w.captureevents&&_.emit("plotly_clickannotation",se(Ri))},doneFn:function(){a(fe),x.call("_guiRelayout",_,O());var en=document.querySelector(".js-notes-box-panel");en&&en.redraw(en.selectedObj)}})}}y.annotationText?ne.call(n.makeEditable,{delegate:fe,gd:_}).call(ce).on("edit",function(we){w.text=we,this.call(ce),F("text",we),m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0),x.call("_guiRelayout",_,O())}):ne.call(ce)}}}),b5=Le({"src/components/annotations/click.js"(Z,H){"use strict";var g=ni(),x=so(),A=wl().arrayEditor;H.exports={hasClickToShow:S,onClick:e};function S(o,i){var n=t(o,i);return n.on.length>0||n.explicitOff.length>0}function e(o,i){var n=t(o,i),a=n.on,s=n.off.concat(n.explicitOff),c={},h=o._fullLayout.annotations,p,d;if(a.length||s.length){for(p=0;p1){a=!0;break}}a?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+i+'"]').remove():(n._pdata=x(e.glplot.cameraParams,[t.xaxis.r2l(n.x)*r[0],t.yaxis.r2l(n.y)*r[1],t.zaxis.r2l(n.z)*r[2]]),g(e.graphDiv,n,i,e.id,n._xa,n._ya))}}}}),C5=Le({"src/components/annotations3d/index.js"(Z,H){"use strict";var g=so(),x=ni();H.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:F_()}}},layoutAttributes:F_(),handleDefaults:S5(),includeBasePlot:A,convert:E5(),draw:k5()};function A(S,e){var t=g.subplotsRegistry.gl3d;if(t)for(var r=t.attrRegex,o=Object.keys(S),i=0;i0?l+p:p;return{ppad:p,ppadplus:d?w:M,ppadminus:d?M:w}}else return{ppad:p}}function o(i,n,a){var s=i._id.charAt(0)==="x"?"x":"y",c=i.type==="category"||i.type==="multicategory",h,p,d=0,T=0,l=c?i.r2c:i.d2c,_=n[s+"sizemode"]==="scaled";if(_?(h=n[s+"0"],p=n[s+"1"],c&&(d=n[s+"0shift"],T=n[s+"1shift"])):(h=n[s+"anchor"],p=n[s+"anchor"]),h!==void 0)return[l(h)+d,l(p)+T];if(n.path){var w=1/0,M=-1/0,E=n.path.match(A.segmentRE),m,b,v,u,y;for(i.type==="date"&&(l=S.decodeDate(l)),m=0;mM&&(M=y)));if(M>=w)return[w,M]}}}}),R5=Le({"src/components/shapes/index.js"(Z,H){"use strict";var g=k_();H.exports={moduleType:"component",name:"shapes",layoutAttributes:b2(),supplyLayoutDefaults:L5(),supplyDrawNewShapeDefaults:P5(),includeBasePlot:dy()("shapes"),calcAutorange:I5(),draw:g.draw,drawOne:g.drawOne}}}),w2=Le({"src/components/images/attributes.js"(Z,H){"use strict";var g=ch(),x=wl().templatedArray,A=hy();H.exports=x("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",g.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",g.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})}}),D5=Le({"src/components/images/defaults.js"(Z,H){"use strict";var g=ni(),x=Zo(),A=Nh(),S=w2(),e="images";H.exports=function(o,i){var n={name:e,handleItemDefaults:t};A(o,i,n)};function t(r,o,i){function n(_,w){return g.coerce(r,o,S,_,w)}var a=n("source"),s=n("visible",!!a);if(!s)return o;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var c={_fullLayout:i},h=["x","y"],p=0;p<2;p++){var d=h[p],T=x.coerceRef(r,o,c,d,"paper",void 0);if(T!=="paper"){var l=x.getFromId(c,T);l._imgIndices.push(o._index)}x.coercePosition(o,c,n,T,d,0)}return o}}}),z5=Le({"src/components/images/draw.js"(Z,H){"use strict";var g=Ji(),x=rs(),A=Zo(),S=Kc(),e=Bd();H.exports=function(r){var o=r._fullLayout,i=[],n={},a=[],s,c;for(c=0;c0);h&&(s("active"),s("direction"),s("type"),s("showactive"),s("x"),s("y"),g.noneOrAll(i,n,["x","y"]),s("xanchor"),s("yanchor"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",a.font),s("bgcolor",a.paper_bgcolor),s("bordercolor"),s("borderwidth"))}function o(i,n){function a(c,h){return g.coerce(i,n,t,c,h)}var s=a("visible",i.method==="skip"||Array.isArray(i.args));s&&(a("method"),a("args"),a("args2"),a("label"),a("execute"))}}}),N5=Le({"src/components/updatemenus/scrollbox.js"(Z,H){"use strict";H.exports=e;var g=Ji(),x=$a(),A=rs(),S=ni();function e(t,r,o){this.gd=t,this.container=r,this.id=o,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}e.barWidth=2,e.barLength=20,e.barRadius=2,e.barPad=1,e.barColor="#808BA4",e.prototype.enable=function(r,o,i){var n=this.gd._fullLayout,a=n.width,s=n.height;this.position=r;var c=this.position.l,h=this.position.w,p=this.position.t,d=this.position.h,T=this.position.direction,l=T==="down",_=T==="left",w=T==="right",M=T==="up",E=h,m=d,b,v,u,y;!l&&!_&&!w&&!M&&(this.position.direction="down",l=!0);var f=l||M;f?(b=c,v=b+E,l?(u=p,y=Math.min(u+m,s),m=y-u):(y=p+m,u=Math.max(y-m,0),m=y-u)):(u=p,y=u+m,_?(v=c+E,b=Math.max(v-E,0),E=v-b):(b=c,v=Math.min(b+E,a),E=v-b)),this._box={l:b,t:u,w:E,h:m};var P=h>E,L=e.barLength+2*e.barPad,z=e.barWidth+2*e.barPad,F=c,O=p+d;O+z>s&&(O=s-z);var B=this.container.selectAll("rect.scrollbar-horizontal").data(P?[0]:[]);B.exit().on(".drag",null).remove(),B.enter().append("rect").classed("scrollbar-horizontal",!0).call(x.fill,e.barColor),P?(this.hbar=B.attr({rx:e.barRadius,ry:e.barRadius,x:F,y:O,width:L,height:z}),this._hbarXMin=F+L/2,this._hbarTranslateMax=E-L):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=d>m,N=e.barWidth+2*e.barPad,U=e.barLength+2*e.barPad,W=c+h,Q=p;W+N>a&&(W=a-N);var le=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);le.exit().on(".drag",null).remove(),le.enter().append("rect").classed("scrollbar-vertical",!0).call(x.fill,e.barColor),I?(this.vbar=le.attr({rx:e.barRadius,ry:e.barRadius,x:W,y:Q,width:N,height:U}),this._vbarYMin=Q+U/2,this._vbarTranslateMax=m-U):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var se=this.id,fe=b-.5,G=I?v+N+.5:v+.5,J=u-.5,$=P?y+z+.5:y+.5,X=n._topdefs.selectAll("#"+se).data(P||I?[0]:[]);if(X.exit().remove(),X.enter().append("clipPath").attr("id",se).append("rect"),P||I?(this._clipRect=X.select("rect").attr({x:Math.floor(fe),y:Math.floor(J),width:Math.ceil(G)-Math.floor(fe),height:Math.ceil($)-Math.floor(J)}),this.container.call(A.setClipUrl,se,this.gd),this.bg.attr({x:c,y:p,width:h,height:d})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),P||I){var re=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var ae=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault(),g.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));P&&this.hbar.on(".drag",null).call(ae),I&&this.vbar.on(".drag",null).call(ae)}this.setTranslate(o,i)},e.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},e.prototype._onBoxDrag=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r-=g.event.dx),this.vbar&&(o-=g.event.dy),this.setTranslate(r,o)},e.prototype._onBoxWheel=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r+=g.event.deltaY),this.vbar&&(o+=g.event.deltaY),this.setTranslate(r,o)},e.prototype._onBarDrag=function(){var r=this.translateX,o=this.translateY;if(this.hbar){var i=r+this._hbarXMin,n=i+this._hbarTranslateMax,a=S.constrain(g.event.x,i,n),s=(a-i)/(n-i),c=this.position.w-this._box.w;r=s*c}if(this.vbar){var h=o+this._vbarYMin,p=h+this._vbarTranslateMax,d=S.constrain(g.event.y,h,p),T=(d-h)/(p-h),l=this.position.h-this._box.h;o=T*l}this.setTranslate(r,o)},e.prototype.setTranslate=function(r,o){var i=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=S.constrain(r||0,0,i),o=S.constrain(o||0,0,n),this.translateX=r,this.translateY=o,this.container.call(A.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-o),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+o-.5)}),this.hbar){var a=r/i;this.hbar.call(A.setTranslate,r+a*this._hbarTranslateMax,o)}if(this.vbar){var s=o/n;this.vbar.call(A.setTranslate,r,o+s*this._vbarTranslateMax)}}}}),U5=Le({"src/components/updatemenus/draw.js"(Z,H){"use strict";var g=Ji(),x=Ku(),A=$a(),S=rs(),e=ni(),t=$l(),r=wl().arrayEditor,o=eh().LINE_SPACING,i=B_(),n=N5();H.exports=function(L){var z=L._fullLayout,F=e.filterVisible(z[i.name]);function O(se){x.autoMargin(L,u(se))}var B=z._menulayer.selectAll("g."+i.containerClassName).data(F.length>0?[0]:[]);if(B.enter().append("g").classed(i.containerClassName,!0).style("cursor","pointer"),B.exit().each(function(){g.select(this).selectAll("g."+i.headerGroupClassName).each(O)}).remove(),F.length!==0){var I=B.selectAll("g."+i.headerGroupClassName).data(F,a);I.enter().append("g").classed(i.headerGroupClassName,!0);for(var N=e.ensureSingle(B,"g",i.dropdownButtonGroupClassName,function(se){se.style("pointer-events","all")}),U=0;U0?[0]:[]);W.enter().append("g").classed(i.containerClassName,!0).style("cursor",I?null:"ew-resize");function Q(G){G._commandObserver&&(G._commandObserver.remove(),delete G._commandObserver),x.autoMargin(B,h(G))}if(W.exit().each(function(){g.select(this).selectAll("g."+i.groupClassName).each(Q)}).remove(),U.length!==0){var le=W.selectAll("g."+i.groupClassName).data(U,d);le.enter().append("g").classed(i.groupClassName,!0),le.exit().each(Q).remove();for(var se=0;se0&&(le=le.transition().duration(B.transition.duration).ease(B.transition.easing)),le.attr("transform",t(Q-i.gripWidth*.5,B._dims.currentValueTotalHeight))}}function P(O,B){var I=O._dims;return I.inputAreaStart+i.stepInset+(I.inputAreaLength-2*i.stepInset)*Math.min(1,Math.max(0,B))}function L(O,B){var I=O._dims;return Math.min(1,Math.max(0,(B-i.stepInset-I.inputAreaStart)/(I.inputAreaLength-2*i.stepInset-2*I.inputAreaStart)))}function z(O,B,I){var N=I._dims,U=e.ensureSingle(O,"rect",i.railTouchRectClass,function(W){W.call(v,B,O,I).style("pointer-events","all")});U.attr({width:N.inputAreaLength,height:Math.max(N.inputAreaWidth,i.tickOffset+I.ticklen+N.labelHeight)}).call(A.fill,I.bgcolor).attr("opacity",0),S.setTranslate(U,0,N.currentValueTotalHeight)}function F(O,B){var I=B._dims,N=I.inputAreaLength-i.railInset*2,U=e.ensureSingle(O,"rect",i.railRectClass);U.attr({width:N,height:i.railWidth,rx:i.railRadius,ry:i.railRadius,"shape-rendering":"crispEdges"}).call(A.stroke,B.bordercolor).call(A.fill,B.bgcolor).style("stroke-width",B.borderwidth+"px"),S.setTranslate(U,i.railInset,(I.inputAreaWidth-i.railWidth)*.5+I.currentValueTotalHeight)}}}),H5=Le({"src/components/sliders/index.js"(Z,H){"use strict";var g=my();H.exports={moduleType:"component",name:g.name,layoutAttributes:A2(),supplyLayoutDefaults:V5(),draw:q5()}}}),O_=Le({"src/components/rangeslider/attributes.js"(Z,H){"use strict";var g=gf();H.exports={bgcolor:{valType:"color",dflt:g.background,editType:"plot"},bordercolor:{valType:"color",dflt:g.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}}}),M2=Le({"src/components/rangeslider/oppaxis_attributes.js"(Z,H){"use strict";H.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}}}),N_=Le({"src/components/rangeslider/constants.js"(Z,H){"use strict";H.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}}}),G5=Le({"src/components/rangeslider/helpers.js"(Z){"use strict";var H=Kc(),g=$l(),x=N_(),A=eh().LINE_SPACING,S=x.name;function e(t){var r=t&&t[S];return r&&r.visible}Z.isVisible=e,Z.makeData=function(t){for(var r=H.list({_fullLayout:t},"x",!0),o=t.margin,i=[],n=0;n=rt.max)Xe=ce[tt+1];else if(Ie=rt.pmax)Xe=ce[tt+1];else if(Ie0?v.touches[0].clientX:0}function p(v,u,y,f){if(u._context.staticPlot)return;var P=v.select("rect."+c.slideBoxClassName).node(),L=v.select("rect."+c.grabAreaMinClassName).node(),z=v.select("rect."+c.grabAreaMaxClassName).node();function F(){var O=g.event,B=O.target,I=h(O),N=I-v.node().getBoundingClientRect().left,U=f.d2p(y._rl[0]),W=f.d2p(y._rl[1]),Q=a.coverSlip();this.addEventListener("touchmove",le),this.addEventListener("touchend",se),Q.addEventListener("mousemove",le),Q.addEventListener("mouseup",se);function le(fe){var G=h(fe),J=+G-I,$,X,re;switch(B){case P:if(re="ew-resize",U+J>y._length||W+J<0)return;$=U+J,X=W+J;break;case L:if(re="col-resize",U+J>y._length)return;$=U+J,X=W;break;case z:if(re="col-resize",W+J<0)return;$=U,X=W+J;break;default:re="ew-resize",$=N,X=N+J;break}if(X<$){var ae=X;X=$,$=ae}f._pixelMin=$,f._pixelMax=X,s(g.select(Q),re),d(v,u,y,f)}function se(){Q.removeEventListener("mousemove",le),Q.removeEventListener("mouseup",se),this.removeEventListener("touchmove",le),this.removeEventListener("touchend",se),S.removeElement(Q)}}v.on("mousedown",F),v.on("touchstart",F)}function d(v,u,y,f){function P(F){return y.l2r(S.constrain(F,f._rl[0],f._rl[1]))}var L=P(f.p2d(f._pixelMin)),z=P(f.p2d(f._pixelMax));window.requestAnimationFrame(function(){x.call("_guiRelayout",u,y._name+".range",[L,z])})}function T(v,u,y,f,P,L){var z=c.handleWidth/2;function F(fe){return S.constrain(fe,0,f._width)}function O(fe){return S.constrain(fe,0,f._height)}function B(fe){return S.constrain(fe,-z,f._width+z)}var I=F(f.d2p(y._rl[0])),N=F(f.d2p(y._rl[1]));if(v.select("rect."+c.slideBoxClassName).attr("x",I).attr("width",N-I),v.select("rect."+c.maskMinClassName).attr("width",I),v.select("rect."+c.maskMaxClassName).attr("x",N).attr("width",f._width-N),L.rangemode!=="match"){var U=f._height-O(f.d2pOppAxis(P._rl[1])),W=f._height-O(f.d2pOppAxis(P._rl[0]));v.select("rect."+c.maskMinOppAxisClassName).attr("x",I).attr("height",U).attr("width",N-I),v.select("rect."+c.maskMaxOppAxisClassName).attr("x",I).attr("y",W).attr("height",f._height-W).attr("width",N-I),v.select("rect."+c.slideBoxClassName).attr("y",U).attr("height",W-U)}var Q=.5,le=Math.round(B(I-z))-Q,se=Math.round(B(N-z))+Q;v.select("g."+c.grabberMinClassName).attr("transform",e(le,Q)),v.select("g."+c.grabberMaxClassName).attr("transform",e(se,Q))}function l(v,u,y,f){var P=S.ensureSingle(v,"rect",c.bgClassName,function(O){O.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),L=f.borderwidth%2===0?f.borderwidth:f.borderwidth-1,z=-f._offsetShift,F=t.crispRound(u,f.borderwidth);P.attr({width:f._width+L,height:f._height+L,transform:e(z,z),"stroke-width":F}).call(r.stroke,f.bordercolor).call(r.fill,f.bgcolor)}function _(v,u,y,f){var P=u._fullLayout,L=S.ensureSingleById(P._topdefs,"clipPath",f._clipId,function(z){z.append("rect").attr({x:0,y:0})});L.select("rect").attr({width:f._width,height:f._height})}function w(v,u,y,f){var P=u.calcdata,L=v.selectAll("g."+c.rangePlotClassName).data(y._subplotsWith,S.identity);L.enter().append("g").attr("class",function(F){return c.rangePlotClassName+" "+F}).call(t.setClipUrl,f._clipId,u),L.order(),L.exit().remove();var z;L.each(function(F,O){var B=g.select(this),I=O===0,N=n.getFromId(u,F,"y"),U=N._name,W=f[U],Q={data:[],layout:{xaxis:{type:y.type,domain:[0,1],range:f.range.slice(),calendar:y.calendar},width:f._width,height:f._height,margin:{t:0,b:0,l:0,r:0}},_context:u._context};y.rangebreaks&&(Q.layout.xaxis.rangebreaks=y.rangebreaks),Q.layout[U]={type:N.type,domain:[0,1],range:W.rangemode!=="match"?W.range.slice():N.range.slice(),calendar:N.calendar},N.rangebreaks&&(Q.layout[U].rangebreaks=N.rangebreaks),A.supplyDefaults(Q);var le=Q._fullLayout.xaxis,se=Q._fullLayout[U];le.clearCalc(),le.setScale(),se.clearCalc(),se.setScale();var fe={id:F,plotgroup:B,xaxis:le,yaxis:se,isRangePlot:!0};I?z=fe:(fe.mainplot="xy",fe.mainplotinfo=z),i.rangePlot(u,fe,M(P,F))})}function M(v,u){for(var y=[],f=0;f0);if(_){var w=o(a,s,c);T("x",w[0]),T("y",w[1]),g.noneOrAll(n,a,["x","y"]),T("xanchor"),T("yanchor"),g.coerceFont(T,"font",s.font);var M=T("bgcolor");T("activecolor",x.contrast(M,t.lightAmount,t.darkAmount)),T("bordercolor"),T("borderwidth")}};function r(i,n,a,s){var c=s.calendar;function h(T,l){return g.coerce(i,n,e.buttons,T,l)}var p=h("visible");if(p){var d=h("step");d!=="all"&&(c&&c!=="gregorian"&&(d==="month"||d==="year")?n.stepmode="backward":h("stepmode"),h("count")),h("label")}}function o(i,n,a){for(var s=a.filter(function(d){return n[d].anchor===i._id}),c=0,h=0;h1)){delete c.grid;return}if(!T&&!l&&!_){var y=b("pattern")==="independent";y&&(T=!0)}m._hasSubplotGrid=T;var f=b("roworder"),P=f==="top to bottom",L=T?.2:.1,z=T?.3:.1,F,O;w&&c._splomGridDflt&&(F=c._splomGridDflt.xside,O=c._splomGridDflt.yside),m._domains={x:i("x",b,L,F,u),y:i("y",b,z,O,v,P)}}function i(s,c,h,p,d,T){var l=c(s+"gap",h),_=c("domain."+s);c(s+"side",p);for(var w=new Array(d),M=_[0],E=(_[1]-M)/(d-l),m=E*(1-l),b=0;b0,p=r._context.staticPlot;o.each(function(d){var T=d[0].trace,l=T.error_x||{},_=T.error_y||{},w;T.ids&&(w=function(b){return b.id});var M=S.hasMarkers(T)&&T.marker.maxdisplayed>0;!_.visible&&!l.visible&&(d=[]);var E=g.select(this).selectAll("g.errorbar").data(d,w);if(E.exit().remove(),!!d.length){l.visible||E.selectAll("path.xerror").remove(),_.visible||E.selectAll("path.yerror").remove(),E.style("opacity",1);var m=E.enter().append("g").classed("errorbar",!0);h&&m.style("opacity",0).transition().duration(n.duration).style("opacity",1),A.setClipUrl(E,i.layerClipId,r),E.each(function(b){var v=g.select(this),u=e(b,s,c);if(!(M&&!b.vis)){var y,f=v.select("path.yerror");if(_.visible&&x(u.x)&&x(u.yh)&&x(u.ys)){var P=_.width;y="M"+(u.x-P)+","+u.yh+"h"+2*P+"m-"+P+",0V"+u.ys,u.noYS||(y+="m-"+P+",0h"+2*P),a=!f.size(),a?f=v.append("path").style("vector-effect",p?"none":"non-scaling-stroke").classed("yerror",!0):h&&(f=f.transition().duration(n.duration).ease(n.easing)),f.attr("d",y)}else f.remove();var L=v.select("path.xerror");if(l.visible&&x(u.y)&&x(u.xh)&&x(u.xs)){var z=(l.copy_ystyle?_:l).width;y="M"+u.xh+","+(u.y-z)+"v"+2*z+"m0,-"+z+"H"+u.xs,u.noXS||(y+="m0,-"+z+"v"+2*z),a=!L.size(),a?L=v.append("path").style("vector-effect",p?"none":"non-scaling-stroke").classed("xerror",!0):h&&(L=L.transition().duration(n.duration).ease(n.easing)),L.attr("d",y)}else L.remove()}})}})};function e(t,r,o){var i={x:r.c2p(t.x),y:o.c2p(t.y)};return t.yh!==void 0&&(i.yh=o.c2p(t.yh),i.ys=o.c2p(t.ys),x(i.ys)||(i.noYS=!0,i.ys=o.c2p(t.ys,!0))),t.xh!==void 0&&(i.xh=r.c2p(t.xh),i.xs=r.c2p(t.xs),x(i.xs)||(i.noXS=!0,i.xs=r.c2p(t.xs,!0))),i}}}),ik=Le({"src/components/errorbars/style.js"(Z,H){"use strict";var g=Ji(),x=$a();H.exports=function(S){S.each(function(e){var t=e[0].trace,r=t.error_y||{},o=t.error_x||{},i=g.select(this);i.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(x.stroke,r.color),o.copy_ystyle&&(o=r),i.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(x.stroke,o.color)})}}}),nk=Le({"src/components/errorbars/index.js"(Z,H){"use strict";var g=ni(),x=qu().overrideAll,A=k2(),S={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A)};delete S.error_x.copy_zstyle,delete S.error_y.copy_zstyle,delete S.error_y.copy_ystyle;var e={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A),error_z:g.extendFlat({},A)};delete e.error_x.copy_ystyle,delete e.error_y.copy_ystyle,delete e.error_z.copy_ystyle,delete e.error_z.copy_zstyle,H.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:S,bar:S,histogram:S,scatter3d:x(e,"calc","nested"),scattergl:x(S,"calc","nested")}},supplyDefaults:ek(),calc:tk(),makeComputeError:C2(),plot:rk(),style:ik(),hoverInfo:t};function t(r,o,i){(o.error_y||{}).visible&&(i.yerr=r.yh-r.y,o.error_y.symmetric||(i.yerrneg=r.y-r.ys)),(o.error_x||{}).visible&&(i.xerr=r.xh-r.x,o.error_x.symmetric||(i.xerrneg=r.x-r.xs))}}}),ak=Le({"src/components/colorbar/constants.js"(Z,H){"use strict";H.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}}}),ok=Le({"src/components/colorbar/draw.js"(Z,H){"use strict";var g=Ji(),x=Vl(),A=Ku(),S=so(),e=Zo(),t=Kh(),r=ni(),o=r.strTranslate,i=ho().extendFlat,n=fv(),a=rs(),s=$a(),c=Um(),h=$l(),p=ud().flipScale,d=py(),T=D_(),l=Sh(),_=eh(),w=_.LINE_SPACING,M=_.FROM_TL,E=_.FROM_BR,m=ak().cn;function b(L){var z=L._fullLayout,F=z._infolayer.selectAll("g."+m.colorbar).data(v(L),function(O){return O._id});F.enter().append("g").attr("class",function(O){return O._id}).classed(m.colorbar,!0),F.each(function(O){var B=g.select(this);r.ensureSingle(B,"rect",m.cbbg),r.ensureSingle(B,"g",m.cbfills),r.ensureSingle(B,"g",m.cblines),r.ensureSingle(B,"g",m.cbaxis,function(N){N.classed(m.crisp,!0)}),r.ensureSingle(B,"g",m.cbtitleunshift,function(N){N.append("g").classed(m.cbtitle,!0)}),r.ensureSingle(B,"rect",m.cboutline);var I=u(B,O,L);I&&I.then&&(L._promises||[]).push(I),L._context.edits.colorbarPosition&&y(B,O,L)}),F.exit().each(function(O){A.autoMargin(L,O._id)}).remove(),F.order()}function v(L){var z=L._fullLayout,F=L.calcdata,O=[],B,I,N,U;function W(j){return i(j,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function Q(){typeof U.calc=="function"?U.calc(L,N,B):(B._fillgradient=I.reversescale?p(I.colorscale):I.colorscale,B._zrange=[I[U.min],I[U.max]])}for(var le=0;le1){var Fe=Math.pow(10,Math.floor(Math.log(mt)/Math.LN10));mr*=Fe*r.roundUp(mt/Fe,[2,5,10]),(Math.abs(tt.start)/tt.size+1e-6)%1<2e-6&&(nr.tick0=0)}nr.dtick=mr}nr.domain=O?[jt+J/ee.h,jt+ze-J/ee.h]:[jt+G/ee.w,jt+ze-G/ee.w],nr.setScale(),L.attr("transform",o(Math.round(ee.l),Math.round(ee.t)));var Ze=L.select("."+m.cbtitleunshift).attr("transform",o(-Math.round(ee.l),-Math.round(ee.t))),Ne=nr.ticklabelposition,Se=nr.title.font.size,Ve=L.select("."+m.cbaxis),Ee,be=0,Ce=0;function et(Wt,$t){var lr={propContainer:nr,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:j._dfltTitle.colorbar,containerGroup:L.select("."+m.cbtitle)},fi=Wt.charAt(0)==="h"?Wt.substr(1):"h"+Wt;L.selectAll("."+fi+",."+fi+"-math-group").remove(),c.draw(F,Wt,i(lr,$t||{}))}function ht(){if(O&&Lr||!O&&!Lr){var Wt,$t;we==="top"&&(Wt=G+ee.l+Qe*$,$t=J+ee.t+it*(1-jt-ze)+3+Se*.75),we==="bottom"&&(Wt=G+ee.l+Qe*$,$t=J+ee.t+it*(1-jt)-3-Se*.25),we==="right"&&($t=J+ee.t+it*X+3+Se*.75,Wt=G+ee.l+Qe*jt),et(nr._id+"title",{attributes:{x:Wt,y:$t,"text-anchor":O?"start":"middle"}})}}function yt(){if(O&&!Lr||!O&&Lr){var Wt=nr.position||0,$t=nr._offset+nr._length/2,lr,fi;if(we==="right")fi=$t,lr=ee.l+Qe*Wt+10+Se*(nr.showticklabels?1:.5);else if(lr=$t,we==="bottom"&&(fi=ee.t+it*Wt+10+(Ne.indexOf("inside")===-1?nr.tickfont.size:0)+(nr.ticks!=="intside"&&z.ticklen||0)),we==="top"){var Pi=_e.text.split("
").length;fi=ee.t+it*Wt+10-Me-w*Se*Pi}et((O?"h":"v")+nr._id+"title",{avoid:{selection:g.select(F).selectAll("g."+nr._id+"tick"),side:we,offsetTop:O?0:ee.t,offsetLeft:O?ee.l:0,maxShift:O?j.width:j.height},attributes:{x:lr,y:fi,"text-anchor":"middle"},transform:{rotate:O?-90:0,offset:0}})}}function Pt(){if(!O&&!Lr||O&&Lr){var Wt=L.select("."+m.cbtitle),$t=Wt.select("text"),lr=[-W/2,W/2],fi=Wt.select(".h"+nr._id+"title-math-group").node(),Pi=15.6;$t.node()&&(Pi=parseInt($t.node().style.fontSize,10)*w);var Bi;if(fi?(Bi=a.bBox(fi),Ce=Bi.width,be=Bi.height,be>Pi&&(lr[1]-=(be-Pi)/2)):$t.node()&&!$t.classed(m.jsPlaceholder)&&(Bi=a.bBox($t.node()),Ce=Bi.width,be=Bi.height),O){if(be){if(be+=5,we==="top")nr.domain[1]-=be/ee.h,lr[1]*=-1;else{nr.domain[0]+=be/ee.h;var zi=h.lineCount($t);lr[1]+=(1-zi)*Pi}Wt.attr("transform",o(lr[0],lr[1])),nr.setScale()}}else Ce&&(we==="right"&&(nr.domain[0]+=(Ce+Se/2)/ee.w),Wt.attr("transform",o(lr[0],lr[1])),nr.setScale())}L.selectAll("."+m.cbfills+",."+m.cblines).attr("transform",O?o(0,Math.round(ee.h*(1-nr.domain[1]))):o(Math.round(ee.w*nr.domain[0]),0)),Ve.attr("transform",O?o(0,Math.round(-ee.t)):o(Math.round(-ee.l),0));var en=L.select("."+m.cbfills).selectAll("rect."+m.cbfill).attr("style","").data(Je);en.enter().append("rect").classed(m.cbfill,!0).attr("style",""),en.exit().remove();var Ri=Oe.map(nr.c2p).map(Math.round).sort(function(qt,Ut){return qt-Ut});en.each(function(qt,Ut){var br=[Ut===0?Oe[0]:(Je[Ut]+Je[Ut-1])/2,Ut===Je.length-1?Oe[1]:(Je[Ut]+Je[Ut+1])/2].map(nr.c2p).map(Math.round);O&&(br[1]=r.constrain(br[1]+(br[1]>br[0])?1:-1,Ri[0],Ri[1]));var Zr=g.select(this).attr(O?"x":"y",$e).attr(O?"y":"x",g.min(br)).attr(O?"width":"height",Math.max(Me,2)).attr(O?"height":"width",Math.max(g.max(br)-g.min(br),2));if(z._fillgradient)a.gradient(Zr,F,z._id,O?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var _i=Xe(qt).replace("e-","");Zr.attr("fill",x(_i).toHexString())}});var Zi=L.select("."+m.cblines).selectAll("path."+m.cbline).data(ce.color&&ce.width?ot:[]);Zi.enter().append("path").classed(m.cbline,!0),Zi.exit().remove(),Zi.each(function(qt){var Ut=$e,br=Math.round(nr.c2p(qt))+ce.width/2%1;g.select(this).attr("d","M"+(O?Ut+","+br:br+","+Ut)+(O?"h":"v")+Me).call(a.lineGroupStyle,ce.width,Ie(qt),ce.dash)}),Ve.selectAll("g."+nr._id+"tick,path").remove();var vn=$e+Me+(W||0)/2-(z.ticks==="outside"?1:0),Xt=e.calcTicks(nr),Dt=e.getTickSigns(nr)[2];return e.drawTicks(F,nr,{vals:nr.ticks==="inside"?e.clipEnds(nr,Xt):Xt,layer:Ve,path:e.makeTickPath(nr,vn,Dt),transFn:e.makeTransTickFn(nr)}),e.drawLabels(F,nr,{vals:Xt,layer:Ve,transFn:e.makeTransTickLabelFn(nr),labelFns:e.makeLabelFns(nr,vn)})}function Ot(){var Wt,$t=Me+W/2;Ne.indexOf("inside")===-1&&(Wt=a.bBox(Ve.node()),$t+=O?Wt.width:Wt.height),Ee=Ze.select("text");var lr=0,fi=O&&we==="top",Pi=!O&&we==="right",Bi=0;if(Ee.node()&&!Ee.classed(m.jsPlaceholder)){var zi,en=Ze.select(".h"+nr._id+"title-math-group").node();en&&(O&&Lr||!O&&!Lr)?(Wt=a.bBox(en),lr=Wt.width,zi=Wt.height):(Wt=a.bBox(Ze.node()),lr=Wt.right-ee.l-(O?$e:cr),zi=Wt.bottom-ee.t-(O?cr:$e),!O&&we==="top"&&($t+=Wt.height,Bi=Wt.height)),Pi&&(Ee.attr("transform",o(lr/2+Se/2,0)),lr*=2),$t=Math.max($t,O?lr:zi)}var Ri=(O?G:J)*2+$t+Q+W/2,Zi=0;!O&&_e.text&&fe==="bottom"&&X<=0&&(Zi=Ri/2,Ri+=Zi,Bi+=Zi),j._hColorbarMoveTitle=Zi,j._hColorbarMoveCBTitle=Bi;var vn=Q+W,Xt=(O?$e:cr)-vn/2-(O?G:0),Dt=(O?cr:$e)-(O?ue:J+Bi-Zi);L.select("."+m.cbbg).attr("x",Xt).attr("y",Dt).attr(O?"width":"height",Math.max(Ri-Zi,2)).attr(O?"height":"width",Math.max(ue+vn,2)).call(s.fill,le).call(s.stroke,z.bordercolor).style("stroke-width",Q);var qt=Pi?Math.max(lr-10,0):0;L.selectAll("."+m.cboutline).attr("x",(O?$e:cr+G)+qt).attr("y",(O?cr+J-ue:$e)+(fi?be:0)).attr(O?"width":"height",Math.max(Me,2)).attr(O?"height":"width",Math.max(ue-(O?2*J+be:2*G+qt),2)).call(s.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var Ut=O?kt*Ri:0,br=O?0:(1-Mt)*Ri-Bi;if(Ut=ae?ee.l-Ut:-Ut,br=re?ee.t-br:-br,L.attr("transform",o(Ut,br)),!O&&(Q||x(le).getAlpha()&&!x.equals(j.paper_bgcolor,le))){var Zr=Ve.selectAll("text"),_i=Zr[0].length,Yr=L.select("."+m.cbbg).node(),Di=a.bBox(Yr),qi=a.getTranslate(L),$i=2;Zr.each(function(Br,Pr){var Qr=0,ci=_i-1;if(Pr===Qr||Pr===ci){var mi=a.bBox(this),Et=a.getTranslate(this),ar;if(Pr===ci){var gr=mi.right+Et.x,ti=Di.right+qi.x+cr-Q-$i+$;ar=ti-gr,ar>0&&(ar=0)}else if(Pr===Qr){var wi=mi.left+Et.x,Gi=Di.left+qi.x+cr+Q+$i;ar=Gi-wi,ar<0&&(ar=0)}ar&&(_i<3?this.setAttribute("transform","translate("+ar+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Mi={},sn=M[se],vt=E[se],pt=M[fe],kr=E[fe],Cr=Ri-Me;O?(I==="pixels"?(Mi.y=X,Mi.t=ue*pt,Mi.b=ue*kr):(Mi.t=Mi.b=0,Mi.yt=X+B*pt,Mi.yb=X-B*kr),U==="pixels"?(Mi.x=$,Mi.l=Ri*sn,Mi.r=Ri*vt):(Mi.l=Cr*sn,Mi.r=Cr*vt,Mi.xl=$-N*sn,Mi.xr=$+N*vt)):(I==="pixels"?(Mi.x=$,Mi.l=ue*sn,Mi.r=ue*vt):(Mi.l=Mi.r=0,Mi.xl=$+B*sn,Mi.xr=$-B*vt),U==="pixels"?(Mi.y=1-X,Mi.t=Ri*pt,Mi.b=Ri*kr):(Mi.t=Cr*pt,Mi.b=Cr*kr,Mi.yt=X-N*pt,Mi.yb=X+N*kr));var wr=z.y<.5?"b":"t",Ar=z.x<.5?"l":"r";F._fullLayout._reservedMargin[z._id]={};var Er={r:j.width-Xt-Ut,l:Xt+Mi.r,b:j.height-Dt-br,t:Dt+Mi.b};ae&&re?A.autoMargin(F,z._id,Mi):ae?F._fullLayout._reservedMargin[z._id][wr]=Er[wr]:re||O?F._fullLayout._reservedMargin[z._id][Ar]=Er[Ar]:F._fullLayout._reservedMargin[z._id][wr]=Er[wr]}return r.syncOrAsync([A.previousPromises,ht,Pt,yt,A.previousPromises,Ot],F)}function y(L,z,F){var O=z.orientation==="v",B=F._fullLayout,I=B._size,N,U,W;t.init({element:L.node(),gd:F,prepFn:function(){N=L.attr("transform"),n(L)},moveFn:function(Q,le){L.attr("transform",N+o(Q,le)),U=t.align((O?z._uFrac:z._vFrac)+Q/I.w,O?z._thickFrac:z._lenFrac,0,1,z.xanchor),W=t.align((O?z._vFrac:1-z._uFrac)-le/I.h,O?z._lenFrac:z._thickFrac,0,1,z.yanchor);var se=t.getCursor(U,W,z.xanchor,z.yanchor);n(L,se)},doneFn:function(){if(n(L),U!==void 0&&W!==void 0){var Q={};Q[z._propPrefix+"x"]=U,Q[z._propPrefix+"y"]=W,z._traceIndex!==void 0?S.call("_guiRestyle",F,Q,z._traceIndex):S.call("_guiRelayout",F,Q)}}})}function f(L,z,F){var O=z._levels,B=[],I=[],N,U,W=O.end+O.size/100,Q=O.size,le=1.001*F[0]-.001*F[1],se=1.001*F[1]-.001*F[0];for(U=0;U<1e5&&(N=O.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>le&&N0?N>=W:N<=W));U++)N>F[0]&&N-1}H.exports=function(o,i){var n,a=o.data,s=o.layout,c=S([],a),h=S({},s,e(i.tileClass)),p=o._context||{};if(i.width&&(h.width=i.width),i.height&&(h.height=i.height),i.tileClass==="thumbnail"||i.tileClass==="themes__thumb"){h.annotations=[];var d=Object.keys(h);for(n=0;n=0)return p}else if(typeof p=="string"&&(p=p.trim(),p.slice(-1)==="%"&&g(p.slice(0,-1))&&(p=+p.slice(0,-1),p>=0)))return p+"%"}function h(p,d,T,l,_,w){w=w||{};var M=w.moduleHasSelected!==!1,E=w.moduleHasUnselected!==!1,m=w.moduleHasConstrain!==!1,b=w.moduleHasCliponaxis!==!1,v=w.moduleHasTextangle!==!1,u=w.moduleHasInsideanchor!==!1,y=!!w.hasPathbar,f=Array.isArray(_)||_==="auto",P=f||_==="inside",L=f||_==="outside";if(P||L){var z=n(l,"textfont",T.font),F=x.extendFlat({},z),O=p.textfont&&p.textfont.color,B=!O;if(B&&delete F.color,n(l,"insidetextfont",F),y){var I=x.extendFlat({},z);B&&delete I.color,n(l,"pathbar.textfont",I)}L&&n(l,"outsidetextfont",z),M&&l("selected.textfont.color"),E&&l("unselected.textfont.color"),m&&l("constraintext"),b&&l("cliponaxis"),v&&l("textangle"),l("texttemplate")}P&&u&&l("insidetextanchor")}H.exports={supplyDefaults:a,crossTraceDefaults:s,handleText:h,validateCornerradius:c}}}),P2=Le({"src/traces/bar/layout_defaults.js"(Z,H){"use strict";var g=so(),x=Zo(),A=ni(),S=j_(),e=Nd().validateCornerradius;H.exports=function(t,r,o){function i(M,E){return A.coerce(t,r,S,M,E)}for(var n=!1,a=!1,s=!1,c={},h=i("barmode"),p=h==="group",d=0;d0&&!c[l]&&(s=!0),c[l]=!0),T.visible&&T.type==="histogram"){var _=x.getFromId({_fullLayout:r},T[T.orientation==="v"?"xaxis":"yaxis"]);_.type!=="category"&&(a=!0)}}if(!n){delete r.barmode;return}h!=="overlay"&&i("barnorm"),i("bargap",a&&!s?0:.2),i("bargroupgap");var w=i("barcornerradius");r.barcornerradius=e(w)}}}),gy=Le({"src/traces/bar/arrays_to_calcdata.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){for(var e=0;er;if(!o)return S}return e!==void 0?e:A.dflt},Z.coerceColor=function(A,S,e){return g(S).isValid()?S:e!==void 0?e:A.dflt},Z.coerceEnumerated=function(A,S,e){return A.coerceNumber&&(S=+S),A.values.indexOf(S)!==-1?S:e!==void 0?e:A.dflt},Z.getValue=function(A,S){var e;return x(A)?S1||y.bargap===0&&y.bargroupgap===0&&!f[0].trace.marker.line.width)&&g.select(this).attr("shape-rendering","crispEdges")}),v.selectAll("g.points").each(function(f){var P=g.select(this),L=f[0].trace;c(P,L,b)}),e.getComponentMethod("errorbars","style")(v)}function c(b,v,u){A.pointStyle(b.selectAll("path"),v,u),h(b,v,u)}function h(b,v,u){b.selectAll("text").each(function(y){var f=g.select(this),P=S.ensureUniformFontSize(u,l(f,y,v,u));A.font(f,P)})}function p(b,v,u){var y=v[0].trace;y.selectedpoints?d(u,y,b):(c(u,y,b),e.getComponentMethod("errorbars","style")(u))}function d(b,v,u){A.selectedPointStyle(b.selectAll("path"),v),T(b.selectAll("text"),v,u)}function T(b,v,u){b.each(function(y){var f=g.select(this),P;if(y.selected){P=S.ensureUniformFontSize(u,l(f,y,v,u));var L=v.selected.textfont&&v.selected.textfont.color;L&&(P.color=L),A.font(f,P)}else A.selectedTextStyle(f,v)})}function l(b,v,u,y){var f=y._fullLayout.font,P=u.textfont;if(b.classed("bartext-inside")){var L=m(v,u);P=w(u,v.i,f,L)}else b.classed("bartext-outside")&&(P=M(u,v.i,f));return P}function _(b,v,u){return E(o,b.textfont,v,u)}function w(b,v,u,y){var f=_(b,v,u),P=b._input.textfont===void 0||b._input.textfont.color===void 0||Array.isArray(b.textfont.color)&&b.textfont.color[v]===void 0;return P&&(f={color:x.contrast(y),family:f.family,size:f.size,weight:f.weight,style:f.style,variant:f.variant,textcase:f.textcase,lineposition:f.lineposition,shadow:f.shadow}),E(i,b.insidetextfont,v,f)}function M(b,v,u){var y=_(b,v,u);return E(n,b.outsidetextfont,v,y)}function E(b,v,u,y){v=v||{};var f=a.getValue(v.family,u),P=a.getValue(v.size,u),L=a.getValue(v.color,u),z=a.getValue(v.weight,u),F=a.getValue(v.style,u),O=a.getValue(v.variant,u),B=a.getValue(v.textcase,u),I=a.getValue(v.lineposition,u),N=a.getValue(v.shadow,u);return{family:a.coerceString(b.family,f,y.family),size:a.coerceNumber(b.size,P,y.size),color:a.coerceColor(b.color,L,y.color),weight:a.coerceString(b.weight,z,y.weight),style:a.coerceString(b.style,F,y.style),variant:a.coerceString(b.variant,O,y.variant),textcase:a.coerceString(b.variant,B,y.textcase),lineposition:a.coerceString(b.variant,I,y.lineposition),shadow:a.coerceString(b.variant,N,y.shadow)}}function m(b,v){return v.type==="waterfall"?v[b.dir].marker.color:b.mcc||b.mc||v.marker.color}H.exports={style:s,styleTextPoints:h,styleOnSelect:p,getInsideTextFont:w,getOutsideTextFont:M,getBarColor:m,resizeText:t}}}),Wm=Le({"src/traces/bar/plot.js"(Z,H){"use strict";var g=Ji(),x=zn(),A=ni(),S=$l(),e=$a(),t=rs(),r=so(),o=Zo().tickText,i=$h(),n=i.recordMinTextSize,a=i.clearMinTextSize,s=$d(),c=q_(),h=Gm(),p=Fv(),d=p.text,T=p.textposition,l=Td().appendArrayPointValue,_=h.TEXTPAD;function w(Q){return Q.id}function M(Q){if(Q.ids)return w}function E(Q){return(Q>0)-(Q<0)}function m(Q,le){return Q0}function y(Q,le,se,fe,G,J){var $=le.xaxis,X=le.yaxis,re=Q._fullLayout,ae=Q._context.staticPlot;G||(G={mode:re.barmode,norm:re.barmode,gap:re.bargap,groupgap:re.bargroupgap},a("bar",re));var j=A.makeTraceGroups(fe,se,"trace bars").each(function(ee){var ne=g.select(this),ce=ee[0].trace,_e=ee[0].t,we=ce.type==="waterfall",Oe=ce.type==="funnel",Ie=ce.type==="histogram",Xe=ce.type==="bar",tt=Xe||Oe,rt=0;we&&ce.connector.visible&&ce.connector.mode==="between"&&(rt=ce.connector.line.width/2);var Je=ce.orientation==="h",ot=u(G),Me=A.ensureSingle(ne,"g","points"),pe=M(ce),ue=Me.selectAll("g.point").data(A.identity,pe);ue.enter().append("g").classed("point",!0),ue.exit().remove(),ue.each(function(Qe,it){var $e=g.select(this),kt=b(Qe,$,X,Je),Mt=kt[0][0],Bt=kt[0][1],jt=kt[1][0],cr=kt[1][1],nr=(Je?Bt-Mt:cr-jt)===0;nr&&tt&&c.getLineWidth(ce,Qe)&&(nr=!1),nr||(nr=!x(Mt)||!x(Bt)||!x(jt)||!x(cr)),Qe.isBlank=nr,nr&&(Je?Bt=Mt:cr=jt),rt&&!nr&&(Je?(Mt-=m(Mt,Bt)*rt,Bt+=m(Mt,Bt)*rt):(jt-=m(jt,cr)*rt,cr+=m(jt,cr)*rt));var Lr,mr;if(ce.type==="waterfall"){if(!nr){var xr=ce[Qe.dir].marker;Lr=xr.line.width,mr=xr.color}}else Lr=c.getLineWidth(ce,Qe),mr=Qe.mc||ce.marker.color;function mt(vn){var Xt=g.round(Lr/2%1,2);return G.gap===0&&G.groupgap===0?g.round(Math.round(vn)-Xt,2):vn}function Fe(vn,Xt,Dt){return Dt&&vn===Xt?vn:Math.abs(vn-Xt)>=2?mt(vn):vn>Xt?Math.ceil(vn):Math.floor(vn)}var Ze=e.opacity(mr),Ne=Ze<1||Lr>.01?mt:Fe;Q._context.staticPlot||(Mt=Ne(Mt,Bt,Je),Bt=Ne(Bt,Mt,Je),jt=Ne(jt,cr,!Je),cr=Ne(cr,jt,!Je));var Se=Je?$.c2p:X.c2p,Ve;Qe.s0>0?Ve=Qe._sMax:Qe.s0<0?Ve=Qe._sMin:Ve=Qe.s1>0?Qe._sMax:Qe._sMin;function Ee(vn,Xt){if(!vn)return 0;var Dt=Math.abs(Je?cr-jt:Bt-Mt),qt=Math.abs(Je?Bt-Mt:cr-jt),Ut=Ne(Math.abs(Se(Ve,!0)-Se(0,!0))),br=Qe.hasB?Math.min(Dt/2,qt/2):Math.min(Dt/2,Ut),Zr;if(Xt==="%"){var _i=Math.min(50,vn);Zr=Dt*(_i/100)}else Zr=vn;return Ne(Math.max(Math.min(Zr,br),0))}var be=Xe||Ie?Ee(_e.cornerradiusvalue,_e.cornerradiusform):0,Ce,et,ht="M"+Mt+","+jt+"V"+cr+"H"+Bt+"V"+jt+"Z",yt=0;if(be&&Qe.s){var Pt=E(Qe.s0)===0||E(Qe.s)===E(Qe.s0)?Qe.s1:Qe.s0;if(yt=Ne(Qe.hasB?0:Math.abs(Se(Ve,!0)-Se(Pt,!0))),yt0?Math.sqrt(yt*(2*be-yt)):0,Pi=Ot>0?Math.max:Math.min;Ce="M"+Mt+","+jt+"V"+(cr-lr*Wt)+"H"+Pi(Bt-(be-yt)*Ot,Mt)+"A "+be+","+be+" 0 0 "+$t+" "+Bt+","+(cr-be*Wt-fi)+"V"+(jt+be*Wt+fi)+"A "+be+","+be+" 0 0 "+$t+" "+Pi(Bt-(be-yt)*Ot,Mt)+","+(jt+lr*Wt)+"Z"}else if(Qe.hasB)Ce="M"+(Mt+be*Ot)+","+jt+"A "+be+","+be+" 0 0 "+$t+" "+Mt+","+(jt+be*Wt)+"V"+(cr-be*Wt)+"A "+be+","+be+" 0 0 "+$t+" "+(Mt+be*Ot)+","+cr+"H"+(Bt-be*Ot)+"A "+be+","+be+" 0 0 "+$t+" "+Bt+","+(cr-be*Wt)+"V"+(jt+be*Wt)+"A "+be+","+be+" 0 0 "+$t+" "+(Bt-be*Ot)+","+jt+"Z";else{et=Math.abs(cr-jt)+yt;var Bi=et0?Math.sqrt(yt*(2*be-yt)):0,en=Wt>0?Math.max:Math.min;Ce="M"+(Mt+Bi*Ot)+","+jt+"V"+en(cr-(be-yt)*Wt,jt)+"A "+be+","+be+" 0 0 "+$t+" "+(Mt+be*Ot-zi)+","+cr+"H"+(Bt-be*Ot+zi)+"A "+be+","+be+" 0 0 "+$t+" "+(Bt-Bi*Ot)+","+en(cr-(be-yt)*Wt,jt)+"V"+jt+"Z"}}else Ce=ht}else Ce=ht;var Ri=v(A.ensureSingle($e,"path"),re,G,J);if(Ri.style("vector-effect",ae?"none":"non-scaling-stroke").attr("d",isNaN((Bt-Mt)*(cr-jt))||nr&&Q._context.staticPlot?"M0,0Z":Ce).call(t.setClipUrl,le.layerClipId,Q),!re.uniformtext.mode&&ot){var Zi=t.makePointStyleFns(ce);t.singlePointStyle(Qe,Ri,ce,Zi,Q)}f(Q,le,$e,ee,it,Mt,Bt,jt,cr,be,yt,G,J),le.layerClipId&&t.hideOutsideRangePoint(Qe,$e.select("text"),$,X,ce.xcalendar,ce.ycalendar)});var ze=ce.cliponaxis===!1;t.setClipUrl(ne,ze?null:le.layerClipId,Q)});r.getComponentMethod("errorbars","plot")(Q,j,le,G)}function f(Q,le,se,fe,G,J,$,X,re,ae,j,ee,ne){var ce=le.xaxis,_e=le.yaxis,we=Q._fullLayout,Oe;function Ie(et,ht,yt){var Pt=A.ensureSingle(et,"text").text(ht).attr({class:"bartext bartext-"+Oe,"text-anchor":"middle","data-notex":1}).call(t.font,yt).call(S.convertToTspans,Q);return Pt}var Xe=fe[0].trace,tt=Xe.orientation==="h",rt=I(we,fe,G,ce,_e);Oe=N(Xe,G);var Je=ee.mode==="stack"||ee.mode==="relative",ot=fe[G],Me=!Je||ot._outmost,pe=ot.hasB,ue=ae&&ae-j>_;if(!rt||Oe==="none"||(ot.isBlank||J===$||X===re)&&(Oe==="auto"||Oe==="inside")){se.select("text").remove();return}var ze=we.font,Qe=s.getBarColor(fe[G],Xe),it=s.getInsideTextFont(Xe,G,ze,Qe),$e=s.getOutsideTextFont(Xe,G,ze),kt=Xe.insidetextanchor||"end",Mt=se.datum();tt?ce.type==="log"&&Mt.s0<=0&&(ce.range[0]0&&mt>0,Ne;ue?pe?Ne=P(cr-2*ae,nr,xr,mt,tt)||P(cr,nr-2*ae,xr,mt,tt):tt?Ne=P(cr-(ae-j),nr,xr,mt,tt)||P(cr,nr-2*(ae-j),xr,mt,tt):Ne=P(cr,nr-(ae-j),xr,mt,tt)||P(cr-2*(ae-j),nr,xr,mt,tt):Ne=P(cr,nr,xr,mt,tt),Ze&&Ne?Oe="inside":(Oe="outside",Lr.remove(),Lr=null)}else Oe="inside";if(!Lr){Fe=A.ensureUniformFontSize(Q,Oe==="outside"?$e:it),Lr=Ie(se,rt,Fe);var Se=Lr.attr("transform");if(Lr.attr("transform",""),mr=t.bBox(Lr.node()),xr=mr.width,mt=mr.height,Lr.attr("transform",Se),xr<=0||mt<=0){Lr.remove();return}}var Ve=Xe.textangle,Ee,be;Oe==="outside"?(be=Xe.constraintext==="both"||Xe.constraintext==="outside",Ee=B(J,$,X,re,mr,{isHorizontal:tt,constrained:be,angle:Ve})):(be=Xe.constraintext==="both"||Xe.constraintext==="inside",Ee=F(J,$,X,re,mr,{isHorizontal:tt,constrained:be,angle:Ve,anchor:kt,hasB:pe,r:ae,overhead:j})),Ee.fontSize=Fe.size,n(Xe.type==="histogram"?"bar":Xe.type,Ee,we),ot.transform=Ee;var Ce=v(Lr,we,ee,ne);A.setTransormAndDisplay(Ce,Ee)}function P(Q,le,se,fe,G){if(Q<0||le<0)return!1;var J=se<=Q&&fe<=le,$=se<=le&&fe<=Q,X=G?Q>=se*(le/fe):le>=fe*(Q/se);return J||$||X}function L(Q){return Q==="auto"?0:Q}function z(Q,le){var se=Math.PI/180*le,fe=Math.abs(Math.sin(se)),G=Math.abs(Math.cos(se));return{x:Q.width*G+Q.height*fe,y:Q.width*fe+Q.height*G}}function F(Q,le,se,fe,G,J){var $=!!J.isHorizontal,X=!!J.constrained,re=J.angle||0,ae=J.anchor,j=ae==="end",ee=ae==="start",ne=J.leftToRight||0,ce=(ne+1)/2,_e=1-ce,we=J.hasB,Oe=J.r,Ie=J.overhead,Xe=G.width,tt=G.height,rt=Math.abs(le-Q),Je=Math.abs(fe-se),ot=rt>2*_&&Je>2*_?_:0;rt-=2*ot,Je-=2*ot;var Me=L(re);re==="auto"&&!(Xe<=rt&&tt<=Je)&&(Xe>rt||tt>Je)&&(!(Xe>Je||tt>rt)||Xe_){var Qe=O(Q,le,se,fe,pe,Oe,Ie,$,we);ue=Qe.scale,ze=Qe.pad}else ue=1,X&&(ue=Math.min(1,rt/pe.x,Je/pe.y)),ze=0;var it=G.left*_e+G.right*ce,$e=(G.top+G.bottom)/2,kt=(Q+_)*_e+(le-_)*ce,Mt=(se+fe)/2,Bt=0,jt=0;if(ee||j){var cr=($?pe.x:pe.y)/2;Oe&&(j||we)&&(ot+=ze);var nr=$?m(Q,le):m(se,fe);$?ee?(kt=Q+nr*ot,Bt=-nr*cr):(kt=le-nr*ot,Bt=nr*cr):ee?(Mt=se+nr*ot,jt=-nr*cr):(Mt=fe-nr*ot,jt=nr*cr)}return{textX:it,textY:$e,targetX:kt,targetY:Mt,anchorX:Bt,anchorY:jt,scale:ue,rotate:Me}}function O(Q,le,se,fe,G,J,$,X,re){var ae=Math.max(0,Math.abs(le-Q)-2*_),j=Math.max(0,Math.abs(fe-se)-2*_),ee=J-_,ne=$?ee-Math.sqrt(ee*ee-(ee-$)*(ee-$)):ee,ce=re?ee*2:X?ee-$:2*ne,_e=re?ee*2:X?2*ne:ee-$,we,Oe,Ie,Xe,tt;return G.y/G.x>=j/(ae-ce)?Xe=j/G.y:G.y/G.x<=(j-_e)/ae?Xe=ae/G.x:!re&&X?(we=G.x*G.x+G.y*G.y/4,Oe=-2*G.x*(ae-ee)-G.y*(j/2-ee),Ie=(ae-ee)*(ae-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Xe=(-Oe+Math.sqrt(Oe*Oe-4*we*Ie))/(2*we)):re?(we=(G.x*G.x+G.y*G.y)/4,Oe=-G.x*(ae/2-ee)-G.y*(j/2-ee),Ie=(ae/2-ee)*(ae/2-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Xe=(-Oe+Math.sqrt(Oe*Oe-4*we*Ie))/(2*we)):(we=G.x*G.x/4+G.y*G.y,Oe=-G.x*(ae/2-ee)-2*G.y*(j-ee),Ie=(ae/2-ee)*(ae/2-ee)+(j-ee)*(j-ee)-ee*ee,Xe=(-Oe+Math.sqrt(Oe*Oe-4*we*Ie))/(2*we)),Xe=Math.min(1,Xe),X?tt=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(j-G.y*Xe)/2)*(ee-(j-G.y*Xe)/2)))-$):tt=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(ae-G.x*Xe)/2)*(ee-(ae-G.x*Xe)/2)))-$),{scale:Xe,pad:tt}}function B(Q,le,se,fe,G,J){var $=!!J.isHorizontal,X=!!J.constrained,re=J.angle||0,ae=G.width,j=G.height,ee=Math.abs(le-Q),ne=Math.abs(fe-se),ce;$?ce=ne>2*_?_:0:ce=ee>2*_?_:0;var _e=1;X&&(_e=$?Math.min(1,ne/j):Math.min(1,ee/ae));var we=L(re),Oe=z(G,we),Ie=($?Oe.x:Oe.y)/2,Xe=(G.left+G.right)/2,tt=(G.top+G.bottom)/2,rt=(Q+le)/2,Je=(se+fe)/2,ot=0,Me=0,pe=$?m(le,Q):m(se,fe);return $?(rt=le-pe*ce,ot=pe*Ie):(Je=fe+pe*ce,Me=-pe*Ie),{textX:Xe,textY:tt,targetX:rt,targetY:Je,anchorX:ot,anchorY:Me,scale:_e,rotate:we}}function I(Q,le,se,fe,G){var J=le[0].trace,$=J.texttemplate,X;return $?X=U(Q,le,se,fe,G):J.textinfo?X=W(le,se,fe,G):X=c.getValue(J.text,se),c.coerceString(d,X)}function N(Q,le){var se=c.getValue(Q.textposition,le);return c.coerceEnumerated(T,se)}function U(Q,le,se,fe,G){var J=le[0].trace,$=A.castOption(J,se,"texttemplate");if(!$)return"";var X=J.type==="histogram",re=J.type==="waterfall",ae=J.type==="funnel",j=J.orientation==="h",ee,ne,ce,_e;j?(ee="y",ne=G,ce="x",_e=fe):(ee="x",ne=fe,ce="y",_e=G);function we(ot){return o(ne,ne.c2l(ot),!0).text}function Oe(ot){return o(_e,_e.c2l(ot),!0).text}var Ie=le[se],Xe={};Xe.label=Ie.p,Xe.labelLabel=Xe[ee+"Label"]=we(Ie.p);var tt=A.castOption(J,Ie.i,"text");(tt===0||tt)&&(Xe.text=tt),Xe.value=Ie.s,Xe.valueLabel=Xe[ce+"Label"]=Oe(Ie.s);var rt={};l(rt,J,Ie.i),(X||rt.x===void 0)&&(rt.x=j?Xe.value:Xe.label),(X||rt.y===void 0)&&(rt.y=j?Xe.label:Xe.value),(X||rt.xLabel===void 0)&&(rt.xLabel=j?Xe.valueLabel:Xe.labelLabel),(X||rt.yLabel===void 0)&&(rt.yLabel=j?Xe.labelLabel:Xe.valueLabel),re&&(Xe.delta=+Ie.rawS||Ie.s,Xe.deltaLabel=Oe(Xe.delta),Xe.final=Ie.v,Xe.finalLabel=Oe(Xe.final),Xe.initial=Xe.final-Xe.delta,Xe.initialLabel=Oe(Xe.initial)),ae&&(Xe.value=Ie.s,Xe.valueLabel=Oe(Xe.value),Xe.percentInitial=Ie.begR,Xe.percentInitialLabel=A.formatPercent(Ie.begR),Xe.percentPrevious=Ie.difR,Xe.percentPreviousLabel=A.formatPercent(Ie.difR),Xe.percentTotal=Ie.sumR,Xe.percenTotalLabel=A.formatPercent(Ie.sumR));var Je=A.castOption(J,Ie.i,"customdata");return Je&&(Xe.customdata=Je),A.texttemplateString($,Xe,Q._d3locale,rt,Xe,J._meta||{})}function W(Q,le,se,fe){var G=Q[0].trace,J=G.orientation==="h",$=G.type==="waterfall",X=G.type==="funnel";function re(Je){var ot=J?fe:se;return o(ot,Je,!0).text}function ae(Je){var ot=J?se:fe;return o(ot,+Je,!0).text}var j=G.textinfo,ee=Q[le],ne=j.split("+"),ce=[],_e,we=function(Je){return ne.indexOf(Je)!==-1};if(we("label")&&ce.push(re(Q[le].p)),we("text")&&(_e=A.castOption(G,ee.i,"text"),(_e===0||_e)&&ce.push(_e)),$){var Oe=+ee.rawS||ee.s,Ie=ee.v,Xe=Ie-Oe;we("initial")&&ce.push(ae(Xe)),we("delta")&&ce.push(ae(Oe)),we("final")&&ce.push(ae(Ie))}if(X){we("value")&&ce.push(ae(ee.s));var tt=0;we("percent initial")&&tt++,we("percent previous")&&tt++,we("percent total")&&tt++;var rt=tt>1;we("percent initial")&&(_e=A.formatPercent(ee.begR),rt&&(_e+=" of initial"),ce.push(_e)),we("percent previous")&&(_e=A.formatPercent(ee.difR),rt&&(_e+=" of previous"),ce.push(_e)),we("percent total")&&(_e=A.formatPercent(ee.sumR),rt&&(_e+=" of total"),ce.push(_e))}return ce.join("
")}H.exports={plot:y,toMoveInsideBar:F}}}),n0=Le({"src/traces/bar/hover.js"(Z,H){"use strict";var g=Dc(),x=so(),A=$a(),S=ni().fillText,e=q_().getLineWidth,t=Zo().hoverLabelText,r=$n().BADNUM;function o(a,s,c,h,p){var d=i(a,s,c,h,p);if(d){var T=d.cd,l=T[0].trace,_=T[d.index];return d.color=n(l,_),x.getComponentMethod("errorbars","hoverInfo")(_,l,d),[d]}}function i(a,s,c,h,p){var d=a.cd,T=d[0].trace,l=d[0].t,_=h==="closest",w=T.type==="waterfall",M=a.maxHoverDistance,E=a.maxSpikeDistance,m,b,v,u,y,f,P;T.orientation==="h"?(m=c,b=s,v="y",u="x",y=fe,f=Q):(m=s,b=c,v="x",u="y",f=fe,y=Q);var L=T[v+"period"],z=_||L;function F(_e){return B(_e,-1)}function O(_e){return B(_e,1)}function B(_e,we){var Oe=_e.w;return _e[v]+we*Oe/2}function I(_e){return _e[v+"End"]-_e[v+"Start"]}var N=_?F:L?function(_e){return _e.p-I(_e)/2}:function(_e){return Math.min(F(_e),_e.p-l.bardelta/2)},U=_?O:L?function(_e){return _e.p+I(_e)/2}:function(_e){return Math.max(O(_e),_e.p+l.bardelta/2)};function W(_e,we,Oe){return p.finiteRange&&(Oe=0),g.inbox(_e-m,we-m,Oe+Math.min(1,Math.abs(we-_e)/P)-1)}function Q(_e){return W(N(_e),U(_e),M)}function le(_e){return W(F(_e),O(_e),E)}function se(_e){var we=_e[u];if(w){var Oe=Math.abs(_e.rawS)||0;b>0?we+=Oe:b<0&&(we-=Oe)}return we}function fe(_e){var we=b,Oe=_e.b,Ie=se(_e);return g.inbox(Oe-we,Ie-we,M+(Ie-we)/(Ie-Oe)-1)}function G(_e){var we=b,Oe=_e.b,Ie=se(_e);return g.inbox(Oe-we,Ie-we,E+(Ie-we)/(Ie-Oe)-1)}var J=a[v+"a"],$=a[u+"a"];P=Math.abs(J.r2c(J.range[1])-J.r2c(J.range[0]));function X(_e){return(y(_e)+f(_e))/2}var re=g.getDistanceFunction(h,y,f,X);if(g.getClosest(d,re,a),a.index!==!1&&d[a.index].p!==r){z||(N=function(_e){return Math.min(F(_e),_e.p-l.bargroupwidth/2)},U=function(_e){return Math.max(O(_e),_e.p+l.bargroupwidth/2)});var ae=a.index,j=d[ae],ee=T.base?j.b+j.s:j.s;a[u+"0"]=a[u+"1"]=$.c2p(j[u],!0),a[u+"LabelVal"]=ee;var ne=l.extents[l.extents.round(j.p)];a[v+"0"]=J.c2p(_?N(j):ne[0],!0),a[v+"1"]=J.c2p(_?U(j):ne[1],!0);var ce=j.orig_p!==void 0;return a[v+"LabelVal"]=ce?j.orig_p:j.p,a.labelLabel=t(J,a[v+"LabelVal"],T[v+"hoverformat"]),a.valueLabel=t($,a[u+"LabelVal"],T[u+"hoverformat"]),a.baseLabel=t($,j.b,T[u+"hoverformat"]),a.spikeDistance=(G(j)+le(j))/2,a[v+"Spike"]=J.c2p(j.p,!0),S(j,T,a),a.hovertemplate=T.hovertemplate,a}}function n(a,s){var c=s.mcc||a.marker.color,h=s.mlcc||a.marker.line.color,p=e(a,s);if(A.opacity(c))return c;if(A.opacity(h)&&p)return h}H.exports={hoverPoints:o,hoverOnBars:i,getTraceColor:n}}}),mk=Le({"src/traces/bar/event_data.js"(Z,H){"use strict";H.exports=function(x,A,S){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),S.orientation==="h"?(x.label=x.y,x.value=x.x):(x.label=x.x,x.value=x.y),x}}}),a0=Le({"src/traces/bar/select.js"(Z,H){"use strict";H.exports=function(A,S){var e=A.cd,t=A.xaxis,r=A.yaxis,o=e[0].trace,i=o.type==="funnel",n=o.orientation==="h",a=[],s;if(S===!1)for(s=0;s0?(L="v",v>0?z=Math.min(y,u):z=Math.min(u)):v>0?(L="h",z=Math.min(y)):z=0;if(!z){c.visible=!1;return}c._length=z;var N=h("orientation",L);c._hasPreCompStats?N==="v"&&v===0?(h("x0",0),h("dx",1)):N==="h"&&b===0&&(h("y0",0),h("dy",1)):N==="v"&&v===0?h("x0"):N==="h"&&b===0&&h("y0");var U=x.getComponentMethod("calendars","handleTraceDefaults");U(s,c,["x","y"],p)}function n(s,c,h,p){var d=p.prefix,T=g.coerce2(s,c,r,"marker.outliercolor"),l=h("marker.line.outliercolor"),_="outliers";c._hasPreCompStats?_="all":(T||l)&&(_="suspectedoutliers");var w=h(d+"points",_);w?(h("jitter",w==="all"?.3:0),h("pointpos",w==="all"?-1.5:0),h("marker.symbol"),h("marker.opacity"),h("marker.size"),h("marker.angle"),h("marker.color",c.line.color),h("marker.line.color"),h("marker.line.width"),w==="suspectedoutliers"&&(h("marker.line.outliercolor",c.marker.color),h("marker.line.outlierwidth")),h("selected.marker.color"),h("unselected.marker.color"),h("selected.marker.size"),h("unselected.marker.size"),h("text"),h("hovertext")):delete c.marker;var M=h("hoveron");(M==="all"||M.indexOf("points")!==-1)&&h("hovertemplate"),g.coerceSelectionMarkerOpacity(c,h)}function a(s,c){var h,p;function d(w){return g.coerce(p._input,p,r,w)}for(var T=0;Tse.uf};if(E._hasPreCompStats){var ae=E[z],j=function(nr){return L.d2c((E[nr]||[])[f])},ee=1/0,ne=-1/0;for(f=0;f=se.q1&&se.q3>=se.med){var _e=j("lowerfence");se.lf=_e!==e&&_e<=se.q1?_e:p(se,G,J);var we=j("upperfence");se.uf=we!==e&&we>=se.q3?we:d(se,G,J);var Oe=j("mean");se.mean=Oe!==e?Oe:J?S.mean(G,J):(se.q1+se.q3)/2;var Ie=j("sd");se.sd=Oe!==e&&Ie>=0?Ie:J?S.stdev(G,J,se.mean):se.q3-se.q1,se.lo=T(se),se.uo=l(se);var Xe=j("notchspan");Xe=Xe!==e&&Xe>0?Xe:_(se,J),se.ln=se.med-Xe,se.un=se.med+Xe;var tt=se.lf,rt=se.uf;E.boxpoints&&G.length&&(tt=Math.min(tt,G[0]),rt=Math.max(rt,G[J-1])),E.notched&&(tt=Math.min(tt,se.ln),rt=Math.max(rt,se.un)),se.min=tt,se.max=rt}else{S.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+se.q1,"median = "+se.med,"q3 = "+se.q3].join(` +`));var Je;se.med!==e?Je=se.med:se.q1!==e?se.q3!==e?Je=(se.q1+se.q3)/2:Je=se.q1:se.q3!==e?Je=se.q3:Je=0,se.med=Je,se.q1=se.q3=Je,se.lf=se.uf=Je,se.mean=se.sd=Je,se.ln=se.un=Je,se.min=se.max=Je}ee=Math.min(ee,se.min),ne=Math.max(ne,se.max),se.pts2=fe.filter(re),u.push(se)}}E._extremes[L._id]=x.findExtremes(L,[ee,ne],{padded:!0})}else{var ot=L.makeCalcdata(E,z),Me=o(Q,le),pe=Q.length,ue=i(pe);for(f=0;f=0&&ze0){if(se={},se.pos=se[O]=Q[f],fe=se.pts=ue[f].sort(c),G=se[z]=fe.map(h),J=G.length,se.min=G[0],se.max=G[J-1],se.mean=S.mean(G,J),se.sd=S.stdev(G,J,se.mean)*E.sdmultiple,se.med=S.interp(G,.5),J%2&&(kt||Mt)){var Bt,jt;kt?(Bt=G.slice(0,J/2),jt=G.slice(J/2+1)):Mt&&(Bt=G.slice(0,J/2+1),jt=G.slice(J/2)),se.q1=S.interp(Bt,.5),se.q3=S.interp(jt,.5)}else se.q1=S.interp(G,.25),se.q3=S.interp(G,.75);se.lf=p(se,G,J),se.uf=d(se,G,J),se.lo=T(se),se.uo=l(se);var cr=_(se,J);se.ln=se.med-cr,se.un=se.med+cr,Qe=Math.min(Qe,se.ln),it=Math.max(it,se.un),se.pts2=fe.filter(re),u.push(se)}E.notched&&S.isTypedArray(ot)&&(ot=Array.from(ot)),E._extremes[L._id]=x.findExtremes(L,E.notched?ot.concat([Qe,it]):ot,{padded:!0})}return s(u,E),u.length>0?(u[0].t={num:m[y],dPos:le,posLetter:O,valLetter:z,labels:{med:t(M,"median:"),min:t(M,"min:"),q1:t(M,"q1:"),q3:t(M,"q3:"),max:t(M,"max:"),mean:E.boxmean==="sd"||E.sizemode==="sd"?t(M,"mean \xB1 \u03C3:").replace("\u03C3",E.sdmultiple===1?"\u03C3":E.sdmultiple+"\u03C3"):t(M,"mean:"),lf:t(M,"lower fence:"),uf:t(M,"upper fence:")}},m[y]++,u):[{t:{empty:!0}}]};function r(w,M,E,m){var b=M in w,v=M+"0"in w,u="d"+M in w;if(b||v&&u){var y=E.makeCalcdata(w,M),f=A(w,E,M,y).vals;return[f,y]}var P;v?P=w[M+"0"]:"name"in w&&(E.type==="category"||g(w.name)&&["linear","log"].indexOf(E.type)!==-1||S.isDateTime(w.name)&&E.type==="date")?P=w.name:P=m;for(var L=E.type==="multicategory"?E.r2c_just_indices(P):E.d2c(P,0,w[M+"calendar"]),z=w._length,F=new Array(z),O=0;O1,v=1-s[r+"gap"],u=1-s[r+"groupgap"];for(p=0;p0;if(L==="positive"?(se=z*(P?1:.5),J=G,fe=J=O):L==="negative"?(se=J=O,fe=z*(P?1:.5),$=G):(se=fe=z,J=$=G),ne){var ce=y.pointpos,_e=y.jitter,we=y.marker.size/2,Oe=0;ce+_e>=0&&(Oe=G*(ce+_e),Oe>se?(ee=!0,ae=we,X=Oe):Oe>J&&(ae=we,X=se)),Oe<=se&&(X=se);var Ie=0;ce-_e<=0&&(Ie=-G*(ce-_e),Ie>fe?(ee=!0,j=we,re=Ie):Ie>$&&(j=we,re=fe)),Ie<=fe&&(re=fe)}else X=se,re=fe;var Xe=new Array(T.length);for(d=0;dE.lo&&(N.so=!0)}return b});M.enter().append("path").classed("point",!0),M.exit().remove(),M.call(A.translatePoints,h,p)}function i(n,a,s,c){var h=a.val,p=a.pos,d=!!p.rangebreaks,T=c.bPos,l=c.bPosPxOffset||0,_=s.boxmean||(s.meanline||{}).visible,w,M;Array.isArray(c.bdPos)?(w=c.bdPos[0],M=c.bdPos[1]):(w=c.bdPos,M=c.bdPos);var E=n.selectAll("path.mean").data(s.type==="box"&&s.boxmean||s.type==="violin"&&s.box.visible&&s.meanline.visible?x.identity:[]);E.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),E.exit().remove(),E.each(function(m){var b=p.c2l(m.pos+T,!0),v=p.l2p(b-w)+l,u=p.l2p(b+M)+l,y=d?(v+u)/2:p.l2p(b)+l,f=h.c2p(m.mean,!0),P=h.c2p(m.mean-m.sd,!0),L=h.c2p(m.mean+m.sd,!0);s.orientation==="h"?g.select(this).attr("d","M"+f+","+v+"V"+u+(_==="sd"?"m0,0L"+P+","+y+"L"+f+","+v+"L"+L+","+y+"Z":"")):g.select(this).attr("d","M"+v+","+f+"H"+u+(_==="sd"?"m0,0L"+y+","+P+"L"+v+","+f+"L"+y+","+L+"Z":""))})}H.exports={plot:t,plotBoxAndWhiskers:r,plotPoints:o,plotBoxMean:i}}}),X_=Le({"src/traces/box/style.js"(Z,H){"use strict";var g=Ji(),x=$a(),A=rs();function S(t,r,o){var i=o||g.select(t).selectAll("g.trace.boxes");i.style("opacity",function(n){return n[0].trace.opacity}),i.each(function(n){var a=g.select(this),s=n[0].trace,c=s.line.width;function h(T,l,_,w){T.style("stroke-width",l+"px").call(x.stroke,_).call(x.fill,w)}var p=a.selectAll("path.box");if(s.type==="candlestick")p.each(function(T){if(!T.empty){var l=g.select(this),_=s[T.dir];h(l,_.line.width,_.line.color,_.fillcolor),l.style("opacity",s.selectedpoints&&!T.selected?.3:1)}});else{h(p,c,s.line.color,s.fillcolor),a.selectAll("path.mean").style({"stroke-width":c,"stroke-dasharray":2*c+"px,"+c+"px"}).call(x.stroke,s.line.color);var d=a.selectAll("path.point");A.pointStyle(d,s,t)}})}function e(t,r,o){var i=r[0].trace,n=o.selectAll("path.point");i.selectedpoints?A.selectedPointStyle(n,i):A.pointStyle(n,i,t)}H.exports={style:S,styleOnSelect:e}}}),R2=Le({"src/traces/box/hover.js"(Z,H){"use strict";var g=Zo(),x=ni(),A=Dc(),S=$a(),e=x.fillText;function t(i,n,a,s){var c=i.cd,h=c[0].trace,p=h.hoveron,d=[],T;return p.indexOf("boxes")!==-1&&(d=d.concat(r(i,n,a,s))),p.indexOf("points")!==-1&&(T=o(i,n,a)),s==="closest"?T?[T]:d:(T&&d.push(T),d)}function r(i,n,a,s){var c=i.cd,h=i.xa,p=i.ya,d=c[0].trace,T=c[0].t,l=d.type==="violin",_,w,M,E,m,b,v,u,y,f,P,L=T.bdPos,z,F,O=T.wHover,B=function(Ie){return M.c2l(Ie.pos)+T.bPos-M.c2l(b)};l&&d.side!=="both"?(d.side==="positive"&&(y=function(Ie){var Xe=B(Ie);return A.inbox(Xe,Xe+O,f)},z=L,F=0),d.side==="negative"&&(y=function(Ie){var Xe=B(Ie);return A.inbox(Xe-O,Xe,f)},z=0,F=L)):(y=function(Ie){var Xe=B(Ie);return A.inbox(Xe-O,Xe+O,f)},z=F=L);var I;l?I=function(Ie){return A.inbox(Ie.span[0]-m,Ie.span[1]-m,f)}:I=function(Ie){return A.inbox(Ie.min-m,Ie.max-m,f)},d.orientation==="h"?(m=n,b=a,v=I,u=y,_="y",M=p,w="x",E=h):(m=a,b=n,v=y,u=I,_="x",M=h,w="y",E=p);var N=Math.min(1,L/Math.abs(M.r2c(M.range[1])-M.r2c(M.range[0])));f=i.maxHoverDistance-N,P=i.maxSpikeDistance-N;function U(Ie){return(v(Ie)+u(Ie))/2}var W=A.getDistanceFunction(s,v,u,U);if(A.getClosest(c,W,i),i.index===!1)return[];var Q=c[i.index],le=d.line.color,se=(d.marker||{}).color;S.opacity(le)&&d.line.width?i.color=le:S.opacity(se)&&d.boxpoints?i.color=se:i.color=d.fillcolor,i[_+"0"]=M.c2p(Q.pos+T.bPos-F,!0),i[_+"1"]=M.c2p(Q.pos+T.bPos+z,!0),i[_+"LabelVal"]=Q.orig_p!==void 0?Q.orig_p:Q.pos;var fe=_+"Spike";i.spikeDistance=U(Q)*P/f,i[fe]=M.c2p(Q.pos,!0);var G=d.boxmean||d.sizemode==="sd"||(d.meanline||{}).visible,J=d.boxpoints||d.points,$=J&&G?["max","uf","q3","med","mean","q1","lf","min"]:J&&!G?["max","uf","q3","med","q1","lf","min"]:!J&&G?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],X=E.range[1]0&&(o=!0);for(var s=0;st){var r=t-S[x];return S[x]=t,r}}else return S[x]=t,t;return 0},max:function(x,A,S,e){var t=e[A];if(g(t))if(t=Number(t),g(S[x])){if(S[x]v&&vS){var f=u===x?1:6,P=u===x?"M12":"M1";return function(L,z){var F=T.c2d(L,x,l),O=F.indexOf("-",f);O>0&&(F=F.substr(0,O));var B=T.d2c(F,0,l);if(Br?c>S?c>x*1.1?x:c>A*1.1?A:S:c>e?e:c>t?t:r:Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function a(c,h,p,d,T,l){if(d&&c>S){var _=s(h,T,l),w=s(p,T,l),M=c===x?0:1;return _[M]!==w[M]}return Math.floor(p/c)-Math.floor(h/c)>.1}function s(c,h,p){var d=h.c2d(c,x,p).split("-");return d[0]===""&&(d.unshift(),d[0]="-"+d[0]),d}}}),U2=Le({"src/traces/histogram/calc.js"(Z,H){"use strict";var g=zn(),x=ni(),A=so(),S=Zo(),e=gy(),t=F2(),r=B2(),o=O2(),i=N2();function n(p,d){var T=[],l=[],_=d.orientation==="h",w=S.getFromId(p,_?d.yaxis:d.xaxis),M=_?"y":"x",E={x:"y",y:"x"}[M],m=d[M+"calendar"],b=d.cumulative,v,u=a(p,d,w,M),y=u[0],f=u[1],P=typeof y.size=="string",L=[],z=P?L:y,F=[],O=[],B=[],I=0,N=d.histnorm,U=d.histfunc,W=N.indexOf("density")!==-1,Q,le,se;b.enabled&&W&&(N=N.replace(/ ?density$/,""),W=!1);var fe=U==="max"||U==="min",G=fe?null:0,J=t.count,$=r[N],X=!1,re=function(pe){return w.r2c(pe,0,m)},ae;for(x.isArrayOrTypedArray(d[E])&&U!=="count"&&(ae=d[E],X=U==="avg",J=t[U]),v=re(y.start),le=re(y.end)+(v-S.tickIncrement(v,y.size,!1,m))/1e6;v=0&&se=Je;v--)if(l[v]){ot=v;break}for(v=Je;v<=ot;v++)if(g(T[v])&&g(l[v])){var Me={p:T[v],s:l[v],b:0};b.enabled||(Me.pts=B[v],ce?Me.ph0=Me.ph1=B[v].length?f[B[v][0]]:T[v]:(d._computePh=!0,Me.ph0=Xe(L[v]),Me.ph1=Xe(L[v+1],!0))),rt.push(Me)}return rt.length===1&&(rt[0].width1=S.tickIncrement(rt[0].p,y.size,!1,m)-rt[0].p),e(rt,d),x.isArrayOrTypedArray(d.selectedpoints)&&x.tagSelected(rt,d,Oe),rt}function a(p,d,T,l,_){var w=l+"bins",M=p._fullLayout,E=d["_"+l+"bingroup"],m=M._histogramBinOpts[E],b=M.barmode==="overlay",v,u,y,f,P,L,z,F=function(Ie){return T.r2c(Ie,0,f)},O=function(Ie){return T.c2r(Ie,0,f)},B=T.type==="date"?function(Ie){return Ie||Ie===0?x.cleanDate(Ie,null,f):null}:function(Ie){return g(Ie)?Number(Ie):null};function I(Ie,Xe,tt){Xe[Ie+"Found"]?(Xe[Ie]=B(Xe[Ie]),Xe[Ie]===null&&(Xe[Ie]=tt[Ie])):(L[Ie]=Xe[Ie]=tt[Ie],x.nestedProperty(u[0],w+"."+Ie).set(tt[Ie]))}if(d["_"+l+"autoBinFinished"])delete d["_"+l+"autoBinFinished"];else{u=m.traces;var N=[],U=!0,W=!1,Q=!1;for(v=0;v"u"){if(_)return[se,P,!0];se=s(p,d,T,l,w)}z=y.cumulative||{},z.enabled&&z.currentbin!=="include"&&(z.direction==="decreasing"?se.start=O(S.tickIncrement(F(se.start),se.size,!0,f)):se.end=O(S.tickIncrement(F(se.end),se.size,!1,f))),m.size=se.size,m.sizeFound||(L.size=se.size,x.nestedProperty(u[0],w+".size").set(se.size)),I("start",m,se),I("end",m,se)}P=d["_"+l+"pos0"],delete d["_"+l+"pos0"];var G=d._input[w]||{},J=x.extendFlat({},m),$=m.start,X=T.r2l(G.start),re=X!==void 0;if((m.startFound||re)&&X!==T.r2l($)){var ae=re?X:x.aggNums(Math.min,null,P),j={type:T.type==="category"||T.type==="multicategory"?"linear":T.type,r2l:T.r2l,dtick:m.size,tick0:$,calendar:f,range:[ae,S.tickIncrement(ae,m.size,!1,f)].map(T.l2r)},ee=S.tickFirst(j);ee>T.r2l(ae)&&(ee=S.tickIncrement(ee,m.size,!0,f)),J.start=T.l2r(ee),re||x.nestedProperty(d,w+".start").set(J.start)}var ne=m.end,ce=T.r2l(G.end),_e=ce!==void 0;if((m.endFound||_e)&&ce!==T.r2l(ne)){var we=_e?ce:x.aggNums(Math.max,null,P);J.end=T.l2r(we),_e||x.nestedProperty(d,w+".start").set(J.end)}var Oe="autobin"+l;return d._input[Oe]===!1&&(d._input[w]=x.extendFlat({},d[w]||{}),delete d._input[Oe],delete d[Oe]),[J,P]}function s(p,d,T,l,_){var w=p._fullLayout,M=c(p,d),E=!1,m=1/0,b=[d],v,u,y;for(v=0;v=0;l--)E(l);else if(d==="increasing"){for(l=1;l=0;l--)p[l]+=p[l+1];T==="exclude"&&(p.push(0),p.shift())}}H.exports={calc:n,calcAllAutoBins:a}}}),Tk=Le({"src/traces/histogram2d/calc.js"(Z,H){"use strict";var g=ni(),x=Zo(),A=F2(),S=B2(),e=O2(),t=N2(),r=U2().calcAllAutoBins;H.exports=function(s,c){var h=x.getFromId(s,c.xaxis),p=x.getFromId(s,c.yaxis),d=c.xcalendar,T=c.ycalendar,l=function(Fe){return h.r2c(Fe,0,d)},_=function(Fe){return p.r2c(Fe,0,T)},w=function(Fe){return h.c2r(Fe,0,d)},M=function(Fe){return p.c2r(Fe,0,T)},E,m,b,v,u=r(s,c,h,"x"),y=u[0],f=u[1],P=r(s,c,p,"y"),L=P[0],z=P[1],F=c._length;f.length>F&&f.splice(F,f.length-F),z.length>F&&z.splice(F,z.length-F);var O=[],B=[],I=[],N=typeof y.size=="string",U=typeof L.size=="string",W=[],Q=[],le=N?W:y,se=U?Q:L,fe=0,G=[],J=[],$=c.histnorm,X=c.histfunc,re=$.indexOf("density")!==-1,ae=X==="max"||X==="min",j=ae?null:0,ee=A.count,ne=S[$],ce=!1,_e=[],we=[],Oe="z"in c?c.z:"marker"in c&&Array.isArray(c.marker.color)?c.marker.color:"";Oe&&X!=="count"&&(ce=X==="avg",ee=A[X]);var Ie=y.size,Xe=l(y.start),tt=l(y.end)+(Xe-x.tickIncrement(Xe,Ie,!1,d))/1e6;for(E=Xe;E=0&&b=0&&vx;n++)i=e(r,o,S(i));return i>x&&g.log("interp2d didn't converge quickly",i),r};function e(t,r,o){var i=0,n,a,s,c,h,p,d,T,l,_,w,M,E;for(c=0;cM&&(i=Math.max(i,Math.abs(t[a][s]-w)/(E-M))))}return i}}}),J_=Le({"src/traces/heatmap/find_empties.js"(Z,H){"use strict";var g=ni().maxRowLength;H.exports=function(A){var S=[],e={},t=[],r=A[0],o=[],i=[0,0,0],n=g(A),a,s,c,h,p,d,T,l;for(s=0;s=0;p--)h=t[p],s=h[0],c=h[1],d=((e[[s-1,c]]||i)[2]+(e[[s+1,c]]||i)[2]+(e[[s,c-1]]||i)[2]+(e[[s,c+1]]||i)[2])/20,d&&(T[h]=[s,c,d],t.splice(p,1),l=!0);if(!l)throw"findEmpties iterated with no new neighbors";for(h in T)e[h]=T[h],S.push(T[h])}return S.sort(function(_,w){return w[2]-_[2]})}}}),j2=Le({"src/traces/heatmap/make_bound_array.js"(Z,H){"use strict";var g=so(),x=ni().isArrayOrTypedArray;H.exports=function(S,e,t,r,o,i){var n=[],a=g.traceIs(S,"contour"),s=g.traceIs(S,"histogram"),c,h,p,d=x(e)&&e.length>1;if(d&&!s&&i.type!=="category"){var T=e.length;if(T<=o){if(a)n=Array.from(e).slice(0,o);else if(o===1)i.type==="log"?n=[.5*e[0],2*e[0]]:n=[e[0]-.5,e[0]+.5];else if(i.type==="log"){for(n=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],p=1;p1){var $=(J[J.length-1]-J[0])/(J.length-1),X=Math.abs($/100);for(F=0;FX)return!1}return!0}T._islinear=!1,l.type==="log"||_.type==="log"?E==="fast"&&I("log axis found"):N(m)?N(y)?T._islinear=!0:E==="fast"&&I("y scale is not linear"):E==="fast"&&I("x scale is not linear");var U=x.maxRowLength(z),W=T.xtype==="scaled"?"":m,Q=a(T,W,b,v,U,l),le=T.ytype==="scaled"?"":y,se=a(T,le,f,P,z.length,_);T._extremes[l._id]=A.findExtremes(l,Q),T._extremes[_._id]=A.findExtremes(_,se);var fe={x:Q,y:se,z,text:T._text||T.text,hovertext:T._hovertext||T.hovertext};if(T.xperiodalignment&&u&&(fe.orig_x=u),T.yperiodalignment&&L&&(fe.orig_y=L),W&&W.length===Q.length-1&&(fe.xCenter=W),le&&le.length===se.length-1&&(fe.yCenter=le),M&&(fe.xRanges=O.xRanges,fe.yRanges=O.yRanges,fe.pts=O.pts),w||t(d,T,{vals:z,cLetter:"z"}),w&&T.contours&&T.contours.coloring==="heatmap"){var G={type:T.type==="contour"?"heatmap":"histogram2d",xcalendar:T.xcalendar,ycalendar:T.ycalendar};fe.xfill=a(G,W,b,v,U,l),fe.yfill=a(G,le,f,P,z.length,_)}return[fe]};function c(p){for(var d=[],T=p.length,l=0;l0;)re=y.c2p(N[ne]),ne--;for(re0;)ee=f.c2p(U[ne]),ne--;ee=y._length||re<=0||j>=f._length||ee<=0;if(tt){var rt=L.selectAll("image").data([]);rt.exit().remove(),_(L);return}var Je,ot;we==="fast"?(Je=G,ot=fe):(Je=Ie,ot=Xe);var Me=document.createElement("canvas");Me.width=Je,Me.height=ot;var pe=Me.getContext("2d",{willReadFrequently:!0}),ue=a(F,{noNumericCheck:!0,returnArray:!0}),ze,Qe;we==="fast"?(ze=J?function(Ii){return G-1-Ii}:t.identity,Qe=$?function(Ii){return fe-1-Ii}:t.identity):(ze=function(Ii){return t.constrain(Math.round(y.c2p(N[Ii])-X),0,Ie)},Qe=function(Ii){return t.constrain(Math.round(f.c2p(U[Ii])-j),0,Xe)});var it=Qe(0),$e=[it,it],kt=J?0:1,Mt=$?0:1,Bt=0,jt=0,cr=0,nr=0,Lr,mr,xr,mt,Fe;function Ze(Ii,Bn){if(Ii!==void 0){var hn=ue(Ii);return hn[0]=Math.round(hn[0]),hn[1]=Math.round(hn[1]),hn[2]=Math.round(hn[2]),Bt+=Bn,jt+=hn[0]*Bn,cr+=hn[1]*Bn,nr+=hn[2]*Bn,hn}return[0,0,0,0]}function Ne(Ii,Bn,hn,ba){var Aa=Ii[hn.bin0];if(Aa===void 0)return Ze(void 0,1);var Va=Ii[hn.bin1],Qa=Bn[hn.bin0],yo=Bn[hn.bin1],Ga=Va-Aa||0,Yo=Qa-Aa||0,da;return Va===void 0?yo===void 0?da=0:Qa===void 0?da=2*(yo-Aa):da=(2*yo-Qa-Aa)*2/3:yo===void 0?Qa===void 0?da=0:da=(2*Aa-Va-Qa)*2/3:Qa===void 0?da=(2*yo-Va-Aa)*2/3:da=yo+Aa-Va-Qa,Ze(Aa+hn.frac*Ga+ba.frac*(Yo+hn.frac*da))}if(we!=="default"){var Se=0,Ve;try{Ve=new Uint8Array(Je*ot*4)}catch{Ve=new Array(Je*ot*4)}if(we==="smooth"){var Ee=W||N,be=Q||U,Ce=new Array(Ee.length),et=new Array(be.length),ht=new Array(Ie),yt=W?M:w,Pt=Q?M:w,Ot,Wt,$t;for(ne=0;neqi||qi>f._length))for(ce=Zr;ce<_i;ce++){var $i;if(qt)$i=z.x[ce];else if(Dt){if(ce===0||ce===G-1)continue;$i=z.x[ce]}else if(z.xCenter)$i=z.xCenter[ce];else{if(ce+1===G&&z.x[ce+1]===void 0)continue;$i=(z.x[ce]+z.x[ce+1])/2}var Mi=Math.round(y.c2p($i));if(!(0>Mi||Mi>y._length)){var sn=o({x:$i,y:Di},F,m._fullLayout);sn.x=$i,sn.y=Di;var vt=z.z[ne][ce];vt===void 0?(sn.z="",sn.zLabel=""):(sn.z=vt,sn.zLabel=e.tickText(Xt,vt,"hover").text);var pt=z.text&&z.text[ne]&&z.text[ne][ce];(pt===void 0||pt===!1)&&(pt=""),sn.text=pt;var kr=t.texttemplateString(Zi,sn,m._fullLayout._d3locale,sn,F._meta||{});if(kr){var Cr=kr.split("
"),wr=Cr.length,Ar=0;for(_e=0;_e=_[0].length||P<0||P>_.length)return}else{if(g.inbox(o-T[0],o-T[T.length-1],0)>0||g.inbox(i-l[0],i-l[l.length-1],0)>0)return;if(s){var L;for(b=[2*T[0]-T[1]],L=1;L=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),wy=Le({"src/traces/contour/attributes.js"(Z,H){"use strict";var g=o0(),x=zc(),A=Rc(),S=A.axisHoverFormat,e=A.descriptionOnlyNumbers,t=uu(),r=Ah().dash,o=bl(),i=ho().extendFlat,n=sx(),a=n.COMPARISON_OPS2,s=n.INTERVAL_OPS,c=x.line;H.exports=i({z:g.z,x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,text:g.text,hovertext:g.hovertext,transpose:g.transpose,xtype:g.xtype,ytype:g.ytype,xhoverformat:S("x"),yhoverformat:S("y"),zhoverformat:S("z",1),hovertemplate:g.hovertemplate,texttemplate:i({},g.texttemplate,{}),textfont:i({},g.textfont,{}),hoverongaps:g.hoverongaps,connectgaps:i({},g.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:o({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:e("contour label")},operation:{valType:"enumerated",values:[].concat(a).concat(s),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:i({},c.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:r,smoothing:i({},c.smoothing,{}),editType:"plot"},zorder:x.zorder},t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),W2=Le({"src/traces/histogram2dcontour/attributes.js"(Z,H){"use strict";var g=ox(),x=wy(),A=uu(),S=Rc().axisHoverFormat,e=ho().extendFlat;H.exports=e({x:g.x,y:g.y,z:g.z,marker:g.marker,histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:g.xbins,nbinsy:g.nbinsy,ybins:g.ybins,autobinx:g.autobinx,autobiny:g.autobiny,bingroup:g.bingroup,xbingroup:g.xbingroup,ybingroup:g.ybingroup,autocontour:x.autocontour,ncontours:x.ncontours,contours:x.contours,line:{color:x.line.color,width:e({},x.line.width,{dflt:.5}),dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},xhoverformat:S("x"),yhoverformat:S("y"),zhoverformat:S("z",1),hovertemplate:g.hovertemplate,texttemplate:x.texttemplate,textfont:x.textfont},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),lx=Le({"src/traces/contour/contours_defaults.js"(Z,H){"use strict";H.exports=function(x,A,S,e){var t=e("contours.start"),r=e("contours.end"),o=t===!1||r===!1,i=S("contours.size"),n;o?n=A.autocontour=!0:n=S("autocontour",!1),(n||!i)&&S("ncontours")}}}),X2=Le({"src/traces/contour/label_defaults.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S,e,t){t||(t={});var r=A("contours.showlabels");if(r){var o=S.font;g.coerceFont(A,"contours.labelfont",o,{overrideDflt:{color:e}}),A("contours.labelformat")}t.hasHover!==!1&&A("zhoverformat")}}}),ux=Le({"src/traces/contour/style_defaults.js"(Z,H){"use strict";var g=th(),x=X2();H.exports=function(S,e,t,r,o){var i=t("contours.coloring"),n,a="";i==="fill"&&(n=t("contours.showlines")),n!==!1&&(i!=="lines"&&(a=t("line.color","#000")),t("line.width",.5),t("line.dash")),i!=="none"&&(S.showlegend!==!0&&(e.showlegend=!1),e._dfltShowLegend=!1,g(S,e,r,t,{prefix:"",cLetter:"z"})),t("line.smoothing"),x(t,r,a,o)}}}),zk=Le({"src/traces/histogram2dcontour/defaults.js"(Z,H){"use strict";var g=ni(),x=G2(),A=lx(),S=ux(),e=by(),t=W2();H.exports=function(o,i,n,a){function s(h,p){return g.coerce(o,i,t,h,p)}function c(h){return g.coerce2(o,i,t,h)}x(o,i,s,a),i.visible!==!1&&(A(o,i,s,c),S(o,i,s,a),s("xhoverformat"),s("yhoverformat"),s("hovertemplate"),i.contours&&i.contours.coloring==="heatmap"&&e(s,a))}}}),Z2=Le({"src/traces/contour/set_contours.js"(Z,H){"use strict";var g=Zo(),x=ni();H.exports=function(e,t){var r=e.contours;if(e.autocontour){var o=e.zmin,i=e.zmax;(e.zauto||o===void 0)&&(o=x.aggNums(Math.min,null,t)),(e.zauto||i===void 0)&&(i=x.aggNums(Math.max,null,t));var n=A(o,i,e.ncontours);r.size=n.dtick,r.start=g.tickFirst(n),n.range.reverse(),r.end=g.tickFirst(n),r.start===o&&(r.start+=r.size),r.end===i&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),x.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if(r.type!=="constraint"){var a=r.start,s=r.end,c=e._input.contours;if(a>s&&(r.start=c.start=s,s=r.end=c.end=a,a=r.start),!(r.size>0)){var h;a===s?h=1:h=A(a,s,e.ncontours).dtick,c.size=r.size=h}}};function A(S,e,t){var r={type:"linear",range:[S,e]};return g.autoTicks(r,(e-S)/(t||15)),r}}}),Ty=Le({"src/traces/contour/end_plus.js"(Z,H){"use strict";H.exports=function(x){return x.end+x.size/1e6}}}),Y2=Le({"src/traces/contour/calc.js"(Z,H){"use strict";var g=Cu(),x=Q_(),A=Z2(),S=Ty();H.exports=function(t,r){var o=x(t,r),i=o[0].z;A(r,i);var n=r.contours,a=g.extractOpts(r),s;if(n.coloring==="heatmap"&&a.auto&&r.autocontour===!1){var c=n.start,h=S(n),p=n.size||1,d=Math.floor((h-c)/p)+1;isFinite(p)||(p=1,d=1);var T=c-p/2,l=T+d*p;s=[T,l]}else s=i;return g.calc(t,r,{vals:s,cLetter:"z"}),o}}}),Ay=Le({"src/traces/contour/constants.js"(Z,H){"use strict";H.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}}}),K2=Le({"src/traces/contour/make_crossings.js"(Z,H){"use strict";var g=Ay();H.exports=function(S){var e=S[0].z,t=e.length,r=e[0].length,o=t===2||r===2,i,n,a,s,c,h,p,d,T;for(n=0;nA?0:1)+(S[0][1]>A?0:2)+(S[1][1]>A?0:4)+(S[1][0]>A?0:8);if(e===5||e===10){var t=(S[0][0]+S[0][1]+S[1][0]+S[1][1])/4;return A>t?e===5?713:1114:e===5?104:208}return e===15?0:e}}}),$2=Le({"src/traces/contour/find_all_paths.js"(Z,H){"use strict";var g=ni(),x=Ay();H.exports=function(i,n,a){var s,c,h,p,d;for(n=n||.01,a=a||.01,h=0;h20?(h=x.CHOOSESADDLE[h][(p[0]||p[1])<0?0:1],o.crossings[c]=x.SADDLEREMAINDER[h]):delete o.crossings[c],p=x.NEWDELTA[h],!p){g.log("Found bad marching index:",h,i,o.level);break}d.push(r(o,i,p)),i[0]+=p[0],i[1]+=p[1],c=i.join(","),A(d[d.length-1],d[d.length-2],a,s)&&d.pop();var E=p[0]&&(i[0]<0||i[0]>l-2)||p[1]&&(i[1]<0||i[1]>T-2),m=i[0]===_[0]&&i[1]===_[1]&&p[0]===w[0]&&p[1]===w[1];if(m||n&&E)break;h=o.crossings[c]}M===1e4&&g.log("Infinite loop in contour?");var b=A(d[0],d[d.length-1],a,s),v=0,u=.2*o.smoothing,y=[],f=0,P,L,z,F,O,B,I,N,U,W,Q;for(M=1;M=f;M--)if(P=y[M],P=f&&P+y[L]N&&U--,o.edgepaths[U]=Q.concat(d,W));break}G||(o.edgepaths[N]=d.concat(W))}for(N=0;N20&&i?o===208||o===1114?a=n[0]===0?1:-1:s=n[1]===0?1:-1:x.BOTTOMSTART.indexOf(o)!==-1?s=1:x.LEFTSTART.indexOf(o)!==-1?a=1:x.TOPSTART.indexOf(o)!==-1?s=-1:a=-1,[a,s]}function r(o,i,n){var a=i[0]+Math.max(n[0],0),s=i[1]+Math.max(n[1],0),c=o.z[s][a],h=o.xaxis,p=o.yaxis;if(n[1]){var d=(o.level-c)/(o.z[s][a+1]-c),T=(d!==1?(1-d)*h.c2l(o.x[a]):0)+(d!==0?d*h.c2l(o.x[a+1]):0);return[h.c2p(h.l2c(T),!0),p.c2p(o.y[s],!0),a+d,s]}else{var l=(o.level-c)/(o.z[s+1][a]-c),_=(l!==1?(1-l)*p.c2l(o.y[s]):0)+(l!==0?l*p.c2l(o.y[s+1]):0);return[h.c2p(o.x[a],!0),p.c2p(p.l2c(_),!0),a,s+l]}}}}),Fk=Le({"src/traces/contour/constraint_mapping.js"(Z,H){"use strict";var g=sx(),x=zn();H.exports={"[]":S("[]"),"][":S("]["),">":e(">"),"<":e("<"),"=":e("=")};function A(t,r){var o=Array.isArray(r),i;function n(a){return x(a)?+a:null}return g.COMPARISON_OPS2.indexOf(t)!==-1?i=n(o?r[0]:r):g.INTERVAL_OPS.indexOf(t)!==-1?i=o?[n(r[0]),n(r[1])]:[n(r),n(r)]:g.SET_OPS.indexOf(t)!==-1&&(i=o?r.map(n):[n(r)]),i}function S(t){return function(r){r=A(t,r);var o=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]);return{start:o,end:i,size:i-o}}}function e(t){return function(r){return r=A(t,r),{start:r,end:1/0,size:1/0}}}}}),J2=Le({"src/traces/contour/empty_pathinfo.js"(Z,H){"use strict";var g=ni(),x=Fk(),A=Ty();H.exports=function(e,t,r){for(var o=e.type==="constraint"?x[e._operation](e.value):e,i=o.size,n=[],a=A(o),s=r.trace._carpetTrace,c=s?{xaxis:s.aaxis,yaxis:s.baxis,x:r.a,y:r.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:r.x,y:r.y},h=o.start;h1e3){g.warn("Too many contours, clipping at 1000",e);break}return n}}}),Q2=Le({"src/traces/contour/convert_to_constraints.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){var e,t,r,o=function(a){return a.reverse()},i=function(a){return a};switch(S){case"=":case"<":return A;case">":for(A.length!==1&&g.warn("Contour data invalid for the specified inequality operation."),t=A[0],e=0;er.level||r.starts.length&&t===r.level)}break;case"constraint":if(A.prefixBoundary=!1,A.edgepaths.length)return;var o=A.x.length,i=A.y.length,n=-1/0,a=1/0;for(e=0;e":s>n&&(A.prefixBoundary=!0);break;case"<":(sn||A.starts.length&&h===a)&&(A.prefixBoundary=!0);break;case"][":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),cn&&(A.prefixBoundary=!0);break}break}}}}),cx=Le({"src/traces/contour/plot.js"(Z){"use strict";var H=Ji(),g=ni(),x=rs(),A=Cu(),S=$l(),e=Zo(),t=Rv(),r=tx(),o=K2(),i=$2(),n=J2(),a=Q2(),s=e3(),c=Ay(),h=c.LABELOPTIMIZER;Z.plot=function(m,b,v,u){var y=b.xaxis,f=b.yaxis;g.makeTraceGroups(u,v,"contour").each(function(P){var L=H.select(this),z=P[0],F=z.trace,O=z.x,B=z.y,I=F.contours,N=n(I,b,z),U=g.ensureSingle(L,"g","heatmapcoloring"),W=[];I.coloring==="heatmap"&&(W=[P]),r(m,b,W,U),o(N),i(N);var Q=y.c2p(O[0],!0),le=y.c2p(O[O.length-1],!0),se=f.c2p(B[0],!0),fe=f.c2p(B[B.length-1],!0),G=[[Q,fe],[le,fe],[le,se],[Q,se]],J=N;I.type==="constraint"&&(J=a(N,I._operation)),p(L,G,I),d(L,J,G,I),l(L,N,m,z,I),w(L,b,m,z,G)})};function p(E,m,b){var v=g.ensureSingle(E,"g","contourbg"),u=v.selectAll("path").data(b.coloring==="fill"?[0]:[]);u.enter().append("path"),u.exit().remove(),u.attr("d","M"+m.join("L")+"Z").style("stroke","none")}function d(E,m,b,v){var u=v.coloring==="fill"||v.type==="constraint"&&v._operation!=="=",y="M"+b.join("L")+"Z";u&&s(m,v);var f=g.ensureSingle(E,"g","contourfill"),P=f.selectAll("path").data(u?m:[]);P.enter().append("path"),P.exit().remove(),P.each(function(L){var z=(L.prefixBoundary?y:"")+T(L,b);z?H.select(this).attr("d",z).style("stroke","none"):H.select(this).remove()})}function T(E,m){var b="",v=0,u=E.edgepaths.map(function(Q,le){return le}),y=!0,f,P,L,z,F,O;function B(Q){return Math.abs(Q[1]-m[0][1])<.01}function I(Q){return Math.abs(Q[1]-m[2][1])<.01}function N(Q){return Math.abs(Q[0]-m[0][0])<.01}function U(Q){return Math.abs(Q[0]-m[2][0])<.01}for(;u.length;){for(O=x.smoothopen(E.edgepaths[v],E.smoothing),b+=y?O:O.replace(/^M/,"L"),u.splice(u.indexOf(v),1),f=E.edgepaths[v][E.edgepaths[v].length-1],z=-1,L=0;L<4;L++){if(!f){g.log("Missing end?",v,E);break}for(B(f)&&!U(f)?P=m[1]:N(f)?P=m[0]:I(f)?P=m[3]:U(f)&&(P=m[2]),F=0;F=0&&(P=W,z=F):Math.abs(f[1]-P[1])<.01?Math.abs(f[1]-W[1])<.01&&(W[0]-f[0])*(P[0]-W[0])>=0&&(P=W,z=F):g.log("endpt to newendpt is not vert. or horz.",f,P,W)}if(f=P,z>=0)break;b+="L"+P}if(z===E.edgepaths.length){g.log("unclosed perimeter path");break}v=z,y=u.indexOf(v)===-1,y&&(v=u[0],b+="Z")}for(v=0;vh.MAXCOST*2)break;B&&(P/=2),f=z-P/2,L=f+P*1.5}if(O<=h.MAXCOST)return F};function _(E,m,b,v){var u=m.width/2,y=m.height/2,f=E.x,P=E.y,L=E.theta,z=Math.cos(L)*u,F=Math.sin(L)*u,O=(f>v.center?v.right-f:f-v.left)/(z+Math.abs(Math.sin(L)*y)),B=(P>v.middle?v.bottom-P:P-v.top)/(Math.abs(F)+Math.cos(L)*y);if(O<1||B<1)return 1/0;var I=h.EDGECOST*(1/(O-1)+1/(B-1));I+=h.ANGLECOST*L*L;for(var N=f-z,U=P-F,W=f+z,Q=P+F,le=0;le=w)&&(r<=_&&(r=_),o>=w&&(o=w),n=Math.floor((o-r)/i)+1,a=0),l=0;l_&&(p.unshift(_),d.unshift(d[0])),p[p.length-1]2?s.value=s.value.slice(2):s.length===0?s.value=[0,1]:s.length<2?(c=parseFloat(s.value[0]),s.value=[c,c+1]):s.value=[parseFloat(s.value[0]),parseFloat(s.value[1])]:g(s.value)&&(c=parseFloat(s.value),s.value=[c,c+1])):(a("contours.value",0),g(s.value)||(r(s.value)?s.value=parseFloat(s.value[0]):s.value=0))}}}),Nk=Le({"src/traces/contour/defaults.js"(Z,H){"use strict";var g=ni(),x=Z_(),A=vv(),S=i3(),e=lx(),t=ux(),r=by(),o=wy();H.exports=function(n,a,s,c){function h(l,_){return g.coerce(n,a,o,l,_)}function p(l){return g.coerce2(n,a,o,l)}var d=x(n,a,h,c);if(!d){a.visible=!1;return}A(n,a,c,h),h("xhoverformat"),h("yhoverformat"),h("text"),h("hovertext"),h("hoverongaps"),h("hovertemplate");var T=h("contours.type")==="constraint";h("connectgaps",g.isArray1D(a.z)),T?S(n,a,h,c,s):(e(n,a,h,p),t(n,a,h,c)),a.contours&&a.contours.coloring==="heatmap"&&r(h,c),h("zorder")}}}),Uk=Le({"src/traces/contour/index.js"(Z,H){"use strict";H.exports={attributes:wy(),supplyDefaults:Nk(),calc:Y2(),plot:cx().plot,style:fx(),colorbar:hx(),hoverPoints:r3(),moduleType:"trace",name:"contour",basePlotModule:Ef(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),jk=Le({"lib/contour.js"(Z,H){"use strict";H.exports=Uk()}}),n3=Le({"src/traces/scatterternary/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=Fs().texttemplateAttrs,A=dv(),S=zc(),e=Sl(),t=uu(),r=Ah().dash,o=ho().extendFlat,i=S.marker,n=S.line,a=i.line;H.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:o({},S.mode,{dflt:"markers"}),text:o({},S.text,{}),texttemplate:x({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:o({},S.hovertext,{}),line:{color:n.color,width:n.width,dash:r,backoff:n.backoff,shape:o({},n.shape,{values:["linear","spline"]}),smoothing:n.smoothing,editType:"calc"},connectgaps:S.connectgaps,cliponaxis:S.cliponaxis,fill:o({},S.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:A(),marker:o({symbol:i.symbol,opacity:i.opacity,angle:i.angle,angleref:i.angleref,standoff:i.standoff,maxdisplayed:i.maxdisplayed,size:i.size,sizeref:i.sizeref,sizemin:i.sizemin,sizemode:i.sizemode,line:o({width:a.width,editType:"calc"},t("marker.line")),gradient:i.gradient,editType:"calc"},t("marker")),textfont:S.textfont,textposition:S.textposition,selected:S.selected,unselected:S.unselected,hoverinfo:o({},e.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:S.hoveron,hovertemplate:g()}}}),Vk=Le({"src/traces/scatterternary/defaults.js"(Z,H){"use strict";var g=ni(),x=Dv(),A=gu(),S=Od(),e=Wd(),t=Qg(),r=Xd(),o=pv(),i=n3();H.exports=function(a,s,c,h){function p(E,m){return g.coerce(a,s,i,E,m)}var d=p("a"),T=p("b"),l=p("c"),_;if(d?(_=d.length,T?(_=Math.min(_,T.length),l&&(_=Math.min(_,l.length))):l?_=Math.min(_,l.length):_=0):T&&l&&(_=Math.min(T.length,l.length)),!_){s.visible=!1;return}s._length=_,p("sum"),p("text"),p("hovertext"),s.hoveron!=="fills"&&p("hovertemplate");var w=_"),o.hovertemplate=h.hovertemplate,r}}}),Xk=Le({"src/traces/scatterternary/event_data.js"(Z,H){"use strict";H.exports=function(x,A,S,e,t){if(A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),e[t]){var r=e[t];x.a=r.a,x.b=r.b,x.c=r.c}else x.a=A.a,x.b=A.b,x.c=A.c;return x}}}),Zk=Le({"src/plots/ternary/ternary.js"(Z,H){"use strict";var g=Ji(),x=Vl(),A=so(),S=ni(),e=S.strTranslate,t=S._,r=$a(),o=rs(),i=Rv(),n=ho().extendFlat,a=Ku(),s=Zo(),c=Kh(),h=Dc(),p=hv(),d=p.freeMode,T=p.rectMode,l=Um(),_=cf().prepSelect,w=cf().selectOnClick,M=cf().clearOutline,E=cf().clearSelectionsCache,m=ch();function b(I,N){this.id=I.id,this.graphDiv=I.graphDiv,this.init(N),this.makeFramework(N),this.updateFx(N),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}H.exports=b;var v=b.prototype;v.init=function(I){this.container=I._ternarylayer,this.defs=I._defs,this.layoutId=I._uid,this.traceHash={},this.layers={}},v.plot=function(I,N){var U=this,W=N[U.id],Q=N._size;U._hasClipOnAxisFalse=!1;for(var le=0;leu*J?(ce=J,ne=ce*u):(ne=G,ce=ne/u),_e=se*ne/G,we=fe*ce/J,j=N.l+N.w*Q-ne/2,ee=N.t+N.h*(1-le)-ce/2,U.x0=j,U.y0=ee,U.w=ne,U.h=ce,U.sum=$,U.xaxis={type:"linear",range:[X+2*ae-$,$-X-2*re],domain:[Q-_e/2,Q+_e/2],_id:"x"},i(U.xaxis,U.graphDiv._fullLayout),U.xaxis.setScale(),U.xaxis.isPtWithinRange=function(ze){return ze.a>=U.aaxis.range[0]&&ze.a<=U.aaxis.range[1]&&ze.b>=U.baxis.range[1]&&ze.b<=U.baxis.range[0]&&ze.c>=U.caxis.range[1]&&ze.c<=U.caxis.range[0]},U.yaxis={type:"linear",range:[X,$-re-ae],domain:[le-we/2,le+we/2],_id:"y"},i(U.yaxis,U.graphDiv._fullLayout),U.yaxis.setScale(),U.yaxis.isPtWithinRange=function(){return!0};var Oe=U.yaxis.domain[0],Ie=U.aaxis=n({},I.aaxis,{range:[X,$-re-ae],side:"left",tickangle:(+I.aaxis.tickangle||0)-30,domain:[Oe,Oe+we*u],anchor:"free",position:0,_id:"y",_length:ne});i(Ie,U.graphDiv._fullLayout),Ie.setScale();var Xe=U.baxis=n({},I.baxis,{range:[$-X-ae,re],side:"bottom",domain:U.xaxis.domain,anchor:"free",position:0,_id:"x",_length:ne});i(Xe,U.graphDiv._fullLayout),Xe.setScale();var tt=U.caxis=n({},I.caxis,{range:[$-X-re,ae],side:"right",tickangle:(+I.caxis.tickangle||0)+30,domain:[Oe,Oe+we*u],anchor:"free",position:0,_id:"y",_length:ne});i(tt,U.graphDiv._fullLayout),tt.setScale();var rt="M"+j+","+(ee+ce)+"h"+ne+"l-"+ne/2+",-"+ce+"Z";U.clipDef.select("path").attr("d",rt),U.layers.plotbg.select("path").attr("d",rt);var Je="M0,"+ce+"h"+ne+"l-"+ne/2+",-"+ce+"Z";U.clipDefRelative.select("path").attr("d",Je);var ot=e(j,ee);U.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",ot),U.clipDefRelative.select("path").attr("transform",null);var Me=e(j-Xe._offset,ee+ce);U.layers.baxis.attr("transform",Me),U.layers.bgrid.attr("transform",Me);var pe=e(j+ne/2,ee)+"rotate(30)"+e(0,-Ie._offset);U.layers.aaxis.attr("transform",pe),U.layers.agrid.attr("transform",pe);var ue=e(j+ne/2,ee)+"rotate(-30)"+e(0,-tt._offset);U.layers.caxis.attr("transform",ue),U.layers.cgrid.attr("transform",ue),U.drawAxes(!0),U.layers.aline.select("path").attr("d",Ie.showline?"M"+j+","+(ee+ce)+"l"+ne/2+",-"+ce:"M0,0").call(r.stroke,Ie.linecolor||"#000").style("stroke-width",(Ie.linewidth||0)+"px"),U.layers.bline.select("path").attr("d",Xe.showline?"M"+j+","+(ee+ce)+"h"+ne:"M0,0").call(r.stroke,Xe.linecolor||"#000").style("stroke-width",(Xe.linewidth||0)+"px"),U.layers.cline.select("path").attr("d",tt.showline?"M"+(j+ne/2)+","+ee+"l"+ne/2+","+ce:"M0,0").call(r.stroke,tt.linecolor||"#000").style("stroke-width",(tt.linewidth||0)+"px"),U.graphDiv._context.staticPlot||U.initInteractions(),o.setClipUrl(U.layers.frontplot,U._hasClipOnAxisFalse?null:U.clipId,U.graphDiv)},v.drawAxes=function(I){var N=this,U=N.graphDiv,W=N.id.substr(7)+"title",Q=N.layers,le=N.aaxis,se=N.baxis,fe=N.caxis;if(N.drawAx(le),N.drawAx(se),N.drawAx(fe),I){var G=Math.max(le.showticklabels?le.tickfont.size/2:0,(fe.showticklabels?fe.tickfont.size*.75:0)+(fe.ticks==="outside"?fe.ticklen*.87:0)),J=(se.showticklabels?se.tickfont.size:0)+(se.ticks==="outside"?se.ticklen:0)+3;Q["a-title"]=l.draw(U,"a"+W,{propContainer:le,propName:N.id+".aaxis.title",placeholder:t(U,"Click to enter Component A title"),attributes:{x:N.x0+N.w/2,y:N.y0-le.title.font.size/3-G,"text-anchor":"middle"}}),Q["b-title"]=l.draw(U,"b"+W,{propContainer:se,propName:N.id+".baxis.title",placeholder:t(U,"Click to enter Component B title"),attributes:{x:N.x0-J,y:N.y0+N.h+se.title.font.size*.83+J,"text-anchor":"middle"}}),Q["c-title"]=l.draw(U,"c"+W,{propContainer:fe,propName:N.id+".caxis.title",placeholder:t(U,"Click to enter Component C title"),attributes:{x:N.x0+N.w+J,y:N.y0+N.h+fe.title.font.size*.83+J,"text-anchor":"middle"}})}},v.drawAx=function(I){var N=this,U=N.graphDiv,W=I._name,Q=W.charAt(0),le=I._id,se=N.layers[W],fe=30,G=Q+"tickLayout",J=y(I);N[G]!==J&&(se.selectAll("."+le+"tick").remove(),N[G]=J),I.setScale();var $=s.calcTicks(I),X=s.clipEnds(I,$),re=s.makeTransTickFn(I),ae=s.getTickSigns(I)[2],j=S.deg2rad(fe),ee=ae*(I.linewidth||1)/2,ne=ae*I.ticklen,ce=N.w,_e=N.h,we=Q==="b"?"M0,"+ee+"l"+Math.sin(j)*ne+","+Math.cos(j)*ne:"M"+ee+",0l"+Math.cos(j)*ne+","+-Math.sin(j)*ne,Oe={a:"M0,0l"+_e+",-"+ce/2,b:"M0,0l-"+ce/2+",-"+_e,c:"M0,0l-"+_e+","+ce/2}[Q];s.drawTicks(U,I,{vals:I.ticks==="inside"?X:$,layer:se,path:we,transFn:re,crisp:!1}),s.drawGrid(U,I,{vals:X,layer:N.layers[Q+"grid"],path:Oe,transFn:re,crisp:!1}),s.drawLabels(U,I,{vals:$,layer:se,transFn:re,labelFns:s.makeLabelFns(I,0,fe)})};function y(I){return I.ticks+String(I.ticklen)+String(I.showticklabels)}var f=m.MINZOOM/2+.87,P="m-0.87,.5h"+f+"v3h-"+(f+5.2)+"l"+(f/2+2.6)+",-"+(f*.87+4.5)+"l2.6,1.5l-"+f/2+","+f*.87+"Z",L="m0.87,.5h-"+f+"v3h"+(f+5.2)+"l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-2.6,1.5l"+f/2+","+f*.87+"Z",z="m0,1l"+f/2+","+f*.87+"l2.6,-1.5l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-"+(f/2+2.6)+","+(f*.87+4.5)+"l2.6,1.5l"+f/2+",-"+f*.87+"Z",F="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",O=!0;v.clearOutline=function(){E(this.dragOptions),M(this.dragOptions.gd)},v.initInteractions=function(){var I=this,N=I.layers.plotbg.select("path").node(),U=I.graphDiv,W=U._fullLayout._zoomlayer,Q,le;this.dragOptions={element:N,gd:U,plotinfo:{id:I.id,domain:U._fullLayout[I.id].domain,xaxis:I.xaxis,yaxis:I.yaxis},subplot:I.id,prepFn:function(Me,pe,ue){I.dragOptions.xaxes=[I.xaxis],I.dragOptions.yaxes=[I.yaxis],Q=U._fullLayout._invScaleX,le=U._fullLayout._invScaleY;var ze=I.dragOptions.dragmode=U._fullLayout.dragmode;d(ze)?I.dragOptions.minDrag=1:I.dragOptions.minDrag=void 0,ze==="zoom"?(I.dragOptions.moveFn=Xe,I.dragOptions.clickFn=ce,I.dragOptions.doneFn=tt,_e(Me,pe,ue)):ze==="pan"?(I.dragOptions.moveFn=Je,I.dragOptions.clickFn=ce,I.dragOptions.doneFn=ot,rt(),I.clearOutline(U)):(T(ze)||d(ze))&&_(Me,pe,ue,I.dragOptions,ze)}};var se,fe,G,J,$,X,re,ae,j,ee;function ne(Me){var pe={};return pe[I.id+".aaxis.min"]=Me.a,pe[I.id+".baxis.min"]=Me.b,pe[I.id+".caxis.min"]=Me.c,pe}function ce(Me,pe){var ue=U._fullLayout.clickmode;B(U),Me===2&&(U.emit("plotly_doubleclick",null),A.call("_guiRelayout",U,ne({a:0,b:0,c:0}))),ue.indexOf("select")>-1&&Me===1&&w(pe,U,[I.xaxis],[I.yaxis],I.id,I.dragOptions),ue.indexOf("event")>-1&&h.click(U,pe,I.id)}function _e(Me,pe,ue){var ze=N.getBoundingClientRect();se=pe-ze.left,fe=ue-ze.top,U._fullLayout._calcInverseTransform(U);var Qe=U._fullLayout._invTransform,it=S.apply3DTransform(Qe)(se,fe);se=it[0],fe=it[1],G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},$=G,J=I.aaxis.range[1]-G.a,X=x(I.graphDiv._fullLayout[I.id].bgcolor).getLuminance(),re="M0,"+I.h+"L"+I.w/2+", 0L"+I.w+","+I.h+"Z",ae=!1,j=W.append("path").attr("class","zoombox").attr("transform",e(I.x0,I.y0)).style({fill:X>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",re),ee=W.append("path").attr("class","zoombox-corners").attr("transform",e(I.x0,I.y0)).style({fill:r.background,stroke:r.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),I.clearOutline(U)}function we(Me,pe){return 1-pe/I.h}function Oe(Me,pe){return 1-(Me+(I.h-pe)/Math.sqrt(3))/I.w}function Ie(Me,pe){return(Me-(I.h-pe)/Math.sqrt(3))/I.w}function Xe(Me,pe){var ue=se+Me*Q,ze=fe+pe*le,Qe=Math.max(0,Math.min(1,we(se,fe),we(ue,ze))),it=Math.max(0,Math.min(1,Oe(se,fe),Oe(ue,ze))),$e=Math.max(0,Math.min(1,Ie(se,fe),Ie(ue,ze))),kt=(Qe/2+$e)*I.w,Mt=(1-Qe/2-it)*I.w,Bt=(kt+Mt)/2,jt=Mt-kt,cr=(1-Qe)*I.h,nr=cr-jt/u;jt.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),ee.transition().style("opacity",1).duration(200),ae=!0),U.emit("plotly_relayouting",ne($))}function tt(){B(U),$!==G&&(A.call("_guiRelayout",U,ne($)),O&&U.data&&U._context.showTips&&(S.notifier(t(U,"Double-click to zoom back out"),"long"),O=!1))}function rt(){G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},$=G}function Je(Me,pe){var ue=Me/I.xaxis._m,ze=pe/I.yaxis._m;$={a:G.a-ze,b:G.b+(ue+ze)/2,c:G.c-(ue-ze)/2};var Qe=[$.a,$.b,$.c].sort(S.sorterAsc),it={a:Qe.indexOf($.a),b:Qe.indexOf($.b),c:Qe.indexOf($.c)};Qe[0]<0&&(Qe[1]+Qe[0]/2<0?(Qe[2]+=Qe[0]+Qe[1],Qe[0]=Qe[1]=0):(Qe[2]+=Qe[0]/2,Qe[1]+=Qe[0]/2,Qe[0]=0),$={a:Qe[it.a],b:Qe[it.b],c:Qe[it.c]},pe=(G.a-$.a)*I.yaxis._m,Me=(G.c-$.c-G.b+$.b)*I.xaxis._m);var $e=e(I.x0+Me,I.y0+pe);I.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",$e);var kt=e(-Me,-pe);I.clipDefRelative.select("path").attr("transform",kt),I.aaxis.range=[$.a,I.sum-$.b-$.c],I.baxis.range=[I.sum-$.a-$.c,$.b],I.caxis.range=[I.sum-$.a-$.b,$.c],I.drawAxes(!1),I._hasClipOnAxisFalse&&I.plotContainer.select(".scatterlayer").selectAll(".trace").call(o.hideOutsideRangePoints,I),U.emit("plotly_relayouting",ne($))}function ot(){A.call("_guiRelayout",U,ne($))}N.onmousemove=function(Me){h.hover(U,Me,I.id),U._fullLayout._lasthover=N,U._fullLayout._hoversubplot=I.id},N.onmouseout=function(Me){U._dragging||c.unhover(U,Me)},c.init(this.dragOptions)};function B(I){g.select(I).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}}}),a3=Le({"src/plots/ternary/layout_attributes.js"(Z,H){"use strict";var g=gf(),x=$u().attributes,A=Sh(),S=qu().overrideAll,e=ho().extendFlat,t={title:{text:A.title.text,font:A.title.font},color:A.color,tickmode:A.minor.tickmode,nticks:e({},A.nticks,{dflt:6,min:1}),tick0:A.tick0,dtick:A.dtick,tickvals:A.tickvals,ticktext:A.ticktext,ticks:A.ticks,ticklen:A.ticklen,tickwidth:A.tickwidth,tickcolor:A.tickcolor,ticklabelstep:A.ticklabelstep,showticklabels:A.showticklabels,labelalias:A.labelalias,showtickprefix:A.showtickprefix,tickprefix:A.tickprefix,showticksuffix:A.showticksuffix,ticksuffix:A.ticksuffix,showexponent:A.showexponent,exponentformat:A.exponentformat,minexponent:A.minexponent,separatethousands:A.separatethousands,tickfont:A.tickfont,tickangle:A.tickangle,tickformat:A.tickformat,tickformatstops:A.tickformatstops,hoverformat:A.hoverformat,showline:e({},A.showline,{dflt:!0}),linecolor:A.linecolor,linewidth:A.linewidth,showgrid:e({},A.showgrid,{dflt:!0}),gridcolor:A.gridcolor,gridwidth:A.gridwidth,griddash:A.griddash,layer:A.layer,min:{valType:"number",dflt:0,min:0}},r=H.exports=S({domain:x({name:"ternary"}),bgcolor:{valType:"color",dflt:g.background},sum:{valType:"number",dflt:1,min:0},aaxis:t,baxis:t,caxis:t},"plot","from-root");r.uirevision={valType:"any",editType:"none"},r.aaxis.uirevision=r.baxis.uirevision=r.caxis.uirevision={valType:"any",editType:"none"}}}),Zp=Le({"src/plots/subplot_defaults.js"(Z,H){"use strict";var g=ni(),x=wl(),A=$u().defaults;H.exports=function(e,t,r,o){var i=o.type,n=o.attributes,a=o.handleDefaults,s=o.partition||"x",c=t._subplots[i],h=c.length,p=h&&c[0].replace(/\d+$/,""),d,T;function l(E,m){return g.coerce(d,T,n,E,m)}for(var _=0;_=_&&(b.min=0,v.min=0,u.min=0,h.aaxis&&delete h.aaxis.min,h.baxis&&delete h.baxis.min,h.caxis&&delete h.caxis.min)}function c(h,p,d,T){var l=n[p._name];function _(y,f){return A.coerce(h,p,l,y,f)}_("uirevision",T.uirevision),p.type="linear";var w=_("color"),M=w!==l.color.dflt?w:d.font.color,E=p._name,m=E.charAt(0).toUpperCase(),b="Component "+m,v=_("title.text",b);p._hovertitle=v===b?v:m,A.coerceFont(_,"title.font",d.font,{overrideDflt:{size:A.bigFont(d.font.size),color:M}}),_("min"),o(h,p,_,"linear"),t(h,p,_,"linear"),e(h,p,_,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),r(h,p,_,{outerTicks:!0});var u=_("showticklabels");u&&(A.coerceFont(_,"tickfont",d.font,{overrideDflt:{color:M}}),_("tickangle"),_("tickformat")),i(h,p,_,{dfltColor:w,bgColor:d.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:l}),_("hoverformat"),_("layer")}}}),Kk=Le({"src/plots/ternary/index.js"(Z){"use strict";var H=Zk(),g=Mh().getSubplotCalcData,x=ni().counterRegex,A="ternary";Z.name=A;var S=Z.attr="subplot";Z.idRoot=A,Z.idRegex=Z.attrRegex=x(A);var e=Z.attributes={};e[S]={valType:"subplotid",dflt:"ternary",editType:"calc"},Z.layoutAttributes=a3(),Z.supplyLayoutDefaults=Yk(),Z.plot=function(r){for(var o=r._fullLayout,i=r.calcdata,n=o._subplots[A],a=0;a0){var E=r.xa,m=r.ya,b,v,u,y,f;h.orientation==="h"?(f=o,b="y",u=m,v="x",y=E):(f=i,b="x",u=E,v="y",y=m);var P=c[r.index];if(f>=P.span[0]&&f<=P.span[1]){var L=x.extendFlat({},r),z=y.c2p(f,!0),F=e.getKdeValue(P,h,f),O=e.getPositionOnKdePath(P,h,z),B=u._offset,I=u._length;L[b+"0"]=O[0],L[b+"1"]=O[1],L[v+"0"]=L[v+"1"]=z,L[v+"Label"]=v+": "+A.hoverLabelText(y,f,h[v+"hoverformat"])+", "+c[0].t.labels.kde+" "+F.toFixed(3);for(var N=0,U=0;U path").each(function(d){if(!d.isBlank){var T=p.marker;g.select(this).call(A.fill,d.mc||T.color).call(A.stroke,d.mlc||T.line.color).call(x.dashLine,T.line.dash,d.mlw||T.line.width).style("opacity",p.selectedpoints&&!d.selected?S:1)}}),r(h,p,i),h.selectAll(".regions").each(function(){g.select(this).selectAll("path").style("stroke-width",0).call(A.fill,p.connector.fillcolor)}),h.selectAll(".lines").each(function(){var d=p.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),d.width,d.color,d.dash)})})}H.exports={style:o}}}),pC=Le({"src/traces/funnel/hover.js"(Z,H){"use strict";var g=$a().opacity,x=n0().hoverOnBars,A=ni().formatPercent;H.exports=function(t,r,o,i,n){var a=x(t,r,o,i,n);if(a){var s=a.cd,c=s[0].trace,h=c.orientation==="h",p=a.index,d=s[p],T=h?"x":"y";a[T+"LabelVal"]=d.s,a.percentInitial=d.begR,a.percentInitialLabel=A(d.begR,1),a.percentPrevious=d.difR,a.percentPreviousLabel=A(d.difR,1),a.percentTotal=d.sumR,a.percentTotalLabel=A(d.sumR,1);var l=d.hi||c.hoverinfo,_=[];if(l&&l!=="none"&&l!=="skip"){var w=l==="all",M=l.split("+"),E=function(m){return w||M.indexOf(m)!==-1};E("percent initial")&&_.push(a.percentInitialLabel+" of initial"),E("percent previous")&&_.push(a.percentPreviousLabel+" of previous"),E("percent total")&&_.push(a.percentTotalLabel+" of total")}return a.extraText=_.join("
"),a.color=S(c,d),[a]}};function S(e,t){var r=e.marker,o=t.mc||r.color,i=t.mlc||r.line.color,n=t.mlw||r.line.width;if(g(o))return o;if(g(i)&&n)return i}}}),mC=Le({"src/traces/funnel/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"percentInitial"in A&&(x.percentInitial=A.percentInitial),"percentPrevious"in A&&(x.percentPrevious=A.percentPrevious),"percentTotal"in A&&(x.percentTotal=A.percentTotal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),gC=Le({"src/traces/funnel/index.js"(Z,H){"use strict";H.exports={attributes:l3(),layoutAttributes:u3(),supplyDefaults:c3().supplyDefaults,crossTraceDefaults:c3().crossTraceDefaults,supplyLayoutDefaults:uC(),calc:fC(),crossTraceCalc:hC(),plot:dC(),style:vC().style,hoverPoints:pC(),eventData:mC(),selectPoints:a0(),moduleType:"trace",name:"funnel",basePlotModule:Ef(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),yC=Le({"lib/funnel.js"(Z,H){"use strict";H.exports=gC()}}),_C=Le({"src/traces/waterfall/constants.js"(Z,H){"use strict";H.exports={eventDataKeys:["initial","delta","final"]}}}),f3=Le({"src/traces/waterfall/attributes.js"(Z,H){"use strict";var g=Fv(),x=zc().line,A=Sl(),S=Rc().axisHoverFormat,e=Fs().hovertemplateAttrs,t=Fs().texttemplateAttrs,r=_C(),o=ho().extendFlat,i=$a();function n(a){return{marker:{color:o({},g.marker.color,{arrayOk:!1,editType:"style"}),line:{color:o({},g.marker.line.color,{arrayOk:!1,editType:"style"}),width:o({},g.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}H.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:S("x"),yhoverformat:S("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label"])}),text:g.text,textposition:g.textposition,insidetextanchor:g.insidetextanchor,textangle:g.textangle,textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:g.orientation,offset:g.offset,width:g.width,increasing:n("increasing"),decreasing:n("decreasing"),totals:n("intermediate sums and total"),connector:{line:{color:o({},x.color,{dflt:i.defaultLine}),width:o({},x.width,{editType:"plot"}),dash:x.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder}}}),h3=Le({"src/traces/waterfall/layout_attributes.js"(Z,H){"use strict";H.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),s0=Le({"src/constants/delta.js"(Z,H){"use strict";H.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}}}),d3=Le({"src/traces/waterfall/defaults.js"(Z,H){"use strict";var g=ni(),x=qm(),A=Nd().handleText,S=Jg(),e=vv(),t=f3(),r=$a(),o=s0(),i=o.INCREASING.COLOR,n=o.DECREASING.COLOR,a="#4499FF";function s(p,d,T){p(d+".marker.color",T),p(d+".marker.line.color",r.defaultLine),p(d+".marker.line.width")}function c(p,d,T,l){function _(b,v){return g.coerce(p,d,t,b,v)}var w=S(p,d,l,_);if(!w){d.visible=!1;return}e(p,d,l,_),_("xhoverformat"),_("yhoverformat"),_("measure"),_("orientation",d.x&&!d.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var M=_("textposition");A(p,d,l,_,M,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),d.textposition!=="none"&&(_("texttemplate"),d.texttemplate||_("textinfo")),s(_,"increasing",i),s(_,"decreasing",n),s(_,"totals",a);var E=_("connector.visible");if(E){_("connector.mode");var m=_("connector.line.width");m&&(_("connector.line.color"),_("connector.line.dash"))}_("zorder")}function h(p,d){var T,l;function _(M){return g.coerce(l._input,l,t,M)}if(d.waterfallmode==="group")for(var w=0;w0&&(_?f+="M"+u[0]+","+y[1]+"V"+y[0]:f+="M"+u[1]+","+y[0]+"H"+u[0]),w!=="between"&&(m.isSum||b path").each(function(d){if(!d.isBlank){var T=p[d.dir].marker;g.select(this).call(A.fill,T.color).call(A.stroke,T.line.color).call(x.dashLine,T.line.dash,T.line.width).style("opacity",p.selectedpoints&&!d.selected?S:1)}}),r(h,p,i),h.selectAll(".lines").each(function(){var d=p.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),d.width,d.color,d.dash)})})}H.exports={style:o}}}),MC=Le({"src/traces/waterfall/hover.js"(Z,H){"use strict";var g=Zo().hoverLabelText,x=$a().opacity,A=n0().hoverOnBars,S=s0(),e={increasing:S.INCREASING.SYMBOL,decreasing:S.DECREASING.SYMBOL};H.exports=function(o,i,n,a,s){var c=A(o,i,n,a,s);if(!c)return;var h=c.cd,p=h[0].trace,d=p.orientation==="h",T=d?"x":"y",l=d?o.xa:o.ya;function _(P){return g(l,P,p[T+"hoverformat"])}var w=c.index,M=h[w],E=M.isSum?M.b+M.s:M.rawS;c.initial=M.b+M.s-E,c.delta=E,c.final=c.initial+c.delta;var m=_(Math.abs(c.delta));c.deltaLabel=E<0?"("+m+")":m,c.finalLabel=_(c.final),c.initialLabel=_(c.initial);var b=M.hi||p.hoverinfo,v=[];if(b&&b!=="none"&&b!=="skip"){var u=b==="all",y=b.split("+"),f=function(P){return u||y.indexOf(P)!==-1};M.isSum||(f("final")&&(d?!f("x"):!f("y"))&&v.push(c.finalLabel),f("delta")&&(E<0?v.push(c.deltaLabel+" "+e.decreasing):v.push(c.deltaLabel+" "+e.increasing)),f("initial")&&v.push("Initial: "+c.initialLabel))}return v.length&&(c.extraText=v.join("
")),c.color=t(p,M),[c]};function t(r,o){var i=r[o.dir].marker,n=i.color,a=i.line.color,s=i.line.width;if(x(n))return n;if(x(a)&&s)return a}}}),SC=Le({"src/traces/waterfall/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"initial"in A&&(x.initial=A.initial),"delta"in A&&(x.delta=A.delta),"final"in A&&(x.final=A.final),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),EC=Le({"src/traces/waterfall/index.js"(Z,H){"use strict";H.exports={attributes:f3(),layoutAttributes:h3(),supplyDefaults:d3().supplyDefaults,crossTraceDefaults:d3().crossTraceDefaults,supplyLayoutDefaults:xC(),calc:bC(),crossTraceCalc:wC(),plot:TC(),style:AC().style,hoverPoints:MC(),eventData:SC(),selectPoints:a0(),moduleType:"trace",name:"waterfall",basePlotModule:Ef(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),kC=Le({"lib/waterfall.js"(Z,H){"use strict";H.exports=EC()}}),l0=Le({"src/traces/image/constants.js"(Z,H){"use strict";H.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(g){return g.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(g){var x=g.slice(0,3);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(g){var x=g.slice(0,4);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%",""]}}}}}),v3=Le({"src/traces/image/attributes.js"(Z,H){"use strict";var g=Sl(),x=zc().zorder,A=Fs().hovertemplateAttrs,S=ho().extendFlat,e=l0().colormodel,t=["rgb","rgba","rgba256","hsl","hsla"],r=[],o=[];for(n=0;n0)throw new Error("Invalid string. Length must be a multiple of 4");var p=c.indexOf("=");p===-1&&(p=h);var d=p===h?0:4-p%4;return[p,d]}function r(c){var h=t(c),p=h[0],d=h[1];return(p+d)*3/4-d}function o(c,h,p){return(h+p)*3/4-p}function i(c){var h,p=t(c),d=p[0],T=p[1],l=new x(o(c,d,T)),_=0,w=T>0?d-4:d,M;for(M=0;M>16&255,l[_++]=h>>8&255,l[_++]=h&255;return T===2&&(h=g[c.charCodeAt(M)]<<2|g[c.charCodeAt(M+1)]>>4,l[_++]=h&255),T===1&&(h=g[c.charCodeAt(M)]<<10|g[c.charCodeAt(M+1)]<<4|g[c.charCodeAt(M+2)]>>2,l[_++]=h>>8&255,l[_++]=h&255),l}function n(c){return H[c>>18&63]+H[c>>12&63]+H[c>>6&63]+H[c&63]}function a(c,h,p){for(var d,T=[],l=h;lw?w:_+l));return d===1?(h=c[p-1],T.push(H[h>>2]+H[h<<4&63]+"==")):d===2&&(h=(c[p-2]<<8)+c[p-1],T.push(H[h>>10]+H[h>>4&63]+H[h<<2&63]+"=")),T.join("")}}}),PC=Le({"node_modules/ieee754/index.js"(Z){Z.read=function(H,g,x,A,S){var e,t,r=S*8-A-1,o=(1<>1,n=-7,a=x?S-1:0,s=x?-1:1,c=H[g+a];for(a+=s,e=c&(1<<-n)-1,c>>=-n,n+=r;n>0;e=e*256+H[g+a],a+=s,n-=8);for(t=e&(1<<-n)-1,e>>=-n,n+=A;n>0;t=t*256+H[g+a],a+=s,n-=8);if(e===0)e=1-i;else{if(e===o)return t?NaN:(c?-1:1)*(1/0);t=t+Math.pow(2,A),e=e-i}return(c?-1:1)*t*Math.pow(2,e-A)},Z.write=function(H,g,x,A,S,e){var t,r,o,i=e*8-S-1,n=(1<>1,s=S===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=A?0:e-1,h=A?1:-1,p=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(r=isNaN(g)?1:0,t=n):(t=Math.floor(Math.log(g)/Math.LN2),g*(o=Math.pow(2,-t))<1&&(t--,o*=2),t+a>=1?g+=s/o:g+=s*Math.pow(2,1-a),g*o>=2&&(t++,o/=2),t+a>=n?(r=0,t=n):t+a>=1?(r=(g*o-1)*Math.pow(2,S),t=t+a):(r=g*Math.pow(2,a-1)*Math.pow(2,S),t=0));S>=8;H[x+c]=r&255,c+=h,r/=256,S-=8);for(t=t<0;H[x+c]=t&255,c+=h,t/=256,i-=8);H[x+c-h]|=p*128}}}),Xm=Le({"node_modules/buffer/index.js"(Z){"use strict";var H=LC(),g=PC(),x=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Z.Buffer=t,Z.SlowBuffer=T,Z.INSPECT_MAX_BYTES=50;var A=2147483647;Z.kMaxLength=A,t.TYPED_ARRAY_SUPPORT=S(),!t.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function S(){try{let Me=new Uint8Array(1),pe={foo:function(){return 42}};return Object.setPrototypeOf(pe,Uint8Array.prototype),Object.setPrototypeOf(Me,pe),Me.foo()===42}catch{return!1}}Object.defineProperty(t.prototype,"parent",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.buffer}}),Object.defineProperty(t.prototype,"offset",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.byteOffset}});function e(Me){if(Me>A)throw new RangeError('The value "'+Me+'" is invalid for option "size"');let pe=new Uint8Array(Me);return Object.setPrototypeOf(pe,t.prototype),pe}function t(Me,pe,ue){if(typeof Me=="number"){if(typeof pe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return n(Me)}return r(Me,pe,ue)}t.poolSize=8192;function r(Me,pe,ue){if(typeof Me=="string")return a(Me,pe);if(ArrayBuffer.isView(Me))return c(Me);if(Me==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me);if(Xe(Me,ArrayBuffer)||Me&&Xe(Me.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Xe(Me,SharedArrayBuffer)||Me&&Xe(Me.buffer,SharedArrayBuffer)))return h(Me,pe,ue);if(typeof Me=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let ze=Me.valueOf&&Me.valueOf();if(ze!=null&&ze!==Me)return t.from(ze,pe,ue);let Qe=p(Me);if(Qe)return Qe;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Me[Symbol.toPrimitive]=="function")return t.from(Me[Symbol.toPrimitive]("string"),pe,ue);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me)}t.from=function(Me,pe,ue){return r(Me,pe,ue)},Object.setPrototypeOf(t.prototype,Uint8Array.prototype),Object.setPrototypeOf(t,Uint8Array);function o(Me){if(typeof Me!="number")throw new TypeError('"size" argument must be of type number');if(Me<0)throw new RangeError('The value "'+Me+'" is invalid for option "size"')}function i(Me,pe,ue){return o(Me),Me<=0?e(Me):pe!==void 0?typeof ue=="string"?e(Me).fill(pe,ue):e(Me).fill(pe):e(Me)}t.alloc=function(Me,pe,ue){return i(Me,pe,ue)};function n(Me){return o(Me),e(Me<0?0:d(Me)|0)}t.allocUnsafe=function(Me){return n(Me)},t.allocUnsafeSlow=function(Me){return n(Me)};function a(Me,pe){if((typeof pe!="string"||pe==="")&&(pe="utf8"),!t.isEncoding(pe))throw new TypeError("Unknown encoding: "+pe);let ue=l(Me,pe)|0,ze=e(ue),Qe=ze.write(Me,pe);return Qe!==ue&&(ze=ze.slice(0,Qe)),ze}function s(Me){let pe=Me.length<0?0:d(Me.length)|0,ue=e(pe);for(let ze=0;ze=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return Me|0}function T(Me){return+Me!=Me&&(Me=0),t.alloc(+Me)}t.isBuffer=function(pe){return pe!=null&&pe._isBuffer===!0&&pe!==t.prototype},t.compare=function(pe,ue){if(Xe(pe,Uint8Array)&&(pe=t.from(pe,pe.offset,pe.byteLength)),Xe(ue,Uint8Array)&&(ue=t.from(ue,ue.offset,ue.byteLength)),!t.isBuffer(pe)||!t.isBuffer(ue))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(pe===ue)return 0;let ze=pe.length,Qe=ue.length;for(let it=0,$e=Math.min(ze,Qe);it<$e;++it)if(pe[it]!==ue[it]){ze=pe[it],Qe=ue[it];break}return zeQe.length?(t.isBuffer($e)||($e=t.from($e)),$e.copy(Qe,it)):Uint8Array.prototype.set.call(Qe,$e,it);else if(t.isBuffer($e))$e.copy(Qe,it);else throw new TypeError('"list" argument must be an Array of Buffers');it+=$e.length}return Qe};function l(Me,pe){if(t.isBuffer(Me))return Me.length;if(ArrayBuffer.isView(Me)||Xe(Me,ArrayBuffer))return Me.byteLength;if(typeof Me!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Me);let ue=Me.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&ue===0)return 0;let Qe=!1;for(;;)switch(pe){case"ascii":case"latin1":case"binary":return ue;case"utf8":case"utf-8":return ce(Me).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ue*2;case"hex":return ue>>>1;case"base64":return Oe(Me).length;default:if(Qe)return ze?-1:ce(Me).length;pe=(""+pe).toLowerCase(),Qe=!0}}t.byteLength=l;function _(Me,pe,ue){let ze=!1;if((pe===void 0||pe<0)&&(pe=0),pe>this.length||((ue===void 0||ue>this.length)&&(ue=this.length),ue<=0)||(ue>>>=0,pe>>>=0,ue<=pe))return"";for(Me||(Me="utf8");;)switch(Me){case"hex":return B(this,pe,ue);case"utf8":case"utf-8":return P(this,pe,ue);case"ascii":return F(this,pe,ue);case"latin1":case"binary":return O(this,pe,ue);case"base64":return f(this,pe,ue);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,pe,ue);default:if(ze)throw new TypeError("Unknown encoding: "+Me);Me=(Me+"").toLowerCase(),ze=!0}}t.prototype._isBuffer=!0;function w(Me,pe,ue){let ze=Me[pe];Me[pe]=Me[ue],Me[ue]=ze}t.prototype.swap16=function(){let pe=this.length;if(pe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let ue=0;ueue&&(pe+=" ... "),""},x&&(t.prototype[x]=t.prototype.inspect),t.prototype.compare=function(pe,ue,ze,Qe,it){if(Xe(pe,Uint8Array)&&(pe=t.from(pe,pe.offset,pe.byteLength)),!t.isBuffer(pe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof pe);if(ue===void 0&&(ue=0),ze===void 0&&(ze=pe?pe.length:0),Qe===void 0&&(Qe=0),it===void 0&&(it=this.length),ue<0||ze>pe.length||Qe<0||it>this.length)throw new RangeError("out of range index");if(Qe>=it&&ue>=ze)return 0;if(Qe>=it)return-1;if(ue>=ze)return 1;if(ue>>>=0,ze>>>=0,Qe>>>=0,it>>>=0,this===pe)return 0;let $e=it-Qe,kt=ze-ue,Mt=Math.min($e,kt),Bt=this.slice(Qe,it),jt=pe.slice(ue,ze);for(let cr=0;cr2147483647?ue=2147483647:ue<-2147483648&&(ue=-2147483648),ue=+ue,tt(ue)&&(ue=Qe?0:Me.length-1),ue<0&&(ue=Me.length+ue),ue>=Me.length){if(Qe)return-1;ue=Me.length-1}else if(ue<0)if(Qe)ue=0;else return-1;if(typeof pe=="string"&&(pe=t.from(pe,ze)),t.isBuffer(pe))return pe.length===0?-1:E(Me,pe,ue,ze,Qe);if(typeof pe=="number")return pe=pe&255,typeof Uint8Array.prototype.indexOf=="function"?Qe?Uint8Array.prototype.indexOf.call(Me,pe,ue):Uint8Array.prototype.lastIndexOf.call(Me,pe,ue):E(Me,[pe],ue,ze,Qe);throw new TypeError("val must be string, number or Buffer")}function E(Me,pe,ue,ze,Qe){let it=1,$e=Me.length,kt=pe.length;if(ze!==void 0&&(ze=String(ze).toLowerCase(),ze==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(Me.length<2||pe.length<2)return-1;it=2,$e/=2,kt/=2,ue/=2}function Mt(jt,cr){return it===1?jt[cr]:jt.readUInt16BE(cr*it)}let Bt;if(Qe){let jt=-1;for(Bt=ue;Bt<$e;Bt++)if(Mt(Me,Bt)===Mt(pe,jt===-1?0:Bt-jt)){if(jt===-1&&(jt=Bt),Bt-jt+1===kt)return jt*it}else jt!==-1&&(Bt-=Bt-jt),jt=-1}else for(ue+kt>$e&&(ue=$e-kt),Bt=ue;Bt>=0;Bt--){let jt=!0;for(let cr=0;crQe&&(ze=Qe)):ze=Qe;let it=pe.length;ze>it/2&&(ze=it/2);let $e;for($e=0;$e>>0,isFinite(ze)?(ze=ze>>>0,Qe===void 0&&(Qe="utf8")):(Qe=ze,ze=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let it=this.length-ue;if((ze===void 0||ze>it)&&(ze=it),pe.length>0&&(ze<0||ue<0)||ue>this.length)throw new RangeError("Attempt to write outside buffer bounds");Qe||(Qe="utf8");let $e=!1;for(;;)switch(Qe){case"hex":return m(this,pe,ue,ze);case"utf8":case"utf-8":return b(this,pe,ue,ze);case"ascii":case"latin1":case"binary":return v(this,pe,ue,ze);case"base64":return u(this,pe,ue,ze);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,pe,ue,ze);default:if($e)throw new TypeError("Unknown encoding: "+Qe);Qe=(""+Qe).toLowerCase(),$e=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(Me,pe,ue){return pe===0&&ue===Me.length?H.fromByteArray(Me):H.fromByteArray(Me.slice(pe,ue))}function P(Me,pe,ue){ue=Math.min(Me.length,ue);let ze=[],Qe=pe;for(;Qe239?4:it>223?3:it>191?2:1;if(Qe+kt<=ue){let Mt,Bt,jt,cr;switch(kt){case 1:it<128&&($e=it);break;case 2:Mt=Me[Qe+1],(Mt&192)===128&&(cr=(it&31)<<6|Mt&63,cr>127&&($e=cr));break;case 3:Mt=Me[Qe+1],Bt=Me[Qe+2],(Mt&192)===128&&(Bt&192)===128&&(cr=(it&15)<<12|(Mt&63)<<6|Bt&63,cr>2047&&(cr<55296||cr>57343)&&($e=cr));break;case 4:Mt=Me[Qe+1],Bt=Me[Qe+2],jt=Me[Qe+3],(Mt&192)===128&&(Bt&192)===128&&(jt&192)===128&&(cr=(it&15)<<18|(Mt&63)<<12|(Bt&63)<<6|jt&63,cr>65535&&cr<1114112&&($e=cr))}}$e===null?($e=65533,kt=1):$e>65535&&($e-=65536,ze.push($e>>>10&1023|55296),$e=56320|$e&1023),ze.push($e),Qe+=kt}return z(ze)}var L=4096;function z(Me){let pe=Me.length;if(pe<=L)return String.fromCharCode.apply(String,Me);let ue="",ze=0;for(;zeze)&&(ue=ze);let Qe="";for(let it=pe;itze&&(pe=ze),ue<0?(ue+=ze,ue<0&&(ue=0)):ue>ze&&(ue=ze),ueue)throw new RangeError("Trying to access beyond buffer length")}t.prototype.readUintLE=t.prototype.readUIntLE=function(pe,ue,ze){pe=pe>>>0,ue=ue>>>0,ze||N(pe,ue,this.length);let Qe=this[pe],it=1,$e=0;for(;++$e>>0,ue=ue>>>0,ze||N(pe,ue,this.length);let Qe=this[pe+--ue],it=1;for(;ue>0&&(it*=256);)Qe+=this[pe+--ue]*it;return Qe},t.prototype.readUint8=t.prototype.readUInt8=function(pe,ue){return pe=pe>>>0,ue||N(pe,1,this.length),this[pe]},t.prototype.readUint16LE=t.prototype.readUInt16LE=function(pe,ue){return pe=pe>>>0,ue||N(pe,2,this.length),this[pe]|this[pe+1]<<8},t.prototype.readUint16BE=t.prototype.readUInt16BE=function(pe,ue){return pe=pe>>>0,ue||N(pe,2,this.length),this[pe]<<8|this[pe+1]},t.prototype.readUint32LE=t.prototype.readUInt32LE=function(pe,ue){return pe=pe>>>0,ue||N(pe,4,this.length),(this[pe]|this[pe+1]<<8|this[pe+2]<<16)+this[pe+3]*16777216},t.prototype.readUint32BE=t.prototype.readUInt32BE=function(pe,ue){return pe=pe>>>0,ue||N(pe,4,this.length),this[pe]*16777216+(this[pe+1]<<16|this[pe+2]<<8|this[pe+3])},t.prototype.readBigUInt64LE=Je(function(pe){pe=pe>>>0,ae(pe,"offset");let ue=this[pe],ze=this[pe+7];(ue===void 0||ze===void 0)&&j(pe,this.length-8);let Qe=ue+this[++pe]*2**8+this[++pe]*2**16+this[++pe]*2**24,it=this[++pe]+this[++pe]*2**8+this[++pe]*2**16+ze*2**24;return BigInt(Qe)+(BigInt(it)<>>0,ae(pe,"offset");let ue=this[pe],ze=this[pe+7];(ue===void 0||ze===void 0)&&j(pe,this.length-8);let Qe=ue*2**24+this[++pe]*2**16+this[++pe]*2**8+this[++pe],it=this[++pe]*2**24+this[++pe]*2**16+this[++pe]*2**8+ze;return(BigInt(Qe)<>>0,ue=ue>>>0,ze||N(pe,ue,this.length);let Qe=this[pe],it=1,$e=0;for(;++$e=it&&(Qe-=Math.pow(2,8*ue)),Qe},t.prototype.readIntBE=function(pe,ue,ze){pe=pe>>>0,ue=ue>>>0,ze||N(pe,ue,this.length);let Qe=ue,it=1,$e=this[pe+--Qe];for(;Qe>0&&(it*=256);)$e+=this[pe+--Qe]*it;return it*=128,$e>=it&&($e-=Math.pow(2,8*ue)),$e},t.prototype.readInt8=function(pe,ue){return pe=pe>>>0,ue||N(pe,1,this.length),this[pe]&128?(255-this[pe]+1)*-1:this[pe]},t.prototype.readInt16LE=function(pe,ue){pe=pe>>>0,ue||N(pe,2,this.length);let ze=this[pe]|this[pe+1]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt16BE=function(pe,ue){pe=pe>>>0,ue||N(pe,2,this.length);let ze=this[pe+1]|this[pe]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt32LE=function(pe,ue){return pe=pe>>>0,ue||N(pe,4,this.length),this[pe]|this[pe+1]<<8|this[pe+2]<<16|this[pe+3]<<24},t.prototype.readInt32BE=function(pe,ue){return pe=pe>>>0,ue||N(pe,4,this.length),this[pe]<<24|this[pe+1]<<16|this[pe+2]<<8|this[pe+3]},t.prototype.readBigInt64LE=Je(function(pe){pe=pe>>>0,ae(pe,"offset");let ue=this[pe],ze=this[pe+7];(ue===void 0||ze===void 0)&&j(pe,this.length-8);let Qe=this[pe+4]+this[pe+5]*2**8+this[pe+6]*2**16+(ze<<24);return(BigInt(Qe)<>>0,ae(pe,"offset");let ue=this[pe],ze=this[pe+7];(ue===void 0||ze===void 0)&&j(pe,this.length-8);let Qe=(ue<<24)+this[++pe]*2**16+this[++pe]*2**8+this[++pe];return(BigInt(Qe)<>>0,ue||N(pe,4,this.length),g.read(this,pe,!0,23,4)},t.prototype.readFloatBE=function(pe,ue){return pe=pe>>>0,ue||N(pe,4,this.length),g.read(this,pe,!1,23,4)},t.prototype.readDoubleLE=function(pe,ue){return pe=pe>>>0,ue||N(pe,8,this.length),g.read(this,pe,!0,52,8)},t.prototype.readDoubleBE=function(pe,ue){return pe=pe>>>0,ue||N(pe,8,this.length),g.read(this,pe,!1,52,8)};function U(Me,pe,ue,ze,Qe,it){if(!t.isBuffer(Me))throw new TypeError('"buffer" argument must be a Buffer instance');if(pe>Qe||peMe.length)throw new RangeError("Index out of range")}t.prototype.writeUintLE=t.prototype.writeUIntLE=function(pe,ue,ze,Qe){if(pe=+pe,ue=ue>>>0,ze=ze>>>0,!Qe){let kt=Math.pow(2,8*ze)-1;U(this,pe,ue,ze,kt,0)}let it=1,$e=0;for(this[ue]=pe&255;++$e>>0,ze=ze>>>0,!Qe){let kt=Math.pow(2,8*ze)-1;U(this,pe,ue,ze,kt,0)}let it=ze-1,$e=1;for(this[ue+it]=pe&255;--it>=0&&($e*=256);)this[ue+it]=pe/$e&255;return ue+ze},t.prototype.writeUint8=t.prototype.writeUInt8=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,1,255,0),this[ue]=pe&255,ue+1},t.prototype.writeUint16LE=t.prototype.writeUInt16LE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,2,65535,0),this[ue]=pe&255,this[ue+1]=pe>>>8,ue+2},t.prototype.writeUint16BE=t.prototype.writeUInt16BE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,2,65535,0),this[ue]=pe>>>8,this[ue+1]=pe&255,ue+2},t.prototype.writeUint32LE=t.prototype.writeUInt32LE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,4,4294967295,0),this[ue+3]=pe>>>24,this[ue+2]=pe>>>16,this[ue+1]=pe>>>8,this[ue]=pe&255,ue+4},t.prototype.writeUint32BE=t.prototype.writeUInt32BE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,4,4294967295,0),this[ue]=pe>>>24,this[ue+1]=pe>>>16,this[ue+2]=pe>>>8,this[ue+3]=pe&255,ue+4};function W(Me,pe,ue,ze,Qe){re(pe,ze,Qe,Me,ue,7);let it=Number(pe&BigInt(4294967295));Me[ue++]=it,it=it>>8,Me[ue++]=it,it=it>>8,Me[ue++]=it,it=it>>8,Me[ue++]=it;let $e=Number(pe>>BigInt(32)&BigInt(4294967295));return Me[ue++]=$e,$e=$e>>8,Me[ue++]=$e,$e=$e>>8,Me[ue++]=$e,$e=$e>>8,Me[ue++]=$e,ue}function Q(Me,pe,ue,ze,Qe){re(pe,ze,Qe,Me,ue,7);let it=Number(pe&BigInt(4294967295));Me[ue+7]=it,it=it>>8,Me[ue+6]=it,it=it>>8,Me[ue+5]=it,it=it>>8,Me[ue+4]=it;let $e=Number(pe>>BigInt(32)&BigInt(4294967295));return Me[ue+3]=$e,$e=$e>>8,Me[ue+2]=$e,$e=$e>>8,Me[ue+1]=$e,$e=$e>>8,Me[ue]=$e,ue+8}t.prototype.writeBigUInt64LE=Je(function(pe,ue=0){return W(this,pe,ue,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeBigUInt64BE=Je(function(pe,ue=0){return Q(this,pe,ue,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeIntLE=function(pe,ue,ze,Qe){if(pe=+pe,ue=ue>>>0,!Qe){let Mt=Math.pow(2,8*ze-1);U(this,pe,ue,ze,Mt-1,-Mt)}let it=0,$e=1,kt=0;for(this[ue]=pe&255;++it>0)-kt&255;return ue+ze},t.prototype.writeIntBE=function(pe,ue,ze,Qe){if(pe=+pe,ue=ue>>>0,!Qe){let Mt=Math.pow(2,8*ze-1);U(this,pe,ue,ze,Mt-1,-Mt)}let it=ze-1,$e=1,kt=0;for(this[ue+it]=pe&255;--it>=0&&($e*=256);)pe<0&&kt===0&&this[ue+it+1]!==0&&(kt=1),this[ue+it]=(pe/$e>>0)-kt&255;return ue+ze},t.prototype.writeInt8=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,1,127,-128),pe<0&&(pe=255+pe+1),this[ue]=pe&255,ue+1},t.prototype.writeInt16LE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,2,32767,-32768),this[ue]=pe&255,this[ue+1]=pe>>>8,ue+2},t.prototype.writeInt16BE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,2,32767,-32768),this[ue]=pe>>>8,this[ue+1]=pe&255,ue+2},t.prototype.writeInt32LE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,4,2147483647,-2147483648),this[ue]=pe&255,this[ue+1]=pe>>>8,this[ue+2]=pe>>>16,this[ue+3]=pe>>>24,ue+4},t.prototype.writeInt32BE=function(pe,ue,ze){return pe=+pe,ue=ue>>>0,ze||U(this,pe,ue,4,2147483647,-2147483648),pe<0&&(pe=4294967295+pe+1),this[ue]=pe>>>24,this[ue+1]=pe>>>16,this[ue+2]=pe>>>8,this[ue+3]=pe&255,ue+4},t.prototype.writeBigInt64LE=Je(function(pe,ue=0){return W(this,pe,ue,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),t.prototype.writeBigInt64BE=Je(function(pe,ue=0){return Q(this,pe,ue,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function le(Me,pe,ue,ze,Qe,it){if(ue+ze>Me.length)throw new RangeError("Index out of range");if(ue<0)throw new RangeError("Index out of range")}function se(Me,pe,ue,ze,Qe){return pe=+pe,ue=ue>>>0,Qe||le(Me,pe,ue,4,34028234663852886e22,-34028234663852886e22),g.write(Me,pe,ue,ze,23,4),ue+4}t.prototype.writeFloatLE=function(pe,ue,ze){return se(this,pe,ue,!0,ze)},t.prototype.writeFloatBE=function(pe,ue,ze){return se(this,pe,ue,!1,ze)};function fe(Me,pe,ue,ze,Qe){return pe=+pe,ue=ue>>>0,Qe||le(Me,pe,ue,8,17976931348623157e292,-17976931348623157e292),g.write(Me,pe,ue,ze,52,8),ue+8}t.prototype.writeDoubleLE=function(pe,ue,ze){return fe(this,pe,ue,!0,ze)},t.prototype.writeDoubleBE=function(pe,ue,ze){return fe(this,pe,ue,!1,ze)},t.prototype.copy=function(pe,ue,ze,Qe){if(!t.isBuffer(pe))throw new TypeError("argument should be a Buffer");if(ze||(ze=0),!Qe&&Qe!==0&&(Qe=this.length),ue>=pe.length&&(ue=pe.length),ue||(ue=0),Qe>0&&Qe=this.length)throw new RangeError("Index out of range");if(Qe<0)throw new RangeError("sourceEnd out of bounds");Qe>this.length&&(Qe=this.length),pe.length-ue>>0,ze=ze===void 0?this.length:ze>>>0,pe||(pe=0);let it;if(typeof pe=="number")for(it=ue;it2**32?Qe=$(String(ue)):typeof ue=="bigint"&&(Qe=String(ue),(ue>BigInt(2)**BigInt(32)||ue<-(BigInt(2)**BigInt(32)))&&(Qe=$(Qe)),Qe+="n"),ze+=` It must be ${pe}. Received ${Qe}`,ze},RangeError);function $(Me){let pe="",ue=Me.length,ze=Me[0]==="-"?1:0;for(;ue>=ze+4;ue-=3)pe=`_${Me.slice(ue-3,ue)}${pe}`;return`${Me.slice(0,ue)}${pe}`}function X(Me,pe,ue){ae(pe,"offset"),(Me[pe]===void 0||Me[pe+ue]===void 0)&&j(pe,Me.length-(ue+1))}function re(Me,pe,ue,ze,Qe,it){if(Me>ue||Me3?pe===0||pe===BigInt(0)?kt=`>= 0${$e} and < 2${$e} ** ${(it+1)*8}${$e}`:kt=`>= -(2${$e} ** ${(it+1)*8-1}${$e}) and < 2 ** ${(it+1)*8-1}${$e}`:kt=`>= ${pe}${$e} and <= ${ue}${$e}`,new G.ERR_OUT_OF_RANGE("value",kt,Me)}X(ze,Qe,it)}function ae(Me,pe){if(typeof Me!="number")throw new G.ERR_INVALID_ARG_TYPE(pe,"number",Me)}function j(Me,pe,ue){throw Math.floor(Me)!==Me?(ae(Me,ue),new G.ERR_OUT_OF_RANGE(ue||"offset","an integer",Me)):pe<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(ue||"offset",`>= ${ue?1:0} and <= ${pe}`,Me)}var ee=/[^+/0-9A-Za-z-_]/g;function ne(Me){if(Me=Me.split("=")[0],Me=Me.trim().replace(ee,""),Me.length<2)return"";for(;Me.length%4!==0;)Me=Me+"=";return Me}function ce(Me,pe){pe=pe||1/0;let ue,ze=Me.length,Qe=null,it=[];for(let $e=0;$e55295&&ue<57344){if(!Qe){if(ue>56319){(pe-=3)>-1&&it.push(239,191,189);continue}else if($e+1===ze){(pe-=3)>-1&&it.push(239,191,189);continue}Qe=ue;continue}if(ue<56320){(pe-=3)>-1&&it.push(239,191,189),Qe=ue;continue}ue=(Qe-55296<<10|ue-56320)+65536}else Qe&&(pe-=3)>-1&&it.push(239,191,189);if(Qe=null,ue<128){if((pe-=1)<0)break;it.push(ue)}else if(ue<2048){if((pe-=2)<0)break;it.push(ue>>6|192,ue&63|128)}else if(ue<65536){if((pe-=3)<0)break;it.push(ue>>12|224,ue>>6&63|128,ue&63|128)}else if(ue<1114112){if((pe-=4)<0)break;it.push(ue>>18|240,ue>>12&63|128,ue>>6&63|128,ue&63|128)}else throw new Error("Invalid code point")}return it}function _e(Me){let pe=[];for(let ue=0;ue>8,Qe=ue%256,it.push(Qe),it.push(ze);return it}function Oe(Me){return H.toByteArray(ne(Me))}function Ie(Me,pe,ue,ze){let Qe;for(Qe=0;Qe=pe.length||Qe>=Me.length);++Qe)pe[Qe+ue]=Me[Qe];return Qe}function Xe(Me,pe){return Me instanceof pe||Me!=null&&Me.constructor!=null&&Me.constructor.name!=null&&Me.constructor.name===pe.name}function tt(Me){return Me!==Me}var rt=function(){let Me="0123456789abcdef",pe=new Array(256);for(let ue=0;ue<16;++ue){let ze=ue*16;for(let Qe=0;Qe<16;++Qe)pe[ze+Qe]=Me[ue]+Me[Qe]}return pe}();function Je(Me){return typeof BigInt>"u"?ot:Me}function ot(){throw new Error("BigInt not supported")}}}),vx=Le({"node_modules/has-symbols/shams.js"(Z,H){"use strict";H.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var x={},A=Symbol("test"),S=Object(A);if(typeof A=="string"||Object.prototype.toString.call(A)!=="[object Symbol]"||Object.prototype.toString.call(S)!=="[object Symbol]")return!1;var e=42;x[A]=e;for(A in x)return!1;if(typeof Object.keys=="function"&&Object.keys(x).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(x).length!==0)return!1;var t=Object.getOwnPropertySymbols(x);if(t.length!==1||t[0]!==A||!Object.prototype.propertyIsEnumerable.call(x,A))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var r=Object.getOwnPropertyDescriptor(x,A);if(r.value!==e||r.enumerable!==!0)return!1}return!0}}}),My=Le({"node_modules/has-tostringtag/shams.js"(Z,H){"use strict";var g=vx();H.exports=function(){return g()&&!!Symbol.toStringTag}}}),IC=Le({"node_modules/es-errors/index.js"(Z,H){"use strict";H.exports=Error}}),RC=Le({"node_modules/es-errors/eval.js"(Z,H){"use strict";H.exports=EvalError}}),DC=Le({"node_modules/es-errors/range.js"(Z,H){"use strict";H.exports=RangeError}}),zC=Le({"node_modules/es-errors/ref.js"(Z,H){"use strict";H.exports=ReferenceError}}),m3=Le({"node_modules/es-errors/syntax.js"(Z,H){"use strict";H.exports=SyntaxError}}),Sy=Le({"node_modules/es-errors/type.js"(Z,H){"use strict";H.exports=TypeError}}),FC=Le({"node_modules/es-errors/uri.js"(Z,H){"use strict";H.exports=URIError}}),BC=Le({"node_modules/has-symbols/index.js"(Z,H){"use strict";var g=typeof Symbol<"u"&&Symbol,x=vx();H.exports=function(){return typeof g!="function"||typeof Symbol!="function"||typeof g("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:x()}}}),OC=Le({"node_modules/has-proto/index.js"(Z,H){"use strict";var g={foo:{}},x=Object;H.exports=function(){return{__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof x)}}}),NC=Le({"node_modules/function-bind/implementation.js"(Z,H){"use strict";var g="Function.prototype.bind called on incompatible ",x=Object.prototype.toString,A=Math.max,S="[object Function]",e=function(i,n){for(var a=[],s=0;s"u"||!d?g:d(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?g:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?g:ArrayBuffer,"%ArrayIteratorPrototype%":h&&d?d([][Symbol.iterator]()):g,"%AsyncFromSyncIteratorPrototype%":g,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?g:Atomics,"%BigInt%":typeof BigInt>"u"?g:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?g:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?g:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?g:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":x,"%eval%":eval,"%EvalError%":A,"%Float32Array%":typeof Float32Array>"u"?g:Float32Array,"%Float64Array%":typeof Float64Array>"u"?g:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?g:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?g:Int8Array,"%Int16Array%":typeof Int16Array>"u"?g:Int16Array,"%Int32Array%":typeof Int32Array>"u"?g:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h&&d?d(d([][Symbol.iterator]())):g,"%JSON%":typeof JSON=="object"?JSON:g,"%Map%":typeof Map>"u"?g:Map,"%MapIteratorPrototype%":typeof Map>"u"||!h||!d?g:d(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?g:Promise,"%Proxy%":typeof Proxy>"u"?g:Proxy,"%RangeError%":S,"%ReferenceError%":e,"%Reflect%":typeof Reflect>"u"?g:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?g:Set,"%SetIteratorPrototype%":typeof Set>"u"||!h||!d?g:d(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?g:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h&&d?d(""[Symbol.iterator]()):g,"%Symbol%":h?Symbol:g,"%SyntaxError%":t,"%ThrowTypeError%":c,"%TypedArray%":l,"%TypeError%":r,"%Uint8Array%":typeof Uint8Array>"u"?g:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?g:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?g:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?g:Uint32Array,"%URIError%":o,"%WeakMap%":typeof WeakMap>"u"?g:WeakMap,"%WeakRef%":typeof WeakRef>"u"?g:WeakRef,"%WeakSet%":typeof WeakSet>"u"?g:WeakSet};if(d)try{null.error}catch(B){w=d(d(B)),_["%Error.prototype%"]=w}var w,M=function B(I){var N;if(I==="%AsyncFunction%")N=n("async function () {}");else if(I==="%GeneratorFunction%")N=n("function* () {}");else if(I==="%AsyncGeneratorFunction%")N=n("async function* () {}");else if(I==="%AsyncGenerator%"){var U=B("%AsyncGeneratorFunction%");U&&(N=U.prototype)}else if(I==="%AsyncIteratorPrototype%"){var W=B("%AsyncGenerator%");W&&d&&(N=d(W.prototype))}return _[I]=N,N},E={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},m=px(),b=UC(),v=m.call(Function.call,Array.prototype.concat),u=m.call(Function.apply,Array.prototype.splice),y=m.call(Function.call,String.prototype.replace),f=m.call(Function.call,String.prototype.slice),P=m.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,z=/\\(\\)?/g,F=function(I){var N=f(I,0,1),U=f(I,-1);if(N==="%"&&U!=="%")throw new t("invalid intrinsic syntax, expected closing `%`");if(U==="%"&&N!=="%")throw new t("invalid intrinsic syntax, expected opening `%`");var W=[];return y(I,L,function(Q,le,se,fe){W[W.length]=se?y(fe,z,"$1"):le||Q}),W},O=function(I,N){var U=I,W;if(b(E,U)&&(W=E[U],U="%"+W[0]+"%"),b(_,U)){var Q=_[U];if(Q===T&&(Q=M(U)),typeof Q>"u"&&!N)throw new r("intrinsic "+I+" exists, but is not available. Please file an issue!");return{alias:W,name:U,value:Q}}throw new t("intrinsic "+I+" does not exist!")};H.exports=function(I,N){if(typeof I!="string"||I.length===0)throw new r("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof N!="boolean")throw new r('"allowMissing" argument must be a boolean');if(P(/^%?[^%]*%?$/,I)===null)throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var U=F(I),W=U.length>0?U[0]:"",Q=O("%"+W+"%",N),le=Q.name,se=Q.value,fe=!1,G=Q.alias;G&&(W=G[0],u(U,v([0,1],G)));for(var J=1,$=!0;J=U.length){var j=a(se,X);$=!!j,$&&"get"in j&&!("originalValue"in j.get)?se=j.get:se=se[X]}else $=b(se,X),se=se[X];$&&!fe&&(_[le]=se)}}return se}}}),mx=Le({"node_modules/es-define-property/index.js"(Z,H){"use strict";var g=u0(),x=g("%Object.defineProperty%",!0)||!1;if(x)try{x({},"a",{value:1})}catch{x=!1}H.exports=x}}),Ey=Le({"node_modules/gopd/index.js"(Z,H){"use strict";var g=u0(),x=g("%Object.getOwnPropertyDescriptor%",!0);if(x)try{x([],"length")}catch{x=null}H.exports=x}}),jC=Le({"node_modules/define-data-property/index.js"(Z,H){"use strict";var g=mx(),x=m3(),A=Sy(),S=Ey();H.exports=function(t,r,o){if(!t||typeof t!="object"&&typeof t!="function")throw new A("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new A("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new A("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new A("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new A("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new A("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,n=arguments.length>4?arguments[4]:null,a=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,c=!!S&&S(t,r);if(g)g(t,r,{configurable:a===null&&c?c.configurable:!a,enumerable:i===null&&c?c.enumerable:!i,value:o,writable:n===null&&c?c.writable:!n});else if(s||!i&&!n&&!a)t[r]=o;else throw new x("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),g3=Le({"node_modules/has-property-descriptors/index.js"(Z,H){"use strict";var g=mx(),x=function(){return!!g};x.hasArrayLengthDefineBug=function(){if(!g)return null;try{return g([],"length",{value:1}).length!==1}catch{return!0}},H.exports=x}}),VC=Le({"node_modules/set-function-length/index.js"(Z,H){"use strict";var g=u0(),x=jC(),A=g3()(),S=Ey(),e=Sy(),t=g("%Math.floor%");H.exports=function(o,i){if(typeof o!="function")throw new e("`fn` is not a function");if(typeof i!="number"||i<0||i>4294967295||t(i)!==i)throw new e("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],a=!0,s=!0;if("length"in o&&S){var c=S(o,"length");c&&!c.configurable&&(a=!1),c&&!c.writable&&(s=!1)}return(a||s||!n)&&(A?x(o,"length",i,!0,!0):x(o,"length",i)),o}}}),ky=Le({"node_modules/call-bind/index.js"(Z,H){"use strict";var g=px(),x=u0(),A=VC(),S=Sy(),e=x("%Function.prototype.apply%"),t=x("%Function.prototype.call%"),r=x("%Reflect.apply%",!0)||g.call(t,e),o=mx(),i=x("%Math.max%");H.exports=function(s){if(typeof s!="function")throw new S("a function is required");var c=r(g,t,arguments);return A(c,1+i(0,s.length-(arguments.length-1)),!0)};var n=function(){return r(g,e,arguments)};o?o(H.exports,"apply",{value:n}):H.exports.apply=n}}),c0=Le({"node_modules/call-bind/callBound.js"(Z,H){"use strict";var g=u0(),x=ky(),A=x(g("String.prototype.indexOf"));H.exports=function(e,t){var r=g(e,!!t);return typeof r=="function"&&A(e,".prototype.")>-1?x(r):r}}}),qC=Le({"node_modules/is-arguments/index.js"(Z,H){"use strict";var g=My()(),x=c0(),A=x("Object.prototype.toString"),S=function(o){return g&&o&&typeof o=="object"&&Symbol.toStringTag in o?!1:A(o)==="[object Arguments]"},e=function(o){return S(o)?!0:o!==null&&typeof o=="object"&&typeof o.length=="number"&&o.length>=0&&A(o)!=="[object Array]"&&A(o.callee)==="[object Function]"},t=function(){return S(arguments)}();S.isLegacyArguments=e,H.exports=t?S:e}}),HC=Le({"node_modules/is-generator-function/index.js"(Z,H){"use strict";var g=Object.prototype.toString,x=Function.prototype.toString,A=/^\s*(?:function)?\*/,S=My()(),e=Object.getPrototypeOf,t=function(){if(!S)return!1;try{return Function("return function*() {}")()}catch{}},r;H.exports=function(i){if(typeof i!="function")return!1;if(A.test(x.call(i)))return!0;if(!S){var n=g.call(i);return n==="[object GeneratorFunction]"}if(!e)return!1;if(typeof r>"u"){var a=t();r=a?e(a):!1}return e(i)===r}}}),GC=Le({"node_modules/is-callable/index.js"(Z,H){"use strict";var g=Function.prototype.toString,x=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,A,S;if(typeof x=="function"&&typeof Object.defineProperty=="function")try{A=Object.defineProperty({},"length",{get:function(){throw S}}),S={},x(function(){throw 42},null,A)}catch(_){_!==S&&(x=null)}else x=null;var e=/^\s*class\b/,t=function(w){try{var M=g.call(w);return e.test(M)}catch{return!1}},r=function(w){try{return t(w)?!1:(g.call(w),!0)}catch{return!1}},o=Object.prototype.toString,i="[object Object]",n="[object Function]",a="[object GeneratorFunction]",s="[object HTMLAllCollection]",c="[object HTML document.all class]",h="[object HTMLCollection]",p=typeof Symbol=="function"&&!!Symbol.toStringTag,d=!(0 in[,]),T=function(){return!1};typeof document=="object"&&(l=document.all,o.call(l)===o.call(document.all)&&(T=function(w){if((d||!w)&&(typeof w>"u"||typeof w=="object"))try{var M=o.call(w);return(M===s||M===c||M===h||M===i)&&w("")==null}catch{}return!1}));var l;H.exports=x?function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;try{x(w,null,A)}catch(M){if(M!==S)return!1}return!t(w)&&r(w)}:function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;if(p)return r(w);if(t(w))return!1;var M=o.call(w);return M!==n&&M!==a&&!/^\[object HTML/.test(M)?!1:r(w)}}}),y3=Le({"node_modules/for-each/index.js"(Z,H){"use strict";var g=GC(),x=Object.prototype.toString,A=Object.prototype.hasOwnProperty,S=function(i,n,a){for(var s=0,c=i.length;s=3&&(s=a),x.call(i)==="[object Array]"?S(i,n,s):typeof i=="string"?e(i,n,s):t(i,n,s)};H.exports=r}}),_3=Le({"node_modules/available-typed-arrays/index.js"(Z,H){"use strict";var g=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],x=typeof globalThis>"u"?window:globalThis;H.exports=function(){for(var S=[],e=0;e"u"?window:globalThis,i=x(),n=S("String.prototype.slice"),a=Object.getPrototypeOf,s=S("Array.prototype.indexOf",!0)||function(T,l){for(var _=0;_-1?l:l!=="Object"?!1:p(T)}return e?h(T):null}}}),XC=Le({"node_modules/is-typed-array/index.js"(Z,H){"use strict";var g=y3(),x=_3(),A=c0(),S=A("Object.prototype.toString"),e=My()(),t=Ey(),r=typeof globalThis>"u"?window:globalThis,o=x(),i=A("Array.prototype.indexOf",!0)||function(p,d){for(var T=0;T-1}return t?c(p):!1}}}),x3=Le({"node_modules/util/support/types.js"(Z){"use strict";var H=qC(),g=HC(),x=WC(),A=XC();function S(we){return we.call.bind(we)}var e=typeof BigInt<"u",t=typeof Symbol<"u",r=S(Object.prototype.toString),o=S(Number.prototype.valueOf),i=S(String.prototype.valueOf),n=S(Boolean.prototype.valueOf);e&&(a=S(BigInt.prototype.valueOf));var a;t&&(s=S(Symbol.prototype.valueOf));var s;function c(we,Oe){if(typeof we!="object")return!1;try{return Oe(we),!0}catch{return!1}}Z.isArgumentsObject=H,Z.isGeneratorFunction=g,Z.isTypedArray=A;function h(we){return typeof Promise<"u"&&we instanceof Promise||we!==null&&typeof we=="object"&&typeof we.then=="function"&&typeof we.catch=="function"}Z.isPromise=h;function p(we){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(we):A(we)||W(we)}Z.isArrayBufferView=p;function d(we){return x(we)==="Uint8Array"}Z.isUint8Array=d;function T(we){return x(we)==="Uint8ClampedArray"}Z.isUint8ClampedArray=T;function l(we){return x(we)==="Uint16Array"}Z.isUint16Array=l;function _(we){return x(we)==="Uint32Array"}Z.isUint32Array=_;function w(we){return x(we)==="Int8Array"}Z.isInt8Array=w;function M(we){return x(we)==="Int16Array"}Z.isInt16Array=M;function E(we){return x(we)==="Int32Array"}Z.isInt32Array=E;function m(we){return x(we)==="Float32Array"}Z.isFloat32Array=m;function b(we){return x(we)==="Float64Array"}Z.isFloat64Array=b;function v(we){return x(we)==="BigInt64Array"}Z.isBigInt64Array=v;function u(we){return x(we)==="BigUint64Array"}Z.isBigUint64Array=u;function y(we){return r(we)==="[object Map]"}y.working=typeof Map<"u"&&y(new Map);function f(we){return typeof Map>"u"?!1:y.working?y(we):we instanceof Map}Z.isMap=f;function P(we){return r(we)==="[object Set]"}P.working=typeof Set<"u"&&P(new Set);function L(we){return typeof Set>"u"?!1:P.working?P(we):we instanceof Set}Z.isSet=L;function z(we){return r(we)==="[object WeakMap]"}z.working=typeof WeakMap<"u"&&z(new WeakMap);function F(we){return typeof WeakMap>"u"?!1:z.working?z(we):we instanceof WeakMap}Z.isWeakMap=F;function O(we){return r(we)==="[object WeakSet]"}O.working=typeof WeakSet<"u"&&O(new WeakSet);function B(we){return O(we)}Z.isWeakSet=B;function I(we){return r(we)==="[object ArrayBuffer]"}I.working=typeof ArrayBuffer<"u"&&I(new ArrayBuffer);function N(we){return typeof ArrayBuffer>"u"?!1:I.working?I(we):we instanceof ArrayBuffer}Z.isArrayBuffer=N;function U(we){return r(we)==="[object DataView]"}U.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&U(new DataView(new ArrayBuffer(1),0,1));function W(we){return typeof DataView>"u"?!1:U.working?U(we):we instanceof DataView}Z.isDataView=W;var Q=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function le(we){return r(we)==="[object SharedArrayBuffer]"}function se(we){return typeof Q>"u"?!1:(typeof le.working>"u"&&(le.working=le(new Q)),le.working?le(we):we instanceof Q)}Z.isSharedArrayBuffer=se;function fe(we){return r(we)==="[object AsyncFunction]"}Z.isAsyncFunction=fe;function G(we){return r(we)==="[object Map Iterator]"}Z.isMapIterator=G;function J(we){return r(we)==="[object Set Iterator]"}Z.isSetIterator=J;function $(we){return r(we)==="[object Generator]"}Z.isGeneratorObject=$;function X(we){return r(we)==="[object WebAssembly.Module]"}Z.isWebAssemblyCompiledModule=X;function re(we){return c(we,o)}Z.isNumberObject=re;function ae(we){return c(we,i)}Z.isStringObject=ae;function j(we){return c(we,n)}Z.isBooleanObject=j;function ee(we){return e&&c(we,a)}Z.isBigIntObject=ee;function ne(we){return t&&c(we,s)}Z.isSymbolObject=ne;function ce(we){return re(we)||ae(we)||j(we)||ee(we)||ne(we)}Z.isBoxedPrimitive=ce;function _e(we){return typeof Uint8Array<"u"&&(N(we)||se(we))}Z.isAnyArrayBuffer=_e,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(we){Object.defineProperty(Z,we,{enumerable:!1,value:function(){throw new Error(we+" is not supported in userland")}})})}}),b3=Le({"node_modules/util/support/isBufferBrowser.js"(Z,H){H.exports=function(x){return x&&typeof x=="object"&&typeof x.copy=="function"&&typeof x.fill=="function"&&typeof x.readUInt8=="function"}}}),w3=Le({"(disabled):node_modules/util/util.js"(Z){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),le={},se=0;se=se)return J;switch(J){case"%s":return String(le[Q++]);case"%d":return Number(le[Q++]);case"%j":try{return JSON.stringify(le[Q++])}catch{return"[Circular]"}default:return J}}),G=le[Q];Q"u")return function(){return Z.deprecate(U,W).apply(this,arguments)};var Q=!1;function le(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return le};var x={},A=/^$/;S="false",S=S.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+S+"$","i");var S;Z.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=Z.format.apply(Z,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),d(W)?Q.showHidden=W:W&&Z._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),i(Q,U,Q.depth)}Z.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,le){W[Q]=!0}),W}function i(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==Z.inspect&&!(W.constructor&&W.constructor.prototype===W)){var le=W.inspect(Q,U);return w(le)||(le=i(U,le,Q)),le}var se=n(U,W);if(se)return se;var fe=Object.keys(W),G=o(fe);if(U.showHidden&&(fe=Object.getOwnPropertyNames(W)),u(W)&&(fe.indexOf("message")>=0||fe.indexOf("description")>=0))return a(W);if(fe.length===0){if(y(W)){var J=W.name?": "+W.name:"";return U.stylize("[Function"+J+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(v(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return a(W)}var $="",X=!1,re=["{","}"];if(p(W)&&(X=!0,re=["[","]"]),y(W)){var ae=W.name?": "+W.name:"";$=" [Function"+ae+"]"}if(m(W)&&($=" "+RegExp.prototype.toString.call(W)),v(W)&&($=" "+Date.prototype.toUTCString.call(W)),u(W)&&($=" "+a(W)),fe.length===0&&(!X||W.length==0))return re[0]+$+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return X?j=s(U,W,Q,G,fe):j=fe.map(function(ee){return c(U,W,Q,G,ee,X)}),U.seen.pop(),h(j,$,re)}function n(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(d(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function a(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,le,se){for(var fe=[],G=0,J=W.length;G-1&&(fe?J=J.split(` +`).map(function(X){return" "+X}).join(` +`).slice(2):J=` +`+J.split(` +`).map(function(X){return" "+X}).join(` +`))):J=U.stylize("[Circular]","special")),E(G)){if(fe&&se.match(/^\d+$/))return J;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+J}function h(U,W,Q){var le=0,se=U.reduce(function(fe,G){return le++,G.indexOf(` +`)>=0&&le++,fe+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+` + `)+" "+U.join(`, + `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}Z.types=x3();function p(U){return Array.isArray(U)}Z.isArray=p;function d(U){return typeof U=="boolean"}Z.isBoolean=d;function T(U){return U===null}Z.isNull=T;function l(U){return U==null}Z.isNullOrUndefined=l;function _(U){return typeof U=="number"}Z.isNumber=_;function w(U){return typeof U=="string"}Z.isString=w;function M(U){return typeof U=="symbol"}Z.isSymbol=M;function E(U){return U===void 0}Z.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}Z.isRegExp=m,Z.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}Z.isObject=b;function v(U){return b(U)&&P(U)==="[object Date]"}Z.isDate=v,Z.types.isDate=v;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}Z.isError=u,Z.types.isNativeError=u;function y(U){return typeof U=="function"}Z.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}Z.isPrimitive=f,Z.isBuffer=b3();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}Z.log=function(){console.log("%s - %s",F(),Z.format.apply(Z,arguments))},Z.inherits=cp(),Z._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),le=Q.length;le--;)U[Q[le]]=W[Q[le]];return U};function O(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var B=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;Z.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(B&&W[B]){var Q=W[B];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,B,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var le,se,fe=new Promise(function($,X){le=$,se=X}),G=[],J=0;J0?this.tail.next=d:this.head=d,this.tail=d,++this.length}},{key:"unshift",value:function(p){var d={data:p,next:this.head};this.length===0&&(this.tail=d),this.head=d,++this.length}},{key:"shift",value:function(){if(this.length!==0){var p=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,p}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(p){if(this.length===0)return"";for(var d=this.head,T=""+d.data;d=d.next;)T+=p+d.data;return T}},{key:"concat",value:function(p){if(this.length===0)return o.alloc(0);for(var d=o.allocUnsafe(p>>>0),T=this.head,l=0;T;)s(T.data,d,l),l+=T.data.length,T=T.next;return d}},{key:"consume",value:function(p,d){var T;return p_.length?_.length:p;if(w===_.length?l+=_:l+=_.slice(0,p),p-=w,p===0){w===_.length?(++T,d.next?this.head=d.next:this.head=this.tail=null):(this.head=d,d.data=_.slice(w));break}++T}return this.length-=T,l}},{key:"_getBuffer",value:function(p){var d=o.allocUnsafe(p),T=this.head,l=1;for(T.data.copy(d),p-=T.data.length;T=T.next;){var _=T.data,w=p>_.length?_.length:p;if(_.copy(d,d.length-p,0,w),p-=w,p===0){w===_.length?(++l,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=_.slice(w));break}++l}return this.length-=l,d}},{key:a,value:function(p,d){return n(this,x({},d,{depth:0,customInspect:!1}))}}]),c}()}}),T3=Le({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/destroy.js"(Z,H){"use strict";function g(r,o){var i=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(e,this,r)):process.nextTick(e,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(s){!o&&s?i._writableState?i._writableState.errorEmitted?process.nextTick(A,i):(i._writableState.errorEmitted=!0,process.nextTick(x,i,s)):process.nextTick(x,i,s):o?(process.nextTick(A,i),o(s)):process.nextTick(A,i)}),this)}function x(r,o){e(r,o),A(r)}function A(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function S(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function e(r,o){r.emit("error",o)}function t(r,o){var i=r._readableState,n=r._writableState;i&&i.autoDestroy||n&&n.autoDestroy?r.destroy(o):r.emit("error",o)}H.exports={destroy:g,undestroy:S,errorOrDestroy:t}}}),Zm=Le({"node_modules/stream-browserify/node_modules/readable-stream/errors-browser.js"(Z,H){"use strict";function g(o,i){o.prototype=Object.create(i.prototype),o.prototype.constructor=o,o.__proto__=i}var x={};function A(o,i,n){n||(n=Error);function a(c,h,p){return typeof i=="string"?i:i(c,h,p)}var s=function(c){g(h,c);function h(p,d,T){return c.call(this,a(p,d,T))||this}return h}(n);s.prototype.name=n.name,s.prototype.code=o,x[o]=s}function S(o,i){if(Array.isArray(o)){var n=o.length;return o=o.map(function(a){return String(a)}),n>2?"one of ".concat(i," ").concat(o.slice(0,n-1).join(", "),", or ")+o[n-1]:n===2?"one of ".concat(i," ").concat(o[0]," or ").concat(o[1]):"of ".concat(i," ").concat(o[0])}else return"of ".concat(i," ").concat(String(o))}function e(o,i,n){return o.substr(!n||n<0?0:+n,i.length)===i}function t(o,i,n){return(n===void 0||n>o.length)&&(n=o.length),o.substring(n-i.length,n)===i}function r(o,i,n){return typeof n!="number"&&(n=0),n+i.length>o.length?!1:o.indexOf(i,n)!==-1}A("ERR_INVALID_OPT_VALUE",function(o,i){return'The value "'+i+'" is invalid for option "'+o+'"'},TypeError),A("ERR_INVALID_ARG_TYPE",function(o,i,n){var a;typeof i=="string"&&e(i,"not ")?(a="must not be",i=i.replace(/^not /,"")):a="must be";var s;if(t(o," argument"))s="The ".concat(o," ").concat(a," ").concat(S(i,"type"));else{var c=r(o,".")?"property":"argument";s='The "'.concat(o,'" ').concat(c," ").concat(a," ").concat(S(i,"type"))}return s+=". Received type ".concat(typeof n),s},TypeError),A("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),A("ERR_METHOD_NOT_IMPLEMENTED",function(o){return"The "+o+" method is not implemented"}),A("ERR_STREAM_PREMATURE_CLOSE","Premature close"),A("ERR_STREAM_DESTROYED",function(o){return"Cannot call "+o+" after a stream was destroyed"}),A("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),A("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),A("ERR_STREAM_WRITE_AFTER_END","write after end"),A("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),A("ERR_UNKNOWN_ENCODING",function(o){return"Unknown encoding: "+o},TypeError),A("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),H.exports.codes=x}}),A3=Le({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(Z,H){"use strict";var g=Zm().codes.ERR_INVALID_OPT_VALUE;function x(S,e,t){return S.highWaterMark!=null?S.highWaterMark:e?S[t]:null}function A(S,e,t,r){var o=x(e,r,t);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var i=r?t:"highWaterMark";throw new g(i,o)}return Math.floor(o)}return S.objectMode?16:16*1024}H.exports={getHighWaterMark:A}}}),YC=Le({"node_modules/util-deprecate/browser.js"(Z,H){H.exports=g;function g(A,S){if(x("noDeprecation"))return A;var e=!1;function t(){if(!e){if(x("throwDeprecation"))throw new Error(S);x("traceDeprecation")?console.trace(S):console.warn(S),e=!0}return A.apply(this,arguments)}return t}function x(A){try{if(!window.localStorage)return!1}catch{return!1}var S=window.localStorage[A];return S==null?!1:String(S).toLowerCase()==="true"}}}),M3=Le({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(Z,H){"use strict";H.exports=v;function g(G){var J=this;this.next=null,this.entry=null,this.finish=function(){fe(J,G)}}var x;v.WritableState=m;var A={deprecate:YC()},S=p3(),e=Xm().Buffer,t=window.Uint8Array||function(){};function r(G){return e.from(G)}function o(G){return e.isBuffer(G)||G instanceof t}var i=T3(),n=A3(),a=n.getHighWaterMark,s=Zm().codes,c=s.ERR_INVALID_ARG_TYPE,h=s.ERR_METHOD_NOT_IMPLEMENTED,p=s.ERR_MULTIPLE_CALLBACK,d=s.ERR_STREAM_CANNOT_PIPE,T=s.ERR_STREAM_DESTROYED,l=s.ERR_STREAM_NULL_VALUES,_=s.ERR_STREAM_WRITE_AFTER_END,w=s.ERR_UNKNOWN_ENCODING,M=i.errorOrDestroy;cp()(v,S);function E(){}function m(G,J,$){x=x||Ym(),G=G||{},typeof $!="boolean"&&($=J instanceof x),this.objectMode=!!G.objectMode,$&&(this.objectMode=this.objectMode||!!G.writableObjectMode),this.highWaterMark=a(this,G,"writableHighWaterMark",$),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var X=G.decodeStrings===!1;this.decodeStrings=!X,this.defaultEncoding=G.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(re){O(J,re)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=G.emitClose!==!1,this.autoDestroy=!!G.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new g(this)}m.prototype.getBuffer=function(){for(var J=this.bufferedRequest,$=[];J;)$.push(J),J=J.next;return $},function(){try{Object.defineProperty(m.prototype,"buffer",{get:A.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var b;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(b=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(J){return b.call(this,J)?!0:this!==v?!1:J&&J._writableState instanceof m}})):b=function(J){return J instanceof this};function v(G){x=x||Ym();var J=this instanceof x;if(!J&&!b.call(v,this))return new v(G);this._writableState=new m(G,this,J),this.writable=!0,G&&(typeof G.write=="function"&&(this._write=G.write),typeof G.writev=="function"&&(this._writev=G.writev),typeof G.destroy=="function"&&(this._destroy=G.destroy),typeof G.final=="function"&&(this._final=G.final)),S.call(this)}v.prototype.pipe=function(){M(this,new d)};function u(G,J){var $=new _;M(G,$),process.nextTick(J,$)}function y(G,J,$,X){var re;return $===null?re=new l:typeof $!="string"&&!J.objectMode&&(re=new c("chunk",["string","Buffer"],$)),re?(M(G,re),process.nextTick(X,re),!1):!0}v.prototype.write=function(G,J,$){var X=this._writableState,re=!1,ae=!X.objectMode&&o(G);return ae&&!e.isBuffer(G)&&(G=r(G)),typeof J=="function"&&($=J,J=null),ae?J="buffer":J||(J=X.defaultEncoding),typeof $!="function"&&($=E),X.ending?u(this,$):(ae||y(this,X,G,$))&&(X.pendingcb++,re=P(this,X,ae,G,J,$)),re},v.prototype.cork=function(){this._writableState.corked++},v.prototype.uncork=function(){var G=this._writableState;G.corked&&(G.corked--,!G.writing&&!G.corked&&!G.bufferProcessing&&G.bufferedRequest&&N(this,G))},v.prototype.setDefaultEncoding=function(J){if(typeof J=="string"&&(J=J.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((J+"").toLowerCase())>-1))throw new w(J);return this._writableState.defaultEncoding=J,this},Object.defineProperty(v.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function f(G,J,$){return!G.objectMode&&G.decodeStrings!==!1&&typeof J=="string"&&(J=e.from(J,$)),J}Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function P(G,J,$,X,re,ae){if(!$){var j=f(J,X,re);X!==j&&($=!0,re="buffer",X=j)}var ee=J.objectMode?1:X.length;J.length+=ee;var ne=J.length>5===6?2:T>>4===14?3:T>>3===30?4:T>>6===2?-1:-2}function t(T,l,_){var w=l.length-1;if(w<_)return 0;var M=e(l[w]);return M>=0?(M>0&&(T.lastNeed=M-1),M):--w<_||M===-2?0:(M=e(l[w]),M>=0?(M>0&&(T.lastNeed=M-2),M):--w<_||M===-2?0:(M=e(l[w]),M>=0?(M>0&&(M===2?M=0:T.lastNeed=M-3),M):0))}function r(T,l,_){if((l[0]&192)!==128)return T.lastNeed=0,"\uFFFD";if(T.lastNeed>1&&l.length>1){if((l[1]&192)!==128)return T.lastNeed=1,"\uFFFD";if(T.lastNeed>2&&l.length>2&&(l[2]&192)!==128)return T.lastNeed=2,"\uFFFD"}}function o(T){var l=this.lastTotal-this.lastNeed,_=r(this,T,l);if(_!==void 0)return _;if(this.lastNeed<=T.length)return T.copy(this.lastChar,l,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,l,0,T.length),this.lastNeed-=T.length}function i(T,l){var _=t(this,T,l);if(!this.lastNeed)return T.toString("utf8",l);this.lastTotal=_;var w=T.length-(_-this.lastNeed);return T.copy(this.lastChar,0,w),T.toString("utf8",l,w)}function n(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+"\uFFFD":l}function a(T,l){if((T.length-l)%2===0){var _=T.toString("utf16le",l);if(_){var w=_.charCodeAt(_.length-1);if(w>=55296&&w<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1],_.slice(0,-1)}return _}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=T[T.length-1],T.toString("utf16le",l,T.length-1)}function s(T){var l=T&&T.length?this.write(T):"";if(this.lastNeed){var _=this.lastTotal-this.lastNeed;return l+this.lastChar.toString("utf16le",0,_)}return l}function c(T,l){var _=(T.length-l)%3;return _===0?T.toString("base64",l):(this.lastNeed=3-_,this.lastTotal=3,_===1?this.lastChar[0]=T[T.length-1]:(this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1]),T.toString("base64",l,T.length-_))}function h(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+this.lastChar.toString("base64",0,3-this.lastNeed):l}function p(T){return T.toString(this.encoding)}function d(T){return T&&T.length?this.write(T):""}}}),gx=Le({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(Z,H){"use strict";var g=Zm().codes.ERR_STREAM_PREMATURE_CLOSE;function x(t){var r=!1;return function(){if(!r){r=!0;for(var o=arguments.length,i=new Array(o),n=0;n0)if(typeof ee!="string"&&!we.objectMode&&Object.getPrototypeOf(ee)!==e.prototype&&(ee=r(ee)),ce)we.endEmitted?m(j,new _):P(j,we,ee,!0);else if(we.ended)m(j,new T);else{if(we.destroyed)return!1;we.reading=!1,we.decoder&&!ne?(ee=we.decoder.write(ee),we.objectMode||ee.length!==0?P(j,we,ee,!1):U(j,we)):P(j,we,ee,!1)}else ce||(we.reading=!1,U(j,we))}return!we.ended&&(we.length=z?j=z:(j--,j|=j>>>1,j|=j>>>2,j|=j>>>4,j|=j>>>8,j|=j>>>16,j++),j}function O(j,ee){return j<=0||ee.length===0&&ee.ended?0:ee.objectMode?1:j!==j?ee.flowing&&ee.length?ee.buffer.head.data.length:ee.length:(j>ee.highWaterMark&&(ee.highWaterMark=F(j)),j<=ee.length?j:ee.ended?ee.length:(ee.needReadable=!0,0))}y.prototype.read=function(j){n("read",j),j=parseInt(j,10);var ee=this._readableState,ne=j;if(j!==0&&(ee.emittedReadable=!1),j===0&&ee.needReadable&&((ee.highWaterMark!==0?ee.length>=ee.highWaterMark:ee.length>0)||ee.ended))return n("read: emitReadable",ee.length,ee.ended),ee.length===0&&ee.ended?X(this):I(this),null;if(j=O(j,ee),j===0&&ee.ended)return ee.length===0&&X(this),null;var ce=ee.needReadable;n("need readable",ce),(ee.length===0||ee.length-j0?_e=$(j,ee):_e=null,_e===null?(ee.needReadable=ee.length<=ee.highWaterMark,j=0):(ee.length-=j,ee.awaitDrain=0),ee.length===0&&(ee.ended||(ee.needReadable=!0),ne!==j&&ee.ended&&X(this)),_e!==null&&this.emit("data",_e),_e};function B(j,ee){if(n("onEofChunk"),!ee.ended){if(ee.decoder){var ne=ee.decoder.end();ne&&ne.length&&(ee.buffer.push(ne),ee.length+=ee.objectMode?1:ne.length)}ee.ended=!0,ee.sync?I(j):(ee.needReadable=!1,ee.emittedReadable||(ee.emittedReadable=!0,N(j)))}}function I(j){var ee=j._readableState;n("emitReadable",ee.needReadable,ee.emittedReadable),ee.needReadable=!1,ee.emittedReadable||(n("emitReadable",ee.flowing),ee.emittedReadable=!0,process.nextTick(N,j))}function N(j){var ee=j._readableState;n("emitReadable_",ee.destroyed,ee.length,ee.ended),!ee.destroyed&&(ee.length||ee.ended)&&(j.emit("readable"),ee.emittedReadable=!1),ee.needReadable=!ee.flowing&&!ee.ended&&ee.length<=ee.highWaterMark,J(j)}function U(j,ee){ee.readingMore||(ee.readingMore=!0,process.nextTick(W,j,ee))}function W(j,ee){for(;!ee.reading&&!ee.ended&&(ee.length1&&ae(ce.pipes,j)!==-1)&&!tt&&(n("false write response, pause",ce.awaitDrain),ce.awaitDrain++),ne.pause())}function ot(ze){n("onerror",ze),ue(),j.removeListener("error",ot),A(j,"error")===0&&m(j,ze)}v(j,"error",ot);function Me(){j.removeListener("finish",pe),ue()}j.once("close",Me);function pe(){n("onfinish"),j.removeListener("close",Me),ue()}j.once("finish",pe);function ue(){n("unpipe"),ne.unpipe(j)}return j.emit("pipe",ne),ce.flowing||(n("pipe resume"),ne.resume()),j};function Q(j){return function(){var ne=j._readableState;n("pipeOnDrain",ne.awaitDrain),ne.awaitDrain&&ne.awaitDrain--,ne.awaitDrain===0&&A(j,"data")&&(ne.flowing=!0,J(j))}}y.prototype.unpipe=function(j){var ee=this._readableState,ne={hasUnpiped:!1};if(ee.pipesCount===0)return this;if(ee.pipesCount===1)return j&&j!==ee.pipes?this:(j||(j=ee.pipes),ee.pipes=null,ee.pipesCount=0,ee.flowing=!1,j&&j.emit("unpipe",this,ne),this);if(!j){var ce=ee.pipes,_e=ee.pipesCount;ee.pipes=null,ee.pipesCount=0,ee.flowing=!1;for(var we=0;we<_e;we++)ce[we].emit("unpipe",this,{hasUnpiped:!1});return this}var Oe=ae(ee.pipes,j);return Oe===-1?this:(ee.pipes.splice(Oe,1),ee.pipesCount-=1,ee.pipesCount===1&&(ee.pipes=ee.pipes[0]),j.emit("unpipe",this,ne),this)},y.prototype.on=function(j,ee){var ne=S.prototype.on.call(this,j,ee),ce=this._readableState;return j==="data"?(ce.readableListening=this.listenerCount("readable")>0,ce.flowing!==!1&&this.resume()):j==="readable"&&!ce.endEmitted&&!ce.readableListening&&(ce.readableListening=ce.needReadable=!0,ce.flowing=!1,ce.emittedReadable=!1,n("on readable",ce.length,ce.reading),ce.length?I(this):ce.reading||process.nextTick(se,this)),ne},y.prototype.addListener=y.prototype.on,y.prototype.removeListener=function(j,ee){var ne=S.prototype.removeListener.call(this,j,ee);return j==="readable"&&process.nextTick(le,this),ne},y.prototype.removeAllListeners=function(j){var ee=S.prototype.removeAllListeners.apply(this,arguments);return(j==="readable"||j===void 0)&&process.nextTick(le,this),ee};function le(j){var ee=j._readableState;ee.readableListening=j.listenerCount("readable")>0,ee.resumeScheduled&&!ee.paused?ee.flowing=!0:j.listenerCount("data")>0&&j.resume()}function se(j){n("readable nexttick read 0"),j.read(0)}y.prototype.resume=function(){var j=this._readableState;return j.flowing||(n("resume"),j.flowing=!j.readableListening,fe(this,j)),j.paused=!1,this};function fe(j,ee){ee.resumeScheduled||(ee.resumeScheduled=!0,process.nextTick(G,j,ee))}function G(j,ee){n("resume",ee.reading),ee.reading||j.read(0),ee.resumeScheduled=!1,j.emit("resume"),J(j),ee.flowing&&!ee.reading&&j.read(0)}y.prototype.pause=function(){return n("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(n("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function J(j){var ee=j._readableState;for(n("flow",ee.flowing);ee.flowing&&j.read()!==null;);}y.prototype.wrap=function(j){var ee=this,ne=this._readableState,ce=!1;j.on("end",function(){if(n("wrapped end"),ne.decoder&&!ne.ended){var Oe=ne.decoder.end();Oe&&Oe.length&&ee.push(Oe)}ee.push(null)}),j.on("data",function(Oe){if(n("wrapped data"),ne.decoder&&(Oe=ne.decoder.write(Oe)),!(ne.objectMode&&Oe==null)&&!(!ne.objectMode&&(!Oe||!Oe.length))){var Ie=ee.push(Oe);Ie||(ce=!0,j.pause())}});for(var _e in j)this[_e]===void 0&&typeof j[_e]=="function"&&(this[_e]=function(Ie){return function(){return j[Ie].apply(j,arguments)}}(_e));for(var we=0;we=ee.length?(ee.decoder?ne=ee.buffer.join(""):ee.buffer.length===1?ne=ee.buffer.first():ne=ee.buffer.concat(ee.length),ee.buffer.clear()):ne=ee.buffer.consume(j,ee.decoder),ne}function X(j){var ee=j._readableState;n("endReadable",ee.endEmitted),ee.endEmitted||(ee.ended=!0,process.nextTick(re,ee,j))}function re(j,ee){if(n("endReadableNT",j.endEmitted,j.length),!j.endEmitted&&j.length===0&&(j.endEmitted=!0,ee.readable=!1,ee.emit("end"),j.autoDestroy)){var ne=ee._writableState;(!ne||ne.autoDestroy&&ne.finished)&&ee.destroy()}}typeof Symbol=="function"&&(y.from=function(j,ee){return E===void 0&&(E=JC()),E(y,j,ee)});function ae(j,ee){for(var ne=0,ce=j.length;ne0;return o(_,M,E,function(m){T||(T=m),m&&l.forEach(i),!M&&(l.forEach(i),d(T))})});return h.reduce(n)}H.exports=s}}),tL=Le({"node_modules/stream-browserify/index.js"(Z,H){H.exports=A;var g=Om().EventEmitter,x=cp();x(A,g),A.Readable=E3(),A.Writable=M3(),A.Duplex=Ym(),A.Transform=k3(),A.PassThrough=QC(),A.finished=gx(),A.pipeline=eL(),A.Stream=A;function A(){g.call(this)}A.prototype.pipe=function(S,e){var t=this;function r(h){S.writable&&S.write(h)===!1&&t.pause&&t.pause()}t.on("data",r);function o(){t.readable&&t.resume&&t.resume()}S.on("drain",o),!S._isStdio&&(!e||e.end!==!1)&&(t.on("end",n),t.on("close",a));var i=!1;function n(){i||(i=!0,S.end())}function a(){i||(i=!0,typeof S.destroy=="function"&&S.destroy())}function s(h){if(c(),g.listenerCount(this,"error")===0)throw h}t.on("error",s),S.on("error",s);function c(){t.removeListener("data",r),S.removeListener("drain",o),t.removeListener("end",n),t.removeListener("close",a),t.removeListener("error",s),S.removeListener("error",s),t.removeListener("end",c),t.removeListener("close",c),S.removeListener("close",c)}return t.on("end",c),t.on("close",c),S.on("close",c),S.emit("pipe",t),S}}}),f0=Le({"node_modules/util/util.js"(Z){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),le={},se=0;se=se)return J;switch(J){case"%s":return String(le[Q++]);case"%d":return Number(le[Q++]);case"%j":try{return JSON.stringify(le[Q++])}catch{return"[Circular]"}default:return J}}),G=le[Q];Q"u")return function(){return Z.deprecate(U,W).apply(this,arguments)};var Q=!1;function le(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return le};var x={},A=/^$/;S="false",S=S.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+S+"$","i");var S;Z.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=Z.format.apply(Z,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),d(W)?Q.showHidden=W:W&&Z._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),i(Q,U,Q.depth)}Z.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,le){W[Q]=!0}),W}function i(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==Z.inspect&&!(W.constructor&&W.constructor.prototype===W)){var le=W.inspect(Q,U);return w(le)||(le=i(U,le,Q)),le}var se=n(U,W);if(se)return se;var fe=Object.keys(W),G=o(fe);if(U.showHidden&&(fe=Object.getOwnPropertyNames(W)),u(W)&&(fe.indexOf("message")>=0||fe.indexOf("description")>=0))return a(W);if(fe.length===0){if(y(W)){var J=W.name?": "+W.name:"";return U.stylize("[Function"+J+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(v(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return a(W)}var $="",X=!1,re=["{","}"];if(p(W)&&(X=!0,re=["[","]"]),y(W)){var ae=W.name?": "+W.name:"";$=" [Function"+ae+"]"}if(m(W)&&($=" "+RegExp.prototype.toString.call(W)),v(W)&&($=" "+Date.prototype.toUTCString.call(W)),u(W)&&($=" "+a(W)),fe.length===0&&(!X||W.length==0))return re[0]+$+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return X?j=s(U,W,Q,G,fe):j=fe.map(function(ee){return c(U,W,Q,G,ee,X)}),U.seen.pop(),h(j,$,re)}function n(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(d(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function a(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,le,se){for(var fe=[],G=0,J=W.length;G-1&&(fe?J=J.split(` +`).map(function(X){return" "+X}).join(` +`).slice(2):J=` +`+J.split(` +`).map(function(X){return" "+X}).join(` +`))):J=U.stylize("[Circular]","special")),E(G)){if(fe&&se.match(/^\d+$/))return J;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+J}function h(U,W,Q){var le=0,se=U.reduce(function(fe,G){return le++,G.indexOf(` +`)>=0&&le++,fe+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+` + `)+" "+U.join(`, + `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}Z.types=x3();function p(U){return Array.isArray(U)}Z.isArray=p;function d(U){return typeof U=="boolean"}Z.isBoolean=d;function T(U){return U===null}Z.isNull=T;function l(U){return U==null}Z.isNullOrUndefined=l;function _(U){return typeof U=="number"}Z.isNumber=_;function w(U){return typeof U=="string"}Z.isString=w;function M(U){return typeof U=="symbol"}Z.isSymbol=M;function E(U){return U===void 0}Z.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}Z.isRegExp=m,Z.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}Z.isObject=b;function v(U){return b(U)&&P(U)==="[object Date]"}Z.isDate=v,Z.types.isDate=v;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}Z.isError=u,Z.types.isNativeError=u;function y(U){return typeof U=="function"}Z.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}Z.isPrimitive=f,Z.isBuffer=b3();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}Z.log=function(){console.log("%s - %s",F(),Z.format.apply(Z,arguments))},Z.inherits=cp(),Z._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),le=Q.length;le--;)U[Q[le]]=W[Q[le]];return U};function O(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var B=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;Z.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(B&&W[B]){var Q=W[B];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,B,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var le,se,fe=new Promise(function($,X){le=$,se=X}),G=[],J=0;J"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function c(E){return c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(b){return b.__proto__||Object.getPrototypeOf(b)},c(E)}var h={},p,d;function T(E,m,b){b||(b=Error);function v(y,f,P){return typeof m=="string"?m:m(y,f,P)}var u=function(y){r(P,y);var f=i(P);function P(L,z,F){var O;return t(this,P),O=f.call(this,v(L,z,F)),O.code=E,O}return A(P)}(b);h[E]=u}function l(E,m){if(Array.isArray(E)){var b=E.length;return E=E.map(function(v){return String(v)}),b>2?"one of ".concat(m," ").concat(E.slice(0,b-1).join(", "),", or ")+E[b-1]:b===2?"one of ".concat(m," ").concat(E[0]," or ").concat(E[1]):"of ".concat(m," ").concat(E[0])}else return"of ".concat(m," ").concat(String(E))}function _(E,m,b){return E.substr(!b||b<0?0:+b,m.length)===m}function w(E,m,b){return(b===void 0||b>E.length)&&(b=E.length),E.substring(b-m.length,b)===m}function M(E,m,b){return typeof b!="number"&&(b=0),b+m.length>E.length?!1:E.indexOf(m,b)!==-1}T("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),T("ERR_INVALID_ARG_TYPE",function(E,m,b){p===void 0&&(p=Ly()),p(typeof E=="string","'name' must be a string");var v;typeof m=="string"&&_(m,"not ")?(v="must not be",m=m.replace(/^not /,"")):v="must be";var u;if(w(E," argument"))u="The ".concat(E," ").concat(v," ").concat(l(m,"type"));else{var y=M(E,".")?"property":"argument";u='The "'.concat(E,'" ').concat(y," ").concat(v," ").concat(l(m,"type"))}return u+=". Received type ".concat(g(b)),u},TypeError),T("ERR_INVALID_ARG_VALUE",function(E,m){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";d===void 0&&(d=f0());var v=d.inspect(m);return v.length>128&&(v="".concat(v.slice(0,128),"...")),"The argument '".concat(E,"' ").concat(b,". Received ").concat(v)},TypeError,RangeError),T("ERR_INVALID_RETURN_VALUE",function(E,m,b){var v;return b&&b.constructor&&b.constructor.name?v="instance of ".concat(b.constructor.name):v="type ".concat(g(b)),"Expected ".concat(E,' to be returned from the "').concat(m,'"')+" function but got ".concat(v,".")},TypeError),T("ERR_MISSING_ARGS",function(){for(var E=arguments.length,m=new Array(E),b=0;b0,"At least one arg needs to be specified");var v="The ",u=m.length;switch(m=m.map(function(y){return'"'.concat(y,'"')}),u){case 1:v+="".concat(m[0]," argument");break;case 2:v+="".concat(m[0]," and ").concat(m[1]," arguments");break;default:v+=m.slice(0,u-1).join(", "),v+=", and ".concat(m[u-1]," arguments");break}return"".concat(v," must be specified")},TypeError),H.exports.codes=h}}),rL=Le({"node_modules/assert/build/internal/assert/assertion_error.js"(Z,H){"use strict";function g(N,U){var W=Object.keys(N);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(N);U&&(Q=Q.filter(function(le){return Object.getOwnPropertyDescriptor(N,le).enumerable})),W.push.apply(W,Q)}return W}function x(N){for(var U=1;U"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function d(N){return Function.toString.call(N).indexOf("[native code]")!==-1}function T(N,U){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Q,le){return Q.__proto__=le,Q},T(N,U)}function l(N){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(W){return W.__proto__||Object.getPrototypeOf(W)},l(N)}function _(N){"@babel/helpers - typeof";return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},_(N)}var w=f0(),M=w.inspect,E=C3(),m=E.codes.ERR_INVALID_ARG_TYPE;function b(N,U,W){return(W===void 0||W>N.length)&&(W=N.length),N.substring(W-U.length,W)===U}function v(N,U){if(U=Math.floor(U),N.length==0||U==0)return"";var W=N.length*U;for(U=Math.floor(Math.log(U)/Math.log(2));U;)N+=N,U--;return N+=N.substring(0,W-N.length),N}var u="",y="",f="",P="",L={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},z=10;function F(N){var U=Object.keys(N),W=Object.create(Object.getPrototypeOf(N));return U.forEach(function(Q){W[Q]=N[Q]}),Object.defineProperty(W,"message",{value:N.message}),W}function O(N){return M(N,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function B(N,U,W){var Q="",le="",se=0,fe="",G=!1,J=O(N),$=J.split(` +`),X=O(U).split(` +`),re=0,ae="";if(W==="strictEqual"&&_(N)==="object"&&_(U)==="object"&&N!==null&&U!==null&&(W="strictEqualObject"),$.length===1&&X.length===1&&$[0]!==X[0]){var j=$[0].length+X[0].length;if(j<=z){if((_(N)!=="object"||N===null)&&(_(U)!=="object"||U===null)&&(N!==0||U!==0))return"".concat(L[W],` + +`)+"".concat($[0]," !== ").concat(X[0],` +`)}else if(W!=="strictEqualObject"){var ee=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(j2&&(ae=` + `.concat(v(" ",re),"^"),re=0)}}}for(var ne=$[$.length-1],ce=X[X.length-1];ne===ce&&(re++<2?fe=` + `.concat(ne).concat(fe):Q=ne,$.pop(),X.pop(),!($.length===0||X.length===0));)ne=$[$.length-1],ce=X[X.length-1];var _e=Math.max($.length,X.length);if(_e===0){var we=J.split(` +`);if(we.length>30)for(we[26]="".concat(u,"...").concat(P);we.length>27;)we.pop();return"".concat(L.notIdentical,` + +`).concat(we.join(` +`),` +`)}re>3&&(fe=` +`.concat(u,"...").concat(P).concat(fe),G=!0),Q!==""&&(fe=` + `.concat(Q).concat(fe),Q="");var Oe=0,Ie=L[W]+` +`.concat(y,"+ actual").concat(P," ").concat(f,"- expected").concat(P),Xe=" ".concat(u,"...").concat(P," Lines skipped");for(re=0;re<_e;re++){var tt=re-se;if($.length1&&re>2&&(tt>4?(le+=` +`.concat(u,"...").concat(P),G=!0):tt>3&&(le+=` + `.concat(X[re-2]),Oe++),le+=` + `.concat(X[re-1]),Oe++),se=re,Q+=` +`.concat(f,"-").concat(P," ").concat(X[re]),Oe++;else if(X.length1&&re>2&&(tt>4?(le+=` +`.concat(u,"...").concat(P),G=!0):tt>3&&(le+=` + `.concat($[re-2]),Oe++),le+=` + `.concat($[re-1]),Oe++),se=re,le+=` +`.concat(y,"+").concat(P," ").concat($[re]),Oe++;else{var rt=X[re],Je=$[re],ot=Je!==rt&&(!b(Je,",")||Je.slice(0,-1)!==rt);ot&&b(rt,",")&&rt.slice(0,-1)===Je&&(ot=!1,Je+=","),ot?(tt>1&&re>2&&(tt>4?(le+=` +`.concat(u,"...").concat(P),G=!0):tt>3&&(le+=` + `.concat($[re-2]),Oe++),le+=` + `.concat($[re-1]),Oe++),se=re,le+=` +`.concat(y,"+").concat(P," ").concat(Je),Q+=` +`.concat(f,"-").concat(P," ").concat(rt),Oe+=2):(le+=Q,Q="",(tt===1||re===0)&&(le+=` + `.concat(Je),Oe++))}if(Oe>20&&re<_e-2)return"".concat(Ie).concat(Xe,` +`).concat(le,` +`).concat(u,"...").concat(P).concat(Q,` +`)+"".concat(u,"...").concat(P)}return"".concat(Ie).concat(G?Xe:"",` +`).concat(le).concat(Q).concat(fe).concat(ae)}var I=function(N,U){i(Q,N);var W=n(Q);function Q(le){var se;if(S(this,Q),_(le)!=="object"||le===null)throw new m("options","Object",le);var fe=le.message,G=le.operator,J=le.stackStartFn,$=le.actual,X=le.expected,re=Error.stackTraceLimit;if(Error.stackTraceLimit=0,fe!=null)se=W.call(this,String(fe));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(u="\x1B[34m",y="\x1B[32m",P="\x1B[39m",f="\x1B[31m"):(u="",y="",P="",f="")),_($)==="object"&&$!==null&&_(X)==="object"&&X!==null&&"stack"in $&&$ instanceof Error&&"stack"in X&&X instanceof Error&&($=F($),X=F(X)),G==="deepStrictEqual"||G==="strictEqual")se=W.call(this,B($,X,G));else if(G==="notDeepStrictEqual"||G==="notStrictEqual"){var ae=L[G],j=O($).split(` +`);if(G==="notStrictEqual"&&_($)==="object"&&$!==null&&(ae=L.notStrictEqualObject),j.length>30)for(j[26]="".concat(u,"...").concat(P);j.length>27;)j.pop();j.length===1?se=W.call(this,"".concat(ae," ").concat(j[0])):se=W.call(this,"".concat(ae,` + +`).concat(j.join(` +`),` +`))}else{var ee=O($),ne="",ce=L[G];G==="notDeepEqual"||G==="notEqual"?(ee="".concat(L[G],` + +`).concat(ee),ee.length>1024&&(ee="".concat(ee.slice(0,1021),"..."))):(ne="".concat(O(X)),ee.length>512&&(ee="".concat(ee.slice(0,509),"...")),ne.length>512&&(ne="".concat(ne.slice(0,509),"...")),G==="deepEqual"||G==="equal"?ee="".concat(ce,` + +`).concat(ee,` + +should equal + +`):ne=" ".concat(G," ").concat(ne)),se=W.call(this,"".concat(ee).concat(ne))}return Error.stackTraceLimit=re,se.generatedMessage=!fe,Object.defineProperty(s(se),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),se.code="ERR_ASSERTION",se.actual=$,se.expected=X,se.operator=G,Error.captureStackTrace&&Error.captureStackTrace(s(se),J),se.stack,se.name="AssertionError",a(se)}return t(Q,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:U,value:function(se,fe){return M(this,x(x({},fe),{},{customInspect:!1,depth:0}))}}]),Q}(c(Error),M.custom);H.exports=I}}),L3=Le({"node_modules/object-keys/isArguments.js"(Z,H){"use strict";var g=Object.prototype.toString;H.exports=function(A){var S=g.call(A),e=S==="[object Arguments]";return e||(e=S!=="[object Array]"&&A!==null&&typeof A=="object"&&typeof A.length=="number"&&A.length>=0&&g.call(A.callee)==="[object Function]"),e}}}),iL=Le({"node_modules/object-keys/implementation.js"(Z,H){"use strict";var g;Object.keys||(x=Object.prototype.hasOwnProperty,A=Object.prototype.toString,S=L3(),e=Object.prototype.propertyIsEnumerable,t=!e.call({toString:null},"toString"),r=e.call(function(){},"prototype"),o=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],i=function(c){var h=c.constructor;return h&&h.prototype===c},n={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},a=function(){if(typeof window>"u")return!1;for(var c in window)try{if(!n["$"+c]&&x.call(window,c)&&window[c]!==null&&typeof window[c]=="object")try{i(window[c])}catch{return!0}}catch{return!0}return!1}(),s=function(c){if(typeof window>"u"||!a)return i(c);try{return i(c)}catch{return!1}},g=function(h){var p=h!==null&&typeof h=="object",d=A.call(h)==="[object Function]",T=S(h),l=p&&A.call(h)==="[object String]",_=[];if(!p&&!d&&!T)throw new TypeError("Object.keys called on a non-object");var w=r&&d;if(l&&h.length>0&&!x.call(h,0))for(var M=0;M0)for(var E=0;E2?arguments[2]:{},h=g(s);x&&(h=S.call(h,Object.getOwnPropertySymbols(s)));for(var p=0;pMe.length)&&(pe=Me.length);for(var ue=0,ze=new Array(pe);ue10)return!0;for(var pe=0;pe57)return!0}return Me.length===10&&Me>=Math.pow(2,32)}function I(Me){return Object.keys(Me).filter(B).concat(s(Me).filter(Object.prototype.propertyIsEnumerable.bind(Me)))}function N(Me,pe){if(Me===pe)return 0;for(var ue=Me.length,ze=pe.length,Qe=0,it=Math.min(ue,ze);Qe1?X-1:0),ae=1;ae1?X-1:0),ae=1;ae1?X-1:0),ae=1;ae1?X-1:0),ae=1;ae0)return t(n);if(s==="number"&&isNaN(n)===!1)return a.long?o(n):r(n);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(n))};function t(n){if(n=String(n),!(n.length>100)){var a=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(n);if(a){var s=parseFloat(a[1]),c=(a[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*e;case"days":case"day":case"d":return s*S;case"hours":case"hour":case"hrs":case"hr":case"h":return s*A;case"minutes":case"minute":case"mins":case"min":case"m":return s*x;case"seconds":case"second":case"secs":case"sec":case"s":return s*g;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function r(n){return n>=S?Math.round(n/S)+"d":n>=A?Math.round(n/A)+"h":n>=x?Math.round(n/x)+"m":n>=g?Math.round(n/g)+"s":n+"ms"}function o(n){return i(n,S,"day")||i(n,A,"hour")||i(n,x,"minute")||i(n,g,"second")||n+" ms"}function i(n,a,s){if(!(n=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Z.formatters.j=function(r){try{return JSON.stringify(r)}catch(o){return"[UnexpectedJSONParseError]: "+o.message}};function x(r){var o=this.useColors;if(r[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+r[0]+(o?"%c ":" ")+"+"+Z.humanize(this.diff),!!o){var i="color: "+this.color;r.splice(1,0,i,"color: inherit");var n=0,a=0;r[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(n++,s==="%c"&&(a=n))}),r.splice(a,0,i)}}function A(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function S(r){try{r==null?Z.storage.removeItem("debug"):Z.storage.debug=r}catch{}}function e(){var r;try{r=Z.storage.debug}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}Z.enable(e());function t(){try{return window.localStorage}catch{}}}}),vL=Le({"node_modules/stream-parser/index.js"(Z,H){var g=Ly(),x=dL()("stream-parser");H.exports=r;var A=-1,S=0,e=1,t=2;function r(l){var _=l&&typeof l._transform=="function",w=l&&typeof l._write=="function";if(!_&&!w)throw new Error("must pass a Writable or Transform stream in");x("extending Parser into stream"),l._bytes=i,l._skipBytes=n,_&&(l._passthrough=a),_?l._transform=c:l._write=s}function o(l){x("initializing parser stream"),l._parserBytesLeft=0,l._parserBuffers=[],l._parserBuffered=0,l._parserState=A,l._parserCallback=null,typeof l.push=="function"&&(l._parserOutput=l.push.bind(l)),l._parserInit=!0}function i(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(isFinite(l)&&l>0,'can only buffer a finite number of bytes > 0, got "'+l+'"'),this._parserInit||o(this),x("buffering %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=S}function n(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(l>0,'can only skip > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("skipping %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=e}function a(l,_){g(!this._parserCallback,'There is already a "callback" set!'),g(l>0,'can only pass through > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("passing through %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=t}function s(l,_,w){this._parserInit||o(this),x("write(%o bytes)",l.length),typeof _=="function"&&(w=_),d(this,l,null,w)}function c(l,_,w){this._parserInit||o(this),x("transform(%o bytes)",l.length),typeof _!="function"&&(_=this._parserOutput),d(this,l,_,w)}function h(l,_,w,M){return l._parserBytesLeft<=0?M(new Error("got data but not currently parsing anything")):_.length<=l._parserBytesLeft?function(){return p(l,_,w,M)}:function(){var E=_.slice(0,l._parserBytesLeft);return p(l,E,w,function(m){if(m)return M(m);if(_.length>E.length)return function(){return h(l,_.slice(E.length),w,M)}})}}function p(l,_,w,M){if(l._parserBytesLeft-=_.length,x("%o bytes left for stream piece",l._parserBytesLeft),l._parserState===S?(l._parserBuffers.push(_),l._parserBuffered+=_.length):l._parserState===t&&w(_),l._parserBytesLeft===0){var E=l._parserCallback;if(E&&l._parserState===S&&l._parserBuffers.length>1&&(_=Buffer.concat(l._parserBuffers,l._parserBuffered)),l._parserState!==S&&(_=null),l._parserCallback=null,l._parserBuffered=0,l._parserState=A,l._parserBuffers.splice(0),E){var m=[];_&&m.push(_),w&&m.push(w);var b=E.length>m.length;b&&m.push(T(M));var v=E.apply(l,m);if(!b||M===v)return M}}else return M}var d=T(h);function T(l){return function(){for(var _=l.apply(this,arguments);typeof _=="function";)_=_();return _}}}}),Lu=Le({"node_modules/probe-image-size/lib/common.js"(Z){"use strict";var H=tL().Transform,g=vL();function x(){H.call(this,{readableObjectMode:!0})}x.prototype=Object.create(H.prototype),x.prototype.constructor=x,g(x.prototype),Z.ParserStream=x,Z.sliceEq=function(S,e,t){for(var r=e,o=0;o>4&15,h=a[4]&15,p=a[5]>>4&15,d=g(a,6),T=8,l=0;ld.width||p.width===d.width&&p.height>d.height?p:d}),c=a.reduce(function(p,d){return p.height>d.height||p.height===d.height&&p.width>d.width?p:d}),h;return s.width>c.height||s.width===c.height&&s.height>c.width?h=s:h=c,h}H.exports.readSizeFromMeta=function(a){var s={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(i(a,s),!!s.sizes.length){var c=n(s.sizes),h=1;s.transforms.forEach(function(d){var T={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(d.type==="imir"&&(d.value===0?h=l[h]:(h=l[h],h=T[h],h=T[h])),d.type==="irot")for(var _=0;_0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,S)}},A.prototype.read_uint16=function(S){var e=this.input;if(S+2>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[S]*256+e[S+1]:e[S]+e[S+1]*256},A.prototype.read_uint32=function(S){var e=this.input;if(S+4>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[S]*16777216+e[S+1]*65536+e[S+2]*256+e[S+3]:e[S]+e[S+1]*256+e[S+2]*65536+e[S+3]*16777216},A.prototype.is_subifd_link=function(S,e){return S===0&&e===34665||S===0&&e===34853||S===34665&&e===40965},A.prototype.exif_format_length=function(S){switch(S){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},A.prototype.exif_format_read=function(S,e){var t;switch(S){case 1:case 2:return t=this.input[e],t;case 6:return t=this.input[e],t|(t&128)*33554430;case 3:return t=this.read_uint16(e),t;case 8:return t=this.read_uint16(e),t|(t&32768)*131070;case 4:return t=this.read_uint32(e),t;case 9:return t=this.read_uint32(e),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},A.prototype.scan_ifd=function(S,e,t){var r=this.read_uint16(e);e+=2;for(var o=0;othis.input.length)throw g("unexpected EOF","EBADDATA");for(var d=[],T=h,l=0;l0&&(this.ifds_to_read.push({id:i,offset:d[0]}),p=!0);var w={is_big_endian:this.big_endian,ifd:S,tag:i,format:n,count:a,entry_offset:e+this.start,data_length:c,data_offset:h+this.start,value:d,is_subifd_link:p};if(t(w)===!1){this.aborted=!0;return}e+=12}S===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},H.exports.ExifParser=A,H.exports.get_orientation=function(S){var e=0;try{return new A(S,0,S.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return e=t.value[0],!1}),e}catch{return-1}}}}),mL=Le({"node_modules/probe-image-size/lib/parse_sync/avif.js"(Z,H){"use strict";var g=Lu().str2arr,x=Lu().sliceEq,A=Lu().readUInt32BE,S=pL(),e=_x(),t=g("ftyp");H.exports=function(r){if(x(r,4,t)){var o=S.unbox(r,0);if(o){var i=S.getMimeType(o.data);if(i){for(var n,a=o.end;;){var s=S.unbox(r,a);if(!s)break;if(a=s.end,s.boxtype==="mdat")return;if(s.boxtype==="meta"){n=s.data;break}}if(n){var c=S.readSizeFromMeta(n);if(c){var h={width:c.width,height:c.height,type:i.type,mime:i.mime,wUnits:"px",hUnits:"px"};if(c.variants.length>1&&(h.variants=c.variants),c.orientation&&(h.orientation=c.orientation),c.exif_location&&c.exif_location.offset+c.exif_location.length<=r.length){var p=A(r,c.exif_location.offset),d=r.slice(c.exif_location.offset+p+4,c.exif_location.offset+c.exif_location.length),T=e.get_orientation(d);T>0&&(h.orientation=T)}return h}}}}}}}}),gL=Le({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(Z,H){"use strict";var g=Lu().str2arr,x=Lu().sliceEq,A=Lu().readUInt16LE,S=g("BM");H.exports=function(e){if(!(e.length<26)&&x(e,0,S))return{width:A(e,18),height:A(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),yL=Le({"node_modules/probe-image-size/lib/parse_sync/gif.js"(Z,H){"use strict";var g=Lu().str2arr,x=Lu().sliceEq,A=Lu().readUInt16LE,S=g("GIF87a"),e=g("GIF89a");H.exports=function(t){if(!(t.length<10)&&!(!x(t,0,S)&&!x(t,0,e)))return{width:A(t,6),height:A(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),_L=Le({"node_modules/probe-image-size/lib/parse_sync/ico.js"(Z,H){"use strict";var g=Lu().readUInt16LE,x=0,A=1,S=16;H.exports=function(e){var t=g(e,0),r=g(e,2),o=g(e,4);if(!(t!==x||r!==A||!o)){for(var i=[],n={width:0,height:0},a=0;an.width||c>n.height)&&(n=h)}return{width:n.width,height:n.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),xL=Le({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(Z,H){"use strict";var g=Lu().readUInt16BE,x=Lu().str2arr,A=Lu().sliceEq,S=_x(),e=x("Exif\0\0");H.exports=function(t){if(!(t.length<2)&&!(t[0]!==255||t[1]!==216||t[2]!==255))for(var r=2;;){for(;;){if(t.length-r<2)return;if(t[r++]===255)break}for(var o=t[r++],i;o===255;)o=t[r++];if(208<=o&&o<=217||o===1)i=0;else if(192<=o&&o<=254){if(t.length-r<2)return;i=g(t,r)-2,r+=2}else return;if(o===217||o===218)return;var n;if(o===225&&i>=10&&A(t,r,e)&&(n=S.get_orientation(t.slice(r+6,r+i))),i>=5&&192<=o&&o<=207&&o!==196&&o!==200&&o!==204){if(t.length-r0&&(a.orientation=n),a}r+=i}}}}),bL=Le({"node_modules/probe-image-size/lib/parse_sync/png.js"(Z,H){"use strict";var g=Lu().str2arr,x=Lu().sliceEq,A=Lu().readUInt32BE,S=g(`\x89PNG\r + +`),e=g("IHDR");H.exports=function(t){if(!(t.length<24)&&x(t,0,S)&&x(t,12,e))return{width:A(t,16),height:A(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),wL=Le({"node_modules/probe-image-size/lib/parse_sync/psd.js"(Z,H){"use strict";var g=Lu().str2arr,x=Lu().sliceEq,A=Lu().readUInt32BE,S=g("8BPS\0");H.exports=function(e){if(!(e.length<22)&&x(e,0,S))return{width:A(e,18),height:A(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),TL=Le({"node_modules/probe-image-size/lib/parse_sync/svg.js"(Z,H){"use strict";function g(s){return s===32||s===9||s===13||s===10}function x(s){return typeof s=="number"&&isFinite(s)&&s>0}function A(s){var c=0,h=s.length;for(s[0]===239&&s[1]===187&&s[2]===191&&(c=3);c]*>/,e=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,r=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,i=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function n(s){var c=s.match(t),h=s.match(r),p=s.match(o);return{width:c&&(c[1]||c[2]),height:h&&(h[1]||h[2]),viewbox:p&&(p[1]||p[2])}}function a(s){return i.test(s)?s.match(i)[0]:"px"}H.exports=function(s){if(A(s)){for(var c="",h=0;h>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function n(a,s){return{width:(a[s+6]<<16|a[s+5]<<8|a[s+4])+1,height:(a[s+9]<a.length)){for(;s+8=10?c=c||o(a,s+8):d==="VP8L"&&T>=9?c=c||i(a,s+8):d==="VP8X"&&T>=10?c=c||n(a,s+8):d==="EXIF"&&(h=e.get_orientation(a.slice(s+8,s+8+T)),s=1/0),s+=8+T}if(c)return h>0&&(c.orientation=h),c}}}}}),SL=Le({"node_modules/probe-image-size/lib/parsers_sync.js"(Z,H){"use strict";H.exports={avif:mL(),bmp:gL(),gif:yL(),ico:_L(),jpeg:xL(),png:bL(),psd:wL(),svg:TL(),tiff:AL(),webp:ML()}}}),EL=Le({"node_modules/probe-image-size/sync.js"(Z,H){"use strict";var g=SL();function x(A){for(var S=Object.keys(g),e=0;e0;)P=c.c2p(E+O*u),O--;for(O=0;z===void 0&&O0;)F=h.c2p(m+O*y),O--;if(PG[0];if(J||$){var X=f+I/2,re=z+N/2;se+="transform:"+A(X+"px",re+"px")+"scale("+(J?-1:1)+","+($?-1:1)+")"+A(-X+"px",-re+"px")+";"}}le.attr("style",se);var ae=new Promise(function(j){if(_._hasZ)j();else if(_._hasSource)if(_._canvas&&_._canvas.el.width===b&&_._canvas.el.height===v&&_._canvas.source===_.source)j();else{var ee=document.createElement("canvas");ee.width=b,ee.height=v;var ne=ee.getContext("2d",{willReadFrequently:!0});_._image=_._image||new Image;var ce=_._image;ce.onload=function(){ne.drawImage(ce,0,0),_._canvas={el:ee,source:_.source},j()},ce.setAttribute("src",_.source)}}).then(function(){var j,ee;if(_._hasZ)ee=Q(function(_e,we){var Oe=M[we][_e];return x.isTypedArray(Oe)&&(Oe=Array.from(Oe)),Oe}),j=ee.toDataURL("image/png");else if(_._hasSource)if(w)j=_.source;else{var ne=_._canvas.el.getContext("2d",{willReadFrequently:!0}),ce=ne.getImageData(0,0,b,v).data;ee=Q(function(_e,we){var Oe=4*(we*b+_e);return[ce[Oe],ce[Oe+1],ce[Oe+2],ce[Oe+3]]}),j=ee.toDataURL("image/png")}le.attr({"xlink:href":j,height:N,width:I,x:f,y:z})});i._promises.push(ae)})}}}),PL=Le({"src/traces/image/style.js"(Z,H){"use strict";var g=Ji();H.exports=function(A){g.select(A).selectAll(".im image").style("opacity",function(S){return S[0].trace.opacity})}}}),IL=Le({"src/traces/image/hover.js"(Z,H){"use strict";var g=Dc(),x=ni(),A=x.isArrayOrTypedArray,S=l0();H.exports=function(t,r,o){var i=t.cd[0],n=i.trace,a=t.xa,s=t.ya;if(!(g.inbox(r-i.x0,r-(i.x0+i.w*n.dx),0)>0||g.inbox(o-i.y0,o-(i.y0+i.h*n.dy),0)>0)){var c=Math.floor((r-i.x0)/n.dx),h=Math.floor(Math.abs(o-i.y0)/n.dy),p;if(n._hasZ?p=i.z[h][c]:n._hasSource&&(p=n._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(c,h,1,1).data),!!p){var d=i.hi||n.hoverinfo,T;if(d){var l=d.split("+");l.indexOf("all")!==-1&&(l=["color"]),l.indexOf("color")!==-1&&(T=!0)}var _=S.colormodel[n.colormodel],w=_.colormodel||n.colormodel,M=w.length,E=n._scaler(p),m=_.suffix,b=[];(n.hovertemplate||T)&&(b.push("["+[E[0]+m[0],E[1]+m[1],E[2]+m[2]].join(", ")),M===4&&b.push(", "+E[3]+m[3]),b.push("]"),b=b.join(""),t.extraText=w.toUpperCase()+": "+b);var v;A(n.hovertext)&&A(n.hovertext[h])?v=n.hovertext[h][c]:A(n.text)&&A(n.text[h])&&(v=n.text[h][c]);var u=s.c2p(i.y0+(h+.5)*n.dy),y=i.x0+(c+.5)*n.dx,f=i.y0+(h+.5)*n.dy,P="["+p.slice(0,n.colormodel.length).join(", ")+"]";return[x.extendFlat(t,{index:[h,c],x0:a.c2p(i.x0+c*n.dx),x1:a.c2p(i.x0+(c+1)*n.dx),y0:u,y1:u,color:E,xVal:y,xLabelVal:y,yVal:f,yLabelVal:f,zLabelVal:P,text:v,hovertemplateLabels:{zLabel:P,colorLabel:b,"color[0]Label":E[0]+m[0],"color[1]Label":E[1]+m[1],"color[2]Label":E[2]+m[2],"color[3]Label":E[3]+m[3]}})]}}}}}),RL=Le({"src/traces/image/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x.color=A.color,x.colormodel=A.trace.colormodel,x.z||(x.z=A.color),x}}}),DL=Le({"src/traces/image/index.js"(Z,H){"use strict";H.exports={attributes:v3(),supplyDefaults:CC(),calc:CL(),plot:LL(),style:PL(),hoverPoints:IL(),eventData:RL(),moduleType:"trace",name:"image",basePlotModule:Ef(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),zL=Le({"lib/image.js"(Z,H){"use strict";H.exports=DL()}}),Km=Le({"src/traces/pie/attributes.js"(Z,H){"use strict";var g=Sl(),x=$u().attributes,A=bl(),S=gf(),e=Fs().hovertemplateAttrs,t=Fs().texttemplateAttrs,r=ho().extendFlat,o=Ah().pattern,i=A({editType:"plot",arrayOk:!0,colorEditType:"plot"});H.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:S.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:o,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:r({},g.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:e({},{keys:["label","color","value","percent","text"]}),texttemplate:t({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:r({},i,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:r({},i,{}),outsidetextfont:r({},i,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:r({},i,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:x({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),$m=Le({"src/traces/pie/defaults.js"(Z,H){"use strict";var g=zn(),x=ni(),A=Km(),S=$u().defaults,e=Nd().handleText,t=ni().coercePattern;function r(n,a){var s=x.isArrayOrTypedArray(n),c=x.isArrayOrTypedArray(a),h=Math.min(s?n.length:1/0,c?a.length:1/0);if(isFinite(h)||(h=0),h&&c){for(var p,d=0;d0){p=!0;break}}p||(h=0)}return{hasLabels:s,hasValues:c,len:h}}function o(n,a,s,c,h){var p=c("marker.line.width");p&&c("marker.line.color",h?void 0:s.paper_bgcolor);var d=c("marker.colors");t(c,"marker.pattern",d),n.marker&&!a.marker.pattern.fgcolor&&(a.marker.pattern.fgcolor=n.marker.colors),a.marker.pattern.bgcolor||(a.marker.pattern.bgcolor=s.paper_bgcolor)}function i(n,a,s,c){function h(f,P){return x.coerce(n,a,A,f,P)}var p=h("labels"),d=h("values"),T=r(p,d),l=T.len;if(a._hasLabels=T.hasLabels,a._hasValues=T.hasValues,!a._hasLabels&&a._hasValues&&(h("label0"),h("dlabel")),!l){a.visible=!1;return}a._length=l,o(n,a,c,h,!0),h("scalegroup");var _=h("text"),w=h("texttemplate"),M;if(w||(M=h("textinfo",x.isArrayOrTypedArray(_)?"text+percent":"percent")),h("hovertext"),h("hovertemplate"),w||M&&M!=="none"){var E=h("textposition");e(n,a,c,h,E,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var m=Array.isArray(E)||E==="auto",b=m||E==="outside";b&&h("automargin"),(E==="inside"||E==="auto"||Array.isArray(E))&&h("insidetextorientation")}else M==="none"&&h("textposition","none");S(a,c,h);var v=h("hole"),u=h("title.text");if(u){var y=h("title.position",v?"middle center":"top center");!v&&y==="middle center"&&(a.title.position="top center"),x.coerceFont(h,"title.font",c.font)}h("sort"),h("direction"),h("rotation"),h("pull")}H.exports={handleLabelsAndValues:r,handleMarkerDefaults:o,supplyDefaults:i}}}),xx=Le({"src/traces/pie/layout_attributes.js"(Z,H){"use strict";H.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),FL=Le({"src/traces/pie/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=xx();H.exports=function(S,e){function t(r,o){return g.coerce(S,e,x,r,o)}t("hiddenlabels"),t("piecolorway",e.colorway),t("extendpiecolors")}}}),h0=Le({"src/traces/pie/calc.js"(Z,H){"use strict";var g=zn(),x=Vl(),A=$a(),S={};function e(i,n){var a=[],s=i._fullLayout,c=s.hiddenlabels||[],h=n.labels,p=n.marker.colors||[],d=n.values,T=n._length,l=n._hasValues&&T,_,w;if(n.dlabel)for(h=new Array(T),_=0;_=0});var P=n.type==="funnelarea"?b:n.sort;return P&&a.sort(function(L,z){return z.v-L.v}),a[0]&&(a[0].vTotal=m),a}function t(i){return function(a,s){return!a||(a=x(a),!a.isValid())?!1:(a=A.addOpacity(a,a.getAlpha()),i[s]||(i[s]=a),a)}}function r(i,n){var a=(n||{}).type;a||(a="pie");var s=i._fullLayout,c=i.calcdata,h=s[a+"colorway"],p=s["_"+a+"colormap"];s["extend"+a+"colors"]&&(h=o(h,S));for(var d=0,T=0;T0&&(Qe+=Mt*ue.pxmid[0],it+=Mt*ue.pxmid[1])}ue.cxFinal=Qe,ue.cyFinal=it;function Bt(mt,Fe,Ze,Ne){var Se=Ne*(Fe[0]-mt[0]),Ve=Ne*(Fe[1]-mt[1]);return"a"+Ne*ce.r+","+Ne*ce.r+" 0 "+ue.largeArc+(Ze?" 1 ":" 0 ")+Se+","+Ve}var jt=_e.hole;if(ue.v===ce.vTotal){var cr="M"+(Qe+ue.px0[0])+","+(it+ue.px0[1])+Bt(ue.px0,ue.pxmid,!0,1)+Bt(ue.pxmid,ue.px0,!0,1)+"Z";jt?kt.attr("d","M"+(Qe+jt*ue.px0[0])+","+(it+jt*ue.px0[1])+Bt(ue.px0,ue.pxmid,!1,jt)+Bt(ue.pxmid,ue.px0,!1,jt)+"Z"+cr):kt.attr("d",cr)}else{var nr=Bt(ue.px0,ue.px1,!0,1);if(jt){var Lr=1-jt;kt.attr("d","M"+(Qe+jt*ue.px1[0])+","+(it+jt*ue.px1[1])+Bt(ue.px1,ue.px0,!1,jt)+"l"+Lr*ue.px0[0]+","+Lr*ue.px0[1]+nr+"Z")}else kt.attr("d","M"+Qe+","+it+"l"+ue.px0[0]+","+ue.px0[1]+nr+"Z")}fe(J,ue,ce);var mr=h.castOption(_e.textposition,ue.pts),xr=$e.selectAll("g.slicetext").data(ue.text&&mr!=="none"?[0]:[]);xr.enter().append("g").classed("slicetext",!0),xr.exit().remove(),xr.each(function(){var mt=t.ensureSingle(g.select(this),"text","",function(Ce){Ce.attr("data-notex",1)}),Fe=t.ensureUniformFontSize(J,mr==="outside"?w(_e,ue,re.font):M(_e,ue,re.font));mt.text(ue.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(e.font,Fe).call(i.convertToTspans,J);var Ze=e.bBox(mt.node()),Ne;if(mr==="outside")Ne=z(Ze,ue);else if(Ne=m(Ze,ue,ce),mr==="auto"&&Ne.scale<1){var Se=t.ensureUniformFontSize(J,_e.outsidetextfont);mt.call(e.font,Se),Ze=e.bBox(mt.node()),Ne=z(Ze,ue)}var Ve=Ne.textPosAngle,Ee=Ve===void 0?ue.pxmid:se(ce.r,Ve);if(Ne.targetX=Qe+Ee[0]*Ne.rCenter+(Ne.x||0),Ne.targetY=it+Ee[1]*Ne.rCenter+(Ne.y||0),G(Ne,Ze),Ne.outside){var be=Ne.targetY;ue.yLabelMin=be-Ze.height/2,ue.yLabelMid=be,ue.yLabelMax=be+Ze.height/2,ue.labelExtraX=0,ue.labelExtraY=0,Ie=!0}Ne.fontSize=Fe.size,a(_e.type,Ne,re),ee[ze].transform=Ne,t.setTransormAndDisplay(mt,Ne)})});var Xe=g.select(this).selectAll("g.titletext").data(_e.title.text?[0]:[]);if(Xe.enter().append("g").classed("titletext",!0),Xe.exit().remove(),Xe.each(function(){var ue=t.ensureSingle(g.select(this),"text","",function(it){it.attr("data-notex",1)}),ze=_e.title.text;_e._meta&&(ze=t.templateString(ze,_e._meta)),ue.text(ze).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(e.font,_e.title.font).call(i.convertToTspans,J);var Qe;_e.title.position==="middle center"?Qe=F(ce):Qe=O(ce,ae),ue.attr("transform",o(Qe.x,Qe.y)+r(Math.min(1,Qe.scale))+o(Qe.tx,Qe.ty))}),Ie&&U(Oe,_e),l(we,_e),Ie&&_e.automargin){var tt=e.bBox(ne.node()),rt=_e.domain,Je=ae.w*(rt.x[1]-rt.x[0]),ot=ae.h*(rt.y[1]-rt.y[0]),Me=(.5*Je-ce.r)/ae.w,pe=(.5*ot-ce.r)/ae.h;x.autoMargin(J,"pie."+_e.uid+".automargin",{xl:rt.x[0]-Me,xr:rt.x[1]+Me,yb:rt.y[0]-pe,yt:rt.y[1]+pe,l:Math.max(ce.cx-ce.r-tt.left,0),r:Math.max(tt.right-(ce.cx+ce.r),0),b:Math.max(tt.bottom-(ce.cy+ce.r),0),t:Math.max(ce.cy-ce.r-tt.top,0),pad:5})}})});setTimeout(function(){j.selectAll("tspan").each(function(){var ee=g.select(this);ee.attr("dy")&&ee.attr("dy",ee.attr("dy"))})},0)}function l(J,$){J.each(function(X){var re=g.select(this);if(!X.labelExtraX&&!X.labelExtraY){re.select("path.textline").remove();return}var ae=re.select("g.slicetext text");X.transform.targetX+=X.labelExtraX,X.transform.targetY+=X.labelExtraY,t.setTransormAndDisplay(ae,X.transform);var j=X.cxFinal+X.pxmid[0],ee=X.cyFinal+X.pxmid[1],ne="M"+j+","+ee,ce=(X.yLabelMax-X.yLabelMin)*(X.pxmid[0]<0?-1:1)/4;if(X.labelExtraX){var _e=X.labelExtraX*X.pxmid[1]/X.pxmid[0],we=X.yLabelMid+X.labelExtraY-(X.cyFinal+X.pxmid[1]);Math.abs(_e)>Math.abs(we)?ne+="l"+we*X.pxmid[0]/X.pxmid[1]+","+we+"H"+(j+X.labelExtraX+ce):ne+="l"+X.labelExtraX+","+_e+"v"+(we-_e)+"h"+ce}else ne+="V"+(X.yLabelMid+X.labelExtraY)+"h"+ce;t.ensureSingle(re,"path","textline").call(S.stroke,$.outsidetextfont.color).attr({"stroke-width":Math.min(2,$.outsidetextfont.size/8),d:ne,fill:"none"})})}function _(J,$,X){var re=X[0],ae=re.cx,j=re.cy,ee=re.trace,ne=ee.type==="funnelarea";"_hasHoverLabel"in ee||(ee._hasHoverLabel=!1),"_hasHoverEvent"in ee||(ee._hasHoverEvent=!1),J.on("mouseover",function(ce){var _e=$._fullLayout,we=$._fullData[ee.index];if(!($._dragging||_e.hovermode===!1)){var Oe=we.hoverinfo;if(Array.isArray(Oe)&&(Oe=A.castHoverinfo({hoverinfo:[h.castOption(Oe,ce.pts)],_module:ee._module},_e,0)),Oe==="all"&&(Oe="label+text+value+percent+name"),we.hovertemplate||Oe!=="none"&&Oe!=="skip"&&Oe){var Ie=ce.rInscribed||0,Xe=ae+ce.pxmid[0]*(1-Ie),tt=j+ce.pxmid[1]*(1-Ie),rt=_e.separators,Je=[];if(Oe&&Oe.indexOf("label")!==-1&&Je.push(ce.label),ce.text=h.castOption(we.hovertext||we.text,ce.pts),Oe&&Oe.indexOf("text")!==-1){var ot=ce.text;t.isValidTextValue(ot)&&Je.push(ot)}ce.value=ce.v,ce.valueLabel=h.formatPieValue(ce.v,rt),Oe&&Oe.indexOf("value")!==-1&&Je.push(ce.valueLabel),ce.percent=ce.v/re.vTotal,ce.percentLabel=h.formatPiePercent(ce.percent,rt),Oe&&Oe.indexOf("percent")!==-1&&Je.push(ce.percentLabel);var Me=we.hoverlabel,pe=Me.font,ue=[];A.loneHover({trace:ee,x0:Xe-Ie*re.r,x1:Xe+Ie*re.r,y:tt,_x0:ne?ae+ce.TL[0]:Xe-Ie*re.r,_x1:ne?ae+ce.TR[0]:Xe+Ie*re.r,_y0:ne?j+ce.TL[1]:tt-Ie*re.r,_y1:ne?j+ce.BL[1]:tt+Ie*re.r,text:Je.join("
"),name:we.hovertemplate||Oe.indexOf("name")!==-1?we.name:void 0,idealAlign:ce.pxmid[0]<0?"left":"right",color:h.castOption(Me.bgcolor,ce.pts)||ce.color,borderColor:h.castOption(Me.bordercolor,ce.pts),fontFamily:h.castOption(pe.family,ce.pts),fontSize:h.castOption(pe.size,ce.pts),fontColor:h.castOption(pe.color,ce.pts),nameLength:h.castOption(Me.namelength,ce.pts),textAlign:h.castOption(Me.align,ce.pts),hovertemplate:h.castOption(we.hovertemplate,ce.pts),hovertemplateLabels:ce,eventData:[p(ce,we)]},{container:_e._hoverlayer.node(),outerContainer:_e._paper.node(),gd:$,inOut_bbox:ue}),ce.bbox=ue[0],ee._hasHoverLabel=!0}ee._hasHoverEvent=!0,$.emit("plotly_hover",{points:[p(ce,we)],event:g.event})}}),J.on("mouseout",function(ce){var _e=$._fullLayout,we=$._fullData[ee.index],Oe=g.select(this).datum();ee._hasHoverEvent&&(ce.originalEvent=g.event,$.emit("plotly_unhover",{points:[p(Oe,we)],event:g.event}),ee._hasHoverEvent=!1),ee._hasHoverLabel&&(A.loneUnhover(_e._hoverlayer.node()),ee._hasHoverLabel=!1)}),J.on("click",function(ce){var _e=$._fullLayout,we=$._fullData[ee.index];$._dragging||_e.hovermode===!1||($._hoverdata=[p(ce,we)],A.click($,g.event))})}function w(J,$,X){var re=h.castOption(J.outsidetextfont.color,$.pts)||h.castOption(J.textfont.color,$.pts)||X.color,ae=h.castOption(J.outsidetextfont.family,$.pts)||h.castOption(J.textfont.family,$.pts)||X.family,j=h.castOption(J.outsidetextfont.size,$.pts)||h.castOption(J.textfont.size,$.pts)||X.size,ee=h.castOption(J.outsidetextfont.weight,$.pts)||h.castOption(J.textfont.weight,$.pts)||X.weight,ne=h.castOption(J.outsidetextfont.style,$.pts)||h.castOption(J.textfont.style,$.pts)||X.style,ce=h.castOption(J.outsidetextfont.variant,$.pts)||h.castOption(J.textfont.variant,$.pts)||X.variant,_e=h.castOption(J.outsidetextfont.textcase,$.pts)||h.castOption(J.textfont.textcase,$.pts)||X.textcase,we=h.castOption(J.outsidetextfont.lineposition,$.pts)||h.castOption(J.textfont.lineposition,$.pts)||X.lineposition,Oe=h.castOption(J.outsidetextfont.shadow,$.pts)||h.castOption(J.textfont.shadow,$.pts)||X.shadow;return{color:re,family:ae,size:j,weight:ee,style:ne,variant:ce,textcase:_e,lineposition:we,shadow:Oe}}function M(J,$,X){var re=h.castOption(J.insidetextfont.color,$.pts);!re&&J._input.textfont&&(re=h.castOption(J._input.textfont.color,$.pts));var ae=h.castOption(J.insidetextfont.family,$.pts)||h.castOption(J.textfont.family,$.pts)||X.family,j=h.castOption(J.insidetextfont.size,$.pts)||h.castOption(J.textfont.size,$.pts)||X.size,ee=h.castOption(J.insidetextfont.weight,$.pts)||h.castOption(J.textfont.weight,$.pts)||X.weight,ne=h.castOption(J.insidetextfont.style,$.pts)||h.castOption(J.textfont.style,$.pts)||X.style,ce=h.castOption(J.insidetextfont.variant,$.pts)||h.castOption(J.textfont.variant,$.pts)||X.variant,_e=h.castOption(J.insidetextfont.textcase,$.pts)||h.castOption(J.textfont.textcase,$.pts)||X.textcase,we=h.castOption(J.insidetextfont.lineposition,$.pts)||h.castOption(J.textfont.lineposition,$.pts)||X.lineposition,Oe=h.castOption(J.insidetextfont.shadow,$.pts)||h.castOption(J.textfont.shadow,$.pts)||X.shadow;return{color:re||S.contrast($.color),family:ae,size:j,weight:ee,style:ne,variant:ce,textcase:_e,lineposition:we,shadow:Oe}}function E(J,$){for(var X,re,ae=0;ae=-4;Me-=2)ot(Math.PI*Me,"tan");for(Me=4;Me>=-4;Me-=2)ot(Math.PI*(Me+1),"tan")}if(Oe||Xe){for(Me=4;Me>=-4;Me-=2)ot(Math.PI*(Me+1.5),"rad");for(Me=4;Me>=-4;Me-=2)ot(Math.PI*(Me+.5),"rad")}}if(ne||tt||Oe){var pe=Math.sqrt(J.width*J.width+J.height*J.height);if(Je={scale:ae*re*2/pe,rCenter:1-ae,rotate:0},Je.textPosAngle=($.startangle+$.stopangle)/2,Je.scale>=1)return Je;rt.push(Je)}(tt||Xe)&&(Je=v(J,re,ee,ce,_e),Je.textPosAngle=($.startangle+$.stopangle)/2,rt.push(Je)),(tt||Ie)&&(Je=u(J,re,ee,ce,_e),Je.textPosAngle=($.startangle+$.stopangle)/2,rt.push(Je));for(var ue=0,ze=0,Qe=0;Qe=1)break}return rt[ue]}function b(J,$){var X=J.startangle,re=J.stopangle;return X>$&&$>re||X<$&&$0?1:-1)/2,y:j/(1+X*X/(re*re)),outside:!0}}function F(J){var $=Math.sqrt(J.titleBox.width*J.titleBox.width+J.titleBox.height*J.titleBox.height);return{x:J.cx,y:J.cy,scale:J.trace.hole*J.r*2/$,tx:0,ty:-J.titleBox.height/2+J.trace.title.font.size}}function O(J,$){var X=1,re=1,ae,j=J.trace,ee={x:J.cx,y:J.cy},ne={tx:0,ty:0};ne.ty+=j.title.font.size,ae=N(j),j.title.position.indexOf("top")!==-1?(ee.y-=(1+ae)*J.r,ne.ty-=J.titleBox.height):j.title.position.indexOf("bottom")!==-1&&(ee.y+=(1+ae)*J.r);var ce=B(J.r,J.trace.aspectratio),_e=$.w*(j.domain.x[1]-j.domain.x[0])/2;return j.title.position.indexOf("left")!==-1?(_e=_e+ce,ee.x-=(1+ae)*ce,ne.tx+=J.titleBox.width/2):j.title.position.indexOf("center")!==-1?_e*=2:j.title.position.indexOf("right")!==-1&&(_e=_e+ce,ee.x+=(1+ae)*ce,ne.tx-=J.titleBox.width/2),X=_e/J.titleBox.width,re=I(J,$)/J.titleBox.height,{x:ee.x,y:ee.y,scale:Math.min(X,re),tx:ne.tx,ty:ne.ty}}function B(J,$){return J/($===void 0?1:$)}function I(J,$){var X=J.trace,re=$.h*(X.domain.y[1]-X.domain.y[0]);return Math.min(J.titleBox.height,re/2)}function N(J){var $=J.pull;if(!$)return 0;var X;if(t.isArrayOrTypedArray($))for($=0,X=0;X$&&($=J.pull[X]);return $}function U(J,$){var X,re,ae,j,ee,ne,ce,_e,we,Oe,Ie,Xe,tt;function rt(pe,ue){return pe.pxmid[1]-ue.pxmid[1]}function Je(pe,ue){return ue.pxmid[1]-pe.pxmid[1]}function ot(pe,ue){ue||(ue={});var ze=ue.labelExtraY+(re?ue.yLabelMax:ue.yLabelMin),Qe=re?pe.yLabelMin:pe.yLabelMax,it=re?pe.yLabelMax:pe.yLabelMin,$e=pe.cyFinal+ee(pe.px0[1],pe.px1[1]),kt=ze-Qe,Mt,Bt,jt,cr,nr,Lr;if(kt*ce>0&&(pe.labelExtraY=kt),!!t.isArrayOrTypedArray($.pull))for(Bt=0;Bt=(h.castOption($.pull,jt.pts)||0))&&((pe.pxmid[1]-jt.pxmid[1])*ce>0?(cr=jt.cyFinal+ee(jt.px0[1],jt.px1[1]),kt=cr-Qe-pe.labelExtraY,kt*ce>0&&(pe.labelExtraY+=kt)):(it+pe.labelExtraY-$e)*ce>0&&(Mt=3*ne*Math.abs(Bt-Oe.indexOf(pe)),nr=jt.cxFinal+j(jt.px0[0],jt.px1[0]),Lr=nr+Mt-(pe.cxFinal+pe.pxmid[0])-pe.labelExtraX,Lr*ne>0&&(pe.labelExtraX+=Lr)))}for(re=0;re<2;re++)for(ae=re?rt:Je,ee=re?Math.max:Math.min,ce=re?1:-1,X=0;X<2;X++){for(j=X?Math.max:Math.min,ne=X?1:-1,_e=J[re][X],_e.sort(ae),we=J[1-re][X],Oe=we.concat(_e),Xe=[],Ie=0;Ie<_e.length;Ie++)_e[Ie].yLabelMid!==void 0&&Xe.push(_e[Ie]);for(tt=!1,Ie=0;re&&Ie1?(_e=X.r,we=_e/ae.aspectratio):(we=X.r,_e=we*ae.aspectratio),_e*=(1+ae.baseratio)/2,ce=_e*we}ee=Math.min(ee,ce/X.vTotal)}for(re=0;re$.vTotal/2?1:0,_e.halfangle=Math.PI*Math.min(_e.v/$.vTotal,.5),_e.ring=1-re.hole,_e.rInscribed=L(_e,$))}function se(J,$){return[J*Math.sin($),-J*Math.cos($)]}function fe(J,$,X){var re=J._fullLayout,ae=X.trace,j=ae.texttemplate,ee=ae.textinfo;if(!j&&ee&&ee!=="none"){var ne=ee.split("+"),ce=function(ue){return ne.indexOf(ue)!==-1},_e=ce("label"),we=ce("text"),Oe=ce("value"),Ie=ce("percent"),Xe=re.separators,tt;if(tt=_e?[$.label]:[],we){var rt=h.getFirstFilled(ae.text,$.pts);d(rt)&&tt.push(rt)}Oe&&tt.push(h.formatPieValue($.v,Xe)),Ie&&tt.push(h.formatPiePercent($.v/X.vTotal,Xe)),$.text=tt.join("
")}function Je(ue){return{label:ue.label,value:ue.v,valueLabel:h.formatPieValue(ue.v,re.separators),percent:ue.v/X.vTotal,percentLabel:h.formatPiePercent(ue.v/X.vTotal,re.separators),color:ue.color,text:ue.text,customdata:t.castOption(ae,ue.i,"customdata")}}if(j){var ot=t.castOption(ae,$.i,"texttemplate");if(!ot)$.text="";else{var Me=Je($),pe=h.getFirstFilled(ae.text,$.pts);(d(pe)||pe==="")&&(Me.text=pe),$.text=t.texttemplateString(ot,Me,J._fullLayout._d3locale,Me,ae._meta||{})}}}function G(J,$){var X=J.rotate*Math.PI/180,re=Math.cos(X),ae=Math.sin(X),j=($.left+$.right)/2,ee=($.top+$.bottom)/2;J.textX=j*re-ee*ae,J.textY=j*ae+ee*re,J.noCenter=!0}H.exports={plot:T,formatSliceLabel:fe,transformInsideText:m,determineInsideTextFont:M,positionTitleOutside:O,prerenderTitles:E,layoutAreas:W,attachFxHandlers:_,computeTransform:G}}}),OL=Le({"src/traces/pie/style.js"(Z,H){"use strict";var g=Ji(),x=$g(),A=$h().resizeText;H.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");A(e,t,"pie"),t.each(function(r){var o=r[0],i=o.trace,n=g.select(this);n.style({opacity:i.opacity}),n.selectAll("path.surface").each(function(a){g.select(this).call(x,a,i,e)})})}}}),NL=Le({"src/traces/pie/base_plot.js"(Z){"use strict";var H=Ku();Z.name="pie",Z.plot=function(g,x,A,S){H.plotBasePlot(Z.name,g,x,A,S)},Z.clean=function(g,x,A,S){H.cleanBasePlot(Z.name,g,x,A,S)}}}),UL=Le({"src/traces/pie/index.js"(Z,H){"use strict";H.exports={attributes:Km(),supplyDefaults:$m().supplyDefaults,supplyLayoutDefaults:FL(),layoutAttributes:xx(),calc:h0().calc,crossTraceCalc:h0().crossTraceCalc,plot:bx().plot,style:OL(),styleOne:$g(),moduleType:"trace",name:"pie",basePlotModule:NL(),categories:["pie-like","pie","showLegend"],meta:{}}}}),jL=Le({"lib/pie.js"(Z,H){"use strict";H.exports=UL()}}),VL=Le({"src/traces/sunburst/base_plot.js"(Z){"use strict";var H=Ku();Z.name="sunburst",Z.plot=function(g,x,A,S){H.plotBasePlot(Z.name,g,x,A,S)},Z.clean=function(g,x,A,S){H.cleanBasePlot(Z.name,g,x,A,S)}}}),z3=Le({"src/traces/sunburst/constants.js"(Z,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Py=Le({"src/traces/sunburst/attributes.js"(Z,H){"use strict";var g=Sl(),x=Fs().hovertemplateAttrs,A=Fs().texttemplateAttrs,S=uu(),e=$u().attributes,t=Km(),r=z3(),o=ho().extendFlat,i=Ah().pattern;H.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:o({colors:{valType:"data_array",editType:"calc"},line:{color:o({},t.marker.line.color,{dflt:null}),width:o({},t.marker.line.width,{dflt:1}),editType:"calc"},pattern:i,editType:"calc"},S("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:t.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:A({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:t.hovertext,hoverinfo:o({},g.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:x({},{keys:r.eventDataKeys}),textfont:t.textfont,insidetextorientation:t.insidetextorientation,insidetextfont:t.insidetextfont,outsidetextfont:o({},t.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:t.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:e({name:"sunburst",trace:!0,editType:"calc"})}}}),F3=Le({"src/traces/sunburst/layout_attributes.js"(Z,H){"use strict";H.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),qL=Le({"src/traces/sunburst/defaults.js"(Z,H){"use strict";var g=ni(),x=Py(),A=$u().defaults,S=Nd().handleText,e=$m().handleMarkerDefaults,t=Cu(),r=t.hasColorscale,o=t.handleDefaults;H.exports=function(n,a,s,c){function h(M,E){return g.coerce(n,a,x,M,E)}var p=h("labels"),d=h("parents");if(!p||!p.length||!d||!d.length){a.visible=!1;return}var T=h("values");T&&T.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),e(n,a,c,h);var l=a._hasColorscale=r(n,"marker","colors")||(n.marker||{}).coloraxis;l&&o(n,a,c,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",l?1:.7);var _=h("text");h("texttemplate"),a.texttemplate||h("textinfo",g.isArrayOrTypedArray(_)?"text+label":"label"),h("hovertext"),h("hovertemplate");var w="auto";S(n,a,c,h,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),A(a,c,h),a._length=null}}}),HL=Le({"src/traces/sunburst/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=F3();H.exports=function(S,e){function t(r,o){return g.coerce(S,e,x,r,o)}t("sunburstcolorway",e.colorway),t("extendsunburstcolors")}}}),Iy=Le({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z):(g=g||self,x(g.d3=g.d3||{}))})(Z,function(g){"use strict";function x(Ne,Se){return Ne.parent===Se.parent?1:2}function A(Ne){return Ne.reduce(S,0)/Ne.length}function S(Ne,Se){return Ne+Se.x}function e(Ne){return 1+Ne.reduce(t,0)}function t(Ne,Se){return Math.max(Ne,Se.y)}function r(Ne){for(var Se;Se=Ne.children;)Ne=Se[0];return Ne}function o(Ne){for(var Se;Se=Ne.children;)Ne=Se[Se.length-1];return Ne}function i(){var Ne=x,Se=1,Ve=1,Ee=!1;function be(Ce){var et,ht=0;Ce.eachAfter(function($t){var lr=$t.children;lr?($t.x=A(lr),$t.y=e(lr)):($t.x=et?ht+=Ne($t,et):0,$t.y=0,et=$t)});var yt=r(Ce),Pt=o(Ce),Ot=yt.x-Ne(yt,Pt)/2,Wt=Pt.x+Ne(Pt,yt)/2;return Ce.eachAfter(Ee?function($t){$t.x=($t.x-Ce.x)*Se,$t.y=(Ce.y-$t.y)*Ve}:function($t){$t.x=($t.x-Ot)/(Wt-Ot)*Se,$t.y=(1-(Ce.y?$t.y/Ce.y:1))*Ve})}return be.separation=function(Ce){return arguments.length?(Ne=Ce,be):Ne},be.size=function(Ce){return arguments.length?(Ee=!1,Se=+Ce[0],Ve=+Ce[1],be):Ee?null:[Se,Ve]},be.nodeSize=function(Ce){return arguments.length?(Ee=!0,Se=+Ce[0],Ve=+Ce[1],be):Ee?[Se,Ve]:null},be}function n(Ne){var Se=0,Ve=Ne.children,Ee=Ve&&Ve.length;if(!Ee)Se=1;else for(;--Ee>=0;)Se+=Ve[Ee].value;Ne.value=Se}function a(){return this.eachAfter(n)}function s(Ne){var Se=this,Ve,Ee=[Se],be,Ce,et;do for(Ve=Ee.reverse(),Ee=[];Se=Ve.pop();)if(Ne(Se),be=Se.children,be)for(Ce=0,et=be.length;Ce=0;--be)Ve.push(Ee[be]);return this}function h(Ne){for(var Se=this,Ve=[Se],Ee=[],be,Ce,et;Se=Ve.pop();)if(Ee.push(Se),be=Se.children,be)for(Ce=0,et=be.length;Ce=0;)Ve+=Ee[be].value;Se.value=Ve})}function d(Ne){return this.eachBefore(function(Se){Se.children&&Se.children.sort(Ne)})}function T(Ne){for(var Se=this,Ve=l(Se,Ne),Ee=[Se];Se!==Ve;)Se=Se.parent,Ee.push(Se);for(var be=Ee.length;Ne!==Ve;)Ee.splice(be,0,Ne),Ne=Ne.parent;return Ee}function l(Ne,Se){if(Ne===Se)return Ne;var Ve=Ne.ancestors(),Ee=Se.ancestors(),be=null;for(Ne=Ve.pop(),Se=Ee.pop();Ne===Se;)be=Ne,Ne=Ve.pop(),Se=Ee.pop();return be}function _(){for(var Ne=this,Se=[Ne];Ne=Ne.parent;)Se.push(Ne);return Se}function w(){var Ne=[];return this.each(function(Se){Ne.push(Se)}),Ne}function M(){var Ne=[];return this.eachBefore(function(Se){Se.children||Ne.push(Se)}),Ne}function E(){var Ne=this,Se=[];return Ne.each(function(Ve){Ve!==Ne&&Se.push({source:Ve.parent,target:Ve})}),Se}function m(Ne,Se){var Ve=new f(Ne),Ee=+Ne.value&&(Ve.value=Ne.value),be,Ce=[Ve],et,ht,yt,Pt;for(Se==null&&(Se=v);be=Ce.pop();)if(Ee&&(be.value=+be.data.value),(ht=Se(be.data))&&(Pt=ht.length))for(be.children=new Array(Pt),yt=Pt-1;yt>=0;--yt)Ce.push(et=be.children[yt]=new f(ht[yt])),et.parent=be,et.depth=be.depth+1;return Ve.eachBefore(y)}function b(){return m(this).eachBefore(u)}function v(Ne){return Ne.children}function u(Ne){Ne.data=Ne.data.data}function y(Ne){var Se=0;do Ne.height=Se;while((Ne=Ne.parent)&&Ne.height<++Se)}function f(Ne){this.data=Ne,this.depth=this.height=0,this.parent=null}f.prototype=m.prototype={constructor:f,count:a,each:s,eachAfter:h,eachBefore:c,sum:p,sort:d,path:T,ancestors:_,descendants:w,leaves:M,links:E,copy:b};var P=Array.prototype.slice;function L(Ne){for(var Se=Ne.length,Ve,Ee;Se;)Ee=Math.random()*Se--|0,Ve=Ne[Se],Ne[Se]=Ne[Ee],Ne[Ee]=Ve;return Ne}function z(Ne){for(var Se=0,Ve=(Ne=L(P.call(Ne))).length,Ee=[],be,Ce;Se0&&Ve*Ve>Ee*Ee+be*be}function I(Ne,Se){for(var Ve=0;Veyt?(be=(Pt+yt-Ce)/(2*Pt),ht=Math.sqrt(Math.max(0,yt/Pt-be*be)),Ve.x=Ne.x-be*Ee-ht*et,Ve.y=Ne.y-be*et+ht*Ee):(be=(Pt+Ce-yt)/(2*Pt),ht=Math.sqrt(Math.max(0,Ce/Pt-be*be)),Ve.x=Se.x+be*Ee-ht*et,Ve.y=Se.y+be*et+ht*Ee)):(Ve.x=Se.x+Ve.r,Ve.y=Se.y)}function se(Ne,Se){var Ve=Ne.r+Se.r-1e-6,Ee=Se.x-Ne.x,be=Se.y-Ne.y;return Ve>0&&Ve*Ve>Ee*Ee+be*be}function fe(Ne){var Se=Ne._,Ve=Ne.next._,Ee=Se.r+Ve.r,be=(Se.x*Ve.r+Ve.x*Se.r)/Ee,Ce=(Se.y*Ve.r+Ve.y*Se.r)/Ee;return be*be+Ce*Ce}function G(Ne){this._=Ne,this.next=null,this.previous=null}function J(Ne){if(!(be=Ne.length))return 0;var Se,Ve,Ee,be,Ce,et,ht,yt,Pt,Ot,Wt;if(Se=Ne[0],Se.x=0,Se.y=0,!(be>1))return Se.r;if(Ve=Ne[1],Se.x=-Ve.r,Ve.x=Se.r,Ve.y=0,!(be>2))return Se.r+Ve.r;le(Ve,Se,Ee=Ne[2]),Se=new G(Se),Ve=new G(Ve),Ee=new G(Ee),Se.next=Ee.previous=Ve,Ve.next=Se.previous=Ee,Ee.next=Ve.previous=Se;e:for(ht=3;ht0)throw new Error("cycle");return ht}return Ve.id=function(Ee){return arguments.length?(Ne=re(Ee),Ve):Ne},Ve.parentId=function(Ee){return arguments.length?(Se=re(Ee),Ve):Se},Ve}function ue(Ne,Se){return Ne.parent===Se.parent?1:2}function ze(Ne){var Se=Ne.children;return Se?Se[0]:Ne.t}function Qe(Ne){var Se=Ne.children;return Se?Se[Se.length-1]:Ne.t}function it(Ne,Se,Ve){var Ee=Ve/(Se.i-Ne.i);Se.c-=Ee,Se.s+=Ve,Ne.c+=Ee,Se.z+=Ve,Se.m+=Ve}function $e(Ne){for(var Se=0,Ve=0,Ee=Ne.children,be=Ee.length,Ce;--be>=0;)Ce=Ee[be],Ce.z+=Se,Ce.m+=Se,Se+=Ce.s+(Ve+=Ce.c)}function kt(Ne,Se,Ve){return Ne.a.parent===Se.parent?Ne.a:Ve}function Mt(Ne,Se){this._=Ne,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Se}Mt.prototype=Object.create(f.prototype);function Bt(Ne){for(var Se=new Mt(Ne,0),Ve,Ee=[Se],be,Ce,et,ht;Ve=Ee.pop();)if(Ce=Ve._.children)for(Ve.children=new Array(ht=Ce.length),et=ht-1;et>=0;--et)Ee.push(be=Ve.children[et]=new Mt(Ce[et],et)),be.parent=Ve;return(Se.parent=new Mt(null,0)).children=[Se],Se}function jt(){var Ne=ue,Se=1,Ve=1,Ee=null;function be(Pt){var Ot=Bt(Pt);if(Ot.eachAfter(Ce),Ot.parent.m=-Ot.z,Ot.eachBefore(et),Ee)Pt.eachBefore(yt);else{var Wt=Pt,$t=Pt,lr=Pt;Pt.eachBefore(function(en){en.x$t.x&&($t=en),en.depth>lr.depth&&(lr=en)});var fi=Wt===$t?1:Ne(Wt,$t)/2,Pi=fi-Wt.x,Bi=Se/($t.x+fi+Pi),zi=Ve/(lr.depth||1);Pt.eachBefore(function(en){en.x=(en.x+Pi)*Bi,en.y=en.depth*zi})}return Pt}function Ce(Pt){var Ot=Pt.children,Wt=Pt.parent.children,$t=Pt.i?Wt[Pt.i-1]:null;if(Ot){$e(Pt);var lr=(Ot[0].z+Ot[Ot.length-1].z)/2;$t?(Pt.z=$t.z+Ne(Pt._,$t._),Pt.m=Pt.z-lr):Pt.z=lr}else $t&&(Pt.z=$t.z+Ne(Pt._,$t._));Pt.parent.A=ht(Pt,$t,Pt.parent.A||Wt[0])}function et(Pt){Pt._.x=Pt.z+Pt.parent.m,Pt.m+=Pt.parent.m}function ht(Pt,Ot,Wt){if(Ot){for(var $t=Pt,lr=Pt,fi=Ot,Pi=$t.parent.children[0],Bi=$t.m,zi=lr.m,en=fi.m,Ri=Pi.m,Zi;fi=Qe(fi),$t=ze($t),fi&&$t;)Pi=ze(Pi),lr=Qe(lr),lr.a=Pt,Zi=fi.z+en-$t.z-Bi+Ne(fi._,$t._),Zi>0&&(it(kt(fi,Pt,Wt),Pt,Zi),Bi+=Zi,zi+=Zi),en+=fi.m,Bi+=$t.m,Ri+=Pi.m,zi+=lr.m;fi&&!Qe(lr)&&(lr.t=fi,lr.m+=en-zi),$t&&!ze(Pi)&&(Pi.t=$t,Pi.m+=Bi-Ri,Wt=Pt)}return Wt}function yt(Pt){Pt.x*=Se,Pt.y=Pt.depth*Ve}return be.separation=function(Pt){return arguments.length?(Ne=Pt,be):Ne},be.size=function(Pt){return arguments.length?(Ee=!1,Se=+Pt[0],Ve=+Pt[1],be):Ee?null:[Se,Ve]},be.nodeSize=function(Pt){return arguments.length?(Ee=!0,Se=+Pt[0],Ve=+Pt[1],be):Ee?[Se,Ve]:null},be}function cr(Ne,Se,Ve,Ee,be){for(var Ce=Ne.children,et,ht=-1,yt=Ce.length,Pt=Ne.value&&(be-Ve)/Ne.value;++hten&&(en=Pt),Xt=Bi*Bi*vn,Ri=Math.max(en/Xt,Xt/zi),Ri>Zi){Bi-=Pt;break}Zi=Ri}et.push(yt={value:Bi,dice:lr1?Ee:1)},Ve}(nr);function xr(){var Ne=mr,Se=!1,Ve=1,Ee=1,be=[0],Ce=ae,et=ae,ht=ae,yt=ae,Pt=ae;function Ot($t){return $t.x0=$t.y0=0,$t.x1=Ve,$t.y1=Ee,$t.eachBefore(Wt),be=[0],Se&&$t.eachBefore(Oe),$t}function Wt($t){var lr=be[$t.depth],fi=$t.x0+lr,Pi=$t.y0+lr,Bi=$t.x1-lr,zi=$t.y1-lr;Bi=$t-1){var en=Ce[Wt];en.x0=fi,en.y0=Pi,en.x1=Bi,en.y1=zi;return}for(var Ri=Pt[Wt],Zi=lr/2+Ri,vn=Wt+1,Xt=$t-1;vn>>1;Pt[Dt]zi-Pi){var br=(fi*Ut+Bi*qt)/lr;Ot(Wt,vn,qt,fi,Pi,br,zi),Ot(vn,$t,Ut,br,Pi,Bi,zi)}else{var Zr=(Pi*Ut+zi*qt)/lr;Ot(Wt,vn,qt,fi,Pi,Bi,Zr),Ot(vn,$t,Ut,fi,Zr,Bi,zi)}}}function Fe(Ne,Se,Ve,Ee,be){(Ne.depth&1?cr:Ie)(Ne,Se,Ve,Ee,be)}var Ze=function Ne(Se){function Ve(Ee,be,Ce,et,ht){if((yt=Ee._squarify)&&yt.ratio===Se)for(var yt,Pt,Ot,Wt,$t=-1,lr,fi=yt.length,Pi=Ee.value;++$t1?Ee:1)},Ve}(nr);g.cluster=i,g.hierarchy=m,g.pack=ne,g.packEnclose=z,g.packSiblings=$,g.partition=Xe,g.stratify=pe,g.tree=jt,g.treemap=xr,g.treemapBinary=mt,g.treemapDice=Ie,g.treemapResquarify=Ze,g.treemapSlice=cr,g.treemapSliceDice=Fe,g.treemapSquarify=mr,Object.defineProperty(g,"__esModule",{value:!0})})}}),Ry=Le({"src/traces/sunburst/calc.js"(Z){"use strict";var H=Iy(),g=zn(),x=ni(),A=Cu().makeColorScaleFuncFromTrace,S=h0().makePullColorFn,e=h0().generateExtendedColors,t=Cu().calc,r=$n().ALMOST_EQUAL,o={},i={},n={};Z.calc=function(s,c){var h=s._fullLayout,p=c.ids,d=x.isArrayOrTypedArray(p),T=c.labels,l=c.parents,_=c.values,w=x.isArrayOrTypedArray(_),M=[],E={},m={},b=function($,X){E[$]?E[$].push(X):E[$]=[X],m[X]=1},v=function($){return $||typeof $=="number"},u=function($){return!w||g(_[$])&&_[$]>=0},y,f,P;d?(y=Math.min(p.length,l.length),f=function($){return v(p[$])&&u($)},P=function($){return String(p[$])}):(y=Math.min(T.length,l.length),f=function($){return v(T[$])&&u($)},P=function($){return String(T[$])}),w&&(y=Math.min(y,_.length));for(var L=0;L1){for(var N=x.randstr(),U=0;U>8&15|H>>4&240,H>>4&15|H&240,(H&15)<<4|H&15,1):g===8?Dy(H>>24&255,H>>16&255,H>>8&255,(H&255)/255):g===4?Dy(H>>12&15|H>>8&240,H>>8&15|H>>4&240,H>>4&15|H&240,((H&15)<<4|H&15)/255):null):(H=W3.exec(Z))?new Eh(H[1],H[2],H[3],1):(H=X3.exec(Z))?new Eh(H[1]*255/100,H[2]*255/100,H[3]*255/100,1):(H=Z3.exec(Z))?Dy(H[1],H[2],H[3],H[4]):(H=Y3.exec(Z))?Dy(H[1]*255/100,H[2]*255/100,H[3]*255/100,H[4]):(H=K3.exec(Z))?V3(H[1],H[2]/100,H[3]/100,1):(H=$3.exec(Z))?V3(H[1],H[2]/100,H[3]/100,H[4]):Sx.hasOwnProperty(Z)?N3(Sx[Z]):Z==="transparent"?new Eh(NaN,NaN,NaN,0):null}function N3(Z){return new Eh(Z>>16&255,Z>>8&255,Z&255,1)}function Dy(Z,H,g,x){return x<=0&&(Z=H=g=NaN),new Eh(Z,H,g,x)}function Tx(Z){return Z instanceof fp||(Z=v0(Z)),Z?(Z=Z.rgb(),new Eh(Z.r,Z.g,Z.b,Z.opacity)):new Eh}function zy(Z,H,g,x){return arguments.length===1?Tx(Z):new Eh(Z,H,g,x??1)}function Eh(Z,H,g,x){this.r=+Z,this.g=+H,this.b=+g,this.opacity=+x}function U3(){return`#${Kp(this.r)}${Kp(this.g)}${Kp(this.b)}`}function XL(){return`#${Kp(this.r)}${Kp(this.g)}${Kp(this.b)}${Kp((isNaN(this.opacity)?1:this.opacity)*255)}`}function j3(){let Z=Fy(this.opacity);return`${Z===1?"rgb(":"rgba("}${Yp(this.r)}, ${Yp(this.g)}, ${Yp(this.b)}${Z===1?")":`, ${Z})`}`}function Fy(Z){return isNaN(Z)?1:Math.max(0,Math.min(1,Z))}function Yp(Z){return Math.max(0,Math.min(255,Math.round(Z)||0))}function Kp(Z){return Z=Yp(Z),(Z<16?"0":"")+Z.toString(16)}function V3(Z,H,g,x){return x<=0?Z=H=g=NaN:g<=0||g>=1?Z=H=NaN:H<=0&&(Z=NaN),new Jd(Z,H,g,x)}function q3(Z){if(Z instanceof Jd)return new Jd(Z.h,Z.s,Z.l,Z.opacity);if(Z instanceof fp||(Z=v0(Z)),!Z)return new Jd;if(Z instanceof Jd)return Z;Z=Z.rgb();var H=Z.r/255,g=Z.g/255,x=Z.b/255,A=Math.min(H,g,x),S=Math.max(H,g,x),e=NaN,t=S-A,r=(S+A)/2;return t?(H===S?e=(g-x)/t+(g0&&r<1?0:e,new Jd(e,t,r,Z.opacity)}function Ax(Z,H,g,x){return arguments.length===1?q3(Z):new Jd(Z,H,g,x??1)}function Jd(Z,H,g,x){this.h=+Z,this.s=+H,this.l=+g,this.opacity=+x}function H3(Z){return Z=(Z||0)%360,Z<0?Z+360:Z}function By(Z){return Math.max(0,Math.min(1,Z||0))}function Mx(Z,H,g){return(Z<60?H+(g-H)*Z/60:Z<180?g:Z<240?H+(g-H)*(240-Z)/60:H)*255}var hp,$p,Jp,Qm,Qd,G3,W3,X3,Z3,Y3,K3,$3,Sx,Ex=Jr({"node_modules/d3-color/src/color.js"(){wx(),hp=.7,$p=1/hp,Jp="\\s*([+-]?\\d+)\\s*",Qm="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Qd="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",G3=/^#([0-9a-f]{3,8})$/,W3=new RegExp(`^rgb\\(${Jp},${Jp},${Jp}\\)$`),X3=new RegExp(`^rgb\\(${Qd},${Qd},${Qd}\\)$`),Z3=new RegExp(`^rgba\\(${Jp},${Jp},${Jp},${Qm}\\)$`),Y3=new RegExp(`^rgba\\(${Qd},${Qd},${Qd},${Qm}\\)$`),K3=new RegExp(`^hsl\\(${Qm},${Qd},${Qd}\\)$`),$3=new RegExp(`^hsla\\(${Qm},${Qd},${Qd},${Qm}\\)$`),Sx={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Jm(fp,v0,{copy(Z){return Object.assign(new this.constructor,this,Z)},displayable(){return this.rgb().displayable()},hex:B3,formatHex:B3,formatHex8:GL,formatHsl:WL,formatRgb:O3,toString:O3}),Jm(Eh,zy,d0(fp,{brighter(Z){return Z=Z==null?$p:Math.pow($p,Z),new Eh(this.r*Z,this.g*Z,this.b*Z,this.opacity)},darker(Z){return Z=Z==null?hp:Math.pow(hp,Z),new Eh(this.r*Z,this.g*Z,this.b*Z,this.opacity)},rgb(){return this},clamp(){return new Eh(Yp(this.r),Yp(this.g),Yp(this.b),Fy(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:U3,formatHex:U3,formatHex8:XL,formatRgb:j3,toString:j3})),Jm(Jd,Ax,d0(fp,{brighter(Z){return Z=Z==null?$p:Math.pow($p,Z),new Jd(this.h,this.s,this.l*Z,this.opacity)},darker(Z){return Z=Z==null?hp:Math.pow(hp,Z),new Jd(this.h,this.s,this.l*Z,this.opacity)},rgb(){var Z=this.h%360+(this.h<0)*360,H=isNaN(Z)||isNaN(this.s)?0:this.s,g=this.l,x=g+(g<.5?g:1-g)*H,A=2*g-x;return new Eh(Mx(Z>=240?Z-240:Z+120,A,x),Mx(Z,A,x),Mx(Z<120?Z+240:Z-120,A,x),this.opacity)},clamp(){return new Jd(H3(this.h),By(this.s),By(this.l),Fy(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let Z=Fy(this.opacity);return`${Z===1?"hsl(":"hsla("}${H3(this.h)}, ${By(this.s)*100}%, ${By(this.l)*100}%${Z===1?")":`, ${Z})`}`}}))}}),kx,Cx,J3=Jr({"node_modules/d3-color/src/math.js"(){kx=Math.PI/180,Cx=180/Math.PI}});function Q3(Z){if(Z instanceof gv)return new gv(Z.l,Z.a,Z.b,Z.opacity);if(Z instanceof Bv)return eT(Z);Z instanceof Eh||(Z=Tx(Z));var H=Dx(Z.r),g=Dx(Z.g),x=Dx(Z.b),A=Px((.2225045*H+.7168786*g+.0606169*x)/Bx),S,e;return H===g&&g===x?S=e=A:(S=Px((.4360747*H+.3850649*g+.1430804*x)/Fx),e=Px((.0139322*H+.0971045*g+.7141733*x)/Ox)),new gv(116*A-16,500*(S-A),200*(A-e),Z.opacity)}function Lx(Z,H,g,x){return arguments.length===1?Q3(Z):new gv(Z,H,g,x??1)}function gv(Z,H,g,x){this.l=+Z,this.a=+H,this.b=+g,this.opacity=+x}function Px(Z){return Z>tT?Math.pow(Z,.3333333333333333):Z/Ux+Nx}function Ix(Z){return Z>Qp?Z*Z*Z:Ux*(Z-Nx)}function Rx(Z){return 255*(Z<=.0031308?12.92*Z:1.055*Math.pow(Z,.4166666666666667)-.055)}function Dx(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function ZL(Z){if(Z instanceof Bv)return new Bv(Z.h,Z.c,Z.l,Z.opacity);if(Z instanceof gv||(Z=Q3(Z)),Z.a===0&&Z.b===0)return new Bv(NaN,0=1?(g=1,H-1):Math.floor(g*H),A=Z[x],S=Z[x+1],e=x>0?Z[x-1]:2*A-S,t=x()=>Z}});function sT(Z,H){return function(g){return Z+g*H}}function JL(Z,H,g){return Z=Math.pow(Z,g),H=Math.pow(H,g)-Z,g=1/g,function(x){return Math.pow(Z+x*H,g)}}function Uy(Z,H){var g=H-Z;return g?sT(Z,g>180||g<-180?g-360*Math.round(g/360):g):g0(isNaN(Z)?H:Z)}function QL(Z){return(Z=+Z)==1?kh:function(H,g){return g-H?JL(H,g,Z):g0(isNaN(H)?g:H)}}function kh(Z,H){var g=H-Z;return g?sT(Z,g):g0(isNaN(Z)?H:Z)}var rg=Jr({"node_modules/d3-interpolate/src/color.js"(){oT()}});function lT(Z){return function(H){var g=H.length,x=new Array(g),A=new Array(g),S=new Array(g),e,t;for(e=0;eg&&(S=H.slice(g,S),t[e]?t[e]+=S:t[++e]=S),(x=x[0])===(A=A[0])?t[e]?t[e]+=A:t[++e]=A:(t[++e]=null,r.push({i:e,x:yv(x,A)})),g=Hy.lastIndex;return g180?i+=360:i-o>180&&(o+=360),a.push({i:n.push(A(n)+"rotate(",null,x)-2,x:yv(o,i)})):i&&n.push(A(n)+"rotate("+i+x)}function t(o,i,n,a){o!==i?a.push({i:n.push(A(n)+"skewX(",null,x)-2,x:yv(o,i)}):i&&n.push(A(n)+"skewX("+i+x)}function r(o,i,n,a,s,c){if(o!==n||i!==a){var h=s.push(A(s)+"scale(",null,",",null,")");c.push({i:h-4,x:yv(o,n)},{i:h-2,x:yv(i,a)})}else(n!==1||a!==1)&&s.push(A(s)+"scale("+n+","+a+")")}return function(o,i){var n=[],a=[];return o=Z(o),i=Z(i),S(o.translateX,o.translateY,i.translateX,i.translateY,n,a),e(o.rotate,i.rotate,n,a),t(o.skewX,i.skewX,n,a),r(o.scaleX,o.scaleY,i.scaleX,i.scaleY,n,a),o=i=null,function(s){for(var c=-1,h=a.length,p;++cGy,interpolateArray:()=>eP,interpolateBasis:()=>iT,interpolateBasisClosed:()=>nT,interpolateCubehelix:()=>zT,interpolateCubehelixLong:()=>FT,interpolateDate:()=>pT,interpolateDiscrete:()=>iP,interpolateHcl:()=>IT,interpolateHclLong:()=>RT,interpolateHsl:()=>CT,interpolateHslLong:()=>LT,interpolateHue:()=>aP,interpolateLab:()=>yP,interpolateNumber:()=>yv,interpolateNumberArray:()=>Xx,interpolateObject:()=>gT,interpolateRgb:()=>jy,interpolateRgbBasis:()=>uT,interpolateRgbBasisClosed:()=>cT,interpolateRound:()=>sP,interpolateString:()=>_T,interpolateTransformCss:()=>TT,interpolateTransformSvg:()=>AT,interpolateZoom:()=>ET,piecewise:()=>wP,quantize:()=>AP});var ig=Jr({"node_modules/d3-interpolate/src/index.js"(){Wy(),vT(),Wx(),aT(),mT(),nP(),oP(),Vy(),Zx(),yT(),lP(),xT(),dP(),mP(),fT(),gP(),_P(),xP(),bP(),TP(),MP()}}),Kx=Le({"src/traces/sunburst/fill_one.js"(Z,H){"use strict";var g=rs(),x=$a();H.exports=function(S,e,t,r,o){var i=e.data.data,n=i.i,a=o||i.color;if(n>=0){e.i=i.i;var s=t.marker;s.pattern?(!s.colors||!s.pattern.shape)&&(s.color=a,e.color=a):(s.color=a,e.color=a),g.pointStyle(S,t,r,e)}else x.fill(S,a)}}}),BT=Le({"src/traces/sunburst/style.js"(Z,H){"use strict";var g=Ji(),x=$a(),A=ni(),S=$h().resizeText,e=Kx();function t(o){var i=o._fullLayout._sunburstlayer.selectAll(".trace");S(o,i,"sunburst"),i.each(function(n){var a=g.select(this),s=n[0],c=s.trace;a.style("opacity",c.opacity),a.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,i,n,a){var s=i.data.data,c=!i.children,h=s.i,p=A.castOption(n,h,"marker.line.color")||x.defaultLine,d=A.castOption(n,h,"marker.line.width")||0;o.call(e,i,n,a).style("stroke-width",d).call(x.stroke,p).style("opacity",c?n.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),dp=Le({"src/traces/sunburst/helpers.js"(Z){"use strict";var H=ni(),g=$a(),x=fv(),A=Hp();Z.findEntryWithLevel=function(r,o){var i;return o&&r.eachAfter(function(n){if(Z.getPtId(n)===o)return i=n.copy()}),i||r},Z.findEntryWithChild=function(r,o){var i;return r.eachAfter(function(n){for(var a=n.children||[],s=0;s0)},Z.getMaxDepth=function(r){return r.maxdepth>=0?r.maxdepth:1/0},Z.isHeader=function(r,o){return!(Z.isLeaf(r)||r.depth===o._maxDepth-1)};function t(r){return r.data.data.pid}Z.getParent=function(r,o){return Z.findEntryWithLevel(r,t(o))},Z.listPath=function(r,o){var i=r.parent;if(!i)return[];var n=o?[i.data[o]]:[i];return Z.listPath(i,o).concat(n)},Z.getPath=function(r){return Z.listPath(r,"label").join("/")+"/"},Z.formatValue=A.formatPieValue,Z.formatPercent=function(r,o){var i=H.formatPercent(r,0);return i==="0%"&&(i=A.formatPiePercent(r,o)),i}}}),Yy=Le({"src/traces/sunburst/fx.js"(Z,H){"use strict";var g=Ji(),x=so(),A=Td().appendArrayPointValue,S=Dc(),e=ni(),t=Wg(),r=dp(),o=Hp(),i=o.formatPieValue;H.exports=function(s,c,h,p,d){var T=p[0],l=T.trace,_=T.hierarchy,w=l.type==="sunburst",M=l.type==="treemap"||l.type==="icicle";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1);var E=function(v){var u=h._fullLayout;if(!(h._dragging||u.hovermode===!1)){var y=h._fullData[l.index],f=v.data.data,P=f.i,L=r.isHierarchyRoot(v),z=r.getParent(_,v),F=r.getValue(v),O=function(ee){return e.castOption(y,P,ee)},B=O("hovertemplate"),I=S.castHoverinfo(y,u,P),N=u.separators,U;if(B||I&&I!=="none"&&I!=="skip"){var W,Q;w&&(W=T.cx+v.pxmid[0]*(1-v.rInscribed),Q=T.cy+v.pxmid[1]*(1-v.rInscribed)),M&&(W=v._hoverX,Q=v._hoverY);var le={},se=[],fe=[],G=function(ee){return se.indexOf(ee)!==-1};I&&(se=I==="all"?y._module.attributes.hoverinfo.flags:I.split("+")),le.label=f.label,G("label")&&le.label&&fe.push(le.label),f.hasOwnProperty("v")&&(le.value=f.v,le.valueLabel=i(le.value,N),G("value")&&fe.push(le.valueLabel)),le.currentPath=v.currentPath=r.getPath(v.data),G("current path")&&!L&&fe.push(le.currentPath);var J,$=[],X=function(){$.indexOf(J)===-1&&(fe.push(J),$.push(J))};le.percentParent=v.percentParent=F/r.getValue(z),le.parent=v.parentString=r.getPtLabel(z),G("percent parent")&&(J=r.formatPercent(le.percentParent,N)+" of "+le.parent,X()),le.percentEntry=v.percentEntry=F/r.getValue(c),le.entry=v.entry=r.getPtLabel(c),G("percent entry")&&!L&&!v.onPathbar&&(J=r.formatPercent(le.percentEntry,N)+" of "+le.entry,X()),le.percentRoot=v.percentRoot=F/r.getValue(_),le.root=v.root=r.getPtLabel(_),G("percent root")&&!L&&(J=r.formatPercent(le.percentRoot,N)+" of "+le.root,X()),le.text=O("hovertext")||O("text"),G("text")&&(J=le.text,e.isValidTextValue(J)&&fe.push(J)),U=[n(v,y,d.eventDataKeys)];var re={trace:y,y:Q,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:fe.join("
"),name:B||G("name")?y.name:void 0,color:O("hoverlabel.bgcolor")||f.color,borderColor:O("hoverlabel.bordercolor"),fontFamily:O("hoverlabel.font.family"),fontSize:O("hoverlabel.font.size"),fontColor:O("hoverlabel.font.color"),fontWeight:O("hoverlabel.font.weight"),fontStyle:O("hoverlabel.font.style"),fontVariant:O("hoverlabel.font.variant"),nameLength:O("hoverlabel.namelength"),textAlign:O("hoverlabel.align"),hovertemplate:B,hovertemplateLabels:le,eventData:U};w&&(re.x0=W-v.rInscribed*v.rpx1,re.x1=W+v.rInscribed*v.rpx1,re.idealAlign=v.pxmid[0]<0?"left":"right"),M&&(re.x=W,re.idealAlign=W<0?"left":"right");var ae=[];S.loneHover(re,{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:h,inOut_bbox:ae}),U[0].bbox=ae[0],l._hasHoverLabel=!0}if(M){var j=s.select("path.surface");d.styleOne(j,v,y,h,{hovered:!0})}l._hasHoverEvent=!0,h.emit("plotly_hover",{points:U||[n(v,y,d.eventDataKeys)],event:g.event})}},m=function(v){var u=h._fullLayout,y=h._fullData[l.index],f=g.select(this).datum();if(l._hasHoverEvent&&(v.originalEvent=g.event,h.emit("plotly_unhover",{points:[n(f,y,d.eventDataKeys)],event:g.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(S.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1),M){var P=s.select("path.surface");d.styleOne(P,f,y,h,{hovered:!1})}},b=function(v){var u=h._fullLayout,y=h._fullData[l.index],f=w&&(r.isHierarchyRoot(v)||r.isLeaf(v)),P=r.getPtId(v),L=r.isEntry(v)?r.findEntryWithChild(_,P):r.findEntryWithLevel(_,P),z=r.getPtId(L),F={points:[n(v,y,d.eventDataKeys)],event:g.event};f||(F.nextLevel=z);var O=t.triggerHandler(h,"plotly_"+l.type+"click",F);if(O!==!1&&u.hovermode&&(h._hoverdata=[n(v,y,d.eventDataKeys)],S.click(h,g.event)),!f&&O!==!1&&!h._dragging&&!h._transitioning){x.call("_storeDirectGUIEdit",y,u._tracePreGUI[y.uid],{level:y.level});var B={data:[{level:z}],traces:[l.index]},I={frame:{redraw:!1,duration:d.transitionTime},transition:{duration:d.transitionTime,easing:d.transitionEasing},mode:"immediate",fromcurrent:!0};S.loneUnhover(u._hoverlayer.node()),x.call("animate",h,B,I)}};s.on("mouseover",E),s.on("mouseout",m),s.on("click",b)};function n(a,s,c){for(var h=a.data.data,p={curveNumber:s.index,pointNumber:h.i,data:s._input,fullData:s},d=0;dit.x1?2*Math.PI:0)+ee;$e=ue.rpx1Xe?2*Math.PI:0)+ee;Qe={x0:$e,x1:$e}}else Qe={rpx0:se,rpx1:se},S.extendFlat(Qe,pe(ue));else Qe={rpx0:0,rpx1:0};else Qe={x0:ee,x1:ee};return x(Qe,it)}function Me(ue){var ze=$[T.getPtId(ue)],Qe,it=ue.transform;if(ze)Qe=ze;else if(Qe={rpx1:ue.rpx1,transform:{textPosAngle:it.textPosAngle,scale:0,rotate:it.rotate,rCenter:it.rCenter,x:it.x,y:it.y}},J)if(ue.parent)if(Xe){var $e=ue.x1>Xe?2*Math.PI:0;Qe.x0=Qe.x1=$e}else S.extendFlat(Qe,pe(ue));else Qe.x0=Qe.x1=ee;else Qe.x0=Qe.x1=ee;var kt=x(Qe.transform.textPosAngle,ue.transform.textPosAngle),Mt=x(Qe.rpx1,ue.rpx1),Bt=x(Qe.x0,ue.x0),jt=x(Qe.x1,ue.x1),cr=x(Qe.transform.scale,it.scale),nr=x(Qe.transform.rotate,it.rotate),Lr=it.rCenter===0?3:Qe.transform.rCenter===0?1/3:1,mr=x(Qe.transform.rCenter,it.rCenter),xr=function(mt){return mr(Math.pow(mt,Lr))};return function(mt){var Fe=Mt(mt),Ze=Bt(mt),Ne=jt(mt),Se=xr(mt),Ve=_e(Fe,(Ze+Ne)/2),Ee=kt(mt),be={pxmid:Ve,rpx1:Fe,transform:{textPosAngle:Ee,rCenter:Se,x:it.x,y:it.y}};return r(O.type,it,f),{transform:{targetX:Oe(be),targetY:Ie(be),scale:cr(mt),rotate:nr(mt),rCenter:Se}}}}function pe(ue){var ze=ue.parent,Qe=$[T.getPtId(ze)],it={};if(Qe){var $e=ze.children,kt=$e.indexOf(ue),Mt=$e.length,Bt=x(Qe.x0,Qe.x1);it.x0=Bt(kt/Mt),it.x1=Bt(kt/Mt)}else it.x0=it.x1=0;return it}}function _(m){return g.partition().size([2*Math.PI,m.height+1])(m)}Z.formatSliceLabel=function(m,b,v,u,y){var f=v.texttemplate,P=v.textinfo;if(!f&&(!P||P==="none"))return"";var L=y.separators,z=u[0],F=m.data.data,O=z.hierarchy,B=T.isHierarchyRoot(m),I=T.getParent(O,m),N=T.getValue(m);if(!f){var U=P.split("+"),W=function(ae){return U.indexOf(ae)!==-1},Q=[],le;if(W("label")&&F.label&&Q.push(F.label),F.hasOwnProperty("v")&&W("value")&&Q.push(T.formatValue(F.v,L)),!B){W("current path")&&Q.push(T.getPath(m.data));var se=0;W("percent parent")&&se++,W("percent entry")&&se++,W("percent root")&&se++;var fe=se>1;if(se){var G,J=function(ae){le=T.formatPercent(G,L),fe&&(le+=" of "+ae),Q.push(le)};W("percent parent")&&!B&&(G=N/T.getValue(I),J("parent")),W("percent entry")&&(G=N/T.getValue(b),J("entry")),W("percent root")&&(G=N/T.getValue(O),J("root"))}}return W("text")&&(le=S.castOption(v,F.i,"text"),S.isValidTextValue(le)&&Q.push(le)),Q.join("
")}var $=S.castOption(v,F.i,"texttemplate");if(!$)return"";var X={};F.label&&(X.label=F.label),F.hasOwnProperty("v")&&(X.value=F.v,X.valueLabel=T.formatValue(F.v,L)),X.currentPath=T.getPath(m.data),B||(X.percentParent=N/T.getValue(I),X.percentParentLabel=T.formatPercent(X.percentParent,L),X.parent=T.getPtLabel(I)),X.percentEntry=N/T.getValue(b),X.percentEntryLabel=T.formatPercent(X.percentEntry,L),X.entry=T.getPtLabel(b),X.percentRoot=N/T.getValue(O),X.percentRootLabel=T.formatPercent(X.percentRoot,L),X.root=T.getPtLabel(O),F.hasOwnProperty("color")&&(X.color=F.color);var re=S.castOption(v,F.i,"text");return(S.isValidTextValue(re)||re==="")&&(X.text=re),X.customdata=S.castOption(v,F.i,"customdata"),S.texttemplateString($,X,y._d3locale,X,v._meta||{})};function w(m){return m.rpx0===0&&S.isFullCircle([m.x0,m.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(m.halfangle)),m.ring/2))}function M(m){return E(m.rpx1,m.transform.textPosAngle)}function E(m,b){return[m*Math.sin(b),-m*Math.cos(b)]}}}),SP=Le({"src/traces/sunburst/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"sunburst",basePlotModule:VL(),categories:[],animatable:!0,attributes:Py(),layoutAttributes:F3(),supplyDefaults:qL(),supplyLayoutDefaults:HL(),calc:Ry().calc,crossTraceCalc:Ry().crossTraceCalc,plot:$x().plot,style:BT().style,colorbar:Uh(),meta:{}}}}),EP=Le({"lib/sunburst.js"(Z,H){"use strict";H.exports=SP()}}),kP=Le({"src/traces/treemap/base_plot.js"(Z){"use strict";var H=Ku();Z.name="treemap",Z.plot=function(g,x,A,S){H.plotBasePlot(Z.name,g,x,A,S)},Z.clean=function(g,x,A,S){H.cleanBasePlot(Z.name,g,x,A,S)}}}),ng=Le({"src/traces/treemap/constants.js"(Z,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),Jx=Le({"src/traces/treemap/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=Fs().texttemplateAttrs,A=uu(),S=$u().attributes,e=Km(),t=Py(),r=ng(),o=ho().extendFlat,i=Ah().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:o({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:t.marker.colors,pattern:i,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:t.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:o({},e.textfont,{}),editType:"calc"},text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:r.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:o({},e.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:e.sort,root:t.root,domain:S({name:"treemap",trace:!0,editType:"calc"})}}}),OT=Le({"src/traces/treemap/layout_attributes.js"(Z,H){"use strict";H.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),CP=Le({"src/traces/treemap/defaults.js"(Z,H){"use strict";var g=ni(),x=Jx(),A=$a(),S=$u().defaults,e=Nd().handleText,t=Gm().TEXTPAD,r=$m().handleMarkerDefaults,o=Cu(),i=o.hasColorscale,n=o.handleDefaults;H.exports=function(s,c,h,p){function d(y,f){return g.coerce(s,c,x,y,f)}var T=d("labels"),l=d("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=d("values");_&&_.length?d("branchvalues"):d("count"),d("level"),d("maxdepth");var w=d("tiling.packing");w==="squarify"&&d("tiling.squarifyratio"),d("tiling.flip"),d("tiling.pad");var M=d("text");d("texttemplate"),c.texttemplate||d("textinfo",g.isArrayOrTypedArray(M)?"text+label":"label"),d("hovertext"),d("hovertemplate");var E=d("pathbar.visible"),m="auto";e(s,c,p,d,m,{hasPathbar:E,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),d("textposition");var b=c.textposition.indexOf("bottom")!==-1;r(s,c,p,d);var v=c._hasColorscale=i(s,"marker","colors")||(s.marker||{}).coloraxis;v?n(s,c,p,d,{prefix:"marker.",cLetter:"c"}):d("marker.depthfade",!(c.marker.colors||[]).length);var u=c.textfont.size*2;d("marker.pad.t",b?u/4:u),d("marker.pad.l",u/4),d("marker.pad.r",u/4),d("marker.pad.b",b?u:u/4),d("marker.cornerradius"),c._hovered={marker:{line:{width:2,color:A.contrast(p.paper_bgcolor)}}},E&&(d("pathbar.thickness",c.pathbar.textfont.size+2*t),d("pathbar.side"),d("pathbar.edgeshape")),d("sort"),d("root.color"),S(c,p,d),c._length=null}}}),LP=Le({"src/traces/treemap/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=OT();H.exports=function(S,e){function t(r,o){return g.coerce(S,e,x,r,o)}t("treemapcolorway",e.colorway),t("extendtreemapcolors")}}}),NT=Le({"src/traces/treemap/calc.js"(Z){"use strict";var H=Ry();Z.calc=function(g,x){return H.calc(g,x)},Z.crossTraceCalc=function(g){return H._runCrossTraceCalc("treemap",g)}}}),UT=Le({"src/traces/treemap/flip_tree.js"(Z,H){"use strict";H.exports=function g(x,A,S){var e;S.swapXY&&(e=x.x0,x.x0=x.y0,x.y0=e,e=x.x1,x.x1=x.y1,x.y1=e),S.flipX&&(e=x.x0,x.x0=A[0]-x.x1,x.x1=A[0]-e),S.flipY&&(e=x.y0,x.y0=A[1]-x.y1,x.y1=A[1]-e);var t=x.children;if(t)for(var r=0;r0)for(var u=0;u").join(" ")||"";var fe=x.ensureSingle(le,"g","slicetext"),G=x.ensureSingle(fe,"text","",function($){$.attr("data-notex",1)}),J=x.ensureUniformFontSize(s,o.determineTextFont(O,Q,z.font,{onPathbar:!0}));G.text(Q._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(A.font,J).call(S.convertToTspans,s),Q.textBB=A.bBox(G.node()),Q.transform=m(Q,{fontSize:J.size,onPathbar:!0}),Q.transform.fontSize=J.size,v?G.transition().attrTween("transform",function($){var X=f($,n,P,[l,_]);return function(re){return b(X(re))}}):G.attr("transform",b(Q))})}}}),IP=Le({"src/traces/treemap/plot_one.js"(Z,H){"use strict";var g=Ji(),x=(ig(),Wi(tm)).interpolate,A=dp(),S=ni(),e=Gm().TEXTPAD,t=Wm(),r=t.toMoveInsideBar,o=$h(),i=o.recordMinTextSize,n=ng(),a=PP();function s(c){return A.isHierarchyRoot(c)?"":A.getPtId(c)}H.exports=function(h,p,d,T,l){var _=h._fullLayout,w=p[0],M=w.trace,E=M.type,m=E==="icicle",b=w.hierarchy,v=A.findEntryWithLevel(b,M.level),u=g.select(d),y=u.selectAll("g.pathbar"),f=u.selectAll("g.slice");if(!v){y.remove(),f.remove();return}var P=A.isHierarchyRoot(v),L=!_.uniformtext.mode&&A.hasTransition(T),z=A.getMaxDepth(M),F=function(mr){return mr.data.depth-v.data.depth-1?N+Q:-(W+Q):0,se={x0:U,x1:U,y0:le,y1:le+W},fe=function(mr,xr,mt){var Fe=M.tiling.pad,Ze=function(Ee){return Ee-Fe<=xr.x0},Ne=function(Ee){return Ee+Fe>=xr.x1},Se=function(Ee){return Ee-Fe<=xr.y0},Ve=function(Ee){return Ee+Fe>=xr.y1};return mr.x0===xr.x0&&mr.x1===xr.x1&&mr.y0===xr.y0&&mr.y1===xr.y1?{x0:mr.x0,x1:mr.x1,y0:mr.y0,y1:mr.y1}:{x0:Ze(mr.x0-Fe)?0:Ne(mr.x0-Fe)?mt[0]:mr.x0,x1:Ze(mr.x1+Fe)?0:Ne(mr.x1+Fe)?mt[0]:mr.x1,y0:Se(mr.y0-Fe)?0:Ve(mr.y0-Fe)?mt[1]:mr.y0,y1:Se(mr.y1+Fe)?0:Ve(mr.y1+Fe)?mt[1]:mr.y1}},G=null,J={},$={},X=null,re=function(mr,xr){return xr?J[s(mr)]:$[s(mr)]},ae=function(mr,xr,mt,Fe){if(xr)return J[s(b)]||se;var Ze=$[M.level]||mt;return F(mr)?fe(mr,Ze,Fe):{}};w.hasMultipleRoots&&P&&z++,M._maxDepth=z,M._backgroundColor=_.paper_bgcolor,M._entryDepth=v.data.depth,M._atRootLevel=P;var j=-I/2+O.l+O.w*(B.x[1]+B.x[0])/2,ee=-N/2+O.t+O.h*(1-(B.y[1]+B.y[0])/2),ne=function(mr){return j+mr},ce=function(mr){return ee+mr},_e=ce(0),we=ne(0),Oe=function(mr){return we+mr},Ie=function(mr){return _e+mr};function Xe(mr,xr){return mr+","+xr}var tt=Oe(0),rt=function(mr){mr.x=Math.max(tt,mr.x)},Je=M.pathbar.edgeshape,ot=function(mr){var xr=Oe(Math.max(Math.min(mr.x0,mr.x0),0)),mt=Oe(Math.min(Math.max(mr.x1,mr.x1),U)),Fe=Ie(mr.y0),Ze=Ie(mr.y1),Ne=W/2,Se={},Ve={};Se.x=xr,Ve.x=mt,Se.y=Ve.y=(Fe+Ze)/2;var Ee={x:xr,y:Fe},be={x:mt,y:Fe},Ce={x:mt,y:Ze},et={x:xr,y:Ze};return Je===">"?(Ee.x-=Ne,be.x-=Ne,Ce.x-=Ne,et.x-=Ne):Je==="/"?(Ce.x-=Ne,et.x-=Ne,Se.x-=Ne/2,Ve.x-=Ne/2):Je==="\\"?(Ee.x-=Ne,be.x-=Ne,Se.x-=Ne/2,Ve.x-=Ne/2):Je==="<"&&(Se.x-=Ne,Ve.x-=Ne),rt(Ee),rt(et),rt(Se),rt(be),rt(Ce),rt(Ve),"M"+Xe(Ee.x,Ee.y)+"L"+Xe(be.x,be.y)+"L"+Xe(Ve.x,Ve.y)+"L"+Xe(Ce.x,Ce.y)+"L"+Xe(et.x,et.y)+"L"+Xe(Se.x,Se.y)+"Z"},Me=M[m?"tiling":"marker"].pad,pe=function(mr){return M.textposition.indexOf(mr)!==-1},ue=pe("top"),ze=pe("left"),Qe=pe("right"),it=pe("bottom"),$e=function(mr){var xr=ne(mr.x0),mt=ne(mr.x1),Fe=ce(mr.y0),Ze=ce(mr.y1),Ne=mt-xr,Se=Ze-Fe;if(!Ne||!Se)return"";var Ve=M.marker.cornerradius||0,Ee=Math.min(Ve,Ne/2,Se/2);Ee&&mr.data&&mr.data.data&&mr.data.data.label&&(ue&&(Ee=Math.min(Ee,Me.t)),ze&&(Ee=Math.min(Ee,Me.l)),Qe&&(Ee=Math.min(Ee,Me.r)),it&&(Ee=Math.min(Ee,Me.b)));var be=function(Ce,et){return Ee?"a"+Xe(Ee,Ee)+" 0 0 1 "+Xe(Ce,et):""};return"M"+Xe(xr,Fe+Ee)+be(Ee,-Ee)+"L"+Xe(mt-Ee,Fe)+be(Ee,Ee)+"L"+Xe(mt,Ze-Ee)+be(-Ee,Ee)+"L"+Xe(xr+Ee,Ze)+be(-Ee,-Ee)+"Z"},kt=function(mr,xr){var mt=mr.x0,Fe=mr.x1,Ze=mr.y0,Ne=mr.y1,Se=mr.textBB,Ve=ue||xr.isHeader&&!it,Ee=Ve?"start":it?"end":"middle",be=pe("right"),Ce=pe("left")||xr.onPathbar,et=Ce?-1:be?1:0;if(xr.isHeader){if(mt+=(m?Me:Me.l)-e,Fe-=(m?Me:Me.r)-e,mt>=Fe){var ht=(mt+Fe)/2;mt=ht,Fe=ht}var yt;it?(yt=Ne-(m?Me:Me.b),Ze-1,flipY:B.tiling.flip.indexOf("y")>-1,pad:{inner:B.tiling.pad,top:B.marker.pad.t,left:B.marker.pad.l,right:B.marker.pad.r,bottom:B.marker.pad.b}}),le=Q.descendants(),se=1/0,fe=-1/0;le.forEach(function(re){var ae=re.depth;ae>=B._maxDepth?(re.x0=re.x1=(re.x0+re.x1)/2,re.y0=re.y1=(re.y0+re.y1)/2):(se=Math.min(se,ae),fe=Math.max(fe,ae))}),d=d.data(le,o.getPtId),B._maxVisibleLayers=isFinite(fe)?fe-se+1:0,d.enter().append("g").classed("slice",!0),u(d,a,L,[l,_],E),d.order();var G=null;if(v&&P){var J=o.getPtId(P);d.each(function(re){G===null&&o.getPtId(re)===J&&(G={x0:re.x0,x1:re.x1,y0:re.y0,y1:re.y1})})}var $=function(){return G||{x0:0,x1:l,y0:0,y1:_}},X=d;return v&&(X=X.transition().each("end",function(){var re=g.select(this);o.setSliceCursor(re,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),X.each(function(re){var ae=o.isHeader(re,B);re._x0=w(re.x0),re._x1=w(re.x1),re._y0=M(re.y0),re._y1=M(re.y1),re._hoverX=w(re.x1-B.marker.pad.r),re._hoverY=M(U?re.y1-B.marker.pad.b/2:re.y0+B.marker.pad.t/2);var j=g.select(this),ee=x.ensureSingle(j,"path","surface",function(Ie){Ie.style("pointer-events",z?"none":"all")});v?ee.transition().attrTween("d",function(Ie){var Xe=y(Ie,a,$(),[l,_]);return function(tt){return E(Xe(tt))}}):ee.attr("d",E),j.call(i,p,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ee.call(t,re,B,c,{hovered:!1}),re.x0===re.x1||re.y0===re.y1?re._text="":ae?re._text=W?"":o.getPtLabel(re)||"":re._text=n(re,p,B,h,F)||"";var ne=x.ensureSingle(j,"g","slicetext"),ce=x.ensureSingle(ne,"text","",function(Ie){Ie.attr("data-notex",1)}),_e=x.ensureUniformFontSize(c,o.determineTextFont(B,re,F.font)),we=re._text||" ",Oe=ae&&we.indexOf("
")===-1;ce.text(we).classed("slicetext",!0).attr("text-anchor",N?"end":I||Oe?"start":"middle").call(A.font,_e).call(S.convertToTspans,c),re.textBB=A.bBox(ce.node()),re.transform=m(re,{fontSize:_e.size,isHeader:ae}),re.transform.fontSize=_e.size,v?ce.transition().attrTween("transform",function(Ie){var Xe=f(Ie,a,$(),[l,_]);return function(tt){return b(Xe(tt))}}):ce.attr("transform",b(re))}),G}}}),DP=Le({"src/traces/treemap/plot.js"(Z,H){"use strict";var g=VT(),x=RP();H.exports=function(S,e,t,r){return g(S,e,t,r,{type:"treemap",drawDescendants:x})}}}),zP=Le({"src/traces/treemap/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"treemap",basePlotModule:kP(),categories:[],animatable:!0,attributes:Jx(),layoutAttributes:OT(),supplyDefaults:CP(),supplyLayoutDefaults:LP(),calc:NT().calc,crossTraceCalc:NT().crossTraceCalc,plot:DP(),style:Qx().style,colorbar:Uh(),meta:{}}}}),FP=Le({"lib/treemap.js"(Z,H){"use strict";H.exports=zP()}}),BP=Le({"src/traces/icicle/base_plot.js"(Z){"use strict";var H=Ku();Z.name="icicle",Z.plot=function(g,x,A,S){H.plotBasePlot(Z.name,g,x,A,S)},Z.clean=function(g,x,A,S){H.cleanBasePlot(Z.name,g,x,A,S)}}}),qT=Le({"src/traces/icicle/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=Fs().texttemplateAttrs,A=uu(),S=$u().attributes,e=Km(),t=Py(),r=Jx(),o=ng(),i=ho().extendFlat,n=Ah().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:r.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:i({colors:t.marker.colors,line:t.marker.line,pattern:n,editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),leaf:t.leaf,pathbar:r.pathbar,text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:o.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:o.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:r.outsidetextfont,textposition:r.textposition,sort:e.sort,root:t.root,domain:S({name:"icicle",trace:!0,editType:"calc"})}}}),HT=Le({"src/traces/icicle/layout_attributes.js"(Z,H){"use strict";H.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),OP=Le({"src/traces/icicle/defaults.js"(Z,H){"use strict";var g=ni(),x=qT(),A=$a(),S=$u().defaults,e=Nd().handleText,t=Gm().TEXTPAD,r=$m().handleMarkerDefaults,o=Cu(),i=o.hasColorscale,n=o.handleDefaults;H.exports=function(s,c,h,p){function d(b,v){return g.coerce(s,c,x,b,v)}var T=d("labels"),l=d("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=d("values");_&&_.length?d("branchvalues"):d("count"),d("level"),d("maxdepth"),d("tiling.orientation"),d("tiling.flip"),d("tiling.pad");var w=d("text");d("texttemplate"),c.texttemplate||d("textinfo",g.isArrayOrTypedArray(w)?"text+label":"label"),d("hovertext"),d("hovertemplate");var M=d("pathbar.visible"),E="auto";e(s,c,p,d,E,{hasPathbar:M,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),d("textposition"),r(s,c,p,d);var m=c._hasColorscale=i(s,"marker","colors")||(s.marker||{}).coloraxis;m&&n(s,c,p,d,{prefix:"marker.",cLetter:"c"}),d("leaf.opacity",m?1:.7),c._hovered={marker:{line:{width:2,color:A.contrast(p.paper_bgcolor)}}},M&&(d("pathbar.thickness",c.pathbar.textfont.size+2*t),d("pathbar.side"),d("pathbar.edgeshape")),d("sort"),d("root.color"),S(c,p,d),c._length=null}}}),NP=Le({"src/traces/icicle/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=HT();H.exports=function(S,e){function t(r,o){return g.coerce(S,e,x,r,o)}t("iciclecolorway",e.colorway),t("extendiciclecolors")}}}),GT=Le({"src/traces/icicle/calc.js"(Z){"use strict";var H=Ry();Z.calc=function(g,x){return H.calc(g,x)},Z.crossTraceCalc=function(g){return H._runCrossTraceCalc("icicle",g)}}}),UP=Le({"src/traces/icicle/partition.js"(Z,H){"use strict";var g=Iy(),x=UT();H.exports=function(S,e,t){var r=t.flipX,o=t.flipY,i=t.orientation==="h",n=t.maxDepth,a=e[0],s=e[1];n&&(a=(S.height+1)*e[0]/Math.min(S.height+1,n),s=(S.height+1)*e[1]/Math.min(S.height+1,n));var c=g.partition().padding(t.pad.inner).size(i?[e[1],a]:[e[0],s])(S);return(i||r||o)&&x(c,e,{swapXY:i,flipX:r,flipY:o}),c}}}),WT=Le({"src/traces/icicle/style.js"(Z,H){"use strict";var g=Ji(),x=$a(),A=ni(),S=$h().resizeText,e=Kx();function t(o){var i=o._fullLayout._iciclelayer.selectAll(".trace");S(o,i,"icicle"),i.each(function(n){var a=g.select(this),s=n[0],c=s.trace;a.style("opacity",c.opacity),a.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,i,n,a){var s=i.data.data,c=!i.children,h=s.i,p=A.castOption(n,h,"marker.line.color")||x.defaultLine,d=A.castOption(n,h,"marker.line.width")||0;o.call(e,i,n,a).style("stroke-width",d).call(x.stroke,p).style("opacity",c?n.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),jP=Le({"src/traces/icicle/draw_descendants.js"(Z,H){"use strict";var g=Ji(),x=ni(),A=rs(),S=$l(),e=UP(),t=WT().styleOne,r=ng(),o=dp(),i=Yy(),n=$x().formatSliceLabel,a=!1;H.exports=function(c,h,p,d,T){var l=T.width,_=T.height,w=T.viewX,M=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,v=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,O=h[0],B=O.trace,I=B.textposition.indexOf("left")!==-1,N=B.textposition.indexOf("right")!==-1,U=B.textposition.indexOf("bottom")!==-1,W=e(p,[l,_],{flipX:B.tiling.flip.indexOf("x")>-1,flipY:B.tiling.flip.indexOf("y")>-1,orientation:B.tiling.orientation,pad:{inner:B.tiling.pad},maxDepth:B._maxDepth}),Q=W.descendants(),le=1/0,se=-1/0;Q.forEach(function(X){var re=X.depth;re>=B._maxDepth?(X.x0=X.x1=(X.x0+X.x1)/2,X.y0=X.y1=(X.y0+X.y1)/2):(le=Math.min(le,re),se=Math.max(se,re))}),d=d.data(Q,o.getPtId),B._maxVisibleLayers=isFinite(se)?se-le+1:0,d.enter().append("g").classed("slice",!0),u(d,a,L,[l,_],E),d.order();var fe=null;if(v&&P){var G=o.getPtId(P);d.each(function(X){fe===null&&o.getPtId(X)===G&&(fe={x0:X.x0,x1:X.x1,y0:X.y0,y1:X.y1})})}var J=function(){return fe||{x0:0,x1:l,y0:0,y1:_}},$=d;return v&&($=$.transition().each("end",function(){var X=g.select(this);o.setSliceCursor(X,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),$.each(function(X){X._x0=w(X.x0),X._x1=w(X.x1),X._y0=M(X.y0),X._y1=M(X.y1),X._hoverX=w(X.x1-B.tiling.pad),X._hoverY=M(U?X.y1-B.tiling.pad/2:X.y0+B.tiling.pad/2);var re=g.select(this),ae=x.ensureSingle(re,"path","surface",function(ce){ce.style("pointer-events",z?"none":"all")});v?ae.transition().attrTween("d",function(ce){var _e=y(ce,a,J(),[l,_],{orientation:B.tiling.orientation,flipX:B.tiling.flip.indexOf("x")>-1,flipY:B.tiling.flip.indexOf("y")>-1});return function(we){return E(_e(we))}}):ae.attr("d",E),re.call(i,p,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ae.call(t,X,B,c,{hovered:!1}),X.x0===X.x1||X.y0===X.y1?X._text="":X._text=n(X,p,B,h,F)||"";var j=x.ensureSingle(re,"g","slicetext"),ee=x.ensureSingle(j,"text","",function(ce){ce.attr("data-notex",1)}),ne=x.ensureUniformFontSize(c,o.determineTextFont(B,X,F.font));ee.text(X._text||" ").classed("slicetext",!0).attr("text-anchor",N?"end":I?"start":"middle").call(A.font,ne).call(S.convertToTspans,c),X.textBB=A.bBox(ee.node()),X.transform=m(X,{fontSize:ne.size}),X.transform.fontSize=ne.size,v?ee.transition().attrTween("transform",function(ce){var _e=f(ce,a,J(),[l,_]);return function(we){return b(_e(we))}}):ee.attr("transform",b(X))}),fe}}}),VP=Le({"src/traces/icicle/plot.js"(Z,H){"use strict";var g=VT(),x=jP();H.exports=function(S,e,t,r){return g(S,e,t,r,{type:"icicle",drawDescendants:x})}}}),qP=Le({"src/traces/icicle/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"icicle",basePlotModule:BP(),categories:[],animatable:!0,attributes:qT(),layoutAttributes:HT(),supplyDefaults:OP(),supplyLayoutDefaults:NP(),calc:GT().calc,crossTraceCalc:GT().crossTraceCalc,plot:VP(),style:WT().style,colorbar:Uh(),meta:{}}}}),HP=Le({"lib/icicle.js"(Z,H){"use strict";H.exports=qP()}}),GP=Le({"src/traces/funnelarea/base_plot.js"(Z){"use strict";var H=Ku();Z.name="funnelarea",Z.plot=function(g,x,A,S){H.plotBasePlot(Z.name,g,x,A,S)},Z.clean=function(g,x,A,S){H.cleanBasePlot(Z.name,g,x,A,S)}}}),XT=Le({"src/traces/funnelarea/attributes.js"(Z,H){"use strict";var g=Km(),x=Sl(),A=$u().attributes,S=Fs().hovertemplateAttrs,e=Fs().texttemplateAttrs,t=ho().extendFlat;H.exports={labels:g.labels,label0:g.label0,dlabel:g.dlabel,values:g.values,marker:{colors:g.marker.colors,line:{color:t({},g.marker.line.color,{dflt:null}),width:t({},g.marker.line.width,{dflt:1}),editType:"calc"},pattern:g.marker.pattern,editType:"calc"},text:g.text,hovertext:g.hovertext,scalegroup:t({},g.scalegroup,{}),textinfo:t({},g.textinfo,{flags:["label","text","value","percent"]}),texttemplate:e({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:t({},x.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:S({},{keys:["label","color","value","text","percent"]}),textposition:t({},g.textposition,{values:["inside","none"],dflt:"inside"}),textfont:g.textfont,insidetextfont:g.insidetextfont,title:{text:g.title.text,font:g.title.font,position:t({},g.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:A({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}}}),ZT=Le({"src/traces/funnelarea/layout_attributes.js"(Z,H){"use strict";var g=xx().hiddenlabels;H.exports={hiddenlabels:g,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),WP=Le({"src/traces/funnelarea/defaults.js"(Z,H){"use strict";var g=ni(),x=XT(),A=$u().defaults,S=Nd().handleText,e=$m().handleLabelsAndValues,t=$m().handleMarkerDefaults;H.exports=function(o,i,n,a){function s(E,m){return g.coerce(o,i,x,E,m)}var c=s("labels"),h=s("values"),p=e(c,h),d=p.len;if(i._hasLabels=p.hasLabels,i._hasValues=p.hasValues,!i._hasLabels&&i._hasValues&&(s("label0"),s("dlabel")),!d){i.visible=!1;return}i._length=d,t(o,i,a,s),s("scalegroup");var T=s("text"),l=s("texttemplate"),_;if(l||(_=s("textinfo",Array.isArray(T)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),l||_&&_!=="none"){var w=s("textposition");S(o,i,a,s,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else _==="none"&&s("textposition","none");A(i,a,s);var M=s("title.text");M&&(s("title.position"),g.coerceFont(s,"title.font",a.font)),s("aspectratio"),s("baseratio")}}}),XP=Le({"src/traces/funnelarea/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=ZT();H.exports=function(S,e){function t(r,o){return g.coerce(S,e,x,r,o)}t("hiddenlabels"),t("funnelareacolorway",e.colorway),t("extendfunnelareacolors")}}}),YT=Le({"src/traces/funnelarea/calc.js"(Z,H){"use strict";var g=h0();function x(S,e){return g.calc(S,e)}function A(S){g.crossTraceCalc(S,{type:"funnelarea"})}H.exports={calc:x,crossTraceCalc:A}}}),ZP=Le({"src/traces/funnelarea/plot.js"(Z,H){"use strict";var g=Ji(),x=rs(),A=ni(),S=A.strScale,e=A.strTranslate,t=$l(),r=Wm(),o=r.toMoveInsideBar,i=$h(),n=i.recordMinTextSize,a=i.clearMinTextSize,s=Hp(),c=bx(),h=c.attachFxHandlers,p=c.determineInsideTextFont,d=c.layoutAreas,T=c.prerenderTitles,l=c.positionTitleOutside,_=c.formatSliceLabel;H.exports=function(b,v){var u=b._context.staticPlot,y=b._fullLayout;a("funnelarea",y),T(v,b),d(v,y._size),A.makeTraceGroups(y._funnelarealayer,v,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace;E(f),P.each(function(){var F=g.select(this).selectAll("g.slice").data(f);F.enter().append("g").classed("slice",!0),F.exit().remove(),F.each(function(B,I){if(B.hidden){g.select(this).selectAll("path,g").remove();return}B.pointNumber=B.i,B.curveNumber=z.index;var N=L.cx,U=L.cy,W=g.select(this),Q=W.selectAll("path.surface").data([B]);Q.enter().append("path").classed("surface",!0).style({"pointer-events":u?"none":"all"}),W.call(h,b,f);var le="M"+(N+B.TR[0])+","+(U+B.TR[1])+w(B.TR,B.BR)+w(B.BR,B.BL)+w(B.BL,B.TL)+"Z";Q.attr("d",le),_(b,B,L);var se=s.castOption(z.textposition,B.pts),fe=W.selectAll("g.slicetext").data(B.text&&se!=="none"?[0]:[]);fe.enter().append("g").classed("slicetext",!0),fe.exit().remove(),fe.each(function(){var G=A.ensureSingle(g.select(this),"text","",function(ne){ne.attr("data-notex",1)}),J=A.ensureUniformFontSize(b,p(z,B,y.font));G.text(B.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x.font,J).call(t.convertToTspans,b);var $=x.bBox(G.node()),X,re,ae,j=Math.min(B.BL[1],B.BR[1])+U,ee=Math.max(B.TL[1],B.TR[1])+U;re=Math.max(B.TL[0],B.BL[0])+N,ae=Math.min(B.TR[0],B.BR[0])+N,X=o(re,ae,j,ee,$,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),X.fontSize=J.size,n(z.type,X,y),f[I].transform=X,A.setTransormAndDisplay(G,X)})});var O=g.select(this).selectAll("g.titletext").data(z.title.text?[0]:[]);O.enter().append("g").classed("titletext",!0),O.exit().remove(),O.each(function(){var B=A.ensureSingle(g.select(this),"text","",function(U){U.attr("data-notex",1)}),I=z.title.text;z._meta&&(I=A.templateString(I,z._meta)),B.text(I).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x.font,z.title.font).call(t.convertToTspans,b);var N=l(L,y._size);B.attr("transform",e(N.x,N.y)+S(Math.min(1,N.scale))+e(N.tx,N.ty))})})})};function w(m,b){var v=b[0]-m[0],u=b[1]-m[1];return"l"+v+","+u}function M(m,b){return[.5*(m[0]+b[0]),.5*(m[1]+b[1])]}function E(m){if(!m.length)return;var b=m[0],v=b.trace,u=v.aspectratio,y=v.baseratio;y>.999&&(y=.999);var f=Math.pow(y,2),P=b.vTotal,L=P*f/(1-f),z=P,F=L/P;function O(){var ce=Math.sqrt(F);return{x:ce,y:-ce}}function B(){var ce=O();return[ce.x,ce.y]}var I,N=[];N.push(B());var U,W;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){var Q=W.v/z;F+=Q,N.push(B())}var le=1/0,se=-1/0;for(U=0;U-1;U--)if(W=m[U],!W.hidden){j+=1;var ee=N[j][0],ne=N[j][1];W.TL=[-ee,ne],W.TR=[ee,ne],W.BL=re,W.BR=ae,W.pxmid=M(W.TR,W.BR),re=W.TL,ae=W.TR}}}}),YP=Le({"src/traces/funnelarea/style.js"(Z,H){"use strict";var g=Ji(),x=$g(),A=$h().resizeText;H.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");A(e,t,"funnelarea"),t.each(function(r){var o=r[0],i=o.trace,n=g.select(this);n.style({opacity:i.opacity}),n.selectAll("path.surface").each(function(a){g.select(this).call(x,a,i,e)})})}}}),KP=Le({"src/traces/funnelarea/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"funnelarea",basePlotModule:GP(),categories:["pie-like","funnelarea","showLegend"],attributes:XT(),layoutAttributes:ZT(),supplyDefaults:WP(),supplyLayoutDefaults:XP(),calc:YT().calc,crossTraceCalc:YT().crossTraceCalc,plot:ZP(),style:YP(),styleOne:$g(),meta:{}}}}),$P=Le({"lib/funnelarea.js"(Z,H){"use strict";H.exports=KP()}}),Ch=Le({"stackgl_modules/index.js"(Z,H){(function(){var g={1964:function(e,t,r){e.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(e,t,r){"use strict";var o;function i(Ee,be){if(!(Ee instanceof be))throw new TypeError("Cannot call a class as a function")}function n(Ee,be){for(var Ce=0;Cev)throw new RangeError('The value "'+Ee+'" is invalid for option "size"');var be=new Uint8Array(Ee);return Object.setPrototypeOf(be,f.prototype),be}function f(Ee,be,Ce){if(typeof Ee=="number"){if(typeof be=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return F(Ee)}return P(Ee,be,Ce)}f.poolSize=8192;function P(Ee,be,Ce){if(typeof Ee=="string")return O(Ee,be);if(ArrayBuffer.isView(Ee))return I(Ee);if(Ee==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+M(Ee));if(Fe(Ee,ArrayBuffer)||Ee&&Fe(Ee.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Fe(Ee,SharedArrayBuffer)||Ee&&Fe(Ee.buffer,SharedArrayBuffer)))return N(Ee,be,Ce);if(typeof Ee=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var et=Ee.valueOf&&Ee.valueOf();if(et!=null&&et!==Ee)return f.from(et,be,Ce);var ht=U(Ee);if(ht)return ht;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Ee[Symbol.toPrimitive]=="function")return f.from(Ee[Symbol.toPrimitive]("string"),be,Ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+M(Ee))}f.from=function(Ee,be,Ce){return P(Ee,be,Ce)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function L(Ee){if(typeof Ee!="number")throw new TypeError('"size" argument must be of type number');if(Ee<0)throw new RangeError('The value "'+Ee+'" is invalid for option "size"')}function z(Ee,be,Ce){return L(Ee),Ee<=0?y(Ee):be!==void 0?typeof Ce=="string"?y(Ee).fill(be,Ce):y(Ee).fill(be):y(Ee)}f.alloc=function(Ee,be,Ce){return z(Ee,be,Ce)};function F(Ee){return L(Ee),y(Ee<0?0:W(Ee)|0)}f.allocUnsafe=function(Ee){return F(Ee)},f.allocUnsafeSlow=function(Ee){return F(Ee)};function O(Ee,be){if((typeof be!="string"||be==="")&&(be="utf8"),!f.isEncoding(be))throw new TypeError("Unknown encoding: "+be);var Ce=le(Ee,be)|0,et=y(Ce),ht=et.write(Ee,be);return ht!==Ce&&(et=et.slice(0,ht)),et}function B(Ee){for(var be=Ee.length<0?0:W(Ee.length)|0,Ce=y(be),et=0;et=v)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+v.toString(16)+" bytes");return Ee|0}function Q(Ee){return+Ee!=Ee&&(Ee=0),f.alloc(+Ee)}f.isBuffer=function(be){return be!=null&&be._isBuffer===!0&&be!==f.prototype},f.compare=function(be,Ce){if(Fe(be,Uint8Array)&&(be=f.from(be,be.offset,be.byteLength)),Fe(Ce,Uint8Array)&&(Ce=f.from(Ce,Ce.offset,Ce.byteLength)),!f.isBuffer(be)||!f.isBuffer(Ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(be===Ce)return 0;for(var et=be.length,ht=Ce.length,yt=0,Pt=Math.min(et,ht);ytht.length?(f.isBuffer(Pt)||(Pt=f.from(Pt)),Pt.copy(ht,yt)):Uint8Array.prototype.set.call(ht,Pt,yt);else if(f.isBuffer(Pt))Pt.copy(ht,yt);else throw new TypeError('"list" argument must be an Array of Buffers');yt+=Pt.length}return ht};function le(Ee,be){if(f.isBuffer(Ee))return Ee.length;if(ArrayBuffer.isView(Ee)||Fe(Ee,ArrayBuffer))return Ee.byteLength;if(typeof Ee!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+M(Ee));var Ce=Ee.length,et=arguments.length>2&&arguments[2]===!0;if(!et&&Ce===0)return 0;for(var ht=!1;;)switch(be){case"ascii":case"latin1":case"binary":return Ce;case"utf8":case"utf-8":return nr(Ee).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ce*2;case"hex":return Ce>>>1;case"base64":return xr(Ee).length;default:if(ht)return et?-1:nr(Ee).length;be=(""+be).toLowerCase(),ht=!0}}f.byteLength=le;function se(Ee,be,Ce){var et=!1;if((be===void 0||be<0)&&(be=0),be>this.length||((Ce===void 0||Ce>this.length)&&(Ce=this.length),Ce<=0)||(Ce>>>=0,be>>>=0,Ce<=be))return"";for(Ee||(Ee="utf8");;)switch(Ee){case"hex":return Ie(this,be,Ce);case"utf8":case"utf-8":return ne(this,be,Ce);case"ascii":return we(this,be,Ce);case"latin1":case"binary":return Oe(this,be,Ce);case"base64":return ee(this,be,Ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Xe(this,be,Ce);default:if(et)throw new TypeError("Unknown encoding: "+Ee);Ee=(Ee+"").toLowerCase(),et=!0}}f.prototype._isBuffer=!0;function fe(Ee,be,Ce){var et=Ee[be];Ee[be]=Ee[Ce],Ee[Ce]=et}f.prototype.swap16=function(){var be=this.length;if(be%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Ce=0;CeCe&&(be+=" ... "),""},b&&(f.prototype[b]=f.prototype.inspect),f.prototype.compare=function(be,Ce,et,ht,yt){if(Fe(be,Uint8Array)&&(be=f.from(be,be.offset,be.byteLength)),!f.isBuffer(be))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+M(be));if(Ce===void 0&&(Ce=0),et===void 0&&(et=be?be.length:0),ht===void 0&&(ht=0),yt===void 0&&(yt=this.length),Ce<0||et>be.length||ht<0||yt>this.length)throw new RangeError("out of range index");if(ht>=yt&&Ce>=et)return 0;if(ht>=yt)return-1;if(Ce>=et)return 1;if(Ce>>>=0,et>>>=0,ht>>>=0,yt>>>=0,this===be)return 0;for(var Pt=yt-ht,Ot=et-Ce,Wt=Math.min(Pt,Ot),$t=this.slice(ht,yt),lr=be.slice(Ce,et),fi=0;fi2147483647?Ce=2147483647:Ce<-2147483648&&(Ce=-2147483648),Ce=+Ce,Ze(Ce)&&(Ce=ht?0:Ee.length-1),Ce<0&&(Ce=Ee.length+Ce),Ce>=Ee.length){if(ht)return-1;Ce=Ee.length-1}else if(Ce<0)if(ht)Ce=0;else return-1;if(typeof be=="string"&&(be=f.from(be,et)),f.isBuffer(be))return be.length===0?-1:J(Ee,be,Ce,et,ht);if(typeof be=="number")return be=be&255,typeof Uint8Array.prototype.indexOf=="function"?ht?Uint8Array.prototype.indexOf.call(Ee,be,Ce):Uint8Array.prototype.lastIndexOf.call(Ee,be,Ce):J(Ee,[be],Ce,et,ht);throw new TypeError("val must be string, number or Buffer")}function J(Ee,be,Ce,et,ht){var yt=1,Pt=Ee.length,Ot=be.length;if(et!==void 0&&(et=String(et).toLowerCase(),et==="ucs2"||et==="ucs-2"||et==="utf16le"||et==="utf-16le")){if(Ee.length<2||be.length<2)return-1;yt=2,Pt/=2,Ot/=2,Ce/=2}function Wt(Bi,zi){return yt===1?Bi[zi]:Bi.readUInt16BE(zi*yt)}var $t;if(ht){var lr=-1;for($t=Ce;$tPt&&(Ce=Pt-Ot),$t=Ce;$t>=0;$t--){for(var fi=!0,Pi=0;Piht&&(et=ht)):et=ht;var yt=be.length;et>yt/2&&(et=yt/2);var Pt;for(Pt=0;Pt>>0,isFinite(et)?(et=et>>>0,ht===void 0&&(ht="utf8")):(ht=et,et=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var yt=this.length-Ce;if((et===void 0||et>yt)&&(et=yt),be.length>0&&(et<0||Ce<0)||Ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");ht||(ht="utf8");for(var Pt=!1;;)switch(ht){case"hex":return $(this,be,Ce,et);case"utf8":case"utf-8":return X(this,be,Ce,et);case"ascii":case"latin1":case"binary":return re(this,be,Ce,et);case"base64":return ae(this,be,Ce,et);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,be,Ce,et);default:if(Pt)throw new TypeError("Unknown encoding: "+ht);ht=(""+ht).toLowerCase(),Pt=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(Ee,be,Ce){return be===0&&Ce===Ee.length?E.fromByteArray(Ee):E.fromByteArray(Ee.slice(be,Ce))}function ne(Ee,be,Ce){Ce=Math.min(Ee.length,Ce);for(var et=[],ht=be;ht239?4:yt>223?3:yt>191?2:1;if(ht+Ot<=Ce){var Wt=void 0,$t=void 0,lr=void 0,fi=void 0;switch(Ot){case 1:yt<128&&(Pt=yt);break;case 2:Wt=Ee[ht+1],(Wt&192)===128&&(fi=(yt&31)<<6|Wt&63,fi>127&&(Pt=fi));break;case 3:Wt=Ee[ht+1],$t=Ee[ht+2],(Wt&192)===128&&($t&192)===128&&(fi=(yt&15)<<12|(Wt&63)<<6|$t&63,fi>2047&&(fi<55296||fi>57343)&&(Pt=fi));break;case 4:Wt=Ee[ht+1],$t=Ee[ht+2],lr=Ee[ht+3],(Wt&192)===128&&($t&192)===128&&(lr&192)===128&&(fi=(yt&15)<<18|(Wt&63)<<12|($t&63)<<6|lr&63,fi>65535&&fi<1114112&&(Pt=fi))}}Pt===null?(Pt=65533,Ot=1):Pt>65535&&(Pt-=65536,et.push(Pt>>>10&1023|55296),Pt=56320|Pt&1023),et.push(Pt),ht+=Ot}return _e(et)}var ce=4096;function _e(Ee){var be=Ee.length;if(be<=ce)return String.fromCharCode.apply(String,Ee);for(var Ce="",et=0;etet)&&(Ce=et);for(var ht="",yt=be;ytet&&(be=et),Ce<0?(Ce+=et,Ce<0&&(Ce=0)):Ce>et&&(Ce=et),CeCe)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(be,Ce,et){be=be>>>0,Ce=Ce>>>0,et||tt(be,Ce,this.length);for(var ht=this[be],yt=1,Pt=0;++Pt>>0,Ce=Ce>>>0,et||tt(be,Ce,this.length);for(var ht=this[be+--Ce],yt=1;Ce>0&&(yt*=256);)ht+=this[be+--Ce]*yt;return ht},f.prototype.readUint8=f.prototype.readUInt8=function(be,Ce){return be=be>>>0,Ce||tt(be,1,this.length),this[be]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(be,Ce){return be=be>>>0,Ce||tt(be,2,this.length),this[be]|this[be+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(be,Ce){return be=be>>>0,Ce||tt(be,2,this.length),this[be]<<8|this[be+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(be,Ce){return be=be>>>0,Ce||tt(be,4,this.length),(this[be]|this[be+1]<<8|this[be+2]<<16)+this[be+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(be,Ce){return be=be>>>0,Ce||tt(be,4,this.length),this[be]*16777216+(this[be+1]<<16|this[be+2]<<8|this[be+3])},f.prototype.readBigUInt64LE=Se(function(be){be=be>>>0,Mt(be,"offset");var Ce=this[be],et=this[be+7];(Ce===void 0||et===void 0)&&Bt(be,this.length-8);var ht=Ce+this[++be]*Math.pow(2,8)+this[++be]*Math.pow(2,16)+this[++be]*Math.pow(2,24),yt=this[++be]+this[++be]*Math.pow(2,8)+this[++be]*Math.pow(2,16)+et*Math.pow(2,24);return BigInt(ht)+(BigInt(yt)<>>0,Mt(be,"offset");var Ce=this[be],et=this[be+7];(Ce===void 0||et===void 0)&&Bt(be,this.length-8);var ht=Ce*Math.pow(2,24)+this[++be]*Math.pow(2,16)+this[++be]*Math.pow(2,8)+this[++be],yt=this[++be]*Math.pow(2,24)+this[++be]*Math.pow(2,16)+this[++be]*Math.pow(2,8)+et;return(BigInt(ht)<>>0,Ce=Ce>>>0,et||tt(be,Ce,this.length);for(var ht=this[be],yt=1,Pt=0;++Pt=yt&&(ht-=Math.pow(2,8*Ce)),ht},f.prototype.readIntBE=function(be,Ce,et){be=be>>>0,Ce=Ce>>>0,et||tt(be,Ce,this.length);for(var ht=Ce,yt=1,Pt=this[be+--ht];ht>0&&(yt*=256);)Pt+=this[be+--ht]*yt;return yt*=128,Pt>=yt&&(Pt-=Math.pow(2,8*Ce)),Pt},f.prototype.readInt8=function(be,Ce){return be=be>>>0,Ce||tt(be,1,this.length),this[be]&128?(255-this[be]+1)*-1:this[be]},f.prototype.readInt16LE=function(be,Ce){be=be>>>0,Ce||tt(be,2,this.length);var et=this[be]|this[be+1]<<8;return et&32768?et|4294901760:et},f.prototype.readInt16BE=function(be,Ce){be=be>>>0,Ce||tt(be,2,this.length);var et=this[be+1]|this[be]<<8;return et&32768?et|4294901760:et},f.prototype.readInt32LE=function(be,Ce){return be=be>>>0,Ce||tt(be,4,this.length),this[be]|this[be+1]<<8|this[be+2]<<16|this[be+3]<<24},f.prototype.readInt32BE=function(be,Ce){return be=be>>>0,Ce||tt(be,4,this.length),this[be]<<24|this[be+1]<<16|this[be+2]<<8|this[be+3]},f.prototype.readBigInt64LE=Se(function(be){be=be>>>0,Mt(be,"offset");var Ce=this[be],et=this[be+7];(Ce===void 0||et===void 0)&&Bt(be,this.length-8);var ht=this[be+4]+this[be+5]*Math.pow(2,8)+this[be+6]*Math.pow(2,16)+(et<<24);return(BigInt(ht)<>>0,Mt(be,"offset");var Ce=this[be],et=this[be+7];(Ce===void 0||et===void 0)&&Bt(be,this.length-8);var ht=(Ce<<24)+this[++be]*Math.pow(2,16)+this[++be]*Math.pow(2,8)+this[++be];return(BigInt(ht)<>>0,Ce||tt(be,4,this.length),m.read(this,be,!0,23,4)},f.prototype.readFloatBE=function(be,Ce){return be=be>>>0,Ce||tt(be,4,this.length),m.read(this,be,!1,23,4)},f.prototype.readDoubleLE=function(be,Ce){return be=be>>>0,Ce||tt(be,8,this.length),m.read(this,be,!0,52,8)},f.prototype.readDoubleBE=function(be,Ce){return be=be>>>0,Ce||tt(be,8,this.length),m.read(this,be,!1,52,8)};function rt(Ee,be,Ce,et,ht,yt){if(!f.isBuffer(Ee))throw new TypeError('"buffer" argument must be a Buffer instance');if(be>ht||beEe.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(be,Ce,et,ht){if(be=+be,Ce=Ce>>>0,et=et>>>0,!ht){var yt=Math.pow(2,8*et)-1;rt(this,be,Ce,et,yt,0)}var Pt=1,Ot=0;for(this[Ce]=be&255;++Ot>>0,et=et>>>0,!ht){var yt=Math.pow(2,8*et)-1;rt(this,be,Ce,et,yt,0)}var Pt=et-1,Ot=1;for(this[Ce+Pt]=be&255;--Pt>=0&&(Ot*=256);)this[Ce+Pt]=be/Ot&255;return Ce+et},f.prototype.writeUint8=f.prototype.writeUInt8=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,1,255,0),this[Ce]=be&255,Ce+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,2,65535,0),this[Ce]=be&255,this[Ce+1]=be>>>8,Ce+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,2,65535,0),this[Ce]=be>>>8,this[Ce+1]=be&255,Ce+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,4,4294967295,0),this[Ce+3]=be>>>24,this[Ce+2]=be>>>16,this[Ce+1]=be>>>8,this[Ce]=be&255,Ce+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,4,4294967295,0),this[Ce]=be>>>24,this[Ce+1]=be>>>16,this[Ce+2]=be>>>8,this[Ce+3]=be&255,Ce+4};function Je(Ee,be,Ce,et,ht){kt(be,et,ht,Ee,Ce,7);var yt=Number(be&BigInt(4294967295));Ee[Ce++]=yt,yt=yt>>8,Ee[Ce++]=yt,yt=yt>>8,Ee[Ce++]=yt,yt=yt>>8,Ee[Ce++]=yt;var Pt=Number(be>>BigInt(32)&BigInt(4294967295));return Ee[Ce++]=Pt,Pt=Pt>>8,Ee[Ce++]=Pt,Pt=Pt>>8,Ee[Ce++]=Pt,Pt=Pt>>8,Ee[Ce++]=Pt,Ce}function ot(Ee,be,Ce,et,ht){kt(be,et,ht,Ee,Ce,7);var yt=Number(be&BigInt(4294967295));Ee[Ce+7]=yt,yt=yt>>8,Ee[Ce+6]=yt,yt=yt>>8,Ee[Ce+5]=yt,yt=yt>>8,Ee[Ce+4]=yt;var Pt=Number(be>>BigInt(32)&BigInt(4294967295));return Ee[Ce+3]=Pt,Pt=Pt>>8,Ee[Ce+2]=Pt,Pt=Pt>>8,Ee[Ce+1]=Pt,Pt=Pt>>8,Ee[Ce]=Pt,Ce+8}f.prototype.writeBigUInt64LE=Se(function(be){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Je(this,be,Ce,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Se(function(be){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return ot(this,be,Ce,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(be,Ce,et,ht){if(be=+be,Ce=Ce>>>0,!ht){var yt=Math.pow(2,8*et-1);rt(this,be,Ce,et,yt-1,-yt)}var Pt=0,Ot=1,Wt=0;for(this[Ce]=be&255;++Pt>0)-Wt&255;return Ce+et},f.prototype.writeIntBE=function(be,Ce,et,ht){if(be=+be,Ce=Ce>>>0,!ht){var yt=Math.pow(2,8*et-1);rt(this,be,Ce,et,yt-1,-yt)}var Pt=et-1,Ot=1,Wt=0;for(this[Ce+Pt]=be&255;--Pt>=0&&(Ot*=256);)be<0&&Wt===0&&this[Ce+Pt+1]!==0&&(Wt=1),this[Ce+Pt]=(be/Ot>>0)-Wt&255;return Ce+et},f.prototype.writeInt8=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,1,127,-128),be<0&&(be=255+be+1),this[Ce]=be&255,Ce+1},f.prototype.writeInt16LE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,2,32767,-32768),this[Ce]=be&255,this[Ce+1]=be>>>8,Ce+2},f.prototype.writeInt16BE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,2,32767,-32768),this[Ce]=be>>>8,this[Ce+1]=be&255,Ce+2},f.prototype.writeInt32LE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,4,2147483647,-2147483648),this[Ce]=be&255,this[Ce+1]=be>>>8,this[Ce+2]=be>>>16,this[Ce+3]=be>>>24,Ce+4},f.prototype.writeInt32BE=function(be,Ce,et){return be=+be,Ce=Ce>>>0,et||rt(this,be,Ce,4,2147483647,-2147483648),be<0&&(be=4294967295+be+1),this[Ce]=be>>>24,this[Ce+1]=be>>>16,this[Ce+2]=be>>>8,this[Ce+3]=be&255,Ce+4},f.prototype.writeBigInt64LE=Se(function(be){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Je(this,be,Ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Se(function(be){var Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return ot(this,be,Ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Me(Ee,be,Ce,et,ht,yt){if(Ce+et>Ee.length)throw new RangeError("Index out of range");if(Ce<0)throw new RangeError("Index out of range")}function pe(Ee,be,Ce,et,ht){return be=+be,Ce=Ce>>>0,ht||Me(Ee,be,Ce,4,34028234663852886e22,-34028234663852886e22),m.write(Ee,be,Ce,et,23,4),Ce+4}f.prototype.writeFloatLE=function(be,Ce,et){return pe(this,be,Ce,!0,et)},f.prototype.writeFloatBE=function(be,Ce,et){return pe(this,be,Ce,!1,et)};function ue(Ee,be,Ce,et,ht){return be=+be,Ce=Ce>>>0,ht||Me(Ee,be,Ce,8,17976931348623157e292,-17976931348623157e292),m.write(Ee,be,Ce,et,52,8),Ce+8}f.prototype.writeDoubleLE=function(be,Ce,et){return ue(this,be,Ce,!0,et)},f.prototype.writeDoubleBE=function(be,Ce,et){return ue(this,be,Ce,!1,et)},f.prototype.copy=function(be,Ce,et,ht){if(!f.isBuffer(be))throw new TypeError("argument should be a Buffer");if(et||(et=0),!ht&&ht!==0&&(ht=this.length),Ce>=be.length&&(Ce=be.length),Ce||(Ce=0),ht>0&&ht=this.length)throw new RangeError("Index out of range");if(ht<0)throw new RangeError("sourceEnd out of bounds");ht>this.length&&(ht=this.length),be.length-Ce>>0,et=et===void 0?this.length:et>>>0,be||(be=0);var Pt;if(typeof be=="number")for(Pt=Ce;PtMath.pow(2,32)?ht=it(String(Ce)):typeof Ce=="bigint"&&(ht=String(Ce),(Ce>Math.pow(BigInt(2),BigInt(32))||Ce<-Math.pow(BigInt(2),BigInt(32)))&&(ht=it(ht)),ht+="n"),et+=" It must be ".concat(be,". Received ").concat(ht),et},RangeError);function it(Ee){for(var be="",Ce=Ee.length,et=Ee[0]==="-"?1:0;Ce>=et+4;Ce-=3)be="_".concat(Ee.slice(Ce-3,Ce)).concat(be);return"".concat(Ee.slice(0,Ce)).concat(be)}function $e(Ee,be,Ce){Mt(be,"offset"),(Ee[be]===void 0||Ee[be+Ce]===void 0)&&Bt(be,Ee.length-(Ce+1))}function kt(Ee,be,Ce,et,ht,yt){if(Ee>Ce||Ee3?be===0||be===BigInt(0)?Ot=">= 0".concat(Pt," and < 2").concat(Pt," ** ").concat((yt+1)*8).concat(Pt):Ot=">= -(2".concat(Pt," ** ").concat((yt+1)*8-1).concat(Pt,") and < 2 ** ")+"".concat((yt+1)*8-1).concat(Pt):Ot=">= ".concat(be).concat(Pt," and <= ").concat(Ce).concat(Pt),new ze.ERR_OUT_OF_RANGE("value",Ot,Ee)}$e(et,ht,yt)}function Mt(Ee,be){if(typeof Ee!="number")throw new ze.ERR_INVALID_ARG_TYPE(be,"number",Ee)}function Bt(Ee,be,Ce){throw Math.floor(Ee)!==Ee?(Mt(Ee,Ce),new ze.ERR_OUT_OF_RANGE(Ce||"offset","an integer",Ee)):be<0?new ze.ERR_BUFFER_OUT_OF_BOUNDS:new ze.ERR_OUT_OF_RANGE(Ce||"offset",">= ".concat(Ce?1:0," and <= ").concat(be),Ee)}var jt=/[^+/0-9A-Za-z-_]/g;function cr(Ee){if(Ee=Ee.split("=")[0],Ee=Ee.trim().replace(jt,""),Ee.length<2)return"";for(;Ee.length%4!==0;)Ee=Ee+"=";return Ee}function nr(Ee,be){be=be||1/0;for(var Ce,et=Ee.length,ht=null,yt=[],Pt=0;Pt55295&&Ce<57344){if(!ht){if(Ce>56319){(be-=3)>-1&&yt.push(239,191,189);continue}else if(Pt+1===et){(be-=3)>-1&&yt.push(239,191,189);continue}ht=Ce;continue}if(Ce<56320){(be-=3)>-1&&yt.push(239,191,189),ht=Ce;continue}Ce=(ht-55296<<10|Ce-56320)+65536}else ht&&(be-=3)>-1&&yt.push(239,191,189);if(ht=null,Ce<128){if((be-=1)<0)break;yt.push(Ce)}else if(Ce<2048){if((be-=2)<0)break;yt.push(Ce>>6|192,Ce&63|128)}else if(Ce<65536){if((be-=3)<0)break;yt.push(Ce>>12|224,Ce>>6&63|128,Ce&63|128)}else if(Ce<1114112){if((be-=4)<0)break;yt.push(Ce>>18|240,Ce>>12&63|128,Ce>>6&63|128,Ce&63|128)}else throw new Error("Invalid code point")}return yt}function Lr(Ee){for(var be=[],Ce=0;Ce>8,ht=Ce%256,yt.push(ht),yt.push(et);return yt}function xr(Ee){return E.toByteArray(cr(Ee))}function mt(Ee,be,Ce,et){var ht;for(ht=0;ht=be.length||ht>=Ee.length);++ht)be[ht+Ce]=Ee[ht];return ht}function Fe(Ee,be){return Ee instanceof be||Ee!=null&&Ee.constructor!=null&&Ee.constructor.name!=null&&Ee.constructor.name===be.name}function Ze(Ee){return Ee!==Ee}var Ne=function(){for(var Ee="0123456789abcdef",be=new Array(256),Ce=0;Ce<16;++Ce)for(var et=Ce*16,ht=0;ht<16;++ht)be[et+ht]=Ee[Ce]+Ee[ht];return be}();function Se(Ee){return typeof BigInt>"u"?Ve:Ee}function Ve(){throw new Error("BigInt not supported")}},9216:function(e){"use strict";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var t=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,o=/android|ipad|playbook|silk/i;function i(n){n||(n={});var a=n.ua;if(!a&&typeof navigator<"u"&&(a=navigator.userAgent),a&&a.headers&&typeof a.headers["user-agent"]=="string"&&(a=a.headers["user-agent"]),typeof a!="string")return!1;var s=t.test(a)&&!r.test(a)||!!n.tablet&&o.test(a);return!s&&n.tablet&&n.featureDetect&&navigator&&navigator.maxTouchPoints>1&&a.indexOf("Macintosh")!==-1&&a.indexOf("Safari")!==-1&&(s=!0),s}},6296:function(e,t,r){"use strict";e.exports=c;var o=r(7261),i=r(9977),n=r(1811);function a(h,p){this._controllerNames=Object.keys(h),this._controllerList=this._controllerNames.map(function(d){return h[d]}),this._mode=p,this._active=h[p],this._active||(this._mode="turntable",this._active=h.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=a.prototype;s.flush=function(h){for(var p=this._controllerList,d=0;d"u"?r(1538):WeakMap,i=r(2762),n=r(8116),a=new o;function s(c){var h=a.get(c),p=h&&(h._triangleBuffer.handle||h._triangleBuffer.buffer);if(!p||!c.isBuffer(p)){var d=i(c,new Float32Array([-1,-1,-1,4,4,-1]));h=n(c,[{buffer:d,type:c.FLOAT,size:2}]),h._triangleBuffer=d,a.set(c,h)}h.bind(),c.drawArrays(c.TRIANGLES,0,3),h.unbind()}e.exports=s},1085:function(e,t,r){var o=r(1371);e.exports=i;function i(n,a,s){a=typeof a=="number"?a:1,s=s||": ";var c=n.split(/\r?\n/),h=String(c.length+a-1).length;return c.map(function(p,d){var T=d+a,l=String(T).length,_=o(T,h-l);return _+s+p}).join(` +`)}},3952:function(e,t,r){"use strict";e.exports=n;var o=r(3250);function i(a,s){for(var c=new Array(s+1),h=0;h0)throw new Error("Invalid string. Length must be a multiple of 4");var E=w.indexOf("=");E===-1&&(E=M);var m=E===M?0:4-E%4;return[E,m]}function h(w){var M=c(w),E=M[0],m=M[1];return(E+m)*3/4-m}function p(w,M,E){return(M+E)*3/4-E}function d(w){var M,E=c(w),m=E[0],b=E[1],v=new i(p(w,m,b)),u=0,y=b>0?m-4:m,f;for(f=0;f>16&255,v[u++]=M>>8&255,v[u++]=M&255;return b===2&&(M=o[w.charCodeAt(f)]<<2|o[w.charCodeAt(f+1)]>>4,v[u++]=M&255),b===1&&(M=o[w.charCodeAt(f)]<<10|o[w.charCodeAt(f+1)]<<4|o[w.charCodeAt(f+2)]>>2,v[u++]=M>>8&255,v[u++]=M&255),v}function T(w){return r[w>>18&63]+r[w>>12&63]+r[w>>6&63]+r[w&63]}function l(w,M,E){for(var m,b=[],v=M;vy?y:u+v));return m===1?(M=w[E-1],b.push(r[M>>2]+r[M<<4&63]+"==")):m===2&&(M=(w[E-2]<<8)+w[E-1],b.push(r[M>>10]+r[M>>4&63]+r[M<<2&63]+"=")),b.join("")}},3865:function(e,t,r){"use strict";var o=r(869);e.exports=i;function i(n,a){return o(n[0].mul(a[1]).add(a[0].mul(n[1])),n[1].mul(a[1]))}},1318:function(e){"use strict";e.exports=t;function t(r,o){return r[0].mul(o[1]).cmp(o[0].mul(r[1]))}},8697:function(e,t,r){"use strict";var o=r(869);e.exports=i;function i(n,a){return o(n[0].mul(a[1]),n[1].mul(a[0]))}},7842:function(e,t,r){"use strict";var o=r(6330),i=r(1533),n=r(2651),a=r(6768),s=r(869),c=r(8697);e.exports=h;function h(p,d){if(o(p))return d?c(p,h(d)):[p[0].clone(),p[1].clone()];var T=0,l,_;if(i(p))l=p.clone();else if(typeof p=="string")l=a(p);else{if(p===0)return[n(0),n(1)];if(p===Math.floor(p))l=n(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),T-=256;l=n(p)}}if(o(d))l.mul(d[1]),_=d[0].clone();else if(i(d))_=d.clone();else if(typeof d=="string")_=a(d);else if(!d)_=n(1);else if(d===Math.floor(d))_=n(d);else{for(;d!==Math.floor(d);)d=d*Math.pow(2,256),T+=256;_=n(d)}return T>0?l=l.ushln(T):T<0&&(_=_.ushln(-T)),s(l,_)}},6330:function(e,t,r){"use strict";var o=r(1533);e.exports=i;function i(n){return Array.isArray(n)&&n.length===2&&o(n[0])&&o(n[1])}},5716:function(e,t,r){"use strict";var o=r(6859);e.exports=i;function i(n){return n.cmp(new o(0))}},1369:function(e,t,r){"use strict";var o=r(5716);e.exports=i;function i(n){var a=n.length,s=n.words,c=0;if(a===1)c=s[0];else if(a===2)c=s[0]+s[1]*67108864;else for(var h=0;h20?52:c+32}},1533:function(e,t,r){"use strict";var o=r(6859);e.exports=i;function i(n){return n&&typeof n=="object"&&!!n.words}},2651:function(e,t,r){"use strict";var o=r(6859),i=r(2361);e.exports=n;function n(a){var s=i.exponent(a);return s<52?new o(a):new o(a*Math.pow(2,52-s)).ushln(s-52)}},869:function(e,t,r){"use strict";var o=r(2651),i=r(5716);e.exports=n;function n(a,s){var c=i(a),h=i(s);if(c===0)return[o(0),o(1)];if(h===0)return[o(0),o(0)];h<0&&(a=a.neg(),s=s.neg());var p=a.gcd(s);return p.cmpn(1)?[a.div(p),s.div(p)]:[a,s]}},6768:function(e,t,r){"use strict";var o=r(6859);e.exports=i;function i(n){return new o(n)}},6504:function(e,t,r){"use strict";var o=r(869);e.exports=i;function i(n,a){return o(n[0].mul(a[0]),n[1].mul(a[1]))}},7721:function(e,t,r){"use strict";var o=r(5716);e.exports=i;function i(n){return o(n[0])*o(n[1])}},5572:function(e,t,r){"use strict";var o=r(869);e.exports=i;function i(n,a){return o(n[0].mul(a[1]).sub(n[1].mul(a[0])),n[1].mul(a[1]))}},946:function(e,t,r){"use strict";var o=r(1369),i=r(4025);e.exports=n;function n(a){var s=a[0],c=a[1];if(s.cmpn(0)===0)return 0;var h=s.abs().divmod(c.abs()),p=h.div,d=o(p),T=h.mod,l=s.negative!==c.negative?-1:1;if(T.cmpn(0)===0)return l*d;if(d){var _=i(d)+4,w=o(T.ushln(_).divRound(c));return l*(d+w*Math.pow(2,-_))}else{var M=c.bitLength()-T.bitLength()+53,w=o(T.ushln(M).divRound(c));return M<1023?l*w*Math.pow(2,-M):(w*=Math.pow(2,-1023),l*w*Math.pow(2,1023-M))}}},2478:function(e){"use strict";function t(s,c,h,p,d){for(var T=d+1;p<=d;){var l=p+d>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>=0?(T=l,d=l-1):p=l+1}return T}function r(s,c,h,p,d){for(var T=d+1;p<=d;){var l=p+d>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>0?(T=l,d=l-1):p=l+1}return T}function o(s,c,h,p,d){for(var T=p-1;p<=d;){var l=p+d>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<0?(T=l,p=l+1):d=l-1}return T}function i(s,c,h,p,d){for(var T=p-1;p<=d;){var l=p+d>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<=0?(T=l,p=l+1):d=l-1}return T}function n(s,c,h,p,d){for(;p<=d;){var T=p+d>>>1,l=s[T],_=h!==void 0?h(l,c):l-c;if(_===0)return T;_<=0?p=T+1:d=T-1}return-1}function a(s,c,h,p,d,T){return typeof h=="function"?T(s,c,h,p===void 0?0:p|0,d===void 0?s.length-1:d|0):T(s,c,void 0,h===void 0?0:h|0,p===void 0?s.length-1:p|0)}e.exports={ge:function(s,c,h,p,d){return a(s,c,h,p,d,t)},gt:function(s,c,h,p,d){return a(s,c,h,p,d,r)},lt:function(s,c,h,p,d){return a(s,c,h,p,d,o)},le:function(s,c,h,p,d){return a(s,c,h,p,d,i)},eq:function(s,c,h,p,d){return a(s,c,h,p,d,n)}}},8828:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<0)-(n<0)},t.abs=function(n){var a=n>>r-1;return(n^a)-a},t.min=function(n,a){return a^(n^a)&-(n65535)<<4,n>>>=a,s=(n>255)<<3,n>>>=s,a|=s,s=(n>15)<<2,n>>>=s,a|=s,s=(n>3)<<1,n>>>=s,a|=s,a|n>>1},t.log10=function(n){return n>=1e9?9:n>=1e8?8:n>=1e7?7:n>=1e6?6:n>=1e5?5:n>=1e4?4:n>=1e3?3:n>=100?2:n>=10?1:0},t.popCount=function(n){return n=n-(n>>>1&1431655765),n=(n&858993459)+(n>>>2&858993459),(n+(n>>>4)&252645135)*16843009>>>24};function o(n){var a=32;return n&=-n,n&&a--,n&65535&&(a-=16),n&16711935&&(a-=8),n&252645135&&(a-=4),n&858993459&&(a-=2),n&1431655765&&(a-=1),a}t.countTrailingZeros=o,t.nextPow2=function(n){return n+=n===0,--n,n|=n>>>1,n|=n>>>2,n|=n>>>4,n|=n>>>8,n|=n>>>16,n+1},t.prevPow2=function(n){return n|=n>>>1,n|=n>>>2,n|=n>>>4,n|=n>>>8,n|=n>>>16,n-(n>>>1)},t.parity=function(n){return n^=n>>>16,n^=n>>>8,n^=n>>>4,n&=15,27030>>>n&1};var i=new Array(256);(function(n){for(var a=0;a<256;++a){var s=a,c=a,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;n[a]=c<>>8&255]<<16|i[n>>>16&255]<<8|i[n>>>24&255]},t.interleave2=function(n,a){return n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,a&=65535,a=(a|a<<8)&16711935,a=(a|a<<4)&252645135,a=(a|a<<2)&858993459,a=(a|a<<1)&1431655765,n|a<<1},t.deinterleave2=function(n,a){return n=n>>>a&1431655765,n=(n|n>>>1)&858993459,n=(n|n>>>2)&252645135,n=(n|n>>>4)&16711935,n=(n|n>>>16)&65535,n<<16>>16},t.interleave3=function(n,a,s){return n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,a&=1023,a=(a|a<<16)&4278190335,a=(a|a<<8)&251719695,a=(a|a<<4)&3272356035,a=(a|a<<2)&1227133513,n|=a<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,n|s<<2},t.deinterleave3=function(n,a){return n=n>>>a&1227133513,n=(n|n>>>2)&3272356035,n=(n|n>>>4)&251719695,n=(n|n>>>8)&4278190335,n=(n|n>>>16)&1023,n<<22>>22},t.nextCombination=function(n){var a=n|n-1;return a+1|(~a&-~a)-1>>>o(n)+1}},6859:function(e,t,r){e=r.nmd(e),function(o,i){"use strict";function n(B,I){if(!B)throw new Error(I||"Assertion failed")}function a(B,I){B.super_=I;var N=function(){};N.prototype=I.prototype,B.prototype=new N,B.prototype.constructor=B}function s(B,I,N){if(s.isBN(B))return B;this.negative=0,this.words=null,this.length=0,this.red=null,B!==null&&((I==="le"||I==="be")&&(N=I,I=10),this._init(B||0,I||10,N||"be"))}typeof o=="object"?o.exports=s:i.BN=s,s.BN=s,s.wordSize=26;var c;try{typeof window<"u"&&typeof window.Buffer<"u"?c=window.Buffer:c=r(7790).Buffer}catch{}s.isBN=function(I){return I instanceof s?!0:I!==null&&typeof I=="object"&&I.constructor.wordSize===s.wordSize&&Array.isArray(I.words)},s.max=function(I,N){return I.cmp(N)>0?I:N},s.min=function(I,N){return I.cmp(N)<0?I:N},s.prototype._init=function(I,N,U){if(typeof I=="number")return this._initNumber(I,N,U);if(typeof I=="object")return this._initArray(I,N,U);N==="hex"&&(N=16),n(N===(N|0)&&N>=2&&N<=36),I=I.toString().replace(/\s+/g,"");var W=0;I[0]==="-"&&(W++,this.negative=1),W=0;W-=3)le=I[W]|I[W-1]<<8|I[W-2]<<16,this.words[Q]|=le<>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);else if(U==="le")for(W=0,Q=0;W>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);return this.strip()};function h(B,I){var N=B.charCodeAt(I);return N>=65&&N<=70?N-55:N>=97&&N<=102?N-87:N-48&15}function p(B,I,N){var U=h(B,N);return N-1>=I&&(U|=h(B,N-1)<<4),U}s.prototype._parseHex=function(I,N,U){this.length=Math.ceil((I.length-N)/6),this.words=new Array(this.length);for(var W=0;W=N;W-=2)se=p(I,N,W)<=18?(Q-=18,le+=1,this.words[le]|=se>>>26):Q+=8;else{var fe=I.length-N;for(W=fe%2===0?N+1:N;W=18?(Q-=18,le+=1,this.words[le]|=se>>>26):Q+=8}this.strip()};function d(B,I,N,U){for(var W=0,Q=Math.min(B.length,N),le=I;le=49?W+=se-49+10:se>=17?W+=se-17+10:W+=se}return W}s.prototype._parseBase=function(I,N,U){this.words=[0],this.length=1;for(var W=0,Q=1;Q<=67108863;Q*=N)W++;W--,Q=Q/N|0;for(var le=I.length-U,se=le%W,fe=Math.min(le,le-se)+U,G=0,J=U;J1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?""};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];s.prototype.toString=function(I,N){I=I||10,N=N|0||1;var U;if(I===16||I==="hex"){U="";for(var W=0,Q=0,le=0;le>>24-W&16777215,Q!==0||le!==this.length-1?U=T[6-fe.length]+fe+U:U=fe+U,W+=2,W>=26&&(W-=26,le--)}for(Q!==0&&(U=Q.toString(16)+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}if(I===(I|0)&&I>=2&&I<=36){var G=l[I],J=_[I];U="";var $=this.clone();for($.negative=0;!$.isZero();){var X=$.modn(J).toString(I);$=$.idivn(J),$.isZero()?U=X+U:U=T[G-X.length]+X+U}for(this.isZero()&&(U="0"+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}n(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var I=this.words[0];return this.length===2?I+=this.words[1]*67108864:this.length===3&&this.words[2]===1?I+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-I:I},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(I,N){return n(typeof c<"u"),this.toArrayLike(c,I,N)},s.prototype.toArray=function(I,N){return this.toArrayLike(Array,I,N)},s.prototype.toArrayLike=function(I,N,U){var W=this.byteLength(),Q=U||Math.max(1,W);n(W<=Q,"byte array longer than desired length"),n(Q>0,"Requested array length <= 0"),this.strip();var le=N==="le",se=new I(Q),fe,G,J=this.clone();if(le){for(G=0;!J.isZero();G++)fe=J.andln(255),J.iushrn(8),se[G]=fe;for(;G=4096&&(U+=13,N>>>=13),N>=64&&(U+=7,N>>>=7),N>=8&&(U+=4,N>>>=4),N>=2&&(U+=2,N>>>=2),U+N},s.prototype._zeroBits=function(I){if(I===0)return 26;var N=I,U=0;return N&8191||(U+=13,N>>>=13),N&127||(U+=7,N>>>=7),N&15||(U+=4,N>>>=4),N&3||(U+=2,N>>>=2),N&1||U++,U},s.prototype.bitLength=function(){var I=this.words[this.length-1],N=this._countBits(I);return(this.length-1)*26+N};function w(B){for(var I=new Array(B.bitLength()),N=0;N>>W}return I}s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var I=0,N=0;NI.length?this.clone().ior(I):I.clone().ior(this)},s.prototype.uor=function(I){return this.length>I.length?this.clone().iuor(I):I.clone().iuor(this)},s.prototype.iuand=function(I){var N;this.length>I.length?N=I:N=this;for(var U=0;UI.length?this.clone().iand(I):I.clone().iand(this)},s.prototype.uand=function(I){return this.length>I.length?this.clone().iuand(I):I.clone().iuand(this)},s.prototype.iuxor=function(I){var N,U;this.length>I.length?(N=this,U=I):(N=I,U=this);for(var W=0;WI.length?this.clone().ixor(I):I.clone().ixor(this)},s.prototype.uxor=function(I){return this.length>I.length?this.clone().iuxor(I):I.clone().iuxor(this)},s.prototype.inotn=function(I){n(typeof I=="number"&&I>=0);var N=Math.ceil(I/26)|0,U=I%26;this._expand(N),U>0&&N--;for(var W=0;W0&&(this.words[W]=~this.words[W]&67108863>>26-U),this.strip()},s.prototype.notn=function(I){return this.clone().inotn(I)},s.prototype.setn=function(I,N){n(typeof I=="number"&&I>=0);var U=I/26|0,W=I%26;return this._expand(U+1),N?this.words[U]=this.words[U]|1<I.length?(U=this,W=I):(U=I,W=this);for(var Q=0,le=0;le>>26;for(;Q!==0&&le>>26;if(this.length=U.length,Q!==0)this.words[this.length]=Q,this.length++;else if(U!==this)for(;leI.length?this.clone().iadd(I):I.clone().iadd(this)},s.prototype.isub=function(I){if(I.negative!==0){I.negative=0;var N=this.iadd(I);return I.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(I),this.negative=1,this._normSign();var U=this.cmp(I);if(U===0)return this.negative=0,this.length=1,this.words[0]=0,this;var W,Q;U>0?(W=this,Q=I):(W=I,Q=this);for(var le=0,se=0;se>26,this.words[se]=N&67108863;for(;le!==0&&se>26,this.words[se]=N&67108863;if(le===0&&se>>26,$=fe&67108863,X=Math.min(G,I.length-1),re=Math.max(0,G-B.length+1);re<=X;re++){var ae=G-re|0;W=B.words[ae]|0,Q=I.words[re]|0,le=W*Q+$,J+=le/67108864|0,$=le&67108863}N.words[G]=$|0,fe=J|0}return fe!==0?N.words[G]=fe|0:N.length--,N.strip()}var E=function(I,N,U){var W=I.words,Q=N.words,le=U.words,se=0,fe,G,J,$=W[0]|0,X=$&8191,re=$>>>13,ae=W[1]|0,j=ae&8191,ee=ae>>>13,ne=W[2]|0,ce=ne&8191,_e=ne>>>13,we=W[3]|0,Oe=we&8191,Ie=we>>>13,Xe=W[4]|0,tt=Xe&8191,rt=Xe>>>13,Je=W[5]|0,ot=Je&8191,Me=Je>>>13,pe=W[6]|0,ue=pe&8191,ze=pe>>>13,Qe=W[7]|0,it=Qe&8191,$e=Qe>>>13,kt=W[8]|0,Mt=kt&8191,Bt=kt>>>13,jt=W[9]|0,cr=jt&8191,nr=jt>>>13,Lr=Q[0]|0,mr=Lr&8191,xr=Lr>>>13,mt=Q[1]|0,Fe=mt&8191,Ze=mt>>>13,Ne=Q[2]|0,Se=Ne&8191,Ve=Ne>>>13,Ee=Q[3]|0,be=Ee&8191,Ce=Ee>>>13,et=Q[4]|0,ht=et&8191,yt=et>>>13,Pt=Q[5]|0,Ot=Pt&8191,Wt=Pt>>>13,$t=Q[6]|0,lr=$t&8191,fi=$t>>>13,Pi=Q[7]|0,Bi=Pi&8191,zi=Pi>>>13,en=Q[8]|0,Ri=en&8191,Zi=en>>>13,vn=Q[9]|0,Xt=vn&8191,Dt=vn>>>13;U.negative=I.negative^N.negative,U.length=19,fe=Math.imul(X,mr),G=Math.imul(X,xr),G=G+Math.imul(re,mr)|0,J=Math.imul(re,xr);var qt=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(qt>>>26)|0,qt&=67108863,fe=Math.imul(j,mr),G=Math.imul(j,xr),G=G+Math.imul(ee,mr)|0,J=Math.imul(ee,xr),fe=fe+Math.imul(X,Fe)|0,G=G+Math.imul(X,Ze)|0,G=G+Math.imul(re,Fe)|0,J=J+Math.imul(re,Ze)|0;var Ut=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,fe=Math.imul(ce,mr),G=Math.imul(ce,xr),G=G+Math.imul(_e,mr)|0,J=Math.imul(_e,xr),fe=fe+Math.imul(j,Fe)|0,G=G+Math.imul(j,Ze)|0,G=G+Math.imul(ee,Fe)|0,J=J+Math.imul(ee,Ze)|0,fe=fe+Math.imul(X,Se)|0,G=G+Math.imul(X,Ve)|0,G=G+Math.imul(re,Se)|0,J=J+Math.imul(re,Ve)|0;var br=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(br>>>26)|0,br&=67108863,fe=Math.imul(Oe,mr),G=Math.imul(Oe,xr),G=G+Math.imul(Ie,mr)|0,J=Math.imul(Ie,xr),fe=fe+Math.imul(ce,Fe)|0,G=G+Math.imul(ce,Ze)|0,G=G+Math.imul(_e,Fe)|0,J=J+Math.imul(_e,Ze)|0,fe=fe+Math.imul(j,Se)|0,G=G+Math.imul(j,Ve)|0,G=G+Math.imul(ee,Se)|0,J=J+Math.imul(ee,Ve)|0,fe=fe+Math.imul(X,be)|0,G=G+Math.imul(X,Ce)|0,G=G+Math.imul(re,be)|0,J=J+Math.imul(re,Ce)|0;var Zr=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,fe=Math.imul(tt,mr),G=Math.imul(tt,xr),G=G+Math.imul(rt,mr)|0,J=Math.imul(rt,xr),fe=fe+Math.imul(Oe,Fe)|0,G=G+Math.imul(Oe,Ze)|0,G=G+Math.imul(Ie,Fe)|0,J=J+Math.imul(Ie,Ze)|0,fe=fe+Math.imul(ce,Se)|0,G=G+Math.imul(ce,Ve)|0,G=G+Math.imul(_e,Se)|0,J=J+Math.imul(_e,Ve)|0,fe=fe+Math.imul(j,be)|0,G=G+Math.imul(j,Ce)|0,G=G+Math.imul(ee,be)|0,J=J+Math.imul(ee,Ce)|0,fe=fe+Math.imul(X,ht)|0,G=G+Math.imul(X,yt)|0,G=G+Math.imul(re,ht)|0,J=J+Math.imul(re,yt)|0;var _i=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(_i>>>26)|0,_i&=67108863,fe=Math.imul(ot,mr),G=Math.imul(ot,xr),G=G+Math.imul(Me,mr)|0,J=Math.imul(Me,xr),fe=fe+Math.imul(tt,Fe)|0,G=G+Math.imul(tt,Ze)|0,G=G+Math.imul(rt,Fe)|0,J=J+Math.imul(rt,Ze)|0,fe=fe+Math.imul(Oe,Se)|0,G=G+Math.imul(Oe,Ve)|0,G=G+Math.imul(Ie,Se)|0,J=J+Math.imul(Ie,Ve)|0,fe=fe+Math.imul(ce,be)|0,G=G+Math.imul(ce,Ce)|0,G=G+Math.imul(_e,be)|0,J=J+Math.imul(_e,Ce)|0,fe=fe+Math.imul(j,ht)|0,G=G+Math.imul(j,yt)|0,G=G+Math.imul(ee,ht)|0,J=J+Math.imul(ee,yt)|0,fe=fe+Math.imul(X,Ot)|0,G=G+Math.imul(X,Wt)|0,G=G+Math.imul(re,Ot)|0,J=J+Math.imul(re,Wt)|0;var Yr=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,fe=Math.imul(ue,mr),G=Math.imul(ue,xr),G=G+Math.imul(ze,mr)|0,J=Math.imul(ze,xr),fe=fe+Math.imul(ot,Fe)|0,G=G+Math.imul(ot,Ze)|0,G=G+Math.imul(Me,Fe)|0,J=J+Math.imul(Me,Ze)|0,fe=fe+Math.imul(tt,Se)|0,G=G+Math.imul(tt,Ve)|0,G=G+Math.imul(rt,Se)|0,J=J+Math.imul(rt,Ve)|0,fe=fe+Math.imul(Oe,be)|0,G=G+Math.imul(Oe,Ce)|0,G=G+Math.imul(Ie,be)|0,J=J+Math.imul(Ie,Ce)|0,fe=fe+Math.imul(ce,ht)|0,G=G+Math.imul(ce,yt)|0,G=G+Math.imul(_e,ht)|0,J=J+Math.imul(_e,yt)|0,fe=fe+Math.imul(j,Ot)|0,G=G+Math.imul(j,Wt)|0,G=G+Math.imul(ee,Ot)|0,J=J+Math.imul(ee,Wt)|0,fe=fe+Math.imul(X,lr)|0,G=G+Math.imul(X,fi)|0,G=G+Math.imul(re,lr)|0,J=J+Math.imul(re,fi)|0;var Di=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Di>>>26)|0,Di&=67108863,fe=Math.imul(it,mr),G=Math.imul(it,xr),G=G+Math.imul($e,mr)|0,J=Math.imul($e,xr),fe=fe+Math.imul(ue,Fe)|0,G=G+Math.imul(ue,Ze)|0,G=G+Math.imul(ze,Fe)|0,J=J+Math.imul(ze,Ze)|0,fe=fe+Math.imul(ot,Se)|0,G=G+Math.imul(ot,Ve)|0,G=G+Math.imul(Me,Se)|0,J=J+Math.imul(Me,Ve)|0,fe=fe+Math.imul(tt,be)|0,G=G+Math.imul(tt,Ce)|0,G=G+Math.imul(rt,be)|0,J=J+Math.imul(rt,Ce)|0,fe=fe+Math.imul(Oe,ht)|0,G=G+Math.imul(Oe,yt)|0,G=G+Math.imul(Ie,ht)|0,J=J+Math.imul(Ie,yt)|0,fe=fe+Math.imul(ce,Ot)|0,G=G+Math.imul(ce,Wt)|0,G=G+Math.imul(_e,Ot)|0,J=J+Math.imul(_e,Wt)|0,fe=fe+Math.imul(j,lr)|0,G=G+Math.imul(j,fi)|0,G=G+Math.imul(ee,lr)|0,J=J+Math.imul(ee,fi)|0,fe=fe+Math.imul(X,Bi)|0,G=G+Math.imul(X,zi)|0,G=G+Math.imul(re,Bi)|0,J=J+Math.imul(re,zi)|0;var qi=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(qi>>>26)|0,qi&=67108863,fe=Math.imul(Mt,mr),G=Math.imul(Mt,xr),G=G+Math.imul(Bt,mr)|0,J=Math.imul(Bt,xr),fe=fe+Math.imul(it,Fe)|0,G=G+Math.imul(it,Ze)|0,G=G+Math.imul($e,Fe)|0,J=J+Math.imul($e,Ze)|0,fe=fe+Math.imul(ue,Se)|0,G=G+Math.imul(ue,Ve)|0,G=G+Math.imul(ze,Se)|0,J=J+Math.imul(ze,Ve)|0,fe=fe+Math.imul(ot,be)|0,G=G+Math.imul(ot,Ce)|0,G=G+Math.imul(Me,be)|0,J=J+Math.imul(Me,Ce)|0,fe=fe+Math.imul(tt,ht)|0,G=G+Math.imul(tt,yt)|0,G=G+Math.imul(rt,ht)|0,J=J+Math.imul(rt,yt)|0,fe=fe+Math.imul(Oe,Ot)|0,G=G+Math.imul(Oe,Wt)|0,G=G+Math.imul(Ie,Ot)|0,J=J+Math.imul(Ie,Wt)|0,fe=fe+Math.imul(ce,lr)|0,G=G+Math.imul(ce,fi)|0,G=G+Math.imul(_e,lr)|0,J=J+Math.imul(_e,fi)|0,fe=fe+Math.imul(j,Bi)|0,G=G+Math.imul(j,zi)|0,G=G+Math.imul(ee,Bi)|0,J=J+Math.imul(ee,zi)|0,fe=fe+Math.imul(X,Ri)|0,G=G+Math.imul(X,Zi)|0,G=G+Math.imul(re,Ri)|0,J=J+Math.imul(re,Zi)|0;var $i=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+($i>>>26)|0,$i&=67108863,fe=Math.imul(cr,mr),G=Math.imul(cr,xr),G=G+Math.imul(nr,mr)|0,J=Math.imul(nr,xr),fe=fe+Math.imul(Mt,Fe)|0,G=G+Math.imul(Mt,Ze)|0,G=G+Math.imul(Bt,Fe)|0,J=J+Math.imul(Bt,Ze)|0,fe=fe+Math.imul(it,Se)|0,G=G+Math.imul(it,Ve)|0,G=G+Math.imul($e,Se)|0,J=J+Math.imul($e,Ve)|0,fe=fe+Math.imul(ue,be)|0,G=G+Math.imul(ue,Ce)|0,G=G+Math.imul(ze,be)|0,J=J+Math.imul(ze,Ce)|0,fe=fe+Math.imul(ot,ht)|0,G=G+Math.imul(ot,yt)|0,G=G+Math.imul(Me,ht)|0,J=J+Math.imul(Me,yt)|0,fe=fe+Math.imul(tt,Ot)|0,G=G+Math.imul(tt,Wt)|0,G=G+Math.imul(rt,Ot)|0,J=J+Math.imul(rt,Wt)|0,fe=fe+Math.imul(Oe,lr)|0,G=G+Math.imul(Oe,fi)|0,G=G+Math.imul(Ie,lr)|0,J=J+Math.imul(Ie,fi)|0,fe=fe+Math.imul(ce,Bi)|0,G=G+Math.imul(ce,zi)|0,G=G+Math.imul(_e,Bi)|0,J=J+Math.imul(_e,zi)|0,fe=fe+Math.imul(j,Ri)|0,G=G+Math.imul(j,Zi)|0,G=G+Math.imul(ee,Ri)|0,J=J+Math.imul(ee,Zi)|0,fe=fe+Math.imul(X,Xt)|0,G=G+Math.imul(X,Dt)|0,G=G+Math.imul(re,Xt)|0,J=J+Math.imul(re,Dt)|0;var Mi=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Mi>>>26)|0,Mi&=67108863,fe=Math.imul(cr,Fe),G=Math.imul(cr,Ze),G=G+Math.imul(nr,Fe)|0,J=Math.imul(nr,Ze),fe=fe+Math.imul(Mt,Se)|0,G=G+Math.imul(Mt,Ve)|0,G=G+Math.imul(Bt,Se)|0,J=J+Math.imul(Bt,Ve)|0,fe=fe+Math.imul(it,be)|0,G=G+Math.imul(it,Ce)|0,G=G+Math.imul($e,be)|0,J=J+Math.imul($e,Ce)|0,fe=fe+Math.imul(ue,ht)|0,G=G+Math.imul(ue,yt)|0,G=G+Math.imul(ze,ht)|0,J=J+Math.imul(ze,yt)|0,fe=fe+Math.imul(ot,Ot)|0,G=G+Math.imul(ot,Wt)|0,G=G+Math.imul(Me,Ot)|0,J=J+Math.imul(Me,Wt)|0,fe=fe+Math.imul(tt,lr)|0,G=G+Math.imul(tt,fi)|0,G=G+Math.imul(rt,lr)|0,J=J+Math.imul(rt,fi)|0,fe=fe+Math.imul(Oe,Bi)|0,G=G+Math.imul(Oe,zi)|0,G=G+Math.imul(Ie,Bi)|0,J=J+Math.imul(Ie,zi)|0,fe=fe+Math.imul(ce,Ri)|0,G=G+Math.imul(ce,Zi)|0,G=G+Math.imul(_e,Ri)|0,J=J+Math.imul(_e,Zi)|0,fe=fe+Math.imul(j,Xt)|0,G=G+Math.imul(j,Dt)|0,G=G+Math.imul(ee,Xt)|0,J=J+Math.imul(ee,Dt)|0;var sn=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(sn>>>26)|0,sn&=67108863,fe=Math.imul(cr,Se),G=Math.imul(cr,Ve),G=G+Math.imul(nr,Se)|0,J=Math.imul(nr,Ve),fe=fe+Math.imul(Mt,be)|0,G=G+Math.imul(Mt,Ce)|0,G=G+Math.imul(Bt,be)|0,J=J+Math.imul(Bt,Ce)|0,fe=fe+Math.imul(it,ht)|0,G=G+Math.imul(it,yt)|0,G=G+Math.imul($e,ht)|0,J=J+Math.imul($e,yt)|0,fe=fe+Math.imul(ue,Ot)|0,G=G+Math.imul(ue,Wt)|0,G=G+Math.imul(ze,Ot)|0,J=J+Math.imul(ze,Wt)|0,fe=fe+Math.imul(ot,lr)|0,G=G+Math.imul(ot,fi)|0,G=G+Math.imul(Me,lr)|0,J=J+Math.imul(Me,fi)|0,fe=fe+Math.imul(tt,Bi)|0,G=G+Math.imul(tt,zi)|0,G=G+Math.imul(rt,Bi)|0,J=J+Math.imul(rt,zi)|0,fe=fe+Math.imul(Oe,Ri)|0,G=G+Math.imul(Oe,Zi)|0,G=G+Math.imul(Ie,Ri)|0,J=J+Math.imul(Ie,Zi)|0,fe=fe+Math.imul(ce,Xt)|0,G=G+Math.imul(ce,Dt)|0,G=G+Math.imul(_e,Xt)|0,J=J+Math.imul(_e,Dt)|0;var vt=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(vt>>>26)|0,vt&=67108863,fe=Math.imul(cr,be),G=Math.imul(cr,Ce),G=G+Math.imul(nr,be)|0,J=Math.imul(nr,Ce),fe=fe+Math.imul(Mt,ht)|0,G=G+Math.imul(Mt,yt)|0,G=G+Math.imul(Bt,ht)|0,J=J+Math.imul(Bt,yt)|0,fe=fe+Math.imul(it,Ot)|0,G=G+Math.imul(it,Wt)|0,G=G+Math.imul($e,Ot)|0,J=J+Math.imul($e,Wt)|0,fe=fe+Math.imul(ue,lr)|0,G=G+Math.imul(ue,fi)|0,G=G+Math.imul(ze,lr)|0,J=J+Math.imul(ze,fi)|0,fe=fe+Math.imul(ot,Bi)|0,G=G+Math.imul(ot,zi)|0,G=G+Math.imul(Me,Bi)|0,J=J+Math.imul(Me,zi)|0,fe=fe+Math.imul(tt,Ri)|0,G=G+Math.imul(tt,Zi)|0,G=G+Math.imul(rt,Ri)|0,J=J+Math.imul(rt,Zi)|0,fe=fe+Math.imul(Oe,Xt)|0,G=G+Math.imul(Oe,Dt)|0,G=G+Math.imul(Ie,Xt)|0,J=J+Math.imul(Ie,Dt)|0;var pt=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(pt>>>26)|0,pt&=67108863,fe=Math.imul(cr,ht),G=Math.imul(cr,yt),G=G+Math.imul(nr,ht)|0,J=Math.imul(nr,yt),fe=fe+Math.imul(Mt,Ot)|0,G=G+Math.imul(Mt,Wt)|0,G=G+Math.imul(Bt,Ot)|0,J=J+Math.imul(Bt,Wt)|0,fe=fe+Math.imul(it,lr)|0,G=G+Math.imul(it,fi)|0,G=G+Math.imul($e,lr)|0,J=J+Math.imul($e,fi)|0,fe=fe+Math.imul(ue,Bi)|0,G=G+Math.imul(ue,zi)|0,G=G+Math.imul(ze,Bi)|0,J=J+Math.imul(ze,zi)|0,fe=fe+Math.imul(ot,Ri)|0,G=G+Math.imul(ot,Zi)|0,G=G+Math.imul(Me,Ri)|0,J=J+Math.imul(Me,Zi)|0,fe=fe+Math.imul(tt,Xt)|0,G=G+Math.imul(tt,Dt)|0,G=G+Math.imul(rt,Xt)|0,J=J+Math.imul(rt,Dt)|0;var kr=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(kr>>>26)|0,kr&=67108863,fe=Math.imul(cr,Ot),G=Math.imul(cr,Wt),G=G+Math.imul(nr,Ot)|0,J=Math.imul(nr,Wt),fe=fe+Math.imul(Mt,lr)|0,G=G+Math.imul(Mt,fi)|0,G=G+Math.imul(Bt,lr)|0,J=J+Math.imul(Bt,fi)|0,fe=fe+Math.imul(it,Bi)|0,G=G+Math.imul(it,zi)|0,G=G+Math.imul($e,Bi)|0,J=J+Math.imul($e,zi)|0,fe=fe+Math.imul(ue,Ri)|0,G=G+Math.imul(ue,Zi)|0,G=G+Math.imul(ze,Ri)|0,J=J+Math.imul(ze,Zi)|0,fe=fe+Math.imul(ot,Xt)|0,G=G+Math.imul(ot,Dt)|0,G=G+Math.imul(Me,Xt)|0,J=J+Math.imul(Me,Dt)|0;var Cr=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,fe=Math.imul(cr,lr),G=Math.imul(cr,fi),G=G+Math.imul(nr,lr)|0,J=Math.imul(nr,fi),fe=fe+Math.imul(Mt,Bi)|0,G=G+Math.imul(Mt,zi)|0,G=G+Math.imul(Bt,Bi)|0,J=J+Math.imul(Bt,zi)|0,fe=fe+Math.imul(it,Ri)|0,G=G+Math.imul(it,Zi)|0,G=G+Math.imul($e,Ri)|0,J=J+Math.imul($e,Zi)|0,fe=fe+Math.imul(ue,Xt)|0,G=G+Math.imul(ue,Dt)|0,G=G+Math.imul(ze,Xt)|0,J=J+Math.imul(ze,Dt)|0;var wr=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(wr>>>26)|0,wr&=67108863,fe=Math.imul(cr,Bi),G=Math.imul(cr,zi),G=G+Math.imul(nr,Bi)|0,J=Math.imul(nr,zi),fe=fe+Math.imul(Mt,Ri)|0,G=G+Math.imul(Mt,Zi)|0,G=G+Math.imul(Bt,Ri)|0,J=J+Math.imul(Bt,Zi)|0,fe=fe+Math.imul(it,Xt)|0,G=G+Math.imul(it,Dt)|0,G=G+Math.imul($e,Xt)|0,J=J+Math.imul($e,Dt)|0;var Ar=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,fe=Math.imul(cr,Ri),G=Math.imul(cr,Zi),G=G+Math.imul(nr,Ri)|0,J=Math.imul(nr,Zi),fe=fe+Math.imul(Mt,Xt)|0,G=G+Math.imul(Mt,Dt)|0,G=G+Math.imul(Bt,Xt)|0,J=J+Math.imul(Bt,Dt)|0;var Er=(se+fe|0)+((G&8191)<<13)|0;se=(J+(G>>>13)|0)+(Er>>>26)|0,Er&=67108863,fe=Math.imul(cr,Xt),G=Math.imul(cr,Dt),G=G+Math.imul(nr,Xt)|0,J=Math.imul(nr,Dt);var Br=(se+fe|0)+((G&8191)<<13)|0;return se=(J+(G>>>13)|0)+(Br>>>26)|0,Br&=67108863,le[0]=qt,le[1]=Ut,le[2]=br,le[3]=Zr,le[4]=_i,le[5]=Yr,le[6]=Di,le[7]=qi,le[8]=$i,le[9]=Mi,le[10]=sn,le[11]=vt,le[12]=pt,le[13]=kr,le[14]=Cr,le[15]=wr,le[16]=Ar,le[17]=Er,le[18]=Br,se!==0&&(le[19]=se,U.length++),U};Math.imul||(E=M);function m(B,I,N){N.negative=I.negative^B.negative,N.length=B.length+I.length;for(var U=0,W=0,Q=0;Q>>26)|0,W+=le>>>26,le&=67108863}N.words[Q]=se,U=le,le=W}return U!==0?N.words[Q]=U:N.length--,N.strip()}function b(B,I,N){var U=new v;return U.mulp(B,I,N)}s.prototype.mulTo=function(I,N){var U,W=this.length+I.length;return this.length===10&&I.length===10?U=E(this,I,N):W<63?U=M(this,I,N):W<1024?U=m(this,I,N):U=b(this,I,N),U};function v(B,I){this.x=B,this.y=I}v.prototype.makeRBT=function(I){for(var N=new Array(I),U=s.prototype._countBits(I)-1,W=0;W>=1;return W},v.prototype.permute=function(I,N,U,W,Q,le){for(var se=0;se>>1)Q++;return 1<>>13,U[2*le+1]=Q&8191,Q=Q>>>13;for(le=2*N;le>=26,N+=W/67108864|0,N+=Q>>>26,this.words[U]=Q&67108863}return N!==0&&(this.words[U]=N,this.length++),this},s.prototype.muln=function(I){return this.clone().imuln(I)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(I){var N=w(I);if(N.length===0)return new s(1);for(var U=this,W=0;W=0);var N=I%26,U=(I-N)/26,W=67108863>>>26-N<<26-N,Q;if(N!==0){var le=0;for(Q=0;Q>>26-N}le&&(this.words[Q]=le,this.length++)}if(U!==0){for(Q=this.length-1;Q>=0;Q--)this.words[Q+U]=this.words[Q];for(Q=0;Q=0);var W;N?W=(N-N%26)/26:W=0;var Q=I%26,le=Math.min((I-Q)/26,this.length),se=67108863^67108863>>>Q<le)for(this.length-=le,G=0;G=0&&(J!==0||G>=W);G--){var $=this.words[G]|0;this.words[G]=J<<26-Q|$>>>Q,J=$&se}return fe&&J!==0&&(fe.words[fe.length++]=J),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(I,N,U){return n(this.negative===0),this.iushrn(I,N,U)},s.prototype.shln=function(I){return this.clone().ishln(I)},s.prototype.ushln=function(I){return this.clone().iushln(I)},s.prototype.shrn=function(I){return this.clone().ishrn(I)},s.prototype.ushrn=function(I){return this.clone().iushrn(I)},s.prototype.testn=function(I){n(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=1<=0);var N=I%26,U=(I-N)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=U)return this;if(N!==0&&U++,this.length=Math.min(U,this.length),N!==0){var W=67108863^67108863>>>N<=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},s.prototype.isubn=function(I){if(n(typeof I=="number"),n(I<67108864),I<0)return this.iaddn(-I);if(this.negative!==0)return this.negative=0,this.iaddn(I),this.negative=1,this;if(this.words[0]-=I,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N>26)-(fe/67108864|0),this.words[Q+U]=le&67108863}for(;Q>26,this.words[Q+U]=le&67108863;if(se===0)return this.strip();for(n(se===-1),se=0,Q=0;Q>26,this.words[Q]=le&67108863;return this.negative=1,this.strip()},s.prototype._wordDiv=function(I,N){var U=this.length-I.length,W=this.clone(),Q=I,le=Q.words[Q.length-1]|0,se=this._countBits(le);U=26-se,U!==0&&(Q=Q.ushln(U),W.iushln(U),le=Q.words[Q.length-1]|0);var fe=W.length-Q.length,G;if(N!=="mod"){G=new s(null),G.length=fe+1,G.words=new Array(G.length);for(var J=0;J=0;X--){var re=(W.words[Q.length+X]|0)*67108864+(W.words[Q.length+X-1]|0);for(re=Math.min(re/le|0,67108863),W._ishlnsubmul(Q,re,X);W.negative!==0;)re--,W.negative=0,W._ishlnsubmul(Q,1,X),W.isZero()||(W.negative^=1);G&&(G.words[X]=re)}return G&&G.strip(),W.strip(),N!=="div"&&U!==0&&W.iushrn(U),{div:G||null,mod:W}},s.prototype.divmod=function(I,N,U){if(n(!I.isZero()),this.isZero())return{div:new s(0),mod:new s(0)};var W,Q,le;return this.negative!==0&&I.negative===0?(le=this.neg().divmod(I,N),N!=="mod"&&(W=le.div.neg()),N!=="div"&&(Q=le.mod.neg(),U&&Q.negative!==0&&Q.iadd(I)),{div:W,mod:Q}):this.negative===0&&I.negative!==0?(le=this.divmod(I.neg(),N),N!=="mod"&&(W=le.div.neg()),{div:W,mod:le.mod}):this.negative&I.negative?(le=this.neg().divmod(I.neg(),N),N!=="div"&&(Q=le.mod.neg(),U&&Q.negative!==0&&Q.isub(I)),{div:le.div,mod:Q}):I.length>this.length||this.cmp(I)<0?{div:new s(0),mod:this}:I.length===1?N==="div"?{div:this.divn(I.words[0]),mod:null}:N==="mod"?{div:null,mod:new s(this.modn(I.words[0]))}:{div:this.divn(I.words[0]),mod:new s(this.modn(I.words[0]))}:this._wordDiv(I,N)},s.prototype.div=function(I){return this.divmod(I,"div",!1).div},s.prototype.mod=function(I){return this.divmod(I,"mod",!1).mod},s.prototype.umod=function(I){return this.divmod(I,"mod",!0).mod},s.prototype.divRound=function(I){var N=this.divmod(I);if(N.mod.isZero())return N.div;var U=N.div.negative!==0?N.mod.isub(I):N.mod,W=I.ushrn(1),Q=I.andln(1),le=U.cmp(W);return le<0||Q===1&&le===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},s.prototype.modn=function(I){n(I<=67108863);for(var N=(1<<26)%I,U=0,W=this.length-1;W>=0;W--)U=(N*U+(this.words[W]|0))%I;return U},s.prototype.idivn=function(I){n(I<=67108863);for(var N=0,U=this.length-1;U>=0;U--){var W=(this.words[U]|0)+N*67108864;this.words[U]=W/I|0,N=W%I}return this.strip()},s.prototype.divn=function(I){return this.clone().idivn(I)},s.prototype.egcd=function(I){n(I.negative===0),n(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),le=new s(0),se=new s(1),fe=0;N.isEven()&&U.isEven();)N.iushrn(1),U.iushrn(1),++fe;for(var G=U.clone(),J=N.clone();!N.isZero();){for(var $=0,X=1;!(N.words[0]&X)&&$<26;++$,X<<=1);if($>0)for(N.iushrn($);$-- >0;)(W.isOdd()||Q.isOdd())&&(W.iadd(G),Q.isub(J)),W.iushrn(1),Q.iushrn(1);for(var re=0,ae=1;!(U.words[0]&ae)&&re<26;++re,ae<<=1);if(re>0)for(U.iushrn(re);re-- >0;)(le.isOdd()||se.isOdd())&&(le.iadd(G),se.isub(J)),le.iushrn(1),se.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(le),Q.isub(se)):(U.isub(N),le.isub(W),se.isub(Q))}return{a:le,b:se,gcd:U.iushln(fe)}},s.prototype._invmp=function(I){n(I.negative===0),n(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),le=U.clone();N.cmpn(1)>0&&U.cmpn(1)>0;){for(var se=0,fe=1;!(N.words[0]&fe)&&se<26;++se,fe<<=1);if(se>0)for(N.iushrn(se);se-- >0;)W.isOdd()&&W.iadd(le),W.iushrn(1);for(var G=0,J=1;!(U.words[0]&J)&&G<26;++G,J<<=1);if(G>0)for(U.iushrn(G);G-- >0;)Q.isOdd()&&Q.iadd(le),Q.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(Q)):(U.isub(N),Q.isub(W))}var $;return N.cmpn(1)===0?$=W:$=Q,$.cmpn(0)<0&&$.iadd(I),$},s.prototype.gcd=function(I){if(this.isZero())return I.abs();if(I.isZero())return this.abs();var N=this.clone(),U=I.clone();N.negative=0,U.negative=0;for(var W=0;N.isEven()&&U.isEven();W++)N.iushrn(1),U.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;U.isEven();)U.iushrn(1);var Q=N.cmp(U);if(Q<0){var le=N;N=U,U=le}else if(Q===0||U.cmpn(1)===0)break;N.isub(U)}while(!0);return U.iushln(W)},s.prototype.invm=function(I){return this.egcd(I).a.umod(I)},s.prototype.isEven=function(){return(this.words[0]&1)===0},s.prototype.isOdd=function(){return(this.words[0]&1)===1},s.prototype.andln=function(I){return this.words[0]&I},s.prototype.bincn=function(I){n(typeof I=="number");var N=I%26,U=(I-N)/26,W=1<>>26,se&=67108863,this.words[le]=se}return Q!==0&&(this.words[le]=Q,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(I){var N=I<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this.strip();var U;if(this.length>1)U=1;else{N&&(I=-I),n(I<=67108863,"Number is too big");var W=this.words[0]|0;U=W===I?0:WI.length)return 1;if(this.length=0;U--){var W=this.words[U]|0,Q=I.words[U]|0;if(W!==Q){WQ&&(N=1);break}}return N},s.prototype.gtn=function(I){return this.cmpn(I)===1},s.prototype.gt=function(I){return this.cmp(I)===1},s.prototype.gten=function(I){return this.cmpn(I)>=0},s.prototype.gte=function(I){return this.cmp(I)>=0},s.prototype.ltn=function(I){return this.cmpn(I)===-1},s.prototype.lt=function(I){return this.cmp(I)===-1},s.prototype.lten=function(I){return this.cmpn(I)<=0},s.prototype.lte=function(I){return this.cmp(I)<=0},s.prototype.eqn=function(I){return this.cmpn(I)===0},s.prototype.eq=function(I){return this.cmp(I)===0},s.red=function(I){return new F(I)},s.prototype.toRed=function(I){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),I.convertTo(this)._forceRed(I)},s.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(I){return this.red=I,this},s.prototype.forceRed=function(I){return n(!this.red,"Already a number in reduction context"),this._forceRed(I)},s.prototype.redAdd=function(I){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,I)},s.prototype.redIAdd=function(I){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,I)},s.prototype.redSub=function(I){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,I)},s.prototype.redISub=function(I){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,I)},s.prototype.redShl=function(I){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,I)},s.prototype.redMul=function(I){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.mul(this,I)},s.prototype.redIMul=function(I){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.imul(this,I)},s.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(I){return n(this.red&&!I.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,I)};var u={k256:null,p224:null,p192:null,p25519:null};function y(B,I){this.name=B,this.p=new s(I,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}y.prototype._tmp=function(){var I=new s(null);return I.words=new Array(Math.ceil(this.n/13)),I},y.prototype.ireduce=function(I){var N=I,U;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),U=N.bitLength();while(U>this.n);var W=U0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},y.prototype.split=function(I,N){I.iushrn(this.n,0,N)},y.prototype.imulK=function(I){return I.imul(this.k)};function f(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}a(f,y),f.prototype.split=function(I,N){for(var U=4194303,W=Math.min(I.length,9),Q=0;Q>>22,le=se}le>>>=22,I.words[Q-10]=le,le===0&&I.length>10?I.length-=10:I.length-=9},f.prototype.imulK=function(I){I.words[I.length]=0,I.words[I.length+1]=0,I.length+=2;for(var N=0,U=0;U>>=26,I.words[U]=Q,N=W}return N!==0&&(I.words[I.length++]=N),I},s._prime=function(I){if(u[I])return u[I];var N;if(I==="k256")N=new f;else if(I==="p224")N=new P;else if(I==="p192")N=new L;else if(I==="p25519")N=new z;else throw new Error("Unknown prime "+I);return u[I]=N,N};function F(B){if(typeof B=="string"){var I=s._prime(B);this.m=I.p,this.prime=I}else n(B.gtn(1),"modulus must be greater than 1"),this.m=B,this.prime=null}F.prototype._verify1=function(I){n(I.negative===0,"red works only with positives"),n(I.red,"red works only with red numbers")},F.prototype._verify2=function(I,N){n((I.negative|N.negative)===0,"red works only with positives"),n(I.red&&I.red===N.red,"red works only with red numbers")},F.prototype.imod=function(I){return this.prime?this.prime.ireduce(I)._forceRed(this):I.umod(this.m)._forceRed(this)},F.prototype.neg=function(I){return I.isZero()?I.clone():this.m.sub(I)._forceRed(this)},F.prototype.add=function(I,N){this._verify2(I,N);var U=I.add(N);return U.cmp(this.m)>=0&&U.isub(this.m),U._forceRed(this)},F.prototype.iadd=function(I,N){this._verify2(I,N);var U=I.iadd(N);return U.cmp(this.m)>=0&&U.isub(this.m),U},F.prototype.sub=function(I,N){this._verify2(I,N);var U=I.sub(N);return U.cmpn(0)<0&&U.iadd(this.m),U._forceRed(this)},F.prototype.isub=function(I,N){this._verify2(I,N);var U=I.isub(N);return U.cmpn(0)<0&&U.iadd(this.m),U},F.prototype.shl=function(I,N){return this._verify1(I),this.imod(I.ushln(N))},F.prototype.imul=function(I,N){return this._verify2(I,N),this.imod(I.imul(N))},F.prototype.mul=function(I,N){return this._verify2(I,N),this.imod(I.mul(N))},F.prototype.isqr=function(I){return this.imul(I,I.clone())},F.prototype.sqr=function(I){return this.mul(I,I)},F.prototype.sqrt=function(I){if(I.isZero())return I.clone();var N=this.m.andln(3);if(n(N%2===1),N===3){var U=this.m.add(new s(1)).iushrn(2);return this.pow(I,U)}for(var W=this.m.subn(1),Q=0;!W.isZero()&&W.andln(1)===0;)Q++,W.iushrn(1);n(!W.isZero());var le=new s(1).toRed(this),se=le.redNeg(),fe=this.m.subn(1).iushrn(1),G=this.m.bitLength();for(G=new s(2*G*G).toRed(this);this.pow(G,fe).cmp(se)!==0;)G.redIAdd(se);for(var J=this.pow(G,W),$=this.pow(I,W.addn(1).iushrn(1)),X=this.pow(I,W),re=Q;X.cmp(le)!==0;){for(var ae=X,j=0;ae.cmp(le)!==0;j++)ae=ae.redSqr();n(j=0;Q--){for(var J=N.words[Q],$=G-1;$>=0;$--){var X=J>>$&1;if(le!==W[0]&&(le=this.sqr(le)),X===0&&se===0){fe=0;continue}se<<=1,se|=X,fe++,!(fe!==U&&(Q!==0||$!==0))&&(le=this.mul(le,W[se]),fe=0,se=0)}G=26}return le},F.prototype.convertTo=function(I){var N=I.umod(this.m);return N===I?N.clone():N},F.prototype.convertFrom=function(I){var N=I.clone();return N.red=null,N},s.mont=function(I){return new O(I)};function O(B){F.call(this,B),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new s(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}a(O,F),O.prototype.convertTo=function(I){return this.imod(I.ushln(this.shift))},O.prototype.convertFrom=function(I){var N=this.imod(I.mul(this.rinv));return N.red=null,N},O.prototype.imul=function(I,N){if(I.isZero()||N.isZero())return I.words[0]=0,I.length=1,I;var U=I.imul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),le=Q;return Q.cmp(this.m)>=0?le=Q.isub(this.m):Q.cmpn(0)<0&&(le=Q.iadd(this.m)),le._forceRed(this)},O.prototype.mul=function(I,N){if(I.isZero()||N.isZero())return new s(0)._forceRed(this);var U=I.mul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),le=Q;return Q.cmp(this.m)>=0?le=Q.isub(this.m):Q.cmpn(0)<0&&(le=Q.iadd(this.m)),le._forceRed(this)},O.prototype.invm=function(I){var N=this.imod(I._invmp(this.m).mul(this.r2));return N._forceRed(this)}}(e,this)},6204:function(e){"use strict";e.exports=t;function t(r){var o,i,n,a=r.length,s=0;for(o=0;o>>1;if(!(v<=0)){var u,y=o.mallocDouble(2*v*m),f=o.mallocInt32(m);if(m=s(_,v,y,f),m>0){if(v===1&&E)i.init(m),u=i.sweepComplete(v,M,0,m,y,f,0,m,y,f);else{var P=o.mallocDouble(2*v*b),L=o.mallocInt32(b);b=s(w,v,P,L),b>0&&(i.init(m+b),v===1?u=i.sweepBipartite(v,M,0,m,y,f,0,b,P,L):u=n(v,M,E,m,y,f,b,P,L),o.free(P),o.free(L))}o.free(y),o.free(f)}return u}}}var h;function p(_,w){h.push([_,w])}function d(_){return h=[],c(_,_,p,!0),h}function T(_,w){return h=[],c(_,w,p,!1),h}function l(_,w,M){switch(arguments.length){case 1:return d(_);case 2:return typeof w=="function"?c(_,_,w,!0):T(_,w);case 3:return c(_,w,M,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(e,t){"use strict";function r(){function n(c,h,p,d,T,l,_,w,M,E,m){for(var b=2*c,v=d,u=b*d;vM-w?n(c,h,p,d,T,l,_,w,M,E,m):a(c,h,p,d,T,l,_,w,M,E,m)}return s}function o(){function n(p,d,T,l,_,w,M,E,m,b,v){for(var u=2*p,y=l,f=u*l;y<_;++y,f+=u){var P=w[d+f],L=w[d+f+p],z=M[y];e:for(var F=E,O=u*E;Fb-m?l?n(p,d,T,_,w,M,E,m,b,v,u):a(p,d,T,_,w,M,E,m,b,v,u):l?s(p,d,T,_,w,M,E,m,b,v,u):c(p,d,T,_,w,M,E,m,b,v,u)}return h}function i(n){return n?r():o()}t.partial=i(!1),t.full=i(!0)},7150:function(e,t,r){"use strict";e.exports=B;var o=r(1888),i=r(8828),n=r(2455),a=n.partial,s=n.full,c=r(855),h=r(3545),p=r(8105),d=128,T=1<<22,l=1<<22,_=p("!(lo>=p0)&&!(p1>=hi)"),w=p("lo===p0"),M=p("lo0;){J-=1;var re=J*v,ae=f[re],j=f[re+1],ee=f[re+2],ne=f[re+3],ce=f[re+4],_e=f[re+5],we=J*u,Oe=P[we],Ie=P[we+1],Xe=_e&1,tt=!!(_e&16),rt=Q,Je=le,ot=fe,Me=G;if(Xe&&(rt=fe,Je=G,ot=Q,Me=le),!(_e&2&&(ee=M(I,ae,j,ee,rt,Je,Ie),j>=ee))&&!(_e&4&&(j=E(I,ae,j,ee,rt,Je,Oe),j>=ee))){var pe=ee-j,ue=ce-ne;if(tt){if(I*pe*(pe+ue)p&&T[b+h]>E;--m,b-=_){for(var v=b,u=b+_,y=0;y<_;++y,++v,++u){var f=T[v];T[v]=T[u],T[u]=f}var P=l[m];l[m]=l[m-1],l[m-1]=P}}function s(c,h,p,d,T,l){if(d<=p+1)return p;for(var _=p,w=d,M=d+p>>>1,E=2*c,m=M,b=T[E*M+h];_=P?(m=f,b=P):y>=z?(m=u,b=y):(m=L,b=z):P>=z?(m=f,b=P):z>=y?(m=u,b=y):(m=L,b=z);for(var B=E*(w-1),I=E*m,F=0;F=p0)&&!(p1>=hi)":h};function r(p){return t[p]}function o(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+u];if(P===M)if(v===f)v+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[v],w[v++]=F}}return v}function i(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+u];if(PL;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[v],w[v++]=F}}return v}function n(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=M)if(v===f)v+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[v],w[v++]=F}}return v}function a(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=M)if(v===f)v+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[v],w[v++]=F}}return v}function s(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<=M&&M<=L)if(v===f)v+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var O=w[f];w[f]=w[v],w[v++]=O}}return v}function c(p,d,T,l,_,w,M){for(var E=2*p,m=E*T,b=m,v=T,u=d,y=p+d,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(Pz;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var O=w[f];w[f]=w[v],w[v++]=O}}return v}function h(p,d,T,l,_,w,M,E){for(var m=2*p,b=m*T,v=b,u=T,y=d,f=p+d,P=T;l>P;++P,b+=m){var L=_[b+y],z=_[b+f];if(!(L>=M)&&!(E>=z))if(u===P)u+=1,v+=m;else{for(var F=0;m>F;++F){var O=_[b+F];_[b+F]=_[v],_[v++]=O}var B=w[P];w[P]=w[u],w[u++]=B}}return u}},4192:function(e){"use strict";e.exports=r;var t=32;function r(d,T){T<=4*t?o(0,T-1,d):p(0,T-1,d)}function o(d,T,l){for(var _=2*(d+1),w=d+1;w<=T;++w){for(var M=l[_++],E=l[_++],m=w,b=_-2;m-- >d;){var v=l[b-2],u=l[b-1];if(vl[T+1]:!0}function h(d,T,l,_){d*=2;var w=_[d];return w>1,m=E-_,b=E+_,v=w,u=m,y=E,f=b,P=M,L=d+1,z=T-1,F=0;c(v,u,l)&&(F=v,v=u,u=F),c(f,P,l)&&(F=f,f=P,P=F),c(v,y,l)&&(F=v,v=y,y=F),c(u,y,l)&&(F=u,u=y,y=F),c(v,f,l)&&(F=v,v=f,f=F),c(y,f,l)&&(F=y,y=f,f=F),c(u,P,l)&&(F=u,u=P,P=F),c(u,y,l)&&(F=u,u=y,y=F),c(f,P,l)&&(F=f,f=P,P=F);for(var O=l[2*u],B=l[2*u+1],I=l[2*f],N=l[2*f+1],U=2*v,W=2*y,Q=2*P,le=2*w,se=2*E,fe=2*M,G=0;G<2;++G){var J=l[U+G],$=l[W+G],X=l[Q+G];l[le+G]=J,l[se+G]=$,l[fe+G]=X}n(m,d,l),n(b,T,l);for(var re=L;re<=z;++re)if(h(re,O,B,l))re!==L&&i(re,L,l),++L;else if(!h(re,I,N,l))for(;;)if(h(z,I,N,l)){h(z,O,B,l)?(a(re,L,z,l),++L,--z):(i(re,z,l),--z);break}else{if(--z>>1;n(_,$);for(var X=0,re=0,se=0;se<$;++se){var ae=_[2*se+1]|0;if(ae>=a)ae=ae-a|0,M(p,d,re--,ae);else if(ae>=0)M(c,h,X--,ae);else if(ae<=-a){ae=-ae-a|0;for(var j=0;j>>1;n(_,$);for(var X=0,re=0,ae=0,se=0;se<$;++se){var j=_[2*se+1]|0,ee=j&1;if(se<$-1&&j>>1===_[2*se+3]>>1&&(ee=2,se+=1),j<0){for(var ne=-(j>>1)-1,ce=0;ce>1)-1;ee===0?M(c,h,X--,ne):ee===1?M(p,d,re--,ne):ee===2&&M(T,l,ae--,ne)}}}function v(y,f,P,L,z,F,O,B,I,N,U,W){var Q=0,le=2*y,se=f,fe=f+y,G=1,J=1;L?J=a:G=a;for(var $=z;$>>1;n(_,j);for(var ee=0,$=0;$=a?(ce=!L,X-=a):(ce=!!L,X-=1),ce)E(c,h,ee++,X);else{var _e=W[X],we=le*X,Oe=U[we+f+1],Ie=U[we+f+1+y];e:for(var Xe=0;Xe>>1;n(_,X);for(var re=0,fe=0;fe=a)c[re++]=G-a;else{G-=1;var j=U[G],ee=Q*G,ne=N[ee+f+1],ce=N[ee+f+1+y];e:for(var _e=0;_e=0;--_e)if(c[_e]===G){for(var Xe=_e+1;Xe0;){for(var w=h.pop(),T=h.pop(),M=-1,E=-1,l=d[T],b=1;b=0||(c.flip(T,w),n(s,c,h,M,T,E),n(s,c,h,T,E,M),n(s,c,h,E,w,M),n(s,c,h,w,M,E))}}},5023:function(e,t,r){"use strict";var o=r(2478);e.exports=h;function i(p,d,T,l,_,w,M){this.cells=p,this.neighbor=d,this.flags=l,this.constraint=T,this.active=_,this.next=w,this.boundary=M}var n=i.prototype;function a(p,d){return p[0]-d[0]||p[1]-d[1]||p[2]-d[2]}n.locate=function(){var p=[0,0,0];return function(d,T,l){var _=d,w=T,M=l;return T0||M.length>0;){for(;w.length>0;){var u=w.pop();if(E[u]!==-_){E[u]=_;for(var y=m[u],f=0;f<3;++f){var P=v[3*u+f];P>=0&&E[P]===0&&(b[3*u+f]?M.push(P):(w.push(P),E[P]=_))}}}var L=M;M=w,w=L,M.length=0,_=-_}var z=c(m,E,d);return T?z.concat(l.boundary):z}},8902:function(e,t,r){"use strict";var o=r(2478),i=r(3250)[3],n=0,a=1,s=2;e.exports=M;function c(E,m,b,v,u){this.a=E,this.b=m,this.idx=b,this.lowerIds=v,this.upperIds=u}function h(E,m,b,v){this.a=E,this.b=m,this.type=b,this.idx=v}function p(E,m){var b=E.a[0]-m.a[0]||E.a[1]-m.a[1]||E.type-m.type;return b||E.type!==n&&(b=i(E.a,E.b,m.b),b)?b:E.idx-m.idx}function d(E,m){return i(E.a,E.b,m)}function T(E,m,b,v,u){for(var y=o.lt(m,v,d),f=o.gt(m,v,d),P=y;P1&&i(b[z[O-2]],b[z[O-1]],v)>0;)E.push([z[O-1],z[O-2],u]),O-=1;z.length=O,z.push(u);for(var F=L.upperIds,O=F.length;O>1&&i(b[F[O-2]],b[F[O-1]],v)<0;)E.push([F[O-2],F[O-1],u]),O-=1;F.length=O,F.push(u)}}function l(E,m){var b;return E.a[0]L[0]&&u.push(new h(L,P,s,y),new h(P,L,a,y))}u.sort(p);for(var z=u[0].a[0]-(1+Math.abs(u[0].a[0]))*Math.pow(2,-52),F=[new c([z,1],[z,0],-1,[],[],[],[])],O=[],y=0,B=u.length;y=0}}(),n.removeTriangle=function(c,h,p){var d=this.stars;a(d[c],h,p),a(d[h],p,c),a(d[p],c,h)},n.addTriangle=function(c,h,p){var d=this.stars;d[c].push(h,p),d[h].push(p,c),d[p].push(c,h)},n.opposite=function(c,h){for(var p=this.stars[h],d=1,T=p.length;d=0;--I){var J=O[I];N=J[0];var $=z[N],X=$[0],re=$[1],ae=L[X],j=L[re];if((ae[0]-j[0]||ae[1]-j[1])<0){var ee=X;X=re,re=ee}$[0]=X;var ne=$[1]=J[1],ce;for(B&&(ce=$[2]);I>0&&O[I-1][0]===N;){var J=O[--I],_e=J[1];B?z.push([ne,_e,ce]):z.push([ne,_e]),ne=_e}B?z.push([ne,re,ce]):z.push([ne,re])}return U}function m(L,z,F){for(var O=z.length,B=new o(O),I=[],N=0;Nz[2]?1:0)}function u(L,z,F){if(L.length!==0){if(z)for(var O=0;O0||N.length>0}function P(L,z,F){var O;if(F){O=z;for(var B=new Array(z.length),I=0;IE+1)throw new Error(w+" map requires nshades to be at least size "+_.length);Array.isArray(h.alpha)?h.alpha.length!==2?m=[1,1]:m=h.alpha.slice():typeof h.alpha=="number"?m=[h.alpha,h.alpha]:m=[1,1],p=_.map(function(P){return Math.round(P.index*E)}),m[0]=Math.min(Math.max(m[0],0),1),m[1]=Math.min(Math.max(m[1],0),1);var v=_.map(function(P,L){var z=_[L].index,F=_[L].rgb.slice();return F.length===4&&F[3]>=0&&F[3]<=1||(F[3]=m[0]+(m[1]-m[0])*z),F}),u=[];for(b=0;b=0}function h(p,d,T,l){var _=o(d,T,l);if(_===0){var w=i(o(p,d,T)),M=i(o(p,d,l));if(w===M){if(w===0){var E=c(p,d,T),m=c(p,d,l);return E===m?0:E?1:-1}return 0}else{if(M===0)return w>0||c(p,d,l)?-1:1;if(w===0)return M>0||c(p,d,T)?1:-1}return i(M-w)}var b=o(p,d,T);if(b>0)return _>0&&o(p,d,l)>0?1:-1;if(b<0)return _>0||o(p,d,l)>0?1:-1;var v=o(p,d,l);return v>0||c(p,d,T)?1:-1}},8572:function(e){"use strict";e.exports=function(r){return r<0?-1:r>0?1:0}},8507:function(e){e.exports=o;var t=Math.min;function r(i,n){return i-n}function o(i,n){var a=i.length,s=i.length-n.length;if(s)return s;switch(a){case 0:return 0;case 1:return i[0]-n[0];case 2:return i[0]+i[1]-n[0]-n[1]||t(i[0],i[1])-t(n[0],n[1]);case 3:var c=i[0]+i[1],h=n[0]+n[1];if(s=c+i[2]-(h+n[2]),s)return s;var p=t(i[0],i[1]),d=t(n[0],n[1]);return t(p,i[2])-t(d,n[2])||t(p+i[2],c)-t(d+n[2],h);case 4:var T=i[0],l=i[1],_=i[2],w=i[3],M=n[0],E=n[1],m=n[2],b=n[3];return T+l+_+w-(M+E+m+b)||t(T,l,_,w)-t(M,E,m,b,M)||t(T+l,T+_,T+w,l+_,l+w,_+w)-t(M+E,M+m,M+b,E+m,E+b,m+b)||t(T+l+_,T+l+w,T+_+w,l+_+w)-t(M+E+m,M+E+b,M+m+b,E+m+b);default:for(var v=i.slice().sort(r),u=n.slice().sort(r),y=0;yr[i][0]&&(i=n);return oi?[[i],[o]]:[[o]]}},4750:function(e,t,r){"use strict";e.exports=i;var o=r(3090);function i(n){var a=o(n),s=a.length;if(s<=2)return[];for(var c=new Array(s),h=a[s-1],p=0;p=h[M]&&(w+=1);l[_]=w}}return c}function s(c,h){try{return o(c,!0)}catch{var p=i(c);if(p.length<=h)return[];var d=n(c,p),T=o(d,!0);return a(T,p)}}},4769:function(e){"use strict";function t(o,i,n,a,s,c){var h=6*s*s-6*s,p=3*s*s-4*s+1,d=-6*s*s+6*s,T=3*s*s-2*s;if(o.length){c||(c=new Array(o.length));for(var l=o.length-1;l>=0;--l)c[l]=h*o[l]+p*i[l]+d*n[l]+T*a[l];return c}return h*o+p*i+d*n[l]+T*a}function r(o,i,n,a,s,c){var h=s-1,p=s*s,d=h*h,T=(1+2*s)*d,l=s*d,_=p*(3-2*s),w=p*h;if(o.length){c||(c=new Array(o.length));for(var M=o.length-1;M>=0;--M)c[M]=T*o[M]+l*i[M]+_*n[M]+w*a[M];return c}return T*o+l*i+_*n+w*a}e.exports=r,e.exports.derivative=t},7642:function(e,t,r){"use strict";var o=r(8954),i=r(1682);e.exports=c;function n(h,p){this.point=h,this.index=p}function a(h,p){for(var d=h.point,T=p.point,l=d.length,_=0;_=2)return!1;F[B]=I}return!0}):z=z.filter(function(F){for(var O=0;O<=T;++O){var B=y[F[O]];if(B<0)return!1;F[O]=B}return!0}),T&1)for(var w=0;w>>31},e.exports.exponent=function(_){var w=e.exports.hi(_);return(w<<1>>>21)-1023},e.exports.fraction=function(_){var w=e.exports.lo(_),M=e.exports.hi(_),E=M&(1<<20)-1;return M&2146435072&&(E+=1048576),[w,E]},e.exports.denormalized=function(_){var w=e.exports.hi(_);return!(w&2146435072)}},1338:function(e){"use strict";function t(i,n,a){var s=i[a]|0;if(s<=0)return[];var c=new Array(s),h;if(a===i.length-1)for(h=0;h"u"&&(n=0),typeof i){case"number":if(i>0)return r(i|0,n);break;case"object":if(typeof i.length=="number")return t(i,n,0);break}return[]}e.exports=o},3134:function(e,t,r){"use strict";e.exports=i;var o=r(1682);function i(n,a){var s=n.length;if(typeof a!="number"){a=0;for(var c=0;c=T-1)for(var b=w.length-1,u=p-d[T-1],v=0;v=T-1)for(var m=w.length-1,b=p-d[T-1],v=0;v=0;--T)if(p[--d])return!1;return!0},s.jump=function(p){var d=this.lastT(),T=this.dimension;if(!(p0;--v)l.push(n(E[v-1],m[v-1],arguments[v])),_.push(0)}},s.push=function(p){var d=this.lastT(),T=this.dimension;if(!(p1e-6?1/M:0;this._time.push(p);for(var u=T;u>0;--u){var y=n(m[u-1],b[u-1],arguments[u]);l.push(y),_.push((y-l[w++])*v)}}},s.set=function(p){var d=this.dimension;if(!(p0;--E)T.push(n(w[E-1],M[E-1],arguments[E])),l.push(0)}},s.move=function(p){var d=this.lastT(),T=this.dimension;if(!(p<=d||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,M=this.bounds,E=M[0],m=M[1],b=p-d,v=b>1e-6?1/b:0;this._time.push(p);for(var u=T;u>0;--u){var y=arguments[u];l.push(n(E[u-1],m[u-1],l[w++]+y)),_.push(y*v)}}},s.idle=function(p){var d=this.lastT();if(!(p=0;--v)l.push(n(E[v],m[v],l[w]+b*_[w])),_.push(0),w+=1}};function c(p){for(var d=new Array(p),T=0;T=0;--L){var u=y[L];f[L]<=0?y[L]=new o(u._color,u.key,u.value,y[L+1],u.right,u._count+1):y[L]=new o(u._color,u.key,u.value,u.left,y[L+1],u._count+1)}for(var L=y.length-1;L>1;--L){var z=y[L-1],u=y[L];if(z._color===r||u._color===r)break;var F=y[L-2];if(F.left===z)if(z.left===u){var O=F.right;if(O&&O._color===t)z._color=r,F.right=n(r,O),F._color=t,L-=1;else{if(F._color=t,F.left=z.right,z._color=r,z.right=F,y[L-2]=z,y[L-1]=u,a(F),a(z),L>=3){var B=y[L-3];B.left===F?B.left=z:B.right=z}break}}else{var O=F.right;if(O&&O._color===t)z._color=r,F.right=n(r,O),F._color=t,L-=1;else{if(z.right=u.left,F._color=t,F.left=u.right,u._color=r,u.left=z,u.right=F,y[L-2]=u,y[L-1]=z,a(F),a(z),a(u),L>=3){var B=y[L-3];B.left===F?B.left=u:B.right=u}break}}else if(z.right===u){var O=F.left;if(O&&O._color===t)z._color=r,F.left=n(r,O),F._color=t,L-=1;else{if(F._color=t,F.right=z.left,z._color=r,z.left=F,y[L-2]=z,y[L-1]=u,a(F),a(z),L>=3){var B=y[L-3];B.right===F?B.right=z:B.left=z}break}}else{var O=F.left;if(O&&O._color===t)z._color=r,F.left=n(r,O),F._color=t,L-=1;else{if(z.left=u.right,F._color=t,F.right=u.left,u._color=r,u.right=z,u.left=F,y[L-2]=u,y[L-1]=z,a(F),a(z),a(u),L>=3){var B=y[L-3];B.right===F?B.right=u:B.left=u}break}}}return y[0]._color=r,new s(v,y[0])};function h(m,b){if(b.left){var v=h(m,b.left);if(v)return v}var v=m(b.key,b.value);if(v)return v;if(b.right)return h(m,b.right)}function p(m,b,v,u){var y=b(m,u.key);if(y<=0){if(u.left){var f=p(m,b,v,u.left);if(f)return f}var f=v(u.key,u.value);if(f)return f}if(u.right)return p(m,b,v,u.right)}function d(m,b,v,u,y){var f=v(m,y.key),P=v(b,y.key),L;if(f<=0&&(y.left&&(L=d(m,b,v,u,y.left),L)||P>0&&(L=u(y.key,y.value),L)))return L;if(P>0&&y.right)return d(m,b,v,u,y.right)}c.forEach=function(b,v,u){if(this.root)switch(arguments.length){case 1:return h(b,this.root);case 2:return p(v,this._compare,b,this.root);case 3:return this._compare(v,u)>=0?void 0:d(v,u,this._compare,b,this.root)}},Object.defineProperty(c,"begin",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.left;return new T(this,m)}}),Object.defineProperty(c,"end",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.right;return new T(this,m)}}),c.at=function(m){if(m<0)return new T(this,[]);for(var b=this.root,v=[];;){if(v.push(b),b.left){if(m=b.right._count)break;b=b.right}else break}return new T(this,[])},c.ge=function(m){for(var b=this._compare,v=this.root,u=[],y=0;v;){var f=b(m,v.key);u.push(v),f<=0&&(y=u.length),f<=0?v=v.left:v=v.right}return u.length=y,new T(this,u)},c.gt=function(m){for(var b=this._compare,v=this.root,u=[],y=0;v;){var f=b(m,v.key);u.push(v),f<0&&(y=u.length),f<0?v=v.left:v=v.right}return u.length=y,new T(this,u)},c.lt=function(m){for(var b=this._compare,v=this.root,u=[],y=0;v;){var f=b(m,v.key);u.push(v),f>0&&(y=u.length),f<=0?v=v.left:v=v.right}return u.length=y,new T(this,u)},c.le=function(m){for(var b=this._compare,v=this.root,u=[],y=0;v;){var f=b(m,v.key);u.push(v),f>=0&&(y=u.length),f<0?v=v.left:v=v.right}return u.length=y,new T(this,u)},c.find=function(m){for(var b=this._compare,v=this.root,u=[];v;){var y=b(m,v.key);if(u.push(v),y===0)return new T(this,u);y<=0?v=v.left:v=v.right}return new T(this,[])},c.remove=function(m){var b=this.find(m);return b?b.remove():this},c.get=function(m){for(var b=this._compare,v=this.root;v;){var u=b(m,v.key);if(u===0)return v.value;u<=0?v=v.left:v=v.right}};function T(m,b){this.tree=m,this._stack=b}var l=T.prototype;Object.defineProperty(l,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(l,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),l.clone=function(){return new T(this.tree,this._stack.slice())};function _(m,b){m.key=b.key,m.value=b.value,m.left=b.left,m.right=b.right,m._color=b._color,m._count=b._count}function w(m){for(var b,v,u,y,f=m.length-1;f>=0;--f){if(b=m[f],f===0){b._color=r;return}if(v=m[f-1],v.left===b){if(u=v.right,u.right&&u.right._color===t){if(u=v.right=i(u),y=u.right=i(u.right),v.right=u.left,u.left=v,u.right=y,u._color=v._color,b._color=r,v._color=r,y._color=r,a(v),a(u),f>1){var P=m[f-2];P.left===v?P.left=u:P.right=u}m[f-1]=u;return}else if(u.left&&u.left._color===t){if(u=v.right=i(u),y=u.left=i(u.left),v.right=y.left,u.left=y.right,y.left=v,y.right=u,y._color=v._color,v._color=r,u._color=r,b._color=r,a(v),a(u),a(y),f>1){var P=m[f-2];P.left===v?P.left=y:P.right=y}m[f-1]=y;return}if(u._color===r)if(v._color===t){v._color=r,v.right=n(t,u);return}else{v.right=n(t,u);continue}else{if(u=i(u),v.right=u.left,u.left=v,u._color=v._color,v._color=t,a(v),a(u),f>1){var P=m[f-2];P.left===v?P.left=u:P.right=u}m[f-1]=u,m[f]=v,f+11){var P=m[f-2];P.right===v?P.right=u:P.left=u}m[f-1]=u;return}else if(u.right&&u.right._color===t){if(u=v.left=i(u),y=u.right=i(u.right),v.left=y.right,u.right=y.left,y.right=v,y.left=u,y._color=v._color,v._color=r,u._color=r,b._color=r,a(v),a(u),a(y),f>1){var P=m[f-2];P.right===v?P.right=y:P.left=y}m[f-1]=y;return}if(u._color===r)if(v._color===t){v._color=r,v.left=n(t,u);return}else{v.left=n(t,u);continue}else{if(u=i(u),v.left=u.right,u.right=v,u._color=v._color,v._color=t,a(v),a(u),f>1){var P=m[f-2];P.right===v?P.right=u:P.left=u}m[f-1]=u,m[f]=v,f+1=0;--u){var v=m[u];v.left===m[u+1]?b[u]=new o(v._color,v.key,v.value,b[u+1],v.right,v._count):b[u]=new o(v._color,v.key,v.value,v.left,b[u+1],v._count)}if(v=b[b.length-1],v.left&&v.right){var y=b.length;for(v=v.left;v.right;)b.push(v),v=v.right;var f=b[y-1];b.push(new o(v._color,f.key,f.value,v.left,v.right,v._count)),b[y-1].key=v.key,b[y-1].value=v.value;for(var u=b.length-2;u>=y;--u)v=b[u],b[u]=new o(v._color,v.key,v.value,v.left,b[u+1],v._count);b[y-1].left=b[y]}if(v=b[b.length-1],v._color===t){var P=b[b.length-2];P.left===v?P.left=null:P.right===v&&(P.right=null),b.pop();for(var u=0;u0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(l,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(l,"index",{get:function(){var m=0,b=this._stack;if(b.length===0){var v=this.tree.root;return v?v._count:0}else b[b.length-1].left&&(m=b[b.length-1].left._count);for(var u=b.length-2;u>=0;--u)b[u+1]===b[u].right&&(++m,b[u].left&&(m+=b[u].left._count));return m},enumerable:!0}),l.next=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.right)for(b=b.right;b;)m.push(b),b=b.left;else for(m.pop();m.length>0&&m[m.length-1].right===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasNext",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].right)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].left===m[b])return!0;return!1}}),l.update=function(m){var b=this._stack;if(b.length===0)throw new Error("Can't update empty node!");var v=new Array(b.length),u=b[b.length-1];v[v.length-1]=new o(u._color,u.key,m,u.left,u.right,u._count);for(var y=b.length-2;y>=0;--y)u=b[y],u.left===b[y+1]?v[y]=new o(u._color,u.key,u.value,v[y+1],u.right,u._count):v[y]=new o(u._color,u.key,u.value,u.left,v[y+1],u._count);return new s(this.tree._compare,v[0])},l.prev=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.left)for(b=b.left;b;)m.push(b),b=b.right;else for(m.pop();m.length>0&&m[m.length-1].left===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasPrev",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].left)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].right===m[b])return!0;return!1}});function M(m,b){return mb?1:0}function E(m){return new s(m||M,null)}},3837:function(e,t,r){"use strict";e.exports=L;var o=r(4935),i=r(501),n=r(5304),a=r(6429),s=r(6444),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=ArrayBuffer,p=DataView;function d(z){return h.isView(z)&&!(z instanceof p)}function T(z){return Array.isArray(z)||d(z)}function l(z,F){return z[0]=F[0],z[1]=F[1],z[2]=F[2],z}function _(z){this.gl=z,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=n(z)}var w=_.prototype;w.update=function(z){z=z||{};function F(X,re,ae){if(ae in z){var j=z[ae],ee=this[ae],ne;(X?T(j)&&T(j[0]):T(j))?this[ae]=ne=[re(j[0]),re(j[1]),re(j[2])]:this[ae]=ne=[re(j),re(j),re(j)];for(var ce=0;ce<3;++ce)if(ne[ce]!==ee[ce])return!0}return!1}var O=F.bind(this,!1,Number),B=F.bind(this,!1,Boolean),I=F.bind(this,!1,String),N=F.bind(this,!0,function(X){if(T(X)){if(X.length===3)return[+X[0],+X[1],+X[2],1];if(X.length===4)return[+X[0],+X[1],+X[2],+X[3]]}return[0,0,0,1]}),U,W=!1,Q=!1;if("bounds"in z)for(var le=z.bounds,se=0;se<2;++se)for(var fe=0;fe<3;++fe)le[se][fe]!==this.bounds[se][fe]&&(Q=!0),this.bounds[se][fe]=le[se][fe];if("ticks"in z){U=z.ticks,W=!0,this.autoTicks=!1;for(var se=0;se<3;++se)this.tickSpacing[se]=0}else O("tickSpacing")&&(this.autoTicks=!0,Q=!0);if(this._firstInit&&("ticks"in z||"tickSpacing"in z||(this.autoTicks=!0),Q=!0,W=!0,this._firstInit=!1),Q&&this.autoTicks&&(U=s.create(this.bounds,this.tickSpacing),W=!0),W){for(var se=0;se<3;++se)U[se].sort(function(re,ae){return re.x-ae.x});s.equal(U,this.ticks)?W=!1:this.ticks=U}B("tickEnable"),I("tickFont")&&(W=!0),I("tickFontStyle")&&(W=!0),I("tickFontWeight")&&(W=!0),I("tickFontVariant")&&(W=!0),O("tickSize"),O("tickAngle"),O("tickPad"),N("tickColor");var G=I("labels");I("labelFont")&&(G=!0),I("labelFontStyle")&&(G=!0),I("labelFontWeight")&&(G=!0),I("labelFontVariant")&&(G=!0),B("labelEnable"),O("labelSize"),O("labelPad"),N("labelColor"),B("lineEnable"),B("lineMirror"),O("lineWidth"),N("lineColor"),B("lineTickEnable"),B("lineTickMirror"),O("lineTickLength"),O("lineTickWidth"),N("lineTickColor"),B("gridEnable"),O("gridWidth"),N("gridColor"),B("zeroEnable"),N("zeroLineColor"),O("zeroLineWidth"),B("backgroundEnable"),N("backgroundColor");var J=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],$=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(G||W)&&this._text.update(this.bounds,this.labels,J,this.ticks,$):this._text=o(this.gl,this.bounds,this.labels,J,this.ticks,$),this._lines&&W&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};function M(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var E=[new M,new M,new M];function m(z,F,O,B,I){for(var N=z.primalOffset,U=z.primalMinor,W=z.mirrorOffset,Q=z.mirrorMinor,le=B[F],se=0;se<3;++se)if(F!==se){var fe=N,G=W,J=U,$=Q;le&1<0?(J[se]=-1,$[se]=0):(J[se]=0,$[se]=1)}}var b=[0,0,0],v={model:c,view:c,projection:c,_ortho:!1};w.isOpaque=function(){return!0},w.isTransparent=function(){return!1},w.drawTransparent=function(z){};var u=0,y=[0,0,0],f=[0,0,0],P=[0,0,0];w.draw=function(z){z=z||v;for(var ae=this.gl,F=z.model||c,O=z.view||c,B=z.projection||c,I=this.bounds,N=z._ortho||!1,U=a(F,O,B,I,N),W=U.cubeEdges,Q=U.axis,le=O[12],se=O[13],fe=O[14],G=O[15],J=N?2:1,$=J*this.pixelRatio*(B[3]*le+B[7]*se+B[11]*fe+B[15]*G)/ae.drawingBufferHeight,X=0;X<3;++X)this.lastCubeProps.cubeEdges[X]=W[X],this.lastCubeProps.axis[X]=Q[X];for(var re=E,X=0;X<3;++X)m(E[X],X,this.bounds,W,Q);for(var ae=this.gl,j=b,X=0;X<3;++X)this.backgroundEnable[X]?j[X]=Q[X]:j[X]=0;this._background.draw(F,O,B,I,j,this.backgroundColor),this._lines.bind(F,O,B,this);for(var X=0;X<3;++X){var ee=[0,0,0];Q[X]>0?ee[X]=I[1][X]:ee[X]=I[0][X];for(var ne=0;ne<2;++ne){var ce=(X+1+ne)%3,_e=(X+1+(ne^1))%3;this.gridEnable[ce]&&this._lines.drawGrid(ce,_e,this.bounds,ee,this.gridColor[ce],this.gridWidth[ce]*this.pixelRatio)}for(var ne=0;ne<2;++ne){var ce=(X+1+ne)%3,_e=(X+1+(ne^1))%3;this.zeroEnable[_e]&&Math.min(I[0][_e],I[1][_e])<=0&&Math.max(I[0][_e],I[1][_e])>=0&&this._lines.drawZero(ce,_e,this.bounds,ee,this.zeroLineColor[_e],this.zeroLineWidth[_e]*this.pixelRatio)}}for(var X=0;X<3;++X){this.lineEnable[X]&&this._lines.drawAxisLine(X,this.bounds,re[X].primalOffset,this.lineColor[X],this.lineWidth[X]*this.pixelRatio),this.lineMirror[X]&&this._lines.drawAxisLine(X,this.bounds,re[X].mirrorOffset,this.lineColor[X],this.lineWidth[X]*this.pixelRatio);for(var we=l(y,re[X].primalMinor),Oe=l(f,re[X].mirrorMinor),Ie=this.lineTickLength,ne=0;ne<3;++ne){var Xe=$/F[5*ne];we[ne]*=Ie[ne]*Xe,Oe[ne]*=Ie[ne]*Xe}this.lineTickEnable[X]&&this._lines.drawAxisTicks(X,re[X].primalOffset,we,this.lineTickColor[X],this.lineTickWidth[X]*this.pixelRatio),this.lineTickMirror[X]&&this._lines.drawAxisTicks(X,re[X].mirrorOffset,Oe,this.lineTickColor[X],this.lineTickWidth[X]*this.pixelRatio)}this._lines.unbind(),this._text.bind(F,O,B,this.pixelRatio);var tt,rt=.5,Je,ot;function Me($e){ot=[0,0,0],ot[$e]=1}function pe($e,kt,Mt){var Bt=($e+1)%3,jt=($e+2)%3,cr=kt[Bt],nr=kt[jt],Lr=Mt[Bt],mr=Mt[jt];if(cr>0&&mr>0){Me(Bt);return}else if(cr>0&&mr<0){Me(Bt);return}else if(cr<0&&mr>0){Me(Bt);return}else if(cr<0&&mr<0){Me(Bt);return}else if(nr>0&&Lr>0){Me(jt);return}else if(nr>0&&Lr<0){Me(jt);return}else if(nr<0&&Lr>0){Me(jt);return}else if(nr<0&&Lr<0){Me(jt);return}}for(var X=0;X<3;++X){for(var ue=re[X].primalMinor,ze=re[X].mirrorMinor,Qe=l(P,re[X].primalOffset),ne=0;ne<3;++ne)this.lineTickEnable[X]&&(Qe[ne]+=$*ue[ne]*Math.max(this.lineTickLength[ne],0)/F[5*ne]);var it=[0,0,0];if(it[X]=1,this.tickEnable[X]){this.tickAngle[X]===-3600?(this.tickAngle[X]=0,this.tickAlign[X]="auto"):this.tickAlign[X]=-1,Je=1,tt=[this.tickAlign[X],rt,Je],tt[0]==="auto"?tt[0]=u:tt[0]=parseInt(""+tt[0]),ot=[0,0,0],pe(X,ue,ze);for(var ne=0;ne<3;++ne)Qe[ne]+=$*ue[ne]*this.tickPad[ne]/F[5*ne];this._text.drawTicks(X,this.tickSize[X],this.tickAngle[X],Qe,this.tickColor[X],it,ot,tt)}if(this.labelEnable[X]){Je=0,ot=[0,0,0],this.labels[X].length>4&&(Me(X),Je=1),tt=[this.labelAlign[X],rt,Je],tt[0]==="auto"?tt[0]=u:tt[0]=parseInt(""+tt[0]);for(var ne=0;ne<3;++ne)Qe[ne]+=$*ue[ne]*this.labelPad[ne]/F[5*ne];Qe[X]+=.5*(I[0][X]+I[1][X]),this._text.drawLabel(X,this.labelSize[X],this.labelAngle[X],Qe,this.labelColor[X],[0,0,0],ot,tt)}}this._text.unbind()},w.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function L(z,F){var O=new _(z);return O.update(F),O}},5304:function(e,t,r){"use strict";e.exports=c;var o=r(2762),i=r(8116),n=r(1879).bg;function a(h,p,d,T){this.gl=h,this.buffer=p,this.vao=d,this.shader=T}var s=a.prototype;s.draw=function(h,p,d,T,l,_){for(var w=!1,M=0;M<3;++M)w=w||l[M];if(w){var E=this.gl;E.enable(E.POLYGON_OFFSET_FILL),E.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:h,view:p,projection:d,bounds:T,enable:l,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),E.disable(E.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function c(h){for(var p=[],d=[],T=0,l=0;l<3;++l)for(var _=(l+1)%3,w=(l+2)%3,M=[0,0,0],E=[0,0,0],m=-1;m<=1;m+=2){d.push(T,T+2,T+1,T+1,T+2,T+3),M[l]=m,E[l]=m;for(var b=-1;b<=1;b+=2){M[_]=b;for(var v=-1;v<=1;v+=2)M[w]=v,p.push(M[0],M[1],M[2],E[0],E[1],E[2]),T+=1}var u=_;_=w,w=u}var y=o(h,new Float32Array(p)),f=o(h,new Uint16Array(d),h.ELEMENT_ARRAY_BUFFER),P=i(h,[{buffer:y,type:h.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:h.FLOAT,size:3,offset:12,stride:24}],f),L=n(h);return L.attributes.position.location=0,L.attributes.normal.location=1,new a(h,y,P,L)}},6429:function(e,t,r){"use strict";e.exports=m;var o=r(8828),i=r(6760),n=r(5202),a=r(3250),s=new Array(16),c=new Array(8),h=new Array(8),p=new Array(3),d=[0,0,0];(function(){for(var b=0;b<8;++b)c[b]=[1,1,1,1],h[b]=[1,1,1]})();function T(b,v,u){for(var y=0;y<4;++y){b[y]=u[12+y];for(var f=0;f<3;++f)b[y]+=v[f]*u[4*f+y]}}var l=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function _(b){for(var v=0;vQ&&(O|=1<Q){O|=1<h[L][1])&&(re=L);for(var ae=-1,L=0;L<3;++L){var j=re^1<h[ee][0]&&(ee=j)}}var ne=w;ne[0]=ne[1]=ne[2]=0,ne[o.log2(ae^re)]=re&ae,ne[o.log2(re^ee)]=reⅇvar ce=ee^7;ce===O||ce===X?(ce=ae^7,ne[o.log2(ee^ce)]=ce&ee):ne[o.log2(ae^ce)]=ce&ae;for(var _e=M,we=O,N=0;N<3;++N)we&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ? + b - PI : + b; +} + +float look_horizontal_or_vertical(float a, float ratio) { + // ratio controls the ratio between being horizontal to (vertical + horizontal) + // if ratio is set to 0.5 then it is 50%, 50%. + // when using a higher ratio e.g. 0.75 the result would + // likely be more horizontal than vertical. + + float b = positive_angle(a); + + return + (b < ( ratio) * HALF_PI) ? 0.0 : + (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI : + (b < (2.0 + ratio) * HALF_PI) ? 0.0 : + (b < (4.0 - ratio) * HALF_PI) ? HALF_PI : + 0.0; +} + +float roundTo(float a, float b) { + return float(b * floor((a + 0.5 * b) / b)); +} + +float look_round_n_directions(float a, int n) { + float b = positive_angle(a); + float div = TWO_PI / float(n); + float c = roundTo(b, div); + return look_upwards(c); +} + +float applyAlignOption(float rawAngle, float delta) { + return + (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions + (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical + (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis + (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards + (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal + rawAngle; // otherwise return back raw input angle +} + +bool isAxisTitle = (axis.x == 0.0) && + (axis.y == 0.0) && + (axis.z == 0.0); + +void main() { + //Compute world offset + float axisDistance = position.z; + vec3 dataPosition = axisDistance * axis + offset; + + float beta = angle; // i.e. user defined attributes for each tick + + float axisAngle; + float clipAngle; + float flip; + + if (enableAlign) { + axisAngle = (isAxisTitle) ? HALF_PI : + computeViewAngle(dataPosition, dataPosition + axis); + clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir); + + axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0; + clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0; + + flip = (dot(vec2(cos(axisAngle), sin(axisAngle)), + vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0; + + beta += applyAlignOption(clipAngle, flip * PI); + } + + //Compute plane offset + vec2 planeCoord = position.xy * pixelScale; + + mat2 planeXform = scale * mat2( + cos(beta), sin(beta), + -sin(beta), cos(beta) + ); + + vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution; + + //Compute clip position + vec3 clipPosition = project(dataPosition); + + //Apply text offset in clip coordinates + clipPosition += vec3(viewOffset, 0.0); + + //Done + gl_Position = vec4(clipPosition, 1.0); +} +`]),c=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 color; +void main() { + gl_FragColor = color; +}`]);t.Q=function(d){return i(d,s,c,null,[{name:"position",type:"vec3"}])};var h=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec3 normal; + +uniform mat4 model, view, projection; +uniform vec3 enable; +uniform vec3 bounds[2]; + +varying vec3 colorChannel; + +void main() { + + vec3 signAxis = sign(bounds[1] - bounds[0]); + + vec3 realNormal = signAxis * normal; + + if(dot(realNormal, enable) > 0.0) { + vec3 minRange = min(bounds[0], bounds[1]); + vec3 maxRange = max(bounds[0], bounds[1]); + vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0)); + gl_Position = projection * (view * (model * vec4(nPosition, 1.0))); + } else { + gl_Position = vec4(0,0,0,0); + } + + colorChannel = abs(realNormal); +} +`]),p=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 colors[3]; + +varying vec3 colorChannel; + +void main() { + gl_FragColor = colorChannel.x * colors[0] + + colorChannel.y * colors[1] + + colorChannel.z * colors[2]; +}`]);t.bg=function(d){return i(d,h,p,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(e,t,r){"use strict";e.exports=_;var o=r(2762),i=r(8116),n=r(4359),a=r(1879).Q,s=window||process.global||{},c=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};var h=3;function p(w,M,E,m){this.gl=w,this.shader=M,this.buffer=E,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var d=p.prototype,T=[0,0];d.bind=function(w,M,E,m){this.vao.bind(),this.shader.bind();var b=this.shader.uniforms;b.model=w,b.view=M,b.projection=E,b.pixelScale=m,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},d.unbind=function(){this.vao.unbind()},d.update=function(w,M,E,m,b){var v=[];function u(N,U,W,Q,le,se){var fe=[W.style,W.weight,W.variant,W.family].join("_"),G=c[fe];G||(G=c[fe]={});var J=G[U];J||(J=G[U]=l(U,{triangles:!0,font:W.family,fontStyle:W.style,fontWeight:W.weight,fontVariant:W.variant,textAlign:"center",textBaseline:"middle",lineSpacing:le,styletags:se}));for(var $=(Q||12)/12,X=J.positions,re=J.cells,ae=0,j=re.length;ae=0;--ne){var ce=X[ee[ne]];v.push($*ce[0],-$*ce[1],N)}}for(var y=[0,0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0],z=1.25,F={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},O=0;O<3;++O){P[O]=v.length/h|0,u(.5*(w[0][O]+w[1][O]),M[O],E[O],12,z,F),L[O]=(v.length/h|0)-P[O],y[O]=v.length/h|0;for(var B=0;B=0&&(h=s.length-c-1);var p=Math.pow(10,h),d=Math.round(n*a*p),T=d+"";if(T.indexOf("e")>=0)return T;var l=d/p,_=d%p;d<0?(l=-Math.ceil(l)|0,_=-_|0):(l=Math.floor(l)|0,_=_|0);var w=""+l;if(d<0&&(w="-"+w),h){for(var M=""+_;M.length=n[0][c];--d)h.push({x:d*a[c],text:r(a[c],d)});s.push(h)}return s}function i(n,a){for(var s=0;s<3;++s){if(n[s].length!==a[s].length)return!1;for(var c=0;cw)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return l.bufferSubData(_,m,E),w}function p(l,_){for(var w=o.malloc(l.length,_),M=l.length,E=0;E=0;--M){if(_[M]!==w)return!1;w*=l[M]}return!0}c.update=function(l,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof l=="object"&&typeof l.shape<"u"){var w=l.dtype;if(a.indexOf(w)<0&&(w="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var M=gl.getExtension("OES_element_index_uint");M&&w!=="uint16"?w="uint32":w="uint16"}if(w===l.dtype&&d(l.shape,l.stride))l.offset===0&&l.data.length===l.shape[0]?this.length=h(this.gl,this.type,this.length,this.usage,l.data,_):this.length=h(this.gl,this.type,this.length,this.usage,l.data.subarray(l.offset,l.shape[0]),_);else{var E=o.malloc(l.size,w),m=n(E,l.shape);i.assign(m,l),_<0?this.length=h(this.gl,this.type,this.length,this.usage,E,_):this.length=h(this.gl,this.type,this.length,this.usage,E.subarray(0,l.size),_),o.free(E)}}else if(Array.isArray(l)){var b;this.type===this.gl.ELEMENT_ARRAY_BUFFER?b=p(l,"uint16"):b=p(l,"float32"),_<0?this.length=h(this.gl,this.type,this.length,this.usage,b,_):this.length=h(this.gl,this.type,this.length,this.usage,b.subarray(0,l.length),_),o.free(b)}else if(typeof l=="object"&&typeof l.length=="number")this.length=h(this.gl,this.type,this.length,this.usage,l,_);else if(typeof l=="number"||l===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");l=l|0,l<=0&&(l=1),this.gl.bufferData(this.type,l|0,this.usage),this.length=l}else throw new Error("gl-buffer: Invalid data type")};function T(l,_,w,M){if(w=w||l.ARRAY_BUFFER,M=M||l.DYNAMIC_DRAW,w!==l.ARRAY_BUFFER&&w!==l.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(M!==l.DYNAMIC_DRAW&&M!==l.STATIC_DRAW&&M!==l.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var E=l.createBuffer(),m=new s(l,w,E,0,M);return m.update(_),m}e.exports=T},6405:function(e,t,r){"use strict";var o=r(2931);e.exports=function(n,a){var s=n.positions,c=n.vectors,h={positions:[],vertexIntensity:[],vertexIntensityBounds:n.vertexIntensityBounds,vectors:[],cells:[],coneOffset:n.coneOffset,colormap:n.colormap};if(n.positions.length===0)return a&&(a[0]=[0,0,0],a[1]=[0,0,0]),h;for(var p=0,d=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,M=-1/0,E=null,m=null,b=[],v=1/0,u=!1,y=n.coneSizemode==="raw",f=0;fp&&(p=o.length(L)),f&&!y){var z=2*o.distance(E,P)/(o.length(m)+o.length(L));z?(v=Math.min(v,z),u=!1):u=!0}u||(E=P,m=L),b.push(L)}var F=[d,l,w],O=[T,_,M];a&&(a[0]=F,a[1]=O),p===0&&(p=1);var B=1/p;isFinite(v)||(v=1),h.vectorScale=v;var I=n.coneSize||(y?1:.5);n.absoluteConeSize&&(I=n.absoluteConeSize*B),h.coneScale=I;for(var f=0,N=0;f=1},l.isTransparent=function(){return this.opacity<1},l.pickSlots=1,l.setPickBase=function(b){this.pickId=b};function _(b){for(var v=p({colormap:b,nshades:256,format:"rgba"}),u=new Uint8Array(256*4),y=0;y<256;++y){for(var f=v[y],P=0;P<3;++P)u[4*y+P]=f[P];u[4*y+3]=f[3]*255}return h(u,[256,256,4],[4,0,1])}function w(b){for(var v=b.length,u=new Array(v),y=0;y0){var N=this.triShader;N.bind(),N.uniforms=z,this.triangleVAO.bind(),v.drawArrays(v.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},l.drawPick=function(b){b=b||{};for(var v=this.gl,u=b.model||d,y=b.view||d,f=b.projection||d,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);this._model=[].slice.call(u),this._view=[].slice.call(y),this._projection=[].slice.call(f),this._resolution=[v.drawingBufferWidth,v.drawingBufferHeight];var z={model:u,view:y,projection:f,clipBounds:P,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},F=this.pickShader;F.bind(),F.uniforms=z,this.triangleCount>0&&(this.triangleVAO.bind(),v.drawArrays(v.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},l.pick=function(b){if(!b||b.id!==this.pickId)return null;var v=b.value[0]+256*b.value[1]+65536*b.value[2],u=this.cells[v],y=this.positions[u[1]].slice(0,3),f={position:y,dataCoordinate:y,index:Math.floor(u[1]/48)};return this.traceType==="cone"?f.index=Math.floor(u[1]/48):this.traceType==="streamtube"&&(f.intensity=this.intensity[u[1]],f.velocity=this.vectors[u[1]].slice(0,3),f.divergence=this.vectors[u[1]][3],f.index=v),f},l.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function M(b,v){var u=o(b,v.meshShader.vertex,v.meshShader.fragment,null,v.meshShader.attributes);return u.attributes.position.location=0,u.attributes.color.location=2,u.attributes.uv.location=3,u.attributes.vector.location=4,u}function E(b,v){var u=o(b,v.pickShader.vertex,v.pickShader.fragment,null,v.pickShader.attributes);return u.attributes.position.location=0,u.attributes.id.location=1,u.attributes.vector.location=4,u}function m(b,v,u){var y=u.shaders;arguments.length===1&&(v=b,b=v.gl);var f=M(b,y),P=E(b,y),L=a(b,h(new Uint8Array([255,255,255,255]),[1,1,4]));L.generateMipmap(),L.minFilter=b.LINEAR_MIPMAP_LINEAR,L.magFilter=b.LINEAR;var z=i(b),F=i(b),O=i(b),B=i(b),I=i(b),N=n(b,[{buffer:z,type:b.FLOAT,size:4},{buffer:I,type:b.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:O,type:b.FLOAT,size:4},{buffer:B,type:b.FLOAT,size:2},{buffer:F,type:b.FLOAT,size:4}]),U=new T(b,L,f,P,z,F,I,O,B,N,u.traceType||"cone");return U.update(v),U}e.exports=m},614:function(e,t,r){var o=r(3236),i=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec3 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, coneScale, coneOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * conePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(conePosition, 1.0); + vec4 t_position = view * conePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = conePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),n=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),a=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float vectorScale, coneScale, coneOffset; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + gl_Position = projection * (view * conePosition); + f_id = id; + f_position = position.xyz; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);t.meshShader={vertex:i,fragment:n,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(e){e.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(e,t,r){var o=r(737);e.exports=function(n){return o[n]}},9165:function(e,t,r){"use strict";e.exports=T;var o=r(2762),i=r(8116),n=r(3436),a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,M){this.gl=l,this.shader=M,this.buffer=_,this.vao=w,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var c=s.prototype;c.isOpaque=function(){return!this.hasAlpha},c.isTransparent=function(){return this.hasAlpha},c.drawTransparent=c.draw=function(l){var _=this.gl,w=this.shader.uniforms;this.shader.bind();var M=w.view=l.view||a,E=w.projection=l.projection||a;w.model=l.model||a,w.clipBounds=this.clipBounds,w.opacity=this.opacity;var m=M[12],b=M[13],v=M[14],u=M[15],y=l._ortho||!1,f=y?2:1,P=f*this.pixelRatio*(E[3]*m+E[7]*b+E[11]*v+E[15]*u)/_.drawingBufferHeight;this.vao.bind();for(var L=0;L<3;++L)_.lineWidth(this.lineWidth[L]*this.pixelRatio),w.capSize=this.capSize[L]*P,this.lineCount[L]&&_.drawArrays(_.LINES,this.lineOffset[L],this.lineCount[L]);this.vao.unbind()};function h(l,_){for(var w=0;w<3;++w)l[0][w]=Math.min(l[0][w],_[w]),l[1][w]=Math.max(l[1][w],_[w])}var p=function(){for(var l=new Array(3),_=0;_<3;++_){for(var w=[],M=1;M<=2;++M)for(var E=-1;E<=1;E+=2){var m=(M+_)%3,b=[0,0,0];b[m]=E,w.push(b)}l[_]=w}return l}();function d(l,_,w,M){for(var E=p[M],m=0;m0){var z=y.slice();z[v]+=P[1][v],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+d(E,z,L,v)}}}this.lineCount[v]=b-this.lineOffset[v]}this.buffer.update(E)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(l){var _=l.gl,w=o(_),M=i(_,[{buffer:w,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:w,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:w,type:_.FLOAT,size:3,offset:28,stride:40}]),E=n(_);E.attributes.position.location=0,E.attributes.color.location=1,E.attributes.offset.location=2;var m=new s(_,w,M,E);return m.update(l),m}},3436:function(e,t,r){"use strict";var o=r(3236),i=r(9405),n=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, offset; +attribute vec4 color; +uniform mat4 model, view, projection; +uniform float capSize; +varying vec4 fragColor; +varying vec3 fragPosition; + +void main() { + vec4 worldPosition = model * vec4(position, 1.0); + worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0); + gl_Position = projection * (view * worldPosition); + fragColor = color; + fragPosition = position; +}`]),a=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float opacity; +varying vec3 fragPosition; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], fragPosition) || + fragColor.a * opacity == 0. + ) discard; + + gl_FragColor = opacity * fragColor; +}`]);e.exports=function(s){return i(s,n,a,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(e,t,r){"use strict";var o=r(7766);e.exports=b;var i=null,n,a,s,c;function h(v){var u=v.getParameter(v.FRAMEBUFFER_BINDING),y=v.getParameter(v.RENDERBUFFER_BINDING),f=v.getParameter(v.TEXTURE_BINDING_2D);return[u,y,f]}function p(v,u){v.bindFramebuffer(v.FRAMEBUFFER,u[0]),v.bindRenderbuffer(v.RENDERBUFFER,u[1]),v.bindTexture(v.TEXTURE_2D,u[2])}function d(v,u){var y=v.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL);i=new Array(y+1);for(var f=0;f<=y;++f){for(var P=new Array(y),L=0;L1&&F.drawBuffersWEBGL(i[z]);var U=y.getExtension("WEBGL_depth_texture");U?O?v.depth=l(y,P,L,U.UNSIGNED_INT_24_8_WEBGL,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):B&&(v.depth=l(y,P,L,y.UNSIGNED_SHORT,y.DEPTH_COMPONENT,y.DEPTH_ATTACHMENT)):B&&O?v._depth_rb=_(y,P,L,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):B?v._depth_rb=_(y,P,L,y.DEPTH_COMPONENT16,y.DEPTH_ATTACHMENT):O&&(v._depth_rb=_(y,P,L,y.STENCIL_INDEX,y.STENCIL_ATTACHMENT));var W=y.checkFramebufferStatus(y.FRAMEBUFFER);if(W!==y.FRAMEBUFFER_COMPLETE){v._destroyed=!0,y.bindFramebuffer(y.FRAMEBUFFER,null),y.deleteFramebuffer(v.handle),v.handle=null,v.depth&&(v.depth.dispose(),v.depth=null),v._depth_rb&&(y.deleteRenderbuffer(v._depth_rb),v._depth_rb=null);for(var N=0;NP||y<0||y>P)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");v._shape[0]=u,v._shape[1]=y;for(var L=h(f),z=0;zL||y<0||y>L)throw new Error("gl-fbo: Parameters are too large for FBO");f=f||{};var z=1;if("color"in f){if(z=Math.max(f.color|0,0),z<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(z>1)if(P){if(z>v.getParameter(P.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+z+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var F=v.UNSIGNED_BYTE,O=v.getExtension("OES_texture_float");if(f.float&&z>0){if(!O)throw new Error("gl-fbo: Context does not support floating point textures");F=v.FLOAT}else f.preferFloat&&z>0&&O&&(F=v.FLOAT);var B=!0;"depth"in f&&(B=!!f.depth);var I=!1;return"stencil"in f&&(I=!!f.stencil),new M(v,u,y,F,z,B,I,P)}},2992:function(e,t,r){var o=r(3387).sprintf,i=r(5171),n=r(1848),a=r(1085);e.exports=s;function s(c,h,p){"use strict";var d=n(h)||"of unknown name (see npm glsl-shader-name)",T="unknown type";p!==void 0&&(T=p===i.FRAGMENT_SHADER?"fragment":"vertex");for(var l=o(`Error compiling %s shader %s: +`,T,d),_=o("%s%s",l,c),w=c.split(` +`),M={},E=0;E max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D dashTexture; +uniform float dashScale; +uniform float opacity; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], worldPosition) || + fragColor.a * opacity == 0. + ) discard; + + float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r; + if(dashWeight < 0.5) { + discard; + } + gl_FragColor = fragColor * opacity; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +#define FLOAT_MAX 1.70141184e38 +#define FLOAT_MIN 1.17549435e-38 + +// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl +vec4 packFloat(float v) { + float av = abs(v); + + //Handle special cases + if(av < FLOAT_MIN) { + return vec4(0.0, 0.0, 0.0, 0.0); + } else if(v > FLOAT_MAX) { + return vec4(127.0, 128.0, 0.0, 0.0) / 255.0; + } else if(v < -FLOAT_MAX) { + return vec4(255.0, 128.0, 0.0, 0.0) / 255.0; + } + + vec4 c = vec4(0,0,0,0); + + //Compute exponent and mantissa + float e = floor(log2(av)); + float m = av * pow(2.0, -e) - 1.0; + + //Unpack mantissa + c[1] = floor(128.0 * m); + m -= c[1] / 128.0; + c[2] = floor(32768.0 * m); + m -= c[2] / 32768.0; + c[3] = floor(8388608.0 * m); + + //Unpack exponent + float ebias = e + 127.0; + c[0] = floor(ebias / 2.0); + ebias -= c[0] * 2.0; + c[1] += floor(ebias) * 128.0; + + //Unpack sign bit + c[0] += 128.0 * step(0.0, -v); + + //Scale back to range + return c / 255.0; +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform float pickId; +uniform vec3 clipBounds[2]; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard; + + gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz); +}`]),c=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];t.createShader=function(h){return i(h,n,a,null,c)},t.createPickShader=function(h){return i(h,n,s,null,c)}},5714:function(e,t,r){"use strict";e.exports=v;var o=r(2762),i=r(8116),n=r(7766),a=new Uint8Array(4),s=new Float32Array(a.buffer);function c(u,y,f,P){return a[0]=P,a[1]=f,a[2]=y,a[3]=u,s[0]}var h=r(2478),p=r(9618),d=r(7319),T=d.createShader,l=d.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function w(u,y){for(var f=0,P=0;P<3;++P){var L=u[P]-y[P];f+=L*L}return Math.sqrt(f)}function M(u){for(var y=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],f=0;f<3;++f)y[0][f]=Math.max(u[0][f],y[0][f]),y[1][f]=Math.min(u[1][f],y[1][f]);return y}function E(u,y,f,P){this.arcLength=u,this.position=y,this.index=f,this.dataCoordinate=P}function m(u,y,f,P,L,z){this.gl=u,this.shader=y,this.pickShader=f,this.buffer=P,this.vao=L,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var b=m.prototype;b.isTransparent=function(){return this.hasAlpha},b.isOpaque=function(){return!this.hasAlpha},b.pickSlots=1,b.setPickBase=function(u){this.pickId=u},b.drawTransparent=b.draw=function(u){if(this.vertexCount){var y=this.gl,f=this.shader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,clipBounds:M(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.drawPick=function(u){if(this.vertexCount){var y=this.gl,f=this.pickShader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,pickId:this.pickId,clipBounds:M(this.clipBounds),screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.update=function(u){var y,f;this.dirty=!0;var P=!!u.connectGaps;"dashScale"in u&&(this.dashScale=u.dashScale),this.hasAlpha=!1,"opacity"in u&&(this.opacity=+u.opacity,this.opacity<1&&(this.hasAlpha=!0));var L=[],z=[],F=[],O=0,B=0,I=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],N=u.position||u.positions;if(N){var U=u.color||u.colors||[0,0,0,1],W=u.lineWidth||1,Q=!1;e:for(y=1;y0){for(var fe=0;fe<24;++fe)L.push(L[L.length-12]);B+=2,Q=!0}continue e}I[0][f]=Math.min(I[0][f],le[f],se[f]),I[1][f]=Math.max(I[1][f],le[f],se[f])}var G,J;Array.isArray(U[0])?(G=U.length>y-1?U[y-1]:U.length>0?U[U.length-1]:[0,0,0,1],J=U.length>y?U[y]:U.length>0?U[U.length-1]:[0,0,0,1]):G=J=U,G.length===3&&(G=[G[0],G[1],G[2],1]),J.length===3&&(J=[J[0],J[1],J[2],1]),!this.hasAlpha&&G[3]<1&&(this.hasAlpha=!0);var $;Array.isArray(W)?$=W.length>y-1?W[y-1]:W.length>0?W[W.length-1]:[0,0,0,1]:$=W;var X=O;if(O+=w(le,se),Q){for(f=0;f<2;++f)L.push(le[0],le[1],le[2],se[0],se[1],se[2],X,$,G[0],G[1],G[2],G[3]);B+=2,Q=!1}L.push(le[0],le[1],le[2],se[0],se[1],se[2],X,$,G[0],G[1],G[2],G[3],le[0],le[1],le[2],se[0],se[1],se[2],X,-$,G[0],G[1],G[2],G[3],se[0],se[1],se[2],le[0],le[1],le[2],O,-$,J[0],J[1],J[2],J[3],se[0],se[1],se[2],le[0],le[1],le[2],O,$,J[0],J[1],J[2],J[3]),B+=4}}if(this.buffer.update(L),z.push(O),F.push(N[N.length-1].slice()),this.bounds=I,this.vertexCount=B,this.points=F,this.arcLength=z,"dashes"in u){var re=u.dashes,ae=re.slice();for(ae.unshift(0),y=1;y1.0001)return null;f+=y[E]}return Math.abs(f-1)>.001?null:[m,c(p,y),y]}},840:function(e,t,r){var o=r(3236),i=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, normal; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model + , view + , projection + , inverseModel; +uniform vec3 eyePosition + , lightPosition; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +vec4 project(vec3 p) { + return projection * (view * (model * vec4(p, 1.0))); +} + +void main() { + gl_Position = project(position); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * vec4(position , 1.0); + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + f_color = color; + f_data = position; + f_uv = uv; +} +`]),n=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness + , fresnel + , kambient + , kdiffuse + , kspecular; +uniform sampler2D texture; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (f_color.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], f_data) + ) discard; + + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d + + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * f_color.a; +} +`]),a=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model, view, projection; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_color = color; + f_data = position; + f_uv = uv; +}`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard; + + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),c=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; +attribute float pointSize; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + } + gl_PointSize = pointSize; + f_color = color; + f_uv = uv; +}`]),h=o([`precision highp float; +#define GLSLIFY 1 + +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5); + if(dot(pointR, pointR) > 0.25) { + discard; + } + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),p=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 id; + +uniform mat4 model, view, projection; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_id = id; + f_position = position; +}`]),d=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]),T=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute float pointSize; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0, 0.0, 0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + gl_PointSize = pointSize; + } + f_id = id; + f_position = position; +}`]),l=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; + +uniform mat4 model, view, projection; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); +}`]),_=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec3 contourColor; + +void main() { + gl_FragColor = vec4(contourColor, 1.0); +} +`]);t.meshShader={vertex:i,fragment:n,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:c,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:p,fragment:d,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:T,fragment:d,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:l,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(e,t,r){"use strict";var o=1e-6,i=1e-6,n=r(9405),a=r(2762),s=r(8116),c=r(7766),h=r(8406),p=r(6760),d=r(7608),T=r(9618),l=r(6729),_=r(7765),w=r(1888),M=r(840),E=r(7626),m=M.meshShader,b=M.wireShader,v=M.pointShader,u=M.pickShader,y=M.pointPickShader,f=M.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function L(fe,G,J,$,X,re,ae,j,ee,ne,ce,_e,we,Oe,Ie,Xe,tt,rt,Je,ot,Me,pe,ue,ze,Qe,it,$e){this.gl=fe,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=G,this.dirty=!0,this.triShader=J,this.lineShader=$,this.pointShader=X,this.pickShader=re,this.pointPickShader=ae,this.contourShader=j,this.trianglePositions=ee,this.triangleColors=ce,this.triangleNormals=we,this.triangleUVs=_e,this.triangleIds=ne,this.triangleVAO=Oe,this.triangleCount=0,this.lineWidth=1,this.edgePositions=Ie,this.edgeColors=tt,this.edgeUVs=rt,this.edgeIds=Xe,this.edgeVAO=Je,this.edgeCount=0,this.pointPositions=ot,this.pointColors=pe,this.pointUVs=ue,this.pointSizes=ze,this.pointIds=Me,this.pointVAO=Qe,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=it,this.contourVAO=$e,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=L.prototype;z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(fe){this.pickId=fe};function F(fe,G){if(!G||!G.length)return 1;for(var J=0;Jfe&&J>0){var $=(G[J][0]-fe)/(G[J][0]-G[J-1][0]);return G[J][1]*(1-$)+$*G[J-1][1]}}return 1}function O(fe,G){for(var J=l({colormap:fe,nshades:256,format:"rgba"}),$=new Uint8Array(256*4),X=0;X<256;++X){for(var re=J[X],ae=0;ae<3;++ae)$[4*X+ae]=re[ae];G?$[4*X+3]=255*F(X/255,G):$[4*X+3]=255*re[3]}return T($,[256,256,4],[4,0,1])}function B(fe){for(var G=fe.length,J=new Array(G),$=0;$0){var we=this.triShader;we.bind(),we.uniforms=j,this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var we=this.lineShader;we.bind(),we.uniforms=j,this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var we=this.pointShader;we.bind(),we.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var we=this.contourShader;we.bind(),we.uniforms=j,this.contourVAO.bind(),G.drawArrays(G.LINES,0,this.contourCount),this.contourVAO.unbind()}},z.drawPick=function(fe){fe=fe||{};for(var G=this.gl,J=fe.model||P,$=fe.view||P,X=fe.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ae=0;ae<3;++ae)re[0][ae]=Math.max(re[0][ae],this.clipBounds[0][ae]),re[1][ae]=Math.min(re[1][ae],this.clipBounds[1][ae]);this._model=[].slice.call(J),this._view=[].slice.call($),this._projection=[].slice.call(X),this._resolution=[G.drawingBufferWidth,G.drawingBufferHeight];var j={model:J,view:$,projection:X,clipBounds:re,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=j,this.triangleCount>0&&(this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}},z.pick=function(fe){if(!fe||fe.id!==this.pickId)return null;for(var G=fe.value[0]+256*fe.value[1]+65536*fe.value[2],J=this.cells[G],$=this.positions,X=new Array(J.length),re=0;reMath.abs(u))l.rotate(P,0,0,-v*y*Math.PI*m.rotateSpeed/window.innerWidth);else if(!m._ortho){var L=-m.zoomSpeed*f*u/window.innerHeight*(P-l.lastT())/20;l.pan(P,0,0,w*(Math.exp(L)-1))}}},!0)},m.enableMouseListeners(),m}},799:function(e,t,r){var o=r(3236),i=r(9405),n=o([`precision mediump float; +#define GLSLIFY 1 +attribute vec2 position; +varying vec2 uv; +void main() { + uv = position; + gl_Position = vec4(position, 0, 1); +}`]),a=o([`precision mediump float; +#define GLSLIFY 1 + +uniform sampler2D accumBuffer; +varying vec2 uv; + +void main() { + vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0)); + gl_FragColor = min(vec4(1,1,1,1), accum); +}`]);e.exports=function(s){return i(s,n,a,null,[{name:"position",type:"vec2"}])}},4100:function(e,t,r){"use strict";var o=r(4437),i=r(3837),n=r(5445),a=r(4449),s=r(3589),c=r(2260),h=r(7169),p=r(351),d=r(4772),T=r(4040),l=r(799),_=r(9216)({tablet:!0,featureDetect:!0});e.exports={createScene:b,createCamera:o};function w(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function M(u,y){var f=null;try{f=u.getContext("webgl",y),f||(f=u.getContext("experimental-webgl",y))}catch{return null}return f}function E(u){var y=Math.round(Math.log(Math.abs(u))/Math.log(10));if(y<0){var f=Math.round(Math.pow(10,-y));return Math.ceil(u*f)/f}else if(y>0){var f=Math.round(Math.pow(10,y));return Math.ceil(u/f)*f}return Math.ceil(u)}function m(u){return typeof u=="boolean"?u:!0}function b(u){u=u||{},u.camera=u.camera||{};var y=u.canvas;if(!y)if(y=document.createElement("canvas"),u.container){var f=u.container;f.appendChild(y)}else document.body.appendChild(y);var P=u.gl;if(P||(u.glOptions&&(_=!!u.glOptions.preserveDrawingBuffer),P=M(y,u.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!P)throw new Error("webgl not supported");var L=u.bounds||[[-10,-10,-10],[10,10,10]],z=new w,F=c(P,P.drawingBufferWidth,P.drawingBufferHeight,{preferFloat:!_}),O=l(P),B=u.cameraObject&&u.cameraObject._ortho===!0||u.camera.projection&&u.camera.projection.type==="orthographic"||!1,I={eye:u.camera.eye||[2,0,0],center:u.camera.center||[0,0,0],up:u.camera.up||[0,1,0],zoomMin:u.camera.zoomMax||.1,zoomMax:u.camera.zoomMin||100,mode:u.camera.mode||"turntable",_ortho:B},N=u.axes||{},U=i(P,N);U.enable=!N.disable;var W=u.spikes||{},Q=a(P,W),le=[],se=[],fe=[],G=[],J=!0,ae=!0,$=new Array(16),X=new Array(16),re={view:null,projection:$,model:X,_ortho:!1},ae=!0,j=[P.drawingBufferWidth,P.drawingBufferHeight],ee=u.cameraObject||o(y,I),ne={gl:P,contextLost:!1,pixelRatio:u.pixelRatio||1,canvas:y,selection:z,camera:ee,axes:U,axesPixels:null,spikes:Q,bounds:L,objects:le,shape:j,aspect:u.aspectRatio||[1,1,1],pickRadius:u.pickRadius||10,zNear:u.zNear||.01,zFar:u.zFar||1e3,fovy:u.fovy||Math.PI/4,clearColor:u.clearColor||[0,0,0,0],autoResize:m(u.autoResize),autoBounds:m(u.autoBounds),autoScale:!!u.autoScale,autoCenter:m(u.autoCenter),clipToBounds:m(u.clipToBounds),snapToData:!!u.snapToData,onselect:u.onselect||null,onrender:u.onrender||null,onclick:u.onclick||null,cameraParams:re,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(ot){this.aspect[0]=ot.x,this.aspect[1]=ot.y,this.aspect[2]=ot.z,ae=!0},setBounds:function(ot,Me){this.bounds[0][ot]=Me.min,this.bounds[1][ot]=Me.max},setClearColor:function(ot){this.clearColor=ot},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},ce=[P.drawingBufferWidth/ne.pixelRatio|0,P.drawingBufferHeight/ne.pixelRatio|0];function _e(){if(!ne._stopped&&ne.autoResize){var ot=y.parentNode,Me=1,pe=1;ot&&ot!==document.body?(Me=ot.clientWidth,pe=ot.clientHeight):(Me=window.innerWidth,pe=window.innerHeight);var ue=Math.ceil(Me*ne.pixelRatio)|0,ze=Math.ceil(pe*ne.pixelRatio)|0;if(ue!==y.width||ze!==y.height){y.width=ue,y.height=ze;var Qe=y.style;Qe.position=Qe.position||"absolute",Qe.left="0px",Qe.top="0px",Qe.width=Me+"px",Qe.height=pe+"px",J=!0}}}ne.autoResize&&_e(),window.addEventListener("resize",_e);function we(){for(var ot=le.length,Me=G.length,pe=0;pe0&&fe[Me-1]===0;)fe.pop(),G.pop().dispose()}ne.update=function(ot){ne._stopped||(ot=ot||{},J=!0,ae=!0)},ne.add=function(ot){ne._stopped||(ot.axes=U,le.push(ot),se.push(-1),J=!0,ae=!0,we())},ne.remove=function(ot){if(!ne._stopped){var Me=le.indexOf(ot);Me<0||(le.splice(Me,1),se.pop(),J=!0,ae=!0,we())}},ne.dispose=function(){if(!ne._stopped&&(ne._stopped=!0,window.removeEventListener("resize",_e),y.removeEventListener("webglcontextlost",Oe),ne.mouseListener.enabled=!1,!ne.contextLost)){U.dispose(),Q.dispose();for(var ot=0;otz.distance)continue;for(var Mt=0;Mt1e-6?(_=Math.acos(w),M=Math.sin(_),E=Math.sin((1-n)*_)/M,m=Math.sin(n*_)/M):(E=1-n,m=n),r[0]=E*a+m*p,r[1]=E*s+m*d,r[2]=E*c+m*T,r[3]=E*h+m*l,r}},5964:function(e){"use strict";e.exports=function(t){return!t&&t!==0?"":t.toString()}},9366:function(e,t,r){"use strict";var o=r(4359);e.exports=n;var i={};function n(a,s,c){var h=[s.style,s.weight,s.variant,s.family].join("_"),p=i[h];if(p||(p=i[h]={}),a in p)return p[a];var d={textAlign:"center",textBaseline:"middle",lineHeight:1,font:s.family,fontStyle:s.style,fontWeight:s.weight,fontVariant:s.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};d.triangles=!0;var T=o(a,d);d.triangles=!1;var l=o(a,d),_,w;if(c&&c!==1){for(_=0;_ max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform vec4 highlightId; +uniform float highlightScale; +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = 1.0; + if(distance(highlightId, id) < 0.0001) { + scale = highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1); + vec4 viewPosition = view * worldPosition; + viewPosition = viewPosition / viewPosition.w; + vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0)); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),a=i([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float highlightScale, pixelRatio; +uniform vec4 highlightId; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = pixelRatio; + if(distance(highlightId.bgr, id.bgr) < 0.001) { + scale *= highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1.0); + vec4 viewPosition = view * worldPosition; + vec4 clipPosition = projection * viewPosition; + clipPosition /= clipPosition.w; + + gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0); + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),s=i([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform float highlightScale; +uniform vec4 highlightId; +uniform vec3 axes[2]; +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float scale, pixelRatio; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float lscale = pixelRatio * scale; + if(distance(highlightId, id) < 0.0001) { + lscale *= highlightScale; + } + + vec4 clipCenter = projection * (view * (model * vec4(position, 1))); + vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y; + vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1))); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = dataPosition; + } +} +`]),c=i([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float opacity; + +varying vec4 interpColor; +varying vec3 dataCoordinate; + +void main() { + if ( + outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) || + interpColor.a * opacity == 0. + ) discard; + gl_FragColor = interpColor * opacity; +} +`]),h=i([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float pickGroup; + +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard; + + gl_FragColor = vec4(pickGroup, pickId.bgr); +}`]),p=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],d={vertex:n,fragment:c,attributes:p},T={vertex:a,fragment:c,attributes:p},l={vertex:s,fragment:c,attributes:p},_={vertex:n,fragment:h,attributes:p},w={vertex:a,fragment:h,attributes:p},M={vertex:s,fragment:h,attributes:p};function E(m,b){var v=o(m,b),u=v.attributes;return u.position.location=0,u.color.location=1,u.glyph.location=2,u.id.location=3,v}t.createPerspective=function(m){return E(m,d)},t.createOrtho=function(m){return E(m,T)},t.createProject=function(m){return E(m,l)},t.createPickPerspective=function(m){return E(m,_)},t.createPickOrtho=function(m){return E(m,w)},t.createPickProject=function(m){return E(m,M)}},8418:function(e,t,r){"use strict";var o=r(5219),i=r(2762),n=r(8116),a=r(1888),s=r(6760),c=r(1283),h=r(9366),p=r(5964),d=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,l=DataView;function _(X){return T.isView(X)&&!(X instanceof l)}function w(X){return Array.isArray(X)||_(X)}e.exports=$;function M(X,re){var ae=X[0],j=X[1],ee=X[2],ne=X[3];return X[0]=re[0]*ae+re[4]*j+re[8]*ee+re[12]*ne,X[1]=re[1]*ae+re[5]*j+re[9]*ee+re[13]*ne,X[2]=re[2]*ae+re[6]*j+re[10]*ee+re[14]*ne,X[3]=re[3]*ae+re[7]*j+re[11]*ee+re[15]*ne,X}function E(X,re,ae,j){return M(j,j,ae),M(j,j,re),M(j,j,X)}function m(X,re){this.index=X,this.dataCoordinate=this.position=re}function b(X){return X===!0||X>1?1:X}function v(X,re,ae,j,ee,ne,ce,_e,we,Oe,Ie,Xe){this.gl=X,this.pixelRatio=1,this.shader=re,this.orthoShader=ae,this.projectShader=j,this.pointBuffer=ee,this.colorBuffer=ne,this.glyphBuffer=ce,this.idBuffer=_e,this.vao=we,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Oe,this.pickOrthoShader=Ie,this.pickProjectShader=Xe,this.points=[],this._selectResult=new m(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var u=v.prototype;u.pickSlots=1,u.setPickBase=function(X){this.pickId=X},u.isTransparent=function(){if(this.hasAlpha)return!0;for(var X=0;X<3;++X)if(this.axesProject[X]&&this.projectHasAlpha)return!0;return!1},u.isOpaque=function(){if(!this.hasAlpha)return!0;for(var X=0;X<3;++X)if(this.axesProject[X]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0,1],z=[0,0,0,1],F=d.slice(),O=[0,0,0],B=[[0,0,0],[0,0,0]];function I(X){return X[0]=X[1]=X[2]=0,X}function N(X,re){return X[0]=re[0],X[1]=re[1],X[2]=re[2],X[3]=1,X}function U(X,re,ae,j){return X[0]=re[0],X[1]=re[1],X[2]=re[2],X[ae]=j,X}function W(X){for(var re=B,ae=0;ae<2;++ae)for(var j=0;j<3;++j)re[ae][j]=Math.max(Math.min(X[ae][j],1e8),-1e8);return re}function Q(X,re,ae,j){var ee=re.axesProject,ne=re.gl,ce=X.uniforms,_e=ae.model||d,we=ae.view||d,Oe=ae.projection||d,Ie=re.axesBounds,Xe=W(re.clipBounds),tt;re.axes&&re.axes.lastCubeProps?tt=re.axes.lastCubeProps.axis:tt=[1,1,1],y[0]=2/ne.drawingBufferWidth,y[1]=2/ne.drawingBufferHeight,X.bind(),ce.view=we,ce.projection=Oe,ce.screenSize=y,ce.highlightId=re.highlightId,ce.highlightScale=re.highlightScale,ce.clipBounds=Xe,ce.pickGroup=re.pickId/255,ce.pixelRatio=j;for(var rt=0;rt<3;++rt)if(ee[rt]){ce.scale=re.projectScale[rt],ce.opacity=re.projectOpacity[rt];for(var Je=F,ot=0;ot<16;++ot)Je[ot]=0;for(var ot=0;ot<4;++ot)Je[5*ot]=1;Je[5*rt]=0,tt[rt]<0?Je[12+rt]=Ie[0][rt]:Je[12+rt]=Ie[1][rt],s(Je,_e,Je),ce.model=Je;var Me=(rt+1)%3,pe=(rt+2)%3,ue=I(f),ze=I(P);ue[Me]=1,ze[pe]=1;var Qe=E(Oe,we,_e,N(L,ue)),it=E(Oe,we,_e,N(z,ze));if(Math.abs(Qe[1])>Math.abs(it[1])){var $e=Qe;Qe=it,it=$e,$e=ue,ue=ze,ze=$e;var kt=Me;Me=pe,pe=kt}Qe[0]<0&&(ue[Me]=-1),it[1]>0&&(ze[pe]=-1);for(var Mt=0,Bt=0,ot=0;ot<4;++ot)Mt+=Math.pow(_e[4*Me+ot],2),Bt+=Math.pow(_e[4*pe+ot],2);ue[Me]/=Math.sqrt(Mt),ze[pe]/=Math.sqrt(Bt),ce.axes[0]=ue,ce.axes[1]=ze,ce.fragClipBounds[0]=U(O,Xe[0],rt,-1e8),ce.fragClipBounds[1]=U(O,Xe[1],rt,1e8),re.vao.bind(),re.vao.draw(ne.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ne.lineWidth(re.lineWidth*j),re.vao.draw(ne.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}var le=[-1e8,-1e8,-1e8],se=[1e8,1e8,1e8],fe=[le,se];function G(X,re,ae,j,ee,ne,ce){var _e=ae.gl;if((ne===ae.projectHasAlpha||ce)&&Q(re,ae,j,ee),ne===ae.hasAlpha||ce){X.bind();var we=X.uniforms;we.model=j.model||d,we.view=j.view||d,we.projection=j.projection||d,y[0]=2/_e.drawingBufferWidth,y[1]=2/_e.drawingBufferHeight,we.screenSize=y,we.highlightId=ae.highlightId,we.highlightScale=ae.highlightScale,we.fragClipBounds=fe,we.clipBounds=ae.axes.bounds,we.opacity=ae.opacity,we.pickGroup=ae.pickId/255,we.pixelRatio=ee,ae.vao.bind(),ae.vao.draw(_e.TRIANGLES,ae.vertexCount),ae.lineWidth>0&&(_e.lineWidth(ae.lineWidth*ee),ae.vao.draw(_e.LINES,ae.lineVertexCount,ae.vertexCount)),ae.vao.unbind()}}u.draw=function(X){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,X,this.pixelRatio,!1,!1)},u.drawTransparent=function(X){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,X,this.pixelRatio,!0,!1)},u.drawPick=function(X){var re=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;G(re,this.pickProjectShader,this,X,1,!0,!0)},u.pick=function(X){if(!X||X.id!==this.pickId)return null;var re=X.value[2]+(X.value[1]<<8)+(X.value[0]<<16);if(re>=this.pointCount||re<0)return null;var ae=this.points[re],j=this._selectResult;j.index=re;for(var ee=0;ee<3;++ee)j.position[ee]=j.dataCoordinate[ee]=ae[ee];return j},u.highlight=function(X){if(!X)this.highlightId=[1,1,1,1];else{var re=X.index,ae=re&255,j=re>>8&255,ee=re>>16&255;this.highlightId=[ae/255,j/255,ee/255,0]}};function J(X,re,ae,j){var ee;w(X)?re0){var xr=0,mt=pe,Fe=[0,0,0,1],Ze=[0,0,0,1],Ne=w(tt)&&w(tt[0]),Se=w(ot)&&w(ot[0]);e:for(var j=0;j0?1-Bt[0][0]:yt<0?1+Bt[1][0]:1,Pt*=Pt>0?1-Bt[0][1]:Pt<0?1+Bt[1][1]:1;for(var Ot=[yt,Pt],Pi=kt.cells||[],Bi=kt.positions||[],it=0;itthis.buffer.length){i.free(this.buffer);for(var w=this.buffer=i.mallocUint8(a(_*l*4)),M=0;M<_*l*4;++M)w[M]=255}return T}}}),p.begin=function(){var T=this.gl,l=this.shape;T&&(this.fbo.bind(),T.clearColor(1,1,1,1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT))},p.end=function(){var T=this.gl;T&&(T.bindFramebuffer(T.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},p.query=function(T,l,_){if(!this.gl)return null;var w=this.fbo.shape.slice();T=T|0,l=l|0,typeof _!="number"&&(_=1);var M=Math.min(Math.max(T-_,0),w[0])|0,E=Math.min(Math.max(T+_,0),w[0])|0,m=Math.min(Math.max(l-_,0),w[1])|0,b=Math.min(Math.max(l+_,0),w[1])|0;if(E<=M||b<=m)return null;var v=[E-M,b-m],u=n(this.buffer,[v[0],v[1],4],[4,w[0]*4,1],4*(M+w[0]*m)),y=s(u.hi(v[0],v[1],1),_,_),f=y[0],P=y[1];if(f<0||Math.pow(this.radius,2)w)for(l=w;l<_;l++)this.gl.enableVertexAttribArray(l);else if(w>_)for(l=_;l=0){for(var B=O.type.charAt(O.type.length-1)|0,I=new Array(B),N=0;N=0;)U+=1;z[F]=U}var W=new Array(w.length);function Q(){m.program=a.program(b,m._vref,m._fref,L,z);for(var le=0;le=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);s(p,d,v[0],l,u,_,m)}else if(b.indexOf("mat")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);c(p,d,v,l,u,_,m)}else throw new o("","Unknown data type for attribute "+m+": "+b);break}}return _}},3327:function(e,t,r){"use strict";var o=r(216),i=r(8866);e.exports=s;function n(c){return function(){return c}}function a(c,h){for(var p=new Array(c),d=0;d4)throw new i("","Invalid data type");switch(U.charAt(0)){case"b":case"i":c["uniform"+W+"iv"](d[z],F);break;case"v":c["uniform"+W+"fv"](d[z],F);break;default:throw new i("","Unrecognized data type for vector "+name+": "+U)}}else if(U.indexOf("mat")===0&&U.length===4){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+U);c["uniformMatrix"+W+"fv"](d[z],!1,F);break}else throw new i("","Unknown uniform data type for "+name+": "+U)}}}}}function _(b,v){if(typeof v!="object")return[[b,v]];var u=[];for(var y in v){var f=v[y],P=b;parseInt(y)+""===y?P+="["+y+"]":P+="."+y,typeof f=="object"?u.push.apply(u,_(P,f)):u.push([P,f])}return u}function w(b){switch(b){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var v=b.indexOf("vec");if(0<=v&&v<=1&&b.length===4+v){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new i("","Invalid data type");return b.charAt(0)==="b"?a(u,!1):a(u,0)}else if(b.indexOf("mat")===0&&b.length===4){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+b);return a(u*u,0)}else throw new i("","Unknown uniform data type for "+name+": "+b)}}function M(b,v,u){if(typeof u=="object"){var y=E(u);Object.defineProperty(b,v,{get:n(y),set:l(u),enumerable:!0,configurable:!1})}else d[u]?Object.defineProperty(b,v,{get:T(u),set:l(u),enumerable:!0,configurable:!1}):b[v]=w(p[u].type)}function E(b){var v;if(Array.isArray(b)){v=new Array(b.length);for(var u=0;u1){p[0]in c||(c[p[0]]=[]),c=c[p[0]];for(var d=1;d1)for(var _=0;_"u"?r(606):WeakMap,a=new n,s=0;function c(M,E,m,b,v,u,y){this.id=M,this.src=E,this.type=m,this.shader=b,this.count=u,this.programs=[],this.cache=y}c.prototype.dispose=function(){if(--this.count===0){for(var M=this.cache,E=M.gl,m=this.programs,b=0,v=m.length;b 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, tubeScale; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * tubePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(tubePosition, 1.0); + vec4 t_position = view * tubePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = tubePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),n=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),a=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float tubeScale; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + gl_Position = projection * (view * tubePosition); + f_id = id; + f_position = position.xyz; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);t.meshShader={vertex:i,fragment:n,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(e,t,r){"use strict";var o=r(2931),i=r(9970),n=["xyz","xzy","yxz","yzx","zxy","zyx"],a=function(M,E,m,b){for(var v=M.points,u=M.velocities,y=M.divergences,f=[],P=[],L=[],z=[],F=[],O=[],B=0,I=0,N=i.create(),U=i.create(),W=8,Q=0;Q0)for(var G=0;GE)return b-1}return b},h=function(M,E,m){return Mm?m:M},p=function(M,E,m){var b=E.vectors,v=E.meshgrid,u=M[0],y=M[1],f=M[2],P=v[0].length,L=v[1].length,z=v[2].length,F=c(v[0],u),O=c(v[1],y),B=c(v[2],f),I=F+1,N=O+1,U=B+1;if(F=h(F,0,P-1),I=h(I,0,P-1),O=h(O,0,L-1),N=h(N,0,L-1),B=h(B,0,z-1),U=h(U,0,z-1),F<0||O<0||B<0||I>P-1||N>L-1||U>z-1)return o.create();var W=v[0][F],Q=v[0][I],le=v[1][O],se=v[1][N],fe=v[2][B],G=v[2][U],J=(u-W)/(Q-W),$=(y-le)/(se-le),X=(f-fe)/(G-fe);isFinite(J)||(J=.5),isFinite($)||($=.5),isFinite(X)||(X=.5);var re,ae,j,ee,ne,ce;switch(m.reversedX&&(F=P-1-F,I=P-1-I),m.reversedY&&(O=L-1-O,N=L-1-N),m.reversedZ&&(B=z-1-B,U=z-1-U),m.filled){case 5:ne=B,ce=U,j=O*z,ee=N*z,re=F*z*L,ae=I*z*L;break;case 4:ne=B,ce=U,re=F*z,ae=I*z,j=O*z*P,ee=N*z*P;break;case 3:j=O,ee=N,ne=B*L,ce=U*L,re=F*L*z,ae=I*L*z;break;case 2:j=O,ee=N,re=F*L,ae=I*L,ne=B*L*P,ce=U*L*P;break;case 1:re=F,ae=I,ne=B*P,ce=U*P,j=O*P*z,ee=N*P*z;break;default:re=F,ae=I,j=O*P,ee=N*P,ne=B*P*L,ce=U*P*L;break}var _e=b[re+j+ne],we=b[re+j+ce],Oe=b[re+ee+ne],Ie=b[re+ee+ce],Xe=b[ae+j+ne],tt=b[ae+j+ce],rt=b[ae+ee+ne],Je=b[ae+ee+ce],ot=o.create(),Me=o.create(),pe=o.create(),ue=o.create();o.lerp(ot,_e,Xe,J),o.lerp(Me,we,tt,J),o.lerp(pe,Oe,rt,J),o.lerp(ue,Ie,Je,J);var ze=o.create(),Qe=o.create();o.lerp(ze,ot,pe,$),o.lerp(Qe,Me,ue,$);var it=o.create();return o.lerp(it,ze,Qe,X),it},d=function(M,E){var m=E[0],b=E[1],v=E[2];return M[0]=m<0?-m:m,M[1]=b<0?-b:b,M[2]=v<0?-v:v,M},T=function(M){var E=1/0;M.sort(function(u,y){return u-y});for(var m=M.length,b=1;bI||JeN||otU)},Q=o.distance(E[0],E[1]),le=10*Q/b,se=le*le,fe=1,G=0,J=m.length;J>1&&(fe=l(m));for(var $=0;$G&&(G=_e),ne.push(_e),z.push({points:re,velocities:ae,divergences:ne});for(var we=0;wese&&o.scale(Oe,Oe,le/Math.sqrt(Ie)),o.add(Oe,Oe,X),j=P(Oe),o.squaredDistance(ee,Oe)-se>-1e-4*se){re.push(Oe),ee=Oe,ae.push(j);var ce=L(Oe,j),_e=o.length(ce);isFinite(_e)&&_e>G&&(G=_e),ne.push(_e)}X=Oe}}var Xe=s(z,M.colormap,G,fe);return u?Xe.tubeScale=u:(G===0&&(G=1),Xe.tubeScale=v*.5*fe/G),Xe};var _=r(6740),w=r(6405).createMesh;e.exports.createTubeMesh=function(M,E){return w(M,E,{shaders:_,traceType:"streamtube"})}},990:function(e,t,r){var o=r(9405),i=r(3236),n=i([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute vec3 f; +attribute vec3 normal; + +uniform vec3 objectOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 lightPosition, eyePosition; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 localCoordinate = vec3(uv.zw, f.x); + worldCoordinate = objectOffset + localCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0); + vec4 clipPosition = projection * (view * worldPosition); + gl_Position = clipPosition; + kill = f.y; + value = f.z; + planeCoordinate = uv.xy; + + vColor = texture2D(colormap, vec2(value, value)); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * worldPosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + lightDirection = lightPosition - cameraCoordinate.xyz; + eyeDirection = eyePosition - cameraCoordinate.xyz; + surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz); +} +`]),a=i([`precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float beckmannSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness) { + return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 lowerBound, upperBound; +uniform float contourTint; +uniform vec4 contourColor; +uniform sampler2D colormap; +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform float vertexColor; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + if ( + kill > 0.0 || + vColor.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], worldCoordinate) + ) discard; + + vec3 N = normalize(surfaceNormal); + vec3 V = normalize(eyeDirection); + vec3 L = normalize(lightDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = max(beckmannSpecular(L, V, N, roughness), 0.); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + //decide how to interpolate color \u2014 in vertex or in fragment + vec4 surfaceColor = + step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) + + step(.5, vertexColor) * vColor; + + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = mix(litColor, contourColor, contourTint) * opacity; +} +`]),s=i([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute float f; + +uniform vec3 objectOffset; +uniform mat3 permutation; +uniform mat4 model, view, projection; +uniform float height, zOffset; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 dataCoordinate = permutation * vec3(uv.xy, height); + worldCoordinate = objectOffset + dataCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0); + + vec4 clipPosition = projection * (view * worldPosition); + clipPosition.z += zOffset; + + gl_Position = clipPosition; + value = f + objectOffset.z; + kill = -1.0; + planeCoordinate = uv.zw; + + vColor = texture2D(colormap, vec2(value, value)); + + //Don't do lighting for contours + surfaceNormal = vec3(1,0,0); + eyeDirection = vec3(0,1,0); + lightDirection = vec3(0,0,1); +} +`]),c=i([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec2 shape; +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 surfaceNormal; + +vec2 splitFloat(float v) { + float vh = 255.0 * v; + float upper = floor(vh); + float lower = fract(vh); + return vec2(upper / 255.0, floor(lower * 16.0) / 16.0); +} + +void main() { + if ((kill > 0.0) || + (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard; + + vec2 ux = splitFloat(planeCoordinate.x / shape.x); + vec2 uy = splitFloat(planeCoordinate.y / shape.y); + gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0)); +} +`]);t.createShader=function(h){var p=o(h,n,a,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return p.attributes.uv.location=0,p.attributes.f.location=1,p.attributes.normal.location=2,p},t.createPickShader=function(h){var p=o(h,n,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return p.attributes.uv.location=0,p.attributes.f.location=1,p.attributes.normal.location=2,p},t.createContourShader=function(h){var p=o(h,s,a,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return p.attributes.uv.location=0,p.attributes.f.location=1,p},t.createPickContourShader=function(h){var p=o(h,s,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return p.attributes.uv.location=0,p.attributes.f.location=1,p}},9499:function(e,t,r){"use strict";e.exports=re;var o=r(8828),i=r(2762),n=r(8116),a=r(7766),s=r(1888),c=r(6729),h=r(5298),p=r(9994),d=r(9618),T=r(3711),l=r(6760),_=r(7608),w=r(2478),M=r(6199),E=r(990),m=E.createShader,b=E.createContourShader,v=E.createPickShader,u=E.createPickContourShader,y=4*10,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],L=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];(function(){for(var ae=0;ae<3;++ae){var j=L[ae],ee=(ae+1)%3,ne=(ae+2)%3;j[ee+0]=1,j[ne+3]=1,j[ae+6]=1}})();function z(ae,j,ee,ne,ce){this.position=ae,this.index=j,this.uv=ee,this.level=ne,this.dataCoordinate=ce}var F=256;function O(ae,j,ee,ne,ce,_e,we,Oe,Ie,Xe,tt,rt,Je,ot,Me){this.gl=ae,this.shape=j,this.bounds=ee,this.objectOffset=Me,this.intensityBounds=[],this._shader=ne,this._pickShader=ce,this._coordinateBuffer=_e,this._vao=we,this._colorMap=Oe,this._contourShader=Ie,this._contourPickShader=Xe,this._contourBuffer=tt,this._contourVAO=rt,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new z([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=Je,this._dynamicVAO=ot,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[d(s.mallocFloat(1024),[0,0]),d(s.mallocFloat(1024),[0,0]),d(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var B=O.prototype;B.genColormap=function(ae,j){var ee=!1,ne=p([c({colormap:ae,nshades:F,format:"rgba"}).map(function(ce,_e){var we=j?I(_e/255,j):ce[3];return we<1&&(ee=!0),[ce[0],ce[1],ce[2],255*we]})]);return h.divseq(ne,255),this.hasAlphaScale=ee,ne},B.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},B.isOpaque=function(){return!this.isTransparent()},B.pickSlots=1,B.setPickBase=function(ae){this.pickId=ae};function I(ae,j){if(!j||!j.length)return 1;for(var ee=0;eeae&&ee>0){var ne=(j[ee][0]-ae)/(j[ee][0]-j[ee-1][0]);return j[ee][1]*(1-ne)+ne*j[ee-1][1]}}return 1}var N=[0,0,0],U={showSurface:!1,showContour:!1,projections:[f.slice(),f.slice(),f.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function W(ae,j){var ee,ne,ce,_e=j.axes&&j.axes.lastCubeProps.axis||N,we=j.showSurface,Oe=j.showContour;for(ee=0;ee<3;++ee)for(we=we||j.surfaceProject[ee],ne=0;ne<3;++ne)Oe=Oe||j.contourProject[ee][ne];for(ee=0;ee<3;++ee){var Ie=U.projections[ee];for(ne=0;ne<16;++ne)Ie[ne]=0;for(ne=0;ne<4;++ne)Ie[5*ne]=1;Ie[5*ee]=0,Ie[12+ee]=j.axesBounds[+(_e[ee]>0)][ee],l(Ie,ae.model,Ie);var Xe=U.clipBounds[ee];for(ce=0;ce<2;++ce)for(ne=0;ne<3;++ne)Xe[ce][ne]=ae.clipBounds[ce][ne];Xe[0][ee]=-1e8,Xe[1][ee]=1e8}return U.showSurface=we,U.showContour=Oe,U}var Q={model:f,view:f,projection:f,inverseModel:f.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},le=f.slice(),se=[1,0,0,0,1,0,0,0,1];function fe(ae,j){ae=ae||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var ne=Q;ne.model=ae.model||f,ne.view=ae.view||f,ne.projection=ae.projection||f,ne.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ne.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ne.objectOffset=this.objectOffset,ne.contourColor=this.contourColor[0],ne.inverseModel=_(ne.inverseModel,ne.model);for(var ce=0;ce<2;++ce)for(var _e=ne.clipBounds[ce],we=0;we<3;++we)_e[we]=Math.min(Math.max(this.clipBounds[ce][we],-1e8),1e8);ne.kambient=this.ambientLight,ne.kdiffuse=this.diffuseLight,ne.kspecular=this.specularLight,ne.roughness=this.roughness,ne.fresnel=this.fresnel,ne.opacity=this.opacity,ne.height=0,ne.permutation=se,ne.vertexColor=this.vertexColor;var Oe=le;for(l(Oe,ne.view,ne.model),l(Oe,ne.projection,Oe),_(Oe,Oe),ce=0;ce<3;++ce)ne.eyePosition[ce]=Oe[12+ce]/Oe[15];var Ie=Oe[15];for(ce=0;ce<3;++ce)Ie+=this.lightPosition[ce]*Oe[4*ce+3];for(ce=0;ce<3;++ce){var Xe=Oe[12+ce];for(we=0;we<3;++we)Xe+=Oe[4*we+ce]*this.lightPosition[we];ne.lightPosition[ce]=Xe/Ie}var tt=W(ne,this);if(tt.showSurface){for(this._shader.bind(),this._shader.uniforms=ne,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),ce=0;ce<3;++ce)!this.surfaceProject[ce]||!this.vertexCount||(this._shader.uniforms.model=tt.projections[ce],this._shader.uniforms.clipBounds=tt.clipBounds[ce],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(tt.showContour){var rt=this._contourShader;ne.kambient=1,ne.kdiffuse=0,ne.kspecular=0,ne.opacity=1,rt.bind(),rt.uniforms=ne;var Je=this._contourVAO;for(Je.bind(),ce=0;ce<3;++ce)for(rt.uniforms.permutation=L[ce],ee.lineWidth(this.contourWidth[ce]*this.pixelRatio),we=0;we>4)/16)/255,ce=Math.floor(ne),_e=ne-ce,we=j[1]*(ae.value[1]+(ae.value[2]&15)/16)/255,Oe=Math.floor(we),Ie=we-Oe;ce+=1,Oe+=1;var Xe=ee.position;Xe[0]=Xe[1]=Xe[2]=0;for(var tt=0;tt<2;++tt)for(var rt=tt?_e:1-_e,Je=0;Je<2;++Je)for(var ot=Je?Ie:1-Ie,Me=ce+tt,pe=Oe+Je,ue=rt*ot,ze=0;ze<3;++ze)Xe[ze]+=this._field[ze].get(Me,pe)*ue;for(var Qe=this._pickResult.level,it=0;it<3;++it)if(Qe[it]=w.le(this.contourLevels[it],Xe[it]),Qe[it]<0)this.contourLevels[it].length>0&&(Qe[it]=0);else if(Qe[it]Math.abs(kt-Xe[it])&&(Qe[it]+=1)}for(ee.index[0]=_e<.5?ce:ce+1,ee.index[1]=Ie<.5?Oe:Oe+1,ee.uv[0]=ne/j[0],ee.uv[1]=we/j[1],ze=0;ze<3;++ze)ee.dataCoordinate[ze]=this._field[ze].get(ee.index[0],ee.index[1]);return ee},B.padField=function(ae,j){var ee=j.shape.slice(),ne=ae.shape.slice();h.assign(ae.lo(1,1).hi(ee[0],ee[1]),j),h.assign(ae.lo(1).hi(ee[0],1),j.hi(ee[0],1)),h.assign(ae.lo(1,ne[1]-1).hi(ee[0],1),j.lo(0,ee[1]-1).hi(ee[0],1)),h.assign(ae.lo(0,1).hi(1,ee[1]),j.hi(1)),h.assign(ae.lo(ne[0]-1,1).hi(1,ee[1]),j.lo(ee[0]-1)),ae.set(0,0,j.get(0,0)),ae.set(0,ne[1]-1,j.get(0,ee[1]-1)),ae.set(ne[0]-1,0,j.get(ee[0]-1,0)),ae.set(ne[0]-1,ne[1]-1,j.get(ee[0]-1,ee[1]-1))};function J(ae,j){return Array.isArray(ae)?[j(ae[0]),j(ae[1]),j(ae[2])]:[j(ae),j(ae),j(ae)]}function $(ae){return Array.isArray(ae)?ae.length===3?[ae[0],ae[1],ae[2],1]:[ae[0],ae[1],ae[2],ae[3]]:[0,0,0,1]}function X(ae){if(Array.isArray(ae)){if(Array.isArray(ae))return[$(ae[0]),$(ae[1]),$(ae[2])];var j=$(ae);return[j.slice(),j.slice(),j.slice()]}}B.update=function(ae){ae=ae||{},this.objectOffset=ae.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ae&&(this.contourWidth=J(ae.contourWidth,Number)),"showContour"in ae&&(this.showContour=J(ae.showContour,Boolean)),"showSurface"in ae&&(this.showSurface=!!ae.showSurface),"contourTint"in ae&&(this.contourTint=J(ae.contourTint,Boolean)),"contourColor"in ae&&(this.contourColor=X(ae.contourColor)),"contourProject"in ae&&(this.contourProject=J(ae.contourProject,function(sn){return J(sn,Boolean)})),"surfaceProject"in ae&&(this.surfaceProject=ae.surfaceProject),"dynamicColor"in ae&&(this.dynamicColor=X(ae.dynamicColor)),"dynamicTint"in ae&&(this.dynamicTint=J(ae.dynamicTint,Number)),"dynamicWidth"in ae&&(this.dynamicWidth=J(ae.dynamicWidth,Number)),"opacity"in ae&&(this.opacity=ae.opacity),"opacityscale"in ae&&(this.opacityscale=ae.opacityscale),"colorBounds"in ae&&(this.colorBounds=ae.colorBounds),"vertexColor"in ae&&(this.vertexColor=ae.vertexColor?1:0),"colormap"in ae&&this._colorMap.setPixels(this.genColormap(ae.colormap,this.opacityscale));var j=ae.field||ae.coords&&ae.coords[2]||null,ee=!1;if(j||(this._field[2].shape[0]||this._field[2].shape[2]?j=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):j=this._field[2].hi(0,0)),"field"in ae||"coords"in ae){var ne=(j.shape[0]+2)*(j.shape[1]+2);ne>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(ne))),this._field[2]=d(this._field[2].data,[j.shape[0]+2,j.shape[1]+2]),this.padField(this._field[2],j),this.shape=j.shape.slice();for(var ce=this.shape,_e=0;_e<2;++_e)this._field[2].size>this._field[_e].data.length&&(s.freeFloat(this._field[_e].data),this._field[_e].data=s.mallocFloat(this._field[2].size)),this._field[_e]=d(this._field[_e].data,[ce[0]+2,ce[1]+2]);if(ae.coords){var we=ae.coords;if(!Array.isArray(we)||we.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(_e=0;_e<2;++_e){var Oe=we[_e];for(Je=0;Je<2;++Je)if(Oe.shape[Je]!==ce[Je])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[_e],Oe)}}else if(ae.ticks){var Ie=ae.ticks;if(!Array.isArray(Ie)||Ie.length!==2)throw new Error("gl-surface: invalid ticks");for(_e=0;_e<2;++_e){var Xe=Ie[_e];if((Array.isArray(Xe)||Xe.length)&&(Xe=d(Xe)),Xe.shape[0]!==ce[_e])throw new Error("gl-surface: invalid tick length");var tt=d(Xe.data,ce);tt.stride[_e]=Xe.stride[0],tt.stride[_e^1]=0,this.padField(this._field[_e],tt)}}else{for(_e=0;_e<2;++_e){var rt=[0,0];rt[_e]=1,this._field[_e]=d(this._field[_e].data,[ce[0]+2,ce[1]+2],rt,0)}this._field[0].set(0,0,0);for(var Je=0;Je0){for(var $i=0;$i<5;++$i)Wt.pop();Ne-=1}continue e}}}Pi.push(Ne)}this._contourOffsets[$t]=fi,this._contourCounts[$t]=Pi}var Mi=s.mallocFloat(Wt.length);for(_e=0;_ez||P<0||P>z)throw new Error("gl-texture2d: Invalid texture size");return y._shape=[f,P],y.bind(),L.texImage2D(L.TEXTURE_2D,0,y.format,f,P,0,y.format,y.type,null),y._mipLevels=[0],y}function l(y,f,P,L,z,F){this.gl=y,this.handle=f,this.format=z,this.type=F,this._shape=[P,L],this._mipLevels=[0],this._magFilter=y.NEAREST,this._minFilter=y.NEAREST,this._wrapS=y.CLAMP_TO_EDGE,this._wrapT=y.CLAMP_TO_EDGE,this._anisoSamples=1;var O=this,B=[this._wrapS,this._wrapT];Object.defineProperties(B,[{get:function(){return O._wrapS},set:function(N){return O.wrapS=N}},{get:function(){return O._wrapT},set:function(N){return O.wrapT=N}}]),this._wrapVector=B;var I=[this._shape[0],this._shape[1]];Object.defineProperties(I,[{get:function(){return O._shape[0]},set:function(N){return O.width=N}},{get:function(){return O._shape[1]},set:function(N){return O.height=N}}]),this._shapeVector=I}var _=l.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&a.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,y),this._minFilter=y}},magFilter:{get:function(){return this._magFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&a.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,y),this._magFilter=y}},mipSamples:{get:function(){return this._anisoSamples},set:function(y){var f=this._anisoSamples;if(this._anisoSamples=Math.max(y,1)|0,f!==this._anisoSamples){var P=this.gl.getExtension("EXT_texture_filter_anisotropic");P&&this.gl.texParameterf(this.gl.TEXTURE_2D,P.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,y),this._wrapS=y}},wrapT:{get:function(){return this._wrapT},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,y),this._wrapT=y}},wrap:{get:function(){return this._wrapVector},set:function(y){if(Array.isArray(y)||(y=[y,y]),y.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var f=0;f<2;++f)if(c.indexOf(y[f])<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);this._wrapS=y[0],this._wrapT=y[1];var P=this.gl;return this.bind(),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,this._wrapS),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,this._wrapT),y}},shape:{get:function(){return this._shapeVector},set:function(y){if(!Array.isArray(y))y=[y|0,y|0];else if(y.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,y[0]|0,y[1]|0),[y[0]|0,y[1]|0]}},width:{get:function(){return this._shape[0]},set:function(y){return y=y|0,T(this,y,this._shape[1]),y}},height:{get:function(){return this._shape[1]},set:function(y){return y=y|0,T(this,this._shape[0],y),y}}}),_.bind=function(y){var f=this.gl;return y!==void 0&&f.activeTexture(f.TEXTURE0+(y|0)),f.bindTexture(f.TEXTURE_2D,this.handle),y!==void 0?y|0:f.getParameter(f.ACTIVE_TEXTURE)-f.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var y=Math.min(this._shape[0],this._shape[1]),f=0;y>0;++f,y>>>=1)this._mipLevels.indexOf(f)<0&&this._mipLevels.push(f)},_.setPixels=function(y,f,P,L){var z=this.gl;this.bind(),Array.isArray(f)?(L=P,P=f[1]|0,f=f[0]|0):(f=f||0,P=P||0),L=L||0;var F=p(y)?y:y.raw;if(F){var O=this._mipLevels.indexOf(L)<0;O?(z.texImage2D(z.TEXTURE_2D,0,this.format,this.format,this.type,F),this._mipLevels.push(L)):z.texSubImage2D(z.TEXTURE_2D,L,f,P,this.format,this.type,F)}else if(y.shape&&y.stride&&y.data){if(y.shape.length<2||f+y.shape[1]>this._shape[1]>>>L||P+y.shape[0]>this._shape[0]>>>L||f<0||P<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");M(z,f,P,L,this.format,this.type,this._mipLevels,y)}else throw new Error("gl-texture2d: Unsupported data type")};function w(y,f){return y.length===3?f[2]===1&&f[1]===y[0]*y[2]&&f[0]===y[2]:f[0]===1&&f[1]===y[0]}function M(y,f,P,L,z,F,O,B){var I=B.dtype,N=B.shape.slice();if(N.length<2||N.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var U=0,W=0,Q=w(N,B.stride.slice());I==="float32"?U=y.FLOAT:I==="float64"?(U=y.FLOAT,Q=!1,I="float32"):I==="uint8"?U=y.UNSIGNED_BYTE:(U=y.UNSIGNED_BYTE,Q=!1,I="uint8");var le=1;if(N.length===2)W=y.LUMINANCE,N=[N[0],N[1],1],B=o(B.data,N,[B.stride[0],B.stride[1],1],B.offset);else if(N.length===3){if(N[2]===1)W=y.ALPHA;else if(N[2]===2)W=y.LUMINANCE_ALPHA;else if(N[2]===3)W=y.RGB;else if(N[2]===4)W=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");le=N[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((W===y.LUMINANCE||W===y.ALPHA)&&(z===y.LUMINANCE||z===y.ALPHA)&&(W=z),W!==z)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var se=B.size,fe=O.indexOf(L)<0;if(fe&&O.push(L),U===F&&Q)B.offset===0&&B.data.length===se?fe?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,B.data):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,B.data):fe?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,B.data.subarray(B.offset,B.offset+se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,B.data.subarray(B.offset,B.offset+se));else{var G;F===y.FLOAT?G=n.mallocFloat32(se):G=n.mallocUint8(se);var J=o(G,N,[N[2],N[2]*N[0],1]);U===y.FLOAT&&F===y.UNSIGNED_BYTE?d(J,B):i.assign(J,B),fe?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,G.subarray(0,se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,G.subarray(0,se)),F===y.FLOAT?n.freeFloat32(G):n.freeUint8(G)}}function E(y){var f=y.createTexture();return y.bindTexture(y.TEXTURE_2D,f),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_S,y.CLAMP_TO_EDGE),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_T,y.CLAMP_TO_EDGE),f}function m(y,f,P,L,z){var F=y.getParameter(y.MAX_TEXTURE_SIZE);if(f<0||f>F||P<0||P>F)throw new Error("gl-texture2d: Invalid texture shape");if(z===y.FLOAT&&!y.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var O=E(y);return y.texImage2D(y.TEXTURE_2D,0,L,f,P,0,L,z,null),new l(y,O,f,P,L,z)}function b(y,f,P,L,z,F){var O=E(y);return y.texImage2D(y.TEXTURE_2D,0,z,z,F,f),new l(y,O,P,L,z,F)}function v(y,f){var P=f.dtype,L=f.shape.slice(),z=y.getParameter(y.MAX_TEXTURE_SIZE);if(L[0]<0||L[0]>z||L[1]<0||L[1]>z)throw new Error("gl-texture2d: Invalid texture size");var F=w(L,f.stride.slice()),O=0;P==="float32"?O=y.FLOAT:P==="float64"?(O=y.FLOAT,F=!1,P="float32"):P==="uint8"?O=y.UNSIGNED_BYTE:(O=y.UNSIGNED_BYTE,F=!1,P="uint8");var B=0;if(L.length===2)B=y.LUMINANCE,L=[L[0],L[1],1],f=o(f.data,L,[f.stride[0],f.stride[1],1],f.offset);else if(L.length===3)if(L[2]===1)B=y.ALPHA;else if(L[2]===2)B=y.LUMINANCE_ALPHA;else if(L[2]===3)B=y.RGB;else if(L[2]===4)B=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");O===y.FLOAT&&!y.getExtension("OES_texture_float")&&(O=y.UNSIGNED_BYTE,F=!1);var I,N,U=f.size;if(F)f.offset===0&&f.data.length===U?I=f.data:I=f.data.subarray(f.offset,f.offset+U);else{var W=[L[2],L[2]*L[0],1];N=n.malloc(U,P);var Q=o(N,L,W,0);(P==="float32"||P==="float64")&&O===y.UNSIGNED_BYTE?d(Q,f):i.assign(Q,f),I=N.subarray(0,U)}var le=E(y);return y.texImage2D(y.TEXTURE_2D,0,B,L[0],L[1],0,B,O,I),F||n.free(N),new l(y,le,L[0],L[1],B,O)}function u(y){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(a||h(y),typeof arguments[1]=="number")return m(y,arguments[1],arguments[2],arguments[3]||y.RGBA,arguments[4]||y.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return m(y,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var f=arguments[1],P=p(f)?f:f.raw;if(P)return b(y,P,f.width|0,f.height|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(f.shape&&f.data&&f.stride)return v(y,f)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(e){"use strict";function t(r,o,i){o?o.bind():r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null);var n=r.getParameter(r.MAX_VERTEX_ATTRIBS)|0;if(i){if(i.length>n)throw new Error("gl-vao: Too many vertex attributes");for(var a=0;a1?0:Math.acos(d)}},9226:function(e){e.exports=t;function t(r,o){return r[0]=Math.ceil(o[0]),r[1]=Math.ceil(o[1]),r[2]=Math.ceil(o[2]),r}},3126:function(e){e.exports=t;function t(r){var o=new Float32Array(3);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o}},3990:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r}},1091:function(e){e.exports=t;function t(){var r=new Float32Array(3);return r[0]=0,r[1]=0,r[2]=0,r}},5911:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2],c=i[0],h=i[1],p=i[2];return r[0]=a*p-s*h,r[1]=s*c-n*p,r[2]=n*h-a*c,r}},5455:function(e,t,r){e.exports=r(7056)},7056:function(e){e.exports=t;function t(r,o){var i=o[0]-r[0],n=o[1]-r[1],a=o[2]-r[2];return Math.sqrt(i*i+n*n+a*a)}},4008:function(e,t,r){e.exports=r(6690)},6690:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]/i[0],r[1]=o[1]/i[1],r[2]=o[2]/i[2],r}},244:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}},2613:function(e){e.exports=1e-6},9922:function(e,t,r){e.exports=i;var o=r(2613);function i(n,a){var s=n[0],c=n[1],h=n[2],p=a[0],d=a[1],T=a[2];return Math.abs(s-p)<=o*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(c-d)<=o*Math.max(1,Math.abs(c),Math.abs(d))&&Math.abs(h-T)<=o*Math.max(1,Math.abs(h),Math.abs(T))}},9265:function(e){e.exports=t;function t(r,o){return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]}},2681:function(e){e.exports=t;function t(r,o){return r[0]=Math.floor(o[0]),r[1]=Math.floor(o[1]),r[2]=Math.floor(o[2]),r}},5137:function(e,t,r){e.exports=i;var o=r(1091)();function i(n,a,s,c,h,p){var d,T;for(a||(a=3),s||(s=0),c?T=Math.min(c*a+s,n.length):T=n.length,d=s;d0&&(s=1/Math.sqrt(s),r[0]=o[0]*s,r[1]=o[1]*s,r[2]=o[2]*s),r}},7636:function(e){e.exports=t;function t(r,o){o=o||1;var i=Math.random()*2*Math.PI,n=Math.random()*2-1,a=Math.sqrt(1-n*n)*o;return r[0]=Math.cos(i)*a,r[1]=Math.sin(i)*a,r[2]=n*o,r}},6894:function(e){e.exports=t;function t(r,o,i,n){var a=i[1],s=i[2],c=o[1]-a,h=o[2]-s,p=Math.sin(n),d=Math.cos(n);return r[0]=o[0],r[1]=a+c*d-h*p,r[2]=s+c*p+h*d,r}},109:function(e){e.exports=t;function t(r,o,i,n){var a=i[0],s=i[2],c=o[0]-a,h=o[2]-s,p=Math.sin(n),d=Math.cos(n);return r[0]=a+h*p+c*d,r[1]=o[1],r[2]=s+h*d-c*p,r}},8692:function(e){e.exports=t;function t(r,o,i,n){var a=i[0],s=i[1],c=o[0]-a,h=o[1]-s,p=Math.sin(n),d=Math.cos(n);return r[0]=a+c*d-h*p,r[1]=s+c*p+h*d,r[2]=o[2],r}},2447:function(e){e.exports=t;function t(r,o){return r[0]=Math.round(o[0]),r[1]=Math.round(o[1]),r[2]=Math.round(o[2]),r}},6621:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]*i,r[1]=o[1]*i,r[2]=o[2]*i,r}},8489:function(e){e.exports=t;function t(r,o,i,n){return r[0]=o[0]+i[0]*n,r[1]=o[1]+i[1]*n,r[2]=o[2]+i[2]*n,r}},1463:function(e){e.exports=t;function t(r,o,i,n){return r[0]=o,r[1]=i,r[2]=n,r}},6141:function(e,t,r){e.exports=r(2953)},5486:function(e,t,r){e.exports=r(3066)},2953:function(e){e.exports=t;function t(r,o){var i=o[0]-r[0],n=o[1]-r[1],a=o[2]-r[2];return i*i+n*n+a*a}},3066:function(e){e.exports=t;function t(r){var o=r[0],i=r[1],n=r[2];return o*o+i*i+n*n}},2229:function(e,t,r){e.exports=r(6843)},6843:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]-i[0],r[1]=o[1]-i[1],r[2]=o[2]-i[2],r}},492:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2];return r[0]=n*i[0]+a*i[3]+s*i[6],r[1]=n*i[1]+a*i[4]+s*i[7],r[2]=n*i[2]+a*i[5]+s*i[8],r}},5673:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2],c=i[3]*n+i[7]*a+i[11]*s+i[15];return c=c||1,r[0]=(i[0]*n+i[4]*a+i[8]*s+i[12])/c,r[1]=(i[1]*n+i[5]*a+i[9]*s+i[13])/c,r[2]=(i[2]*n+i[6]*a+i[10]*s+i[14])/c,r}},264:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2],c=i[0],h=i[1],p=i[2],d=i[3],T=d*n+h*s-p*a,l=d*a+p*n-c*s,_=d*s+c*a-h*n,w=-c*n-h*a-p*s;return r[0]=T*d+w*-c+l*-p-_*-h,r[1]=l*d+w*-h+_*-c-T*-p,r[2]=_*d+w*-p+T*-h-l*-c,r}},4361:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]+i[0],r[1]=o[1]+i[1],r[2]=o[2]+i[2],r[3]=o[3]+i[3],r}},2335:function(e){e.exports=t;function t(r){var o=new Float32Array(4);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o}},2933:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r}},7536:function(e){e.exports=t;function t(){var r=new Float32Array(4);return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}},4691:function(e){e.exports=t;function t(r,o){var i=o[0]-r[0],n=o[1]-r[1],a=o[2]-r[2],s=o[3]-r[3];return Math.sqrt(i*i+n*n+a*a+s*s)}},1373:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]/i[0],r[1]=o[1]/i[1],r[2]=o[2]/i[2],r[3]=o[3]/i[3],r}},3750:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]+r[3]*o[3]}},3390:function(e){e.exports=t;function t(r,o,i,n){var a=new Float32Array(4);return a[0]=r,a[1]=o,a[2]=i,a[3]=n,a}},9970:function(e,t,r){e.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r[3]=1/o[3],r}},6808:function(e){e.exports=t;function t(r){var o=r[0],i=r[1],n=r[2],a=r[3];return Math.sqrt(o*o+i*i+n*n+a*a)}},2573:function(e){e.exports=t;function t(r,o,i,n){var a=o[0],s=o[1],c=o[2],h=o[3];return r[0]=a+n*(i[0]-a),r[1]=s+n*(i[1]-s),r[2]=c+n*(i[2]-c),r[3]=h+n*(i[3]-h),r}},160:function(e){e.exports=t;function t(r,o,i){return r[0]=Math.max(o[0],i[0]),r[1]=Math.max(o[1],i[1]),r[2]=Math.max(o[2],i[2]),r[3]=Math.max(o[3],i[3]),r}},2334:function(e){e.exports=t;function t(r,o,i){return r[0]=Math.min(o[0],i[0]),r[1]=Math.min(o[1],i[1]),r[2]=Math.min(o[2],i[2]),r[3]=Math.min(o[3],i[3]),r}},3576:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]*i[0],r[1]=o[1]*i[1],r[2]=o[2]*i[2],r[3]=o[3]*i[3],r}},1498:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r[3]=-o[3],r}},5177:function(e){e.exports=t;function t(r,o){var i=o[0],n=o[1],a=o[2],s=o[3],c=i*i+n*n+a*a+s*s;return c>0&&(c=1/Math.sqrt(c),r[0]=i*c,r[1]=n*c,r[2]=a*c,r[3]=s*c),r}},9131:function(e,t,r){var o=r(5177),i=r(9288);e.exports=n;function n(a,s){return s=s||1,a[0]=Math.random(),a[1]=Math.random(),a[2]=Math.random(),a[3]=Math.random(),o(a,a),i(a,a,s),a}},9288:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]*i,r[1]=o[1]*i,r[2]=o[2]*i,r[3]=o[3]*i,r}},4844:function(e){e.exports=t;function t(r,o,i,n){return r[0]=o[0]+i[0]*n,r[1]=o[1]+i[1]*n,r[2]=o[2]+i[2]*n,r[3]=o[3]+i[3]*n,r}},4578:function(e){e.exports=t;function t(r,o,i,n,a){return r[0]=o,r[1]=i,r[2]=n,r[3]=a,r}},7960:function(e){e.exports=t;function t(r,o){var i=o[0]-r[0],n=o[1]-r[1],a=o[2]-r[2],s=o[3]-r[3];return i*i+n*n+a*a+s*s}},483:function(e){e.exports=t;function t(r){var o=r[0],i=r[1],n=r[2],a=r[3];return o*o+i*i+n*n+a*a}},6860:function(e){e.exports=t;function t(r,o,i){return r[0]=o[0]-i[0],r[1]=o[1]-i[1],r[2]=o[2]-i[2],r[3]=o[3]-i[3],r}},5352:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2],c=o[3];return r[0]=i[0]*n+i[4]*a+i[8]*s+i[12]*c,r[1]=i[1]*n+i[5]*a+i[9]*s+i[13]*c,r[2]=i[2]*n+i[6]*a+i[10]*s+i[14]*c,r[3]=i[3]*n+i[7]*a+i[11]*s+i[15]*c,r}},4041:function(e){e.exports=t;function t(r,o,i){var n=o[0],a=o[1],s=o[2],c=i[0],h=i[1],p=i[2],d=i[3],T=d*n+h*s-p*a,l=d*a+p*n-c*s,_=d*s+c*a-h*n,w=-c*n-h*a-p*s;return r[0]=T*d+w*-c+l*-p-_*-h,r[1]=l*d+w*-h+_*-c-T*-p,r[2]=_*d+w*-p+T*-h-l*-c,r[3]=o[3],r}},1848:function(e,t,r){var o=r(4905),i=r(6468);e.exports=n;function n(a){for(var s=Array.isArray(a)?a:o(a),c=0;c0)continue;it=ue.slice(0,1).join("")}return ee(it),se+=it.length,I=I.slice(it.length),I.length}while(!0)}function Je(){return/[^a-fA-F0-9]/.test(O)?(ee(I.join("")),F=c,L):(I.push(O),B=O,L+1)}function ot(){return O==="."||/[eE]/.test(O)?(I.push(O),F=w,B=O,L+1):O==="x"&&I.length===1&&I[0]==="0"?(F=u,I.push(O),B=O,L+1):/[^\d]/.test(O)?(ee(I.join("")),F=c,L):(I.push(O),B=O,L+1)}function Me(){return O==="f"&&(I.push(O),B=O,L+=1),/[eE]/.test(O)||(O==="-"||O==="+")&&/[eE]/.test(B)?(I.push(O),B=O,L+1):/[^\d]/.test(O)?(ee(I.join("")),F=c,L):(I.push(O),B=O,L+1)}function pe(){if(/[^\d\w_]/.test(O)){var ue=I.join("");return j[ue]?F=m:ae[ue]?F=E:F=M,ee(I.join("")),F=c,L}return I.push(O),B=O,L+1}}},3508:function(e,t,r){var o=r(6852);o=o.slice().filter(function(i){return!/^(gl\_|texture)/.test(i)}),e.exports=o.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(e){e.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(e,t,r){var o=r(620);e.exports=o.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(e){e.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(e,t,r){var o=r(5874);e.exports=i;function i(n,a){var s=o(a),c=[];return c=c.concat(s(n)),c=c.concat(s(null)),c}},3236:function(e){e.exports=function(t){typeof t=="string"&&(t=[t]);for(var r=[].slice.call(arguments,1),o=[],i=0;i>1,T=-7,l=i?a-1:0,_=i?-1:1,w=r[o+l];for(l+=_,s=w&(1<<-T)-1,w>>=-T,T+=h;T>0;s=s*256+r[o+l],l+=_,T-=8);for(c=s&(1<<-T)-1,s>>=-T,T+=n;T>0;c=c*256+r[o+l],l+=_,T-=8);if(s===0)s=1-d;else{if(s===p)return c?NaN:(w?-1:1)*(1/0);c=c+Math.pow(2,n),s=s-d}return(w?-1:1)*c*Math.pow(2,s-n)},t.write=function(r,o,i,n,a,s){var c,h,p,d=s*8-a-1,T=(1<>1,_=a===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=n?0:s-1,M=n?1:-1,E=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(h=isNaN(o)?1:0,c=T):(c=Math.floor(Math.log(o)/Math.LN2),o*(p=Math.pow(2,-c))<1&&(c--,p*=2),c+l>=1?o+=_/p:o+=_*Math.pow(2,1-l),o*p>=2&&(c++,p/=2),c+l>=T?(h=0,c=T):c+l>=1?(h=(o*p-1)*Math.pow(2,a),c=c+l):(h=o*Math.pow(2,l-1)*Math.pow(2,a),c=0));a>=8;r[i+w]=h&255,w+=M,h/=256,a-=8);for(c=c<0;r[i+w]=c&255,w+=M,c/=256,d-=8);r[i+w-M]|=E*128}},8954:function(e,t,r){"use strict";e.exports=l;var o=r(3250),i=r(6803).Fw;function n(_,w,M){this.vertices=_,this.adjacent=w,this.boundary=M,this.lastVisited=-1}n.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var w=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=w};function a(_,w,M){this.vertices=_,this.cell=w,this.index=M}function s(_,w){return i(_.vertices,w.vertices)}function c(_){return function(){var w=this.tuple;return _.apply(this,w)}}function h(_){var w=o[_+1];return w||(w=o),c(w)}var p=[];function d(_,w,M){this.dimension=_,this.vertices=w,this.simplices=M,this.interior=M.filter(function(b){return!b.boundary}),this.tuple=new Array(_+1);for(var E=0;E<=_;++E)this.tuple[E]=this.vertices[E];var m=p[_];m||(m=p[_]=h(_)),this.orient=m}var T=d.prototype;T.handleBoundaryDegeneracy=function(_,w){var M=this.dimension,E=this.vertices.length-1,m=this.tuple,b=this.vertices,v=[_];for(_.lastVisited=-E;v.length>0;){_=v.pop();for(var u=_.adjacent,y=0;y<=M;++y){var f=u[y];if(!(!f.boundary||f.lastVisited<=-E)){for(var P=f.vertices,L=0;L<=M;++L){var z=P[L];z<0?m[L]=w:m[L]=b[z]}var F=this.orient();if(F>0)return f;f.lastVisited=-E,F===0&&v.push(f)}}}return null},T.walk=function(_,w){var M=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,v=w?this.interior.length*Math.random()|0:this.interior.length-1,u=this.interior[v];e:for(;!u.boundary;){for(var y=u.vertices,f=u.adjacent,P=0;P<=E;++P)b[P]=m[y[P]];u.lastVisited=M;for(var P=0;P<=E;++P){var L=f[P];if(!(L.lastVisited>=M)){var z=b[P];b[P]=_;var F=this.orient();if(b[P]=z,F<0){u=L;continue e}else L.boundary?L.lastVisited=-M:L.lastVisited=M}}return}return u},T.addPeaks=function(_,w){var M=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,v=this.interior,u=this.simplices,y=[w];w.lastVisited=M,w.vertices[w.vertices.indexOf(-1)]=M,w.boundary=!1,v.push(w);for(var f=[];y.length>0;){var w=y.pop(),P=w.vertices,L=w.adjacent,z=P.indexOf(M);if(!(z<0)){for(var F=0;F<=E;++F)if(F!==z){var O=L[F];if(!(!O.boundary||O.lastVisited>=M)){var B=O.vertices;if(O.lastVisited!==-M){for(var I=0,N=0;N<=E;++N)B[N]<0?(I=N,b[N]=_):b[N]=m[B[N]];var U=this.orient();if(U>0){B[I]=M,O.boundary=!1,v.push(O),y.push(O),O.lastVisited=M;continue}else O.lastVisited=-M}var W=O.adjacent,Q=P.slice(),le=L.slice(),se=new n(Q,le,!0);u.push(se);var fe=W.indexOf(w);if(!(fe<0)){W[fe]=se,le[z]=O,Q[F]=-1,le[F]=w,L[F]=se,se.flip();for(var N=0;N<=E;++N){var G=Q[N];if(!(G<0||G===M)){for(var J=new Array(E-1),$=0,X=0;X<=E;++X){var re=Q[X];re<0||X===N||(J[$++]=re)}f.push(new a(J,se,N))}}}}}}}f.sort(s);for(var F=0;F+1=0?v[y++]=u[P]:f=P&1;if(f===(_&1)){var L=v[0];v[0]=v[1],v[1]=L}w.push(v)}}return w};function l(_,w){var M=_.length;if(M===0)throw new Error("Must have at least d+1 points");var E=_[0].length;if(M<=E)throw new Error("Must input at least d+1 points");var m=_.slice(0,E+1),b=o.apply(void 0,m);if(b===0)throw new Error("Input not in general position");for(var v=new Array(E+1),u=0;u<=E;++u)v[u]=u;b<0&&(v[0]=1,v[1]=0);for(var y=new n(v,new Array(E+1),!1),f=y.adjacent,P=new Array(E+2),u=0;u<=E;++u){for(var L=v.slice(),z=0;z<=E;++z)z===u&&(L[z]=-1);var F=L[0];L[0]=L[1],L[1]=F;var O=new n(L,new Array(E+1),!0);f[u]=O,P[u]=O}P[E+1]=y;for(var u=0;u<=E;++u)for(var L=f[u].vertices,B=f[u].adjacent,z=0;z<=E;++z){var I=L[z];if(I<0){B[z]=y;continue}for(var N=0;N<=E;++N)f[N].vertices.indexOf(I)<0&&(B[z]=f[N])}for(var U=new d(E,m,P),W=!!w,u=E+1;u3*(P+1)?d(this,f):this.left.insert(f):this.left=b([f]);else if(f[0]>this.mid)this.right?4*(this.right.count+1)>3*(P+1)?d(this,f):this.right.insert(f):this.right=b([f]);else{var L=o.ge(this.leftPoints,f,E),z=o.ge(this.rightPoints,f,m);this.leftPoints.splice(L,0,f),this.rightPoints.splice(z,0,f)}},c.remove=function(f){var P=this.count-this.leftPoints;if(f[1]3*(P-1))return T(this,f);var z=this.left.remove(f);return z===a?(this.left=null,this.count-=1,n):(z===n&&(this.count-=1),z)}else if(f[0]>this.mid){if(!this.right)return i;var F=this.left?this.left.count:0;if(4*F>3*(P-1))return T(this,f);var z=this.right.remove(f);return z===a?(this.right=null,this.count-=1,n):(z===n&&(this.count-=1),z)}else{if(this.count===1)return this.leftPoints[0]===f?a:i;if(this.leftPoints.length===1&&this.leftPoints[0]===f){if(this.left&&this.right){for(var O=this,B=this.left;B.right;)O=B,B=B.right;if(O===this)B.right=this.right;else{var I=this.left,z=this.right;O.count-=B.count,O.right=B.left,B.left=I,B.right=z}h(this,B),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?h(this,this.left):h(this,this.right);return n}for(var I=o.ge(this.leftPoints,f,E);I=0&&f[z][1]>=P;--z){var F=L(f[z]);if(F)return F}}function w(f,P){for(var L=0;Lthis.mid){if(this.right){var L=this.right.queryPoint(f,P);if(L)return L}return _(this.rightPoints,f,P)}else return w(this.leftPoints,P)},c.queryInterval=function(f,P,L){if(fthis.mid&&this.right){var z=this.right.queryInterval(f,P,L);if(z)return z}return Pthis.mid?_(this.rightPoints,f,L):w(this.leftPoints,L)};function M(f,P){return f-P}function E(f,P){var L=f[0]-P[0];return L||f[1]-P[1]}function m(f,P){var L=f[1]-P[1];return L||f[0]-P[0]}function b(f){if(f.length===0)return null;for(var P=[],L=0;L>1],F=[],O=[],B=[],L=0;L13)&&o!==32&&o!==133&&o!==160&&o!==5760&&o!==6158&&(o<8192||o>8205)&&o!==8232&&o!==8233&&o!==8239&&o!==8287&&o!==8288&&o!==12288&&o!==65279)return!1;return!0}},395:function(e){function t(r,o,i){return r*(1-i)+o*i}e.exports=t},2652:function(e,t,r){var o=r(4335),i=r(6864),n=r(1903),a=r(9921),s=r(7608),c=r(5665),h={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},p=i(),d=i(),T=[0,0,0,0],l=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];e.exports=function(b,v,u,y,f,P){if(v||(v=[0,0,0]),u||(u=[0,0,0]),y||(y=[0,0,0]),f||(f=[0,0,0,1]),P||(P=[0,0,0,1]),!o(p,b)||(n(d,p),d[3]=0,d[7]=0,d[11]=0,d[15]=1,Math.abs(a(d)<1e-8)))return!1;var L=p[3],z=p[7],F=p[11],O=p[12],B=p[13],I=p[14],N=p[15];if(L!==0||z!==0||F!==0){T[0]=L,T[1]=z,T[2]=F,T[3]=N;var U=s(d,d);if(!U)return!1;c(d,d),w(f,T,d)}else f[0]=f[1]=f[2]=0,f[3]=1;if(v[0]=O,v[1]=B,v[2]=I,M(l,p),u[0]=h.length(l[0]),h.normalize(l[0],l[0]),y[0]=h.dot(l[0],l[1]),E(l[1],l[1],l[0],1,-y[0]),u[1]=h.length(l[1]),h.normalize(l[1],l[1]),y[0]/=u[1],y[1]=h.dot(l[0],l[2]),E(l[2],l[2],l[0],1,-y[1]),y[2]=h.dot(l[1],l[2]),E(l[2],l[2],l[1],1,-y[2]),u[2]=h.length(l[2]),h.normalize(l[2],l[2]),y[1]/=u[2],y[2]/=u[2],h.cross(_,l[1],l[2]),h.dot(l[0],_)<0)for(var W=0;W<3;W++)u[W]*=-1,l[W][0]*=-1,l[W][1]*=-1,l[W][2]*=-1;return P[0]=.5*Math.sqrt(Math.max(1+l[0][0]-l[1][1]-l[2][2],0)),P[1]=.5*Math.sqrt(Math.max(1-l[0][0]+l[1][1]-l[2][2],0)),P[2]=.5*Math.sqrt(Math.max(1-l[0][0]-l[1][1]+l[2][2],0)),P[3]=.5*Math.sqrt(Math.max(1+l[0][0]+l[1][1]+l[2][2],0)),l[2][1]>l[1][2]&&(P[0]=-P[0]),l[0][2]>l[2][0]&&(P[1]=-P[1]),l[1][0]>l[0][1]&&(P[2]=-P[2]),!0};function w(m,b,v){var u=b[0],y=b[1],f=b[2],P=b[3];return m[0]=v[0]*u+v[4]*y+v[8]*f+v[12]*P,m[1]=v[1]*u+v[5]*y+v[9]*f+v[13]*P,m[2]=v[2]*u+v[6]*y+v[10]*f+v[14]*P,m[3]=v[3]*u+v[7]*y+v[11]*f+v[15]*P,m}function M(m,b){m[0][0]=b[0],m[0][1]=b[1],m[0][2]=b[2],m[1][0]=b[4],m[1][1]=b[5],m[1][2]=b[6],m[2][0]=b[8],m[2][1]=b[9],m[2][2]=b[10]}function E(m,b,v,u,y){m[0]=b[0]*u+v[0]*y,m[1]=b[1]*u+v[1]*y,m[2]=b[2]*u+v[2]*y}},4335:function(e){e.exports=function(r,o){var i=o[15];if(i===0)return!1;for(var n=1/i,a=0;a<16;a++)r[a]=o[a]*n;return!0}},7442:function(e,t,r){var o=r(6658),i=r(7182),n=r(2652),a=r(9921),s=r(8648),c=T(),h=T(),p=T();e.exports=d;function d(w,M,E,m){if(a(M)===0||a(E)===0)return!1;var b=n(M,c.translate,c.scale,c.skew,c.perspective,c.quaternion),v=n(E,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return!b||!v?!1:(o(p.translate,c.translate,h.translate,m),o(p.skew,c.skew,h.skew,m),o(p.scale,c.scale,h.scale,m),o(p.perspective,c.perspective,h.perspective,m),s(p.quaternion,c.quaternion,h.quaternion,m),i(w,p.translate,p.scale,p.skew,p.perspective,p.quaternion),!0)}function T(){return{translate:l(),scale:l(1),skew:l(),perspective:_(),quaternion:_()}}function l(w){return[w||0,w||0,w||0]}function _(){return[0,0,0,1]}},7182:function(e,t,r){var o={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},i=o.create(),n=o.create();e.exports=function(s,c,h,p,d,T){return o.identity(s),o.fromRotationTranslation(s,T,c),s[3]=d[0],s[7]=d[1],s[11]=d[2],s[15]=d[3],o.identity(n),p[2]!==0&&(n[9]=p[2],o.multiply(s,s,n)),p[1]!==0&&(n[9]=0,n[8]=p[1],o.multiply(s,s,n)),p[0]!==0&&(n[8]=0,n[4]=p[0],o.multiply(s,s,n)),o.scale(s,s,h),s}},1811:function(e,t,r){"use strict";var o=r(2478),i=r(7442),n=r(7608),a=r(5567),s=r(2408),c=r(7089),h=r(6582),p=r(7656),d=r(2504),T=r(3536),l=[0,0,0];e.exports=E;function _(m){this._components=m.slice(),this._time=[0],this.prevMatrix=m.slice(),this.nextMatrix=m.slice(),this.computedMatrix=m.slice(),this.computedInverse=m.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}var w=_.prototype;w.recalcMatrix=function(m){var b=this._time,v=o.le(b,m),u=this.computedMatrix;if(!(v<0)){var y=this._components;if(v===b.length-1)for(var f=16*v,P=0;P<16;++P)u[P]=y[f++];else{for(var L=b[v+1]-b[v],f=16*v,z=this.prevMatrix,F=!0,P=0;P<16;++P)z[P]=y[f++];for(var O=this.nextMatrix,P=0;P<16;++P)O[P]=y[f++],F=F&&z[P]===O[P];if(L<1e-6||F)for(var P=0;P<16;++P)u[P]=z[P];else i(u,z,O,(m-b[v])/L)}var B=this.computedUp;B[0]=u[1],B[1]=u[5],B[2]=u[9],T(B,B);var I=this.computedInverse;n(I,u);var N=this.computedEye,U=I[15];N[0]=I[12]/U,N[1]=I[13]/U,N[2]=I[14]/U;for(var W=this.computedCenter,Q=Math.exp(this.computedRadius[0]),P=0;P<3;++P)W[P]=N[P]-u[2+4*P]*Q}},w.idle=function(m){if(!(m1&&o(n[h[l-2]],n[h[l-1]],T)<=0;)l-=1,h.pop();for(h.push(d),l=p.length;l>1&&o(n[p[l-2]],n[p[l-1]],T)>=0;)l-=1,p.pop();p.push(d)}for(var _=new Array(p.length+h.length-2),w=0,s=0,M=h.length;s0;--E)_[w++]=p[E];return _}},351:function(e,t,r){"use strict";e.exports=i;var o=r(4687);function i(n,a){a||(a=n,n=window);var s=0,c=0,h=0,p={shift:!1,alt:!1,control:!1,meta:!1},d=!1;function T(f){var P=!1;return"altKey"in f&&(P=P||f.altKey!==p.alt,p.alt=!!f.altKey),"shiftKey"in f&&(P=P||f.shiftKey!==p.shift,p.shift=!!f.shiftKey),"ctrlKey"in f&&(P=P||f.ctrlKey!==p.control,p.control=!!f.ctrlKey),"metaKey"in f&&(P=P||f.metaKey!==p.meta,p.meta=!!f.metaKey),P}function l(f,P){var L=o.x(P),z=o.y(P);"buttons"in P&&(f=P.buttons|0),(f!==s||L!==c||z!==h||T(P))&&(s=f|0,c=L||0,h=z||0,a&&a(s,c,h,p))}function _(f){l(0,f)}function w(){(s||c||h||p.shift||p.alt||p.meta||p.control)&&(c=h=0,s=0,p.shift=p.alt=p.control=p.meta=!1,a&&a(0,0,0,p))}function M(f){T(f)&&a&&a(s,c,h,p)}function E(f){o.buttons(f)===0?l(0,f):l(s,f)}function m(f){l(s|o.buttons(f),f)}function b(f){l(s&~o.buttons(f),f)}function v(){d||(d=!0,n.addEventListener("mousemove",E),n.addEventListener("mousedown",m),n.addEventListener("mouseup",b),n.addEventListener("mouseleave",_),n.addEventListener("mouseenter",_),n.addEventListener("mouseout",_),n.addEventListener("mouseover",_),n.addEventListener("blur",w),n.addEventListener("keyup",M),n.addEventListener("keydown",M),n.addEventListener("keypress",M),n!==window&&(window.addEventListener("blur",w),window.addEventListener("keyup",M),window.addEventListener("keydown",M),window.addEventListener("keypress",M)))}function u(){d&&(d=!1,n.removeEventListener("mousemove",E),n.removeEventListener("mousedown",m),n.removeEventListener("mouseup",b),n.removeEventListener("mouseleave",_),n.removeEventListener("mouseenter",_),n.removeEventListener("mouseout",_),n.removeEventListener("mouseover",_),n.removeEventListener("blur",w),n.removeEventListener("keyup",M),n.removeEventListener("keydown",M),n.removeEventListener("keypress",M),n!==window&&(window.removeEventListener("blur",w),window.removeEventListener("keyup",M),window.removeEventListener("keydown",M),window.removeEventListener("keypress",M)))}v();var y={element:n};return Object.defineProperties(y,{enabled:{get:function(){return d},set:function(f){f?v():u()},enumerable:!0},buttons:{get:function(){return s},enumerable:!0},x:{get:function(){return c},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return p},enumerable:!0}}),y}},24:function(e){var t={left:0,top:0};e.exports=r;function r(i,n,a){n=n||i.currentTarget||i.srcElement,Array.isArray(a)||(a=[0,0]);var s=i.clientX||0,c=i.clientY||0,h=o(n);return a[0]=s-h.left,a[1]=c-h.top,a}function o(i){return i===window||i===document||i===document.body?t:i.getBoundingClientRect()}},4687:function(e,t){"use strict";function r(a){if(typeof a=="object"){if("buttons"in a)return a.buttons;if("which"in a){var s=a.which;if(s===2)return 4;if(s===3)return 2;if(s>0)return 1<=0)return 1<0){if(le=1,G[$++]=p(v[P],w,M,E),P+=U,m>0)for(Q=1,L=v[P],X=G[$]=p(L,w,M,E),j=G[$+re],ce=G[$+ee],Oe=G[$+_e],(X!==j||X!==ce||X!==Oe)&&(F=v[P+z],B=v[P+O],N=v[P+I],c(Q,le,L,F,B,N,X,j,ce,Oe,w,M,E),Ie=J[$]=se++),$+=1,P+=U,Q=2;Q0)for(Q=1,L=v[P],X=G[$]=p(L,w,M,E),j=G[$+re],ce=G[$+ee],Oe=G[$+_e],(X!==j||X!==ce||X!==Oe)&&(F=v[P+z],B=v[P+O],N=v[P+I],c(Q,le,L,F,B,N,X,j,ce,Oe,w,M,E),Ie=J[$]=se++,Oe!==ce&&h(J[$+ee],Ie,B,N,ce,Oe,w,M,E)),$+=1,P+=U,Q=2;Q0){if(Q=1,G[$++]=p(v[P],w,M,E),P+=U,b>0)for(le=1,L=v[P],X=G[$]=p(L,w,M,E),ce=G[$+ee],j=G[$+re],Oe=G[$+_e],(X!==ce||X!==j||X!==Oe)&&(F=v[P+z],B=v[P+O],N=v[P+I],c(Q,le,L,F,B,N,X,ce,j,Oe,w,M,E),Ie=J[$]=se++),$+=1,P+=U,le=2;le0)for(le=1,L=v[P],X=G[$]=p(L,w,M,E),ce=G[$+ee],j=G[$+re],Oe=G[$+_e],(X!==ce||X!==j||X!==Oe)&&(F=v[P+z],B=v[P+O],N=v[P+I],c(Q,le,L,F,B,N,X,ce,j,Oe,w,M,E),Ie=J[$]=se++,Oe!==ce&&h(J[$+ee],Ie,N,F,Oe,ce,w,M,E)),$+=1,P+=U,le=2;le 0"),typeof s.vertex!="function"&&c("Must specify vertex creation function"),typeof s.cell!="function"&&c("Must specify cell creation function"),typeof s.phase!="function"&&c("Must specify phase function");for(var T=s.getters||[],l=new Array(p),_=0;_=0?l[_]=!0:l[_]=!1;return n(s.vertex,s.cell,s.phase,d,h,l)}},6199:function(e,t,r){"use strict";var o=r(1338),i={zero:function(E,m,b,v){var u=E[0],y=b[0];v|=0;var f=0,P=y;for(f=0;f2&&f[1]>2&&v(y.pick(-1,-1).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,0).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,1).lo(1,1).hi(f[0]-2,f[1]-2)),f[1]>2&&(b(y.pick(0,-1).lo(1).hi(f[1]-2),u.pick(0,-1,1).lo(1).hi(f[1]-2)),m(u.pick(0,-1,0).lo(1).hi(f[1]-2))),f[1]>2&&(b(y.pick(f[0]-1,-1).lo(1).hi(f[1]-2),u.pick(f[0]-1,-1,1).lo(1).hi(f[1]-2)),m(u.pick(f[0]-1,-1,0).lo(1).hi(f[1]-2))),f[0]>2&&(b(y.pick(-1,0).lo(1).hi(f[0]-2),u.pick(-1,0,0).lo(1).hi(f[0]-2)),m(u.pick(-1,0,1).lo(1).hi(f[0]-2))),f[0]>2&&(b(y.pick(-1,f[1]-1).lo(1).hi(f[0]-2),u.pick(-1,f[1]-1,0).lo(1).hi(f[0]-2)),m(u.pick(-1,f[1]-1,1).lo(1).hi(f[0]-2))),u.set(0,0,0,0),u.set(0,0,1,0),u.set(f[0]-1,0,0,0),u.set(f[0]-1,0,1,0),u.set(0,f[1]-1,0,0),u.set(0,f[1]-1,1,0),u.set(f[0]-1,f[1]-1,0,0),u.set(f[0]-1,f[1]-1,1,0),u}}function M(E){var m=E.join(),f=p[m];if(f)return f;for(var b=E.length,v=[T,l],u=1;u<=b;++u)v.push(_(u));var y=w,f=y.apply(void 0,v);return p[m]=f,f}e.exports=function(m,b,v){if(Array.isArray(v)||(typeof v=="string"?v=o(b.dimension,v):v=o(b.dimension,"clamp")),b.size===0)return m;if(b.dimension===0)return m.set(0),m;var u=M(v);return u(m,b)}},4317:function(e){"use strict";function t(a,s){var c=Math.floor(s),h=s-c,p=0<=c&&c0;){B<64?(m=B,B=0):(m=64,B-=64);for(var I=p[1]|0;I>0;){I<64?(b=I,I=0):(b=64,I-=64),l=F+B*u+I*y,M=O+B*P+I*L;var N=0,U=0,W=0,Q=f,le=u-v*f,se=y-m*u,fe=z,G=P-v*z,J=L-m*P;for(W=0;W0;){L<64?(m=L,L=0):(m=64,L-=64);for(var z=p[0]|0;z>0;){z<64?(E=z,z=0):(E=64,z-=64),l=f+L*v+z*b,M=P+L*y+z*u;var F=0,O=0,B=v,I=b-m*v,N=y,U=u-m*y;for(O=0;O0;){O<64?(b=O,O=0):(b=64,O-=64);for(var B=p[0]|0;B>0;){B<64?(E=B,B=0):(E=64,B-=64);for(var I=p[1]|0;I>0;){I<64?(m=I,I=0):(m=64,I-=64),l=z+O*y+B*v+I*u,M=F+O*L+B*f+I*P;var N=0,U=0,W=0,Q=y,le=v-b*y,se=u-E*v,fe=L,G=f-b*L,J=P-E*f;for(W=0;W_;){N=0,U=F-m;t:for(B=0;BQ)break t;U+=f,N+=P}for(N=F,U=F-m,B=0;B>1,I=B-z,N=B+z,U=F,W=I,Q=B,le=N,se=O,fe=w+1,G=M-1,J=!0,$,X,re,ae,j,ee,ne,ce,_e,we=0,Oe=0,Ie=0,Xe,tt,rt,Je,ot,Me,pe,ue,ze,Qe,it,$e,kt,Mt,Bt,jt,cr=y,nr=T(cr),Lr=T(cr);tt=b*U,rt=b*W,jt=m;e:for(Xe=0;Xe0){X=U,U=W,W=X;break e}if(Ie<0)break e;jt+=P}tt=b*le,rt=b*se,jt=m;e:for(Xe=0;Xe0){X=le,le=se,se=X;break e}if(Ie<0)break e;jt+=P}tt=b*U,rt=b*Q,jt=m;e:for(Xe=0;Xe0){X=U,U=Q,Q=X;break e}if(Ie<0)break e;jt+=P}tt=b*W,rt=b*Q,jt=m;e:for(Xe=0;Xe0){X=W,W=Q,Q=X;break e}if(Ie<0)break e;jt+=P}tt=b*U,rt=b*le,jt=m;e:for(Xe=0;Xe0){X=U,U=le,le=X;break e}if(Ie<0)break e;jt+=P}tt=b*Q,rt=b*le,jt=m;e:for(Xe=0;Xe0){X=Q,Q=le,le=X;break e}if(Ie<0)break e;jt+=P}tt=b*W,rt=b*se,jt=m;e:for(Xe=0;Xe0){X=W,W=se,se=X;break e}if(Ie<0)break e;jt+=P}tt=b*W,rt=b*Q,jt=m;e:for(Xe=0;Xe0){X=W,W=Q,Q=X;break e}if(Ie<0)break e;jt+=P}tt=b*le,rt=b*se,jt=m;e:for(Xe=0;Xe0){X=le,le=se,se=X;break e}if(Ie<0)break e;jt+=P}for(tt=b*U,rt=b*W,Je=b*Q,ot=b*le,Me=b*se,pe=b*F,ue=b*B,ze=b*O,Bt=0,jt=m,Xe=0;Xe0)G--;else if(Ie<0){for(tt=b*ee,rt=b*fe,Je=b*G,jt=m,Xe=0;Xe0)for(;;){ne=m+G*b,Bt=0;e:for(Xe=0;Xe0){if(--GO){e:for(;;){for(ne=m+fe*b,Bt=0,jt=m,Xe=0;Xe1&&_?M(l,_[0],_[1]):M(l)}var h={"uint32,1,0":function(d,T){return function(l){var _=l.data,w=l.offset|0,M=l.shape,E=l.stride,m=E[0]|0,b=M[0]|0,v=E[1]|0,u=M[1]|0,y=v,f=v,P=1;b<=32?d(0,b-1,_,w,m,v,b,u,y,f,P):T(0,b-1,_,w,m,v,b,u,y,f,P)}}};function p(d,T){var l=[T,d].join(","),_=h[l],w=a(d,T),M=c(d,T,w);return _(w,M)}e.exports=p},446:function(e,t,r){"use strict";var o=r(7640),i={};function n(a){var s=a.order,c=a.dtype,h=[s,c],p=h.join(":"),d=i[p];return d||(i[p]=d=o(s,c)),d(a),a}e.exports=n},9618:function(e,t,r){var o=r(7163),i=typeof Float64Array<"u";function n(T,l){return T[0]-l[0]}function a(){var T=this.stride,l=new Array(T.length),_;for(_=0;_=0&&(v=m|0,b+=y*v,u-=v),new w(this.data,u,y,b)},M.step=function(m){var b=this.shape[0],v=this.stride[0],u=this.offset,y=0,f=Math.ceil;return typeof m=="number"&&(y=m|0,y<0?(u+=v*(b-1),b=f(-b/y)):b=f(b/y),v*=y),new w(this.data,b,v,u)},M.transpose=function(m){m=m===void 0?0:m|0;var b=this.shape,v=this.stride;return new w(this.data,b[m],v[m],this.offset)},M.pick=function(m){var b=[],v=[],u=this.offset;typeof m=="number"&&m>=0?u=u+this.stride[0]*m|0:(b.push(this.shape[0]),v.push(this.stride[0]));var y=l[b.length+1];return y(this.data,b,v,u)},function(m,b,v,u){return new w(m,b[0],v[0],u)}},2:function(T,l,_){function w(E,m,b,v,u,y){this.data=E,this.shape=[m,b],this.stride=[v,u],this.offset=y|0}var M=w.prototype;return M.dtype=T,M.dimension=2,Object.defineProperty(M,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(M,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),M.set=function(m,b,v){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b,v):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]=v},M.get=function(m,b){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]},M.index=function(m,b){return this.offset+this.stride[0]*m+this.stride[1]*b},M.hi=function(m,b){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,this.stride[0],this.stride[1],this.offset)},M.lo=function(m,b){var v=this.offset,u=0,y=this.shape[0],f=this.shape[1],P=this.stride[0],L=this.stride[1];return typeof m=="number"&&m>=0&&(u=m|0,v+=P*u,y-=u),typeof b=="number"&&b>=0&&(u=b|0,v+=L*u,f-=u),new w(this.data,y,f,P,L,v)},M.step=function(m,b){var v=this.shape[0],u=this.shape[1],y=this.stride[0],f=this.stride[1],P=this.offset,L=0,z=Math.ceil;return typeof m=="number"&&(L=m|0,L<0?(P+=y*(v-1),v=z(-v/L)):v=z(v/L),y*=L),typeof b=="number"&&(L=b|0,L<0?(P+=f*(u-1),u=z(-u/L)):u=z(u/L),f*=L),new w(this.data,v,u,y,f,P)},M.transpose=function(m,b){m=m===void 0?0:m|0,b=b===void 0?1:b|0;var v=this.shape,u=this.stride;return new w(this.data,v[m],v[b],u[m],u[b],this.offset)},M.pick=function(m,b){var v=[],u=[],y=this.offset;typeof m=="number"&&m>=0?y=y+this.stride[0]*m|0:(v.push(this.shape[0]),u.push(this.stride[0])),typeof b=="number"&&b>=0?y=y+this.stride[1]*b|0:(v.push(this.shape[1]),u.push(this.stride[1]));var f=l[v.length+1];return f(this.data,v,u,y)},function(m,b,v,u){return new w(m,b[0],b[1],v[0],v[1],u)}},3:function(T,l,_){function w(E,m,b,v,u,y,f,P){this.data=E,this.shape=[m,b,v],this.stride=[u,y,f],this.offset=P|0}var M=w.prototype;return M.dtype=T,M.dimension=3,Object.defineProperty(M,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(M,"order",{get:function(){var m=Math.abs(this.stride[0]),b=Math.abs(this.stride[1]),v=Math.abs(this.stride[2]);return m>b?b>v?[2,1,0]:m>v?[1,2,0]:[1,0,2]:m>v?[2,0,1]:v>b?[0,1,2]:[0,2,1]}}),M.set=function(m,b,v,u){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v,u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v]=u},M.get=function(m,b,v){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v]},M.index=function(m,b,v){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v},M.hi=function(m,b,v){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof v!="number"||v<0?this.shape[2]:v|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},M.lo=function(m,b,v){var u=this.offset,y=0,f=this.shape[0],P=this.shape[1],L=this.shape[2],z=this.stride[0],F=this.stride[1],O=this.stride[2];return typeof m=="number"&&m>=0&&(y=m|0,u+=z*y,f-=y),typeof b=="number"&&b>=0&&(y=b|0,u+=F*y,P-=y),typeof v=="number"&&v>=0&&(y=v|0,u+=O*y,L-=y),new w(this.data,f,P,L,z,F,O,u)},M.step=function(m,b,v){var u=this.shape[0],y=this.shape[1],f=this.shape[2],P=this.stride[0],L=this.stride[1],z=this.stride[2],F=this.offset,O=0,B=Math.ceil;return typeof m=="number"&&(O=m|0,O<0?(F+=P*(u-1),u=B(-u/O)):u=B(u/O),P*=O),typeof b=="number"&&(O=b|0,O<0?(F+=L*(y-1),y=B(-y/O)):y=B(y/O),L*=O),typeof v=="number"&&(O=v|0,O<0?(F+=z*(f-1),f=B(-f/O)):f=B(f/O),z*=O),new w(this.data,u,y,f,P,L,z,F)},M.transpose=function(m,b,v){m=m===void 0?0:m|0,b=b===void 0?1:b|0,v=v===void 0?2:v|0;var u=this.shape,y=this.stride;return new w(this.data,u[m],u[b],u[v],y[m],y[b],y[v],this.offset)},M.pick=function(m,b,v){var u=[],y=[],f=this.offset;typeof m=="number"&&m>=0?f=f+this.stride[0]*m|0:(u.push(this.shape[0]),y.push(this.stride[0])),typeof b=="number"&&b>=0?f=f+this.stride[1]*b|0:(u.push(this.shape[1]),y.push(this.stride[1])),typeof v=="number"&&v>=0?f=f+this.stride[2]*v|0:(u.push(this.shape[2]),y.push(this.stride[2]));var P=l[u.length+1];return P(this.data,u,y,f)},function(m,b,v,u){return new w(m,b[0],b[1],b[2],v[0],v[1],v[2],u)}},4:function(T,l,_){function w(E,m,b,v,u,y,f,P,L,z){this.data=E,this.shape=[m,b,v,u],this.stride=[y,f,P,L],this.offset=z|0}var M=w.prototype;return M.dtype=T,M.dimension=4,Object.defineProperty(M,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(M,"order",{get:_}),M.set=function(m,b,v,u,y){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v+this.stride[3]*u,y):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v+this.stride[3]*u]=y},M.get=function(m,b,v,u){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v+this.stride[3]*u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v+this.stride[3]*u]},M.index=function(m,b,v,u){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*v+this.stride[3]*u},M.hi=function(m,b,v,u){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof v!="number"||v<0?this.shape[2]:v|0,typeof u!="number"||u<0?this.shape[3]:u|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},M.lo=function(m,b,v,u){var y=this.offset,f=0,P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],O=this.stride[0],B=this.stride[1],I=this.stride[2],N=this.stride[3];return typeof m=="number"&&m>=0&&(f=m|0,y+=O*f,P-=f),typeof b=="number"&&b>=0&&(f=b|0,y+=B*f,L-=f),typeof v=="number"&&v>=0&&(f=v|0,y+=I*f,z-=f),typeof u=="number"&&u>=0&&(f=u|0,y+=N*f,F-=f),new w(this.data,P,L,z,F,O,B,I,N,y)},M.step=function(m,b,v,u){var y=this.shape[0],f=this.shape[1],P=this.shape[2],L=this.shape[3],z=this.stride[0],F=this.stride[1],O=this.stride[2],B=this.stride[3],I=this.offset,N=0,U=Math.ceil;return typeof m=="number"&&(N=m|0,N<0?(I+=z*(y-1),y=U(-y/N)):y=U(y/N),z*=N),typeof b=="number"&&(N=b|0,N<0?(I+=F*(f-1),f=U(-f/N)):f=U(f/N),F*=N),typeof v=="number"&&(N=v|0,N<0?(I+=O*(P-1),P=U(-P/N)):P=U(P/N),O*=N),typeof u=="number"&&(N=u|0,N<0?(I+=B*(L-1),L=U(-L/N)):L=U(L/N),B*=N),new w(this.data,y,f,P,L,z,F,O,B,I)},M.transpose=function(m,b,v,u){m=m===void 0?0:m|0,b=b===void 0?1:b|0,v=v===void 0?2:v|0,u=u===void 0?3:u|0;var y=this.shape,f=this.stride;return new w(this.data,y[m],y[b],y[v],y[u],f[m],f[b],f[v],f[u],this.offset)},M.pick=function(m,b,v,u){var y=[],f=[],P=this.offset;typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(y.push(this.shape[0]),f.push(this.stride[0])),typeof b=="number"&&b>=0?P=P+this.stride[1]*b|0:(y.push(this.shape[1]),f.push(this.stride[1])),typeof v=="number"&&v>=0?P=P+this.stride[2]*v|0:(y.push(this.shape[2]),f.push(this.stride[2])),typeof u=="number"&&u>=0?P=P+this.stride[3]*u|0:(y.push(this.shape[3]),f.push(this.stride[3]));var L=l[y.length+1];return L(this.data,y,f,P)},function(m,b,v,u){return new w(m,b[0],b[1],b[2],b[3],v[0],v[1],v[2],v[3],u)}},5:function(l,_,w){function M(m,b,v,u,y,f,P,L,z,F,O,B){this.data=m,this.shape=[b,v,u,y,f],this.stride=[P,L,z,F,O],this.offset=B|0}var E=M.prototype;return E.dtype=l,E.dimension=5,Object.defineProperty(E,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(E,"order",{get:w}),E.set=function(b,v,u,y,f,P){return l==="generic"?this.data.set(this.offset+this.stride[0]*b+this.stride[1]*v+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f,P):this.data[this.offset+this.stride[0]*b+this.stride[1]*v+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]=P},E.get=function(b,v,u,y,f){return l==="generic"?this.data.get(this.offset+this.stride[0]*b+this.stride[1]*v+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f):this.data[this.offset+this.stride[0]*b+this.stride[1]*v+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]},E.index=function(b,v,u,y,f){return this.offset+this.stride[0]*b+this.stride[1]*v+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f},E.hi=function(b,v,u,y,f){return new M(this.data,typeof b!="number"||b<0?this.shape[0]:b|0,typeof v!="number"||v<0?this.shape[1]:v|0,typeof u!="number"||u<0?this.shape[2]:u|0,typeof y!="number"||y<0?this.shape[3]:y|0,typeof f!="number"||f<0?this.shape[4]:f|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},E.lo=function(b,v,u,y,f){var P=this.offset,L=0,z=this.shape[0],F=this.shape[1],O=this.shape[2],B=this.shape[3],I=this.shape[4],N=this.stride[0],U=this.stride[1],W=this.stride[2],Q=this.stride[3],le=this.stride[4];return typeof b=="number"&&b>=0&&(L=b|0,P+=N*L,z-=L),typeof v=="number"&&v>=0&&(L=v|0,P+=U*L,F-=L),typeof u=="number"&&u>=0&&(L=u|0,P+=W*L,O-=L),typeof y=="number"&&y>=0&&(L=y|0,P+=Q*L,B-=L),typeof f=="number"&&f>=0&&(L=f|0,P+=le*L,I-=L),new M(this.data,z,F,O,B,I,N,U,W,Q,le,P)},E.step=function(b,v,u,y,f){var P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],O=this.shape[4],B=this.stride[0],I=this.stride[1],N=this.stride[2],U=this.stride[3],W=this.stride[4],Q=this.offset,le=0,se=Math.ceil;return typeof b=="number"&&(le=b|0,le<0?(Q+=B*(P-1),P=se(-P/le)):P=se(P/le),B*=le),typeof v=="number"&&(le=v|0,le<0?(Q+=I*(L-1),L=se(-L/le)):L=se(L/le),I*=le),typeof u=="number"&&(le=u|0,le<0?(Q+=N*(z-1),z=se(-z/le)):z=se(z/le),N*=le),typeof y=="number"&&(le=y|0,le<0?(Q+=U*(F-1),F=se(-F/le)):F=se(F/le),U*=le),typeof f=="number"&&(le=f|0,le<0?(Q+=W*(O-1),O=se(-O/le)):O=se(O/le),W*=le),new M(this.data,P,L,z,F,O,B,I,N,U,W,Q)},E.transpose=function(b,v,u,y,f){b=b===void 0?0:b|0,v=v===void 0?1:v|0,u=u===void 0?2:u|0,y=y===void 0?3:y|0,f=f===void 0?4:f|0;var P=this.shape,L=this.stride;return new M(this.data,P[b],P[v],P[u],P[y],P[f],L[b],L[v],L[u],L[y],L[f],this.offset)},E.pick=function(b,v,u,y,f){var P=[],L=[],z=this.offset;typeof b=="number"&&b>=0?z=z+this.stride[0]*b|0:(P.push(this.shape[0]),L.push(this.stride[0])),typeof v=="number"&&v>=0?z=z+this.stride[1]*v|0:(P.push(this.shape[1]),L.push(this.stride[1])),typeof u=="number"&&u>=0?z=z+this.stride[2]*u|0:(P.push(this.shape[2]),L.push(this.stride[2])),typeof y=="number"&&y>=0?z=z+this.stride[3]*y|0:(P.push(this.shape[3]),L.push(this.stride[3])),typeof f=="number"&&f>=0?z=z+this.stride[4]*f|0:(P.push(this.shape[4]),L.push(this.stride[4]));var F=_[P.length+1];return F(this.data,P,L,z)},function(b,v,u,y){return new M(b,v[0],v[1],v[2],v[3],v[4],u[0],u[1],u[2],u[3],u[4],y)}}};function c(T,l){var _=l===-1?"T":String(l),w=s[_];return l===-1?w(T):l===0?w(T,p[T][0]):w(T,p[T],a)}function h(T){if(o(T))return"buffer";if(i)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var p={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function d(T,l,_,w){if(T===void 0){var u=p.array[0];return u([])}else typeof T=="number"&&(T=[T]);l===void 0&&(l=[T.length]);var M=l.length;if(_===void 0){_=new Array(M);for(var E=M-1,m=1;E>=0;--E)_[E]=m,m*=l[E]}if(w===void 0){w=0;for(var E=0;E>>0;e.exports=a;function a(s,c){if(isNaN(s)||isNaN(c))return NaN;if(s===c)return s;if(s===0)return c<0?-i:i;var h=o.hi(s),p=o.lo(s);return c>s==s>0?p===n?(h+=1,p=0):p+=1:p===0?(p=n,h-=1):p-=1,o.pack(p,h)}},8406:function(e,t){var r=1e-6,o=1e-6;t.vertexNormals=function(i,n,a){for(var s=n.length,c=new Array(s),h=a===void 0?r:a,p=0;ph)for(var P=c[l],L=1/Math.sqrt(v*y),f=0;f<3;++f){var z=(f+1)%3,F=(f+2)%3;P[f]+=L*(u[z]*b[F]-u[F]*b[z])}}for(var p=0;ph)for(var L=1/Math.sqrt(O),f=0;f<3;++f)P[f]*=L;else for(var f=0;f<3;++f)P[f]=0}return c},t.faceNormals=function(i,n,a){for(var s=i.length,c=new Array(s),h=a===void 0?o:a,p=0;ph?E=1/Math.sqrt(E):E=0;for(var l=0;l<3;++l)M[l]*=E;c[p]=M}return c}},4081:function(e){"use strict";e.exports=t;function t(r,o,i,n,a,s,c,h,p,d){var T=o+s+d;if(l>0){var l=Math.sqrt(T+1);r[0]=.5*(c-p)/l,r[1]=.5*(h-n)/l,r[2]=.5*(i-s)/l,r[3]=.5*l}else{var _=Math.max(o,s,d),l=Math.sqrt(2*_-T+1);o>=_?(r[0]=.5*l,r[1]=.5*(a+i)/l,r[2]=.5*(h+n)/l,r[3]=.5*(c-p)/l):s>=_?(r[0]=.5*(i+a)/l,r[1]=.5*l,r[2]=.5*(p+c)/l,r[3]=.5*(h-n)/l):(r[0]=.5*(n+h)/l,r[1]=.5*(c+p)/l,r[2]=.5*l,r[3]=.5*(i-a)/l)}return r}},9977:function(e,t,r){"use strict";e.exports=l;var o=r(9215),i=r(6582),n=r(7399),a=r(7608),s=r(4081);function c(_,w,M){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(M,2))}function h(_,w,M,E){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(M,2)+Math.pow(E,2))}function p(_,w){var M=w[0],E=w[1],m=w[2],b=w[3],v=h(M,E,m,b);v>1e-6?(_[0]=M/v,_[1]=E/v,_[2]=m/v,_[3]=b/v):(_[0]=_[1]=_[2]=0,_[3]=1)}function d(_,w,M){this.radius=o([M]),this.center=o(w),this.rotation=o(_),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=d.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var w=this.computedRotation;p(w,w);var M=this.computedMatrix;n(M,w);var E=this.computedCenter,m=this.computedEye,b=this.computedUp,v=Math.exp(this.computedRadius[0]);m[0]=E[0]+v*M[2],m[1]=E[1]+v*M[6],m[2]=E[2]+v*M[10],b[0]=M[1],b[1]=M[5],b[2]=M[9];for(var u=0;u<3;++u){for(var y=0,f=0;f<3;++f)y+=M[u+4*f]*m[f];M[12+u]=-y}},T.getMatrix=function(_,w){this.recalcMatrix(_);var M=this.computedMatrix;if(w){for(var E=0;E<16;++E)w[E]=M[E];return w}return M},T.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},T.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},T.pan=function(_,w,M,E){w=w||0,M=M||0,E=E||0,this.recalcMatrix(_);var m=this.computedMatrix,b=m[1],v=m[5],u=m[9],y=c(b,v,u);b/=y,v/=y,u/=y;var f=m[0],P=m[4],L=m[8],z=f*b+P*v+L*u;f-=b*z,P-=v*z,L-=u*z;var F=c(f,P,L);f/=F,P/=F,L/=F;var O=m[2],B=m[6],I=m[10],N=O*b+B*v+I*u,U=O*f+B*P+I*L;O-=N*b+U*f,B-=N*v+U*P,I-=N*u+U*L;var W=c(O,B,I);O/=W,B/=W,I/=W;var Q=f*w+b*M,le=P*w+v*M,se=L*w+u*M;this.center.move(_,Q,le,se);var fe=Math.exp(this.computedRadius[0]);fe=Math.max(1e-4,fe+E),this.radius.set(_,Math.log(fe))},T.rotate=function(_,w,M,E){this.recalcMatrix(_),w=w||0,M=M||0;var m=this.computedMatrix,b=m[0],v=m[4],u=m[8],y=m[1],f=m[5],P=m[9],L=m[2],z=m[6],F=m[10],O=w*b+M*y,B=w*v+M*f,I=w*u+M*P,N=-(z*I-F*B),U=-(F*O-L*I),W=-(L*B-z*O),Q=Math.sqrt(Math.max(0,1-Math.pow(N,2)-Math.pow(U,2)-Math.pow(W,2))),le=h(N,U,W,Q);le>1e-6?(N/=le,U/=le,W/=le,Q/=le):(N=U=W=0,Q=1);var se=this.computedRotation,fe=se[0],G=se[1],J=se[2],$=se[3],X=fe*Q+$*N+G*W-J*U,re=G*Q+$*U+J*N-fe*W,ae=J*Q+$*W+fe*U-G*N,j=$*Q-fe*N-G*U-J*W;if(E){N=L,U=z,W=F;var ee=Math.sin(E)/c(N,U,W);N*=ee,U*=ee,W*=ee,Q=Math.cos(w),X=X*Q+j*N+re*W-ae*U,re=re*Q+j*U+ae*N-X*W,ae=ae*Q+j*W+X*U-re*N,j=j*Q-X*N-re*U-ae*W}var ne=h(X,re,ae,j);ne>1e-6?(X/=ne,re/=ne,ae/=ne,j/=ne):(X=re=ae=0,j=1),this.rotation.set(_,X,re,ae,j)},T.lookAt=function(_,w,M,E){this.recalcMatrix(_),M=M||this.computedCenter,w=w||this.computedEye,E=E||this.computedUp;var m=this.computedMatrix;i(m,w,M,E);var b=this.computedRotation;s(b,m[0],m[1],m[2],m[4],m[5],m[6],m[8],m[9],m[10]),p(b,b),this.rotation.set(_,b[0],b[1],b[2],b[3]);for(var v=0,u=0;u<3;++u)v+=Math.pow(M[u]-w[u],2);this.radius.set(_,.5*Math.log(Math.max(v,1e-6))),this.center.set(_,M[0],M[1],M[2])},T.translate=function(_,w,M,E){this.center.move(_,w||0,M||0,E||0)},T.setMatrix=function(_,w){var M=this.computedRotation;s(M,w[0],w[1],w[2],w[4],w[5],w[6],w[8],w[9],w[10]),p(M,M),this.rotation.set(_,M[0],M[1],M[2],M[3]);var E=this.computedMatrix;a(E,w);var m=E[15];if(Math.abs(m)>1e-6){var b=E[12]/m,v=E[13]/m,u=E[14]/m;this.recalcMatrix(_);var y=Math.exp(this.computedRadius[0]);this.center.set(_,b-E[2]*y,v-E[6]*y,u-E[10]*y),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},T.setDistance=function(_,w){w>0&&this.radius.set(_,Math.log(w))},T.setDistanceLimits=function(_,w){_>0?_=Math.log(_):_=-1/0,w>0?w=Math.log(w):w=1/0,w=Math.max(w,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=w},T.getDistanceLimits=function(_){var w=this.radius.bounds;return _?(_[0]=Math.exp(w[0][0]),_[1]=Math.exp(w[1][0]),_):[Math.exp(w[0][0]),Math.exp(w[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(_){var w=this.lastT(),M=_.center;M&&this.center.set(w,M[0],M[1],M[2]);var E=_.rotation;E&&this.rotation.set(w,E[0],E[1],E[2],E[3]);var m=_.distance;m&&m>0&&this.radius.set(w,Math.log(m)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function l(_){_=_||{};var w=_.center||[0,0,0],M=_.rotation||[0,0,0,1],E=_.radius||1;w=[].slice.call(w,0,3),M=[].slice.call(M,0,4),p(M,M);var m=new d(M,w,Math.log(E));return m.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&m.lookAt(0,_.eye,_.center,_.up),m}},1371:function(e,t,r){"use strict";var o=r(3233);e.exports=function(n,a,s){return s=typeof s<"u"?s+"":" ",o(s,a)+n}},3202:function(e){e.exports=function(r,o){o||(o=[0,""]),r=String(r);var i=parseFloat(r,10);return o[0]=i,o[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",o}},3088:function(e,t,r){"use strict";e.exports=i;var o=r(3140);function i(n,a){for(var s=a.length|0,c=n.length,h=[new Array(s),new Array(s)],p=0;p0){P=h[F][y][0],z=F;break}L=P[z^1];for(var O=0;O<2;++O)for(var B=h[O][y],I=0;I0&&(P=N,L=U,z=O)}return f||P&&l(P,z),L}function w(u,y){var f=h[y][u][0],P=[u];l(f,y);for(var L=f[y^1],z=y;;){for(;L!==u;)P.push(L),L=_(P[P.length-2],L,!1);if(h[0][u].length+h[1][u].length===0)break;var F=P[P.length-1],O=u,B=P[1],I=_(F,O,!0);if(o(a[F],a[O],a[B],a[I])<0)break;P.push(u),L=_(F,O)}return P}function M(u,y){return y[1]===y[y.length-1]}for(var p=0;p0;){var b=h[0][p].length,v=w(p,E);M(m,v)?m.push.apply(m,v):(m.length>0&&T.push(m),m=v)}m.length>0&&T.push(m)}return T}},5609:function(e,t,r){"use strict";e.exports=i;var o=r(3134);function i(n,a){for(var s=o(n,a.length),c=new Array(a.length),h=new Array(a.length),p=[],d=0;d0;){var l=p.pop();c[l]=!1;for(var _=s[l],d=0;d<_.length;++d){var w=_[d];--h[w]===0&&p.push(w)}}for(var M=new Array(a.length),E=[],d=0;d0}b=b.filter(v);for(var u=b.length,y=new Array(u),f=new Array(u),m=0;m0;){var ne=ae.pop(),ce=le[ne];c(ce,function(Xe,tt){return Xe-tt});var _e=ce.length,we=j[ne],Oe;if(we===0){var B=b[ne];Oe=[B]}for(var m=0;m<_e;++m){var Ie=ce[m];if(!(j[Ie]>=0)&&(j[Ie]=we^1,ae.push(Ie),we===0)){var B=b[Ie];re(B)||(B.reverse(),Oe.push(B))}}we===0&&ee.push(Oe)}return ee}},5085:function(e,t,r){e.exports=_;var o=r(3250)[3],i=r(4209),n=r(3352),a=r(2478);function s(){return!0}function c(w){return function(M,E){var m=w[M];return m?!!m.queryPoint(E,s):!1}}function h(w){for(var M={},E=0;E0&&M[m]===E[0])b=w[m-1];else return 1;for(var v=1;b;){var u=b.key,y=o(E,u[0],u[1]);if(u[0][0]0)v=-1,b=b.right;else return 0;else if(y>0)b=b.left;else if(y<0)v=1,b=b.right;else return 0}return v}}function d(w){return 1}function T(w){return function(E){return w(E[0],E[1])?0:1}}function l(w,M){return function(m){return w(m[0],m[1])?0:M(m)}}function _(w){for(var M=w.length,E=[],m=[],b=0,v=0;v=d?(u=1,f=d+2*_+M):(u=-_/d,f=_*u+M)):(u=0,w>=0?(y=0,f=M):-w>=l?(y=1,f=l+2*w+M):(y=-w/l,f=w*y+M));else if(y<0)y=0,_>=0?(u=0,f=M):-_>=d?(u=1,f=d+2*_+M):(u=-_/d,f=_*u+M);else{var P=1/v;u*=P,y*=P,f=u*(d*u+T*y+2*_)+y*(T*u+l*y+2*w)+M}else{var L,z,F,O;u<0?(L=T+_,z=l+w,z>L?(F=z-L,O=d-2*T+l,F>=O?(u=1,y=0,f=d+2*_+M):(u=F/O,y=1-u,f=u*(d*u+T*y+2*_)+y*(T*u+l*y+2*w)+M)):(u=0,z<=0?(y=1,f=l+2*w+M):w>=0?(y=0,f=M):(y=-w/l,f=w*y+M))):y<0?(L=T+w,z=d+_,z>L?(F=z-L,O=d-2*T+l,F>=O?(y=1,u=0,f=l+2*w+M):(y=F/O,u=1-y,f=u*(d*u+T*y+2*_)+y*(T*u+l*y+2*w)+M)):(y=0,z<=0?(u=1,f=d+2*_+M):_>=0?(u=0,f=M):(u=-_/d,f=_*u+M))):(F=l+w-T-_,F<=0?(u=0,y=1,f=l+2*w+M):(O=d-2*T+l,F>=O?(u=1,y=0,f=d+2*_+M):(u=F/O,y=1-u,f=u*(d*u+T*y+2*_)+y*(T*u+l*y+2*w)+M)))}for(var B=1-u-y,p=0;p0){var l=s[h-1];if(o(d,l)===0&&n(l)!==T){h-=1;continue}}s[h++]=d}}return s.length=h,s}},3233:function(e){"use strict";var t="",r;e.exports=o;function o(i,n){if(typeof i!="string")throw new TypeError("expected a string");if(n===1)return i;if(n===2)return i+i;var a=i.length*n;if(r!==i||typeof r>"u")r=i,t="";else if(t.length>=a)return t.substr(0,a);for(;a>t.length&&n>1;)n&1&&(t+=i),n>>=1,i+=i;return t+=i,t=t.substr(0,a),t}},3025:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(e){"use strict";e.exports=t;function t(r){for(var o=r.length,i=r[r.length-1],n=o,a=o-2;a>=0;--a){var s=i,c=r[a];i=s+c;var h=i-s,p=c-h;p&&(r[--n]=i,i=p)}for(var d=0,a=n;a0){if(z<=0)return F;O=L+z}else if(L<0){if(z>=0)return F;O=-(L+z)}else return F;var B=h*O;return F>=B||F<=-B?F:w(y,f,P)},function(y,f,P,L){var z=y[0]-L[0],F=f[0]-L[0],O=P[0]-L[0],B=y[1]-L[1],I=f[1]-L[1],N=P[1]-L[1],U=y[2]-L[2],W=f[2]-L[2],Q=P[2]-L[2],le=F*N,se=O*I,fe=O*B,G=z*N,J=z*I,$=F*B,X=U*(le-se)+W*(fe-G)+Q*(J-$),re=(Math.abs(le)+Math.abs(se))*Math.abs(U)+(Math.abs(fe)+Math.abs(G))*Math.abs(W)+(Math.abs(J)+Math.abs($))*Math.abs(Q),ae=p*re;return X>ae||-X>ae?X:M(y,f,P,L)}];function m(u){var y=E[u.length];return y||(y=E[u.length]=_(u.length)),y.apply(void 0,u)}function b(u,y,f,P,L,z,F){return function(B,I,N,U,W){switch(arguments.length){case 0:case 1:return 0;case 2:return P(B,I);case 3:return L(B,I,N);case 4:return z(B,I,N,U);case 5:return F(B,I,N,U,W)}for(var Q=new Array(arguments.length),le=0;le0&&d>0||p<0&&d<0)return!1;var T=o(c,a,s),l=o(h,a,s);return T>0&&l>0||T<0&&l<0?!1:p===0&&d===0&&T===0&&l===0?i(a,s,c,h):!0}},8545:function(e){"use strict";e.exports=r;function t(o,i){var n=o+i,a=n-o,s=n-a,c=i-a,h=o-s,p=h+c;return p?[p,n]:[n]}function r(o,i){var n=o.length|0,a=i.length|0;if(n===1&&a===1)return t(o[0],-i[0]);var s=n+a,c=new Array(s),h=0,p=0,d=0,T=Math.abs,l=o[p],_=T(l),w=-i[d],M=T(w),E,m;_=a?(E=l,p+=1,p=a?(E=l,p+=1,p"u"&&(E=s(_));var m=_.length;if(m===0||E<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=c(w,+M),v=h(_,E),u=p(v,w,b,+M),y=d(v,w.length|0),f=a(E)(_,v.data,y,b),P=T(v),L=[].slice.call(u.data,0,u.shape[0]);return i.free(b),i.free(v.data),i.free(u.data),i.free(y),{cells:f,vertexIds:P,vertexWeights:L}}},1570:function(e){"use strict";e.exports=r;var t=[function(){function i(a,s,c,h){for(var p=Math.min(c,h)|0,d=Math.max(c,h)|0,T=a[2*p],l=a[2*p+1];T>1,w=s[2*_+1];if(w===d)return _;d>1,w=s[2*_+1];if(w===d)return _;d>1,w=s[2*_+1];if(w===d)return _;d>1,w=s[2*_+1];if(w===d)return _;d>1,O=h(y[F],f);O<=0?(O===0&&(z=F),P=F+1):O>0&&(L=F-1)}return z}o=l;function _(y,f){for(var P=new Array(y.length),L=0,z=P.length;L=y.length||h(y[le],F)!==0););}return P}o=_;function w(y,f){if(!f)return _(T(E(y,0)),y,0);for(var P=new Array(f),L=0;L>>N&1&&I.push(z[N]);f.push(I)}return d(f)}o=M;function E(y,f){if(f<0)return[];for(var P=[],L=(1<0)-(n<0)},t.abs=function(n){var a=n>>r-1;return(n^a)-a},t.min=function(n,a){return a^(n^a)&-(n65535)<<4,n>>>=a,s=(n>255)<<3,n>>>=s,a|=s,s=(n>15)<<2,n>>>=s,a|=s,s=(n>3)<<1,n>>>=s,a|=s,a|n>>1},t.log10=function(n){return n>=1e9?9:n>=1e8?8:n>=1e7?7:n>=1e6?6:n>=1e5?5:n>=1e4?4:n>=1e3?3:n>=100?2:n>=10?1:0},t.popCount=function(n){return n=n-(n>>>1&1431655765),n=(n&858993459)+(n>>>2&858993459),(n+(n>>>4)&252645135)*16843009>>>24};function o(n){var a=32;return n&=-n,n&&a--,n&65535&&(a-=16),n&16711935&&(a-=8),n&252645135&&(a-=4),n&858993459&&(a-=2),n&1431655765&&(a-=1),a}t.countTrailingZeros=o,t.nextPow2=function(n){return n+=n===0,--n,n|=n>>>1,n|=n>>>2,n|=n>>>4,n|=n>>>8,n|=n>>>16,n+1},t.prevPow2=function(n){return n|=n>>>1,n|=n>>>2,n|=n>>>4,n|=n>>>8,n|=n>>>16,n-(n>>>1)},t.parity=function(n){return n^=n>>>16,n^=n>>>8,n^=n>>>4,n&=15,27030>>>n&1};var i=new Array(256);(function(n){for(var a=0;a<256;++a){var s=a,c=a,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;n[a]=c<>>8&255]<<16|i[n>>>16&255]<<8|i[n>>>24&255]},t.interleave2=function(n,a){return n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,a&=65535,a=(a|a<<8)&16711935,a=(a|a<<4)&252645135,a=(a|a<<2)&858993459,a=(a|a<<1)&1431655765,n|a<<1},t.deinterleave2=function(n,a){return n=n>>>a&1431655765,n=(n|n>>>1)&858993459,n=(n|n>>>2)&252645135,n=(n|n>>>4)&16711935,n=(n|n>>>16)&65535,n<<16>>16},t.interleave3=function(n,a,s){return n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,a&=1023,a=(a|a<<16)&4278190335,a=(a|a<<8)&251719695,a=(a|a<<4)&3272356035,a=(a|a<<2)&1227133513,n|=a<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,n|s<<2},t.deinterleave3=function(n,a){return n=n>>>a&1227133513,n=(n|n>>>2)&3272356035,n=(n|n>>>4)&251719695,n=(n|n>>>8)&4278190335,n=(n|n>>>16)&1023,n<<22>>22},t.nextCombination=function(n){var a=n|n-1;return a+1|(~a&-~a)-1>>>o(n)+1}},2014:function(e,t,r){"use strict";"use restrict";var o=r(3105),i=r(4623);function n(u){for(var y=0,f=Math.max,P=0,L=u.length;P>1,F=c(u[z],y);F<=0?(F===0&&(L=z),f=z+1):F>0&&(P=z-1)}return L}t.findCell=T;function l(u,y){for(var f=new Array(u.length),P=0,L=f.length;P=u.length||c(u[Q],z)!==0););}return f}t.incidence=l;function _(u,y){if(!y)return l(d(M(u,0)),u,0);for(var f=new Array(y),P=0;P>>I&1&&B.push(L[I]);y.push(B)}return p(y)}t.explode=w;function M(u,y){if(y<0)return[];for(var f=[],P=(1<>1:(G>>1)-1}function P(G){for(var J=y(G);;){var $=J,X=2*G+1,re=2*(G+1),ae=G;if(X0;){var $=f(G);if($>=0){var X=y($);if(J0){var G=B[0];return u(0,U-1),U-=1,P(0),G}return-1}function F(G,J){var $=B[G];return _[$]===J?G:(_[$]=-1/0,L(G),z(),_[$]=J,U+=1,L(U-1))}function O(G){if(!w[G]){w[G]=!0;var J=T[G],$=l[G];T[$]>=0&&(T[$]=J),l[J]>=0&&(l[J]=$),I[J]>=0&&F(I[J],v(J)),I[$]>=0&&F(I[$],v($))}}for(var B=[],I=new Array(p),M=0;M>1;M>=0;--M)P(M);for(;;){var W=z();if(W<0||_[W]>h)break;O(W)}for(var Q=[],M=0;M=0&&$>=0&&J!==$){var X=I[J],re=I[$];X!==re&&fe.push([X,re])}}),i.unique(i.normalize(fe)),{positions:Q,edges:fe}}},1303:function(e,t,r){"use strict";e.exports=n;var o=r(3250);function i(a,s){var c,h;if(s[0][0]s[1][0])c=s[1],h=s[0];else{var p=Math.min(a[0][1],a[1][1]),d=Math.max(a[0][1],a[1][1]),T=Math.min(s[0][1],s[1][1]),l=Math.max(s[0][1],s[1][1]);return dl?p-l:d-l}var _,w;a[0][1]s[1][0])c=s[1],h=s[0];else return i(s,a);var p,d;if(a[0][0]a[1][0])p=a[1],d=a[0];else return-i(a,s);var T=o(c,h,d),l=o(c,h,p);if(T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;if(T=o(d,p,h),l=o(d,p,c),T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;return h[0]-d[0]}},4209:function(e,t,r){"use strict";e.exports=l;var o=r(2478),i=r(3840),n=r(3250),a=r(1303);function s(_,w,M){this.slabs=_,this.coordinates=w,this.horizontal=M}var c=s.prototype;function h(_,w){return _.y-w}function p(_,w){for(var M=null;_;){var E=_.key,m,b;E[0][0]0)if(w[0]!==E[1][0])M=_,_=_.right;else{var u=p(_.right,w);if(u)return u;_=_.left}else{if(w[0]!==E[1][0])return _;var u=p(_.right,w);if(u)return u;_=_.left}}return M}c.castUp=function(_){var w=o.le(this.coordinates,_[0]);if(w<0)return-1;var M=this.slabs[w],E=p(this.slabs[w],_),m=-1;if(E&&(m=E.value),this.coordinates[w]===_[0]){var b=null;if(E&&(b=E.key),w>0){var v=p(this.slabs[w-1],_);v&&(b?a(v.key,b)>0&&(b=v.key,m=v.value):(m=v.value,b=v.key))}var u=this.horizontal[w];if(u.length>0){var y=o.ge(u,_[1],h);if(y=u.length)return m;f=u[y]}}if(f.start)if(b){var P=n(b[0],b[1],[_[0],f.y]);b[0][0]>b[1][0]&&(P=-P),P>0&&(m=f.index)}else m=f.index;else f.y!==_[1]&&(m=f.index)}}}return m};function d(_,w,M,E){this.y=_,this.index=w,this.start=M,this.closed=E}function T(_,w,M,E){this.x=_,this.segment=w,this.create=M,this.index=E}function l(_){for(var w=_.length,M=2*w,E=new Array(M),m=0;m1&&(w=1);for(var M=1-w,E=p.length,m=new Array(E),b=0;b0||_>0&&m<0){var b=a(w,m,M,_);T.push(b),l.push(b.slice())}m<0?l.push(M.slice()):m>0?T.push(M.slice()):(T.push(M.slice()),l.push(M.slice())),_=m}return{positive:T,negative:l}}function c(p,d){for(var T=[],l=n(p[p.length-1],d),_=p[p.length-1],w=p[0],M=0;M0||l>0&&E<0)&&T.push(a(_,E,w,l)),E>=0&&T.push(w.slice()),l=E}return T}function h(p,d){for(var T=[],l=n(p[p.length-1],d),_=p[p.length-1],w=p[0],M=0;M0||l>0&&E<0)&&T.push(a(_,E,w,l)),E<=0&&T.push(w.slice()),l=E}return T}},3387:function(e,t,r){var o;(function(){"use strict";var i={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function n(p){return s(h(p),arguments)}function a(p,d){return n.apply(null,[p].concat(d||[]))}function s(p,d){var T=1,l=p.length,_,w="",M,E,m,b,v,u,y,f;for(M=0;M=0),m.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,m.width?parseInt(m.width):0);break;case"e":_=m.precision?parseFloat(_).toExponential(m.precision):parseFloat(_).toExponential();break;case"f":_=m.precision?parseFloat(_).toFixed(m.precision):parseFloat(_);break;case"g":_=m.precision?String(Number(_.toPrecision(m.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=m.precision?_.substring(0,m.precision):_;break;case"t":_=String(!!_),_=m.precision?_.substring(0,m.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=m.precision?_.substring(0,m.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=m.precision?_.substring(0,m.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}i.json.test(m.type)?w+=_:(i.number.test(m.type)&&(!y||m.sign)?(f=y?"+":"-",_=_.toString().replace(i.sign,"")):f="",v=m.pad_char?m.pad_char==="0"?"0":m.pad_char.charAt(1):" ",u=m.width-(f+_).length,b=m.width&&u>0?v.repeat(u):"",w+=m.align?f+_+b:v==="0"?f+b+_:b+f+_)}return w}var c=Object.create(null);function h(p){if(c[p])return c[p];for(var d=p,T,l=[],_=0;d;){if((T=i.text.exec(d))!==null)l.push(T[0]);else if((T=i.modulo.exec(d))!==null)l.push("%");else if((T=i.placeholder.exec(d))!==null){if(T[2]){_|=1;var w=[],M=T[2],E=[];if((E=i.key.exec(M))!==null)for(w.push(E[1]);(M=M.substring(E[0].length))!=="";)if((E=i.key_access.exec(M))!==null)w.push(E[1]);else if((E=i.index_access.exec(M))!==null)w.push(E[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=w}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");l.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");d=d.substring(T[0].length)}return c[p]=l}t.sprintf=n,t.vsprintf=a,typeof window<"u"&&(window.sprintf=n,window.vsprintf=a,o=function(){return{sprintf:n,vsprintf:a}}.call(t,r,t,e),o!==void 0&&(e.exports=o))})()},3711:function(e,t,r){"use strict";e.exports=h;var o=r(2640),i=r(781),n={"2d":function(p,d,T){var l=p({order:d,scalarArguments:3,getters:T==="generic"?[0]:void 0,phase:function(w,M,E,m){return w>m|0},vertex:function(w,M,E,m,b,v,u,y,f,P,L,z,F){var O=(u<<0)+(y<<1)+(f<<2)+(P<<3)|0;if(!(O===0||O===15))switch(O){case 0:L.push([w-.5,M-.5]);break;case 1:L.push([w-.25-.25*(m+E-2*F)/(E-m),M-.25-.25*(b+E-2*F)/(E-b)]);break;case 2:L.push([w-.75-.25*(-m-E+2*F)/(m-E),M-.25-.25*(v+m-2*F)/(m-v)]);break;case 3:L.push([w-.5,M-.5-.5*(b+E+v+m-4*F)/(E-b+m-v)]);break;case 4:L.push([w-.25-.25*(v+b-2*F)/(b-v),M-.75-.25*(-b-E+2*F)/(b-E)]);break;case 5:L.push([w-.5-.5*(m+E+v+b-4*F)/(E-m+b-v),M-.5]);break;case 6:L.push([w-.5-.25*(-m-E+v+b)/(m-E+b-v),M-.5-.25*(-b-E+v+m)/(b-E+m-v)]);break;case 7:L.push([w-.75-.25*(v+b-2*F)/(b-v),M-.75-.25*(v+m-2*F)/(m-v)]);break;case 8:L.push([w-.75-.25*(-v-b+2*F)/(v-b),M-.75-.25*(-v-m+2*F)/(v-m)]);break;case 9:L.push([w-.5-.25*(m+E+-v-b)/(E-m+v-b),M-.5-.25*(b+E+-v-m)/(E-b+v-m)]);break;case 10:L.push([w-.5-.5*(-m-E+-v-b+4*F)/(m-E+v-b),M-.5]);break;case 11:L.push([w-.25-.25*(-v-b+2*F)/(v-b),M-.75-.25*(b+E-2*F)/(E-b)]);break;case 12:L.push([w-.5,M-.5-.5*(-b-E+-v-m+4*F)/(b-E+v-m)]);break;case 13:L.push([w-.75-.25*(m+E-2*F)/(E-m),M-.25-.25*(-v-m+2*F)/(v-m)]);break;case 14:L.push([w-.25-.25*(-m-E+2*F)/(m-E),M-.25-.25*(-b-E+2*F)/(b-E)]);break;case 15:L.push([w-.5,M-.5]);break}},cell:function(w,M,E,m,b,v,u,y,f){b?y.push([w,M]):y.push([M,w])}});return function(_,w){var M=[],E=[];return l(_,M,E,w),{positions:M,cells:E}}}};function a(p,d){var T=p.length+"d",l=n[T];if(l)return l(o,p,d)}function s(p,d){for(var T=i(p,d),l=T.length,_=new Array(l),w=new Array(l),M=0;MMath.max(m,b)?v[2]=1:m>Math.max(E,b)?v[0]=1:v[1]=1;for(var u=0,y=0,f=0;f<3;++f)u+=M[f]*M[f],y+=v[f]*M[f];for(var f=0;f<3;++f)v[f]-=y/u*M[f];return s(v,v),v}function T(M,E,m,b,v,u,y,f){this.center=o(m),this.up=o(b),this.right=o(v),this.radius=o([u]),this.angle=o([y,f]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(M,E),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var P=0;P<16;++P)this.computedMatrix[P]=.5;this.recalcMatrix(0)}var l=T.prototype;l.setDistanceLimits=function(M,E){M>0?M=Math.log(M):M=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,M),this.radius.bounds[0][0]=M,this.radius.bounds[1][0]=E},l.getDistanceLimits=function(M){var E=this.radius.bounds[0];return M?(M[0]=Math.exp(E[0][0]),M[1]=Math.exp(E[1][0]),M):[Math.exp(E[0][0]),Math.exp(E[1][0])]},l.recalcMatrix=function(M){this.center.curve(M),this.up.curve(M),this.right.curve(M),this.radius.curve(M),this.angle.curve(M);for(var E=this.computedUp,m=this.computedRight,b=0,v=0,u=0;u<3;++u)v+=E[u]*m[u],b+=E[u]*E[u];for(var y=Math.sqrt(b),f=0,u=0;u<3;++u)m[u]-=E[u]*v/b,f+=m[u]*m[u],E[u]/=y;for(var P=Math.sqrt(f),u=0;u<3;++u)m[u]/=P;var L=this.computedToward;a(L,E,m),s(L,L);for(var z=Math.exp(this.computedRadius[0]),F=this.computedAngle[0],O=this.computedAngle[1],B=Math.cos(F),I=Math.sin(F),N=Math.cos(O),U=Math.sin(O),W=this.computedCenter,Q=B*N,le=I*N,se=U,fe=-B*U,G=-I*U,J=N,$=this.computedEye,X=this.computedMatrix,u=0;u<3;++u){var re=Q*m[u]+le*L[u]+se*E[u];X[4*u+1]=fe*m[u]+G*L[u]+J*E[u],X[4*u+2]=re,X[4*u+3]=0}var ae=X[1],j=X[5],ee=X[9],ne=X[2],ce=X[6],_e=X[10],we=j*_e-ee*ce,Oe=ee*ne-ae*_e,Ie=ae*ce-j*ne,Xe=h(we,Oe,Ie);we/=Xe,Oe/=Xe,Ie/=Xe,X[0]=we,X[4]=Oe,X[8]=Ie;for(var u=0;u<3;++u)$[u]=W[u]+X[2+4*u]*z;for(var u=0;u<3;++u){for(var f=0,tt=0;tt<3;++tt)f+=X[u+4*tt]*$[tt];X[12+u]=-f}X[15]=1},l.getMatrix=function(M,E){this.recalcMatrix(M);var m=this.computedMatrix;if(E){for(var b=0;b<16;++b)E[b]=m[b];return E}return m};var _=[0,0,0];l.rotate=function(M,E,m,b){if(this.angle.move(M,E,m),b){this.recalcMatrix(M);var v=this.computedMatrix;_[0]=v[2],_[1]=v[6],_[2]=v[10];for(var u=this.computedUp,y=this.computedRight,f=this.computedToward,P=0;P<3;++P)v[4*P]=u[P],v[4*P+1]=y[P],v[4*P+2]=f[P];n(v,v,b,_);for(var P=0;P<3;++P)u[P]=v[4*P],y[P]=v[4*P+1];this.up.set(M,u[0],u[1],u[2]),this.right.set(M,y[0],y[1],y[2])}},l.pan=function(M,E,m,b){E=E||0,m=m||0,b=b||0,this.recalcMatrix(M);var v=this.computedMatrix,u=Math.exp(this.computedRadius[0]),y=v[1],f=v[5],P=v[9],L=h(y,f,P);y/=L,f/=L,P/=L;var z=v[0],F=v[4],O=v[8],B=z*y+F*f+O*P;z-=y*B,F-=f*B,O-=P*B;var I=h(z,F,O);z/=I,F/=I,O/=I;var N=z*E+y*m,U=F*E+f*m,W=O*E+P*m;this.center.move(M,N,U,W);var Q=Math.exp(this.computedRadius[0]);Q=Math.max(1e-4,Q+b),this.radius.set(M,Math.log(Q))},l.translate=function(M,E,m,b){this.center.move(M,E||0,m||0,b||0)},l.setMatrix=function(M,E,m,b){var v=1;typeof m=="number"&&(v=m|0),(v<0||v>3)&&(v=1);var u=(v+2)%3,y=(v+1)%3;E||(this.recalcMatrix(M),E=this.computedMatrix);var f=E[v],P=E[v+4],L=E[v+8];if(b){var F=Math.abs(f),O=Math.abs(P),B=Math.abs(L),I=Math.max(F,O,B);F===I?(f=f<0?-1:1,P=L=0):B===I?(L=L<0?-1:1,f=P=0):(P=P<0?-1:1,f=L=0)}else{var z=h(f,P,L);f/=z,P/=z,L/=z}var N=E[u],U=E[u+4],W=E[u+8],Q=N*f+U*P+W*L;N-=f*Q,U-=P*Q,W-=L*Q;var le=h(N,U,W);N/=le,U/=le,W/=le;var se=P*W-L*U,fe=L*N-f*W,G=f*U-P*N,J=h(se,fe,G);se/=J,fe/=J,G/=J,this.center.jump(M,pe,ue,ze),this.radius.idle(M),this.up.jump(M,f,P,L),this.right.jump(M,N,U,W);var $,X;if(v===2){var re=E[1],ae=E[5],j=E[9],ee=re*N+ae*U+j*W,ne=re*se+ae*fe+j*G;Oe<0?$=-Math.PI/2:$=Math.PI/2,X=Math.atan2(ne,ee)}else{var ce=E[2],_e=E[6],we=E[10],Oe=ce*f+_e*P+we*L,Ie=ce*N+_e*U+we*W,Xe=ce*se+_e*fe+we*G;$=Math.asin(p(Oe)),X=Math.atan2(Xe,Ie)}this.angle.jump(M,X,$),this.recalcMatrix(M);var tt=E[2],rt=E[6],Je=E[10],ot=this.computedMatrix;i(ot,E);var Me=ot[15],pe=ot[12]/Me,ue=ot[13]/Me,ze=ot[14]/Me,Qe=Math.exp(this.computedRadius[0]);this.center.jump(M,pe-tt*Qe,ue-rt*Qe,ze-Je*Qe)},l.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},l.idle=function(M){this.center.idle(M),this.up.idle(M),this.right.idle(M),this.radius.idle(M),this.angle.idle(M)},l.flush=function(M){this.center.flush(M),this.up.flush(M),this.right.flush(M),this.radius.flush(M),this.angle.flush(M)},l.setDistance=function(M,E){E>0&&this.radius.set(M,Math.log(E))},l.lookAt=function(M,E,m,b){this.recalcMatrix(M),E=E||this.computedEye,m=m||this.computedCenter,b=b||this.computedUp;var v=b[0],u=b[1],y=b[2],f=h(v,u,y);if(!(f<1e-6)){v/=f,u/=f,y/=f;var P=E[0]-m[0],L=E[1]-m[1],z=E[2]-m[2],F=h(P,L,z);if(!(F<1e-6)){P/=F,L/=F,z/=F;var O=this.computedRight,B=O[0],I=O[1],N=O[2],U=v*B+u*I+y*N;B-=U*v,I-=U*u,N-=U*y;var W=h(B,I,N);if(!(W<.01&&(B=u*z-y*L,I=y*P-v*z,N=v*L-u*P,W=h(B,I,N),W<1e-6))){B/=W,I/=W,N/=W,this.up.set(M,v,u,y),this.right.set(M,B,I,N),this.center.set(M,m[0],m[1],m[2]),this.radius.set(M,Math.log(F));var Q=u*N-y*I,le=y*B-v*N,se=v*I-u*B,fe=h(Q,le,se);Q/=fe,le/=fe,se/=fe;var G=v*P+u*L+y*z,J=B*P+I*L+N*z,$=Q*P+le*L+se*z,X=Math.asin(p(G)),re=Math.atan2($,J),ae=this.angle._state,j=ae[ae.length-1],ee=ae[ae.length-2];j=j%(2*Math.PI);var ne=Math.abs(j+2*Math.PI-re),ce=Math.abs(j-re),_e=Math.abs(j-2*Math.PI-re);ne0?N.pop():new ArrayBuffer(B)}t.mallocArrayBuffer=_;function w(O){return new Uint8Array(_(O),0,O)}t.mallocUint8=w;function M(O){return new Uint16Array(_(2*O),0,O)}t.mallocUint16=M;function E(O){return new Uint32Array(_(4*O),0,O)}t.mallocUint32=E;function m(O){return new Int8Array(_(O),0,O)}t.mallocInt8=m;function b(O){return new Int16Array(_(2*O),0,O)}t.mallocInt16=b;function v(O){return new Int32Array(_(4*O),0,O)}t.mallocInt32=v;function u(O){return new Float32Array(_(4*O),0,O)}t.mallocFloat32=t.mallocFloat=u;function y(O){return new Float64Array(_(8*O),0,O)}t.mallocFloat64=t.mallocDouble=y;function f(O){return a?new Uint8ClampedArray(_(O),0,O):w(O)}t.mallocUint8Clamped=f;function P(O){return s?new BigUint64Array(_(8*O),0,O):null}t.mallocBigUint64=P;function L(O){return c?new BigInt64Array(_(8*O),0,O):null}t.mallocBigInt64=L;function z(O){return new DataView(_(O),0,O)}t.mallocDataView=z;function F(O){O=o.nextPow2(O);var B=o.log2(O),I=d[B];return I.length>0?I.pop():new n(O)}t.mallocBuffer=F,t.clearCache=function(){for(var B=0;B<32;++B)h.UINT8[B].length=0,h.UINT16[B].length=0,h.UINT32[B].length=0,h.INT8[B].length=0,h.INT16[B].length=0,h.INT32[B].length=0,h.FLOAT[B].length=0,h.DOUBLE[B].length=0,h.BIGUINT64[B].length=0,h.BIGINT64[B].length=0,h.UINT8C[B].length=0,p[B].length=0,d[B].length=0}},1755:function(e){"use strict";"use restrict";e.exports=t;function t(o){this.roots=new Array(o),this.ranks=new Array(o);for(var i=0;i",N="",U=I.length,W=N.length,Q=F[0]===_||F[0]===E,le=0,se=-W;le>-1&&(le=O.indexOf(I,le),!(le===-1||(se=O.indexOf(N,le+U),se===-1)||se<=le));){for(var fe=le;fe=se)B[fe]=null,O=O.substr(0,fe)+" "+O.substr(fe+1);else if(B[fe]!==null){var G=B[fe].indexOf(F[0]);G===-1?B[fe]+=F:Q&&(B[fe]=B[fe].substr(0,G+1)+(1+parseInt(B[fe][G+1]))+B[fe].substr(G+2))}var J=le+U,$=O.substr(J,se-J),X=$.indexOf(I);X!==-1?le=X:le=se+W}return B}function v(z,F,O){for(var B=F.textAlign||"start",I=F.textBaseline||"alphabetic",N=[1<<30,1<<30],U=[0,0],W=z.length,Q=0;Q/g,` +`):O=O.replace(/\/g," ");var U="",W=[];for(j=0;j-1?parseInt(ue[1+it]):0,Mt=$e>-1?parseInt(ze[1+$e]):0;kt!==Mt&&(Qe=Qe.replace(Ie(),"?px "),ce*=Math.pow(.75,Mt-kt),Qe=Qe.replace("?px ",Ie())),ne+=.25*G*(Mt-kt)}if(N.superscripts===!0){var Bt=ue.indexOf(_),jt=ze.indexOf(_),cr=Bt>-1?parseInt(ue[1+Bt]):0,nr=jt>-1?parseInt(ze[1+jt]):0;cr!==nr&&(Qe=Qe.replace(Ie(),"?px "),ce*=Math.pow(.75,nr-cr),Qe=Qe.replace("?px ",Ie())),ne-=.25*G*(nr-cr)}if(N.bolds===!0){var Lr=ue.indexOf(p)>-1,mr=ze.indexOf(p)>-1;!Lr&&mr&&(xr?Qe=Qe.replace("italic ","italic bold "):Qe="bold "+Qe),Lr&&!mr&&(Qe=Qe.replace("bold ",""))}if(N.italics===!0){var xr=ue.indexOf(T)>-1,mt=ze.indexOf(T)>-1;!xr&&mt&&(Qe="italic "+Qe),xr&&!mt&&(Qe=Qe.replace("italic ",""))}F.font=Qe}for(ae=0;ae0&&(I=B.size),B.lineSpacing&&B.lineSpacing>0&&(N=B.lineSpacing),B.styletags&&B.styletags.breaklines&&(U.breaklines=!!B.styletags.breaklines),B.styletags&&B.styletags.bolds&&(U.bolds=!!B.styletags.bolds),B.styletags&&B.styletags.italics&&(U.italics=!!B.styletags.italics),B.styletags&&B.styletags.subscripts&&(U.subscripts=!!B.styletags.subscripts),B.styletags&&B.styletags.superscripts&&(U.superscripts=!!B.styletags.superscripts)),O.font=[B.fontStyle,B.fontVariant,B.fontWeight,I+"px",B.font].filter(function(Q){return Q}).join(" "),O.textAlign="start",O.textBaseline="alphabetic",O.direction="ltr";var W=u(F,O,z,I,N,U);return P(W,B,I)}},1538:function(e){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function r(f){f.permitHostObjects___&&f.permitHostObjects___(r)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=r);var o=!1;if(typeof WeakMap=="function"){var i=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var n=new i,a=Object.freeze({});if(n.set(a,1),n.get(a)!==1)o=!0;else{e.exports=WeakMap;return}}}var s=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames,h=Object.defineProperty,p=Object.isExtensible,d="weakmap:",T=d+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var l=new ArrayBuffer(25),_=new Uint8Array(l);crypto.getRandomValues(_),T=d+"rand:"+Array.prototype.map.call(_,function(f){return(f%36).toString(36)}).join("")+"___"}function w(f){return!(f.substr(0,d.length)==d&&f.substr(f.length-3)==="___")}if(h(Object,"getOwnPropertyNames",{value:function(P){return c(P).filter(w)}}),"getPropertyNames"in Object){var M=Object.getPropertyNames;h(Object,"getPropertyNames",{value:function(P){return M(P).filter(w)}})}function E(f){if(f!==Object(f))throw new TypeError("Not an object: "+f);var P=f[T];if(P&&P.key===f)return P;if(p(f)){P={key:f};try{return h(f,T,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}(function(){var f=Object.freeze;h(Object,"freeze",{value:function(F){return E(F),f(F)}});var P=Object.seal;h(Object,"seal",{value:function(F){return E(F),P(F)}});var L=Object.preventExtensions;h(Object,"preventExtensions",{value:function(F){return E(F),L(F)}})})();function m(f){return f.prototype=null,Object.freeze(f)}var b=!1;function v(){!b&&typeof console<"u"&&(b=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var u=0,y=function(){this instanceof y||v();var f=[],P=[],L=u++;function z(I,N){var U,W=E(I);return W?L in W?W[L]:N:(U=f.indexOf(I),U>=0?P[U]:N)}function F(I){var N=E(I);return N?L in N:f.indexOf(I)>=0}function O(I,N){var U,W=E(I);return W?W[L]=N:(U=f.indexOf(I),U>=0?P[U]=N:(U=f.length,P[U]=N,f[U]=I)),this}function B(I){var N=E(I),U,W;return N?L in N&&delete N[L]:(U=f.indexOf(I),U<0?!1:(W=f.length-1,f[U]=void 0,P[U]=P[W],f[U]=f[W],f.length=W,P.length=W,!0))}return Object.create(y.prototype,{get___:{value:m(z)},has___:{value:m(F)},set___:{value:m(O)},delete___:{value:m(B)}})};y.prototype=Object.create(Object.prototype,{get:{value:function(P,L){return this.get___(P,L)},writable:!0,configurable:!0},has:{value:function(P){return this.has___(P)},writable:!0,configurable:!0},set:{value:function(P,L){return this.set___(P,L)},writable:!0,configurable:!0},delete:{value:function(P){return this.delete___(P)},writable:!0,configurable:!0}}),typeof i=="function"?function(){o&&typeof Proxy<"u"&&(Proxy=void 0);function f(){this instanceof y||v();var P=new i,L=void 0,z=!1;function F(N,U){return L?P.has(N)?P.get(N):L.get___(N,U):P.get(N,U)}function O(N){return P.has(N)||(L?L.has___(N):!1)}var B;o?B=function(N,U){return P.set(N,U),P.has(N)||(L||(L=new y),L.set(N,U)),this}:B=function(N,U){if(z)try{P.set(N,U)}catch{L||(L=new y),L.set___(N,U)}else P.set(N,U);return this};function I(N){var U=!!P.delete(N);return L&&L.delete___(N)||U}return Object.create(y.prototype,{get___:{value:m(F)},has___:{value:m(O)},set___:{value:m(B)},delete___:{value:m(I)},permitHostObjects___:{value:m(function(N){if(N===r)z=!0;else throw new Error("bogus call to permitHostObjects___")})}})}f.prototype=y.prototype,e.exports=f,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),e.exports=y)})()},236:function(e,t,r){var o=r(8284);e.exports=i;function i(){var n={};return function(a){if((typeof a!="object"||a===null)&&typeof a!="function")throw new Error("Weakmap-shim: Key must be object");var s=a.valueOf(n);return s&&s.identity===n?s:o(a,n)}}},8284:function(e){e.exports=t;function t(r,o){var i={identity:o},n=r.valueOf;return Object.defineProperty(r,"valueOf",{value:function(a){return a!==o?n.apply(this,arguments):i},writable:!0}),i}},606:function(e,t,r){var o=r(236);e.exports=i;function i(){var n=o();return{get:function(a,s){var c=n(a);return c.hasOwnProperty("value")?c.value:s},set:function(a,s){return n(a).value=s,this},has:function(a){return"value"in n(a)},delete:function(a){return delete n(a).value}}}},3349:function(e){"use strict";function t(){return function(s,c,h,p,d,T){var l=s[0],_=h[0],w=[0],M=_;p|=0;var E=0,m=_;for(E=0;E=0!=v>=0&&d.push(w[0]+.5+.5*(b+v)/(b-v))}p+=m,++w[0]}}}function r(){return t()}var o=r;function i(s){var c={};return function(p,d,T){var l=p.dtype,_=p.order,w=[l,_.join()].join(),M=c[w];return M||(c[w]=M=s([l,_])),M(p.shape.slice(0),p.data,p.stride,p.offset|0,d,T)}}function n(s){return i(o.bind(void 0,s))}function a(s){return n({funcName:s.funcName})}e.exports=a({funcName:"zeroCrossings"})},781:function(e,t,r){"use strict";e.exports=i;var o=r(3349);function i(n,a){var s=[];return a=+a||0,o(n.hi(n.shape[0]-1),s,a),s}},7790:function(){}},x={};function A(e){var t=x[e];if(t!==void 0)return t.exports;var r=x[e]={id:e,loaded:!1,exports:{}};return g[e].call(r.exports,r,r.exports,A),r.loaded=!0,r.exports}(function(){A.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){A.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}();var S=A(1964);H.exports=S})()}}),KT=Le({"node_modules/color-name/index.js"(Z,H){"use strict";H.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),JP=Le({"node_modules/color-normalize/node_modules/color-parse/index.js"(Z,H){"use strict";var g=KT();H.exports=A;var x={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function A(S){var e,t=[],r=1,o;if(typeof S=="string")if(S=S.toLowerCase(),g[S])t=g[S].slice(),o="rgb";else if(S==="transparent")r=0,o="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(S)){var i=S.slice(1),n=i.length,a=n<=4;r=1,a?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],n===4&&(r=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],n===8&&(r=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),o="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(S)){var s=e[1],c=s==="rgb",i=s.replace(/a$/,"");o=i;var n=i==="cmyk"?4:i==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(d,T){if(/%$/.test(d))return T===n?parseFloat(d)/100:i==="rgb"?parseFloat(d)*255/100:parseFloat(d);if(i[T]==="h"){if(/deg$/.test(d))return parseFloat(d);if(x[d]!==void 0)return x[d]}return parseFloat(d)}),s===i&&t.push(1),r=c||t[n]===void 0?1:t[n],t=t.slice(0,n)}else S.length>10&&/[0-9](?:\s|\/)/.test(S)&&(t=S.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),o=S.match(/([a-z])/ig).join("").toLowerCase());else isNaN(S)?Array.isArray(S)||S.length?(t=[S[0],S[1],S[2]],o="rgb",r=S.length===4?S[3]:1):S instanceof Object&&(S.r!=null||S.red!=null||S.R!=null?(o="rgb",t=[S.r||S.red||S.R||0,S.g||S.green||S.G||0,S.b||S.blue||S.B||0]):(o="hsl",t=[S.h||S.hue||S.H||0,S.s||S.saturation||S.S||0,S.l||S.lightness||S.L||S.b||S.brightness]),r=S.a||S.alpha||S.opacity||1,S.opacity!=null&&(r/=100)):(o="rgb",t=[S>>>16,(S&65280)>>>8,S&255]);return{space:o,values:t,alpha:r}}}}),QP=Le({"node_modules/color-normalize/node_modules/color-rgba/index.js"(Z,H){"use strict";var g=JP();H.exports=function(S){Array.isArray(S)&&S.raw&&(S=String.raw.apply(null,arguments));var e,t,r,o=g(S);if(!o.space)return[];var i=[0,0,0],n=o.space[0]==="h"?[360,100,100]:[255,255,255];return e=Array(3),e[0]=Math.min(Math.max(o.values[0],i[0]),n[0]),e[1]=Math.min(Math.max(o.values[1],i[1]),n[1]),e[2]=Math.min(Math.max(o.values[2],i[2]),n[2]),o.space[0]==="h"&&(e=x(e)),e.push(Math.min(Math.max(o.alpha,0),1)),e};function x(A){var S=A[0]/360,e=A[1]/100,t=A[2]/100,r,o,i,n,a,s=0;if(e===0)return a=t*255,[a,a,a];for(o=t<.5?t*(1+e):t+e-t*e,r=2*t-o,n=[0,0,0];s<3;)i=S+1/3*-(s-1),i<0?i++:i>1&&i--,a=6*i<1?r+(o-r)*6*i:2*i<1?o:3*i<2?r+(o-r)*(2/3-i)*6:r,n[s++]=a*255;return n}}}),Ky=Le({"node_modules/clamp/index.js"(Z,H){H.exports=g;function g(x,A,S){return AS?S:x:xA?A:x}}}),eb=Le({"node_modules/dtype/index.js"(Z,H){H.exports=function(g){switch(g){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}}}),rm=Le({"node_modules/color-normalize/index.js"(Z,H){"use strict";var g=QP(),x=Ky(),A=eb();H.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var o=A(r),i=new o(4),n=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=g(t),t[0]/=255,t[1]/=255,t[2]/=255),S(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,n&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(n?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=x(Math.floor(t[0]*255),0,255),i[1]=x(Math.floor(t[1]*255),0,255),i[2]=x(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:x(Math.floor(t[3]*255),0,255)),i)};function S(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}}}),vp=Le({"src/lib/str2rgbarray.js"(Z,H){"use strict";var g=rm();function x(A){return A?g(A):[0,0,0,1]}H.exports=x}}),pp=Le({"src/lib/gl_format_color.js"(Z,H){"use strict";var g=zn(),x=Vl(),A=rm(),S=Cu(),e=gf().defaultLine,t=cl().isArrayOrTypedArray,r=A(e),o=1;function i(h,p){var d=h;return d[3]*=p,d}function n(h){if(g(h))return r;var p=A(h);return p.length?p:r}function a(h){return g(h)?h:o}function s(h,p,d){var T=h.color;T&&T._inputArray&&(T=T._inputArray);var l=t(T),_=t(p),w=S.extractOpts(h),M=[],E,m,b,v,u;if(w.colorscale!==void 0?E=S.makeColorScaleFuncFromTrace(h):E=n,l?m=function(f,P){return f[P]===void 0?r:A(E(f[P]))}:m=n,_?b=function(f,P){return f[P]===void 0?o:a(f[P])}:b=a,l||_)for(var y=0;y0){var d=o.c2l(h);o._lowerLogErrorBound||(o._lowerLogErrorBound=d),o._lowerErrorBound=Math.min(o._lowerLogErrorBound,d)}}else n[a]=[-s[0]*r,s[1]*r]}return n}function A(e){for(var t=0;t-1?-1:P.indexOf("right")>-1?1:0}function w(P){return P==null?0:P.indexOf("top")>-1?-1:P.indexOf("bottom")>-1?1:0}function M(P){var L=0,z=0,F=[L,z];if(Array.isArray(P))for(var O=0;O=0){var W=T(N.position,N.delaunayColor,N.delaunayAxis);W.opacity=P.opacity,this.delaunayMesh?this.delaunayMesh.update(W):(W.gl=L,this.delaunayMesh=S(W),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},d.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function f(P,L){var z=new p(P,L.uid);return z.update(L),z}H.exports=f}}),JT=Le({"src/traces/scatter3d/attributes.js"(Z,H){"use strict";var g=zc(),x=bl(),A=uu(),S=Rc().axisHoverFormat,e=Fs().hovertemplateAttrs,t=Fs().texttemplateAttrs,r=Sl(),o=$T(),i=tb(),n=ho().extendFlat,a=qu().overrideAll,s=Up(),c=g.line,h=g.marker,p=h.line,d=n({width:c.width,dash:{valType:"enumerated",values:s(o),dflt:"solid"}},A("line"));function T(_){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var l=H.exports=a({x:g.x,y:g.y,z:{valType:"data_array"},text:n({},g.text,{}),texttemplate:t({},{}),hovertext:n({},g.hovertext,{}),hovertemplate:e(),xhoverformat:S("x"),yhoverformat:S("y"),zhoverformat:S("z"),mode:n({},g.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:T("x"),y:T("y"),z:T("z")},connectgaps:g.connectgaps,line:d,marker:n({symbol:{valType:"enumerated",values:s(i),dflt:"circle",arrayOk:!0},size:n({},h.size,{dflt:8}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:n({},h.opacity,{arrayOk:!1}),colorbar:h.colorbar,line:n({width:n({},p.width,{arrayOk:!1})},A("marker.line"))},A("marker")),textposition:n({},g.textposition,{dflt:"top center"}),textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:r.opacity,hoverinfo:n({},r.hoverinfo)},"calc","nested");l.x.editType=l.y.editType=l.z.editType="calc+clearAxisTypes"}}),rI=Le({"src/traces/scatter3d/defaults.js"(Z,H){"use strict";var g=so(),x=ni(),A=gu(),S=Od(),e=Wd(),t=Xd(),r=JT();H.exports=function(n,a,s,c){function h(E,m){return x.coerce(n,a,r,E,m)}var p=o(n,a,h,c);if(!p){a.visible=!1;return}h("text"),h("hovertext"),h("hovertemplate"),h("xhoverformat"),h("yhoverformat"),h("zhoverformat"),h("mode"),A.hasMarkers(a)&&S(n,a,s,c,h,{noSelect:!0,noAngle:!0}),A.hasLines(a)&&(h("connectgaps"),e(n,a,s,c,h)),A.hasText(a)&&(h("texttemplate"),t(n,a,c,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var d=(a.line||{}).color,T=(a.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",d||T);for(var l=["x","y","z"],_=0;_<3;++_){var w="projection."+l[_];h(w+".show")&&(h(w+".opacity"),h(w+".scale"))}var M=g.getComponentMethod("errorbars","supplyDefaults");M(n,a,d||T||s,{axis:"z"}),M(n,a,d||T||s,{axis:"y",inherit:"z"}),M(n,a,d||T||s,{axis:"x",inherit:"z"})};function o(i,n,a,s){var c=0,h=a("x"),p=a("y"),d=a("z"),T=g.getComponentMethod("calendars","handleTraceDefaults");return T(i,n,["x","y","z"],s),h&&p&&d&&(c=Math.min(h.length,p.length,d.length),n._length=n._xlength=n._ylength=n._zlength=c),c}}}),iI=Le({"src/traces/scatter3d/calc.js"(Z,H){"use strict";var g=zv(),x=Zd();H.exports=function(S,e){var t=[{x:!1,y:!1,trace:e,t:{}}];return g(t,e),x(S,e),t}}}),nI=Le({"node_modules/get-canvas-context/index.js"(Z,H){H.exports=g;function g(x,A){if(typeof x!="string")throw new TypeError("must specify type string");if(A=A||{},typeof document>"u"&&!A.canvas)return null;var S=A.canvas||document.createElement("canvas");typeof A.width=="number"&&(S.width=A.width),typeof A.height=="number"&&(S.height=A.height);var e=A,t;try{var r=[x];x.indexOf("webgl")===0&&r.push("experimental-"+x);for(var o=0;o/g," "));a[s]=d,c.tickmode=h}}o.ticks=a;for(var s=0;s<3;++s){S[s]=.5*(r.glplot.bounds[0][s]+r.glplot.bounds[1][s]);for(var T=0;T<2;++T)o.bounds[T][s]=r.glplot.bounds[T][s]}r.contourLevels=e(a)}}}),uI=Le({"src/plots/gl3d/scene.js"(Z,H){"use strict";var g=Ch().gl_plot3d,x=g.createCamera,A=g.createScene,S=aI(),e=b_(),t=so(),r=ni(),o=r.preserveDrawingBuffer(),i=Zo(),n=Dc(),a=vp(),s=QT(),c=x2(),h=oI(),p=sI(),d=lI(),T=cv().applyAutorangeOptions,l,_,w=!1;function M(z,F){var O=document.createElement("div"),B=z.container;this.graphDiv=z.graphDiv;var I=document.createElementNS("http://www.w3.org/2000/svg","svg");I.style.position="absolute",I.style.top=I.style.left="0px",I.style.width=I.style.height="100%",I.style["z-index"]=20,I.style["pointer-events"]="none",O.appendChild(I),this.svgContainer=I,O.id=z.id,O.style.position="absolute",O.style.top=O.style.left="0px",O.style.width=O.style.height="100%",B.appendChild(O),this.fullLayout=F,this.id=z.id||"scene",this.fullSceneLayout=F[this.id],this.plotArgs=[[],{},{}],this.axesOptions=h(F,F[this.id]),this.spikeOptions=p(F[this.id]),this.container=O,this.staticMode=!!z.staticPlot,this.pixelRatio=this.pixelRatio||z.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var E=M.prototype;E.prepareOptions=function(){var z=this,F={canvas:z.canvas,gl:z.gl,glOptions:{preserveDrawingBuffer:o,premultipliedAlpha:!0,antialias:!0},container:z.container,axes:z.axesOptions,spikes:z.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:z.camera,pixelRatio:z.pixelRatio};if(z.staticMode){if(!_&&(l=document.createElement("canvas"),_=S({canvas:l,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_))throw new Error("error creating static canvas/context for image server");F.gl=_,F.canvas=l}return F};var m=!0;E.tryCreatePlot=function(){var z=this,F=z.prepareOptions(),O=!0;try{z.glplot=A(F)}catch{if(z.staticMode||!m||o)O=!1;else{r.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{o=F.glOptions.preserveDrawingBuffer=!0,z.glplot=A(F)}catch{o=F.glOptions.preserveDrawingBuffer=!1,O=!1}}}return m=!1,O},E.initializeGLCamera=function(){var z=this,F=z.fullSceneLayout.camera,O=F.projection.type==="orthographic";z.camera=x(z.container,{center:[F.center.x,F.center.y,F.center.z],eye:[F.eye.x,F.eye.y,F.eye.z],up:[F.up.x,F.up.y,F.up.z],_ortho:O,zoomMin:.01,zoomMax:100,mode:"orbit"})},E.initializeGLPlot=function(){var z=this;z.initializeGLCamera();var F=z.tryCreatePlot();if(!F)return s(z);z.traces={},z.make4thDimension();var O=z.graphDiv,B=O.layout,I=function(){var U={};return z.isCameraChanged(B)&&(U[z.id+".camera"]=z.getCamera()),z.isAspectChanged(B)&&(U[z.id+".aspectratio"]=z.glplot.getAspectratio(),B[z.id].aspectmode!=="manual"&&(z.fullSceneLayout.aspectmode=B[z.id].aspectmode=U[z.id+".aspectmode"]="manual")),U},N=function(U){if(U.fullSceneLayout.dragmode!==!1){var W=I();U.saveLayout(B),U.graphDiv.emit("plotly_relayout",W)}};return z.glplot.canvas&&(z.glplot.canvas.addEventListener("mouseup",function(){N(z)}),z.glplot.canvas.addEventListener("touchstart",function(){w=!0}),z.glplot.canvas.addEventListener("wheel",function(U){if(O._context._scrollZoom.gl3d){if(z.camera._ortho){var W=U.deltaX>U.deltaY?1.1:.9090909090909091,Q=z.glplot.getAspectratio();z.glplot.setAspectratio({x:W*Q.x,y:W*Q.y,z:W*Q.z})}N(z)}},e?{passive:!1}:!1),z.glplot.canvas.addEventListener("mousemove",function(){if(z.fullSceneLayout.dragmode!==!1&&z.camera.mouseListener.buttons!==0){var U=I();z.graphDiv.emit("plotly_relayouting",U)}}),z.staticMode||z.glplot.canvas.addEventListener("webglcontextlost",function(U){O&&O.emit&&O.emit("plotly_webglcontextlost",{event:U,layer:z.id})},!1)),z.glplot.oncontextloss=function(){z.recoverContext()},z.glplot.onrender=function(){z.render()},!0},E.render=function(){var z=this,F=z.graphDiv,O,B=z.svgContainer,I=z.container.getBoundingClientRect();F._fullLayout._calcInverseTransform(F);var N=F._fullLayout._invScaleX,U=F._fullLayout._invScaleY,W=I.width*N,Q=I.height*U;B.setAttributeNS(null,"viewBox","0 0 "+W+" "+Q),B.setAttributeNS(null,"width",W),B.setAttributeNS(null,"height",Q),d(z),z.glplot.axes.update(z.axesOptions);for(var le=Object.keys(z.traces),se=null,fe=z.glplot.selection,G=0;G")):O.type==="isosurface"||O.type==="volume"?(ae.valueLabel=i.hoverLabelText(z._mockAxis,z._mockAxis.d2l(fe.traceCoordinate[3]),O.valuehoverformat),_e.push("value: "+ae.valueLabel),fe.textLabel&&_e.push(fe.textLabel),ce=_e.join("
")):ce=fe.textLabel;var we={x:fe.traceCoordinate[0],y:fe.traceCoordinate[1],z:fe.traceCoordinate[2],data:X._input,fullData:X,curveNumber:X.index,pointNumber:re};n.appendArrayPointValue(we,X,re),O._module.eventData&&(we=X._module.eventData(we,fe,X,{},re));var Oe={points:[we]};if(z.fullSceneLayout.hovermode){var Ie=[];n.loneHover({trace:X,x:(.5+.5*$[0]/$[3])*W,y:(.5-.5*$[1]/$[3])*Q,xLabel:ae.xLabel,yLabel:ae.yLabel,zLabel:ae.zLabel,text:ce,name:se.name,color:n.castHoverOption(X,re,"bgcolor")||se.color,borderColor:n.castHoverOption(X,re,"bordercolor"),fontFamily:n.castHoverOption(X,re,"font.family"),fontSize:n.castHoverOption(X,re,"font.size"),fontColor:n.castHoverOption(X,re,"font.color"),nameLength:n.castHoverOption(X,re,"namelength"),textAlign:n.castHoverOption(X,re,"align"),hovertemplate:r.castOption(X,re,"hovertemplate"),hovertemplateLabels:r.extendFlat({},we,ae),eventData:[we]},{container:B,gd:F,inOut_bbox:Ie}),we.bbox=Ie[0]}fe.distance<5&&(fe.buttons||w)?F.emit("plotly_click",Oe):F.emit("plotly_hover",Oe),this.oldEventData=Oe}else n.loneUnhover(B),this.oldEventData&&F.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;z.drawAnnotations(z)},E.recoverContext=function(){var z=this;z.glplot.dispose();var F=function(){if(z.glplot.gl.isContextLost()){requestAnimationFrame(F);return}if(!z.initializeGLPlot()){r.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}z.plot.apply(z,z.plotArgs)};requestAnimationFrame(F)};var b=["xaxis","yaxis","zaxis"];function v(z,F,O){for(var B=z.fullSceneLayout,I=0;I<3;I++){var N=b[I],U=N.charAt(0),W=B[N],Q=F[U],le=F[U+"calendar"],se=F["_"+U+"length"];if(!r.isArrayOrTypedArray(Q))O[0][I]=Math.min(O[0][I],0),O[1][I]=Math.max(O[1][I],se-1);else for(var fe,G=0;G<(se||Q.length);G++)if(r.isArrayOrTypedArray(Q[G]))for(var J=0;JX[1][U])X[0][U]=-1,X[1][U]=1;else{var tt=X[1][U]-X[0][U];X[0][U]-=tt/32,X[1][U]+=tt/32}if(j=[X[0][U],X[1][U]],j=T(j,Q),X[0][U]=j[0],X[1][U]=j[1],Q.isReversed()){var rt=X[0][U];X[0][U]=X[1][U],X[1][U]=rt}}else j=Q.range,X[0][U]=Q.r2l(j[0]),X[1][U]=Q.r2l(j[1]);X[0][U]===X[1][U]&&(X[0][U]-=1,X[1][U]+=1),re[U]=X[1][U]-X[0][U],Q.range=[X[0][U],X[1][U]],Q.limitRange(),B.glplot.setBounds(U,{min:Q.range[0]*J[U],max:Q.range[1]*J[U]})}var Je,ot=se.aspectmode;if(ot==="cube")Je=[1,1,1];else if(ot==="manual"){var Me=se.aspectratio;Je=[Me.x,Me.y,Me.z]}else if(ot==="auto"||ot==="data"){var pe=[1,1,1];for(U=0;U<3;++U){Q=se[b[U]],le=Q.type;var ue=ae[le];pe[U]=Math.pow(ue.acc,1/ue.count)/J[U]}ot==="data"||Math.max.apply(null,pe)/Math.min.apply(null,pe)<=4?Je=pe:Je=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");se.aspectratio.x=fe.aspectratio.x=Je[0],se.aspectratio.y=fe.aspectratio.y=Je[1],se.aspectratio.z=fe.aspectratio.z=Je[2],B.glplot.setAspectratio(se.aspectratio),B.viewInitial.aspectratio||(B.viewInitial.aspectratio={x:se.aspectratio.x,y:se.aspectratio.y,z:se.aspectratio.z}),B.viewInitial.aspectmode||(B.viewInitial.aspectmode=se.aspectmode);var ze=se.domain||null,Qe=F._size||null;if(ze&&Qe){var it=B.container.style;it.position="absolute",it.left=Qe.l+ze.x[0]*Qe.w+"px",it.top=Qe.t+(1-ze.y[1])*Qe.h+"px",it.width=Qe.w*(ze.x[1]-ze.x[0])+"px",it.height=Qe.h*(ze.y[1]-ze.y[0])+"px"}B.glplot.redraw()}},E.destroy=function(){var z=this;z.glplot&&(z.camera.mouseListener.enabled=!1,z.container.removeEventListener("wheel",z.camera.wheelListener),z.camera=null,z.glplot.dispose(),z.container.parentNode.removeChild(z.container),z.glplot=null)};function y(z){return[[z.eye.x,z.eye.y,z.eye.z],[z.center.x,z.center.y,z.center.z],[z.up.x,z.up.y,z.up.z]]}function f(z){return{up:{x:z.up[0],y:z.up[1],z:z.up[2]},center:{x:z.center[0],y:z.center[1],z:z.center[2]},eye:{x:z.eye[0],y:z.eye[1],z:z.eye[2]},projection:{type:z._ortho===!0?"orthographic":"perspective"}}}E.getCamera=function(){var z=this;return z.camera.view.recalcMatrix(z.camera.view.lastT()),f(z.camera)},E.setViewport=function(z){var F=this,O=z.camera;F.camera.lookAt.apply(this,y(O)),F.glplot.setAspectratio(z.aspectratio);var B=O.projection.type==="orthographic",I=F.camera._ortho;B!==I&&(F.glplot.redraw(),F.glplot.clearRGBA(),F.glplot.dispose(),F.initializeGLPlot())},E.isCameraChanged=function(z){var F=this,O=F.getCamera(),B=r.nestedProperty(z,F.id+".camera"),I=B.get();function N(le,se,fe,G){var J=["up","center","eye"],$=["x","y","z"];return se[J[fe]]&&le[J[fe]][$[G]]===se[J[fe]][$[G]]}var U=!1;if(I===void 0)U=!0;else{for(var W=0;W<3;W++)for(var Q=0;Q<3;Q++)if(!N(O,I,W,Q)){U=!0;break}(!I.projection||O.projection&&O.projection.type!==I.projection.type)&&(U=!0)}return U},E.isAspectChanged=function(z){var F=this,O=F.glplot.getAspectratio(),B=r.nestedProperty(z,F.id+".aspectratio"),I=B.get();return I===void 0||I.x!==O.x||I.y!==O.y||I.z!==O.z},E.saveLayout=function(z){var F=this,O=F.fullLayout,B,I,N,U,W,Q,le=F.isCameraChanged(z),se=F.isAspectChanged(z),fe=le||se;if(fe){var G={};if(le&&(B=F.getCamera(),I=r.nestedProperty(z,F.id+".camera"),N=I.get(),G[F.id+".camera"]=N),se&&(U=F.glplot.getAspectratio(),W=r.nestedProperty(z,F.id+".aspectratio"),Q=W.get(),G[F.id+".aspectratio"]=Q),t.call("_storeDirectGUIEdit",z,O._preGUI,G),le){I.set(B);var J=r.nestedProperty(O,F.id+".camera");J.set(B)}if(se){W.set(U);var $=r.nestedProperty(O,F.id+".aspectratio");$.set(U),F.glplot.redraw()}}return fe},E.updateFx=function(z,F){var O=this,B=O.camera;if(B)if(z==="orbit")B.mode="orbit",B.keyBindingMode="rotate";else if(z==="turntable"){B.up=[0,0,1],B.mode="turntable",B.keyBindingMode="rotate";var I=O.graphDiv,N=I._fullLayout,U=O.fullSceneLayout.camera,W=U.up.x,Q=U.up.y,le=U.up.z;if(le/Math.sqrt(W*W+Q*Q+le*le)<.999){var se=O.id+".camera.up",fe={x:0,y:0,z:1},G={};G[se]=fe;var J=I.layout;t.call("_storeDirectGUIEdit",J,N._preGUI,G),U.up=fe,r.nestedProperty(J,se).set(fe)}}else B.keyBindingMode=z;O.fullSceneLayout.hovermode=F};function P(z,F,O){for(var B=0,I=O-1;B0)for(var W=255/U,Q=0;Q<3;++Q)z[N+Q]=Math.min(W*z[N+Q],255)}}E.toImage=function(z){var F=this;z||(z="png"),F.staticMode&&F.container.appendChild(l),F.glplot.redraw();var O=F.glplot.gl,B=O.drawingBufferWidth,I=O.drawingBufferHeight;O.bindFramebuffer(O.FRAMEBUFFER,null);var N=new Uint8Array(B*I*4);O.readPixels(0,0,B,I,O.RGBA,O.UNSIGNED_BYTE,N),P(N,B,I),L(N,B,I);var U=document.createElement("canvas");U.width=B,U.height=I;var W=U.getContext("2d",{willReadFrequently:!0}),Q=W.createImageData(B,I);Q.data.set(N),W.putImageData(Q,0,0);var le;switch(z){case"jpeg":le=U.toDataURL("image/jpeg");break;case"webp":le=U.toDataURL("image/webp");break;default:le=U.toDataURL("image/png")}return F.staticMode&&F.container.removeChild(l),le},E.setConvert=function(){for(var z=this,F=0;F<3;F++){var O=z.fullSceneLayout[b[F]];i.setConvert(O,z.fullLayout),O.setScale=r.noop}},E.make4thDimension=function(){var z=this,F=z.graphDiv,O=F._fullLayout;z._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},i.setConvert(z._mockAxis,O)},H.exports=M}}),cI=Le({"src/plots/gl3d/layout/attributes.js"(Z,H){"use strict";H.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),eA=Le({"src/plots/gl3d/layout/axis_attributes.js"(Z,H){"use strict";var g=$a(),x=Sh(),A=ho().extendFlat,S=qu().overrideAll;H.exports=S({visible:x.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:g.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:x.color,categoryorder:x.categoryorder,categoryarray:x.categoryarray,title:{text:x.title.text,font:x.title.font},type:A({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorange:x.autorange,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},rangemode:x.rangemode,minallowed:x.minallowed,maxallowed:x.maxallowed,range:A({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,mirror:x.mirror,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,tickfont:x.tickfont,tickangle:x.tickangle,tickprefix:x.tickprefix,showtickprefix:x.showtickprefix,ticksuffix:x.ticksuffix,showticksuffix:x.showticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickformat:x.tickformat,tickformatstops:x.tickformatstops,hoverformat:x.hoverformat,showline:x.showline,linecolor:x.linecolor,linewidth:x.linewidth,showgrid:x.showgrid,gridcolor:A({},x.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:x.gridwidth,zeroline:x.zeroline,zerolinecolor:x.zerolinecolor,zerolinewidth:x.zerolinewidth},"plot","from-root")}}),tA=Le({"src/plots/gl3d/layout/layout_attributes.js"(Z,H){"use strict";var g=eA(),x=$u().attributes,A=ho().extendFlat,S=ni().counterRegex;function e(t,r,o){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:o,editType:"camera"},editType:"camera"}}H.exports={_arrayAttrRegexps:[S("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A(e(0,0,1),{}),center:A(e(0,0,0),{}),eye:A(e(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:x({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:g,yaxis:g,zaxis:g,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}}}),fI=Le({"src/plots/gl3d/layout/axis_defaults.js"(Z,H){"use strict";var g=Vl().mix,x=ni(),A=wl(),S=eA(),e=y2(),t=py(),r=["xaxis","yaxis","zaxis"],o=100*136/187;H.exports=function(n,a,s){var c,h;function p(l,_){return x.coerce(c,h,S,l,_)}for(var d=0;d1;function p(d){if(!h){var T=g.validate(a[d],t[d]);if(T)return a[d]}}S(a,s,c,{type:o,attributes:t,handleDefaults:i,fullLayout:s,font:s.font,fullData:c,getDfltFromLayout:p,autotypenumbersDflt:s.autotypenumbers,paper_bgcolor:s.paper_bgcolor,calendar:s.calendar})};function i(n,a,s,c){for(var h=s("bgcolor"),p=x.combine(h,c.paper_bgcolor),d=["up","center","eye"],T=0;T.999)&&(E="turntable")}else E="turntable";s("dragmode",E),s("hovermode",c.getDfltFromLayout("hovermode"))}}}),im=Le({"src/plots/gl3d/index.js"(Z){"use strict";var H=qu().overrideAll,g=Pd(),x=uI(),A=Mh().getSubplotData,S=ni(),e=Bd(),t="gl3d",r="scene";Z.name=t,Z.attr=r,Z.idRoot=r,Z.idRegex=Z.attrRegex=S.counterRegex("scene"),Z.attributes=cI(),Z.layoutAttributes=tA(),Z.baseLayoutAttrOverrides=H({hoverlabel:g.hoverlabel},"plot","nested"),Z.supplyLayoutDefaults=hI(),Z.plot=function(i){for(var n=i._fullLayout,a=i._fullData,s=n._subplots[t],c=0;c0){P=c[L];break}return P}function T(y,f){if(!(y<1||f<1)){for(var P=p(y),L=p(f),z=1,F=0;FM;)L--,L/=d(L),L++,L1?z:1};function E(y,f,P){var L=P[8]+P[2]*f[0]+P[5]*f[1];return y[0]=(P[6]+P[0]*f[0]+P[3]*f[1])/L,y[1]=(P[7]+P[1]*f[0]+P[4]*f[1])/L,y}function m(y,f,P){return b(y,f,E,P),y}function b(y,f,P,L){for(var z=[0,0],F=y.shape[0],O=y.shape[1],B=0;B0&&this.contourStart[L]!==null&&this.contourEnd[L]!==null&&this.contourEnd[L]>this.contourStart[L]))for(f[L]=!0,z=this.contourStart[L];zQ&&(this.minValues[N]=Q),this.maxValues[N]c&&(o.isomin=null,o.isomax=null);var h=a("x"),p=a("y"),d=a("z"),T=a("value");if(!h||!h.length||!p||!p.length||!d||!d.length||!T||!T.length){o.visible=!1;return}var l=x.getComponentMethod("calendars","handleTraceDefaults");l(r,o,["x","y","z"],n),a("valuehoverformat"),["x","y","z"].forEach(function(E){a(E+"hoverformat");var m="caps."+E,b=a(m+".show");b&&a(m+".fill");var v="slices."+E,u=a(v+".show");u&&(a(v+".fill"),a(v+".locations"))});var _=a("spaceframe.show");_&&a("spaceframe.fill");var w=a("surface.show");w&&(a("surface.count"),a("surface.fill"),a("surface.pattern"));var M=a("contour.show");M&&(a("contour.color"),a("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(E){a(E)}),S(r,o,n,a,{prefix:"",cLetter:"c"}),o._length=null}H.exports={supplyDefaults:e,supplyIsoDefaults:t}}}),ib=Le({"src/traces/streamtube/calc.js"(Z,H){"use strict";var g=ni(),x=cd();function A(r,o){o._len=Math.min(o.u.length,o.v.length,o.w.length,o.x.length,o.y.length,o.z.length),o._u=t(o.u,o._len),o._v=t(o.v,o._len),o._w=t(o.w,o._len),o._x=t(o.x,o._len),o._y=t(o.y,o._len),o._z=t(o.z,o._len);var i=S(o);o._gridFill=i.fill,o._Xs=i.Xs,o._Ys=i.Ys,o._Zs=i.Zs,o._len=i.len;var n=0,a,s,c;o.starts&&(a=t(o.starts.x||[]),s=t(o.starts.y||[]),c=t(o.starts.z||[]),n=Math.min(a.length,s.length,c.length)),o._startsX=a||[],o._startsY=s||[],o._startsZ=c||[];var h=0,p=1/0,d;for(d=0;d1&&(u=o[a-1],f=i[a-1],L=n[a-1]),s=0;su?"-":"+")+"x"),M=M.replace("y",(y>f?"-":"+")+"y"),M=M.replace("z",(P>L?"-":"+")+"z");var B=function(){a=0,z=[],F=[],O=[]};(!a||a0;p--){var d=Math.min(h[p],h[p-1]),T=Math.max(h[p],h[p-1]);if(T>d&&d-1}function ee(mt,Fe){return mt===null?Fe:mt}function ne(mt,Fe,Ze){le();var Ne=[Fe],Se=[Ze];if(X>=1)Ne=[Fe],Se=[Ze];else if(X>0){var Ve=ae(Fe,Ze);Ne=Ve.xyzv,Se=Ve.abc}for(var Ee=0;Ee-1?Ze[Ce]:Q(et,ht,yt);Ot>-1?be[Ce]=Ot:be[Ce]=fe(et,ht,yt,ee(mt,Pt))}G(be[0],be[1],be[2])}}function ce(mt,Fe,Ze){var Ne=function(Se,Ve,Ee){ne(mt,[Fe[Se],Fe[Ve],Fe[Ee]],[Ze[Se],Ze[Ve],Ze[Ee]])};Ne(0,1,2),Ne(2,3,0)}function _e(mt,Fe,Ze){var Ne=function(Se,Ve,Ee){ne(mt,[Fe[Se],Fe[Ve],Fe[Ee]],[Ze[Se],Ze[Ve],Ze[Ee]])};Ne(0,1,2),Ne(3,0,1),Ne(2,3,0),Ne(1,2,3)}function we(mt,Fe,Ze,Ne){var Se=mt[3];SeNe&&(Se=Ne);for(var Ve=(mt[3]-Se)/(mt[3]-Fe[3]+1e-9),Ee=[],be=0;be<4;be++)Ee[be]=(1-Ve)*mt[be]+Ve*Fe[be];return Ee}function Oe(mt,Fe,Ze){return mt>=Fe&&mt<=Ze}function Ie(mt){var Fe=.001*(B-O);return mt>=O-Fe&&mt<=B+Fe}function Xe(mt){for(var Fe=[],Ze=0;Ze<4;Ze++){var Ne=mt[Ze];Fe.push([c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne]])}return Fe}var tt=3;function rt(mt,Fe,Ze,Ne,Se,Ve){Ve||(Ve=1),Ze=[-1,-1,-1];var Ee=!1,be=[Oe(Fe[0][3],Ne,Se),Oe(Fe[1][3],Ne,Se),Oe(Fe[2][3],Ne,Se)];if(!be[0]&&!be[1]&&!be[2])return!1;var Ce=function(ht,yt,Pt){return Ie(yt[0][3])&&Ie(yt[1][3])&&Ie(yt[2][3])?(ne(ht,yt,Pt),!0):Vebe?[z,Ve]:[Ve,F];Bt(Fe,Ce[0],Ce[1])}}var et=[[Math.min(O,F),Math.max(O,F)],[Math.min(z,B),Math.max(z,B)]];["x","y","z"].forEach(function(ht){for(var yt=[],Pt=0;Pt0&&(Pi.push(en.id),ht==="x"?Bi.push([en.distRatio,0,0]):ht==="y"?Bi.push([0,en.distRatio,0]):Bi.push([0,0,en.distRatio]))}else ht==="x"?fi=Lr(1,u-1):ht==="y"?fi=Lr(1,y-1):fi=Lr(1,f-1);Pi.length>0&&(ht==="x"?yt[Ot]=jt(mt,Pi,Wt,$t,Bi,yt[Ot]):ht==="y"?yt[Ot]=cr(mt,Pi,Wt,$t,Bi,yt[Ot]):yt[Ot]=nr(mt,Pi,Wt,$t,Bi,yt[Ot]),Ot++),fi.length>0&&(ht==="x"?yt[Ot]=Qe(mt,fi,Wt,$t,yt[Ot]):ht==="y"?yt[Ot]=it(mt,fi,Wt,$t,yt[Ot]):yt[Ot]=$e(mt,fi,Wt,$t,yt[Ot]),Ot++)}var Ri=c.caps[ht];Ri.show&&Ri.fill&&(re(Ri.fill),ht==="x"?yt[Ot]=Qe(mt,[0,u-1],Wt,$t,yt[Ot]):ht==="y"?yt[Ot]=it(mt,[0,y-1],Wt,$t,yt[Ot]):yt[Ot]=$e(mt,[0,f-1],Wt,$t,yt[Ot]),Ot++)}}),w===0&&se(),c._meshX=I,c._meshY=N,c._meshZ=U,c._meshIntensity=W,c._Xs=m,c._Ys=b,c._Zs=v}return xr(),c}function s(c,h){var p=c.glplot.gl,d=g({gl:p}),T=new o(c,d,h.uid);return d._trace=T,T.update(h),c.glplot.add(d),T}H.exports={findNearestOnAxis:r,generateIsoMeshes:a,createIsosurfaceTrace:s}}}),_I=Le({"src/traces/isosurface/index.js"(Z,H){"use strict";H.exports={attributes:rb(),supplyDefaults:iA().supplyDefaults,calc:nA(),colorbar:{min:"cmin",max:"cmax"},plot:nb().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:im(),categories:["gl3d","showLegend"],meta:{}}}}),xI=Le({"lib/isosurface.js"(Z,H){"use strict";H.exports=_I()}}),aA=Le({"src/traces/volume/attributes.js"(Z,H){"use strict";var g=uu(),x=rb(),A=$y(),S=Sl(),e=ho().extendFlat,t=qu().overrideAll,r=H.exports=t(e({x:x.x,y:x.y,z:x.z,value:x.value,isomin:x.isomin,isomax:x.isomax,surface:x.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:x.slices,caps:x.caps,text:x.text,hovertext:x.hovertext,xhoverformat:x.xhoverformat,yhoverformat:x.yhoverformat,zhoverformat:x.zhoverformat,valuehoverformat:x.valuehoverformat,hovertemplate:x.hovertemplate},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:x.colorbar,opacity:x.opacity,opacityscale:A.opacityscale,lightposition:x.lightposition,lighting:x.lighting,flatshading:x.flatshading,contour:x.contour,hoverinfo:e({},S.hoverinfo),showlegend:e({},S.showlegend,{dflt:!1})}),"calc","nested");r.x.editType=r.y.editType=r.z.editType=r.value.editType="calc+clearAxisTypes"}}),bI=Le({"src/traces/volume/defaults.js"(Z,H){"use strict";var g=ni(),x=aA(),A=iA().supplyIsoDefaults,S=rA().opacityscaleDefaults;H.exports=function(t,r,o,i){function n(a,s){return g.coerce(t,r,x,a,s)}A(t,r,o,i,n),S(t,r,i,n)}}}),wI=Le({"src/traces/volume/convert.js"(Z,H){"use strict";var g=Ch().gl_mesh3d,x=pp().parseColorScale,A=ni().isArrayOrTypedArray,S=vp(),e=Cu().extractOpts,t=_0(),r=nb().findNearestOnAxis,o=nb().generateIsoMeshes;function i(s,c,h){this.scene=s,this.uid=h,this.mesh=c,this.name="",this.data=null,this.showContour=!1}var n=i.prototype;n.handlePick=function(s){if(s.object===this.mesh){var c=s.data.index,h=this.data._meshX[c],p=this.data._meshY[c],d=this.data._meshZ[c],T=this.data._Ys.length,l=this.data._Zs.length,_=r(h,this.data._Xs).id,w=r(p,this.data._Ys).id,M=r(d,this.data._Zs).id,E=s.index=M+l*w+l*T*_;s.traceCoordinate=[this.data._meshX[E],this.data._meshY[E],this.data._meshZ[E],this.data._value[E]];var m=this.data.hovertext||this.data.text;return A(m)&&m[E]!==void 0?s.textLabel=m[E]:m&&(s.textLabel=m),!0}},n.update=function(s){var c=this.scene,h=c.fullSceneLayout;this.data=o(s);function p(w,M,E,m){return M.map(function(b){return w.d2l(b,0,m)*E})}var d=t(p(h.xaxis,s._meshX,c.dataScale[0],s.xcalendar),p(h.yaxis,s._meshY,c.dataScale[1],s.ycalendar),p(h.zaxis,s._meshZ,c.dataScale[2],s.zcalendar)),T=t(s._meshI,s._meshJ,s._meshK),l={positions:d,cells:T,lightPosition:[s.lightposition.x,s.lightposition.y,s.lightposition.z],ambient:s.lighting.ambient,diffuse:s.lighting.diffuse,specular:s.lighting.specular,roughness:s.lighting.roughness,fresnel:s.lighting.fresnel,vertexNormalsEpsilon:s.lighting.vertexnormalsepsilon,faceNormalsEpsilon:s.lighting.facenormalsepsilon,opacity:s.opacity,opacityscale:s.opacityscale,contourEnable:s.contour.show,contourColor:S(s.contour.color).slice(0,3),contourWidth:s.contour.width,useFacetNormals:s.flatshading},_=e(s);l.vertexIntensity=s._meshIntensity,l.vertexIntensityBounds=[_.min,_.max],l.colormap=x(s),this.mesh.update(l)},n.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function a(s,c){var h=s.glplot.gl,p=g({gl:h}),d=new i(s,p,c.uid);return p._trace=d,d.update(c),s.glplot.add(p),d}H.exports=a}}),TI=Le({"src/traces/volume/index.js"(Z,H){"use strict";H.exports={attributes:aA(),supplyDefaults:bI(),calc:nA(),colorbar:{min:"cmin",max:"cmax"},plot:wI(),moduleType:"trace",name:"volume",basePlotModule:im(),categories:["gl3d","showLegend"],meta:{}}}}),AI=Le({"lib/volume.js"(Z,H){"use strict";H.exports=TI()}}),MI=Le({"src/traces/mesh3d/defaults.js"(Z,H){"use strict";var g=so(),x=ni(),A=th(),S=y0();H.exports=function(t,r,o,i){function n(p,d){return x.coerce(t,r,S,p,d)}function a(p){var d=p.map(function(T){var l=n(T);return l&&x.isArrayOrTypedArray(l)?l:null});return d.every(function(T){return T&&T.length===d[0].length})&&d}var s=a(["x","y","z"]);if(!s){r.visible=!1;return}if(a(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var c=g.getComponentMethod("calendars","handleTraceDefaults");c(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(p){n(p)});var h=n("contour.show");h&&(n("contour.color"),n("contour.width")),"intensity"in t?(n("intensity"),n("intensitymode"),A(t,r,i,n,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?n("facecolor"):"vertexcolor"in t?n("vertexcolor"):n("color",o)),n("text"),n("hovertext"),n("hovertemplate"),n("xhoverformat"),n("yhoverformat"),n("zhoverformat"),r._length=null}}}),SI=Le({"src/traces/mesh3d/calc.js"(Z,H){"use strict";var g=cd();H.exports=function(A,S){S.intensity&&g(A,S,{vals:S.intensity,containerStr:"",cLetter:"c"})}}}),EI=Le({"src/traces/mesh3d/convert.js"(Z,H){"use strict";var g=Ch().gl_mesh3d,x=Ch().delaunay_triangulate,A=Ch().alpha_shape,S=Ch().convex_hull,e=pp().parseColorScale,t=ni().isArrayOrTypedArray,r=vp(),o=Cu().extractOpts,i=_0();function n(l,_,w){this.scene=l,this.uid=w,this.mesh=_,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var a=n.prototype;a.handlePick=function(l){if(l.object===this.mesh){var _=l.index=l.data.index;l.data._cellCenter?l.traceCoordinate=l.data.dataCoordinate:l.traceCoordinate=[this.data.x[_],this.data.y[_],this.data.z[_]];var w=this.data.hovertext||this.data.text;return t(w)&&w[_]!==void 0?l.textLabel=w[_]:w&&(l.textLabel=w),!0}};function s(l){for(var _=[],w=l.length,M=0;M=_-.5)return!1;return!0}a.update=function(l){var _=this.scene,w=_.fullSceneLayout;this.data=l;var M=l.x.length,E=i(c(w.xaxis,l.x,_.dataScale[0],l.xcalendar),c(w.yaxis,l.y,_.dataScale[1],l.ycalendar),c(w.zaxis,l.z,_.dataScale[2],l.zcalendar)),m;if(l.i&&l.j&&l.k){if(l.i.length!==l.j.length||l.j.length!==l.k.length||!d(l.i,M)||!d(l.j,M)||!d(l.k,M))return;m=i(h(l.i),h(l.j),h(l.k))}else l.alphahull===0?m=S(E):l.alphahull>0?m=A(l.alphahull,E):m=p(l.delaunayaxis,E);var b={positions:E,cells:m,lightPosition:[l.lightposition.x,l.lightposition.y,l.lightposition.z],ambient:l.lighting.ambient,diffuse:l.lighting.diffuse,specular:l.lighting.specular,roughness:l.lighting.roughness,fresnel:l.lighting.fresnel,vertexNormalsEpsilon:l.lighting.vertexnormalsepsilon,faceNormalsEpsilon:l.lighting.facenormalsepsilon,opacity:l.opacity,contourEnable:l.contour.show,contourColor:r(l.contour.color).slice(0,3),contourWidth:l.contour.width,useFacetNormals:l.flatshading};if(l.intensity){var v=o(l);this.color="#fff";var u=l.intensitymode;b[u+"Intensity"]=l.intensity,b[u+"IntensityBounds"]=[v.min,v.max],b.colormap=e(l)}else l.vertexcolor?(this.color=l.vertexcolor[0],b.vertexColors=s(l.vertexcolor)):l.facecolor?(this.color=l.facecolor[0],b.cellColors=s(l.facecolor)):(this.color=l.color,b.meshColor=r(l.color));this.mesh.update(b)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function T(l,_){var w=l.glplot.gl,M=g({gl:w}),E=new n(l,M,_.uid);return M._trace=E,E.update(_),l.glplot.add(M),E}H.exports=T}}),kI=Le({"src/traces/mesh3d/index.js"(Z,H){"use strict";H.exports={attributes:y0(),supplyDefaults:MI(),calc:SI(),colorbar:{min:"cmin",max:"cmax"},plot:EI(),moduleType:"trace",name:"mesh3d",basePlotModule:im(),categories:["gl3d","showLegend"],meta:{}}}}),CI=Le({"lib/mesh3d.js"(Z,H){"use strict";H.exports=kI()}}),oA=Le({"src/traces/cone/attributes.js"(Z,H){"use strict";var g=uu(),x=Rc().axisHoverFormat,A=Fs().hovertemplateAttrs,S=y0(),e=Sl(),t=ho().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["norm"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(i){r[i]=S[i]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),LI=Le({"src/traces/cone/defaults.js"(Z,H){"use strict";var g=ni(),x=th(),A=oA();H.exports=function(e,t,r,o){function i(T,l){return g.coerce(e,t,A,T,l)}var n=i("u"),a=i("v"),s=i("w"),c=i("x"),h=i("y"),p=i("z");if(!n||!n.length||!a||!a.length||!s||!s.length||!c||!c.length||!h||!h.length||!p||!p.length){t.visible=!1;return}var d=i("sizemode");i("sizeref",d==="raw"?1:.5),i("anchor"),i("lighting.ambient"),i("lighting.diffuse"),i("lighting.specular"),i("lighting.roughness"),i("lighting.fresnel"),i("lightposition.x"),i("lightposition.y"),i("lightposition.z"),x(e,t,o,i,{prefix:"",cLetter:"c"}),i("text"),i("hovertext"),i("hovertemplate"),i("uhoverformat"),i("vhoverformat"),i("whoverformat"),i("xhoverformat"),i("yhoverformat"),i("zhoverformat"),t._length=null}}}),PI=Le({"src/traces/cone/calc.js"(Z,H){"use strict";var g=cd();H.exports=function(A,S){for(var e=S.u,t=S.v,r=S.w,o=Math.min(S.x.length,S.y.length,S.z.length,e.length,t.length,r.length),i=-1/0,n=1/0,a=0;a2?d=h.slice(1,p-1):p===2?d=[(h[0]+h[1])/2]:d=h,d}function a(h){var p=h.length;return p===1?[.5,.5]:[h[1]-h[0],h[p-1]-h[p-2]]}function s(h,p){var d=h.fullSceneLayout,T=h.dataScale,l=p._len,_={};function w(fe,G){var J=d[G],$=T[r[G]];return A.simpleMap(fe,function(X){return J.d2l(X)*$})}if(_.vectors=t(w(p._u,"xaxis"),w(p._v,"yaxis"),w(p._w,"zaxis"),l),!l)return{positions:[],cells:[]};var M=w(p._Xs,"xaxis"),E=w(p._Ys,"yaxis"),m=w(p._Zs,"zaxis");_.meshgrid=[M,E,m],_.gridFill=p._gridFill;var b=p._slen;if(b)_.startingPositions=t(w(p._startsX,"xaxis"),w(p._startsY,"yaxis"),w(p._startsZ,"zaxis"));else{for(var v=E[0],u=n(M),y=n(m),f=new Array(u.length*y.length),P=0,L=0;Lv&&(v=P[0]),P[1]u&&(u=P[1])}function f(P){switch(P.type){case"GeometryCollection":P.geometries.forEach(f);break;case"Point":y(P.coordinates);break;case"MultiPoint":P.coordinates.forEach(y);break}}w.arcs.forEach(function(P){for(var L=-1,z=P.length,F;++Lv&&(v=F[0]),F[1]u&&(u=F[1])});for(E in w.objects)f(w.objects[E]);return[m,b,v,u]}function e(w,M){for(var E,m=w.length,b=m-M;b<--m;)E=w[b],w[b++]=w[m],w[m]=E}function t(w,M){return typeof M=="string"&&(M=w.objects[M]),M.type==="GeometryCollection"?{type:"FeatureCollection",features:M.geometries.map(function(E){return r(w,E)})}:r(w,M)}function r(w,M){var E=M.id,m=M.bbox,b=M.properties==null?{}:M.properties,v=o(w,M);return E==null&&m==null?{type:"Feature",properties:b,geometry:v}:m==null?{type:"Feature",id:E,properties:b,geometry:v}:{type:"Feature",id:E,bbox:m,properties:b,geometry:v}}function o(w,M){var E=A(w.transform),m=w.arcs;function b(L,z){z.length&&z.pop();for(var F=m[L<0?~L:L],O=0,B=F.length;O1)m=s(w,M,E);else for(b=0,m=new Array(v=w.arcs.length);b1)for(var z=1,F=y(P[0]),O,B;zF&&(B=P[0],P[0]=P[z],P[z]=B,F=O);return P}).filter(function(f){return f.length>0})}}function d(w,M){for(var E=0,m=w.length;E>>1;w[b]=2))throw new Error("n must be \u22652");f=w.bbox||S(w);var E=f[0],m=f[1],b=f[2],v=f[3],u;M={scale:[b-E?(b-E)/(u-1):1,v-m?(v-m)/(u-1):1],translate:[E,m]}}else f=w.bbox;var y=l(M),f,P,L=w.objects,z={};function F(I){return y(I)}function O(I){var N;switch(I.type){case"GeometryCollection":N={type:"GeometryCollection",geometries:I.geometries.map(O)};break;case"Point":N={type:"Point",coordinates:F(I.coordinates)};break;case"MultiPoint":N={type:"MultiPoint",coordinates:I.coordinates.map(F)};break;default:return I}return I.id!=null&&(N.id=I.id),I.bbox!=null&&(N.bbox=I.bbox),I.properties!=null&&(N.properties=I.properties),N}function B(I){var N=0,U=1,W=I.length,Q,le=new Array(W);for(le[0]=y(I[0],0);++N0&&(S.push(e),e=[])}return e.length>0&&S.push(e),S},Z.makeLine=function(g){return g.length===1?{type:"LineString",coordinates:g[0]}:{type:"MultiLineString",coordinates:g}},Z.makePolygon=function(g){if(g.length===1)return{type:"Polygon",coordinates:g};for(var x=new Array(g.length),A=0;Ae(O,z)),F)}function r(L,z,F={}){for(let B of L){if(B.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(B[B.length-1].length!==B[0].length)throw new Error("First and last Position are not equivalent.");for(let I=0;Ir(O,z)),F)}function i(L,z,F={}){if(L.length<2)throw new Error("coordinates must be an array of two or more positions");return A({type:"LineString",coordinates:L},z,F)}function n(L,z,F={}){return a(L.map(O=>i(O,z)),F)}function a(L,z={}){let F={type:"FeatureCollection"};return z.id&&(F.id=z.id),z.bbox&&(F.bbox=z.bbox),F.features=L,F}function s(L,z,F={}){return A({type:"MultiLineString",coordinates:L},z,F)}function c(L,z,F={}){return A({type:"MultiPoint",coordinates:L},z,F)}function h(L,z,F={}){return A({type:"MultiPolygon",coordinates:L},z,F)}function p(L,z,F={}){return A({type:"GeometryCollection",geometries:L},z,F)}function d(L,z=0){if(z&&!(z>=0))throw new Error("precision must be a positive number");let F=Math.pow(10,z||0);return Math.round(L*F)/F}function T(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L*F}function l(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L/F}function _(L,z){return E(l(L,z))}function w(L){let z=L%360;return z<0&&(z+=360),z}function M(L){return L=L%360,L>0?L>180?L-360:L:L<-180?L+360:L}function E(L){return L%(2*Math.PI)*180/Math.PI}function m(L){return L%360*Math.PI/180}function b(L,z="kilometers",F="kilometers"){if(!(L>=0))throw new Error("length must be a positive number");return T(l(L,z),F)}function v(L,z="meters",F="kilometers"){if(!(L>=0))throw new Error("area must be a positive number");let O=x[z];if(!O)throw new Error("invalid original units");let B=x[F];if(!B)throw new Error("invalid final units");return L/O*B}function u(L){return!isNaN(L)&&L!==null&&!Array.isArray(L)}function y(L){return L!==null&&typeof L=="object"&&!Array.isArray(L)}function f(L){if(!L)throw new Error("bbox is required");if(!Array.isArray(L))throw new Error("bbox must be an Array");if(L.length!==4&&L.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");L.forEach(z=>{if(!u(z))throw new Error("bbox must only contain numbers")})}function P(L){if(!L)throw new Error("id is required");if(["string","number"].indexOf(typeof L)===-1)throw new Error("id must be a number or a string")}Z.areaFactors=x,Z.azimuthToBearing=M,Z.bearingToAzimuth=w,Z.convertArea=v,Z.convertLength=b,Z.degreesToRadians=m,Z.earthRadius=H,Z.factors=g,Z.feature=A,Z.featureCollection=a,Z.geometry=S,Z.geometryCollection=p,Z.isNumber=u,Z.isObject=y,Z.lengthToDegrees=_,Z.lengthToRadians=l,Z.lineString=i,Z.lineStrings=n,Z.multiLineString=s,Z.multiPoint=c,Z.multiPolygon=h,Z.point=e,Z.points=t,Z.polygon=r,Z.polygons=o,Z.radiansToDegrees=E,Z.radiansToLength=T,Z.round=d,Z.validateBBox=f,Z.validateId=P}}),lb=Le({"node_modules/@turf/meta/dist/cjs/index.cjs"(Z){"use strict";Object.defineProperty(Z,"__esModule",{value:!0});var H=sb();function g(l,_,w){if(l!==null)for(var M,E,m,b,v,u,y,f=0,P=0,L,z=l.type,F=z==="FeatureCollection",O=z==="Feature",B=F?l.features.length:1,I=0;Iu||F>y||O>f){v=P,u=M,y=F,f=O,m=0;return}var B=H.lineString.call(void 0,[v,P],w.properties);if(_(B,M,E,O,m)===!1)return!1;m++,v=P})===!1)return!1}}})}function c(l,_,w){var M=w,E=!1;return s(l,function(m,b,v,u,y){E===!1&&w===void 0?M=m:M=_(M,m,b,v,u,y),E=!0}),M}function h(l,_){if(!l)throw new Error("geojson is required");n(l,function(w,M,E){if(w.geometry!==null){var m=w.geometry.type,b=w.geometry.coordinates;switch(m){case"LineString":if(_(w,M,E,0,0)===!1)return!1;break;case"Polygon":for(var v=0;vn+A(a),0)}function A(i){let n=0,a;switch(i.type){case"Polygon":return S(i.coordinates);case"MultiPolygon":for(a=0;a0){n+=Math.abs(r(i[0]));for(let a=1;a=n?(s+2)%n:s+2],d=c[0]*t,T=h[1]*t,l=p[0]*t;a+=(l-d)*Math.sin(T),s++}return a*e}var o=x;Z.area=x,Z.default=o}}),qI=Le({"node_modules/@turf/centroid/dist/cjs/index.cjs"(Z){"use strict";Object.defineProperty(Z,"__esModule",{value:!0});var H=sb(),g=lb();function x(S,e={}){let t=0,r=0,o=0;return g.coordEach.call(void 0,S,function(i){t+=i[0],r+=i[1],o++},!0),H.point.call(void 0,[t/o,r/o],e.properties)}var A=x;Z.centroid=x,Z.default=A}}),HI=Le({"node_modules/@turf/bbox/dist/cjs/index.cjs"(Z){"use strict";Object.defineProperty(Z,"__esModule",{value:!0});var H=lb();function g(A,S={}){if(A.bbox!=null&&S.recompute!==!0)return A.bbox;let e=[1/0,1/0,-1/0,-1/0];return H.coordEach.call(void 0,A,t=>{e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]0&&z[F+1][0]<0)return F;return null}switch(b==="RUS"||b==="FJI"?u=function(z){var F;if(L(z)===null)F=z;else for(F=new Array(z.length),P=0;PF?O[B++]=[z[P][0]+360,z[P][1]]:P===F?(O[B++]=z[P],O[B++]=[z[P][0],-90]):O[B++]=z[P];var I=n.tester(O);I.pts.pop(),v.push(I)}:u=function(z){v.push(n.tester(z))},E.type){case"MultiPolygon":for(y=0;y0?I.properties.ct=l(I):I.properties.ct=[NaN,NaN],O.fIn=z,O.fOut=I,v.push(I)}else r.log(["Location",O.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete b[F]}switch(m.type){case"FeatureCollection":var P=m.features;for(u=0;uv&&(v=f,m=y)}else m=E;return S(m).geometry.coordinates}function _(M){var E=window.PlotlyGeoAssets||{},m=[];function b(P){return new Promise(function(L,z){g.json(P,function(F,O){if(F){delete E[P];var B=F.status===404?'GeoJSON at URL "'+P+'" does not exist.':"Unexpected error while fetching from "+P;return z(new Error(B))}return E[P]=O,L(O)})})}function v(P){return new Promise(function(L,z){var F=0,O=setInterval(function(){if(E[P]&&E[P]!=="pending")return clearInterval(O),L(E[P]);if(F>100)return clearInterval(O),z("Unexpected error while fetching from "+P);F++},50)})}for(var u=0;u")}}}),WI=Le({"src/traces/scattergeo/event_data.js"(Z,H){"use strict";H.exports=function(x,A,S,e,t){x.lon=A.lon,x.lat=A.lat,x.location=A.loc?A.loc:null;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x}}}),XI=Le({"src/traces/scattergeo/select.js"(Z,H){"use strict";var g=gu(),x=$n().BADNUM;H.exports=function(S,e){var t=S.cd,r=S.xaxis,o=S.yaxis,i=[],n=t[0].trace,a,s,c,h,p,d=!g.hasMarkers(n)&&!g.hasText(n);if(d)return[];if(e===!1)for(p=0;pX?1:$>=X?0:NaN}function A($){return $.length===1&&($=S($)),{left:function(X,re,ae,j){for(ae==null&&(ae=0),j==null&&(j=X.length);ae>>1;$(X[ee],re)<0?ae=ee+1:j=ee}return ae},right:function(X,re,ae,j){for(ae==null&&(ae=0),j==null&&(j=X.length);ae>>1;$(X[ee],re)>0?j=ee:ae=ee+1}return ae}}}function S($){return function(X,re){return x($(X),re)}}var e=A(x),t=e.right,r=e.left;function o($,X){X==null&&(X=i);for(var re=0,ae=$.length-1,j=$[0],ee=new Array(ae<0?0:ae);re$?1:X>=$?0:NaN}function s($){return $===null?NaN:+$}function c($,X){var re=$.length,ae=0,j=-1,ee=0,ne,ce,_e=0;if(X==null)for(;++j1)return _e/(ae-1)}function h($,X){var re=c($,X);return re&&Math.sqrt(re)}function p($,X){var re=$.length,ae=-1,j,ee,ne;if(X==null){for(;++ae=j)for(ee=ne=j;++aej&&(ee=j),ne=j)for(ee=ne=j;++aej&&(ee=j),ne0)return[$];if((ae=X<$)&&(ee=$,$=X,X=ee),(ce=u($,X,re))===0||!isFinite(ce))return[];if(ce>0)for($=Math.ceil($/ce),X=Math.floor(X/ce),ne=new Array(ee=Math.ceil(X-$+1));++j=0?(ee>=E?10:ee>=m?5:ee>=b?2:1)*Math.pow(10,j):-Math.pow(10,-j)/(ee>=E?10:ee>=m?5:ee>=b?2:1)}function y($,X,re){var ae=Math.abs(X-$)/Math.max(0,re),j=Math.pow(10,Math.floor(Math.log(ae)/Math.LN10)),ee=ae/j;return ee>=E?j*=10:ee>=m?j*=5:ee>=b&&(j*=2),X<$?-j:j}function f($){return Math.ceil(Math.log($.length)/Math.LN2)+1}function P(){var $=w,X=p,re=f;function ae(j){var ee,ne=j.length,ce,_e=new Array(ne);for(ee=0;eeIe;)Xe.pop(),--tt;var rt=new Array(tt+1),Je;for(ee=0;ee<=tt;++ee)Je=rt[ee]=[],Je.x0=ee>0?Xe[ee-1]:Oe,Je.x1=ee=1)return+re($[ae-1],ae-1,$);var ae,j=(ae-1)*X,ee=Math.floor(j),ne=+re($[ee],ee,$),ce=+re($[ee+1],ee+1,$);return ne+(ce-ne)*(j-ee)}}function z($,X,re){return $=l.call($,s).sort(x),Math.ceil((re-X)/(2*(L($,.75)-L($,.25))*Math.pow($.length,-1/3)))}function F($,X,re){return Math.ceil((re-X)/(3.5*h($)*Math.pow($.length,-1/3)))}function O($,X){var re=$.length,ae=-1,j,ee;if(X==null){for(;++ae=j)for(ee=j;++aeee&&(ee=j)}else for(;++ae=j)for(ee=j;++aeee&&(ee=j);return ee}function B($,X){var re=$.length,ae=re,j=-1,ee,ne=0;if(X==null)for(;++j=0;)for(ne=$[X],re=ne.length;--re>=0;)ee[--j]=ne[re];return ee}function U($,X){var re=$.length,ae=-1,j,ee;if(X==null){for(;++ae=j)for(ee=j;++aej&&(ee=j)}else for(;++ae=j)for(ee=j;++aej&&(ee=j);return ee}function W($,X){for(var re=X.length,ae=new Array(re);re--;)ae[re]=$[X[re]];return ae}function Q($,X){if(re=$.length){var re,ae=0,j=0,ee,ne=$[j];for(X==null&&(X=x);++ae0?1:Zt<0?-1:0},v=Math.sqrt,u=Math.tan;function y(Zt){return Zt>1?0:Zt<-1?i:Math.acos(Zt)}function f(Zt){return Zt>1?n:Zt<-1?-n:Math.asin(Zt)}function P(Zt){return(Zt=m(Zt/2))*Zt}function L(){}function z(Zt,hr){Zt&&O.hasOwnProperty(Zt.type)&&O[Zt.type](Zt,hr)}var F={Feature:function(Zt,hr){z(Zt.geometry,hr)},FeatureCollection:function(Zt,hr){for(var Kr=Zt.features,qr=-1,ki=Kr.length;++qr=0?1:-1,ki=qr*Kr,an=l(hr),pn=m(hr),Pn=G*pn,Vn=fe*an+Pn*l(ki),ra=Pn*qr*m(ki);U.add(T(ra,Vn)),se=Zt,fe=an,G=pn}function j(Zt){return W.reset(),N(Zt,J),W*2}function ee(Zt){return[T(Zt[1],Zt[0]),f(Zt[2])]}function ne(Zt){var hr=Zt[0],Kr=Zt[1],qr=l(Kr);return[qr*l(hr),qr*m(hr),m(Kr)]}function ce(Zt,hr){return Zt[0]*hr[0]+Zt[1]*hr[1]+Zt[2]*hr[2]}function _e(Zt,hr){return[Zt[1]*hr[2]-Zt[2]*hr[1],Zt[2]*hr[0]-Zt[0]*hr[2],Zt[0]*hr[1]-Zt[1]*hr[0]]}function we(Zt,hr){Zt[0]+=hr[0],Zt[1]+=hr[1],Zt[2]+=hr[2]}function Oe(Zt,hr){return[Zt[0]*hr,Zt[1]*hr,Zt[2]*hr]}function Ie(Zt){var hr=v(Zt[0]*Zt[0]+Zt[1]*Zt[1]+Zt[2]*Zt[2]);Zt[0]/=hr,Zt[1]/=hr,Zt[2]/=hr}var Xe,tt,rt,Je,ot,Me,pe,ue,ze=A(),Qe,it,$e={point:kt,lineStart:Bt,lineEnd:jt,polygonStart:function(){$e.point=cr,$e.lineStart=nr,$e.lineEnd=Lr,ze.reset(),J.polygonStart()},polygonEnd:function(){J.polygonEnd(),$e.point=kt,$e.lineStart=Bt,$e.lineEnd=jt,U<0?(Xe=-(rt=180),tt=-(Je=90)):ze>r?Je=90:ze<-r&&(tt=-90),it[0]=Xe,it[1]=rt},sphere:function(){Xe=-(rt=180),tt=-(Je=90)}};function kt(Zt,hr){Qe.push(it=[Xe=Zt,rt=Zt]),hrJe&&(Je=hr)}function Mt(Zt,hr){var Kr=ne([Zt*h,hr*h]);if(ue){var qr=_e(ue,Kr),ki=[qr[1],-qr[0],0],an=_e(ki,qr);Ie(an),an=ee(an);var pn=Zt-ot,Pn=pn>0?1:-1,Vn=an[0]*c*Pn,ra,yn=p(pn)>180;yn^(Pn*otJe&&(Je=ra)):(Vn=(Vn+360)%360-180,yn^(Pn*otJe&&(Je=hr))),yn?Ztmr(Xe,rt)&&(rt=Zt):mr(Zt,rt)>mr(Xe,rt)&&(Xe=Zt):rt>=Xe?(Ztrt&&(rt=Zt)):Zt>ot?mr(Xe,Zt)>mr(Xe,rt)&&(rt=Zt):mr(Zt,rt)>mr(Xe,rt)&&(Xe=Zt)}else Qe.push(it=[Xe=Zt,rt=Zt]);hrJe&&(Je=hr),ue=Kr,ot=Zt}function Bt(){$e.point=Mt}function jt(){it[0]=Xe,it[1]=rt,$e.point=kt,ue=null}function cr(Zt,hr){if(ue){var Kr=Zt-ot;ze.add(p(Kr)>180?Kr+(Kr>0?360:-360):Kr)}else Me=Zt,pe=hr;J.point(Zt,hr),Mt(Zt,hr)}function nr(){J.lineStart()}function Lr(){cr(Me,pe),J.lineEnd(),p(ze)>r&&(Xe=-(rt=180)),it[0]=Xe,it[1]=rt,ue=null}function mr(Zt,hr){return(hr-=Zt)<0?hr+360:hr}function xr(Zt,hr){return Zt[0]-hr[0]}function mt(Zt,hr){return Zt[0]<=Zt[1]?Zt[0]<=hr&&hr<=Zt[1]:hrmr(qr[0],qr[1])&&(qr[1]=ki[1]),mr(ki[0],qr[1])>mr(qr[0],qr[1])&&(qr[0]=ki[0])):an.push(qr=ki);for(pn=-1/0,Kr=an.length-1,hr=0,qr=an[Kr];hr<=Kr;qr=ki,++hr)ki=an[hr],(Pn=mr(qr[1],ki[0]))>pn&&(pn=Pn,Xe=ki[0],rt=qr[1])}return Qe=it=null,Xe===1/0||tt===1/0?[[NaN,NaN],[NaN,NaN]]:[[Xe,tt],[rt,Je]]}var Ze,Ne,Se,Ve,Ee,be,Ce,et,ht,yt,Pt,Ot,Wt,$t,lr,fi,Pi={sphere:L,point:Bi,lineStart:en,lineEnd:vn,polygonStart:function(){Pi.lineStart=Xt,Pi.lineEnd=Dt},polygonEnd:function(){Pi.lineStart=en,Pi.lineEnd=vn}};function Bi(Zt,hr){Zt*=h,hr*=h;var Kr=l(hr);zi(Kr*l(Zt),Kr*m(Zt),m(hr))}function zi(Zt,hr,Kr){++Ze,Se+=(Zt-Se)/Ze,Ve+=(hr-Ve)/Ze,Ee+=(Kr-Ee)/Ze}function en(){Pi.point=Ri}function Ri(Zt,hr){Zt*=h,hr*=h;var Kr=l(hr);$t=Kr*l(Zt),lr=Kr*m(Zt),fi=m(hr),Pi.point=Zi,zi($t,lr,fi)}function Zi(Zt,hr){Zt*=h,hr*=h;var Kr=l(hr),qr=Kr*l(Zt),ki=Kr*m(Zt),an=m(hr),pn=T(v((pn=lr*an-fi*ki)*pn+(pn=fi*qr-$t*an)*pn+(pn=$t*ki-lr*qr)*pn),$t*qr+lr*ki+fi*an);Ne+=pn,be+=pn*($t+($t=qr)),Ce+=pn*(lr+(lr=ki)),et+=pn*(fi+(fi=an)),zi($t,lr,fi)}function vn(){Pi.point=Bi}function Xt(){Pi.point=qt}function Dt(){Ut(Ot,Wt),Pi.point=Bi}function qt(Zt,hr){Ot=Zt,Wt=hr,Zt*=h,hr*=h,Pi.point=Ut;var Kr=l(hr);$t=Kr*l(Zt),lr=Kr*m(Zt),fi=m(hr),zi($t,lr,fi)}function Ut(Zt,hr){Zt*=h,hr*=h;var Kr=l(hr),qr=Kr*l(Zt),ki=Kr*m(Zt),an=m(hr),pn=lr*an-fi*ki,Pn=fi*qr-$t*an,Vn=$t*ki-lr*qr,ra=v(pn*pn+Pn*Pn+Vn*Vn),yn=f(ra),In=ra&&-yn/ra;ht+=In*pn,yt+=In*Pn,Pt+=In*Vn,Ne+=yn,be+=yn*($t+($t=qr)),Ce+=yn*(lr+(lr=ki)),et+=yn*(fi+(fi=an)),zi($t,lr,fi)}function br(Zt){Ze=Ne=Se=Ve=Ee=be=Ce=et=ht=yt=Pt=0,N(Zt,Pi);var hr=ht,Kr=yt,qr=Pt,ki=hr*hr+Kr*Kr+qr*qr;return kii?Zt+Math.round(-Zt/s)*s:Zt,hr]}Yr.invert=Yr;function Di(Zt,hr,Kr){return(Zt%=s)?hr||Kr?_i($i(Zt),Mi(hr,Kr)):$i(Zt):hr||Kr?Mi(hr,Kr):Yr}function qi(Zt){return function(hr,Kr){return hr+=Zt,[hr>i?hr-s:hr<-i?hr+s:hr,Kr]}}function $i(Zt){var hr=qi(Zt);return hr.invert=qi(-Zt),hr}function Mi(Zt,hr){var Kr=l(Zt),qr=m(Zt),ki=l(hr),an=m(hr);function pn(Pn,Vn){var ra=l(Vn),yn=l(Pn)*ra,In=m(Pn)*ra,kn=m(Vn),cn=kn*Kr+yn*qr;return[T(In*ki-cn*an,yn*Kr-kn*qr),f(cn*ki+In*an)]}return pn.invert=function(Pn,Vn){var ra=l(Vn),yn=l(Pn)*ra,In=m(Pn)*ra,kn=m(Vn),cn=kn*ki-In*an;return[T(In*ki+kn*an,yn*Kr+cn*qr),f(cn*Kr-yn*qr)]},pn}function sn(Zt){Zt=Di(Zt[0]*h,Zt[1]*h,Zt.length>2?Zt[2]*h:0);function hr(Kr){return Kr=Zt(Kr[0]*h,Kr[1]*h),Kr[0]*=c,Kr[1]*=c,Kr}return hr.invert=function(Kr){return Kr=Zt.invert(Kr[0]*h,Kr[1]*h),Kr[0]*=c,Kr[1]*=c,Kr},hr}function vt(Zt,hr,Kr,qr,ki,an){if(Kr){var pn=l(hr),Pn=m(hr),Vn=qr*Kr;ki==null?(ki=hr+qr*s,an=hr-Vn/2):(ki=pt(pn,ki),an=pt(pn,an),(qr>0?kian)&&(ki+=qr*s));for(var ra,yn=ki;qr>0?yn>an:yn1&&Zt.push(Zt.pop().concat(Zt.shift()))},result:function(){var Kr=Zt;return Zt=[],hr=null,Kr}}}function wr(Zt,hr){return p(Zt[0]-hr[0])=0;--Pn)ki.point((In=yn[Pn])[0],In[1]);else qr(kn.x,kn.p.x,-1,ki);kn=kn.p}kn=kn.o,yn=kn.z,cn=!cn}while(!kn.v);ki.lineEnd()}}}function Br(Zt){if(hr=Zt.length){for(var hr,Kr=0,qr=Zt[0],ki;++Kr=0?1:-1,js=sl*Bs,il=js>i,Ps=mo*Po;if(Pr.add(T(Ps*sl*m(js),uo*us+Ps*l(js))),pn+=il?Bs+sl*s:Bs,il^cn>=Kr^ya>=Kr){var ql=_e(ne(kn),ne(Mo));Ie(ql);var Tl=_e(an,ql);Ie(Tl);var vl=(il^Bs>=0?-1:1)*f(Tl[2]);(qr>vl||qr===vl&&(ql[0]||ql[1]))&&(Pn+=il^Bs>=0?1:-1)}}return(pn<-r||pn0){for(Vn||(ki.polygonStart(),Vn=!0),ki.lineStart(),us=0;us1&&Zn&2&&Po.push(Po.pop().concat(Po.shift())),yn.push(Po.filter(Et))}}return kn}}function Et(Zt){return Zt.length>1}function ar(Zt,hr){return((Zt=Zt.x)[0]<0?Zt[1]-n-r:n-Zt[1])-((hr=hr.x)[0]<0?hr[1]-n-r:n-hr[1])}var gr=mi(function(){return!0},ti,Gi,[-i,-n]);function ti(Zt){var hr=NaN,Kr=NaN,qr=NaN,ki;return{lineStart:function(){Zt.lineStart(),ki=1},point:function(an,pn){var Pn=an>0?i:-i,Vn=p(an-hr);p(Vn-i)0?n:-n),Zt.point(qr,Kr),Zt.lineEnd(),Zt.lineStart(),Zt.point(Pn,Kr),Zt.point(an,Kr),ki=0):qr!==Pn&&Vn>=i&&(p(hr-qr)r?d((m(hr)*(an=l(qr))*m(Kr)-m(qr)*(ki=l(hr))*m(Zt))/(ki*an*pn)):(hr+qr)/2}function Gi(Zt,hr,Kr,qr){var ki;if(Zt==null)ki=Kr*n,qr.point(-i,ki),qr.point(0,ki),qr.point(i,ki),qr.point(i,0),qr.point(i,-ki),qr.point(0,-ki),qr.point(-i,-ki),qr.point(-i,0),qr.point(-i,ki);else if(p(Zt[0]-hr[0])>r){var an=Zt[0]0,ki=p(hr)>r;function an(yn,In,kn,cn){vt(cn,Zt,Kr,kn,yn,In)}function pn(yn,In){return l(yn)*l(In)>hr}function Pn(yn){var In,kn,cn,xa,mo;return{lineStart:function(){xa=cn=!1,mo=1},point:function(uo,go){var Mo=[uo,go],ya,Zn=pn(uo,go),Po=qr?Zn?0:ra(uo,go):Zn?ra(uo+(uo<0?i:-i),go):0;if(!In&&(xa=cn=Zn)&&yn.lineStart(),Zn!==cn&&(ya=Vn(In,Mo),(!ya||wr(In,ya)||wr(Mo,ya))&&(Mo[2]=1)),Zn!==cn)mo=0,Zn?(yn.lineStart(),ya=Vn(Mo,In),yn.point(ya[0],ya[1])):(ya=Vn(In,Mo),yn.point(ya[0],ya[1],2),yn.lineEnd()),In=ya;else if(ki&&In&&qr^Zn){var us;!(Po&kn)&&(us=Vn(Mo,In,!0))&&(mo=0,qr?(yn.lineStart(),yn.point(us[0][0],us[0][1]),yn.point(us[1][0],us[1][1]),yn.lineEnd()):(yn.point(us[1][0],us[1][1]),yn.lineEnd(),yn.lineStart(),yn.point(us[0][0],us[0][1],3)))}Zn&&(!In||!wr(In,Mo))&&yn.point(Mo[0],Mo[1]),In=Mo,cn=Zn,kn=Po},lineEnd:function(){cn&&yn.lineEnd(),In=null},clean:function(){return mo|(xa&&cn)<<1}}}function Vn(yn,In,kn){var cn=ne(yn),xa=ne(In),mo=[1,0,0],uo=_e(cn,xa),go=ce(uo,uo),Mo=uo[0],ya=go-Mo*Mo;if(!ya)return!kn&&yn;var Zn=hr*go/ya,Po=-hr*Mo/ya,us=_e(mo,uo),Bs=Oe(mo,Zn),sl=Oe(uo,Po);we(Bs,sl);var js=us,il=ce(Bs,js),Ps=ce(js,js),ql=il*il-Ps*(ce(Bs,Bs)-1);if(!(ql<0)){var Tl=v(ql),vl=Oe(js,(-il-Tl)/Ps);if(we(vl,Bs),vl=ee(vl),!kn)return vl;var Wa=yn[0],Go=In[0],el=yn[1],Os=In[1],du;Go0^vl[1]<(p(vl[0]-Wa)i^(Wa<=vl[0]&&vl[0]<=Go)){var Mu=Oe(js,(-il+Tl)/Ps);return we(Mu,Bs),[vl,ee(Mu)]}}}function ra(yn,In){var kn=qr?Zt:i-Zt,cn=0;return yn<-kn?cn|=1:yn>kn&&(cn|=2),In<-kn?cn|=4:In>kn&&(cn|=8),cn}return mi(pn,Pn,an,qr?[0,-Zt]:[-i,Zt-i])}function xi(Zt,hr,Kr,qr,ki,an){var pn=Zt[0],Pn=Zt[1],Vn=hr[0],ra=hr[1],yn=0,In=1,kn=Vn-pn,cn=ra-Pn,xa;if(xa=Kr-pn,!(!kn&&xa>0)){if(xa/=kn,kn<0){if(xa0){if(xa>In)return;xa>yn&&(yn=xa)}if(xa=ki-pn,!(!kn&&xa<0)){if(xa/=kn,kn<0){if(xa>In)return;xa>yn&&(yn=xa)}else if(kn>0){if(xa0)){if(xa/=cn,cn<0){if(xa0){if(xa>In)return;xa>yn&&(yn=xa)}if(xa=an-Pn,!(!cn&&xa<0)){if(xa/=cn,cn<0){if(xa>In)return;xa>yn&&(yn=xa)}else if(cn>0){if(xa0&&(Zt[0]=pn+yn*kn,Zt[1]=Pn+yn*cn),In<1&&(hr[0]=pn+In*kn,hr[1]=Pn+In*cn),!0}}}}}var Ii=1e9,Bn=-Ii;function hn(Zt,hr,Kr,qr){function ki(ra,yn){return Zt<=ra&&ra<=Kr&&hr<=yn&&yn<=qr}function an(ra,yn,In,kn){var cn=0,xa=0;if(ra==null||(cn=pn(ra,In))!==(xa=pn(yn,In))||Vn(ra,yn)<0^In>0)do kn.point(cn===0||cn===3?Zt:Kr,cn>1?qr:hr);while((cn=(cn+In+4)%4)!==xa);else kn.point(yn[0],yn[1])}function pn(ra,yn){return p(ra[0]-Zt)0?0:3:p(ra[0]-Kr)0?2:1:p(ra[1]-hr)0?1:0:yn>0?3:2}function Pn(ra,yn){return Vn(ra.x,yn.x)}function Vn(ra,yn){var In=pn(ra,1),kn=pn(yn,1);return In!==kn?In-kn:In===0?yn[1]-ra[1]:In===1?ra[0]-yn[0]:In===2?ra[1]-yn[1]:yn[0]-ra[0]}return function(ra){var yn=ra,In=Cr(),kn,cn,xa,mo,uo,go,Mo,ya,Zn,Po,us,Bs={point:sl,lineStart:ql,lineEnd:Tl,polygonStart:il,polygonEnd:Ps};function sl(Wa,Go){ki(Wa,Go)&&yn.point(Wa,Go)}function js(){for(var Wa=0,Go=0,el=cn.length;Goqr&&(Vc-nf)*(qr-Mu)>(Fu-Mu)*(Zt-nf)&&++Wa:Fu<=qr&&(Vc-nf)*(qr-Mu)<(Fu-Mu)*(Zt-nf)&&--Wa;return Wa}function il(){yn=In,kn=[],cn=[],us=!0}function Ps(){var Wa=js(),Go=us&&Wa,el=(kn=x.merge(kn)).length;(Go||el)&&(ra.polygonStart(),Go&&(ra.lineStart(),an(null,null,1,ra),ra.lineEnd()),el&&Er(kn,Pn,Wa,an,ra),ra.polygonEnd()),yn=ra,kn=cn=xa=null}function ql(){Bs.point=vl,cn&&cn.push(xa=[]),Po=!0,Zn=!1,Mo=ya=NaN}function Tl(){kn&&(vl(mo,uo),go&&Zn&&In.rejoin(),kn.push(In.result())),Bs.point=sl,Zn&&yn.lineEnd()}function vl(Wa,Go){var el=ki(Wa,Go);if(cn&&xa.push([Wa,Go]),Po)mo=Wa,uo=Go,go=el,Po=!1,el&&(yn.lineStart(),yn.point(Wa,Go));else if(el&&Zn)yn.point(Wa,Go);else{var Os=[Mo=Math.max(Bn,Math.min(Ii,Mo)),ya=Math.max(Bn,Math.min(Ii,ya))],du=[Wa=Math.max(Bn,Math.min(Ii,Wa)),Go=Math.max(Bn,Math.min(Ii,Go))];xi(Os,du,Zt,hr,Kr,qr)?(Zn||(yn.lineStart(),yn.point(Os[0],Os[1])),yn.point(du[0],du[1]),el||yn.lineEnd(),us=!1):el&&(yn.lineStart(),yn.point(Wa,Go),us=!1)}Mo=Wa,ya=Go,Zn=el}return Bs}}function ba(){var Zt=0,hr=0,Kr=960,qr=500,ki,an,pn;return pn={stream:function(Pn){return ki&&an===Pn?ki:ki=hn(Zt,hr,Kr,qr)(an=Pn)},extent:function(Pn){return arguments.length?(Zt=+Pn[0][0],hr=+Pn[0][1],Kr=+Pn[1][0],qr=+Pn[1][1],ki=an=null,pn):[[Zt,hr],[Kr,qr]]}}}var Aa=A(),Va,Qa,yo,Ga={sphere:L,point:L,lineStart:Yo,lineEnd:L,polygonStart:L,polygonEnd:L};function Yo(){Ga.point=vs,Ga.lineEnd=da}function da(){Ga.point=Ga.lineEnd=L}function vs(Zt,hr){Zt*=h,hr*=h,Va=Zt,Qa=m(hr),yo=l(hr),Ga.point=es}function es(Zt,hr){Zt*=h,hr*=h;var Kr=m(hr),qr=l(hr),ki=p(Zt-Va),an=l(ki),pn=m(ki),Pn=qr*pn,Vn=yo*Kr-Qa*qr*an,ra=Qa*Kr+yo*qr*an;Aa.add(T(v(Pn*Pn+Vn*Vn),ra)),Va=Zt,Qa=Kr,yo=qr}function bs(Zt){return Aa.reset(),N(Zt,Ga),+Aa}var Xa=[null,null],Bo={type:"LineString",coordinates:Xa};function Za(Zt,hr){return Xa[0]=Zt,Xa[1]=hr,bs(Bo)}var Qo={Feature:function(Zt,hr){return gs(Zt.geometry,hr)},FeatureCollection:function(Zt,hr){for(var Kr=Zt.features,qr=-1,ki=Kr.length;++qr0&&(ki=Za(Zt[an],Zt[an-1]),ki>0&&Kr<=ki&&qr<=ki&&(Kr+qr-ki)*(1-Math.pow((Kr-qr)/ki,2))r}).map(kn)).concat(x.range(_(an/ra)*ra,ki,ra).filter(function(ya){return p(ya%In)>r}).map(cn))}return go.lines=function(){return Mo().map(function(ya){return{type:"LineString",coordinates:ya}})},go.outline=function(){return{type:"Polygon",coordinates:[xa(qr).concat(mo(pn).slice(1),xa(Kr).reverse().slice(1),mo(Pn).reverse().slice(1))]}},go.extent=function(ya){return arguments.length?go.extentMajor(ya).extentMinor(ya):go.extentMinor()},go.extentMajor=function(ya){return arguments.length?(qr=+ya[0][0],Kr=+ya[1][0],Pn=+ya[0][1],pn=+ya[1][1],qr>Kr&&(ya=qr,qr=Kr,Kr=ya),Pn>pn&&(ya=Pn,Pn=pn,pn=ya),go.precision(uo)):[[qr,Pn],[Kr,pn]]},go.extentMinor=function(ya){return arguments.length?(hr=+ya[0][0],Zt=+ya[1][0],an=+ya[0][1],ki=+ya[1][1],hr>Zt&&(ya=hr,hr=Zt,Zt=ya),an>ki&&(ya=an,an=ki,ki=ya),go.precision(uo)):[[hr,an],[Zt,ki]]},go.step=function(ya){return arguments.length?go.stepMajor(ya).stepMinor(ya):go.stepMinor()},go.stepMajor=function(ya){return arguments.length?(yn=+ya[0],In=+ya[1],go):[yn,In]},go.stepMinor=function(ya){return arguments.length?(Vn=+ya[0],ra=+ya[1],go):[Vn,ra]},go.precision=function(ya){return arguments.length?(uo=+ya,kn=bn(an,ki,90),cn=Ra(hr,Zt,uo),xa=bn(Pn,pn,90),mo=Ra(qr,Kr,uo),go):uo},go.extentMajor([[-180,-90+r],[180,90-r]]).extentMinor([[-180,-80-r],[180,80+r]])}function Ys(){return _l()()}function ko(Zt,hr){var Kr=Zt[0]*h,qr=Zt[1]*h,ki=hr[0]*h,an=hr[1]*h,pn=l(qr),Pn=m(qr),Vn=l(an),ra=m(an),yn=pn*l(Kr),In=pn*m(Kr),kn=Vn*l(ki),cn=Vn*m(ki),xa=2*f(v(P(an-qr)+pn*Vn*P(ki-Kr))),mo=m(xa),uo=xa?function(go){var Mo=m(go*=xa)/mo,ya=m(xa-go)/mo,Zn=ya*yn+Mo*kn,Po=ya*In+Mo*cn,us=ya*Pn+Mo*ra;return[T(Po,Zn)*c,T(us,v(Zn*Zn+Po*Po))*c]}:function(){return[Kr*c,qr*c]};return uo.distance=xa,uo}function Js(Zt){return Zt}var ks=A(),ml=A(),El,aa,Ho,po,zs={point:L,lineStart:L,lineEnd:L,polygonStart:function(){zs.lineStart=hs,zs.lineEnd=Ju},polygonEnd:function(){zs.lineStart=zs.lineEnd=zs.point=L,ks.add(p(ml)),ml.reset()},result:function(){var Zt=ks/2;return ks.reset(),Zt}};function hs(){zs.point=to}function to(Zt,hr){zs.point=tu,El=Ho=Zt,aa=po=hr}function tu(Zt,hr){ml.add(po*Zt-Ho*hr),Ho=Zt,po=hr}function Ju(){tu(El,aa)}var kl=1/0,Hu=kl,Bl=-kl,rl=Bl,au={point:Gu,lineStart:L,lineEnd:L,polygonStart:L,polygonEnd:L,result:function(){var Zt=[[kl,Hu],[Bl,rl]];return Bl=rl=-(Hu=kl=1/0),Zt}};function Gu(Zt,hr){ZtBl&&(Bl=Zt),hrrl&&(rl=hr)}var Fc=0,Qu=0,fh=0,yf=0,Gs=0,$c=0,kf=0,ru=0,Cl=0,fc,Ac,ol,Ll,Ks={point:fl,lineStart:hc,lineEnd:hl,polygonStart:function(){Ks.lineStart=jh,Ks.lineEnd=ys},polygonEnd:function(){Ks.point=fl,Ks.lineStart=hc,Ks.lineEnd=hl},result:function(){var Zt=Cl?[kf/Cl,ru/Cl]:$c?[yf/$c,Gs/$c]:fh?[Fc/fh,Qu/fh]:[NaN,NaN];return Fc=Qu=fh=yf=Gs=$c=kf=ru=Cl=0,Zt}};function fl(Zt,hr){Fc+=Zt,Qu+=hr,++fh}function hc(){Ks.point=Wl}function Wl(Zt,hr){Ks.point=ec,fl(ol=Zt,Ll=hr)}function ec(Zt,hr){var Kr=Zt-ol,qr=hr-Ll,ki=v(Kr*Kr+qr*qr);yf+=ki*(ol+Zt)/2,Gs+=ki*(Ll+hr)/2,$c+=ki,fl(ol=Zt,Ll=hr)}function hl(){Ks.point=fl}function jh(){Ks.point=Lh}function ys(){Us(fc,Ac)}function Lh(Zt,hr){Ks.point=Us,fl(fc=ol=Zt,Ac=Ll=hr)}function Us(Zt,hr){var Kr=Zt-ol,qr=hr-Ll,ki=v(Kr*Kr+qr*qr);yf+=ki*(ol+Zt)/2,Gs+=ki*(Ll+hr)/2,$c+=ki,ki=Ll*Zt-ol*hr,kf+=ki*(ol+Zt),ru+=ki*(Ll+hr),Cl+=ki*3,fl(ol=Zt,Ll=hr)}function Wo(Zt){this._context=Zt}Wo.prototype={_radius:4.5,pointRadius:function(Zt){return this._radius=Zt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(Zt,hr){switch(this._point){case 0:{this._context.moveTo(Zt,hr),this._point=1;break}case 1:{this._context.lineTo(Zt,hr);break}default:{this._context.moveTo(Zt+this._radius,hr),this._context.arc(Zt,hr,this._radius,0,s);break}}},result:L};var ff=A(),tc,yu,Uf,Bc,hf,Xl={point:L,lineStart:function(){Xl.point=rh},lineEnd:function(){tc&&jf(yu,Uf),Xl.point=L},polygonStart:function(){tc=!0},polygonEnd:function(){tc=null},result:function(){var Zt=+ff;return ff.reset(),Zt}};function rh(Zt,hr){Xl.point=jf,yu=Bc=Zt,Uf=hf=hr}function jf(Zt,hr){Bc-=Zt,hf-=hr,ff.add(v(Bc*Bc+hf*hf)),Bc=Zt,hf=hr}function Cf(){this._string=[]}Cf.prototype={_radius:4.5,_circle:Jc(4.5),pointRadius:function(Zt){return(Zt=+Zt)!==this._radius&&(this._radius=Zt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(Zt,hr){switch(this._point){case 0:{this._string.push("M",Zt,",",hr),this._point=1;break}case 1:{this._string.push("L",Zt,",",hr);break}default:{this._circle==null&&(this._circle=Jc(this._radius)),this._string.push("M",Zt,",",hr,this._circle);break}}},result:function(){if(this._string.length){var Zt=this._string.join("");return this._string=[],Zt}else return null}};function Jc(Zt){return"m0,"+Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+-2*Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+2*Zt+"z"}function Vf(Zt,hr){var Kr=4.5,qr,ki;function an(pn){return pn&&(typeof Kr=="function"&&ki.pointRadius(+Kr.apply(this,arguments)),N(pn,qr(ki))),ki.result()}return an.area=function(pn){return N(pn,qr(zs)),zs.result()},an.measure=function(pn){return N(pn,qr(Xl)),Xl.result()},an.bounds=function(pn){return N(pn,qr(au)),au.result()},an.centroid=function(pn){return N(pn,qr(Ks)),Ks.result()},an.projection=function(pn){return arguments.length?(qr=pn==null?(Zt=null,Js):(Zt=pn).stream,an):Zt},an.context=function(pn){return arguments.length?(ki=pn==null?(hr=null,new Cf):new Wo(hr=pn),typeof Kr!="function"&&ki.pointRadius(Kr),an):hr},an.pointRadius=function(pn){return arguments.length?(Kr=typeof pn=="function"?pn:(ki.pointRadius(+pn),+pn),an):Kr},an.projection(Zt).context(hr)}function ih(Zt){return{stream:rc(Zt)}}function rc(Zt){return function(hr){var Kr=new Lf;for(var qr in Zt)Kr[qr]=Zt[qr];return Kr.stream=hr,Kr}}function Lf(){}Lf.prototype={constructor:Lf,point:function(Zt,hr){this.stream.point(Zt,hr)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Oc(Zt,hr,Kr){var qr=Zt.clipExtent&&Zt.clipExtent();return Zt.scale(150).translate([0,0]),qr!=null&&Zt.clipExtent(null),N(Kr,Zt.stream(au)),hr(au.result()),qr!=null&&Zt.clipExtent(qr),Zt}function Qc(Zt,hr,Kr){return Oc(Zt,function(qr){var ki=hr[1][0]-hr[0][0],an=hr[1][1]-hr[0][1],pn=Math.min(ki/(qr[1][0]-qr[0][0]),an/(qr[1][1]-qr[0][1])),Pn=+hr[0][0]+(ki-pn*(qr[1][0]+qr[0][0]))/2,Vn=+hr[0][1]+(an-pn*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*pn).translate([Pn,Vn])},Kr)}function Pu(Zt,hr,Kr){return Qc(Zt,[[0,0],hr],Kr)}function _f(Zt,hr,Kr){return Oc(Zt,function(qr){var ki=+hr,an=ki/(qr[1][0]-qr[0][0]),pn=(ki-an*(qr[1][0]+qr[0][0]))/2,Pn=-an*qr[0][1];Zt.scale(150*an).translate([pn,Pn])},Kr)}function Nc(Zt,hr,Kr){return Oc(Zt,function(qr){var ki=+hr,an=ki/(qr[1][1]-qr[0][1]),pn=-an*qr[0][0],Pn=(ki-an*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*an).translate([pn,Pn])},Kr)}var Qs=16,qf=l(30*h);function Ph(Zt,hr){return+hr?df(Zt,hr):nh(Zt)}function nh(Zt){return rc({point:function(hr,Kr){hr=Zt(hr,Kr),this.stream.point(hr[0],hr[1])}})}function df(Zt,hr){function Kr(qr,ki,an,pn,Pn,Vn,ra,yn,In,kn,cn,xa,mo,uo){var go=ra-qr,Mo=yn-ki,ya=go*go+Mo*Mo;if(ya>4*hr&&mo--){var Zn=pn+kn,Po=Pn+cn,us=Vn+xa,Bs=v(Zn*Zn+Po*Po+us*us),sl=f(us/=Bs),js=p(p(us)-1)hr||p((go*Tl+Mo*vl)/ya-.5)>.3||pn*kn+Pn*cn+Vn*xa2?Wa[2]%360*h:0,Tl()):[Pn*c,Vn*c,ra*c]},Ps.angle=function(Wa){return arguments.length?(In=Wa%360*h,Tl()):In*c},Ps.reflectX=function(Wa){return arguments.length?(kn=Wa?-1:1,Tl()):kn<0},Ps.reflectY=function(Wa){return arguments.length?(cn=Wa?-1:1,Tl()):cn<0},Ps.precision=function(Wa){return arguments.length?(us=Ph(Bs,Po=Wa*Wa),vl()):v(Po)},Ps.fitExtent=function(Wa,Go){return Qc(Ps,Wa,Go)},Ps.fitSize=function(Wa,Go){return Pu(Ps,Wa,Go)},Ps.fitWidth=function(Wa,Go){return _f(Ps,Wa,Go)},Ps.fitHeight=function(Wa,Go){return Nc(Ps,Wa,Go)};function Tl(){var Wa=cu(Kr,0,0,kn,cn,In).apply(null,hr(an,pn)),Go=(In?cu:ah)(Kr,qr-Wa[0],ki-Wa[1],kn,cn,In);return yn=Di(Pn,Vn,ra),Bs=_i(hr,Go),sl=_i(yn,Bs),us=Ph(Bs,Po),vl()}function vl(){return js=il=null,Ps}return function(){return hr=Zt.apply(this,arguments),Ps.invert=hr.invert&&ql,Tl()}}function Ol(Zt){var hr=0,Kr=i/3,qr=Mc(Zt),ki=qr(hr,Kr);return ki.parallels=function(an){return arguments.length?qr(hr=an[0]*h,Kr=an[1]*h):[hr*c,Kr*c]},ki}function Uc(Zt){var hr=l(Zt);function Kr(qr,ki){return[qr*hr,m(ki)/hr]}return Kr.invert=function(qr,ki){return[qr/hr,f(ki*hr)]},Kr}function ic(Zt,hr){var Kr=m(Zt),qr=(Kr+m(hr))/2;if(p(qr)=.12&&uo<.234&&mo>=-.425&&mo<-.214?ki:uo>=.166&&uo<.234&&mo>=-.214&&mo<-.115?pn:Kr).invert(kn)},yn.stream=function(kn){return Zt&&hr===kn?Zt:Zt=oh([Kr.stream(hr=kn),ki.stream(kn),pn.stream(kn)])},yn.precision=function(kn){return arguments.length?(Kr.precision(kn),ki.precision(kn),pn.precision(kn),In()):Kr.precision()},yn.scale=function(kn){return arguments.length?(Kr.scale(kn),ki.scale(kn*.35),pn.scale(kn),yn.translate(Kr.translate())):Kr.scale()},yn.translate=function(kn){if(!arguments.length)return Kr.translate();var cn=Kr.scale(),xa=+kn[0],mo=+kn[1];return qr=Kr.translate(kn).clipExtent([[xa-.455*cn,mo-.238*cn],[xa+.455*cn,mo+.238*cn]]).stream(ra),an=ki.translate([xa-.307*cn,mo+.201*cn]).clipExtent([[xa-.425*cn+r,mo+.12*cn+r],[xa-.214*cn-r,mo+.234*cn-r]]).stream(ra),Pn=pn.translate([xa-.205*cn,mo+.212*cn]).clipExtent([[xa-.214*cn+r,mo+.166*cn+r],[xa-.115*cn-r,mo+.234*cn-r]]).stream(ra),In()},yn.fitExtent=function(kn,cn){return Qc(yn,kn,cn)},yn.fitSize=function(kn,cn){return Pu(yn,kn,cn)},yn.fitWidth=function(kn,cn){return _f(yn,kn,cn)},yn.fitHeight=function(kn,cn){return Nc(yn,kn,cn)};function In(){return Zt=hr=null,yn}return yn.scale(1070)}function Wu(Zt){return function(hr,Kr){var qr=l(hr),ki=l(Kr),an=Zt(qr*ki);return[an*ki*m(hr),an*m(Kr)]}}function Sc(Zt){return function(hr,Kr){var qr=v(hr*hr+Kr*Kr),ki=Zt(qr),an=m(ki),pn=l(ki);return[T(hr*an,qr*pn),f(qr&&Kr*an/qr)]}}var dc=Wu(function(Zt){return v(2/(1+Zt))});dc.invert=Sc(function(Zt){return 2*f(Zt/2)});function Vh(){return Ru(dc).scale(124.75).clipAngle(180-.001)}var vf=Wu(function(Zt){return(Zt=y(Zt))&&Zt/m(Zt)});vf.invert=Sc(function(Zt){return Zt});function xf(){return Ru(vf).scale(79.4188).clipAngle(180-.001)}function Du(Zt,hr){return[Zt,M(u((n+hr)/2))]}Du.invert=function(Zt,hr){return[Zt,2*d(w(hr))-n]};function Pf(){return fu(Du).scale(961/s)}function fu(Zt){var hr=Ru(Zt),Kr=hr.center,qr=hr.scale,ki=hr.translate,an=hr.clipExtent,pn=null,Pn,Vn,ra;hr.scale=function(In){return arguments.length?(qr(In),yn()):qr()},hr.translate=function(In){return arguments.length?(ki(In),yn()):ki()},hr.center=function(In){return arguments.length?(Kr(In),yn()):Kr()},hr.clipExtent=function(In){return arguments.length?(In==null?pn=Pn=Vn=ra=null:(pn=+In[0][0],Pn=+In[0][1],Vn=+In[1][0],ra=+In[1][1]),yn()):pn==null?null:[[pn,Pn],[Vn,ra]]};function yn(){var In=i*qr(),kn=hr(sn(hr.rotate()).invert([0,0]));return an(pn==null?[[kn[0]-In,kn[1]-In],[kn[0]+In,kn[1]+In]]:Zt===Du?[[Math.max(kn[0]-In,pn),Pn],[Math.min(kn[0]+In,Vn),ra]]:[[pn,Math.max(kn[1]-In,Pn)],[Vn,Math.min(kn[1]+In,ra)]])}return yn()}function ef(Zt){return u((n+Zt)/2)}function vh(Zt,hr){var Kr=l(Zt),qr=Zt===hr?m(Zt):M(Kr/l(hr))/M(ef(hr)/ef(Zt)),ki=Kr*E(ef(Zt),qr)/qr;if(!qr)return Du;function an(pn,Pn){ki>0?Pn<-n+r&&(Pn=-n+r):Pn>n-r&&(Pn=n-r);var Vn=ki/E(ef(Pn),qr);return[Vn*m(qr*pn),ki-Vn*l(qr*pn)]}return an.invert=function(pn,Pn){var Vn=ki-Pn,ra=b(qr)*v(pn*pn+Vn*Vn),yn=T(pn,p(Vn))*b(Vn);return Vn*qr<0&&(yn-=i*b(pn)*b(Vn)),[yn/qr,2*d(E(ki/ra,1/qr))-n]},an}function If(){return Ol(vh).scale(109.5).parallels([30,30])}function yl(Zt,hr){return[Zt,hr]}yl.invert=yl;function Tu(){return Ru(yl).scale(152.63)}function Au(Zt,hr){var Kr=l(Zt),qr=Zt===hr?m(Zt):(Kr-l(hr))/(hr-Zt),ki=Kr/qr+Zt;if(p(qr)r&&--qr>0);return[Zt/(.8707+(an=Kr*Kr)*(-.131979+an*(-.013791+an*an*an*(.003971-.001529*an)))),Kr]};function pc(){return Ru(kc).scale(175.295)}function Nl(Zt,hr){return[l(hr)*m(Zt),m(hr)]}Nl.invert=Sc(f);function hu(){return Ru(Nl).scale(249.5).clipAngle(90+r)}function mc(Zt,hr){var Kr=l(hr),qr=1+l(Zt)*Kr;return[Kr*m(Zt)/qr,m(hr)/qr]}mc.invert=Sc(function(Zt){return 2*d(Zt)});function jc(){return Ru(mc).scale(250).clipAngle(142)}function nc(Zt,hr){return[M(u((n+hr)/2)),-Zt]}nc.invert=function(Zt,hr){return[-hr,2*d(w(Zt))-n]};function rf(){var Zt=fu(nc),hr=Zt.center,Kr=Zt.rotate;return Zt.center=function(qr){return arguments.length?hr([-qr[1],qr[0]]):(qr=hr(),[qr[1],-qr[0]])},Zt.rotate=function(qr){return arguments.length?Kr([qr[0],qr[1],qr.length>2?qr[2]+90:90]):(qr=Kr(),[qr[0],qr[1],qr[2]-90])},Kr([0,0,90]).scale(159.155)}g.geoAlbers=Pl,g.geoAlbersUsa=dh,g.geoArea=j,g.geoAzimuthalEqualArea=Vh,g.geoAzimuthalEqualAreaRaw=dc,g.geoAzimuthalEquidistant=xf,g.geoAzimuthalEquidistantRaw=vf,g.geoBounds=Fe,g.geoCentroid=br,g.geoCircle=kr,g.geoClipAntimeridian=gr,g.geoClipCircle=Fi,g.geoClipExtent=ba,g.geoClipRectangle=hn,g.geoConicConformal=If,g.geoConicConformalRaw=vh,g.geoConicEqualArea=wu,g.geoConicEqualAreaRaw=ic,g.geoConicEquidistant=Hf,g.geoConicEquidistantRaw=Au,g.geoContains=ps,g.geoDistance=Za,g.geoEqualEarth=Gf,g.geoEqualEarthRaw=tf,g.geoEquirectangular=Tu,g.geoEquirectangularRaw=yl,g.geoGnomonic=Wf,g.geoGnomonicRaw=Jl,g.geoGraticule=_l,g.geoGraticule10=Ys,g.geoIdentity=Zu,g.geoInterpolate=ko,g.geoLength=bs,g.geoMercator=Pf,g.geoMercatorRaw=Du,g.geoNaturalEarth1=pc,g.geoNaturalEarth1Raw=kc,g.geoOrthographic=hu,g.geoOrthographicRaw=Nl,g.geoPath=Vf,g.geoProjection=Ru,g.geoProjectionMutator=Mc,g.geoRotation=sn,g.geoStereographic=jc,g.geoStereographicRaw=mc,g.geoStream=N,g.geoTransform=ih,g.geoTransverseMercator=rf,g.geoTransverseMercatorRaw=nc,Object.defineProperty(g,"__esModule",{value:!0})})}}),ZI=Le({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z,fA(),Qy()):x(g.d3=g.d3||{},g.d3,g.d3)})(Z,function(g,x,A){"use strict";var S=Math.abs,e=Math.atan,t=Math.atan2,r=Math.cos,o=Math.exp,i=Math.floor,n=Math.log,a=Math.max,s=Math.min,c=Math.pow,h=Math.round,p=Math.sign||function(qe){return qe>0?1:qe<0?-1:0},d=Math.sin,T=Math.tan,l=1e-6,_=1e-12,w=Math.PI,M=w/2,E=w/4,m=Math.SQRT1_2,b=F(2),v=F(w),u=w*2,y=180/w,f=w/180;function P(qe){return qe?qe/Math.sin(qe):1}function L(qe){return qe>1?M:qe<-1?-M:Math.asin(qe)}function z(qe){return qe>1?0:qe<-1?w:Math.acos(qe)}function F(qe){return qe>0?Math.sqrt(qe):0}function O(qe){return qe=o(2*qe),(qe-1)/(qe+1)}function B(qe){return(o(qe)-o(-qe))/2}function I(qe){return(o(qe)+o(-qe))/2}function N(qe){return n(qe+F(qe*qe+1))}function U(qe){return n(qe+F(qe*qe-1))}function W(qe){var Ye=T(qe/2),nt=2*n(r(qe/2))/(Ye*Ye);function ct(Tt,gt){var Lt=r(Tt),tr=r(gt),or=d(gt),vr=tr*Lt,Sr=-((1-vr?n((1+vr)/2)/(1-vr):-.5)+nt/(1+vr));return[Sr*tr*d(Tt),Sr*or]}return ct.invert=function(Tt,gt){var Lt=F(Tt*Tt+gt*gt),tr=-qe/2,or=50,vr;if(!Lt)return[0,0];do{var Sr=tr/2,Wr=r(Sr),yi=d(Sr),Ai=yi/Wr,Oi=-n(S(Wr));tr-=vr=(2/Ai*Oi-nt*Ai-Lt)/(-Oi/(yi*yi)+1-nt/(2*Wr*Wr))*(Wr<0?.7:1)}while(S(vr)>l&&--or>0);var on=d(tr);return[t(Tt*on,Lt*r(tr)),L(gt*on/Lt)]},ct}function Q(){var qe=M,Ye=x.geoProjectionMutator(W),nt=Ye(qe);return nt.radius=function(ct){return arguments.length?Ye(qe=ct*f):qe*y},nt.scale(179.976).clipAngle(147)}function le(qe,Ye){var nt=r(Ye),ct=P(z(nt*r(qe/=2)));return[2*nt*d(qe)*ct,d(Ye)*ct]}le.invert=function(qe,Ye){if(!(qe*qe+4*Ye*Ye>w*w+l)){var nt=qe,ct=Ye,Tt=25;do{var gt=d(nt),Lt=d(nt/2),tr=r(nt/2),or=d(ct),vr=r(ct),Sr=d(2*ct),Wr=or*or,yi=vr*vr,Ai=Lt*Lt,Oi=1-yi*tr*tr,on=Oi?z(vr*tr)*F(Mn=1/Oi):Mn=0,Mn,An=2*on*vr*Lt-qe,qn=on*or-Ye,ma=Mn*(yi*Ai+on*vr*tr*Wr),eo=Mn*(.5*gt*Sr-on*2*or*Lt),ja=Mn*.25*(Sr*Lt-on*or*yi*gt),Do=Mn*(Wr*tr+on*Ai*vr),_s=eo*ja-Do*ma;if(!_s)break;var Oo=(qn*eo-An*Do)/_s,as=(An*ja-qn*ma)/_s;nt-=Oo,ct-=as}while((S(Oo)>l||S(as)>l)&&--Tt>0);return[nt,ct]}};function se(){return x.geoProjection(le).scale(152.63)}function fe(qe){var Ye=d(qe),nt=r(qe),ct=qe>=0?1:-1,Tt=T(ct*qe),gt=(1+Ye-nt)/2;function Lt(tr,or){var vr=r(or),Sr=r(tr/=2);return[(1+vr)*d(tr),(ct*or>-t(Sr,Tt)-.001?0:-ct*10)+gt+d(or)*nt-(1+vr)*Ye*Sr]}return Lt.invert=function(tr,or){var vr=0,Sr=0,Wr=50;do{var yi=r(vr),Ai=d(vr),Oi=r(Sr),on=d(Sr),Mn=1+Oi,An=Mn*Ai-tr,qn=gt+on*nt-Mn*Ye*yi-or,ma=Mn*yi/2,eo=-Ai*on,ja=Ye*Mn*Ai/2,Do=nt*Oi+Ye*yi*on,_s=eo*ja-Do*ma,Oo=(qn*eo-An*Do)/_s/2,as=(An*ja-qn*ma)/_s;S(as)>2&&(as/=2),vr-=Oo,Sr-=as}while((S(Oo)>l||S(as)>l)&&--Wr>0);return ct*Sr>-t(r(vr),Tt)-.001?[vr*2,Sr]:null},Lt}function G(){var qe=20*f,Ye=qe>=0?1:-1,nt=T(Ye*qe),ct=x.geoProjectionMutator(fe),Tt=ct(qe),gt=Tt.stream;return Tt.parallel=function(Lt){return arguments.length?(nt=T((Ye=(qe=Lt*f)>=0?1:-1)*qe),ct(qe)):qe*y},Tt.stream=function(Lt){var tr=Tt.rotate(),or=gt(Lt),vr=(Tt.rotate([0,0]),gt(Lt)),Sr=Tt.precision();return Tt.rotate(tr),or.sphere=function(){vr.polygonStart(),vr.lineStart();for(var Wr=Ye*-180;Ye*Wr<180;Wr+=Ye*90)vr.point(Wr,Ye*90);if(qe)for(;Ye*(Wr-=3*Ye*Sr)>=-180;)vr.point(Wr,Ye*-t(r(Wr*f/2),nt)*y);vr.lineEnd(),vr.polygonEnd()},or},Tt.scale(218.695).center([0,28.0974])}function J(qe,Ye){var nt=T(Ye/2),ct=F(1-nt*nt),Tt=1+ct*r(qe/=2),gt=d(qe)*ct/Tt,Lt=nt/Tt,tr=gt*gt,or=Lt*Lt;return[4/3*gt*(3+tr-3*or),4/3*Lt*(3+3*tr-or)]}J.invert=function(qe,Ye){if(qe*=3/8,Ye*=3/8,!qe&&S(Ye)>1)return null;var nt=qe*qe,ct=Ye*Ye,Tt=1+nt+ct,gt=F((Tt-F(Tt*Tt-4*Ye*Ye))/2),Lt=L(gt)/3,tr=gt?U(S(Ye/gt))/3:N(S(qe))/3,or=r(Lt),vr=I(tr),Sr=vr*vr-or*or;return[p(qe)*2*t(B(tr)*or,.25-Sr),p(Ye)*2*t(vr*d(Lt),.25+Sr)]};function $(){return x.geoProjection(J).scale(66.1603)}var X=F(8),re=n(1+b);function ae(qe,Ye){var nt=S(Ye);return nt_&&--ct>0);return[qe/(r(nt)*(X-1/d(nt))),p(Ye)*nt]};function j(){return x.geoProjection(ae).scale(112.314)}function ee(qe){var Ye=2*w/qe;function nt(ct,Tt){var gt=x.geoAzimuthalEquidistantRaw(ct,Tt);if(S(ct)>M){var Lt=t(gt[1],gt[0]),tr=F(gt[0]*gt[0]+gt[1]*gt[1]),or=Ye*h((Lt-M)/Ye)+M,vr=t(d(Lt-=or),2-r(Lt));Lt=or+L(w/tr*d(vr))-vr,gt[0]=tr*r(Lt),gt[1]=tr*d(Lt)}return gt}return nt.invert=function(ct,Tt){var gt=F(ct*ct+Tt*Tt);if(gt>M){var Lt=t(Tt,ct),tr=Ye*h((Lt-M)/Ye)+M,or=Lt>tr?-1:1,vr=gt*r(tr-Lt),Sr=1/T(or*z((vr-w)/F(w*(w-2*vr)+gt*gt)));Lt=tr+2*e((Sr+or*F(Sr*Sr-3))/3),ct=gt*r(Lt),Tt=gt*d(Lt)}return x.geoAzimuthalEquidistantRaw.invert(ct,Tt)},nt}function ne(){var qe=5,Ye=x.geoProjectionMutator(ee),nt=Ye(qe),ct=nt.stream,Tt=.01,gt=-r(Tt*f),Lt=d(Tt*f);return nt.lobes=function(tr){return arguments.length?Ye(qe=+tr):qe},nt.stream=function(tr){var or=nt.rotate(),vr=ct(tr),Sr=(nt.rotate([0,0]),ct(tr));return nt.rotate(or),vr.sphere=function(){Sr.polygonStart(),Sr.lineStart();for(var Wr=0,yi=360/qe,Ai=2*w/qe,Oi=90-180/qe,on=M;Wr0&&S(Tt)>l);return ct<0?NaN:nt}function Ie(qe,Ye,nt){return Ye===void 0&&(Ye=40),nt===void 0&&(nt=_),function(ct,Tt,gt,Lt){var tr,or,vr;gt=gt===void 0?0:+gt,Lt=Lt===void 0?0:+Lt;for(var Sr=0;Srtr){gt-=or/=2,Lt-=vr/=2;continue}tr=Oi;var on=(gt>0?-1:1)*nt,Mn=(Lt>0?-1:1)*nt,An=qe(gt+on,Lt),qn=qe(gt,Lt+Mn),ma=(An[0]-Wr[0])/on,eo=(An[1]-Wr[1])/on,ja=(qn[0]-Wr[0])/Mn,Do=(qn[1]-Wr[1])/Mn,_s=Do*ma-eo*ja,Oo=(S(_s)<.5?.5:1)/_s;if(or=(Ai*ja-yi*Do)*Oo,vr=(yi*eo-Ai*ma)*Oo,gt+=or,Lt+=vr,S(or)0&&(tr[1]*=1+or/1.5*tr[0]*tr[0]),tr}return ct.invert=Ie(ct),ct}function tt(){return x.geoProjection(Xe()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function rt(qe,Ye){var nt=qe*d(Ye),ct=30,Tt;do Ye-=Tt=(Ye+d(Ye)-nt)/(1+r(Ye));while(S(Tt)>l&&--ct>0);return Ye/2}function Je(qe,Ye,nt){function ct(Tt,gt){return[qe*Tt*r(gt=rt(nt,gt)),Ye*d(gt)]}return ct.invert=function(Tt,gt){return gt=L(gt/Ye),[Tt/(qe*r(gt)),L((2*gt+d(2*gt))/nt)]},ct}var ot=Je(b/M,b,w);function Me(){return x.geoProjection(ot).scale(169.529)}var pe=2.00276,ue=1.11072;function ze(qe,Ye){var nt=rt(w,Ye);return[pe*qe/(1/r(Ye)+ue/r(nt)),(Ye+b*d(nt))/pe]}ze.invert=function(qe,Ye){var nt=pe*Ye,ct=Ye<0?-E:E,Tt=25,gt,Lt;do Lt=nt-b*d(ct),ct-=gt=(d(2*ct)+2*ct-w*d(Lt))/(2*r(2*ct)+2+w*r(Lt)*b*r(ct));while(S(gt)>l&&--Tt>0);return Lt=nt-b*d(ct),[qe*(1/r(Lt)+ue/r(ct))/pe,Lt]};function Qe(){return x.geoProjection(ze).scale(160.857)}function it(qe){var Ye=0,nt=x.geoProjectionMutator(qe),ct=nt(Ye);return ct.parallel=function(Tt){return arguments.length?nt(Ye=Tt*f):Ye*y},ct}function $e(qe,Ye){return[qe*r(Ye),Ye]}$e.invert=function(qe,Ye){return[qe/r(Ye),Ye]};function kt(){return x.geoProjection($e).scale(152.63)}function Mt(qe){if(!qe)return $e;var Ye=1/T(qe);function nt(ct,Tt){var gt=Ye+qe-Tt,Lt=gt&&ct*r(Tt)/gt;return[gt*d(Lt),Ye-gt*r(Lt)]}return nt.invert=function(ct,Tt){var gt=F(ct*ct+(Tt=Ye-Tt)*Tt),Lt=Ye+qe-gt;return[gt/r(Lt)*t(ct,Tt),Lt]},nt}function Bt(){return it(Mt).scale(123.082).center([0,26.1441]).parallel(45)}function jt(qe){function Ye(nt,ct){var Tt=M-ct,gt=Tt&&nt*qe*d(Tt)/Tt;return[Tt*d(gt)/qe,M-Tt*r(gt)]}return Ye.invert=function(nt,ct){var Tt=nt*qe,gt=M-ct,Lt=F(Tt*Tt+gt*gt),tr=t(Tt,gt);return[(Lt?Lt/d(Lt):1)*tr/qe,M-Lt]},Ye}function cr(){var qe=.5,Ye=x.geoProjectionMutator(jt),nt=Ye(qe);return nt.fraction=function(ct){return arguments.length?Ye(qe=+ct):qe},nt.scale(158.837)}var nr=Je(1,4/w,w);function Lr(){return x.geoProjection(nr).scale(152.63)}function mr(qe,Ye,nt,ct,Tt,gt){var Lt=r(gt),tr;if(S(qe)>1||S(gt)>1)tr=z(nt*Tt+Ye*ct*Lt);else{var or=d(qe/2),vr=d(gt/2);tr=2*L(F(or*or+Ye*ct*vr*vr))}return S(tr)>l?[tr,t(ct*d(gt),Ye*Tt-nt*ct*Lt)]:[0,0]}function xr(qe,Ye,nt){return z((qe*qe+Ye*Ye-nt*nt)/(2*qe*Ye))}function mt(qe){return qe-2*w*i((qe+w)/(2*w))}function Fe(qe,Ye,nt){for(var ct=[[qe[0],qe[1],d(qe[1]),r(qe[1])],[Ye[0],Ye[1],d(Ye[1]),r(Ye[1])],[nt[0],nt[1],d(nt[1]),r(nt[1])]],Tt=ct[2],gt,Lt=0;Lt<3;++Lt,Tt=gt)gt=ct[Lt],Tt.v=mr(gt[1]-Tt[1],Tt[3],Tt[2],gt[3],gt[2],gt[0]-Tt[0]),Tt.point=[0,0];var tr=xr(ct[0].v[0],ct[2].v[0],ct[1].v[0]),or=xr(ct[0].v[0],ct[1].v[0],ct[2].v[0]),vr=w-tr;ct[2].point[1]=0,ct[0].point[0]=-(ct[1].point[0]=ct[0].v[0]/2);var Sr=[ct[2].point[0]=ct[0].point[0]+ct[2].v[0]*r(tr),2*(ct[0].point[1]=ct[1].point[1]=ct[2].v[0]*d(tr))];function Wr(yi,Ai){var Oi=d(Ai),on=r(Ai),Mn=new Array(3),An;for(An=0;An<3;++An){var qn=ct[An];if(Mn[An]=mr(Ai-qn[1],qn[3],qn[2],on,Oi,yi-qn[0]),!Mn[An][0])return qn.point;Mn[An][1]=mt(Mn[An][1]-qn.v[1])}var ma=Sr.slice();for(An=0;An<3;++An){var eo=An==2?0:An+1,ja=xr(ct[An].v[0],Mn[An][0],Mn[eo][0]);Mn[An][1]<0&&(ja=-ja),An?An==1?(ja=or-ja,ma[0]-=Mn[An][0]*r(ja),ma[1]-=Mn[An][0]*d(ja)):(ja=vr-ja,ma[0]+=Mn[An][0]*r(ja),ma[1]+=Mn[An][0]*d(ja)):(ma[0]+=Mn[An][0]*r(ja),ma[1]-=Mn[An][0]*d(ja))}return ma[0]/=3,ma[1]/=3,ma}return Wr}function Ze(qe){return qe[0]*=f,qe[1]*=f,qe}function Ne(){return Se([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Se(qe,Ye,nt){var ct=x.geoCentroid({type:"MultiPoint",coordinates:[qe,Ye,nt]}),Tt=[-ct[0],-ct[1]],gt=x.geoRotation(Tt),Lt=Fe(Ze(gt(qe)),Ze(gt(Ye)),Ze(gt(nt)));Lt.invert=Ie(Lt);var tr=x.geoProjection(Lt).rotate(Tt),or=tr.center;return delete tr.rotate,tr.center=function(vr){return arguments.length?or(gt(vr)):gt.invert(or())},tr.clipAngle(90)}function Ve(qe,Ye){var nt=F(1-d(Ye));return[2/v*qe*nt,v*(1-nt)]}Ve.invert=function(qe,Ye){var nt=(nt=Ye/v-1)*nt;return[nt>0?qe*F(w/nt)/2:0,L(1-nt)]};function Ee(){return x.geoProjection(Ve).scale(95.6464).center([0,30])}function be(qe){var Ye=T(qe);function nt(ct,Tt){return[ct,(ct?ct/d(ct):1)*(d(Tt)*r(ct)-Ye*r(Tt))]}return nt.invert=Ye?function(ct,Tt){ct&&(Tt*=d(ct)/ct);var gt=r(ct);return[ct,2*t(F(gt*gt+Ye*Ye-Tt*Tt)-gt,Ye-Tt)]}:function(ct,Tt){return[ct,L(ct?Tt*T(ct)/ct:Tt)]},nt}function Ce(){return it(be).scale(249.828).clipAngle(90)}var et=F(3);function ht(qe,Ye){return[et*qe*(2*r(2*Ye/3)-1)/v,et*v*d(Ye/3)]}ht.invert=function(qe,Ye){var nt=3*L(Ye/(et*v));return[v*qe/(et*(2*r(2*nt/3)-1)),nt]};function yt(){return x.geoProjection(ht).scale(156.19)}function Pt(qe){var Ye=r(qe);function nt(ct,Tt){return[ct*Ye,d(Tt)/Ye]}return nt.invert=function(ct,Tt){return[ct/Ye,L(Tt*Ye)]},nt}function Ot(){return it(Pt).parallel(38.58).scale(195.044)}function Wt(qe){var Ye=r(qe);function nt(ct,Tt){return[ct*Ye,(1+Ye)*T(Tt/2)]}return nt.invert=function(ct,Tt){return[ct/Ye,e(Tt/(1+Ye))*2]},nt}function $t(){return it(Wt).scale(124.75)}function lr(qe,Ye){var nt=F(8/(3*w));return[nt*qe*(1-S(Ye)/w),nt*Ye]}lr.invert=function(qe,Ye){var nt=F(8/(3*w)),ct=Ye/nt;return[qe/(nt*(1-S(ct)/w)),ct]};function fi(){return x.geoProjection(lr).scale(165.664)}function Pi(qe,Ye){var nt=F(4-3*d(S(Ye)));return[2/F(6*w)*qe*nt,p(Ye)*F(2*w/3)*(2-nt)]}Pi.invert=function(qe,Ye){var nt=2-S(Ye)/F(2*w/3);return[qe*F(6*w)/(2*nt),p(Ye)*L((4-nt*nt)/3)]};function Bi(){return x.geoProjection(Pi).scale(165.664)}function zi(qe,Ye){var nt=F(w*(4+w));return[2/nt*qe*(1+F(1-4*Ye*Ye/(w*w))),4/nt*Ye]}zi.invert=function(qe,Ye){var nt=F(w*(4+w))/2;return[qe*nt/(1+F(1-Ye*Ye*(4+w)/(4*w))),Ye*nt/2]};function en(){return x.geoProjection(zi).scale(180.739)}function Ri(qe,Ye){var nt=(2+M)*d(Ye);Ye/=2;for(var ct=0,Tt=1/0;ct<10&&S(Tt)>l;ct++){var gt=r(Ye);Ye-=Tt=(Ye+d(Ye)*(gt+2)-nt)/(2*gt*(1+gt))}return[2/F(w*(4+w))*qe*(1+r(Ye)),2*F(w/(4+w))*d(Ye)]}Ri.invert=function(qe,Ye){var nt=Ye*F((4+w)/w)/2,ct=L(nt),Tt=r(ct);return[qe/(2/F(w*(4+w))*(1+Tt)),L((ct+nt*(Tt+2))/(2+M))]};function Zi(){return x.geoProjection(Ri).scale(180.739)}function vn(qe,Ye){return[qe*(1+r(Ye))/F(2+w),2*Ye/F(2+w)]}vn.invert=function(qe,Ye){var nt=F(2+w),ct=Ye*nt/2;return[nt*qe/(1+r(ct)),ct]};function Xt(){return x.geoProjection(vn).scale(173.044)}function Dt(qe,Ye){for(var nt=(1+M)*d(Ye),ct=0,Tt=1/0;ct<10&&S(Tt)>l;ct++)Ye-=Tt=(Ye+d(Ye)-nt)/(1+r(Ye));return nt=F(2+w),[qe*(1+r(Ye))/nt,2*Ye/nt]}Dt.invert=function(qe,Ye){var nt=1+M,ct=F(nt/2);return[qe*2*ct/(1+r(Ye*=ct)),L((Ye+d(Ye))/nt)]};function qt(){return x.geoProjection(Dt).scale(173.044)}var Ut=3+2*b;function br(qe,Ye){var nt=d(qe/=2),ct=r(qe),Tt=F(r(Ye)),gt=r(Ye/=2),Lt=d(Ye)/(gt+b*ct*Tt),tr=F(2/(1+Lt*Lt)),or=F((b*gt+(ct+nt)*Tt)/(b*gt+(ct-nt)*Tt));return[Ut*(tr*(or-1/or)-2*n(or)),Ut*(tr*Lt*(or+1/or)-2*e(Lt))]}br.invert=function(qe,Ye){if(!(gt=J.invert(qe/1.2,Ye*1.065)))return null;var nt=gt[0],ct=gt[1],Tt=20,gt;qe/=Ut,Ye/=Ut;do{var Lt=nt/2,tr=ct/2,or=d(Lt),vr=r(Lt),Sr=d(tr),Wr=r(tr),yi=r(ct),Ai=F(yi),Oi=Sr/(Wr+b*vr*Ai),on=Oi*Oi,Mn=F(2/(1+on)),An=b*Wr+(vr+or)*Ai,qn=b*Wr+(vr-or)*Ai,ma=An/qn,eo=F(ma),ja=eo-1/eo,Do=eo+1/eo,_s=Mn*ja-2*n(eo)-qe,Oo=Mn*Oi*Do-2*e(Oi)-Ye,as=Sr&&m*Ai*or*on/Sr,Ms=(b*vr*Wr+Ai)/(2*(Wr+b*vr*Ai)*(Wr+b*vr*Ai)*Ai),pl=-.5*Oi*Mn*Mn*Mn,ll=pl*as,cs=pl*Ms,ls=(ls=2*Wr+b*Ai*(vr-or))*ls*eo,Hl=(b*vr*Wr*Ai+yi)/ls,iu=-(b*or*Sr)/(Ai*ls),Yu=ja*ll-2*Hl/eo+Mn*(Hl+Hl/ma),_u=ja*cs-2*iu/eo+Mn*(iu+iu/ma),Il=Oi*Do*ll-2*as/(1+on)+Mn*Do*as+Mn*Oi*(Hl-Hl/ma),vu=Oi*Do*cs-2*Ms/(1+on)+Mn*Do*Ms+Mn*Oi*(iu-iu/ma),Lc=_u*Il-vu*Yu;if(!Lc)break;var Ql=(Oo*_u-_s*vu)/Lc,eu=(_s*Il-Oo*Yu)/Lc;nt-=Ql,ct=a(-M,s(M,ct-eu))}while((S(Ql)>l||S(eu)>l)&&--Tt>0);return S(S(ct)-M)ct){var Wr=F(Sr),yi=t(vr,or),Ai=nt*h(yi/nt),Oi=yi-Ai,on=qe*r(Oi),Mn=(qe*d(Oi)-Oi*d(on))/(M-on),An=wr(Oi,Mn),qn=(w-qe)/Ar(An,on,w);or=Wr;var ma=50,eo;do or-=eo=(qe+Ar(An,on,or)*qn-Wr)/(An(or)*qn);while(S(eo)>l&&--ma>0);vr=Oi*d(or),orct){var or=F(tr),vr=t(Lt,gt),Sr=nt*h(vr/nt),Wr=vr-Sr;gt=or*r(Wr),Lt=or*d(Wr);for(var yi=gt-M,Ai=d(gt),Oi=Lt/Ai,on=gtl||S(Oi)>l)&&--on>0);return[Wr,yi]},or}var Pr=Br(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Qr(){return x.geoProjection(Pr).scale(149.995)}var ci=Br(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function mi(){return x.geoProjection(ci).scale(153.93)}var Et=Br(5/6*w,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ar(){return x.geoProjection(Et).scale(130.945)}function gr(qe,Ye){var nt=qe*qe,ct=Ye*Ye;return[qe*(1-.162388*ct)*(.87-952426e-9*nt*nt),Ye*(1+ct/12)]}gr.invert=function(qe,Ye){var nt=qe,ct=Ye,Tt=50,gt;do{var Lt=ct*ct;ct-=gt=(ct*(1+Lt/12)-Ye)/(1+Lt/4)}while(S(gt)>l&&--Tt>0);Tt=50,qe/=1-.162388*Lt;do{var tr=(tr=nt*nt)*tr;nt-=gt=(nt*(.87-952426e-9*tr)-qe)/(.87-.00476213*tr)}while(S(gt)>l&&--Tt>0);return[nt,ct]};function ti(){return x.geoProjection(gr).scale(131.747)}var wi=Br(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Gi(){return x.geoProjection(wi).scale(131.087)}function Fi(qe){var Ye=qe(M,0)[0]-qe(-M,0)[0];function nt(ct,Tt){var gt=ct>0?-.5:.5,Lt=qe(ct+gt*w,Tt);return Lt[0]-=gt*Ye,Lt}return qe.invert&&(nt.invert=function(ct,Tt){var gt=ct>0?-.5:.5,Lt=qe.invert(ct+gt*Ye,Tt),tr=Lt[0]-gt*w;return tr<-w?tr+=2*w:tr>w&&(tr-=2*w),Lt[0]=tr,Lt}),nt}function xi(qe,Ye){var nt=p(qe),ct=p(Ye),Tt=r(Ye),gt=r(qe)*Tt,Lt=d(qe)*Tt,tr=d(ct*Ye);qe=S(t(Lt,tr)),Ye=L(gt),S(qe-M)>l&&(qe%=M);var or=Ii(qe>w/4?M-qe:qe,Ye);return qe>w/4&&(tr=or[0],or[0]=-or[1],or[1]=-tr),or[0]*=nt,or[1]*=-ct,or}xi.invert=function(qe,Ye){S(qe)>1&&(qe=p(qe)*2-qe),S(Ye)>1&&(Ye=p(Ye)*2-Ye);var nt=p(qe),ct=p(Ye),Tt=-nt*qe,gt=-ct*Ye,Lt=gt/Tt<1,tr=Bn(Lt?gt:Tt,Lt?Tt:gt),or=tr[0],vr=tr[1],Sr=r(vr);return Lt&&(or=-M-or),[nt*(t(d(or)*Sr,-d(vr))+w),ct*L(r(or)*Sr)]};function Ii(qe,Ye){if(Ye===M)return[0,0];var nt=d(Ye),ct=nt*nt,Tt=ct*ct,gt=1+Tt,Lt=1+3*Tt,tr=1-Tt,or=L(1/F(gt)),vr=tr+ct*gt*or,Sr=(1-nt)/vr,Wr=F(Sr),yi=Sr*gt,Ai=F(yi),Oi=Wr*tr,on,Mn;if(qe===0)return[0,-(Oi+ct*Ai)];var An=r(Ye),qn=1/An,ma=2*nt*An,eo=(-3*ct+or*Lt)*ma,ja=(-vr*An-(1-nt)*eo)/(vr*vr),Do=.5*ja/Wr,_s=tr*Do-2*ct*Wr*ma,Oo=ct*gt*ja+Sr*Lt*ma,as=-qn*ma,Ms=-qn*Oo,pl=-2*qn*_s,ll=4*qe/w,cs;if(qe>.222*w||Ye.175*w){if(on=(Oi+ct*F(yi*(1+Tt)-Oi*Oi))/(1+Tt),qe>w/4)return[on,on];var ls=on,Hl=.5*on;on=.5*(Hl+ls),Mn=50;do{var iu=F(yi-on*on),Yu=on*(pl+as*iu)+Ms*L(on/Ai)-ll;if(!Yu)break;Yu<0?Hl=on:ls=on,on=.5*(Hl+ls)}while(S(ls-Hl)>l&&--Mn>0)}else{on=l,Mn=25;do{var _u=on*on,Il=F(yi-_u),vu=pl+as*Il,Lc=on*vu+Ms*L(on/Ai)-ll,Ql=vu+(Ms-as*_u)/Il;on-=cs=Il?Lc/Ql:0}while(S(cs)>l&&--Mn>0)}return[on,-Oi-ct*F(yi-on*on)]}function Bn(qe,Ye){for(var nt=0,ct=1,Tt=.5,gt=50;;){var Lt=Tt*Tt,tr=F(Tt),or=L(1/F(1+Lt)),vr=1-Lt+Tt*(1+Lt)*or,Sr=(1-tr)/vr,Wr=F(Sr),yi=Sr*(1+Lt),Ai=Wr*(1-Lt),Oi=yi-qe*qe,on=F(Oi),Mn=Ye+Ai+Tt*on;if(S(ct-nt)<_||--gt===0||Mn===0)break;Mn>0?nt=Tt:ct=Tt,Tt=.5*(nt+ct)}if(!gt)return null;var An=L(tr),qn=r(An),ma=1/qn,eo=2*tr*qn,ja=(-3*Tt+or*(1+3*Lt))*eo,Do=(-vr*qn-(1-tr)*ja)/(vr*vr),_s=.5*Do/Wr,Oo=(1-Lt)*_s-2*Tt*Wr*eo,as=-2*ma*Oo,Ms=-ma*eo,pl=-ma*(Tt*(1+Lt)*Do+Sr*(1+3*Lt)*eo);return[w/4*(qe*(as+Ms*on)+pl*L(qe/F(yi))),An]}function hn(){return x.geoProjection(Fi(xi)).scale(239.75)}function ba(qe,Ye,nt){var ct,Tt,gt;return qe?(ct=Aa(qe,nt),Ye?(Tt=Aa(Ye,1-nt),gt=Tt[1]*Tt[1]+nt*ct[0]*ct[0]*Tt[0]*Tt[0],[[ct[0]*Tt[2]/gt,ct[1]*ct[2]*Tt[0]*Tt[1]/gt],[ct[1]*Tt[1]/gt,-ct[0]*ct[2]*Tt[0]*Tt[2]/gt],[ct[2]*Tt[1]*Tt[2]/gt,-nt*ct[0]*ct[1]*Tt[0]/gt]]):[[ct[0],0],[ct[1],0],[ct[2],0]]):(Tt=Aa(Ye,1-nt),[[0,Tt[0]/Tt[1]],[1/Tt[1],0],[Tt[2]/Tt[1],0]])}function Aa(qe,Ye){var nt,ct,Tt,gt,Lt;if(Ye=1-l)return nt=(1-Ye)/4,ct=I(qe),gt=O(qe),Tt=1/ct,Lt=ct*B(qe),[gt+nt*(Lt-qe)/(ct*ct),Tt-nt*gt*Tt*(Lt-qe),Tt+nt*gt*Tt*(Lt+qe),2*e(o(qe))-M+nt*(Lt-qe)/ct];var tr=[1,0,0,0,0,0,0,0,0],or=[F(Ye),0,0,0,0,0,0,0,0],vr=0;for(ct=F(1-Ye),Lt=1;S(or[vr]/tr[vr])>l&&vr<8;)nt=tr[vr++],or[vr]=(nt-ct)/2,tr[vr]=(nt+ct)/2,ct=F(nt*ct),Lt*=2;Tt=Lt*tr[vr]*qe;do gt=or[vr]*d(ct=Tt)/tr[vr],Tt=(L(gt)+Tt)/2;while(--vr);return[d(Tt),gt=r(Tt),gt/r(Tt-ct),Tt]}function Va(qe,Ye,nt){var ct=S(qe),Tt=S(Ye),gt=B(Tt);if(ct){var Lt=1/d(ct),tr=1/(T(ct)*T(ct)),or=-(tr+nt*(gt*gt*Lt*Lt)-1+nt),vr=(nt-1)*tr,Sr=(-or+F(or*or-4*vr))/2;return[Qa(e(1/F(Sr)),nt)*p(qe),Qa(e(F((Sr/tr-1)/nt)),1-nt)*p(Ye)]}return[0,Qa(e(gt),1-nt)*p(Ye)]}function Qa(qe,Ye){if(!Ye)return qe;if(Ye===1)return n(T(qe/2+E));for(var nt=1,ct=F(1-Ye),Tt=F(Ye),gt=0;S(Tt)>l;gt++){if(qe%w){var Lt=e(ct*T(qe)/nt);Lt<0&&(Lt+=w),qe+=Lt+~~(qe/w)*w}else qe+=qe;Tt=(nt+ct)/2,ct=F(nt*ct),Tt=((nt=Tt)-ct)/2}return qe/(c(2,gt)*nt)}function yo(qe,Ye){var nt=(b-1)/(b+1),ct=F(1-nt*nt),Tt=Qa(M,ct*ct),gt=-1,Lt=n(T(w/4+S(Ye)/2)),tr=o(gt*Lt)/F(nt),or=Ga(tr*r(gt*qe),tr*d(gt*qe)),vr=Va(or[0],or[1],ct*ct);return[-vr[1],(Ye>=0?1:-1)*(.5*Tt-vr[0])]}function Ga(qe,Ye){var nt=qe*qe,ct=Ye+1,Tt=1-nt-Ye*Ye;return[.5*((qe>=0?M:-M)-t(Tt,2*qe)),-.25*n(Tt*Tt+4*nt)+.5*n(ct*ct+nt)]}function Yo(qe,Ye){var nt=Ye[0]*Ye[0]+Ye[1]*Ye[1];return[(qe[0]*Ye[0]+qe[1]*Ye[1])/nt,(qe[1]*Ye[0]-qe[0]*Ye[1])/nt]}yo.invert=function(qe,Ye){var nt=(b-1)/(b+1),ct=F(1-nt*nt),Tt=Qa(M,ct*ct),gt=-1,Lt=ba(.5*Tt-Ye,-qe,ct*ct),tr=Yo(Lt[0],Lt[1]),or=t(tr[1],tr[0])/gt;return[or,2*e(o(.5/gt*n(nt*tr[0]*tr[0]+nt*tr[1]*tr[1])))-M]};function da(){return x.geoProjection(Fi(yo)).scale(151.496)}function vs(qe){var Ye=d(qe),nt=r(qe),ct=es(qe);ct.invert=es(-qe);function Tt(gt,Lt){var tr=ct(gt,Lt);gt=tr[0],Lt=tr[1];var or=d(Lt),vr=r(Lt),Sr=r(gt),Wr=z(Ye*or+nt*vr*Sr),yi=d(Wr),Ai=S(yi)>l?Wr/yi:1;return[Ai*nt*d(gt),(S(gt)>M?Ai:-Ai)*(Ye*vr-nt*or*Sr)]}return Tt.invert=function(gt,Lt){var tr=F(gt*gt+Lt*Lt),or=-d(tr),vr=r(tr),Sr=tr*vr,Wr=-Lt*or,yi=tr*Ye,Ai=F(Sr*Sr+Wr*Wr-yi*yi),Oi=t(Sr*yi+Wr*Ai,Wr*yi-Sr*Ai),on=(tr>M?-1:1)*t(gt*or,tr*r(Oi)*vr+Lt*d(Oi)*or);return ct.invert(on,Oi)},Tt}function es(qe){var Ye=d(qe),nt=r(qe);return function(ct,Tt){var gt=r(Tt),Lt=r(ct)*gt,tr=d(ct)*gt,or=d(Tt);return[t(tr,Lt*nt-or*Ye),L(or*nt+Lt*Ye)]}}function bs(){var qe=0,Ye=x.geoProjectionMutator(vs),nt=Ye(qe),ct=nt.rotate,Tt=nt.stream,gt=x.geoCircle();return nt.parallel=function(Lt){if(!arguments.length)return qe*y;var tr=nt.rotate();return Ye(qe=Lt*f).rotate(tr)},nt.rotate=function(Lt){return arguments.length?(ct.call(nt,[Lt[0],Lt[1]-qe*y]),gt.center([-Lt[0],-Lt[1]]),nt):(Lt=ct.call(nt),Lt[1]+=qe*y,Lt)},nt.stream=function(Lt){return Lt=Tt(Lt),Lt.sphere=function(){Lt.polygonStart();var tr=.01,or=gt.radius(90-tr)().coordinates[0],vr=or.length-1,Sr=-1,Wr;for(Lt.lineStart();++Sr=0;)Lt.point((Wr=or[Sr])[0],Wr[1]);Lt.lineEnd(),Lt.polygonEnd()},Lt},nt.scale(79.4187).parallel(45).clipAngle(180-.001)}var Xa=3,Bo=L(1-1/Xa)*y,Za=Pt(0);function Qo(qe){var Ye=Bo*f,nt=Ve(w,Ye)[0]-Ve(-w,Ye)[0],ct=Za(0,Ye)[1],Tt=Ve(0,Ye)[1],gt=v-Tt,Lt=u/qe,tr=4/u,or=ct+gt*gt*4/u;function vr(Sr,Wr){var yi,Ai=S(Wr);if(Ai>Ye){var Oi=s(qe-1,a(0,i((Sr+w)/Lt)));Sr+=w*(qe-1)/qe-Oi*Lt,yi=Ve(Sr,Ai),yi[0]=yi[0]*u/nt-u*(qe-1)/(2*qe)+Oi*u/qe,yi[1]=ct+(yi[1]-Tt)*4*gt/u,Wr<0&&(yi[1]=-yi[1])}else yi=Za(Sr,Wr);return yi[0]*=tr,yi[1]/=or,yi}return vr.invert=function(Sr,Wr){Sr/=tr,Wr*=or;var yi=S(Wr);if(yi>ct){var Ai=s(qe-1,a(0,i((Sr+w)/Lt)));Sr=(Sr+w*(qe-1)/qe-Ai*Lt)*nt/u;var Oi=Ve.invert(Sr,.25*(yi-ct)*u/gt+Tt);return Oi[0]-=w*(qe-1)/qe-Ai*Lt,Wr<0&&(Oi[1]=-Oi[1]),Oi}return Za.invert(Sr,Wr)},vr}function ss(qe,Ye){return[qe,Ye&1?90-l:Bo]}function gs(qe,Ye){return[qe,Ye&1?-90+l:-Bo]}function vo(qe){return[qe[0]*(1-l),qe[1]]}function zo(qe){var Ye=[].concat(A.range(-180,180+qe/2,qe).map(ss),A.range(180,-180-qe/2,-qe).map(gs));return{type:"Polygon",coordinates:[qe===180?Ye.map(vo):Ye]}}function Ds(){var qe=4,Ye=x.geoProjectionMutator(Qo),nt=Ye(qe),ct=nt.stream;return nt.lobes=function(Tt){return arguments.length?Ye(qe=+Tt):qe},nt.stream=function(Tt){var gt=nt.rotate(),Lt=ct(Tt),tr=(nt.rotate([0,0]),ct(Tt));return nt.rotate(gt),Lt.sphere=function(){x.geoStream(zo(180/qe),tr)},Lt},nt.scale(239.75)}function Hs(qe){var Ye=1+qe,nt=d(1/Ye),ct=L(nt),Tt=2*F(w/(gt=w+4*ct*Ye)),gt,Lt=.5*Tt*(Ye+F(qe*(2+qe))),tr=qe*qe,or=Ye*Ye;function vr(Sr,Wr){var yi=1-d(Wr),Ai,Oi;if(yi&&yi<2){var on=M-Wr,Mn=25,An;do{var qn=d(on),ma=r(on),eo=ct+t(qn,Ye-ma),ja=1+or-2*Ye*ma;on-=An=(on-tr*ct-Ye*qn+ja*eo-.5*yi*gt)/(2*Ye*qn*eo)}while(S(An)>_&&--Mn>0);Ai=Tt*F(ja),Oi=Sr*eo/w}else Ai=Tt*(qe+yi),Oi=Sr*ct/w;return[Ai*d(Oi),Lt-Ai*r(Oi)]}return vr.invert=function(Sr,Wr){var yi=Sr*Sr+(Wr-=Lt)*Wr,Ai=(1+or-yi/(Tt*Tt))/(2*Ye),Oi=z(Ai),on=d(Oi),Mn=ct+t(on,Ye-Ai);return[L(Sr/F(yi))*w/Mn,L(1-2*(Oi-tr*ct-Ye*on+(1+or-2*Ye*Ai)*Mn)/gt)]},vr}function Zs(){var qe=1,Ye=x.geoProjectionMutator(Hs),nt=Ye(qe);return nt.ratio=function(ct){return arguments.length?Ye(qe=+ct):qe},nt.scale(167.774).center([0,18.67])}var ps=.7109889596207567,bn=.0528035274542;function Ra(qe,Ye){return Ye>-ps?(qe=ot(qe,Ye),qe[1]+=bn,qe):$e(qe,Ye)}Ra.invert=function(qe,Ye){return Ye>-ps?ot.invert(qe,Ye-bn):$e.invert(qe,Ye)};function _l(){return x.geoProjection(Ra).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ys(qe,Ye){return S(Ye)>ps?(qe=ot(qe,Ye),qe[1]-=Ye>0?bn:-bn,qe):$e(qe,Ye)}Ys.invert=function(qe,Ye){return S(Ye)>ps?ot.invert(qe,Ye+(Ye>0?bn:-bn)):$e.invert(qe,Ye)};function ko(){return x.geoProjection(Ys).scale(152.63)}function Js(qe,Ye,nt,ct){var Tt=F(4*w/(2*nt+(1+qe-Ye/2)*d(2*nt)+(qe+Ye)/2*d(4*nt)+Ye/2*d(6*nt))),gt=F(ct*d(nt)*F((1+qe*r(2*nt)+Ye*r(4*nt))/(1+qe+Ye))),Lt=nt*or(1);function tr(Wr){return F(1+qe*r(2*Wr)+Ye*r(4*Wr))}function or(Wr){var yi=Wr*nt;return(2*yi+(1+qe-Ye/2)*d(2*yi)+(qe+Ye)/2*d(4*yi)+Ye/2*d(6*yi))/nt}function vr(Wr){return tr(Wr)*d(Wr)}var Sr=function(Wr,yi){var Ai=nt*Oe(or,Lt*d(yi)/nt,yi/w);isNaN(Ai)&&(Ai=nt*p(yi));var Oi=Tt*tr(Ai);return[Oi*gt*Wr/w*r(Ai),Oi/gt*d(Ai)]};return Sr.invert=function(Wr,yi){var Ai=Oe(vr,yi*gt/Tt);return[Wr*w/(r(Ai)*Tt*gt*tr(Ai)),L(nt*or(Ai/nt)/Lt)]},nt===0&&(Tt=F(ct/w),Sr=function(Wr,yi){return[Wr*Tt,d(yi)/Tt]},Sr.invert=function(Wr,yi){return[Wr/Tt,L(yi*Tt)]}),Sr}function ks(){var qe=1,Ye=0,nt=45*f,ct=2,Tt=x.geoProjectionMutator(Js),gt=Tt(qe,Ye,nt,ct);return gt.a=function(Lt){return arguments.length?Tt(qe=+Lt,Ye,nt,ct):qe},gt.b=function(Lt){return arguments.length?Tt(qe,Ye=+Lt,nt,ct):Ye},gt.psiMax=function(Lt){return arguments.length?Tt(qe,Ye,nt=+Lt*f,ct):nt*y},gt.ratio=function(Lt){return arguments.length?Tt(qe,Ye,nt,ct=+Lt):ct},gt.scale(180.739)}function ml(qe,Ye,nt,ct,Tt,gt,Lt,tr,or,vr,Sr){if(Sr.nanEncountered)return NaN;var Wr,yi,Ai,Oi,on,Mn,An,qn,ma,eo;if(Wr=nt-Ye,yi=qe(Ye+Wr*.25),Ai=qe(nt-Wr*.25),isNaN(yi)){Sr.nanEncountered=!0;return}if(isNaN(Ai)){Sr.nanEncountered=!0;return}return Oi=Wr*(ct+4*yi+Tt)/12,on=Wr*(Tt+4*Ai+gt)/12,Mn=Oi+on,eo=(Mn-Lt)/15,vr>or?(Sr.maxDepthCount++,Mn+eo):Math.abs(eo)>1;do or[Mn]>Ai?on=Mn:Oi=Mn,Mn=Oi+on>>1;while(Mn>Oi);var An=or[Mn+1]-or[Mn];return An&&(An=(Ai-or[Mn+1])/An),(Mn+1+An)/Lt}var Wr=2*Sr(1)/w*gt/nt,yi=function(Ai,Oi){var on=Sr(S(d(Oi))),Mn=ct(on)*Ai;return on/=Wr,[Mn,Oi>=0?on:-on]};return yi.invert=function(Ai,Oi){var on;return Oi*=Wr,S(Oi)<1&&(on=p(Oi)*L(Tt(S(Oi))*gt)),[Ai/ct(S(Oi)),on]},yi}function Ho(){var qe=0,Ye=2.5,nt=1.183136,ct=x.geoProjectionMutator(aa),Tt=ct(qe,Ye,nt);return Tt.alpha=function(gt){return arguments.length?ct(qe=+gt,Ye,nt):qe},Tt.k=function(gt){return arguments.length?ct(qe,Ye=+gt,nt):Ye},Tt.gamma=function(gt){return arguments.length?ct(qe,Ye,nt=+gt):nt},Tt.scale(152.63)}function po(qe,Ye){return S(qe[0]-Ye[0])=0;--or)nt=qe[1][or],ct=nt[0][0],Tt=nt[0][1],gt=nt[1][1],Lt=nt[2][0],tr=nt[2][1],Ye.push(zs([[Lt-l,tr-l],[Lt-l,gt+l],[ct+l,gt+l],[ct+l,Tt-l]],30));return{type:"Polygon",coordinates:[A.merge(Ye)]}}function to(qe,Ye,nt){var ct,Tt;function gt(or,vr){for(var Sr=vr<0?-1:1,Wr=Ye[+(vr<0)],yi=0,Ai=Wr.length-1;yiWr[yi][2][0];++yi);var Oi=qe(or-Wr[yi][1][0],vr);return Oi[0]+=qe(Wr[yi][1][0],Sr*vr>Sr*Wr[yi][0][1]?Wr[yi][0][1]:vr)[0],Oi}nt?gt.invert=nt(gt):qe.invert&&(gt.invert=function(or,vr){for(var Sr=Tt[+(vr<0)],Wr=Ye[+(vr<0)],yi=0,Ai=Sr.length;yiOi&&(on=Ai,Ai=Oi,Oi=on),[[Wr,Ai],[yi,Oi]]})}),Lt):Ye.map(function(vr){return vr.map(function(Sr){return[[Sr[0][0]*y,Sr[0][1]*y],[Sr[1][0]*y,Sr[1][1]*y],[Sr[2][0]*y,Sr[2][1]*y]]})})},Ye!=null&&Lt.lobes(Ye),Lt}var tu=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ju(){return to(ze,tu).scale(160.857)}var kl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Hu(){return to(Ys,kl).scale(152.63)}var Bl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function rl(){return to(ot,Bl).scale(169.529)}var au=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Gu(){return to(ot,au).scale(169.529).rotate([20,0])}var Fc=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Qu(){return to(Ra,Fc,Ie).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var fh=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function yf(){return to($e,fh).scale(152.63).rotate([-20,0])}function Gs(qe,Ye){return[3/u*qe*F(w*w/3-Ye*Ye),Ye]}Gs.invert=function(qe,Ye){return[u/3*qe/F(w*w/3-Ye*Ye),Ye]};function $c(){return x.geoProjection(Gs).scale(158.837)}function kf(qe){function Ye(nt,ct){if(S(S(ct)-M)2)return null;nt/=2,ct/=2;var gt=nt*nt,Lt=ct*ct,tr=2*ct/(1+gt+Lt);return tr=c((1+tr)/(1-tr),1/qe),[t(2*nt,1-gt-Lt)/qe,L((tr-1)/(tr+1))]},Ye}function ru(){var qe=.5,Ye=x.geoProjectionMutator(kf),nt=Ye(qe);return nt.spacing=function(ct){return arguments.length?Ye(qe=+ct):qe},nt.scale(124.75)}var Cl=w/b;function fc(qe,Ye){return[qe*(1+F(r(Ye)))/2,Ye/(r(Ye/2)*r(qe/6))]}fc.invert=function(qe,Ye){var nt=S(qe),ct=S(Ye),Tt=l,gt=M;ctl||S(Mn)>l)&&--Tt>0);return Tt&&[nt,ct]};function Ll(){return x.geoProjection(ol).scale(139.98)}function Ks(qe,Ye){return[d(qe)/r(Ye),T(Ye)*r(qe)]}Ks.invert=function(qe,Ye){var nt=qe*qe,ct=Ye*Ye,Tt=ct+1,gt=nt+Tt,Lt=qe?m*F((gt-F(gt*gt-4*nt))/nt):1/F(Tt);return[L(qe*Lt),p(Ye)*z(Lt)]};function fl(){return x.geoProjection(Ks).scale(144.049).clipAngle(90-.001)}function hc(qe){var Ye=r(qe),nt=T(E+qe/2);function ct(Tt,gt){var Lt=gt-qe,tr=S(Lt)=0;)Sr=qe[vr],Wr=Sr[0]+tr*(Ai=Wr)-or*yi,yi=Sr[1]+tr*yi+or*Ai;return Wr=tr*(Ai=Wr)-or*yi,yi=tr*yi+or*Ai,[Wr,yi]}return nt.invert=function(ct,Tt){var gt=20,Lt=ct,tr=Tt;do{for(var or=Ye,vr=qe[or],Sr=vr[0],Wr=vr[1],yi=0,Ai=0,Oi;--or>=0;)vr=qe[or],yi=Sr+Lt*(Oi=yi)-tr*Ai,Ai=Wr+Lt*Ai+tr*Oi,Sr=vr[0]+Lt*(Oi=Sr)-tr*Wr,Wr=vr[1]+Lt*Wr+tr*Oi;yi=Sr+Lt*(Oi=yi)-tr*Ai,Ai=Wr+Lt*Ai+tr*Oi,Sr=Lt*(Oi=Sr)-tr*Wr-ct,Wr=Lt*Wr+tr*Oi-Tt;var on=yi*yi+Ai*Ai,Mn,An;Lt-=Mn=(Sr*yi+Wr*Ai)/on,tr-=An=(Wr*yi-Sr*Ai)/on}while(S(Mn)+S(An)>l*l&&--gt>0);if(gt){var qn=F(Lt*Lt+tr*tr),ma=2*e(qn*.5),eo=d(ma);return[t(Lt*eo,qn*r(ma)),qn?L(tr*eo/qn):0]}},nt}var ys=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Lh=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Us=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Wo=[[.9245,0],[0,0],[.01943,0]],ff=[[.721316,0],[0,0],[-.00881625,-.00617325]];function tc(){return Xl(ys,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function yu(){return Xl(Lh,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Uf(){return Xl(Us,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Bc(){return Xl(Wo,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function hf(){return Xl(ff,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Xl(qe,Ye){var nt=x.geoProjection(jh(qe)).rotate(Ye).clipAngle(90),ct=x.geoRotation(Ye),Tt=nt.center;return delete nt.rotate,nt.center=function(gt){return arguments.length?Tt(ct(gt)):ct.invert(Tt())},nt}var rh=F(6),jf=F(7);function Cf(qe,Ye){var nt=L(7*d(Ye)/(3*rh));return[rh*qe*(2*r(2*nt/3)-1)/jf,9*d(nt/3)/jf]}Cf.invert=function(qe,Ye){var nt=3*L(Ye*jf/9);return[qe*jf/(rh*(2*r(2*nt/3)-1)),L(d(nt)*3*rh/7)]};function Jc(){return x.geoProjection(Cf).scale(164.859)}function Vf(qe,Ye){for(var nt=(1+m)*d(Ye),ct=Ye,Tt=0,gt;Tt<25&&(ct-=gt=(d(ct/2)+d(ct)-nt)/(.5*r(ct/2)+r(ct)),!(S(gt)_&&--ct>0);return gt=nt*nt,Lt=gt*gt,tr=gt*Lt,[qe/(.84719-.13063*gt+tr*tr*(-.04515+.05494*gt-.02326*Lt+.00331*tr)),nt]};function Qc(){return x.geoProjection(Oc).scale(175.295)}function Pu(qe,Ye){return[qe*(1+r(Ye))/2,2*(Ye-T(Ye/2))]}Pu.invert=function(qe,Ye){for(var nt=Ye/2,ct=0,Tt=1/0;ct<10&&S(Tt)>l;++ct){var gt=r(Ye/2);Ye-=Tt=(Ye-T(Ye/2)-nt)/(1-.5/(gt*gt))}return[2*qe/(1+r(Ye)),Ye]};function _f(){return x.geoProjection(Pu).scale(152.63)}var Nc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Qs(){return to(ce(1/0),Nc).rotate([20,0]).scale(152.63)}function qf(qe,Ye){var nt=d(Ye),ct=r(Ye),Tt=p(qe);if(qe===0||S(Ye)===M)return[0,Ye];if(Ye===0)return[qe,0];if(S(qe)===M)return[qe*ct,M*nt];var gt=w/(2*qe)-2*qe/w,Lt=2*Ye/w,tr=(1-Lt*Lt)/(nt-Lt),or=gt*gt,vr=tr*tr,Sr=1+or/vr,Wr=1+vr/or,yi=(gt*nt/tr-gt/2)/Sr,Ai=(vr*nt/or+tr/2)/Wr,Oi=yi*yi+ct*ct/Sr,on=Ai*Ai-(vr*nt*nt/or+tr*nt-1)/Wr;return[M*(yi+F(Oi)*Tt),M*(Ai+F(on<0?0:on)*p(-Ye*gt)*Tt)]}qf.invert=function(qe,Ye){qe/=M,Ye/=M;var nt=qe*qe,ct=Ye*Ye,Tt=nt+ct,gt=w*w;return[qe?(Tt-1+F((1-Tt)*(1-Tt)+4*nt))/(2*qe)*M:0,Oe(function(Lt){return Tt*(w*d(Lt)-2*Lt)*w+4*Lt*Lt*(Ye-d(Lt))+2*w*Lt-gt*Ye},0)]};function Ph(){return x.geoProjection(qf).scale(127.267)}var nh=1.0148,df=.23185,hh=-.14499,Iu=.02406,ah=nh,cu=5*df,Ru=7*hh,Mc=9*Iu,Ol=1.790857183;function Uc(qe,Ye){var nt=Ye*Ye;return[qe,Ye*(nh+nt*nt*(df+nt*(hh+Iu*nt)))]}Uc.invert=function(qe,Ye){Ye>Ol?Ye=Ol:Ye<-Ol&&(Ye=-Ol);var nt=Ye,ct;do{var Tt=nt*nt;nt-=ct=(nt*(nh+Tt*Tt*(df+Tt*(hh+Iu*Tt)))-Ye)/(ah+Tt*Tt*(cu+Tt*(Ru+Mc*Tt)))}while(S(ct)>l);return[qe,nt]};function ic(){return x.geoProjection(Uc).scale(139.319)}function wu(qe,Ye){if(S(Ye)l&&--Tt>0);return Lt=T(ct),[(S(Ye)=0;)if(ct=Ye[tr],nt[0]===ct[0]&&nt[1]===ct[1]){if(gt)return[gt,nt];gt=nt}}}function fu(qe){for(var Ye=qe.length,nt=[],ct=qe[Ye-1],Tt=0;Tt0?[-ct[0],0]:[180-ct[0],180])};var Ye=If.map(function(nt){return{face:nt,project:qe(nt)}});return[-1,0,0,1,0,1,4,5].forEach(function(nt,ct){var Tt=Ye[nt];Tt&&(Tt.children||(Tt.children=[])).push(Ye[ct])}),vf(Ye[0],function(nt,ct){return Ye[nt<-w/2?ct<0?6:4:nt<0?ct<0?2:0:ntct^Ai>ct&&nt<(yi-vr)*(ct-Sr)/(Ai-Sr)+vr&&(Tt=!Tt)}return Tt}function Jl(qe,Ye){var nt=Ye.stream,ct;if(!nt)throw new Error("invalid projection");switch(qe&&qe.type){case"Feature":ct=Zu;break;case"FeatureCollection":ct=Wf;break;default:ct=pc;break}return ct(qe,nt)}function Wf(qe,Ye){return{type:"FeatureCollection",features:qe.features.map(function(nt){return Zu(nt,Ye)})}}function Zu(qe,Ye){return{type:"Feature",id:qe.id,properties:qe.properties,geometry:pc(qe.geometry,Ye)}}function kc(qe,Ye){return{type:"GeometryCollection",geometries:qe.geometries.map(function(nt){return pc(nt,Ye)})}}function pc(qe,Ye){if(!qe)return null;if(qe.type==="GeometryCollection")return kc(qe,Ye);var nt;switch(qe.type){case"Point":nt=mc;break;case"MultiPoint":nt=mc;break;case"LineString":nt=jc;break;case"MultiLineString":nt=jc;break;case"Polygon":nt=nc;break;case"MultiPolygon":nt=nc;break;case"Sphere":nt=nc;break;default:return null}return x.geoStream(qe,Ye(nt)),nt.result()}var Nl=[],hu=[],mc={point:function(qe,Ye){Nl.push([qe,Ye])},result:function(){var qe=Nl.length?Nl.length<2?{type:"Point",coordinates:Nl[0]}:{type:"MultiPoint",coordinates:Nl}:null;return Nl=[],qe}},jc={lineStart:vc,point:function(qe,Ye){Nl.push([qe,Ye])},lineEnd:function(){Nl.length&&(hu.push(Nl),Nl=[])},result:function(){var qe=hu.length?hu.length<2?{type:"LineString",coordinates:hu[0]}:{type:"MultiLineString",coordinates:hu}:null;return hu=[],qe}},nc={polygonStart:vc,lineStart:vc,point:function(qe,Ye){Nl.push([qe,Ye])},lineEnd:function(){var qe=Nl.length;if(qe){do Nl.push(Nl[0].slice());while(++qe<4);hu.push(Nl),Nl=[]}},polygonEnd:vc,result:function(){if(!hu.length)return null;var qe=[],Ye=[];return hu.forEach(function(nt){tf(nt)?qe.push([nt]):Ye.push(nt)}),Ye.forEach(function(nt){var ct=nt[0];qe.some(function(Tt){if(Gf(Tt[0],ct))return Tt.push(nt),!0})||qe.push([nt])}),hu=[],qe.length?qe.length>1?{type:"MultiPolygon",coordinates:qe}:{type:"Polygon",coordinates:qe[0]}:null}};function rf(qe){var Ye=qe(M,0)[0]-qe(-M,0)[0];function nt(ct,Tt){var gt=S(ct)0?ct-w:ct+w,Tt),tr=(Lt[0]-Lt[1])*m,or=(Lt[0]+Lt[1])*m;if(gt)return[tr,or];var vr=Ye*m,Sr=tr>0^or>0?-1:1;return[Sr*tr-p(or)*vr,Sr*or-p(tr)*vr]}return qe.invert&&(nt.invert=function(ct,Tt){var gt=(ct+Tt)*m,Lt=(Tt-ct)*m,tr=S(gt)<.5*Ye&&S(Lt)<.5*Ye;if(!tr){var or=Ye*m,vr=gt>0^Lt>0?-1:1,Sr=-vr*ct+(Lt>0?1:-1)*or,Wr=-vr*Tt+(gt>0?1:-1)*or;gt=(-Sr-Wr)*m,Lt=(Sr-Wr)*m}var yi=qe.invert(gt,Lt);return tr||(yi[0]+=gt>0?w:-w),yi}),x.geoProjection(nt).rotate([-90,-90,45]).clipAngle(180-.001)}function Zt(){return rf(xi).scale(176.423)}function hr(){return rf(yo).scale(111.48)}function Kr(qe,Ye){if(!(0<=(Ye=+Ye)&&Ye<=20))throw new Error("invalid digits");function nt(vr){var Sr=vr.length,Wr=2,yi=new Array(Sr);for(yi[0]=+vr[0].toFixed(Ye),yi[1]=+vr[1].toFixed(Ye);Wr2||Ai[0]!=Sr[0]||Ai[1]!=Sr[1])&&(Wr.push(Ai),Sr=Ai)}return Wr.length===1&&vr.length>1&&Wr.push(nt(vr[vr.length-1])),Wr}function gt(vr){return vr.map(Tt)}function Lt(vr){if(vr==null)return vr;var Sr;switch(vr.type){case"GeometryCollection":Sr={type:"GeometryCollection",geometries:vr.geometries.map(Lt)};break;case"Point":Sr={type:"Point",coordinates:nt(vr.coordinates)};break;case"MultiPoint":Sr={type:vr.type,coordinates:ct(vr.coordinates)};break;case"LineString":Sr={type:vr.type,coordinates:Tt(vr.coordinates)};break;case"MultiLineString":case"Polygon":Sr={type:vr.type,coordinates:gt(vr.coordinates)};break;case"MultiPolygon":Sr={type:"MultiPolygon",coordinates:vr.coordinates.map(gt)};break;default:return vr}return vr.bbox!=null&&(Sr.bbox=vr.bbox),Sr}function tr(vr){var Sr={type:"Feature",properties:vr.properties,geometry:Lt(vr.geometry)};return vr.id!=null&&(Sr.id=vr.id),vr.bbox!=null&&(Sr.bbox=vr.bbox),Sr}if(qe!=null)switch(qe.type){case"Feature":return tr(qe);case"FeatureCollection":{var or={type:"FeatureCollection",features:qe.features.map(tr)};return qe.bbox!=null&&(or.bbox=qe.bbox),or}default:return Lt(qe)}return qe}function qr(qe){var Ye=d(qe);function nt(ct,Tt){var gt=Ye?T(ct*Ye/2)/Ye:ct/2;if(!Tt)return[2*gt,-qe];var Lt=2*e(gt*d(Tt)),tr=1/T(Tt);return[d(Lt)*tr,Tt+(1-r(Lt))*tr-qe]}return nt.invert=function(ct,Tt){if(S(Tt+=qe)l&&--tr>0);var yi=ct*(vr=T(Lt)),Ai=T(S(Tt)0?M:-M)*(or+Tt*(Sr-Lt)/2+Tt*Tt*(Sr-2*or+Lt)/2)]}pn.invert=function(qe,Ye){var nt=Ye/M,ct=nt*90,Tt=s(18,S(ct/5)),gt=a(0,i(Tt));do{var Lt=an[gt][1],tr=an[gt+1][1],or=an[s(19,gt+2)][1],vr=or-Lt,Sr=or-2*tr+Lt,Wr=2*(S(nt)-tr)/vr,yi=Sr/vr,Ai=Wr*(1-yi*Wr*(1-2*yi*Wr));if(Ai>=0||gt===1){ct=(Ye>=0?5:-5)*(Ai+Tt);var Oi=50,on;do Tt=s(18,S(ct)/5),gt=i(Tt),Ai=Tt-gt,Lt=an[gt][1],tr=an[gt+1][1],or=an[s(19,gt+2)][1],ct-=(on=(Ye>=0?M:-M)*(tr+Ai*(or-Lt)/2+Ai*Ai*(or-2*tr+Lt)/2)-Ye)*y;while(S(on)>_&&--Oi>0);break}}while(--gt>=0);var Mn=an[gt][0],An=an[gt+1][0],qn=an[s(19,gt+2)][0];return[qe/(An+Ai*(qn-Mn)/2+Ai*Ai*(qn-2*An+Mn)/2),ct*f]};function Pn(){return x.geoProjection(pn).scale(152.63)}function Vn(qe){function Ye(nt,ct){var Tt=r(ct),gt=(qe-1)/(qe-Tt*r(nt));return[gt*Tt*d(nt),gt*d(ct)]}return Ye.invert=function(nt,ct){var Tt=nt*nt+ct*ct,gt=F(Tt),Lt=(qe-F(1-Tt*(qe+1)/(qe-1)))/((qe-1)/gt+gt/(qe-1));return[t(nt*Lt,gt*F(1-Lt*Lt)),gt?L(ct*Lt/gt):0]},Ye}function ra(qe,Ye){var nt=Vn(qe);if(!Ye)return nt;var ct=r(Ye),Tt=d(Ye);function gt(Lt,tr){var or=nt(Lt,tr),vr=or[1],Sr=vr*Tt/(qe-1)+ct;return[or[0]*ct/Sr,vr/Sr]}return gt.invert=function(Lt,tr){var or=(qe-1)/(qe-1-tr*Tt);return nt.invert(or*Lt,or*tr*ct)},gt}function yn(){var qe=2,Ye=0,nt=x.geoProjectionMutator(ra),ct=nt(qe,Ye);return ct.distance=function(Tt){return arguments.length?nt(qe=+Tt,Ye):qe},ct.tilt=function(Tt){return arguments.length?nt(qe,Ye=Tt*f):Ye*y},ct.scale(432.147).clipAngle(z(1/qe)*y-1e-6)}var In=1e-4,kn=1e4,cn=-180,xa=cn+In,mo=180,uo=mo-In,go=-90,Mo=go+In,ya=90,Zn=ya-In;function Po(qe){return qe.length>0}function us(qe){return Math.floor(qe*kn)/kn}function Bs(qe){return qe===go||qe===ya?[0,qe]:[cn,us(qe)]}function sl(qe){var Ye=qe[0],nt=qe[1],ct=!1;return Ye<=xa?(Ye=cn,ct=!0):Ye>=uo&&(Ye=mo,ct=!0),nt<=Mo?(nt=go,ct=!0):nt>=Zn&&(nt=ya,ct=!0),ct?[Ye,nt]:qe}function js(qe){return qe.map(sl)}function il(qe,Ye,nt){for(var ct=0,Tt=qe.length;ct=uo||Sr<=Mo||Sr>=Zn){gt[Lt]=sl(or);for(var Wr=Lt+1;Wrxa&&AiMo&&Oi=tr)break;nt.push({index:-1,polygon:Ye,ring:gt=gt.slice(Wr-1)}),gt[0]=Bs(gt[0][1]),Lt=-1,tr=gt.length}}}}function Ps(qe){var Ye,nt=qe.length,ct={},Tt={},gt,Lt,tr,or,vr;for(Ye=0;Ye0?w-tr:tr)*y],vr=x.geoProjection(qe(Lt)).rotate(or),Sr=x.geoRotation(or),Wr=vr.center;return delete vr.rotate,vr.center=function(yi){return arguments.length?Wr(Sr(yi)):Sr.invert(Wr())},vr.clipAngle(90)}function Os(qe){var Ye=r(qe);function nt(ct,Tt){var gt=x.geoGnomonicRaw(ct,Tt);return gt[0]*=Ye,gt}return nt.invert=function(ct,Tt){return x.geoGnomonicRaw.invert(ct/Ye,Tt)},nt}function du(){return zu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function zu(qe,Ye){return el(Os,qe,Ye)}function ac(qe){if(!(qe*=2))return x.geoAzimuthalEquidistantRaw;var Ye=-qe/2,nt=-Ye,ct=qe*qe,Tt=T(nt),gt=.5/d(nt);function Lt(tr,or){var vr=z(r(or)*r(tr-Ye)),Sr=z(r(or)*r(tr-nt)),Wr=or<0?-1:1;return vr*=vr,Sr*=Sr,[(vr-Sr)/(2*qe),Wr*F(4*ct*Sr-(ct-vr+Sr)*(ct-vr+Sr))/(2*qe)]}return Lt.invert=function(tr,or){var vr=or*or,Sr=r(F(vr+(yi=tr+Ye)*yi)),Wr=r(F(vr+(yi=tr+nt)*yi)),yi,Ai;return[t(Ai=Sr-Wr,yi=(Sr+Wr)*Tt),(or<0?-1:1)*z(F(yi*yi+Ai*Ai)*gt)]},Lt}function nf(){return Mu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Mu(qe,Ye){return el(ac,qe,Ye)}function Vc(qe,Ye){if(S(Ye)l&&--tr>0);return[p(qe)*(F(Tt*Tt+4)+Tt)*w/4,M*Lt]};function yc(){return x.geoProjection(gc).scale(127.16)}function Be(qe,Ye,nt,ct,Tt){function gt(Lt,tr){var or=nt*d(ct*tr),vr=F(1-or*or),Sr=F(2/(1+vr*r(Lt*=Tt)));return[qe*vr*Sr*d(Lt),Ye*or*Sr]}return gt.invert=function(Lt,tr){var or=Lt/qe,vr=tr/Ye,Sr=F(or*or+vr*vr),Wr=2*L(Sr/2);return[t(Lt*T(Wr),qe*Sr)/Tt,Sr&&L(tr*d(Wr)/(Ye*nt*Sr))/ct]},gt}function R(qe,Ye,nt,ct){var Tt=w/3;qe=a(qe,l),Ye=a(Ye,l),qe=s(qe,M),Ye=s(Ye,w-l),nt=a(nt,0),nt=s(nt,100-l),ct=a(ct,l);var gt=nt/100+1,Lt=ct/100,tr=z(gt*r(Tt))/Tt,or=d(qe)/d(tr*M),vr=Ye/w,Sr=F(Lt*d(qe/2)/d(Ye/2)),Wr=Sr/F(vr*or*tr),yi=1/(Sr*F(vr*or*tr));return Be(Wr,yi,or,tr,vr)}function ie(){var qe=65*f,Ye=60*f,nt=20,ct=200,Tt=x.geoProjectionMutator(R),gt=Tt(qe,Ye,nt,ct);return gt.poleline=function(Lt){return arguments.length?Tt(qe=+Lt*f,Ye,nt,ct):qe*y},gt.parallels=function(Lt){return arguments.length?Tt(qe,Ye=+Lt*f,nt,ct):Ye*y},gt.inflation=function(Lt){return arguments.length?Tt(qe,Ye,nt=+Lt,ct):nt},gt.ratio=function(Lt){return arguments.length?Tt(qe,Ye,nt,ct=+Lt):ct},gt.scale(163.775)}function xe(){return ie().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Te=4*w+3*F(3),De=2*F(2*w*F(3)/Te),ut=Je(De*F(3)/w,De,Te/6);function _t(){return x.geoProjection(ut).scale(176.84)}function Rt(qe,Ye){return[qe*F(1-3*Ye*Ye/(w*w)),Ye]}Rt.invert=function(qe,Ye){return[qe/F(1-3*Ye*Ye/(w*w)),Ye]};function Kt(){return x.geoProjection(Rt).scale(152.63)}function fr(qe,Ye){var nt=r(Ye),ct=r(qe)*nt,Tt=1-ct,gt=r(qe=t(d(qe)*nt,-d(Ye))),Lt=d(qe);return nt=F(1-ct*ct),[Lt*nt-gt*Tt,-gt*nt-Lt*Tt]}fr.invert=function(qe,Ye){var nt=(qe*qe+Ye*Ye)/-2,ct=F(-nt*(2+nt)),Tt=Ye*nt+qe*ct,gt=qe*nt-Ye*ct,Lt=F(gt*gt+Tt*Tt);return[t(ct*Tt,Lt*(1+nt)),Lt?-L(ct*gt/Lt):0]};function dr(){return x.geoProjection(fr).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function jr(qe,Ye){var nt=le(qe,Ye);return[(nt[0]+qe/M)/2,(nt[1]+Ye)/2]}jr.invert=function(qe,Ye){var nt=qe,ct=Ye,Tt=25;do{var gt=r(ct),Lt=d(ct),tr=d(2*ct),or=Lt*Lt,vr=gt*gt,Sr=d(nt),Wr=r(nt/2),yi=d(nt/2),Ai=yi*yi,Oi=1-vr*Wr*Wr,on=Oi?z(gt*Wr)*F(Mn=1/Oi):Mn=0,Mn,An=.5*(2*on*gt*yi+nt/M)-qe,qn=.5*(on*Lt+ct)-Ye,ma=.5*Mn*(vr*Ai+on*gt*Wr*or)+.5/M,eo=Mn*(Sr*tr/4-on*Lt*yi),ja=.125*Mn*(tr*yi-on*Lt*vr*Sr),Do=.5*Mn*(or*Wr+on*Ai*gt)+.5,_s=eo*ja-Do*ma,Oo=(qn*eo-An*Do)/_s,as=(An*ja-qn*ma)/_s;nt-=Oo,ct-=as}while((S(Oo)>l||S(as)>l)&&--Tt>0);return[nt,ct]};function ii(){return x.geoProjection(jr).scale(158.837)}g.geoNaturalEarth=x.geoNaturalEarth1,g.geoNaturalEarthRaw=x.geoNaturalEarth1Raw,g.geoAiry=Q,g.geoAiryRaw=W,g.geoAitoff=se,g.geoAitoffRaw=le,g.geoArmadillo=G,g.geoArmadilloRaw=fe,g.geoAugust=$,g.geoAugustRaw=J,g.geoBaker=j,g.geoBakerRaw=ae,g.geoBerghaus=ne,g.geoBerghausRaw=ee,g.geoBertin1953=tt,g.geoBertin1953Raw=Xe,g.geoBoggs=Qe,g.geoBoggsRaw=ze,g.geoBonne=Bt,g.geoBonneRaw=Mt,g.geoBottomley=cr,g.geoBottomleyRaw=jt,g.geoBromley=Lr,g.geoBromleyRaw=nr,g.geoChamberlin=Se,g.geoChamberlinRaw=Fe,g.geoChamberlinAfrica=Ne,g.geoCollignon=Ee,g.geoCollignonRaw=Ve,g.geoCraig=Ce,g.geoCraigRaw=be,g.geoCraster=yt,g.geoCrasterRaw=ht,g.geoCylindricalEqualArea=Ot,g.geoCylindricalEqualAreaRaw=Pt,g.geoCylindricalStereographic=$t,g.geoCylindricalStereographicRaw=Wt,g.geoEckert1=fi,g.geoEckert1Raw=lr,g.geoEckert2=Bi,g.geoEckert2Raw=Pi,g.geoEckert3=en,g.geoEckert3Raw=zi,g.geoEckert4=Zi,g.geoEckert4Raw=Ri,g.geoEckert5=Xt,g.geoEckert5Raw=vn,g.geoEckert6=qt,g.geoEckert6Raw=Dt,g.geoEisenlohr=Zr,g.geoEisenlohrRaw=br,g.geoFahey=Di,g.geoFaheyRaw=Yr,g.geoFoucaut=$i,g.geoFoucautRaw=qi,g.geoFoucautSinusoidal=sn,g.geoFoucautSinusoidalRaw=Mi,g.geoGilbert=kr,g.geoGingery=Er,g.geoGingeryRaw=Cr,g.geoGinzburg4=Qr,g.geoGinzburg4Raw=Pr,g.geoGinzburg5=mi,g.geoGinzburg5Raw=ci,g.geoGinzburg6=ar,g.geoGinzburg6Raw=Et,g.geoGinzburg8=ti,g.geoGinzburg8Raw=gr,g.geoGinzburg9=Gi,g.geoGinzburg9Raw=wi,g.geoGringorten=hn,g.geoGringortenRaw=xi,g.geoGuyou=da,g.geoGuyouRaw=yo,g.geoHammer=we,g.geoHammerRaw=ce,g.geoHammerRetroazimuthal=bs,g.geoHammerRetroazimuthalRaw=vs,g.geoHealpix=Ds,g.geoHealpixRaw=Qo,g.geoHill=Zs,g.geoHillRaw=Hs,g.geoHomolosine=ko,g.geoHomolosineRaw=Ys,g.geoHufnagel=ks,g.geoHufnagelRaw=Js,g.geoHyperelliptical=Ho,g.geoHyperellipticalRaw=aa,g.geoInterrupt=to,g.geoInterruptedBoggs=Ju,g.geoInterruptedHomolosine=Hu,g.geoInterruptedMollweide=rl,g.geoInterruptedMollweideHemispheres=Gu,g.geoInterruptedSinuMollweide=Qu,g.geoInterruptedSinusoidal=yf,g.geoKavrayskiy7=$c,g.geoKavrayskiy7Raw=Gs,g.geoLagrange=ru,g.geoLagrangeRaw=kf,g.geoLarrivee=Ac,g.geoLarriveeRaw=fc,g.geoLaskowski=Ll,g.geoLaskowskiRaw=ol,g.geoLittrow=fl,g.geoLittrowRaw=Ks,g.geoLoximuthal=Wl,g.geoLoximuthalRaw=hc,g.geoMiller=hl,g.geoMillerRaw=ec,g.geoModifiedStereographic=Xl,g.geoModifiedStereographicRaw=jh,g.geoModifiedStereographicAlaska=tc,g.geoModifiedStereographicGs48=yu,g.geoModifiedStereographicGs50=Uf,g.geoModifiedStereographicMiller=Bc,g.geoModifiedStereographicLee=hf,g.geoMollweide=Me,g.geoMollweideRaw=ot,g.geoMtFlatPolarParabolic=Jc,g.geoMtFlatPolarParabolicRaw=Cf,g.geoMtFlatPolarQuartic=ih,g.geoMtFlatPolarQuarticRaw=Vf,g.geoMtFlatPolarSinusoidal=Lf,g.geoMtFlatPolarSinusoidalRaw=rc,g.geoNaturalEarth2=Qc,g.geoNaturalEarth2Raw=Oc,g.geoNellHammer=_f,g.geoNellHammerRaw=Pu,g.geoInterruptedQuarticAuthalic=Qs,g.geoNicolosi=Ph,g.geoNicolosiRaw=qf,g.geoPatterson=ic,g.geoPattersonRaw=Uc,g.geoPolyconic=Pl,g.geoPolyconicRaw=wu,g.geoPolyhedral=vf,g.geoPolyhedralButterfly=yl,g.geoPolyhedralCollignon=Hf,g.geoPolyhedralWaterman=dl,g.geoProject=Jl,g.geoGringortenQuincuncial=Zt,g.geoPeirceQuincuncial=hr,g.geoPierceQuincuncial=hr,g.geoQuantize=Kr,g.geoQuincuncial=rf,g.geoRectangularPolyconic=ki,g.geoRectangularPolyconicRaw=qr,g.geoRobinson=Pn,g.geoRobinsonRaw=pn,g.geoSatellite=yn,g.geoSatelliteRaw=ra,g.geoSinuMollweide=_l,g.geoSinuMollweideRaw=Ra,g.geoSinusoidal=kt,g.geoSinusoidalRaw=$e,g.geoStitch=vl,g.geoTimes=Go,g.geoTimesRaw=Wa,g.geoTwoPointAzimuthal=zu,g.geoTwoPointAzimuthalRaw=Os,g.geoTwoPointAzimuthalUsa=du,g.geoTwoPointEquidistant=Mu,g.geoTwoPointEquidistantRaw=ac,g.geoTwoPointEquidistantUsa=nf,g.geoVanDerGrinten=Fu,g.geoVanDerGrintenRaw=Vc,g.geoVanDerGrinten2=bo,g.geoVanDerGrinten2Raw=Cc,g.geoVanDerGrinten3=qc,g.geoVanDerGrinten3Raw=Ko,g.geoVanDerGrinten4=yc,g.geoVanDerGrinten4Raw=gc,g.geoWagner=ie,g.geoWagner7=xe,g.geoWagnerRaw=R,g.geoWagner4=_t,g.geoWagner4Raw=ut,g.geoWagner6=Kt,g.geoWagner6Raw=Rt,g.geoWiechel=dr,g.geoWiechelRaw=fr,g.geoWinkel3=ii,g.geoWinkel3Raw=jr,Object.defineProperty(g,"__esModule",{value:!0})})}}),YI=Le({"src/plots/geo/zoom.js"(Z,H){"use strict";var g=Ji(),x=ni(),A=so(),S=Math.PI/180,e=180/Math.PI,t={cursor:"pointer"},r={cursor:"auto"};function o(y,f){var P=y.projection,L;return f._isScoped?L=a:f._isClipped?L=c:L=s,L(y,P)}H.exports=o;function i(y,f){return g.behavior.zoom().translate(f.translate()).scale(f.scale())}function n(y,f,P){var L=y.id,z=y.graphDiv,F=z.layout,O=F[L],B=z._fullLayout,I=B[L],N={},U={};function W(Q,le){N[L+"."+Q]=x.nestedProperty(O,Q).get(),A.call("_storeDirectGUIEdit",F,B._preGUI,N);var se=x.nestedProperty(I,Q);se.get()!==le&&(se.set(le),x.nestedProperty(O,Q).set(le),U[L+"."+Q]=le)}P(W),W("projection.scale",f.scale()/y.fitScale),W("fitbounds",!1),z.emit("plotly_relayout",U)}function a(y,f){var P=i(y,f);function L(){g.select(this).style(t)}function z(){f.scale(g.event.scale).translate(g.event.translate),y.render(!0);var B=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":B[0],"geo.center.lat":B[1]})}function F(B){var I=f.invert(y.midPt);B("center.lon",I[0]),B("center.lat",I[1])}function O(){g.select(this).style(r),n(y,f,F)}return P.on("zoomstart",L).on("zoom",z).on("zoomend",O),P}function s(y,f){var P=i(y,f),L=2,z,F,O,B,I,N,U,W,Q;function le(X){return f.invert(X)}function se(X){var re=le(X);if(!re)return!0;var ae=f(re);return Math.abs(ae[0]-X[0])>L||Math.abs(ae[1]-X[1])>L}function fe(){g.select(this).style(t),z=g.mouse(this),F=f.rotate(),O=f.translate(),B=F,I=le(z)}function G(){if(N=g.mouse(this),se(z)){P.scale(f.scale()),P.translate(f.translate());return}f.scale(g.event.scale),f.translate([O[0],g.event.translate[1]]),I?le(N)&&(W=le(N),U=[B[0]+(W[0]-I[0]),F[1],F[2]],f.rotate(U),B=U):(z=N,I=le(z)),Q=!0,y.render(!0);var X=f.rotate(),re=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":re[0],"geo.center.lat":re[1],"geo.projection.rotation.lon":-X[0]})}function J(){g.select(this).style(r),Q&&n(y,f,$)}function $(X){var re=f.rotate(),ae=f.invert(y.midPt);X("projection.rotation.lon",-re[0]),X("center.lon",ae[0]),X("center.lat",ae[1])}return P.on("zoomstart",fe).on("zoom",G).on("zoomend",J),P}function c(y,f){var P={r:f.rotate(),k:f.scale()},L=i(y,f),z=u(L,"zoomstart","zoom","zoomend"),F=0,O=L.on,B;L.on("zoomstart",function(){g.select(this).style(t);var Q=g.mouse(this),le=f.rotate(),se=le,fe=f.translate(),G=p(le);B=h(f,Q),O.call(L,"zoom",function(){var J=g.mouse(this);if(f.scale(P.k=g.event.scale),!B)Q=J,B=h(f,Q);else if(h(f,J)){f.rotate(le).translate(fe);var $=h(f,J),X=T(B,$),re=E(d(G,X)),ae=P.r=l(re,B,se);(!isFinite(ae[0])||!isFinite(ae[1])||!isFinite(ae[2]))&&(ae=se),f.rotate(ae),se=ae}N(z.of(this,arguments))}),I(z.of(this,arguments))}).on("zoomend",function(){g.select(this).style(r),O.call(L,"zoom",null),U(z.of(this,arguments)),n(y,f,W)}).on("zoom.redraw",function(){y.render(!0);var Q=f.rotate();y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.projection.rotation.lon":-Q[0],"geo.projection.rotation.lat":-Q[1]})});function I(Q){F++||Q({type:"zoomstart"})}function N(Q){Q({type:"zoom"})}function U(Q){--F||Q({type:"zoomend"})}function W(Q){var le=f.rotate();Q("projection.rotation.lon",-le[0]),Q("projection.rotation.lat",-le[1])}return g.rebind(L,z,"on")}function h(y,f){var P=y.invert(f);return P&&isFinite(P[0])&&isFinite(P[1])&&m(P)}function p(y){var f=.5*y[0]*S,P=.5*y[1]*S,L=.5*y[2]*S,z=Math.sin(f),F=Math.cos(f),O=Math.sin(P),B=Math.cos(P),I=Math.sin(L),N=Math.cos(L);return[F*B*N+z*O*I,z*B*N-F*O*I,F*O*N+z*B*I,F*B*I-z*O*N]}function d(y,f){var P=y[0],L=y[1],z=y[2],F=y[3],O=f[0],B=f[1],I=f[2],N=f[3];return[P*O-L*B-z*I-F*N,P*B+L*O+z*N-F*I,P*I-L*N+z*O+F*B,P*N+L*I-z*B+F*O]}function T(y,f){if(!(!y||!f)){var P=v(y,f),L=Math.sqrt(b(P,P)),z=.5*Math.acos(Math.max(-1,Math.min(1,b(y,f)))),F=Math.sin(z)/L;return L&&[Math.cos(z),P[2]*F,-P[1]*F,P[0]*F]}}function l(y,f,P){var L=M(f,2,y[0]);L=M(L,1,y[1]),L=M(L,0,y[2]-P[2]);var z=f[0],F=f[1],O=f[2],B=L[0],I=L[1],N=L[2],U=Math.atan2(F,z)*e,W=Math.sqrt(z*z+F*F),Q,le;Math.abs(I)>W?(le=(I>0?90:-90)-U,Q=0):(le=Math.asin(I/W)*e-U,Q=Math.sqrt(W*W-I*I));var se=180-le-2*U,fe=(Math.atan2(N,B)-Math.atan2(O,Q))*e,G=(Math.atan2(N,B)-Math.atan2(O,-Q))*e,J=_(P[0],P[1],le,fe),$=_(P[0],P[1],se,G);return J<=$?[le,fe,P[2]]:[se,G,P[2]]}function _(y,f,P,L){var z=w(P-y),F=w(L-f);return Math.sqrt(z*z+F*F)}function w(y){return(y%360+540)%360-180}function M(y,f,P){var L=P*S,z=y.slice(),F=f===0?1:0,O=f===2?1:2,B=Math.cos(L),I=Math.sin(L);return z[F]=y[F]*B-y[O]*I,z[O]=y[O]*B+y[F]*I,z}function E(y){return[Math.atan2(2*(y[0]*y[1]+y[2]*y[3]),1-2*(y[1]*y[1]+y[2]*y[2]))*e,Math.asin(Math.max(-1,Math.min(1,2*(y[0]*y[2]-y[3]*y[1]))))*e,Math.atan2(2*(y[0]*y[3]+y[1]*y[2]),1-2*(y[2]*y[2]+y[3]*y[3]))*e]}function m(y){var f=y[0]*S,P=y[1]*S,L=Math.cos(P);return[L*Math.cos(f),L*Math.sin(f),Math.sin(P)]}function b(y,f){for(var P=0,L=0,z=y.length;L0&&I._module.calcGeoJSON(B,L)}if(!z){var N=this.updateProjection(P,L);if(N)return;(!this.viewInitial||this.scope!==F.scope)&&this.saveViewInitial(F)}this.scope=F.scope,this.updateBaseLayers(L,F),this.updateDims(L,F),this.updateFx(L,F),s.generalUpdatePerTraceModule(this.graphDiv,this,P,F);var U=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=U.selectAll(".point"),this.dataPoints.text=U.selectAll("text"),this.dataPaths.line=U.selectAll(".js-line");var W=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=W.selectAll("path"),this._render()},v.updateProjection=function(P,L){var z=this.graphDiv,F=L[this.id],O=L._size,B=F.domain,I=F.projection,N=F.lonaxis,U=F.lataxis,W=N._ax,Q=U._ax,le=this.projection=u(F),se=[[O.l+O.w*B.x[0],O.t+O.h*(1-B.y[1])],[O.l+O.w*B.x[1],O.t+O.h*(1-B.y[0])]],fe=F.center||{},G=I.rotation||{},J=N.range||[],$=U.range||[];if(F.fitbounds){W._length=se[1][0]-se[0][0],Q._length=se[1][1]-se[0][1],W.range=h(z,W),Q.range=h(z,Q);var X=(W.range[0]+W.range[1])/2,re=(Q.range[0]+Q.range[1])/2;if(F._isScoped)fe={lon:X,lat:re};else if(F._isClipped){fe={lon:X,lat:re},G={lon:X,lat:re,roll:G.roll};var ae=I.type,j=w.lonaxisSpan[ae]/2||180,ee=w.lataxisSpan[ae]/2||90;J=[X-j,X+j],$=[re-ee,re+ee]}else fe={lon:X,lat:re},G={lon:X,lat:G.lat,roll:G.roll}}le.center([fe.lon-G.lon,fe.lat-G.lat]).rotate([-G.lon,-G.lat,G.roll]).parallels(I.parallels);var ne=f(J,$);le.fitExtent(se,ne);var ce=this.bounds=le.getBounds(ne),_e=this.fitScale=le.scale(),we=le.translate();if(F.fitbounds){var Oe=le.getBounds(f(W.range,Q.range)),Ie=Math.min((ce[1][0]-ce[0][0])/(Oe[1][0]-Oe[0][0]),(ce[1][1]-ce[0][1])/(Oe[1][1]-Oe[0][1]));isFinite(Ie)?le.scale(Ie*_e):r.warn("Something went wrong during"+this.id+"fitbounds computations.")}else le.scale(I.scale*_e);var Xe=this.midPt=[(ce[0][0]+ce[1][0])/2,(ce[0][1]+ce[1][1])/2];if(le.translate([we[0]+(Xe[0]-we[0]),we[1]+(Xe[1]-we[1])]).clipExtent(ce),F._isAlbersUsa){var tt=le([fe.lon,fe.lat]),rt=le.translate();le.translate([rt[0]-(tt[0]-rt[0]),rt[1]-(tt[1]-rt[1])])}},v.updateBaseLayers=function(P,L){var z=this,F=z.topojson,O=z.layers,B=z.basePaths;function I(se){return se==="lonaxis"||se==="lataxis"}function N(se){return!!w.lineLayers[se]}function U(se){return!!w.fillLayers[se]}var W=this.hasChoropleth?w.layersForChoropleth:w.layers,Q=W.filter(function(se){return N(se)||U(se)?L["show"+se]:I(se)?L[se].showgrid:!0}),le=z.framework.selectAll(".layer").data(Q,String);le.exit().each(function(se){delete O[se],delete B[se],g.select(this).remove()}),le.enter().append("g").attr("class",function(se){return"layer "+se}).each(function(se){var fe=O[se]=g.select(this);se==="bg"?z.bgRect=fe.append("rect").style("pointer-events","all"):I(se)?B[se]=fe.append("path").style("fill","none"):se==="backplot"?fe.append("g").classed("choroplethlayer",!0):se==="frontplot"?fe.append("g").classed("scatterlayer",!0):N(se)?B[se]=fe.append("path").style("fill","none").style("stroke-miterlimit",2):U(se)&&(B[se]=fe.append("path").style("stroke","none"))}),le.order(),le.each(function(se){var fe=B[se],G=w.layerNameToAdjective[se];se==="frame"?fe.datum(w.sphereSVG):N(se)||U(se)?fe.datum(m(F,F.objects[se])):I(se)&&fe.datum(y(se,L,P)).call(i.stroke,L[se].gridcolor).call(n.dashLine,L[se].griddash,L[se].gridwidth),N(se)?fe.call(i.stroke,L[G+"color"]).call(n.dashLine,"",L[G+"width"]):U(se)&&fe.call(i.fill,L[G+"color"])})},v.updateDims=function(P,L){var z=this.bounds,F=(L.framewidth||0)/2,O=z[0][0]-F,B=z[0][1]-F,I=z[1][0]-O+F,N=z[1][1]-B+F;n.setRect(this.clipRect,O,B,I,N),this.bgRect.call(n.setRect,O,B,I,N).call(i.fill,L.bgcolor),this.xaxis._offset=O,this.xaxis._length=I,this.yaxis._offset=B,this.yaxis._length=N},v.updateFx=function(P,L){var z=this,F=z.graphDiv,O=z.bgRect,B=P.dragmode,I=P.clickmode;if(z.isStatic)return;function N(){var le=z.viewInitial,se={};for(var fe in le)se[z.id+"."+fe]=le[fe];t.call("_guiRelayout",F,se),F.emit("plotly_doubleclick",null)}function U(le){return z.projection.invert([le[0]+z.xaxis._offset,le[1]+z.yaxis._offset])}var W=function(le,se){if(se.isRect){var fe=le.range={};fe[z.id]=[U([se.xmin,se.ymin]),U([se.xmax,se.ymax])]}else{var G=le.lassoPoints={};G[z.id]=se.map(U)}},Q={element:z.bgRect.node(),gd:F,plotinfo:{id:z.id,xaxis:z.xaxis,yaxis:z.yaxis,fillRangeItems:W},xaxes:[z.xaxis],yaxes:[z.yaxis],subplot:z.id,clickFn:function(le){le===2&&T(F)}};B==="pan"?(O.node().onmousedown=null,O.call(_(z,L)),O.on("dblclick.zoom",N),F._context._scrollZoom.geo||O.on("wheel.zoom",null)):(B==="select"||B==="lasso")&&(O.on(".zoom",null),Q.prepFn=function(le,se,fe){d(le,se,fe,Q,B)},p.init(Q)),O.on("mousemove",function(){var le=z.projection.invert(r.getPositionFromD3Event());if(!le)return p.unhover(F,g.event);z.xaxis.p2c=function(){return le[0]},z.yaxis.p2c=function(){return le[1]},a.hover(F,g.event,z.id)}),O.on("mouseout",function(){F._dragging||p.unhover(F,g.event)}),O.on("click",function(){B!=="select"&&B!=="lasso"&&(I.indexOf("select")>-1&&l(g.event,F,[z.xaxis],[z.yaxis],z.id,Q),I.indexOf("event")>-1&&a.click(F,g.event))})},v.makeFramework=function(){var P=this,L=P.graphDiv,z=L._fullLayout,F="clip"+z._uid+P.id;P.clipDef=z._clips.append("clipPath").attr("id",F),P.clipRect=P.clipDef.append("rect"),P.framework=g.select(P.container).append("g").attr("class","geo "+P.id).call(n.setClipUrl,F,L),P.project=function(O){var B=P.projection(O);return B?[B[0]-P.xaxis._offset,B[1]-P.yaxis._offset]:[null,null]},P.xaxis={_id:"x",c2p:function(O){return P.project(O)[0]}},P.yaxis={_id:"y",c2p:function(O){return P.project(O)[1]}},P.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},c.setConvert(P.mockAxis,z)},v.saveViewInitial=function(P){var L=P.center||{},z=P.projection,F=z.rotation||{};this.viewInitial={fitbounds:P.fitbounds,"projection.scale":z.scale};var O;P._isScoped?O={"center.lon":L.lon,"center.lat":L.lat}:P._isClipped?O={"projection.rotation.lon":F.lon,"projection.rotation.lat":F.lat}:O={"center.lon":L.lon,"center.lat":L.lat,"projection.rotation.lon":F.lon},r.extendFlat(this.viewInitial,O)},v.render=function(P){this._hasMarkerAngles&&P?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},v._render=function(){var P=this.projection,L=P.getPath(),z;function F(B){var I=P(B.lonlat);return I?o(I[0],I[1]):null}function O(B){return P.isLonLatOverEdges(B.lonlat)?"none":null}for(z in this.basePaths)this.basePaths[z].attr("d",L);for(z in this.dataPaths)this.dataPaths[z].attr("d",function(B){return L(B.geojson)});for(z in this.dataPoints)this.dataPoints[z].attr("display",O).attr("transform",F)};function u(P){var L=P.projection,z=L.type,F=w.projNames[z];F="geo"+r.titleCase(F);for(var O=x[F]||e[F],B=O(),I=P._isSatellite?Math.acos(1/L.distance)*180/Math.PI:P._isClipped?w.lonaxisSpan[z]/2:null,N=["center","rotate","parallels","clipExtent"],U=function(le){return le?B:[]},W=0;WG}else return!1},B.getPath=function(){return A().projection(B)},B.getBounds=function(le){return B.getPath().bounds(le)},B.precision(w.precision),P._isSatellite&&B.tilt(L.tilt).distance(L.distance),I&&B.clipAngle(I-w.clipPad),B}function y(P,L,z){var F=1e-6,O=2.5,B=L[P],I=w.scopeDefaults[L.scope],N,U,W;P==="lonaxis"?(N=I.lonaxisRange,U=I.lataxisRange,W=function(re,ae){return[re,ae]}):P==="lataxis"&&(N=I.lataxisRange,U=I.lonaxisRange,W=function(re,ae){return[ae,re]});var Q={type:"linear",range:[N[0],N[1]-F],tick0:B.tick0,dtick:B.dtick};c.setConvert(Q,z);var le=c.calcTicks(Q);!L.isScoped&&P==="lonaxis"&&le.pop();for(var se=le.length,fe=new Array(se),G=0;G0&&O<0&&(O+=360);var N=(O-F)/4;return{type:"Polygon",coordinates:[[[F,B],[F,I],[F+N,I],[F+2*N,I],[F+3*N,I],[O,I],[O,B],[O-N,B],[O-2*N,B],[O-3*N,B],[F,B]]]}}}}),hA=Le({"src/plots/geo/layout_attributes.js"(Z,H){"use strict";var g=gf(),x=$u().attributes,A=Ah().dash,S=Jy(),e=qu().overrideAll,t=Up(),r={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:g.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:A},o=H.exports=e({domain:x({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:t(S.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:t(S.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:g.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:S.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:S.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:S.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:S.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:g.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:g.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:g.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:g.background},lonaxis:r,lataxis:r},"plot","from-root");o.uirevision={valType:"any",editType:"none"}}}),$I=Le({"src/plots/geo/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=Zp(),A=Mh().getSubplotData,S=Jy(),e=hA(),t=S.axesNames;H.exports=function(i,n,a){x(i,n,a,{type:"geo",attributes:e,handleDefaults:r,fullData:a,partition:"y"})};function r(o,i,n,a){var s=A(a.fullData,"geo",a.id),c=s.map(function($){return $.index}),h=n("resolution"),p=n("scope"),d=S.scopeDefaults[p],T=n("projection.type",d.projType),l=i._isAlbersUsa=T==="albers usa";l&&(p=i.scope="usa");var _=i._isScoped=p!=="world",w=i._isSatellite=T==="satellite",M=i._isConic=T.indexOf("conic")!==-1||T==="albers",E=i._isClipped=!!S.lonaxisSpan[T];if(o.visible===!1){var m=g.extendDeep({},i._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),i._template=m}for(var b=n("visible"),v,u=0;u0&&U<0&&(U+=360);var W=(N+U)/2,Q;if(!l){var le=_?d.projRotate:[W,0,0];Q=n("projection.rotation.lon",le[0]),n("projection.rotation.lat",le[1]),n("projection.rotation.roll",le[2]),v=n("showcoastlines",!_&&b),v&&(n("coastlinecolor"),n("coastlinewidth")),v=n("showocean",b?void 0:!1),v&&n("oceancolor")}var se,fe;if(l?(se=-96.6,fe=38.7):(se=_?W:Q,fe=(I[0]+I[1])/2),n("center.lon",se),n("center.lat",fe),w&&(n("projection.tilt"),n("projection.distance")),M){var G=d.projParallels||[0,60];n("projection.parallels",G)}n("projection.scale"),v=n("showland",b?void 0:!1),v&&n("landcolor"),v=n("showlakes",b?void 0:!1),v&&n("lakecolor"),v=n("showrivers",b?void 0:!1),v&&(n("rivercolor"),n("riverwidth")),v=n("showcountries",_&&p!=="usa"&&b),v&&(n("countrycolor"),n("countrywidth")),(p==="usa"||p==="north america"&&h===50)&&(n("showsubunits",b),n("subunitcolor"),n("subunitwidth")),_||(v=n("showframe",b),v&&(n("framecolor"),n("framewidth"))),n("bgcolor");var J=n("fitbounds");J&&(delete i.projection.scale,_?(delete i.center.lon,delete i.center.lat):E?(delete i.center.lon,delete i.center.lat,delete i.projection.rotation.lon,delete i.projection.rotation.lat,delete i.lonaxis.range,delete i.lataxis.range):(delete i.center.lon,delete i.center.lat,delete i.projection.rotation.lon))}}}),dA=Le({"src/plots/geo/index.js"(Z,H){"use strict";var g=Mh().getSubplotCalcData,x=ni().counterRegex,A=KI(),S="geo",e=x(S),t={};t[S]={valType:"subplotid",dflt:S,editType:"calc"};function r(n){for(var a=n._fullLayout,s=n.calcdata,c=a._subplots[S],h=0;h")}}}}),hb=Le({"src/traces/choropleth/event_data.js"(Z,H){"use strict";H.exports=function(x,A,S,e,t){x.location=A.location,x.z=A.z;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x.ct=r.ct,x}}}),db=Le({"src/traces/choropleth/select.js"(Z,H){"use strict";H.exports=function(x,A){var S=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,i,n,a,s;if(A===!1)for(o=0;o=Math.min(U,W)&&T<=Math.max(U,W)?0:1/0}if(L=Math.min(Q,le)&&l<=Math.max(Q,le)?0:1/0}O=Math.sqrt(L*L+z*z),u=w[P]}}}else for(P=w.length-1;P>-1;P--)v=w[P],y=p[v],f=d[v],L=c.c2p(y)-T,z=h.c2p(f)-l,F=Math.sqrt(L*L+z*z),F100},Z.isDotSymbol=function(g){return typeof g=="string"?H.DOT_RE.test(g):g>200}}}),i6=Le({"src/traces/scattergl/defaults.js"(Z,H){"use strict";var g=ni(),x=so(),A=pb(),S=e1(),e=Dv(),t=gu(),r=Jg(),o=vv(),i=Od(),n=Wd(),a=pv(),s=Xd();H.exports=function(h,p,d,T){function l(u,y){return g.coerce(h,p,S,u,y)}var _=h.marker?A.isOpenSymbol(h.marker.symbol):!1,w=t.isBubble(h),M=r(h,p,T,l);if(!M){p.visible=!1;return}o(h,p,T,l),l("xhoverformat"),l("yhoverformat");var E=M>>1,h=r[c],p=i!==void 0?i(h,o):h-o;p>=0?(s=c,a=c-1):n=c+1}return s}function x(r,o,i,n,a){for(var s=a+1;n<=a;){var c=n+a>>>1,h=r[c],p=i!==void 0?i(h,o):h-o;p>0?(s=c,a=c-1):n=c+1}return s}function A(r,o,i,n,a){for(var s=n-1;n<=a;){var c=n+a>>>1,h=r[c],p=i!==void 0?i(h,o):h-o;p<0?(s=c,n=c+1):a=c-1}return s}function S(r,o,i,n,a){for(var s=n-1;n<=a;){var c=n+a>>>1,h=r[c],p=i!==void 0?i(h,o):h-o;p<=0?(s=c,n=c+1):a=c-1}return s}function e(r,o,i,n,a){for(;n<=a;){var s=n+a>>>1,c=r[s],h=i!==void 0?i(c,o):c-o;if(h===0)return s;h<=0?n=s+1:a=s-1}return-1}function t(r,o,i,n,a,s){return typeof i=="function"?s(r,o,i,n===void 0?0:n|0,a===void 0?r.length-1:a|0):s(r,o,void 0,i===void 0?0:i|0,n===void 0?r.length-1:n|0)}H.exports={ge:function(r,o,i,n,a){return t(r,o,i,n,a,g)},gt:function(r,o,i,n,a){return t(r,o,i,n,a,x)},lt:function(r,o,i,n,a){return t(r,o,i,n,a,A)},le:function(r,o,i,n,a){return t(r,o,i,n,a,S)},eq:function(r,o,i,n,a){return t(r,o,i,n,a,e)}}}}),Ov=Le({"node_modules/pick-by-alias/index.js"(Z,H){"use strict";H.exports=function(S,e,t){var r={},o,i;if(typeof e=="string"&&(e=x(e)),Array.isArray(e)){var n={};for(i=0;i1&&(A=arguments),typeof A=="string"?A=A.split(/\s/).map(parseFloat):typeof A=="number"&&(A=[A]),A.length&&typeof A[0]=="number"?A.length===1?S={width:A[0],height:A[0],x:0,y:0}:A.length===2?S={width:A[0],height:A[1],x:0,y:0}:S={x:A[0],y:A[1],width:A[2]-A[0]||0,height:A[3]-A[1]||0}:A&&(A=g(A,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),S={x:A.left||0,y:A.top||0},A.width==null?A.right?S.width=A.right-S.x:S.width=0:S.width=A.width,A.height==null?A.bottom?S.height=A.bottom-S.y:S.height=0:S.height=A.height),S}}}),og=Le({"node_modules/array-bounds/index.js"(Z,H){"use strict";H.exports=g;function g(x,A){if(!x||x.length==null)throw Error("Argument should be an array");A==null?A=1:A=Math.floor(A);for(var S=Array(A*2),e=0;et&&(t=x[o]),x[o]>>1,w;p.dtype||(p.dtype="array"),typeof p.dtype=="string"?w=new(i(p.dtype))(_):p.dtype&&(w=p.dtype,Array.isArray(w)&&(w.length=_));for(let L=0;L<_;++L)w[L]=L;let M=[],E=[],m=[],b=[];u(0,0,1,w,0,1);let v=0;for(let L=0;Ld||I>a){for(let re=0;rene||W>ce||Q<$||le=se||j===ee)return;let _e=M[ae];ee===void 0&&(ee=_e.length);for(let Me=j;Me=O&&ue<=I&&ze>=B&&ze<=N&&fe.push(pe)}let we=E[ae],Oe=we[j*4+0],Ie=we[j*4+1],Xe=we[j*4+2],tt=we[j*4+3],rt=J(we,j+1),Je=re*.5,ot=ae+1;G($,X,Je,ot,Oe,Ie||Xe||tt||rt),G($,X+Je,Je,ot,Ie,Xe||tt||rt),G($+Je,X,Je,ot,Xe,tt||rt),G($+Je,X+Je,Je,ot,tt,rt)}function J($,X){let re=null,ae=0;for(;re===null;)if(re=$[X*4+ae],ae++,ae>$.length)return null;return re}return fe}function f(L,z,F,O,B){let I=[];for(let N=0;N1&&(h=1),h<-1&&(h=-1),c*Math.acos(h)},t=function(i,n,a,s,c,h,p,d,T,l,_,w){var M=Math.pow(c,2),E=Math.pow(h,2),m=Math.pow(_,2),b=Math.pow(w,2),v=M*E-M*b-E*m;v<0&&(v=0),v/=M*b+E*m,v=Math.sqrt(v)*(p===d?-1:1);var u=v*c/h*w,y=v*-h/c*_,f=l*u-T*y+(i+a)/2,P=T*u+l*y+(n+s)/2,L=(_-u)/c,z=(w-y)/h,F=(-_-u)/c,O=(-w-y)/h,B=e(1,0,L,z),I=e(L,z,F,O);return d===0&&I>0&&(I-=x),d===1&&I<0&&(I+=x),[f,P,B,I]},r=function(i){var n=i.px,a=i.py,s=i.cx,c=i.cy,h=i.rx,p=i.ry,d=i.xAxisRotation,T=d===void 0?0:d,l=i.largeArcFlag,_=l===void 0?0:l,w=i.sweepFlag,M=w===void 0?0:w,E=[];if(h===0||p===0)return[];var m=Math.sin(T*x/360),b=Math.cos(T*x/360),v=b*(n-s)/2+m*(a-c)/2,u=-m*(n-s)/2+b*(a-c)/2;if(v===0&&u===0)return[];h=Math.abs(h),p=Math.abs(p);var y=Math.pow(v,2)/Math.pow(h,2)+Math.pow(u,2)/Math.pow(p,2);y>1&&(h*=Math.sqrt(y),p*=Math.sqrt(y));var f=t(n,a,s,c,h,p,_,M,m,b,v,u),P=g(f,4),L=P[0],z=P[1],F=P[2],O=P[3],B=Math.abs(O)/(x/4);Math.abs(1-B)<1e-7&&(B=1);var I=Math.max(Math.ceil(B),1);O/=I;for(var N=0;N4?(o=l[l.length-4],i=l[l.length-3]):(o=h,i=p),r.push(l)}return r}function A(e,t,r,o){return["C",e,t,r,o,r,o]}function S(e,t,r,o,i,n){return["C",e/3+2/3*r,t/3+2/3*o,i/3+2/3*r,n/3+2/3*o,i,n]}}}),mA=Le({"node_modules/is-svg-path/index.js"(Z,H){"use strict";H.exports=function(x){return typeof x!="string"?!1:(x=x.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(x)&&/[\dz]$/i.test(x)&&x.length>4))}}}),h6=Le({"node_modules/svg-path-bounds/index.js"(Z,H){"use strict";var g=oy(),x=pA(),A=f6(),S=mA(),e=Ly();H.exports=t;function t(r){if(Array.isArray(r)&&r.length===1&&typeof r[0]=="string"&&(r=r[0]),typeof r=="string"&&(e(S(r),"String is not an SVG path."),r=g(r)),e(Array.isArray(r),"Argument should be a string or an array of path segments."),r=x(r),r=A(r),!r.length)return[0,0,0,0];for(var o=[1/0,1/0,-1/0,-1/0],i=0,n=r.length;io[2]&&(o[2]=a[s+0]),a[s+1]>o[3]&&(o[3]=a[s+1]);return o}}}),d6=Le({"node_modules/normalize-svg-path/index.js"(Z,H){var g=Math.PI,x=o(120);H.exports=A;function A(i){for(var n,a=[],s=0,c=0,h=0,p=0,d=null,T=null,l=0,_=0,w=0,M=i.length;w7&&(a.push(E.splice(0,7)),E.unshift("C"));break;case"S":var b=l,v=_;(n=="C"||n=="S")&&(b+=b-s,v+=v-c),E=["C",b,v,E[1],E[2],E[3],E[4]];break;case"T":n=="Q"||n=="T"?(d=l*2-d,T=_*2-T):(d=l,T=_),E=e(l,_,d,T,E[1],E[2]);break;case"Q":d=E[1],T=E[2],E=e(l,_,E[1],E[2],E[3],E[4]);break;case"L":E=S(l,_,E[1],E[2]);break;case"H":E=S(l,_,E[1],_);break;case"V":E=S(l,_,l,E[1]);break;case"Z":E=S(l,_,h,p);break}n=m,l=E[E.length-2],_=E[E.length-1],E.length>4?(s=E[E.length-4],c=E[E.length-3]):(s=l,c=_),a.push(E)}return a}function S(i,n,a,s){return["C",i,n,a,s,a,s]}function e(i,n,a,s,c,h){return["C",i/3+2/3*a,n/3+2/3*s,c/3+2/3*a,h/3+2/3*s,c,h]}function t(i,n,a,s,c,h,p,d,T,l){if(l)f=l[0],P=l[1],u=l[2],y=l[3];else{var _=r(i,n,-c);i=_.x,n=_.y,_=r(d,T,-c),d=_.x,T=_.y;var w=(i-d)/2,M=(n-T)/2,E=w*w/(a*a)+M*M/(s*s);E>1&&(E=Math.sqrt(E),a=E*a,s=E*s);var m=a*a,b=s*s,v=(h==p?-1:1)*Math.sqrt(Math.abs((m*b-m*M*M-b*w*w)/(m*M*M+b*w*w)));v==1/0&&(v=1);var u=v*a*M/s+(i+d)/2,y=v*-s*w/a+(n+T)/2,f=Math.asin(((n-y)/s).toFixed(9)),P=Math.asin(((T-y)/s).toFixed(9));f=iP&&(f=f-g*2),!p&&P>f&&(P=P-g*2)}if(Math.abs(P-f)>x){var L=P,z=d,F=T;P=f+x*(p&&P>f?1:-1),d=u+a*Math.cos(P),T=y+s*Math.sin(P);var O=t(d,T,a,s,c,0,p,z,F,[P,L,u,y])}var B=Math.tan((P-f)/4),I=4/3*a*B,N=4/3*s*B,U=[2*i-(i+I*Math.sin(f)),2*n-(n-N*Math.cos(f)),d+I*Math.sin(P),T-N*Math.cos(P),d,T];if(l)return U;O&&(U=U.concat(O));for(var W=0;W0?r.strokeStyle="white":r.strokeStyle="black",r.lineWidth=Math.abs(d)),r.translate(c*.5,h*.5),r.scale(_,_),n()){var w=new Path2D(a);r.fill(w),d&&r.stroke(w)}else{var M=x(a);A(r,M),r.fill(),d&&r.stroke()}r.setTransform(1,0,0,1,0,0);var E=e(r,{cutoff:s.cutoff!=null?s.cutoff:.5,radius:s.radius!=null?s.radius:p*.5});return E}var i;function n(){if(i!=null)return i;var a=document.createElement("canvas").getContext("2d");if(a.canvas.width=a.canvas.height=1,!window.Path2D)return i=!1;var s=new Path2D("M0,0h1v1h-1v-1Z");a.fillStyle="black",a.fill(s);var c=a.getImageData(0,0,1,1);return i=c&&c.data&&c.data[3]===255}}}),lg=Le({"src/traces/scattergl/convert.js"(Z,H){"use strict";var g=zn(),x=m6(),A=rm(),S=so(),e=ni(),t=e.isArrayOrTypedArray,r=rs(),o=Kc(),i=pp().formatColor,n=gu(),a=Yg(),s=pb(),c=om(),h=Iv().DESELECTDIM,p={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},d=Td().appendArrayPointValue;function T(O,B){var I,N={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},U=O._context.plotGlPixelRatio;if(B.visible!==!0)return N;if(n.hasText(B)&&(N.text=l(O,B),N.textSel=E(O,B,B.selected),N.textUnsel=E(O,B,B.unselected)),n.hasMarkers(B)&&(N.marker=w(O,B),N.markerSel=M(O,B,B.selected),N.markerUnsel=M(O,B,B.unselected),!B.unselected&&t(B.marker.opacity))){var W=B.marker.opacity;for(N.markerUnsel.opacity=new Array(W.length),I=0;I500?"bold":"normal":O}function w(O,B){var I=B._length,N=B.marker,U={},W,Q=t(N.symbol),le=t(N.angle),se=t(N.color),fe=t(N.line.color),G=t(N.opacity),J=t(N.size),$=t(N.line.width),X;if(Q||(X=s.isOpenSymbol(N.symbol)),Q||se||fe||G||le){U.symbols=new Array(I),U.angles=new Array(I),U.colors=new Array(I),U.borderColors=new Array(I);var re=N.symbol,ae=N.angle,j=i(N,N.opacity,I),ee=i(N.line,N.opacity,I);if(!t(ee[0])){var ne=ee;for(ee=Array(I),W=0;Wc.TOO_MANY_POINTS||n.hasMarkers(B)?"rect":"round";if(fe&&B.connectgaps){var J=W[0],$=W[1];for(Q=0;Q1?se[Q]:se[0]:se,X=t(fe)?fe.length>1?fe[Q]:fe[0]:fe,re=p[$],ae=p[X],j=G?G/.8+1:0,ee=-ae*j-ae*.5;W.offset[Q]=[re*j/J,ee/J]}}return W}H.exports={style:T,markerStyle:w,markerSelection:M,linePositions:L,errorBarPositions:z,textPosition:F}}}),gA=Le({"src/traces/scattergl/scene_update.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){var e=S._scene,t={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},r={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return S._scene||(e=S._scene={},e.init=function(){g.extendFlat(e,r,t)},e.init(),e.update=function(i){var n=g.repeat(i,e.count);if(e.fill2d&&e.fill2d.update(n),e.scatter2d&&e.scatter2d.update(n),e.line2d&&e.line2d.update(n),e.error2d&&e.error2d.update(n.concat(n)),e.select2d&&e.select2d.update(n),e.glText)for(var a=0;a=h,u=b*2,y={},f,P=M.makeCalcdata(_,"x"),L=E.makeCalcdata(_,"y"),z=e(_,M,"x",P),F=e(_,E,"y",L),O=z.vals,B=F.vals;_._x=O,_._y=B,_.xperiodalignment&&(_._origX=P,_._xStarts=z.starts,_._xEnds=z.ends),_.yperiodalignment&&(_._origY=L,_._yStarts=F.starts,_._yEnds=F.ends);var I=new Array(u),N=new Array(b);for(f=0;f1&&x.extendFlat(m.line,a.linePositions(T,_,w)),m.errorX||m.errorY){var b=a.errorBarPositions(T,_,w,M,E);m.errorX&&x.extendFlat(m.errorX,b.x),m.errorY&&x.extendFlat(m.errorY,b.y)}return m.text&&(x.extendFlat(m.text,{positions:w},a.textPosition(T,_,m.text,m.marker)),x.extendFlat(m.textSel,{positions:w},a.textPosition(T,_,m.text,m.markerSel)),x.extendFlat(m.textUnsel,{positions:w},a.textPosition(T,_,m.text,m.markerUnsel))),m}}}),yA=Le({"src/traces/scattergl/edit_style.js"(Z,H){"use strict";var g=ni(),x=$a(),A=Iv().DESELECTDIM;function S(e){var t=e[0],r=t.trace,o=t.t,i=o._scene,n=o.index,a=i.selectBatch[n],s=i.unselectBatch[n],c=i.textOptions[n],h=i.textSelectedOptions[n]||{},p=i.textUnselectedOptions[n]||{},d=g.extendFlat({},c),T,l;if(a.length||s.length){var _=h.color,w=p.color,M=c.color,E=g.isArrayOrTypedArray(M);for(d.color=new Array(r._length),T=0;T>>24,r=(S&16711680)>>>16,o=(S&65280)>>>8,i=S&255;return e===!1?[t,r,o,i]:[t/255,r/255,o/255,i/255]}}}),Nf=Le({"node_modules/object-assign/index.js"(Z,H){"use strict";var g=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;function S(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function e(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},o=0;o<10;o++)r["_"+String.fromCharCode(o)]=o;var i=Object.getOwnPropertyNames(r).map(function(a){return r[a]});if(i.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(a){n[a]=a}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}H.exports=e()?Object.assign:function(t,r){for(var o,i=S(t),n,a=1;ay.length)&&(f=y.length);for(var P=0,L=new Array(f);P 1.0 + delta) { + discard; + } + + alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius); + + float borderRadius = fragBorderRadius; + float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius); + vec4 color = mix(fragColor, fragBorderColor, ratio); + color.a *= alpha * opacity; + gl_FragColor = color; +} +`]),se.vert=d([`precision highp float; +#define GLSLIFY 1 + +attribute float x, y, xFract, yFract; +attribute float size, borderSize; +attribute vec4 colorId, borderColorId; +attribute float isActive; + +// \`invariant\` effectively turns off optimizations for the position. +// We need this because -fast-math on M1 Macs is re-ordering +// floating point operations in a way that causes floating point +// precision limits to put points in the wrong locations. +invariant gl_Position; + +uniform bool constPointSize; +uniform float pixelRatio; +uniform vec2 paletteSize, scale, scaleFract, translate, translateFract; +uniform sampler2D paletteTexture; + +const float maxSize = 100.; + +varying vec4 fragColor, fragBorderColor; +varying float fragBorderRadius, fragWidth; + +float pointSizeScale = (constPointSize) ? 2. : pixelRatio; + +bool isDirect = (paletteSize.x < 1.); + +vec4 getColor(vec4 id) { + return isDirect ? id / 255. : texture2D(paletteTexture, + vec2( + (id.x + .5) / paletteSize.x, + (id.y + .5) / paletteSize.y + ) + ); +} + +void main() { + // ignore inactive points + if (isActive == 0.) return; + + vec2 position = vec2(x, y); + vec2 positionFract = vec2(xFract, yFract); + + vec4 color = getColor(colorId); + vec4 borderColor = getColor(borderColorId); + + float size = size * maxSize / 255.; + float borderSize = borderSize * maxSize / 255.; + + gl_PointSize = (size + borderSize) * pointSizeScale; + + vec2 pos = (position + translate) * scale + + (positionFract + translateFract) * scale + + (position + translate) * scaleFract + + (positionFract + translateFract) * scaleFract; + + gl_Position = vec4(pos * 2. - 1., 0., 1.); + + fragBorderRadius = 1. - 2. * borderSize / (size + borderSize); + fragColor = color; + fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor; + fragWidth = 1. / gl_PointSize; +} +`]),w&&(se.frag=se.frag.replace("smoothstep","smoothStep"),le.frag=le.frag.replace("smoothstep","smoothStep")),this.drawCircle=y(se)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;Lpe)?ot.tree=h(Je,{bounds:$e}):pe&&pe.length&&(ot.tree=pe),ot.tree){var kt={primitive:"points",usage:"static",data:ot.tree,type:"uint32"};ot.elements?ot.elements(kt):ot.elements=O.elements(kt)}var Mt=M.float32(Je);ue({data:Mt,usage:"dynamic"});var Bt=M.fract32(Je,Mt);return ze({data:Bt,usage:"dynamic"}),Qe({data:new Uint8Array(it),type:"uint8",usage:"stream"}),Je}},{marker:function(Je,ot,Me){var pe=ot.activation;if(pe.forEach(function(Bt){return Bt&&Bt.destroy&&Bt.destroy()}),pe.length=0,!Je||typeof Je[0]=="number"){var ue=y.addMarker(Je);pe[ue]=!0}else{for(var ze=[],Qe=0,it=Math.min(Je.length,ot.count);Qe=0)return z;var F;if(y instanceof Uint8Array||y instanceof Uint8ClampedArray)F=y;else{F=new Uint8Array(y.length);for(var O=0,B=y.length;OL*4&&(this.tooManyColors=!0),this.updatePalette(P),z.length===1?z[0]:z},b.prototype.updatePalette=function(y){if(!this.tooManyColors){var f=this.maxColors,P=this.paletteTexture,L=Math.ceil(y.length*.25/f);if(L>1){y=y.slice();for(var z=y.length*.25%f;z80*I){le=fe=O[0],se=G=O[1];for(var re=I;refe&&(fe=J),$>G&&(G=$);X=Math.max(fe-le,G-se),X=X!==0?32767/X:0}return S(W,Q,I,le,se,X,0),Q}function x(O,B,I,N,U){var W,Q;if(U===F(O,B,I,N)>0)for(W=B;W=B;W-=N)Q=P(W,O[W],O[W+1],Q);return Q&&M(Q,Q.next)&&(L(Q),Q=Q.next),Q}function A(O,B){if(!O)return O;B||(B=O);var I=O,N;do if(N=!1,!I.steiner&&(M(I,I.next)||w(I.prev,I,I.next)===0)){if(L(I),I=B=I.prev,I===I.next)break;N=!0}else I=I.next;while(N||I!==B);return B}function S(O,B,I,N,U,W,Q){if(O){!Q&&W&&h(O,N,U,W);for(var le=O,se,fe;O.prev!==O.next;){if(se=O.prev,fe=O.next,W?t(O,N,U,W):e(O)){B.push(se.i/I|0),B.push(O.i/I|0),B.push(fe.i/I|0),L(O),O=fe.next,le=fe.next;continue}if(O=fe,O===le){Q?Q===1?(O=r(A(O),B,I),S(O,B,I,N,U,W,2)):Q===2&&o(O,B,I,N,U,W):S(A(O),B,I,N,U,W,1);break}}}}function e(O){var B=O.prev,I=O,N=O.next;if(w(B,I,N)>=0)return!1;for(var U=B.x,W=I.x,Q=N.x,le=B.y,se=I.y,fe=N.y,G=UW?U>Q?U:Q:W>Q?W:Q,X=le>se?le>fe?le:fe:se>fe?se:fe,re=N.next;re!==B;){if(re.x>=G&&re.x<=$&&re.y>=J&&re.y<=X&&l(U,le,W,se,Q,fe,re.x,re.y)&&w(re.prev,re,re.next)>=0)return!1;re=re.next}return!0}function t(O,B,I,N){var U=O.prev,W=O,Q=O.next;if(w(U,W,Q)>=0)return!1;for(var le=U.x,se=W.x,fe=Q.x,G=U.y,J=W.y,$=Q.y,X=lese?le>fe?le:fe:se>fe?se:fe,j=G>J?G>$?G:$:J>$?J:$,ee=d(X,re,B,I,N),ne=d(ae,j,B,I,N),ce=O.prevZ,_e=O.nextZ;ce&&ce.z>=ee&&_e&&_e.z<=ne;){if(ce.x>=X&&ce.x<=ae&&ce.y>=re&&ce.y<=j&&ce!==U&&ce!==Q&&l(le,G,se,J,fe,$,ce.x,ce.y)&&w(ce.prev,ce,ce.next)>=0||(ce=ce.prevZ,_e.x>=X&&_e.x<=ae&&_e.y>=re&&_e.y<=j&&_e!==U&&_e!==Q&&l(le,G,se,J,fe,$,_e.x,_e.y)&&w(_e.prev,_e,_e.next)>=0))return!1;_e=_e.nextZ}for(;ce&&ce.z>=ee;){if(ce.x>=X&&ce.x<=ae&&ce.y>=re&&ce.y<=j&&ce!==U&&ce!==Q&&l(le,G,se,J,fe,$,ce.x,ce.y)&&w(ce.prev,ce,ce.next)>=0)return!1;ce=ce.prevZ}for(;_e&&_e.z<=ne;){if(_e.x>=X&&_e.x<=ae&&_e.y>=re&&_e.y<=j&&_e!==U&&_e!==Q&&l(le,G,se,J,fe,$,_e.x,_e.y)&&w(_e.prev,_e,_e.next)>=0)return!1;_e=_e.nextZ}return!0}function r(O,B,I){var N=O;do{var U=N.prev,W=N.next.next;!M(U,W)&&E(U,N,N.next,W)&&u(U,W)&&u(W,U)&&(B.push(U.i/I|0),B.push(N.i/I|0),B.push(W.i/I|0),L(N),L(N.next),N=O=W),N=N.next}while(N!==O);return A(N)}function o(O,B,I,N,U,W){var Q=O;do{for(var le=Q.next.next;le!==Q.prev;){if(Q.i!==le.i&&_(Q,le)){var se=f(Q,le);Q=A(Q,Q.next),se=A(se,se.next),S(Q,B,I,N,U,W,0),S(se,B,I,N,U,W,0);return}le=le.next}Q=Q.next}while(Q!==O)}function i(O,B,I,N){var U=[],W,Q,le,se,fe;for(W=0,Q=B.length;W=I.next.y&&I.next.y!==I.y){var le=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(le<=N&&le>W&&(W=le,Q=I.x=I.x&&I.x>=fe&&N!==I.x&&l(UQ.x||I.x===Q.x&&c(Q,I)))&&(Q=I,J=$)),I=I.next;while(I!==se);return Q}function c(O,B){return w(O.prev,O,B.prev)<0&&w(B.next,O,O.next)<0}function h(O,B,I,N){var U=O;do U.z===0&&(U.z=d(U.x,U.y,B,I,N)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==O);U.prevZ.nextZ=null,U.prevZ=null,p(U)}function p(O){var B,I,N,U,W,Q,le,se,fe=1;do{for(I=O,O=null,W=null,Q=0;I;){for(Q++,N=I,le=0,B=0;B0||se>0&&N;)le!==0&&(se===0||!N||I.z<=N.z)?(U=I,I=I.nextZ,le--):(U=N,N=N.nextZ,se--),W?W.nextZ=U:O=U,U.prevZ=W,W=U;I=N}W.nextZ=null,fe*=2}while(Q>1);return O}function d(O,B,I,N,U){return O=(O-I)*U|0,B=(B-N)*U|0,O=(O|O<<8)&16711935,O=(O|O<<4)&252645135,O=(O|O<<2)&858993459,O=(O|O<<1)&1431655765,B=(B|B<<8)&16711935,B=(B|B<<4)&252645135,B=(B|B<<2)&858993459,B=(B|B<<1)&1431655765,O|B<<1}function T(O){var B=O,I=O;do(B.x=(O-Q)*(W-le)&&(O-Q)*(N-le)>=(I-Q)*(B-le)&&(I-Q)*(W-le)>=(U-Q)*(N-le)}function _(O,B){return O.next.i!==B.i&&O.prev.i!==B.i&&!v(O,B)&&(u(O,B)&&u(B,O)&&y(O,B)&&(w(O.prev,O,B.prev)||w(O,B.prev,B))||M(O,B)&&w(O.prev,O,O.next)>0&&w(B.prev,B,B.next)>0)}function w(O,B,I){return(B.y-O.y)*(I.x-B.x)-(B.x-O.x)*(I.y-B.y)}function M(O,B){return O.x===B.x&&O.y===B.y}function E(O,B,I,N){var U=b(w(O,B,I)),W=b(w(O,B,N)),Q=b(w(I,N,O)),le=b(w(I,N,B));return!!(U!==W&&Q!==le||U===0&&m(O,I,B)||W===0&&m(O,N,B)||Q===0&&m(I,O,N)||le===0&&m(I,B,N))}function m(O,B,I){return B.x<=Math.max(O.x,I.x)&&B.x>=Math.min(O.x,I.x)&&B.y<=Math.max(O.y,I.y)&&B.y>=Math.min(O.y,I.y)}function b(O){return O>0?1:O<0?-1:0}function v(O,B){var I=O;do{if(I.i!==O.i&&I.next.i!==O.i&&I.i!==B.i&&I.next.i!==B.i&&E(I,I.next,O,B))return!0;I=I.next}while(I!==O);return!1}function u(O,B){return w(O.prev,O,O.next)<0?w(O,B,O.next)>=0&&w(O,O.prev,B)>=0:w(O,B,O.prev)<0||w(O,O.next,B)<0}function y(O,B){var I=O,N=!1,U=(O.x+B.x)/2,W=(O.y+B.y)/2;do I.y>W!=I.next.y>W&&I.next.y!==I.y&&U<(I.next.x-I.x)*(W-I.y)/(I.next.y-I.y)+I.x&&(N=!N),I=I.next;while(I!==O);return N}function f(O,B){var I=new z(O.i,O.x,O.y),N=new z(B.i,B.x,B.y),U=O.next,W=B.prev;return O.next=B,B.prev=O,I.next=U,U.prev=I,N.next=I,I.prev=N,W.next=N,N.prev=W,N}function P(O,B,I,N){var U=new z(O,B,I);return N?(U.next=N.next,U.prev=N,N.next.prev=U,N.next=U):(U.prev=U,U.next=U),U}function L(O){O.next.prev=O.prev,O.prev.next=O.next,O.prevZ&&(O.prevZ.nextZ=O.nextZ),O.nextZ&&(O.nextZ.prevZ=O.prevZ)}function z(O,B,I){this.i=O,this.x=B,this.y=I,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}g.deviation=function(O,B,I,N){var U=B&&B.length,W=U?B[0]*I:O.length,Q=Math.abs(F(O,0,W,I));if(U)for(var le=0,se=B.length;le0&&(N+=O[U-1].length,I.holes.push(N))}return I}}}),T6=Le({"node_modules/array-normalize/index.js"(Z,H){"use strict";var g=og();H.exports=x;function x(A,S,e){if(!A||A.length==null)throw Error("Argument should be an array");S==null&&(S=1),e==null&&(e=g(A,S));for(var t=0;t-1}}}),EA=Le({"node_modules/es5-ext/string/#/contains/index.js"(Z,H){"use strict";H.exports=F6()()?String.prototype.contains:B6()}}),gp=Le({"node_modules/d/index.js"(Z,H){"use strict";var g=ug(),x=MA(),A=xb(),S=SA(),e=EA(),t=H.exports=function(r,o){var i,n,a,s,c;return arguments.length<2||typeof r!="string"?(s=o,o=r,r=null):s=arguments[2],g(r)?(i=e.call(r,"c"),n=e.call(r,"e"),a=e.call(r,"w")):(i=a=!0,n=!1),c={value:o,configurable:i,enumerable:n,writable:a},s?A(S(s),c):c};t.gs=function(r,o,i){var n,a,s,c;return typeof r!="string"?(s=i,i=o,o=r,r=null):s=arguments[3],g(o)?x(o)?g(i)?x(i)||(s=i,i=void 0):i=void 0:(s=o,o=i=void 0):o=void 0,g(r)?(n=e.call(r,"c"),a=e.call(r,"e")):(n=!0,a=!1),c={get:o,set:i,configurable:n,enumerable:a},s?A(S(s),c):c}}}),t1=Le({"node_modules/es5-ext/function/is-arguments.js"(Z,H){"use strict";var g=Object.prototype.toString,x=g.call(function(){return arguments}());H.exports=function(A){return g.call(A)===x}}}),r1=Le({"node_modules/es5-ext/string/is-string.js"(Z,H){"use strict";var g=Object.prototype.toString,x=g.call("");H.exports=function(A){return typeof A=="string"||A&&typeof A=="object"&&(A instanceof String||g.call(A)===x)||!1}}}),O6=Le({"node_modules/ext/global-this/is-implemented.js"(Z,H){"use strict";H.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}}}),N6=Le({"node_modules/ext/global-this/implementation.js"(Z,H){var g=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};H.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return g()}try{return __global__||g()}finally{delete Object.prototype.__global__}}()}}),i1=Le({"node_modules/ext/global-this/index.js"(Z,H){"use strict";H.exports=O6()()?globalThis:N6()}}),U6=Le({"node_modules/es6-symbol/is-implemented.js"(Z,H){"use strict";var g=i1(),x={object:!0,symbol:!0};H.exports=function(){var A=g.Symbol,S;if(typeof A!="function")return!1;S=A("test symbol");try{String(S)}catch{return!1}return!(!x[typeof A.iterator]||!x[typeof A.toPrimitive]||!x[typeof A.toStringTag])}}}),j6=Le({"node_modules/es6-symbol/is-symbol.js"(Z,H){"use strict";H.exports=function(g){return g?typeof g=="symbol"?!0:!g.constructor||g.constructor.name!=="Symbol"?!1:g[g.constructor.toStringTag]==="Symbol":!1}}}),kA=Le({"node_modules/es6-symbol/validate-symbol.js"(Z,H){"use strict";var g=j6();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not a symbol");return x}}}),V6=Le({"node_modules/es6-symbol/lib/private/generate-name.js"(Z,H){"use strict";var g=gp(),x=Object.create,A=Object.defineProperty,S=Object.prototype,e=x(null);H.exports=function(t){for(var r=0,o,i;e[t+(r||"")];)++r;return t+=r||"",e[t]=!0,o="@@"+t,A(S,o,g.gs(null,function(n){i||(i=!0,A(this,o,g(n)),i=!1)})),o}}}),q6=Le({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(Z,H){"use strict";var g=gp(),x=i1().Symbol;H.exports=function(A){return Object.defineProperties(A,{hasInstance:g("",x&&x.hasInstance||A("hasInstance")),isConcatSpreadable:g("",x&&x.isConcatSpreadable||A("isConcatSpreadable")),iterator:g("",x&&x.iterator||A("iterator")),match:g("",x&&x.match||A("match")),replace:g("",x&&x.replace||A("replace")),search:g("",x&&x.search||A("search")),species:g("",x&&x.species||A("species")),split:g("",x&&x.split||A("split")),toPrimitive:g("",x&&x.toPrimitive||A("toPrimitive")),toStringTag:g("",x&&x.toStringTag||A("toStringTag")),unscopables:g("",x&&x.unscopables||A("unscopables"))})}}}),H6=Le({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(Z,H){"use strict";var g=gp(),x=kA(),A=Object.create(null);H.exports=function(S){return Object.defineProperties(S,{for:g(function(e){return A[e]?A[e]:A[e]=S(String(e))}),keyFor:g(function(e){var t;x(e);for(t in A)if(A[t]===e)return t})})}}}),G6=Le({"node_modules/es6-symbol/polyfill.js"(Z,H){"use strict";var g=gp(),x=kA(),A=i1().Symbol,S=V6(),e=q6(),t=H6(),r=Object.create,o=Object.defineProperties,i=Object.defineProperty,n,a,s;if(typeof A=="function")try{String(A()),s=!0}catch{}else A=null;a=function(h){if(this instanceof a)throw new TypeError("Symbol is not a constructor");return n(h)},H.exports=n=function c(h){var p;if(this instanceof c)throw new TypeError("Symbol is not a constructor");return s?A(h):(p=r(a.prototype),h=h===void 0?"":String(h),o(p,{__description__:g("",h),__name__:g("",S(h))}))},e(n),t(n),o(a.prototype,{constructor:g(n),toString:g("",function(){return this.__name__})}),o(n.prototype,{toString:g(function(){return"Symbol ("+x(this).__description__+")"}),valueOf:g(function(){return x(this)})}),i(n.prototype,n.toPrimitive,g("",function(){var c=x(this);return typeof c=="symbol"?c:c.toString()})),i(n.prototype,n.toStringTag,g("c","Symbol")),i(a.prototype,n.toStringTag,g("c",n.prototype[n.toStringTag])),i(a.prototype,n.toPrimitive,g("c",n.prototype[n.toPrimitive]))}}),lm=Le({"node_modules/es6-symbol/index.js"(Z,H){"use strict";H.exports=U6()()?i1().Symbol:G6()}}),W6=Le({"node_modules/es5-ext/array/#/clear.js"(Z,H){"use strict";var g=mp();H.exports=function(){return g(this).length=0,this}}}),w0=Le({"node_modules/es5-ext/object/valid-callable.js"(Z,H){"use strict";H.exports=function(g){if(typeof g!="function")throw new TypeError(g+" is not a function");return g}}}),X6=Le({"node_modules/type/string/coerce.js"(Z,H){"use strict";var g=ug(),x=_b(),A=Object.prototype.toString;H.exports=function(S){if(!g(S))return null;if(x(S)){var e=S.toString;if(typeof e!="function"||e===A)return null}try{return""+S}catch{return null}}}}),Z6=Le({"node_modules/type/lib/safe-to-string.js"(Z,H){"use strict";H.exports=function(g){try{return g.toString()}catch{try{return String(g)}catch{return null}}}}}),Y6=Le({"node_modules/type/lib/to-short-string.js"(Z,H){"use strict";var g=Z6(),x=/[\n\r\u2028\u2029]/g;H.exports=function(A){var S=g(A);return S===null?"":(S.length>100&&(S=S.slice(0,99)+"\u2026"),S=S.replace(x,function(e){switch(e){case` +`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),S)}}}),CA=Le({"node_modules/type/lib/resolve-exception.js"(Z,H){"use strict";var g=ug(),x=_b(),A=X6(),S=Y6(),e=function(t,r){return t.replace("%v",S(r))};H.exports=function(t,r,o){if(!x(o))throw new TypeError(e(r,t));if(!g(t)){if("default"in o)return o.default;if(o.isOptional)return null}var i=A(o.errorMessage);throw g(i)||(i=r),new TypeError(e(i,t))}}}),K6=Le({"node_modules/type/value/ensure.js"(Z,H){"use strict";var g=CA(),x=ug();H.exports=function(A){return x(A)?A:g(A,"Cannot use %v",arguments[1])}}}),$6=Le({"node_modules/type/plain-function/ensure.js"(Z,H){"use strict";var g=CA(),x=MA();H.exports=function(A){return x(A)?A:g(A,"%v is not a plain function",arguments[1])}}}),J6=Le({"node_modules/es5-ext/array/from/is-implemented.js"(Z,H){"use strict";H.exports=function(){var g=Array.from,x,A;return typeof g!="function"?!1:(x=["raz","dwa"],A=g(x),!!(A&&A!==x&&A[1]==="dwa"))}}}),Q6=Le({"node_modules/es5-ext/function/is-function.js"(Z,H){"use strict";var g=Object.prototype.toString,x=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);H.exports=function(A){return typeof A=="function"&&x(g.call(A))}}}),eR=Le({"node_modules/es5-ext/math/sign/is-implemented.js"(Z,H){"use strict";H.exports=function(){var g=Math.sign;return typeof g!="function"?!1:g(10)===1&&g(-20)===-1}}}),tR=Le({"node_modules/es5-ext/math/sign/shim.js"(Z,H){"use strict";H.exports=function(g){return g=Number(g),isNaN(g)||g===0?g:g>0?1:-1}}}),rR=Le({"node_modules/es5-ext/math/sign/index.js"(Z,H){"use strict";H.exports=eR()()?Math.sign:tR()}}),iR=Le({"node_modules/es5-ext/number/to-integer.js"(Z,H){"use strict";var g=rR(),x=Math.abs,A=Math.floor;H.exports=function(S){return isNaN(S)?0:(S=Number(S),S===0||!isFinite(S)?S:g(S)*A(x(S)))}}}),nR=Le({"node_modules/es5-ext/number/to-pos-integer.js"(Z,H){"use strict";var g=iR(),x=Math.max;H.exports=function(A){return x(0,g(A))}}}),aR=Le({"node_modules/es5-ext/array/from/shim.js"(Z,H){"use strict";var g=lm().iterator,x=t1(),A=Q6(),S=nR(),e=w0(),t=mp(),r=sm(),o=r1(),i=Array.isArray,n=Function.prototype.call,a={configurable:!0,enumerable:!0,writable:!0,value:null},s=Object.defineProperty;H.exports=function(c){var h=arguments[1],p=arguments[2],d,T,l,_,w,M,E,m,b,v;if(c=Object(t(c)),r(h)&&e(h),!this||this===Array||!A(this)){if(!h){if(x(c))return w=c.length,w!==1?Array.apply(null,c):(_=new Array(1),_[0]=c[0],_);if(i(c)){for(_=new Array(w=c.length),T=0;T=55296&&M<=56319&&(v+=c[++T])),v=h?n.call(h,p,v,l):v,d?(a.value=v,s(_,l,a)):_[l]=v,++l;w=l}}if(w===void 0)for(w=S(c.length),d&&(_=new d(w)),T=0;T=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){o(this,"__redo__",e("c",[a]));return}this.__redo__.forEach(function(s,c){s>=a&&(this.__redo__[c]=++s)},this),this.__redo__.push(a)}}),_onDelete:e(function(a){var s;a>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(s=this.__redo__.indexOf(a),s!==-1&&this.__redo__.splice(s,1),this.__redo__.forEach(function(c,h){c>a&&(this.__redo__[h]=--c)},this)))}),_onClear:e(function(){this.__redo__&&g.call(this.__redo__),this.__nextIndex__=0})}))),o(n.prototype,r.iterator,e(function(){return this}))}}),hR=Le({"node_modules/es6-iterator/array.js"(Z,H){"use strict";var g=yb(),x=EA(),A=gp(),S=lm(),e=LA(),t=Object.defineProperty,r;r=H.exports=function(o,i){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");e.call(this,o),i?x.call(i,"key+value")?i="key+value":x.call(i,"key")?i="key":i="value":i="value",t(this,"__kind__",A("",i))},g&&g(r,e),delete r.prototype.constructor,r.prototype=Object.create(e.prototype,{_resolve:A(function(o){return this.__kind__==="value"?this.__list__[o]:this.__kind__==="key+value"?[o,this.__list__[o]]:o})}),t(r.prototype,S.toStringTag,A("c","Array Iterator"))}}),dR=Le({"node_modules/es6-iterator/string.js"(Z,H){"use strict";var g=yb(),x=gp(),A=lm(),S=LA(),e=Object.defineProperty,t;t=H.exports=function(r){if(!(this instanceof t))throw new TypeError("Constructor requires 'new'");r=String(r),S.call(this,r),e(this,"__length__",x("",r.length))},g&&g(t,S),delete t.prototype.constructor,t.prototype=Object.create(S.prototype,{_next:x(function(){if(this.__list__){if(this.__nextIndex__=55296&&i<=56319?o+this.__list__[this.__nextIndex__++]:o)})}),e(t.prototype,A.toStringTag,x("c","String Iterator"))}}),vR=Le({"node_modules/es6-iterator/is-iterable.js"(Z,H){"use strict";var g=t1(),x=sm(),A=r1(),S=lm().iterator,e=Array.isArray;H.exports=function(t){return x(t)?e(t)||A(t)||g(t)?!0:typeof t[S]=="function":!1}}}),pR=Le({"node_modules/es6-iterator/valid-iterable.js"(Z,H){"use strict";var g=vR();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not iterable");return x}}}),PA=Le({"node_modules/es6-iterator/get.js"(Z,H){"use strict";var g=t1(),x=r1(),A=hR(),S=dR(),e=pR(),t=lm().iterator;H.exports=function(r){return typeof e(r)[t]=="function"?r[t]():g(r)?new A(r):x(r)?new S(r):new A(r)}}}),mR=Le({"node_modules/es6-iterator/for-of.js"(Z,H){"use strict";var g=t1(),x=w0(),A=r1(),S=PA(),e=Array.isArray,t=Function.prototype.call,r=Array.prototype.some;H.exports=function(o,i){var n,a=arguments[2],s,c,h,p,d,T,l;if(e(o)||g(o)?n="array":A(o)?n="string":o=S(o),x(i),c=function(){h=!0},n==="array"){r.call(o,function(_){return t.call(i,a,_,c),h});return}if(n==="string"){for(d=o.length,p=0;p=55296&&l<=56319&&(T+=o[++p])),t.call(i,a,T,c),!h);++p);return}for(s=o.next();!s.done;){if(t.call(i,a,s.value,c),h)return;s=o.next()}}}}),gR=Le({"node_modules/es6-weak-map/is-native-implemented.js"(Z,H){"use strict";H.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()}}),yR=Le({"node_modules/es6-weak-map/polyfill.js"(Z,H){"use strict";var g=sm(),x=yb(),A=E6(),S=mp(),e=k6(),t=gp(),r=PA(),o=mR(),i=lm().toStringTag,n=gR(),a=Array.isArray,s=Object.defineProperty,c=Object.prototype.hasOwnProperty,h=Object.getPrototypeOf,p;H.exports=p=function(){var d=arguments[0],T;if(!(this instanceof p))throw new TypeError("Constructor requires 'new'");return T=n&&x&&WeakMap!==p?x(new WeakMap,h(this)):this,g(d)&&(a(d)||(d=r(d))),s(T,"__weakMapData__",t("c","$weakMap$"+e())),d&&o(d,function(l){S(l),T.set(l[0],l[1])}),T},n&&(x&&x(p,WeakMap),p.prototype=Object.create(WeakMap.prototype,{constructor:t(p)})),Object.defineProperties(p.prototype,{delete:t(function(d){return c.call(A(d),this.__weakMapData__)?(delete d[this.__weakMapData__],!0):!1}),get:t(function(d){if(c.call(A(d),this.__weakMapData__))return d[this.__weakMapData__]}),has:t(function(d){return c.call(A(d),this.__weakMapData__)}),set:t(function(d,T){return s(A(d),this.__weakMapData__,t("c",T)),this}),toString:t(function(){return"[object WeakMap]"})}),s(p.prototype,i,t("c","WeakMap"))}}),IA=Le({"node_modules/es6-weak-map/index.js"(Z,H){"use strict";H.exports=A6()()?WeakMap:yR()}}),_R=Le({"node_modules/array-find-index/index.js"(Z,H){"use strict";H.exports=function(g,x,A){if(typeof Array.prototype.findIndex=="function")return g.findIndex(x,A);if(typeof x!="function")throw new TypeError("predicate must be a function");var S=Object(g),e=S.length;if(e===0)return-1;for(var t=0;t 0. && baClipping < length(normalWidth * endBotJoin)) { + //handle miter clipping + bTopCoord -= normalWidth * endTopJoin; + bTopCoord += normalize(endTopJoin * normalWidth) * baClipping; + } + + if (nextReverse) { + //make join rectangular + vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5; + float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.); + bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5; + bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5; + } + else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) { + //handle miter clipping + aBotCoord -= normalWidth * startBotJoin; + aBotCoord += normalize(startBotJoin * normalWidth) * abClipping; + } + + vec2 aTopPosition = (aTopCoord) * adjustedScale + translate; + vec2 aBotPosition = (aBotCoord) * adjustedScale + translate; + + vec2 bTopPosition = (bTopCoord) * adjustedScale + translate; + vec2 bBotPosition = (bBotCoord) * adjustedScale + translate; + + //position is normalized 0..1 coord on the screen + vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd; + + startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy; + endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy; + + gl_Position = vec4(position * 2.0 - 1.0, depth, 1); + + enableStartMiter = step(dot(currTangent, prevTangent), .5); + enableEndMiter = step(dot(currTangent, nextTangent), .5); + + //bevel miter cutoffs + if (miterMode == 1.) { + if (enableStartMiter == 1.) { + vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5; + startCutoff = vec4(aCoord, aCoord); + startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio; + startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + startCutoff += viewport.xyxy; + startCutoff += startMiterWidth.xyxy; + } + + if (enableEndMiter == 1.) { + vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5; + endCutoff = vec4(bCoord, bCoord); + endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio; + endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + endCutoff += viewport.xyxy; + endCutoff += endMiterWidth.xyxy; + } + } + + //round miter cutoffs + else if (miterMode == 2.) { + if (enableStartMiter == 1.) { + vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5; + startCutoff = vec4(aCoord, aCoord); + startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio; + startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + startCutoff += viewport.xyxy; + startCutoff += startMiterWidth.xyxy; + } + + if (enableEndMiter == 1.) { + vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5; + endCutoff = vec4(bCoord, bCoord); + endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio; + endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + endCutoff += viewport.xyxy; + endCutoff += endMiterWidth.xyxy; + } + } +} +`,l=` +precision highp float; + +uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode; +uniform sampler2D dashTexture; + +varying vec4 fragColor; +varying vec2 tangent; +varying vec4 startCutoff, endCutoff; +varying vec2 startCoord, endCoord; +varying float enableStartMiter, enableEndMiter; + +float distToLine(vec2 p, vec2 a, vec2 b) { + vec2 diff = b - a; + vec2 perp = normalize(vec2(-diff.y, diff.x)); + return dot(p - a, perp); +} + +void main() { + float alpha = 1., distToStart, distToEnd; + float cutoff = thickness * .5; + + //bevel miter + if (miterMode == 1.) { + if (enableStartMiter == 1.) { + distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw); + if (distToStart < -1.) { + discard; + return; + } + alpha *= min(max(distToStart + 1., 0.), 1.); + } + + if (enableEndMiter == 1.) { + distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw); + if (distToEnd < -1.) { + discard; + return; + } + alpha *= min(max(distToEnd + 1., 0.), 1.); + } + } + + // round miter + else if (miterMode == 2.) { + if (enableStartMiter == 1.) { + distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw); + if (distToStart < 0.) { + float radius = length(gl_FragCoord.xy - startCoord); + + if(radius > cutoff + .5) { + discard; + return; + } + + alpha -= smoothstep(cutoff - .5, cutoff + .5, radius); + } + } + + if (enableEndMiter == 1.) { + distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw); + if (distToEnd < 0.) { + float radius = length(gl_FragCoord.xy - endCoord); + + if(radius > cutoff + .5) { + discard; + return; + } + + alpha -= smoothstep(cutoff - .5, cutoff + .5, radius); + } + } + } + + float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25; + float dash = texture2D(dashTexture, vec2(t, .5)).r; + + gl_FragColor = fragColor; + gl_FragColor.a *= alpha * opacity * dash; +} +`;H.exports=_;function _(w,M){if(!(this instanceof _))return new _(w,M);if(typeof w=="function"?(M||(M={}),M.regl=w):M=w,M.length&&(M.positions=M),w=M.regl,!w.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=w._gl,this.regl=w,this.passes=[],this.shaders=_.shaders.has(w)?_.shaders.get(w):_.shaders.set(w,_.createShaders(w)).get(w),this.update(M)}_.dashMult=2,_.maxPatternLength=256,_.precisionThreshold=3e6,_.maxPoints=1e4,_.maxLines=2048,_.shaders=new n,_.createShaders=function(w){let M=w.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),E={primitive:"triangle strip",instances:w.prop("count"),count:4,offset:0,uniforms:{miterMode:(u,y)=>y.join==="round"?2:1,miterLimit:w.prop("miterLimit"),scale:w.prop("scale"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),thickness:w.prop("thickness"),dashTexture:w.prop("dashTexture"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),dashLength:w.prop("dashLength"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight],depth:w.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(u,y)=>!y.overlay},stencil:{enable:!1},scissor:{enable:!0,box:w.prop("viewport")},viewport:w.prop("viewport")},m=w(A({vert:c,frag:h,attributes:{lineEnd:{buffer:M,divisor:0,stride:8,offset:0},lineTop:{buffer:M,divisor:0,stride:8,offset:4},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},E)),b;try{b=w(A({cull:{enable:!0,face:"back"},vert:T,frag:l,attributes:{lineEnd:{buffer:M,divisor:0,stride:8,offset:0},lineTop:{buffer:M,divisor:0,stride:8,offset:4},aColor:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:w.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},E))}catch{b=m}return{fill:w({primitive:"triangle",elements:(u,y)=>y.triangles,offset:0,vert:p,frag:d,uniforms:{scale:w.prop("scale"),color:w.prop("fill"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight]},attributes:{position:{buffer:w.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8}},blend:E.blend,depth:{enable:!1},scissor:E.scissor,stencil:E.stencil,viewport:E.viewport}),rect:m,miter:b}},_.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},_.prototype.render=function(...w){w.length&&this.update(...w),this.draw()},_.prototype.draw=function(...w){return(w.length?w:this.passes).forEach((M,E)=>{if(M&&Array.isArray(M))return this.draw(...M);typeof M=="number"&&(M=this.passes[M]),M&&M.count>1&&M.opacity&&(this.regl._refresh(),M.fill&&M.triangles&&M.triangles.length>2&&this.shaders.fill(M),M.thickness&&(M.scale[0]*M.viewport.width>_.precisionThreshold||M.scale[1]*M.viewport.height>_.precisionThreshold?this.shaders.rect(M):M.join==="rect"||!M.join&&(M.thickness<=2||M.count>=_.maxPoints)?this.shaders.rect(M):this.shaders.miter(M)))}),this},_.prototype.update=function(w){if(!w)return;w.length!=null?typeof w[0]=="number"&&(w=[{positions:w}]):Array.isArray(w)||(w=[w]);let{regl:M,gl:E}=this;if(w.forEach((b,v)=>{let u=this.passes[v];if(b!==void 0){if(b===null){this.passes[v]=null;return}if(typeof b[0]=="number"&&(b={positions:b}),b=S(b,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),u||(this.passes[v]=u={id:v,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:M.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:M.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:M.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:M.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},b=A({},_.defaults,b)),b.thickness!=null&&(u.thickness=parseFloat(b.thickness)),b.opacity!=null&&(u.opacity=parseFloat(b.opacity)),b.miterLimit!=null&&(u.miterLimit=parseFloat(b.miterLimit)),b.overlay!=null&&(u.overlay=!!b.overlay,v<_.maxLines&&(u.depth=2*(_.maxLines-1-v%_.maxLines)/_.maxLines-1)),b.join!=null&&(u.join=b.join),b.hole!=null&&(u.hole=b.hole),b.fill!=null&&(u.fill=b.fill?g(b.fill,"uint8"):null),b.viewport!=null&&(u.viewport=a(b.viewport)),u.viewport||(u.viewport=a([E.drawingBufferWidth,E.drawingBufferHeight])),b.close!=null&&(u.close=b.close),b.positions===null&&(b.positions=[]),b.positions){let P,L;if(b.positions.x&&b.positions.y){let B=b.positions.x,I=b.positions.y;L=u.count=Math.max(B.length,I.length),P=new Float64Array(L*2);for(let N=0;Nse-fe),W=[],Q=0,le=u.hole!=null?u.hole[0]:null;if(le!=null){let se=s(U,fe=>fe>=le);U=U.slice(0,se),U.push(le)}for(let se=0;se$-le+(U[se]-Q)),J=t(fe,G);J=J.map($=>$+Q+($+Q{w.colorBuffer.destroy(),w.positionBuffer.destroy(),w.dashTexture.destroy()}),this.passes.length=0,this}}}),xR=Le({"node_modules/regl-error2d/index.js"(Z,H){"use strict";var g=og(),x=rm(),A=xA(),S=Ov(),e=Nf(),t=sg(),{float32:r,fract32:o}=gb();H.exports=n;var i=[[1,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,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function n(a,s){if(typeof a=="function"?(s||(s={}),s.regl=a):s=a,s.length&&(s.positions=s),a=s.regl,!a.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let c=a._gl,h,p,d,T,l,_,w={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},M=[];return T=a.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),p=a.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),d=a.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=a.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),_=a.buffer({usage:"static",type:"float",data:i}),v(s),h=a({vert:` + precision highp float; + + attribute vec2 position, positionFract; + attribute vec4 error; + attribute vec4 color; + + attribute vec2 direction, lineOffset, capOffset; + + uniform vec4 viewport; + uniform float lineWidth, capSize; + uniform vec2 scale, scaleFract, translate, translateFract; + + varying vec4 fragColor; + + void main() { + fragColor = color / 255.; + + vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset; + + vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw; + + vec2 position = position + dxy; + + vec2 pos = (position + translate) * scale + + (positionFract + translateFract) * scale + + (position + translate) * scaleFract + + (positionFract + translateFract) * scaleFract; + + pos += pixelOffset / viewport.zw; + + gl_Position = vec4(pos * 2. - 1., 0, 1); + } + `,frag:` + precision highp float; + + varying vec4 fragColor; + + uniform float opacity; + + void main() { + gl_FragColor = fragColor; + gl_FragColor.a *= opacity; + } + `,uniforms:{range:a.prop("range"),lineWidth:a.prop("lineWidth"),capSize:a.prop("capSize"),opacity:a.prop("opacity"),scale:a.prop("scale"),translate:a.prop("translate"),scaleFract:a.prop("scaleFract"),translateFract:a.prop("translateFract"),viewport:(y,f)=>[f.viewport.x,f.viewport.y,y.viewportWidth,y.viewportHeight]},attributes:{color:{buffer:T,offset:(y,f)=>f.offset*4,divisor:1},position:{buffer:p,offset:(y,f)=>f.offset*8,divisor:1},positionFract:{buffer:d,offset:(y,f)=>f.offset*8,divisor:1},error:{buffer:l,offset:(y,f)=>f.offset*16,divisor:1},direction:{buffer:_,stride:24,offset:0},lineOffset:{buffer:_,stride:24,offset:8},capOffset:{buffer:_,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:a.prop("viewport")},viewport:a.prop("viewport"),stencil:!1,instances:a.prop("count"),count:i.length}),e(E,{update:v,draw:m,destroy:u,regl:a,gl:c,canvas:c.canvas,groups:M}),E;function E(y){y?v(y):y===null&&u(),m()}function m(y){if(typeof y=="number")return b(y);y&&!Array.isArray(y)&&(y=[y]),a._refresh(),M.forEach((f,P)=>{if(f){if(y&&(y[P]?f.draw=!0:f.draw=!1),!f.draw){f.draw=!0;return}b(P)}})}function b(y){typeof y=="number"&&(y=M[y]),y!=null&&y&&y.count&&y.color&&y.opacity&&y.positions&&y.positions.length>1&&(y.scaleRatio=[y.scale[0]*y.viewport.width,y.scale[1]*y.viewport.height],h(y),y.after&&y.after(y))}function v(y){if(!y)return;y.length!=null?typeof y[0]=="number"&&(y=[{positions:y}]):Array.isArray(y)||(y=[y]);let f=0,P=0;if(E.groups=M=y.map((F,O)=>{let B=M[O];if(F)typeof F=="function"?F={after:F}:typeof F[0]=="number"&&(F={positions:F});else return B;return F=S(F,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),B||(M[O]=B={id:O,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},F=e({},w,F)),A(B,F,[{lineWidth:I=>+I*.5,capSize:I=>+I*.5,opacity:parseFloat,errors:I=>(I=t(I),P+=I.length,I),positions:(I,N)=>(I=t(I,"float64"),N.count=Math.floor(I.length/2),N.bounds=g(I,2),N.offset=f,f+=N.count,I)},{color:(I,N)=>{let U=N.count;if(I||(I="transparent"),!Array.isArray(I)||typeof I[0]=="number"){let Q=I;I=Array(U);for(let le=0;le{let W=N.bounds;return I||(I=W),N.scale=[1/(I[2]-I[0]),1/(I[3]-I[1])],N.translate=[-I[0],-I[1]],N.scaleFract=o(N.scale),N.translateFract=o(N.translate),I},viewport:I=>{let N;return Array.isArray(I)?N={x:I[0],y:I[1],width:I[2]-I[0],height:I[3]-I[1]}:I?(N={x:I.x||I.left||0,y:I.y||I.top||0},I.right?N.width=I.right-N.x:N.width=I.w||I.width||0,I.bottom?N.height=I.bottom-N.y:N.height=I.h||I.height||0):N={x:0,y:0,width:c.drawingBufferWidth,height:c.drawingBufferHeight},N}}]),B}),f||P){let F=M.reduce((N,U,W)=>N+(U?U.count:0),0),O=new Float64Array(F*2),B=new Uint8Array(F*4),I=new Float32Array(F*4);M.forEach((N,U)=>{if(!N)return;let{positions:W,count:Q,offset:le,color:se,errors:fe}=N;Q&&(B.set(se,le*4),I.set(fe,le*4),O.set(W,le*2))});var L=r(O);p(L);var z=o(O,L);d(z),T(B),l(I)}}function u(){p.destroy(),d.destroy(),T.destroy(),l.destroy(),_.destroy()}}}}),bR=Le({"node_modules/unquote/index.js"(Z,H){var g=/[\'\"]/;H.exports=function(A){return A?(g.test(A.charAt(0))&&(A=A.substr(1)),g.test(A.charAt(A.length-1))&&(A=A.substr(0,A.length-1)),A):""}}}),DA=Le({"node_modules/css-global-keywords/index.json"(){}}),zA=Le({"node_modules/css-system-font-keywords/index.json"(){}}),FA=Le({"node_modules/css-font-weight-keywords/index.json"(){}}),BA=Le({"node_modules/css-font-style-keywords/index.json"(){}}),OA=Le({"node_modules/css-font-stretch-keywords/index.json"(){}}),wR=Le({"node_modules/parenthesis/index.js"(Z,H){"use strict";function g(S,e){if(typeof S!="string")return[S];var t=[S];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],o=e.escape||"___",i=!!e.flat;r.forEach(function(s){var c=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),h=[];function p(d,T,l){var _=t.push(d.slice(s[0].length,-s[1].length))-1;return h.push(_),o+_+o}t.forEach(function(d,T){for(var l,_=0;d!=l;)if(l=d,d=d.replace(c,p),_++>1e4)throw Error("References have circular dependency. Please, check them.");t[T]=d}),h=h.reverse(),t=t.map(function(d){return h.forEach(function(T){d=d.replace(new RegExp("(\\"+o+T+"\\"+o+")","g"),s[0]+"$1"+s[1])}),d})});var n=new RegExp("\\"+o+"([0-9]+)\\"+o);function a(s,c,h){for(var p=[],d,T=0;d=n.exec(s);){if(T++>1e4)throw Error("Circular references in parenthesis");p.push(s.slice(0,d.index)),p.push(a(c[d[1]],c)),s=s.slice(d.index+d[0].length)}return p.push(s),p}return i?t:a(t[0],t)}function x(S,e){if(e&&e.flat){var t=e&&e.escape||"___",r=S[0],o;if(!r)return"";for(var i=new RegExp("\\"+t+"([0-9]+)\\"+t),n=0;r!=o;){if(n++>1e4)throw Error("Circular references in "+S);o=r,r=r.replace(i,a)}return r}return S.reduce(function s(c,h){return Array.isArray(h)&&(h=h.reduce(s,"")),c+h},"");function a(s,c){if(S[c]==null)throw Error("Reference "+c+"is undefined");return S[c]}}function A(S,e){return Array.isArray(S)?x(S,e):g(S,e)}A.parse=g,A.stringify=x,H.exports=A}}),TR=Le({"node_modules/string-split-by/index.js"(Z,H){"use strict";var g=wR();H.exports=function(A,S,e){if(A==null)throw Error("First argument should be a string");if(S==null)throw Error("Separator should be a string or a RegExp");e?(typeof e=="string"||Array.isArray(e))&&(e={ignore:e}):e={},e.escape==null&&(e.escape=!0),e.ignore==null?e.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof e.ignore=="string"&&(e.ignore=[e.ignore]),e.ignore=e.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var t=g.parse(A,{flat:!0,brackets:e.ignore}),r=t[0],o=r.split(S);if(e.escape){for(var i=[],n=0;n1&&oi===Li&&(oi==='"'||oi==="'"))return['"'+r(er.substr(1,er.length-2))+'"'];var mn=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(er);if(mn)return o(er.substr(0,mn.index)).concat(o(mn[1])).concat(o(er.substr(mn.index+mn[0].length)));var Fn=er.split(".");if(Fn.length===1)return['"'+r(er)+'"'];for(var Rn=[],Dn=0;Dn"u"?1:window.devicePixelRatio,ca=!1,$o={},wa=function(_n){},Ta=function(){};if(typeof oi=="string"?Li=document.querySelector(oi):typeof oi=="object"&&(_(oi)?Li=oi:w(oi)?(Rn=oi,Fn=Rn.canvas):("gl"in oi?Rn=oi.gl:"canvas"in oi?Fn=E(oi.canvas):"container"in oi&&(mn=E(oi.container)),"attributes"in oi&&(Dn=oi.attributes),"extensions"in oi&&(Jn=M(oi.extensions)),"optionalExtensions"in oi&&(Sa=M(oi.optionalExtensions)),"onDone"in oi&&(wa=oi.onDone),"profile"in oi&&(ca=!!oi.profile),"pixelRatio"in oi&&(Ea=+oi.pixelRatio),"cachedCode"in oi&&($o=oi.cachedCode))),Li&&(Li.nodeName.toLowerCase()==="canvas"?Fn=Li:mn=Li),!Rn){if(!Fn){var ea=T(mn||document.body,wa,Ea);if(!ea)return null;Fn=ea.canvas,Ta=ea.onDestroy}Dn.premultipliedAlpha===void 0&&(Dn.premultipliedAlpha=!0),Rn=l(Fn,Dn)}return Rn?{gl:Rn,canvas:Fn,container:mn,extensions:Jn,optionalExtensions:Sa,pixelRatio:Ea,profile:ca,cachedCode:$o,onDone:wa,onDestroy:Ta}:(Ta(),wa("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function b(er,oi){var Li={};function mn(Dn){var Jn=Dn.toLowerCase(),Sa;try{Sa=Li[Jn]=er.getExtension(Jn)}catch{}return!!Sa}for(var Fn=0;Fn65535)<<4,er>>>=oi,Li=(er>255)<<3,er>>>=Li,oi|=Li,Li=(er>15)<<2,er>>>=Li,oi|=Li,Li=(er>3)<<1,er>>>=Li,oi|=Li,oi|er>>1}function I(){var er=v(8,function(){return[]});function oi(Rn){var Dn=O(Rn),Jn=er[B(Dn)>>2];return Jn.length>0?Jn.pop():new ArrayBuffer(Dn)}function Li(Rn){er[B(Rn.byteLength)>>2].push(Rn)}function mn(Rn,Dn){var Jn=null;switch(Rn){case u:Jn=new Int8Array(oi(Dn),0,Dn);break;case y:Jn=new Uint8Array(oi(Dn),0,Dn);break;case f:Jn=new Int16Array(oi(2*Dn),0,Dn);break;case P:Jn=new Uint16Array(oi(2*Dn),0,Dn);break;case L:Jn=new Int32Array(oi(4*Dn),0,Dn);break;case z:Jn=new Uint32Array(oi(4*Dn),0,Dn);break;case F:Jn=new Float32Array(oi(4*Dn),0,Dn);break;default:return null}return Jn.length!==Dn?Jn.subarray(0,Dn):Jn}function Fn(Rn){Li(Rn.buffer)}return{alloc:oi,free:Li,allocType:mn,freeType:Fn}}var N=I();N.zero=I();var U=3408,W=3410,Q=3411,le=3412,se=3413,fe=3414,G=3415,J=33901,$=33902,X=3379,re=3386,ae=34921,j=36347,ee=36348,ne=35661,ce=35660,_e=34930,we=36349,Oe=34076,Ie=34024,Xe=7936,tt=7937,rt=7938,Je=35724,ot=34047,Me=36063,pe=34852,ue=3553,ze=34067,Qe=34069,it=33984,$e=6408,kt=5126,Mt=5121,Bt=36160,jt=36053,cr=36064,nr=16384,Lr=function(er,oi){var Li=1;oi.ext_texture_filter_anisotropic&&(Li=er.getParameter(ot));var mn=1,Fn=1;oi.webgl_draw_buffers&&(mn=er.getParameter(pe),Fn=er.getParameter(Me));var Rn=!!oi.oes_texture_float;if(Rn){var Dn=er.createTexture();er.bindTexture(ue,Dn),er.texImage2D(ue,0,$e,1,1,0,$e,kt,null);var Jn=er.createFramebuffer();if(er.bindFramebuffer(Bt,Jn),er.framebufferTexture2D(Bt,cr,ue,Dn,0),er.bindTexture(ue,null),er.checkFramebufferStatus(Bt)!==jt)Rn=!1;else{er.viewport(0,0,1,1),er.clearColor(1,0,0,1),er.clear(nr);var Sa=N.allocType(kt,4);er.readPixels(0,0,1,1,$e,kt,Sa),er.getError()?Rn=!1:(er.deleteFramebuffer(Jn),er.deleteTexture(Dn),Rn=Sa[0]===1),N.freeType(Sa)}}var Ea=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),ca=!0;if(!Ea){var $o=er.createTexture(),wa=N.allocType(Mt,36);er.activeTexture(it),er.bindTexture(ze,$o),er.texImage2D(Qe,0,$e,3,3,0,$e,Mt,wa),N.freeType(wa),er.bindTexture(ze,null),er.deleteTexture($o),ca=!er.getError()}return{colorBits:[er.getParameter(W),er.getParameter(Q),er.getParameter(le),er.getParameter(se)],depthBits:er.getParameter(fe),stencilBits:er.getParameter(G),subpixelBits:er.getParameter(U),extensions:Object.keys(oi).filter(function(Ta){return!!oi[Ta]}),maxAnisotropic:Li,maxDrawbuffers:mn,maxColorAttachments:Fn,pointSizeDims:er.getParameter(J),lineWidthDims:er.getParameter($),maxViewportDims:er.getParameter(re),maxCombinedTextureUnits:er.getParameter(ne),maxCubeMapSize:er.getParameter(Oe),maxRenderbufferSize:er.getParameter(Ie),maxTextureUnits:er.getParameter(_e),maxTextureSize:er.getParameter(X),maxAttributes:er.getParameter(ae),maxVertexUniforms:er.getParameter(j),maxVertexTextureUnits:er.getParameter(ce),maxVaryingVectors:er.getParameter(ee),maxFragmentUniforms:er.getParameter(we),glsl:er.getParameter(Je),renderer:er.getParameter(tt),vendor:er.getParameter(Xe),version:er.getParameter(rt),readFloat:Rn,npotTextureCube:ca}},mr=function(er){return er instanceof Uint8Array||er instanceof Uint16Array||er instanceof Uint32Array||er instanceof Int8Array||er instanceof Int16Array||er instanceof Int32Array||er instanceof Float32Array||er instanceof Float64Array||er instanceof Uint8ClampedArray};function xr(er){return!!er&&typeof er=="object"&&Array.isArray(er.shape)&&Array.isArray(er.stride)&&typeof er.offset=="number"&&er.shape.length===er.stride.length&&(Array.isArray(er.data)||mr(er.data))}var mt=function(er){return Object.keys(er).map(function(oi){return er[oi]})},Fe={shape:be,flatten:Ee};function Ze(er,oi,Li){for(var mn=0;mn0){var No;if(Array.isArray(Un[0])){Ba=Ri(Un);for(var ha=1,na=1;na0){if(typeof ha[0]=="number"){var Fa=N.allocType(sa.dtype,ha.length);br(Fa,ha),Ba(Fa,co),N.freeType(Fa)}else if(Array.isArray(ha[0])||mr(ha[0])){Ya=Ri(ha);var La=en(ha,Ya,sa.dtype);Ba(La,co),N.freeType(La)}}}else if(xr(ha)){Ya=ha.shape;var io=ha.stride,Jo=0,xs=0,Oa=0,So=0;Ya.length===1?(Jo=Ya[0],xs=1,Oa=io[0],So=0):Ya.length===2&&(Jo=Ya[0],xs=Ya[1],Oa=io[0],So=io[1]);var fs=Array.isArray(ha.data)?sa.dtype:Ut(ha.data),Ts=N.allocType(fs,Jo*xs);Zr(Ts,ha.data,Jo,xs,Oa,So,ha.offset),Ba(Ts,co),N.freeType(Ts)}return Ka}return _a||Ka(_n),Ka._reglType="buffer",Ka._buffer=sa,Ka.subdata=No,Li.profile&&(Ka.stats=sa.stats),Ka.destroy=function(){wa(sa)},Ka}function ea(){mt(Rn).forEach(function(_n){_n.buffer=er.createBuffer(),er.bindBuffer(_n.type,_n.buffer),er.bufferData(_n.type,_n.persistentData||_n.byteLength,_n.usage)})}return Li.profile&&(oi.getTotalBufferSize=function(){var _n=0;return Object.keys(Rn).forEach(function(Un){_n+=Rn[Un].stats.size}),_n}),{create:Ta,createStream:Sa,destroyStream:Ea,clear:function(){mt(Rn).forEach(wa),Jn.forEach(wa)},getBuffer:function(_n){return _n&&_n._buffer instanceof Dn?_n._buffer:null},restore:ea,_initBuffer:$o}}var Yr=0,Di=0,qi=1,$i=1,Mi=4,sn=4,vt={points:Yr,point:Di,lines:qi,line:$i,triangles:Mi,triangle:sn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},pt=0,kr=1,Cr=4,wr=5120,Ar=5121,Er=5122,Br=5123,Pr=5124,Qr=5125,ci=34963,mi=35040,Et=35044;function ar(er,oi,Li,mn){var Fn={},Rn=0,Dn={uint8:Ar,uint16:Br};oi.oes_element_index_uint&&(Dn.uint32=Qr);function Jn(ea){this.id=Rn++,Fn[this.id]=this,this.buffer=ea,this.primType=Cr,this.vertCount=0,this.type=0}Jn.prototype.bind=function(){this.buffer.bind()};var Sa=[];function Ea(ea){var _n=Sa.pop();return _n||(_n=new Jn(Li.create(null,ci,!0,!1)._buffer)),$o(_n,ea,mi,-1,-1,0,0),_n}function ca(ea){Sa.push(ea)}function $o(ea,_n,Un,_a,Ca,sa,Ka){ea.buffer.bind();var Ba;if(_n){var No=Ka;!Ka&&(!mr(_n)||xr(_n)&&!mr(_n.data))&&(No=oi.oes_element_index_uint?Qr:Br),Li._initBuffer(ea.buffer,_n,Un,No,3)}else er.bufferData(ci,sa,Un),ea.buffer.dtype=Ba||Ar,ea.buffer.usage=Un,ea.buffer.dimension=3,ea.buffer.byteLength=sa;if(Ba=Ka,!Ka){switch(ea.buffer.dtype){case Ar:case wr:Ba=Ar;break;case Br:case Er:Ba=Br;break;case Qr:case Pr:Ba=Qr;break;default:}ea.buffer.dtype=Ba}ea.type=Ba;var ha=Ca;ha<0&&(ha=ea.buffer.byteLength,Ba===Br?ha>>=1:Ba===Qr&&(ha>>=2)),ea.vertCount=ha;var na=_a;if(_a<0){na=Cr;var co=ea.buffer.dimension;co===1&&(na=pt),co===2&&(na=kr),co===3&&(na=Cr)}ea.primType=na}function wa(ea){mn.elementsCount--,delete Fn[ea.id],ea.buffer.destroy(),ea.buffer=null}function Ta(ea,_n){var Un=Li.create(null,ci,!0),_a=new Jn(Un._buffer);mn.elementsCount++;function Ca(sa){if(!sa)Un(),_a.primType=Cr,_a.vertCount=0,_a.type=Ar;else if(typeof sa=="number")Un(sa),_a.primType=Cr,_a.vertCount=sa|0,_a.type=Ar;else{var Ka=null,Ba=Et,No=-1,ha=-1,na=0,co=0;Array.isArray(sa)||mr(sa)||xr(sa)?Ka=sa:("data"in sa&&(Ka=sa.data),"usage"in sa&&(Ba=zi[sa.usage]),"primitive"in sa&&(No=vt[sa.primitive]),"count"in sa&&(ha=sa.count|0),"type"in sa&&(co=Dn[sa.type]),"length"in sa?na=sa.length|0:(na=ha,co===Br||co===Er?na*=2:(co===Qr||co===Pr)&&(na*=4))),$o(_a,Ka,Ba,No,ha,na,co)}return Ca}return Ca(ea),Ca._reglType="elements",Ca._elements=_a,Ca.subdata=function(sa,Ka){return Un.subdata(sa,Ka),Ca},Ca.destroy=function(){wa(_a)},Ca}return{create:Ta,createStream:Ea,destroyStream:ca,getElements:function(ea){return typeof ea=="function"&&ea._elements instanceof Jn?ea._elements:null},clear:function(){mt(Fn).forEach(wa)}}}var gr=new Float32Array(1),ti=new Uint32Array(gr.buffer),wi=5123;function Gi(er){for(var oi=N.allocType(wi,er.length),Li=0;Li>>31<<15,Rn=(mn<<1>>>24)-127,Dn=mn>>13&1023;if(Rn<-24)oi[Li]=Fn;else if(Rn<-14){var Jn=-14-Rn;oi[Li]=Fn+(Dn+1024>>Jn)}else Rn>15?oi[Li]=Fn+31744:oi[Li]=Fn+(Rn+15<<10)+Dn}return oi}function Fi(er){return Array.isArray(er)||mr(er)}var xi=34467,Ii=3553,Bn=34067,hn=34069,ba=6408,Aa=6406,Va=6407,Qa=6409,yo=6410,Ga=32854,Yo=32855,da=36194,vs=32819,es=32820,bs=33635,Xa=34042,Bo=6402,Za=34041,Qo=35904,ss=35906,gs=36193,vo=33776,zo=33777,Ds=33778,Hs=33779,Zs=35986,ps=35987,bn=34798,Ra=35840,_l=35841,Ys=35842,ko=35843,Js=36196,ks=5121,ml=5123,El=5125,aa=5126,Ho=10242,po=10243,zs=10497,hs=33071,to=33648,tu=10240,Ju=10241,kl=9728,Hu=9729,Bl=9984,rl=9985,au=9986,Gu=9987,Fc=33170,Qu=4352,fh=4353,yf=4354,Gs=34046,$c=3317,kf=37440,ru=37441,Cl=37443,fc=37444,Ac=33984,ol=[Bl,au,rl,Gu],Ll=[0,Qa,yo,Va,ba],Ks={};Ks[Qa]=Ks[Aa]=Ks[Bo]=1,Ks[Za]=Ks[yo]=2,Ks[Va]=Ks[Qo]=3,Ks[ba]=Ks[ss]=4;function fl(er){return"[object "+er+"]"}var hc=fl("HTMLCanvasElement"),Wl=fl("OffscreenCanvas"),ec=fl("CanvasRenderingContext2D"),hl=fl("ImageBitmap"),jh=fl("HTMLImageElement"),ys=fl("HTMLVideoElement"),Lh=Object.keys(Ce).concat([hc,Wl,ec,hl,jh,ys]),Us=[];Us[ks]=1,Us[aa]=4,Us[gs]=2,Us[ml]=2,Us[El]=4;var Wo=[];Wo[Ga]=2,Wo[Yo]=2,Wo[da]=2,Wo[Za]=4,Wo[vo]=.5,Wo[zo]=.5,Wo[Ds]=1,Wo[Hs]=1,Wo[Zs]=.5,Wo[ps]=1,Wo[bn]=1,Wo[Ra]=.5,Wo[_l]=.25,Wo[Ys]=.5,Wo[ko]=.25,Wo[Js]=.5;function ff(er){return Array.isArray(er)&&(er.length===0||typeof er[0]=="number")}function tc(er){if(!Array.isArray(er))return!1;var oi=er.length;return!(oi===0||!Fi(er[0]))}function yu(er){return Object.prototype.toString.call(er)}function Uf(er){return yu(er)===hc}function Bc(er){return yu(er)===Wl}function hf(er){return yu(er)===ec}function Xl(er){return yu(er)===hl}function rh(er){return yu(er)===jh}function jf(er){return yu(er)===ys}function Cf(er){if(!er)return!1;var oi=yu(er);return Lh.indexOf(oi)>=0?!0:ff(er)||tc(er)||xr(er)}function Jc(er){return Ce[Object.prototype.toString.call(er)]|0}function Vf(er,oi){var Li=oi.length;switch(er.type){case ks:case ml:case El:case aa:var mn=N.allocType(er.type,Li);mn.set(oi),er.data=mn;break;case gs:er.data=Gi(oi);break;default:}}function ih(er,oi){return N.allocType(er.type===gs?aa:er.type,oi)}function rc(er,oi){er.type===gs?(er.data=Gi(oi),N.freeType(oi)):er.data=oi}function Lf(er,oi,Li,mn,Fn,Rn){for(var Dn=er.width,Jn=er.height,Sa=er.channels,Ea=Dn*Jn*Sa,ca=ih(er,Ea),$o=0,wa=0;wa=1;)Jn+=Dn*Sa*Sa,Sa/=2;return Jn}else return Dn*Li*mn}function Qc(er,oi,Li,mn,Fn,Rn,Dn){var Jn={"don't care":Qu,"dont care":Qu,nice:yf,fast:fh},Sa={repeat:zs,clamp:hs,mirror:to},Ea={nearest:kl,linear:Hu},ca=g({mipmap:Gu,"nearest mipmap nearest":Bl,"linear mipmap nearest":rl,"nearest mipmap linear":au,"linear mipmap linear":Gu},Ea),$o={none:0,browser:fc},wa={uint8:ks,rgba4:vs,rgb565:bs,"rgb5 a1":es},Ta={alpha:Aa,luminance:Qa,"luminance alpha":yo,rgb:Va,rgba:ba,rgba4:Ga,"rgb5 a1":Yo,rgb565:da},ea={};oi.ext_srgb&&(Ta.srgb=Qo,Ta.srgba=ss),oi.oes_texture_float&&(wa.float32=wa.float=aa),oi.oes_texture_half_float&&(wa.float16=wa["half float"]=gs),oi.webgl_depth_texture&&(g(Ta,{depth:Bo,"depth stencil":Za}),g(wa,{uint16:ml,uint32:El,"depth stencil":Xa})),oi.webgl_compressed_texture_s3tc&&g(ea,{"rgb s3tc dxt1":vo,"rgba s3tc dxt1":zo,"rgba s3tc dxt3":Ds,"rgba s3tc dxt5":Hs}),oi.webgl_compressed_texture_atc&&g(ea,{"rgb atc":Zs,"rgba atc explicit alpha":ps,"rgba atc interpolated alpha":bn}),oi.webgl_compressed_texture_pvrtc&&g(ea,{"rgb pvrtc 4bppv1":Ra,"rgb pvrtc 2bppv1":_l,"rgba pvrtc 4bppv1":Ys,"rgba pvrtc 2bppv1":ko}),oi.webgl_compressed_texture_etc1&&(ea["rgb etc1"]=Js);var _n=Array.prototype.slice.call(er.getParameter(xi));Object.keys(ea).forEach(function(He){var at=ea[He];_n.indexOf(at)>=0&&(Ta[He]=at)});var Un=Object.keys(Ta);Li.textureFormats=Un;var _a=[];Object.keys(Ta).forEach(function(He){var at=Ta[He];_a[at]=He});var Ca=[];Object.keys(wa).forEach(function(He){var at=wa[He];Ca[at]=He});var sa=[];Object.keys(Ea).forEach(function(He){var at=Ea[He];sa[at]=He});var Ka=[];Object.keys(ca).forEach(function(He){var at=ca[He];Ka[at]=He});var Ba=[];Object.keys(Sa).forEach(function(He){var at=Sa[He];Ba[at]=He});var No=Un.reduce(function(He,at){var St=Ta[at];return St===Qa||St===Aa||St===Qa||St===yo||St===Bo||St===Za||oi.ext_srgb&&(St===Qo||St===ss)?He[St]=St:St===Yo||at.indexOf("rgba")>=0?He[St]=ba:He[St]=Va,He},{});function ha(){this.internalformat=ba,this.format=ba,this.type=ks,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=fc,this.width=0,this.height=0,this.channels=0}function na(He,at){He.internalformat=at.internalformat,He.format=at.format,He.type=at.type,He.compressed=at.compressed,He.premultiplyAlpha=at.premultiplyAlpha,He.flipY=at.flipY,He.unpackAlignment=at.unpackAlignment,He.colorSpace=at.colorSpace,He.width=at.width,He.height=at.height,He.channels=at.channels}function co(He,at){if(!(typeof at!="object"||!at)){if("premultiplyAlpha"in at&&(He.premultiplyAlpha=at.premultiplyAlpha),"flipY"in at&&(He.flipY=at.flipY),"alignment"in at&&(He.unpackAlignment=at.alignment),"colorSpace"in at&&(He.colorSpace=$o[at.colorSpace]),"type"in at){var St=at.type;He.type=wa[St]}var Gt=He.width,_r=He.height,Rr=He.channels,Tr=!1;"shape"in at?(Gt=at.shape[0],_r=at.shape[1],at.shape.length===3&&(Rr=at.shape[2],Tr=!0)):("radius"in at&&(Gt=_r=at.radius),"width"in at&&(Gt=at.width),"height"in at&&(_r=at.height),"channels"in at&&(Rr=at.channels,Tr=!0)),He.width=Gt|0,He.height=_r|0,He.channels=Rr|0;var Ht=!1;if("format"in at){var ir=at.format,pr=He.internalformat=Ta[ir];He.format=No[pr],ir in wa&&("type"in at||(He.type=wa[ir])),ir in ea&&(He.compressed=!0),Ht=!0}!Tr&&Ht?He.channels=Ks[He.format]:Tr&&!Ht&&He.channels!==Ll[He.format]&&(He.format=He.internalformat=Ll[He.channels])}}function Ya(He){er.pixelStorei(kf,He.flipY),er.pixelStorei(ru,He.premultiplyAlpha),er.pixelStorei(Cl,He.colorSpace),er.pixelStorei($c,He.unpackAlignment)}function Fa(){ha.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function La(He,at){var St=null;if(Cf(at)?St=at:at&&(co(He,at),"x"in at&&(He.xOffset=at.x|0),"y"in at&&(He.yOffset=at.y|0),Cf(at.data)&&(St=at.data)),at.copy){var Gt=Fn.viewportWidth,_r=Fn.viewportHeight;He.width=He.width||Gt-He.xOffset,He.height=He.height||_r-He.yOffset,He.needsCopy=!0}else if(!St)He.width=He.width||1,He.height=He.height||1,He.channels=He.channels||4;else if(mr(St))He.channels=He.channels||4,He.data=St,!("type"in at)&&He.type===ks&&(He.type=Jc(St));else if(ff(St))He.channels=He.channels||4,Vf(He,St),He.alignment=1,He.needsFree=!0;else if(xr(St)){var Rr=St.data;!Array.isArray(Rr)&&He.type===ks&&(He.type=Jc(Rr));var Tr=St.shape,Ht=St.stride,ir,pr,Ir,Vr,Hr,si;Tr.length===3?(Ir=Tr[2],si=Ht[2]):(Ir=1,si=1),ir=Tr[0],pr=Tr[1],Vr=Ht[0],Hr=Ht[1],He.alignment=1,He.width=ir,He.height=pr,He.channels=Ir,He.format=He.internalformat=Ll[Ir],He.needsFree=!0,Lf(He,Rr,Vr,Hr,si,St.offset)}else if(Uf(St)||Bc(St)||hf(St))Uf(St)||Bc(St)?He.element=St:He.element=St.canvas,He.width=He.element.width,He.height=He.element.height,He.channels=4;else if(Xl(St))He.element=St,He.width=St.width,He.height=St.height,He.channels=4;else if(rh(St))He.element=St,He.width=St.naturalWidth,He.height=St.naturalHeight,He.channels=4;else if(jf(St))He.element=St,He.width=St.videoWidth,He.height=St.videoHeight,He.channels=4;else if(tc(St)){var ri=He.width||St[0].length,Gr=He.height||St.length,li=He.channels;Fi(St[0][0])?li=li||St[0][0].length:li=li||1;for(var Ur=Fe.shape(St),Ci=1,Hi=0;Hi>=_r,St.height>>=_r,La(St,Gt[_r]),He.mipmask|=1<<_r;else St=He.images[0]=Oa(),na(St,He),La(St,at),He.mipmask=1;na(He,He.images[0]),He.compressed&&(He.internalformat===vo||He.internalformat===zo||He.internalformat===Ds||He.internalformat)}function ou(He,at){for(var St=He.images,Gt=0;Gt=0&&!("faces"in at)&&(He.genMipmaps=!0)}if("mag"in at){var Gt=at.mag;He.magFilter=Ea[Gt]}var _r=He.wrapS,Rr=He.wrapT;if("wrap"in at){var Tr=at.wrap;typeof Tr=="string"?_r=Rr=Sa[Tr]:Array.isArray(Tr)&&(_r=Sa[Tr[0]],Rr=Sa[Tr[1]])}else{if("wrapS"in at){var Ht=at.wrapS;_r=Sa[Ht]}if("wrapT"in at){var ir=at.wrapT;Rr=Sa[ir]}}if(He.wrapS=_r,He.wrapT=Rr,"anisotropic"in at){var pr=at.anisotropic;He.anisotropic=at.anisotropic}if("mipmap"in at){var Ir=!1;switch(typeof at.mipmap){case"string":He.mipmapHint=Jn[at.mipmap],He.genMipmaps=!0,Ir=!0;break;case"boolean":Ir=He.genMipmaps=at.mipmap;break;case"object":He.genMipmaps=!1,Ir=!0;break;default:}Ir&&!("min"in at)&&(He.minFilter=Bl)}}function bc(He,at){er.texParameteri(at,Ju,He.minFilter),er.texParameteri(at,tu,He.magFilter),er.texParameteri(at,Ho,He.wrapS),er.texParameteri(at,po,He.wrapT),oi.ext_texture_filter_anisotropic&&er.texParameteri(at,Gs,He.anisotropic),He.genMipmaps&&(er.hint(Fc,He.mipmapHint),er.generateMipmap(at))}var af=0,nu={},Pc=Li.maxTextureUnits,Wc=Array(Pc).map(function(){return null});function Ws(He){ha.call(this),this.mipmask=0,this.internalformat=ba,this.id=af++,this.refCount=1,this.target=He,this.texture=er.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Zl,Dn.profile&&(this.stats={size:0})}function of(He){er.activeTexture(Ac),er.bindTexture(He.target,He.texture)}function Vs(){var He=Wc[0];He?er.bindTexture(He.target,He.texture):er.bindTexture(Ii,null)}function ve(He){var at=He.texture,St=He.unit,Gt=He.target;St>=0&&(er.activeTexture(Ac+St),er.bindTexture(Gt,null),Wc[St]=null),er.deleteTexture(at),He.texture=null,He.params=null,He.pixels=null,He.refCount=0,delete nu[He.id],Rn.textureCount--}g(Ws.prototype,{bind:function(){var He=this;He.bindCount+=1;var at=He.unit;if(at<0){for(var St=0;St0)continue;Gt.unit=-1}Wc[St]=He,at=St;break}at>=Pc,Dn.profile&&Rn.maxTextureUnits>Hr)-Ir,si.height=si.height||(St.height>>Hr)-Vr,of(St),Jo(si,Ii,Ir,Vr,Hr),Vs(),So(si),Gt}function Rr(Tr,Ht){var ir=Tr|0,pr=Ht|0||ir;if(ir===St.width&&pr===St.height)return Gt;Gt.width=St.width=ir,Gt.height=St.height=pr,of(St);for(var Ir=0;St.mipmask>>Ir;++Ir){var Vr=ir>>Ir,Hr=pr>>Ir;if(!Vr||!Hr)break;er.texImage2D(Ii,Ir,St.format,Vr,Hr,0,St.format,St.type,null)}return Vs(),Dn.profile&&(St.stats.size=Oc(St.internalformat,St.type,ir,pr,!1,!1)),Gt}return Gt(He,at),Gt.subimage=_r,Gt.resize=Rr,Gt._reglType="texture2d",Gt._texture=St,Dn.profile&&(Gt.stats=St.stats),Gt.destroy=function(){St.decRef()},Gt}function me(He,at,St,Gt,_r,Rr){var Tr=new Ws(Bn);nu[Tr.id]=Tr,Rn.cubeCount++;var Ht=new Array(6);function ir(Vr,Hr,si,ri,Gr,li){var Ur,Ci=Tr.texInfo;for(Zl.call(Ci),Ur=0;Ur<6;++Ur)Ht[Ur]=al();if(typeof Vr=="number"||!Vr){var Hi=Vr|0||1;for(Ur=0;Ur<6;++Ur)Ts(Ht[Ur],Hi,Hi)}else if(typeof Vr=="object")if(Hr)Ns(Ht[0],Vr),Ns(Ht[1],Hr),Ns(Ht[2],si),Ns(Ht[3],ri),Ns(Ht[4],Gr),Ns(Ht[5],li);else if(xc(Ci,Vr),co(Tr,Vr),"faces"in Vr){var fn=Vr.faces;for(Ur=0;Ur<6;++Ur)na(Ht[Ur],Tr),Ns(Ht[Ur],fn[Ur])}else for(Ur=0;Ur<6;++Ur)Ns(Ht[Ur],Vr);for(na(Tr,Ht[0]),Ci.genMipmaps?Tr.mipmask=(Ht[0].width<<1)-1:Tr.mipmask=Ht[0].mipmask,Tr.internalformat=Ht[0].internalformat,ir.width=Ht[0].width,ir.height=Ht[0].height,of(Tr),Ur=0;Ur<6;++Ur)ou(Ht[Ur],hn+Ur);for(bc(Ci,Bn),Vs(),Dn.profile&&(Tr.stats.size=Oc(Tr.internalformat,Tr.type,ir.width,ir.height,Ci.genMipmaps,!0)),ir.format=_a[Tr.internalformat],ir.type=Ca[Tr.type],ir.mag=sa[Ci.magFilter],ir.min=Ka[Ci.minFilter],ir.wrapS=Ba[Ci.wrapS],ir.wrapT=Ba[Ci.wrapT],Ur=0;Ur<6;++Ur)Gc(Ht[Ur]);return ir}function pr(Vr,Hr,si,ri,Gr){var li=si|0,Ur=ri|0,Ci=Gr|0,Hi=Oa();return na(Hi,Tr),Hi.width=0,Hi.height=0,La(Hi,Hr),Hi.width=Hi.width||(Tr.width>>Ci)-li,Hi.height=Hi.height||(Tr.height>>Ci)-Ur,of(Tr),Jo(Hi,hn+Vr,li,Ur,Ci),Vs(),So(Hi),ir}function Ir(Vr){var Hr=Vr|0;if(Hr!==Tr.width){ir.width=Tr.width=Hr,ir.height=Tr.height=Hr,of(Tr);for(var si=0;si<6;++si)for(var ri=0;Tr.mipmask>>ri;++ri)er.texImage2D(hn+si,ri,Tr.format,Hr>>ri,Hr>>ri,0,Tr.format,Tr.type,null);return Vs(),Dn.profile&&(Tr.stats.size=Oc(Tr.internalformat,Tr.type,ir.width,ir.height,!1,!0)),ir}}return ir(He,at,St,Gt,_r,Rr),ir.subimage=pr,ir.resize=Ir,ir._reglType="textureCube",ir._texture=Tr,Dn.profile&&(ir.stats=Tr.stats),ir.destroy=function(){Tr.decRef()},ir}function te(){for(var He=0;He>Gt,St.height>>Gt,0,St.internalformat,St.type,null);else for(var _r=0;_r<6;++_r)er.texImage2D(hn+_r,Gt,St.internalformat,St.width>>Gt,St.height>>Gt,0,St.internalformat,St.type,null);bc(St.texInfo,St.target)})}function We(){for(var He=0;He=0?Gc=!0:Sa.indexOf(Zl)>=0&&(Gc=!1))),("depthTexture"in Ws||"depthStencilTexture"in Ws)&&(Wc=!!(Ws.depthTexture||Ws.depthStencilTexture)),"depth"in Ws&&(typeof Ws.depth=="boolean"?ou=Ws.depth:(af=Ws.depth,Hc=!1)),"stencil"in Ws&&(typeof Ws.stencil=="boolean"?Hc=Ws.stencil:(nu=Ws.stencil,ou=!1)),"depthStencil"in Ws&&(typeof Ws.depthStencil=="boolean"?ou=Hc=Ws.depthStencil:(Pc=Ws.depthStencil,ou=!1,Hc=!1))}var Vs=null,ve=null,K=null,me=null;if(Array.isArray(al))Vs=al.map(ea);else if(al)Vs=[ea(al)];else for(Vs=new Array(bc),fs=0;fs0&&(So.depth=La[0].depth,So.stencil=La[0].stencil,So.depthStencil=La[0].depthStencil),La[Oa]?La[Oa](So):La[Oa]=na(So)}return g(io,{width:fs,height:fs,color:Zl})}function Jo(xs){var Oa,So=xs|0;if(So===io.width)return io;var fs=io.color;for(Oa=0;Oa=fs.byteLength?Ts.subdata(fs):(Ts.destroy(),na.buffers[xs]=null)),na.buffers[xs]||(Ts=na.buffers[xs]=Fn.create(Oa,If,!1,!0)),So.buffer=Fn.getBuffer(Ts),So.size=So.buffer.dimension|0,So.normalized=!1,So.type=So.buffer.dtype,So.offset=0,So.stride=0,So.divisor=0,So.state=1,io[xs]=1}else Fn.getBuffer(Oa)?(So.buffer=Fn.getBuffer(Oa),So.size=So.buffer.dimension|0,So.normalized=!1,So.type=So.buffer.dtype,So.offset=0,So.stride=0,So.divisor=0,So.state=1):Fn.getBuffer(Oa.buffer)?(So.buffer=Fn.getBuffer(Oa.buffer),So.size=(+Oa.size||So.buffer.dimension)|0,So.normalized=!!Oa.normalized||!1,"type"in Oa?So.type=fi[Oa.type]:So.type=So.buffer.dtype,So.offset=(Oa.offset||0)|0,So.stride=(Oa.stride||0)|0,So.divisor=(Oa.divisor||0)|0,So.state=1):"x"in Oa&&(So.x=+Oa.x||0,So.y=+Oa.y||0,So.z=+Oa.z||0,So.w=+Oa.w||0,So.state=2)}for(var Ns=0;Ns1)for(var Ya=0;Ya_n&&(_n=Un.stats.uniformsCount)}),_n},Li.getMaxAttributesCount=function(){var _n=0;return ca.forEach(function(Un){Un.stats.attributesCount>_n&&(_n=Un.stats.attributesCount)}),_n});function ea(){Fn={},Rn={};for(var _n=0;_n16&&(Li=yn(Li,er.length*8));for(var mn=Array(16),Fn=Array(16),Rn=0;Rn<16;Rn++)mn[Rn]=Li[Rn]^909522486,Fn[Rn]=Li[Rn]^1549556828;var Dn=yn(mn.concat(rf(oi)),512+oi.length*8);return Zt(yn(Fn.concat(Dn),768))}function hu(er){for(var oi=Wf?"0123456789ABCDEF":"0123456789abcdef",Li="",mn,Fn=0;Fn>>4&15)+oi.charAt(mn&15);return Li}function mc(er){for(var oi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Li="",mn=er.length,Fn=0;Fner.length*8?Li+=Zu:Li+=oi.charAt(Rn>>>6*(3-Dn)&63);return Li}function jc(er,oi){var Li=oi.length,mn=Array(),Fn,Rn,Dn,Jn,Sa=Array(Math.ceil(er.length/2));for(Fn=0;Fn0;){for(Jn=Array(),Dn=0,Fn=0;Fn0||Rn>0)&&(Jn[Jn.length]=Rn);mn[mn.length]=Dn,Sa=Jn}var Ea="";for(Fn=mn.length-1;Fn>=0;Fn--)Ea+=oi.charAt(mn[Fn]);var ca=Math.ceil(er.length*8/(Math.log(oi.length)/Math.log(2)));for(Fn=Ea.length;Fn>>6&31,128|mn&63):mn<=65535?oi+=String.fromCharCode(224|mn>>>12&15,128|mn>>>6&63,128|mn&63):mn<=2097151&&(oi+=String.fromCharCode(240|mn>>>18&7,128|mn>>>12&63,128|mn>>>6&63,128|mn&63));return oi}function rf(er){for(var oi=Array(er.length>>2),Li=0;Li>5]|=(er.charCodeAt(Li/8)&255)<<24-Li%32;return oi}function Zt(er){for(var oi="",Li=0;Li>5]>>>24-Li%32&255);return oi}function hr(er,oi){return er>>>oi|er<<32-oi}function Kr(er,oi){return er>>>oi}function qr(er,oi,Li){return er&oi^~er&Li}function ki(er,oi,Li){return er&oi^er&Li^oi&Li}function an(er){return hr(er,2)^hr(er,13)^hr(er,22)}function pn(er){return hr(er,6)^hr(er,11)^hr(er,25)}function Pn(er){return hr(er,7)^hr(er,18)^Kr(er,3)}function Vn(er){return hr(er,17)^hr(er,19)^Kr(er,10)}var ra=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function yn(er,oi){var Li=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),mn=new Array(64),Fn,Rn,Dn,Jn,Sa,Ea,ca,$o,wa,Ta,ea,_n;for(er[oi>>5]|=128<<24-oi%32,er[(oi+64>>9<<4)+15]=oi,wa=0;wa>16)+(oi>>16)+(Li>>16);return mn<<16|Li&65535}function kn(er){return Array.prototype.slice.call(er)}function cn(er){return kn(er).join("")}function xa(er){var oi=er&&er.cache,Li=0,mn=[],Fn=[],Rn=[];function Dn(ea,_n){var Un=_n&&_n.stable;if(!Un){for(var _a=0;_a0&&(ea.push(Ca,"="),ea.push.apply(ea,kn(arguments)),ea.push(";")),Ca}return g(_n,{def:_a,toString:function(){return cn([Un.length>0?"var "+Un.join(",")+";":"",cn(ea)])}})}function Sa(){var ea=Jn(),_n=Jn(),Un=ea.toString,_a=_n.toString;function Ca(sa,Ka){_n(sa,Ka,"=",ea.def(sa,Ka),";")}return g(function(){ea.apply(ea,kn(arguments))},{def:ea.def,entry:ea,exit:_n,save:Ca,set:function(sa,Ka,Ba){Ca(sa,Ka),ea(sa,Ka,"=",Ba,";")},toString:function(){return Un()+_a()}})}function Ea(){var ea=cn(arguments),_n=Sa(),Un=Sa(),_a=_n.toString,Ca=Un.toString;return g(_n,{then:function(){return _n.apply(_n,kn(arguments)),this},else:function(){return Un.apply(Un,kn(arguments)),this},toString:function(){var sa=Ca();return sa&&(sa="else{"+sa+"}"),cn(["if(",ea,"){",_a(),"}",sa])}})}var ca=Jn(),$o={};function wa(ea,_n){var Un=[];function _a(){var No="a"+Un.length;return Un.push(No),No}_n=_n||0;for(var Ca=0;Ca<_n;++Ca)_a();var sa=Sa(),Ka=sa.toString,Ba=$o[ea]=g(sa,{arg:_a,toString:function(){return cn(["function(",Un.join(),"){",Ka(),"}"])}});return Ba}function Ta(){var ea=['"use strict";',ca,"return {"];Object.keys($o).forEach(function(Ca){ea.push('"',Ca,'":',$o[Ca].toString(),",")}),ea.push("}");var _n=cn(ea).replace(/;/g,`; +`).replace(/}/g,`} +`).replace(/{/g,`{ +`),Un;if(oi&&(Un=kc(_n),oi[Un]))return oi[Un].apply(null,Fn);var _a=Function.apply(null,mn.concat(_n));return oi&&(oi[Un]=_a),_a.apply(null,Fn)}return{global:ca,link:Dn,block:Jn,proc:wa,scope:Sa,cond:Ea,compile:Ta}}var mo="xyzw".split(""),uo=5121,go=1,Mo=2,ya=0,Zn=1,Po=2,us=3,Bs=4,sl=5,js=6,il="dither",Ps="blend.enable",ql="blend.color",Tl="blend.equation",vl="blend.func",Wa="depth.enable",Go="depth.func",el="depth.range",Os="depth.mask",du="colorMask",zu="cull.enable",ac="cull.face",nf="frontFace",Mu="lineWidth",Vc="polygonOffset.enable",Fu="polygonOffset.offset",Cc="sample.alpha",bo="sample.enable",Ko="sample.coverage",qc="stencil.enable",gc="stencil.mask",yc="stencil.func",Be="stencil.opFront",R="stencil.opBack",ie="scissor.enable",xe="scissor.box",Te="viewport",De="profile",ut="framebuffer",_t="vert",Rt="frag",Kt="elements",fr="primitive",dr="count",jr="offset",ii="instances",qe="vao",Ye="Width",nt="Height",ct=ut+Ye,Tt=ut+nt,gt=Te+Ye,Lt=Te+nt,tr="drawingBuffer",or=tr+Ye,vr=tr+nt,Sr=[vl,Tl,yc,Be,R,Ko,Te,xe,Fu],Wr=34962,yi=34963,Ai=2884,Oi=3042,on=3024,Mn=2960,An=2929,qn=3089,ma=32823,eo=32926,ja=32928,Do=5126,_s=35664,Oo=35665,as=35666,Ms=5124,pl=35667,ll=35668,cs=35669,ls=35670,Hl=35671,iu=35672,Yu=35673,_u=35674,Il=35675,vu=35676,Lc=35678,Ql=35680,eu=4,de=1028,Re=1029,Ke=2304,ft=2305,dt=32775,xt=32776,Jt=519,It=7680,sr=0,zr=1,Or=32774,bi=513,gi=36160,Ki=36064,rn={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Si={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ui={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Xi={cw:Ke,ccw:ft};function ln(er){return Array.isArray(er)||mr(er)||xr(er)}function nn(er){return er.sort(function(oi,Li){return oi===Te?-1:Li===Te?1:oi=1,mn>=2,oi)}else if(Li===Bs){var Fn=er.data;return new ji(Fn.thisDep,Fn.contextDep,Fn.propDep,oi)}else{if(Li===sl)return new ji(!1,!1,!1,oi);if(Li===js){for(var Rn=!1,Dn=!1,Jn=!1,Sa=0;Sa=1&&(Dn=!0),ca>=2&&(Jn=!0)}else Ea.type===Bs&&(Rn=Rn||Ea.data.thisDep,Dn=Dn||Ea.data.contextDep,Jn=Jn||Ea.data.propDep)}return new ji(Rn,Dn,Jn,oi)}else return new ji(Li===us,Li===Po,Li===Zn,oi)}}var ka=new ji(!1,!1,!1,function(){});function ro(er,oi,Li,mn,Fn,Rn,Dn,Jn,Sa,Ea,ca,$o,wa,Ta,ea,_n){var Un=Ea.Record,_a={add:32774,subtract:32778,"reverse subtract":32779};Li.ext_blend_minmax&&(_a.min=dt,_a.max=xt);var Ca=Li.angle_instanced_arrays,sa=Li.webgl_draw_buffers,Ka=Li.oes_vertex_array_object,Ba={dirty:!0,profile:_n.profile},No={},ha=[],na={},co={};function Ya(Ht){return Ht.replace(".","_")}function Fa(Ht,ir,pr){var Ir=Ya(Ht);ha.push(Ht),No[Ir]=Ba[Ir]=!!pr,na[Ir]=ir}function La(Ht,ir,pr){var Ir=Ya(Ht);ha.push(Ht),Array.isArray(pr)?(Ba[Ir]=pr.slice(),No[Ir]=pr.slice()):Ba[Ir]=No[Ir]=pr,co[Ir]=ir}function io(Ht){return!!isNaN(Ht)}Fa(il,on),Fa(Ps,Oi),La(ql,"blendColor",[0,0,0,0]),La(Tl,"blendEquationSeparate",[Or,Or]),La(vl,"blendFuncSeparate",[zr,sr,zr,sr]),Fa(Wa,An,!0),La(Go,"depthFunc",bi),La(el,"depthRange",[0,1]),La(Os,"depthMask",!0),La(du,du,[!0,!0,!0,!0]),Fa(zu,Ai),La(ac,"cullFace",Re),La(nf,nf,ft),La(Mu,Mu,1),Fa(Vc,ma),La(Fu,"polygonOffset",[0,0]),Fa(Cc,eo),Fa(bo,ja),La(Ko,"sampleCoverage",[1,!1]),Fa(qc,Mn),La(gc,"stencilMask",-1),La(yc,"stencilFunc",[Jt,0,-1]),La(Be,"stencilOpSeparate",[de,It,It,It]),La(R,"stencilOpSeparate",[Re,It,It,It]),Fa(ie,qn),La(xe,"scissor",[0,0,er.drawingBufferWidth,er.drawingBufferHeight]),La(Te,Te,[0,0,er.drawingBufferWidth,er.drawingBufferHeight]);var Jo={gl:er,context:wa,strings:oi,next:No,current:Ba,draw:$o,elements:Rn,buffer:Fn,shader:ca,attributes:Ea.state,vao:Ea,uniforms:Sa,framebuffer:Jn,extensions:Li,timer:Ta,isBufferArgs:ln},xs={primTypes:vt,compareFuncs:Si,blendFuncs:rn,blendEquations:_a,stencilOps:Ui,glTypes:fi,orientationType:Xi};sa&&(xs.backBuffer=[Re],xs.drawBuffer=v(mn.maxDrawbuffers,function(Ht){return Ht===0?[0]:v(Ht,function(ir){return Ki+ir})}));var Oa=0;function So(){var Ht=xa({cache:ea}),ir=Ht.link,pr=Ht.global;Ht.id=Oa++,Ht.batchId="0";var Ir=ir(Jo),Vr=Ht.shared={props:"a0"};Object.keys(Jo).forEach(function(li){Vr[li]=pr.def(Ir,".",li)});var Hr=Ht.next={},si=Ht.current={};Object.keys(co).forEach(function(li){Array.isArray(Ba[li])&&(Hr[li]=pr.def(Vr.next,".",li),si[li]=pr.def(Vr.current,".",li))});var ri=Ht.constants={};Object.keys(xs).forEach(function(li){ri[li]=pr.def(JSON.stringify(xs[li]))}),Ht.invoke=function(li,Ur){switch(Ur.type){case ya:var Ci=["this",Vr.context,Vr.props,Ht.batchId];return li.def(ir(Ur.data),".call(",Ci.slice(0,Math.max(Ur.data.length+1,4)),")");case Zn:return li.def(Vr.props,Ur.data);case Po:return li.def(Vr.context,Ur.data);case us:return li.def("this",Ur.data);case Bs:return Ur.data.append(Ht,li),Ur.data.ref;case sl:return Ur.data.toString();case js:return Ur.data.map(function(Hi){return Ht.invoke(li,Hi)})}},Ht.attribCache={};var Gr={};return Ht.scopeAttrib=function(li){var Ur=oi.id(li);if(Ur in Gr)return Gr[Ur];var Ci=Ea.scope[Ur];Ci||(Ci=Ea.scope[Ur]=new Un);var Hi=Gr[Ur]=ir(Ci);return Hi},Ht}function fs(Ht){var ir=Ht.static,pr=Ht.dynamic,Ir;if(De in ir){var Vr=!!ir[De];Ir=ia(function(si,ri){return Vr}),Ir.enable=Vr}else if(De in pr){var Hr=pr[De];Ir=ga(Hr,function(si,ri){return si.invoke(ri,Hr)})}return Ir}function Ts(Ht,ir){var pr=Ht.static,Ir=Ht.dynamic;if(ut in pr){var Vr=pr[ut];return Vr?(Vr=Jn.getFramebuffer(Vr),ia(function(si,ri){var Gr=si.link(Vr),li=si.shared;ri.set(li.framebuffer,".next",Gr);var Ur=li.context;return ri.set(Ur,"."+ct,Gr+".width"),ri.set(Ur,"."+Tt,Gr+".height"),Gr})):ia(function(si,ri){var Gr=si.shared;ri.set(Gr.framebuffer,".next","null");var li=Gr.context;return ri.set(li,"."+ct,li+"."+or),ri.set(li,"."+Tt,li+"."+vr),"null"})}else if(ut in Ir){var Hr=Ir[ut];return ga(Hr,function(si,ri){var Gr=si.invoke(ri,Hr),li=si.shared,Ur=li.framebuffer,Ci=ri.def(Ur,".getFramebuffer(",Gr,")");ri.set(Ur,".next",Ci);var Hi=li.context;return ri.set(Hi,"."+ct,Ci+"?"+Ci+".width:"+Hi+"."+or),ri.set(Hi,"."+Tt,Ci+"?"+Ci+".height:"+Hi+"."+vr),Ci})}else return null}function Ns(Ht,ir,pr){var Ir=Ht.static,Vr=Ht.dynamic;function Hr(Gr){if(Gr in Ir){var li=Ir[Gr],Ur=!0,Ci=li.x|0,Hi=li.y|0,fn,Gn;return"width"in li?fn=li.width|0:Ur=!1,"height"in li?Gn=li.height|0:Ur=!1,new ji(!Ur&&ir&&ir.thisDep,!Ur&&ir&&ir.contextDep,!Ur&&ir&&ir.propDep,function(Ua,Ma){var Wn=Ua.shared.context,fa=fn;"width"in li||(fa=Ma.def(Wn,".",ct,"-",Ci));var la=Gn;return"height"in li||(la=Ma.def(Wn,".",Tt,"-",Hi)),[Ci,Hi,fa,la]})}else if(Gr in Vr){var Cn=Vr[Gr],Yn=ga(Cn,function(Ua,Ma){var Wn=Ua.invoke(Ma,Cn),fa=Ua.shared.context,la=Ma.def(Wn,".x|0"),Da=Ma.def(Wn,".y|0"),Ja=Ma.def('"width" in ',Wn,"?",Wn,".width|0:","(",fa,".",ct,"-",la,")"),Is=Ma.def('"height" in ',Wn,"?",Wn,".height|0:","(",fa,".",Tt,"-",Da,")");return[la,Da,Ja,Is]});return ir&&(Yn.thisDep=Yn.thisDep||ir.thisDep,Yn.contextDep=Yn.contextDep||ir.contextDep,Yn.propDep=Yn.propDep||ir.propDep),Yn}else return ir?new ji(ir.thisDep,ir.contextDep,ir.propDep,function(Ua,Ma){var Wn=Ua.shared.context;return[0,0,Ma.def(Wn,".",ct),Ma.def(Wn,".",Tt)]}):null}var si=Hr(Te);if(si){var ri=si;si=new ji(si.thisDep,si.contextDep,si.propDep,function(Gr,li){var Ur=ri.append(Gr,li),Ci=Gr.shared.context;return li.set(Ci,"."+gt,Ur[2]),li.set(Ci,"."+Lt,Ur[3]),Ur})}return{viewport:si,scissor_box:Hr(xe)}}function ou(Ht,ir){var pr=Ht.static,Ir=typeof pr[Rt]=="string"&&typeof pr[_t]=="string";if(Ir){if(Object.keys(ir.dynamic).length>0)return null;var Vr=ir.static,Hr=Object.keys(Vr);if(Hr.length>0&&typeof Vr[Hr[0]]=="number"){for(var si=[],ri=0;ri"+la+"?"+Ur+".constant["+la+"]:0;"}).join(""),"}}else{","if(",fn,"(",Ur,".buffer)){",Ua,"=",Gn,".createStream(",Wr,",",Ur,".buffer);","}else{",Ua,"=",Gn,".getBuffer(",Ur,".buffer);","}",Ma,'="type" in ',Ur,"?",Hi.glTypes,"[",Ur,".type]:",Ua,".dtype;",Cn.normalized,"=!!",Ur,".normalized;");function Wn(fa){li(Cn[fa],"=",Ur,".",fa,"|0;")}return Wn("size"),Wn("offset"),Wn("stride"),Wn("divisor"),li("}}"),li.exit("if(",Cn.isStream,"){",Gn,".destroyStream(",Ua,");","}"),Cn}Vr[Hr]=ga(si,ri)}),Vr}function bc(Ht){var ir=Ht.static,pr=Ht.dynamic,Ir={};return Object.keys(ir).forEach(function(Vr){var Hr=ir[Vr];Ir[Vr]=ia(function(si,ri){return typeof Hr=="number"||typeof Hr=="boolean"?""+Hr:si.link(Hr)})}),Object.keys(pr).forEach(function(Vr){var Hr=pr[Vr];Ir[Vr]=ga(Hr,function(si,ri){return si.invoke(ri,Hr)})}),Ir}function af(Ht,ir,pr,Ir,Vr){var Hr=Ht.static,si=Ht.dynamic,ri=ou(Ht,ir),Gr=Ts(Ht,Vr),li=Ns(Ht,Gr,Vr),Ur=al(Ht,Vr),Ci=Gc(Ht,Vr),Hi=Hc(Ht,Vr,ri);function fn(Wn){var fa=li[Wn];fa&&(Ci[Wn]=fa)}fn(Te),fn(Ya(xe));var Gn=Object.keys(Ci).length>0,Cn={framebuffer:Gr,draw:Ur,shader:Hi,state:Ci,dirty:Gn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Cn.profile=fs(Ht,Vr),Cn.uniforms=Zl(pr,Vr),Cn.drawVAO=Cn.scopeVAO=Ur.vao,!Cn.drawVAO&&Hi.program&&!ri&&Li.angle_instanced_arrays&&Ur.static.elements){var Yn=!0,Ua=Hi.program.attributes.map(function(Wn){var fa=ir.static[Wn];return Yn=Yn&&!!fa,fa});if(Yn&&Ua.length>0){var Ma=Ea.getVAO(Ea.createVAO({attributes:Ua,elements:Ur.static.elements}));Cn.drawVAO=new ji(null,null,null,function(Wn,fa){return Wn.link(Ma)}),Cn.useVAO=!0}}return ri?Cn.useVAO=!0:Cn.attributes=xc(ir,Vr),Cn.context=bc(Ir,Vr),Cn}function nu(Ht,ir,pr){var Ir=Ht.shared,Vr=Ir.context,Hr=Ht.scope();Object.keys(pr).forEach(function(si){ir.save(Vr,"."+si);var ri=pr[si],Gr=ri.append(Ht,ir);Array.isArray(Gr)?Hr(Vr,".",si,"=[",Gr.join(),"];"):Hr(Vr,".",si,"=",Gr,";")}),ir(Hr)}function Pc(Ht,ir,pr,Ir){var Vr=Ht.shared,Hr=Vr.gl,si=Vr.framebuffer,ri;sa&&(ri=ir.def(Vr.extensions,".webgl_draw_buffers"));var Gr=Ht.constants,li=Gr.drawBuffer,Ur=Gr.backBuffer,Ci;pr?Ci=pr.append(Ht,ir):Ci=ir.def(si,".next"),Ir||ir("if(",Ci,"!==",si,".cur){"),ir("if(",Ci,"){",Hr,".bindFramebuffer(",gi,",",Ci,".framebuffer);"),sa&&ir(ri,".drawBuffersWEBGL(",li,"[",Ci,".colorAttachments.length]);"),ir("}else{",Hr,".bindFramebuffer(",gi,",null);"),sa&&ir(ri,".drawBuffersWEBGL(",Ur,");"),ir("}",si,".cur=",Ci,";"),Ir||ir("}")}function Wc(Ht,ir,pr){var Ir=Ht.shared,Vr=Ir.gl,Hr=Ht.current,si=Ht.next,ri=Ir.current,Gr=Ir.next,li=Ht.cond(ri,".dirty");ha.forEach(function(Ur){var Ci=Ya(Ur);if(!(Ci in pr.state)){var Hi,fn;if(Ci in si){Hi=si[Ci],fn=Hr[Ci];var Gn=v(Ba[Ci].length,function(Yn){return li.def(Hi,"[",Yn,"]")});li(Ht.cond(Gn.map(function(Yn,Ua){return Yn+"!=="+fn+"["+Ua+"]"}).join("||")).then(Vr,".",co[Ci],"(",Gn,");",Gn.map(function(Yn,Ua){return fn+"["+Ua+"]="+Yn}).join(";"),";"))}else{Hi=li.def(Gr,".",Ci);var Cn=Ht.cond(Hi,"!==",ri,".",Ci);li(Cn),Ci in na?Cn(Ht.cond(Hi).then(Vr,".enable(",na[Ci],");").else(Vr,".disable(",na[Ci],");"),ri,".",Ci,"=",Hi,";"):Cn(Vr,".",co[Ci],"(",Hi,");",ri,".",Ci,"=",Hi,";")}}}),Object.keys(pr.state).length===0&&li(ri,".dirty=false;"),ir(li)}function Ws(Ht,ir,pr,Ir){var Vr=Ht.shared,Hr=Ht.current,si=Vr.current,ri=Vr.gl,Gr;nn(Object.keys(pr)).forEach(function(li){var Ur=pr[li];if(!(Ir&&!Ir(Ur))){var Ci=Ur.append(Ht,ir);if(na[li]){var Hi=na[li];Kn(Ur)?(Gr=Ht.link(Ci,{stable:!0}),ir(Ht.cond(Gr).then(ri,".enable(",Hi,");").else(ri,".disable(",Hi,");")),ir(si,".",li,"=",Gr,";")):(ir(Ht.cond(Ci).then(ri,".enable(",Hi,");").else(ri,".disable(",Hi,");")),ir(si,".",li,"=",Ci,";"))}else if(Fi(Ci)){var fn=Hr[li];ir(ri,".",co[li],"(",Ci,");",Ci.map(function(Gn,Cn){return fn+"["+Cn+"]="+Gn}).join(";"),";")}else Kn(Ur)?(Gr=Ht.link(Ci,{stable:!0}),ir(ri,".",co[li],"(",Gr,");",si,".",li,"=",Gr,";")):ir(ri,".",co[li],"(",Ci,");",si,".",li,"=",Ci,";")}})}function of(Ht,ir){Ca&&(Ht.instancing=ir.def(Ht.shared.extensions,".angle_instanced_arrays"))}function Vs(Ht,ir,pr,Ir,Vr){var Hr=Ht.shared,si=Ht.stats,ri=Hr.current,Gr=Hr.timer,li=pr.profile;function Ur(){return typeof performance>"u"?"Date.now()":"performance.now()"}var Ci,Hi;function fn(Wn){Ci=ir.def(),Wn(Ci,"=",Ur(),";"),typeof Vr=="string"?Wn(si,".count+=",Vr,";"):Wn(si,".count++;"),Ta&&(Ir?(Hi=ir.def(),Wn(Hi,"=",Gr,".getNumPendingQueries();")):Wn(Gr,".beginQuery(",si,");"))}function Gn(Wn){Wn(si,".cpuTime+=",Ur(),"-",Ci,";"),Ta&&(Ir?Wn(Gr,".pushScopeStats(",Hi,",",Gr,".getNumPendingQueries(),",si,");"):Wn(Gr,".endQuery();"))}function Cn(Wn){var fa=ir.def(ri,".profile");ir(ri,".profile=",Wn,";"),ir.exit(ri,".profile=",fa,";")}var Yn;if(li){if(Kn(li)){li.enable?(fn(ir),Gn(ir.exit),Cn("true")):Cn("false");return}Yn=li.append(Ht,ir),Cn(Yn)}else Yn=ir.def(ri,".profile");var Ua=Ht.block();fn(Ua),ir("if(",Yn,"){",Ua,"}");var Ma=Ht.block();Gn(Ma),ir.exit("if(",Yn,"){",Ma,"}")}function ve(Ht,ir,pr,Ir,Vr){var Hr=Ht.shared;function si(Gr){switch(Gr){case _s:case pl:case Hl:return 2;case Oo:case ll:case iu:return 3;case as:case cs:case Yu:return 4;default:return 1}}function ri(Gr,li,Ur){var Ci=Hr.gl,Hi=ir.def(Gr,".location"),fn=ir.def(Hr.attributes,"[",Hi,"]"),Gn=Ur.state,Cn=Ur.buffer,Yn=[Ur.x,Ur.y,Ur.z,Ur.w],Ua=["buffer","normalized","offset","stride"];function Ma(){ir("if(!",fn,".buffer){",Ci,".enableVertexAttribArray(",Hi,");}");var fa=Ur.type,la;if(Ur.size?la=ir.def(Ur.size,"||",li):la=li,ir("if(",fn,".type!==",fa,"||",fn,".size!==",la,"||",Ua.map(function(Ja){return fn+"."+Ja+"!=="+Ur[Ja]}).join("||"),"){",Ci,".bindBuffer(",Wr,",",Cn,".buffer);",Ci,".vertexAttribPointer(",[Hi,la,fa,Ur.normalized,Ur.stride,Ur.offset],");",fn,".type=",fa,";",fn,".size=",la,";",Ua.map(function(Ja){return fn+"."+Ja+"="+Ur[Ja]+";"}).join(""),"}"),Ca){var Da=Ur.divisor;ir("if(",fn,".divisor!==",Da,"){",Ht.instancing,".vertexAttribDivisorANGLE(",[Hi,Da],");",fn,".divisor=",Da,";}")}}function Wn(){ir("if(",fn,".buffer){",Ci,".disableVertexAttribArray(",Hi,");",fn,".buffer=null;","}if(",mo.map(function(fa,la){return fn+"."+fa+"!=="+Yn[la]}).join("||"),"){",Ci,".vertexAttrib4f(",Hi,",",Yn,");",mo.map(function(fa,la){return fn+"."+fa+"="+Yn[la]+";"}).join(""),"}")}Gn===go?Ma():Gn===Mo?Wn():(ir("if(",Gn,"===",go,"){"),Ma(),ir("}else{"),Wn(),ir("}"))}Ir.forEach(function(Gr){var li=Gr.name,Ur=pr.attributes[li],Ci;if(Ur){if(!Vr(Ur))return;Ci=Ur.append(Ht,ir)}else{if(!Vr(ka))return;var Hi=Ht.scopeAttrib(li);Ci={},Object.keys(new Un).forEach(function(fn){Ci[fn]=ir.def(Hi,".",fn)})}ri(Ht.link(Gr),si(Gr.info.type),Ci)})}function K(Ht,ir,pr,Ir,Vr,Hr){for(var si=Ht.shared,ri=si.gl,Gr,li=0;li1){for(var Ss=[],tl=[],os=0;os>1)",Cn],");")}function Da(){pr(Yn,".drawArraysInstancedANGLE(",[Hi,fn,Gn,Cn],");")}Ur&&Ur!=="null"?Ma?la():(pr("if(",Ur,"){"),la(),pr("}else{"),Da(),pr("}")):Da()}function fa(){function la(){pr(Hr+".drawElements("+[Hi,Gn,Ua,fn+"<<(("+Ua+"-"+uo+")>>1)"]+");")}function Da(){pr(Hr+".drawArrays("+[Hi,fn,Gn]+");")}Ur&&Ur!=="null"?Ma?la():(pr("if(",Ur,"){"),la(),pr("}else{"),Da(),pr("}")):Da()}Ca&&(typeof Cn!="number"||Cn>=0)?typeof Cn=="string"?(pr("if(",Cn,">0){"),Wn(),pr("}else if(",Cn,"<0){"),fa(),pr("}")):Wn():fa()}function te(Ht,ir,pr,Ir,Vr){var Hr=So(),si=Hr.proc("body",Vr);return Ca&&(Hr.instancing=si.def(Hr.shared.extensions,".angle_instanced_arrays")),Ht(Hr,si,pr,Ir),Hr.compile().body}function ye(Ht,ir,pr,Ir){of(Ht,ir),pr.useVAO?pr.drawVAO?ir(Ht.shared.vao,".setVAO(",pr.drawVAO.append(Ht,ir),");"):ir(Ht.shared.vao,".setVAO(",Ht.shared.vao,".targetVAO);"):(ir(Ht.shared.vao,".setVAO(null);"),ve(Ht,ir,pr,Ir.attributes,function(){return!0})),K(Ht,ir,pr,Ir.uniforms,function(){return!0},!1),me(Ht,ir,ir,pr)}function We(Ht,ir){var pr=Ht.proc("draw",1);of(Ht,pr),nu(Ht,pr,ir.context),Pc(Ht,pr,ir.framebuffer),Wc(Ht,pr,ir),Ws(Ht,pr,ir.state),Vs(Ht,pr,ir,!1,!0);var Ir=ir.shader.progVar.append(Ht,pr);if(pr(Ht.shared.gl,".useProgram(",Ir,".program);"),ir.shader.program)ye(Ht,pr,ir,ir.shader.program);else{pr(Ht.shared.vao,".setVAO(null);");var Vr=Ht.global.def("{}"),Hr=pr.def(Ir,".id"),si=pr.def(Vr,"[",Hr,"]");pr(Ht.cond(si).then(si,".call(this,a0);").else(si,"=",Vr,"[",Hr,"]=",Ht.link(function(ri){return te(ye,Ht,ir,ri,1)}),"(",Ir,");",si,".call(this,a0);"))}Object.keys(ir.state).length>0&&pr(Ht.shared.current,".dirty=true;"),Ht.shared.vao&&pr(Ht.shared.vao,".setVAO(null);")}function He(Ht,ir,pr,Ir){Ht.batchId="a1",of(Ht,ir);function Vr(){return!0}ve(Ht,ir,pr,Ir.attributes,Vr),K(Ht,ir,pr,Ir.uniforms,Vr,!1),me(Ht,ir,ir,pr)}function at(Ht,ir,pr,Ir){of(Ht,ir);var Vr=pr.contextDep,Hr=ir.def(),si="a0",ri="a1",Gr=ir.def();Ht.shared.props=Gr,Ht.batchId=Hr;var li=Ht.scope(),Ur=Ht.scope();ir(li.entry,"for(",Hr,"=0;",Hr,"<",ri,";++",Hr,"){",Gr,"=",si,"[",Hr,"];",Ur,"}",li.exit);function Ci(Ua){return Ua.contextDep&&Vr||Ua.propDep}function Hi(Ua){return!Ci(Ua)}if(pr.needsContext&&nu(Ht,Ur,pr.context),pr.needsFramebuffer&&Pc(Ht,Ur,pr.framebuffer),Ws(Ht,Ur,pr.state,Ci),pr.profile&&Ci(pr.profile)&&Vs(Ht,Ur,pr,!1,!0),Ir)pr.useVAO?pr.drawVAO?Ci(pr.drawVAO)?Ur(Ht.shared.vao,".setVAO(",pr.drawVAO.append(Ht,Ur),");"):li(Ht.shared.vao,".setVAO(",pr.drawVAO.append(Ht,li),");"):li(Ht.shared.vao,".setVAO(",Ht.shared.vao,".targetVAO);"):(li(Ht.shared.vao,".setVAO(null);"),ve(Ht,li,pr,Ir.attributes,Hi),ve(Ht,Ur,pr,Ir.attributes,Ci)),K(Ht,li,pr,Ir.uniforms,Hi,!1),K(Ht,Ur,pr,Ir.uniforms,Ci,!0),me(Ht,li,Ur,pr);else{var fn=Ht.global.def("{}"),Gn=pr.shader.progVar.append(Ht,Ur),Cn=Ur.def(Gn,".id"),Yn=Ur.def(fn,"[",Cn,"]");Ur(Ht.shared.gl,".useProgram(",Gn,".program);","if(!",Yn,"){",Yn,"=",fn,"[",Cn,"]=",Ht.link(function(Ua){return te(He,Ht,pr,Ua,2)}),"(",Gn,");}",Yn,".call(this,a0[",Hr,"],",Hr,");")}}function St(Ht,ir){var pr=Ht.proc("batch",2);Ht.batchId="0",of(Ht,pr);var Ir=!1,Vr=!0;Object.keys(ir.context).forEach(function(fn){Ir=Ir||ir.context[fn].propDep}),Ir||(nu(Ht,pr,ir.context),Vr=!1);var Hr=ir.framebuffer,si=!1;Hr?(Hr.propDep?Ir=si=!0:Hr.contextDep&&Ir&&(si=!0),si||Pc(Ht,pr,Hr)):Pc(Ht,pr,null),ir.state.viewport&&ir.state.viewport.propDep&&(Ir=!0);function ri(fn){return fn.contextDep&&Ir||fn.propDep}Wc(Ht,pr,ir),Ws(Ht,pr,ir.state,function(fn){return!ri(fn)}),(!ir.profile||!ri(ir.profile))&&Vs(Ht,pr,ir,!1,"a1"),ir.contextDep=Ir,ir.needsContext=Vr,ir.needsFramebuffer=si;var Gr=ir.shader.progVar;if(Gr.contextDep&&Ir||Gr.propDep)at(Ht,pr,ir,null);else{var li=Gr.append(Ht,pr);if(pr(Ht.shared.gl,".useProgram(",li,".program);"),ir.shader.program)at(Ht,pr,ir,ir.shader.program);else{pr(Ht.shared.vao,".setVAO(null);");var Ur=Ht.global.def("{}"),Ci=pr.def(li,".id"),Hi=pr.def(Ur,"[",Ci,"]");pr(Ht.cond(Hi).then(Hi,".call(this,a0,a1);").else(Hi,"=",Ur,"[",Ci,"]=",Ht.link(function(fn){return te(at,Ht,ir,fn,2)}),"(",li,");",Hi,".call(this,a0,a1);"))}}Object.keys(ir.state).length>0&&pr(Ht.shared.current,".dirty=true;"),Ht.shared.vao&&pr(Ht.shared.vao,".setVAO(null);")}function Gt(Ht,ir){var pr=Ht.proc("scope",3);Ht.batchId="a2";var Ir=Ht.shared,Vr=Ir.current;if(nu(Ht,pr,ir.context),ir.framebuffer&&ir.framebuffer.append(Ht,pr),nn(Object.keys(ir.state)).forEach(function(ri){var Gr=ir.state[ri],li=Gr.append(Ht,pr);Fi(li)?li.forEach(function(Ur,Ci){io(Ur)?pr.set(Ht.next[ri],"["+Ci+"]",Ur):pr.set(Ht.next[ri],"["+Ci+"]",Ht.link(Ur,{stable:!0}))}):Kn(Gr)?pr.set(Ir.next,"."+ri,Ht.link(li,{stable:!0})):pr.set(Ir.next,"."+ri,li)}),Vs(Ht,pr,ir,!0,!0),[Kt,jr,dr,ii,fr].forEach(function(ri){var Gr=ir.draw[ri];if(Gr){var li=Gr.append(Ht,pr);io(li)?pr.set(Ir.draw,"."+ri,li):pr.set(Ir.draw,"."+ri,Ht.link(li),{stable:!0})}}),Object.keys(ir.uniforms).forEach(function(ri){var Gr=ir.uniforms[ri].append(Ht,pr);Array.isArray(Gr)&&(Gr="["+Gr.map(function(li){return io(li)?li:Ht.link(li,{stable:!0})})+"]"),pr.set(Ir.uniforms,"["+Ht.link(oi.id(ri),{stable:!0})+"]",Gr)}),Object.keys(ir.attributes).forEach(function(ri){var Gr=ir.attributes[ri].append(Ht,pr),li=Ht.scopeAttrib(ri);Object.keys(new Un).forEach(function(Ur){pr.set(li,"."+Ur,Gr[Ur])})}),ir.scopeVAO){var Hr=ir.scopeVAO.append(Ht,pr);io(Hr)?pr.set(Ir.vao,".targetVAO",Hr):pr.set(Ir.vao,".targetVAO",Ht.link(Hr,{stable:!0}))}function si(ri){var Gr=ir.shader[ri];if(Gr){var li=Gr.append(Ht,pr);io(li)?pr.set(Ir.shader,"."+ri,li):pr.set(Ir.shader,"."+ri,Ht.link(li,{stable:!0}))}}si(_t),si(Rt),Object.keys(ir.state).length>0&&(pr(Vr,".dirty=true;"),pr.exit(Vr,".dirty=true;")),pr("a1(",Ht.shared.context,",a0,",Ht.batchId,");")}function _r(Ht){if(!(typeof Ht!="object"||Fi(Ht))){for(var ir=Object.keys(Ht),pr=0;pr=0;--te){var ye=Jo[te];ye&&ye(ea,null,0)}Li.flush(),ca&&ca.update()}function Ns(){!fs&&Jo.length>0&&(fs=h.next(Ts))}function ou(){fs&&(h.cancel(Ts),fs=null)}function Hc(te){te.preventDefault(),Fn=!0,ou(),xs.forEach(function(ye){ye()})}function al(te){Li.getError(),Fn=!1,Rn.restore(),No.restore(),Ca.restore(),ha.restore(),na.restore(),co.restore(),Ka.restore(),ca&&ca.restore(),Ya.procs.refresh(),Ns(),Oa.forEach(function(ye){ye()})}io&&(io.addEventListener(ws,Hc,!1),io.addEventListener(Cs,al,!1));function Gc(){Jo.length=0,ou(),io&&(io.removeEventListener(ws,Hc),io.removeEventListener(Cs,al)),No.clear(),co.clear(),na.clear(),Ka.clear(),ha.clear(),sa.clear(),Ca.clear(),ca&&ca.clear(),So.forEach(function(te){te()})}function Zl(te){function ye(Hr){var si=g({},Hr);delete si.uniforms,delete si.attributes,delete si.context,delete si.vao,"stencil"in si&&si.stencil.op&&(si.stencil.opBack=si.stencil.opFront=si.stencil.op,delete si.stencil.op);function ri(Gr){if(Gr in si){var li=si[Gr];delete si[Gr],Object.keys(li).forEach(function(Ur){si[Gr+"."+Ur]=li[Ur]})}}return ri("blend"),ri("depth"),ri("cull"),ri("stencil"),ri("polygonOffset"),ri("scissor"),ri("sample"),"vao"in Hr&&(si.vao=Hr.vao),si}function We(Hr,si){var ri={},Gr={};return Object.keys(Hr).forEach(function(li){var Ur=Hr[li];if(c.isDynamic(Ur)){Gr[li]=c.unbox(Ur,li);return}else if(si&&Array.isArray(Ur)){for(var Ci=0;Ci0)return Ht.call(this,Ir(Hr|0),Hr|0)}else if(Array.isArray(Hr)){if(Hr.length)return Ht.call(this,Hr,Hr.length)}else return Tr.call(this,Hr)}return g(Vr,{stats:_r,destroy:function(){Rr.destroy()}})}var xc=co.setFBO=Zl({framebuffer:c.define.call(null,Al,"framebuffer")});function bc(te,ye){var We=0;Ya.procs.poll();var He=ye.color;He&&(Li.clearColor(+He[0]||0,+He[1]||0,+He[2]||0,+He[3]||0),We|=nl),"depth"in ye&&(Li.clearDepth(+ye.depth),We|=xl),"stencil"in ye&&(Li.clearStencil(ye.stencil|0),We|=oa),Li.clear(We)}function af(te){if("framebuffer"in te)if(te.framebuffer&&te.framebuffer_reglType==="framebufferCube")for(var ye=0;ye<6;++ye)xc(g({framebuffer:te.framebuffer.faces[ye]},te),bc);else xc(te,bc);else bc(null,te)}function nu(te){Jo.push(te);function ye(){var We=Ul(Jo,te);function He(){var at=Ul(Jo,He);Jo[at]=Jo[Jo.length-1],Jo.length-=1,Jo.length<=0&&ou()}Jo[We]=He}return Ns(),{cancel:ye}}function Pc(){var te=La.viewport,ye=La.scissor_box;te[0]=te[1]=ye[0]=ye[1]=0,ea.viewportWidth=ea.framebufferWidth=ea.drawingBufferWidth=te[2]=ye[2]=Li.drawingBufferWidth,ea.viewportHeight=ea.framebufferHeight=ea.drawingBufferHeight=te[3]=ye[3]=Li.drawingBufferHeight}function Wc(){ea.tick+=1,ea.time=of(),Pc(),Ya.procs.poll()}function Ws(){ha.refresh(),Pc(),Ya.procs.refresh(),ca&&ca.update()}function of(){return(p()-$o)/1e3}Ws();function Vs(te,ye){var We;switch(te){case"frame":return nu(ye);case"lost":We=xs;break;case"restore":We=Oa;break;case"destroy":We=So;break;default:}return We.push(ye),{cancel:function(){for(var He=0;He=0},read:Fa,destroy:Gc,_gl:Li,_refresh:Ws,poll:function(){Wc(),ca&&ca.update()},now:of,stats:Jn,getCachedCode:ve,preloadCachedCode:K});return oi.onDone(null,me),me}return _c})}}),ER=Le({"node_modules/gl-util/context.js"(Z,H){"use strict";var g=Ov();H.exports=function(o){if(o?typeof o=="string"&&(o={container:o}):o={},A(o)?o={container:o}:S(o)?o={container:o}:e(o)?o={gl:o}:o=g(o,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),o.pixelRatio||(o.pixelRatio=window.pixelRatio||1),o.gl)return o.gl;if(o.canvas&&(o.container=o.canvas.parentNode),o.container){if(typeof o.container=="string"){var i=document.querySelector(o.container);if(!i)throw Error("Element "+o.container+" is not found");o.container=i}A(o.container)?(o.canvas=o.container,o.container=o.canvas.parentNode):o.canvas||(o.canvas=t(),o.container.appendChild(o.canvas),x(o))}else if(!o.canvas)if(typeof document<"u")o.container=document.body||document.documentElement,o.canvas=t(),o.container.appendChild(o.canvas),x(o);else throw Error("Not DOM environment. Use headless-gl.");return o.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{o.gl=o.canvas.getContext(n,o.attrs)}catch{}return o.gl}),o.gl};function x(r){if(r.container)if(r.container==document.body)document.body.style.width||(r.canvas.width=r.width||r.pixelRatio*window.innerWidth),document.body.style.height||(r.canvas.height=r.height||r.pixelRatio*window.innerHeight);else{var o=r.container.getBoundingClientRect();r.canvas.width=r.width||o.right-o.left,r.canvas.height=r.height||o.bottom-o.top}}function A(r){return typeof r.getContext=="function"&&"width"in r&&"height"in r}function S(r){return typeof r.nodeName=="string"&&typeof r.appendChild=="function"&&typeof r.getBoundingClientRect=="function"}function e(r){return typeof r.drawArrays=="function"||typeof r.drawElements=="function"}function t(){var r=document.createElement("canvas");return r.style.position="absolute",r.style.top=0,r.style.left=0,r}}}),kR=Le({"node_modules/font-atlas/index.js"(Z,H){"use strict";var g=UA(),x=[32,126];H.exports=A;function A(S){S=S||{};var e=S.shape?S.shape:S.canvas?[S.canvas.width,S.canvas.height]:[512,512],t=S.canvas||document.createElement("canvas"),r=S.font,o=typeof S.step=="number"?[S.step,S.step]:S.step||[32,32],i=S.chars||x;if(r&&typeof r!="string"&&(r=g(r)),!Array.isArray(i))i=String(i).split("");else if(i.length===2&&typeof i[0]=="number"&&typeof i[1]=="number"){for(var n=[],a=i[0],s=0;a<=i[1];a++)n[s++]=String.fromCharCode(a);i=n}e=e.slice(),t.width=e[0],t.height=e[1];var c=t.getContext("2d");c.fillStyle="#000",c.fillRect(0,0,t.width,t.height),c.font=r,c.textAlign="center",c.textBaseline="middle",c.fillStyle="#fff";for(var h=o[0]/2,p=o[1]/2,a=0;ae[0]-o[0]/2&&(h=o[0]/2,p+=o[1]);return t}}}),VA=Le({"node_modules/bit-twiddle/twiddle.js"(Z){"use strict";"use restrict";var H=32;Z.INT_BITS=H,Z.INT_MAX=2147483647,Z.INT_MIN=-1<0)-(A<0)},Z.abs=function(A){var S=A>>H-1;return(A^S)-S},Z.min=function(A,S){return S^(A^S)&-(A65535)<<4,A>>>=S,e=(A>255)<<3,A>>>=e,S|=e,e=(A>15)<<2,A>>>=e,S|=e,e=(A>3)<<1,A>>>=e,S|=e,S|A>>1},Z.log10=function(A){return A>=1e9?9:A>=1e8?8:A>=1e7?7:A>=1e6?6:A>=1e5?5:A>=1e4?4:A>=1e3?3:A>=100?2:A>=10?1:0},Z.popCount=function(A){return A=A-(A>>>1&1431655765),A=(A&858993459)+(A>>>2&858993459),(A+(A>>>4)&252645135)*16843009>>>24};function g(A){var S=32;return A&=-A,A&&S--,A&65535&&(S-=16),A&16711935&&(S-=8),A&252645135&&(S-=4),A&858993459&&(S-=2),A&1431655765&&(S-=1),S}Z.countTrailingZeros=g,Z.nextPow2=function(A){return A+=A===0,--A,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A+1},Z.prevPow2=function(A){return A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A-(A>>>1)},Z.parity=function(A){return A^=A>>>16,A^=A>>>8,A^=A>>>4,A&=15,27030>>>A&1};var x=new Array(256);(function(A){for(var S=0;S<256;++S){var e=S,t=S,r=7;for(e>>>=1;e;e>>>=1)t<<=1,t|=e&1,--r;A[S]=t<>>8&255]<<16|x[A>>>16&255]<<8|x[A>>>24&255]},Z.interleave2=function(A,S){return A&=65535,A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,S&=65535,S=(S|S<<8)&16711935,S=(S|S<<4)&252645135,S=(S|S<<2)&858993459,S=(S|S<<1)&1431655765,A|S<<1},Z.deinterleave2=function(A,S){return A=A>>>S&1431655765,A=(A|A>>>1)&858993459,A=(A|A>>>2)&252645135,A=(A|A>>>4)&16711935,A=(A|A>>>16)&65535,A<<16>>16},Z.interleave3=function(A,S,e){return A&=1023,A=(A|A<<16)&4278190335,A=(A|A<<8)&251719695,A=(A|A<<4)&3272356035,A=(A|A<<2)&1227133513,S&=1023,S=(S|S<<16)&4278190335,S=(S|S<<8)&251719695,S=(S|S<<4)&3272356035,S=(S|S<<2)&1227133513,A|=S<<1,e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,A|e<<2},Z.deinterleave3=function(A,S){return A=A>>>S&1227133513,A=(A|A>>>2)&3272356035,A=(A|A>>>4)&251719695,A=(A|A>>>8)&4278190335,A=(A|A>>>16)&1023,A<<22>>22},Z.nextCombination=function(A){var S=A|A-1;return S+1|(~S&-~S)-1>>>g(A)+1}}}),CR=Le({"node_modules/dup/dup.js"(Z,H){"use strict";function g(S,e,t){var r=S[t]|0;if(r<=0)return[];var o=new Array(r),i;if(t===S.length-1)for(i=0;i"u"&&(e=0),typeof S){case"number":if(S>0)return x(S|0,e);break;case"object":if(typeof S.length=="number")return g(S,e,0);break}return[]}H.exports=A}}),LR=Le({"node_modules/typedarray-pool/pool.js"(Z){"use strict";var H=VA(),g=CR(),x=Xm().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:g([32,0]),UINT16:g([32,0]),UINT32:g([32,0]),BIGUINT64:g([32,0]),INT8:g([32,0]),INT16:g([32,0]),INT32:g([32,0]),BIGINT64:g([32,0]),FLOAT:g([32,0]),DOUBLE:g([32,0]),DATA:g([32,0]),UINT8C:g([32,0]),BUFFER:g([32,0])});var A=typeof Uint8ClampedArray<"u",S=typeof BigUint64Array<"u",e=typeof BigInt64Array<"u",t=window.__TYPEDARRAY_POOL;t.UINT8C||(t.UINT8C=g([32,0])),t.BIGUINT64||(t.BIGUINT64=g([32,0])),t.BIGINT64||(t.BIGINT64=g([32,0])),t.BUFFER||(t.BUFFER=g([32,0]));var r=t.DATA,o=t.BUFFER;Z.free=function(u){if(x.isBuffer(u))o[H.log2(u.length)].push(u);else{if(Object.prototype.toString.call(u)!=="[object ArrayBuffer]"&&(u=u.buffer),!u)return;var y=u.length||u.byteLength,f=H.log2(y)|0;r[f].push(u)}};function i(v){if(v){var u=v.length||v.byteLength,y=H.log2(u);r[y].push(v)}}function n(v){i(v.buffer)}Z.freeUint8=Z.freeUint16=Z.freeUint32=Z.freeBigUint64=Z.freeInt8=Z.freeInt16=Z.freeInt32=Z.freeBigInt64=Z.freeFloat32=Z.freeFloat=Z.freeFloat64=Z.freeDouble=Z.freeUint8Clamped=Z.freeDataView=n,Z.freeArrayBuffer=i,Z.freeBuffer=function(u){o[H.log2(u.length)].push(u)},Z.malloc=function(u,y){if(y===void 0||y==="arraybuffer")return a(u);switch(y){case"uint8":return s(u);case"uint16":return c(u);case"uint32":return h(u);case"int8":return p(u);case"int16":return d(u);case"int32":return T(u);case"float":case"float32":return l(u);case"double":case"float64":return _(u);case"uint8_clamped":return w(u);case"bigint64":return E(u);case"biguint64":return M(u);case"buffer":return b(u);case"data":case"dataview":return m(u);default:return null}return null};function a(u){var u=H.nextPow2(u),y=H.log2(u),f=r[y];return f.length>0?f.pop():new ArrayBuffer(u)}Z.mallocArrayBuffer=a;function s(v){return new Uint8Array(a(v),0,v)}Z.mallocUint8=s;function c(v){return new Uint16Array(a(2*v),0,v)}Z.mallocUint16=c;function h(v){return new Uint32Array(a(4*v),0,v)}Z.mallocUint32=h;function p(v){return new Int8Array(a(v),0,v)}Z.mallocInt8=p;function d(v){return new Int16Array(a(2*v),0,v)}Z.mallocInt16=d;function T(v){return new Int32Array(a(4*v),0,v)}Z.mallocInt32=T;function l(v){return new Float32Array(a(4*v),0,v)}Z.mallocFloat32=Z.mallocFloat=l;function _(v){return new Float64Array(a(8*v),0,v)}Z.mallocFloat64=Z.mallocDouble=_;function w(v){return A?new Uint8ClampedArray(a(v),0,v):s(v)}Z.mallocUint8Clamped=w;function M(v){return S?new BigUint64Array(a(8*v),0,v):null}Z.mallocBigUint64=M;function E(v){return e?new BigInt64Array(a(8*v),0,v):null}Z.mallocBigInt64=E;function m(v){return new DataView(a(v),0,v)}Z.mallocDataView=m;function b(v){v=H.nextPow2(v);var u=H.log2(v),y=o[u];return y.length>0?y.pop():new x(v)}Z.mallocBuffer=b,Z.clearCache=function(){for(var u=0;u<32;++u)t.UINT8[u].length=0,t.UINT16[u].length=0,t.UINT32[u].length=0,t.INT8[u].length=0,t.INT16[u].length=0,t.INT32[u].length=0,t.FLOAT[u].length=0,t.DOUBLE[u].length=0,t.BIGUINT64[u].length=0,t.BIGINT64[u].length=0,t.UINT8C[u].length=0,r[u].length=0,o[u].length=0}}}),PR=Le({"node_modules/is-plain-obj/index.js"(Z,H){"use strict";var g=Object.prototype.toString;H.exports=function(x){var A;return g.call(x)==="[object Object]"&&(A=Object.getPrototypeOf(x),A===null||A===Object.getPrototypeOf({}))}}}),qA=Le({"node_modules/parse-unit/index.js"(Z,H){H.exports=function(x,A){A||(A=[0,""]),x=String(x);var S=parseFloat(x,10);return A[0]=S,A[1]=x.match(/[\d.\-\+]*\s*(.*)/)[1]||"",A}}}),IR=Le({"node_modules/to-px/topx.js"(Z,H){"use strict";var g=qA();H.exports=e;var x=96;function A(t,r){var o=g(getComputedStyle(t).getPropertyValue(r));return o[0]*e(o[1],t)}function S(t,r){var o=document.createElement("div");o.style["font-size"]="128"+t,r.appendChild(o);var i=A(o,"font-size")/128;return r.removeChild(o),i}function e(t,r){switch(r=r||document.body,t=(t||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),t){case"%":return r.clientHeight/100;case"ch":case"ex":return S(t,r);case"em":return A(r,"font-size");case"rem":return A(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return x;case"cm":return x/2.54;case"mm":return x/25.4;case"pt":return x/72;case"pc":return x/6}return 1}}}),RR=Le({"node_modules/detect-kerning/index.js"(Z,H){"use strict";H.exports=S;var g=S.canvas=document.createElement("canvas"),x=g.getContext("2d"),A=e([32,126]);S.createPairs=e,S.ascii=A;function S(t,r){Array.isArray(t)&&(t=t.join(", "));var o={},i,n=16,a=.05;r&&(r.length===2&&typeof r[0]=="number"?i=e(r):Array.isArray(r)?i=r:(r.o?i=e(r.o):r.pairs&&(i=r.pairs),r.fontSize&&(n=r.fontSize),r.threshold!=null&&(a=r.threshold))),i||(i=A),x.font=n+"px "+t;for(var s=0;sn*a){var d=(p-h)/n;o[c]=d*1e3}}return o}function e(t){for(var r=[],o=t[0];o<=t[1];o++)for(var i=String.fromCharCode(o),n=t[0];n0;o-=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}}}),zR=Le({"node_modules/gl-text/dist.js"(Z,H){"use strict";var g=SR(),x=Ov(),A=jA(),S=ER(),e=IA(),t=rm(),r=kR(),o=LR(),i=b0(),n=PR(),a=qA(),s=IR(),c=RR(),h=Nf(),p=DR(),d=sg(),T=VA(),l=T.nextPow2,_=new e,w=!1;document.body&&(M=document.body.appendChild(document.createElement("div")),M.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(M).fontStretch&&(w=!0),document.body.removeChild(M));var M,E=function(v){m(v)?(v={regl:v},this.gl=v.regl._gl):this.gl=S(v),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=v.regl||A({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),_.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(n(v)?v:{})};E.prototype.createShader=function(){var v=this.regl,u=v({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:v.prop("count"),offset:v.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:v.this("sizeBuffer")},width:{offset:0,stride:8,buffer:v.this("sizeBuffer")},char:v.this("charBuffer"),position:v.this("position")},uniforms:{atlasSize:function(f,P){return[P.atlas.width,P.atlas.height]},atlasDim:function(f,P){return[P.atlas.cols,P.atlas.rows]},atlas:function(f,P){return P.atlas.texture},charStep:function(f,P){return P.atlas.step},em:function(f,P){return P.atlas.em},color:v.prop("color"),opacity:v.prop("opacity"),viewport:v.this("viewportArray"),scale:v.this("scale"),align:v.prop("align"),baseline:v.prop("baseline"),translate:v.this("translate"),positionOffset:v.prop("positionOffset")},primitive:"points",viewport:v.this("viewport"),vert:` + precision highp float; + attribute float width, charOffset, char; + attribute vec2 position; + uniform float fontSize, charStep, em, align, baseline; + uniform vec4 viewport; + uniform vec4 color; + uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset; + varying vec2 charCoord, charId; + varying float charWidth; + varying vec4 fontColor; + void main () { + vec2 offset = floor(em * (vec2(align + charOffset, baseline) + + vec2(positionOffset.x, -positionOffset.y))) + / (viewport.zw * scale.xy); + + vec2 position = (position + translate) * scale; + position += offset * scale; + + charCoord = position * viewport.zw + viewport.xy; + + gl_Position = vec4(position * 2. - 1., 0, 1); + + gl_PointSize = charStep; + + charId.x = mod(char, atlasDim.x); + charId.y = floor(char / atlasDim.x); + + charWidth = width * em; + + fontColor = color / 255.; + }`,frag:` + precision highp float; + uniform float fontSize, charStep, opacity; + uniform vec2 atlasSize; + uniform vec4 viewport; + uniform sampler2D atlas; + varying vec4 fontColor; + varying vec2 charCoord, charId; + varying float charWidth; + + float lightness(vec4 color) { + return color.r * 0.299 + color.g * 0.587 + color.b * 0.114; + } + + void main () { + vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5; + float halfCharStep = floor(charStep * .5 + .5); + + // invert y and shift by 1px (FF expecially needs that) + uv.y = charStep - uv.y; + + // ignore points outside of character bounding box + float halfCharWidth = ceil(charWidth * .5); + if (floor(uv.x) > halfCharStep + halfCharWidth || + floor(uv.x) < halfCharStep - halfCharWidth) return; + + uv += charId * charStep; + uv = uv / atlasSize; + + vec4 color = fontColor; + vec4 mask = texture2D(atlas, uv); + + float maskY = lightness(mask); + // float colorY = lightness(color); + color.a *= maskY; + color.a *= opacity; + + // color.a += .1; + + // antialiasing, see yiq color space y-channel formula + // color.rgb += (1. - color.rgb) * (1. - mask.rgb); + + gl_FragColor = color; + }`}),y={};return{regl:v,draw:u,atlas:y}},E.prototype.update=function(v){var u=this;if(typeof v=="string")v={text:v};else if(!v)return;v=x(v,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),v.opacity!=null&&(Array.isArray(v.opacity)?this.opacity=v.opacity.map(function(ue){return parseFloat(ue)}):this.opacity=parseFloat(v.opacity)),v.viewport!=null&&(this.viewport=i(v.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),v.kerning!=null&&(this.kerning=v.kerning),v.offset!=null&&(typeof v.offset=="number"&&(v.offset=[v.offset,0]),this.positionOffset=d(v.offset)),v.direction&&(this.direction=v.direction),v.range&&(this.range=v.range,this.scale=[1/(v.range[2]-v.range[0]),1/(v.range[3]-v.range[1])],this.translate=[-v.range[0],-v.range[1]]),v.scale&&(this.scale=v.scale),v.translate&&(this.translate=v.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!v.font&&(v.font=E.baseFontSize+"px sans-serif");var y=!1,f=!1;if(v.font&&(Array.isArray(v.font)?v.font:[v.font]).forEach(function(ue,ze){if(typeof ue=="string")try{ue=g.parse(ue)}catch{ue=g.parse(E.baseFontSize+"px "+ue)}else{var Qe=ue.style,it=ue.weight,$e=ue.stretch,kt=ue.variant;ue=g.parse(g.stringify(ue)),Qe&&(ue.style=Qe),it&&(ue.weight=it),$e&&(ue.stretch=$e),kt&&(ue.variant=kt)}var Mt=g.stringify({size:E.baseFontSize,family:ue.family,stretch:w?ue.stretch:void 0,variant:ue.variant,weight:ue.weight,style:ue.style}),Bt=a(ue.size),jt=Math.round(Bt[0]*s(Bt[1]));if(jt!==u.fontSize[ze]&&(f=!0,u.fontSize[ze]=jt),(!u.font[ze]||Mt!=u.font[ze].baseString)&&(y=!0,u.font[ze]=E.fonts[Mt],!u.font[ze])){var cr=ue.family.join(", "),nr=[ue.style];ue.style!=ue.variant&&nr.push(ue.variant),ue.variant!=ue.weight&&nr.push(ue.weight),w&&ue.weight!=ue.stretch&&nr.push(ue.stretch),u.font[ze]={baseString:Mt,family:cr,weight:ue.weight,stretch:ue.stretch,style:ue.style,variant:ue.variant,width:{},kerning:{},metrics:p(cr,{origin:"top",fontSize:E.baseFontSize,fontStyle:nr.join(" ")})},E.fonts[Mt]=u.font[ze]}}),(y||f)&&this.font.forEach(function(ue,ze){var Qe=g.stringify({size:u.fontSize[ze],family:ue.family,stretch:w?ue.stretch:void 0,variant:ue.variant,weight:ue.weight,style:ue.style});if(u.fontAtlas[ze]=u.shader.atlas[Qe],!u.fontAtlas[ze]){var it=ue.metrics;u.shader.atlas[Qe]=u.fontAtlas[ze]={fontString:Qe,step:Math.ceil(u.fontSize[ze]*it.bottom*.5)*2,em:u.fontSize[ze],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:u.regl.texture()}}v.text==null&&(v.text=u.text)}),typeof v.text=="string"&&v.position&&v.position.length>2){for(var P=Array(v.position.length*.5),L=0;L2){for(var O=!v.position[0].length,B=o.mallocFloat(this.count*2),I=0,N=0;I1?u.align[ze]:u.align[0]:u.align;if(typeof Qe=="number")return Qe;switch(Qe){case"right":case"end":return-ue;case"center":case"centre":case"middle":return-ue*.5}return 0})),this.baseline==null&&v.baseline==null&&(v.baseline=0),v.baseline!=null&&(this.baseline=v.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ue,ze){var Qe=(u.font[ze]||u.font[0]).metrics,it=0;return it+=Qe.bottom*.5,typeof ue=="number"?it+=ue-Qe.baseline:it+=-Qe[ue],it*=-1,it})),v.color!=null)if(v.color||(v.color="transparent"),typeof v.color=="string"||!isNaN(v.color))this.color=t(v.color,"uint8");else{var Oe;if(typeof v.color[0]=="number"&&v.color.length>this.counts.length){var Ie=v.color.length;Oe=o.mallocUint8(Ie);for(var Xe=(v.color.subarray||v.color.slice).bind(v.color),tt=0;tt4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ot){var Me=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Me);for(var pe=0;pe1?this.counts[pe]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[pe]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(pe*4,pe*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[pe]:this.opacity,baseline:this.baselineOffset[pe]!=null?this.baselineOffset[pe]:this.baselineOffset[0],align:this.align?this.alignOffset[pe]!=null?this.alignOffset[pe]:this.alignOffset[0]:0,atlas:this.fontAtlas[pe]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(pe*2,pe*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}},E.prototype.destroy=function(){},E.prototype.kerning=!0,E.prototype.position={constant:new Float32Array(2)},E.prototype.translate=null,E.prototype.scale=null,E.prototype.font=null,E.prototype.text="",E.prototype.positionOffset=[0,0],E.prototype.opacity=1,E.prototype.color=new Uint8Array([0,0,0,255]),E.prototype.alignOffset=[0,0],E.maxAtlasSize=1024,E.atlasCanvas=document.createElement("canvas"),E.atlasContext=E.atlasCanvas.getContext("2d",{alpha:!1}),E.baseFontSize=64,E.fonts={};function m(b){return typeof b=="function"&&b._gl&&b.prop&&b.texture&&b.buffer}H.exports=E}}),bb=Le({"src/lib/prepare_regl.js"(Z,H){"use strict";var g=QT(),x=jA();H.exports=function(S,e,t){var r=S._fullLayout,o=!0;return r._glcanvas.each(function(i){if(i.regl){i.regl.preloadCachedCode(t);return}if(!(i.pick&&!r._has("parcoords"))){try{i.regl=x({canvas:this,attributes:{antialias:!i.pick,preserveDrawingBuffer:!0},pixelRatio:S._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:t||{}})}catch{o=!1}i.regl||(o=!1),o&&this.addEventListener("webglcontextlost",function(n){S&&S.emit&&S.emit("plotly_webglcontextlost",{event:n,layer:i.key})},!1)}}),o||g({container:r._glcontainer.node()}),o}}}),HA=Le({"src/traces/scattergl/plot.js"(c,H){"use strict";var g=bA(),x=RA(),A=xR(),S=zR(),e=ni(),t=hv().selectMode,r=bb(),o=gu(),i=g2(),n=yA().styleTextSelection,a={};function s(h,p,d,T){var l=h._size,_=h.width*T,w=h.height*T,M=l.l*T,E=l.b*T,m=l.r*T,b=l.t*T,v=l.w*T,u=l.h*T;return[M+p.domain[0]*v,E+d.domain[0]*u,_-m-(1-p.domain[1])*v,w-b-(1-d.domain[1])*u]}var c=H.exports=function(p,d,T){if(T.length){var l=p._fullLayout,_=d._scene,w=d.xaxis,M=d.yaxis,E,m;if(_){var b=r(p,["ANGLE_instanced_arrays","OES_element_index_uint"],a);if(!b){_.init();return}var v=_.count,u=l._glcanvas.data()[0].regl;if(i(p,d,T),_.dirty){if((_.line2d||_.error2d)&&!(_.scatter2d||_.fill2d||_.glText)&&u.clear({}),_.error2d===!0&&(_.error2d=A(u)),_.line2d===!0&&(_.line2d=x(u)),_.scatter2d===!0&&(_.scatter2d=g(u)),_.fill2d===!0&&(_.fill2d=x(u)),_.glText===!0)for(_.glText=new Array(v),E=0;E_.glText.length){var y=v-_.glText.length;for(E=0;Ene&&(isNaN(ee[ce])||isNaN(ee[ce+1]));)ce-=2;j.positions=ee.slice(ne,ce+2)}return j}),_.line2d.update(_.lineOptions)),_.error2d){var L=(_.errorXOptions||[]).concat(_.errorYOptions||[]);_.error2d.update(L)}_.scatter2d&&_.scatter2d.update(_.markerOptions),_.fillOrder=e.repeat(null,v),_.fill2d&&(_.fillOptions=_.fillOptions.map(function(j,ee){var ne=T[ee];if(!(!j||!ne||!ne[0]||!ne[0].trace)){var ce=ne[0],_e=ce.trace,we=ce.t,Oe=_.lineOptions[ee],Ie,Xe,tt=[];_e._ownfill&&tt.push(ee),_e._nexttrace&&tt.push(ee+1),tt.length&&(_.fillOrder[ee]=tt);var rt=[],Je=Oe&&Oe.positions||we.positions,ot,Me;if(_e.fill==="tozeroy"){for(ot=0;otot&&isNaN(Je[Me+1]);)Me-=2;Je[ot+1]!==0&&(rt=[Je[ot],0]),rt=rt.concat(Je.slice(ot,Me+2)),Je[Me+1]!==0&&(rt=rt.concat([Je[Me],0]))}else if(_e.fill==="tozerox"){for(ot=0;otot&&isNaN(Je[Me]);)Me-=2;Je[ot]!==0&&(rt=[0,Je[ot+1]]),rt=rt.concat(Je.slice(ot,Me+2)),Je[Me]!==0&&(rt=rt.concat([0,Je[Me+1]]))}else if(_e.fill==="toself"||_e.fill==="tonext"){for(rt=[],Ie=0,j.splitNull=!0,Xe=0;Xe-1;for(E=0;Ew&&d||_n,f;for(y?f=d.sizeAvg||Math.max(d.size,3):f=A(c,p),M=0;M<_.length;M++)w=_[M],E=h[w],m=x.getFromId(s,c._diag[w][0])||{},b=x.getFromId(s,c._diag[w][1])||{},S(s,c,m,b,T[M],T[M],f);var P=o(s,c);return P.matrix||(P.matrix=!0),P.matrixOptions=d,P.selectedOptions=t(s,c,c.selected),P.unselectedOptions=t(s,c,c.unselected),[{x:!1,y:!1,t:{},trace:c}]}}}),jR=Le({"node_modules/performance-now/lib/performance-now.js"(Z,H){(function(){var g,x,A,S,e,t;typeof performance<"u"&&performance!==null&&performance.now?H.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(H.exports=function(){return(g()-e)/1e6},x=process.hrtime,g=function(){var r;return r=x(),r[0]*1e9+r[1]},S=g(),t=process.uptime()*1e9,e=S-t):Date.now?(H.exports=function(){return Date.now()-A},A=Date.now()):(H.exports=function(){return new Date().getTime()-A},A=new Date().getTime())}).call(Z)}}),VR=Le({"node_modules/raf/index.js"(Z,H){var g=jR(),x=window,A=["moz","webkit"],S="AnimationFrame",e=x["request"+S],t=x["cancel"+S]||x["cancelRequest"+S];for(r=0;!e&&r{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,S(()=>{this.dirty=!1})),this)},o.prototype.update=function(...s){if(!s.length)return;for(let p=0;pf||!d.lower&&y{c[T+_]=p})}this.scatter.draw(...c)}return this},o.prototype.destroy=function(){return this.traces.forEach(s=>{s.buffer&&s.buffer.destroy&&s.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function i(s,c,h){let p=s.id!=null?s.id:s,d=c,T=h;return p<<16|(d&255)<<8|T&255}function n(s,c,h){let p,d,T,l,_,w,M,E,m=s[c],b=s[h];return m.length>2?(p=m[0],T=m[2],d=m[1],l=m[3]):m.length?(p=d=m[0],T=l=m[1]):(p=m.x,d=m.y,T=m.x+m.width,l=m.y+m.height),b.length>2?(_=b[0],M=b[2],w=b[1],E=b[3]):b.length?(_=w=b[0],M=E=b[1]):(_=b.x,w=b.y,M=b.x+b.width,E=b.y+b.height),[_,d,M,l]}function a(s){if(typeof s=="number")return[s,s,s,s];if(s.length===2)return[s[0],s[1],s[0],s[1]];{let c=t(s);return[c.x,c.y,c.x+c.width,c.y+c.height]}}}}),GR=Le({"src/traces/splom/plot.js"(Z,H){"use strict";var g=HR(),x=ni(),A=Kc(),S=hv().selectMode;H.exports=function(r,o,i){if(i.length)for(var n=0;n-1,O=S(d)||!!n.selectedpoints||F,B=!0;if(O){var I=n._length;if(n.selectedpoints){s.selectBatch=n.selectedpoints;var N=n.selectedpoints,U={};for(_=0;_=W[Q][0]&&U<=W[Q][1])return!0;return!1}function c(U){U.attr("x",-g.bar.captureWidth/2).attr("width",g.bar.captureWidth)}function h(U){U.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function p(U){if(!U.brush.filterSpecified)return"0,"+U.height;for(var W=d(U.brush.filter.getConsolidated(),U.height),Q=[0],le,se,fe,G=W.length?W[0][0]:null,J=0;JU[1]+Q||W=.9*U[1]+.1*U[0]?"n":W<=.9*U[0]+.1*U[1]?"s":"ns"}function l(){x.select(document.body).style("cursor",null)}function _(U){U.attr("stroke-dasharray",p)}function w(U,W){var Q=x.select(U).selectAll(".highlight, .highlight-shadow"),le=W?Q.transition().duration(g.bar.snapDuration).each("end",W):Q;_(le)}function M(U,W){var Q=U.brush,le=Q.filterSpecified,se=NaN,fe={},G;if(le){var J=U.height,$=Q.filter.getConsolidated(),X=d($,J),re=NaN,ae=NaN,j=NaN;for(G=0;G<=X.length;G++){var ee=X[G];if(ee&&ee[0]<=W&&W<=ee[1]){re=G;break}else if(ae=G?G-1:NaN,ee&&ee[0]>W){j=G;break}}if(se=re,isNaN(se)&&(isNaN(ae)||isNaN(j)?se=isNaN(ae)?j:ae:se=W-X[ae][1]=Oe[0]&&we<=Oe[1]){fe.clickableOrdinalRange=Oe;break}}}return fe}function E(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,le=W.unitToPaddedPx.invert(Q),se=W.brush,fe=M(W,Q),G=fe.interval,J=se.svgBrush;if(J.wasDragged=!1,J.grabbingBar=fe.region==="ns",J.grabbingBar){var $=G.map(W.unitToPaddedPx);J.grabPoint=Q-$[0]-g.verticalPadding,J.barLength=$[1]-$[0]}J.clickableOrdinalRange=fe.clickableOrdinalRange,J.stayingIntervals=W.multiselect&&se.filterSpecified?se.filter.getConsolidated():[],G&&(J.stayingIntervals=J.stayingIntervals.filter(function(X){return X[0]!==G[0]&&X[1]!==G[1]})),J.startExtent=fe.region?G[fe.region==="s"?1:0]:le,W.parent.inBrushDrag=!0,J.brushStartCallback()}function m(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,le=W.brush.svgBrush;le.wasDragged=!0,le._dragging=!0,le.grabbingBar?le.newExtent=[Q-le.grabPoint,Q+le.barLength-le.grabPoint].map(W.unitToPaddedPx.invert):le.newExtent=[le.startExtent,W.unitToPaddedPx.invert(Q)].sort(e),W.brush.filterSpecified=!0,le.extent=le.stayingIntervals.concat([le.newExtent]),le.brushCallback(W),w(U.parentNode)}function b(U,W){var Q=W.brush,le=Q.filter,se=Q.svgBrush;se._dragging||(v(U,W),m(U,W),W.brush.svgBrush.wasDragged=!1),se._dragging=!1;var fe=x.event;fe.sourceEvent.stopPropagation();var G=se.grabbingBar;if(se.grabbingBar=!1,se.grabLocation=void 0,W.parent.inBrushDrag=!1,l(),!se.wasDragged){se.wasDragged=void 0,se.clickableOrdinalRange?Q.filterSpecified&&W.multiselect?se.extent.push(se.clickableOrdinalRange):(se.extent=[se.clickableOrdinalRange],Q.filterSpecified=!0):G?(se.extent=se.stayingIntervals,se.extent.length===0&&z(Q)):z(Q),se.brushCallback(W),w(U.parentNode),se.brushEndCallback(Q.filterSpecified?le.getConsolidated():[]);return}var J=function(){le.set(le.getConsolidated())};if(W.ordinal){var $=W.unitTickvals;$[$.length-1]<$[0]&&$.reverse(),se.newExtent=[a(0,$,se.newExtent[0],se.stayingIntervals),a(1,$,se.newExtent[1],se.stayingIntervals)];var X=se.newExtent[1]>se.newExtent[0];se.extent=se.stayingIntervals.concat(X?[se.newExtent]:[]),se.extent.length||z(Q),se.brushCallback(W),X?w(U.parentNode,J):(J(),w(U.parentNode))}else J();se.brushEndCallback(Q.filterSpecified?le.getConsolidated():[])}function v(U,W){var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,le=M(W,Q),se="crosshair";le.clickableOrdinalRange?se="pointer":le.region&&(se=le.region+"-resize"),x.select(document.body).style("cursor",se)}function u(U){U.on("mousemove",function(W){x.event.preventDefault(),W.parent.inBrushDrag||v(this,W)}).on("mouseleave",function(W){W.parent.inBrushDrag||l()}).call(x.behavior.drag().on("dragstart",function(W){E(this,W)}).on("drag",function(W){m(this,W)}).on("dragend",function(W){b(this,W)}))}function y(U,W){return U[0]-W[0]}function f(U,W,Q){var le=Q._context.staticPlot,se=U.selectAll(".background").data(S);se.enter().append("rect").classed("background",!0).call(c).call(h).style("pointer-events",le?"none":"auto").attr("transform",t(0,g.verticalPadding)),se.call(u).attr("height",function(J){return J.height-g.verticalPadding});var fe=U.selectAll(".highlight-shadow").data(S);fe.enter().append("line").classed("highlight-shadow",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width+g.bar.strokeWidth).attr("stroke",W).attr("opacity",g.bar.strokeOpacity).attr("stroke-linecap","butt"),fe.attr("y1",function(J){return J.height}).call(_);var G=U.selectAll(".highlight").data(S);G.enter().append("line").classed("highlight",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width-g.bar.strokeWidth).attr("stroke",g.bar.fillColor).attr("opacity",g.bar.fillOpacity).attr("stroke-linecap","butt"),G.attr("y1",function(J){return J.height}).call(_)}function P(U,W,Q){var le=U.selectAll("."+g.cn.axisBrush).data(S,A);le.enter().append("g").classed(g.cn.axisBrush,!0),f(le,W,Q)}function L(U){return U.svgBrush.extent.map(function(W){return W.slice()})}function z(U){U.filterSpecified=!1,U.svgBrush.extent=[[-1/0,1/0]]}function F(U){return function(Q){var le=Q.brush,se=L(le),fe=se.slice();le.filter.set(fe),U()}}function O(U){for(var W=U.slice(),Q=[],le,se=W.shift();se;){for(le=se.slice();(se=W.shift())&&se[0]<=le[1];)le[1]=Math.max(le[1],se[1]);Q.push(le)}return Q.length===1&&Q[0][0]>Q[0][1]&&(Q=[]),Q}function B(){var U=[],W,Q;return{set:function(le){U=le.map(function(se){return se.slice().sort(e)}).sort(y),U.length===1&&U[0][0]===-1/0&&U[0][1]===1/0&&(U=[[0,-1]]),W=O(U),Q=U.reduce(function(se,fe){return[Math.min(se[0],fe[0]),Math.max(se[1],fe[1])]},[1/0,-1/0])},get:function(){return U.slice()},getConsolidated:function(){return W},getBounds:function(){return Q}}}function I(U,W,Q,le,se,fe){var G=B();return G.set(Q),{filter:G,filterSpecified:W,svgBrush:{extent:[],brushStartCallback:le,brushCallback:F(se),brushEndCallback:fe}}}function N(U,W){if(Array.isArray(U[0])?(U=U.map(function(le){return le.sort(e)}),W.multiselect?U=O(U.sort(y)):U=[U[0]]):U=[U.sort(e)],W.tickvals){var Q=W.tickvals.slice().sort(e);if(U=U.map(function(le){var se=[a(0,Q,le[0],[]),a(1,Q,le[1],[])];if(se[1]>se[0])return se}).filter(function(le){return le}),!U.length)return}return U.length>1?U:U[0]}H.exports={makeBrush:I,ensureAxisBrush:P,cleanRanges:N}}}),QR=Le({"src/traces/parcoords/defaults.js"(Z,H){"use strict";var g=ni(),x=ud().hasColorscale,A=th(),S=$u().defaults,e=Nh(),t=Zo(),r=XA(),o=ZA(),i=n1().maxDimensionCount,n=wb();function a(c,h,p,d,T){var l=T("line.color",p);if(x(c,"line")&&g.isArrayOrTypedArray(l)){if(l.length)return T("line.colorscale"),A(c,h,d,T,{prefix:"line.",cLetter:"c"}),l.length;h.line.color=p}return 1/0}function s(c,h,p,d){function T(E,m){return g.coerce(c,h,r.dimensions,E,m)}var l=T("values"),_=T("visible");if(l&&l.length||(_=h.visible=!1),_){T("label"),T("tickvals"),T("ticktext"),T("tickformat");var w=T("range");h._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:w},t.setConvert(h._ax,d.layout),T("multiselect");var M=T("constraintrange");M&&(h.constraintrange=o.cleanRanges(M,h))}}H.exports=function(h,p,d,T){function l(m,b){return g.coerce(h,p,r,m,b)}var _=h.dimensions;Array.isArray(_)&&_.length>i&&(g.log("parcoords traces support up to "+i+" dimensions at the moment"),_.splice(i));var w=e(h,p,{name:"dimensions",layout:T,handleItemDefaults:s}),M=a(h,p,d,T,l);S(p,T,l),(!Array.isArray(w)||!w.length)&&(p.visible=!1),n(p,w,"values",M);var E=g.extendFlat({},T.font,{size:Math.round(T.font.size/1.2)});g.coerceFont(l,"labelfont",E),g.coerceFont(l,"tickfont",E,{autoShadowDflt:!0}),g.coerceFont(l,"rangefont",E),l("labelangle"),l("labelside"),l("unselected.line.color"),l("unselected.line.opacity")}}}),eD=Le({"src/traces/parcoords/calc.js"(Z,H){"use strict";var g=ni().isArrayOrTypedArray,x=Cu(),A=Nv().wrap;H.exports=function(t,r){var o,i;return x.hasColorscale(r,"line")&&g(r.line.color)?(o=r.line.color,i=x.extractOpts(r.line).colorscale,x.calc(t,r,{vals:o,containerStr:"line",cLetter:"c"})):(o=S(r._length),i=[[0,r.line.color],[1,r.line.color]]),A({lineColor:o,cscale:i})};function S(e){for(var t=new Array(e),r=0;r>>16,(Z&65280)>>>8,Z&255],alpha:1};if(typeof Z=="number")return{space:"rgb",values:[Z>>>16,(Z&65280)>>>8,Z&255],alpha:1};if(Z=String(Z).toLowerCase(),Tb.default[Z])A=Tb.default[Z].slice(),e="rgb";else if(Z==="transparent")S=0,e="rgb",A=[0,0,0];else if(Z[0]==="#"){var t=Z.slice(1),r=t.length,o=r<=4;S=1,o?(A=[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16)],r===4&&(S=parseInt(t[3]+t[3],16)/255)):(A=[parseInt(t[0]+t[1],16),parseInt(t[2]+t[3],16),parseInt(t[4]+t[5],16)],r===8&&(S=parseInt(t[6]+t[7],16)/255)),A[0]||(A[0]=0),A[1]||(A[1]=0),A[2]||(A[2]=0),e="rgb"}else if(x=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(Z)){var i=x[1];e=i.replace(/a$/,"");var n=e==="cmyk"?4:e==="gray"?1:3;A=x[2].trim().split(/\s*[,\/]\s*|\s+/),e==="color"&&(e=A.shift()),A=A.map(function(a,s){if(a[a.length-1]==="%")return a=parseFloat(a)/100,s===3?a:e==="rgb"?a*255:e[0]==="h"||e[0]==="l"&&!s?a*100:e==="lab"?a*125:e==="lch"?s<2?a*150:a*360:e[0]==="o"&&!s?a:e==="oklab"?a*.4:e==="oklch"?s<2?a*.4:a*360:a;if(e[s]==="h"||s===2&&e[e.length-1]==="h"){if(Ab[a]!==void 0)return Ab[a];if(a.endsWith("deg"))return parseFloat(a);if(a.endsWith("turn"))return parseFloat(a)*360;if(a.endsWith("grad"))return parseFloat(a)*360/400;if(a.endsWith("rad"))return parseFloat(a)*180/Math.PI}return a==="none"?0:parseFloat(a)}),S=A.length>n?A.pop():1}else/[0-9](?:\s|\/|,)/.test(Z)&&(A=Z.match(/([0-9]+)/g).map(function(a){return parseFloat(a)}),e=((g=(H=Z.match(/([a-z])/ig))==null?void 0:H.join(""))==null?void 0:g.toLowerCase())||"rgb");return{space:e,values:A,alpha:S}}var Tb,YA,Ab,rD=Jr({"node_modules/color-parse/index.js"(){Tb=wn(KT(),1),YA=tD,Ab={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),a1,KA=Jr({"node_modules/color-space/rgb.js"(){a1={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),o1,iD=Jr({"node_modules/color-space/hsl.js"(){KA(),o1={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(Z){var H=Z[0]/360,g=Z[1]/100,x=Z[2]/100,A,S,e,t,r,o=0;if(g===0)return r=x*255,[r,r,r];for(S=x<.5?x*(1+g):x+g-x*g,A=2*x-S,t=[0,0,0];o<3;)e=H+1/3*-(o-1),e<0?e++:e>1&&e--,r=6*e<1?A+(S-A)*6*e:2*e<1?S:3*e<2?A+(S-A)*(2/3-e)*6:A,t[o++]=r*255;return t}},a1.hsl=function(Z){var H=Z[0]/255,g=Z[1]/255,x=Z[2]/255,A=Math.min(H,g,x),S=Math.max(H,g,x),e=S-A,t,r,o;return S===A?t=0:H===S?t=(g-x)/e:g===S?t=2+(x-H)/e:x===S&&(t=4+(H-g)/e),t=Math.min(t*60,360),t<0&&(t+=360),o=(A+S)/2,S===A?r=0:o<=.5?r=e/(S+A):r=e/(2-S-A),[t,r*100,o*100]}}}),$A={};Qi($A,{default:()=>nD});function nD(Z){Array.isArray(Z)&&Z.raw&&(Z=String.raw(...arguments)),Z instanceof Number&&(Z=+Z);var H,g,x,A=YA(Z);if(!A.space)return[];let S=A.space[0]==="h"?o1.min:a1.min,e=A.space[0]==="h"?o1.max:a1.max;return H=Array(3),H[0]=Math.min(Math.max(A.values[0],S[0]),e[0]),H[1]=Math.min(Math.max(A.values[1],S[1]),e[1]),H[2]=Math.min(Math.max(A.values[2],S[2]),e[2]),A.space[0]==="h"&&(H=o1.rgb(H)),H.push(Math.min(Math.max(A.alpha,0),1)),H}var aD=Jr({"node_modules/color-rgba/index.js"(){rD(),KA(),iD()}}),JA=Le({"src/traces/parcoords/helpers.js"(Z){"use strict";var H=ni().isTypedArray;Z.convertTypedArray=function(g){return H(g)?Array.prototype.slice.call(g):g},Z.isOrdinal=function(g){return!!g.tickvals},Z.isVisible=function(g){return g.visible||!("visible"in g)}}}),oD=Le({"src/traces/parcoords/lines.js"(Z,H){"use strict";var g=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` +`),x=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(` +`),A=n1().maxDimensionCount,S=ni(),e=1e-6,t=2048,r=new Uint8Array(4),o=new Uint8Array(4),i={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function n(b){b.read({x:0,y:0,width:1,height:1,data:r})}function a(b,v,u,y,f){var P=b._gl;P.enable(P.SCISSOR_TEST),P.scissor(v,u,y,f),b.clear({color:[0,0,0,0],depth:1})}function s(b,v,u,y,f,P){var L=P.key;function z(F){var O=Math.min(y,f-F*y);F===0&&(window.cancelAnimationFrame(u.currentRafs[L]),delete u.currentRafs[L],a(b,P.scissorX,P.scissorY,P.scissorWidth,P.viewBoxSize[1])),!u.clearOnly&&(P.count=2*O,P.offset=2*F*y,v(P),F*y+O>>8*v)%256/255}function d(b,v,u){for(var y=new Array(b*(A+4)),f=0,P=0;PIe&&(Ie=ae[ce].dim1.canvasX,we=ce);ne===0&&a(f,0,0,O.canvasWidth,O.canvasHeight);var Xe=G(u);for(ce=0;cece._length&&(ot=ot.slice(0,ce._length));var Me=ce.tickvals,pe;function ue(kt,Mt){return{val:kt,text:pe[Mt]}}function ze(kt,Mt){return kt.val-Mt.val}if(A(Me)&&Me.length){x.isTypedArray(Me)&&(Me=Array.from(Me)),pe=ce.ticktext,!A(pe)||!pe.length?pe=Me.map(S(ce.tickformat)):pe.length>Me.length?pe=pe.slice(0,Me.length):Me.length>pe.length&&(Me=Me.slice(0,pe.length));for(var Qe=1;Qe=Mt||nr>=Bt)return;var Lr=$e.lineLayer.readPixel(cr,Bt-1-nr),mr=Lr[3]!==0,xr=mr?Lr[2]+256*(Lr[1]+256*Lr[0]):null,mt={x:cr,y:nr,clientX:kt.clientX,clientY:kt.clientY,dataIndex:$e.model.key,curveNumber:xr};xr!==we&&(mr?J.hover(mt):J.unhover&&J.unhover(mt),we=xr)}}),_e.style("opacity",function($e){return $e.pick?0:1}),re.style("background","rgba(255, 255, 255, 0)");var Ie=re.selectAll("."+T.cn.parcoords).data(ce,c);Ie.exit().remove(),Ie.enter().append("g").classed(T.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),Ie.attr("transform",function($e){return o($e.model.translateX,$e.model.translateY)});var Xe=Ie.selectAll("."+T.cn.parcoordsControlView).data(h,c);Xe.enter().append("g").classed(T.cn.parcoordsControlView,!0),Xe.attr("transform",function($e){return o($e.model.pad.l,$e.model.pad.t)});var tt=Xe.selectAll("."+T.cn.yAxis).data(function($e){return $e.dimensions},c);tt.enter().append("g").classed(T.cn.yAxis,!0),Xe.each(function($e){N(tt,$e,j)}),_e.each(function($e){if($e.viewModel){!$e.lineLayer||J?$e.lineLayer=_(this,$e):$e.lineLayer.update($e),($e.key||$e.key===0)&&($e.viewModel[$e.key]=$e.lineLayer);var kt=!$e.context||J;$e.lineLayer.render($e.viewModel.panels,kt)}}),tt.attr("transform",function($e){return o($e.xScale($e.xIndex),0)}),tt.call(g.behavior.drag().origin(function($e){return $e}).on("drag",function($e){var kt=$e.parent;ne.linePickActive(!1),$e.x=Math.max(-T.overdrag,Math.min($e.model.width+T.overdrag,g.event.x)),$e.canvasX=$e.x*$e.model.canvasPixelRatio,tt.sort(function(Mt,Bt){return Mt.x-Bt.x}).each(function(Mt,Bt){Mt.xIndex=Bt,Mt.x=$e===Mt?Mt.x:Mt.xScale(Mt.xIndex),Mt.canvasX=Mt.x*Mt.model.canvasPixelRatio}),N(tt,kt,j),tt.filter(function(Mt){return Math.abs($e.xIndex-Mt.xIndex)!==0}).attr("transform",function(Mt){return o(Mt.xScale(Mt.xIndex),0)}),g.select(this).attr("transform",o($e.x,0)),tt.each(function(Mt,Bt,jt){jt===$e.parent.key&&(kt.dimensions[Bt]=Mt)}),kt.contextLayer&&kt.contextLayer.render(kt.panels,!1,!L(kt)),kt.focusLayer.render&&kt.focusLayer.render(kt.panels)}).on("dragend",function($e){var kt=$e.parent;$e.x=$e.xScale($e.xIndex),$e.canvasX=$e.x*$e.model.canvasPixelRatio,N(tt,kt,j),g.select(this).attr("transform",function(Mt){return o(Mt.x,0)}),kt.contextLayer&&kt.contextLayer.render(kt.panels,!1,!L(kt)),kt.focusLayer&&kt.focusLayer.render(kt.panels),kt.pickLayer&&kt.pickLayer.render(kt.panels,!0),ne.linePickActive(!0),J&&J.axesMoved&&J.axesMoved(kt.key,kt.dimensions.map(function(Mt){return Mt.crossfilterDimensionIndex}))})),tt.exit().remove();var rt=tt.selectAll("."+T.cn.axisOverlays).data(h,c);rt.enter().append("g").classed(T.cn.axisOverlays,!0),rt.selectAll("."+T.cn.axis).remove();var Je=rt.selectAll("."+T.cn.axis).data(h,c);Je.enter().append("g").classed(T.cn.axis,!0),Je.each(function($e){var kt=$e.model.height/$e.model.tickDistance,Mt=$e.domainScale,Bt=Mt.domain();g.select(this).call(g.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(kt,$e.tickFormat).tickValues($e.ordinal?Bt:null).tickFormat(function(jt){return d.isOrdinal($e)?jt:W($e.model.dimensions[$e.visibleIndex],jt)}).scale(Mt)),n.font(Je.selectAll("text"),$e.model.tickFont)}),Je.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),Je.selectAll("text").style("cursor","default");var ot=rt.selectAll("."+T.cn.axisHeading).data(h,c);ot.enter().append("g").classed(T.cn.axisHeading,!0);var Me=ot.selectAll("."+T.cn.axisTitle).data(h,c);Me.enter().append("text").classed(T.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",$?"none":"auto"),Me.text(function($e){return $e.label}).each(function($e){var kt=g.select(this);n.font(kt,$e.model.labelFont),i.convertToTspans(kt,se)}).attr("transform",function($e){var kt=I($e.model.labelAngle,$e.model.labelSide),Mt=T.axisTitleOffset;return(kt.dir>0?"":o(0,2*Mt+$e.model.height))+r(kt.degrees)+o(-Mt*kt.dx,-Mt*kt.dy)}).attr("text-anchor",function($e){var kt=I($e.model.labelAngle,$e.model.labelSide),Mt=Math.abs(kt.dx),Bt=Math.abs(kt.dy);return 2*Mt>Bt?kt.dir*kt.dx<0?"start":"end":"middle"});var pe=rt.selectAll("."+T.cn.axisExtent).data(h,c);pe.enter().append("g").classed(T.cn.axisExtent,!0);var ue=pe.selectAll("."+T.cn.axisExtentTop).data(h,c);ue.enter().append("g").classed(T.cn.axisExtentTop,!0),ue.attr("transform",o(0,-T.axisExtentOffset));var ze=ue.selectAll("."+T.cn.axisExtentTopText).data(h,c);ze.enter().append("text").classed(T.cn.axisExtentTopText,!0).call(O),ze.text(function($e){return Q($e,!0)}).each(function($e){n.font(g.select(this),$e.model.rangeFont)});var Qe=pe.selectAll("."+T.cn.axisExtentBottom).data(h,c);Qe.enter().append("g").classed(T.cn.axisExtentBottom,!0),Qe.attr("transform",function($e){return o(0,$e.model.height+T.axisExtentOffset)});var it=Qe.selectAll("."+T.cn.axisExtentBottomText).data(h,c);it.enter().append("text").classed(T.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(O),it.text(function($e){return Q($e,!1)}).each(function($e){n.font(g.select(this),$e.model.rangeFont)}),l.ensureAxisBrush(rt,ee,se)}}}),QA=Le({"src/traces/parcoords/plot.js"(r,H){"use strict";var g=sD(),x=bb(),A=JA().isVisible,S={};function e(o,i,n){var a=i.indexOf(n),s=o.indexOf(a);return s===-1&&(s+=i.length),s}function t(o,i){return function(a,s){return e(o,i,a)-e(o,i,s)}}var r=H.exports=function(i,n){var a=i._fullLayout,s=x(i,[],S);if(s){var c={},h={},p={},d={},T=a._size;n.forEach(function(E,m){var b=E[0].trace;p[m]=b.index;var v=d[m]=b.index;c[m]=i.data[v].dimensions,h[m]=i.data[v].dimensions.slice()});var l=function(E,m,b){var v=h[E][m],u=b.map(function(F){return F.slice()}),y="dimensions["+m+"].constraintrange",f=a._tracePreGUI[i._fullData[p[E]]._fullInput.uid];if(f[y]===void 0){var P=v.constraintrange;f[y]=P||null}var L=i._fullData[p[E]].dimensions[m];u.length?(u.length===1&&(u=u[0]),v.constraintrange=u,L.constraintrange=u.slice(),u=[u]):(delete v.constraintrange,delete L.constraintrange,u=null);var z={};z[y]=u,i.emit("plotly_restyle",[z,[d[E]]])},_=function(E){i.emit("plotly_hover",E)},w=function(E){i.emit("plotly_unhover",E)},M=function(E,m){var b=t(m,h[E].filter(A));c[E].sort(b),h[E].filter(function(v){return!A(v)}).sort(function(v){return h[E].indexOf(v)}).forEach(function(v){c[E].splice(c[E].indexOf(v),1),c[E].splice(h[E].indexOf(v),0,v)}),i.emit("plotly_restyle",[{dimensions:[c[E]]},[d[E]]])};g(i,n,{width:T.w,height:T.h,margin:{t:T.t,r:T.r,b:T.b,l:T.l}},{filterChanged:l,hover:_,unhover:w,axesMoved:M})}};r.reglPrecompiled=S}}),lD=Le({"src/traces/parcoords/base_plot.js"(Z){"use strict";var H=Ji(),g=Mh().getModuleCalcData,x=QA(),A=Bd();Z.name="parcoords",Z.plot=function(S){var e=g(S.calcdata,"parcoords")[0];e.length&&x(S,e)},Z.clean=function(S,e,t,r){var o=r._has&&r._has("parcoords"),i=e._has&&e._has("parcoords");o&&!i&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},Z.toSVG=function(S){var e=S._fullLayout._glimages,t=H.select(S).selectAll(".svg-container"),r=t.filter(function(i,n){return n===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function o(){var i=this,n=i.toDataURL("image/png"),a=e.append("svg:image");a.attr({xmlns:A.svg,"xlink:href":n,preserveAspectRatio:"none",x:0,y:0,width:i.style.width,height:i.style.height})}r.each(o),window.setTimeout(function(){H.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}}}),uD=Le({"src/traces/parcoords/base_index.js"(Z,H){"use strict";H.exports={attributes:XA(),supplyDefaults:QR(),calc:eD(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:lD(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),cD=Le({"src/traces/parcoords/index.js"(Z,H){"use strict";var g=uD();g.plot=QA(),H.exports=g}}),fD=Le({"lib/parcoords.js"(Z,H){"use strict";H.exports=cD()}}),eM=Le({"src/traces/parcats/attributes.js"(Z,H){"use strict";var g=ho().extendFlat,x=Sl(),A=bl(),S=uu(),e=Fs().hovertemplateAttrs,t=$u().attributes,r=g({editType:"calc"},S("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});H.exports={domain:t({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:g({},x.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:A({editType:"calc"}),tickfont:A({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:r,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),hD=Le({"src/traces/parcats/defaults.js"(Z,H){"use strict";var g=ni(),x=ud().hasColorscale,A=th(),S=$u().defaults,e=Nh(),t=eM(),r=wb(),o=cl().isTypedArraySpec;function i(a,s,c,h,p){p("line.shape"),p("line.hovertemplate");var d=p("line.color",h.colorway[0]);if(x(a,"line")&&g.isArrayOrTypedArray(d)){if(d.length)return p("line.colorscale"),A(a,s,h,p,{prefix:"line.",cLetter:"c"}),d.length;s.line.color=c}return 1/0}function n(a,s){function c(w,M){return g.coerce(a,s,t.dimensions,w,M)}var h=c("values"),p=c("visible");if(h&&h.length||(p=s.visible=!1),p){c("label"),c("displayindex",s._index);var d=a.categoryarray,T=g.isArrayOrTypedArray(d)&&d.length>0||o(d),l;T&&(l="array");var _=c("categoryorder",l);_==="array"?(c("categoryarray"),c("ticktext")):(delete a.categoryarray,delete a.ticktext),!T&&_==="array"&&(s.categoryorder="trace")}}H.exports=function(s,c,h,p){function d(w,M){return g.coerce(s,c,t,w,M)}var T=e(s,c,{name:"dimensions",handleItemDefaults:n}),l=i(s,c,h,p,d);S(c,p,d),(!Array.isArray(T)||!T.length)&&(c.visible=!1),r(c,T,"values",l),d("hoveron"),d("hovertemplate"),d("arrangement"),d("bundlecolors"),d("sortpaths"),d("counts");var _=p.font;g.coerceFont(d,"labelfont",_,{overrideDflt:{size:Math.round(_.size)}}),g.coerceFont(d,"tickfont",_,{autoShadowDflt:!0,overrideDflt:{size:Math.round(_.size/1.2)}})}}}),dD=Le({"src/traces/parcats/calc.js"(Z,H){"use strict";var g=Nv().wrap,x=ud().hasColorscale,A=cd(),S=Bw(),e=rs(),t=ni(),r=zn();H.exports=function(_,w){var M=t.filterVisible(w.dimensions);if(M.length===0)return[];var E=M.map(function(G){var J;if(G.categoryorder==="trace")J=null;else if(G.categoryorder==="array")J=G.categoryarray;else{J=S(G.values);for(var $=!0,X=0;X=l.length||_[l[w]]!==void 0)return!1;_[l[w]]=!0}return!0}}}),vD=Le({"src/traces/parcats/parcats.js"(Z,H){"use strict";var g=Ji(),x=(ig(),Wi(tm)).interpolateNumber,A=C_(),S=Dc(),e=ni(),t=e.strTranslate,r=rs(),o=Vl(),i=$l();function n(X,re,ae,j){var ee=re._context.staticPlot,ne=X.map(se.bind(0,re,ae)),ce=j.selectAll("g.parcatslayer").data([null]);ce.enter().append("g").attr("class","parcatslayer").style("pointer-events",ee?"none":"all");var _e=ce.selectAll("g.trace.parcats").data(ne,a),we=_e.enter().append("g").attr("class","trace parcats");_e.attr("transform",function(ue){return t(ue.x,ue.y)}),we.append("g").attr("class","paths");var Oe=_e.select("g.paths"),Ie=Oe.selectAll("path.path").data(function(ue){return ue.paths},a);Ie.attr("fill",function(ue){return ue.model.color});var Xe=Ie.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(ue){return ue.model.color}).attr("fill-opacity",0);_(Xe),Ie.attr("d",function(ue){return ue.svgD}),Xe.empty()||Ie.sort(c),Ie.exit().remove(),Ie.on("mouseover",h).on("mouseout",p).on("click",l),we.append("g").attr("class","dimensions");var tt=_e.select("g.dimensions"),rt=tt.selectAll("g.dimension").data(function(ue){return ue.dimensions},a);rt.enter().append("g").attr("class","dimension"),rt.attr("transform",function(ue){return t(ue.x,0)}),rt.exit().remove();var Je=rt.selectAll("g.category").data(function(ue){return ue.categories},a),ot=Je.enter().append("g").attr("class","category");Je.attr("transform",function(ue){return t(0,ue.y)}),ot.append("rect").attr("class","catrect").attr("pointer-events","none"),Je.select("rect.catrect").attr("fill","none").attr("width",function(ue){return ue.width}).attr("height",function(ue){return ue.height}),E(ot);var Me=Je.selectAll("rect.bandrect").data(function(ue){return ue.bands},a);Me.each(function(){e.raiseToTop(this)}),Me.attr("fill",function(ue){return ue.color});var pe=Me.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(ue){return ue.color}).attr("fill-opacity",0);Me.attr("fill",function(ue){return ue.color}).attr("width",function(ue){return ue.width}).attr("height",function(ue){return ue.height}).attr("y",function(ue){return ue.y}).attr("cursor",function(ue){return ue.parcatsViewModel.arrangement==="fixed"?"default":ue.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),b(pe),Me.exit().remove(),ot.append("text").attr("class","catlabel").attr("pointer-events","none"),Je.select("text.catlabel").attr("text-anchor",function(ue){return s(ue)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(ue){return s(ue)?ue.width+5:-5}).attr("y",function(ue){return ue.height/2}).text(function(ue){return ue.model.categoryLabel}).each(function(ue){r.font(g.select(this),ue.parcatsViewModel.categorylabelfont),i.convertToTspans(g.select(this),re)}),ot.append("text").attr("class","dimlabel"),Je.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(ue){return ue.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(ue){return ue.width/2}).attr("y",-5).text(function(ue,ze){return ze===0?ue.parcatsViewModel.model.dimensions[ue.model.dimensionInd].dimensionLabel:null}).each(function(ue){r.font(g.select(this),ue.parcatsViewModel.labelfont)}),Je.selectAll("rect.bandrect").on("mouseover",O).on("mouseout",B),Je.exit().remove(),rt.call(g.behavior.drag().origin(function(ue){return{x:ue.x,y:0}}).on("dragstart",I).on("drag",N).on("dragend",U)),_e.each(function(ue){ue.traceSelection=g.select(this),ue.pathSelection=g.select(this).selectAll("g.paths").selectAll("path.path"),ue.dimensionSelection=g.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),_e.exit().remove()}H.exports=function(X,re,ae,j){n(ae,X,j,re)};function a(X){return X.key}function s(X){var re=X.parcatsViewModel.dimensions.length,ae=X.parcatsViewModel.dimensions[re-1].model.dimensionInd;return X.model.dimensionInd===ae}function c(X,re){return X.model.rawColor>re.model.rawColor?1:X.model.rawColor"),$e=g.mouse(ee)[0];S.loneHover({trace:ne,x:Je-_e.left+we.left,y:ot-_e.top+we.top,text:it,color:X.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:$e1&&Oe.displayInd===we.dimensions.length-1?(tt=ce.left,rt="left"):(tt=ce.left+ce.width,rt="right");var Je=_e.model.count,ot=_e.model.categoryLabel,Me=Je/_e.parcatsViewModel.model.count,pe={countLabel:Je,categoryLabel:ot,probabilityLabel:Me.toFixed(3)},ue=[];_e.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&ue.push(["Count:",pe.countLabel].join(" ")),_e.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&ue.push(["P("+pe.categoryLabel+"):",pe.probabilityLabel].join(" "));var ze=ue.join("
");return{trace:Ie,x:j*(tt-re.left),y:ee*(Xe-re.top),text:ze,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:rt,hovertemplate:Ie.hovertemplate,hovertemplateLabels:pe,eventData:[{data:Ie._input,fullData:Ie,count:Je,category:ot,probability:Me}]}}function z(X,re,ae){var j=[];return g.select(ae.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var ee=this;j.push(L(X,re,ee))}),j}function F(X,re,ae){X._fullLayout._calcInverseTransform(X);var j=X._fullLayout._invScaleX,ee=X._fullLayout._invScaleY,ne=ae.getBoundingClientRect(),ce=g.select(ae).datum(),_e=ce.categoryViewModel,we=_e.parcatsViewModel,Oe=we.model.dimensions[_e.model.dimensionInd],Ie=we.trace,Xe=ne.y+ne.height/2,tt,rt;we.dimensions.length>1&&Oe.displayInd===we.dimensions.length-1?(tt=ne.left,rt="left"):(tt=ne.left+ne.width,rt="right");var Je=_e.model.categoryLabel,ot=ce.parcatsViewModel.model.count,Me=0;ce.categoryViewModel.bands.forEach(function(jt){jt.color===ce.color&&(Me+=jt.count)});var pe=_e.model.count,ue=0;we.pathSelection.each(function(jt){jt.model.color===ce.color&&(ue+=jt.model.count)});var ze=Me/ot,Qe=Me/ue,it=Me/pe,$e={countLabel:Me,categoryLabel:Je,probabilityLabel:ze.toFixed(3)},kt=[];_e.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&kt.push(["Count:",$e.countLabel].join(" ")),_e.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(kt.push("P(color \u2229 "+Je+"): "+$e.probabilityLabel),kt.push("P("+Je+" | color): "+Qe.toFixed(3)),kt.push("P(color | "+Je+"): "+it.toFixed(3)));var Mt=kt.join("
"),Bt=o.mostReadable(ce.color,["black","white"]);return{trace:Ie,x:j*(tt-re.left),y:ee*(Xe-re.top),text:Mt,color:ce.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:Bt,fontSize:10,idealAlign:rt,hovertemplate:Ie.hovertemplate,hovertemplateLabels:$e,eventData:[{data:Ie._input,fullData:Ie,category:Je,count:ot,probability:ze,categorycount:pe,colorcount:ue,bandcolorcount:Me}]}}function O(X){if(!X.parcatsViewModel.dragDimension&&X.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=g.mouse(this)[1];if(re<-1)return;var ae=X.parcatsViewModel.graphDiv,j=ae._fullLayout,ee=j._paperdiv.node().getBoundingClientRect(),ne=X.parcatsViewModel.hoveron,ce=this;if(ne==="color"?(y(ce),P(ce,"plotly_hover",g.event)):(u(ce),f(ce,"plotly_hover",g.event)),X.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var _e;ne==="category"?_e=L(ae,ee,ce):ne==="color"?_e=F(ae,ee,ce):ne==="dimension"&&(_e=z(ae,ee,ce)),_e&&S.loneHover(_e,{container:j._hoverlayer.node(),outerContainer:j._paper.node(),gd:ae})}}}function B(X){var re=X.parcatsViewModel;if(!re.dragDimension&&(_(re.pathSelection),E(re.dimensionSelection.selectAll("g.category")),b(re.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),S.loneUnhover(re.graphDiv._fullLayout._hoverlayer.node()),re.pathSelection.sort(c),re.hoverinfoItems.indexOf("skip")===-1)){var ae=X.parcatsViewModel.hoveron,j=this;ae==="color"?P(j,"plotly_unhover",g.event):f(j,"plotly_unhover",g.event)}}function I(X){X.parcatsViewModel.arrangement!=="fixed"&&(X.dragDimensionDisplayInd=X.model.displayInd,X.initialDragDimensionDisplayInds=X.parcatsViewModel.model.dimensions.map(function(re){return re.displayInd}),X.dragHasMoved=!1,X.dragCategoryDisplayInd=null,g.select(this).selectAll("g.category").select("rect.catrect").each(function(re){var ae=g.mouse(this)[0],j=g.mouse(this)[1];-2<=ae&&ae<=re.width+2&&-2<=j&&j<=re.height+2&&(X.dragCategoryDisplayInd=re.model.displayInd,X.initialDragCategoryDisplayInds=X.model.categories.map(function(ee){return ee.displayInd}),re.model.dragY=re.y,e.raiseToTop(this.parentNode),g.select(this.parentNode).selectAll("rect.bandrect").each(function(ee){ee.yIe.y+Ie.height/2&&(ne.model.displayInd=Ie.model.displayInd,Ie.model.displayInd=_e),X.dragCategoryDisplayInd=ne.model.displayInd}if(X.dragCategoryDisplayInd===null||X.parcatsViewModel.arrangement==="freeform"){ee.model.dragX=g.event.x;var Xe=X.parcatsViewModel.dimensions[ae],tt=X.parcatsViewModel.dimensions[j];Xe!==void 0&&ee.model.dragXtt.x&&(ee.model.displayInd=tt.model.displayInd,tt.model.displayInd=X.dragDimensionDisplayInd),X.dragDimensionDisplayInd=ee.model.displayInd}J(X.parcatsViewModel),G(X.parcatsViewModel),le(X.parcatsViewModel),Q(X.parcatsViewModel)}}function U(X){if(X.parcatsViewModel.arrangement!=="fixed"&&X.dragDimensionDisplayInd!==null){g.select(this).selectAll("text").attr("font-weight","normal");var re={},ae=W(X.parcatsViewModel),j=X.parcatsViewModel.model.dimensions.map(function(tt){return tt.displayInd}),ee=X.initialDragDimensionDisplayInds.some(function(tt,rt){return tt!==j[rt]});ee&&j.forEach(function(tt,rt){var Je=X.parcatsViewModel.model.dimensions[rt].containerInd;re["dimensions["+Je+"].displayindex"]=tt});var ne=!1;if(X.dragCategoryDisplayInd!==null){var ce=X.model.categories.map(function(tt){return tt.displayInd});if(ne=X.initialDragCategoryDisplayInds.some(function(tt,rt){return tt!==ce[rt]}),ne){var _e=X.model.categories.slice().sort(function(tt,rt){return tt.displayInd-rt.displayInd}),we=_e.map(function(tt){return tt.categoryValue}),Oe=_e.map(function(tt){return tt.categoryLabel});re["dimensions["+X.model.containerInd+"].categoryarray"]=[we],re["dimensions["+X.model.containerInd+"].ticktext"]=[Oe],re["dimensions["+X.model.containerInd+"].categoryorder"]="array"}}if(X.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!X.dragHasMoved&&X.potentialClickBand&&(X.parcatsViewModel.hoveron==="color"?P(X.potentialClickBand,"plotly_click",g.event.sourceEvent):f(X.potentialClickBand,"plotly_click",g.event.sourceEvent)),X.model.dragX=null,X.dragCategoryDisplayInd!==null){var Ie=X.parcatsViewModel.dimensions[X.dragDimensionDisplayInd].categories[X.dragCategoryDisplayInd];Ie.model.dragY=null,X.dragCategoryDisplayInd=null}X.dragDimensionDisplayInd=null,X.parcatsViewModel.dragDimension=null,X.dragHasMoved=null,X.potentialClickBand=null,J(X.parcatsViewModel),G(X.parcatsViewModel);var Xe=g.transition().duration(300).ease("cubic-in-out");Xe.each(function(){le(X.parcatsViewModel,!0),Q(X.parcatsViewModel,!0)}).each("end",function(){(ee||ne)&&A.restyle(X.parcatsViewModel.graphDiv,re,[ae])})}}function W(X){for(var re,ae=X.graphDiv._fullData,j=0;j=0;we--)Oe+="C"+ce[we]+","+(re[we+1]+j)+" "+ne[we]+","+(re[we]+j)+" "+(X[we]+ae[we])+","+(re[we]+j),Oe+="l-"+ae[we]+",0 ";return Oe+="Z",Oe}function G(X){var re=X.dimensions,ae=X.model,j=re.map(function(Lr){return Lr.categories.map(function(mr){return mr.y})}),ee=X.model.dimensions.map(function(Lr){return Lr.categories.map(function(mr){return mr.displayInd})}),ne=X.model.dimensions.map(function(Lr){return Lr.displayInd}),ce=X.dimensions.map(function(Lr){return Lr.model.dimensionInd}),_e=re.map(function(Lr){return Lr.x}),we=re.map(function(Lr){return Lr.width}),Oe=[];for(var Ie in ae.paths)ae.paths.hasOwnProperty(Ie)&&Oe.push(ae.paths[Ie]);function Xe(Lr){var mr=Lr.categoryInds.map(function(mt,Fe){return ee[Fe][mt]}),xr=ce.map(function(mt){return mr[mt]});return xr}Oe.sort(function(Lr,mr){var xr=Xe(Lr),mt=Xe(mr);return X.sortpaths==="backward"&&(xr.reverse(),mt.reverse()),xr.push(Lr.valueInds[0]),mt.push(mr.valueInds[0]),X.bundlecolors&&(xr.unshift(Lr.rawColor),mt.unshift(mr.rawColor)),xrmt?1:0});for(var tt=new Array(Oe.length),rt=re[0].model.count,Je=re[0].categories.map(function(Lr){return Lr.height}).reduce(function(Lr,mr){return Lr+mr}),ot=0;ot0?pe=Je*(Me.count/rt):pe=0;for(var ue=new Array(j.length),ze=0;ze1?ce=(X.width-2*ae-j)/(ee-1):ce=0,_e=ae,we=_e+ce*ne;var Oe=[],Ie=X.model.maxCats,Xe=re.categories.length,tt=8,rt=re.count,Je=X.height-tt*(Ie-1),ot,Me,pe,ue,ze,Qe=(Ie-Xe)*tt/2,it=re.categories.map(function($e){return{displayInd:$e.displayInd,categoryInd:$e.categoryInd}});for(it.sort(function($e,kt){return $e.displayInd-kt.displayInd}),ze=0;ze0?ot=Me.count/rt*Je:ot=0,pe={key:Me.valueInds[0],model:Me,width:j,height:ot,y:Me.dragY!==null?Me.dragY:Qe,bands:[],parcatsViewModel:X},Qe=Qe+ot+tt,Oe.push(pe);return{key:re.dimensionInd,x:re.dragX!==null?re.dragX:we,y:0,width:j,model:re,categories:Oe,parcatsViewModel:X,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}}}),tM=Le({"src/traces/parcats/plot.js"(Z,H){"use strict";var g=vD();H.exports=function(A,S,e,t){var r=A._fullLayout,o=r._paper,i=r._size;g(A,o,S,{width:i.w,height:i.h,margin:{t:i.t,r:i.r,b:i.b,l:i.l}},e,t)}}}),pD=Le({"src/traces/parcats/base_plot.js"(Z){"use strict";var H=Mh().getModuleCalcData,g=tM(),x="parcats";Z.name=x,Z.plot=function(A,S,e,t){var r=H(A.calcdata,x);if(r.length){var o=r[0];g(A,o,e,t)}},Z.clean=function(A,S,e,t){var r=t._has&&t._has("parcats"),o=S._has&&S._has("parcats");r&&!o&&t._paperdiv.selectAll(".parcats").remove()}}}),mD=Le({"src/traces/parcats/index.js"(Z,H){"use strict";H.exports={attributes:eM(),supplyDefaults:hD(),calc:dD(),plot:tM(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:pD(),categories:["noOpacity"],meta:{}}}}),gD=Le({"lib/parcats.js"(Z,H){"use strict";H.exports=mD()}}),yp=Le({"src/plots/mapbox/constants.js"(Z,H){"use strict";var g=Up(),x="1.13.4",A='\xA9 OpenStreetMap contributors',S=['\xA9 Carto',A].join(" "),e=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),t=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),r={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:A,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:S,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:S,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:t,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},o=g(r);H.exports={requiredVersion:x,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:r,styleValuesNonMapbox:o,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+x+"."].join(` +`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(` +`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",o.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` +`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(` +`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}}}),s1=Le({"src/plots/mapbox/layout_attributes.js"(Z,H){"use strict";var g=ni(),x=$a().defaultLine,A=$u().attributes,S=bl(),e=zc().textposition,t=qu().overrideAll,r=wl().templatedArray,o=yp(),i=S({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});i.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var n=H.exports=t({_arrayAttrRegexps:[g.counterRegex("mapbox",".layers",!0)],domain:A({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:o.styleValuesMapbox.concat(o.styleValuesNonMapbox),dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:i,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");n.uirevision={valType:"any",editType:"none"}}}),Mb=Le({"src/traces/scattermapbox/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=Fs().texttemplateAttrs,A=dv(),S=ag(),e=zc(),t=s1(),r=Sl(),o=uu(),i=ho().extendFlat,n=qu().overrideAll,a=s1(),s=S.line,c=S.marker;H.exports=n({lon:S.lon,lat:S.lat,cluster:{enabled:{valType:"boolean"},maxzoom:i({},a.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:i({},c.opacity,{dflt:1})},mode:i({},e.mode,{dflt:"markers"}),text:i({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:i({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:i({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:S.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:i({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),rM=Le({"src/traces/scattermapbox/constants.js"(Z,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),yD=Le({"src/traces/scattermapbox/defaults.js"(Z,H){"use strict";var g=ni(),x=gu(),A=Od(),S=Wd(),e=Xd(),t=pv(),r=Mb(),o=rM().isSupportedFont;H.exports=function(a,s,c,h){function p(y,f){return g.coerce(a,s,r,y,f)}function d(y,f){return g.coerce2(a,s,r,y,f)}var T=i(a,s,p);if(!T){s.visible=!1;return}if(p("text"),p("texttemplate"),p("hovertext"),p("hovertemplate"),p("mode"),p("below"),x.hasMarkers(s)){A(a,s,c,h,p,{noLine:!0,noAngle:!0}),p("marker.allowoverlap"),p("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(S(a,s,c,h,p,{noDash:!0}),p("connectgaps"));var _=d("cluster.maxzoom"),w=d("cluster.step"),M=d("cluster.color",s.marker&&s.marker.color||c),E=d("cluster.size"),m=d("cluster.opacity"),b=_!==!1||w!==!1||M!==!1||E!==!1||m!==!1,v=p("cluster.enabled",b);if(v||x.hasText(s)){var u=h.font.family;e(a,s,h,p,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}p("fill"),s.fill!=="none"&&t(a,s,c,p),g.coerceSelectionMarkerOpacity(s,p)};function i(n,a,s){var c=s("lon")||[],h=s("lat")||[],p=Math.min(c.length,h.length);return a._length=p,p}}}),iM=Le({"src/traces/scattermapbox/format_labels.js"(Z,H){"use strict";var g=Zo();H.exports=function(A,S,e){var t={},r=e[S.subplot]._subplot,o=r.mockAxis,i=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(i[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(i[1]),!0).text,t}}}),nM=Le({"src/plots/mapbox/convert_text_opts.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(S)?g.mean(S):S,i=.5+o/100,n=1.5+o/100,a=["",""],s=[0,0];switch(t){case"top":a[0]="top",s[1]=-n;break;case"bottom":a[0]="bottom",s[1]=n;break}switch(r){case"left":a[1]="right",s[0]=-i;break;case"right":a[1]="left",s[0]=i;break}var c;return a[0]&&a[1]?c=a.join("-"):a[0]?c=a[0]:a[1]?c=a[1]:c="center",{anchor:c,offset:s}}}}),_D=Le({"src/traces/scattermapbox/convert.js"(Z,H){"use strict";var g=zn(),x=ni(),A=$n().BADNUM,S=nm(),e=Cu(),t=rs(),r=Yg(),o=gu(),i=rM().isSupportedFont,n=nM(),a=Td().appendArrayPointValue,s=$l().NEWLINES,c=$l().BR_TAG_ALL;H.exports=function(m,b){var v=b[0].trace,u=v.visible===!0&&v._length!==0,y=v.fill!=="none",f=o.hasLines(v),P=o.hasMarkers(v),L=o.hasText(v),z=P&&v.marker.symbol==="circle",F=P&&v.marker.symbol!=="circle",O=v.cluster&&v.cluster.enabled,B=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:B,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=S.calcTraceToLineCoords(b)),y&&(B.geojson=S.makePolygon(Q),B.layout.visibility="visible",x.extendFlat(B.paint,{"fill-color":v.fillcolor})),f&&(I.geojson=S.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":v.line.width,"line-color":v.line.color,"line-opacity":v.opacity})),z){var le=p(b);N.geojson=le.geojson,N.layout.visibility="visible",O&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(v.cluster.color,v.cluster.step),"circle-radius":w(v.cluster.size,v.cluster.step),"circle-opacity":w(v.cluster.opacity,v.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":M(v),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":le.mcc,"circle-radius":le.mrc,"circle-opacity":le.mo})}if(z&&O&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=d(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":v.marker.size/10}),"angle"in v.marker&&v.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=v.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":v.opacity*v.marker.opacity,"icon-color":v.marker.color})),L)){var se=(v.marker||{}).size,fe=n(v.textposition,se);x.extendFlat(U.layout,{"text-size":v.textfont.size,"text-anchor":fe.anchor,"text-offset":fe.offset,"text-font":M(v)}),x.extendFlat(U.paint,{"text-color":v.textfont.color,"text-opacity":v.opacity})}return W};function h(E){return{type:E,geojson:S.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function p(E){var m=E[0].trace,b=m.marker,v=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var O;y&&(O=r(m));var B;f&&(B=function(se){var fe=g(se)?+x.constrain(se,0,1):0;return L(fe)});var I=[];for(P=0;P850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),i(P)||(P=b);var L=P.split(", ");return L}}}),xD=Le({"src/traces/scattermapbox/plot.js"(Z,H){"use strict";var g=ni(),x=_D(),A=yp().traceLayerPrefix,S={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,i,n){this.type="scattermapbox",this.subplot=r,this.uid=o,this.clusterEnabled=i,this.isHidden=n,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,i){var n={type:"geojson",data:o.geojson};i&&i.enabled&&g.extendFlat(n,{cluster:!0,clusterMaxZoom:i.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[r]);a?a.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],n)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,i){var n={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(n.filter=o.filter);for(var a=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h=0;f--){var P=y[f];a.removeLayer(d.layerIds[P])}u||a.removeSource(d.sourceIds.circle)}function _(u){for(var y=S.nonCluster,f=0;f=0;f--){var P=y[f];a.removeLayer(d.layerIds[P]),u||a.removeSource(d.sourceIds[P])}}function M(u){p?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?S.cluster:S.nonCluster,y=0;y=0;n--){var a=i[n];o.removeLayer(this.layerIds[a]),o.removeSource(this.sourceIds[a])}},H.exports=function(o,i){var n=i[0].trace,a=n.cluster&&n.cluster.enabled,s=n.visible!==!0,c=new e(o,n.uid,a,s),h=x(o.gd,i),p=c.below=o.belowLookup["trace-"+n.uid],d,T,l;if(a)for(c.addSource("circle",h.circle,n.cluster),d=0;d=0?Math.floor((n+180)/360):Math.ceil((n-180)/360),E=M*360,m=n-E;function b(O){var B=O.lonlat;if(B[0]===e||_&&T.indexOf(O.i+1)===-1)return 1/0;var I=x.modHalf(B[0],360),N=B[1],U=d.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-p.c2p([I,a]),le=Math.max(3,O.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-le,1-3/le)}if(g.getClosest(s,b,i),i.index!==!1){var v=s[i.index],u=v.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=p.c2p(y),L=v.mrc||1;i.x0=f-L,i.x1=f+L,i.y0=P-L,i.y1=P+L;var z={};z[c.subplot]={_subplot:d};var F=c._module.formatLabels(v,c,z);return i.lonLabel=F.lonLabel,i.latLabel=F.latLabel,i.color=A(c,v),i.extraText=o(c,v,s[0].t.labels),i.hovertemplate=c.hovertemplate,[i]}}function o(i,n,a){if(i.hovertemplate)return;var s=n.hi||i.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,p=c.indexOf("lon")!==-1,d=c.indexOf("lat")!==-1,T=n.lonlat,l=[];function _(w){return w+"\xB0"}return h||p&&d?l.push("("+_(T[1])+", "+_(T[0])+")"):p?l.push(a.lon+_(T[0])):d&&l.push(a.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&S(n,i,l),l.join("
")}H.exports={hoverPoints:r,getExtraText:o}}}),bD=Le({"src/traces/scattermapbox/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),wD=Le({"src/traces/scattermapbox/select.js"(Z,H){"use strict";var g=ni(),x=gu(),A=$n().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,i=e.yaxis,n=[],a=r[0].trace,s;if(!x.hasMarkers(a))return[];if(t===!1)for(s=0;s"u"&&(C=1e-6);var V,oe,ge,Pe,je;for(ge=k,je=0;je<8;je++){if(Pe=this.sampleCurveX(ge)-k,Math.abs(Pe)oe)return oe;for(;VPe?V=ge:oe=ge,ge=(oe-V)*.5+V}return ge},i.prototype.solve=function(k,C){return this.sampleCurveY(this.solveCurveX(k,C))};var n=a;function a(k,C){this.x=k,this.y=C}a.prototype={clone:function(){return new a(this.x,this.y)},add:function(k){return this.clone()._add(k)},sub:function(k){return this.clone()._sub(k)},multByPoint:function(k){return this.clone()._multByPoint(k)},divByPoint:function(k){return this.clone()._divByPoint(k)},mult:function(k){return this.clone()._mult(k)},div:function(k){return this.clone()._div(k)},rotate:function(k){return this.clone()._rotate(k)},rotateAround:function(k,C){return this.clone()._rotateAround(k,C)},matMult:function(k){return this.clone()._matMult(k)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(k){return this.x===k.x&&this.y===k.y},dist:function(k){return Math.sqrt(this.distSqr(k))},distSqr:function(k){var C=k.x-this.x,V=k.y-this.y;return C*C+V*V},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(k){return Math.atan2(this.y-k.y,this.x-k.x)},angleWith:function(k){return this.angleWithSep(k.x,k.y)},angleWithSep:function(k,C){return Math.atan2(this.x*C-this.y*k,this.x*k+this.y*C)},_matMult:function(k){var C=k[0]*this.x+k[1]*this.y,V=k[2]*this.x+k[3]*this.y;return this.x=C,this.y=V,this},_add:function(k){return this.x+=k.x,this.y+=k.y,this},_sub:function(k){return this.x-=k.x,this.y-=k.y,this},_mult:function(k){return this.x*=k,this.y*=k,this},_div:function(k){return this.x/=k,this.y/=k,this},_multByPoint:function(k){return this.x*=k.x,this.y*=k.y,this},_divByPoint:function(k){return this.x/=k.x,this.y/=k.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var k=this.y;return this.y=this.x,this.x=-k,this},_rotate:function(k){var C=Math.cos(k),V=Math.sin(k),oe=C*this.x-V*this.y,ge=V*this.x+C*this.y;return this.x=oe,this.y=ge,this},_rotateAround:function(k,C){var V=Math.cos(k),oe=Math.sin(k),ge=C.x+V*(this.x-C.x)-oe*(this.y-C.y),Pe=C.y+oe*(this.x-C.x)+V*(this.y-C.y);return this.x=ge,this.y=Pe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},a.convert=function(k){return k instanceof a?k:Array.isArray(k)?new a(k[0],k[1]):k};var s=typeof self<"u"?self:{};function c(k,C){if(Array.isArray(k)){if(!Array.isArray(C)||k.length!==C.length)return!1;for(var V=0;V=1)return 1;var C=k*k,V=C*k;return 4*(k<.5?V:3*(k-C)+V-.75)}function d(k,C,V,oe){var ge=new o(k,C,V,oe);return function(Pe){return ge.solve(Pe)}}var T=d(.25,.1,.25,1);function l(k,C,V){return Math.min(V,Math.max(C,k))}function _(k,C,V){var oe=V-C,ge=((k-C)%oe+oe)%oe+C;return ge===C?V:ge}function w(k,C,V){if(!k.length)return V(null,[]);var oe=k.length,ge=new Array(k.length),Pe=null;k.forEach(function(je,lt){C(je,function(Ct,Nt){Ct&&(Pe=Ct),ge[lt]=Nt,--oe===0&&V(Pe,ge)})})}function M(k){var C=[];for(var V in k)C.push(k[V]);return C}function E(k,C){var V=[];for(var oe in k)oe in C||V.push(oe);return V}function m(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,ge=C;oe>C/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,k)}return k()}function f(k){return k<=1?1:Math.pow(2,Math.ceil(Math.log(k)/Math.LN2))}function P(k){return k?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(k):!1}function L(k,C){k.forEach(function(V){C[V]&&(C[V]=C[V].bind(C))})}function z(k,C){return k.indexOf(C,k.length-C.length)!==-1}function F(k,C,V){var oe={};for(var ge in k)oe[ge]=C.call(V||this,k[ge],ge,k);return oe}function O(k,C,V){var oe={};for(var ge in k)C.call(V||this,k[ge],ge,k)&&(oe[ge]=k[ge]);return oe}function B(k){return Array.isArray(k)?k.map(B):typeof k=="object"&&k?F(k,B):k}function I(k,C){for(var V=0;V=0)return!0;return!1}var N={};function U(k){N[k]||(typeof console<"u"&&console.warn(k),N[k]=!0)}function W(k,C,V){return(V.y-k.y)*(C.x-k.x)>(C.y-k.y)*(V.x-k.x)}function Q(k){for(var C=0,V=0,oe=k.length,ge=oe-1,Pe=void 0,je=void 0;V@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,V={};if(k.replace(C,function(ge,Pe,je,lt){var Ct=je||lt;return V[Pe]=Ct?Ct.toLowerCase():!0,""}),V["max-age"]){var oe=parseInt(V["max-age"],10);isNaN(oe)?delete V["max-age"]:V["max-age"]=oe}return V}var G=null;function J(k){if(G==null){var C=k.navigator?k.navigator.userAgent:null;G=!!k.safari||!!(C&&(/\b(iPad|iPhone|iPod)\b/.test(C)||C.match("Safari")&&!C.match("Chrome")))}return G}function $(k){try{var C=s[k];return C.setItem("_mapbox_test_",1),C.removeItem("_mapbox_test_"),!0}catch{return!1}}function X(k){return s.btoa(encodeURIComponent(k).replace(/%([0-9A-F]{2})/g,function(C,V){return String.fromCharCode(+("0x"+V))}))}function re(k){return decodeURIComponent(s.atob(k).split("").map(function(C){return"%"+("00"+C.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var ae=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),j=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,ee=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,ne,ce,_e={now:ae,frame:function(C){var V=j(C);return{cancel:function(){return ee(V)}}},getImageData:function(C,V){V===void 0&&(V=0);var oe=s.document.createElement("canvas"),ge=oe.getContext("2d");if(!ge)throw new Error("failed to create canvas 2d context");return oe.width=C.width,oe.height=C.height,ge.drawImage(C,0,0,C.width,C.height),ge.getImageData(-V,-V,C.width+2*V,C.height+2*V)},resolveURL:function(C){return ne||(ne=s.document.createElement("a")),ne.href=C,ne.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return s.matchMedia?(ce==null&&(ce=s.matchMedia("(prefers-reduced-motion: reduce)")),ce.matches):!1}},we={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Oe={supported:!1,testSupport:Je},Ie,Xe=!1,tt,rt=!1;s.document&&(tt=s.document.createElement("img"),tt.onload=function(){Ie&&ot(Ie),Ie=null,rt=!0},tt.onerror=function(){Xe=!0,Ie=null},tt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Je(k){Xe||!tt||(rt?ot(k):Ie=k)}function ot(k){var C=k.createTexture();k.bindTexture(k.TEXTURE_2D,C);try{if(k.texImage2D(k.TEXTURE_2D,0,k.RGBA,k.RGBA,k.UNSIGNED_BYTE,tt),k.isContextLost())return;Oe.supported=!0}catch{}k.deleteTexture(C),Xe=!0}var Me="01";function pe(){for(var k="1",C="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",V="",oe=0;oe<10;oe++)V+=C[Math.floor(Math.random()*62)];var ge=12*60*60*1e3,Pe=[k,Me,V].join(""),je=Date.now()+ge;return{token:Pe,tokenExpiresAt:je}}var ue=function(C,V){this._transformRequestFn=C,this._customAccessToken=V,this._createSkuToken()};ue.prototype._createSkuToken=function(){var C=pe();this._skuToken=C.token,this._skuTokenExpiresAt=C.tokenExpiresAt},ue.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ue.prototype.transformRequest=function(C,V){return this._transformRequestFn?this._transformRequestFn(C,V)||{url:C}:{url:C}},ue.prototype.normalizeStyleURL=function(C,V){if(!ze(C))return C;var oe=Bt(C);return oe.path="/styles/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ue.prototype.normalizeGlyphsURL=function(C,V){if(!ze(C))return C;var oe=Bt(C);return oe.path="/fonts/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ue.prototype.normalizeSourceURL=function(C,V){if(!ze(C))return C;var oe=Bt(C);return oe.path="/v4/"+oe.authority+".json",oe.params.push("secure"),this._makeAPIURL(oe,this._customAccessToken||V)},ue.prototype.normalizeSpriteURL=function(C,V,oe,ge){var Pe=Bt(C);return ze(C)?(Pe.path="/styles/v1"+Pe.path+"/sprite"+V+oe,this._makeAPIURL(Pe,this._customAccessToken||ge)):(Pe.path+=""+V+oe,jt(Pe))},ue.prototype.normalizeTileURL=function(C,V){if(this._isSkuTokenExpired()&&this._createSkuToken(),C&&!ze(C))return C;var oe=Bt(C),ge=/(\.(png|jpg)\d*)(?=$)/,Pe=/^.+\/v4\//,je=_e.devicePixelRatio>=2||V===512?"@2x":"",lt=Oe.supported?".webp":"$1";oe.path=oe.path.replace(ge,""+je+lt),oe.path=oe.path.replace(Pe,"/"),oe.path="/v4"+oe.path;var Ct=this._customAccessToken||kt(oe.params)||we.ACCESS_TOKEN;return we.REQUIRE_ACCESS_TOKEN&&Ct&&this._skuToken&&oe.params.push("sku="+this._skuToken),this._makeAPIURL(oe,Ct)},ue.prototype.canonicalizeTileURL=function(C,V){var oe="/v4/",ge=/\.[\w]+$/,Pe=Bt(C);if(!Pe.path.match(/(^\/v4\/)/)||!Pe.path.match(ge))return C;var je="mapbox://tiles/";je+=Pe.path.replace(oe,"");var lt=Pe.params;return V&&(lt=lt.filter(function(Ct){return!Ct.match(/^access_token=/)})),lt.length&&(je+="?"+lt.join("&")),je},ue.prototype.canonicalizeTileset=function(C,V){for(var oe=V?ze(V):!1,ge=[],Pe=0,je=C.tiles||[];Pe=0&&C.params.splice(Pe,1)}if(ge.path!=="/"&&(C.path=""+ge.path+C.path),!we.REQUIRE_ACCESS_TOKEN)return jt(C);if(V=V||we.ACCESS_TOKEN,!V)throw new Error("An API access token is required to use Mapbox GL. "+oe);if(V[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+oe);return C.params=C.params.filter(function(je){return je.indexOf("access_token")===-1}),C.params.push("access_token="+V),jt(C)};function ze(k){return k.indexOf("mapbox:")===0}var Qe=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function it(k){return Qe.test(k)}function $e(k){return k.indexOf("sku=")>0&&it(k)}function kt(k){for(var C=0,V=k;C=1&&s.localStorage.setItem(V,JSON.stringify(this.eventData))}catch{U("Unable to write to LocalStorage")}},Lr.prototype.processRequests=function(C){},Lr.prototype.postEvent=function(C,V,oe,ge){var Pe=this;if(we.EVENTS_URL){var je=Bt(we.EVENTS_URL);je.params.push("access_token="+(ge||we.ACCESS_TOKEN||""));var lt={event:this.type,created:new Date(C).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:Me,userId:this.anonId},Ct=V?m(lt,V):lt,Nt={url:jt(je),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Ct])};this.pendingRequest=Yr(Nt,function(Yt){Pe.pendingRequest=null,oe(Yt),Pe.saveEventData(),Pe.processRequests(ge)})}},Lr.prototype.queueRequest=function(C,V){this.queue.push(C),this.processRequests(V)};var mr=function(k){function C(){k.call(this,"map.load"),this.success={},this.skuToken=""}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postMapLoadEvent=function(oe,ge,Pe,je){this.skuToken=Pe,(we.EVENTS_URL&&je||we.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(lt){return ze(lt)||it(lt)}))&&this.queueRequest({id:ge,timestamp:Date.now()},je)},C.prototype.processRequests=function(oe){var ge=this;if(!(this.pendingRequest||this.queue.length===0)){var Pe=this.queue.shift(),je=Pe.id,lt=Pe.timestamp;je&&this.success[je]||(this.anonId||this.fetchEventData(),P(this.anonId)||(this.anonId=y()),this.postEvent(lt,{skuToken:this.skuToken},function(Ct){Ct||je&&(ge.success[je]=!0)},oe))}},C}(Lr),xr=function(k){function C(V){k.call(this,"appUserTurnstile"),this._customAccessToken=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postTurnstileEvent=function(oe,ge){we.EVENTS_URL&&we.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(Pe){return ze(Pe)||it(Pe)})&&this.queueRequest(Date.now(),ge)},C.prototype.processRequests=function(oe){var ge=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var Pe=nr(we.ACCESS_TOKEN),je=Pe?Pe.u:we.ACCESS_TOKEN,lt=je!==this.eventData.tokenU;P(this.anonId)||(this.anonId=y(),lt=!0);var Ct=this.queue.shift();if(this.eventData.lastSuccess){var Nt=new Date(this.eventData.lastSuccess),Yt=new Date(Ct),yr=(Ct-this.eventData.lastSuccess)/(24*60*60*1e3);lt=lt||yr>=1||yr<-1||Nt.getDate()!==Yt.getDate()}else lt=!0;if(!lt)return this.processRequests();this.postEvent(Ct,{"enabled.telemetry":!1},function(Nr){Nr||(ge.eventData.lastSuccess=Ct,ge.eventData.tokenU=je)},oe)}},C}(Lr),mt=new xr,Fe=mt.postTurnstileEvent.bind(mt),Ze=new mr,Ne=Ze.postMapLoadEvent.bind(Ze),Se="mapbox-tiles",Ve=500,Ee=50,be=1e3*60*7,Ce;function et(){s.caches&&!Ce&&(Ce=s.caches.open(Se))}var ht;function yt(k,C){if(ht===void 0)try{new Response(new ReadableStream),ht=!0}catch{ht=!1}ht?C(k.body):k.blob().then(C)}function Pt(k,C,V){if(et(),!!Ce){var oe={status:C.status,statusText:C.statusText,headers:new s.Headers};C.headers.forEach(function(je,lt){return oe.headers.set(lt,je)});var ge=fe(C.headers.get("Cache-Control")||"");if(!ge["no-store"]){ge["max-age"]&&oe.headers.set("Expires",new Date(V+ge["max-age"]*1e3).toUTCString());var Pe=new Date(oe.headers.get("Expires")).getTime()-V;PeDate.now()&&!V["no-cache"]}var lr=1/0;function fi(k){lr++,lr>Ee&&(k.getActor().send("enforceCacheSizeLimit",Ve),lr=0)}function Pi(k){et(),Ce&&Ce.then(function(C){C.keys().then(function(V){for(var oe=0;oe=200&&V.status<300||V.status===0)&&V.response!==null){var ge=V.response;if(k.type==="json")try{ge=JSON.parse(V.response)}catch(Pe){return C(Pe)}C(null,ge,V.getResponseHeader("Cache-Control"),V.getResponseHeader("Expires"))}else C(new vn(V.statusText,V.status,k.url))},V.send(k.body),{cancel:function(){return V.abort()}}}var br=function(k,C){if(!Dt(k.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return qt(k,C);if(se()&&self.worker&&self.worker.actor){var V=!0;return self.worker.actor.send("getResource",k,C,void 0,V)}}return Ut(k,C)},Zr=function(k,C){return br(m(k,{type:"json"}),C)},_i=function(k,C){return br(m(k,{type:"arrayBuffer"}),C)},Yr=function(k,C){return br(m(k,{method:"POST"}),C)};function Di(k){var C=s.document.createElement("a");return C.href=k,C.protocol===s.document.location.protocol&&C.host===s.document.location.host}var qi="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function $i(k,C,V,oe){var ge=new s.Image,Pe=s.URL;ge.onload=function(){C(null,ge),Pe.revokeObjectURL(ge.src),ge.onload=null,s.requestAnimationFrame(function(){ge.src=qi})},ge.onerror=function(){return C(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var je=new s.Blob([new Uint8Array(k)],{type:"image/png"});ge.cacheControl=V,ge.expires=oe,ge.src=k.byteLength?Pe.createObjectURL(je):qi}function Mi(k,C){var V=new s.Blob([new Uint8Array(k)],{type:"image/png"});s.createImageBitmap(V).then(function(oe){C(null,oe)}).catch(function(oe){C(new Error("Could not load image because of "+oe.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var sn,vt,pt=function(){sn=[],vt=0};pt();var kr=function(k,C){if(Oe.supported&&(k.headers||(k.headers={}),k.headers.accept="image/webp,*/*"),vt>=we.MAX_PARALLEL_IMAGE_REQUESTS){var V={requestParameters:k,callback:C,cancelled:!1,cancel:function(){this.cancelled=!0}};return sn.push(V),V}vt++;var oe=!1,ge=function(){if(!oe)for(oe=!0,vt--;sn.length&&vt0||this._oneTimeListeners&&this._oneTimeListeners[C]&&this._oneTimeListeners[C].length>0||this._eventedParent&&this._eventedParent.listens(C)},Pr.prototype.setEventedParent=function(C,V){return this._eventedParent=C,this._eventedParentData=V,this};var Qr=8,ci={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},mi={"*":{type:"source"}},Et=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],ar={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},gr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ti={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},wi={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Gi={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Fi={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},xi={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Ii=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],Bn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},hn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ba={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Aa={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Va={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Qa={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},yo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ga={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Yo={type:"array",value:"*"},da={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},vs={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},es={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},bs={type:"array",value:"*",minimum:1},Xa={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},Bo=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],Za={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},Qo={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},ss={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},gs={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},vo={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},zo={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Ds={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Hs={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Zs={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},ps={"*":{type:"string"}},bn={$version:Qr,$root:ci,sources:mi,source:Et,source_vector:ar,source_raster:gr,source_raster_dem:ti,source_geojson:wi,source_video:Gi,source_image:Fi,layer:xi,layout:Ii,layout_background:Bn,layout_fill:hn,layout_circle:ba,layout_heatmap:Aa,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Va,layout_symbol:Qa,layout_raster:yo,layout_hillshade:Ga,filter:Yo,filter_operator:da,geometry_type:vs,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:es,expression:bs,light:Xa,paint:Bo,paint_fill:Za,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:Qo,paint_circle:ss,paint_heatmap:gs,paint_symbol:vo,paint_raster:zo,paint_hillshade:Ds,paint_background:Hs,transition:Zs,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:ps},Ra=function(C,V,oe,ge){this.message=(C?C+": ":"")+oe,ge&&(this.identifier=ge),V!=null&&V.__line__&&(this.line=V.__line__)};function _l(k){var C=k.key,V=k.value;return V?[new Ra(C,V,"constants have been deprecated as of v8")]:[]}function Ys(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,ge=C;oe":k.itemType.kind==="value"?"array":"array<"+C+">"}else return k.kind}var au=[El,aa,Ho,po,zs,kl,hs,Bl(to),Hu];function Gu(k,C){if(C.kind==="error")return null;if(k.kind==="array"){if(C.kind==="array"&&(C.N===0&&C.itemType.kind==="value"||!Gu(k.itemType,C.itemType))&&(typeof k.N!="number"||k.N===C.N))return null}else{if(k.kind===C.kind)return null;if(k.kind==="value")for(var V=0,oe=au;V255?255:Nt}function ge(Nt){return Nt<0?0:Nt>1?1:Nt}function Pe(Nt){return Nt[Nt.length-1]==="%"?oe(parseFloat(Nt)/100*255):oe(parseInt(Nt))}function je(Nt){return Nt[Nt.length-1]==="%"?ge(parseFloat(Nt)/100):ge(parseFloat(Nt))}function lt(Nt,Yt,yr){return yr<0?yr+=1:yr>1&&(yr-=1),yr*6<1?Nt+(Yt-Nt)*yr*6:yr*2<1?Yt:yr*3<2?Nt+(Yt-Nt)*(2/3-yr)*6:Nt}function Ct(Nt){var Yt=Nt.replace(/ /g,"").toLowerCase();if(Yt in V)return V[Yt].slice();if(Yt[0]==="#"){if(Yt.length===4){var yr=parseInt(Yt.substr(1),16);return yr>=0&&yr<=4095?[(yr&3840)>>4|(yr&3840)>>8,yr&240|(yr&240)>>4,yr&15|(yr&15)<<4,1]:null}else if(Yt.length===7){var yr=parseInt(Yt.substr(1),16);return yr>=0&&yr<=16777215?[(yr&16711680)>>16,(yr&65280)>>8,yr&255,1]:null}return null}var Nr=Yt.indexOf("("),Dr=Yt.indexOf(")");if(Nr!==-1&&Dr+1===Yt.length){var ui=Yt.substr(0,Nr),Ni=Yt.substr(Nr+1,Dr-(Nr+1)).split(","),dn=1;switch(ui){case"rgba":if(Ni.length!==4)return null;dn=je(Ni.pop());case"rgb":return Ni.length!==3?null:[Pe(Ni[0]),Pe(Ni[1]),Pe(Ni[2]),dn];case"hsla":if(Ni.length!==4)return null;dn=je(Ni.pop());case"hsl":if(Ni.length!==3)return null;var tn=(parseFloat(Ni[0])%360+360)%360/360,Nn=je(Ni[1]),xn=je(Ni[2]),On=xn<=.5?xn*(Nn+1):xn+Nn-xn*Nn,Hn=xn*2-On;return[oe(lt(Hn,On,tn+1/3)*255),oe(lt(Hn,On,tn)*255),oe(lt(Hn,On,tn-1/3)*255),dn];default:return null}}return null}try{C.parseCSSColor=Ct}catch{}}),yf=fh.parseCSSColor,Gs=function(C,V,oe,ge){ge===void 0&&(ge=1),this.r=C,this.g=V,this.b=oe,this.a=ge};Gs.parse=function(C){if(C){if(C instanceof Gs)return C;if(typeof C=="string"){var V=yf(C);if(V)return new Gs(V[0]/255*V[3],V[1]/255*V[3],V[2]/255*V[3],V[3])}}},Gs.prototype.toString=function(){var C=this.toArray(),V=C[0],oe=C[1],ge=C[2],Pe=C[3];return"rgba("+Math.round(V)+","+Math.round(oe)+","+Math.round(ge)+","+Pe+")"},Gs.prototype.toArray=function(){var C=this,V=C.r,oe=C.g,ge=C.b,Pe=C.a;return Pe===0?[0,0,0,0]:[V*255/Pe,oe*255/Pe,ge*255/Pe,Pe]},Gs.black=new Gs(0,0,0,1),Gs.white=new Gs(1,1,1,1),Gs.transparent=new Gs(0,0,0,0),Gs.red=new Gs(1,0,0,1);var $c=function(C,V,oe){C?this.sensitivity=V?"variant":"case":this.sensitivity=V?"accent":"base",this.locale=oe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};$c.prototype.compare=function(C,V){return this.collator.compare(C,V)},$c.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var kf=function(C,V,oe,ge,Pe){this.text=C,this.image=V,this.scale=oe,this.fontStack=ge,this.textColor=Pe},ru=function(C){this.sections=C};ru.fromString=function(C){return new ru([new kf(C,null,null,null,null)])},ru.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(C){return C.text.length!==0||C.image&&C.image.name.length!==0})},ru.factory=function(C){return C instanceof ru?C:ru.fromString(C)},ru.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(C){return C.text}).join("")},ru.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V=0&&k<=255&&typeof C=="number"&&C>=0&&C<=255&&typeof V=="number"&&V>=0&&V<=255)){var ge=typeof oe=="number"?[k,C,V,oe]:[k,C,V];return"Invalid rgba value ["+ge.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof oe>"u"||typeof oe=="number"&&oe>=0&&oe<=1?null:"Invalid rgba value ["+[k,C,V,oe].join(", ")+"]: 'a' must be between 0 and 1."}function Ac(k){if(k===null)return!0;if(typeof k=="string")return!0;if(typeof k=="boolean")return!0;if(typeof k=="number")return!0;if(k instanceof Gs)return!0;if(k instanceof $c)return!0;if(k instanceof ru)return!0;if(k instanceof Cl)return!0;if(Array.isArray(k)){for(var C=0,V=k;C2){var lt=C[1];if(typeof lt!="string"||!(lt in hc)||lt==="object")return V.error('The item type argument of "array" must be one of string, number, boolean',1);je=hc[lt],oe++}else je=to;var Ct;if(C.length>3){if(C[2]!==null&&(typeof C[2]!="number"||C[2]<0||C[2]!==Math.floor(C[2])))return V.error('The length argument to "array" must be a positive integer literal',2);Ct=C[2],oe++}ge=Bl(je,Ct)}else ge=hc[Pe];for(var Nt=[];oe1)&&V.push(ge)}}return V.concat(this.args.map(function(Pe){return Pe.serialize()}))};var ec=function(C){this.type=kl,this.sections=C};ec.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[1];if(!Array.isArray(oe)&&typeof oe=="object")return V.error("First argument must be an image or text section.");for(var ge=[],Pe=!1,je=1;je<=C.length-1;++je){var lt=C[je];if(Pe&&typeof lt=="object"&&!Array.isArray(lt)){Pe=!1;var Ct=null;if(lt["font-scale"]&&(Ct=V.parse(lt["font-scale"],1,aa),!Ct))return null;var Nt=null;if(lt["text-font"]&&(Nt=V.parse(lt["text-font"],1,Bl(Ho)),!Nt))return null;var Yt=null;if(lt["text-color"]&&(Yt=V.parse(lt["text-color"],1,zs),!Yt))return null;var yr=ge[ge.length-1];yr.scale=Ct,yr.font=Nt,yr.textColor=Yt}else{var Nr=V.parse(C[je],1,to);if(!Nr)return null;var Dr=Nr.type.kind;if(Dr!=="string"&&Dr!=="value"&&Dr!=="null"&&Dr!=="resolvedImage")return V.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Pe=!0,ge.push({content:Nr,scale:null,font:null,textColor:null})}}return new ec(ge)},ec.prototype.evaluate=function(C){var V=function(oe){var ge=oe.content.evaluate(C);return ol(ge)===Hu?new kf("",ge,null,null,null):new kf(Ll(ge),null,oe.scale?oe.scale.evaluate(C):null,oe.font?oe.font.evaluate(C).join(","):null,oe.textColor?oe.textColor.evaluate(C):null)};return new ru(this.sections.map(V))},ec.prototype.eachChild=function(C){for(var V=0,oe=this.sections;V-1),oe},hl.prototype.eachChild=function(C){C(this.input)},hl.prototype.outputDefined=function(){return!1},hl.prototype.serialize=function(){return["image",this.input.serialize()]};var jh={"to-boolean":po,"to-color":zs,"to-number":aa,"to-string":Ho},ys=function(C,V){this.type=C,this.args=V};ys.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[0];if((oe==="to-boolean"||oe==="to-string")&&C.length!==2)return V.error("Expected one argument.");for(var ge=jh[oe],Pe=[],je=1;je4?oe="Invalid rbga value "+JSON.stringify(V)+": expected an array containing either three or four numeric values.":oe=fc(V[0],V[1],V[2],V[3]),!oe))return new Gs(V[0]/255,V[1]/255,V[2]/255,V[3])}throw new fl(oe||"Could not parse color from value '"+(typeof V=="string"?V:String(JSON.stringify(V)))+"'")}else if(this.type.kind==="number"){for(var Ct=null,Nt=0,Yt=this.args;Nt=C[2]||k[1]<=C[1]||k[3]>=C[3])}function rh(k,C){var V=Bc(k[0]),oe=hf(k[1]),ge=Math.pow(2,C.z);return[Math.round(V*ge*yu),Math.round(oe*ge*yu)]}function jf(k,C,V){var oe=k[0]-C[0],ge=k[1]-C[1],Pe=k[0]-V[0],je=k[1]-V[1];return oe*je-Pe*ge===0&&oe*Pe<=0&&ge*je<=0}function Cf(k,C,V){return C[1]>k[1]!=V[1]>k[1]&&k[0]<(V[0]-C[0])*(k[1]-C[1])/(V[1]-C[1])+C[0]}function Jc(k,C){for(var V=!1,oe=0,ge=C.length;oe0&&yr<0||Yt<0&&yr>0}function Lf(k,C,V,oe){var ge=[C[0]-k[0],C[1]-k[1]],Pe=[oe[0]-V[0],oe[1]-V[1]];return ih(Pe,ge)===0?!1:!!(rc(k,C,V,oe)&&rc(V,oe,k,C))}function Oc(k,C,V){for(var oe=0,ge=V;oeV[2]){var ge=oe*.5,Pe=k[0]-V[0]>ge?-oe:V[0]-k[0]>ge?oe:0;Pe===0&&(Pe=k[0]-V[2]>ge?-oe:V[2]-k[0]>ge?oe:0),k[0]+=Pe}Uf(C,k)}function qf(k){k[0]=k[1]=1/0,k[2]=k[3]=-1/0}function Ph(k,C,V,oe){for(var ge=Math.pow(2,oe.z)*yu,Pe=[oe.x*yu,oe.y*yu],je=[],lt=0,Ct=k;lt=0)return!1;var V=!0;return k.eachChild(function(oe){V&&!Ru(oe,C)&&(V=!1)}),V}var Mc=function(C,V){this.type=V.type,this.name=C,this.boundExpression=V};Mc.parse=function(C,V){if(C.length!==2||typeof C[1]!="string")return V.error("'var' expression requires exactly one string literal argument.");var oe=C[1];return V.scope.has(oe)?new Mc(oe,V.scope.get(oe)):V.error('Unknown variable "'+oe+'". Make sure "'+oe+'" has been bound in an enclosing "let" expression before using it.',1)},Mc.prototype.evaluate=function(C){return this.boundExpression.evaluate(C)},Mc.prototype.eachChild=function(){},Mc.prototype.outputDefined=function(){return!1},Mc.prototype.serialize=function(){return["var",this.name]};var Ol=function(C,V,oe,ge,Pe){V===void 0&&(V=[]),ge===void 0&&(ge=new ml),Pe===void 0&&(Pe=[]),this.registry=C,this.path=V,this.key=V.map(function(je){return"["+je+"]"}).join(""),this.scope=ge,this.errors=Pe,this.expectedType=oe};Ol.prototype.parse=function(C,V,oe,ge,Pe){return Pe===void 0&&(Pe={}),V?this.concat(V,oe,ge)._parse(C,Pe):this._parse(C,Pe)},Ol.prototype._parse=function(C,V){(C===null||typeof C=="string"||typeof C=="boolean"||typeof C=="number")&&(C=["literal",C]);function oe(Yt,yr,Nr){return Nr==="assert"?new Wl(yr,[Yt]):Nr==="coerce"?new ys(yr,[Yt]):Yt}if(Array.isArray(C)){if(C.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var ge=C[0];if(typeof ge!="string")return this.error("Expression name must be a string, but found "+typeof ge+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Pe=this.registry[ge];if(Pe){var je=Pe.parse(C,this);if(!je)return null;if(this.expectedType){var lt=this.expectedType,Ct=je.type;if((lt.kind==="string"||lt.kind==="number"||lt.kind==="boolean"||lt.kind==="object"||lt.kind==="array")&&Ct.kind==="value")je=oe(je,lt,V.typeAnnotation||"assert");else if((lt.kind==="color"||lt.kind==="formatted"||lt.kind==="resolvedImage")&&(Ct.kind==="value"||Ct.kind==="string"))je=oe(je,lt,V.typeAnnotation||"coerce");else if(this.checkSubtype(lt,Ct))return null}if(!(je instanceof Ks)&&je.type.kind!=="resolvedImage"&&Uc(je)){var Nt=new Us;try{je=new Ks(je.type,je.evaluate(Nt))}catch(Yt){return this.error(Yt.message),null}}return je}return this.error('Unknown expression "'+ge+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof C>"u"?this.error("'undefined' value invalid. Use null instead."):typeof C=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof C+" instead.")},Ol.prototype.concat=function(C,V,oe){var ge=typeof C=="number"?this.path.concat(C):this.path,Pe=oe?this.scope.concat(oe):this.scope;return new Ol(this.registry,ge,V||null,Pe,this.errors)},Ol.prototype.error=function(C){for(var V=[],oe=arguments.length-1;oe-- >0;)V[oe]=arguments[oe+1];var ge=""+this.key+V.map(function(Pe){return"["+Pe+"]"}).join("");this.errors.push(new ks(ge,C))},Ol.prototype.checkSubtype=function(C,V){var oe=Gu(C,V);return oe&&this.error(oe),oe};function Uc(k){if(k instanceof Mc)return Uc(k.boundExpression);if(k instanceof Wo&&k.name==="error")return!1;if(k instanceof tc)return!1;if(k instanceof Iu)return!1;var C=k instanceof ys||k instanceof Wl,V=!0;return k.eachChild(function(oe){C?V=V&&Uc(oe):V=V&&oe instanceof Ks}),V?ah(k)&&Ru(k,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function ic(k,C){for(var V=k.length-1,oe=0,ge=V,Pe=0,je,lt;oe<=ge;)if(Pe=Math.floor((oe+ge)/2),je=k[Pe],lt=k[Pe+1],je<=C){if(Pe===V||CC)ge=Pe-1;else throw new fl("Input is not a number.");return 0}var wu=function(C,V,oe){this.type=C,this.input=V,this.labels=[],this.outputs=[];for(var ge=0,Pe=oe;ge=lt)return V.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Nt);var yr=V.parse(Ct,Yt,Pe);if(!yr)return null;Pe=Pe||yr.type,ge.push([lt,yr])}return new wu(Pe,oe,ge)},wu.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var ge=this.input.evaluate(C);if(ge<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(ge>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=ic(V,ge);return oe[je].evaluate(C)},wu.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V0&&C.push(this.labels[V]),C.push(this.outputs[V].serialize());return C};function Pl(k,C,V){return k*(1-V)+C*V}function oh(k,C,V){return new Gs(Pl(k.r,C.r,V),Pl(k.g,C.g,V),Pl(k.b,C.b,V),Pl(k.a,C.a,V))}function dh(k,C,V){return k.map(function(oe,ge){return Pl(oe,C[ge],V)})}var Wu=Object.freeze({__proto__:null,number:Pl,color:oh,array:dh}),Sc=.95047,dc=1,Vh=1.08883,vf=4/29,xf=6/29,Du=3*xf*xf,Pf=xf*xf*xf,fu=Math.PI/180,ef=180/Math.PI;function vh(k){return k>Pf?Math.pow(k,1/3):k/Du+vf}function If(k){return k>xf?k*k*k:Du*(k-vf)}function yl(k){return 255*(k<=.0031308?12.92*k:1.055*Math.pow(k,1/2.4)-.055)}function Tu(k){return k/=255,k<=.04045?k/12.92:Math.pow((k+.055)/1.055,2.4)}function Au(k){var C=Tu(k.r),V=Tu(k.g),oe=Tu(k.b),ge=vh((.4124564*C+.3575761*V+.1804375*oe)/Sc),Pe=vh((.2126729*C+.7151522*V+.072175*oe)/dc),je=vh((.0193339*C+.119192*V+.9503041*oe)/Vh);return{l:116*Pe-16,a:500*(ge-Pe),b:200*(Pe-je),alpha:k.a}}function Hf(k){var C=(k.l+16)/116,V=isNaN(k.a)?C:C+k.a/500,oe=isNaN(k.b)?C:C-k.b/200;return C=dc*If(C),V=Sc*If(V),oe=Vh*If(oe),new Gs(yl(3.2404542*V-1.5371385*C-.4985314*oe),yl(-.969266*V+1.8760108*C+.041556*oe),yl(.0556434*V-.2040259*C+1.0572252*oe),k.alpha)}function dl(k,C,V){return{l:Pl(k.l,C.l,V),a:Pl(k.a,C.a,V),b:Pl(k.b,C.b,V),alpha:Pl(k.alpha,C.alpha,V)}}function pf(k){var C=Au(k),V=C.l,oe=C.a,ge=C.b,Pe=Math.atan2(ge,oe)*ef;return{h:Pe<0?Pe+360:Pe,c:Math.sqrt(oe*oe+ge*ge),l:V,alpha:k.a}}function Ec(k){var C=k.h*fu,V=k.c,oe=k.l;return Hf({l:oe,a:Math.cos(C)*V,b:Math.sin(C)*V,alpha:k.alpha})}function Xu(k,C,V){var oe=C-k;return k+V*(oe>180||oe<-180?oe-360*Math.round(oe/360):oe)}function bf(k,C,V){return{h:Xu(k.h,C.h,V),c:Pl(k.c,C.c,V),l:Pl(k.l,C.l,V),alpha:Pl(k.alpha,C.alpha,V)}}var vc={forward:Au,reverse:Hf,interpolate:dl},tf={forward:pf,reverse:Ec,interpolate:bf},Gf=Object.freeze({__proto__:null,lab:vc,hcl:tf}),Jl=function(C,V,oe,ge,Pe){this.type=C,this.operator=V,this.interpolation=oe,this.input=ge,this.labels=[],this.outputs=[];for(var je=0,lt=Pe;je1}))return V.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);ge={name:"cubic-bezier",controlPoints:Ct}}else return V.error("Unknown interpolation type "+String(ge[0]),1,0);if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");if(Pe=V.parse(Pe,2,aa),!Pe)return null;var Nt=[],Yt=null;oe==="interpolate-hcl"||oe==="interpolate-lab"?Yt=zs:V.expectedType&&V.expectedType.kind!=="value"&&(Yt=V.expectedType);for(var yr=0;yr=Nr)return V.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',ui);var dn=V.parse(Dr,Ni,Yt);if(!dn)return null;Yt=Yt||dn.type,Nt.push([Nr,dn])}return Yt.kind!=="number"&&Yt.kind!=="color"&&!(Yt.kind==="array"&&Yt.itemType.kind==="number"&&typeof Yt.N=="number")?V.error("Type "+rl(Yt)+" is not interpolatable."):new Jl(Yt,oe,ge,Pe,Nt)},Jl.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var ge=this.input.evaluate(C);if(ge<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(ge>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=ic(V,ge),lt=V[je],Ct=V[je+1],Nt=Jl.interpolationFactor(this.interpolation,ge,lt,Ct),Yt=oe[je].evaluate(C),yr=oe[je+1].evaluate(C);return this.operator==="interpolate"?Wu[this.type.kind.toLowerCase()](Yt,yr,Nt):this.operator==="interpolate-hcl"?tf.reverse(tf.interpolate(tf.forward(Yt),tf.forward(yr),Nt)):vc.reverse(vc.interpolate(vc.forward(Yt),vc.forward(yr),Nt))},Jl.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V=oe.length)throw new fl("Array index out of bounds: "+V+" > "+(oe.length-1)+".");if(V!==Math.floor(V))throw new fl("Array index must be an integer, but found "+V+" instead.");return oe[V]},pc.prototype.eachChild=function(C){C(this.index),C(this.input)},pc.prototype.outputDefined=function(){return!1},pc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Nl=function(C,V){this.type=po,this.needle=C,this.haystack=V};Nl.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,to),ge=V.parse(C[2],2,to);return!oe||!ge?null:Fc(oe.type,[po,Ho,aa,El,to])?new Nl(oe,ge):V.error("Expected first argument to be of type boolean, string, number or null, but found "+rl(oe.type)+" instead")},Nl.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!oe)return!1;if(!Qu(V,["boolean","string","number","null"]))throw new fl("Expected first argument to be of type boolean, string, number or null, but found "+rl(ol(V))+" instead.");if(!Qu(oe,["string","array"]))throw new fl("Expected second argument to be of type array or string, but found "+rl(ol(oe))+" instead.");return oe.indexOf(V)>=0},Nl.prototype.eachChild=function(C){C(this.needle),C(this.haystack)},Nl.prototype.outputDefined=function(){return!0},Nl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var hu=function(C,V,oe){this.type=aa,this.needle=C,this.haystack=V,this.fromIndex=oe};hu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,to),ge=V.parse(C[2],2,to);if(!oe||!ge)return null;if(!Fc(oe.type,[po,Ho,aa,El,to]))return V.error("Expected first argument to be of type boolean, string, number or null, but found "+rl(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,aa);return Pe?new hu(oe,ge,Pe):null}else return new hu(oe,ge)},hu.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!Qu(V,["boolean","string","number","null"]))throw new fl("Expected first argument to be of type boolean, string, number or null, but found "+rl(ol(V))+" instead.");if(!Qu(oe,["string","array"]))throw new fl("Expected second argument to be of type array or string, but found "+rl(ol(oe))+" instead.");if(this.fromIndex){var ge=this.fromIndex.evaluate(C);return oe.indexOf(V,ge)}return oe.indexOf(V)},hu.prototype.eachChild=function(C){C(this.needle),C(this.haystack),this.fromIndex&&C(this.fromIndex)},hu.prototype.outputDefined=function(){return!1},hu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var C=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),C]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var mc=function(C,V,oe,ge,Pe,je){this.inputType=C,this.type=V,this.input=oe,this.cases=ge,this.outputs=Pe,this.otherwise=je};mc.parse=function(C,V){if(C.length<5)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if(C.length%2!==1)return V.error("Expected an even number of arguments.");var oe,ge;V.expectedType&&V.expectedType.kind!=="value"&&(ge=V.expectedType);for(var Pe={},je=[],lt=2;ltNumber.MAX_SAFE_INTEGER)return Yt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Dr=="number"&&Math.floor(Dr)!==Dr)return Yt.error("Numeric branch labels must be integer values.");if(!oe)oe=ol(Dr);else if(Yt.checkSubtype(oe,ol(Dr)))return null;if(typeof Pe[String(Dr)]<"u")return Yt.error("Branch labels must be unique.");Pe[String(Dr)]=je.length}var ui=V.parse(Nt,lt,ge);if(!ui)return null;ge=ge||ui.type,je.push(ui)}var Ni=V.parse(C[1],1,to);if(!Ni)return null;var dn=V.parse(C[C.length-1],C.length-1,ge);return!dn||Ni.type.kind!=="value"&&V.concat(1).checkSubtype(oe,Ni.type)?null:new mc(oe,ge,Ni,Pe,je,dn)},mc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=ol(V)===this.inputType&&this.outputs[this.cases[V]]||this.otherwise;return oe.evaluate(C)},mc.prototype.eachChild=function(C){C(this.input),this.outputs.forEach(C),C(this.otherwise)},mc.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})&&this.otherwise.outputDefined()},mc.prototype.serialize=function(){for(var C=this,V=["match",this.input.serialize()],oe=Object.keys(this.cases).sort(),ge=[],Pe={},je=0,lt=oe;je=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,to),ge=V.parse(C[2],2,aa);if(!oe||!ge)return null;if(!Fc(oe.type,[Bl(to),Ho,to]))return V.error("Expected first argument to be of type array or string, but found "+rl(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,aa);return Pe?new nc(oe.type,oe,ge,Pe):null}else return new nc(oe.type,oe,ge)},nc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=this.beginIndex.evaluate(C);if(!Qu(V,["string","array"]))throw new fl("Expected first argument to be of type array or string, but found "+rl(ol(V))+" instead.");if(this.endIndex){var ge=this.endIndex.evaluate(C);return V.slice(oe,ge)}return V.slice(oe)},nc.prototype.eachChild=function(C){C(this.input),C(this.beginIndex),this.endIndex&&C(this.endIndex)},nc.prototype.outputDefined=function(){return!1},nc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var C=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),C]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function rf(k,C){return k==="=="||k==="!="?C.kind==="boolean"||C.kind==="string"||C.kind==="number"||C.kind==="null"||C.kind==="value":C.kind==="string"||C.kind==="number"||C.kind==="value"}function Zt(k,C,V){return C===V}function hr(k,C,V){return C!==V}function Kr(k,C,V){return CV}function ki(k,C,V){return C<=V}function an(k,C,V){return C>=V}function pn(k,C,V,oe){return oe.compare(C,V)===0}function Pn(k,C,V,oe){return!pn(k,C,V,oe)}function Vn(k,C,V,oe){return oe.compare(C,V)<0}function ra(k,C,V,oe){return oe.compare(C,V)>0}function yn(k,C,V,oe){return oe.compare(C,V)<=0}function In(k,C,V,oe){return oe.compare(C,V)>=0}function kn(k,C,V){var oe=k!=="=="&&k!=="!=";return function(){function ge(Pe,je,lt){this.type=po,this.lhs=Pe,this.rhs=je,this.collator=lt,this.hasUntypedArgument=Pe.type.kind==="value"||je.type.kind==="value"}return ge.parse=function(je,lt){if(je.length!==3&&je.length!==4)return lt.error("Expected two or three arguments.");var Ct=je[0],Nt=lt.parse(je[1],1,to);if(!Nt)return null;if(!rf(Ct,Nt.type))return lt.concat(1).error('"'+Ct+`" comparisons are not supported for type '`+rl(Nt.type)+"'.");var Yt=lt.parse(je[2],2,to);if(!Yt)return null;if(!rf(Ct,Yt.type))return lt.concat(2).error('"'+Ct+`" comparisons are not supported for type '`+rl(Yt.type)+"'.");if(Nt.type.kind!==Yt.type.kind&&Nt.type.kind!=="value"&&Yt.type.kind!=="value")return lt.error("Cannot compare types '"+rl(Nt.type)+"' and '"+rl(Yt.type)+"'.");oe&&(Nt.type.kind==="value"&&Yt.type.kind!=="value"?Nt=new Wl(Yt.type,[Nt]):Nt.type.kind!=="value"&&Yt.type.kind==="value"&&(Yt=new Wl(Nt.type,[Yt])));var yr=null;if(je.length===4){if(Nt.type.kind!=="string"&&Yt.type.kind!=="string"&&Nt.type.kind!=="value"&&Yt.type.kind!=="value")return lt.error("Cannot use collator to compare non-string types.");if(yr=lt.parse(je[3],3,Ju),!yr)return null}return new ge(Nt,Yt,yr)},ge.prototype.evaluate=function(je){var lt=this.lhs.evaluate(je),Ct=this.rhs.evaluate(je);if(oe&&this.hasUntypedArgument){var Nt=ol(lt),Yt=ol(Ct);if(Nt.kind!==Yt.kind||!(Nt.kind==="string"||Nt.kind==="number"))throw new fl('Expected arguments for "'+k+'" to be (string, string) or (number, number), but found ('+Nt.kind+", "+Yt.kind+") instead.")}if(this.collator&&!oe&&this.hasUntypedArgument){var yr=ol(lt),Nr=ol(Ct);if(yr.kind!=="string"||Nr.kind!=="string")return C(je,lt,Ct)}return this.collator?V(je,lt,Ct,this.collator.evaluate(je)):C(je,lt,Ct)},ge.prototype.eachChild=function(je){je(this.lhs),je(this.rhs),this.collator&&je(this.collator)},ge.prototype.outputDefined=function(){return!0},ge.prototype.serialize=function(){var je=[k];return this.eachChild(function(lt){je.push(lt.serialize())}),je},ge}()}var cn=kn("==",Zt,pn),xa=kn("!=",hr,Pn),mo=kn("<",Kr,Vn),uo=kn(">",qr,ra),go=kn("<=",ki,yn),Mo=kn(">=",an,In),ya=function(C,V,oe,ge,Pe){this.type=Ho,this.number=C,this.locale=V,this.currency=oe,this.minFractionDigits=ge,this.maxFractionDigits=Pe};ya.parse=function(C,V){if(C.length!==3)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,aa);if(!oe)return null;var ge=C[2];if(typeof ge!="object"||Array.isArray(ge))return V.error("NumberFormat options argument must be an object.");var Pe=null;if(ge.locale&&(Pe=V.parse(ge.locale,1,Ho),!Pe))return null;var je=null;if(ge.currency&&(je=V.parse(ge.currency,1,Ho),!je))return null;var lt=null;if(ge["min-fraction-digits"]&&(lt=V.parse(ge["min-fraction-digits"],1,aa),!lt))return null;var Ct=null;return ge["max-fraction-digits"]&&(Ct=V.parse(ge["max-fraction-digits"],1,aa),!Ct)?null:new ya(oe,Pe,je,lt,Ct)},ya.prototype.evaluate=function(C){return new Intl.NumberFormat(this.locale?this.locale.evaluate(C):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(C):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(C):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(C):void 0}).format(this.number.evaluate(C))},ya.prototype.eachChild=function(C){C(this.number),this.locale&&C(this.locale),this.currency&&C(this.currency),this.minFractionDigits&&C(this.minFractionDigits),this.maxFractionDigits&&C(this.maxFractionDigits)},ya.prototype.outputDefined=function(){return!1},ya.prototype.serialize=function(){var C={};return this.locale&&(C.locale=this.locale.serialize()),this.currency&&(C.currency=this.currency.serialize()),this.minFractionDigits&&(C["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(C["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),C]};var Zn=function(C){this.type=aa,this.input=C};Zn.parse=function(C,V){if(C.length!==2)return V.error("Expected 1 argument, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1);return oe?oe.type.kind!=="array"&&oe.type.kind!=="string"&&oe.type.kind!=="value"?V.error("Expected argument of type string or array, but found "+rl(oe.type)+" instead."):new Zn(oe):null},Zn.prototype.evaluate=function(C){var V=this.input.evaluate(C);if(typeof V=="string")return V.length;if(Array.isArray(V))return V.length;throw new fl("Expected value to be of type string or array, but found "+rl(ol(V))+" instead.")},Zn.prototype.eachChild=function(C){C(this.input)},Zn.prototype.outputDefined=function(){return!1},Zn.prototype.serialize=function(){var C=["length"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Po={"==":cn,"!=":xa,">":uo,"<":mo,">=":Mo,"<=":go,array:Wl,at:pc,boolean:Wl,case:jc,coalesce:Zu,collator:tc,format:ec,image:hl,in:Nl,"index-of":hu,interpolate:Jl,"interpolate-hcl":Jl,"interpolate-lab":Jl,length:Zn,let:kc,literal:Ks,match:mc,number:Wl,"number-format":ya,object:Wl,slice:nc,step:wu,string:Wl,"to-boolean":ys,"to-color":ys,"to-number":ys,"to-string":ys,var:Mc,within:Iu};function us(k,C){var V=C[0],oe=C[1],ge=C[2],Pe=C[3];V=V.evaluate(k),oe=oe.evaluate(k),ge=ge.evaluate(k);var je=Pe?Pe.evaluate(k):1,lt=fc(V,oe,ge,je);if(lt)throw new fl(lt);return new Gs(V/255*je,oe/255*je,ge/255*je,je)}function Bs(k,C){return k in C}function sl(k,C){var V=C[k];return typeof V>"u"?null:V}function js(k,C,V,oe){for(;V<=oe;){var ge=V+oe>>1;if(C[ge]===k)return!0;C[ge]>k?oe=ge-1:V=ge+1}return!1}function il(k){return{type:k}}Wo.register(Po,{error:[tu,[Ho],function(k,C){var V=C[0];throw new fl(V.evaluate(k))}],typeof:[Ho,[to],function(k,C){var V=C[0];return rl(ol(V.evaluate(k)))}],"to-rgba":[Bl(aa,4),[zs],function(k,C){var V=C[0];return V.evaluate(k).toArray()}],rgb:[zs,[aa,aa,aa],us],rgba:[zs,[aa,aa,aa,aa],us],has:{type:po,overloads:[[[Ho],function(k,C){var V=C[0];return Bs(V.evaluate(k),k.properties())}],[[Ho,hs],function(k,C){var V=C[0],oe=C[1];return Bs(V.evaluate(k),oe.evaluate(k))}]]},get:{type:to,overloads:[[[Ho],function(k,C){var V=C[0];return sl(V.evaluate(k),k.properties())}],[[Ho,hs],function(k,C){var V=C[0],oe=C[1];return sl(V.evaluate(k),oe.evaluate(k))}]]},"feature-state":[to,[Ho],function(k,C){var V=C[0];return sl(V.evaluate(k),k.featureState||{})}],properties:[hs,[],function(k){return k.properties()}],"geometry-type":[Ho,[],function(k){return k.geometryType()}],id:[to,[],function(k){return k.id()}],zoom:[aa,[],function(k){return k.globals.zoom}],"heatmap-density":[aa,[],function(k){return k.globals.heatmapDensity||0}],"line-progress":[aa,[],function(k){return k.globals.lineProgress||0}],accumulated:[to,[],function(k){return k.globals.accumulated===void 0?null:k.globals.accumulated}],"+":[aa,il(aa),function(k,C){for(var V=0,oe=0,ge=C;oe":[po,[Ho,to],function(k,C){var V=C[0],oe=C[1],ge=k.properties()[V.value],Pe=oe.value;return typeof ge==typeof Pe&&ge>Pe}],"filter-id->":[po,[to],function(k,C){var V=C[0],oe=k.id(),ge=V.value;return typeof oe==typeof ge&&oe>ge}],"filter-<=":[po,[Ho,to],function(k,C){var V=C[0],oe=C[1],ge=k.properties()[V.value],Pe=oe.value;return typeof ge==typeof Pe&&ge<=Pe}],"filter-id-<=":[po,[to],function(k,C){var V=C[0],oe=k.id(),ge=V.value;return typeof oe==typeof ge&&oe<=ge}],"filter->=":[po,[Ho,to],function(k,C){var V=C[0],oe=C[1],ge=k.properties()[V.value],Pe=oe.value;return typeof ge==typeof Pe&&ge>=Pe}],"filter-id->=":[po,[to],function(k,C){var V=C[0],oe=k.id(),ge=V.value;return typeof oe==typeof ge&&oe>=ge}],"filter-has":[po,[to],function(k,C){var V=C[0];return V.value in k.properties()}],"filter-has-id":[po,[],function(k){return k.id()!==null&&k.id()!==void 0}],"filter-type-in":[po,[Bl(Ho)],function(k,C){var V=C[0];return V.value.indexOf(k.geometryType())>=0}],"filter-id-in":[po,[Bl(to)],function(k,C){var V=C[0];return V.value.indexOf(k.id())>=0}],"filter-in-small":[po,[Ho,Bl(to)],function(k,C){var V=C[0],oe=C[1];return oe.value.indexOf(k.properties()[V.value])>=0}],"filter-in-large":[po,[Ho,Bl(to)],function(k,C){var V=C[0],oe=C[1];return js(k.properties()[V.value],oe.value,0,oe.value.length-1)}],all:{type:po,overloads:[[[po,po],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)&&oe.evaluate(k)}],[il(po),function(k,C){for(var V=0,oe=C;V-1}function Wa(k){return!!k.expression&&k.expression.interpolated}function Go(k){return k instanceof Number?"number":k instanceof String?"string":k instanceof Boolean?"boolean":Array.isArray(k)?"array":k===null?"null":typeof k}function el(k){return typeof k=="object"&&k!==null&&!Array.isArray(k)}function Os(k){return k}function du(k,C){var V=C.type==="color",oe=k.stops&&typeof k.stops[0][0]=="object",ge=oe||k.property!==void 0,Pe=oe||!ge,je=k.type||(Wa(C)?"exponential":"interval");if(V&&(k=Ys({},k),k.stops&&(k.stops=k.stops.map(function(Na){return[Na[0],Gs.parse(Na[1])]})),k.default?k.default=Gs.parse(k.default):k.default=Gs.parse(C.default)),k.colorSpace&&k.colorSpace!=="rgb"&&!Gf[k.colorSpace])throw new Error("Unknown color space: "+k.colorSpace);var lt,Ct,Nt;if(je==="exponential")lt=Mu;else if(je==="interval")lt=nf;else if(je==="categorical"){lt=ac,Ct=Object.create(null);for(var Yt=0,yr=k.stops;Yt=k.stops[oe-1][0])return k.stops[oe-1][1];var ge=ic(k.stops.map(function(Pe){return Pe[0]}),V);return k.stops[ge][1]}function Mu(k,C,V){var oe=k.base!==void 0?k.base:1;if(Go(V)!=="number")return zu(k.default,C.default);var ge=k.stops.length;if(ge===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[ge-1][0])return k.stops[ge-1][1];var Pe=ic(k.stops.map(function(yr){return yr[0]}),V),je=Fu(V,oe,k.stops[Pe][0],k.stops[Pe+1][0]),lt=k.stops[Pe][1],Ct=k.stops[Pe+1][1],Nt=Wu[C.type]||Os;if(k.colorSpace&&k.colorSpace!=="rgb"){var Yt=Gf[k.colorSpace];Nt=function(yr,Nr){return Yt.reverse(Yt.interpolate(Yt.forward(yr),Yt.forward(Nr),je))}}return typeof lt.evaluate=="function"?{evaluate:function(){for(var Nr=[],Dr=arguments.length;Dr--;)Nr[Dr]=arguments[Dr];var ui=lt.evaluate.apply(void 0,Nr),Ni=Ct.evaluate.apply(void 0,Nr);if(!(ui===void 0||Ni===void 0))return Nt(ui,Ni,je)}}:Nt(lt,Ct,je)}function Vc(k,C,V){return C.type==="color"?V=Gs.parse(V):C.type==="formatted"?V=ru.fromString(V.toString()):C.type==="resolvedImage"?V=Cl.fromString(V.toString()):Go(V)!==C.type&&(C.type!=="enum"||!C.values[V])&&(V=void 0),zu(V,k.default,C.default)}function Fu(k,C,V,oe){var ge=oe-V,Pe=k-V;return ge===0?0:C===1?Pe/ge:(Math.pow(C,Pe)-1)/(Math.pow(C,ge)-1)}var Cc=function(C,V){this.expression=C,this._warningHistory={},this._evaluator=new Us,this._defaultValue=V?Te(V):null,this._enumValues=V&&V.type==="enum"?V.values:null};Cc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,ge,Pe,je){return this._evaluator.globals=C,this._evaluator.feature=V,this._evaluator.featureState=oe,this._evaluator.canonical=ge,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je,this.expression.evaluate(this._evaluator)},Cc.prototype.evaluate=function(C,V,oe,ge,Pe,je){this._evaluator.globals=C,this._evaluator.feature=V||null,this._evaluator.featureState=oe||null,this._evaluator.canonical=ge,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je||null;try{var lt=this.expression.evaluate(this._evaluator);if(lt==null||typeof lt=="number"&<!==lt)return this._defaultValue;if(this._enumValues&&!(lt in this._enumValues))throw new fl("Expected value to be one of "+Object.keys(this._enumValues).map(function(Ct){return JSON.stringify(Ct)}).join(", ")+", but found "+JSON.stringify(lt)+" instead.");return lt}catch(Ct){return this._warningHistory[Ct.message]||(this._warningHistory[Ct.message]=!0,typeof console<"u"&&console.warn(Ct.message)),this._defaultValue}};function bo(k){return Array.isArray(k)&&k.length>0&&typeof k[0]=="string"&&k[0]in Po}function Ko(k,C){var V=new Ol(Po,[],C?xe(C):void 0),oe=V.parse(k,void 0,void 0,void 0,C&&C.type==="string"?{typeAnnotation:"coerce"}:void 0);return oe?Ps(new Cc(oe,C)):ql(V.errors)}var qc=function(C,V){this.kind=C,this._styleExpression=V,this.isStateDependent=C!=="constant"&&!cu(V.expression)};qc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,ge,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,ge,Pe,je)},qc.prototype.evaluate=function(C,V,oe,ge,Pe,je){return this._styleExpression.evaluate(C,V,oe,ge,Pe,je)};var gc=function(C,V,oe,ge){this.kind=C,this.zoomStops=oe,this._styleExpression=V,this.isStateDependent=C!=="camera"&&!cu(V.expression),this.interpolationType=ge};gc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,ge,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,ge,Pe,je)},gc.prototype.evaluate=function(C,V,oe,ge,Pe,je){return this._styleExpression.evaluate(C,V,oe,ge,Pe,je)},gc.prototype.interpolationFactor=function(C,V,oe){return this.interpolationType?Jl.interpolationFactor(this.interpolationType,C,V,oe):0};function yc(k,C){if(k=Ko(k,C),k.result==="error")return k;var V=k.value.expression,oe=ah(V);if(!oe&&!Tl(C))return ql([new ks("","data expressions not supported")]);var ge=Ru(V,["zoom"]);if(!ge&&!vl(C))return ql([new ks("","zoom expressions not supported")]);var Pe=ie(V);if(!Pe&&!ge)return ql([new ks("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Pe instanceof ks)return ql([Pe]);if(Pe instanceof Jl&&!Wa(C))return ql([new ks("",'"interpolate" expressions cannot be used with this property')]);if(!Pe)return Ps(oe?new qc("constant",k.value):new qc("source",k.value));var je=Pe instanceof Jl?Pe.interpolation:void 0;return Ps(oe?new gc("camera",k.value,Pe.labels,je):new gc("composite",k.value,Pe.labels,je))}var Be=function(C,V){this._parameters=C,this._specification=V,Ys(this,du(this._parameters,this._specification))};Be.deserialize=function(C){return new Be(C._parameters,C._specification)},Be.serialize=function(C){return{_parameters:C._parameters,_specification:C._specification}};function R(k,C){if(el(k))return new Be(k,C);if(bo(k)){var V=yc(k,C);if(V.result==="error")throw new Error(V.value.map(function(ge){return ge.key+": "+ge.message}).join(", "));return V.value}else{var oe=k;return typeof k=="string"&&C.type==="color"&&(oe=Gs.parse(k)),{kind:"constant",evaluate:function(){return oe}}}}function ie(k){var C=null;if(k instanceof kc)C=ie(k.result);else if(k instanceof Zu)for(var V=0,oe=k.args;Voe.maximum?[new Ra(C,V,V+" is greater than the maximum value "+oe.maximum)]:[]}function Rt(k){var C=k.valueSpec,V=ko(k.value.type),oe,ge={},Pe,je,lt=V!=="categorical"&&k.value.property===void 0,Ct=!lt,Nt=Go(k.value.stops)==="array"&&Go(k.value.stops[0])==="array"&&Go(k.value.stops[0][0])==="object",Yt=De({key:k.key,value:k.value,valueSpec:k.styleSpec.function,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{stops:yr,default:ui}});return V==="identity"&<&&Yt.push(new Ra(k.key,k.value,'missing required property "property"')),V!=="identity"&&!k.value.stops&&Yt.push(new Ra(k.key,k.value,'missing required property "stops"')),V==="exponential"&&k.valueSpec.expression&&!Wa(k.valueSpec)&&Yt.push(new Ra(k.key,k.value,"exponential functions not supported")),k.styleSpec.$version>=8&&(Ct&&!Tl(k.valueSpec)?Yt.push(new Ra(k.key,k.value,"property functions not supported")):lt&&!vl(k.valueSpec)&&Yt.push(new Ra(k.key,k.value,"zoom functions not supported"))),(V==="categorical"||Nt)&&k.value.property===void 0&&Yt.push(new Ra(k.key,k.value,'"property" property is required')),Yt;function yr(Ni){if(V==="identity")return[new Ra(Ni.key,Ni.value,'identity function may not have a "stops" property')];var dn=[],tn=Ni.value;return dn=dn.concat(ut({key:Ni.key,value:tn,valueSpec:Ni.valueSpec,style:Ni.style,styleSpec:Ni.styleSpec,arrayElementValidator:Nr})),Go(tn)==="array"&&tn.length===0&&dn.push(new Ra(Ni.key,tn,"array must have at least one stop")),dn}function Nr(Ni){var dn=[],tn=Ni.value,Nn=Ni.key;if(Go(tn)!=="array")return[new Ra(Nn,tn,"array expected, "+Go(tn)+" found")];if(tn.length!==2)return[new Ra(Nn,tn,"array length 2 expected, length "+tn.length+" found")];if(Nt){if(Go(tn[0])!=="object")return[new Ra(Nn,tn,"object expected, "+Go(tn[0])+" found")];if(tn[0].zoom===void 0)return[new Ra(Nn,tn,"object stop key must have zoom")];if(tn[0].value===void 0)return[new Ra(Nn,tn,"object stop key must have value")];if(je&&je>ko(tn[0].zoom))return[new Ra(Nn,tn[0].zoom,"stop zoom values must appear in ascending order")];ko(tn[0].zoom)!==je&&(je=ko(tn[0].zoom),Pe=void 0,ge={}),dn=dn.concat(De({key:Nn+"[0]",value:tn[0],valueSpec:{zoom:{}},style:Ni.style,styleSpec:Ni.styleSpec,objectElementValidators:{zoom:_t,value:Dr}}))}else dn=dn.concat(Dr({key:Nn+"[0]",value:tn[0],valueSpec:{},style:Ni.style,styleSpec:Ni.styleSpec},tn));return bo(Js(tn[1]))?dn.concat([new Ra(Nn+"[1]",tn[1],"expressions are not allowed in function stops.")]):dn.concat(Oo({key:Nn+"[1]",value:tn[1],valueSpec:C,style:Ni.style,styleSpec:Ni.styleSpec}))}function Dr(Ni,dn){var tn=Go(Ni.value),Nn=ko(Ni.value),xn=Ni.value!==null?Ni.value:dn;if(!oe)oe=tn;else if(tn!==oe)return[new Ra(Ni.key,xn,tn+" stop domain type must match previous stop domain type "+oe)];if(tn!=="number"&&tn!=="string"&&tn!=="boolean")return[new Ra(Ni.key,xn,"stop domain value must be a number, string, or boolean")];if(tn!=="number"&&V!=="categorical"){var On="number expected, "+tn+" found";return Tl(C)&&V===void 0&&(On+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Ra(Ni.key,xn,On)]}return V==="categorical"&&tn==="number"&&(!isFinite(Nn)||Math.floor(Nn)!==Nn)?[new Ra(Ni.key,xn,"integer expected, found "+Nn)]:V!=="categorical"&&tn==="number"&&Pe!==void 0&&Nn=2&&k[1]!=="$id"&&k[1]!=="$type";case"in":return k.length>=3&&(typeof k[1]!="string"||Array.isArray(k[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return k.length!==3||Array.isArray(k[1])||Array.isArray(k[2]);case"any":case"all":for(var C=0,V=k.slice(1);CC?1:0}function ct(k){if(!Array.isArray(k))return!1;if(k[0]==="within")return!0;for(var C=1;C"||C==="<="||C===">="?gt(k[1],k[2],C):C==="any"?Lt(k.slice(1)):C==="all"?["all"].concat(k.slice(1).map(Tt)):C==="none"?["all"].concat(k.slice(1).map(Tt).map(vr)):C==="in"?tr(k[1],k.slice(2)):C==="!in"?vr(tr(k[1],k.slice(2))):C==="has"?or(k[1]):C==="!has"?vr(or(k[1])):C==="within"?k:!0;return V}function gt(k,C,V){switch(k){case"$type":return["filter-type-"+V,C];case"$id":return["filter-id-"+V,C];default:return["filter-"+V,k,C]}}function Lt(k){return["any"].concat(k.map(Tt))}function tr(k,C){if(C.length===0)return!1;switch(k){case"$type":return["filter-type-in",["literal",C]];case"$id":return["filter-id-in",["literal",C]];default:return C.length>200&&!C.some(function(V){return typeof V!=typeof C[0]})?["filter-in-large",k,["literal",C.sort(nt)]]:["filter-in-small",k,["literal",C]]}}function or(k){switch(k){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",k]}}function vr(k){return["!",k]}function Sr(k){return ii(Js(k.value))?Kt(Ys({},k,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Wr(k)}function Wr(k){var C=k.value,V=k.key;if(Go(C)!=="array")return[new Ra(V,C,"array expected, "+Go(C)+" found")];var oe=k.styleSpec,ge,Pe=[];if(C.length<1)return[new Ra(V,C,"filter array must have at least 1 element")];switch(Pe=Pe.concat(jr({key:V+"[0]",value:C[0],valueSpec:oe.filter_operator,style:k.style,styleSpec:k.styleSpec})),ko(C[0])){case"<":case"<=":case">":case">=":C.length>=2&&ko(C[1])==="$type"&&Pe.push(new Ra(V,C,'"$type" cannot be use with operator "'+C[0]+'"'));case"==":case"!=":C.length!==3&&Pe.push(new Ra(V,C,'filter array for operator "'+C[0]+'" must have 3 elements'));case"in":case"!in":C.length>=2&&(ge=Go(C[1]),ge!=="string"&&Pe.push(new Ra(V+"[1]",C[1],"string expected, "+ge+" found")));for(var je=2;je=Yt[Dr+0]&&oe>=Yt[Dr+1])?(je[Nr]=!0,Pe.push(Nt[Nr])):je[Nr]=!1}}},vu.prototype._forEachCell=function(k,C,V,oe,ge,Pe,je,lt){for(var Ct=this._convertToCellCoord(k),Nt=this._convertToCellCoord(C),Yt=this._convertToCellCoord(V),yr=this._convertToCellCoord(oe),Nr=Ct;Nr<=Yt;Nr++)for(var Dr=Nt;Dr<=yr;Dr++){var ui=this.d*Dr+Nr;if(!(lt&&!lt(this._convertFromCellCoord(Nr),this._convertFromCellCoord(Dr),this._convertFromCellCoord(Nr+1),this._convertFromCellCoord(Dr+1)))&&ge.call(this,k,C,V,oe,ui,Pe,je,lt))return}},vu.prototype._convertFromCellCoord=function(k){return(k-this.padding)/this.scale},vu.prototype._convertToCellCoord=function(k){return Math.max(0,Math.min(this.d-1,Math.floor(k*this.scale)+this.padding))},vu.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var k=this.cells,C=Il+this.cells.length+1+1,V=0,oe=0;oe=0)){var yr=k[Yt];Nt[Yt]=eu[Ct].shallow.indexOf(Yt)>=0?yr:dt(yr,C)}k instanceof Error&&(Nt.message=k.message)}if(Nt.$name)throw new Error("$name property is reserved for worker serialization logic.");return Ct!=="Object"&&(Nt.$name=Ct),Nt}throw new Error("can't serialize object of type "+typeof k)}function xt(k){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp||Ke(k)||ft(k)||ArrayBuffer.isView(k)||k instanceof Lc)return k;if(Array.isArray(k))return k.map(xt);if(typeof k=="object"){var C=k.$name||"Object",V=eu[C],oe=V.klass;if(!oe)throw new Error("can't deserialize unregistered class "+C);if(oe.deserialize)return oe.deserialize(k);for(var ge=Object.create(oe.prototype),Pe=0,je=Object.keys(k);Pe=0?Ct:xt(Ct)}}return ge}throw new Error("can't deserialize object of type "+typeof k)}var Jt=function(){this.first=!0};Jt.prototype.update=function(C,V){var oe=Math.floor(C);return this.first?(this.first=!1,this.lastIntegerZoom=oe,this.lastIntegerZoomTime=0,this.lastZoom=C,this.lastFloorZoom=oe,!0):(this.lastFloorZoom>oe?(this.lastIntegerZoom=oe+1,this.lastIntegerZoomTime=V):this.lastFloorZoom=128&&k<=255},Arabic:function(k){return k>=1536&&k<=1791},"Arabic Supplement":function(k){return k>=1872&&k<=1919},"Arabic Extended-A":function(k){return k>=2208&&k<=2303},"Hangul Jamo":function(k){return k>=4352&&k<=4607},"Unified Canadian Aboriginal Syllabics":function(k){return k>=5120&&k<=5759},Khmer:function(k){return k>=6016&&k<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(k){return k>=6320&&k<=6399},"General Punctuation":function(k){return k>=8192&&k<=8303},"Letterlike Symbols":function(k){return k>=8448&&k<=8527},"Number Forms":function(k){return k>=8528&&k<=8591},"Miscellaneous Technical":function(k){return k>=8960&&k<=9215},"Control Pictures":function(k){return k>=9216&&k<=9279},"Optical Character Recognition":function(k){return k>=9280&&k<=9311},"Enclosed Alphanumerics":function(k){return k>=9312&&k<=9471},"Geometric Shapes":function(k){return k>=9632&&k<=9727},"Miscellaneous Symbols":function(k){return k>=9728&&k<=9983},"Miscellaneous Symbols and Arrows":function(k){return k>=11008&&k<=11263},"CJK Radicals Supplement":function(k){return k>=11904&&k<=12031},"Kangxi Radicals":function(k){return k>=12032&&k<=12255},"Ideographic Description Characters":function(k){return k>=12272&&k<=12287},"CJK Symbols and Punctuation":function(k){return k>=12288&&k<=12351},Hiragana:function(k){return k>=12352&&k<=12447},Katakana:function(k){return k>=12448&&k<=12543},Bopomofo:function(k){return k>=12544&&k<=12591},"Hangul Compatibility Jamo":function(k){return k>=12592&&k<=12687},Kanbun:function(k){return k>=12688&&k<=12703},"Bopomofo Extended":function(k){return k>=12704&&k<=12735},"CJK Strokes":function(k){return k>=12736&&k<=12783},"Katakana Phonetic Extensions":function(k){return k>=12784&&k<=12799},"Enclosed CJK Letters and Months":function(k){return k>=12800&&k<=13055},"CJK Compatibility":function(k){return k>=13056&&k<=13311},"CJK Unified Ideographs Extension A":function(k){return k>=13312&&k<=19903},"Yijing Hexagram Symbols":function(k){return k>=19904&&k<=19967},"CJK Unified Ideographs":function(k){return k>=19968&&k<=40959},"Yi Syllables":function(k){return k>=40960&&k<=42127},"Yi Radicals":function(k){return k>=42128&&k<=42191},"Hangul Jamo Extended-A":function(k){return k>=43360&&k<=43391},"Hangul Syllables":function(k){return k>=44032&&k<=55215},"Hangul Jamo Extended-B":function(k){return k>=55216&&k<=55295},"Private Use Area":function(k){return k>=57344&&k<=63743},"CJK Compatibility Ideographs":function(k){return k>=63744&&k<=64255},"Arabic Presentation Forms-A":function(k){return k>=64336&&k<=65023},"Vertical Forms":function(k){return k>=65040&&k<=65055},"CJK Compatibility Forms":function(k){return k>=65072&&k<=65103},"Small Form Variants":function(k){return k>=65104&&k<=65135},"Arabic Presentation Forms-B":function(k){return k>=65136&&k<=65279},"Halfwidth and Fullwidth Forms":function(k){return k>=65280&&k<=65519}};function sr(k){for(var C=0,V=k;C=65097&&k<=65103)||It["CJK Compatibility Ideographs"](k)||It["CJK Compatibility"](k)||It["CJK Radicals Supplement"](k)||It["CJK Strokes"](k)||It["CJK Symbols and Punctuation"](k)&&!(k>=12296&&k<=12305)&&!(k>=12308&&k<=12319)&&k!==12336||It["CJK Unified Ideographs Extension A"](k)||It["CJK Unified Ideographs"](k)||It["Enclosed CJK Letters and Months"](k)||It["Hangul Compatibility Jamo"](k)||It["Hangul Jamo Extended-A"](k)||It["Hangul Jamo Extended-B"](k)||It["Hangul Jamo"](k)||It["Hangul Syllables"](k)||It.Hiragana(k)||It["Ideographic Description Characters"](k)||It.Kanbun(k)||It["Kangxi Radicals"](k)||It["Katakana Phonetic Extensions"](k)||It.Katakana(k)&&k!==12540||It["Halfwidth and Fullwidth Forms"](k)&&k!==65288&&k!==65289&&k!==65293&&!(k>=65306&&k<=65310)&&k!==65339&&k!==65341&&k!==65343&&!(k>=65371&&k<=65503)&&k!==65507&&!(k>=65512&&k<=65519)||It["Small Form Variants"](k)&&!(k>=65112&&k<=65118)&&!(k>=65123&&k<=65126)||It["Unified Canadian Aboriginal Syllabics"](k)||It["Unified Canadian Aboriginal Syllabics Extended"](k)||It["Vertical Forms"](k)||It["Yijing Hexagram Symbols"](k)||It["Yi Syllables"](k)||It["Yi Radicals"](k))}function Ki(k){return!!(It["Latin-1 Supplement"](k)&&(k===167||k===169||k===174||k===177||k===188||k===189||k===190||k===215||k===247)||It["General Punctuation"](k)&&(k===8214||k===8224||k===8225||k===8240||k===8241||k===8251||k===8252||k===8258||k===8263||k===8264||k===8265||k===8273)||It["Letterlike Symbols"](k)||It["Number Forms"](k)||It["Miscellaneous Technical"](k)&&(k>=8960&&k<=8967||k>=8972&&k<=8991||k>=8996&&k<=9e3||k===9003||k>=9085&&k<=9114||k>=9150&&k<=9165||k===9167||k>=9169&&k<=9179||k>=9186&&k<=9215)||It["Control Pictures"](k)&&k!==9251||It["Optical Character Recognition"](k)||It["Enclosed Alphanumerics"](k)||It["Geometric Shapes"](k)||It["Miscellaneous Symbols"](k)&&!(k>=9754&&k<=9759)||It["Miscellaneous Symbols and Arrows"](k)&&(k>=11026&&k<=11055||k>=11088&&k<=11097||k>=11192&&k<=11243)||It["CJK Symbols and Punctuation"](k)||It.Katakana(k)||It["Private Use Area"](k)||It["CJK Compatibility Forms"](k)||It["Small Form Variants"](k)||It["Halfwidth and Fullwidth Forms"](k)||k===8734||k===8756||k===8757||k>=9984&&k<=10087||k>=10102&&k<=10131||k===65532||k===65533)}function rn(k){return!(gi(k)||Ki(k))}function Si(k){return It.Arabic(k)||It["Arabic Supplement"](k)||It["Arabic Extended-A"](k)||It["Arabic Presentation Forms-A"](k)||It["Arabic Presentation Forms-B"](k)}function Ui(k){return k>=1424&&k<=2303||It["Arabic Presentation Forms-A"](k)||It["Arabic Presentation Forms-B"](k)}function Xi(k,C){return!(!C&&Ui(k)||k>=2304&&k<=3583||k>=3840&&k<=4255||It.Khmer(k))}function ln(k){for(var C=0,V=k;C-1&&(ia=ji.error),Kn&&Kn(k)};function ro(){ao.fire(new Er("pluginStateChange",{pluginStatus:ia,pluginURL:ga}))}var ao=new Pr,is=function(){return ia},lo=function(k){return k({pluginStatus:ia,pluginURL:ga}),ao.on("pluginStateChange",k),k},ts=function(k,C,V){if(V===void 0&&(V=!1),ia===ji.deferred||ia===ji.loading||ia===ji.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");ga=_e.resolveURL(k),ia=ji.deferred,Kn=C,ro(),V||ul()},ul=function(){if(ia!==ji.deferred||!ga)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");ia=ji.loading,ro(),ga&&_i({url:ga},function(k){k?ka(k):(ia=ji.loaded,ro())})},nl={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return ia===ji.loaded||nl.applyArabicShaping!=null},isLoading:function(){return ia===ji.loading},setState:function(C){ia=C.pluginStatus,ga=C.pluginURL},isParsed:function(){return nl.applyArabicShaping!=null&&nl.processBidirectionalText!=null&&nl.processStyledBidirectionalText!=null},getPluginURL:function(){return ga}},xl=function(){!nl.isLoading()&&!nl.isLoaded()&&is()==="deferred"&&ul()},oa=function(C,V){this.zoom=C,V?(this.now=V.now,this.fadeDuration=V.fadeDuration,this.zoomHistory=V.zoomHistory,this.transition=V.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Jt,this.transition={})};oa.prototype.isSupportedScript=function(C){return nn(C,nl.isLoaded())},oa.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},oa.prototype.getCrossfadeParameters=function(){var C=this.zoom,V=C-Math.floor(C),oe=this.crossFadingFactor();return C>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:V+(1-V)*oe}:{fromScale:.5,toScale:1,t:1-(1-oe)*V}};var wo=function(C,V){this.property=C,this.value=V,this.expression=R(V===void 0?C.specification.default:V,C.specification)};wo.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},wo.prototype.possiblyEvaluate=function(C,V,oe){return this.property.possiblyEvaluate(this,C,V,oe)};var ws=function(C){this.property=C,this.value=new wo(C,void 0)};ws.prototype.transitioned=function(C,V){return new Al(this.property,this.value,V,m({},C.transition,this.transition),C.now)},ws.prototype.untransitioned=function(){return new Al(this.property,this.value,null,{},0)};var Cs=function(C){this._properties=C,this._values=Object.create(C.defaultTransitionablePropertyValues)};Cs.prototype.getValue=function(C){return B(this._values[C].value.value)},Cs.prototype.setValue=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ws(this._values[C].property)),this._values[C].value=new wo(this._values[C].property,V===null?void 0:B(V))},Cs.prototype.getTransition=function(C){return B(this._values[C].transition)},Cs.prototype.setTransition=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ws(this._values[C].property)),this._values[C].transition=B(V)||void 0},Cs.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);Vthis.end)return this.prior=null,Pe;if(this.value.isDataDriven())return this.prior=null,Pe;if(geje.zoomHistory.lastIntegerZoom?{from:oe,to:ge}:{from:Pe,to:ge}},C.prototype.interpolate=function(oe){return oe},C}(oi),mn=function(C){this.specification=C};mn.prototype.possiblyEvaluate=function(C,V,oe,ge){if(C.value!==void 0)if(C.expression.kind==="constant"){var Pe=C.expression.evaluate(V,null,{},oe,ge);return this._calculate(Pe,Pe,Pe,V)}else return this._calculate(C.expression.evaluate(new oa(Math.floor(V.zoom-1),V)),C.expression.evaluate(new oa(Math.floor(V.zoom),V)),C.expression.evaluate(new oa(Math.floor(V.zoom+1),V)),V)},mn.prototype._calculate=function(C,V,oe,ge){var Pe=ge.zoom;return Pe>ge.zoomHistory.lastIntegerZoom?{from:C,to:V}:{from:oe,to:V}},mn.prototype.interpolate=function(C){return C};var Fn=function(C){this.specification=C};Fn.prototype.possiblyEvaluate=function(C,V,oe,ge){return!!C.expression.evaluate(V,null,{},oe,ge)},Fn.prototype.interpolate=function(){return!1};var Rn=function(C){this.properties=C,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var V in C){var oe=C[V];oe.specification.overridable&&this.overridableProperties.push(V);var ge=this.defaultPropertyValues[V]=new wo(oe,void 0),Pe=this.defaultTransitionablePropertyValues[V]=new ws(oe);this.defaultTransitioningPropertyValues[V]=Pe.untransitioned(),this.defaultPossiblyEvaluatedValues[V]=ge.possiblyEvaluate({})}};de("DataDrivenProperty",oi),de("DataConstantProperty",er),de("CrossFadedDataDrivenProperty",Li),de("CrossFadedProperty",mn),de("ColorRampProperty",Fn);var Dn="-transition",Jn=function(k){function C(V,oe){if(k.call(this),this.id=V.id,this.type=V.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},V.type!=="custom"&&(V=V,this.metadata=V.metadata,this.minzoom=V.minzoom,this.maxzoom=V.maxzoom,V.type!=="background"&&(this.source=V.source,this.sourceLayer=V["source-layer"],this.filter=V.filter),oe.layout&&(this._unevaluatedLayout=new xu(oe.layout)),oe.paint)){this._transitionablePaint=new Cs(oe.paint);for(var ge in V.paint)this.setPaintProperty(ge,V.paint[ge],{validate:!1});for(var Pe in V.layout)this.setLayoutProperty(Pe,V.layout[Pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new _c(oe.paint)}}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},C.prototype.getLayoutProperty=function(oe){return oe==="visibility"?this.visibility:this._unevaluatedLayout.getValue(oe)},C.prototype.setLayoutProperty=function(oe,ge,Pe){if(Pe===void 0&&(Pe={}),ge!=null){var je="layers."+this.id+".layout."+oe;if(this._validate(iu,je,oe,ge,Pe))return}if(oe==="visibility"){this.visibility=ge;return}this._unevaluatedLayout.setValue(oe,ge)},C.prototype.getPaintProperty=function(oe){return z(oe,Dn)?this._transitionablePaint.getTransition(oe.slice(0,-Dn.length)):this._transitionablePaint.getValue(oe)},C.prototype.setPaintProperty=function(oe,ge,Pe){if(Pe===void 0&&(Pe={}),ge!=null){var je="layers."+this.id+".paint."+oe;if(this._validate(Hl,je,oe,ge,Pe))return!1}if(z(oe,Dn))return this._transitionablePaint.setTransition(oe.slice(0,-Dn.length),ge||void 0),!1;var lt=this._transitionablePaint._values[oe],Ct=lt.property.specification["property-type"]==="cross-faded-data-driven",Nt=lt.value.isDataDriven(),Yt=lt.value;this._transitionablePaint.setValue(oe,ge),this._handleSpecialPaintPropertyUpdate(oe);var yr=this._transitionablePaint._values[oe].value,Nr=yr.isDataDriven();return Nr||Nt||Ct||this._handleOverridablePaintPropertyUpdate(oe,Yt,yr)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,ge,Pe){return!1},C.prototype.isHidden=function(oe){return this.minzoom&&oe=this.maxzoom?!0:this.visibility==="none"},C.prototype.updateTransitions=function(oe){this._transitioningPaint=this._transitionablePaint.transitioned(oe,this._transitioningPaint)},C.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},C.prototype.recalculate=function(oe,ge){oe.getCrossfadeParameters&&(this._crossfadeParameters=oe.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(oe,void 0,ge)),this.paint=this._transitioningPaint.possiblyEvaluate(oe,void 0,ge)},C.prototype.serialize=function(){var oe={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(oe.layout=oe.layout||{},oe.layout.visibility=this.visibility),O(oe,function(ge,Pe){return ge!==void 0&&!(Pe==="layout"&&!Object.keys(ge).length)&&!(Pe==="paint"&&!Object.keys(ge).length)})},C.prototype._validate=function(oe,ge,Pe,je,lt){return lt===void 0&&(lt={}),lt&<.validate===!1?!1:Yu(this,oe.call(cs,{key:ge,layerType:this.type,objectKey:Pe,value:je,styleSpec:bn,style:{glyphs:!0,sprite:!0}}))},C.prototype.is3D=function(){return!1},C.prototype.isTileClipped=function(){return!1},C.prototype.hasOffscreenPass=function(){return!1},C.prototype.resize=function(){},C.prototype.isStateDependent=function(){for(var oe in this.paint._values){var ge=this.paint.get(oe);if(!(!(ge instanceof Ul)||!Tl(ge.property.specification))&&(ge.value.kind==="source"||ge.value.kind==="composite")&&ge.value.isStateDependent)return!0}return!1},C}(Pr),Sa={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Ea=function(C,V){this._structArray=C,this._pos1=V*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},ca=128,$o=5,wa=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};wa.serialize=function(C,V){return C._trim(),V&&(C.isTransferred=!0,V.push(C.arrayBuffer)),{length:C.length,arrayBuffer:C.arrayBuffer}},wa.deserialize=function(C){var V=Object.create(this.prototype);return V.arrayBuffer=C.arrayBuffer,V.length=C.length,V.capacity=C.arrayBuffer.byteLength/V.bytesPerElement,V._refreshViews(),V},wa.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},wa.prototype.clear=function(){this.length=0},wa.prototype.resize=function(C){this.reserve(C),this.length=C},wa.prototype.reserve=function(C){if(C>this.capacity){this.capacity=Math.max(C,Math.floor(this.capacity*$o),ca),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var V=this.uint8;this._refreshViews(),V&&this.uint8.set(V)}},wa.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Ta(k,C){C===void 0&&(C=1);var V=0,oe=0,ge=k.map(function(je){var lt=ea(je.type),Ct=V=_n(V,Math.max(C,lt)),Nt=je.components||1;return oe=Math.max(oe,lt),V+=lt*Nt,{name:je.name,type:je.type,components:Nt,offset:Ct}}),Pe=_n(V,Math.max(oe,C));return{members:ge,size:Pe,alignment:C}}function ea(k){return Sa[k].BYTES_PER_ELEMENT}function _n(k,C){return Math.ceil(k/C)*C}var Un=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,ge)},C.prototype.emplace=function(oe,ge,Pe){var je=oe*2;return this.int16[je+0]=ge,this.int16[je+1]=Pe,oe},C}(wa);Un.prototype.bytesPerElement=4,de("StructArrayLayout2i4",Un);var _a=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je){var lt=this.length;return this.resize(lt+1),this.emplace(lt,oe,ge,Pe,je)},C.prototype.emplace=function(oe,ge,Pe,je,lt){var Ct=oe*4;return this.int16[Ct+0]=ge,this.int16[Ct+1]=Pe,this.int16[Ct+2]=je,this.int16[Ct+3]=lt,oe},C}(wa);_a.prototype.bytesPerElement=8,de("StructArrayLayout4i8",_a);var Ca=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,ge,Pe,je,lt,Ct)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt){var Yt=oe*6;return this.int16[Yt+0]=ge,this.int16[Yt+1]=Pe,this.int16[Yt+2]=je,this.int16[Yt+3]=lt,this.int16[Yt+4]=Ct,this.int16[Yt+5]=Nt,oe},C}(wa);Ca.prototype.bytesPerElement=12,de("StructArrayLayout2i4i12",Ca);var sa=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,ge,Pe,je,lt,Ct)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt){var Yt=oe*4,yr=oe*8;return this.int16[Yt+0]=ge,this.int16[Yt+1]=Pe,this.uint8[yr+4]=je,this.uint8[yr+5]=lt,this.uint8[yr+6]=Ct,this.uint8[yr+7]=Nt,oe},C}(wa);sa.prototype.bytesPerElement=8,de("StructArrayLayout2i4ub8",sa);var Ka=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,ge)},C.prototype.emplace=function(oe,ge,Pe){var je=oe*2;return this.float32[je+0]=ge,this.float32[je+1]=Pe,oe},C}(wa);Ka.prototype.bytesPerElement=8,de("StructArrayLayout2f8",Ka);var Ba=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr){var Dr=this.length;return this.resize(Dr+1),this.emplace(Dr,oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr){var ui=oe*10;return this.uint16[ui+0]=ge,this.uint16[ui+1]=Pe,this.uint16[ui+2]=je,this.uint16[ui+3]=lt,this.uint16[ui+4]=Ct,this.uint16[ui+5]=Nt,this.uint16[ui+6]=Yt,this.uint16[ui+7]=yr,this.uint16[ui+8]=Nr,this.uint16[ui+9]=Dr,oe},C}(wa);Ba.prototype.bytesPerElement=20,de("StructArrayLayout10ui20",Ba);var No=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui){var Ni=this.length;return this.resize(Ni+1),this.emplace(Ni,oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni){var dn=oe*12;return this.int16[dn+0]=ge,this.int16[dn+1]=Pe,this.int16[dn+2]=je,this.int16[dn+3]=lt,this.uint16[dn+4]=Ct,this.uint16[dn+5]=Nt,this.uint16[dn+6]=Yt,this.uint16[dn+7]=yr,this.int16[dn+8]=Nr,this.int16[dn+9]=Dr,this.int16[dn+10]=ui,this.int16[dn+11]=Ni,oe},C}(wa);No.prototype.bytesPerElement=24,de("StructArrayLayout4i4ui4i24",No);var ha=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,ge,Pe)},C.prototype.emplace=function(oe,ge,Pe,je){var lt=oe*3;return this.float32[lt+0]=ge,this.float32[lt+1]=Pe,this.float32[lt+2]=je,oe},C}(wa);ha.prototype.bytesPerElement=12,de("StructArrayLayout3f12",ha);var na=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var ge=this.length;return this.resize(ge+1),this.emplace(ge,oe)},C.prototype.emplace=function(oe,ge){var Pe=oe*1;return this.uint32[Pe+0]=ge,oe},C}(wa);na.prototype.bytesPerElement=4,de("StructArrayLayout1ul4",na);var co=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr){var Nr=this.length;return this.resize(Nr+1),this.emplace(Nr,oe,ge,Pe,je,lt,Ct,Nt,Yt,yr)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr){var Dr=oe*10,ui=oe*5;return this.int16[Dr+0]=ge,this.int16[Dr+1]=Pe,this.int16[Dr+2]=je,this.int16[Dr+3]=lt,this.int16[Dr+4]=Ct,this.int16[Dr+5]=Nt,this.uint32[ui+3]=Yt,this.uint16[Dr+8]=yr,this.uint16[Dr+9]=Nr,oe},C}(wa);co.prototype.bytesPerElement=20,de("StructArrayLayout6i1ul2ui20",co);var Ya=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,ge,Pe,je,lt,Ct)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt){var Yt=oe*6;return this.int16[Yt+0]=ge,this.int16[Yt+1]=Pe,this.int16[Yt+2]=je,this.int16[Yt+3]=lt,this.int16[Yt+4]=Ct,this.int16[Yt+5]=Nt,oe},C}(wa);Ya.prototype.bytesPerElement=12,de("StructArrayLayout2i2i2i12",Ya);var Fa=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt){var Ct=this.length;return this.resize(Ct+1),this.emplace(Ct,oe,ge,Pe,je,lt)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct){var Nt=oe*4,Yt=oe*8;return this.float32[Nt+0]=ge,this.float32[Nt+1]=Pe,this.float32[Nt+2]=je,this.int16[Yt+6]=lt,this.int16[Yt+7]=Ct,oe},C}(wa);Fa.prototype.bytesPerElement=16,de("StructArrayLayout2f1f2i16",Fa);var La=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je){var lt=this.length;return this.resize(lt+1),this.emplace(lt,oe,ge,Pe,je)},C.prototype.emplace=function(oe,ge,Pe,je,lt){var Ct=oe*12,Nt=oe*3;return this.uint8[Ct+0]=ge,this.uint8[Ct+1]=Pe,this.float32[Nt+1]=je,this.float32[Nt+2]=lt,oe},C}(wa);La.prototype.bytesPerElement=12,de("StructArrayLayout2ub2f12",La);var io=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,ge,Pe)},C.prototype.emplace=function(oe,ge,Pe,je){var lt=oe*3;return this.uint16[lt+0]=ge,this.uint16[lt+1]=Pe,this.uint16[lt+2]=je,oe},C}(wa);io.prototype.bytesPerElement=6,de("StructArrayLayout3ui6",io);var Jo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn){var On=this.length;return this.resize(On+1),this.emplace(On,oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn,On){var Hn=oe*24,pa=oe*12,Ha=oe*48;return this.int16[Hn+0]=ge,this.int16[Hn+1]=Pe,this.uint16[Hn+2]=je,this.uint16[Hn+3]=lt,this.uint32[pa+2]=Ct,this.uint32[pa+3]=Nt,this.uint32[pa+4]=Yt,this.uint16[Hn+10]=yr,this.uint16[Hn+11]=Nr,this.uint16[Hn+12]=Dr,this.float32[pa+7]=ui,this.float32[pa+8]=Ni,this.uint8[Ha+36]=dn,this.uint8[Ha+37]=tn,this.uint8[Ha+38]=Nn,this.uint32[pa+10]=xn,this.int16[Hn+22]=On,oe},C}(wa);Jo.prototype.bytesPerElement=48,de("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Jo);var xs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn,On,Hn,pa,Ha,Na,Co,oo,xo,Ls,Lo,Fo){var Xs=this.length;return this.resize(Xs+1),this.emplace(Xs,oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn,On,Hn,pa,Ha,Na,Co,oo,xo,Ls,Lo,Fo)},C.prototype.emplace=function(oe,ge,Pe,je,lt,Ct,Nt,Yt,yr,Nr,Dr,ui,Ni,dn,tn,Nn,xn,On,Hn,pa,Ha,Na,Co,oo,xo,Ls,Lo,Fo,Xs){var Es=oe*34,Dl=oe*17;return this.int16[Es+0]=ge,this.int16[Es+1]=Pe,this.int16[Es+2]=je,this.int16[Es+3]=lt,this.int16[Es+4]=Ct,this.int16[Es+5]=Nt,this.int16[Es+6]=Yt,this.int16[Es+7]=yr,this.uint16[Es+8]=Nr,this.uint16[Es+9]=Dr,this.uint16[Es+10]=ui,this.uint16[Es+11]=Ni,this.uint16[Es+12]=dn,this.uint16[Es+13]=tn,this.uint16[Es+14]=Nn,this.uint16[Es+15]=xn,this.uint16[Es+16]=On,this.uint16[Es+17]=Hn,this.uint16[Es+18]=pa,this.uint16[Es+19]=Ha,this.uint16[Es+20]=Na,this.uint16[Es+21]=Co,this.uint16[Es+22]=oo,this.uint32[Dl+12]=xo,this.float32[Dl+13]=Ls,this.float32[Dl+14]=Lo,this.float32[Dl+15]=Fo,this.float32[Dl+16]=Xs,oe},C}(wa);xs.prototype.bytesPerElement=68,de("StructArrayLayout8i15ui1ul4f68",xs);var Oa=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var ge=this.length;return this.resize(ge+1),this.emplace(ge,oe)},C.prototype.emplace=function(oe,ge){var Pe=oe*1;return this.float32[Pe+0]=ge,oe},C}(wa);Oa.prototype.bytesPerElement=4,de("StructArrayLayout1f4",Oa);var So=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,ge,Pe)},C.prototype.emplace=function(oe,ge,Pe,je){var lt=oe*3;return this.int16[lt+0]=ge,this.int16[lt+1]=Pe,this.int16[lt+2]=je,oe},C}(wa);So.prototype.bytesPerElement=6,de("StructArrayLayout3i6",So);var fs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,ge,Pe)},C.prototype.emplace=function(oe,ge,Pe,je){var lt=oe*2,Ct=oe*4;return this.uint32[lt+0]=ge,this.uint16[Ct+2]=Pe,this.uint16[Ct+3]=je,oe},C}(wa);fs.prototype.bytesPerElement=8,de("StructArrayLayout1ul2ui8",fs);var Ts=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,ge)},C.prototype.emplace=function(oe,ge,Pe){var je=oe*2;return this.uint16[je+0]=ge,this.uint16[je+1]=Pe,oe},C}(wa);Ts.prototype.bytesPerElement=4,de("StructArrayLayout2ui4",Ts);var Ns=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var ge=this.length;return this.resize(ge+1),this.emplace(ge,oe)},C.prototype.emplace=function(oe,ge){var Pe=oe*1;return this.uint16[Pe+0]=ge,oe},C}(wa);Ns.prototype.bytesPerElement=2,de("StructArrayLayout1ui2",Ns);var ou=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,ge,Pe,je){var lt=this.length;return this.resize(lt+1),this.emplace(lt,oe,ge,Pe,je)},C.prototype.emplace=function(oe,ge,Pe,je,lt){var Ct=oe*4;return this.float32[Ct+0]=ge,this.float32[Ct+1]=Pe,this.float32[Ct+2]=je,this.float32[Ct+3]=lt,oe},C}(wa);ou.prototype.bytesPerElement=16,de("StructArrayLayout4f16",ou);var Hc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return V.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},V.x1.get=function(){return this._structArray.int16[this._pos2+2]},V.y1.get=function(){return this._structArray.int16[this._pos2+3]},V.x2.get=function(){return this._structArray.int16[this._pos2+4]},V.y2.get=function(){return this._structArray.int16[this._pos2+5]},V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.anchorPoint.get=function(){return new n(this.anchorPointX,this.anchorPointY)},Object.defineProperties(C.prototype,V),C}(Ea);Hc.prototype.size=20;var al=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Hc(this,oe)},C}(co);de("CollisionBoxArray",al);var Gc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},V.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},V.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},V.segment.get=function(){return this._structArray.uint16[this._pos2+10]},V.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},V.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},V.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},V.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},V.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},V.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},V.placedOrientation.set=function(oe){this._structArray.uint8[this._pos1+37]=oe},V.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},V.hidden.set=function(oe){this._structArray.uint8[this._pos1+38]=oe},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+10]=oe},V.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(C.prototype,V),C}(Ea);Gc.prototype.size=48;var Zl=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Gc(this,oe)},C}(Jo);de("PlacedSymbolArray",Zl);var xc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},V.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},V.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},V.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},V.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},V.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},V.key.get=function(){return this._structArray.uint16[this._pos2+8]},V.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},V.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},V.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},V.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},V.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},V.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},V.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},V.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},V.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},V.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},V.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},V.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},V.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+12]=oe},V.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},V.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},V.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},V.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(C.prototype,V),C}(Ea);xc.prototype.size=68;var bc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new xc(this,oe)},C}(xs);de("SymbolInstanceArray",bc);var af=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getoffsetX=function(oe){return this.float32[oe*1+0]},C}(Oa);de("GlyphOffsetArray",af);var nu=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getx=function(oe){return this.int16[oe*3+0]},C.prototype.gety=function(oe){return this.int16[oe*3+1]},C.prototype.gettileUnitDistanceFromAnchor=function(oe){return this.int16[oe*3+2]},C}(So);de("SymbolLineVertexArray",nu);var Pc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(C.prototype,V),C}(Ea);Pc.prototype.size=8;var Wc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Pc(this,oe)},C}(fs);de("FeatureIndexArray",Wc);var Ws=Ta([{name:"a_pos",components:2,type:"Int16"}],4),of=Ws.members,Vs=function(C){C===void 0&&(C=[]),this.segments=C};Vs.prototype.prepareSegment=function(C,V,oe,ge){var Pe=this.segments[this.segments.length-1];return C>Vs.MAX_VERTEX_ARRAY_LENGTH&&U("Max vertices per segment is "+Vs.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+C),(!Pe||Pe.vertexLength+C>Vs.MAX_VERTEX_ARRAY_LENGTH||Pe.sortKey!==ge)&&(Pe={vertexOffset:V.length,primitiveOffset:oe.length,vertexLength:0,primitiveLength:0},ge!==void 0&&(Pe.sortKey=ge),this.segments.push(Pe)),Pe},Vs.prototype.get=function(){return this.segments},Vs.prototype.destroy=function(){for(var C=0,V=this.segments;C>>16)*Ct&65535)<<16)&4294967295,Yt=Yt<<15|Yt>>>17,Yt=(Yt&65535)*Nt+(((Yt>>>16)*Nt&65535)<<16)&4294967295,je^=Yt,je=je<<13|je>>>19,lt=(je&65535)*5+(((je>>>16)*5&65535)<<16)&4294967295,je=(lt&65535)+27492+(((lt>>>16)+58964&65535)<<16);switch(Yt=0,ge){case 3:Yt^=(V.charCodeAt(yr+2)&255)<<16;case 2:Yt^=(V.charCodeAt(yr+1)&255)<<8;case 1:Yt^=V.charCodeAt(yr)&255,Yt=(Yt&65535)*Ct+(((Yt>>>16)*Ct&65535)<<16)&4294967295,Yt=Yt<<15|Yt>>>17,Yt=(Yt&65535)*Nt+(((Yt>>>16)*Nt&65535)<<16)&4294967295,je^=Yt}return je^=V.length,je^=je>>>16,je=(je&65535)*2246822507+(((je>>>16)*2246822507&65535)<<16)&4294967295,je^=je>>>13,je=(je&65535)*3266489909+(((je>>>16)*3266489909&65535)<<16)&4294967295,je^=je>>>16,je>>>0}k.exports=C}),te=t(function(k){function C(V,oe){for(var ge=V.length,Pe=oe^ge,je=0,lt;ge>=4;)lt=V.charCodeAt(je)&255|(V.charCodeAt(++je)&255)<<8|(V.charCodeAt(++je)&255)<<16|(V.charCodeAt(++je)&255)<<24,lt=(lt&65535)*1540483477+(((lt>>>16)*1540483477&65535)<<16),lt^=lt>>>24,lt=(lt&65535)*1540483477+(((lt>>>16)*1540483477&65535)<<16),Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)^lt,ge-=4,++je;switch(ge){case 3:Pe^=(V.charCodeAt(je+2)&255)<<16;case 2:Pe^=(V.charCodeAt(je+1)&255)<<8;case 1:Pe^=V.charCodeAt(je)&255,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)}return Pe^=Pe>>>13,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16),Pe^=Pe>>>15,Pe>>>0}k.exports=C}),ye=me,We=me,He=te;ye.murmur3=We,ye.murmur2=He;var at=function(){this.ids=[],this.positions=[],this.indexed=!1};at.prototype.add=function(C,V,oe,ge){this.ids.push(Gt(C)),this.positions.push(V,oe,ge)},at.prototype.getPositions=function(C){for(var V=Gt(C),oe=0,ge=this.ids.length-1;oe>1;this.ids[Pe]>=V?ge=Pe:oe=Pe+1}for(var je=[];this.ids[oe]===V;){var lt=this.positions[3*oe],Ct=this.positions[3*oe+1],Nt=this.positions[3*oe+2];je.push({index:lt,start:Ct,end:Nt}),oe++}return je},at.serialize=function(C,V){var oe=new Float64Array(C.ids),ge=new Uint32Array(C.positions);return _r(oe,ge,0,oe.length-1),V&&V.push(oe.buffer,ge.buffer),{ids:oe,positions:ge}},at.deserialize=function(C){var V=new at;return V.ids=C.ids,V.positions=C.positions,V.indexed=!0,V};var St=Math.pow(2,53)-1;function Gt(k){var C=+k;return!isNaN(C)&&C<=St?C:ye(String(k))}function _r(k,C,V,oe){for(;V>1],Pe=V-1,je=oe+1;;){do Pe++;while(k[Pe]ge);if(Pe>=je)break;Rr(k,Pe,je),Rr(C,3*Pe,3*je),Rr(C,3*Pe+1,3*je+1),Rr(C,3*Pe+2,3*je+2)}je-Vje.x+1||Ctje.y+1)&&U("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return V}function Is(k,C){return{type:k.type,id:k.id,properties:k.properties,geometry:C?Ja(k):[]}}function Ss(k,C,V,oe,ge){k.emplaceBack(C*2+(oe+1)/2,V*2+(ge+1)/2)}var tl=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Un,this.indexArray=new io,this.segments=new Vs,this.programConfigurations=new Cn(C.layers,C.zoom),this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};tl.prototype.populate=function(C,V,oe){var ge=this.layers[0],Pe=[],je=null;ge.type==="circle"&&(je=ge.layout.get("circle-sort-key"));for(var lt=0,Ct=C;lt=Wn||Nr<0||Nr>=Wn)){var Dr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,C.sortKey),ui=Dr.vertexLength;Ss(this.layoutVertexArray,yr,Nr,-1,-1),Ss(this.layoutVertexArray,yr,Nr,1,-1),Ss(this.layoutVertexArray,yr,Nr,1,1),Ss(this.layoutVertexArray,yr,Nr,-1,1),this.indexArray.emplaceBack(ui,ui+1,ui+2),this.indexArray.emplaceBack(ui,ui+3,ui+2),Dr.vertexLength+=4,Dr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,{},ge)},de("CircleBucket",tl,{omit:["layers"]});function os(k,C){for(var V=0;V=3){for(var Pe=0;Pe1){if(ed(k,C))return!0;for(var oe=0;oe1?k.distSqr(V):k.distSqr(V.sub(C)._mult(ge)._add(C))}function Md(k,C){for(var V=!1,oe,ge,Pe,je=0;jeC.y!=Pe.y>C.y&&C.x<(Pe.x-ge.x)*(C.y-ge.y)/(Pe.y-ge.y)+ge.x&&(V=!V)}return V}function mh(k,C){for(var V=!1,oe=0,ge=k.length-1;oeC.y!=je.y>C.y&&C.x<(je.x-Pe.x)*(C.y-Pe.y)/(je.y-Pe.y)+Pe.x&&(V=!V)}return V}function Sd(k,C,V,oe,ge){for(var Pe=0,je=k;Pe=lt.x&&ge>=lt.y)return!0}var Ct=[new n(C,V),new n(C,ge),new n(oe,ge),new n(oe,V)];if(k.length>2)for(var Nt=0,Yt=Ct;Ntge.x&&C.x>ge.x||k.yge.y&&C.y>ge.y)return!1;var Pe=W(k,C,V[0]);return Pe!==W(k,C,V[1])||Pe!==W(k,C,V[2])||Pe!==W(k,C,V[3])}function gh(k,C,V){var oe=C.paint.get(k).value;return oe.kind==="constant"?oe.value:V.programConfigurations.get(C.id).getMaxValue(k)}function td(k){return Math.sqrt(k[0]*k[0]+k[1]*k[1])}function hd(k,C,V,oe,ge){if(!C[0]&&!C[1])return k;var Pe=n.convert(C)._mult(ge);V==="viewport"&&Pe._rotate(-oe);for(var je=[],lt=0;lt0&&(Pe=1/Math.sqrt(Pe)),k[0]=C[0]*Pe,k[1]=C[1]*Pe,k[2]=C[2]*Pe,k}function jb(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]}function Vb(k,C,V){var oe=C[0],ge=C[1],Pe=C[2],je=V[0],lt=V[1],Ct=V[2];return k[0]=ge*Ct-Pe*lt,k[1]=Pe*je-oe*Ct,k[2]=oe*lt-ge*je,k}function qb(k,C,V){var oe=C[0],ge=C[1],Pe=C[2];return k[0]=oe*V[0]+ge*V[3]+Pe*V[6],k[1]=oe*V[1]+ge*V[4]+Pe*V[7],k[2]=oe*V[2]+ge*V[5]+Pe*V[8],k}var Hb=Tv,WM=function(){var k=wv();return function(C,V,oe,ge,Pe,je){var lt,Ct;for(V||(V=3),oe||(oe=0),ge?Ct=Math.min(ge*V+oe,C.length):Ct=C.length,lt=oe;ltk.width||ge.height>k.height||V.x>k.width-ge.width||V.y>k.height-ge.height)throw new RangeError("out of range source coordinates for image copy");if(ge.width>C.width||ge.height>C.height||oe.x>C.width-ge.width||oe.y>C.height-ge.height)throw new RangeError("out of range destination coordinates for image copy");for(var je=k.data,lt=C.data,Ct=0;Ct80*V){lt=Nt=k[0],Ct=Yt=k[1];for(var ui=V;uiNt&&(Nt=yr),Nr>Yt&&(Yt=Nr);Dr=Math.max(Nt-lt,Yt-Ct),Dr=Dr!==0?1/Dr:0}return pm(Pe,je,V,lt,Ct,Dr),je}function mg(k,C,V,oe,ge){var Pe,je;if(ge===I0(k,C,V,oe)>0)for(Pe=C;Pe=C;Pe-=oe)je=x1(Pe,k[Pe],k[Pe+1],je);return je&&gm(je,je.next)&&(xm(je),je=je.next),je}function Av(k,C){if(!k)return k;C||(C=k);var V=k,oe;do if(oe=!1,!V.steiner&&(gm(V,V.next)||Xc(V.prev,V,V.next)===0)){if(xm(V),V=C=V.prev,V===V.next)break;oe=!0}else V=V.next;while(oe||V!==C);return C}function pm(k,C,V,oe,ge,Pe,je){if(k){!je&&Pe&&gg(k,oe,ge,Pe);for(var lt=k,Ct,Nt;k.prev!==k.next;){if(Ct=k.prev,Nt=k.next,Pe?g1(k,oe,ge,Pe):m1(k)){C.push(Ct.i/V),C.push(k.i/V),C.push(Nt.i/V),xm(k),k=Nt.next,lt=Nt.next;continue}if(k=Nt,k===lt){je?je===1?(k=mm(Av(k),C,V),pm(k,C,V,oe,ge,Pe,2)):je===2&&Ud(k,C,V,oe,ge,Pe):pm(Av(k),C,V,oe,ge,Pe,1);break}}}}function m1(k){var C=k.prev,V=k,oe=k.next;if(Xc(C,V,oe)>=0)return!1;for(var ge=k.next.next;ge!==k.prev;){if(Sv(C.x,C.y,V.x,V.y,oe.x,oe.y,ge.x,ge.y)&&Xc(ge.prev,ge,ge.next)>=0)return!1;ge=ge.next}return!0}function g1(k,C,V,oe){var ge=k.prev,Pe=k,je=k.next;if(Xc(ge,Pe,je)>=0)return!1;for(var lt=ge.xPe.x?ge.x>je.x?ge.x:je.x:Pe.x>je.x?Pe.x:je.x,Yt=ge.y>Pe.y?ge.y>je.y?ge.y:je.y:Pe.y>je.y?Pe.y:je.y,yr=k0(lt,Ct,C,V,oe),Nr=k0(Nt,Yt,C,V,oe),Dr=k.prevZ,ui=k.nextZ;Dr&&Dr.z>=yr&&ui&&ui.z<=Nr;){if(Dr!==k.prev&&Dr!==k.next&&Sv(ge.x,ge.y,Pe.x,Pe.y,je.x,je.y,Dr.x,Dr.y)&&Xc(Dr.prev,Dr,Dr.next)>=0||(Dr=Dr.prevZ,ui!==k.prev&&ui!==k.next&&Sv(ge.x,ge.y,Pe.x,Pe.y,je.x,je.y,ui.x,ui.y)&&Xc(ui.prev,ui,ui.next)>=0))return!1;ui=ui.nextZ}for(;Dr&&Dr.z>=yr;){if(Dr!==k.prev&&Dr!==k.next&&Sv(ge.x,ge.y,Pe.x,Pe.y,je.x,je.y,Dr.x,Dr.y)&&Xc(Dr.prev,Dr,Dr.next)>=0)return!1;Dr=Dr.prevZ}for(;ui&&ui.z<=Nr;){if(ui!==k.prev&&ui!==k.next&&Sv(ge.x,ge.y,Pe.x,Pe.y,je.x,je.y,ui.x,ui.y)&&Xc(ui.prev,ui,ui.next)>=0)return!1;ui=ui.nextZ}return!0}function mm(k,C,V){var oe=k;do{var ge=oe.prev,Pe=oe.next.next;!gm(ge,Pe)&&yg(ge,oe,oe.next,Pe)&&_m(ge,Pe)&&_m(Pe,ge)&&(C.push(ge.i/V),C.push(oe.i/V),C.push(Pe.i/V),xm(oe),xm(oe.next),oe=k=Pe),oe=oe.next}while(oe!==k);return Av(oe)}function Ud(k,C,V,oe,ge,Pe){var je=k;do{for(var lt=je.next.next;lt!==je.prev;){if(je.i!==lt.i&&Ap(je,lt)){var Ct=L0(je,lt);je=Av(je,je.next),Ct=Av(Ct,Ct.next),pm(je,C,V,oe,ge,Pe),pm(Ct,C,V,oe,ge,Pe);return}lt=lt.next}je=je.next}while(je!==k)}function Mv(k,C,V,oe){var ge=[],Pe,je,lt,Ct,Nt;for(Pe=0,je=C.length;Pe=V.next.y&&V.next.y!==V.y){var lt=V.x+(ge-V.y)*(V.next.x-V.x)/(V.next.y-V.y);if(lt<=oe&<>Pe){if(Pe=lt,lt===oe){if(ge===V.y)return V;if(ge===V.next.y)return V.next}je=V.x=V.x&&V.x>=Nt&&oe!==V.x&&Sv(geje.x||V.x===je.x&&Qb(je,V)))&&(je=V,yr=Nr)),V=V.next;while(V!==Ct);return je}function Qb(k,C){return Xc(k.prev,k,C.prev)<0&&Xc(C.next,k,k.next)<0}function gg(k,C,V,oe){var ge=k;do ge.z===null&&(ge.z=k0(ge.x,ge.y,C,V,oe)),ge.prevZ=ge.prev,ge.nextZ=ge.next,ge=ge.next;while(ge!==k);ge.prevZ.nextZ=null,ge.prevZ=null,E0(ge)}function E0(k){var C,V,oe,ge,Pe,je,lt,Ct,Nt=1;do{for(V=k,k=null,Pe=null,je=0;V;){for(je++,oe=V,lt=0,C=0;C0||Ct>0&&oe;)lt!==0&&(Ct===0||!oe||V.z<=oe.z)?(ge=V,V=V.nextZ,lt--):(ge=oe,oe=oe.nextZ,Ct--),Pe?Pe.nextZ=ge:k=ge,ge.prevZ=Pe,Pe=ge;V=oe}Pe.nextZ=null,Nt*=2}while(je>1);return k}function k0(k,C,V,oe,ge){return k=32767*(k-V)*ge,C=32767*(C-oe)*ge,k=(k|k<<8)&16711935,k=(k|k<<4)&252645135,k=(k|k<<2)&858993459,k=(k|k<<1)&1431655765,C=(C|C<<8)&16711935,C=(C|C<<4)&252645135,C=(C|C<<2)&858993459,C=(C|C<<1)&1431655765,k|C<<1}function C0(k){var C=k,V=k;do(C.x=0&&(k-je)*(oe-lt)-(V-je)*(C-lt)>=0&&(V-je)*(Pe-lt)-(ge-je)*(oe-lt)>=0}function Ap(k,C){return k.next.i!==C.i&&k.prev.i!==C.i&&!_1(k,C)&&(_m(k,C)&&_m(C,k)&&ew(k,C)&&(Xc(k.prev,k,C.prev)||Xc(k,C.prev,C))||gm(k,C)&&Xc(k.prev,k,k.next)>0&&Xc(C.prev,C,C.next)>0)}function Xc(k,C,V){return(C.y-k.y)*(V.x-C.x)-(C.x-k.x)*(V.y-C.y)}function gm(k,C){return k.x===C.x&&k.y===C.y}function yg(k,C,V,oe){var ge=Gv(Xc(k,C,V)),Pe=Gv(Xc(k,C,oe)),je=Gv(Xc(V,oe,k)),lt=Gv(Xc(V,oe,C));return!!(ge!==Pe&&je!==lt||ge===0&&ym(k,V,C)||Pe===0&&ym(k,oe,C)||je===0&&ym(V,k,oe)||lt===0&&ym(V,C,oe))}function ym(k,C,V){return C.x<=Math.max(k.x,V.x)&&C.x>=Math.min(k.x,V.x)&&C.y<=Math.max(k.y,V.y)&&C.y>=Math.min(k.y,V.y)}function Gv(k){return k>0?1:k<0?-1:0}function _1(k,C){var V=k;do{if(V.i!==k.i&&V.next.i!==k.i&&V.i!==C.i&&V.next.i!==C.i&&yg(V,V.next,k,C))return!0;V=V.next}while(V!==k);return!1}function _m(k,C){return Xc(k.prev,k,k.next)<0?Xc(k,C,k.next)>=0&&Xc(k,k.prev,C)>=0:Xc(k,C,k.prev)<0||Xc(k,k.next,C)<0}function ew(k,C){var V=k,oe=!1,ge=(k.x+C.x)/2,Pe=(k.y+C.y)/2;do V.y>Pe!=V.next.y>Pe&&V.next.y!==V.y&&ge<(V.next.x-V.x)*(Pe-V.y)/(V.next.y-V.y)+V.x&&(oe=!oe),V=V.next;while(V!==k);return oe}function L0(k,C){var V=new P0(k.i,k.x,k.y),oe=new P0(C.i,C.x,C.y),ge=k.next,Pe=C.prev;return k.next=C,C.prev=k,V.next=ge,ge.prev=V,oe.next=V,V.prev=oe,Pe.next=oe,oe.prev=Pe,oe}function x1(k,C,V,oe){var ge=new P0(k,C,V);return oe?(ge.next=oe.next,ge.prev=oe,oe.next.prev=ge,oe.next=ge):(ge.prev=ge,ge.next=ge),ge}function xm(k){k.next.prev=k.prev,k.prev.next=k.next,k.prevZ&&(k.prevZ.nextZ=k.nextZ),k.nextZ&&(k.nextZ.prevZ=k.prevZ)}function P0(k,C,V){this.i=k,this.x=C,this.y=V,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}Tp.deviation=function(k,C,V,oe){var ge=C&&C.length,Pe=ge?C[0]*V:k.length,je=Math.abs(I0(k,0,Pe,V));if(ge)for(var lt=0,Ct=C.length;lt0&&(oe+=k[ge-1].length,V.holes.push(oe))}return V},pg.default=p1;function R0(k,C,V,oe,ge){iv(k,C,V||0,oe||k.length-1,ge||b1)}function iv(k,C,V,oe,ge){for(;oe>V;){if(oe-V>600){var Pe=oe-V+1,je=C-V+1,lt=Math.log(Pe),Ct=.5*Math.exp(2*lt/3),Nt=.5*Math.sqrt(lt*Ct*(Pe-Ct)/Pe)*(je-Pe/2<0?-1:1),Yt=Math.max(V,Math.floor(C-je*Ct/Pe+Nt)),yr=Math.min(oe,Math.floor(C+(Pe-je)*Ct/Pe+Nt));iv(k,C,Yt,yr,ge)}var Nr=k[C],Dr=V,ui=oe;for(Mp(k,V,C),ge(k[oe],Nr)>0&&Mp(k,V,oe);Dr0;)ui--}ge(k[V],Nr)===0?Mp(k,V,ui):(ui++,Mp(k,ui,oe)),ui<=C&&(V=ui+1),C<=ui&&(oe=ui-1)}}function Mp(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}function b1(k,C){return kC?1:0}function _g(k,C){var V=k.length;if(V<=1)return[k];for(var oe=[],ge,Pe,je=0;je1)for(var Ct=0;Ct>3}if(oe--,V===1||V===2)ge+=k.readSVarint(),Pe+=k.readSVarint(),V===1&&(lt&&je.push(lt),lt=[]),lt.push(new n(ge,Pe));else if(V===7)lt&<.push(lt[0].clone());else throw new Error("unknown command "+V)}return lt&&je.push(lt),je},Wv.prototype.bbox=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,ge=0,Pe=0,je=1/0,lt=-1/0,Ct=1/0,Nt=-1/0;k.pos>3}if(oe--,V===1||V===2)ge+=k.readSVarint(),Pe+=k.readSVarint(),gelt&&(lt=ge),PeNt&&(Nt=Pe);else if(V!==7)throw new Error("unknown command "+V)}return[je,Ct,lt,Nt]},Wv.prototype.toGeoJSON=function(k,C,V){var oe=this.extent*Math.pow(2,V),ge=this.extent*k,Pe=this.extent*C,je=this.loadGeometry(),lt=Wv.types[this.type],Ct,Nt;function Yt(Dr){for(var ui=0;ui>3;C=oe===1?k.readString():oe===2?k.readFloat():oe===3?k.readDouble():oe===4?k.readVarint64():oe===5?k.readVarint():oe===6?k.readSVarint():oe===7?k.readBoolean():null}return C}F0.prototype.feature=function(k){if(k<0||k>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[k];var C=this._pbf.readVarint()+this._pbf.pos;return new z0(this._pbf,C,this.extent,this._keys,this._values)};var P1=rw;function rw(k,C){this.layers=k.readFields(iw,{},C)}function iw(k,C,V){if(k===3){var oe=new nv(V,V.readVarint()+V.pos);oe.length&&(C[oe.name]=oe)}}var I1=P1,Sp=z0,R1=nv,av={VectorTile:I1,VectorTileFeature:Sp,VectorTileLayer:R1},D1=av.VectorTileFeature.types,bg=500,Ep=Math.pow(2,13);function Ev(k,C,V,oe,ge,Pe,je,lt){k.emplaceBack(C,V,Math.floor(oe*Ep)*2+je,ge*Ep*2,Pe*Ep*2,Math.round(lt))}var Id=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Ca,this.indexArray=new io,this.programConfigurations=new Cn(C.layers,C.zoom),this.segments=new Vs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};Id.prototype.populate=function(C,V,oe){this.features=[],this.hasPattern=xg("fill-extrusion",this.layers,V);for(var ge=0,Pe=C;ge=1){var On=dn[Nn-1];if(!nw(xn,On)){Dr.vertexLength+4>Vs.MAX_VERTEX_ARRAY_LENGTH&&(Dr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Hn=xn.sub(On)._perp()._unit(),pa=On.dist(xn);tn+pa>32768&&(tn=0),Ev(this.layoutVertexArray,xn.x,xn.y,Hn.x,Hn.y,0,0,tn),Ev(this.layoutVertexArray,xn.x,xn.y,Hn.x,Hn.y,0,1,tn),tn+=pa,Ev(this.layoutVertexArray,On.x,On.y,Hn.x,Hn.y,0,0,tn),Ev(this.layoutVertexArray,On.x,On.y,Hn.x,Hn.y,0,1,tn);var Ha=Dr.vertexLength;this.indexArray.emplaceBack(Ha,Ha+2,Ha+1),this.indexArray.emplaceBack(Ha+1,Ha+2,Ha+3),Dr.vertexLength+=4,Dr.primitiveLength+=2}}}}if(Dr.vertexLength+Nt>Vs.MAX_VERTEX_ARRAY_LENGTH&&(Dr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray)),D1[C.type]==="Polygon"){for(var Na=[],Co=[],oo=Dr.vertexLength,xo=0,Ls=Ct;xoWn)||k.y===C.y&&(k.y<0||k.y>Wn)}function aw(k){return k.every(function(C){return C.x<0})||k.every(function(C){return C.x>Wn})||k.every(function(C){return C.y<0})||k.every(function(C){return C.y>Wn})}var kp=new Rn({"fill-extrusion-opacity":new er(bn["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new oi(bn["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new er(bn["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new er(bn["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Li(bn["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new oi(bn["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new oi(bn["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new er(bn["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),sh={paint:kp},kv=function(k){function C(V){k.call(this,V,sh)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new Id(oe)},C.prototype.queryRadius=function(){return td(this.paint.get("fill-extrusion-translate"))},C.prototype.is3D=function(){return!0},C.prototype.queryIntersectsFeature=function(oe,ge,Pe,je,lt,Ct,Nt,Yt){var yr=hd(oe,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ct.angle,Nt),Nr=this.paint.get("fill-extrusion-height").evaluate(ge,Pe),Dr=this.paint.get("fill-extrusion-base").evaluate(ge,Pe),ui=ow(yr,Yt,Ct,0),Ni=O0(je,Dr,Nr,Yt),dn=Ni[0],tn=Ni[1];return z1(dn,tn,ui)},C}(Jn);function Xv(k,C){return k.x*C.x+k.y*C.y}function B0(k,C){if(k.length===1){for(var V=0,oe=C[V++],ge;!ge||oe.equals(ge);)if(ge=C[V++],!ge)return 1/0;for(;V=2&&C[Nt-1].equals(C[Nt-2]);)Nt--;for(var Yt=0;Yt0;if(Na&&Nn>Yt){var oo=Dr.dist(ui);if(oo>2*yr){var xo=Dr.sub(Dr.sub(ui)._mult(yr/oo)._round());this.updateDistance(ui,xo),this.addCurrentVertex(xo,dn,0,0,Nr),ui=xo}}var Ls=ui&&Ni,Lo=Ls?oe:Ct?"butt":ge;if(Ls&&Lo==="round"&&(paPe&&(Lo="bevel"),Lo==="bevel"&&(pa>2&&(Lo="flipbevel"),pa100)xn=tn.mult(-1);else{var Fo=pa*dn.add(tn).mag()/dn.sub(tn).mag();xn._perp()._mult(Fo*(Co?-1:1))}this.addCurrentVertex(Dr,xn,0,0,Nr),this.addCurrentVertex(Dr,xn.mult(-1),0,0,Nr)}else if(Lo==="bevel"||Lo==="fakeround"){var Xs=-Math.sqrt(pa*pa-1),Es=Co?Xs:0,Dl=Co?0:Xs;if(ui&&this.addCurrentVertex(Dr,dn,Es,Dl,Nr),Lo==="fakeround")for(var mu=Math.round(Ha*180/Math.PI/U0),zl=1;zl2*yr){var Sf=Dr.add(Ni.sub(Dr)._mult(yr/$f)._round());this.updateDistance(Dr,Sf),this.addCurrentVertex(Sf,tn,0,0,Nr),Dr=Sf}}}}},Tf.prototype.addCurrentVertex=function(C,V,oe,ge,Pe,je){je===void 0&&(je=!1);var lt=V.x+V.y*oe,Ct=V.y-V.x*oe,Nt=-V.x+V.y*ge,Yt=-V.y-V.x*ge;this.addHalfVertex(C,lt,Ct,je,!1,oe,Pe),this.addHalfVertex(C,Nt,Yt,je,!0,-ge,Pe),this.distance>Mm/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(C,V,oe,ge,Pe,je))},Tf.prototype.addHalfVertex=function(C,V,oe,ge,Pe,je,lt){var Ct=C.x,Nt=C.y,Yt=this.lineClips?this.scaledDistance*(Mm-1):this.scaledDistance,yr=Yt*Tg;if(this.layoutVertexArray.emplaceBack((Ct<<1)+(ge?1:0),(Nt<<1)+(Pe?1:0),Math.round(wg*V)+128,Math.round(wg*oe)+128,(je===0?0:je<0?-1:1)+1|(yr&63)<<2,yr>>6),this.lineClips){var Nr=this.scaledDistance-this.lineClips.start,Dr=this.lineClips.end-this.lineClips.start,ui=Nr/Dr;this.layoutVertexArray2.emplaceBack(ui,this.lineClipsArray.length)}var Ni=lt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Ni),lt.primitiveLength++),Pe?this.e2=Ni:this.e1=Ni},Tf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Tf.prototype.updateDistance=function(C,V){this.distance+=C.dist(V),this.updateScaledDistance()},de("LineBucket",Tf,{omit:["layers","patternFeatures"]});var j0=new Rn({"line-cap":new er(bn.layout_line["line-cap"]),"line-join":new oi(bn.layout_line["line-join"]),"line-miter-limit":new er(bn.layout_line["line-miter-limit"]),"line-round-limit":new er(bn.layout_line["line-round-limit"]),"line-sort-key":new oi(bn.layout_line["line-sort-key"])}),V0=new Rn({"line-opacity":new oi(bn.paint_line["line-opacity"]),"line-color":new oi(bn.paint_line["line-color"]),"line-translate":new er(bn.paint_line["line-translate"]),"line-translate-anchor":new er(bn.paint_line["line-translate-anchor"]),"line-width":new oi(bn.paint_line["line-width"]),"line-gap-width":new oi(bn.paint_line["line-gap-width"]),"line-offset":new oi(bn.paint_line["line-offset"]),"line-blur":new oi(bn.paint_line["line-blur"]),"line-dasharray":new mn(bn.paint_line["line-dasharray"]),"line-pattern":new Li(bn.paint_line["line-pattern"]),"line-gradient":new Fn(bn.paint_line["line-gradient"])}),Ag={paint:V0,layout:j0},lw=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,ge){return ge=new oa(Math.floor(ge.zoom),{now:ge.now,fadeDuration:ge.fadeDuration,zoomHistory:ge.zoomHistory,transition:ge.transition}),k.prototype.possiblyEvaluate.call(this,oe,ge)},C.prototype.evaluate=function(oe,ge,Pe,je){return ge=m({},ge,{zoom:Math.floor(ge.zoom)}),k.prototype.evaluate.call(this,oe,ge,Pe,je)},C}(oi),q=new lw(Ag.paint.properties["line-width"].specification);q.useIntegerZoom=!0;var D=function(k){function C(V){k.call(this,V,Ag),this.gradientVersion=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._handleSpecialPaintPropertyUpdate=function(oe){if(oe==="line-gradient"){var ge=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=ge._styleExpression.expression instanceof wu,this.gradientVersion=(this.gradientVersion+1)%h}},C.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},C.prototype.recalculate=function(oe,ge){k.prototype.recalculate.call(this,oe,ge),this.paint._values["line-floorwidth"]=q.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,oe)},C.prototype.createBucket=function(oe){return new Tf(oe)},C.prototype.queryRadius=function(oe){var ge=oe,Pe=Y(gh("line-width",this,ge),gh("line-gap-width",this,ge)),je=gh("line-offset",this,ge);return Pe/2+Math.abs(je)+td(this.paint.get("line-translate"))},C.prototype.queryIntersectsFeature=function(oe,ge,Pe,je,lt,Ct,Nt){var Yt=hd(oe,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ct.angle,Nt),yr=Nt/2*Y(this.paint.get("line-width").evaluate(ge,Pe),this.paint.get("line-gap-width").evaluate(ge,Pe)),Nr=this.paint.get("line-offset").evaluate(ge,Pe);return Nr&&(je=he(je,Nr*Nt)),Bu(Yt,je,yr)},C.prototype.isTileClipped=function(){return!0},C}(Jn);function Y(k,C){return C>0?C+2*k:k}function he(k,C){for(var V=[],oe=new n(0,0),ge=0;ge":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function Tn(k){for(var C="",V=0;V>1,Yt=-7,yr=V?ge-1:0,Nr=V?-1:1,Dr=k[C+yr];for(yr+=Nr,Pe=Dr&(1<<-Yt)-1,Dr>>=-Yt,Yt+=lt;Yt>0;Pe=Pe*256+k[C+yr],yr+=Nr,Yt-=8);for(je=Pe&(1<<-Yt)-1,Pe>>=-Yt,Yt+=oe;Yt>0;je=je*256+k[C+yr],yr+=Nr,Yt-=8);if(Pe===0)Pe=1-Nt;else{if(Pe===Ct)return je?NaN:(Dr?-1:1)*(1/0);je=je+Math.pow(2,oe),Pe=Pe-Nt}return(Dr?-1:1)*je*Math.pow(2,Pe-oe)},Io=function(k,C,V,oe,ge,Pe){var je,lt,Ct,Nt=Pe*8-ge-1,Yt=(1<>1,Nr=ge===23?Math.pow(2,-24)-Math.pow(2,-77):0,Dr=oe?0:Pe-1,ui=oe?1:-1,Ni=C<0||C===0&&1/C<0?1:0;for(C=Math.abs(C),isNaN(C)||C===1/0?(lt=isNaN(C)?1:0,je=Yt):(je=Math.floor(Math.log(C)/Math.LN2),C*(Ct=Math.pow(2,-je))<1&&(je--,Ct*=2),je+yr>=1?C+=Nr/Ct:C+=Nr*Math.pow(2,1-yr),C*Ct>=2&&(je++,Ct/=2),je+yr>=Yt?(lt=0,je=Yt):je+yr>=1?(lt=(C*Ct-1)*Math.pow(2,ge),je=je+yr):(lt=C*Math.pow(2,yr-1)*Math.pow(2,ge),je=0));ge>=8;k[V+Dr]=lt&255,Dr+=ui,lt/=256,ge-=8);for(je=je<0;k[V+Dr]=je&255,Dr+=ui,je/=256,Nt-=8);k[V+Dr-ui]|=Ni*128},As={read:qa,write:Io},_o=Pa;function Pa(k){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(k)?k:new Uint8Array(k||0),this.pos=0,this.type=0,this.length=this.buf.length}Pa.Varint=0,Pa.Fixed64=1,Pa.Bytes=2,Pa.Fixed32=5;var ns=65536*65536,Xo=1/ns,Vo=12,va=typeof TextDecoder>"u"?null:new TextDecoder("utf8");Pa.prototype={destroy:function(){this.buf=null},readFields:function(k,C,V){for(V=V||this.length;this.pos>3,Pe=this.pos;this.type=oe&7,k(ge,C,this),this.pos===Pe&&this.skip(oe)}return C},readMessage:function(k,C){return this.readFields(k,C,this.readVarint()+this.pos)},readFixed32:function(){var k=Zf(this.buf,this.pos);return this.pos+=4,k},readSFixed32:function(){var k=ad(this.buf,this.pos);return this.pos+=4,k},readFixed64:function(){var k=Zf(this.buf,this.pos)+Zf(this.buf,this.pos+4)*ns;return this.pos+=8,k},readSFixed64:function(){var k=Zf(this.buf,this.pos)+ad(this.buf,this.pos+4)*ns;return this.pos+=8,k},readFloat:function(){var k=As.read(this.buf,this.pos,!0,23,4);return this.pos+=4,k},readDouble:function(){var k=As.read(this.buf,this.pos,!0,52,8);return this.pos+=8,k},readVarint:function(k){var C=this.buf,V,oe;return oe=C[this.pos++],V=oe&127,oe<128||(oe=C[this.pos++],V|=(oe&127)<<7,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<14,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<21,oe<128)?V:(oe=C[this.pos],V|=(oe&15)<<28,ds(V,k,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var k=this.readVarint();return k%2===1?(k+1)/-2:k/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var k=this.readVarint()+this.pos,C=this.pos;return this.pos=k,k-C>=Vo&&va?Kl(this.buf,C,k):qh(this.buf,C,k)},readBytes:function(){var k=this.readVarint()+this.pos,C=this.buf.subarray(this.pos,k);return this.pos=k,C},readPackedVarint:function(k,C){if(this.type!==Pa.Bytes)return k.push(this.readVarint(C));var V=qo(this);for(k=k||[];this.pos127;);else if(C===Pa.Bytes)this.pos=this.readVarint()+this.pos;else if(C===Pa.Fixed32)this.pos+=4;else if(C===Pa.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+C)},writeTag:function(k,C){this.writeVarint(k<<3|C)},realloc:function(k){for(var C=this.length||16;C268435455||k<0){Su(k,this);return}this.realloc(4),this.buf[this.pos++]=k&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=k>>>7&127)))},writeSVarint:function(k){this.writeVarint(k<0?-k*2-1:k*2)},writeBoolean:function(k){this.writeVarint(!!k)},writeString:function(k){k=String(k),this.realloc(k.length*4),this.pos++;var C=this.pos;this.pos=Nu(this.buf,k,this.pos);var V=this.pos-C;V>=128&&vd(C,V,this),this.pos=C-1,this.writeVarint(V),this.pos+=V},writeFloat:function(k){this.realloc(4),As.write(this.buf,k,this.pos,!0,23,4),this.pos+=4},writeDouble:function(k){this.realloc(8),As.write(this.buf,k,this.pos,!0,52,8),this.pos+=8},writeBytes:function(k){var C=k.length;this.writeVarint(C),this.realloc(C);for(var V=0;V=128&&vd(V,oe,this),this.pos=V-1,this.writeVarint(oe),this.pos+=oe},writeMessage:function(k,C,V){this.writeTag(k,Pa.Bytes),this.writeRawMessage(C,V)},writePackedVarint:function(k,C){C.length&&this.writeMessage(k,lh,C)},writePackedSVarint:function(k,C){C.length&&this.writeMessage(k,zf,C)},writePackedBoolean:function(k,C){C.length&&this.writeMessage(k,zh,C)},writePackedFloat:function(k,C){C.length&&this.writeMessage(k,Rh,C)},writePackedDouble:function(k,C){C.length&&this.writeMessage(k,Dh,C)},writePackedFixed32:function(k,C){C.length&&this.writeMessage(k,Zc,C)},writePackedSFixed32:function(k,C){C.length&&this.writeMessage(k,Ff,C)},writePackedFixed64:function(k,C){C.length&&this.writeMessage(k,xh,C)},writePackedSFixed64:function(k,C){C.length&&this.writeMessage(k,uh,C)},writeBytesField:function(k,C){this.writeTag(k,Pa.Bytes),this.writeBytes(C)},writeFixed32Field:function(k,C){this.writeTag(k,Pa.Fixed32),this.writeFixed32(C)},writeSFixed32Field:function(k,C){this.writeTag(k,Pa.Fixed32),this.writeSFixed32(C)},writeFixed64Field:function(k,C){this.writeTag(k,Pa.Fixed64),this.writeFixed64(C)},writeSFixed64Field:function(k,C){this.writeTag(k,Pa.Fixed64),this.writeSFixed64(C)},writeVarintField:function(k,C){this.writeTag(k,Pa.Varint),this.writeVarint(C)},writeSVarintField:function(k,C){this.writeTag(k,Pa.Varint),this.writeSVarint(C)},writeStringField:function(k,C){this.writeTag(k,Pa.Bytes),this.writeString(C)},writeFloatField:function(k,C){this.writeTag(k,Pa.Fixed32),this.writeFloat(C)},writeDoubleField:function(k,C){this.writeTag(k,Pa.Fixed64),this.writeDouble(C)},writeBooleanField:function(k,C){this.writeVarintField(k,!!C)}};function ds(k,C,V){var oe=V.buf,ge,Pe;if(Pe=oe[V.pos++],ge=(Pe&112)>>4,Pe<128||(Pe=oe[V.pos++],ge|=(Pe&127)<<3,Pe<128)||(Pe=oe[V.pos++],ge|=(Pe&127)<<10,Pe<128)||(Pe=oe[V.pos++],ge|=(Pe&127)<<17,Pe<128)||(Pe=oe[V.pos++],ge|=(Pe&127)<<24,Pe<128)||(Pe=oe[V.pos++],ge|=(Pe&1)<<31,Pe<128))return Rs(k,ge,C);throw new Error("Expected varint not more than 10 bytes")}function qo(k){return k.type===Pa.Bytes?k.readVarint()+k.pos:k.pos+1}function Rs(k,C,V){return V?C*4294967296+(k>>>0):(C>>>0)*4294967296+(k>>>0)}function Su(k,C){var V,oe;if(k>=0?(V=k%4294967296|0,oe=k/4294967296|0):(V=~(-k%4294967296),oe=~(-k/4294967296),V^4294967295?V=V+1|0:(V=0,oe=oe+1|0)),k>=18446744073709552e3||k<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");C.realloc(10),bu(V,oe,C),Df(oe,C)}function bu(k,C,V){V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos]=k&127}function Df(k,C){var V=(k&7)<<4;C.buf[C.pos++]|=V|((k>>>=3)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127)))))}function vd(k,C,V){var oe=C<=16383?1:C<=2097151?2:C<=268435455?3:Math.floor(Math.log(C)/(Math.LN2*7));V.realloc(oe);for(var ge=V.pos-1;ge>=k;ge--)V.buf[ge+oe]=V.buf[ge]}function lh(k,C){for(var V=0;V>>8,k[V+2]=C>>>16,k[V+3]=C>>>24}function ad(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+(k[C+3]<<24)}function qh(k,C,V){for(var oe="",ge=C;ge239?4:Pe>223?3:Pe>191?2:1;if(ge+lt>V)break;var Ct,Nt,Yt;lt===1?Pe<128&&(je=Pe):lt===2?(Ct=k[ge+1],(Ct&192)===128&&(je=(Pe&31)<<6|Ct&63,je<=127&&(je=null))):lt===3?(Ct=k[ge+1],Nt=k[ge+2],(Ct&192)===128&&(Nt&192)===128&&(je=(Pe&15)<<12|(Ct&63)<<6|Nt&63,(je<=2047||je>=55296&&je<=57343)&&(je=null))):lt===4&&(Ct=k[ge+1],Nt=k[ge+2],Yt=k[ge+3],(Ct&192)===128&&(Nt&192)===128&&(Yt&192)===128&&(je=(Pe&15)<<18|(Ct&63)<<12|(Nt&63)<<6|Yt&63,(je<=65535||je>=1114112)&&(je=null))),je===null?(je=65533,lt=1):je>65535&&(je-=65536,oe+=String.fromCharCode(je>>>10&1023|55296),je=56320|je&1023),oe+=String.fromCharCode(je),ge+=lt}return oe}function Kl(k,C,V){return va.decode(k.subarray(C,V))}function Nu(k,C,V){for(var oe=0,ge,Pe;oe55295&&ge<57344)if(Pe)if(ge<56320){k[V++]=239,k[V++]=191,k[V++]=189,Pe=ge;continue}else ge=Pe-55296<<10|ge-56320|65536,Pe=null;else{ge>56319||oe+1===C.length?(k[V++]=239,k[V++]=191,k[V++]=189):Pe=ge;continue}else Pe&&(k[V++]=239,k[V++]=191,k[V++]=189,Pe=null);ge<128?k[V++]=ge:(ge<2048?k[V++]=ge>>6|192:(ge<65536?k[V++]=ge>>12|224:(k[V++]=ge>>18|240,k[V++]=ge>>12&63|128),k[V++]=ge>>6&63|128),k[V++]=ge&63|128)}return V}var Eu=3;function od(k,C,V){k===1&&V.readMessage(Ic,C)}function Ic(k,C,V){if(k===3){var oe=V.readMessage(Cp,{}),ge=oe.id,Pe=oe.bitmap,je=oe.width,lt=oe.height,Ct=oe.left,Nt=oe.top,Yt=oe.advance;C.push({id:ge,bitmap:new nd({width:je+2*Eu,height:lt+2*Eu},Pe),metrics:{width:je,height:lt,left:Ct,top:Nt,advance:Yt}})}}function Cp(k,C,V){k===1?C.id=V.readVarint():k===2?C.bitmap=V.readBytes():k===3?C.width=V.readVarint():k===4?C.height=V.readVarint():k===5?C.left=V.readSVarint():k===6?C.top=V.readSVarint():k===7&&(C.advance=V.readVarint())}function jd(k){return new _o(k).readFields(od,[])}var Rd=Eu;function pd(k){for(var C=0,V=0,oe=0,ge=k;oe=0;Dr--){var ui=lt[Dr];if(!(Nr.w>ui.w||Nr.h>ui.h)){if(Nr.x=ui.x,Nr.y=ui.y,Nt=Math.max(Nt,Nr.y+Nr.h),Ct=Math.max(Ct,Nr.x+Nr.w),Nr.w===ui.w&&Nr.h===ui.h){var Ni=lt.pop();Dr=0&&ge>=C&&qd[this.text.charCodeAt(ge)];ge--)oe--;this.text=this.text.substring(C,oe),this.sectionIndex=this.sectionIndex.slice(C,oe)},Yf.prototype.substring=function(C,V){var oe=new Yf;return oe.text=this.text.substring(C,V),oe.sectionIndex=this.sectionIndex.slice(C,V),oe.sections=this.sections,oe},Yf.prototype.toString=function(){return this.text},Yf.prototype.getMaxScale=function(){var C=this;return this.sectionIndex.reduce(function(V,oe){return Math.max(V,C.sections[oe].scale)},0)},Yf.prototype.addTextSection=function(C,V){this.text+=C.text,this.sections.push(Zv.forText(C.scale,C.fontStack||V));for(var oe=this.sections.length-1,ge=0;ge=Vd?null:++this.imageSectionID:(this.imageSectionID=Mg,this.imageSectionID)};function uw(k,C){for(var V=[],oe=k.text,ge=0,Pe=0,je=C;Pe=0,Yt=0,yr=0;yr0&&Sf>Co&&(Co=Sf)}else{var Fl=V[xo.fontStack],Ml=Fl&&Fl[Lo];if(Ml&&Ml.rect)Es=Ml.rect,Xs=Ml.metrics;else{var ku=C[xo.fontStack],Uu=ku&&ku[Lo];if(!Uu)continue;Xs=Uu.metrics}Fo=(Hn-xo.scale)*jn}zl?(k.verticalizable=!0,Na.push({glyph:Lo,imageName:Dl,x:Nr,y:Dr+Fo,vertical:zl,scale:xo.scale,fontStack:xo.fontStack,sectionIndex:Ls,metrics:Xs,rect:Es}),Nr+=mu*xo.scale+Nt):(Na.push({glyph:Lo,imageName:Dl,x:Nr,y:Dr+Fo,vertical:zl,scale:xo.scale,fontStack:xo.fontStack,sectionIndex:Ls,metrics:Xs,rect:Es}),Nr+=Xs.advance*xo.scale+Nt)}if(Na.length!==0){var Bh=Nr-Nt;ui=Math.max(Bh,ui),dw(Na,0,Na.length-1,dn,Co)}Nr=0;var Oh=Pe*Hn+Co;Ha.lineOffset=Math.max(Co,pa),Dr+=Oh,Ni=Math.max(Oh,Ni),++tn}var Jf=Dr-Lp,Wh=H0(je),Xh=Wh.horizontalAlign,Bf=Wh.verticalAlign;bh(k.positionedLines,dn,Xh,Bf,ui,Ni,Pe,Jf,ge.length),k.top+=-Bf*Jf,k.bottom=k.top+Jf,k.left+=-Xh*ui,k.right=k.left+ui}function dw(k,C,V,oe,ge){if(!(!oe&&!ge))for(var Pe=k[V],je=Pe.metrics.advance*Pe.scale,lt=(k[V].x+je)*oe,Ct=C;Ct<=V;Ct++)k[Ct].x-=lt,k[Ct].y+=ge}function bh(k,C,V,oe,ge,Pe,je,lt,Ct){var Nt=(C-V)*ge,Yt=0;Pe!==je?Yt=-lt*oe-Lp:Yt=(-oe*Ct+.5)*je;for(var yr=0,Nr=k;yr-V/2;){if(je--,je<0)return!1;lt-=k[je].dist(Pe),Pe=k[je]}lt+=k[je].dist(k[je+1]),je++;for(var Ct=[],Nt=0;ltoe;)Nt-=Ct.shift().angleDelta;if(Nt>ge)return!1;je++,lt+=yr.dist(Nr)}return!0}function $M(k){for(var C=0,V=0;VNt){var ui=(Nt-Ct)/Dr,Ni=Pl(yr.x,Nr.x,ui),dn=Pl(yr.y,Nr.y,ui),tn=new Fh(Ni,dn,Nr.angleTo(yr),Yt);return tn._round(),!je||KM(k,tn,lt,je,C)?tn:void 0}Ct+=Dr}}function MF(k,C,V,oe,ge,Pe,je,lt,Ct){var Nt=JM(oe,Pe,je),Yt=QM(oe,ge),yr=Yt*je,Nr=k[0].x===0||k[0].x===Ct||k[0].y===0||k[0].y===Ct;C-yr=0&&On=0&&Hn=0&&Nr+Nt<=Yt){var pa=new Fh(On,Hn,Nn,ui);pa._round(),(!oe||KM(k,pa,Pe,oe,ge))&&Dr.push(pa)}}yr+=tn}return!lt&&!Dr.length&&!je&&(Dr=eS(k,yr/2,V,oe,ge,Pe,je,!0,Ct)),Dr}function tS(k,C,V,oe,ge){for(var Pe=[],je=0;je=oe&&yr.x>=oe)&&(Yt.x>=oe?Yt=new n(oe,Yt.y+(yr.y-Yt.y)*((oe-Yt.x)/(yr.x-Yt.x)))._round():yr.x>=oe&&(yr=new n(oe,Yt.y+(yr.y-Yt.y)*((oe-Yt.x)/(yr.x-Yt.x)))._round()),!(Yt.y>=ge&&yr.y>=ge)&&(Yt.y>=ge?Yt=new n(Yt.x+(yr.x-Yt.x)*((ge-Yt.y)/(yr.y-Yt.y)),ge)._round():yr.y>=ge&&(yr=new n(Yt.x+(yr.x-Yt.x)*((ge-Yt.y)/(yr.y-Yt.y)),ge)._round()),(!Ct||!Yt.equals(Ct[Ct.length-1]))&&(Ct=[Yt],Pe.push(Ct)),Ct.push(yr)))))}return Pe}var kg=oc;function rS(k,C,V,oe){var ge=[],Pe=k.image,je=Pe.pixelRatio,lt=Pe.paddedRect.w-2*kg,Ct=Pe.paddedRect.h-2*kg,Nt=k.right-k.left,Yt=k.bottom-k.top,yr=Pe.stretchX||[[0,lt]],Nr=Pe.stretchY||[[0,Ct]],Dr=function(Fl,Ml){return Fl+Ml[1]-Ml[0]},ui=yr.reduce(Dr,0),Ni=Nr.reduce(Dr,0),dn=lt-ui,tn=Ct-Ni,Nn=0,xn=ui,On=0,Hn=Ni,pa=0,Ha=dn,Na=0,Co=tn;if(Pe.content&&oe){var oo=Pe.content;Nn=q1(yr,0,oo[0]),On=q1(Nr,0,oo[1]),xn=q1(yr,oo[0],oo[2]),Hn=q1(Nr,oo[1],oo[3]),pa=oo[0]-Nn,Na=oo[1]-On,Ha=oo[2]-oo[0]-xn,Co=oo[3]-oo[1]-Hn}var xo=function(Fl,Ml,ku,Uu){var Yc=H1(Fl.stretch-Nn,xn,Nt,k.left),lf=G1(Fl.fixed-pa,Ha,Fl.stretch,ui),$f=H1(Ml.stretch-On,Hn,Yt,k.top),Sf=G1(Ml.fixed-Na,Co,Ml.stretch,Ni),Bh=H1(ku.stretch-Nn,xn,Nt,k.left),Oh=G1(ku.fixed-pa,Ha,ku.stretch,ui),Jf=H1(Uu.stretch-On,Hn,Yt,k.top),Wh=G1(Uu.fixed-Na,Co,Uu.stretch,Ni),Xh=new n(Yc,$f),Bf=new n(Bh,$f),Zh=new n(Bh,Jf),Ld=new n(Yc,Jf),$v=new n(lf/je,Sf/je),Rp=new n(Oh/je,Wh/je),Dp=C*Math.PI/180;if(Dp){var zp=Math.sin(Dp),Fg=Math.cos(Dp),Hd=[Fg,-zp,zp,Fg];Xh._matMult(Hd),Bf._matMult(Hd),Ld._matMult(Hd),Zh._matMult(Hd)}var $1=Fl.stretch+Fl.fixed,bw=ku.stretch+ku.fixed,J1=Ml.stretch+Ml.fixed,ww=Uu.stretch+Uu.fixed,Dd={x:Pe.paddedRect.x+kg+$1,y:Pe.paddedRect.y+kg+J1,w:bw-$1,h:ww-J1},Bg=Ha/je/Nt,Q1=Co/je/Yt;return{tl:Xh,tr:Bf,bl:Ld,br:Zh,tex:Dd,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:$v,pixelOffsetBR:Rp,minFontScaleX:Bg,minFontScaleY:Q1,isSDF:V}};if(!oe||!Pe.stretchX&&!Pe.stretchY)ge.push(xo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:lt+1},{fixed:0,stretch:Ct+1}));else for(var Ls=iS(yr,dn,ui),Lo=iS(Nr,tn,Ni),Fo=0;Fo0&&(ui=Math.max(10,ui),this.circleDiameter=ui)}else{var Ni=je.top*lt-Ct,dn=je.bottom*lt+Ct,tn=je.left*lt-Ct,Nn=je.right*lt+Ct,xn=je.collisionPadding;if(xn&&(tn-=xn[0]*lt,Ni-=xn[1]*lt,Nn+=xn[2]*lt,dn+=xn[3]*lt),Yt){var On=new n(tn,Ni),Hn=new n(Nn,Ni),pa=new n(tn,dn),Ha=new n(Nn,dn),Na=Yt*Math.PI/180;On._rotate(Na),Hn._rotate(Na),pa._rotate(Na),Ha._rotate(Na),tn=Math.min(On.x,Hn.x,pa.x,Ha.x),Nn=Math.max(On.x,Hn.x,pa.x,Ha.x),Ni=Math.min(On.y,Hn.y,pa.y,Ha.y),dn=Math.max(On.y,Hn.y,pa.y,Ha.y)}C.emplaceBack(V.x,V.y,tn,Ni,Nn,dn,oe,ge,Pe)}this.boxEndIndex=C.length},Cg=function(C,V){if(C===void 0&&(C=[]),V===void 0&&(V=EF),this.data=C,this.length=this.data.length,this.compare=V,this.length>0)for(var oe=(this.length>>1)-1;oe>=0;oe--)this._down(oe)};Cg.prototype.push=function(C){this.data.push(C),this.length++,this._up(this.length-1)},Cg.prototype.pop=function(){if(this.length!==0){var C=this.data[0],V=this.data.pop();return this.length--,this.length>0&&(this.data[0]=V,this._down(0)),C}},Cg.prototype.peek=function(){return this.data[0]},Cg.prototype._up=function(C){for(var V=this,oe=V.data,ge=V.compare,Pe=oe[C];C>0;){var je=C-1>>1,lt=oe[je];if(ge(Pe,lt)>=0)break;oe[C]=lt,C=je}oe[C]=Pe},Cg.prototype._down=function(C){for(var V=this,oe=V.data,ge=V.compare,Pe=this.length>>1,je=oe[C];C=0)break;oe[C]=Ct,C=lt}oe[C]=je};function EF(k,C){return kC?1:0}function kF(k,C,V){C===void 0&&(C=1),V===void 0&&(V=!1);for(var oe=1/0,ge=1/0,Pe=-1/0,je=-1/0,lt=k[0],Ct=0;CtPe)&&(Pe=Nt.x),(!Ct||Nt.y>je)&&(je=Nt.y)}var Yt=Pe-oe,yr=je-ge,Nr=Math.min(Yt,yr),Dr=Nr/2,ui=new Cg([],CF);if(Nr===0)return new n(oe,ge);for(var Ni=oe;Nitn.d||!tn.d)&&(tn=xn,V&&console.log("found best %d after %d probes",Math.round(1e4*xn.d)/1e4,Nn)),!(xn.max-tn.d<=C)&&(Dr=xn.h/2,ui.push(new Lg(xn.p.x-Dr,xn.p.y-Dr,Dr,k)),ui.push(new Lg(xn.p.x+Dr,xn.p.y-Dr,Dr,k)),ui.push(new Lg(xn.p.x-Dr,xn.p.y+Dr,Dr,k)),ui.push(new Lg(xn.p.x+Dr,xn.p.y+Dr,Dr,k)),Nn+=4)}return V&&(console.log("num probes: "+Nn),console.log("best distance: "+tn.d)),tn.p}function CF(k,C){return C.max-k.max}function Lg(k,C,V,oe){this.p=new n(k,C),this.h=V,this.d=LF(this.p,oe),this.max=this.d+this.h*Math.SQRT2}function LF(k,C){for(var V=!1,oe=1/0,ge=0;gek.y!=Yt.y>k.y&&k.x<(Yt.x-Nt.x)*(k.y-Nt.y)/(Yt.y-Nt.y)+Nt.x&&(V=!V),oe=Math.min(oe,ev(k,Nt,Yt))}return(V?1:-1)*Math.sqrt(oe)}function PF(k){for(var C=0,V=0,oe=0,ge=k[0],Pe=0,je=ge.length,lt=je-1;Pe=Wn||Hd.y<0||Hd.y>=Wn||DF(k,Hd,Fg,V,oe,ge,Lo,k.layers[0],k.collisionBoxArray,C.index,C.sourceLayerIndex,k.index,tn,Hn,Na,Ct,xn,pa,Co,Dr,C,Pe,Nt,Yt,je)};if(oo==="line")for(var Xs=0,Es=tS(C.geometry,0,0,Wn,Wn);Xs1){var $f=AF(lf,Ha,V.vertical||ui,oe,Ni,Nn);$f&&Fo(lf,$f)}}else if(C.type==="Polygon")for(var Sf=0,Bh=_g(C.geometry,0);SfPp&&U(k.layerIds[0]+': Value for "text-size" is >= '+G0+'. Reduce your "text-size".')):dn.kind==="composite"&&(tn=[wh*Dr.compositeTextSizes[0].evaluate(je,{},ui),wh*Dr.compositeTextSizes[1].evaluate(je,{},ui)],(tn[0]>Pp||tn[1]>Pp)&&U(k.layerIds[0]+': Value for "text-size" is >= '+G0+'. Reduce your "text-size".')),k.addSymbols(k.text,Ni,tn,lt,Pe,je,Nt,C,Ct.lineStartIndex,Ct.lineLength,Nr,ui);for(var Nn=0,xn=Yt;NnPp&&U(k.layerIds[0]+': Value for "icon-size" is >= '+G0+'. Reduce your "icon-size".')):Xh.kind==="composite"&&(Bf=[wh*Hn.compositeIconSizes[0].evaluate(On,{},Ha),wh*Hn.compositeIconSizes[1].evaluate(On,{},Ha)],(Bf[0]>Pp||Bf[1]>Pp)&&U(k.layerIds[0]+': Value for "icon-size" is >= '+G0+'. Reduce your "icon-size".')),k.addSymbols(k.icon,Jf,Bf,xn,Nn,On,!1,C,oo.lineStartIndex,oo.lineLength,-1,Ha),zl=k.icon.placedSymbolArray.length-1,Wh&&(Es=Wh.length*4,k.addSymbols(k.icon,Wh,Bf,xn,Nn,On,Hh.vertical,C,oo.lineStartIndex,oo.lineLength,-1,Ha),Fl=k.icon.placedSymbolArray.length-1)}for(var Zh in oe.horizontal){var Ld=oe.horizontal[Zh];if(!xo){ku=ye(Ld.text);var $v=lt.layout.get("text-rotate").evaluate(On,{},Ha);xo=new W1(Ct,C,Nt,Yt,yr,Ld,Nr,Dr,ui,$v)}var Rp=Ld.positionedLines.length===1;if(Dl+=aS(k,C,Ld,Pe,lt,ui,On,Ni,oo,oe.vertical?Hh.horizontal:Hh.horizontalOnly,Rp?Object.keys(oe.horizontal):[Zh],Ml,zl,Hn,Ha),Rp)break}oe.vertical&&(mu+=aS(k,C,oe.vertical,Pe,lt,ui,On,Ni,oo,Hh.vertical,["vertical"],Ml,Fl,Hn,Ha));var Dp=xo?xo.boxStartIndex:k.collisionBoxArray.length,zp=xo?xo.boxEndIndex:k.collisionBoxArray.length,Fg=Lo?Lo.boxStartIndex:k.collisionBoxArray.length,Hd=Lo?Lo.boxEndIndex:k.collisionBoxArray.length,$1=Ls?Ls.boxStartIndex:k.collisionBoxArray.length,bw=Ls?Ls.boxEndIndex:k.collisionBoxArray.length,J1=Fo?Fo.boxStartIndex:k.collisionBoxArray.length,ww=Fo?Fo.boxEndIndex:k.collisionBoxArray.length,Dd=-1,Bg=function(Z0,wS){return Z0&&Z0.circleDiameter?Math.max(Z0.circleDiameter,wS):wS};Dd=Bg(xo,Dd),Dd=Bg(Lo,Dd),Dd=Bg(Ls,Dd),Dd=Bg(Fo,Dd);var Q1=Dd>-1?1:0;Q1&&(Dd*=Na/jn),k.glyphOffsetArray.length>=pu.MAX_GLYPHS&&U("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),On.sortKey!==void 0&&k.addToSortKeyRanges(k.symbolInstances.length,On.sortKey),k.symbolInstances.emplaceBack(C.x,C.y,Ml.right>=0?Ml.right:-1,Ml.center>=0?Ml.center:-1,Ml.left>=0?Ml.left:-1,Ml.vertical||-1,zl,Fl,ku,Dp,zp,Fg,Hd,$1,bw,J1,ww,Nt,Dl,mu,Xs,Es,Q1,0,Nr,Uu,Yc,Dd)}function zF(k,C,V,oe){var ge=k.compareText;if(!(C in ge))ge[C]=[];else for(var Pe=ge[C],je=Pe.length-1;je>=0;je--)if(oe.dist(Pe[je])0)&&(je.value.kind!=="constant"||je.value.value.length>0),Yt=Ct.value.kind!=="constant"||!!Ct.value.value||Object.keys(Ct.parameters).length>0,yr=Pe.get("symbol-sort-key");if(this.features=[],!(!Nt&&!Yt)){for(var Nr=V.iconDependencies,Dr=V.glyphDependencies,ui=V.availableImages,Ni=new oa(this.zoom),dn=0,tn=C;dn=0;for(var mu=0,zl=Co.sections;mu=0;Ct--)je[Ct]={x:V[Ct].x,y:V[Ct].y,tileUnitDistanceFromAnchor:Pe},Ct>0&&(Pe+=V[Ct-1].dist(V[Ct]));for(var Nt=0;Nt0},pu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},pu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},pu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},pu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},pu.prototype.addIndicesForPlacedSymbol=function(C,V){for(var oe=C.placedSymbolArray.get(V),ge=oe.vertexStartIndex+oe.numGlyphs*4,Pe=oe.vertexStartIndex;Pe1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(C),this.sortedAngle=C,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var oe=0,ge=this.symbolInstanceIndexes;oe=0&&Nt.indexOf(lt)===Ct&&V.addIndicesForPlacedSymbol(V.text,lt)}),je.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,je.verticalPlacedTextSymbolIndex),je.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.placedIconSymbolIndex),je.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},de("SymbolBucket",pu,{omit:["layers","collisionBoxArray","features","compareText"]}),pu.MAX_GLYPHS=65535,pu.addDynamicAttributes=mw;function NF(k,C){return C.replace(/{([^{}]+)}/g,function(V,oe){return oe in k?String(k[oe]):""})}var UF=new Rn({"symbol-placement":new er(bn.layout_symbol["symbol-placement"]),"symbol-spacing":new er(bn.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new er(bn.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new oi(bn.layout_symbol["symbol-sort-key"]),"symbol-z-order":new er(bn.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new er(bn.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new er(bn.layout_symbol["icon-ignore-placement"]),"icon-optional":new er(bn.layout_symbol["icon-optional"]),"icon-rotation-alignment":new er(bn.layout_symbol["icon-rotation-alignment"]),"icon-size":new oi(bn.layout_symbol["icon-size"]),"icon-text-fit":new er(bn.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new er(bn.layout_symbol["icon-text-fit-padding"]),"icon-image":new oi(bn.layout_symbol["icon-image"]),"icon-rotate":new oi(bn.layout_symbol["icon-rotate"]),"icon-padding":new er(bn.layout_symbol["icon-padding"]),"icon-keep-upright":new er(bn.layout_symbol["icon-keep-upright"]),"icon-offset":new oi(bn.layout_symbol["icon-offset"]),"icon-anchor":new oi(bn.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new er(bn.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new er(bn.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new er(bn.layout_symbol["text-rotation-alignment"]),"text-field":new oi(bn.layout_symbol["text-field"]),"text-font":new oi(bn.layout_symbol["text-font"]),"text-size":new oi(bn.layout_symbol["text-size"]),"text-max-width":new oi(bn.layout_symbol["text-max-width"]),"text-line-height":new er(bn.layout_symbol["text-line-height"]),"text-letter-spacing":new oi(bn.layout_symbol["text-letter-spacing"]),"text-justify":new oi(bn.layout_symbol["text-justify"]),"text-radial-offset":new oi(bn.layout_symbol["text-radial-offset"]),"text-variable-anchor":new er(bn.layout_symbol["text-variable-anchor"]),"text-anchor":new oi(bn.layout_symbol["text-anchor"]),"text-max-angle":new er(bn.layout_symbol["text-max-angle"]),"text-writing-mode":new er(bn.layout_symbol["text-writing-mode"]),"text-rotate":new oi(bn.layout_symbol["text-rotate"]),"text-padding":new er(bn.layout_symbol["text-padding"]),"text-keep-upright":new er(bn.layout_symbol["text-keep-upright"]),"text-transform":new oi(bn.layout_symbol["text-transform"]),"text-offset":new oi(bn.layout_symbol["text-offset"]),"text-allow-overlap":new er(bn.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new er(bn.layout_symbol["text-ignore-placement"]),"text-optional":new er(bn.layout_symbol["text-optional"])}),jF=new Rn({"icon-opacity":new oi(bn.paint_symbol["icon-opacity"]),"icon-color":new oi(bn.paint_symbol["icon-color"]),"icon-halo-color":new oi(bn.paint_symbol["icon-halo-color"]),"icon-halo-width":new oi(bn.paint_symbol["icon-halo-width"]),"icon-halo-blur":new oi(bn.paint_symbol["icon-halo-blur"]),"icon-translate":new er(bn.paint_symbol["icon-translate"]),"icon-translate-anchor":new er(bn.paint_symbol["icon-translate-anchor"]),"text-opacity":new oi(bn.paint_symbol["text-opacity"]),"text-color":new oi(bn.paint_symbol["text-color"],{runtimeType:zs,getOverride:function(k){return k.textColor},hasOverride:function(k){return!!k.textColor}}),"text-halo-color":new oi(bn.paint_symbol["text-halo-color"]),"text-halo-width":new oi(bn.paint_symbol["text-halo-width"]),"text-halo-blur":new oi(bn.paint_symbol["text-halo-blur"]),"text-translate":new er(bn.paint_symbol["text-translate"]),"text-translate-anchor":new er(bn.paint_symbol["text-translate-anchor"])}),gw={paint:jF,layout:UF},Rg=function(C){this.type=C.property.overrides?C.property.overrides.runtimeType:El,this.defaultValue=C};Rg.prototype.evaluate=function(C){if(C.formattedSection){var V=this.defaultValue.property.overrides;if(V&&V.hasOverride(C.formattedSection))return V.getOverride(C.formattedSection)}return C.feature&&C.featureState?this.defaultValue.evaluate(C.feature,C.featureState):this.defaultValue.property.specification.default},Rg.prototype.eachChild=function(C){if(!this.defaultValue.isConstant()){var V=this.defaultValue.value;C(V._styleExpression.expression)}},Rg.prototype.outputDefined=function(){return!1},Rg.prototype.serialize=function(){return null},de("FormatSectionOverride",Rg,{omit:["defaultValue"]});var VF=function(k){function C(V){k.call(this,V,gw)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,ge){if(k.prototype.recalculate.call(this,oe,ge),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Pe=this.layout.get("text-writing-mode");if(Pe){for(var je=[],lt=0,Ct=Pe;lt",targetMapId:ge,sourceMapId:je.mapId})}}},Dg.prototype.receive=function(C){var V=C.data,oe=V.id;if(oe&&!(V.targetMapId&&this.mapId!==V.targetMapId))if(V.type===""){delete this.tasks[oe];var ge=this.cancelCallbacks[oe];delete this.cancelCallbacks[oe],ge&&ge()}else se()||V.mustQueue?(this.tasks[oe]=V,this.taskQueue.push(oe),this.invoker.trigger()):this.processTask(oe,V)},Dg.prototype.process=function(){if(this.taskQueue.length){var C=this.taskQueue.shift(),V=this.tasks[C];delete this.tasks[C],this.taskQueue.length&&this.invoker.trigger(),V&&this.processTask(C,V)}},Dg.prototype.processTask=function(C,V){var oe=this;if(V.type===""){var ge=this.callbacks[C];delete this.callbacks[C],ge&&(V.error?ge(xt(V.error)):ge(null,xt(V.data)))}else{var Pe=!1,je=J(this.globalScope)?void 0:[],lt=V.hasCallback?function(Nr,Dr){Pe=!0,delete oe.cancelCallbacks[C],oe.target.postMessage({id:C,type:"",sourceMapId:oe.mapId,error:Nr?dt(Nr):null,data:dt(Dr,je)},je)}:function(Nr){Pe=!0},Ct=null,Nt=xt(V.data);if(this.parent[V.type])Ct=this.parent[V.type](V.sourceMapId,Nt,lt);else if(this.parent.getWorkerSource){var Yt=V.type.split("."),yr=this.parent.getWorkerSource(V.sourceMapId,Yt[0],Nt.source);Ct=yr[Yt[1]](Nt,lt)}else lt(new Error("Could not find function "+V.type));!Pe&&Ct&&Ct.cancel&&(this.cancelCallbacks[C]=Ct.cancel)}},Dg.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function QF(k,C,V){C=Math.pow(2,V)-C-1;var oe=fS(k*256,C*256,V),ge=fS((k+1)*256,(C+1)*256,V);return oe[0]+","+oe[1]+","+ge[0]+","+ge[1]}function fS(k,C,V){var oe=2*Math.PI*6378137/256/Math.pow(2,V),ge=k*oe-2*Math.PI*6378137/2,Pe=C*oe-2*Math.PI*6378137/2;return[ge,Pe]}var Af=function(C,V){C&&(V?this.setSouthWest(C).setNorthEast(V):C.length===4?this.setSouthWest([C[0],C[1]]).setNorthEast([C[2],C[3]]):this.setSouthWest(C[0]).setNorthEast(C[1]))};Af.prototype.setNorthEast=function(C){return this._ne=C instanceof sc?new sc(C.lng,C.lat):sc.convert(C),this},Af.prototype.setSouthWest=function(C){return this._sw=C instanceof sc?new sc(C.lng,C.lat):sc.convert(C),this},Af.prototype.extend=function(C){var V=this._sw,oe=this._ne,ge,Pe;if(C instanceof sc)ge=C,Pe=C;else if(C instanceof Af){if(ge=C._sw,Pe=C._ne,!ge||!Pe)return this}else{if(Array.isArray(C))if(C.length===4||C.every(Array.isArray)){var je=C;return this.extend(Af.convert(je))}else{var lt=C;return this.extend(sc.convert(lt))}return this}return!V&&!oe?(this._sw=new sc(ge.lng,ge.lat),this._ne=new sc(Pe.lng,Pe.lat)):(V.lng=Math.min(ge.lng,V.lng),V.lat=Math.min(ge.lat,V.lat),oe.lng=Math.max(Pe.lng,oe.lng),oe.lat=Math.max(Pe.lat,oe.lat)),this},Af.prototype.getCenter=function(){return new sc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Af.prototype.getSouthWest=function(){return this._sw},Af.prototype.getNorthEast=function(){return this._ne},Af.prototype.getNorthWest=function(){return new sc(this.getWest(),this.getNorth())},Af.prototype.getSouthEast=function(){return new sc(this.getEast(),this.getSouth())},Af.prototype.getWest=function(){return this._sw.lng},Af.prototype.getSouth=function(){return this._sw.lat},Af.prototype.getEast=function(){return this._ne.lng},Af.prototype.getNorth=function(){return this._ne.lat},Af.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Af.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Af.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Af.prototype.contains=function(C){var V=sc.convert(C),oe=V.lng,ge=V.lat,Pe=this._sw.lat<=ge&&ge<=this._ne.lat,je=this._sw.lng<=oe&&oe<=this._ne.lng;return this._sw.lng>this._ne.lng&&(je=this._sw.lng>=oe&&oe>=this._ne.lng),Pe&&je},Af.convert=function(C){return!C||C instanceof Af?C:new Af(C)};var hS=63710088e-1,sc=function(C,V){if(isNaN(C)||isNaN(V))throw new Error("Invalid LngLat object: ("+C+", "+V+")");if(this.lng=+C,this.lat=+V,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};sc.prototype.wrap=function(){return new sc(_(this.lng,-180,180),this.lat)},sc.prototype.toArray=function(){return[this.lng,this.lat]},sc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},sc.prototype.distanceTo=function(C){var V=Math.PI/180,oe=this.lat*V,ge=C.lat*V,Pe=Math.sin(oe)*Math.sin(ge)+Math.cos(oe)*Math.cos(ge)*Math.cos((C.lng-this.lng)*V),je=hS*Math.acos(Math.min(Pe,1));return je},sc.prototype.toBounds=function(C){C===void 0&&(C=0);var V=40075017,oe=360*C/V,ge=oe/Math.cos(Math.PI/180*this.lat);return new Af(new sc(this.lng-ge,this.lat-oe),new sc(this.lng+ge,this.lat+oe))},sc.convert=function(C){if(C instanceof sc)return C;if(Array.isArray(C)&&(C.length===2||C.length===3))return new sc(Number(C[0]),Number(C[1]));if(!Array.isArray(C)&&typeof C=="object"&&C!==null)return new sc(Number("lng"in C?C.lng:C.lon),Number(C.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var dS=2*Math.PI*hS;function vS(k){return dS*Math.cos(k*Math.PI/180)}function pS(k){return(180+k)/360}function mS(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function gS(k,C){return k/vS(C)}function eB(k){return k*360-180}function _w(k){var C=180-k*360;return 360/Math.PI*Math.atan(Math.exp(C*Math.PI/180))-90}function tB(k,C){return k*vS(_w(C))}function rB(k){return 1/Math.cos(k*Math.PI/180)}var km=function(C,V,oe){oe===void 0&&(oe=0),this.x=+C,this.y=+V,this.z=+oe};km.fromLngLat=function(C,V){V===void 0&&(V=0);var oe=sc.convert(C);return new km(pS(oe.lng),mS(oe.lat),gS(V,oe.lat))},km.prototype.toLngLat=function(){return new sc(eB(this.x),_w(this.y))},km.prototype.toAltitude=function(){return tB(this.z,this.y)},km.prototype.meterInMercatorCoordinateUnits=function(){return 1/dS*rB(_w(this.y))};var Cm=function(C,V,oe){this.z=C,this.x=V,this.y=oe,this.key=X0(0,C,C,V,oe)};Cm.prototype.equals=function(C){return this.z===C.z&&this.x===C.x&&this.y===C.y},Cm.prototype.url=function(C,V){var oe=QF(this.x,this.y,this.z),ge=iB(this.z,this.x,this.y);return C[(this.x+this.y)%C.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(V==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",ge).replace("{bbox-epsg-3857}",oe)},Cm.prototype.getTilePoint=function(C){var V=Math.pow(2,this.z);return new n((C.x*V-this.x)*Wn,(C.y*V-this.y)*Wn)},Cm.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var yS=function(C,V){this.wrap=C,this.canonical=V,this.key=X0(C,V.z,V.z,V.x,V.y)},Mf=function(C,V,oe,ge,Pe){this.overscaledZ=C,this.wrap=V,this.canonical=new Cm(oe,+ge,+Pe),this.key=X0(V,C,oe,ge,Pe)};Mf.prototype.equals=function(C){return this.overscaledZ===C.overscaledZ&&this.wrap===C.wrap&&this.canonical.equals(C.canonical)},Mf.prototype.scaledTo=function(C){var V=this.canonical.z-C;return C>this.canonical.z?new Mf(C,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Mf(C,this.wrap,C,this.canonical.x>>V,this.canonical.y>>V)},Mf.prototype.calculateScaledKey=function(C,V){var oe=this.canonical.z-C;return C>this.canonical.z?X0(this.wrap*+V,C,this.canonical.z,this.canonical.x,this.canonical.y):X0(this.wrap*+V,C,C,this.canonical.x>>oe,this.canonical.y>>oe)},Mf.prototype.isChildOf=function(C){if(C.wrap!==this.wrap)return!1;var V=this.canonical.z-C.canonical.z;return C.overscaledZ===0||C.overscaledZ>V&&C.canonical.y===this.canonical.y>>V},Mf.prototype.children=function(C){if(this.overscaledZ>=C)return[new Mf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var V=this.canonical.z+1,oe=this.canonical.x*2,ge=this.canonical.y*2;return[new Mf(V,this.wrap,V,oe,ge),new Mf(V,this.wrap,V,oe+1,ge),new Mf(V,this.wrap,V,oe,ge+1),new Mf(V,this.wrap,V,oe+1,ge+1)]},Mf.prototype.isLessThan=function(C){return this.wrapC.wrap?!1:this.overscaledZC.overscaledZ?!1:this.canonical.xC.canonical.x?!1:this.canonical.y0;Pe--)ge=1<=this.dim+1||V<-1||V>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(V+1)*this.stride+(C+1)},Yv.prototype._unpackMapbox=function(C,V,oe){return(C*256*256+V*256+oe)/10-1e4},Yv.prototype._unpackTerrarium=function(C,V,oe){return C*256+V+oe/256-32768},Yv.prototype.getPixels=function(){return new Rf({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Yv.prototype.backfillBorder=function(C,V,oe){if(this.dim!==C.dim)throw new Error("dem dimension mismatch");var ge=V*this.dim,Pe=V*this.dim+this.dim,je=oe*this.dim,lt=oe*this.dim+this.dim;switch(V){case-1:ge=Pe-1;break;case 1:Pe=ge+1;break}switch(oe){case-1:je=lt-1;break;case 1:lt=je+1;break}for(var Ct=-V*this.dim,Nt=-oe*this.dim,Yt=je;Yt=0&&yr[3]>=0&&Ct.insert(lt,yr[0],yr[1],yr[2],yr[3])}},Kv.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new av.VectorTile(new _o(this.rawTileData)).layers,this.sourceLayerCoder=new Y1(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Kv.prototype.query=function(C,V,oe,ge){var Pe=this;this.loadVTLayers();for(var je=C.params||{},lt=Wn/C.tileSize/C.scale,Ct=Ye(je.filter),Nt=C.queryGeometry,Yt=C.queryPadding*lt,yr=xS(Nt),Nr=this.grid.query(yr.minX-Yt,yr.minY-Yt,yr.maxX+Yt,yr.maxY+Yt),Dr=xS(C.cameraQueryGeometry),ui=this.grid3D.query(Dr.minX-Yt,Dr.minY-Yt,Dr.maxX+Yt,Dr.maxY+Yt,function(pa,Ha,Na,Co){return Sd(C.cameraQueryGeometry,pa-Yt,Ha-Yt,Na+Yt,Co+Yt)}),Ni=0,dn=ui;Nige)Pe=!1;else if(!V)Pe=!0;else if(this.expirationTime=Qr.maxzoom)&&Qr.visibility!=="none"){c(Pr,this.zoom,Ut);var ci=qi[Qr.id]=Qr.createBucket({index:Di.bucketLayerIDs.length,layers:Pr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:pt,sourceID:this.source});ci.populate(kr,$i,this.tileID.canonical),Di.bucketLayerIDs.push(Pr.map(function(xi){return xi.id}))}}}}var mi,Et,ar,gr,ti=e.mapObject($i.glyphDependencies,function(xi){return Object.keys(xi).map(Number)});Object.keys(ti).length?br.send("getGlyphs",{uid:this.uid,stacks:ti},function(xi,Ii){mi||(mi=xi,Et=Ii,Fi.call(_i))}):Et={};var wi=Object.keys($i.iconDependencies);wi.length?br.send("getImages",{icons:wi,source:this.source,tileID:this.tileID,type:"icons"},function(xi,Ii){mi||(mi=xi,ar=Ii,Fi.call(_i))}):ar={};var Gi=Object.keys($i.patternDependencies);Gi.length?br.send("getImages",{icons:Gi,source:this.source,tileID:this.tileID,type:"patterns"},function(xi,Ii){mi||(mi=xi,gr=Ii,Fi.call(_i))}):gr={},Fi.call(this);function Fi(){if(mi)return Zr(mi);if(Et&&ar&&gr){var xi=new a(Et),Ii=new e.ImageAtlas(ar,gr);for(var Bn in qi){var hn=qi[Bn];hn instanceof e.SymbolBucket?(c(hn.layers,this.zoom,Ut),e.performSymbolLayout(hn,Et,xi.positions,ar,Ii.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):hn.hasPattern&&(hn instanceof e.LineBucket||hn instanceof e.FillBucket||hn instanceof e.FillExtrusionBucket)&&(c(hn.layers,this.zoom,Ut),hn.addFeatures($i,this.tileID.canonical,Ii.patternPositions))}this.status="done",Zr(null,{buckets:e.values(qi).filter(function(ba){return!ba.isEmpty()}),featureIndex:Di,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:xi.image,imageAtlas:Ii,glyphMap:this.returnDependencies?Et:null,iconMap:this.returnDependencies?ar:null,glyphPositions:this.returnDependencies?xi.positions:null})}}};function c(Xt,Dt,qt){for(var Ut=new e.EvaluationParameters(Dt),br=0,Zr=Xt;br=0!=!!Dt&&Xt.reverse()}var E=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(Dt){this._feature=Dt,this.extent=e.EXTENT,this.type=Dt.type,this.properties=Dt.tags,"id"in Dt&&!isNaN(Dt.id)&&(this.id=parseInt(Dt.id,10))};m.prototype.loadGeometry=function(){if(this._feature.type===1){for(var Dt=[],qt=0,Ut=this._feature.geometry;qt"u"&&(Ut.push(Yr),Di=Ut.length-1,Zr[Yr]=Di),Dt.writeVarint(Di);var qi=qt.properties[Yr],$i=typeof qi;$i!=="string"&&$i!=="boolean"&&$i!=="number"&&(qi=JSON.stringify(qi));var Mi=$i+":"+qi,sn=_i[Mi];typeof sn>"u"&&(br.push(qi),sn=br.length-1,_i[Mi]=sn),Dt.writeVarint(sn)}}function Q(Xt,Dt){return(Dt<<3)+(Xt&7)}function le(Xt){return Xt<<1^Xt>>31}function se(Xt,Dt){for(var qt=Xt.loadGeometry(),Ut=Xt.type,br=0,Zr=0,_i=qt.length,Yr=0;Yr<_i;Yr++){var Di=qt[Yr],qi=1;Ut===1&&(qi=Di.length),Dt.writeVarint(Q(1,qi));for(var $i=Ut===3?Di.length-1:Di.length,Mi=0;Mi<$i;Mi++){Mi===1&&Ut!==1&&Dt.writeVarint(Q(2,$i-1));var sn=Di[Mi].x-br,vt=Di[Mi].y-Zr;Dt.writeVarint(le(sn)),Dt.writeVarint(le(vt)),br+=sn,Zr+=vt}Ut===3&&Dt.writeVarint(Q(7,1))}}function fe(Xt,Dt){var qt=typeof Xt;qt==="string"?Dt.writeStringField(1,Xt):qt==="boolean"?Dt.writeBooleanField(7,Xt):qt==="number"&&(Xt%1!==0?Dt.writeDoubleField(3,Xt):Xt<0?Dt.writeSVarintField(6,Xt):Dt.writeVarintField(5,Xt))}P.fromVectorTileJs=L,P.fromGeojsonVt=z,P.GeoJSONWrapper=F;function G(Xt,Dt,qt,Ut,br,Zr){if(!(br-Ut<=qt)){var _i=Ut+br>>1;J(Xt,Dt,_i,Ut,br,Zr%2),G(Xt,Dt,qt,Ut,_i-1,Zr+1),G(Xt,Dt,qt,_i+1,br,Zr+1)}}function J(Xt,Dt,qt,Ut,br,Zr){for(;br>Ut;){if(br-Ut>600){var _i=br-Ut+1,Yr=qt-Ut+1,Di=Math.log(_i),qi=.5*Math.exp(2*Di/3),$i=.5*Math.sqrt(Di*qi*(_i-qi)/_i)*(Yr-_i/2<0?-1:1),Mi=Math.max(Ut,Math.floor(qt-Yr*qi/_i+$i)),sn=Math.min(br,Math.floor(qt+(_i-Yr)*qi/_i+$i));J(Xt,Dt,qt,Mi,sn,Zr)}var vt=Dt[2*qt+Zr],pt=Ut,kr=br;for($(Xt,Dt,Ut,qt),Dt[2*br+Zr]>vt&&$(Xt,Dt,Ut,br);ptvt;)kr--}Dt[2*Ut+Zr]===vt?$(Xt,Dt,Ut,kr):(kr++,$(Xt,Dt,kr,br)),kr<=qt&&(Ut=kr+1),qt<=kr&&(br=kr-1)}}function $(Xt,Dt,qt,Ut){X(Xt,qt,Ut),X(Dt,2*qt,2*Ut),X(Dt,2*qt+1,2*Ut+1)}function X(Xt,Dt,qt){var Ut=Xt[Dt];Xt[Dt]=Xt[qt],Xt[qt]=Ut}function re(Xt,Dt,qt,Ut,br,Zr,_i){for(var Yr=[0,Xt.length-1,0],Di=[],qi,$i;Yr.length;){var Mi=Yr.pop(),sn=Yr.pop(),vt=Yr.pop();if(sn-vt<=_i){for(var pt=vt;pt<=sn;pt++)qi=Dt[2*pt],$i=Dt[2*pt+1],qi>=qt&&qi<=br&&$i>=Ut&&$i<=Zr&&Di.push(Xt[pt]);continue}var kr=Math.floor((vt+sn)/2);qi=Dt[2*kr],$i=Dt[2*kr+1],qi>=qt&&qi<=br&&$i>=Ut&&$i<=Zr&&Di.push(Xt[kr]);var Cr=(Mi+1)%2;(Mi===0?qt<=qi:Ut<=$i)&&(Yr.push(vt),Yr.push(kr-1),Yr.push(Cr)),(Mi===0?br>=qi:Zr>=$i)&&(Yr.push(kr+1),Yr.push(sn),Yr.push(Cr))}return Di}function ae(Xt,Dt,qt,Ut,br,Zr){for(var _i=[0,Xt.length-1,0],Yr=[],Di=br*br;_i.length;){var qi=_i.pop(),$i=_i.pop(),Mi=_i.pop();if($i-Mi<=Zr){for(var sn=Mi;sn<=$i;sn++)j(Dt[2*sn],Dt[2*sn+1],qt,Ut)<=Di&&Yr.push(Xt[sn]);continue}var vt=Math.floor((Mi+$i)/2),pt=Dt[2*vt],kr=Dt[2*vt+1];j(pt,kr,qt,Ut)<=Di&&Yr.push(Xt[vt]);var Cr=(qi+1)%2;(qi===0?qt-br<=pt:Ut-br<=kr)&&(_i.push(Mi),_i.push(vt-1),_i.push(Cr)),(qi===0?qt+br>=pt:Ut+br>=kr)&&(_i.push(vt+1),_i.push($i),_i.push(Cr))}return Yr}function j(Xt,Dt,qt,Ut){var br=Xt-qt,Zr=Dt-Ut;return br*br+Zr*Zr}var ee=function(Xt){return Xt[0]},ne=function(Xt){return Xt[1]},ce=function(Dt,qt,Ut,br,Zr){qt===void 0&&(qt=ee),Ut===void 0&&(Ut=ne),br===void 0&&(br=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=br,this.points=Dt;for(var _i=Dt.length<65536?Uint16Array:Uint32Array,Yr=this.ids=new _i(Dt.length),Di=this.coords=new Zr(Dt.length*2),qi=0;qi=br;$i--){var Mi=+Date.now();Di=this._cluster(Di,$i),this.trees[$i]=new ce(Di,ue,ze,_i,Float32Array),Ut&&console.log("z%d: %d clusters in %dms",$i,Di.length,+Date.now()-Mi)}return Ut&&console.timeEnd("total time"),this},we.prototype.getClusters=function(Dt,qt){var Ut=((Dt[0]+180)%360+360)%360-180,br=Math.max(-90,Math.min(90,Dt[1])),Zr=Dt[2]===180?180:((Dt[2]+180)%360+360)%360-180,_i=Math.max(-90,Math.min(90,Dt[3]));if(Dt[2]-Dt[0]>=360)Ut=-180,Zr=180;else if(Ut>Zr){var Yr=this.getClusters([Ut,br,180,_i],qt),Di=this.getClusters([-180,br,Zr,_i],qt);return Yr.concat(Di)}for(var qi=this.trees[this._limitZoom(qt)],$i=qi.range(rt(Ut),Je(_i),rt(Zr),Je(br)),Mi=[],sn=0,vt=$i;snqt&&(kr+=Er.numPoints||1)}if(kr>=Di){for(var Br=Mi.x*pt,Pr=Mi.y*pt,Qr=Yr&&pt>1?this._map(Mi,!0):null,ci=($i<<5)+(qt+1)+this.points.length,mi=0,Et=vt;mi1)for(var wi=0,Gi=vt;wi>5},we.prototype._getOriginZoom=function(Dt){return(Dt-this.points.length)%32},we.prototype._map=function(Dt,qt){if(Dt.numPoints)return qt?pe({},Dt.properties):Dt.properties;var Ut=this.points[Dt.index].properties,br=this.options.map(Ut);return qt&&br===Ut?pe({},br):br};function Oe(Xt,Dt,qt,Ut,br){return{x:Xt,y:Dt,zoom:1/0,id:qt,parentId:-1,numPoints:Ut,properties:br}}function Ie(Xt,Dt){var qt=Xt.geometry.coordinates,Ut=qt[0],br=qt[1];return{x:rt(Ut),y:Je(br),zoom:1/0,index:Dt,parentId:-1}}function Xe(Xt){return{type:"Feature",id:Xt.id,properties:tt(Xt),geometry:{type:"Point",coordinates:[ot(Xt.x),Me(Xt.y)]}}}function tt(Xt){var Dt=Xt.numPoints,qt=Dt>=1e4?Math.round(Dt/1e3)+"k":Dt>=1e3?Math.round(Dt/100)/10+"k":Dt;return pe(pe({},Xt.properties),{cluster:!0,cluster_id:Xt.id,point_count:Dt,point_count_abbreviated:qt})}function rt(Xt){return Xt/360+.5}function Je(Xt){var Dt=Math.sin(Xt*Math.PI/180),qt=.5-.25*Math.log((1+Dt)/(1-Dt))/Math.PI;return qt<0?0:qt>1?1:qt}function ot(Xt){return(Xt-.5)*360}function Me(Xt){var Dt=(180-Xt*360)*Math.PI/180;return 360*Math.atan(Math.exp(Dt))/Math.PI-90}function pe(Xt,Dt){for(var qt in Dt)Xt[qt]=Dt[qt];return Xt}function ue(Xt){return Xt.x}function ze(Xt){return Xt.y}function Qe(Xt,Dt,qt,Ut){for(var br=Ut,Zr=qt-Dt>>1,_i=qt-Dt,Yr,Di=Xt[Dt],qi=Xt[Dt+1],$i=Xt[qt],Mi=Xt[qt+1],sn=Dt+3;snbr)Yr=sn,br=vt;else if(vt===br){var pt=Math.abs(sn-Zr);pt<_i&&(Yr=sn,_i=pt)}}br>Ut&&(Yr-Dt>3&&Qe(Xt,Dt,Yr,Ut),Xt[Yr+2]=br,qt-Yr>3&&Qe(Xt,Yr,qt,Ut))}function it(Xt,Dt,qt,Ut,br,Zr){var _i=br-qt,Yr=Zr-Ut;if(_i!==0||Yr!==0){var Di=((Xt-qt)*_i+(Dt-Ut)*Yr)/(_i*_i+Yr*Yr);Di>1?(qt=br,Ut=Zr):Di>0&&(qt+=_i*Di,Ut+=Yr*Di)}return _i=Xt-qt,Yr=Dt-Ut,_i*_i+Yr*Yr}function $e(Xt,Dt,qt,Ut){var br={id:typeof Xt>"u"?null:Xt,type:Dt,geometry:qt,tags:Ut,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return kt(br),br}function kt(Xt){var Dt=Xt.geometry,qt=Xt.type;if(qt==="Point"||qt==="MultiPoint"||qt==="LineString")Mt(Xt,Dt);else if(qt==="Polygon"||qt==="MultiLineString")for(var Ut=0;Ut0&&(Ut?_i+=(br*qi-Di*Zr)/2:_i+=Math.sqrt(Math.pow(Di-br,2)+Math.pow(qi-Zr,2))),br=Di,Zr=qi}var $i=Dt.length-3;Dt[2]=1,Qe(Dt,0,$i,qt),Dt[$i+2]=1,Dt.size=Math.abs(_i),Dt.start=0,Dt.end=Dt.size}function Lr(Xt,Dt,qt,Ut){for(var br=0;br1?1:qt}function mt(Xt,Dt,qt,Ut,br,Zr,_i,Yr){if(qt/=Dt,Ut/=Dt,Zr>=qt&&_i=Ut)return null;for(var Di=[],qi=0;qi=qt&&pt=Ut)continue;var kr=[];if(sn==="Point"||sn==="MultiPoint")Fe(Mi,kr,qt,Ut,br);else if(sn==="LineString")Ze(Mi,kr,qt,Ut,br,!1,Yr.lineMetrics);else if(sn==="MultiLineString")Se(Mi,kr,qt,Ut,br,!1);else if(sn==="Polygon")Se(Mi,kr,qt,Ut,br,!0);else if(sn==="MultiPolygon")for(var Cr=0;Cr=qt&&_i<=Ut&&(Dt.push(Xt[Zr]),Dt.push(Xt[Zr+1]),Dt.push(Xt[Zr+2]))}}function Ze(Xt,Dt,qt,Ut,br,Zr,_i){for(var Yr=Ne(Xt),Di=br===0?Ee:be,qi=Xt.start,$i,Mi,sn=0;snqt&&(Mi=Di(Yr,vt,pt,Cr,wr,qt),_i&&(Yr.start=qi+$i*Mi)):Ar>Ut?Er=qt&&(Mi=Di(Yr,vt,pt,Cr,wr,qt),Br=!0),Er>Ut&&Ar<=Ut&&(Mi=Di(Yr,vt,pt,Cr,wr,Ut),Br=!0),!Zr&&Br&&(_i&&(Yr.end=qi+$i*Mi),Dt.push(Yr),Yr=Ne(Xt)),_i&&(qi+=$i)}var Pr=Xt.length-3;vt=Xt[Pr],pt=Xt[Pr+1],kr=Xt[Pr+2],Ar=br===0?vt:pt,Ar>=qt&&Ar<=Ut&&Ve(Yr,vt,pt,kr),Pr=Yr.length-3,Zr&&Pr>=3&&(Yr[Pr]!==Yr[0]||Yr[Pr+1]!==Yr[1])&&Ve(Yr,Yr[0],Yr[1],Yr[2]),Yr.length&&Dt.push(Yr)}function Ne(Xt){var Dt=[];return Dt.size=Xt.size,Dt.start=Xt.start,Dt.end=Xt.end,Dt}function Se(Xt,Dt,qt,Ut,br,Zr){for(var _i=0;_i_i.maxX&&(_i.maxX=$i),Mi>_i.maxY&&(_i.maxY=Mi)}return _i}function Wt(Xt,Dt,qt,Ut){var br=Dt.geometry,Zr=Dt.type,_i=[];if(Zr==="Point"||Zr==="MultiPoint")for(var Yr=0;Yr0&&Dt.size<(br?_i:Ut)){qt.numPoints+=Dt.length/3;return}for(var Yr=[],Di=0;Di_i)&&(qt.numSimplified++,Yr.push(Dt[Di]),Yr.push(Dt[Di+1])),qt.numPoints++;br&&lr(Yr,Zr),Xt.push(Yr)}function lr(Xt,Dt){for(var qt=0,Ut=0,br=Xt.length,Zr=br-2;Ut0===Dt)for(Ut=0,br=Xt.length;Ut
24)throw new Error("maxZoom should be in the 0-24 range");if(Dt.promoteId&&Dt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Ut=Bt(Xt,Dt);this.tiles={},this.tileCoords=[],qt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Dt.indexMaxZoom,Dt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ut=Ce(Ut,Dt),Ut.length&&this.splitTile(Ut,0,0,0),qt&&(Ut.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Pi.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Pi.prototype.splitTile=function(Xt,Dt,qt,Ut,br,Zr,_i){for(var Yr=[Xt,Dt,qt,Ut],Di=this.options,qi=Di.debug;Yr.length;){Ut=Yr.pop(),qt=Yr.pop(),Dt=Yr.pop(),Xt=Yr.pop();var $i=1<1&&console.time("creation"),sn=this.tiles[Mi]=Ot(Xt,Dt,qt,Ut,Di),this.tileCoords.push({z:Dt,x:qt,y:Ut}),qi)){qi>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Dt,qt,Ut,sn.numFeatures,sn.numPoints,sn.numSimplified),console.timeEnd("creation"));var vt="z"+Dt;this.stats[vt]=(this.stats[vt]||0)+1,this.total++}if(sn.source=Xt,br){if(Dt===Di.maxZoom||Dt===br)continue;var pt=1<1&&console.time("clipping");var kr=.5*Di.buffer/Di.extent,Cr=.5-kr,wr=.5+kr,Ar=1+kr,Er,Br,Pr,Qr,ci,mi;Er=Br=Pr=Qr=null,ci=mt(Xt,$i,qt-kr,qt+wr,0,sn.minX,sn.maxX,Di),mi=mt(Xt,$i,qt+Cr,qt+Ar,0,sn.minX,sn.maxX,Di),Xt=null,ci&&(Er=mt(ci,$i,Ut-kr,Ut+wr,1,sn.minY,sn.maxY,Di),Br=mt(ci,$i,Ut+Cr,Ut+Ar,1,sn.minY,sn.maxY,Di),ci=null),mi&&(Pr=mt(mi,$i,Ut-kr,Ut+wr,1,sn.minY,sn.maxY,Di),Qr=mt(mi,$i,Ut+Cr,Ut+Ar,1,sn.minY,sn.maxY,Di),mi=null),qi>1&&console.timeEnd("clipping"),Yr.push(Er||[],Dt+1,qt*2,Ut*2),Yr.push(Br||[],Dt+1,qt*2,Ut*2+1),Yr.push(Pr||[],Dt+1,qt*2+1,Ut*2),Yr.push(Qr||[],Dt+1,qt*2+1,Ut*2+1)}}},Pi.prototype.getTile=function(Xt,Dt,qt){var Ut=this.options,br=Ut.extent,Zr=Ut.debug;if(Xt<0||Xt>24)return null;var _i=1<1&&console.log("drilling down to z%d-%d-%d",Xt,Dt,qt);for(var Di=Xt,qi=Dt,$i=qt,Mi;!Mi&&Di>0;)Di--,qi=Math.floor(qi/2),$i=Math.floor($i/2),Mi=this.tiles[Bi(Di,qi,$i)];return!Mi||!Mi.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",Di,qi,$i),Zr>1&&console.time("drilling down"),this.splitTile(Mi.source,Di,qi,$i,Xt,Dt,qt),Zr>1&&console.timeEnd("drilling down"),this.tiles[Yr]?yt(this.tiles[Yr],br):null)};function Bi(Xt,Dt,qt){return((1<=0?0:ve.button},r.remove=function(ve){ve.parentNode&&ve.parentNode.removeChild(ve)};function d(ve,K,me){var te,ye,We,He=e.browser.devicePixelRatio>1?"@2x":"",at=e.getJSON(K.transformRequest(K.normalizeSpriteURL(ve,He,".json"),e.ResourceType.SpriteJSON),function(_r,Rr){at=null,We||(We=_r,te=Rr,Gt())}),St=e.getImage(K.transformRequest(K.normalizeSpriteURL(ve,He,".png"),e.ResourceType.SpriteImage),function(_r,Rr){St=null,We||(We=_r,ye=Rr,Gt())});function Gt(){if(We)me(We);else if(te&&ye){var _r=e.browser.getImageData(ye),Rr={};for(var Tr in te){var Ht=te[Tr],ir=Ht.width,pr=Ht.height,Ir=Ht.x,Vr=Ht.y,Hr=Ht.sdf,si=Ht.pixelRatio,ri=Ht.stretchX,Gr=Ht.stretchY,li=Ht.content,Ur=new e.RGBAImage({width:ir,height:pr});e.RGBAImage.copy(_r,Ur,{x:Ir,y:Vr},{x:0,y:0},{width:ir,height:pr}),Rr[Tr]={data:Ur,pixelRatio:si,sdf:Hr,stretchX:ri,stretchY:Gr,content:li}}me(null,Rr)}}return{cancel:function(){at&&(at.cancel(),at=null),St&&(St.cancel(),St=null)}}}function T(ve){var K=ve.userImage;if(K&&K.render){var me=K.render();if(me)return ve.data.replace(new Uint8Array(K.data.buffer)),!0}return!1}var l=1,_=function(ve){function K(){ve.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.isLoaded=function(){return this.loaded},K.prototype.setLoaded=function(te){if(this.loaded!==te&&(this.loaded=te,te)){for(var ye=0,We=this.requestors;ye=0?1.2:1))}b.prototype.draw=function(ve){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(ve,this.buffer,this.middle);for(var K=this.ctx.getImageData(0,0,this.size,this.size),me=new Uint8ClampedArray(this.size*this.size),te=0;te65535){_r(new Error("glyphs > 65535 not supported"));return}if(Ht.ranges[pr]){_r(null,{stack:Rr,id:Tr,glyph:ir});return}var Ir=Ht.requests[pr];Ir||(Ir=Ht.requests[pr]=[],y.loadGlyphRange(Rr,pr,te.url,te.requestManager,function(Vr,Hr){if(Hr){for(var si in Hr)te._doesCharSupportLocalGlyph(+si)||(Ht.glyphs[+si]=Hr[+si]);Ht.ranges[pr]=!0}for(var ri=0,Gr=Ir;ri1&&(Gt=K[++St]);var Rr=Math.abs(_r-Gt.left),Tr=Math.abs(_r-Gt.right),Ht=Math.min(Rr,Tr),ir=void 0,pr=We/te*(ye+1);if(Gt.isDash){var Ir=ye-Math.abs(pr);ir=Math.sqrt(Ht*Ht+Ir*Ir)}else ir=ye-Math.sqrt(Ht*Ht+pr*pr);this.data[at+_r]=Math.max(0,Math.min(255,ir+128))}},F.prototype.addRegularDash=function(K){for(var me=K.length-1;me>=0;--me){var te=K[me],ye=K[me+1];te.zeroLength?K.splice(me,1):ye&&ye.isDash===te.isDash&&(ye.left=te.left,K.splice(me,1))}var We=K[0],He=K[K.length-1];We.isDash===He.isDash&&(We.left=He.left-this.width,He.right=We.right+this.width);for(var at=this.width*this.nextRow,St=0,Gt=K[St],_r=0;_r1&&(Gt=K[++St]);var Rr=Math.abs(_r-Gt.left),Tr=Math.abs(_r-Gt.right),Ht=Math.min(Rr,Tr),ir=Gt.isDash?Ht:-Ht;this.data[at+_r]=Math.max(0,Math.min(255,ir+128))}},F.prototype.addDash=function(K,me){var te=me?7:0,ye=2*te+1;if(this.nextRow+ye>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var We=0,He=0;He=te.minX&&K.x=te.minY&&K.y0&&(_r[new e.OverscaledTileID(te.overscaledZ,at,ye.z,He,ye.y-1).key]={backfilled:!1},_r[new e.OverscaledTileID(te.overscaledZ,te.wrap,ye.z,ye.x,ye.y-1).key]={backfilled:!1},_r[new e.OverscaledTileID(te.overscaledZ,Gt,ye.z,St,ye.y-1).key]={backfilled:!1}),ye.y+10&&(We.resourceTiming=te._resourceTiming,te._resourceTiming=[]),te.fire(new e.Event("data",We))})},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setData=function(te){var ye=this;return this._data=te,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(We){if(We){ye.fire(new e.ErrorEvent(We));return}var He={dataType:"source",sourceDataType:"content"};ye._collectResourceTiming&&ye._resourceTiming&&ye._resourceTiming.length>0&&(He.resourceTiming=ye._resourceTiming,ye._resourceTiming=[]),ye.fire(new e.Event("data",He))}),this},K.prototype.getClusterExpansionZoom=function(te,ye){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:te,source:this.id},ye),this},K.prototype.getClusterChildren=function(te,ye){return this.actor.send("geojson.getClusterChildren",{clusterId:te,source:this.id},ye),this},K.prototype.getClusterLeaves=function(te,ye,We,He){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:te,limit:ye,offset:We},He),this},K.prototype._updateWorkerData=function(te){var ye=this;this._loaded=!1;var We=e.extend({},this.workerOptions),He=this._data;typeof He=="string"?(We.request=this.map._requestManager.transformRequest(e.browser.resolveURL(He),e.ResourceType.Source),We.request.collectResourceTiming=this._collectResourceTiming):We.data=JSON.stringify(He),this.actor.send(this.type+".loadData",We,function(at,St){ye._removed||St&&St.abandoned||(ye._loaded=!0,St&&St.resourceTiming&&St.resourceTiming[ye.id]&&(ye._resourceTiming=St.resourceTiming[ye.id].slice(0)),ye.actor.send(ye.type+".coalesce",{source:We.source},null),te(at))})},K.prototype.loaded=function(){return this._loaded},K.prototype.loadTile=function(te,ye){var We=this,He=te.actor?"reloadTile":"loadTile";te.actor=this.actor;var at={type:this.type,uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};te.request=this.actor.send(He,at,function(St,Gt){return delete te.request,te.unloadVectorData(),te.aborted?ye(null):St?ye(St):(te.loadVectorData(Gt,We.map.painter,He==="reloadTile"),ye(null))})},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.aborted=!0},K.prototype.unloadTile=function(te){te.unloadVectorData(),this.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id})},K.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},K.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},K.prototype.hasTransition=function(){return!1},K}(e.Evented),le=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),se=function(ve){function K(me,te,ye,We){ve.call(this),this.id=me,this.dispatcher=ye,this.coordinates=te.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(We),this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(te,ye){var We=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),function(He,at){We._loaded=!0,He?We.fire(new e.ErrorEvent(He)):at&&(We.image=at,te&&(We.coordinates=te),ye&&ye(),We._finishLoading())})},K.prototype.loaded=function(){return this._loaded},K.prototype.updateImage=function(te){var ye=this;return!this.image||!te.url?this:(this.options.url=te.url,this.load(te.coordinates,function(){ye.texture=null}),this)},K.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setCoordinates=function(te){var ye=this;this.coordinates=te;var We=te.map(e.MercatorCoordinate.fromLngLat);this.tileID=fe(We),this.minzoom=this.maxzoom=this.tileID.z;var He=We.map(function(at){return ye.tileID.getTilePoint(at)._round()});return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(He[0].x,He[0].y,0,0),this._boundsArray.emplaceBack(He[1].x,He[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(He[3].x,He[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(He[2].x,He[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var te=this.map.painter.context,ye=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,le.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(te,this.image,ye.RGBA),this.texture.bind(ye.LINEAR,ye.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.loadTile=function(te,ye){this.tileID&&this.tileID.equals(te.tileID.canonical)?(this.tiles[String(te.tileID.wrap)]=te,te.buckets={},ye(null)):(te.state="errored",ye(null))},K.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return!1},K}(e.Evented);function fe(ve){for(var K=1/0,me=1/0,te=-1/0,ye=-1/0,We=0,He=ve;Weye.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+ye.start(0)+" and "+ye.end(0)+"-second mark."))):this.video.currentTime=te}},K.prototype.getVideo=function(){return this.video},K.prototype.onAdd=function(te){this.map||(this.map=te,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var te=this.map.painter.context,ye=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,le.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ye.LINEAR,ye.CLAMP_TO_EDGE),ye.texSubImage2D(ye.TEXTURE_2D,0,0,0,ye.RGBA,ye.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(te,this.video,ye.RGBA),this.texture.bind(ye.LINEAR,ye.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this.video&&!this.video.paused},K}(se),J=function(ve){function K(me,te,ye,We){ve.call(this,me,te,ye,We),te.coordinates?(!Array.isArray(te.coordinates)||te.coordinates.length!==4||te.coordinates.some(function(He){return!Array.isArray(He)||He.length!==2||He.some(function(at){return typeof at!="number"})}))&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+me,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+me,null,'missing required property "coordinates"'))),te.animate&&typeof te.animate!="boolean"&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+me,null,'optional "animate" property must be a boolean value'))),te.canvas?typeof te.canvas!="string"&&!(te.canvas instanceof e.window.HTMLCanvasElement)&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+me,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+me,null,'missing required property "canvas"'))),this.options=te,this.animate=te.animate!==void 0?te.animate:!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},K.prototype.getCanvas=function(){return this.canvas},K.prototype.onAdd=function(te){this.map=te,this.load(),this.canvas&&this.animate&&this.play()},K.prototype.onRemove=function(){this.pause()},K.prototype.prepare=function(){var te=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,te=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,te=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var ye=this.map.painter.context,We=ye.gl;this.boundsBuffer||(this.boundsBuffer=ye.createVertexBuffer(this._boundsArray,le.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(te||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(ye,this.canvas,We.RGBA,{premultiply:!0});for(var He in this.tiles){var at=this.tiles[He];at.state!=="loaded"&&(at.state="loaded",at.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this._playing},K.prototype._hasInvalidDimensions=function(){for(var te=0,ye=[this.canvas.width,this.canvas.height];tethis.max){var at=this._getAndRemoveByKey(this.order[0]);at&&this.onRemove(at)}return this},Ie.prototype.has=function(K){return K.wrapped().key in this.data},Ie.prototype.getAndRemove=function(K){return this.has(K)?this._getAndRemoveByKey(K.wrapped().key):null},Ie.prototype._getAndRemoveByKey=function(K){var me=this.data[K].shift();return me.timeout&&clearTimeout(me.timeout),this.data[K].length===0&&delete this.data[K],this.order.splice(this.order.indexOf(K),1),me.value},Ie.prototype.getByKey=function(K){var me=this.data[K];return me?me[0].value:null},Ie.prototype.get=function(K){if(!this.has(K))return null;var me=this.data[K.wrapped().key][0];return me.value},Ie.prototype.remove=function(K,me){if(!this.has(K))return this;var te=K.wrapped().key,ye=me===void 0?0:this.data[te].indexOf(me),We=this.data[te][ye];return this.data[te].splice(ye,1),We.timeout&&clearTimeout(We.timeout),this.data[te].length===0&&delete this.data[te],this.onRemove(We.value),this.order.splice(this.order.indexOf(te),1),this},Ie.prototype.setMaxSize=function(K){for(this.max=K;this.order.length>this.max;){var me=this._getAndRemoveByKey(this.order[0]);me&&this.onRemove(me)}return this},Ie.prototype.filter=function(K){var me=[];for(var te in this.data)for(var ye=0,We=this.data[te];ye1||(Math.abs(Rr)>1&&(Math.abs(Rr+Ht)===1?Rr+=Ht:Math.abs(Rr-Ht)===1&&(Rr-=Ht)),!(!_r.dem||!Gt.dem)&&(Gt.dem.backfillBorder(_r.dem,Rr,Tr),Gt.neighboringTiles&&Gt.neighboringTiles[ir]&&(Gt.neighboringTiles[ir].backfilled=!0)))}},K.prototype.getTile=function(te){return this.getTileByID(te.key)},K.prototype.getTileByID=function(te){return this._tiles[te]},K.prototype._retainLoadedChildren=function(te,ye,We,He){for(var at in this._tiles){var St=this._tiles[at];if(!(He[at]||!St.hasData()||St.tileID.overscaledZ<=ye||St.tileID.overscaledZ>We)){for(var Gt=St.tileID;St&&St.tileID.overscaledZ>ye+1;){var _r=St.tileID.scaledTo(St.tileID.overscaledZ-1);St=this._tiles[_r.key],St&&St.hasData()&&(Gt=_r)}for(var Rr=Gt;Rr.overscaledZ>ye;)if(Rr=Rr.scaledTo(Rr.overscaledZ-1),te[Rr.key]){He[Gt.key]=Gt;break}}}},K.prototype.findLoadedParent=function(te,ye){if(te.key in this._loadedParentTiles){var We=this._loadedParentTiles[te.key];return We&&We.tileID.overscaledZ>=ye?We:null}for(var He=te.overscaledZ-1;He>=ye;He--){var at=te.scaledTo(He),St=this._getLoadedTile(at);if(St)return St}},K.prototype._getLoadedTile=function(te){var ye=this._tiles[te.key];if(ye&&ye.hasData())return ye;var We=this._cache.getByKey(te.wrapped().key);return We},K.prototype.updateCacheSize=function(te){var ye=Math.ceil(te.width/this._source.tileSize)+1,We=Math.ceil(te.height/this._source.tileSize)+1,He=ye*We,at=5,St=Math.floor(He*at),Gt=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,St):St;this._cache.setMaxSize(Gt)},K.prototype.handleWrapJump=function(te){var ye=this._prevLng===void 0?te:this._prevLng,We=te-ye,He=We/360,at=Math.round(He);if(this._prevLng=te,at){var St={};for(var Gt in this._tiles){var _r=this._tiles[Gt];_r.tileID=_r.tileID.unwrapTo(_r.tileID.wrap+at),St[_r.tileID.key]=_r}this._tiles=St;for(var Rr in this._timers)clearTimeout(this._timers[Rr]),delete this._timers[Rr];for(var Tr in this._tiles){var Ht=this._tiles[Tr];this._setTileReloadTimer(Tr,Ht)}}},K.prototype.update=function(te){var ye=this;if(this.transform=te,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(te),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var We;this.used?this._source.tileID?We=te.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(fn){return new e.OverscaledTileID(fn.canonical.z,fn.wrap,fn.canonical.z,fn.canonical.x,fn.canonical.y)}):(We=te.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(We=We.filter(function(fn){return ye._source.hasTile(fn)}))):We=[];var He=te.coveringZoomLevel(this._source),at=Math.max(He-K.maxOverzooming,this._source.minzoom),St=Math.max(He+K.maxUnderzooming,this._source.minzoom),Gt=this._updateRetainedTiles(We,He);if(Di(this._source.type)){for(var _r={},Rr={},Tr=Object.keys(Gt),Ht=0,ir=Tr;Htthis._source.maxzoom){var Hr=Ir.children(this._source.maxzoom)[0],si=this.getTile(Hr);if(si&&si.hasData()){We[Hr.key]=Hr;continue}}else{var ri=Ir.children(this._source.maxzoom);if(We[ri[0].key]&&We[ri[1].key]&&We[ri[2].key]&&We[ri[3].key])continue}for(var Gr=Vr.wasRequested(),li=Ir.overscaledZ-1;li>=at;--li){var Ur=Ir.scaledTo(li);if(He[Ur.key]||(He[Ur.key]=!0,Vr=this.getTile(Ur),!Vr&&Gr&&(Vr=this._addTile(Ur)),Vr&&(We[Ur.key]=Ur,Gr=Vr.wasRequested(),Vr.hasData())))break}}}return We},K.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var te in this._tiles){for(var ye=[],We=void 0,He=this._tiles[te].tileID;He.overscaledZ>0;){if(He.key in this._loadedParentTiles){We=this._loadedParentTiles[He.key];break}ye.push(He.key);var at=He.scaledTo(He.overscaledZ-1);if(We=this._getLoadedTile(at),We)break;He=at}for(var St=0,Gt=ye;St0)&&(ye.hasData()&&ye.state!=="reloading"?this._cache.add(ye.tileID,ye,ye.getExpiryTimeout()):(ye.aborted=!0,this._abortTile(ye),this._unloadTile(ye))))},K.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var te in this._tiles)this._removeTile(te);this._cache.reset()},K.prototype.tilesIn=function(te,ye,We){var He=this,at=[],St=this.transform;if(!St)return at;for(var Gt=We?St.getCameraQueryGeometry(te):te,_r=te.map(function(li){return St.pointCoordinate(li)}),Rr=Gt.map(function(li){return St.pointCoordinate(li)}),Tr=this.getIds(),Ht=1/0,ir=1/0,pr=-1/0,Ir=-1/0,Vr=0,Hr=Rr;Vr=0&&Gn[1].y+fn>=0){var Cn=_r.map(function(Ua){return Ci.getTilePoint(Ua)}),Yn=Rr.map(function(Ua){return Ci.getTilePoint(Ua)});at.push({tile:Ur,tileID:Ci,queryGeometry:Cn,cameraQueryGeometry:Yn,scale:Hi})}}},Gr=0;Gr=e.browser.now())return!0}return!1},K.prototype.setFeatureState=function(te,ye,We){te=te||"_geojsonTileLayer",this._state.updateState(te,ye,We)},K.prototype.removeFeatureState=function(te,ye,We){te=te||"_geojsonTileLayer",this._state.removeFeatureState(te,ye,We)},K.prototype.getFeatureState=function(te,ye){return te=te||"_geojsonTileLayer",this._state.getState(te,ye)},K.prototype.setDependencies=function(te,ye,We){var He=this._tiles[te];He&&He.setDependencies(ye,We)},K.prototype.reloadTilesForDependencies=function(te,ye){for(var We in this._tiles){var He=this._tiles[We];He.hasDependency(te,ye)&&this._reloadTile(We,"reloading")}this._cache.filter(function(at){return!at.hasDependency(te,ye)})},K}(e.Evented);_i.maxOverzooming=10,_i.maxUnderzooming=3;function Yr(ve,K){var me=Math.abs(ve.wrap*2)-+(ve.wrap<0),te=Math.abs(K.wrap*2)-+(K.wrap<0);return ve.overscaledZ-K.overscaledZ||te-me||K.canonical.y-ve.canonical.y||K.canonical.x-ve.canonical.x}function Di(ve){return ve==="raster"||ve==="image"||ve==="video"}function qi(){return new e.window.Worker(Vs.workerUrl)}var $i="mapboxgl_preloaded_worker_pool",Mi=function(){this.active={}};Mi.prototype.acquire=function(K){if(!this.workers)for(this.workers=[];this.workers.length0?(ye-He)/at:0;return this.points[We].mult(1-St).add(this.points[me].mult(St))};var xi=function(K,me,te){var ye=this.boxCells=[],We=this.circleCells=[];this.xCellCount=Math.ceil(K/te),this.yCellCount=Math.ceil(me/te);for(var He=0;Hethis.width||ye<0||me>this.height)return We?!1:[];var at=[];if(K<=0&&me<=0&&this.width<=te&&this.height<=ye){if(We)return!0;for(var St=0;St0:at}},xi.prototype._queryCircle=function(K,me,te,ye,We){var He=K-te,at=K+te,St=me-te,Gt=me+te;if(at<0||He>this.width||Gt<0||St>this.height)return ye?!1:[];var _r=[],Rr={hitTest:ye,circle:{x:K,y:me,radius:te},seenUids:{box:{},circle:{}}};return this._forEachCell(He,St,at,Gt,this._queryCellCircle,_r,Rr,We),ye?_r.length>0:_r},xi.prototype.query=function(K,me,te,ye,We){return this._query(K,me,te,ye,!1,We)},xi.prototype.hitTest=function(K,me,te,ye,We){return this._query(K,me,te,ye,!0,We)},xi.prototype.hitTestCircle=function(K,me,te,ye){return this._queryCircle(K,me,te,!0,ye)},xi.prototype._queryCell=function(K,me,te,ye,We,He,at,St){var Gt=at.seenUids,_r=this.boxCells[We];if(_r!==null)for(var Rr=this.bboxes,Tr=0,Ht=_r;Tr=Rr[pr+0]&&ye>=Rr[pr+1]&&(!St||St(this.boxKeys[ir]))){if(at.hitTest)return He.push(!0),!0;He.push({key:this.boxKeys[ir],x1:Rr[pr],y1:Rr[pr+1],x2:Rr[pr+2],y2:Rr[pr+3]})}}}var Ir=this.circleCells[We];if(Ir!==null)for(var Vr=this.circles,Hr=0,si=Ir;Hrat*at+St*St},xi.prototype._circleAndRectCollide=function(K,me,te,ye,We,He,at){var St=(He-ye)/2,Gt=Math.abs(K-(ye+St));if(Gt>St+te)return!1;var _r=(at-We)/2,Rr=Math.abs(me-(We+_r));if(Rr>_r+te)return!1;if(Gt<=St||Rr<=_r)return!0;var Tr=Gt-St,Ht=Rr-_r;return Tr*Tr+Ht*Ht<=te*te};function Ii(ve,K,me,te,ye){var We=e.create();return K?(e.scale(We,We,[1/ye,1/ye,1]),me||e.rotateZ(We,We,te.angle)):e.multiply(We,te.labelPlaneMatrix,ve),We}function Bn(ve,K,me,te,ye){if(K){var We=e.clone(ve);return e.scale(We,We,[ye,ye,1]),me||e.rotateZ(We,We,-te.angle),We}else return te.glCoordMatrix}function hn(ve,K){var me=[ve.x,ve.y,0,1];bs(me,me,K);var te=me[3];return{point:new e.Point(me[0]/te,me[1]/te),signedDistanceFromCamera:te}}function ba(ve,K){return .5+.5*(ve/K)}function Aa(ve,K){var me=ve[0]/ve[3],te=ve[1]/ve[3],ye=me>=-K[0]&&me<=K[0]&&te>=-K[1]&&te<=K[1];return ye}function Va(ve,K,me,te,ye,We,He,at){var St=te?ve.textSizeData:ve.iconSizeData,Gt=e.evaluateSizeForZoom(St,me.transform.zoom),_r=[256/me.width*2+1,256/me.height*2+1],Rr=te?ve.text.dynamicLayoutVertexArray:ve.icon.dynamicLayoutVertexArray;Rr.clear();for(var Tr=ve.lineVertexArray,Ht=te?ve.text.placedSymbolArray:ve.icon.placedSymbolArray,ir=me.transform.width/me.transform.height,pr=!1,Ir=0;IrWe)return{useVertical:!0}}return(ve===e.WritingMode.vertical?K.yme.x)?{needsFlipping:!0}:null}function Ga(ve,K,me,te,ye,We,He,at,St,Gt,_r,Rr,Tr,Ht){var ir=K/24,pr=ve.lineOffsetX*ir,Ir=ve.lineOffsetY*ir,Vr;if(ve.numGlyphs>1){var Hr=ve.glyphStartIndex+ve.numGlyphs,si=ve.lineStartIndex,ri=ve.lineStartIndex+ve.lineLength,Gr=Qa(ir,at,pr,Ir,me,_r,Rr,ve,St,We,Tr);if(!Gr)return{notEnoughRoom:!0};var li=hn(Gr.first.point,He).point,Ur=hn(Gr.last.point,He).point;if(te&&!me){var Ci=yo(ve.writingMode,li,Ur,Ht);if(Ci)return Ci}Vr=[Gr.first];for(var Hi=ve.glyphStartIndex+1;Hi0?Yn.point:Yo(Rr,Cn,fn,1,ye),Ma=yo(ve.writingMode,fn,Ua,Ht);if(Ma)return Ma}var Wn=da(ir*at.getoffsetX(ve.glyphStartIndex),pr,Ir,me,_r,Rr,ve.segment,ve.lineStartIndex,ve.lineStartIndex+ve.lineLength,St,We,Tr);if(!Wn)return{notEnoughRoom:!0};Vr=[Wn]}for(var fa=0,la=Vr;fa0?1:-1,ir=0;te&&(Ht*=-1,ir=Math.PI),Ht<0&&(ir+=Math.PI);for(var pr=Ht>0?at+He:at+He+1,Ir=ye,Vr=ye,Hr=0,si=0,ri=Math.abs(Tr),Gr=[];Hr+si<=ri;){if(pr+=Ht,pr=St)return null;if(Vr=Ir,Gr.push(Ir),Ir=Rr[pr],Ir===void 0){var li=new e.Point(Gt.getx(pr),Gt.gety(pr)),Ur=hn(li,_r);if(Ur.signedDistanceFromCamera>0)Ir=Rr[pr]=Ur.point;else{var Ci=pr-Ht,Hi=Hr===0?We:new e.Point(Gt.getx(Ci),Gt.gety(Ci));Ir=Yo(Hi,li,Vr,ri-Hr+1,_r)}}Hr+=si,si=Vr.dist(Ir)}var fn=(ri-Hr)/si,Gn=Ir.sub(Vr),Cn=Gn.mult(fn)._add(Vr);Cn._add(Gn._unit()._perp()._mult(me*Ht));var Yn=ir+Math.atan2(Ir.y-Vr.y,Ir.x-Vr.x);return Gr.push(Cn),{point:Cn,angle:Yn,path:Gr}}var vs=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function es(ve,K){for(var me=0;me=1;Da--)la.push(Wn.path[Da]);for(var Ja=1;Ja0){for(var os=la[0].clone(),qs=la[0].clone(),Rl=1;Rl=Yn.x&&qs.x<=Ua.x&&os.y>=Yn.y&&qs.y<=Ua.y?tl=[la]:qs.xUa.x||qs.yUa.y?tl=[]:tl=e.clipLine([la],Yn.x,Yn.y,Ua.x,Ua.y)}for(var Bu=0,Qh=tl;Bu=this.screenRightBoundary||yethis.screenBottomBoundary},Bo.prototype.isInsideGrid=function(K,me,te,ye){return te>=0&&K=0&&me0){var ri;return this.prevPlacement&&this.prevPlacement.variableOffsets[Tr.crossTileID]&&this.prevPlacement.placements[Tr.crossTileID]&&this.prevPlacement.placements[Tr.crossTileID].text&&(ri=this.prevPlacement.variableOffsets[Tr.crossTileID].anchor),this.variableOffsets[Tr.crossTileID]={textOffset:Ir,width:te,height:ye,anchor:K,textBoxScale:We,prevAnchor:ri},this.markUsedJustification(Ht,K,Tr,ir),Ht.allowVerticalPlacement&&(this.markUsedOrientation(Ht,ir,Tr),this.placedOrientations[Tr.crossTileID]=ir),{shift:Vr,placedGlyphBoxes:Hr}}},ps.prototype.placeLayerBucketPart=function(K,me,te){var ye=this,We=K.parameters,He=We.bucket,at=We.layout,St=We.posMatrix,Gt=We.textLabelPlaneMatrix,_r=We.labelToScreenMatrix,Rr=We.textPixelRatio,Tr=We.holdingForFade,Ht=We.collisionBoxArray,ir=We.partiallyEvaluatedTextSize,pr=We.collisionGroup,Ir=at.get("text-optional"),Vr=at.get("icon-optional"),Hr=at.get("text-allow-overlap"),si=at.get("icon-allow-overlap"),ri=at.get("text-rotation-alignment")==="map",Gr=at.get("text-pitch-alignment")==="map",li=at.get("icon-text-fit")!=="none",Ur=at.get("symbol-z-order")==="viewport-y",Ci=Hr&&(si||!He.hasIconData()||Vr),Hi=si&&(Hr||!He.hasTextData()||Ir);!He.collisionArrays&&Ht&&He.deserializeCollisionBoxes(Ht);var fn=function(Wn,fa){if(!me[Wn.crossTileID]){if(Tr){ye.placements[Wn.crossTileID]=new gs(!1,!1,!1);return}var la=!1,Da=!1,Ja=!0,Is=null,Ss={box:null,offscreen:null},tl={box:null,offscreen:null},os=null,qs=null,Rl=null,Bu=0,Qh=0,ed=0;fa.textFeatureIndex?Bu=fa.textFeatureIndex:Wn.useRuntimeCollisionCircles&&(Bu=Wn.featureIndex),fa.verticalTextFeatureIndex&&(Qh=fa.verticalTextFeatureIndex);var ph=fa.textBox;if(ph){var fd=function(Ou){var Yl=e.WritingMode.horizontal;if(He.allowVerticalPlacement&&!Ou&&ye.prevPlacement){var yh=ye.prevPlacement.placedOrientations[Wn.crossTileID];yh&&(ye.placedOrientations[Wn.crossTileID]=yh,Yl=yh,ye.markUsedOrientation(He,Yl,Wn))}return Yl},ev=function(Ou,Yl){if(He.allowVerticalPlacement&&Wn.numVerticalGlyphVertices>0&&fa.verticalTextBox)for(var yh=0,qv=He.writingModes;yh0&&(Ih=Ih.filter(function(Ou){return Ou!==gh.anchor}),Ih.unshift(gh.anchor))}var td=function(Ou,Yl,yh){for(var qv=Ou.x2-Ou.x1,bp=Ou.y2-Ou.y1,su=Wn.textBoxScale,cm=li&&!si?Yl:null,wv={box:[],offscreen:!1},cg=Hr?Ih.length*2:Ih.length,id=0;id=Ih.length,fm=ye.attemptAnchorPlacement(Tv,Ou,qv,bp,su,ri,Gr,Rr,St,pr,fg,Wn,He,yh,cm);if(fm&&(wv=fm.placedGlyphBoxes,wv&&wv.box&&wv.box.length)){la=!0,Is=fm.shift;break}}return wv},hd=function(){return td(ph,fa.iconBox,e.WritingMode.horizontal)},rd=function(){var Ou=fa.verticalTextBox,Yl=Ss&&Ss.box&&Ss.box.length;return He.allowVerticalPlacement&&!Yl&&Wn.numVerticalGlyphVertices>0&&Ou?td(Ou,fa.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}};ev(hd,rd),Ss&&(la=Ss.box,Ja=Ss.offscreen);var Uv=fd(Ss&&Ss.box);if(!la&&ye.prevPlacement){var tv=ye.prevPlacement.variableOffsets[Wn.crossTileID];tv&&(ye.variableOffsets[Wn.crossTileID]=tv,ye.markUsedJustification(He,tv.anchor,Wn,Uv))}}else{var Md=function(Ou,Yl){var yh=ye.collisionIndex.placeCollisionBox(Ou,Hr,Rr,St,pr.predicate);return yh&&yh.box&&yh.box.length&&(ye.markUsedOrientation(He,Yl,Wn),ye.placedOrientations[Wn.crossTileID]=Yl),yh},mh=function(){return Md(ph,e.WritingMode.horizontal)},Sd=function(){var Ou=fa.verticalTextBox;return He.allowVerticalPlacement&&Wn.numVerticalGlyphVertices>0&&Ou?Md(Ou,e.WritingMode.vertical):{box:null,offscreen:null}};ev(mh,Sd),fd(Ss&&Ss.box&&Ss.box.length)}}if(os=Ss,la=os&&os.box&&os.box.length>0,Ja=os&&os.offscreen,Wn.useRuntimeCollisionCircles){var wf=He.text.placedSymbolArray.get(Wn.centerJustifiedTextSymbolIndex),rv=e.evaluateSizeForFeature(He.textSizeData,ir,wf),jv=at.get("text-padding"),Xf=Wn.collisionCircleDiameter;qs=ye.collisionIndex.placeCollisionCircles(Hr,wf,He.lineVertexArray,He.glyphOffsetArray,rv,St,Gt,_r,te,Gr,pr.predicate,Xf,jv),la=Hr||qs.circles.length>0&&!qs.collisionDetected,Ja=Ja&&qs.offscreen}if(fa.iconFeatureIndex&&(ed=fa.iconFeatureIndex),fa.iconBox){var _v=function(Ou){var Yl=li&&Is?Zs(Ou,Is.x,Is.y,ri,Gr,ye.transform.angle):Ou;return ye.collisionIndex.placeCollisionBox(Yl,si,Rr,St,pr.predicate)};tl&&tl.box&&tl.box.length&&fa.verticalIconBox?(Rl=_v(fa.verticalIconBox),Da=Rl.box.length>0):(Rl=_v(fa.iconBox),Da=Rl.box.length>0),Ja=Ja&&Rl.offscreen}var _p=Ir||Wn.numHorizontalGlyphVertices===0&&Wn.numVerticalGlyphVertices===0,xp=Vr||Wn.numIconVertices===0;if(!_p&&!xp?Da=la=Da&&la:xp?_p||(Da=Da&&la):la=Da&&la,la&&os&&os.box&&(tl&&tl.box&&Qh?ye.collisionIndex.insertCollisionBox(os.box,at.get("text-ignore-placement"),He.bucketInstanceId,Qh,pr.ID):ye.collisionIndex.insertCollisionBox(os.box,at.get("text-ignore-placement"),He.bucketInstanceId,Bu,pr.ID)),Da&&Rl&&ye.collisionIndex.insertCollisionBox(Rl.box,at.get("icon-ignore-placement"),He.bucketInstanceId,ed,pr.ID),qs&&(la&&ye.collisionIndex.insertCollisionCircles(qs.circles,at.get("text-ignore-placement"),He.bucketInstanceId,Bu,pr.ID),te)){var Vv=He.bucketInstanceId,xv=ye.collisionCircleArrays[Vv];xv===void 0&&(xv=ye.collisionCircleArrays[Vv]=new vo);for(var bv=0;bv=0;--Cn){var Yn=Gn[Cn];fn(He.symbolInstances.get(Yn),He.collisionArrays[Yn])}else for(var Ua=K.symbolInstanceStart;Ua=0&&(He>=0&&_r!==He?K.text.placedSymbolArray.get(_r).crossTileID=0:K.text.placedSymbolArray.get(_r).crossTileID=te.crossTileID)}},ps.prototype.markUsedOrientation=function(K,me,te){for(var ye=me===e.WritingMode.horizontal||me===e.WritingMode.horizontalOnly?me:0,We=me===e.WritingMode.vertical?me:0,He=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex],at=0,St=He;at0||Gr>0,fn=si.numIconVertices>0,Gn=ye.placedOrientations[si.crossTileID],Cn=Gn===e.WritingMode.vertical,Yn=Gn===e.WritingMode.horizontal||Gn===e.WritingMode.horizontalOnly;if(Hi){var Ua=El(Ci.text),Ma=Cn?aa:Ua;ir(K.text,ri,Ma);var Wn=Yn?aa:Ua;ir(K.text,Gr,Wn);var fa=Ci.text.isHidden();[si.rightJustifiedTextSymbolIndex,si.centerJustifiedTextSymbolIndex,si.leftJustifiedTextSymbolIndex].forEach(function(ed){ed>=0&&(K.text.placedSymbolArray.get(ed).hidden=fa||Cn?1:0)}),si.verticalPlacedTextSymbolIndex>=0&&(K.text.placedSymbolArray.get(si.verticalPlacedTextSymbolIndex).hidden=fa||Yn?1:0);var la=ye.variableOffsets[si.crossTileID];la&&ye.markUsedJustification(K,la.anchor,si,Gn);var Da=ye.placedOrientations[si.crossTileID];Da&&(ye.markUsedJustification(K,"left",si,Da),ye.markUsedOrientation(K,Da,si))}if(fn){var Ja=El(Ci.icon),Is=!(Tr&&si.verticalPlacedIconSymbolIndex&&Cn);if(si.placedIconSymbolIndex>=0){var Ss=Is?Ja:aa;ir(K.icon,si.numIconVertices,Ss),K.icon.placedSymbolArray.get(si.placedIconSymbolIndex).hidden=Ci.icon.isHidden()}if(si.verticalPlacedIconSymbolIndex>=0){var tl=Is?aa:Ja;ir(K.icon,si.numVerticalIconVertices,tl),K.icon.placedSymbolArray.get(si.verticalPlacedIconSymbolIndex).hidden=Ci.icon.isHidden()}}if(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData()){var os=K.collisionArrays[Hr];if(os){var qs=new e.Point(0,0);if(os.textBox||os.verticalTextBox){var Rl=!0;if(Gt){var Bu=ye.variableOffsets[li];Bu?(qs=Hs(Bu.anchor,Bu.width,Bu.height,Bu.textOffset,Bu.textBoxScale),_r&&qs._rotate(Rr?ye.transform.angle:-ye.transform.angle)):Rl=!1}os.textBox&&bn(K.textCollisionBox.collisionVertexArray,Ci.text.placed,!Rl||Cn,qs.x,qs.y),os.verticalTextBox&&bn(K.textCollisionBox.collisionVertexArray,Ci.text.placed,!Rl||Yn,qs.x,qs.y)}var Qh=!!(!Yn&&os.verticalIconBox);os.iconBox&&bn(K.iconCollisionBox.collisionVertexArray,Ci.icon.placed,Qh,Tr?qs.x:0,Tr?qs.y:0),os.verticalIconBox&&bn(K.iconCollisionBox.collisionVertexArray,Ci.icon.placed,!Qh,Tr?qs.x:0,Tr?qs.y:0)}}},Ir=0;IrK},ps.prototype.setStale=function(){this.stale=!0};function bn(ve,K,me,te,ye){ve.emplaceBack(K?1:0,me?1:0,te||0,ye||0),ve.emplaceBack(K?1:0,me?1:0,te||0,ye||0),ve.emplaceBack(K?1:0,me?1:0,te||0,ye||0),ve.emplaceBack(K?1:0,me?1:0,te||0,ye||0)}var Ra=Math.pow(2,25),_l=Math.pow(2,24),Ys=Math.pow(2,17),ko=Math.pow(2,16),Js=Math.pow(2,9),ks=Math.pow(2,8),ml=Math.pow(2,1);function El(ve){if(ve.opacity===0&&!ve.placed)return 0;if(ve.opacity===1&&ve.placed)return 4294967295;var K=ve.placed?1:0,me=Math.floor(ve.opacity*127);return me*Ra+K*_l+me*Ys+K*ko+me*Js+K*ks+me*ml+K}var aa=0,Ho=function(K){this._sortAcrossTiles=K.layout.get("symbol-z-order")!=="viewport-y"&&K.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Ho.prototype.continuePlacement=function(K,me,te,ye,We){for(var He=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var at=K[this._currentPlacementIndex],St=me[at],Gt=this.placement.collisionIndex.transform.zoom;if(St.type==="symbol"&&(!St.minzoom||St.minzoom<=Gt)&&(!St.maxzoom||St.maxzoom>Gt)){this._inProgressLayer||(this._inProgressLayer=new Ho(St));var _r=this._inProgressLayer.continuePlacement(te[St.source],this.placement,this._showCollisionBoxes,St,He);if(_r)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},po.prototype.commit=function(K){return this.placement.commit(K),this.placement};var zs=512/e.EXTENT/2,hs=function(K,me,te){this.tileID=K,this.indexedSymbolInstances={},this.bucketInstanceId=te;for(var ye=0;yeK.overscaledZ)for(var Gt in St){var _r=St[Gt];_r.tileID.isChildOf(K)&&_r.findMatches(me.symbolInstances,K,He)}else{var Rr=K.scaledTo(Number(at)),Tr=St[Rr.key];Tr&&Tr.findMatches(me.symbolInstances,K,He)}}for(var Ht=0;Ht0)throw new Error("Unimplemented: "+He.map(function(at){return at.command}).join(", ")+".");return We.forEach(function(at){at.command!=="setTransition"&&ye[at.command].apply(ye,at.args)}),this.stylesheet=te,!0},K.prototype.addImage=function(te,ye){if(this.getImage(te))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(te,ye),this._afterImageUpdated(te)},K.prototype.updateImage=function(te,ye){this.imageManager.updateImage(te,ye)},K.prototype.getImage=function(te){return this.imageManager.getImage(te)},K.prototype.removeImage=function(te){if(!this.getImage(te))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(te),this._afterImageUpdated(te)},K.prototype._afterImageUpdated=function(te){this._availableImages=this.imageManager.listImages(),this._changedImages[te]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))},K.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},K.prototype.addSource=function(te,ye,We){var He=this;if(We===void 0&&(We={}),this._checkLoaded(),this.sourceCaches[te]!==void 0)throw new Error("There is already a source with this ID");if(!ye.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(ye).join(", ")+".");var at=["vector","raster","geojson","video","image"],St=at.indexOf(ye.type)>=0;if(!(St&&this._validate(e.validateStyle.source,"sources."+te,ye,null,We))){this.map&&this.map._collectResourceTiming&&(ye.collectResourceTiming=!0);var Gt=this.sourceCaches[te]=new _i(te,ye,this.dispatcher);Gt.style=this,Gt.setEventedParent(this,function(){return{isSourceLoaded:He.loaded(),source:Gt.serialize(),sourceId:te}}),Gt.onAdd(this.map),this._changed=!0}},K.prototype.removeSource=function(te){if(this._checkLoaded(),this.sourceCaches[te]===void 0)throw new Error("There is no source with this ID");for(var ye in this._layers)if(this._layers[ye].source===te)return this.fire(new e.ErrorEvent(new Error('Source "'+te+'" cannot be removed while layer "'+ye+'" is using it.')));var We=this.sourceCaches[te];delete this.sourceCaches[te],delete this._updatedSources[te],We.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:te})),We.setEventedParent(null),We.clearTiles(),We.onRemove&&We.onRemove(this.map),this._changed=!0},K.prototype.setGeoJSONSourceData=function(te,ye){this._checkLoaded();var We=this.sourceCaches[te].getSource();We.setData(ye),this._changed=!0},K.prototype.getSource=function(te){return this.sourceCaches[te]&&this.sourceCaches[te].getSource()},K.prototype.addLayer=function(te,ye,We){We===void 0&&(We={}),this._checkLoaded();var He=te.id;if(this.getLayer(He)){this.fire(new e.ErrorEvent(new Error('Layer with id "'+He+'" already exists on this map')));return}var at;if(te.type==="custom"){if(kl(this,e.validateCustomStyleLayer(te)))return;at=e.createStyleLayer(te)}else{if(typeof te.source=="object"&&(this.addSource(He,te.source),te=e.clone$1(te),te=e.extend(te,{source:He})),this._validate(e.validateStyle.layer,"layers."+He,te,{arrayIndex:-1},We))return;at=e.createStyleLayer(te),this._validateLayer(at),at.setEventedParent(this,{layer:{id:He}}),this._serializedLayers[at.id]=at.serialize()}var St=ye?this._order.indexOf(ye):this._order.length;if(ye&&St===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+ye+'" does not exist on this map.')));return}if(this._order.splice(St,0,He),this._layerOrderChanged=!0,this._layers[He]=at,this._removedLayers[He]&&at.source&&at.type!=="custom"){var Gt=this._removedLayers[He];delete this._removedLayers[He],Gt.type!==at.type?this._updatedSources[at.source]="clear":(this._updatedSources[at.source]="reload",this.sourceCaches[at.source].pause())}this._updateLayer(at),at.onAdd&&at.onAdd(this.map)},K.prototype.moveLayer=function(te,ye){this._checkLoaded(),this._changed=!0;var We=this._layers[te];if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be moved.")));return}if(te!==ye){var He=this._order.indexOf(te);this._order.splice(He,1);var at=ye?this._order.indexOf(ye):this._order.length;if(ye&&at===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+ye+'" does not exist on this map.')));return}this._order.splice(at,0,te),this._layerOrderChanged=!0}},K.prototype.removeLayer=function(te){this._checkLoaded();var ye=this._layers[te];if(!ye){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be removed.")));return}ye.setEventedParent(null);var We=this._order.indexOf(te);this._order.splice(We,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[te]=ye,delete this._layers[te],delete this._serializedLayers[te],delete this._updatedLayers[te],delete this._updatedPaintProps[te],ye.onRemove&&ye.onRemove(this.map)},K.prototype.getLayer=function(te){return this._layers[te]},K.prototype.hasLayer=function(te){return te in this._layers},K.prototype.setLayerZoomRange=function(te,ye,We){this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot have zoom extent.")));return}He.minzoom===ye&&He.maxzoom===We||(ye!=null&&(He.minzoom=ye),We!=null&&(He.maxzoom=We),this._updateLayer(He))},K.prototype.setFilter=function(te,ye,We){We===void 0&&(We={}),this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be filtered.")));return}if(!e.deepEqual(He.filter,ye)){if(ye==null){He.filter=void 0,this._updateLayer(He);return}this._validate(e.validateStyle.filter,"layers."+He.id+".filter",ye,null,We)||(He.filter=e.clone$1(ye),this._updateLayer(He))}},K.prototype.getFilter=function(te){return e.clone$1(this.getLayer(te).filter)},K.prototype.setLayoutProperty=function(te,ye,We,He){He===void 0&&(He={}),this._checkLoaded();var at=this.getLayer(te);if(!at){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}e.deepEqual(at.getLayoutProperty(ye),We)||(at.setLayoutProperty(ye,We,He),this._updateLayer(at))},K.prototype.getLayoutProperty=function(te,ye){var We=this.getLayer(te);if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style.")));return}return We.getLayoutProperty(ye)},K.prototype.setPaintProperty=function(te,ye,We,He){He===void 0&&(He={}),this._checkLoaded();var at=this.getLayer(te);if(!at){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}if(!e.deepEqual(at.getPaintProperty(ye),We)){var St=at.setPaintProperty(ye,We,He);St&&this._updateLayer(at),this._changed=!0,this._updatedPaintProps[te]=!0}},K.prototype.getPaintProperty=function(te,ye){return this.getLayer(te).getPaintProperty(ye)},K.prototype.setFeatureState=function(te,ye){this._checkLoaded();var We=te.source,He=te.sourceLayer,at=this.sourceCaches[We];if(at===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var St=at.getSource().type;if(St==="geojson"&&He){this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(St==="vector"&&!He){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),at.setFeatureState(He,te.id,ye)},K.prototype.removeFeatureState=function(te,ye){this._checkLoaded();var We=te.source,He=this.sourceCaches[We];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var at=He.getSource().type,St=at==="vector"?te.sourceLayer:void 0;if(at==="vector"&&!St){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(ye&&typeof te.id!="string"&&typeof te.id!="number"){this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}He.removeFeatureState(St,te.id,ye)},K.prototype.getFeatureState=function(te){this._checkLoaded();var ye=te.source,We=te.sourceLayer,He=this.sourceCaches[ye];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+ye+"' does not exist in the map's style.")));return}var at=He.getSource().type;if(at==="vector"&&!We){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),He.getFeatureState(We,te.id)},K.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},K.prototype.serialize=function(){return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:e.mapObject(this.sourceCaches,function(te){return te.serialize()}),layers:this._serializeLayers(this._order)},function(te){return te!==void 0})},K.prototype._updateLayer=function(te){this._updatedLayers[te.id]=!0,te.source&&!this._updatedSources[te.source]&&this.sourceCaches[te.source].getSource().type!=="raster"&&(this._updatedSources[te.source]="reload",this.sourceCaches[te.source].pause()),this._changed=!0},K.prototype._flattenAndSortRenderedFeatures=function(te){for(var ye=this,We=function(Yn){return ye._layers[Yn].type==="fill-extrusion"},He={},at=[],St=this._order.length-1;St>=0;St--){var Gt=this._order[St];if(We(Gt)){He[Gt]=St;for(var _r=0,Rr=te;_r=0;Hr--){var si=this._order[Hr];if(We(si))for(var ri=at.length-1;ri>=0;ri--){var Gr=at[ri].feature;if(He[Gr.layer.id] 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`,Xl=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,rh=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0 +? a_pos +: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`,jf=`#ifdef GL_ES +precision highp float; +#endif +uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Cf="uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}",Jc=`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent; +#define PI 3.141592653589793 +void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Vf="uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}",ih=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,rc=` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Lf=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Oc=` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Qc=`uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Pu=` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`,_f=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Nc=` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`,Qs=`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,qf="uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}",Ph=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,nh=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}`,df=`#define SDF_PX 8.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,hh=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`,Iu=`#define SDF_PX 8.0 +#define SDF 1.0 +#define ICON 0.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,ah=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,cu=dl(Fc,Qu),Ru=dl(fh,yf),Mc=dl(Gs,$c),Ol=dl(kf,ru),Uc=dl(Cl,fc),ic=dl(Ac,ol),wu=dl(Ll,Ks),Pl=dl(fl,hc),oh=dl(Wl,ec),dh=dl(hl,jh),Wu=dl(ys,Lh),Sc=dl(Us,Wo),dc=dl(ff,tc),Vh=dl(yu,Uf),vf=dl(Bc,hf),xf=dl(Xl,rh),Du=dl(jf,Cf),Pf=dl(Jc,Vf),fu=dl(ih,rc),ef=dl(Lf,Oc),vh=dl(Qc,Pu),If=dl(_f,Nc),yl=dl(Qs,qf),Tu=dl(Ph,nh),Au=dl(df,hh),Hf=dl(Iu,ah);function dl(ve,K){var me=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,te=K.match(/attribute ([\w]+) ([\w]+)/g),ye=ve.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),We=K.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),He=We?We.concat(ye):ye,at={};return ve=ve.replace(me,function(St,Gt,_r,Rr,Tr){return at[Tr]=!0,Gt==="define"?` +#ifndef HAS_UNIFORM_u_`+Tr+` +varying `+_r+" "+Rr+" "+Tr+`; +#else +uniform `+_r+" "+Rr+" u_"+Tr+`; +#endif +`:` +#ifdef HAS_UNIFORM_u_`+Tr+` + `+_r+" "+Rr+" "+Tr+" = u_"+Tr+`; +#endif +`}),K=K.replace(me,function(St,Gt,_r,Rr,Tr){var Ht=Rr==="float"?"vec2":"vec4",ir=Tr.match(/color/)?"color":Ht;return at[Tr]?Gt==="define"?` +#ifndef HAS_UNIFORM_u_`+Tr+` +uniform lowp float u_`+Tr+`_t; +attribute `+_r+" "+Ht+" a_"+Tr+`; +varying `+_r+" "+Rr+" "+Tr+`; +#else +uniform `+_r+" "+Rr+" u_"+Tr+`; +#endif +`:ir==="vec4"?` +#ifndef HAS_UNIFORM_u_`+Tr+` + `+Tr+" = a_"+Tr+`; +#else + `+_r+" "+Rr+" "+Tr+" = u_"+Tr+`; +#endif +`:` +#ifndef HAS_UNIFORM_u_`+Tr+` + `+Tr+" = unpack_mix_"+ir+"(a_"+Tr+", u_"+Tr+`_t); +#else + `+_r+" "+Rr+" "+Tr+" = u_"+Tr+`; +#endif +`:Gt==="define"?` +#ifndef HAS_UNIFORM_u_`+Tr+` +uniform lowp float u_`+Tr+`_t; +attribute `+_r+" "+Ht+" a_"+Tr+`; +#else +uniform `+_r+" "+Rr+" u_"+Tr+`; +#endif +`:ir==="vec4"?` +#ifndef HAS_UNIFORM_u_`+Tr+` + `+_r+" "+Rr+" "+Tr+" = a_"+Tr+`; +#else + `+_r+" "+Rr+" "+Tr+" = u_"+Tr+`; +#endif +`:` +#ifndef HAS_UNIFORM_u_`+Tr+` + `+_r+" "+Rr+" "+Tr+" = unpack_mix_"+ir+"(a_"+Tr+", u_"+Tr+`_t); +#else + `+_r+" "+Rr+" "+Tr+" = u_"+Tr+`; +#endif +`}),{fragmentSource:ve,vertexSource:K,staticAttributes:te,staticUniforms:He}}var pf=Object.freeze({__proto__:null,prelude:cu,background:Ru,backgroundPattern:Mc,circle:Ol,clippingMask:Uc,heatmap:ic,heatmapTexture:wu,collisionBox:Pl,collisionCircle:oh,debug:dh,fill:Wu,fillOutline:Sc,fillOutlinePattern:dc,fillPattern:Vh,fillExtrusion:vf,fillExtrusionPattern:xf,hillshadePrepare:Du,hillshade:Pf,line:fu,lineGradient:ef,linePattern:vh,lineSDF:If,raster:yl,symbolIcon:Tu,symbolSDF:Au,symbolTextAndIcon:Hf}),Ec=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Ec.prototype.bind=function(K,me,te,ye,We,He,at,St){this.context=K;for(var Gt=this.boundPaintVertexBuffers.length!==ye.length,_r=0;!Gt&&_r>16,at>>16],u_pixel_coord_lower:[He&65535,at&65535]}}function tf(ve,K,me,te){var ye=me.imageManager.getPattern(ve.from.toString()),We=me.imageManager.getPattern(ve.to.toString()),He=me.imageManager.getPixelSize(),at=He.width,St=He.height,Gt=Math.pow(2,te.tileID.overscaledZ),_r=te.tileSize*Math.pow(2,me.transform.tileZoom)/Gt,Rr=_r*(te.tileID.canonical.x+te.tileID.wrap*Gt),Tr=_r*te.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:ye.tl,u_pattern_br_a:ye.br,u_pattern_tl_b:We.tl,u_pattern_br_b:We.br,u_texsize:[at,St],u_mix:K.t,u_pattern_size_a:ye.displaySize,u_pattern_size_b:We.displaySize,u_scale_a:K.fromScale,u_scale_b:K.toScale,u_tile_units_to_pixels:1/Za(te,1,me.transform.tileZoom),u_pixel_coord_upper:[Rr>>16,Tr>>16],u_pixel_coord_lower:[Rr&65535,Tr&65535]}}var Gf=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Jl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_height_factor:new e.Uniform1f(ve,K.u_height_factor),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Wf=function(ve,K,me,te){var ye=K.style.light,We=ye.properties.get("position"),He=[We.x,We.y,We.z],at=e.create$1();ye.properties.get("anchor")==="viewport"&&e.fromRotation(at,-K.transform.angle),e.transformMat3(He,He,at);var St=ye.properties.get("color");return{u_matrix:ve,u_lightpos:He,u_lightintensity:ye.properties.get("intensity"),u_lightcolor:[St.r,St.g,St.b],u_vertical_gradient:+me,u_opacity:te}},Zu=function(ve,K,me,te,ye,We,He){return e.extend(Wf(ve,K,me,te),vc(We,K,He),{u_height_factor:-Math.pow(2,ye.overscaledZ)/He.tileSize/8})},kc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},pc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Nl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world)}},hu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},mc=function(ve){return{u_matrix:ve}},jc=function(ve,K,me,te){return e.extend(mc(ve),vc(me,K,te))},nc=function(ve,K){return{u_matrix:ve,u_world:K}},rf=function(ve,K,me,te,ye){return e.extend(jc(ve,K,me,te),{u_world:ye})},Zt=function(ve,K){return{u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(ve,K.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},hr=function(ve,K,me,te){var ye=ve.transform,We,He;if(te.paint.get("circle-pitch-alignment")==="map"){var at=Za(me,1,ye.zoom);We=!0,He=[at,at]}else We=!1,He=ye.pixelsToGLUnits;return{u_camera_to_center_distance:ye.cameraToCenterDistance,u_scale_with_map:+(te.paint.get("circle-pitch-scale")==="map"),u_matrix:ve.translatePosMatrix(K.posMatrix,me,te.paint.get("circle-translate"),te.paint.get("circle-translate-anchor")),u_pitch_with_map:+We,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:He}},Kr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(ve,K.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_overscale_factor:new e.Uniform1f(ve,K.u_overscale_factor)}},qr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_inv_matrix:new e.UniformMatrix4f(ve,K.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(ve,K.u_viewport_size)}},ki=function(ve,K,me){var te=Za(me,1,K.zoom),ye=Math.pow(2,K.zoom-me.tileID.overscaledZ),We=me.tileID.overscaleFactor();return{u_matrix:ve,u_camera_to_center_distance:K.cameraToCenterDistance,u_pixels_to_tile_units:te,u_extrude_scale:[K.pixelsToGLUnits[0]/(te*ye),K.pixelsToGLUnits[1]/(te*ye)],u_overscale_factor:We}},an=function(ve,K,me){return{u_matrix:ve,u_inv_matrix:K,u_camera_to_center_distance:me.cameraToCenterDistance,u_viewport_size:[me.width,me.height]}},pn=function(ve,K){return{u_color:new e.UniformColor(ve,K.u_color),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_overlay:new e.Uniform1i(ve,K.u_overlay),u_overlay_scale:new e.Uniform1f(ve,K.u_overlay_scale)}},Pn=function(ve,K,me){return me===void 0&&(me=1),{u_matrix:ve,u_color:K,u_overlay:0,u_overlay_scale:me}},Vn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},ra=function(ve){return{u_matrix:ve}},yn=function(ve,K){return{u_extrude_scale:new e.Uniform1f(ve,K.u_extrude_scale),u_intensity:new e.Uniform1f(ve,K.u_intensity),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},In=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_color_ramp:new e.Uniform1i(ve,K.u_color_ramp),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},kn=function(ve,K,me,te){return{u_matrix:ve,u_extrude_scale:Za(K,1,me),u_intensity:te}},cn=function(ve,K,me,te){var ye=e.create();e.ortho(ye,0,ve.width,ve.height,0,0,1);var We=ve.context.gl;return{u_matrix:ye,u_world:[We.drawingBufferWidth,We.drawingBufferHeight],u_image:me,u_color_ramp:te,u_opacity:K.paint.get("heatmap-opacity")}},xa=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_latrange:new e.Uniform2f(ve,K.u_latrange),u_light:new e.Uniform2f(ve,K.u_light),u_shadow:new e.UniformColor(ve,K.u_shadow),u_highlight:new e.UniformColor(ve,K.u_highlight),u_accent:new e.UniformColor(ve,K.u_accent)}},mo=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_dimension:new e.Uniform2f(ve,K.u_dimension),u_zoom:new e.Uniform1f(ve,K.u_zoom),u_unpack:new e.Uniform4f(ve,K.u_unpack)}},uo=function(ve,K,me){var te=me.paint.get("hillshade-shadow-color"),ye=me.paint.get("hillshade-highlight-color"),We=me.paint.get("hillshade-accent-color"),He=me.paint.get("hillshade-illumination-direction")*(Math.PI/180);me.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=ve.transform.angle);var at=!ve.options.moving;return{u_matrix:ve.transform.calculatePosMatrix(K.tileID.toUnwrapped(),at),u_image:0,u_latrange:Mo(ve,K.tileID),u_light:[me.paint.get("hillshade-exaggeration"),He],u_shadow:te,u_highlight:ye,u_accent:We}},go=function(ve,K){var me=K.stride,te=e.create();return e.ortho(te,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(te,te,[0,-e.EXTENT,0]),{u_matrix:te,u_image:1,u_dimension:[me,me],u_zoom:ve.overscaledZ,u_unpack:K.getUnpackVector()}};function Mo(ve,K){var me=Math.pow(2,K.canonical.z),te=K.canonical.y;return[new e.MercatorCoordinate(0,te/me).toLngLat().lat,new e.MercatorCoordinate(0,(te+1)/me).toLngLat().lat]}var ya=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels)}},Zn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_image:new e.Uniform1i(ve,K.u_image),u_image_height:new e.Uniform1f(ve,K.u_image_height)}},Po=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_image:new e.Uniform1i(ve,K.u_image),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},us=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(ve,K.u_patternscale_a),u_patternscale_b:new e.Uniform2f(ve,K.u_patternscale_b),u_sdfgamma:new e.Uniform1f(ve,K.u_sdfgamma),u_image:new e.Uniform1i(ve,K.u_image),u_tex_y_a:new e.Uniform1f(ve,K.u_tex_y_a),u_tex_y_b:new e.Uniform1f(ve,K.u_tex_y_b),u_mix:new e.Uniform1f(ve,K.u_mix)}},Bs=function(ve,K,me){var te=ve.transform;return{u_matrix:ql(ve,K,me),u_ratio:1/Za(K,1,te.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/te.pixelsToGLUnits[0],1/te.pixelsToGLUnits[1]]}},sl=function(ve,K,me,te){return e.extend(Bs(ve,K,me),{u_image:0,u_image_height:te})},js=function(ve,K,me,te){var ye=ve.transform,We=Ps(K,ye);return{u_matrix:ql(ve,K,me),u_texsize:K.imageAtlasTexture.size,u_ratio:1/Za(K,1,ye.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[We,te.fromScale,te.toScale],u_fade:te.t,u_units_to_pixels:[1/ye.pixelsToGLUnits[0],1/ye.pixelsToGLUnits[1]]}},il=function(ve,K,me,te,ye){var We=ve.transform,He=ve.lineAtlas,at=Ps(K,We),St=me.layout.get("line-cap")==="round",Gt=He.getDash(te.from,St),_r=He.getDash(te.to,St),Rr=Gt.width*ye.fromScale,Tr=_r.width*ye.toScale;return e.extend(Bs(ve,K,me),{u_patternscale_a:[at/Rr,-Gt.height/2],u_patternscale_b:[at/Tr,-_r.height/2],u_sdfgamma:He.width/(Math.min(Rr,Tr)*256*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:Gt.y,u_tex_y_b:_r.y,u_mix:ye.t})};function Ps(ve,K){return 1/Za(ve,1,K.tileZoom)}function ql(ve,K,me){return ve.translatePosMatrix(K.tileID.posMatrix,K,me.paint.get("line-translate"),me.paint.get("line-translate-anchor"))}var Tl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_tl_parent:new e.Uniform2f(ve,K.u_tl_parent),u_scale_parent:new e.Uniform1f(ve,K.u_scale_parent),u_buffer_scale:new e.Uniform1f(ve,K.u_buffer_scale),u_fade_t:new e.Uniform1f(ve,K.u_fade_t),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image0:new e.Uniform1i(ve,K.u_image0),u_image1:new e.Uniform1i(ve,K.u_image1),u_brightness_low:new e.Uniform1f(ve,K.u_brightness_low),u_brightness_high:new e.Uniform1f(ve,K.u_brightness_high),u_saturation_factor:new e.Uniform1f(ve,K.u_saturation_factor),u_contrast_factor:new e.Uniform1f(ve,K.u_contrast_factor),u_spin_weights:new e.Uniform3f(ve,K.u_spin_weights)}},vl=function(ve,K,me,te,ye){return{u_matrix:ve,u_tl_parent:K,u_scale_parent:me,u_buffer_scale:1,u_fade_t:te.mix,u_opacity:te.opacity*ye.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ye.paint.get("raster-brightness-min"),u_brightness_high:ye.paint.get("raster-brightness-max"),u_saturation_factor:el(ye.paint.get("raster-saturation")),u_contrast_factor:Go(ye.paint.get("raster-contrast")),u_spin_weights:Wa(ye.paint.get("raster-hue-rotate"))}};function Wa(ve){ve*=Math.PI/180;var K=Math.sin(ve),me=Math.cos(ve);return[(2*me+1)/3,(-Math.sqrt(3)*K-me+1)/3,(Math.sqrt(3)*K-me+1)/3]}function Go(ve){return ve>0?1/(1-ve):1+ve}function el(ve){return ve>0?1-1/(1.001-ve):-ve}var Os=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture)}},du=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},zu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texsize_icon:new e.Uniform2f(ve,K.u_texsize_icon),u_texture:new e.Uniform1i(ve,K.u_texture),u_texture_icon:new e.Uniform1i(ve,K.u_texture_icon),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},ac=function(ve,K,me,te,ye,We,He,at,St,Gt){var _r=ye.transform;return{u_is_size_zoom_constant:+(ve==="constant"||ve==="source"),u_is_size_feature_constant:+(ve==="constant"||ve==="camera"),u_size_t:K?K.uSizeT:0,u_size:K?K.uSize:0,u_camera_to_center_distance:_r.cameraToCenterDistance,u_pitch:_r.pitch/360*2*Math.PI,u_rotate_symbol:+me,u_aspect_ratio:_r.width/_r.height,u_fade_change:ye.options.fadeDuration?ye.symbolFadeChange:1,u_matrix:We,u_label_plane_matrix:He,u_coord_matrix:at,u_is_text:+St,u_pitch_with_map:+te,u_texsize:Gt,u_texture:0}},nf=function(ve,K,me,te,ye,We,He,at,St,Gt,_r){var Rr=ye.transform;return e.extend(ac(ve,K,me,te,ye,We,He,at,St,Gt),{u_gamma_scale:te?Math.cos(Rr._pitch)*Rr.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+_r})},Mu=function(ve,K,me,te,ye,We,He,at,St,Gt){return e.extend(nf(ve,K,me,te,ye,We,He,at,!0,St,!0),{u_texsize_icon:Gt,u_texture_icon:1})},Vc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_color:new e.UniformColor(ve,K.u_color)}},Fu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image:new e.Uniform1i(ve,K.u_image),u_pattern_tl_a:new e.Uniform2f(ve,K.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(ve,K.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(ve,K.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(ve,K.u_pattern_br_b),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_mix:new e.Uniform1f(ve,K.u_mix),u_pattern_size_a:new e.Uniform2f(ve,K.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(ve,K.u_pattern_size_b),u_scale_a:new e.Uniform1f(ve,K.u_scale_a),u_scale_b:new e.Uniform1f(ve,K.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(ve,K.u_tile_units_to_pixels)}},Cc=function(ve,K,me){return{u_matrix:ve,u_opacity:K,u_color:me}},bo=function(ve,K,me,te,ye,We){return e.extend(tf(te,We,me,ye),{u_matrix:ve,u_opacity:K})},Ko={fillExtrusion:Gf,fillExtrusionPattern:Jl,fill:kc,fillPattern:pc,fillOutline:Nl,fillOutlinePattern:hu,circle:Zt,collisionBox:Kr,collisionCircle:qr,debug:pn,clippingMask:Vn,heatmap:yn,heatmapTexture:In,hillshade:xa,hillshadePrepare:mo,line:ya,lineGradient:Zn,linePattern:Po,lineSDF:us,raster:Tl,symbolIcon:Os,symbolSDF:du,symbolTextAndIcon:zu,background:Vc,backgroundPattern:Fu},qc;function gc(ve,K,me,te,ye,We,He){for(var at=ve.context,St=at.gl,Gt=ve.useProgram("collisionBox"),_r=[],Rr=0,Tr=0,Ht=0;Ht0){var ri=e.create(),Gr=Vr;e.mul(ri,Ir.placementInvProjMatrix,ve.transform.glCoordMatrix),e.mul(ri,ri,Ir.placementViewportMatrix),_r.push({circleArray:si,circleOffset:Tr,transform:Gr,invTransform:ri}),Rr+=si.length/4,Tr=Rr}Hr&&Gt.draw(at,St.LINES,Bi.disabled,Ri.disabled,ve.colorModeForRenderPass(),br.disabled,ki(Vr,ve.transform,pr),me.id,Hr.layoutVertexBuffer,Hr.indexBuffer,Hr.segments,null,ve.transform.zoom,null,null,Hr.collisionVertexBuffer)}}if(!(!He||!_r.length)){var li=ve.useProgram("collisionCircle"),Ur=new e.StructArrayLayout2f1f2i16;Ur.resize(Rr*4),Ur._trim();for(var Ci=0,Hi=0,fn=_r;Hi=0&&(ir[Ir.associatedIconIndex]={shiftedAnchor:Yn,angle:Ua})}}if(_r){Ht.clear();for(var Wn=ve.icon.placedSymbolArray,fa=0;fa0){var He=e.browser.now(),at=(He-ve.timeAdded)/We,St=K?(He-K.timeAdded)/We:-1,Gt=me.getSource(),_r=ye.coveringZoomLevel({tileSize:Gt.tileSize,roundZoom:Gt.roundZoom}),Rr=!K||Math.abs(K.tileID.overscaledZ-_r)>Math.abs(ve.tileID.overscaledZ-_r),Tr=Rr&&ve.refreshedUponExpiration?1:e.clamp(Rr?at:1-St,0,1);return ve.refreshedUponExpiration&&at>=1&&(ve.refreshedUponExpiration=!1),K?{opacity:1,mix:1-Tr}:{opacity:Tr,mix:0}}else return{opacity:1,mix:0}}function vr(ve,K,me){var te=me.paint.get("background-color"),ye=me.paint.get("background-opacity");if(ye!==0){var We=ve.context,He=We.gl,at=ve.transform,St=at.tileSize,Gt=me.paint.get("background-pattern");if(!ve.isPatternMissing(Gt)){var _r=!Gt&&te.a===1&&ye===1&&ve.opaquePassEnabledForLayer()?"opaque":"translucent";if(ve.renderPass===_r){var Rr=Ri.disabled,Tr=ve.depthModeForSublayer(0,_r==="opaque"?Bi.ReadWrite:Bi.ReadOnly),Ht=ve.colorModeForRenderPass(),ir=ve.useProgram(Gt?"backgroundPattern":"background"),pr=at.coveringTiles({tileSize:St});Gt&&(We.activeTexture.set(He.TEXTURE0),ve.imageManager.bind(ve.context));for(var Ir=me.getCrossfadeParameters(),Vr=0,Hr=pr;Vr "+me.overscaledZ);var Vr=Ir+" "+Ht+"kb";Do(ve,Vr),He.draw(te,ye.TRIANGLES,at,St,Dt.alphaBlended,br.disabled,Pn(We,e.Color.transparent,pr),_r,ve.debugBuffer,ve.quadTriangleIndexBuffer,ve.debugSegments)}function Do(ve,K){ve.initDebugOverlayCanvas();var me=ve.debugOverlayCanvas,te=ve.context.gl,ye=ve.debugOverlayCanvas.getContext("2d");ye.clearRect(0,0,me.width,me.height),ye.shadowColor="white",ye.shadowBlur=2,ye.lineWidth=1.5,ye.strokeStyle="white",ye.textBaseline="top",ye.font="bold 36px Open Sans, sans-serif",ye.fillText(K,5,5),ye.strokeText(K,5,5),ve.debugOverlayTexture.update(me),ve.debugOverlayTexture.bind(te.LINEAR,te.CLAMP_TO_EDGE)}function _s(ve,K,me){var te=ve.context,ye=me.implementation;if(ve.renderPass==="offscreen"){var We=ye.prerender;We&&(ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),We.call(ye,te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState())}else if(ve.renderPass==="translucent"){ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),te.setStencilMode(Ri.disabled);var He=ye.renderingMode==="3d"?new Bi(ve.context.gl.LEQUAL,Bi.ReadWrite,ve.depthRangeFor3D):ve.depthModeForSublayer(0,Bi.ReadOnly);te.setDepthMode(He),ye.render(te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState(),te.bindFramebuffer.set(null)}}var Oo={symbol:R,circle:Rt,heatmap:Kt,line:ii,fill:qe,"fill-extrusion":nt,hillshade:Tt,raster:tr,background:vr,debug:eo,custom:_s},as=function(K,me){this.context=new Zr(K),this.transform=me,this._tileTextures={},this.setup(),this.numSublayers=_i.maxUnderzooming+_i.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ju,this.gpuTimers={}};as.prototype.resize=function(K,me){if(this.width=K*e.browser.devicePixelRatio,this.height=me*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var te=0,ye=this.style._order;te256&&this.clearStencil(),te.setColorMode(Dt.disabled),te.setDepthMode(Bi.disabled);var We=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var He=0,at=me;He256&&this.clearStencil();var K=this.nextStencilID++,me=this.context.gl;return new Ri({func:me.NOTEQUAL,mask:255},K,255,me.KEEP,me.KEEP,me.REPLACE)},as.prototype.stencilModeForClipping=function(K){var me=this.context.gl;return new Ri({func:me.EQUAL,mask:255},this._tileClippingMaskIDs[K.key],0,me.KEEP,me.KEEP,me.REPLACE)},as.prototype.stencilConfigForOverlap=function(K){var me,te=this.context.gl,ye=K.sort(function(Gt,_r){return _r.overscaledZ-Gt.overscaledZ}),We=ye[ye.length-1].overscaledZ,He=ye[0].overscaledZ-We+1;if(He>1){this.currentStencilSource=void 0,this.nextStencilID+He>256&&this.clearStencil();for(var at={},St=0;St=0;this.currentLayer--){var ri=this.style._layers[ye[this.currentLayer]],Gr=We[ri.source],li=St[ri.source];this._renderTileClippingMasks(ri,li),this.renderLayer(this,Gr,ri,li)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?me.pop():null},as.prototype.isPatternMissing=function(K){if(!K)return!1;if(!K.from||!K.to)return!0;var me=this.imageManager.getPattern(K.from.toString()),te=this.imageManager.getPattern(K.to.toString());return!me||!te},as.prototype.useProgram=function(K,me){this.cache=this.cache||{};var te=""+K+(me?me.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[te]||(this.cache[te]=new bf(this.context,K,pf[K],me,Ko[K],this._showOverdrawInspector)),this.cache[te]},as.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},as.prototype.setBaseState=function(){var K=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(K.FUNC_ADD)},as.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var K=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,K.RGBA)}},as.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Ms=function(K,me){this.points=K,this.planes=me};Ms.fromInvProjectionMatrix=function(K,me,te){var ye=[[-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]],We=Math.pow(2,te),He=ye.map(function(Gt){return e.transformMat4([],Gt,K)}).map(function(Gt){return e.scale$1([],Gt,1/Gt[3]/me*We)}),at=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],St=at.map(function(Gt){var _r=e.sub([],He[Gt[0]],He[Gt[1]]),Rr=e.sub([],He[Gt[2]],He[Gt[1]]),Tr=e.normalize([],e.cross([],_r,Rr)),Ht=-e.dot(Tr,He[Gt[1]]);return Tr.concat(Ht)});return new Ms(He,St)};var pl=function(K,me){this.min=K,this.max=me,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};pl.prototype.quadrant=function(K){for(var me=[K%2===0,K<2],te=e.clone$2(this.min),ye=e.clone$2(this.max),We=0;We=0;if(He===0)return 0;He!==me.length&&(te=!1)}if(te)return 2;for(var St=0;St<3;St++){for(var Gt=Number.MAX_VALUE,_r=-Number.MAX_VALUE,Rr=0;Rrthis.max[St]-this.min[St])return 0}return 1};var ll=function(K,me,te,ye){if(K===void 0&&(K=0),me===void 0&&(me=0),te===void 0&&(te=0),ye===void 0&&(ye=0),isNaN(K)||K<0||isNaN(me)||me<0||isNaN(te)||te<0||isNaN(ye)||ye<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=K,this.bottom=me,this.left=te,this.right=ye};ll.prototype.interpolate=function(K,me,te){return me.top!=null&&K.top!=null&&(this.top=e.number(K.top,me.top,te)),me.bottom!=null&&K.bottom!=null&&(this.bottom=e.number(K.bottom,me.bottom,te)),me.left!=null&&K.left!=null&&(this.left=e.number(K.left,me.left,te)),me.right!=null&&K.right!=null&&(this.right=e.number(K.right,me.right,te)),this},ll.prototype.getCenter=function(K,me){var te=e.clamp((this.left+K-this.right)/2,0,K),ye=e.clamp((this.top+me-this.bottom)/2,0,me);return new e.Point(te,ye)},ll.prototype.equals=function(K){return this.top===K.top&&this.bottom===K.bottom&&this.left===K.left&&this.right===K.right},ll.prototype.clone=function(){return new ll(this.top,this.bottom,this.left,this.right)},ll.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var cs=function(K,me,te,ye,We){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=We===void 0?!0:We,this._minZoom=K||0,this._maxZoom=me||22,this._minPitch=te??0,this._maxPitch=ye??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ll,this._posMatrixCache={},this._alignedPosMatrixCache={}},ls={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};cs.prototype.clone=function(){var K=new cs(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return K.tileSize=this.tileSize,K.latRange=this.latRange,K.width=this.width,K.height=this.height,K._center=this._center,K.zoom=this.zoom,K.angle=this.angle,K._fov=this._fov,K._pitch=this._pitch,K._unmodified=this._unmodified,K._edgeInsets=this._edgeInsets.clone(),K._calcMatrices(),K},ls.minZoom.get=function(){return this._minZoom},ls.minZoom.set=function(ve){this._minZoom!==ve&&(this._minZoom=ve,this.zoom=Math.max(this.zoom,ve))},ls.maxZoom.get=function(){return this._maxZoom},ls.maxZoom.set=function(ve){this._maxZoom!==ve&&(this._maxZoom=ve,this.zoom=Math.min(this.zoom,ve))},ls.minPitch.get=function(){return this._minPitch},ls.minPitch.set=function(ve){this._minPitch!==ve&&(this._minPitch=ve,this.pitch=Math.max(this.pitch,ve))},ls.maxPitch.get=function(){return this._maxPitch},ls.maxPitch.set=function(ve){this._maxPitch!==ve&&(this._maxPitch=ve,this.pitch=Math.min(this.pitch,ve))},ls.renderWorldCopies.get=function(){return this._renderWorldCopies},ls.renderWorldCopies.set=function(ve){ve===void 0?ve=!0:ve===null&&(ve=!1),this._renderWorldCopies=ve},ls.worldSize.get=function(){return this.tileSize*this.scale},ls.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},ls.size.get=function(){return new e.Point(this.width,this.height)},ls.bearing.get=function(){return-this.angle/Math.PI*180},ls.bearing.set=function(ve){var K=-e.wrap(ve,-180,180)*Math.PI/180;this.angle!==K&&(this._unmodified=!1,this.angle=K,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ls.pitch.get=function(){return this._pitch/Math.PI*180},ls.pitch.set=function(ve){var K=e.clamp(ve,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==K&&(this._unmodified=!1,this._pitch=K,this._calcMatrices())},ls.fov.get=function(){return this._fov/Math.PI*180},ls.fov.set=function(ve){ve=Math.max(.01,Math.min(60,ve)),this._fov!==ve&&(this._unmodified=!1,this._fov=ve/180*Math.PI,this._calcMatrices())},ls.zoom.get=function(){return this._zoom},ls.zoom.set=function(ve){var K=Math.min(Math.max(ve,this.minZoom),this.maxZoom);this._zoom!==K&&(this._unmodified=!1,this._zoom=K,this.scale=this.zoomScale(K),this.tileZoom=Math.floor(K),this.zoomFraction=K-this.tileZoom,this._constrain(),this._calcMatrices())},ls.center.get=function(){return this._center},ls.center.set=function(ve){ve.lat===this._center.lat&&ve.lng===this._center.lng||(this._unmodified=!1,this._center=ve,this._constrain(),this._calcMatrices())},ls.padding.get=function(){return this._edgeInsets.toJSON()},ls.padding.set=function(ve){this._edgeInsets.equals(ve)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,ve,1),this._calcMatrices())},ls.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},cs.prototype.isPaddingEqual=function(K){return this._edgeInsets.equals(K)},cs.prototype.interpolatePadding=function(K,me,te){this._unmodified=!1,this._edgeInsets.interpolate(K,me,te),this._constrain(),this._calcMatrices()},cs.prototype.coveringZoomLevel=function(K){var me=(K.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/K.tileSize));return Math.max(0,me)},cs.prototype.getVisibleUnwrappedCoordinates=function(K){var me=[new e.UnwrappedTileID(0,K)];if(this._renderWorldCopies)for(var te=this.pointCoordinate(new e.Point(0,0)),ye=this.pointCoordinate(new e.Point(this.width,0)),We=this.pointCoordinate(new e.Point(this.width,this.height)),He=this.pointCoordinate(new e.Point(0,this.height)),at=Math.floor(Math.min(te.x,ye.x,We.x,He.x)),St=Math.floor(Math.max(te.x,ye.x,We.x,He.x)),Gt=1,_r=at-Gt;_r<=St+Gt;_r++)_r!==0&&me.push(new e.UnwrappedTileID(_r,K));return me},cs.prototype.coveringTiles=function(K){var me=this.coveringZoomLevel(K),te=me;if(K.minzoom!==void 0&&meK.maxzoom&&(me=K.maxzoom);var ye=e.MercatorCoordinate.fromLngLat(this.center),We=Math.pow(2,me),He=[We*ye.x,We*ye.y,0],at=Ms.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,me),St=K.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(St=me);var Gt=3,_r=function(Cn){return{aabb:new pl([Cn*We,0,0],[(Cn+1)*We,We,0]),zoom:0,x:0,y:0,wrap:Cn,fullyVisible:!1}},Rr=[],Tr=[],Ht=me,ir=K.reparseOverscaled?te:me;if(this._renderWorldCopies)for(var pr=1;pr<=3;pr++)Rr.push(_r(-pr)),Rr.push(_r(pr));for(Rr.push(_r(0));Rr.length>0;){var Ir=Rr.pop(),Vr=Ir.x,Hr=Ir.y,si=Ir.fullyVisible;if(!si){var ri=Ir.aabb.intersects(at);if(ri===0)continue;si=ri===2}var Gr=Ir.aabb.distanceX(He),li=Ir.aabb.distanceY(He),Ur=Math.max(Math.abs(Gr),Math.abs(li)),Ci=Gt+(1<Ci&&Ir.zoom>=St){Tr.push({tileID:new e.OverscaledTileID(Ir.zoom===Ht?ir:Ir.zoom,Ir.wrap,Ir.zoom,Vr,Hr),distanceSq:e.sqrLen([He[0]-.5-Vr,He[1]-.5-Hr])});continue}for(var Hi=0;Hi<4;Hi++){var fn=(Vr<<1)+Hi%2,Gn=(Hr<<1)+(Hi>>1);Rr.push({aabb:Ir.aabb.quadrant(Hi),zoom:Ir.zoom+1,x:fn,y:Gn,wrap:Ir.wrap,fullyVisible:si})}}return Tr.sort(function(Cn,Yn){return Cn.distanceSq-Yn.distanceSq}).map(function(Cn){return Cn.tileID})},cs.prototype.resize=function(K,me){this.width=K,this.height=me,this.pixelsToGLUnits=[2/K,-2/me],this._constrain(),this._calcMatrices()},ls.unmodified.get=function(){return this._unmodified},cs.prototype.zoomScale=function(K){return Math.pow(2,K)},cs.prototype.scaleZoom=function(K){return Math.log(K)/Math.LN2},cs.prototype.project=function(K){var me=e.clamp(K.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(K.lng)*this.worldSize,e.mercatorYfromLat(me)*this.worldSize)},cs.prototype.unproject=function(K){return new e.MercatorCoordinate(K.x/this.worldSize,K.y/this.worldSize).toLngLat()},ls.point.get=function(){return this.project(this.center)},cs.prototype.setLocationAtPoint=function(K,me){var te=this.pointCoordinate(me),ye=this.pointCoordinate(this.centerPoint),We=this.locationCoordinate(K),He=new e.MercatorCoordinate(We.x-(te.x-ye.x),We.y-(te.y-ye.y));this.center=this.coordinateLocation(He),this._renderWorldCopies&&(this.center=this.center.wrap())},cs.prototype.locationPoint=function(K){return this.coordinatePoint(this.locationCoordinate(K))},cs.prototype.pointLocation=function(K){return this.coordinateLocation(this.pointCoordinate(K))},cs.prototype.locationCoordinate=function(K){return e.MercatorCoordinate.fromLngLat(K)},cs.prototype.coordinateLocation=function(K){return K.toLngLat()},cs.prototype.pointCoordinate=function(K){var me=0,te=[K.x,K.y,0,1],ye=[K.x,K.y,1,1];e.transformMat4(te,te,this.pixelMatrixInverse),e.transformMat4(ye,ye,this.pixelMatrixInverse);var We=te[3],He=ye[3],at=te[0]/We,St=ye[0]/He,Gt=te[1]/We,_r=ye[1]/He,Rr=te[2]/We,Tr=ye[2]/He,Ht=Rr===Tr?0:(me-Rr)/(Tr-Rr);return new e.MercatorCoordinate(e.number(at,St,Ht)/this.worldSize,e.number(Gt,_r,Ht)/this.worldSize)},cs.prototype.coordinatePoint=function(K){var me=[K.x*this.worldSize,K.y*this.worldSize,0,1];return e.transformMat4(me,me,this.pixelMatrix),new e.Point(me[0]/me[3],me[1]/me[3])},cs.prototype.getBounds=function(){return new e.LngLatBounds().extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},cs.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},cs.prototype.setMaxBounds=function(K){K?(this.lngRange=[K.getWest(),K.getEast()],this.latRange=[K.getSouth(),K.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},cs.prototype.calculatePosMatrix=function(K,me){me===void 0&&(me=!1);var te=K.key,ye=me?this._alignedPosMatrixCache:this._posMatrixCache;if(ye[te])return ye[te];var We=K.canonical,He=this.worldSize/this.zoomScale(We.z),at=We.x+Math.pow(2,We.z)*K.wrap,St=e.identity(new Float64Array(16));return e.translate(St,St,[at*He,We.y*He,0]),e.scale(St,St,[He/e.EXTENT,He/e.EXTENT,1]),e.multiply(St,me?this.alignedProjMatrix:this.projMatrix,St),ye[te]=new Float32Array(St),ye[te]},cs.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},cs.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var K=-90,me=90,te=-180,ye=180,We,He,at,St,Gt=this.size,_r=this._unmodified;if(this.latRange){var Rr=this.latRange;K=e.mercatorYfromLat(Rr[1])*this.worldSize,me=e.mercatorYfromLat(Rr[0])*this.worldSize,We=me-Kme&&(St=me-Ir)}if(this.lngRange){var Vr=Ht.x,Hr=Gt.x/2;Vr-Hrye&&(at=ye-Hr)}(at!==void 0||St!==void 0)&&(this.center=this.unproject(new e.Point(at!==void 0?at:Ht.x,St!==void 0?St:Ht.y))),this._unmodified=_r,this._constraining=!1}},cs.prototype._calcMatrices=function(){if(this.height){var K=this._fov/2,me=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(K)*this.height;var te=Math.PI/2+this._pitch,ye=this._fov*(.5+me.y/this.height),We=Math.sin(ye)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-te-ye,.01,Math.PI-.01)),He=this.point,at=He.x,St=He.y,Gt=Math.cos(Math.PI/2-this._pitch)*We+this.cameraToCenterDistance,_r=Gt*1.01,Rr=this.height/50,Tr=new Float64Array(16);e.perspective(Tr,this._fov,this.width/this.height,Rr,_r),Tr[8]=-me.x*2/this.width,Tr[9]=me.y*2/this.height,e.scale(Tr,Tr,[1,-1,1]),e.translate(Tr,Tr,[0,0,-this.cameraToCenterDistance]),e.rotateX(Tr,Tr,this._pitch),e.rotateZ(Tr,Tr,this.angle),e.translate(Tr,Tr,[-at,-St,0]),this.mercatorMatrix=e.scale([],Tr,[this.worldSize,this.worldSize,this.worldSize]),e.scale(Tr,Tr,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=Tr,this.invProjMatrix=e.invert([],this.projMatrix);var Ht=this.width%2/2,ir=this.height%2/2,pr=Math.cos(this.angle),Ir=Math.sin(this.angle),Vr=at-Math.round(at)+pr*Ht+Ir*ir,Hr=St-Math.round(St)+pr*ir+Ir*Ht,si=new Float64Array(Tr);if(e.translate(si,si,[Vr>.5?Vr-1:Vr,Hr>.5?Hr-1:Hr,0]),this.alignedProjMatrix=si,Tr=e.create(),e.scale(Tr,Tr,[this.width/2,-this.height/2,1]),e.translate(Tr,Tr,[1,-1,0]),this.labelPlaneMatrix=Tr,Tr=e.create(),e.scale(Tr,Tr,[1,-1,1]),e.translate(Tr,Tr,[-1,-1,0]),e.scale(Tr,Tr,[2/this.width,2/this.height,1]),this.glCoordMatrix=Tr,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),Tr=e.invert(new Float64Array(16),this.pixelMatrix),!Tr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Tr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},cs.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var K=this.pointCoordinate(new e.Point(0,0)),me=[K.x*this.worldSize,K.y*this.worldSize,0,1],te=e.transformMat4(me,me,this.pixelMatrix);return te[3]/this.cameraToCenterDistance},cs.prototype.getCameraPoint=function(){var K=this._pitch,me=Math.tan(K)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,me))},cs.prototype.getCameraQueryGeometry=function(K){var me=this.getCameraPoint();if(K.length===1)return[K[0],me];for(var te=me.x,ye=me.y,We=me.x,He=me.y,at=0,St=K;at=3&&!K.some(function(te){return isNaN(te)})){var me=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(K[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+K[2],+K[1]],zoom:+K[0],bearing:me,pitch:+(K[4]||0)}),!0}return!1},iu.prototype._updateHashUnthrottled=function(){var K=e.window.location.href.replace(/(#.+)?$/,this.getHashString());try{e.window.history.replaceState(e.window.history.state,null,K)}catch{}};var Yu={linearity:.3,easing:e.bezier(0,0,.3,1)},_u=e.extend({deceleration:2500,maxSpeed:1400},Yu),Il=e.extend({deceleration:20,maxSpeed:1400},Yu),vu=e.extend({deceleration:1e3,maxSpeed:360},Yu),Lc=e.extend({deceleration:1e3,maxSpeed:90},Yu),Ql=function(K){this._map=K,this.clear()};Ql.prototype.clear=function(){this._inertiaBuffer=[]},Ql.prototype.record=function(K){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.browser.now(),settings:K})},Ql.prototype._drainInertiaBuffer=function(){for(var K=this._inertiaBuffer,me=e.browser.now(),te=160;K.length>0&&me-K[0].time>te;)K.shift()},Ql.prototype._onMoveEnd=function(K){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var me={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},te=0,ye=this._inertiaBuffer;te=this._clickTolerance||this._map.fire(new Re(K.type,this._map,K))},dt.prototype.dblclick=function(K){return this._firePreventable(new Re(K.type,this._map,K))},dt.prototype.mouseover=function(K){this._map.fire(new Re(K.type,this._map,K))},dt.prototype.mouseout=function(K){this._map.fire(new Re(K.type,this._map,K))},dt.prototype.touchstart=function(K){return this._firePreventable(new Ke(K.type,this._map,K))},dt.prototype.touchmove=function(K){this._map.fire(new Ke(K.type,this._map,K))},dt.prototype.touchend=function(K){this._map.fire(new Ke(K.type,this._map,K))},dt.prototype.touchcancel=function(K){this._map.fire(new Ke(K.type,this._map,K))},dt.prototype._firePreventable=function(K){if(this._map.fire(K),K.defaultPrevented)return{}},dt.prototype.isEnabled=function(){return!0},dt.prototype.isActive=function(){return!1},dt.prototype.enable=function(){},dt.prototype.disable=function(){};var xt=function(K){this._map=K};xt.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},xt.prototype.mousemove=function(K){this._map.fire(new Re(K.type,this._map,K))},xt.prototype.mousedown=function(){this._delayContextMenu=!0},xt.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Re("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},xt.prototype.contextmenu=function(K){this._delayContextMenu?this._contextMenuEvent=K:this._map.fire(new Re(K.type,this._map,K)),this._map.listens("contextmenu")&&K.preventDefault()},xt.prototype.isEnabled=function(){return!0},xt.prototype.isActive=function(){return!1},xt.prototype.enable=function(){},xt.prototype.disable=function(){};var Jt=function(K,me){this._map=K,this._el=K.getCanvasContainer(),this._container=K.getContainer(),this._clickTolerance=me.clickTolerance||1};Jt.prototype.isEnabled=function(){return!!this._enabled},Jt.prototype.isActive=function(){return!!this._active},Jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Jt.prototype.mousedown=function(K,me){this.isEnabled()&&K.shiftKey&&K.button===0&&(r.disableDrag(),this._startPos=this._lastPos=me,this._active=!0)},Jt.prototype.mousemoveWindow=function(K,me){if(this._active){var te=me;if(!(this._lastPos.equals(te)||!this._box&&te.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=K.timeStamp),te.length===this.numTouches&&(this.centroid=sr(me),this.touches=It(te,me)))},gi.prototype.touchmove=function(K,me,te){if(!(this.aborted||!this.centroid)){var ye=It(te,me);for(var We in this.touches){var He=this.touches[We],at=ye[We];(!at||at.dist(He)>bi)&&(this.aborted=!0)}}},gi.prototype.touchend=function(K,me,te){if((!this.centroid||K.timeStamp-this.startTime>Or)&&(this.aborted=!0),te.length===0){var ye=!this.aborted&&this.centroid;if(this.reset(),ye)return ye}};var Ki=function(K){this.singleTap=new gi(K),this.numTaps=K.numTaps,this.reset()};Ki.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ki.prototype.touchstart=function(K,me,te){this.singleTap.touchstart(K,me,te)},Ki.prototype.touchmove=function(K,me,te){this.singleTap.touchmove(K,me,te)},Ki.prototype.touchend=function(K,me,te){var ye=this.singleTap.touchend(K,me,te);if(ye){var We=K.timeStamp-this.lastTime0&&(this._active=!0);var ye=It(te,me),We=new e.Point(0,0),He=new e.Point(0,0),at=0;for(var St in ye){var Gt=ye[St],_r=this._touches[St];_r&&(We._add(Gt),He._add(Gt.sub(_r)),at++,ye[St]=Gt)}if(this._touches=ye,!(atMath.abs(ve.x)}var oa=100,wo=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},K.prototype._start=function(te){this._lastPoints=te,xl(te[0].sub(te[1]))&&(this._valid=!1)},K.prototype._move=function(te,ye,We){var He=te[0].sub(this._lastPoints[0]),at=te[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(He,at,We.timeStamp),!!this._valid){this._lastPoints=te,this._active=!0;var St=(He.y+at.y)/2,Gt=-.5;return{pitchDelta:St*Gt}}},K.prototype.gestureBeginsVertically=function(te,ye,We){if(this._valid!==void 0)return this._valid;var He=2,at=te.mag()>=He,St=ye.mag()>=He;if(!(!at&&!St)){if(!at||!St)return this._firstMove===void 0&&(this._firstMove=We),We-this._firstMove0==ye.y>0;return xl(te)&&xl(ye)&&Gt}},K}(ka),ws={panStep:100,bearingStep:15,pitchStep:10},Cs=function(){var K=ws;this._panStep=K.panStep,this._bearingStep=K.bearingStep,this._pitchStep=K.pitchStep,this._rotationDisabled=!1};Cs.prototype.reset=function(){this._active=!1},Cs.prototype.keydown=function(K){var me=this;if(!(K.altKey||K.ctrlKey||K.metaKey)){var te=0,ye=0,We=0,He=0,at=0;switch(K.keyCode){case 61:case 107:case 171:case 187:te=1;break;case 189:case 109:case 173:te=-1;break;case 37:K.shiftKey?ye=-1:(K.preventDefault(),He=-1);break;case 39:K.shiftKey?ye=1:(K.preventDefault(),He=1);break;case 38:K.shiftKey?We=1:(K.preventDefault(),at=-1);break;case 40:K.shiftKey?We=-1:(K.preventDefault(),at=1);break;default:return}return this._rotationDisabled&&(ye=0,We=0),{cameraAnimation:function(St){var Gt=St.getZoom();St.easeTo({duration:300,easeId:"keyboardHandler",easing:Al,zoom:te?Math.round(Gt)+te*(K.shiftKey?2:1):Gt,bearing:St.getBearing()+ye*me._bearingStep,pitch:St.getPitch()+We*me._pitchStep,offset:[-He*me._panStep,-at*me._panStep],center:St.getCenter()},{originalEvent:K})}}}},Cs.prototype.enable=function(){this._enabled=!0},Cs.prototype.disable=function(){this._enabled=!1,this.reset()},Cs.prototype.isEnabled=function(){return this._enabled},Cs.prototype.isActive=function(){return this._active},Cs.prototype.disableRotation=function(){this._rotationDisabled=!0},Cs.prototype.enableRotation=function(){this._rotationDisabled=!1};function Al(ve){return ve*(2-ve)}var Gl=4.000244140625,xu=1/100,Ul=1/450,_c=2,er=function(K,me){this._map=K,this._el=K.getCanvasContainer(),this._handler=me,this._delta=0,this._defaultZoomRate=xu,this._wheelZoomRate=Ul,e.bindAll(["_onTimeout"],this)};er.prototype.setZoomRate=function(K){this._defaultZoomRate=K},er.prototype.setWheelZoomRate=function(K){this._wheelZoomRate=K},er.prototype.isEnabled=function(){return!!this._enabled},er.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},er.prototype.isZooming=function(){return!!this._zooming},er.prototype.enable=function(K){this.isEnabled()||(this._enabled=!0,this._aroundCenter=K&&K.around==="center")},er.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},er.prototype.wheel=function(K){if(this.isEnabled()){var me=K.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?K.deltaY*40:K.deltaY,te=e.browser.now(),ye=te-(this._lastWheelEventTime||0);this._lastWheelEventTime=te,me!==0&&me%Gl===0?this._type="wheel":me!==0&&Math.abs(me)<4?this._type="trackpad":ye>400?(this._type=null,this._lastValue=me,this._timeout=setTimeout(this._onTimeout,40,K)):this._type||(this._type=Math.abs(ye*me)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,me+=this._lastValue)),K.shiftKey&&me&&(me=me/4),this._type&&(this._lastWheelEvent=K,this._delta-=me,this._active||this._start(K)),K.preventDefault()}},er.prototype._onTimeout=function(K){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(K)},er.prototype._start=function(K){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var me=r.mousePos(this._el,K);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(me)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},er.prototype.renderFrame=function(){var K=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var me=this._map.transform;if(this._delta!==0){var te=this._type==="wheel"&&Math.abs(this._delta)>Gl?this._wheelZoomRate:this._defaultZoomRate,ye=_c/(1+Math.exp(-Math.abs(this._delta*te)));this._delta<0&&ye!==0&&(ye=1/ye);var We=typeof this._targetZoom=="number"?me.zoomScale(this._targetZoom):me.scale;this._targetZoom=Math.min(me.maxZoom,Math.max(me.minZoom,me.scaleZoom(We*ye))),this._type==="wheel"&&(this._startZoom=me.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var He=typeof this._targetZoom=="number"?this._targetZoom:me.zoom,at=this._startZoom,St=this._easing,Gt=!1,_r;if(this._type==="wheel"&&at&&St){var Rr=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),Tr=St(Rr);_r=e.number(at,He,Tr),Rr<1?this._frameId||(this._frameId=!0):Gt=!0}else _r=He,Gt=!0;return this._active=!0,Gt&&(this._active=!1,this._finishTimeout=setTimeout(function(){K._zooming=!1,K._handler._triggerRenderFrame(),delete K._targetZoom,delete K._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Gt,zoomDelta:_r-me.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},er.prototype._smoothOutEasing=function(K){var me=e.ease;if(this._prevEase){var te=this._prevEase,ye=(e.browser.now()-te.start)/te.duration,We=te.easing(ye+.01)-te.easing(ye),He=.27/Math.sqrt(We*We+1e-4)*.01,at=Math.sqrt(.27*.27-He*He);me=e.bezier(He,at,.25,1)}return this._prevEase={start:e.browser.now(),duration:K,easing:me},me},er.prototype.reset=function(){this._active=!1};var oi=function(K,me){this._clickZoom=K,this._tapZoom=me};oi.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},oi.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},oi.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},oi.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Li=function(){this.reset()};Li.prototype.reset=function(){this._active=!1},Li.prototype.dblclick=function(K,me){return K.preventDefault(),{cameraAnimation:function(te){te.easeTo({duration:300,zoom:te.getZoom()+(K.shiftKey?-1:1),around:te.unproject(me)},{originalEvent:K})}}},Li.prototype.enable=function(){this._enabled=!0},Li.prototype.disable=function(){this._enabled=!1,this.reset()},Li.prototype.isEnabled=function(){return this._enabled},Li.prototype.isActive=function(){return this._active};var mn=function(){this._tap=new Ki({numTouches:1,numTaps:1}),this.reset()};mn.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},mn.prototype.touchstart=function(K,me,te){this._swipePoint||(this._tapTime&&K.timeStamp-this._tapTime>zr&&this.reset(),this._tapTime?te.length>0&&(this._swipePoint=me[0],this._swipeTouch=te[0].identifier):this._tap.touchstart(K,me,te))},mn.prototype.touchmove=function(K,me,te){if(!this._tapTime)this._tap.touchmove(K,me,te);else if(this._swipePoint){if(te[0].identifier!==this._swipeTouch)return;var ye=me[0],We=ye.y-this._swipePoint.y;return this._swipePoint=ye,K.preventDefault(),this._active=!0,{zoomDelta:We/128}}},mn.prototype.touchend=function(K,me,te){if(this._tapTime)this._swipePoint&&te.length===0&&this.reset();else{var ye=this._tap.touchend(K,me,te);ye&&(this._tapTime=K.timeStamp)}},mn.prototype.touchcancel=function(){this.reset()},mn.prototype.enable=function(){this._enabled=!0},mn.prototype.disable=function(){this._enabled=!1,this.reset()},mn.prototype.isEnabled=function(){return this._enabled},mn.prototype.isActive=function(){return this._active};var Fn=function(K,me,te){this._el=K,this._mousePan=me,this._touchPan=te};Fn.prototype.enable=function(K){this._inertiaOptions=K||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},Fn.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},Fn.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},Fn.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Rn=function(K,me,te){this._pitchWithRotate=K.pitchWithRotate,this._mouseRotate=me,this._mousePitch=te};Rn.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Rn.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Rn.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Rn.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Dn=function(K,me,te,ye){this._el=K,this._touchZoom=me,this._touchRotate=te,this._tapDragZoom=ye,this._rotationDisabled=!1,this._enabled=!0};Dn.prototype.enable=function(K){this._touchZoom.enable(K),this._rotationDisabled||this._touchRotate.enable(K),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Dn.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Dn.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Dn.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Dn.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Dn.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Jn=function(ve){return ve.zoom||ve.drag||ve.pitch||ve.rotate},Sa=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K}(e.Event);function Ea(ve){return ve.panDelta&&ve.panDelta.mag()||ve.zoomDelta||ve.bearingDelta||ve.pitchDelta}var ca=function(K,me){this._map=K,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Ql(K),this._bearingSnap=me.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(me),e.bindAll(["handleEvent","handleWindowEvent"],this);var te=this._el;this._listeners=[[te,"touchstart",{passive:!0}],[te,"touchmove",{passive:!1}],[te,"touchend",void 0],[te,"touchcancel",void 0],[te,"mousedown",void 0],[te,"mousemove",void 0],[te,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[te,"mouseover",void 0],[te,"mouseout",void 0],[te,"dblclick",void 0],[te,"click",void 0],[te,"keydown",{capture:!1}],[te,"keyup",void 0],[te,"wheel",{passive:!1}],[te,"contextmenu",void 0],[e.window,"blur",void 0]];for(var ye=0,We=this._listeners;yeat?Math.min(2,Gr):Math.max(.5,Gr),Cn=Math.pow(Gn,1-Hi),Yn=He.unproject(si.add(ri.mult(Hi*Cn)).mult(fn));He.setLocationAtPoint(He.renderWorldCopies?Yn.wrap():Yn,Ir)}We._fireMoveEvents(ye)},function(Hi){We._afterEase(ye,Hi)},te),this},K.prototype._prepareEase=function(te,ye,We){We===void 0&&(We={}),this._moving=!0,!ye&&!We.moving&&this.fire(new e.Event("movestart",te)),this._zooming&&!We.zooming&&this.fire(new e.Event("zoomstart",te)),this._rotating&&!We.rotating&&this.fire(new e.Event("rotatestart",te)),this._pitching&&!We.pitching&&this.fire(new e.Event("pitchstart",te))},K.prototype._fireMoveEvents=function(te){this.fire(new e.Event("move",te)),this._zooming&&this.fire(new e.Event("zoom",te)),this._rotating&&this.fire(new e.Event("rotate",te)),this._pitching&&this.fire(new e.Event("pitch",te))},K.prototype._afterEase=function(te,ye){if(!(this._easeId&&ye&&this._easeId===ye)){delete this._easeId;var We=this._zooming,He=this._rotating,at=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,We&&this.fire(new e.Event("zoomend",te)),He&&this.fire(new e.Event("rotateend",te)),at&&this.fire(new e.Event("pitchend",te)),this.fire(new e.Event("moveend",te))}},K.prototype.flyTo=function(te,ye){var We=this;if(!te.essential&&e.browser.prefersReducedMotion){var He=e.pick(te,["center","zoom","bearing","pitch","around"]);return this.jumpTo(He,ye)}this.stop(),te=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},te);var at=this.transform,St=this.getZoom(),Gt=this.getBearing(),_r=this.getPitch(),Rr=this.getPadding(),Tr="zoom"in te?e.clamp(+te.zoom,at.minZoom,at.maxZoom):St,Ht="bearing"in te?this._normalizeBearing(te.bearing,Gt):Gt,ir="pitch"in te?+te.pitch:_r,pr="padding"in te?te.padding:at.padding,Ir=at.zoomScale(Tr-St),Vr=e.Point.convert(te.offset),Hr=at.centerPoint.add(Vr),si=at.pointLocation(Hr),ri=e.LngLat.convert(te.center||si);this._normalizeCenter(ri);var Gr=at.project(si),li=at.project(ri).sub(Gr),Ur=te.curve,Ci=Math.max(at.width,at.height),Hi=Ci/Ir,fn=li.mag();if("minZoom"in te){var Gn=e.clamp(Math.min(te.minZoom,St,Tr),at.minZoom,at.maxZoom),Cn=Ci/at.zoomScale(Gn-St);Ur=Math.sqrt(Cn/fn*2)}var Yn=Ur*Ur;function Ua(os){var qs=(Hi*Hi-Ci*Ci+(os?-1:1)*Yn*Yn*fn*fn)/(2*(os?Hi:Ci)*Yn*fn);return Math.log(Math.sqrt(qs*qs+1)-qs)}function Ma(os){return(Math.exp(os)-Math.exp(-os))/2}function Wn(os){return(Math.exp(os)+Math.exp(-os))/2}function fa(os){return Ma(os)/Wn(os)}var la=Ua(0),Da=function(os){return Wn(la)/Wn(la+Ur*os)},Ja=function(os){return Ci*((Wn(la)*fa(la+Ur*os)-Ma(la))/Yn)/fn},Is=(Ua(1)-la)/Ur;if(Math.abs(fn)<1e-6||!isFinite(Is)){if(Math.abs(Ci-Hi)<1e-6)return this.easeTo(te,ye);var Ss=Hite.maxDuration&&(te.duration=0),this._zooming=!0,this._rotating=Gt!==Ht,this._pitching=ir!==_r,this._padding=!at.isPaddingEqual(pr),this._prepareEase(ye,!1),this._ease(function(os){var qs=os*Is,Rl=1/Da(qs);at.zoom=os===1?Tr:St+at.scaleZoom(Rl),We._rotating&&(at.bearing=e.number(Gt,Ht,os)),We._pitching&&(at.pitch=e.number(_r,ir,os)),We._padding&&(at.interpolatePadding(Rr,pr,os),Hr=at.centerPoint.add(Vr));var Bu=os===1?ri:at.unproject(Gr.add(li.mult(Ja(qs))).mult(Rl));at.setLocationAtPoint(at.renderWorldCopies?Bu.wrap():Bu,Hr),We._fireMoveEvents(ye)},function(){return We._afterEase(ye)},te),this},K.prototype.isEasing=function(){return!!this._easeFrameId},K.prototype.stop=function(){return this._stop()},K.prototype._stop=function(te,ye){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var We=this._onEaseEnd;delete this._onEaseEnd,We.call(this,ye)}if(!te){var He=this.handlers;He&&He.stop(!1)}return this},K.prototype._ease=function(te,ye,We){We.animate===!1||We.duration===0?(te(1),ye()):(this._easeStart=e.browser.now(),this._easeOptions=We,this._onEaseFrame=te,this._onEaseEnd=ye,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},K.prototype._renderFrameCallback=function(){var te=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(te)),te<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},K.prototype._normalizeBearing=function(te,ye){te=e.wrap(te,-180,180);var We=Math.abs(te-ye);return Math.abs(te-360-ye)180?-360:We<-180?360:0}},K}(e.Evented),wa=function(K){K===void 0&&(K={}),this.options=K,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};wa.prototype.getDefaultPosition=function(){return"bottom-right"},wa.prototype.onAdd=function(K){var me=this.options&&this.options.compact;return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),me&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),me===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},wa.prototype.onRemove=function(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},wa.prototype._setElementTitle=function(K,me){var te=this._map._getUIString("AttributionControl."+me);K.title=te,K.setAttribute("aria-label",te)},wa.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},wa.prototype._updateEditLink=function(){var K=this._editLink;K||(K=this._editLink=this._container.querySelector(".mapbox-improve-map"));var me=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(K){var te=me.reduce(function(ye,We,He){return We.value&&(ye+=We.key+"="+We.value+(He=0)return!1;return!0});var at=K.join(" | ");at!==this._attribHTML&&(this._attribHTML=at,K.length?(this._innerContainer.innerHTML=at,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},wa.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Ta=function(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};Ta.prototype.onAdd=function(K){this._map=K,this._container=r.create("div","mapboxgl-ctrl");var me=r.create("a","mapboxgl-ctrl-logo");return me.target="_blank",me.rel="noopener nofollow",me.href="https://www.mapbox.com/",me.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),me.setAttribute("rel","noopener nofollow"),this._container.appendChild(me),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Ta.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Ta.prototype.getDefaultPosition=function(){return"bottom-left"},Ta.prototype._updateLogo=function(K){(!K||K.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Ta.prototype._logoRequired=function(){if(this._map.style){var K=this._map.style.sourceCaches;for(var me in K){var te=K[me].getSource();if(te.mapbox_logo)return!0}return!1}},Ta.prototype._updateCompact=function(){var K=this._container.children;if(K.length){var me=K[0];this._map.getCanvasContainer().offsetWidth<250?me.classList.add("mapboxgl-compact"):me.classList.remove("mapboxgl-compact")}};var ea=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};ea.prototype.add=function(K){var me=++this._id,te=this._queue;return te.push({callback:K,id:me,cancelled:!1}),me},ea.prototype.remove=function(K){for(var me=this._currentlyRunning,te=me?this._queue.concat(me):this._queue,ye=0,We=te;yete.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(te.minPitch!=null&&te.maxPitch!=null&&te.minPitch>te.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(te.minPitch!=null&&te.minPitchNo)throw new Error("maxPitch must be less than or equal to "+No);var We=new cs(te.minZoom,te.maxZoom,te.minPitch,te.maxPitch,te.renderWorldCopies);if(ve.call(this,We,te),this._interactive=te.interactive,this._maxTileCacheSize=te.maxTileCacheSize,this._failIfMajorPerformanceCaveat=te.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=te.preserveDrawingBuffer,this._antialias=te.antialias,this._trackResize=te.trackResize,this._bearingSnap=te.bearingSnap,this._refreshExpiredTiles=te.refreshExpiredTiles,this._fadeDuration=te.fadeDuration,this._crossSourceCollisions=te.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=te.collectResourceTiming,this._renderTaskQueue=new ea,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},_n,te.locale),this._clickTolerance=te.clickTolerance,this._requestManager=new e.RequestManager(te.transformRequest,te.accessToken),typeof te.container=="string"){if(this._container=e.window.document.getElementById(te.container),!this._container)throw new Error("Container '"+te.container+"' not found.")}else if(te.container instanceof _a)this._container=te.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(te.maxBounds&&this.setMaxBounds(te.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return ye._update(!1)}),this.on("moveend",function(){return ye._update(!1)}),this.on("zoom",function(){return ye._update(!0)}),typeof e.window<"u"&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new ca(this,te);var He=typeof te.hash=="string"&&te.hash||void 0;this._hash=te.hash&&new iu(He).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:te.center,zoom:te.zoom,bearing:te.bearing,pitch:te.pitch}),te.bounds&&(this.resize(),this.fitBounds(te.bounds,e.extend({},te.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=te.localIdeographFontFamily,te.style&&this.setStyle(te.style,{localIdeographFontFamily:te.localIdeographFontFamily}),te.attributionControl&&this.addControl(new wa({customAttribution:te.customAttribution})),this.addControl(new Ta,te.logoPosition),this.on("style.load",function(){ye.transform.unmodified&&ye.jumpTo(ye.style.stylesheet)}),this.on("data",function(at){ye._update(at.dataType==="style"),ye.fire(new e.Event(at.dataType+"data",at))}),this.on("dataloading",function(at){ye.fire(new e.Event(at.dataType+"dataloading",at))})}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var me={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return K.prototype._getMapId=function(){return this._mapId},K.prototype.addControl=function(ye,We){if(We===void 0&&(ye.getDefaultPosition?We=ye.getDefaultPosition():We="top-right"),!ye||!ye.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var He=ye.onAdd(this);this._controls.push(ye);var at=this._controlPositions[We];return We.indexOf("bottom")!==-1?at.insertBefore(He,at.firstChild):at.appendChild(He),this},K.prototype.removeControl=function(ye){if(!ye||!ye.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var We=this._controls.indexOf(ye);return We>-1&&this._controls.splice(We,1),ye.onRemove(this),this},K.prototype.hasControl=function(ye){return this._controls.indexOf(ye)>-1},K.prototype.resize=function(ye){var We=this._containerDimensions(),He=We[0],at=We[1];this._resizeCanvas(He,at),this.transform.resize(He,at),this.painter.resize(He,at);var St=!this._moving;return St&&(this.stop(),this.fire(new e.Event("movestart",ye)).fire(new e.Event("move",ye))),this.fire(new e.Event("resize",ye)),St&&this.fire(new e.Event("moveend",ye)),this},K.prototype.getBounds=function(){return this.transform.getBounds()},K.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},K.prototype.setMaxBounds=function(ye){return this.transform.setMaxBounds(e.LngLatBounds.convert(ye)),this._update()},K.prototype.setMinZoom=function(ye){if(ye=ye??sa,ye>=sa&&ye<=this.transform.maxZoom)return this.transform.minZoom=ye,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=ye,this._update(),this.getZoom()>ye&&this.setZoom(ye),this;throw new Error("maxZoom must be greater than the current minZoom")},K.prototype.getMaxZoom=function(){return this.transform.maxZoom},K.prototype.setMinPitch=function(ye){if(ye=ye??Ba,ye=Ba&&ye<=this.transform.maxPitch)return this.transform.minPitch=ye,this._update(),this.getPitch()No)throw new Error("maxPitch must be less than or equal to "+No);if(ye>=this.transform.minPitch)return this.transform.maxPitch=ye,this._update(),this.getPitch()>ye&&this.setPitch(ye),this;throw new Error("maxPitch must be greater than the current minPitch")},K.prototype.getMaxPitch=function(){return this.transform.maxPitch},K.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},K.prototype.setRenderWorldCopies=function(ye){return this.transform.renderWorldCopies=ye,this._update()},K.prototype.project=function(ye){return this.transform.locationPoint(e.LngLat.convert(ye))},K.prototype.unproject=function(ye){return this.transform.pointLocation(e.Point.convert(ye))},K.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},K.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},K.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},K.prototype._createDelegatedListener=function(ye,We,He){var at=this,St;if(ye==="mouseenter"||ye==="mouseover"){var Gt=!1,_r=function(Ir){var Vr=at.getLayer(We)?at.queryRenderedFeatures(Ir.point,{layers:[We]}):[];Vr.length?Gt||(Gt=!0,He.call(at,new Re(ye,at,Ir.originalEvent,{features:Vr}))):Gt=!1},Rr=function(){Gt=!1};return{layer:We,listener:He,delegates:{mousemove:_r,mouseout:Rr}}}else if(ye==="mouseleave"||ye==="mouseout"){var Tr=!1,Ht=function(Ir){var Vr=at.getLayer(We)?at.queryRenderedFeatures(Ir.point,{layers:[We]}):[];Vr.length?Tr=!0:Tr&&(Tr=!1,He.call(at,new Re(ye,at,Ir.originalEvent)))},ir=function(Ir){Tr&&(Tr=!1,He.call(at,new Re(ye,at,Ir.originalEvent)))};return{layer:We,listener:He,delegates:{mousemove:Ht,mouseout:ir}}}else{var pr=function(Ir){var Vr=at.getLayer(We)?at.queryRenderedFeatures(Ir.point,{layers:[We]}):[];Vr.length&&(Ir.features=Vr,He.call(at,Ir),delete Ir.features)};return{layer:We,listener:He,delegates:(St={},St[ye]=pr,St)}}},K.prototype.on=function(ye,We,He){if(He===void 0)return ve.prototype.on.call(this,ye,We);var at=this._createDelegatedListener(ye,We,He);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[ye]=this._delegatedListeners[ye]||[],this._delegatedListeners[ye].push(at);for(var St in at.delegates)this.on(St,at.delegates[St]);return this},K.prototype.once=function(ye,We,He){if(He===void 0)return ve.prototype.once.call(this,ye,We);var at=this._createDelegatedListener(ye,We,He);for(var St in at.delegates)this.once(St,at.delegates[St]);return this},K.prototype.off=function(ye,We,He){var at=this;if(He===void 0)return ve.prototype.off.call(this,ye,We);var St=function(Gt){for(var _r=Gt[ye],Rr=0;Rr<_r.length;Rr++){var Tr=_r[Rr];if(Tr.layer===We&&Tr.listener===He){for(var Ht in Tr.delegates)at.off(Ht,Tr.delegates[Ht]);return _r.splice(Rr,1),at}}};return this._delegatedListeners&&this._delegatedListeners[ye]&&St(this._delegatedListeners),this},K.prototype.queryRenderedFeatures=function(ye,We){if(!this.style)return[];We===void 0&&ye!==void 0&&!(ye instanceof e.Point)&&!Array.isArray(ye)&&(We=ye,ye=void 0),We=We||{},ye=ye||[[0,0],[this.transform.width,this.transform.height]];var He;if(ye instanceof e.Point||typeof ye[0]=="number")He=[e.Point.convert(ye)];else{var at=e.Point.convert(ye[0]),St=e.Point.convert(ye[1]);He=[at,new e.Point(St.x,at.y),St,new e.Point(at.x,St.y),at]}return this.style.queryRenderedFeatures(He,We,this.transform)},K.prototype.querySourceFeatures=function(ye,We){return this.style.querySourceFeatures(ye,We)},K.prototype.setStyle=function(ye,We){return We=e.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},We),We.diff!==!1&&We.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&ye?(this._diffStyle(ye,We),this):(this._localIdeographFontFamily=We.localIdeographFontFamily,this._updateStyle(ye,We))},K.prototype._getUIString=function(ye){var We=this._locale[ye];if(We==null)throw new Error("Missing UI string '"+ye+"'");return We},K.prototype._updateStyle=function(ye,We){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),ye)this.style=new au(this,We||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof ye=="string"?this.style.loadURL(ye):this.style.loadJSON(ye),this},K.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new au(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},K.prototype._diffStyle=function(ye,We){var He=this;if(typeof ye=="string"){var at=this._requestManager.normalizeStyleURL(ye),St=this._requestManager.transformRequest(at,e.ResourceType.Style);e.getJSON(St,function(Gt,_r){Gt?He.fire(new e.ErrorEvent(Gt)):_r&&He._updateDiff(_r,We)})}else typeof ye=="object"&&this._updateDiff(ye,We)},K.prototype._updateDiff=function(ye,We){try{this.style.setState(ye)&&this._update(!0)}catch(He){e.warnOnce("Unable to perform style diff: "+(He.message||He.error||He)+". Rebuilding the style from scratch."),this._updateStyle(ye,We)}},K.prototype.getStyle=function(){if(this.style)return this.style.serialize()},K.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():e.warnOnce("There is no style added to the map.")},K.prototype.addSource=function(ye,We){return this._lazyInitEmptyStyle(),this.style.addSource(ye,We),this._update(!0)},K.prototype.isSourceLoaded=function(ye){var We=this.style&&this.style.sourceCaches[ye];if(We===void 0){this.fire(new e.ErrorEvent(new Error("There is no source with ID '"+ye+"'")));return}return We.loaded()},K.prototype.areTilesLoaded=function(){var ye=this.style&&this.style.sourceCaches;for(var We in ye){var He=ye[We],at=He._tiles;for(var St in at){var Gt=at[St];if(!(Gt.state==="loaded"||Gt.state==="errored"))return!1}}return!0},K.prototype.addSourceType=function(ye,We,He){return this._lazyInitEmptyStyle(),this.style.addSourceType(ye,We,He)},K.prototype.removeSource=function(ye){return this.style.removeSource(ye),this._update(!0)},K.prototype.getSource=function(ye){return this.style.getSource(ye)},K.prototype.addImage=function(ye,We,He){He===void 0&&(He={});var at=He.pixelRatio;at===void 0&&(at=1);var St=He.sdf;St===void 0&&(St=!1);var Gt=He.stretchX,_r=He.stretchY,Rr=He.content;this._lazyInitEmptyStyle();var Tr=0;if(We instanceof Un||Ca&&We instanceof Ca){var Ht=e.browser.getImageData(We),ir=Ht.width,pr=Ht.height,Ir=Ht.data;this.style.addImage(ye,{data:new e.RGBAImage({width:ir,height:pr},Ir),pixelRatio:at,stretchX:Gt,stretchY:_r,content:Rr,sdf:St,version:Tr})}else{if(We.width===void 0||We.height===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var Vr=We.width,Hr=We.height,si=We.data,ri=We;this.style.addImage(ye,{data:new e.RGBAImage({width:Vr,height:Hr},new Uint8Array(si)),pixelRatio:at,stretchX:Gt,stretchY:_r,content:Rr,sdf:St,version:Tr,userImage:ri}),ri.onAdd&&ri.onAdd(this,ye)}},K.prototype.updateImage=function(ye,We){var He=this.style.getImage(ye);if(!He)return this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var at=We instanceof Un||Ca&&We instanceof Ca?e.browser.getImageData(We):We,St=at.width,Gt=at.height,_r=at.data;if(St===void 0||Gt===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(St!==He.data.width||Gt!==He.data.height)return this.fire(new e.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var Rr=!(We instanceof Un||Ca&&We instanceof Ca);He.data.replace(_r,Rr),this.style.updateImage(ye,He)},K.prototype.hasImage=function(ye){return ye?!!this.style.getImage(ye):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)},K.prototype.removeImage=function(ye){this.style.removeImage(ye)},K.prototype.loadImage=function(ye,We){e.getImage(this._requestManager.transformRequest(ye,e.ResourceType.Image),We)},K.prototype.listImages=function(){return this.style.listImages()},K.prototype.addLayer=function(ye,We){return this._lazyInitEmptyStyle(),this.style.addLayer(ye,We),this._update(!0)},K.prototype.moveLayer=function(ye,We){return this.style.moveLayer(ye,We),this._update(!0)},K.prototype.removeLayer=function(ye){return this.style.removeLayer(ye),this._update(!0)},K.prototype.getLayer=function(ye){return this.style.getLayer(ye)},K.prototype.setLayerZoomRange=function(ye,We,He){return this.style.setLayerZoomRange(ye,We,He),this._update(!0)},K.prototype.setFilter=function(ye,We,He){return He===void 0&&(He={}),this.style.setFilter(ye,We,He),this._update(!0)},K.prototype.getFilter=function(ye){return this.style.getFilter(ye)},K.prototype.setPaintProperty=function(ye,We,He,at){return at===void 0&&(at={}),this.style.setPaintProperty(ye,We,He,at),this._update(!0)},K.prototype.getPaintProperty=function(ye,We){return this.style.getPaintProperty(ye,We)},K.prototype.setLayoutProperty=function(ye,We,He,at){return at===void 0&&(at={}),this.style.setLayoutProperty(ye,We,He,at),this._update(!0)},K.prototype.getLayoutProperty=function(ye,We){return this.style.getLayoutProperty(ye,We)},K.prototype.setLight=function(ye,We){return We===void 0&&(We={}),this._lazyInitEmptyStyle(),this.style.setLight(ye,We),this._update(!0)},K.prototype.getLight=function(){return this.style.getLight()},K.prototype.setFeatureState=function(ye,We){return this.style.setFeatureState(ye,We),this._update()},K.prototype.removeFeatureState=function(ye,We){return this.style.removeFeatureState(ye,We),this._update()},K.prototype.getFeatureState=function(ye){return this.style.getFeatureState(ye)},K.prototype.getContainer=function(){return this._container},K.prototype.getCanvasContainer=function(){return this._canvasContainer},K.prototype.getCanvas=function(){return this._canvas},K.prototype._containerDimensions=function(){var ye=0,We=0;return this._container&&(ye=this._container.clientWidth||400,We=this._container.clientHeight||300),[ye,We]},K.prototype._detectMissingCSS=function(){var ye=e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");ye!=="rgb(250, 128, 114)"&&e.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},K.prototype._setupContainer=function(){var ye=this._container;ye.classList.add("mapboxgl-map");var We=this._missingCSSCanary=r.create("div","mapboxgl-canary",ye);We.style.visibility="hidden",this._detectMissingCSS();var He=this._canvasContainer=r.create("div","mapboxgl-canvas-container",ye);this._interactive&&He.classList.add("mapboxgl-interactive"),this._canvas=r.create("canvas","mapboxgl-canvas",He),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map"),this._canvas.setAttribute("role","region");var at=this._containerDimensions();this._resizeCanvas(at[0],at[1]);var St=this._controlContainer=r.create("div","mapboxgl-control-container",ye),Gt=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(_r){Gt[_r]=r.create("div","mapboxgl-ctrl-"+_r,St)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},K.prototype._resizeCanvas=function(ye,We){var He=e.browser.devicePixelRatio||1;this._canvas.width=He*ye,this._canvas.height=He*We,this._canvas.style.width=ye+"px",this._canvas.style.height=We+"px"},K.prototype._setupPainter=function(){var ye=e.extend({},t.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),We=this._canvas.getContext("webgl",ye)||this._canvas.getContext("experimental-webgl",ye);if(!We){this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new as(We,this.transform),e.webpSupported.testSupport(We)},K.prototype._contextLost=function(ye){ye.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:ye}))},K.prototype._contextRestored=function(ye){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:ye}))},K.prototype._onMapScroll=function(ye){if(ye.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},K.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},K.prototype._update=function(ye){return this.style?(this._styleDirty=this._styleDirty||ye,this._sourcesDirty=!0,this.triggerRepaint(),this):this},K.prototype._requestRenderFrame=function(ye){return this._update(),this._renderTaskQueue.add(ye)},K.prototype._cancelRenderFrame=function(ye){this._renderTaskQueue.remove(ye)},K.prototype._render=function(ye){var We=this,He,at=0,St=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(He=St.createQueryEXT(),St.beginQueryEXT(St.TIME_ELAPSED_EXT,He),at=e.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(ye),!this._removed){var Gt=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var _r=this.transform.zoom,Rr=e.browser.now();this.style.zoomHistory.update(_r,Rr);var Tr=new e.EvaluationParameters(_r,{now:Rr,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Ht=Tr.crossFadingFactor();(Ht!==1||Ht!==this._crossFadingFactor)&&(Gt=!0,this._crossFadingFactor=Ht),this.style.update(Tr)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer")}),this.fire(new e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&(this.style.hasTransitions()||Gt)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var ir=e.browser.now()-at;St.endQueryEXT(St.TIME_ELAPSED_EXT,He),setTimeout(function(){var Vr=St.getQueryObjectEXT(He,St.QUERY_RESULT_EXT)/1e6;St.deleteQueryEXT(He),We.fire(new e.Event("gpu-timing-frame",{cpuTime:ir,gpuTime:Vr}))},50)}if(this.listens("gpu-timing-layer")){var pr=this.painter.collectGpuTimers();setTimeout(function(){var Vr=We.painter.queryGpuTimers(pr);We.fire(new e.Event("gpu-timing-layer",{layerTimes:Vr}))},50)}var Ir=this._sourcesDirty||this._styleDirty||this._placementDirty;return Ir||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.Event("idle")),this._loaded&&!this._fullyLoaded&&!Ir&&(this._fullyLoaded=!0),this}},K.prototype.remove=function(){this._hash&&this._hash.remove();for(var ye=0,We=this._controls;ye180;){var He=me.locationPoint(ve);if(He.x>=0&&He.y>=0&&He.x<=me.width&&He.y<=me.height)break;ve.lng>me.center.lng?ve.lng-=360:ve.lng+=360}return ve}var Jo={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function xs(ve,K,me){var te=ve.classList;for(var ye in Jo)te.remove("mapboxgl-"+me+"-anchor-"+ye);te.add("mapboxgl-"+me+"-anchor-"+K)}var Oa=function(ve){function K(me,te){if(ve.call(this),(me instanceof e.window.HTMLElement||te)&&(me=e.extend({element:me},te)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=me&&me.anchor||"center",this._color=me&&me.color||"#3FB1CE",this._scale=me&&me.scale||1,this._draggable=me&&me.draggable||!1,this._clickTolerance=me&&me.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=me&&me.rotation||0,this._rotationAlignment=me&&me.rotationAlignment||"auto",this._pitchAlignment=me&&me.pitchAlignment&&me.pitchAlignment!=="auto"?me.pitchAlignment:this._rotationAlignment,!me||!me.element){this._defaultMarker=!0,this._element=r.create("div"),this._element.setAttribute("aria-label","Map marker");var ye=r.createNS("http://www.w3.org/2000/svg","svg"),We=41,He=27;ye.setAttributeNS(null,"display","block"),ye.setAttributeNS(null,"height",We+"px"),ye.setAttributeNS(null,"width",He+"px"),ye.setAttributeNS(null,"viewBox","0 0 "+He+" "+We);var at=r.createNS("http://www.w3.org/2000/svg","g");at.setAttributeNS(null,"stroke","none"),at.setAttributeNS(null,"stroke-width","1"),at.setAttributeNS(null,"fill","none"),at.setAttributeNS(null,"fill-rule","evenodd");var St=r.createNS("http://www.w3.org/2000/svg","g");St.setAttributeNS(null,"fill-rule","nonzero");var Gt=r.createNS("http://www.w3.org/2000/svg","g");Gt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Gt.setAttributeNS(null,"fill","#000000");for(var _r=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Rr=0,Tr=_r;Rr=ye}this._isDragging&&(this._pos=te.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))},K.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new e.Event("dragend")),this._state="inactive"},K.prototype._addDragHandler=function(te){this._element.contains(te.originalEvent.target)&&(te.preventDefault(),this._positionDelta=te.point.sub(this._pos).add(this._offset),this._pointerdownPos=te.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},K.prototype.setDraggable=function(te){return this._draggable=!!te,this._map&&(te?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},K.prototype.isDraggable=function(){return this._draggable},K.prototype.setRotation=function(te){return this._rotation=te||0,this._update(),this},K.prototype.getRotation=function(){return this._rotation},K.prototype.setRotationAlignment=function(te){return this._rotationAlignment=te||"auto",this._update(),this},K.prototype.getRotationAlignment=function(){return this._rotationAlignment},K.prototype.setPitchAlignment=function(te){return this._pitchAlignment=te&&te!=="auto"?te:this._rotationAlignment,this._update(),this},K.prototype.getPitchAlignment=function(){return this._pitchAlignment},K}(e.Evented),So={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},fs;function Ts(ve){fs!==void 0?ve(fs):e.window.navigator.permissions!==void 0?e.window.navigator.permissions.query({name:"geolocation"}).then(function(K){fs=K.state!=="denied",ve(fs)}):(fs=!!e.window.navigator.geolocation,ve(fs))}var Ns=0,ou=!1,Hc=function(ve){function K(me){ve.call(this),this.options=e.extend({},So,me),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){return this._map=te,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),Ts(this._setupUI),this._container},K.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Ns=0,ou=!1},K.prototype._isOutOfMapMaxBounds=function(te){var ye=this._map.getMaxBounds(),We=te.coords;return ye&&(We.longitudeye.getEast()||We.latitudeye.getNorth())},K.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},K.prototype._onSuccess=function(te){if(this._map){if(this._isOutOfMapMaxBounds(te)){this._setErrorState(),this.fire(new e.Event("outofmaxbounds",te)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=te,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(te),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(te),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",te)),this._finish()}},K.prototype._updateCamera=function(te){var ye=new e.LngLat(te.coords.longitude,te.coords.latitude),We=te.coords.accuracy,He=this._map.getBearing(),at=e.extend({bearing:He},this.options.fitBoundsOptions);this._map.fitBounds(ye.toBounds(We),at,{geolocateSource:!0})},K.prototype._updateMarker=function(te){if(te){var ye=new e.LngLat(te.coords.longitude,te.coords.latitude);this._accuracyCircleMarker.setLngLat(ye).addTo(this._map),this._userLocationDotMarker.setLngLat(ye).addTo(this._map),this._accuracy=te.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},K.prototype._updateCircleRadius=function(){var te=this._map._container.clientHeight/2,ye=this._map.unproject([0,te]),We=this._map.unproject([1,te]),He=ye.distanceTo(We),at=Math.ceil(2*this._accuracy/He);this._circleElement.style.width=at+"px",this._circleElement.style.height=at+"px"},K.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},K.prototype._onError=function(te){if(this._map){if(this.options.trackUserLocation)if(te.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var ye=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ye,this._geolocateButton.setAttribute("aria-label",ye),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(te.code===3&&ou)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",te)),this._finish()}},K.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},K.prototype._setupUI=function(te){var ye=this;if(this._container.addEventListener("contextmenu",function(at){return at.preventDefault()}),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",te===!1){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var We=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=We,this._geolocateButton.setAttribute("aria-label",We)}else{var He=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=He,this._geolocateButton.setAttribute("aria-label",He)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Oa(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Oa({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(at){var St=at.originalEvent&&at.originalEvent.type==="resize";!at.geolocateSource&&ye._watchState==="ACTIVE_LOCK"&&!St&&(ye._watchState="BACKGROUND",ye._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),ye._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),ye.fire(new e.Event("trackuserlocationend")))})},K.prototype.trigger=function(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Ns--,ou=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Ns++;var te;Ns>1?(te={maximumAge:6e5,timeout:0},ou=!0):(te=this.options.positionOptions,ou=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,te)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},K.prototype._clearWatch=function(){e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},K}(e.Evented),al={maxWidth:100,unit:"metric"},Gc=function(K){this.options=e.extend({},al,K),e.bindAll(["_onMove","setUnit"],this)};Gc.prototype.getDefaultPosition=function(){return"bottom-left"},Gc.prototype._onMove=function(){Zl(this._map,this._container,this.options)},Gc.prototype.onAdd=function(K){return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",K.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Gc.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Gc.prototype.setUnit=function(K){this.options.unit=K,Zl(this._map,this._container,this.options)};function Zl(ve,K,me){var te=me&&me.maxWidth||100,ye=ve._container.clientHeight/2,We=ve.unproject([0,ye]),He=ve.unproject([te,ye]),at=We.distanceTo(He);if(me&&me.unit==="imperial"){var St=3.2808*at;if(St>5280){var Gt=St/5280;xc(K,te,Gt,ve._getUIString("ScaleControl.Miles"))}else xc(K,te,St,ve._getUIString("ScaleControl.Feet"))}else if(me&&me.unit==="nautical"){var _r=at/1852;xc(K,te,_r,ve._getUIString("ScaleControl.NauticalMiles"))}else at>=1e3?xc(K,te,at/1e3,ve._getUIString("ScaleControl.Kilometers")):xc(K,te,at,ve._getUIString("ScaleControl.Meters"))}function xc(ve,K,me,te){var ye=af(me),We=ye/me;ve.style.width=K*We+"px",ve.innerHTML=ye+" "+te}function bc(ve){var K=Math.pow(10,Math.ceil(-Math.log(ve)/Math.LN10));return Math.round(ve*K)/K}function af(ve){var K=Math.pow(10,(""+Math.floor(ve)).length-1),me=ve/K;return me=me>=10?10:me>=5?5:me>=3?3:me>=2?2:me>=1?1:bc(me),K*me}var nu=function(K){this._fullscreen=!1,K&&K.container&&(K.container instanceof e.window.HTMLElement?this._container=K.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};nu.prototype.onAdd=function(K){return this._map=K,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},nu.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},nu.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},nu.prototype._setupUI=function(){var K=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",K).setAttribute("aria-hidden",!0),K.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},nu.prototype._updateTitle=function(){var K=this._getTitle();this._fullscreenButton.setAttribute("aria-label",K),this._fullscreenButton.title=K},nu.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},nu.prototype._isFullscreen=function(){return this._fullscreen},nu.prototype._changeIcon=function(){var K=e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.window.document.msFullscreenElement;K===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},nu.prototype._onClickFullscreen=function(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Pc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Wc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ws=function(ve){function K(me){ve.call(this),this.options=e.extend(Object.create(Pc),me),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this._map&&this.remove(),this._map=te,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this},K.prototype.isOpen=function(){return!!this._map},K.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new e.Event("close")),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},K.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},K.prototype.getElement=function(){return this._container},K.prototype.setText=function(te){return this.setDOMContent(e.window.document.createTextNode(te))},K.prototype.setHTML=function(te){var ye=e.window.document.createDocumentFragment(),We=e.window.document.createElement("body"),He;for(We.innerHTML=te;He=We.firstChild,!!He;)ye.appendChild(He);return this.setDOMContent(ye)},K.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},K.prototype.setMaxWidth=function(te){return this.options.maxWidth=te,this._update(),this},K.prototype.setDOMContent=function(te){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(te),this._createCloseButton(),this._update(),this._focusFirstElement(),this},K.prototype.addClassName=function(te){this._container&&this._container.classList.add(te)},K.prototype.removeClassName=function(te){this._container&&this._container.classList.remove(te)},K.prototype.setOffset=function(te){return this.options.offset=te,this._update(),this},K.prototype.toggleClassName=function(te){if(this._container)return this._container.classList.toggle(te)},K.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=r.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},K.prototype._onMouseUp=function(te){this._update(te.point)},K.prototype._onMouseMove=function(te){this._update(te.point)},K.prototype._onDrag=function(te){this._update(te.point)},K.prototype._update=function(te){var ye=this,We=this._lngLat||this._trackPointer;if(!(!this._map||!We||!this._content)&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Ht){return ye._container.classList.add(Ht)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=io(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!te))){var He=this._pos=this._trackPointer&&te?te:this._map.project(this._lngLat),at=this.options.anchor,St=of(this.options.offset);if(!at){var Gt=this._container.offsetWidth,_r=this._container.offsetHeight,Rr;He.y+St.bottom.y<_r?Rr=["top"]:He.y>this._map.transform.height-_r?Rr=["bottom"]:Rr=[],He.xthis._map.transform.width-Gt/2&&Rr.push("right"),Rr.length===0?at="bottom":at=Rr.join("-")}var Tr=He.add(St[at]).round();r.setTransform(this._container,Jo[at]+" translate("+Tr.x+"px,"+Tr.y+"px)"),xs(this._container,at,"popup")}},K.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var te=this._container.querySelector(Wc);te&&te.focus()}},K.prototype._onClose=function(){this.remove()},K}(e.Evented);function of(ve){if(ve)if(typeof ve=="number"){var K=Math.round(Math.sqrt(.5*Math.pow(ve,2)));return{center:new e.Point(0,0),top:new e.Point(0,ve),"top-left":new e.Point(K,K),"top-right":new e.Point(-K,K),bottom:new e.Point(0,-ve),"bottom-left":new e.Point(K,-K),"bottom-right":new e.Point(-K,-K),left:new e.Point(ve,0),right:new e.Point(-ve,0)}}else if(ve instanceof e.Point||Array.isArray(ve)){var me=e.Point.convert(ve);return{center:me,top:me,"top-left":me,"top-right":me,bottom:me,"bottom-left":me,"bottom-right":me,left:me,right:me}}else return{center:e.Point.convert(ve.center||[0,0]),top:e.Point.convert(ve.top||[0,0]),"top-left":e.Point.convert(ve["top-left"]||[0,0]),"top-right":e.Point.convert(ve["top-right"]||[0,0]),bottom:e.Point.convert(ve.bottom||[0,0]),"bottom-left":e.Point.convert(ve["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(ve["bottom-right"]||[0,0]),left:e.Point.convert(ve.left||[0,0]),right:e.Point.convert(ve.right||[0,0])};else return of(new e.Point(0,0))}var Vs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:na,NavigationControl:Fa,GeolocateControl:Hc,AttributionControl:wa,ScaleControl:Gc,FullscreenControl:nu,Popup:Ws,Marker:Oa,Style:au,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:kr,clearPrewarmedResources:Cr,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(ve){e.config.ACCESS_TOKEN=ve},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(ve){e.config.API_URL=ve},get workerCount(){return Mi.workerCount},set workerCount(ve){Mi.workerCount=ve},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(ve){e.config.MAX_PARALLEL_IMAGE_REQUESTS=ve},clearStorage:function(K){e.clearTileCache(K)},workerUrl:""};return Vs}),A})}}),TD=Le({"src/plots/mapbox/layers.js"(Z,H){"use strict";var g=ni(),x=$l().sanitizeHTML,A=nM(),S=yp();function e(n,a){this.subplot=n,this.uid=n.uid+"-"+a,this.index=a,this.idSource="source-"+this.uid,this.idLayer=S.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(a){this.visible?this.needsNewImage(a)?this.updateImage(a):this.needsNewSource(a)?(this.removeLayer(),this.updateSource(a),this.updateLayer(a)):this.needsNewLayer(a)?this.updateLayer(a):this.updateStyle(a):(this.updateSource(a),this.updateLayer(a)),this.visible=r(a)},t.needsNewImage=function(n){var a=this.subplot.map;return a.getSource(this.idSource)&&this.sourceType==="image"&&n.sourcetype==="image"&&(this.source!==n.source||JSON.stringify(this.coordinates)!==JSON.stringify(n.coordinates))},t.needsNewSource=function(n){return this.sourceType!==n.sourcetype||JSON.stringify(this.source)!==JSON.stringify(n.source)||this.layerType!==n.type},t.needsNewLayer=function(n){return this.layerType!==n.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(n){var a=this.subplot.map;a.getSource(this.idSource).updateImage({url:n.source,coordinates:n.coordinates});var s=this.findFollowingMapboxLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(n){var a=this.subplot.map;if(a.getSource(this.idSource)&&a.removeSource(this.idSource),this.sourceType=n.sourcetype,this.source=n.source,!!r(n)){var s=i(n);a.addSource(this.idSource,s)}},t.findFollowingMapboxLayerId=function(n){if(n==="traces")for(var a=this.subplot.getMapLayers(),s=0;s0){for(var s=0;s0}function o(n){var a={},s={};switch(n.type){case"circle":g.extendFlat(s,{"circle-radius":n.circle.radius,"circle-color":n.color,"circle-opacity":n.opacity});break;case"line":g.extendFlat(s,{"line-width":n.line.width,"line-color":n.color,"line-opacity":n.opacity,"line-dasharray":n.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":n.color,"fill-outline-color":n.fill.outlinecolor,"fill-opacity":n.opacity});break;case"symbol":var c=n.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(a,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":n.color,"text-color":c.textfont.color,"text-opacity":n.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":n.opacity});break}return{layout:a,paint:s}}function i(n){var a=n.sourcetype,s=n.source,c={type:a},h;return a==="geojson"?h="data":a==="vector"?h=typeof s=="string"?"url":"tiles":a==="raster"?(h="tiles",c.tileSize=256):a==="image"&&(h="url",c.coordinates=n.coordinates),c[h]=s,n.sourceattribution&&(c.attribution=x(n.sourceattribution)),c}H.exports=function(a,s,c){var h=new e(a,s);return h.update(c),h}}}),AD=Le({"src/plots/mapbox/mapbox.js"(Z,H){"use strict";var g=aM(),x=ni(),A=am(),S=so(),e=Zo(),t=Kh(),r=Dc(),o=hv(),i=o.drawMode,n=o.selectMode,a=cf().prepSelect,s=cf().clearOutline,c=cf().clearSelectionsCache,h=cf().selectOnClick,p=yp(),d=TD();function T(m,b){this.id=b,this.gd=m;var v=m._fullLayout,u=m._context;this.container=v._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=v._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(v),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,v){var u=this,y=b[u.id];u.map&&y.accesstoken!==u.accessToken&&(u.map.remove(),u.map=null,u.styleObj=null,u.traceHash={},u.layerList=[]);var f;u.map?f=new Promise(function(P,L){u.updateMap(m,b,P,L)}):f=new Promise(function(P,L){u.createMap(m,b,P,L)}),v.push(f)},l.createMap=function(m,b,v,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style,b);y.accessToken=f.accesstoken;var L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0}));F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var O=[];O.push(new Promise(function(B){F.once("load",B)})),O=O.concat(A.fetchTraceGeoData(m)),Promise.all(O).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(v)}).catch(u)},l.updateMap=function(m,b,v,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style,b);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(v)}).catch(u)},l.fillBelowLookup=function(m,b){var v=b[this.id],u=v.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y1)for(y=0;y-1&&h(z.originalEvent,u,[v.xaxis],[v.yaxis],v.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,v=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var O=z.range={};O[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var B=z.lassoPoints={};B[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),v.off("click",b.onClickInPanHandler),n(f)||i(f)?(v.dragPan.disable(),v.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,O){a(z,F,O,b.dragOptions,f)},t.init(b.dragOptions)):(v.dragPan.enable(),v.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),v.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,v=m._size,u=this.div.style;u.width=v.w*(b.x[1]-b.x[0])+"px",u.height=v.h*(b.y[1]-b.y[0])+"px",u.left=v.l+b.x[0]*v.w+"px",u.top=v.t+(1-b.y[1])*v.h+"px",this.xaxis._offset=v.l+b.x[0]*v.w,this.xaxis._length=v.w*(b.x[1]-b.x[0]),this.yaxis._offset=v.t+(1-b.y[1])*v.h,this.yaxis._length=v.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],v=b.layers,u=this.layerList,y;if(v.length!==u.length){for(y=0;yO/2){var B=P.split("|").join("
");z.text(B).attr("data-unformatted",B).call(o.convertToTspans,d),F=r.bBox(z.node())}z.attr("transform",x(-3,-F.height+8)),L.insert("rect",".static-attribution").attr({x:-F.width-6,y:-F.height-3,width:F.width+6,height:F.height+3,fill:"rgba(255, 255, 255, 0.75)"});var I=1;F.width+6>O&&(I=O/(F.width+6));var N=[_.l+_.w*E.x[1],_.t+_.h*(1-E.y[0])];L.attr("transform",x(N[0],N[1])+A(I))}};function h(d,T){var l=d._fullLayout,_=d._context;if(_.mapboxAccessToken==="")return"";for(var w=[],M=[],E=!1,m=!1,b=0;b1&&g.warn(a.multipleTokensErrorMsg),w[0]):(M.length&&g.log(["Listed mapbox access token(s)",M.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function p(d){return typeof d=="string"&&(a.styleValuesMapbox.indexOf(d)!==-1||d.indexOf("mapbox://")===0||d.indexOf("stamen")===0)}Z.updateFx=function(d){for(var T=d._fullLayout,l=T._subplots[n],_=0;_=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var i=o[0].trace,n=new S(r,i.uid),a=n.sourceId,s=g(o),c=n.below=r.belowLookup["trace-"+i.uid];return r.map.addSource(a,{type:"geojson",data:s.geojson}),n._addLayers(s,c),o[0].trace._glTrace=n,n}}}),LD=Le({"src/traces/choroplethmapbox/index.js"(Z,H){"use strict";var g=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:oM(),supplyDefaults:kD(),colorbar:Xp(),calc:ub(),plot:CD(),hoverPoints:fb(),eventData:hb(),selectPoints:db(),styleOnSelect:function(x,A){if(A){var S=A[0].trace;S._glTrace.updateOnSelect(A)}},getBelow:function(x,A){for(var S=A.getMapLayers(),e=S.length-2;e>=0;e--){var t=S[e].id;if(typeof t=="string"&&t.indexOf("water")===0){for(var r=e+1;r0?+d[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:M})}}var m=S.extractOpts(i),b=m.reversescale?S.flipScale(m.colorscale):m.colorscale,v=b[0][1],u=A.opacity(v)<1?v:A.addOpacity(v,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h=0;r--)e.removeLayer(t[r][1])},S.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,i=new A(t,o.uid),n=i.sourceId,a=g(r),s=i.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(n,{type:"geojson",data:a.geojson}),i._addLayers(a,s),i}}}),FD=Le({"src/traces/densitymapbox/hover.js"(Z,H){"use strict";var g=Zo(),x=Sb().hoverPoints,A=Sb().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var i=o[0],n=i.cd,a=n[0].trace,s=n[i.index];if(delete i.color,"z"in s){var c=i.subplot.mockAxis;i.z=s.z,i.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return i.extraText=A(a,s,n[0].t.labels),[i]}}}}),BD=Le({"src/traces/densitymapbox/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),OD=Le({"src/traces/densitymapbox/index.js"(Z,H){"use strict";var g=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:lM(),supplyDefaults:ID(),colorbar:Xp(),formatLabels:iM(),calc:RD(),plot:zD(),hoverPoints:FD(),eventData:BD(),getBelow:function(x,A){for(var S=A.getMapLayers(),e=0;eESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin} +{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),jD=Le({"src/plots/map/styles/arcgis-sat.js"(Z,H){H.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),um=Le({"src/plots/map/constants.js"(Z,H){"use strict";var g=Up(),x=UD(),A=jD(),S='\xA9 OpenStreetMap contributors',e="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",t="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",i="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",n="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",a={basic:r,streets:r,outdoors:r,light:e,dark:t,satellite:A,"satellite-streets":x,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:S,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":e,"carto-darkmatter":t,"carto-voyager":r,"carto-positron-nolabels":o,"carto-darkmatter-nolabels":i,"carto-voyager-nolabels":n},s=g(a);H.exports={styleValueDflt:"basic",stylesMap:a,styleValuesMap:s,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",s.join(", "),"or use a tile service."].join(` +`),mapOnErrorMsg:"Map error."}}}),l1=Le({"src/plots/map/layout_attributes.js"(Z,H){"use strict";var g=ni(),x=$a().defaultLine,A=$u().attributes,S=bl(),e=zc().textposition,t=qu().overrideAll,r=wl().templatedArray,o=um(),i=S({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});i.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var n=H.exports=t({_arrayAttrRegexps:[g.counterRegex("map",".layers",!0)],domain:A({name:"map"}),style:{valType:"any",values:o.styleValuesMap,dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:i,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");n.uirevision={valType:"any",editType:"none"}}}),kb=Le({"src/traces/scattermap/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=Fs().texttemplateAttrs,A=dv(),S=ag(),e=zc(),t=l1(),r=Sl(),o=uu(),i=ho().extendFlat,n=qu().overrideAll,a=l1(),s=S.line,c=S.marker;H.exports=n({lon:S.lon,lat:S.lat,cluster:{enabled:{valType:"boolean"},maxzoom:i({},a.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:i({},c.opacity,{dflt:1})},mode:i({},e.mode,{dflt:"markers"}),text:i({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:i({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:i({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:S.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:i({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),uM=Le({"src/traces/scattermap/constants.js"(Z,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),VD=Le({"src/traces/scattermap/defaults.js"(Z,H){"use strict";var g=ni(),x=gu(),A=Od(),S=Wd(),e=Xd(),t=pv(),r=kb(),o=uM().isSupportedFont;H.exports=function(a,s,c,h){function p(y,f){return g.coerce(a,s,r,y,f)}function d(y,f){return g.coerce2(a,s,r,y,f)}var T=i(a,s,p);if(!T){s.visible=!1;return}if(p("text"),p("texttemplate"),p("hovertext"),p("hovertemplate"),p("mode"),p("below"),x.hasMarkers(s)){A(a,s,c,h,p,{noLine:!0,noAngle:!0}),p("marker.allowoverlap"),p("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(S(a,s,c,h,p,{noDash:!0}),p("connectgaps"));var _=d("cluster.maxzoom"),w=d("cluster.step"),M=d("cluster.color",s.marker&&s.marker.color||c),E=d("cluster.size"),m=d("cluster.opacity"),b=_!==!1||w!==!1||M!==!1||E!==!1||m!==!1,v=p("cluster.enabled",b);if(v||x.hasText(s)){var u=h.font.family;e(a,s,h,p,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}p("fill"),s.fill!=="none"&&t(a,s,c,p),g.coerceSelectionMarkerOpacity(s,p)};function i(n,a,s){var c=s("lon")||[],h=s("lat")||[],p=Math.min(c.length,h.length);return a._length=p,p}}}),cM=Le({"src/traces/scattermap/format_labels.js"(Z,H){"use strict";var g=Zo();H.exports=function(A,S,e){var t={},r=e[S.subplot]._subplot,o=r.mockAxis,i=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(i[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(i[1]),!0).text,t}}}),fM=Le({"src/plots/map/convert_text_opts.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(S)?g.mean(S):S,i=.5+o/100,n=1.5+o/100,a=["",""],s=[0,0];switch(t){case"top":a[0]="top",s[1]=-n;break;case"bottom":a[0]="bottom",s[1]=n;break}switch(r){case"left":a[1]="right",s[0]=-i;break;case"right":a[1]="left",s[0]=i;break}var c;return a[0]&&a[1]?c=a.join("-"):a[0]?c=a[0]:a[1]?c=a[1]:c="center",{anchor:c,offset:s}}}}),qD=Le({"src/traces/scattermap/convert.js"(Z,H){"use strict";var g=zn(),x=ni(),A=$n().BADNUM,S=nm(),e=Cu(),t=rs(),r=Yg(),o=gu(),i=uM().isSupportedFont,n=fM(),a=Td().appendArrayPointValue,s=$l().NEWLINES,c=$l().BR_TAG_ALL;H.exports=function(m,b){var v=b[0].trace,u=v.visible===!0&&v._length!==0,y=v.fill!=="none",f=o.hasLines(v),P=o.hasMarkers(v),L=o.hasText(v),z=P&&v.marker.symbol==="circle",F=P&&v.marker.symbol!=="circle",O=v.cluster&&v.cluster.enabled,B=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:B,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=S.calcTraceToLineCoords(b)),y&&(B.geojson=S.makePolygon(Q),B.layout.visibility="visible",x.extendFlat(B.paint,{"fill-color":v.fillcolor})),f&&(I.geojson=S.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":v.line.width,"line-color":v.line.color,"line-opacity":v.opacity})),z){var le=p(b);N.geojson=le.geojson,N.layout.visibility="visible",O&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(v.cluster.color,v.cluster.step),"circle-radius":w(v.cluster.size,v.cluster.step),"circle-opacity":w(v.cluster.opacity,v.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":M(v),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":le.mcc,"circle-radius":le.mrc,"circle-opacity":le.mo})}if(z&&O&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=d(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":v.marker.size/10}),"angle"in v.marker&&v.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=v.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":v.opacity*v.marker.opacity,"icon-color":v.marker.color})),L)){var se=(v.marker||{}).size,fe=n(v.textposition,se);x.extendFlat(U.layout,{"text-size":v.textfont.size,"text-anchor":fe.anchor,"text-offset":fe.offset,"text-font":M(v)}),x.extendFlat(U.paint,{"text-color":v.textfont.color,"text-opacity":v.opacity})}return W};function h(E){return{type:E,geojson:S.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function p(E){var m=E[0].trace,b=m.marker,v=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var O;y&&(O=r(m));var B;f&&(B=function(se){var fe=g(se)?+x.constrain(se,0,1):0;return L(fe)});var I=[];for(P=0;P850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),i(P)||(P=b);var L=P.split(", ");return L}}}),HD=Le({"src/traces/scattermap/plot.js"(Z,H){"use strict";var g=ni(),x=qD(),A=um().traceLayerPrefix,S={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,i,n){this.type="scattermap",this.subplot=r,this.uid=o,this.clusterEnabled=i,this.isHidden=n,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,i){var n={type:"geojson",data:o.geojson};i&&i.enabled&&g.extendFlat(n,{cluster:!0,clusterMaxZoom:i.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[r]);a?a.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],n)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,i){var n={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(n.filter=o.filter);for(var a=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h=0;f--){var P=y[f];a.removeLayer(d.layerIds[P])}u||a.removeSource(d.sourceIds.circle)}function _(u){for(var y=S.nonCluster,f=0;f=0;f--){var P=y[f];a.removeLayer(d.layerIds[P]),u||a.removeSource(d.sourceIds[P])}}function M(u){p?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?S.cluster:S.nonCluster,y=0;y=0;n--){var a=i[n];o.removeLayer(this.layerIds[a]),o.removeSource(this.sourceIds[a])}},H.exports=function(o,i){var n=i[0].trace,a=n.cluster&&n.cluster.enabled,s=n.visible!==!0,c=new e(o,n.uid,a,s),h=x(o.gd,i),p=c.below=o.belowLookup["trace-"+n.uid],d,T,l;if(a)for(c.addSource("circle",h.circle,n.cluster),d=0;d=0?Math.floor((n+180)/360):Math.ceil((n-180)/360),E=M*360,m=n-E;function b(O){var B=O.lonlat;if(B[0]===e||_&&T.indexOf(O.i+1)===-1)return 1/0;var I=x.modHalf(B[0],360),N=B[1],U=d.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-p.c2p([I,a]),le=Math.max(3,O.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-le,1-3/le)}if(g.getClosest(s,b,i),i.index!==!1){var v=s[i.index],u=v.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=p.c2p(y),L=v.mrc||1;i.x0=f-L,i.x1=f+L,i.y0=P-L,i.y1=P+L;var z={};z[c.subplot]={_subplot:d};var F=c._module.formatLabels(v,c,z);return i.lonLabel=F.lonLabel,i.latLabel=F.latLabel,i.color=A(c,v),i.extraText=o(c,v,s[0].t.labels),i.hovertemplate=c.hovertemplate,[i]}}function o(i,n,a){if(i.hovertemplate)return;var s=n.hi||i.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,p=c.indexOf("lon")!==-1,d=c.indexOf("lat")!==-1,T=n.lonlat,l=[];function _(w){return w+"\xB0"}return h||p&&d?l.push("("+_(T[1])+", "+_(T[0])+")"):p?l.push(a.lon+_(T[0])):d&&l.push(a.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&S(n,i,l),l.join("
")}H.exports={hoverPoints:r,getExtraText:o}}}),GD=Le({"src/traces/scattermap/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),WD=Le({"src/traces/scattermap/select.js"(Z,H){"use strict";var g=ni(),x=gu(),A=$n().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,i=e.yaxis,n=[],a=r[0].trace,s;if(!x.hasMarkers(a))return[];if(t===!1)for(s=0;s1)return 1;for(var Y=q,he=0;he<8;he++){var ke=this.sampleCurveX(Y)-q;if(Math.abs(ke)ke?Ge=Y:st=Y,Y=.5*(st-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var c=r(a);let h,p;function d(){return h==null&&(h=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),h}function T(){if(p==null&&(p=!1,d())){let D=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(D){for(let he=0;he<5*5;he++){let ke=4*he;D.fillStyle=`rgb(${ke},${ke+1},${ke+2})`,D.fillRect(he%5,Math.floor(he/5),1,1)}let Y=D.getImageData(0,0,5,5).data;for(let he=0;he<5*5*4;he++)if(he%4!=3&&Y[he]!==he){p=!0;break}}}return p||!1}function l(q,D,Y,he){let ke=new c(q,D,Y,he);return Ue=>ke.solve(Ue)}let _=l(.25,.1,.25,1);function w(q,D,Y){return Math.min(Y,Math.max(D,q))}function M(q,D,Y){let he=Y-D,ke=((q-D)%he+he)%he+D;return ke===D?Y:ke}function E(q,...D){for(let Y of D)for(let he in Y)q[he]=Y[he];return q}let m=1;function b(q,D,Y){let he={};for(let ke in q)he[ke]=D.call(this,q[ke],ke,q);return he}function v(q,D,Y){let he={};for(let ke in q)D.call(this,q[ke],ke,q)&&(he[ke]=q[ke]);return he}function u(q){return Array.isArray(q)?q.map(u):typeof q=="object"&&q?b(q,u):q}let y={};function f(q){y[q]||(typeof console<"u"&&console.warn(q),y[q]=!0)}function P(q,D,Y){return(Y.y-q.y)*(D.x-q.x)>(D.y-q.y)*(Y.x-q.x)}function L(q){return typeof WorkerGlobalScope<"u"&&q!==void 0&&q instanceof WorkerGlobalScope}let z=null;function F(q){return typeof ImageBitmap<"u"&&q instanceof ImageBitmap}let O="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function B(q,D,Y,he,ke){return t(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let Ue=new VideoFrame(q,{timestamp:0});try{let Ge=Ue?.format;if(!Ge||!Ge.startsWith("BGR")&&!Ge.startsWith("RGB"))throw new Error(`Unrecognized format ${Ge}`);let st=Ge.startsWith("BGR"),bt=new Uint8ClampedArray(he*ke*4);if(yield Ue.copyTo(bt,function(zt,Qt,ur,Mr,Fr){let $r=4*Math.max(-Qt,0),vi=(Math.max(0,ur)-ur)*Mr*4+$r,Vi=4*Mr,Yi=Math.max(0,Qt),Ln=Math.max(0,ur);return{rect:{x:Yi,y:Ln,width:Math.min(zt.width,Qt+Mr)-Yi,height:Math.min(zt.height,ur+Fr)-Ln},layout:[{offset:vi,stride:Vi}]}}(q,D,Y,he,ke)),st)for(let zt=0;ztL(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,J=function(q,D){if(/:\/\//.test(q.url)&&!/^https?:|^file:/.test(q.url)){let he=le(q.url);if(he)return he(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,targetMapId:se},D)}if(!(/^file:/.test(Y=q.url)||/^file:/.test(G())&&!/^\w+:/.test(Y))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(he,ke){return t(this,void 0,void 0,function*(){let Ue=new Request(he.url,{method:he.method||"GET",body:he.body,credentials:he.credentials,headers:he.headers,cache:he.cache,referrer:G(),signal:ke.signal});he.type!=="json"||Ue.headers.has("Accept")||Ue.headers.set("Accept","application/json");let Ge=yield fetch(Ue);if(!Ge.ok){let zt=yield Ge.blob();throw new fe(Ge.status,Ge.statusText,he.url,zt)}let st;st=he.type==="arrayBuffer"||he.type==="image"?Ge.arrayBuffer():he.type==="json"?Ge.json():Ge.text();let bt=yield st;if(ke.signal.aborted)throw W();return{data:bt,cacheControl:Ge.headers.get("Cache-Control"),expires:Ge.headers.get("Expires")}})}(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,mustQueue:!0,targetMapId:se},D)}var Y;return function(he,ke){return new Promise((Ue,Ge)=>{var st;let bt=new XMLHttpRequest;bt.open(he.method||"GET",he.url,!0),he.type!=="arrayBuffer"&&he.type!=="image"||(bt.responseType="arraybuffer");for(let zt in he.headers)bt.setRequestHeader(zt,he.headers[zt]);he.type==="json"&&(bt.responseType="text",!((st=he.headers)===null||st===void 0)&&st.Accept||bt.setRequestHeader("Accept","application/json")),bt.withCredentials=he.credentials==="include",bt.onerror=()=>{Ge(new Error(bt.statusText))},bt.onload=()=>{if(!ke.signal.aborted)if((bt.status>=200&&bt.status<300||bt.status===0)&&bt.response!==null){let zt=bt.response;if(he.type==="json")try{zt=JSON.parse(bt.response)}catch(Qt){return void Ge(Qt)}Ue({data:zt,cacheControl:bt.getResponseHeader("Cache-Control"),expires:bt.getResponseHeader("Expires")})}else{let zt=new Blob([bt.response],{type:bt.getResponseHeader("Content-Type")});Ge(new fe(bt.status,bt.statusText,he.url,zt))}},ke.signal.addEventListener("abort",()=>{bt.abort(),Ge(W())}),bt.send(he.body)})}(q,D)};function $(q){if(!q||q.indexOf("://")<=0||q.indexOf("data:image/")===0||q.indexOf("blob:")===0)return!0;let D=new URL(q),Y=window.location;return D.protocol===Y.protocol&&D.host===Y.host}function X(q,D,Y){Y[q]&&Y[q].indexOf(D)!==-1||(Y[q]=Y[q]||[],Y[q].push(D))}function re(q,D,Y){if(Y&&Y[q]){let he=Y[q].indexOf(D);he!==-1&&Y[q].splice(he,1)}}class ae{constructor(D,Y={}){E(this,Y),this.type=D}}class j extends ae{constructor(D,Y={}){super("error",E({error:D},Y))}}class ee{on(D,Y){return this._listeners=this._listeners||{},X(D,Y,this._listeners),this}off(D,Y){return re(D,Y,this._listeners),re(D,Y,this._oneTimeListeners),this}once(D,Y){return Y?(this._oneTimeListeners=this._oneTimeListeners||{},X(D,Y,this._oneTimeListeners),this):new Promise(he=>this.once(D,he))}fire(D,Y){typeof D=="string"&&(D=new ae(D,Y||{}));let he=D.type;if(this.listens(he)){D.target=this;let ke=this._listeners&&this._listeners[he]?this._listeners[he].slice():[];for(let st of ke)st.call(this,D);let Ue=this._oneTimeListeners&&this._oneTimeListeners[he]?this._oneTimeListeners[he].slice():[];for(let st of Ue)re(he,st,this._oneTimeListeners),st.call(this,D);let Ge=this._eventedParent;Ge&&(E(D,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Ge.fire(D))}else D instanceof j&&console.error(D.error);return this}listens(D){return this._listeners&&this._listeners[D]&&this._listeners[D].length>0||this._oneTimeListeners&&this._oneTimeListeners[D]&&this._oneTimeListeners[D].length>0||this._eventedParent&&this._eventedParent.listens(D)}setEventedParent(D,Y){return this._eventedParent=D,this._eventedParentData=Y,this}}var ne={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let ce=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function _e(q,D){let Y={};for(let he in q)he!=="ref"&&(Y[he]=q[he]);return ce.forEach(he=>{he in D&&(Y[he]=D[he])}),Y}function we(q,D){if(Array.isArray(q)){if(!Array.isArray(D)||q.length!==D.length)return!1;for(let Y=0;Y`:q.itemType.kind==="value"?"array":`array<${D}>`}return q.kind}let Ne=[it,$e,kt,Mt,Bt,Lr,jt,Fe(cr),mr,xr,mt];function Se(q,D){if(D.kind==="error")return null;if(q.kind==="array"){if(D.kind==="array"&&(D.N===0&&D.itemType.kind==="value"||!Se(q.itemType,D.itemType))&&(typeof q.N!="number"||q.N===D.N))return null}else{if(q.kind===D.kind)return null;if(q.kind==="value"){for(let Y of Ne)if(!Se(Y,D))return null}}return`Expected ${Ze(q)} but found ${Ze(D)} instead.`}function Ve(q,D){return D.some(Y=>Y.kind===q.kind)}function Ee(q,D){return D.some(Y=>Y==="null"?q===null:Y==="array"?Array.isArray(q):Y==="object"?q&&!Array.isArray(q)&&typeof q=="object":Y===typeof q)}function be(q,D){return q.kind==="array"&&D.kind==="array"?q.itemType.kind===D.itemType.kind&&typeof q.N=="number":q.kind===D.kind}let Ce=.96422,et=.82521,ht=4/29,yt=6/29,Pt=3*yt*yt,Ot=yt*yt*yt,Wt=Math.PI/180,$t=180/Math.PI;function lr(q){return(q%=360)<0&&(q+=360),q}function fi([q,D,Y,he]){let ke,Ue,Ge=Bi((.2225045*(q=Pi(q))+.7168786*(D=Pi(D))+.0606169*(Y=Pi(Y)))/1);q===D&&D===Y?ke=Ue=Ge:(ke=Bi((.4360747*q+.3850649*D+.1430804*Y)/Ce),Ue=Bi((.0139322*q+.0971045*D+.7141733*Y)/et));let st=116*Ge-16;return[st<0?0:st,500*(ke-Ge),200*(Ge-Ue),he]}function Pi(q){return q<=.04045?q/12.92:Math.pow((q+.055)/1.055,2.4)}function Bi(q){return q>Ot?Math.pow(q,1/3):q/Pt+ht}function zi([q,D,Y,he]){let ke=(q+16)/116,Ue=isNaN(D)?ke:ke+D/500,Ge=isNaN(Y)?ke:ke-Y/200;return ke=1*Ri(ke),Ue=Ce*Ri(Ue),Ge=et*Ri(Ge),[en(3.1338561*Ue-1.6168667*ke-.4906146*Ge),en(-.9787684*Ue+1.9161415*ke+.033454*Ge),en(.0719453*Ue-.2289914*ke+1.4052427*Ge),he]}function en(q){return(q=q<=.00304?12.92*q:1.055*Math.pow(q,1/2.4)-.055)<0?0:q>1?1:q}function Ri(q){return q>yt?q*q*q:Pt*(q-ht)}function Zi(q){return parseInt(q.padEnd(2,q),16)/255}function vn(q,D){return Xt(D?q/100:q,0,1)}function Xt(q,D,Y){return Math.min(Math.max(D,q),Y)}function Dt(q){return!q.some(Number.isNaN)}let qt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Ut{constructor(D,Y,he,ke=1,Ue=!0){this.r=D,this.g=Y,this.b=he,this.a=ke,Ue||(this.r*=ke,this.g*=ke,this.b*=ke,ke||this.overwriteGetter("rgb",[D,Y,he,ke]))}static parse(D){if(D instanceof Ut)return D;if(typeof D!="string")return;let Y=function(he){if((he=he.toLowerCase().trim())==="transparent")return[0,0,0,0];let ke=qt[he];if(ke){let[Ge,st,bt]=ke;return[Ge/255,st/255,bt/255,1]}if(he.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(he)){let Ge=he.length<6?1:2,st=1;return[Zi(he.slice(st,st+=Ge)),Zi(he.slice(st,st+=Ge)),Zi(he.slice(st,st+=Ge)),Zi(he.slice(st,st+Ge)||"ff")]}if(he.startsWith("rgb")){let Ge=he.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ge){let[st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi,Ln]=Ge,un=[Qt||" ",Fr||" ",Vi].join("");if(un===" "||un===" /"||un===",,"||un===",,,"){let Tn=[zt,Mr,vi].join(""),jn=Tn==="%%%"?100:Tn===""?255:0;if(jn){let qa=[Xt(+bt/jn,0,1),Xt(+ur/jn,0,1),Xt(+$r/jn,0,1),Yi?vn(+Yi,Ln):1];if(Dt(qa))return qa}}return}}let Ue=he.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ue){let[Ge,st,bt,zt,Qt,ur,Mr,Fr,$r]=Ue,vi=[bt||" ",Qt||" ",Mr].join("");if(vi===" "||vi===" /"||vi===",,"||vi===",,,"){let Vi=[+st,Xt(+zt,0,100),Xt(+ur,0,100),Fr?vn(+Fr,$r):1];if(Dt(Vi))return function([Yi,Ln,un,Tn]){function jn(qa){let Io=(qa+Yi/30)%12,As=Ln*Math.min(un,1-un);return un-As*Math.max(-1,Math.min(Io-3,9-Io,1))}return Yi=lr(Yi),Ln/=100,un/=100,[jn(0),jn(8),jn(4),Tn]}(Vi)}}}(D);return Y?new Ut(...Y,!1):void 0}get rgb(){let{r:D,g:Y,b:he,a:ke}=this,Ue=ke||1/0;return this.overwriteGetter("rgb",[D/Ue,Y/Ue,he/Ue,ke])}get hcl(){return this.overwriteGetter("hcl",function(D){let[Y,he,ke,Ue]=fi(D),Ge=Math.sqrt(he*he+ke*ke);return[Math.round(1e4*Ge)?lr(Math.atan2(ke,he)*$t):NaN,Ge,Y,Ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",fi(this.rgb))}overwriteGetter(D,Y){return Object.defineProperty(this,D,{value:Y}),Y}toString(){let[D,Y,he,ke]=this.rgb;return`rgba(${[D,Y,he].map(Ue=>Math.round(255*Ue)).join(",")},${ke})`}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1);class br{constructor(D,Y,he){this.sensitivity=D?Y?"variant":"case":Y?"accent":"base",this.locale=he,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(D,Y){return this.collator.compare(D,Y)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(D,Y,he,ke,Ue){this.text=D,this.image=Y,this.scale=he,this.fontStack=ke,this.textColor=Ue}}class _i{constructor(D){this.sections=D}static fromString(D){return new _i([new Zr(D,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(D=>D.text.length!==0||D.image&&D.image.name.length!==0)}static factory(D){return D instanceof _i?D:_i.fromString(D)}toString(){return this.sections.length===0?"":this.sections.map(D=>D.text).join("")}}class Yr{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Yr)return D;if(typeof D=="number")return new Yr([D,D,D,D]);if(Array.isArray(D)&&!(D.length<1||D.length>4)){for(let Y of D)if(typeof Y!="number")return;switch(D.length){case 1:D=[D[0],D[0],D[0],D[0]];break;case 2:D=[D[0],D[1],D[0],D[1]];break;case 3:D=[D[0],D[1],D[2],D[1]]}return new Yr(D)}}toString(){return JSON.stringify(this.values)}}let Di=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class qi{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof qi)return D;if(Array.isArray(D)&&!(D.length<1)&&D.length%2==0){for(let Y=0;Y=0&&q<=255&&typeof D=="number"&&D>=0&&D<=255&&typeof Y=="number"&&Y>=0&&Y<=255?he===void 0||typeof he=="number"&&he>=0&&he<=1?null:`Invalid rgba value [${[q,D,Y,he].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof he=="number"?[q,D,Y,he]:[q,D,Y]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function sn(q){if(q===null||typeof q=="string"||typeof q=="boolean"||typeof q=="number"||q instanceof Ut||q instanceof br||q instanceof _i||q instanceof Yr||q instanceof qi||q instanceof $i)return!0;if(Array.isArray(q)){for(let D of q)if(!sn(D))return!1;return!0}if(typeof q=="object"){for(let D in q)if(!sn(q[D]))return!1;return!0}return!1}function vt(q){if(q===null)return it;if(typeof q=="string")return kt;if(typeof q=="boolean")return Mt;if(typeof q=="number")return $e;if(q instanceof Ut)return Bt;if(q instanceof br)return nr;if(q instanceof _i)return Lr;if(q instanceof Yr)return mr;if(q instanceof qi)return mt;if(q instanceof $i)return xr;if(Array.isArray(q)){let D=q.length,Y;for(let he of q){let ke=vt(he);if(Y){if(Y===ke)continue;Y=cr;break}Y=ke}return Fe(Y||cr,D)}return jt}function pt(q){let D=typeof q;return q===null?"":D==="string"||D==="number"||D==="boolean"?String(q):q instanceof Ut||q instanceof _i||q instanceof Yr||q instanceof qi||q instanceof $i?q.toString():JSON.stringify(q)}class kr{constructor(D,Y){this.type=D,this.value=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'literal' expression requires exactly one argument, but found ${D.length-1} instead.`);if(!sn(D[1]))return Y.error("invalid value");let he=D[1],ke=vt(he),Ue=Y.expectedType;return ke.kind!=="array"||ke.N!==0||!Ue||Ue.kind!=="array"||typeof Ue.N=="number"&&Ue.N!==0||(ke=Ue),new kr(ke,he)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class Cr{constructor(D){this.name="ExpressionEvaluationError",this.message=D}toJSON(){return this.message}}let wr={string:kt,number:$e,boolean:Mt,object:jt};class Ar{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let he,ke=1,Ue=D[0];if(Ue==="array"){let st,bt;if(D.length>2){let zt=D[1];if(typeof zt!="string"||!(zt in wr)||zt==="object")return Y.error('The item type argument of "array" must be one of string, number, boolean',1);st=wr[zt],ke++}else st=cr;if(D.length>3){if(D[2]!==null&&(typeof D[2]!="number"||D[2]<0||D[2]!==Math.floor(D[2])))return Y.error('The length argument to "array" must be a positive integer literal',2);bt=D[2],ke++}he=Fe(st,bt)}else{if(!wr[Ue])throw new Error(`Types doesn't contain name = ${Ue}`);he=wr[Ue]}let Ge=[];for(;keD.outputDefined())}}let Er={"to-boolean":Mt,"to-color":Bt,"to-number":$e,"to-string":kt};class Br{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let he=D[0];if(!Er[he])throw new Error(`Can't parse ${he} as it is not part of the known types`);if((he==="to-boolean"||he==="to-string")&&D.length!==2)return Y.error("Expected one argument.");let ke=Er[he],Ue=[];for(let Ge=1;Ge4?`Invalid rbga value ${JSON.stringify(Y)}: expected an array containing either three or four numeric values.`:Mi(Y[0],Y[1],Y[2],Y[3]),!he))return new Ut(Y[0]/255,Y[1]/255,Y[2]/255,Y[3])}throw new Cr(he||`Could not parse color from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"padding":{let Y;for(let he of this.args){Y=he.evaluate(D);let ke=Yr.parse(Y);if(ke)return ke}throw new Cr(`Could not parse padding from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"variableAnchorOffsetCollection":{let Y;for(let he of this.args){Y=he.evaluate(D);let ke=qi.parse(Y);if(ke)return ke}throw new Cr(`Could not parse variableAnchorOffsetCollection from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"number":{let Y=null;for(let he of this.args){if(Y=he.evaluate(D),Y===null)return 0;let ke=Number(Y);if(!isNaN(ke))return ke}throw new Cr(`Could not convert ${JSON.stringify(Y)} to number.`)}case"formatted":return _i.fromString(pt(this.args[0].evaluate(D)));case"resolvedImage":return $i.fromString(pt(this.args[0].evaluate(D)));default:return pt(this.args[0].evaluate(D))}}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Pr=["Unknown","Point","LineString","Polygon"];class Qr{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Pr[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(D){let Y=this._parseColorCache[D];return Y||(Y=this._parseColorCache[D]=Ut.parse(D)),Y}}class ci{constructor(D,Y,he=[],ke,Ue=new Qe,Ge=[]){this.registry=D,this.path=he,this.key=he.map(st=>`[${st}]`).join(""),this.scope=Ue,this.errors=Ge,this.expectedType=ke,this._isConstant=Y}parse(D,Y,he,ke,Ue={}){return Y?this.concat(Y,he,ke)._parse(D,Ue):this._parse(D,Ue)}_parse(D,Y){function he(ke,Ue,Ge){return Ge==="assert"?new Ar(Ue,[ke]):Ge==="coerce"?new Br(Ue,[ke]):ke}if(D!==null&&typeof D!="string"&&typeof D!="boolean"&&typeof D!="number"||(D=["literal",D]),Array.isArray(D)){if(D.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let ke=D[0];if(typeof ke!="string")return this.error(`Expression name must be a string, but found ${typeof ke} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let Ue=this.registry[ke];if(Ue){let Ge=Ue.parse(D,this);if(!Ge)return null;if(this.expectedType){let st=this.expectedType,bt=Ge.type;if(st.kind!=="string"&&st.kind!=="number"&&st.kind!=="boolean"&&st.kind!=="object"&&st.kind!=="array"||bt.kind!=="value")if(st.kind!=="color"&&st.kind!=="formatted"&&st.kind!=="resolvedImage"||bt.kind!=="value"&&bt.kind!=="string")if(st.kind!=="padding"||bt.kind!=="value"&&bt.kind!=="number"&&bt.kind!=="array")if(st.kind!=="variableAnchorOffsetCollection"||bt.kind!=="value"&&bt.kind!=="array"){if(this.checkSubtype(st,bt))return null}else Ge=he(Ge,st,Y.typeAnnotation||"coerce");else Ge=he(Ge,st,Y.typeAnnotation||"coerce");else Ge=he(Ge,st,Y.typeAnnotation||"coerce");else Ge=he(Ge,st,Y.typeAnnotation||"assert")}if(!(Ge instanceof kr)&&Ge.type.kind!=="resolvedImage"&&this._isConstant(Ge)){let st=new Qr;try{Ge=new kr(Ge.type,Ge.evaluate(st))}catch(bt){return this.error(bt.message),null}}return Ge}return this.error(`Unknown expression "${ke}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(D===void 0?"'undefined' value invalid. Use null instead.":typeof D=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof D} instead.`)}concat(D,Y,he){let ke=typeof D=="number"?this.path.concat(D):this.path,Ue=he?this.scope.concat(he):this.scope;return new ci(this.registry,this._isConstant,ke,Y||null,Ue,this.errors)}error(D,...Y){let he=`${this.key}${Y.map(ke=>`[${ke}]`).join("")}`;this.errors.push(new ze(he,D))}checkSubtype(D,Y){let he=Se(D,Y);return he&&this.error(he),he}}class mi{constructor(D,Y){this.type=Y.type,this.bindings=[].concat(D),this.result=Y}evaluate(D){return this.result.evaluate(D)}eachChild(D){for(let Y of this.bindings)D(Y[1]);D(this.result)}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found ${D.length-1} instead.`);let he=[];for(let Ue=1;Ue=he.length)throw new Cr(`Array index out of bounds: ${Y} > ${he.length-1}.`);if(Y!==Math.floor(Y))throw new Cr(`Array index must be an integer, but found ${Y} instead.`);return he[Y]}eachChild(D){D(this.index),D(this.input)}outputDefined(){return!1}}class gr{constructor(D,Y){this.type=Mt,this.needle=D,this.haystack=Y}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let he=Y.parse(D[1],1,cr),ke=Y.parse(D[2],2,cr);return he&&ke?Ve(he.type,[Mt,kt,$e,it,cr])?new gr(he,ke):Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ze(he.type)} instead`):null}evaluate(D){let Y=this.needle.evaluate(D),he=this.haystack.evaluate(D);if(!he)return!1;if(!Ee(Y,["boolean","string","number","null"]))throw new Cr(`Expected first argument to be of type boolean, string, number or null, but found ${Ze(vt(Y))} instead.`);if(!Ee(he,["string","array"]))throw new Cr(`Expected second argument to be of type array or string, but found ${Ze(vt(he))} instead.`);return he.indexOf(Y)>=0}eachChild(D){D(this.needle),D(this.haystack)}outputDefined(){return!0}}class ti{constructor(D,Y,he){this.type=$e,this.needle=D,this.haystack=Y,this.fromIndex=he}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let he=Y.parse(D[1],1,cr),ke=Y.parse(D[2],2,cr);if(!he||!ke)return null;if(!Ve(he.type,[Mt,kt,$e,it,cr]))return Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ze(he.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,$e);return Ue?new ti(he,ke,Ue):null}return new ti(he,ke)}evaluate(D){let Y=this.needle.evaluate(D),he=this.haystack.evaluate(D);if(!Ee(Y,["boolean","string","number","null"]))throw new Cr(`Expected first argument to be of type boolean, string, number or null, but found ${Ze(vt(Y))} instead.`);let ke;if(this.fromIndex&&(ke=this.fromIndex.evaluate(D)),Ee(he,["string"])){let Ue=he.indexOf(Y,ke);return Ue===-1?-1:[...he.slice(0,Ue)].length}if(Ee(he,["array"]))return he.indexOf(Y,ke);throw new Cr(`Expected second argument to be of type array or string, but found ${Ze(vt(he))} instead.`)}eachChild(D){D(this.needle),D(this.haystack),this.fromIndex&&D(this.fromIndex)}outputDefined(){return!1}}class wi{constructor(D,Y,he,ke,Ue,Ge){this.inputType=D,this.type=Y,this.input=he,this.cases=ke,this.outputs=Ue,this.otherwise=Ge}static parse(D,Y){if(D.length<5)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if(D.length%2!=1)return Y.error("Expected an even number of arguments.");let he,ke;Y.expectedType&&Y.expectedType.kind!=="value"&&(ke=Y.expectedType);let Ue={},Ge=[];for(let zt=2;ztNumber.MAX_SAFE_INTEGER)return Mr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof $r=="number"&&Math.floor($r)!==$r)return Mr.error("Numeric branch labels must be integer values.");if(he){if(Mr.checkSubtype(he,vt($r)))return null}else he=vt($r);if(Ue[String($r)]!==void 0)return Mr.error("Branch labels must be unique.");Ue[String($r)]=Ge.length}let Fr=Y.parse(ur,zt,ke);if(!Fr)return null;ke=ke||Fr.type,Ge.push(Fr)}let st=Y.parse(D[1],1,cr);if(!st)return null;let bt=Y.parse(D[D.length-1],D.length-1,ke);return bt?st.type.kind!=="value"&&Y.concat(1).checkSubtype(he,st.type)?null:new wi(he,ke,st,Ue,Ge,bt):null}evaluate(D){let Y=this.input.evaluate(D);return(vt(Y)===this.inputType&&this.outputs[this.cases[Y]]||this.otherwise).evaluate(D)}eachChild(D){D(this.input),this.outputs.forEach(D),D(this.otherwise)}outputDefined(){return this.outputs.every(D=>D.outputDefined())&&this.otherwise.outputDefined()}}class Gi{constructor(D,Y,he){this.type=D,this.branches=Y,this.otherwise=he}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found only ${D.length-1}.`);if(D.length%2!=0)return Y.error("Expected an odd number of arguments.");let he;Y.expectedType&&Y.expectedType.kind!=="value"&&(he=Y.expectedType);let ke=[];for(let Ge=1;GeY.outputDefined())&&this.otherwise.outputDefined()}}class Fi{constructor(D,Y,he,ke){this.type=D,this.input=Y,this.beginIndex=he,this.endIndex=ke}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let he=Y.parse(D[1],1,cr),ke=Y.parse(D[2],2,$e);if(!he||!ke)return null;if(!Ve(he.type,[Fe(cr),kt,cr]))return Y.error(`Expected first argument to be of type array or string, but found ${Ze(he.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,$e);return Ue?new Fi(he.type,he,ke,Ue):null}return new Fi(he.type,he,ke)}evaluate(D){let Y=this.input.evaluate(D),he=this.beginIndex.evaluate(D),ke;if(this.endIndex&&(ke=this.endIndex.evaluate(D)),Ee(Y,["string"]))return[...Y].slice(he,ke).join("");if(Ee(Y,["array"]))return Y.slice(he,ke);throw new Cr(`Expected first argument to be of type array or string, but found ${Ze(vt(Y))} instead.`)}eachChild(D){D(this.input),D(this.beginIndex),this.endIndex&&D(this.endIndex)}outputDefined(){return!1}}function xi(q,D){let Y=q.length-1,he,ke,Ue=0,Ge=Y,st=0;for(;Ue<=Ge;)if(st=Math.floor((Ue+Ge)/2),he=q[st],ke=q[st+1],he<=D){if(st===Y||DD))throw new Cr("Input is not a number.");Ge=st-1}return 0}class Ii{constructor(D,Y,he){this.type=D,this.input=Y,this.labels=[],this.outputs=[];for(let[ke,Ue]of he)this.labels.push(ke),this.outputs.push(Ue)}static parse(D,Y){if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");let he=Y.parse(D[1],1,$e);if(!he)return null;let ke=[],Ue=null;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ue=Y.expectedType);for(let Ge=1;Ge=st)return Y.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',zt);let ur=Y.parse(bt,Qt,Ue);if(!ur)return null;Ue=Ue||ur.type,ke.push([st,ur])}return new Ii(Ue,he,ke)}evaluate(D){let Y=this.labels,he=this.outputs;if(Y.length===1)return he[0].evaluate(D);let ke=this.input.evaluate(D);if(ke<=Y[0])return he[0].evaluate(D);let Ue=Y.length;return ke>=Y[Ue-1]?he[Ue-1].evaluate(D):he[xi(Y,ke)].evaluate(D)}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Bn(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}var hn=ba;function ba(q,D,Y,he){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(he-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=he}ba.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,he=0;he<8;he++){var ke=this.sampleCurveX(Y)-q;if(Math.abs(ke)ke?Ge=Y:st=Y,Y=.5*(st-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var Aa=Bn(hn);function Va(q,D,Y){return q+Y*(D-q)}function Qa(q,D,Y){return q.map((he,ke)=>Va(he,D[ke],Y))}let yo={number:Va,color:function(q,D,Y,he="rgb"){switch(he){case"rgb":{let[ke,Ue,Ge,st]=Qa(q.rgb,D.rgb,Y);return new Ut(ke,Ue,Ge,st,!1)}case"hcl":{let[ke,Ue,Ge,st]=q.hcl,[bt,zt,Qt,ur]=D.hcl,Mr,Fr;if(isNaN(ke)||isNaN(bt))isNaN(ke)?isNaN(bt)?Mr=NaN:(Mr=bt,Ge!==1&&Ge!==0||(Fr=zt)):(Mr=ke,Qt!==1&&Qt!==0||(Fr=Ue));else{let Ln=bt-ke;bt>ke&&Ln>180?Ln-=360:bt180&&(Ln+=360),Mr=ke+Y*Ln}let[$r,vi,Vi,Yi]=function([Ln,un,Tn,jn]){return Ln=isNaN(Ln)?0:Ln*Wt,zi([Tn,Math.cos(Ln)*un,Math.sin(Ln)*un,jn])}([Mr,Fr??Va(Ue,zt,Y),Va(Ge,Qt,Y),Va(st,ur,Y)]);return new Ut($r,vi,Vi,Yi,!1)}case"lab":{let[ke,Ue,Ge,st]=zi(Qa(q.lab,D.lab,Y));return new Ut(ke,Ue,Ge,st,!1)}}},array:Qa,padding:function(q,D,Y){return new Yr(Qa(q.values,D.values,Y))},variableAnchorOffsetCollection:function(q,D,Y){let he=q.values,ke=D.values;if(he.length!==ke.length)throw new Cr(`Cannot interpolate values of different length. from: ${q.toString()}, to: ${D.toString()}`);let Ue=[];for(let Ge=0;Getypeof Qt!="number"||Qt<0||Qt>1))return Y.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);ke={name:"cubic-bezier",controlPoints:zt}}}if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");if(Ue=Y.parse(Ue,2,$e),!Ue)return null;let st=[],bt=null;he==="interpolate-hcl"||he==="interpolate-lab"?bt=Bt:Y.expectedType&&Y.expectedType.kind!=="value"&&(bt=Y.expectedType);for(let zt=0;zt=Qt)return Y.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Mr);let $r=Y.parse(ur,Fr,bt);if(!$r)return null;bt=bt||$r.type,st.push([Qt,$r])}return be(bt,$e)||be(bt,Bt)||be(bt,mr)||be(bt,mt)||be(bt,Fe($e))?new Ga(bt,he,ke,Ue,st):Y.error(`Type ${Ze(bt)} is not interpolatable.`)}evaluate(D){let Y=this.labels,he=this.outputs;if(Y.length===1)return he[0].evaluate(D);let ke=this.input.evaluate(D);if(ke<=Y[0])return he[0].evaluate(D);let Ue=Y.length;if(ke>=Y[Ue-1])return he[Ue-1].evaluate(D);let Ge=xi(Y,ke),st=Ga.interpolationFactor(this.interpolation,ke,Y[Ge],Y[Ge+1]),bt=he[Ge].evaluate(D),zt=he[Ge+1].evaluate(D);switch(this.operator){case"interpolate":return yo[this.type.kind](bt,zt,st);case"interpolate-hcl":return yo.color(bt,zt,st,"hcl");case"interpolate-lab":return yo.color(bt,zt,st,"lab")}}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Yo(q,D,Y,he){let ke=he-Y,Ue=q-Y;return ke===0?0:D===1?Ue/ke:(Math.pow(D,Ue)-1)/(Math.pow(D,ke)-1)}class da{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expectected at least one argument.");let he=null,ke=Y.expectedType;ke&&ke.kind!=="value"&&(he=ke);let Ue=[];for(let st of D.slice(1)){let bt=Y.parse(st,1+Ue.length,he,void 0,{typeAnnotation:"omit"});if(!bt)return null;he=he||bt.type,Ue.push(bt)}if(!he)throw new Error("No output type");let Ge=ke&&Ue.some(st=>Se(ke,st.type));return new da(Ge?cr:he,Ue)}evaluate(D){let Y,he=null,ke=0;for(let Ue of this.args)if(ke++,he=Ue.evaluate(D),he&&he instanceof $i&&!he.available&&(Y||(Y=he.name),he=null,ke===this.args.length&&(he=Y)),he!==null)break;return he}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}function vs(q,D){return q==="=="||q==="!="?D.kind==="boolean"||D.kind==="string"||D.kind==="number"||D.kind==="null"||D.kind==="value":D.kind==="string"||D.kind==="number"||D.kind==="value"}function es(q,D,Y,he){return he.compare(D,Y)===0}function bs(q,D,Y){let he=q!=="=="&&q!=="!=";return class IS{constructor(Ue,Ge,st){this.type=Mt,this.lhs=Ue,this.rhs=Ge,this.collator=st,this.hasUntypedArgument=Ue.type.kind==="value"||Ge.type.kind==="value"}static parse(Ue,Ge){if(Ue.length!==3&&Ue.length!==4)return Ge.error("Expected two or three arguments.");let st=Ue[0],bt=Ge.parse(Ue[1],1,cr);if(!bt)return null;if(!vs(st,bt.type))return Ge.concat(1).error(`"${st}" comparisons are not supported for type '${Ze(bt.type)}'.`);let zt=Ge.parse(Ue[2],2,cr);if(!zt)return null;if(!vs(st,zt.type))return Ge.concat(2).error(`"${st}" comparisons are not supported for type '${Ze(zt.type)}'.`);if(bt.type.kind!==zt.type.kind&&bt.type.kind!=="value"&&zt.type.kind!=="value")return Ge.error(`Cannot compare types '${Ze(bt.type)}' and '${Ze(zt.type)}'.`);he&&(bt.type.kind==="value"&&zt.type.kind!=="value"?bt=new Ar(zt.type,[bt]):bt.type.kind!=="value"&&zt.type.kind==="value"&&(zt=new Ar(bt.type,[zt])));let Qt=null;if(Ue.length===4){if(bt.type.kind!=="string"&&zt.type.kind!=="string"&&bt.type.kind!=="value"&&zt.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if(Qt=Ge.parse(Ue[3],3,nr),!Qt)return null}return new IS(bt,zt,Qt)}evaluate(Ue){let Ge=this.lhs.evaluate(Ue),st=this.rhs.evaluate(Ue);if(he&&this.hasUntypedArgument){let bt=vt(Ge),zt=vt(st);if(bt.kind!==zt.kind||bt.kind!=="string"&&bt.kind!=="number")throw new Cr(`Expected arguments for "${q}" to be (string, string) or (number, number), but found (${bt.kind}, ${zt.kind}) instead.`)}if(this.collator&&!he&&this.hasUntypedArgument){let bt=vt(Ge),zt=vt(st);if(bt.kind!=="string"||zt.kind!=="string")return D(Ue,Ge,st)}return this.collator?Y(Ue,Ge,st,this.collator.evaluate(Ue)):D(Ue,Ge,st)}eachChild(Ue){Ue(this.lhs),Ue(this.rhs),this.collator&&Ue(this.collator)}outputDefined(){return!0}}}let Xa=bs("==",function(q,D,Y){return D===Y},es),Bo=bs("!=",function(q,D,Y){return D!==Y},function(q,D,Y,he){return!es(0,D,Y,he)}),Za=bs("<",function(q,D,Y){return D",function(q,D,Y){return D>Y},function(q,D,Y,he){return he.compare(D,Y)>0}),ss=bs("<=",function(q,D,Y){return D<=Y},function(q,D,Y,he){return he.compare(D,Y)<=0}),gs=bs(">=",function(q,D,Y){return D>=Y},function(q,D,Y,he){return he.compare(D,Y)>=0});class vo{constructor(D,Y,he){this.type=nr,this.locale=he,this.caseSensitive=D,this.diacriticSensitive=Y}static parse(D,Y){if(D.length!==2)return Y.error("Expected one argument.");let he=D[1];if(typeof he!="object"||Array.isArray(he))return Y.error("Collator options argument must be an object.");let ke=Y.parse(he["case-sensitive"]!==void 0&&he["case-sensitive"],1,Mt);if(!ke)return null;let Ue=Y.parse(he["diacritic-sensitive"]!==void 0&&he["diacritic-sensitive"],1,Mt);if(!Ue)return null;let Ge=null;return he.locale&&(Ge=Y.parse(he.locale,1,kt),!Ge)?null:new vo(ke,Ue,Ge)}evaluate(D){return new br(this.caseSensitive.evaluate(D),this.diacriticSensitive.evaluate(D),this.locale?this.locale.evaluate(D):null)}eachChild(D){D(this.caseSensitive),D(this.diacriticSensitive),this.locale&&D(this.locale)}outputDefined(){return!1}}class zo{constructor(D,Y,he,ke,Ue){this.type=kt,this.number=D,this.locale=Y,this.currency=he,this.minFractionDigits=ke,this.maxFractionDigits=Ue}static parse(D,Y){if(D.length!==3)return Y.error("Expected two arguments.");let he=Y.parse(D[1],1,$e);if(!he)return null;let ke=D[2];if(typeof ke!="object"||Array.isArray(ke))return Y.error("NumberFormat options argument must be an object.");let Ue=null;if(ke.locale&&(Ue=Y.parse(ke.locale,1,kt),!Ue))return null;let Ge=null;if(ke.currency&&(Ge=Y.parse(ke.currency,1,kt),!Ge))return null;let st=null;if(ke["min-fraction-digits"]&&(st=Y.parse(ke["min-fraction-digits"],1,$e),!st))return null;let bt=null;return ke["max-fraction-digits"]&&(bt=Y.parse(ke["max-fraction-digits"],1,$e),!bt)?null:new zo(he,Ue,Ge,st,bt)}evaluate(D){return new Intl.NumberFormat(this.locale?this.locale.evaluate(D):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(D):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(D):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(D):void 0}).format(this.number.evaluate(D))}eachChild(D){D(this.number),this.locale&&D(this.locale),this.currency&&D(this.currency),this.minFractionDigits&&D(this.minFractionDigits),this.maxFractionDigits&&D(this.maxFractionDigits)}outputDefined(){return!1}}class Ds{constructor(D){this.type=Lr,this.sections=D}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let he=D[1];if(!Array.isArray(he)&&typeof he=="object")return Y.error("First argument must be an image or text section.");let ke=[],Ue=!1;for(let Ge=1;Ge<=D.length-1;++Ge){let st=D[Ge];if(Ue&&typeof st=="object"&&!Array.isArray(st)){Ue=!1;let bt=null;if(st["font-scale"]&&(bt=Y.parse(st["font-scale"],1,$e),!bt))return null;let zt=null;if(st["text-font"]&&(zt=Y.parse(st["text-font"],1,Fe(kt)),!zt))return null;let Qt=null;if(st["text-color"]&&(Qt=Y.parse(st["text-color"],1,Bt),!Qt))return null;let ur=ke[ke.length-1];ur.scale=bt,ur.font=zt,ur.textColor=Qt}else{let bt=Y.parse(D[Ge],1,cr);if(!bt)return null;let zt=bt.type.kind;if(zt!=="string"&&zt!=="value"&&zt!=="null"&&zt!=="resolvedImage")return Y.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Ue=!0,ke.push({content:bt,scale:null,font:null,textColor:null})}}return new Ds(ke)}evaluate(D){return new _i(this.sections.map(Y=>{let he=Y.content.evaluate(D);return vt(he)===xr?new Zr("",he,null,null,null):new Zr(pt(he),null,Y.scale?Y.scale.evaluate(D):null,Y.font?Y.font.evaluate(D).join(","):null,Y.textColor?Y.textColor.evaluate(D):null)}))}eachChild(D){for(let Y of this.sections)D(Y.content),Y.scale&&D(Y.scale),Y.font&&D(Y.font),Y.textColor&&D(Y.textColor)}outputDefined(){return!1}}class Hs{constructor(D){this.type=xr,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error("Expected two arguments.");let he=Y.parse(D[1],1,kt);return he?new Hs(he):Y.error("No image name provided.")}evaluate(D){let Y=this.input.evaluate(D),he=$i.fromString(Y);return he&&D.availableImages&&(he.available=D.availableImages.indexOf(Y)>-1),he}eachChild(D){D(this.input)}outputDefined(){return!1}}class Zs{constructor(D){this.type=$e,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error(`Expected 1 argument, but found ${D.length-1} instead.`);let he=Y.parse(D[1],1);return he?he.type.kind!=="array"&&he.type.kind!=="string"&&he.type.kind!=="value"?Y.error(`Expected argument of type string or array, but found ${Ze(he.type)} instead.`):new Zs(he):null}evaluate(D){let Y=this.input.evaluate(D);if(typeof Y=="string")return[...Y].length;if(Array.isArray(Y))return Y.length;throw new Cr(`Expected value to be of type string or array, but found ${Ze(vt(Y))} instead.`)}eachChild(D){D(this.input)}outputDefined(){return!1}}let ps=8192;function bn(q,D){let Y=(180+q[0])/360,he=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q[1]*Math.PI/360)))/360,ke=Math.pow(2,D.z);return[Math.round(Y*ke*ps),Math.round(he*ke*ps)]}function Ra(q,D){let Y=Math.pow(2,D.z);return[(ke=(q[0]/ps+D.x)/Y,360*ke-180),(he=(q[1]/ps+D.y)/Y,360/Math.PI*Math.atan(Math.exp((180-360*he)*Math.PI/180))-90)];var he,ke}function _l(q,D){q[0]=Math.min(q[0],D[0]),q[1]=Math.min(q[1],D[1]),q[2]=Math.max(q[2],D[0]),q[3]=Math.max(q[3],D[1])}function Ys(q,D){return!(q[0]<=D[0]||q[2]>=D[2]||q[1]<=D[1]||q[3]>=D[3])}function ko(q,D,Y){let he=q[0]-D[0],ke=q[1]-D[1],Ue=q[0]-Y[0],Ge=q[1]-Y[1];return he*Ge-Ue*ke==0&&he*Ue<=0&&ke*Ge<=0}function Js(q,D,Y,he){return(ke=[he[0]-Y[0],he[1]-Y[1]])[0]*(Ue=[D[0]-q[0],D[1]-q[1]])[1]-ke[1]*Ue[0]!=0&&!(!po(q,D,Y,he)||!po(Y,he,q,D));var ke,Ue}function ks(q,D,Y){for(let he of Y)for(let ke=0;ke(ke=q)[1]!=(Ge=st[bt+1])[1]>ke[1]&&ke[0]<(Ge[0]-Ue[0])*(ke[1]-Ue[1])/(Ge[1]-Ue[1])+Ue[0]&&(he=!he)}var ke,Ue,Ge;return he}function El(q,D){for(let Y of D)if(ml(q,Y))return!0;return!1}function aa(q,D){for(let Y of q)if(!ml(Y,D))return!1;for(let Y=0;Y0&&st<0||Ge<0&&st>0}function zs(q,D,Y){let he=[];for(let ke=0;keY[2]){let ke=.5*he,Ue=q[0]-Y[0]>ke?-he:Y[0]-q[0]>ke?he:0;Ue===0&&(Ue=q[0]-Y[2]>ke?-he:Y[2]-q[0]>ke?he:0),q[0]+=Ue}_l(D,q)}function tu(q,D,Y,he){let ke=Math.pow(2,he.z)*ps,Ue=[he.x*ps,he.y*ps],Ge=[];for(let st of q)for(let bt of st){let zt=[bt.x+Ue[0],bt.y+Ue[1]];to(zt,D,Y,ke),Ge.push(zt)}return Ge}function Ju(q,D,Y,he){let ke=Math.pow(2,he.z)*ps,Ue=[he.x*ps,he.y*ps],Ge=[];for(let bt of q){let zt=[];for(let Qt of bt){let ur=[Qt.x+Ue[0],Qt.y+Ue[1]];_l(D,ur),zt.push(ur)}Ge.push(zt)}if(D[2]-D[0]<=ke/2){(st=D)[0]=st[1]=1/0,st[2]=st[3]=-1/0;for(let bt of Ge)for(let zt of bt)to(zt,D,Y,ke)}var st;return Ge}class kl{constructor(D,Y){this.type=Mt,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'within' expression requires exactly one argument, but found ${D.length-1} instead.`);if(sn(D[1])){let he=D[1];if(he.type==="FeatureCollection"){let ke=[];for(let Ue of he.features){let{type:Ge,coordinates:st}=Ue.geometry;Ge==="Polygon"&&ke.push(st),Ge==="MultiPolygon"&&ke.push(...st)}if(ke.length)return new kl(he,{type:"MultiPolygon",coordinates:ke})}else if(he.type==="Feature"){let ke=he.geometry.type;if(ke==="Polygon"||ke==="MultiPolygon")return new kl(he,he.geometry)}else if(he.type==="Polygon"||he.type==="MultiPolygon")return new kl(he,he)}return Y.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,he){let ke=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(he.type==="Polygon"){let st=zs(he.coordinates,Ue,Ge),bt=tu(Y.geometry(),ke,Ue,Ge);if(!Ys(ke,Ue))return!1;for(let zt of bt)if(!ml(zt,st))return!1}if(he.type==="MultiPolygon"){let st=hs(he.coordinates,Ue,Ge),bt=tu(Y.geometry(),ke,Ue,Ge);if(!Ys(ke,Ue))return!1;for(let zt of bt)if(!El(zt,st))return!1}return!0}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,he){let ke=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(he.type==="Polygon"){let st=zs(he.coordinates,Ue,Ge),bt=Ju(Y.geometry(),ke,Ue,Ge);if(!Ys(ke,Ue))return!1;for(let zt of bt)if(!aa(zt,st))return!1}if(he.type==="MultiPolygon"){let st=hs(he.coordinates,Ue,Ge),bt=Ju(Y.geometry(),ke,Ue,Ge);if(!Ys(ke,Ue))return!1;for(let zt of bt)if(!Ho(zt,st))return!1}return!0}(D,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Hu=class{constructor(q=[],D=(Y,he)=>Yhe?1:0){if(this.data=q,this.length=this.data.length,this.compare=D,this.length>0)for(let Y=(this.length>>1)-1;Y>=0;Y--)this._down(Y)}push(q){this.data.push(q),this._up(this.length++)}pop(){if(this.length===0)return;let q=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),q}peek(){return this.data[0]}_up(q){let{data:D,compare:Y}=this,he=D[q];for(;q>0;){let ke=q-1>>1,Ue=D[ke];if(Y(he,Ue)>=0)break;D[q]=Ue,q=ke}D[q]=he}_down(q){let{data:D,compare:Y}=this,he=this.length>>1,ke=D[q];for(;q=0)break;D[q]=D[Ue],q=Ue}D[q]=ke}};function Bl(q,D,Y,he,ke){rl(q,D,Y,he||q.length-1,ke||Gu)}function rl(q,D,Y,he,ke){for(;he>Y;){if(he-Y>600){var Ue=he-Y+1,Ge=D-Y+1,st=Math.log(Ue),bt=.5*Math.exp(2*st/3),zt=.5*Math.sqrt(st*bt*(Ue-bt)/Ue)*(Ge-Ue/2<0?-1:1);rl(q,D,Math.max(Y,Math.floor(D-Ge*bt/Ue+zt)),Math.min(he,Math.floor(D+(Ue-Ge)*bt/Ue+zt)),ke)}var Qt=q[D],ur=Y,Mr=he;for(au(q,Y,D),ke(q[he],Qt)>0&&au(q,Y,he);ur0;)Mr--}ke(q[Y],Qt)===0?au(q,Y,Mr):au(q,++Mr,he),Mr<=D&&(Y=Mr+1),D<=Mr&&(he=Mr-1)}}function au(q,D,Y){var he=q[D];q[D]=q[Y],q[Y]=he}function Gu(q,D){return qD?1:0}function Fc(q,D){if(q.length<=1)return[q];let Y=[],he,ke;for(let Ue of q){let Ge=fh(Ue);Ge!==0&&(Ue.area=Math.abs(Ge),ke===void 0&&(ke=Ge<0),ke===Ge<0?(he&&Y.push(he),he=[Ue]):he.push(Ue))}if(he&&Y.push(he),D>1)for(let Ue=0;Ue1?(zt=D[bt+1][0],Qt=D[bt+1][1]):Fr>0&&(zt+=ur/this.kx*Fr,Qt+=Mr/this.ky*Fr)),ur=this.wrap(Y[0]-zt)*this.kx,Mr=(Y[1]-Qt)*this.ky;let $r=ur*ur+Mr*Mr;$r180;)D-=360;return D}}function ru(q,D){return D[0]-q[0]}function Cl(q){return q[1]-q[0]+1}function fc(q,D){return q[1]>=q[0]&&q[1]q[1])return[null,null];let Y=Cl(q);if(D){if(Y===2)return[q,null];let ke=Math.floor(Y/2);return[[q[0],q[0]+ke],[q[0]+ke,q[1]]]}if(Y===1)return[q,null];let he=Math.floor(Y/2)-1;return[[q[0],q[0]+he],[q[0]+he+1,q[1]]]}function ol(q,D){if(!fc(D,q.length))return[1/0,1/0,-1/0,-1/0];let Y=[1/0,1/0,-1/0,-1/0];for(let he=D[0];he<=D[1];++he)_l(Y,q[he]);return Y}function Ll(q){let D=[1/0,1/0,-1/0,-1/0];for(let Y of q)for(let he of Y)_l(D,he);return D}function Ks(q){return q[0]!==-1/0&&q[1]!==-1/0&&q[2]!==1/0&&q[3]!==1/0}function fl(q,D,Y){if(!Ks(q)||!Ks(D))return NaN;let he=0,ke=0;return q[2]D[2]&&(he=q[0]-D[2]),q[1]>D[3]&&(ke=q[1]-D[3]),q[3]=he)return he;if(Ys(ke,Ue)){if(Lh(q,D))return 0}else if(Lh(D,q))return 0;let Ge=1/0;for(let st of q)for(let bt=0,zt=st.length,Qt=zt-1;bt0;){let bt=Ge.pop();if(bt[0]>=Ue)continue;let zt=bt[1],Qt=D?50:100;if(Cl(zt)<=Qt){if(!fc(zt,q.length))return NaN;if(D){let ur=ys(q,zt,Y,he);if(isNaN(ur)||ur===0)return ur;Ue=Math.min(Ue,ur)}else for(let ur=zt[0];ur<=zt[1];++ur){let Mr=jh(q[ur],Y,he);if(Ue=Math.min(Ue,Mr),Ue===0)return 0}}else{let ur=Ac(zt,D);Wo(Ge,Ue,he,q,st,ur[0]),Wo(Ge,Ue,he,q,st,ur[1])}}return Ue}function yu(q,D,Y,he,ke,Ue=1/0){let Ge=Math.min(Ue,ke.distance(q[0],Y[0]));if(Ge===0)return Ge;let st=new Hu([[0,[0,q.length-1],[0,Y.length-1]]],ru);for(;st.length>0;){let bt=st.pop();if(bt[0]>=Ge)continue;let zt=bt[1],Qt=bt[2],ur=D?50:100,Mr=he?50:100;if(Cl(zt)<=ur&&Cl(Qt)<=Mr){if(!fc(zt,q.length)&&fc(Qt,Y.length))return NaN;let Fr;if(D&&he)Fr=ec(q,zt,Y,Qt,ke),Ge=Math.min(Ge,Fr);else if(D&&!he){let $r=q.slice(zt[0],zt[1]+1);for(let vi=Qt[0];vi<=Qt[1];++vi)if(Fr=hc(Y[vi],$r,ke),Ge=Math.min(Ge,Fr),Ge===0)return Ge}else if(!D&&he){let $r=Y.slice(Qt[0],Qt[1]+1);for(let vi=zt[0];vi<=zt[1];++vi)if(Fr=hc(q[vi],$r,ke),Ge=Math.min(Ge,Fr),Ge===0)return Ge}else Fr=hl(q,zt,Y,Qt,ke),Ge=Math.min(Ge,Fr)}else{let Fr=Ac(zt,D),$r=Ac(Qt,he);ff(st,Ge,ke,q,Y,Fr[0],$r[0]),ff(st,Ge,ke,q,Y,Fr[0],$r[1]),ff(st,Ge,ke,q,Y,Fr[1],$r[0]),ff(st,Ge,ke,q,Y,Fr[1],$r[1])}}return Ge}function Uf(q){return q.type==="MultiPolygon"?q.coordinates.map(D=>({type:"Polygon",coordinates:D})):q.type==="MultiLineString"?q.coordinates.map(D=>({type:"LineString",coordinates:D})):q.type==="MultiPoint"?q.coordinates.map(D=>({type:"Point",coordinates:D})):[q]}class Bc{constructor(D,Y){this.type=$e,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'distance' expression requires exactly one argument, but found ${D.length-1} instead.`);if(sn(D[1])){let he=D[1];if(he.type==="FeatureCollection")return new Bc(he,he.features.map(ke=>Uf(ke.geometry)).flat());if(he.type==="Feature")return new Bc(he,Uf(he.geometry));if("type"in he&&"coordinates"in he)return new Bc(he,Uf(he))}return Y.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,he){let ke=Y.geometry(),Ue=ke.flat().map(bt=>Ra([bt.x,bt.y],Y.canonical));if(ke.length===0)return NaN;let Ge=new kf(Ue[0][1]),st=1/0;for(let bt of he){switch(bt.type){case"Point":st=Math.min(st,yu(Ue,!1,[bt.coordinates],!1,Ge,st));break;case"LineString":st=Math.min(st,yu(Ue,!1,bt.coordinates,!0,Ge,st));break;case"Polygon":st=Math.min(st,tc(Ue,!1,bt.coordinates,Ge,st))}if(st===0)return st}return st}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,he){let ke=Y.geometry(),Ue=ke.flat().map(bt=>Ra([bt.x,bt.y],Y.canonical));if(ke.length===0)return NaN;let Ge=new kf(Ue[0][1]),st=1/0;for(let bt of he){switch(bt.type){case"Point":st=Math.min(st,yu(Ue,!0,[bt.coordinates],!1,Ge,st));break;case"LineString":st=Math.min(st,yu(Ue,!0,bt.coordinates,!0,Ge,st));break;case"Polygon":st=Math.min(st,tc(Ue,!0,bt.coordinates,Ge,st))}if(st===0)return st}return st}(D,this.geometries);if(D.geometryType()==="Polygon")return function(Y,he){let ke=Y.geometry();if(ke.length===0||ke[0].length===0)return NaN;let Ue=Fc(ke,0).map(bt=>bt.map(zt=>zt.map(Qt=>Ra([Qt.x,Qt.y],Y.canonical)))),Ge=new kf(Ue[0][0][0][1]),st=1/0;for(let bt of he)for(let zt of Ue){switch(bt.type){case"Point":st=Math.min(st,tc([bt.coordinates],!1,zt,Ge,st));break;case"LineString":st=Math.min(st,tc(bt.coordinates,!0,zt,Ge,st));break;case"Polygon":st=Math.min(st,Us(zt,bt.coordinates,Ge,st))}if(st===0)return st}return st}(D,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let hf={"==":Xa,"!=":Bo,">":Qo,"<":Za,">=":gs,"<=":ss,array:Ar,at:ar,boolean:Ar,case:Gi,coalesce:da,collator:vo,format:Ds,image:Hs,in:gr,"index-of":ti,interpolate:Ga,"interpolate-hcl":Ga,"interpolate-lab":Ga,length:Zs,let:mi,literal:kr,match:wi,number:Ar,"number-format":zo,object:Ar,slice:Fi,step:Ii,string:Ar,"to-boolean":Br,"to-color":Br,"to-number":Br,"to-string":Br,var:Et,within:kl,distance:Bc};class Xl{constructor(D,Y,he,ke){this.name=D,this.type=Y,this._evaluate=he,this.args=ke}evaluate(D){return this._evaluate(D,this.args)}eachChild(D){this.args.forEach(D)}outputDefined(){return!1}static parse(D,Y){let he=D[0],ke=Xl.definitions[he];if(!ke)return Y.error(`Unknown expression "${he}". If you wanted a literal array, use ["literal", [...]].`,0);let Ue=Array.isArray(ke)?ke[0]:ke.type,Ge=Array.isArray(ke)?[[ke[1],ke[2]]]:ke.overloads,st=Ge.filter(([zt])=>!Array.isArray(zt)||zt.length===D.length-1),bt=null;for(let[zt,Qt]of st){bt=new ci(Y.registry,Vf,Y.path,null,Y.scope);let ur=[],Mr=!1;for(let Fr=1;Fr{return Mr=ur,Array.isArray(Mr)?`(${Mr.map(Ze).join(", ")})`:`(${Ze(Mr.type)}...)`;var Mr}).join(" | "),Qt=[];for(let ur=1;ur{Y=D?Y&&Vf(he):Y&&he instanceof kr}),!!Y&&ih(q)&&Lf(q,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function ih(q){if(q instanceof Xl&&(q.name==="get"&&q.args.length===1||q.name==="feature-state"||q.name==="has"&&q.args.length===1||q.name==="properties"||q.name==="geometry-type"||q.name==="id"||/^filter-/.test(q.name))||q instanceof kl||q instanceof Bc)return!1;let D=!0;return q.eachChild(Y=>{D&&!ih(Y)&&(D=!1)}),D}function rc(q){if(q instanceof Xl&&q.name==="feature-state")return!1;let D=!0;return q.eachChild(Y=>{D&&!rc(Y)&&(D=!1)}),D}function Lf(q,D){if(q instanceof Xl&&D.indexOf(q.name)>=0)return!1;let Y=!0;return q.eachChild(he=>{Y&&!Lf(he,D)&&(Y=!1)}),Y}function Oc(q){return{result:"success",value:q}}function Qc(q){return{result:"error",value:q}}function Pu(q){return q["property-type"]==="data-driven"||q["property-type"]==="cross-faded-data-driven"}function _f(q){return!!q.expression&&q.expression.parameters.indexOf("zoom")>-1}function Nc(q){return!!q.expression&&q.expression.interpolated}function Qs(q){return q instanceof Number?"number":q instanceof String?"string":q instanceof Boolean?"boolean":Array.isArray(q)?"array":q===null?"null":typeof q}function qf(q){return typeof q=="object"&&q!==null&&!Array.isArray(q)}function Ph(q){return q}function nh(q,D){let Y=D.type==="color",he=q.stops&&typeof q.stops[0][0]=="object",ke=he||!(he||q.property!==void 0),Ue=q.type||(Nc(D)?"exponential":"interval");if(Y||D.type==="padding"){let Qt=Y?Ut.parse:Yr.parse;(q=ue({},q)).stops&&(q.stops=q.stops.map(ur=>[ur[0],Qt(ur[1])])),q.default=Qt(q.default?q.default:D.default)}if(q.colorSpace&&(Ge=q.colorSpace)!=="rgb"&&Ge!=="hcl"&&Ge!=="lab")throw new Error(`Unknown color space: "${q.colorSpace}"`);var Ge;let st,bt,zt;if(Ue==="exponential")st=ah;else if(Ue==="interval")st=Iu;else if(Ue==="categorical"){st=hh,bt=Object.create(null);for(let Qt of q.stops)bt[Qt[0]]=Qt[1];zt=typeof q.stops[0][0]}else{if(Ue!=="identity")throw new Error(`Unknown function type "${Ue}"`);st=cu}if(he){let Qt={},ur=[];for(let $r=0;$r$r[0]),evaluate:({zoom:$r},vi)=>ah({stops:Mr,base:q.base},D,$r).evaluate($r,vi)}}if(ke){let Qt=Ue==="exponential"?{name:"exponential",base:q.base!==void 0?q.base:1}:null;return{kind:"camera",interpolationType:Qt,interpolationFactor:Ga.interpolationFactor.bind(void 0,Qt),zoomStops:q.stops.map(ur=>ur[0]),evaluate:({zoom:ur})=>st(q,D,ur,bt,zt)}}return{kind:"source",evaluate(Qt,ur){let Mr=ur&&ur.properties?ur.properties[q.property]:void 0;return Mr===void 0?df(q.default,D.default):st(q,D,Mr,bt,zt)}}}function df(q,D,Y){return q!==void 0?q:D!==void 0?D:Y!==void 0?Y:void 0}function hh(q,D,Y,he,ke){return df(typeof Y===ke?he[Y]:void 0,q.default,D.default)}function Iu(q,D,Y){if(Qs(Y)!=="number")return df(q.default,D.default);let he=q.stops.length;if(he===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[he-1][0])return q.stops[he-1][1];let ke=xi(q.stops.map(Ue=>Ue[0]),Y);return q.stops[ke][1]}function ah(q,D,Y){let he=q.base!==void 0?q.base:1;if(Qs(Y)!=="number")return df(q.default,D.default);let ke=q.stops.length;if(ke===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[ke-1][0])return q.stops[ke-1][1];let Ue=xi(q.stops.map(Qt=>Qt[0]),Y),Ge=function(Qt,ur,Mr,Fr){let $r=Fr-Mr,vi=Qt-Mr;return $r===0?0:ur===1?vi/$r:(Math.pow(ur,vi)-1)/(Math.pow(ur,$r)-1)}(Y,he,q.stops[Ue][0],q.stops[Ue+1][0]),st=q.stops[Ue][1],bt=q.stops[Ue+1][1],zt=yo[D.type]||Ph;return typeof st.evaluate=="function"?{evaluate(...Qt){let ur=st.evaluate.apply(void 0,Qt),Mr=bt.evaluate.apply(void 0,Qt);if(ur!==void 0&&Mr!==void 0)return zt(ur,Mr,Ge,q.colorSpace)}}:zt(st,bt,Ge,q.colorSpace)}function cu(q,D,Y){switch(D.type){case"color":Y=Ut.parse(Y);break;case"formatted":Y=_i.fromString(Y.toString());break;case"resolvedImage":Y=$i.fromString(Y.toString());break;case"padding":Y=Yr.parse(Y);break;default:Qs(Y)===D.type||D.type==="enum"&&D.values[Y]||(Y=void 0)}return df(Y,q.default,D.default)}Xl.register(hf,{error:[{kind:"error"},[kt],(q,[D])=>{throw new Cr(D.evaluate(q))}],typeof:[kt,[cr],(q,[D])=>Ze(vt(D.evaluate(q)))],"to-rgba":[Fe($e,4),[Bt],(q,[D])=>{let[Y,he,ke,Ue]=D.evaluate(q).rgb;return[255*Y,255*he,255*ke,Ue]}],rgb:[Bt,[$e,$e,$e],rh],rgba:[Bt,[$e,$e,$e,$e],rh],has:{type:Mt,overloads:[[[kt],(q,[D])=>jf(D.evaluate(q),q.properties())],[[kt,jt],(q,[D,Y])=>jf(D.evaluate(q),Y.evaluate(q))]]},get:{type:cr,overloads:[[[kt],(q,[D])=>Cf(D.evaluate(q),q.properties())],[[kt,jt],(q,[D,Y])=>Cf(D.evaluate(q),Y.evaluate(q))]]},"feature-state":[cr,[kt],(q,[D])=>Cf(D.evaluate(q),q.featureState||{})],properties:[jt,[],q=>q.properties()],"geometry-type":[kt,[],q=>q.geometryType()],id:[cr,[],q=>q.id()],zoom:[$e,[],q=>q.globals.zoom],"heatmap-density":[$e,[],q=>q.globals.heatmapDensity||0],"line-progress":[$e,[],q=>q.globals.lineProgress||0],accumulated:[cr,[],q=>q.globals.accumulated===void 0?null:q.globals.accumulated],"+":[$e,Jc($e),(q,D)=>{let Y=0;for(let he of D)Y+=he.evaluate(q);return Y}],"*":[$e,Jc($e),(q,D)=>{let Y=1;for(let he of D)Y*=he.evaluate(q);return Y}],"-":{type:$e,overloads:[[[$e,$e],(q,[D,Y])=>D.evaluate(q)-Y.evaluate(q)],[[$e],(q,[D])=>-D.evaluate(q)]]},"/":[$e,[$e,$e],(q,[D,Y])=>D.evaluate(q)/Y.evaluate(q)],"%":[$e,[$e,$e],(q,[D,Y])=>D.evaluate(q)%Y.evaluate(q)],ln2:[$e,[],()=>Math.LN2],pi:[$e,[],()=>Math.PI],e:[$e,[],()=>Math.E],"^":[$e,[$e,$e],(q,[D,Y])=>Math.pow(D.evaluate(q),Y.evaluate(q))],sqrt:[$e,[$e],(q,[D])=>Math.sqrt(D.evaluate(q))],log10:[$e,[$e],(q,[D])=>Math.log(D.evaluate(q))/Math.LN10],ln:[$e,[$e],(q,[D])=>Math.log(D.evaluate(q))],log2:[$e,[$e],(q,[D])=>Math.log(D.evaluate(q))/Math.LN2],sin:[$e,[$e],(q,[D])=>Math.sin(D.evaluate(q))],cos:[$e,[$e],(q,[D])=>Math.cos(D.evaluate(q))],tan:[$e,[$e],(q,[D])=>Math.tan(D.evaluate(q))],asin:[$e,[$e],(q,[D])=>Math.asin(D.evaluate(q))],acos:[$e,[$e],(q,[D])=>Math.acos(D.evaluate(q))],atan:[$e,[$e],(q,[D])=>Math.atan(D.evaluate(q))],min:[$e,Jc($e),(q,D)=>Math.min(...D.map(Y=>Y.evaluate(q)))],max:[$e,Jc($e),(q,D)=>Math.max(...D.map(Y=>Y.evaluate(q)))],abs:[$e,[$e],(q,[D])=>Math.abs(D.evaluate(q))],round:[$e,[$e],(q,[D])=>{let Y=D.evaluate(q);return Y<0?-Math.round(-Y):Math.round(Y)}],floor:[$e,[$e],(q,[D])=>Math.floor(D.evaluate(q))],ceil:[$e,[$e],(q,[D])=>Math.ceil(D.evaluate(q))],"filter-==":[Mt,[kt,cr],(q,[D,Y])=>q.properties()[D.value]===Y.value],"filter-id-==":[Mt,[cr],(q,[D])=>q.id()===D.value],"filter-type-==":[Mt,[kt],(q,[D])=>q.geometryType()===D.value],"filter-<":[Mt,[kt,cr],(q,[D,Y])=>{let he=q.properties()[D.value],ke=Y.value;return typeof he==typeof ke&&he{let Y=q.id(),he=D.value;return typeof Y==typeof he&&Y":[Mt,[kt,cr],(q,[D,Y])=>{let he=q.properties()[D.value],ke=Y.value;return typeof he==typeof ke&&he>ke}],"filter-id->":[Mt,[cr],(q,[D])=>{let Y=q.id(),he=D.value;return typeof Y==typeof he&&Y>he}],"filter-<=":[Mt,[kt,cr],(q,[D,Y])=>{let he=q.properties()[D.value],ke=Y.value;return typeof he==typeof ke&&he<=ke}],"filter-id-<=":[Mt,[cr],(q,[D])=>{let Y=q.id(),he=D.value;return typeof Y==typeof he&&Y<=he}],"filter->=":[Mt,[kt,cr],(q,[D,Y])=>{let he=q.properties()[D.value],ke=Y.value;return typeof he==typeof ke&&he>=ke}],"filter-id->=":[Mt,[cr],(q,[D])=>{let Y=q.id(),he=D.value;return typeof Y==typeof he&&Y>=he}],"filter-has":[Mt,[cr],(q,[D])=>D.value in q.properties()],"filter-has-id":[Mt,[],q=>q.id()!==null&&q.id()!==void 0],"filter-type-in":[Mt,[Fe(kt)],(q,[D])=>D.value.indexOf(q.geometryType())>=0],"filter-id-in":[Mt,[Fe(cr)],(q,[D])=>D.value.indexOf(q.id())>=0],"filter-in-small":[Mt,[kt,Fe(cr)],(q,[D,Y])=>Y.value.indexOf(q.properties()[D.value])>=0],"filter-in-large":[Mt,[kt,Fe(cr)],(q,[D,Y])=>function(he,ke,Ue,Ge){for(;Ue<=Ge;){let st=Ue+Ge>>1;if(ke[st]===he)return!0;ke[st]>he?Ge=st-1:Ue=st+1}return!1}(q.properties()[D.value],Y.value,0,Y.value.length-1)],all:{type:Mt,overloads:[[[Mt,Mt],(q,[D,Y])=>D.evaluate(q)&&Y.evaluate(q)],[Jc(Mt),(q,D)=>{for(let Y of D)if(!Y.evaluate(q))return!1;return!0}]]},any:{type:Mt,overloads:[[[Mt,Mt],(q,[D,Y])=>D.evaluate(q)||Y.evaluate(q)],[Jc(Mt),(q,D)=>{for(let Y of D)if(Y.evaluate(q))return!0;return!1}]]},"!":[Mt,[Mt],(q,[D])=>!D.evaluate(q)],"is-supported-script":[Mt,[kt],(q,[D])=>{let Y=q.globals&&q.globals.isSupportedScript;return!Y||Y(D.evaluate(q))}],upcase:[kt,[kt],(q,[D])=>D.evaluate(q).toUpperCase()],downcase:[kt,[kt],(q,[D])=>D.evaluate(q).toLowerCase()],concat:[kt,Jc(cr),(q,D)=>D.map(Y=>pt(Y.evaluate(q))).join("")],"resolved-locale":[kt,[nr],(q,[D])=>D.evaluate(q).resolvedLocale()]});class Ru{constructor(D,Y){var he;this.expression=D,this._warningHistory={},this._evaluator=new Qr,this._defaultValue=Y?(he=Y).type==="color"&&qf(he.default)?new Ut(0,0,0,0):he.type==="color"?Ut.parse(he.default)||null:he.type==="padding"?Yr.parse(he.default)||null:he.type==="variableAnchorOffsetCollection"?qi.parse(he.default)||null:he.default===void 0?null:he.default:null,this._enumValues=Y&&Y.type==="enum"?Y.values:null}evaluateWithoutErrorHandling(D,Y,he,ke,Ue,Ge){return this._evaluator.globals=D,this._evaluator.feature=Y,this._evaluator.featureState=he,this._evaluator.canonical=ke,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge,this.expression.evaluate(this._evaluator)}evaluate(D,Y,he,ke,Ue,Ge){this._evaluator.globals=D,this._evaluator.feature=Y||null,this._evaluator.featureState=he||null,this._evaluator.canonical=ke,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge||null;try{let st=this.expression.evaluate(this._evaluator);if(st==null||typeof st=="number"&&st!=st)return this._defaultValue;if(this._enumValues&&!(st in this._enumValues))throw new Cr(`Expected value to be one of ${Object.keys(this._enumValues).map(bt=>JSON.stringify(bt)).join(", ")}, but found ${JSON.stringify(st)} instead.`);return st}catch(st){return this._warningHistory[st.message]||(this._warningHistory[st.message]=!0,typeof console<"u"&&console.warn(st.message)),this._defaultValue}}}function Mc(q){return Array.isArray(q)&&q.length>0&&typeof q[0]=="string"&&q[0]in hf}function Ol(q,D){let Y=new ci(hf,Vf,[],D?function(ke){let Ue={color:Bt,string:kt,number:$e,enum:kt,boolean:Mt,formatted:Lr,padding:mr,resolvedImage:xr,variableAnchorOffsetCollection:mt};return ke.type==="array"?Fe(Ue[ke.value]||cr,ke.length):Ue[ke.type]}(D):void 0),he=Y.parse(q,void 0,void 0,void 0,D&&D.type==="string"?{typeAnnotation:"coerce"}:void 0);return he?Oc(new Ru(he,D)):Qc(Y.errors)}class Uc{constructor(D,Y){this.kind=D,this._styleExpression=Y,this.isStateDependent=D!=="constant"&&!rc(Y.expression)}evaluateWithoutErrorHandling(D,Y,he,ke,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,he,ke,Ue,Ge)}evaluate(D,Y,he,ke,Ue,Ge){return this._styleExpression.evaluate(D,Y,he,ke,Ue,Ge)}}class ic{constructor(D,Y,he,ke){this.kind=D,this.zoomStops=he,this._styleExpression=Y,this.isStateDependent=D!=="camera"&&!rc(Y.expression),this.interpolationType=ke}evaluateWithoutErrorHandling(D,Y,he,ke,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,he,ke,Ue,Ge)}evaluate(D,Y,he,ke,Ue,Ge){return this._styleExpression.evaluate(D,Y,he,ke,Ue,Ge)}interpolationFactor(D,Y,he){return this.interpolationType?Ga.interpolationFactor(this.interpolationType,D,Y,he):0}}function wu(q,D){let Y=Ol(q,D);if(Y.result==="error")return Y;let he=Y.value.expression,ke=ih(he);if(!ke&&!Pu(D))return Qc([new ze("","data expressions not supported")]);let Ue=Lf(he,["zoom"]);if(!Ue&&!_f(D))return Qc([new ze("","zoom expressions not supported")]);let Ge=oh(he);return Ge||Ue?Ge instanceof ze?Qc([Ge]):Ge instanceof Ga&&!Nc(D)?Qc([new ze("",'"interpolate" expressions cannot be used with this property')]):Oc(Ge?new ic(ke?"camera":"composite",Y.value,Ge.labels,Ge instanceof Ga?Ge.interpolation:void 0):new Uc(ke?"constant":"source",Y.value)):Qc([new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Pl{constructor(D,Y){this._parameters=D,this._specification=Y,ue(this,nh(this._parameters,this._specification))}static deserialize(D){return new Pl(D._parameters,D._specification)}static serialize(D){return{_parameters:D._parameters,_specification:D._specification}}}function oh(q){let D=null;if(q instanceof mi)D=oh(q.result);else if(q instanceof da){for(let Y of q.args)if(D=oh(Y),D)break}else(q instanceof Ii||q instanceof Ga)&&q.input instanceof Xl&&q.input.name==="zoom"&&(D=q);return D instanceof ze||q.eachChild(Y=>{let he=oh(Y);he instanceof ze?D=he:!D&&he?D=new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):D&&he&&D!==he&&(D=new ze("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),D}function dh(q){if(q===!0||q===!1)return!0;if(!Array.isArray(q)||q.length===0)return!1;switch(q[0]){case"has":return q.length>=2&&q[1]!=="$id"&&q[1]!=="$type";case"in":return q.length>=3&&(typeof q[1]!="string"||Array.isArray(q[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return q.length!==3||Array.isArray(q[1])||Array.isArray(q[2]);case"any":case"all":for(let D of q.slice(1))if(!dh(D)&&typeof D!="boolean")return!1;return!0;default:return!0}}let Wu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Sc(q){if(q==null)return{filter:()=>!0,needGeometry:!1};dh(q)||(q=vf(q));let D=Ol(q,Wu);if(D.result==="error")throw new Error(D.value.map(Y=>`${Y.key}: ${Y.message}`).join(", "));return{filter:(Y,he,ke)=>D.value.evaluate(Y,he,{},ke),needGeometry:Vh(q)}}function dc(q,D){return qD?1:0}function Vh(q){if(!Array.isArray(q))return!1;if(q[0]==="within"||q[0]==="distance")return!0;for(let D=1;D"||D==="<="||D===">="?xf(q[1],q[2],D):D==="any"?(Y=q.slice(1),["any"].concat(Y.map(vf))):D==="all"?["all"].concat(q.slice(1).map(vf)):D==="none"?["all"].concat(q.slice(1).map(vf).map(fu)):D==="in"?Du(q[1],q.slice(2)):D==="!in"?fu(Du(q[1],q.slice(2))):D==="has"?Pf(q[1]):D!=="!has"||fu(Pf(q[1]));var Y}function xf(q,D,Y){switch(q){case"$type":return[`filter-type-${Y}`,D];case"$id":return[`filter-id-${Y}`,D];default:return[`filter-${Y}`,q,D]}}function Du(q,D){if(D.length===0)return!1;switch(q){case"$type":return["filter-type-in",["literal",D]];case"$id":return["filter-id-in",["literal",D]];default:return D.length>200&&!D.some(Y=>typeof Y!=typeof D[0])?["filter-in-large",q,["literal",D.sort(dc)]]:["filter-in-small",q,["literal",D]]}}function Pf(q){switch(q){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",q]}}function fu(q){return["!",q]}function ef(q){let D=typeof q;if(D==="number"||D==="boolean"||D==="string"||q==null)return JSON.stringify(q);if(Array.isArray(q)){let ke="[";for(let Ue of q)ke+=`${ef(Ue)},`;return`${ke}]`}let Y=Object.keys(q).sort(),he="{";for(let ke=0;kehe.maximum?[new pe(D,Y,`${Y} is greater than the maximum value ${he.maximum}`)]:[]}function pf(q){let D=q.valueSpec,Y=yl(q.value.type),he,ke,Ue,Ge={},st=Y!=="categorical"&&q.value.property===void 0,bt=!st,zt=Qs(q.value.stops)==="array"&&Qs(q.value.stops[0])==="array"&&Qs(q.value.stops[0][0])==="object",Qt=Au({key:q.key,value:q.value,valueSpec:q.styleSpec.function,validateSpec:q.validateSpec,style:q.style,styleSpec:q.styleSpec,objectElementValidators:{stops:function(Fr){if(Y==="identity")return[new pe(Fr.key,Fr.value,'identity function may not have a "stops" property')];let $r=[],vi=Fr.value;return $r=$r.concat(Hf({key:Fr.key,value:vi,valueSpec:Fr.valueSpec,validateSpec:Fr.validateSpec,style:Fr.style,styleSpec:Fr.styleSpec,arrayElementValidator:ur})),Qs(vi)==="array"&&vi.length===0&&$r.push(new pe(Fr.key,vi,"array must have at least one stop")),$r},default:function(Fr){return Fr.validateSpec({key:Fr.key,value:Fr.value,valueSpec:D,validateSpec:Fr.validateSpec,style:Fr.style,styleSpec:Fr.styleSpec})}}});return Y==="identity"&&st&&Qt.push(new pe(q.key,q.value,'missing required property "property"')),Y==="identity"||q.value.stops||Qt.push(new pe(q.key,q.value,'missing required property "stops"')),Y==="exponential"&&q.valueSpec.expression&&!Nc(q.valueSpec)&&Qt.push(new pe(q.key,q.value,"exponential functions not supported")),q.styleSpec.$version>=8&&(bt&&!Pu(q.valueSpec)?Qt.push(new pe(q.key,q.value,"property functions not supported")):st&&!_f(q.valueSpec)&&Qt.push(new pe(q.key,q.value,"zoom functions not supported"))),Y!=="categorical"&&!zt||q.value.property!==void 0||Qt.push(new pe(q.key,q.value,'"property" property is required')),Qt;function ur(Fr){let $r=[],vi=Fr.value,Vi=Fr.key;if(Qs(vi)!=="array")return[new pe(Vi,vi,`array expected, ${Qs(vi)} found`)];if(vi.length!==2)return[new pe(Vi,vi,`array length 2 expected, length ${vi.length} found`)];if(zt){if(Qs(vi[0])!=="object")return[new pe(Vi,vi,`object expected, ${Qs(vi[0])} found`)];if(vi[0].zoom===void 0)return[new pe(Vi,vi,"object stop key must have zoom")];if(vi[0].value===void 0)return[new pe(Vi,vi,"object stop key must have value")];if(Ue&&Ue>yl(vi[0].zoom))return[new pe(Vi,vi[0].zoom,"stop zoom values must appear in ascending order")];yl(vi[0].zoom)!==Ue&&(Ue=yl(vi[0].zoom),ke=void 0,Ge={}),$r=$r.concat(Au({key:`${Vi}[0]`,value:vi[0],valueSpec:{zoom:{}},validateSpec:Fr.validateSpec,style:Fr.style,styleSpec:Fr.styleSpec,objectElementValidators:{zoom:dl,value:Mr}}))}else $r=$r.concat(Mr({key:`${Vi}[0]`,value:vi[0],valueSpec:{},validateSpec:Fr.validateSpec,style:Fr.style,styleSpec:Fr.styleSpec},vi));return Mc(Tu(vi[1]))?$r.concat([new pe(`${Vi}[1]`,vi[1],"expressions are not allowed in function stops.")]):$r.concat(Fr.validateSpec({key:`${Vi}[1]`,value:vi[1],valueSpec:D,validateSpec:Fr.validateSpec,style:Fr.style,styleSpec:Fr.styleSpec}))}function Mr(Fr,$r){let vi=Qs(Fr.value),Vi=yl(Fr.value),Yi=Fr.value!==null?Fr.value:$r;if(he){if(vi!==he)return[new pe(Fr.key,Yi,`${vi} stop domain type must match previous stop domain type ${he}`)]}else he=vi;if(vi!=="number"&&vi!=="string"&&vi!=="boolean")return[new pe(Fr.key,Yi,"stop domain value must be a number, string, or boolean")];if(vi!=="number"&&Y!=="categorical"){let Ln=`number expected, ${vi} found`;return Pu(D)&&Y===void 0&&(Ln+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new pe(Fr.key,Yi,Ln)]}return Y!=="categorical"||vi!=="number"||isFinite(Vi)&&Math.floor(Vi)===Vi?Y!=="categorical"&&vi==="number"&&ke!==void 0&&Vinew pe(`${q.key}${he.key}`,q.value,he.message));let Y=D.value.expression||D.value._styleExpression.expression;if(q.expressionContext==="property"&&q.propertyKey==="text-font"&&!Y.outputDefined())return[new pe(q.key,q.value,`Invalid data expression for "${q.propertyKey}". Output values must be contained as literals within the expression.`)];if(q.expressionContext==="property"&&q.propertyType==="layout"&&!rc(Y))return[new pe(q.key,q.value,'"feature-state" data expressions are not supported with layout properties.')];if(q.expressionContext==="filter"&&!rc(Y))return[new pe(q.key,q.value,'"feature-state" data expressions are not supported with filters.')];if(q.expressionContext&&q.expressionContext.indexOf("cluster")===0){if(!Lf(Y,["zoom","feature-state"]))return[new pe(q.key,q.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(q.expressionContext==="cluster-initial"&&!ih(Y))return[new pe(q.key,q.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Xu(q){let D=q.key,Y=q.value,he=q.valueSpec,ke=[];return Array.isArray(he.values)?he.values.indexOf(yl(Y))===-1&&ke.push(new pe(D,Y,`expected one of [${he.values.join(", ")}], ${JSON.stringify(Y)} found`)):Object.keys(he.values).indexOf(yl(Y))===-1&&ke.push(new pe(D,Y,`expected one of [${Object.keys(he.values).join(", ")}], ${JSON.stringify(Y)} found`)),ke}function bf(q){return dh(Tu(q.value))?Ec(ue({},q,{expressionContext:"filter",valueSpec:{value:"boolean"}})):vc(q)}function vc(q){let D=q.value,Y=q.key;if(Qs(D)!=="array")return[new pe(Y,D,`array expected, ${Qs(D)} found`)];let he=q.styleSpec,ke,Ue=[];if(D.length<1)return[new pe(Y,D,"filter array must have at least 1 element")];switch(Ue=Ue.concat(Xu({key:`${Y}[0]`,value:D[0],valueSpec:he.filter_operator,style:q.style,styleSpec:q.styleSpec})),yl(D[0])){case"<":case"<=":case">":case">=":D.length>=2&&yl(D[1])==="$type"&&Ue.push(new pe(Y,D,`"$type" cannot be use with operator "${D[0]}"`));case"==":case"!=":D.length!==3&&Ue.push(new pe(Y,D,`filter array for operator "${D[0]}" must have 3 elements`));case"in":case"!in":D.length>=2&&(ke=Qs(D[1]),ke!=="string"&&Ue.push(new pe(`${Y}[1]`,D[1],`string expected, ${ke} found`)));for(let Ge=2;Ge{zt in Y&&D.push(new pe(he,Y[zt],`"${zt}" is prohibited for ref layers`))}),ke.layers.forEach(zt=>{yl(zt.id)===st&&(bt=zt)}),bt?bt.ref?D.push(new pe(he,Y.ref,"ref cannot reference another ref layer")):Ge=yl(bt.type):D.push(new pe(he,Y.ref,`ref layer "${st}" not found`))}else if(Ge!=="background")if(Y.source){let bt=ke.sources&&ke.sources[Y.source],zt=bt&&yl(bt.type);bt?zt==="vector"&&Ge==="raster"?D.push(new pe(he,Y.source,`layer "${Y.id}" requires a raster source`)):zt!=="raster-dem"&&Ge==="hillshade"?D.push(new pe(he,Y.source,`layer "${Y.id}" requires a raster-dem source`)):zt==="raster"&&Ge!=="raster"?D.push(new pe(he,Y.source,`layer "${Y.id}" requires a vector source`)):zt!=="vector"||Y["source-layer"]?zt==="raster-dem"&&Ge!=="hillshade"?D.push(new pe(he,Y.source,"raster-dem source can only be used with layer type 'hillshade'.")):Ge!=="line"||!Y.paint||!Y.paint["line-gradient"]||zt==="geojson"&&bt.lineMetrics||D.push(new pe(he,Y,`layer "${Y.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):D.push(new pe(he,Y,`layer "${Y.id}" must specify a "source-layer"`)):D.push(new pe(he,Y.source,`source "${Y.source}" not found`))}else D.push(new pe(he,Y,'missing required property "source"'));return D=D.concat(Au({key:he,value:Y,valueSpec:Ue.layer,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,objectElementValidators:{"*":()=>[],type:()=>q.validateSpec({key:`${he}.type`,value:Y.type,valueSpec:Ue.layer.type,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,object:Y,objectKey:"type"}),filter:bf,layout:bt=>Au({layer:Y,key:bt.key,value:bt.value,style:bt.style,styleSpec:bt.styleSpec,validateSpec:bt.validateSpec,objectElementValidators:{"*":zt=>Jl(ue({layerType:Ge},zt))}}),paint:bt=>Au({layer:Y,key:bt.key,value:bt.value,style:bt.style,styleSpec:bt.styleSpec,validateSpec:bt.validateSpec,objectElementValidators:{"*":zt=>Gf(ue({layerType:Ge},zt))}})}})),D}function Zu(q){let D=q.value,Y=q.key,he=Qs(D);return he!=="string"?[new pe(Y,D,`string expected, ${he} found`)]:[]}let kc={promoteId:function({key:q,value:D}){if(Qs(D)==="string")return Zu({key:q,value:D});{let Y=[];for(let he in D)Y.push(...Zu({key:`${q}.${he}`,value:D[he]}));return Y}}};function pc(q){let D=q.value,Y=q.key,he=q.styleSpec,ke=q.style,Ue=q.validateSpec;if(!D.type)return[new pe(Y,D,'"type" is required')];let Ge=yl(D.type),st;switch(Ge){case"vector":case"raster":return st=Au({key:Y,value:D,valueSpec:he[`source_${Ge.replace("-","_")}`],style:q.style,styleSpec:he,objectElementValidators:kc,validateSpec:Ue}),st;case"raster-dem":return st=function(bt){var zt;let Qt=(zt=bt.sourceName)!==null&&zt!==void 0?zt:"",ur=bt.value,Mr=bt.styleSpec,Fr=Mr.source_raster_dem,$r=bt.style,vi=[],Vi=Qs(ur);if(ur===void 0)return vi;if(Vi!=="object")return vi.push(new pe("source_raster_dem",ur,`object expected, ${Vi} found`)),vi;let Yi=yl(ur.encoding)==="custom",Ln=["redFactor","greenFactor","blueFactor","baseShift"],un=bt.value.encoding?`"${bt.value.encoding}"`:"Default";for(let Tn in ur)!Yi&&Ln.includes(Tn)?vi.push(new pe(Tn,ur[Tn],`In "${Qt}": "${Tn}" is only valid when "encoding" is set to "custom". ${un} encoding found`)):Fr[Tn]?vi=vi.concat(bt.validateSpec({key:Tn,value:ur[Tn],valueSpec:Fr[Tn],validateSpec:bt.validateSpec,style:$r,styleSpec:Mr})):vi.push(new pe(Tn,ur[Tn],`unknown property "${Tn}"`));return vi}({sourceName:Y,value:D,style:q.style,styleSpec:he,validateSpec:Ue}),st;case"geojson":if(st=Au({key:Y,value:D,valueSpec:he.source_geojson,style:ke,styleSpec:he,validateSpec:Ue,objectElementValidators:kc}),D.cluster)for(let bt in D.clusterProperties){let[zt,Qt]=D.clusterProperties[bt],ur=typeof zt=="string"?[zt,["accumulated"],["get",bt]]:zt;st.push(...Ec({key:`${Y}.${bt}.map`,value:Qt,validateSpec:Ue,expressionContext:"cluster-map"})),st.push(...Ec({key:`${Y}.${bt}.reduce`,value:ur,validateSpec:Ue,expressionContext:"cluster-reduce"}))}return st;case"video":return Au({key:Y,value:D,valueSpec:he.source_video,style:ke,validateSpec:Ue,styleSpec:he});case"image":return Au({key:Y,value:D,valueSpec:he.source_image,style:ke,validateSpec:Ue,styleSpec:he});case"canvas":return[new pe(Y,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Xu({key:`${Y}.type`,value:D.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:ke,validateSpec:Ue,styleSpec:he})}}function Nl(q){let D=q.value,Y=q.styleSpec,he=Y.light,ke=q.style,Ue=[],Ge=Qs(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new pe("light",D,`object expected, ${Ge} found`)]),Ue;for(let st in D){let bt=st.match(/^(.*)-transition$/);Ue=Ue.concat(bt&&he[bt[1]]&&he[bt[1]].transition?q.validateSpec({key:st,value:D[st],valueSpec:Y.transition,validateSpec:q.validateSpec,style:ke,styleSpec:Y}):he[st]?q.validateSpec({key:st,value:D[st],valueSpec:he[st],validateSpec:q.validateSpec,style:ke,styleSpec:Y}):[new pe(st,D[st],`unknown property "${st}"`)])}return Ue}function hu(q){let D=q.value,Y=q.styleSpec,he=Y.sky,ke=q.style,Ue=Qs(D);if(D===void 0)return[];if(Ue!=="object")return[new pe("sky",D,`object expected, ${Ue} found`)];let Ge=[];for(let st in D)Ge=Ge.concat(he[st]?q.validateSpec({key:st,value:D[st],valueSpec:he[st],style:ke,styleSpec:Y}):[new pe(st,D[st],`unknown property "${st}"`)]);return Ge}function mc(q){let D=q.value,Y=q.styleSpec,he=Y.terrain,ke=q.style,Ue=[],Ge=Qs(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new pe("terrain",D,`object expected, ${Ge} found`)]),Ue;for(let st in D)Ue=Ue.concat(he[st]?q.validateSpec({key:st,value:D[st],valueSpec:he[st],validateSpec:q.validateSpec,style:ke,styleSpec:Y}):[new pe(st,D[st],`unknown property "${st}"`)]);return Ue}function jc(q){let D=[],Y=q.value,he=q.key;if(Array.isArray(Y)){let ke=[],Ue=[];for(let Ge in Y)Y[Ge].id&&ke.includes(Y[Ge].id)&&D.push(new pe(he,Y,`all the sprites' ids must be unique, but ${Y[Ge].id} is duplicated`)),ke.push(Y[Ge].id),Y[Ge].url&&Ue.includes(Y[Ge].url)&&D.push(new pe(he,Y,`all the sprites' URLs must be unique, but ${Y[Ge].url} is duplicated`)),Ue.push(Y[Ge].url),D=D.concat(Au({key:`${he}[${Ge}]`,value:Y[Ge],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:q.validateSpec}));return D}return Zu({key:he,value:Y})}let nc={"*":()=>[],array:Hf,boolean:function(q){let D=q.value,Y=q.key,he=Qs(D);return he!=="boolean"?[new pe(Y,D,`boolean expected, ${he} found`)]:[]},number:dl,color:function(q){let D=q.key,Y=q.value,he=Qs(Y);return he!=="string"?[new pe(D,Y,`color expected, ${he} found`)]:Ut.parse(String(Y))?[]:[new pe(D,Y,`color expected, "${Y}" found`)]},constants:If,enum:Xu,filter:bf,function:pf,layer:Wf,object:Au,source:pc,light:Nl,sky:hu,terrain:mc,projection:function(q){let D=q.value,Y=q.styleSpec,he=Y.projection,ke=q.style,Ue=Qs(D);if(D===void 0)return[];if(Ue!=="object")return[new pe("projection",D,`object expected, ${Ue} found`)];let Ge=[];for(let st in D)Ge=Ge.concat(he[st]?q.validateSpec({key:st,value:D[st],valueSpec:he[st],style:ke,styleSpec:Y}):[new pe(st,D[st],`unknown property "${st}"`)]);return Ge},string:Zu,formatted:function(q){return Zu(q).length===0?[]:Ec(q)},resolvedImage:function(q){return Zu(q).length===0?[]:Ec(q)},padding:function(q){let D=q.key,Y=q.value;if(Qs(Y)==="array"){if(Y.length<1||Y.length>4)return[new pe(D,Y,`padding requires 1 to 4 values; ${Y.length} values found`)];let he={type:"number"},ke=[];for(let Ue=0;Ue[]}})),q.constants&&(Y=Y.concat(If({key:"constants",value:q.constants,style:q,styleSpec:D,validateSpec:rf}))),qr(Y)}function Kr(q){return function(D){return q(pi(Ei({},D),{validateSpec:rf}))}}function qr(q){return[].concat(q).sort((D,Y)=>D.line-Y.line)}function ki(q){return function(...D){return qr(q.apply(this,D))}}hr.source=ki(Kr(pc)),hr.sprite=ki(Kr(jc)),hr.glyphs=ki(Kr(Zt)),hr.light=ki(Kr(Nl)),hr.sky=ki(Kr(hu)),hr.terrain=ki(Kr(mc)),hr.layer=ki(Kr(Wf)),hr.filter=ki(Kr(bf)),hr.paintProperty=ki(Kr(Gf)),hr.layoutProperty=ki(Kr(Jl));let an=hr,pn=an.light,Pn=an.sky,Vn=an.paintProperty,ra=an.layoutProperty;function yn(q,D){let Y=!1;if(D&&D.length)for(let he of D)q.fire(new j(new Error(he.message))),Y=!0;return Y}class In{constructor(D,Y,he){let ke=this.cells=[];if(D instanceof ArrayBuffer){this.arrayBuffer=D;let Ge=new Int32Array(this.arrayBuffer);D=Ge[0],this.d=(Y=Ge[1])+2*(he=Ge[2]);for(let bt=0;bt=ur[$r+0]&&ke>=ur[$r+1])?(st[Fr]=!0,Ge.push(Qt[Fr])):st[Fr]=!1}}}}_forEachCell(D,Y,he,ke,Ue,Ge,st,bt){let zt=this._convertToCellCoord(D),Qt=this._convertToCellCoord(Y),ur=this._convertToCellCoord(he),Mr=this._convertToCellCoord(ke);for(let Fr=zt;Fr<=ur;Fr++)for(let $r=Qt;$r<=Mr;$r++){let vi=this.d*$r+Fr;if((!bt||bt(this._convertFromCellCoord(Fr),this._convertFromCellCoord($r),this._convertFromCellCoord(Fr+1),this._convertFromCellCoord($r+1)))&&Ue.call(this,D,Y,he,ke,vi,Ge,st,bt))return}}_convertFromCellCoord(D){return(D-this.padding)/this.scale}_convertToCellCoord(D){return Math.max(0,Math.min(this.d-1,Math.floor(D*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let D=this.cells,Y=3+this.cells.length+1+1,he=0;for(let Ge=0;Ge=0)continue;let Ge=q[Ue];ke[Ue]=kn[Y].shallow.indexOf(Ue)>=0?Ge:go(Ge,D)}q instanceof Error&&(ke.message=q.message)}if(ke.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(ke.$name=Y),ke}function Mo(q){if(uo(q))return q;if(Array.isArray(q))return q.map(Mo);if(typeof q!="object")throw new Error("can't deserialize object of type "+typeof q);let D=mo(q)||"Object";if(!kn[D])throw new Error(`can't deserialize unregistered class ${D}`);let{klass:Y}=kn[D];if(!Y)throw new Error(`can't deserialize unregistered class ${D}`);if(Y.deserialize)return Y.deserialize(q);let he=Object.create(Y.prototype);for(let ke of Object.keys(q)){if(ke==="$name")continue;let Ue=q[ke];he[ke]=kn[D].shallow.indexOf(ke)>=0?Ue:Mo(Ue)}return he}class ya{constructor(){this.first=!0}update(D,Y){let he=Math.floor(D);return this.first?(this.first=!1,this.lastIntegerZoom=he,this.lastIntegerZoomTime=0,this.lastZoom=D,this.lastFloorZoom=he,!0):(this.lastFloorZoom>he?(this.lastIntegerZoom=he+1,this.lastIntegerZoomTime=Y):this.lastFloorZoomq>=128&&q<=255,"Hangul Jamo":q=>q>=4352&&q<=4607,Khmer:q=>q>=6016&&q<=6143,"General Punctuation":q=>q>=8192&&q<=8303,"Letterlike Symbols":q=>q>=8448&&q<=8527,"Number Forms":q=>q>=8528&&q<=8591,"Miscellaneous Technical":q=>q>=8960&&q<=9215,"Control Pictures":q=>q>=9216&&q<=9279,"Optical Character Recognition":q=>q>=9280&&q<=9311,"Enclosed Alphanumerics":q=>q>=9312&&q<=9471,"Geometric Shapes":q=>q>=9632&&q<=9727,"Miscellaneous Symbols":q=>q>=9728&&q<=9983,"Miscellaneous Symbols and Arrows":q=>q>=11008&&q<=11263,"Ideographic Description Characters":q=>q>=12272&&q<=12287,"CJK Symbols and Punctuation":q=>q>=12288&&q<=12351,Katakana:q=>q>=12448&&q<=12543,Kanbun:q=>q>=12688&&q<=12703,"CJK Strokes":q=>q>=12736&&q<=12783,"Enclosed CJK Letters and Months":q=>q>=12800&&q<=13055,"CJK Compatibility":q=>q>=13056&&q<=13311,"Yijing Hexagram Symbols":q=>q>=19904&&q<=19967,"Private Use Area":q=>q>=57344&&q<=63743,"Vertical Forms":q=>q>=65040&&q<=65055,"CJK Compatibility Forms":q=>q>=65072&&q<=65103,"Small Form Variants":q=>q>=65104&&q<=65135,"Halfwidth and Fullwidth Forms":q=>q>=65280&&q<=65519};function Po(q){for(let D of q)if(Ps(D.charCodeAt(0)))return!0;return!1}function us(q){for(let D of q)if(!js(D.charCodeAt(0)))return!1;return!0}function Bs(q){let D=q.map(Y=>{try{return new RegExp(`\\p{sc=${Y}}`,"u").source}catch{return null}}).filter(Y=>Y);return new RegExp(D.join("|"),"u")}let sl=Bs(["Arab","Dupl","Mong","Ougr","Syrc"]);function js(q){return!sl.test(String.fromCodePoint(q))}let il=Bs(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ps(q){return!(q!==746&&q!==747&&(q<4352||!(Zn["CJK Compatibility Forms"](q)&&!(q>=65097&&q<=65103)||Zn["CJK Compatibility"](q)||Zn["CJK Strokes"](q)||!(!Zn["CJK Symbols and Punctuation"](q)||q>=12296&&q<=12305||q>=12308&&q<=12319||q===12336)||Zn["Enclosed CJK Letters and Months"](q)||Zn["Ideographic Description Characters"](q)||Zn.Kanbun(q)||Zn.Katakana(q)&&q!==12540||!(!Zn["Halfwidth and Fullwidth Forms"](q)||q===65288||q===65289||q===65293||q>=65306&&q<=65310||q===65339||q===65341||q===65343||q>=65371&&q<=65503||q===65507||q>=65512&&q<=65519)||!(!Zn["Small Form Variants"](q)||q>=65112&&q<=65118||q>=65123&&q<=65126)||Zn["Vertical Forms"](q)||Zn["Yijing Hexagram Symbols"](q)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(q))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(q))||il.test(String.fromCodePoint(q)))))}function ql(q){return!(Ps(q)||function(D){return!!(Zn["Latin-1 Supplement"](D)&&(D===167||D===169||D===174||D===177||D===188||D===189||D===190||D===215||D===247)||Zn["General Punctuation"](D)&&(D===8214||D===8224||D===8225||D===8240||D===8241||D===8251||D===8252||D===8258||D===8263||D===8264||D===8265||D===8273)||Zn["Letterlike Symbols"](D)||Zn["Number Forms"](D)||Zn["Miscellaneous Technical"](D)&&(D>=8960&&D<=8967||D>=8972&&D<=8991||D>=8996&&D<=9e3||D===9003||D>=9085&&D<=9114||D>=9150&&D<=9165||D===9167||D>=9169&&D<=9179||D>=9186&&D<=9215)||Zn["Control Pictures"](D)&&D!==9251||Zn["Optical Character Recognition"](D)||Zn["Enclosed Alphanumerics"](D)||Zn["Geometric Shapes"](D)||Zn["Miscellaneous Symbols"](D)&&!(D>=9754&&D<=9759)||Zn["Miscellaneous Symbols and Arrows"](D)&&(D>=11026&&D<=11055||D>=11088&&D<=11097||D>=11192&&D<=11243)||Zn["CJK Symbols and Punctuation"](D)||Zn.Katakana(D)||Zn["Private Use Area"](D)||Zn["CJK Compatibility Forms"](D)||Zn["Small Form Variants"](D)||Zn["Halfwidth and Fullwidth Forms"](D)||D===8734||D===8756||D===8757||D>=9984&&D<=10087||D>=10102&&D<=10131||D===65532||D===65533)}(q))}let Tl=Bs(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function vl(q){return Tl.test(String.fromCodePoint(q))}function Wa(q,D){return!(!D&&vl(q)||q>=2304&&q<=3583||q>=3840&&q<=4255||Zn.Khmer(q))}function Go(q){for(let D of q)if(vl(D.charCodeAt(0)))return!0;return!1}let el=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(q){this.pluginStatus=q.pluginStatus,this.pluginURL=q.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(q){this.applyArabicShaping=q.applyArabicShaping,this.processBidirectionalText=q.processBidirectionalText,this.processStyledBidirectionalText=q.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Os{constructor(D,Y){this.zoom=D,Y?(this.now=Y.now,this.fadeDuration=Y.fadeDuration,this.zoomHistory=Y.zoomHistory,this.transition=Y.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new ya,this.transition={})}isSupportedScript(D){return function(Y,he){for(let ke of Y)if(!Wa(ke.charCodeAt(0),he))return!1;return!0}(D,el.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let D=this.zoom,Y=D-Math.floor(D),he=this.crossFadingFactor();return D>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:Y+(1-Y)*he}:{fromScale:.5,toScale:1,t:1-(1-he)*Y}}}class du{constructor(D,Y){this.property=D,this.value=Y,this.expression=function(he,ke){if(qf(he))return new Pl(he,ke);if(Mc(he)){let Ue=wu(he,ke);if(Ue.result==="error")throw new Error(Ue.value.map(Ge=>`${Ge.key}: ${Ge.message}`).join(", "));return Ue.value}{let Ue=he;return ke.type==="color"&&typeof he=="string"?Ue=Ut.parse(he):ke.type!=="padding"||typeof he!="number"&&!Array.isArray(he)?ke.type==="variableAnchorOffsetCollection"&&Array.isArray(he)&&(Ue=qi.parse(he)):Ue=Yr.parse(he),{kind:"constant",evaluate:()=>Ue}}}(Y===void 0?D.specification.default:Y,D.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(D,Y,he){return this.property.possiblyEvaluate(this,D,Y,he)}}class zu{constructor(D){this.property=D,this.value=new du(D,void 0)}transitioned(D,Y){return new nf(this.property,this.value,Y,E({},D.transition,this.transition),D.now)}untransitioned(){return new nf(this.property,this.value,null,{},0)}}class ac{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitionablePropertyValues)}getValue(D){return u(this._values[D].value.value)}setValue(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new zu(this._values[D].property)),this._values[D].value=new du(this._values[D].property,Y===null?void 0:u(Y))}getTransition(D){return u(this._values[D].transition)}setTransition(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new zu(this._values[D].property)),this._values[D].transition=u(Y)||void 0}serialize(){let D={};for(let Y of Object.keys(this._values)){let he=this.getValue(Y);he!==void 0&&(D[Y]=he);let ke=this.getTransition(Y);ke!==void 0&&(D[`${Y}-transition`]=ke)}return D}transitioned(D,Y){let he=new Mu(this._properties);for(let ke of Object.keys(this._values))he._values[ke]=this._values[ke].transitioned(D,Y._values[ke]);return he}untransitioned(){let D=new Mu(this._properties);for(let Y of Object.keys(this._values))D._values[Y]=this._values[Y].untransitioned();return D}}class nf{constructor(D,Y,he,ke,Ue){this.property=D,this.value=Y,this.begin=Ue+ke.delay||0,this.end=this.begin+ke.duration||0,D.specification.transition&&(ke.delay||ke.duration)&&(this.prior=he)}possiblyEvaluate(D,Y,he){let ke=D.now||0,Ue=this.value.possiblyEvaluate(D,Y,he),Ge=this.prior;if(Ge){if(ke>this.end)return this.prior=null,Ue;if(this.value.isDataDriven())return this.prior=null,Ue;if(ke=1)return 1;let zt=bt*bt,Qt=zt*bt;return 4*(bt<.5?Qt:3*(bt-zt)+Qt-.75)}(st))}}return Ue}}class Mu{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitioningPropertyValues)}possiblyEvaluate(D,Y,he){let ke=new Cc(this._properties);for(let Ue of Object.keys(this._values))ke._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,he);return ke}hasTransition(){for(let D of Object.keys(this._values))if(this._values[D].prior)return!0;return!1}}class Vc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPropertyValues)}hasValue(D){return this._values[D].value!==void 0}getValue(D){return u(this._values[D].value)}setValue(D,Y){this._values[D]=new du(this._values[D].property,Y===null?void 0:u(Y))}serialize(){let D={};for(let Y of Object.keys(this._values)){let he=this.getValue(Y);he!==void 0&&(D[Y]=he)}return D}possiblyEvaluate(D,Y,he){let ke=new Cc(this._properties);for(let Ue of Object.keys(this._values))ke._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,he);return ke}}class Fu{constructor(D,Y,he){this.property=D,this.value=Y,this.parameters=he}isConstant(){return this.value.kind==="constant"}constantOr(D){return this.value.kind==="constant"?this.value.value:D}evaluate(D,Y,he,ke){return this.property.evaluate(this.value,this.parameters,D,Y,he,ke)}}class Cc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPossiblyEvaluatedValues)}get(D){return this._values[D]}}class bo{constructor(D){this.specification=D}possiblyEvaluate(D,Y){if(D.isDataDriven())throw new Error("Value should not be data driven");return D.expression.evaluate(Y)}interpolate(D,Y,he){let ke=yo[this.specification.type];return ke?ke(D,Y,he):D}}class Ko{constructor(D,Y){this.specification=D,this.overrides=Y}possiblyEvaluate(D,Y,he,ke){return new Fu(this,D.expression.kind==="constant"||D.expression.kind==="camera"?{kind:"constant",value:D.expression.evaluate(Y,null,{},he,ke)}:D.expression,Y)}interpolate(D,Y,he){if(D.value.kind!=="constant"||Y.value.kind!=="constant")return D;if(D.value.value===void 0||Y.value.value===void 0)return new Fu(this,{kind:"constant",value:void 0},D.parameters);let ke=yo[this.specification.type];if(ke){let Ue=ke(D.value.value,Y.value.value,he);return new Fu(this,{kind:"constant",value:Ue},D.parameters)}return D}evaluate(D,Y,he,ke,Ue,Ge){return D.kind==="constant"?D.value:D.evaluate(Y,he,ke,Ue,Ge)}}class qc extends Ko{possiblyEvaluate(D,Y,he,ke){if(D.value===void 0)return new Fu(this,{kind:"constant",value:void 0},Y);if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},he,ke),Ge=D.property.specification.type==="resolvedImage"&&typeof Ue!="string"?Ue.name:Ue,st=this._calculate(Ge,Ge,Ge,Y);return new Fu(this,{kind:"constant",value:st},Y)}if(D.expression.kind==="camera"){let Ue=this._calculate(D.expression.evaluate({zoom:Y.zoom-1}),D.expression.evaluate({zoom:Y.zoom}),D.expression.evaluate({zoom:Y.zoom+1}),Y);return new Fu(this,{kind:"constant",value:Ue},Y)}return new Fu(this,D.expression,Y)}evaluate(D,Y,he,ke,Ue,Ge){if(D.kind==="source"){let st=D.evaluate(Y,he,ke,Ue,Ge);return this._calculate(st,st,st,Y)}return D.kind==="composite"?this._calculate(D.evaluate({zoom:Math.floor(Y.zoom)-1},he,ke),D.evaluate({zoom:Math.floor(Y.zoom)},he,ke),D.evaluate({zoom:Math.floor(Y.zoom)+1},he,ke),Y):D.value}_calculate(D,Y,he,ke){return ke.zoom>ke.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:he,to:Y}}interpolate(D){return D}}class gc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,he,ke){if(D.value!==void 0){if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},he,ke);return this._calculate(Ue,Ue,Ue,Y)}return this._calculate(D.expression.evaluate(new Os(Math.floor(Y.zoom-1),Y)),D.expression.evaluate(new Os(Math.floor(Y.zoom),Y)),D.expression.evaluate(new Os(Math.floor(Y.zoom+1),Y)),Y)}}_calculate(D,Y,he,ke){return ke.zoom>ke.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:he,to:Y}}interpolate(D){return D}}class yc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,he,ke){return!!D.expression.evaluate(Y,null,{},he,ke)}interpolate(){return!1}}class Be{constructor(D){this.properties=D,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let Y in D){let he=D[Y];he.specification.overridable&&this.overridableProperties.push(Y);let ke=this.defaultPropertyValues[Y]=new du(he,void 0),Ue=this.defaultTransitionablePropertyValues[Y]=new zu(he);this.defaultTransitioningPropertyValues[Y]=Ue.untransitioned(),this.defaultPossiblyEvaluatedValues[Y]=ke.possiblyEvaluate({})}}}cn("DataDrivenProperty",Ko),cn("DataConstantProperty",bo),cn("CrossFadedDataDrivenProperty",qc),cn("CrossFadedProperty",gc),cn("ColorRampProperty",yc);let R="-transition";class ie extends ee{constructor(D,Y){if(super(),this.id=D.id,this.type=D.type,this._featureFilter={filter:()=>!0,needGeometry:!1},D.type!=="custom"&&(this.metadata=D.metadata,this.minzoom=D.minzoom,this.maxzoom=D.maxzoom,D.type!=="background"&&(this.source=D.source,this.sourceLayer=D["source-layer"],this.filter=D.filter),Y.layout&&(this._unevaluatedLayout=new Vc(Y.layout)),Y.paint)){this._transitionablePaint=new ac(Y.paint);for(let he in D.paint)this.setPaintProperty(he,D.paint[he],{validate:!1});for(let he in D.layout)this.setLayoutProperty(he,D.layout[he],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Cc(Y.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(D){return D==="visibility"?this.visibility:this._unevaluatedLayout.getValue(D)}setLayoutProperty(D,Y,he={}){Y!=null&&this._validate(ra,`layers.${this.id}.layout.${D}`,D,Y,he)||(D!=="visibility"?this._unevaluatedLayout.setValue(D,Y):this.visibility=Y)}getPaintProperty(D){return D.endsWith(R)?this._transitionablePaint.getTransition(D.slice(0,-11)):this._transitionablePaint.getValue(D)}setPaintProperty(D,Y,he={}){if(Y!=null&&this._validate(Vn,`layers.${this.id}.paint.${D}`,D,Y,he))return!1;if(D.endsWith(R))return this._transitionablePaint.setTransition(D.slice(0,-11),Y||void 0),!1;{let ke=this._transitionablePaint._values[D],Ue=ke.property.specification["property-type"]==="cross-faded-data-driven",Ge=ke.value.isDataDriven(),st=ke.value;this._transitionablePaint.setValue(D,Y),this._handleSpecialPaintPropertyUpdate(D);let bt=this._transitionablePaint._values[D].value;return bt.isDataDriven()||Ge||Ue||this._handleOverridablePaintPropertyUpdate(D,st,bt)}}_handleSpecialPaintPropertyUpdate(D){}_handleOverridablePaintPropertyUpdate(D,Y,he){return!1}isHidden(D){return!!(this.minzoom&&D=this.maxzoom)||this.visibility==="none"}updateTransitions(D){this._transitioningPaint=this._transitionablePaint.transitioned(D,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(D,Y){D.getCrossfadeParameters&&(this._crossfadeParameters=D.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(D,void 0,Y)),this.paint=this._transitioningPaint.possiblyEvaluate(D,void 0,Y)}serialize(){let D={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(D.layout=D.layout||{},D.layout.visibility=this.visibility),v(D,(Y,he)=>!(Y===void 0||he==="layout"&&!Object.keys(Y).length||he==="paint"&&!Object.keys(Y).length))}_validate(D,Y,he,ke,Ue={}){return(!Ue||Ue.validate!==!1)&&yn(this,D.call(an,{key:Y,layerType:this.type,objectKey:he,value:ke,styleSpec:ne,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let D in this.paint._values){let Y=this.paint.get(D);if(Y instanceof Fu&&Pu(Y.property.specification)&&(Y.value.kind==="source"||Y.value.kind==="composite")&&Y.value.isStateDependent)return!0}return!1}}let xe={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Te{constructor(D,Y){this._structArray=D,this._pos1=Y*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class De{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(D,Y){return D._trim(),Y&&(D.isTransferred=!0,Y.push(D.arrayBuffer)),{length:D.length,arrayBuffer:D.arrayBuffer}}static deserialize(D){let Y=Object.create(this.prototype);return Y.arrayBuffer=D.arrayBuffer,Y.length=D.length,Y.capacity=D.arrayBuffer.byteLength/Y.bytesPerElement,Y._refreshViews(),Y}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(D){this.reserve(D),this.length=D}reserve(D){if(D>this.capacity){this.capacity=Math.max(D,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let Y=this.uint8;this._refreshViews(),Y&&this.uint8.set(Y)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ut(q,D=1){let Y=0,he=0;return{members:q.map(ke=>{let Ue=xe[ke.type].BYTES_PER_ELEMENT,Ge=Y=_t(Y,Math.max(D,Ue)),st=ke.components||1;return he=Math.max(he,Ue),Y+=Ue*st,{name:ke.name,type:ke.type,components:st,offset:Ge}}),size:_t(Y,Math.max(he,D)),alignment:D}}function _t(q,D){return Math.ceil(q/D)*D}class Rt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y){let he=this.length;return this.resize(he+1),this.emplace(he,D,Y)}emplace(D,Y,he){let ke=2*D;return this.int16[ke+0]=Y,this.int16[ke+1]=he,D}}Rt.prototype.bytesPerElement=4,cn("StructArrayLayout2i4",Rt);class Kt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he){let ke=this.length;return this.resize(ke+1),this.emplace(ke,D,Y,he)}emplace(D,Y,he,ke){let Ue=3*D;return this.int16[Ue+0]=Y,this.int16[Ue+1]=he,this.int16[Ue+2]=ke,D}}Kt.prototype.bytesPerElement=6,cn("StructArrayLayout3i6",Kt);class fr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,he,ke)}emplace(D,Y,he,ke,Ue){let Ge=4*D;return this.int16[Ge+0]=Y,this.int16[Ge+1]=he,this.int16[Ge+2]=ke,this.int16[Ge+3]=Ue,D}}fr.prototype.bytesPerElement=8,cn("StructArrayLayout4i8",fr);class dr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge){let st=this.length;return this.resize(st+1),this.emplace(st,D,Y,he,ke,Ue,Ge)}emplace(D,Y,he,ke,Ue,Ge,st){let bt=6*D;return this.int16[bt+0]=Y,this.int16[bt+1]=he,this.int16[bt+2]=ke,this.int16[bt+3]=Ue,this.int16[bt+4]=Ge,this.int16[bt+5]=st,D}}dr.prototype.bytesPerElement=12,cn("StructArrayLayout2i4i12",dr);class jr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge){let st=this.length;return this.resize(st+1),this.emplace(st,D,Y,he,ke,Ue,Ge)}emplace(D,Y,he,ke,Ue,Ge,st){let bt=4*D,zt=8*D;return this.int16[bt+0]=Y,this.int16[bt+1]=he,this.uint8[zt+4]=ke,this.uint8[zt+5]=Ue,this.uint8[zt+6]=Ge,this.uint8[zt+7]=st,D}}jr.prototype.bytesPerElement=8,cn("StructArrayLayout2i4ub8",jr);class ii extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y){let he=this.length;return this.resize(he+1),this.emplace(he,D,Y)}emplace(D,Y,he){let ke=2*D;return this.float32[ke+0]=Y,this.float32[ke+1]=he,D}}ii.prototype.bytesPerElement=8,cn("StructArrayLayout2f8",ii);class qe extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt){let ur=this.length;return this.resize(ur+1),this.emplace(ur,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt)}emplace(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur){let Mr=10*D;return this.uint16[Mr+0]=Y,this.uint16[Mr+1]=he,this.uint16[Mr+2]=ke,this.uint16[Mr+3]=Ue,this.uint16[Mr+4]=Ge,this.uint16[Mr+5]=st,this.uint16[Mr+6]=bt,this.uint16[Mr+7]=zt,this.uint16[Mr+8]=Qt,this.uint16[Mr+9]=ur,D}}qe.prototype.bytesPerElement=20,cn("StructArrayLayout10ui20",qe);class Ye extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr){let Fr=this.length;return this.resize(Fr+1),this.emplace(Fr,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr)}emplace(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr){let $r=12*D;return this.int16[$r+0]=Y,this.int16[$r+1]=he,this.int16[$r+2]=ke,this.int16[$r+3]=Ue,this.uint16[$r+4]=Ge,this.uint16[$r+5]=st,this.uint16[$r+6]=bt,this.uint16[$r+7]=zt,this.int16[$r+8]=Qt,this.int16[$r+9]=ur,this.int16[$r+10]=Mr,this.int16[$r+11]=Fr,D}}Ye.prototype.bytesPerElement=24,cn("StructArrayLayout4i4ui4i24",Ye);class nt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,he){let ke=this.length;return this.resize(ke+1),this.emplace(ke,D,Y,he)}emplace(D,Y,he,ke){let Ue=3*D;return this.float32[Ue+0]=Y,this.float32[Ue+1]=he,this.float32[Ue+2]=ke,D}}nt.prototype.bytesPerElement=12,cn("StructArrayLayout3f12",nt);class ct extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint32[1*D+0]=Y,D}}ct.prototype.bytesPerElement=4,cn("StructArrayLayout1ul4",ct);class Tt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge,st,bt,zt){let Qt=this.length;return this.resize(Qt+1),this.emplace(Qt,D,Y,he,ke,Ue,Ge,st,bt,zt)}emplace(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt){let ur=10*D,Mr=5*D;return this.int16[ur+0]=Y,this.int16[ur+1]=he,this.int16[ur+2]=ke,this.int16[ur+3]=Ue,this.int16[ur+4]=Ge,this.int16[ur+5]=st,this.uint32[Mr+3]=bt,this.uint16[ur+8]=zt,this.uint16[ur+9]=Qt,D}}Tt.prototype.bytesPerElement=20,cn("StructArrayLayout6i1ul2ui20",Tt);class gt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge){let st=this.length;return this.resize(st+1),this.emplace(st,D,Y,he,ke,Ue,Ge)}emplace(D,Y,he,ke,Ue,Ge,st){let bt=6*D;return this.int16[bt+0]=Y,this.int16[bt+1]=he,this.int16[bt+2]=ke,this.int16[bt+3]=Ue,this.int16[bt+4]=Ge,this.int16[bt+5]=st,D}}gt.prototype.bytesPerElement=12,cn("StructArrayLayout2i2i2i12",gt);class Lt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue){let Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,D,Y,he,ke,Ue)}emplace(D,Y,he,ke,Ue,Ge){let st=4*D,bt=8*D;return this.float32[st+0]=Y,this.float32[st+1]=he,this.float32[st+2]=ke,this.int16[bt+6]=Ue,this.int16[bt+7]=Ge,D}}Lt.prototype.bytesPerElement=16,cn("StructArrayLayout2f1f2i16",Lt);class tr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge){let st=this.length;return this.resize(st+1),this.emplace(st,D,Y,he,ke,Ue,Ge)}emplace(D,Y,he,ke,Ue,Ge,st){let bt=16*D,zt=4*D,Qt=8*D;return this.uint8[bt+0]=Y,this.uint8[bt+1]=he,this.float32[zt+1]=ke,this.float32[zt+2]=Ue,this.int16[Qt+6]=Ge,this.int16[Qt+7]=st,D}}tr.prototype.bytesPerElement=16,cn("StructArrayLayout2ub2f2i16",tr);class or extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,he){let ke=this.length;return this.resize(ke+1),this.emplace(ke,D,Y,he)}emplace(D,Y,he,ke){let Ue=3*D;return this.uint16[Ue+0]=Y,this.uint16[Ue+1]=he,this.uint16[Ue+2]=ke,D}}or.prototype.bytesPerElement=6,cn("StructArrayLayout3ui6",or);class vr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi){let Ln=this.length;return this.resize(Ln+1),this.emplace(Ln,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi)}emplace(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi,Ln){let un=24*D,Tn=12*D,jn=48*D;return this.int16[un+0]=Y,this.int16[un+1]=he,this.uint16[un+2]=ke,this.uint16[un+3]=Ue,this.uint32[Tn+2]=Ge,this.uint32[Tn+3]=st,this.uint32[Tn+4]=bt,this.uint16[un+10]=zt,this.uint16[un+11]=Qt,this.uint16[un+12]=ur,this.float32[Tn+7]=Mr,this.float32[Tn+8]=Fr,this.uint8[jn+36]=$r,this.uint8[jn+37]=vi,this.uint8[jn+38]=Vi,this.uint32[Tn+10]=Yi,this.int16[un+22]=Ln,D}}vr.prototype.bytesPerElement=48,cn("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",vr);class Sr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi,Ln,un,Tn,jn,qa,Io,As,_o,Pa,ns,Xo){let Vo=this.length;return this.resize(Vo+1),this.emplace(Vo,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi,Ln,un,Tn,jn,qa,Io,As,_o,Pa,ns,Xo)}emplace(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi,Vi,Yi,Ln,un,Tn,jn,qa,Io,As,_o,Pa,ns,Xo,Vo){let va=32*D,ds=16*D;return this.int16[va+0]=Y,this.int16[va+1]=he,this.int16[va+2]=ke,this.int16[va+3]=Ue,this.int16[va+4]=Ge,this.int16[va+5]=st,this.int16[va+6]=bt,this.int16[va+7]=zt,this.uint16[va+8]=Qt,this.uint16[va+9]=ur,this.uint16[va+10]=Mr,this.uint16[va+11]=Fr,this.uint16[va+12]=$r,this.uint16[va+13]=vi,this.uint16[va+14]=Vi,this.uint16[va+15]=Yi,this.uint16[va+16]=Ln,this.uint16[va+17]=un,this.uint16[va+18]=Tn,this.uint16[va+19]=jn,this.uint16[va+20]=qa,this.uint16[va+21]=Io,this.uint16[va+22]=As,this.uint32[ds+12]=_o,this.float32[ds+13]=Pa,this.float32[ds+14]=ns,this.uint16[va+30]=Xo,this.uint16[va+31]=Vo,D}}Sr.prototype.bytesPerElement=64,cn("StructArrayLayout8i15ui1ul2f2ui64",Sr);class Wr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.float32[1*D+0]=Y,D}}Wr.prototype.bytesPerElement=4,cn("StructArrayLayout1f4",Wr);class yi extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,he){let ke=this.length;return this.resize(ke+1),this.emplace(ke,D,Y,he)}emplace(D,Y,he,ke){let Ue=3*D;return this.uint16[6*D+0]=Y,this.float32[Ue+1]=he,this.float32[Ue+2]=ke,D}}yi.prototype.bytesPerElement=12,cn("StructArrayLayout1ui2f12",yi);class Ai extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,he){let ke=this.length;return this.resize(ke+1),this.emplace(ke,D,Y,he)}emplace(D,Y,he,ke){let Ue=4*D;return this.uint32[2*D+0]=Y,this.uint16[Ue+2]=he,this.uint16[Ue+3]=ke,D}}Ai.prototype.bytesPerElement=8,cn("StructArrayLayout1ul2ui8",Ai);class Oi extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y){let he=this.length;return this.resize(he+1),this.emplace(he,D,Y)}emplace(D,Y,he){let ke=2*D;return this.uint16[ke+0]=Y,this.uint16[ke+1]=he,D}}Oi.prototype.bytesPerElement=4,cn("StructArrayLayout2ui4",Oi);class on extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint16[1*D+0]=Y,D}}on.prototype.bytesPerElement=2,cn("StructArrayLayout1ui2",on);class Mn extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,he,ke){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,he,ke)}emplace(D,Y,he,ke,Ue){let Ge=4*D;return this.float32[Ge+0]=Y,this.float32[Ge+1]=he,this.float32[Ge+2]=ke,this.float32[Ge+3]=Ue,D}}Mn.prototype.bytesPerElement=16,cn("StructArrayLayout4f16",Mn);class An extends Te{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new n(this.anchorPointX,this.anchorPointY)}}An.prototype.size=20;class qn extends Tt{get(D){return new An(this,D)}}cn("CollisionBoxArray",qn);class ma extends Te{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(D){this._structArray.uint8[this._pos1+37]=D}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(D){this._structArray.uint8[this._pos1+38]=D}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(D){this._structArray.uint32[this._pos4+10]=D}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}ma.prototype.size=48;class eo extends vr{get(D){return new ma(this,D)}}cn("PlacedSymbolArray",eo);class ja extends Te{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(D){this._structArray.uint32[this._pos4+12]=D}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}ja.prototype.size=64;class Do extends Sr{get(D){return new ja(this,D)}}cn("SymbolInstanceArray",Do);class _s extends Wr{getoffsetX(D){return this.float32[1*D+0]}}cn("GlyphOffsetArray",_s);class Oo extends Kt{getx(D){return this.int16[3*D+0]}gety(D){return this.int16[3*D+1]}gettileUnitDistanceFromAnchor(D){return this.int16[3*D+2]}}cn("SymbolLineVertexArray",Oo);class as extends Te{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}as.prototype.size=12;class Ms extends yi{get(D){return new as(this,D)}}cn("TextAnchorOffsetArray",Ms);class pl extends Te{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}pl.prototype.size=8;class ll extends Ai{get(D){return new pl(this,D)}}cn("FeatureIndexArray",ll);class cs extends Rt{}class ls extends Rt{}class Hl extends Rt{}class iu extends dr{}class Yu extends jr{}class _u extends ii{}class Il extends qe{}class vu extends Ye{}class Lc extends nt{}class Ql extends ct{}class eu extends gt{}class de extends tr{}class Re extends or{}class Ke extends Oi{}let ft=ut([{name:"a_pos",components:2,type:"Int16"}],4),{members:dt}=ft;class xt{constructor(D=[]){this.segments=D}prepareSegment(D,Y,he,ke){let Ue=this.segments[this.segments.length-1];return D>xt.MAX_VERTEX_ARRAY_LENGTH&&f(`Max vertices per segment is ${xt.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${D}`),(!Ue||Ue.vertexLength+D>xt.MAX_VERTEX_ARRAY_LENGTH||Ue.sortKey!==ke)&&(Ue={vertexOffset:Y.length,primitiveOffset:he.length,vertexLength:0,primitiveLength:0},ke!==void 0&&(Ue.sortKey=ke),this.segments.push(Ue)),Ue}get(){return this.segments}destroy(){for(let D of this.segments)for(let Y in D.vaos)D.vaos[Y].destroy()}static simpleSegment(D,Y,he,ke){return new xt([{vertexOffset:D,primitiveOffset:Y,vertexLength:he,primitiveLength:ke,vaos:{},sortKey:0}])}}function Jt(q,D){return 256*(q=w(Math.floor(q),0,255))+w(Math.floor(D),0,255)}xt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,cn("SegmentVector",xt);let It=ut([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var sr={exports:{}},zr={exports:{}};zr.exports=function(q,D){var Y,he,ke,Ue,Ge,st,bt,zt;for(he=q.length-(Y=3&q.length),ke=D,Ge=3432918353,st=461845907,zt=0;zt>>16)*Ge&65535)<<16)&4294967295)<<15|bt>>>17))*st+(((bt>>>16)*st&65535)<<16)&4294967295)<<13|ke>>>19))+((5*(ke>>>16)&65535)<<16)&4294967295))+((58964+(Ue>>>16)&65535)<<16);switch(bt=0,Y){case 3:bt^=(255&q.charCodeAt(zt+2))<<16;case 2:bt^=(255&q.charCodeAt(zt+1))<<8;case 1:ke^=bt=(65535&(bt=(bt=(65535&(bt^=255&q.charCodeAt(zt)))*Ge+(((bt>>>16)*Ge&65535)<<16)&4294967295)<<15|bt>>>17))*st+(((bt>>>16)*st&65535)<<16)&4294967295}return ke^=q.length,ke=2246822507*(65535&(ke^=ke>>>16))+((2246822507*(ke>>>16)&65535)<<16)&4294967295,ke=3266489909*(65535&(ke^=ke>>>13))+((3266489909*(ke>>>16)&65535)<<16)&4294967295,(ke^=ke>>>16)>>>0};var Or=zr.exports,bi={exports:{}};bi.exports=function(q,D){for(var Y,he=q.length,ke=D^he,Ue=0;he>=4;)Y=1540483477*(65535&(Y=255&q.charCodeAt(Ue)|(255&q.charCodeAt(++Ue))<<8|(255&q.charCodeAt(++Ue))<<16|(255&q.charCodeAt(++Ue))<<24))+((1540483477*(Y>>>16)&65535)<<16),ke=1540483477*(65535&ke)+((1540483477*(ke>>>16)&65535)<<16)^(Y=1540483477*(65535&(Y^=Y>>>24))+((1540483477*(Y>>>16)&65535)<<16)),he-=4,++Ue;switch(he){case 3:ke^=(255&q.charCodeAt(Ue+2))<<16;case 2:ke^=(255&q.charCodeAt(Ue+1))<<8;case 1:ke=1540483477*(65535&(ke^=255&q.charCodeAt(Ue)))+((1540483477*(ke>>>16)&65535)<<16)}return ke=1540483477*(65535&(ke^=ke>>>13))+((1540483477*(ke>>>16)&65535)<<16),(ke^=ke>>>15)>>>0};var gi=Or,Ki=bi.exports;sr.exports=gi,sr.exports.murmur3=gi,sr.exports.murmur2=Ki;var rn=r(sr.exports);class Si{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(D,Y,he,ke){this.ids.push(Ui(D)),this.positions.push(Y,he,ke)}getPositions(D){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let Y=Ui(D),he=0,ke=this.ids.length-1;for(;he>1;this.ids[Ge]>=Y?ke=Ge:he=Ge+1}let Ue=[];for(;this.ids[he]===Y;)Ue.push({index:this.positions[3*he],start:this.positions[3*he+1],end:this.positions[3*he+2]}),he++;return Ue}static serialize(D,Y){let he=new Float64Array(D.ids),ke=new Uint32Array(D.positions);return Xi(he,ke,0,he.length-1),Y&&Y.push(he.buffer,ke.buffer),{ids:he,positions:ke}}static deserialize(D){let Y=new Si;return Y.ids=D.ids,Y.positions=D.positions,Y.indexed=!0,Y}}function Ui(q){let D=+q;return!isNaN(D)&&D<=Number.MAX_SAFE_INTEGER?D:rn(String(q))}function Xi(q,D,Y,he){for(;Y>1],Ue=Y-1,Ge=he+1;for(;;){do Ue++;while(q[Ue]ke);if(Ue>=Ge)break;ln(q,Ue,Ge),ln(D,3*Ue,3*Ge),ln(D,3*Ue+1,3*Ge+1),ln(D,3*Ue+2,3*Ge+2)}Ge-Y`u_${ke}`),this.type=he}setUniform(D,Y,he){D.set(he.constantOr(this.value))}getBinding(D,Y,he){return this.type==="color"?new ia(D,Y):new ji(D,Y)}}class ao{constructor(D,Y){this.uniformNames=Y.map(he=>`u_${he}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(D,Y){this.pixelRatioFrom=Y.pixelRatio,this.pixelRatioTo=D.pixelRatio,this.patternFrom=Y.tlbr,this.patternTo=D.tlbr}setUniform(D,Y,he,ke){let Ue=ke==="u_pattern_to"?this.patternTo:ke==="u_pattern_from"?this.patternFrom:ke==="u_pixel_ratio_to"?this.pixelRatioTo:ke==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Ue&&D.set(Ue)}getBinding(D,Y,he){return he.substr(0,9)==="u_pattern"?new Kn(D,Y):new ji(D,Y)}}class is{constructor(D,Y,he,ke){this.expression=D,this.type=he,this.maxValue=0,this.paintVertexAttributes=Y.map(Ue=>({name:`a_${Ue}`,type:"Float32",components:he==="color"?2:1,offset:0})),this.paintVertexArray=new ke}populatePaintArray(D,Y,he,ke,Ue){let Ge=this.paintVertexArray.length,st=this.expression.evaluate(new Os(0),Y,{},ke,[],Ue);this.paintVertexArray.resize(D),this._setPaintValue(Ge,D,st)}updatePaintArray(D,Y,he,ke){let Ue=this.expression.evaluate({zoom:0},he,ke);this._setPaintValue(D,Y,Ue)}_setPaintValue(D,Y,he){if(this.type==="color"){let ke=ka(he);for(let Ue=D;Ue`u_${st}_t`),this.type=he,this.useIntegerZoom=ke,this.zoom=Ue,this.maxValue=0,this.paintVertexAttributes=Y.map(st=>({name:`a_${st}`,type:"Float32",components:he==="color"?4:2,offset:0})),this.paintVertexArray=new Ge}populatePaintArray(D,Y,he,ke,Ue){let Ge=this.expression.evaluate(new Os(this.zoom),Y,{},ke,[],Ue),st=this.expression.evaluate(new Os(this.zoom+1),Y,{},ke,[],Ue),bt=this.paintVertexArray.length;this.paintVertexArray.resize(D),this._setPaintValue(bt,D,Ge,st)}updatePaintArray(D,Y,he,ke){let Ue=this.expression.evaluate({zoom:this.zoom},he,ke),Ge=this.expression.evaluate({zoom:this.zoom+1},he,ke);this._setPaintValue(D,Y,Ue,Ge)}_setPaintValue(D,Y,he,ke){if(this.type==="color"){let Ue=ka(he),Ge=ka(ke);for(let st=D;st`#define HAS_UNIFORM_${ke}`))}return D}getBinderAttributes(){let D=[];for(let Y in this.binders){let he=this.binders[Y];if(he instanceof is||he instanceof lo)for(let ke=0;ke!0){this.programConfigurations={};for(let ke of D)this.programConfigurations[ke.id]=new ul(ke,Y,he);this.needsUpload=!1,this._featureMap=new Si,this._bufferOffset=0}populatePaintArrays(D,Y,he,ke,Ue,Ge){for(let st in this.programConfigurations)this.programConfigurations[st].populatePaintArrays(D,Y,ke,Ue,Ge);Y.id!==void 0&&this._featureMap.add(Y.id,he,this._bufferOffset,D),this._bufferOffset=D,this.needsUpload=!0}updatePaintArrays(D,Y,he,ke){for(let Ue of he)this.needsUpload=this.programConfigurations[Ue.id].updatePaintArrays(D,this._featureMap,Y,Ue,ke)||this.needsUpload}get(D){return this.programConfigurations[D]}upload(D){if(this.needsUpload){for(let Y in this.programConfigurations)this.programConfigurations[Y].upload(D);this.needsUpload=!1}}destroy(){for(let D in this.programConfigurations)this.programConfigurations[D].destroy()}}function xl(q,D){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[q]||[q.replace(`${D}-`,"").replace(/-/g,"_")]}function oa(q,D,Y){let he={color:{source:ii,composite:Mn},number:{source:Wr,composite:ii}},ke=function(Ue){return{"line-pattern":{source:Il,composite:Il},"fill-pattern":{source:Il,composite:Il},"fill-extrusion-pattern":{source:Il,composite:Il}}[Ue]}(q);return ke&&ke[Y]||he[D][Y]}cn("ConstantBinder",ro),cn("CrossFadedConstantBinder",ao),cn("SourceExpressionBinder",is),cn("CrossFadedCompositeBinder",ts),cn("CompositeExpressionBinder",lo),cn("ProgramConfiguration",ul,{omit:["_buffers"]}),cn("ProgramConfigurationSet",nl);let wo=8192,ws=Math.pow(2,14)-1,Cs=-ws-1;function Al(q){let D=wo/q.extent,Y=q.loadGeometry();for(let he=0;heGe.x+1||btGe.y+1)&&f("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return Y}function Gl(q,D){return{type:q.type,id:q.id,properties:q.properties,geometry:D?Al(q):[]}}function xu(q,D,Y,he,ke){q.emplaceBack(2*D+(he+1)/2,2*Y+(ke+1)/2)}class Ul{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new ls,this.indexArray=new Re,this.segments=new xt,this.programConfigurations=new nl(D.layers,D.zoom),this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,he){let ke=this.layers[0],Ue=[],Ge=null,st=!1;ke.type==="circle"&&(Ge=ke.layout.get("circle-sort-key"),st=!Ge.isConstant());for(let{feature:bt,id:zt,index:Qt,sourceLayerIndex:ur}of D){let Mr=this.layers[0]._featureFilter.needGeometry,Fr=Gl(bt,Mr);if(!this.layers[0]._featureFilter.filter(new Os(this.zoom),Fr,he))continue;let $r=st?Ge.evaluate(Fr,{},he):void 0,vi={id:zt,properties:bt.properties,type:bt.type,sourceLayerIndex:ur,index:Qt,geometry:Mr?Fr.geometry:Al(bt),patterns:{},sortKey:$r};Ue.push(vi)}st&&Ue.sort((bt,zt)=>bt.sortKey-zt.sortKey);for(let bt of Ue){let{geometry:zt,index:Qt,sourceLayerIndex:ur}=bt,Mr=D[Qt].feature;this.addFeature(bt,zt,Qt,he),Y.featureIndex.insert(Mr,zt,Qt,ur,this.index)}}update(D,Y,he){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,he)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,dt),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(D,Y,he,ke){for(let Ue of Y)for(let Ge of Ue){let st=Ge.x,bt=Ge.y;if(st<0||st>=wo||bt<0||bt>=wo)continue;let zt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,D.sortKey),Qt=zt.vertexLength;xu(this.layoutVertexArray,st,bt,-1,-1),xu(this.layoutVertexArray,st,bt,1,-1),xu(this.layoutVertexArray,st,bt,1,1),xu(this.layoutVertexArray,st,bt,-1,1),this.indexArray.emplaceBack(Qt,Qt+1,Qt+2),this.indexArray.emplaceBack(Qt,Qt+3,Qt+2),zt.vertexLength+=4,zt.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,he,{},ke)}}function _c(q,D){for(let Y=0;Y1){if(mn(q,D))return!0;for(let he=0;he1?Y:Y.sub(D)._mult(ke)._add(D))}function Jn(q,D){let Y,he,ke,Ue=!1;for(let Ge=0;GeD.y!=ke.y>D.y&&D.x<(ke.x-he.x)*(D.y-he.y)/(ke.y-he.y)+he.x&&(Ue=!Ue)}return Ue}function Sa(q,D){let Y=!1;for(let he=0,ke=q.length-1;heD.y!=Ge.y>D.y&&D.x<(Ge.x-Ue.x)*(D.y-Ue.y)/(Ge.y-Ue.y)+Ue.x&&(Y=!Y)}return Y}function Ea(q,D,Y){let he=Y[0],ke=Y[2];if(q.xke.x&&D.x>ke.x||q.yke.y&&D.y>ke.y)return!1;let Ue=P(q,D,Y[0]);return Ue!==P(q,D,Y[1])||Ue!==P(q,D,Y[2])||Ue!==P(q,D,Y[3])}function ca(q,D,Y){let he=D.paint.get(q).value;return he.kind==="constant"?he.value:Y.programConfigurations.get(D.id).getMaxValue(q)}function $o(q){return Math.sqrt(q[0]*q[0]+q[1]*q[1])}function wa(q,D,Y,he,ke){if(!D[0]&&!D[1])return q;let Ue=n.convert(D)._mult(ke);Y==="viewport"&&Ue._rotate(-he);let Ge=[];for(let st=0;stna(Vi,vi))}(zt,bt),Fr=ur?Qt*st:Qt;for(let $r of ke)for(let vi of $r){let Vi=ur?vi:na(vi,bt),Yi=Fr,Ln=No([],[vi.x,vi.y,0,1],bt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?Yi*=Ln[3]/Ge.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(Yi*=Ge.cameraToCenterDistance/Ln[3]),er(Mr,Vi,Yi))return!0}return!1}}function na(q,D){let Y=No([],[q.x,q.y,0,1],D);return new n(Y[0]/Y[3],Y[1]/Y[3])}class co extends Ul{}let Ya;cn("HeatmapBucket",co,{omit:["layers"]});var Fa={get paint(){return Ya=Ya||new Be({"heatmap-radius":new Ko(ne.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Ko(ne.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new bo(ne.paint_heatmap["heatmap-intensity"]),"heatmap-color":new yc(ne.paint_heatmap["heatmap-color"]),"heatmap-opacity":new bo(ne.paint_heatmap["heatmap-opacity"])})}};function La(q,{width:D,height:Y},he,ke){if(ke){if(ke instanceof Uint8ClampedArray)ke=new Uint8Array(ke.buffer);else if(ke.length!==D*Y*he)throw new RangeError(`mismatched image size. expected: ${ke.length} but got: ${D*Y*he}`)}else ke=new Uint8Array(D*Y*he);return q.width=D,q.height=Y,q.data=ke,q}function io(q,{width:D,height:Y},he){if(D===q.width&&Y===q.height)return;let ke=La({},{width:D,height:Y},he);Jo(q,ke,{x:0,y:0},{x:0,y:0},{width:Math.min(q.width,D),height:Math.min(q.height,Y)},he),q.width=D,q.height=Y,q.data=ke.data}function Jo(q,D,Y,he,ke,Ue){if(ke.width===0||ke.height===0)return D;if(ke.width>q.width||ke.height>q.height||Y.x>q.width-ke.width||Y.y>q.height-ke.height)throw new RangeError("out of range source coordinates for image copy");if(ke.width>D.width||ke.height>D.height||he.x>D.width-ke.width||he.y>D.height-ke.height)throw new RangeError("out of range destination coordinates for image copy");let Ge=q.data,st=D.data;if(Ge===st)throw new Error("srcData equals dstData, so image is already copied");for(let bt=0;bt{D[q.evaluationKey]=bt;let zt=q.expression.evaluate(D);ke.data[Ge+st+0]=Math.floor(255*zt.r/zt.a),ke.data[Ge+st+1]=Math.floor(255*zt.g/zt.a),ke.data[Ge+st+2]=Math.floor(255*zt.b/zt.a),ke.data[Ge+st+3]=Math.floor(255*zt.a)};if(q.clips)for(let Ge=0,st=0;Ge80*Y){st=1/0,bt=1/0;let Qt=-1/0,ur=-1/0;for(let Mr=Y;MrQt&&(Qt=Fr),$r>ur&&(ur=$r)}zt=Math.max(Qt-st,ur-bt),zt=zt!==0?32767/zt:0}return af(Ue,Ge,Y,st,bt,zt,0),Ge}function xc(q,D,Y,he,ke){let Ue;if(ke===function(Ge,st,bt,zt){let Qt=0;for(let ur=st,Mr=bt-zt;ur0)for(let Ge=D;Ge=D;Ge-=he)Ue=Tr(Ge/he|0,q[Ge],q[Ge+1],Ue);return Ue&&He(Ue,Ue.next)&&(Ht(Ue),Ue=Ue.next),Ue}function bc(q,D){if(!q)return q;D||(D=q);let Y,he=q;do if(Y=!1,he.steiner||!He(he,he.next)&&We(he.prev,he,he.next)!==0)he=he.next;else{if(Ht(he),he=D=he.prev,he===he.next)break;Y=!0}while(Y||he!==D);return D}function af(q,D,Y,he,ke,Ue,Ge){if(!q)return;!Ge&&Ue&&function(bt,zt,Qt,ur){let Mr=bt;do Mr.z===0&&(Mr.z=K(Mr.x,Mr.y,zt,Qt,ur)),Mr.prevZ=Mr.prev,Mr.nextZ=Mr.next,Mr=Mr.next;while(Mr!==bt);Mr.prevZ.nextZ=null,Mr.prevZ=null,function(Fr){let $r,vi=1;do{let Vi,Yi=Fr;Fr=null;let Ln=null;for($r=0;Yi;){$r++;let un=Yi,Tn=0;for(let qa=0;qa0||jn>0&&un;)Tn!==0&&(jn===0||!un||Yi.z<=un.z)?(Vi=Yi,Yi=Yi.nextZ,Tn--):(Vi=un,un=un.nextZ,jn--),Ln?Ln.nextZ=Vi:Fr=Vi,Vi.prevZ=Ln,Ln=Vi;Yi=un}Ln.nextZ=null,vi*=2}while($r>1)}(Mr)}(q,he,ke,Ue);let st=q;for(;q.prev!==q.next;){let bt=q.prev,zt=q.next;if(Ue?Pc(q,he,ke,Ue):nu(q))D.push(bt.i,q.i,zt.i),Ht(q),q=zt.next,st=zt.next;else if((q=zt)===st){Ge?Ge===1?af(q=Wc(bc(q),D),D,Y,he,ke,Ue,2):Ge===2&&Ws(q,D,Y,he,ke,Ue):af(bc(q),D,Y,he,ke,Ue,1);break}}}function nu(q){let D=q.prev,Y=q,he=q.next;if(We(D,Y,he)>=0)return!1;let ke=D.x,Ue=Y.x,Ge=he.x,st=D.y,bt=Y.y,zt=he.y,Qt=keUe?ke>Ge?ke:Ge:Ue>Ge?Ue:Ge,Fr=st>bt?st>zt?st:zt:bt>zt?bt:zt,$r=he.next;for(;$r!==D;){if($r.x>=Qt&&$r.x<=Mr&&$r.y>=ur&&$r.y<=Fr&&te(ke,st,Ue,bt,Ge,zt,$r.x,$r.y)&&We($r.prev,$r,$r.next)>=0)return!1;$r=$r.next}return!0}function Pc(q,D,Y,he){let ke=q.prev,Ue=q,Ge=q.next;if(We(ke,Ue,Ge)>=0)return!1;let st=ke.x,bt=Ue.x,zt=Ge.x,Qt=ke.y,ur=Ue.y,Mr=Ge.y,Fr=stbt?st>zt?st:zt:bt>zt?bt:zt,Vi=Qt>ur?Qt>Mr?Qt:Mr:ur>Mr?ur:Mr,Yi=K(Fr,$r,D,Y,he),Ln=K(vi,Vi,D,Y,he),un=q.prevZ,Tn=q.nextZ;for(;un&&un.z>=Yi&&Tn&&Tn.z<=Ln;){if(un.x>=Fr&&un.x<=vi&&un.y>=$r&&un.y<=Vi&&un!==ke&&un!==Ge&&te(st,Qt,bt,ur,zt,Mr,un.x,un.y)&&We(un.prev,un,un.next)>=0||(un=un.prevZ,Tn.x>=Fr&&Tn.x<=vi&&Tn.y>=$r&&Tn.y<=Vi&&Tn!==ke&&Tn!==Ge&&te(st,Qt,bt,ur,zt,Mr,Tn.x,Tn.y)&&We(Tn.prev,Tn,Tn.next)>=0))return!1;Tn=Tn.nextZ}for(;un&&un.z>=Yi;){if(un.x>=Fr&&un.x<=vi&&un.y>=$r&&un.y<=Vi&&un!==ke&&un!==Ge&&te(st,Qt,bt,ur,zt,Mr,un.x,un.y)&&We(un.prev,un,un.next)>=0)return!1;un=un.prevZ}for(;Tn&&Tn.z<=Ln;){if(Tn.x>=Fr&&Tn.x<=vi&&Tn.y>=$r&&Tn.y<=Vi&&Tn!==ke&&Tn!==Ge&&te(st,Qt,bt,ur,zt,Mr,Tn.x,Tn.y)&&We(Tn.prev,Tn,Tn.next)>=0)return!1;Tn=Tn.nextZ}return!0}function Wc(q,D){let Y=q;do{let he=Y.prev,ke=Y.next.next;!He(he,ke)&&at(he,Y,Y.next,ke)&&_r(he,ke)&&_r(ke,he)&&(D.push(he.i,Y.i,ke.i),Ht(Y),Ht(Y.next),Y=q=ke),Y=Y.next}while(Y!==q);return bc(Y)}function Ws(q,D,Y,he,ke,Ue){let Ge=q;do{let st=Ge.next.next;for(;st!==Ge.prev;){if(Ge.i!==st.i&&ye(Ge,st)){let bt=Rr(Ge,st);return Ge=bc(Ge,Ge.next),bt=bc(bt,bt.next),af(Ge,D,Y,he,ke,Ue,0),void af(bt,D,Y,he,ke,Ue,0)}st=st.next}Ge=Ge.next}while(Ge!==q)}function of(q,D){return q.x-D.x}function Vs(q,D){let Y=function(ke,Ue){let Ge=Ue,st=ke.x,bt=ke.y,zt,Qt=-1/0;do{if(bt<=Ge.y&&bt>=Ge.next.y&&Ge.next.y!==Ge.y){let vi=Ge.x+(bt-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(vi<=st&&vi>Qt&&(Qt=vi,zt=Ge.x=Ge.x&&Ge.x>=Mr&&st!==Ge.x&&te(btzt.x||Ge.x===zt.x&&ve(zt,Ge)))&&(zt=Ge,$r=vi)}Ge=Ge.next}while(Ge!==ur);return zt}(q,D);if(!Y)return D;let he=Rr(Y,q);return bc(he,he.next),bc(Y,Y.next)}function ve(q,D){return We(q.prev,q,D.prev)<0&&We(D.next,q,q.next)<0}function K(q,D,Y,he,ke){return(q=1431655765&((q=858993459&((q=252645135&((q=16711935&((q=(q-Y)*ke|0)|q<<8))|q<<4))|q<<2))|q<<1))|(D=1431655765&((D=858993459&((D=252645135&((D=16711935&((D=(D-he)*ke|0)|D<<8))|D<<4))|D<<2))|D<<1))<<1}function me(q){let D=q,Y=q;do(D.x=(q-Ge)*(Ue-st)&&(q-Ge)*(he-st)>=(Y-Ge)*(D-st)&&(Y-Ge)*(Ue-st)>=(ke-Ge)*(he-st)}function ye(q,D){return q.next.i!==D.i&&q.prev.i!==D.i&&!function(Y,he){let ke=Y;do{if(ke.i!==Y.i&&ke.next.i!==Y.i&&ke.i!==he.i&&ke.next.i!==he.i&&at(ke,ke.next,Y,he))return!0;ke=ke.next}while(ke!==Y);return!1}(q,D)&&(_r(q,D)&&_r(D,q)&&function(Y,he){let ke=Y,Ue=!1,Ge=(Y.x+he.x)/2,st=(Y.y+he.y)/2;do ke.y>st!=ke.next.y>st&&ke.next.y!==ke.y&&Ge<(ke.next.x-ke.x)*(st-ke.y)/(ke.next.y-ke.y)+ke.x&&(Ue=!Ue),ke=ke.next;while(ke!==Y);return Ue}(q,D)&&(We(q.prev,q,D.prev)||We(q,D.prev,D))||He(q,D)&&We(q.prev,q,q.next)>0&&We(D.prev,D,D.next)>0)}function We(q,D,Y){return(D.y-q.y)*(Y.x-D.x)-(D.x-q.x)*(Y.y-D.y)}function He(q,D){return q.x===D.x&&q.y===D.y}function at(q,D,Y,he){let ke=Gt(We(q,D,Y)),Ue=Gt(We(q,D,he)),Ge=Gt(We(Y,he,q)),st=Gt(We(Y,he,D));return ke!==Ue&&Ge!==st||!(ke!==0||!St(q,Y,D))||!(Ue!==0||!St(q,he,D))||!(Ge!==0||!St(Y,q,he))||!(st!==0||!St(Y,D,he))}function St(q,D,Y){return D.x<=Math.max(q.x,Y.x)&&D.x>=Math.min(q.x,Y.x)&&D.y<=Math.max(q.y,Y.y)&&D.y>=Math.min(q.y,Y.y)}function Gt(q){return q>0?1:q<0?-1:0}function _r(q,D){return We(q.prev,q,q.next)<0?We(q,D,q.next)>=0&&We(q,q.prev,D)>=0:We(q,D,q.prev)<0||We(q,q.next,D)<0}function Rr(q,D){let Y=ir(q.i,q.x,q.y),he=ir(D.i,D.x,D.y),ke=q.next,Ue=D.prev;return q.next=D,D.prev=q,Y.next=ke,ke.prev=Y,he.next=Y,Y.prev=he,Ue.next=he,he.prev=Ue,he}function Tr(q,D,Y,he){let ke=ir(q,D,Y);return he?(ke.next=he.next,ke.prev=he,he.next.prev=ke,he.next=ke):(ke.prev=ke,ke.next=ke),ke}function Ht(q){q.next.prev=q.prev,q.prev.next=q.next,q.prevZ&&(q.prevZ.nextZ=q.nextZ),q.nextZ&&(q.nextZ.prevZ=q.prevZ)}function ir(q,D,Y){return{i:q,x:D,y:Y,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function pr(q,D,Y){let he=Y.patternDependencies,ke=!1;for(let Ue of D){let Ge=Ue.paint.get(`${q}-pattern`);Ge.isConstant()||(ke=!0);let st=Ge.constantOr(null);st&&(ke=!0,he[st.to]=!0,he[st.from]=!0)}return ke}function Ir(q,D,Y,he,ke){let Ue=ke.patternDependencies;for(let Ge of D){let st=Ge.paint.get(`${q}-pattern`).value;if(st.kind!=="constant"){let bt=st.evaluate({zoom:he-1},Y,{},ke.availableImages),zt=st.evaluate({zoom:he},Y,{},ke.availableImages),Qt=st.evaluate({zoom:he+1},Y,{},ke.availableImages);bt=bt&&bt.name?bt.name:bt,zt=zt&&zt.name?zt.name:zt,Qt=Qt&&Qt.name?Qt.name:Qt,Ue[bt]=!0,Ue[zt]=!0,Ue[Qt]=!0,Y.patterns[Ge.id]={min:bt,mid:zt,max:Qt}}}return Y}class Vr{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Hl,this.indexArray=new Re,this.indexArray2=new Ke,this.programConfigurations=new nl(D.layers,D.zoom),this.segments=new xt,this.segments2=new xt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,he){this.hasPattern=pr("fill",this.layers,Y);let ke=this.layers[0].layout.get("fill-sort-key"),Ue=!ke.isConstant(),Ge=[];for(let{feature:st,id:bt,index:zt,sourceLayerIndex:Qt}of D){let ur=this.layers[0]._featureFilter.needGeometry,Mr=Gl(st,ur);if(!this.layers[0]._featureFilter.filter(new Os(this.zoom),Mr,he))continue;let Fr=Ue?ke.evaluate(Mr,{},he,Y.availableImages):void 0,$r={id:bt,properties:st.properties,type:st.type,sourceLayerIndex:Qt,index:zt,geometry:ur?Mr.geometry:Al(st),patterns:{},sortKey:Fr};Ge.push($r)}Ue&&Ge.sort((st,bt)=>st.sortKey-bt.sortKey);for(let st of Ge){let{geometry:bt,index:zt,sourceLayerIndex:Qt}=st;if(this.hasPattern){let ur=Ir("fill",this.layers,st,this.zoom,Y);this.patternFeatures.push(ur)}else this.addFeature(st,bt,zt,he,{});Y.featureIndex.insert(D[zt].feature,bt,zt,Qt,this.index)}}update(D,Y,he){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,he)}addFeatures(D,Y,he){for(let ke of this.patternFeatures)this.addFeature(ke,ke.geometry,ke.index,Y,he)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,Gc),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.indexBuffer2=D.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(D,Y,he,ke,Ue){for(let Ge of Fc(Y,500)){let st=0;for(let Fr of Ge)st+=Fr.length;let bt=this.segments.prepareSegment(st,this.layoutVertexArray,this.indexArray),zt=bt.vertexLength,Qt=[],ur=[];for(let Fr of Ge){if(Fr.length===0)continue;Fr!==Ge[0]&&ur.push(Qt.length/2);let $r=this.segments2.prepareSegment(Fr.length,this.layoutVertexArray,this.indexArray2),vi=$r.vertexLength;this.layoutVertexArray.emplaceBack(Fr[0].x,Fr[0].y),this.indexArray2.emplaceBack(vi+Fr.length-1,vi),Qt.push(Fr[0].x),Qt.push(Fr[0].y);for(let Vi=1;Vi>3}if(ke--,he===1||he===2)Ue+=q.readSVarint(),Ge+=q.readSVarint(),he===1&&(D&&st.push(D),D=[]),D.push(new fn(Ue,Ge));else{if(he!==7)throw new Error("unknown command "+he);D&&D.push(D[0].clone())}}return D&&st.push(D),st},Cn.prototype.bbox=function(){var q=this._pbf;q.pos=this._geometry;for(var D=q.readVarint()+q.pos,Y=1,he=0,ke=0,Ue=0,Ge=1/0,st=-1/0,bt=1/0,zt=-1/0;q.pos>3}if(he--,Y===1||Y===2)(ke+=q.readSVarint())st&&(st=ke),(Ue+=q.readSVarint())zt&&(zt=Ue);else if(Y!==7)throw new Error("unknown command "+Y)}return[Ge,bt,st,zt]},Cn.prototype.toGeoJSON=function(q,D,Y){var he,ke,Ue=this.extent*Math.pow(2,Y),Ge=this.extent*q,st=this.extent*D,bt=this.loadGeometry(),zt=Cn.types[this.type];function Qt(Fr){for(var $r=0;$r>3;ke=Ge===1?he.readString():Ge===2?he.readFloat():Ge===3?he.readDouble():Ge===4?he.readVarint64():Ge===5?he.readVarint():Ge===6?he.readSVarint():Ge===7?he.readBoolean():null}return ke}(Y))}fa.prototype.feature=function(q){if(q<0||q>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[q];var D=this._pbf.readVarint()+this._pbf.pos;return new Ma(this._pbf,D,this.extent,this._keys,this._values)};var Da=Wn;function Ja(q,D,Y){if(q===3){var he=new Da(Y,Y.readVarint()+Y.pos);he.length&&(D[he.name]=he)}}Hi.VectorTile=function(q,D){this.layers=q.readFields(Ja,{},D)},Hi.VectorTileFeature=Gn,Hi.VectorTileLayer=Wn;let Is=Hi.VectorTileFeature.types,Ss=Math.pow(2,13);function tl(q,D,Y,he,ke,Ue,Ge,st){q.emplaceBack(D,Y,2*Math.floor(he*Ss)+Ge,ke*Ss*2,Ue*Ss*2,Math.round(st))}class os{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new iu,this.centroidVertexArray=new cs,this.indexArray=new Re,this.programConfigurations=new nl(D.layers,D.zoom),this.segments=new xt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,he){this.features=[],this.hasPattern=pr("fill-extrusion",this.layers,Y);for(let{feature:ke,id:Ue,index:Ge,sourceLayerIndex:st}of D){let bt=this.layers[0]._featureFilter.needGeometry,zt=Gl(ke,bt);if(!this.layers[0]._featureFilter.filter(new Os(this.zoom),zt,he))continue;let Qt={id:Ue,sourceLayerIndex:st,index:Ge,geometry:bt?zt.geometry:Al(ke),properties:ke.properties,type:ke.type,patterns:{}};this.hasPattern?this.features.push(Ir("fill-extrusion",this.layers,Qt,this.zoom,Y)):this.addFeature(Qt,Qt.geometry,Ge,he,{}),Y.featureIndex.insert(ke,Qt.geometry,Ge,st,this.index,!0)}}addFeatures(D,Y,he){for(let ke of this.features){let{geometry:Ue}=ke;this.addFeature(ke,Ue,ke.index,Y,he)}}update(D,Y,he){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,he)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,Ci),this.centroidVertexBuffer=D.createVertexBuffer(this.centroidVertexArray,Ur.members,!0),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(D,Y,he,ke,Ue){for(let Ge of Fc(Y,500)){let st={x:0,y:0,vertexCount:0},bt=0;for(let $r of Ge)bt+=$r.length;let zt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let $r of Ge){if($r.length===0||Rl($r))continue;let vi=0;for(let Vi=0;Vi<$r.length;Vi++){let Yi=$r[Vi];if(Vi>=1){let Ln=$r[Vi-1];if(!qs(Yi,Ln)){zt.vertexLength+4>xt.MAX_VERTEX_ARRAY_LENGTH&&(zt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let un=Yi.sub(Ln)._perp()._unit(),Tn=Ln.dist(Yi);vi+Tn>32768&&(vi=0),tl(this.layoutVertexArray,Yi.x,Yi.y,un.x,un.y,0,0,vi),tl(this.layoutVertexArray,Yi.x,Yi.y,un.x,un.y,0,1,vi),st.x+=2*Yi.x,st.y+=2*Yi.y,st.vertexCount+=2,vi+=Tn,tl(this.layoutVertexArray,Ln.x,Ln.y,un.x,un.y,0,0,vi),tl(this.layoutVertexArray,Ln.x,Ln.y,un.x,un.y,0,1,vi),st.x+=2*Ln.x,st.y+=2*Ln.y,st.vertexCount+=2;let jn=zt.vertexLength;this.indexArray.emplaceBack(jn,jn+2,jn+1),this.indexArray.emplaceBack(jn+1,jn+2,jn+3),zt.vertexLength+=4,zt.primitiveLength+=2}}}}if(zt.vertexLength+bt>xt.MAX_VERTEX_ARRAY_LENGTH&&(zt=this.segments.prepareSegment(bt,this.layoutVertexArray,this.indexArray)),Is[D.type]!=="Polygon")continue;let Qt=[],ur=[],Mr=zt.vertexLength;for(let $r of Ge)if($r.length!==0){$r!==Ge[0]&&ur.push(Qt.length/2);for(let vi=0;vi<$r.length;vi++){let Vi=$r[vi];tl(this.layoutVertexArray,Vi.x,Vi.y,0,0,1,1,0),st.x+=Vi.x,st.y+=Vi.y,st.vertexCount+=1,Qt.push(Vi.x),Qt.push(Vi.y)}}let Fr=Zl(Qt,ur);for(let $r=0;$rwo)||q.y===D.y&&(q.y<0||q.y>wo)}function Rl(q){return q.every(D=>D.x<0)||q.every(D=>D.x>wo)||q.every(D=>D.y<0)||q.every(D=>D.y>wo)}let Bu;cn("FillExtrusionBucket",os,{omit:["layers","features"]});var Qh={get paint(){return Bu=Bu||new Be({"fill-extrusion-opacity":new bo(ne["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Ko(ne["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new bo(ne["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new bo(ne["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new qc(ne["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Ko(ne["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Ko(ne["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new bo(ne["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class ed extends ie{constructor(D){super(D,Qh)}createBucket(D){return new os(D)}queryRadius(){return $o(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(D,Y,he,ke,Ue,Ge,st,bt){let zt=wa(D,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ge.angle,st),Qt=this.paint.get("fill-extrusion-height").evaluate(Y,he),ur=this.paint.get("fill-extrusion-base").evaluate(Y,he),Mr=function($r,vi,Vi,Yi){let Ln=[];for(let un of $r){let Tn=[un.x,un.y,0,1];No(Tn,Tn,vi),Ln.push(new n(Tn[0]/Tn[3],Tn[1]/Tn[3]))}return Ln}(zt,bt),Fr=function($r,vi,Vi,Yi){let Ln=[],un=[],Tn=Yi[8]*vi,jn=Yi[9]*vi,qa=Yi[10]*vi,Io=Yi[11]*vi,As=Yi[8]*Vi,_o=Yi[9]*Vi,Pa=Yi[10]*Vi,ns=Yi[11]*Vi;for(let Xo of $r){let Vo=[],va=[];for(let ds of Xo){let qo=ds.x,Rs=ds.y,Su=Yi[0]*qo+Yi[4]*Rs+Yi[12],bu=Yi[1]*qo+Yi[5]*Rs+Yi[13],Df=Yi[2]*qo+Yi[6]*Rs+Yi[14],vd=Yi[3]*qo+Yi[7]*Rs+Yi[15],lh=Df+qa,zf=vd+Io,Rh=Su+As,Dh=bu+_o,zh=Df+Pa,Zc=vd+ns,Ff=new n((Su+Tn)/zf,(bu+jn)/zf);Ff.z=lh/zf,Vo.push(Ff);let xh=new n(Rh/Zc,Dh/Zc);xh.z=zh/Zc,va.push(xh)}Ln.push(Vo),un.push(va)}return[Ln,un]}(ke,ur,Qt,bt);return function($r,vi,Vi){let Yi=1/0;oi(Vi,vi)&&(Yi=fd(Vi,vi[0]));for(let Ln=0;LnY.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(Y=>{this.gradients[Y.id]={}}),this.layoutVertexArray=new Yu,this.layoutVertexArray2=new _u,this.indexArray=new Re,this.programConfigurations=new nl(D.layers,D.zoom),this.segments=new xt,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,he){this.hasPattern=pr("line",this.layers,Y);let ke=this.layers[0].layout.get("line-sort-key"),Ue=!ke.isConstant(),Ge=[];for(let{feature:st,id:bt,index:zt,sourceLayerIndex:Qt}of D){let ur=this.layers[0]._featureFilter.needGeometry,Mr=Gl(st,ur);if(!this.layers[0]._featureFilter.filter(new Os(this.zoom),Mr,he))continue;let Fr=Ue?ke.evaluate(Mr,{},he):void 0,$r={id:bt,properties:st.properties,type:st.type,sourceLayerIndex:Qt,index:zt,geometry:ur?Mr.geometry:Al(st),patterns:{},sortKey:Fr};Ge.push($r)}Ue&&Ge.sort((st,bt)=>st.sortKey-bt.sortKey);for(let st of Ge){let{geometry:bt,index:zt,sourceLayerIndex:Qt}=st;if(this.hasPattern){let ur=Ir("line",this.layers,st,this.zoom,Y);this.patternFeatures.push(ur)}else this.addFeature(st,bt,zt,he,{});Y.featureIndex.insert(D[zt].feature,bt,zt,Qt,this.index)}}update(D,Y,he){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,he)}addFeatures(D,Y,he){for(let ke of this.patternFeatures)this.addFeature(ke,ke.geometry,ke.index,Y,he)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=D.createVertexBuffer(this.layoutVertexArray2,Sd)),this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,Md),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(D){if(D.properties&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_end"))return{start:+D.properties.mapbox_clip_start,end:+D.properties.mapbox_clip_end}}addFeature(D,Y,he,ke,Ue){let Ge=this.layers[0].layout,st=Ge.get("line-join").evaluate(D,{}),bt=Ge.get("line-cap"),zt=Ge.get("line-miter-limit"),Qt=Ge.get("line-round-limit");this.lineClips=this.lineFeatureClips(D);for(let ur of Y)this.addLine(ur,D,st,bt,zt,Qt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,he,Ue,ke)}addLine(D,Y,he,ke,Ue,Ge){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let Yi=0;Yi=2&&D[bt-1].equals(D[bt-2]);)bt--;let zt=0;for(;zt0;if(Io&&Yi>zt){let ns=Mr.dist(Fr);if(ns>2*Qt){let Xo=Mr.sub(Mr.sub(Fr)._mult(Qt/ns)._round());this.updateDistance(Fr,Xo),this.addCurrentVertex(Xo,vi,0,0,ur),Fr=Xo}}let _o=Fr&&$r,Pa=_o?he:st?"butt":ke;if(_o&&Pa==="round"&&(jnUe&&(Pa="bevel"),Pa==="bevel"&&(jn>2&&(Pa="flipbevel"),jn100)Ln=Vi.mult(-1);else{let ns=jn*vi.add(Vi).mag()/vi.sub(Vi).mag();Ln._perp()._mult(ns*(As?-1:1))}this.addCurrentVertex(Mr,Ln,0,0,ur),this.addCurrentVertex(Mr,Ln.mult(-1),0,0,ur)}else if(Pa==="bevel"||Pa==="fakeround"){let ns=-Math.sqrt(jn*jn-1),Xo=As?ns:0,Vo=As?0:ns;if(Fr&&this.addCurrentVertex(Mr,vi,Xo,Vo,ur),Pa==="fakeround"){let va=Math.round(180*qa/Math.PI/20);for(let ds=1;ds2*Qt){let Xo=Mr.add($r.sub(Mr)._mult(Qt/ns)._round());this.updateDistance(Mr,Xo),this.addCurrentVertex(Xo,Vi,0,0,ur),Mr=Xo}}}}addCurrentVertex(D,Y,he,ke,Ue,Ge=!1){let st=Y.y*ke-Y.x,bt=-Y.y-Y.x*ke;this.addHalfVertex(D,Y.x+Y.y*he,Y.y-Y.x*he,Ge,!1,he,Ue),this.addHalfVertex(D,st,bt,Ge,!0,-ke,Ue),this.distance>td/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(D,Y,he,ke,Ue,Ge))}addHalfVertex({x:D,y:Y},he,ke,Ue,Ge,st,bt){let zt=.5*(this.lineClips?this.scaledDistance*(td-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((D<<1)+(Ue?1:0),(Y<<1)+(Ge?1:0),Math.round(63*he)+128,Math.round(63*ke)+128,1+(st===0?0:st<0?-1:1)|(63&zt)<<2,zt>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Qt=bt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Qt),bt.primitiveLength++),Ge?this.e2=Qt:this.e1=Qt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(D,Y){this.distance+=D.dist(Y),this.updateScaledDistance()}}let rd,Uv;cn("LineBucket",hd,{omit:["layers","patternFeatures"]});var tv={get paint(){return Uv=Uv||new Be({"line-opacity":new Ko(ne.paint_line["line-opacity"]),"line-color":new Ko(ne.paint_line["line-color"]),"line-translate":new bo(ne.paint_line["line-translate"]),"line-translate-anchor":new bo(ne.paint_line["line-translate-anchor"]),"line-width":new Ko(ne.paint_line["line-width"]),"line-gap-width":new Ko(ne.paint_line["line-gap-width"]),"line-offset":new Ko(ne.paint_line["line-offset"]),"line-blur":new Ko(ne.paint_line["line-blur"]),"line-dasharray":new gc(ne.paint_line["line-dasharray"]),"line-pattern":new qc(ne.paint_line["line-pattern"]),"line-gradient":new yc(ne.paint_line["line-gradient"])})},get layout(){return rd=rd||new Be({"line-cap":new bo(ne.layout_line["line-cap"]),"line-join":new Ko(ne.layout_line["line-join"]),"line-miter-limit":new bo(ne.layout_line["line-miter-limit"]),"line-round-limit":new bo(ne.layout_line["line-round-limit"]),"line-sort-key":new Ko(ne.layout_line["line-sort-key"])})}};class wf extends Ko{possiblyEvaluate(D,Y){return Y=new Os(Math.floor(Y.zoom),{now:Y.now,fadeDuration:Y.fadeDuration,zoomHistory:Y.zoomHistory,transition:Y.transition}),super.possiblyEvaluate(D,Y)}evaluate(D,Y,he,ke){return Y=E({},Y,{zoom:Math.floor(Y.zoom)}),super.evaluate(D,Y,he,ke)}}let rv;class jv extends ie{constructor(D){super(D,tv),this.gradientVersion=0,rv||(rv=new wf(tv.paint.properties["line-width"].specification),rv.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(D){if(D==="line-gradient"){let Y=this.gradientExpression();this.stepInterpolant=!!function(he){return he._styleExpression!==void 0}(Y)&&Y._styleExpression.expression instanceof Ii,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(D,Y){super.recalculate(D,Y),this.paint._values["line-floorwidth"]=rv.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,D)}createBucket(D){return new hd(D)}queryRadius(D){let Y=D,he=Xf(ca("line-width",this,Y),ca("line-gap-width",this,Y)),ke=ca("line-offset",this,Y);return he/2+Math.abs(ke)+$o(this.paint.get("line-translate"))}queryIntersectsFeature(D,Y,he,ke,Ue,Ge,st){let bt=wa(D,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ge.angle,st),zt=st/2*Xf(this.paint.get("line-width").evaluate(Y,he),this.paint.get("line-gap-width").evaluate(Y,he)),Qt=this.paint.get("line-offset").evaluate(Y,he);return Qt&&(ke=function(ur,Mr){let Fr=[];for(let $r=0;$r=3){for(let Vi=0;Vi0?D+2*q:q}let _v=ut([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),_p=ut([{name:"a_projected_pos",components:3,type:"Float32"}],4);ut([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let xp=ut([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ut([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let Vv=ut([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),xv=ut([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function bv(q,D,Y){return q.sections.forEach(he=>{he.text=function(ke,Ue,Ge){let st=Ue.layout.get("text-transform").evaluate(Ge,{});return st==="uppercase"?ke=ke.toLocaleUpperCase():st==="lowercase"&&(ke=ke.toLocaleLowerCase()),el.applyArabicShaping&&(ke=el.applyArabicShaping(ke)),ke}(he.text,D,Y)}),q}ut([{name:"triangle",components:3,type:"Uint16"}]),ut([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),ut([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ut([{type:"Float32",name:"offsetX"}]),ut([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ut([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Ou={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Yl=24,yh=su,qv=function(q,D,Y,he,ke){var Ue,Ge,st=8*ke-he-1,bt=(1<>1,Qt=-7,ur=Y?ke-1:0,Mr=Y?-1:1,Fr=q[D+ur];for(ur+=Mr,Ue=Fr&(1<<-Qt)-1,Fr>>=-Qt,Qt+=st;Qt>0;Ue=256*Ue+q[D+ur],ur+=Mr,Qt-=8);for(Ge=Ue&(1<<-Qt)-1,Ue>>=-Qt,Qt+=he;Qt>0;Ge=256*Ge+q[D+ur],ur+=Mr,Qt-=8);if(Ue===0)Ue=1-zt;else{if(Ue===bt)return Ge?NaN:1/0*(Fr?-1:1);Ge+=Math.pow(2,he),Ue-=zt}return(Fr?-1:1)*Ge*Math.pow(2,Ue-he)},bp=function(q,D,Y,he,ke,Ue){var Ge,st,bt,zt=8*Ue-ke-1,Qt=(1<>1,Mr=ke===23?Math.pow(2,-24)-Math.pow(2,-77):0,Fr=he?0:Ue-1,$r=he?1:-1,vi=D<0||D===0&&1/D<0?1:0;for(D=Math.abs(D),isNaN(D)||D===1/0?(st=isNaN(D)?1:0,Ge=Qt):(Ge=Math.floor(Math.log(D)/Math.LN2),D*(bt=Math.pow(2,-Ge))<1&&(Ge--,bt*=2),(D+=Ge+ur>=1?Mr/bt:Mr*Math.pow(2,1-ur))*bt>=2&&(Ge++,bt/=2),Ge+ur>=Qt?(st=0,Ge=Qt):Ge+ur>=1?(st=(D*bt-1)*Math.pow(2,ke),Ge+=ur):(st=D*Math.pow(2,ur-1)*Math.pow(2,ke),Ge=0));ke>=8;q[Y+Fr]=255&st,Fr+=$r,st/=256,ke-=8);for(Ge=Ge<0;q[Y+Fr]=255&Ge,Fr+=$r,Ge/=256,zt-=8);q[Y+Fr-$r]|=128*vi};function su(q){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(q)?q:new Uint8Array(q||0),this.pos=0,this.type=0,this.length=this.buf.length}su.Varint=0,su.Fixed64=1,su.Bytes=2,su.Fixed32=5;var cm=4294967296,wv=1/cm,cg=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function id(q){return q.type===su.Bytes?q.readVarint()+q.pos:q.pos+1}function Tv(q,D,Y){return Y?4294967296*D+(q>>>0):4294967296*(D>>>0)+(q>>>0)}function fg(q,D,Y){var he=D<=16383?1:D<=2097151?2:D<=268435455?3:Math.floor(Math.log(D)/(7*Math.LN2));Y.realloc(he);for(var ke=Y.pos-1;ke>=q;ke--)Y.buf[ke+he]=Y.buf[ke]}function fm(q,D){for(var Y=0;Y>>8,q[Y+2]=D>>>16,q[Y+3]=D>>>24}function c1(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+(q[D+3]<<24)}su.prototype={destroy:function(){this.buf=null},readFields:function(q,D,Y){for(Y=Y||this.length;this.pos>3,Ue=this.pos;this.type=7&he,q(ke,D,this),this.pos===Ue&&this.skip(he)}return D},readMessage:function(q,D){return this.readFields(q,D,this.readVarint()+this.pos)},readFixed32:function(){var q=Hv(this.buf,this.pos);return this.pos+=4,q},readSFixed32:function(){var q=c1(this.buf,this.pos);return this.pos+=4,q},readFixed64:function(){var q=Hv(this.buf,this.pos)+Hv(this.buf,this.pos+4)*cm;return this.pos+=8,q},readSFixed64:function(){var q=Hv(this.buf,this.pos)+c1(this.buf,this.pos+4)*cm;return this.pos+=8,q},readFloat:function(){var q=qv(this.buf,this.pos,!0,23,4);return this.pos+=4,q},readDouble:function(){var q=qv(this.buf,this.pos,!0,52,8);return this.pos+=8,q},readVarint:function(q){var D,Y,he=this.buf;return D=127&(Y=he[this.pos++]),Y<128?D:(D|=(127&(Y=he[this.pos++]))<<7,Y<128?D:(D|=(127&(Y=he[this.pos++]))<<14,Y<128?D:(D|=(127&(Y=he[this.pos++]))<<21,Y<128?D:function(ke,Ue,Ge){var st,bt,zt=Ge.buf;if(st=(112&(bt=zt[Ge.pos++]))>>4,bt<128||(st|=(127&(bt=zt[Ge.pos++]))<<3,bt<128)||(st|=(127&(bt=zt[Ge.pos++]))<<10,bt<128)||(st|=(127&(bt=zt[Ge.pos++]))<<17,bt<128)||(st|=(127&(bt=zt[Ge.pos++]))<<24,bt<128)||(st|=(1&(bt=zt[Ge.pos++]))<<31,bt<128))return Tv(ke,st,Ue);throw new Error("Expected varint not more than 10 bytes")}(D|=(15&(Y=he[this.pos]))<<28,q,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var q=this.readVarint();return q%2==1?(q+1)/-2:q/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var q=this.readVarint()+this.pos,D=this.pos;return this.pos=q,q-D>=12&&cg?function(Y,he,ke){return cg.decode(Y.subarray(he,ke))}(this.buf,D,q):function(Y,he,ke){for(var Ue="",Ge=he;Ge239?4:Qt>223?3:Qt>191?2:1;if(Ge+Mr>ke)break;Mr===1?Qt<128&&(ur=Qt):Mr===2?(192&(st=Y[Ge+1]))==128&&(ur=(31&Qt)<<6|63&st)<=127&&(ur=null):Mr===3?(bt=Y[Ge+2],(192&(st=Y[Ge+1]))==128&&(192&bt)==128&&((ur=(15&Qt)<<12|(63&st)<<6|63&bt)<=2047||ur>=55296&&ur<=57343)&&(ur=null)):Mr===4&&(bt=Y[Ge+2],zt=Y[Ge+3],(192&(st=Y[Ge+1]))==128&&(192&bt)==128&&(192&zt)==128&&((ur=(15&Qt)<<18|(63&st)<<12|(63&bt)<<6|63&zt)<=65535||ur>=1114112)&&(ur=null)),ur===null?(ur=65533,Mr=1):ur>65535&&(ur-=65536,Ue+=String.fromCharCode(ur>>>10&1023|55296),ur=56320|1023&ur),Ue+=String.fromCharCode(ur),Ge+=Mr}return Ue}(this.buf,D,q)},readBytes:function(){var q=this.readVarint()+this.pos,D=this.buf.subarray(this.pos,q);return this.pos=q,D},readPackedVarint:function(q,D){if(this.type!==su.Bytes)return q.push(this.readVarint(D));var Y=id(this);for(q=q||[];this.pos127;);else if(D===su.Bytes)this.pos=this.readVarint()+this.pos;else if(D===su.Fixed32)this.pos+=4;else{if(D!==su.Fixed64)throw new Error("Unimplemented type: "+D);this.pos+=8}},writeTag:function(q,D){this.writeVarint(q<<3|D)},realloc:function(q){for(var D=this.length||16;D268435455||q<0?function(D,Y){var he,ke;if(D>=0?(he=D%4294967296|0,ke=D/4294967296|0):(ke=~(-D/4294967296),4294967295^(he=~(-D%4294967296))?he=he+1|0:(he=0,ke=ke+1|0)),D>=18446744073709552e3||D<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");Y.realloc(10),function(Ue,Ge,st){st.buf[st.pos++]=127&Ue|128,Ue>>>=7,st.buf[st.pos++]=127&Ue|128,Ue>>>=7,st.buf[st.pos++]=127&Ue|128,Ue>>>=7,st.buf[st.pos++]=127&Ue|128,st.buf[st.pos]=127&(Ue>>>=7)}(he,0,Y),function(Ue,Ge){var st=(7&Ue)<<4;Ge.buf[Ge.pos++]|=st|((Ue>>>=3)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue)))))}(ke,Y)}(q,this):(this.realloc(4),this.buf[this.pos++]=127&q|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=q>>>7&127))))},writeSVarint:function(q){this.writeVarint(q<0?2*-q-1:2*q)},writeBoolean:function(q){this.writeVarint(!!q)},writeString:function(q){q=String(q),this.realloc(4*q.length),this.pos++;var D=this.pos;this.pos=function(he,ke,Ue){for(var Ge,st,bt=0;bt55295&&Ge<57344){if(!st){Ge>56319||bt+1===ke.length?(he[Ue++]=239,he[Ue++]=191,he[Ue++]=189):st=Ge;continue}if(Ge<56320){he[Ue++]=239,he[Ue++]=191,he[Ue++]=189,st=Ge;continue}Ge=st-55296<<10|Ge-56320|65536,st=null}else st&&(he[Ue++]=239,he[Ue++]=191,he[Ue++]=189,st=null);Ge<128?he[Ue++]=Ge:(Ge<2048?he[Ue++]=Ge>>6|192:(Ge<65536?he[Ue++]=Ge>>12|224:(he[Ue++]=Ge>>18|240,he[Ue++]=Ge>>12&63|128),he[Ue++]=Ge>>6&63|128),he[Ue++]=63&Ge|128)}return Ue}(this.buf,q,this.pos);var Y=this.pos-D;Y>=128&&fg(D,Y,this),this.pos=D-1,this.writeVarint(Y),this.pos+=Y},writeFloat:function(q){this.realloc(4),bp(this.buf,q,this.pos,!0,23,4),this.pos+=4},writeDouble:function(q){this.realloc(8),bp(this.buf,q,this.pos,!0,52,8),this.pos+=8},writeBytes:function(q){var D=q.length;this.writeVarint(D),this.realloc(D);for(var Y=0;Y=128&&fg(Y,he,this),this.pos=Y-1,this.writeVarint(he),this.pos+=he},writeMessage:function(q,D,Y){this.writeTag(q,su.Bytes),this.writeRawMessage(D,Y)},writePackedVarint:function(q,D){D.length&&this.writeMessage(q,fm,D)},writePackedSVarint:function(q,D){D.length&&this.writeMessage(q,jb,D)},writePackedBoolean:function(q,D){D.length&&this.writeMessage(q,Hb,D)},writePackedFloat:function(q,D){D.length&&this.writeMessage(q,Vb,D)},writePackedDouble:function(q,D){D.length&&this.writeMessage(q,qb,D)},writePackedFixed32:function(q,D){D.length&&this.writeMessage(q,WM,D)},writePackedSFixed32:function(q,D){D.length&&this.writeMessage(q,Gb,D)},writePackedFixed64:function(q,D){D.length&&this.writeMessage(q,Wb,D)},writePackedSFixed64:function(q,D){D.length&&this.writeMessage(q,Xb,D)},writeBytesField:function(q,D){this.writeTag(q,su.Bytes),this.writeBytes(D)},writeFixed32Field:function(q,D){this.writeTag(q,su.Fixed32),this.writeFixed32(D)},writeSFixed32Field:function(q,D){this.writeTag(q,su.Fixed32),this.writeSFixed32(D)},writeFixed64Field:function(q,D){this.writeTag(q,su.Fixed64),this.writeFixed64(D)},writeSFixed64Field:function(q,D){this.writeTag(q,su.Fixed64),this.writeSFixed64(D)},writeVarintField:function(q,D){this.writeTag(q,su.Varint),this.writeVarint(D)},writeSVarintField:function(q,D){this.writeTag(q,su.Varint),this.writeSVarint(D)},writeStringField:function(q,D){this.writeTag(q,su.Bytes),this.writeString(D)},writeFloatField:function(q,D){this.writeTag(q,su.Fixed32),this.writeFloat(D)},writeDoubleField:function(q,D){this.writeTag(q,su.Fixed64),this.writeDouble(D)},writeBooleanField:function(q,D){this.writeVarintField(q,!!D)}};var T0=r(yh);let A0=3;function XM(q,D,Y){q===1&&Y.readMessage(Zb,D)}function Zb(q,D,Y){if(q===3){let{id:he,bitmap:ke,width:Ue,height:Ge,left:st,top:bt,advance:zt}=Y.readMessage(f1,{});D.push({id:he,bitmap:new xs({width:Ue+2*A0,height:Ge+2*A0},ke),metrics:{width:Ue,height:Ge,left:st,top:bt,advance:zt}})}}function f1(q,D,Y){q===1?D.id=Y.readVarint():q===2?D.bitmap=Y.readBytes():q===3?D.width=Y.readVarint():q===4?D.height=Y.readVarint():q===5?D.left=Y.readSVarint():q===6?D.top=Y.readSVarint():q===7&&(D.advance=Y.readVarint())}let h1=A0;function M0(q){let D=0,Y=0;for(let Ge of q)D+=Ge.w*Ge.h,Y=Math.max(Y,Ge.w);q.sort((Ge,st)=>st.h-Ge.h);let he=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(D/.95)),Y),h:1/0}],ke=0,Ue=0;for(let Ge of q)for(let st=he.length-1;st>=0;st--){let bt=he[st];if(!(Ge.w>bt.w||Ge.h>bt.h)){if(Ge.x=bt.x,Ge.y=bt.y,Ue=Math.max(Ue,Ge.y+Ge.h),ke=Math.max(ke,Ge.x+Ge.w),Ge.w===bt.w&&Ge.h===bt.h){let zt=he.pop();st=0&&he>=D&&vg[this.text.charCodeAt(he)];he--)Y--;this.text=this.text.substring(D,Y),this.sectionIndex=this.sectionIndex.slice(D,Y)}substring(D,Y){let he=new wp;return he.text=this.text.substring(D,Y),he.sectionIndex=this.sectionIndex.slice(D,Y),he.sections=this.sections,he}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((D,Y)=>Math.max(D,this.sections[Y].scale),0)}addTextSection(D,Y){this.text+=D.text,this.sections.push(dm.forText(D.scale,D.fontStack||Y));let he=this.sections.length-1;for(let ke=0;ke=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function vm(q,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r){let vi=wp.fromFeature(q,ke),Vi;ur===e.ah.vertical&&vi.verticalizePunctuation();let{processBidirectionalText:Yi,processStyledBidirectionalText:Ln}=el;if(Yi&&vi.sections.length===1){Vi=[];let jn=Yi(vi.toString(),Tp(vi,zt,Ue,D,he,Fr));for(let qa of jn){let Io=new wp;Io.text=qa,Io.sections=vi.sections;for(let As=0;As0&&md>sf&&(sf=md)}else{let oc=Io[Kl.fontStack],mf=oc&&oc[Eu];if(mf&&mf.rect)Cp=mf.rect,Ic=mf.metrics;else{let md=qa[Kl.fontStack],ov=md&&md[Eu];if(!ov)continue;Ic=ov.metrics}od=(Ff-Kl.scale)*Yl}pd?(jn.verticalizable=!0,Zf.push({glyph:Eu,imageName:jd,x:Rs,y:Su+od,vertical:pd,scale:Kl.scale,fontStack:Kl.fontStack,sectionIndex:Nu,metrics:Ic,rect:Cp}),Rs+=Rd*Kl.scale+va):(Zf.push({glyph:Eu,imageName:jd,x:Rs,y:Su+od,vertical:pd,scale:Kl.scale,fontStack:Kl.fontStack,sectionIndex:Nu,metrics:Ic,rect:Cp}),Rs+=Ic.advance*Kl.scale+va)}Zf.length!==0&&(bu=Math.max(Rs-va,bu),Av(Zf,0,Zf.length-1,vd,sf)),Rs=0;let ad=Pa*Ff+sf;uh.lineOffset=Math.max(sf,xh),Su+=ad,Df=Math.max(ad,Df),++lh}var zf;let Rh=Su-Rf,{horizontalAlign:Dh,verticalAlign:zh}=mg(ns);(function(Zc,Ff,xh,uh,Zf,sf,ad,qh,Kl){let Nu=(Ff-xh)*Zf,Eu=0;Eu=sf!==ad?-qh*uh-Rf:(-uh*Kl+.5)*ad;for(let od of Zc)for(let Ic of od.positionedGlyphs)Ic.x+=Nu,Ic.y+=Eu})(jn.positionedLines,vd,Dh,zh,bu,Df,Pa,Rh,_o.length),jn.top+=-zh*Rh,jn.bottom=jn.top+Rh,jn.left+=-Dh*bu,jn.right=jn.left+bu}(Tn,D,Y,he,Vi,Ge,st,bt,ur,zt,Mr,$r),!function(jn){for(let qa of jn)if(qa.positionedGlyphs.length!==0)return!1;return!0}(un)&&Tn}let vg={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Yb={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},Kb={40:!0};function d1(q,D,Y,he,ke,Ue){if(D.imageName){let Ge=he[D.imageName];return Ge?Ge.displaySize[0]*D.scale*Yl/Ue+ke:0}{let Ge=Y[D.fontStack],st=Ge&&Ge[q];return st?st.metrics.advance*D.scale+ke:0}}function v1(q,D,Y,he){let ke=Math.pow(q-D,2);return he?q=0,zt=0;for(let ur=0;urzt){let Qt=Math.ceil(Ue/zt);ke*=Qt/Ge,Ge=Qt}return{x1:he,y1:ke,x2:he+Ue,y2:ke+Ge}}function g1(q,D,Y,he,ke,Ue){let Ge=q.image,st;if(Ge.content){let Vi=Ge.content,Yi=Ge.pixelRatio||1;st=[Vi[0]/Yi,Vi[1]/Yi,Ge.displaySize[0]-Vi[2]/Yi,Ge.displaySize[1]-Vi[3]/Yi]}let bt=D.left*Ue,zt=D.right*Ue,Qt,ur,Mr,Fr;Y==="width"||Y==="both"?(Fr=ke[0]+bt-he[3],ur=ke[0]+zt+he[1]):(Fr=ke[0]+(bt+zt-Ge.displaySize[0])/2,ur=Fr+Ge.displaySize[0]);let $r=D.top*Ue,vi=D.bottom*Ue;return Y==="height"||Y==="both"?(Qt=ke[1]+$r-he[0],Mr=ke[1]+vi+he[2]):(Qt=ke[1]+($r+vi-Ge.displaySize[1])/2,Mr=Qt+Ge.displaySize[1]),{image:Ge,top:Qt,right:ur,bottom:Mr,left:Fr,collisionPadding:st}}let mm=255,Ud=128,Mv=mm*Ud;function y1(q,D){let{expression:Y}=D;if(Y.kind==="constant")return{kind:"constant",layoutSize:Y.evaluate(new Os(q+1))};if(Y.kind==="source")return{kind:"source"};{let{zoomStops:he,interpolationType:ke}=Y,Ue=0;for(;UeGe.id),this.index=D.index,this.pixelRatio=D.pixelRatio,this.sourceLayerIndex=D.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Ca([]),this.placementViewportMatrix=Ca([]);let Y=this.layers[0]._unevaluatedLayout._values;this.textSizeData=y1(this.zoom,Y["text-size"]),this.iconSizeData=y1(this.zoom,Y["icon-size"]);let he=this.layers[0].layout,ke=he.get("symbol-sort-key"),Ue=he.get("symbol-z-order");this.canOverlap=S0(he,"text-overlap","text-allow-overlap")!=="never"||S0(he,"icon-overlap","icon-allow-overlap")!=="never"||he.get("text-ignore-placement")||he.get("icon-ignore-placement"),this.sortFeaturesByKey=Ue!=="viewport-y"&&!ke.isConstant(),this.sortFeaturesByY=(Ue==="viewport-y"||Ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,he.get("symbol-placement")==="point"&&(this.writingModes=he.get("text-writing-mode").map(Ge=>e.ah[Ge])),this.stateDependentLayerIds=this.layers.filter(Ge=>Ge.isStateDependent()).map(Ge=>Ge.id),this.sourceID=D.sourceID}createArrays(){this.text=new C0(new nl(this.layers,this.zoom,D=>/^text/.test(D))),this.icon=new C0(new nl(this.layers,this.zoom,D=>/^icon/.test(D))),this.glyphOffsetArray=new _s,this.lineVertexArray=new Oo,this.symbolInstances=new Do,this.textAnchorOffsets=new Ms}calculateGlyphDependencies(D,Y,he,ke,Ue){for(let Ge=0;Ge0)&&(Ge.value.kind!=="constant"||Ge.value.value.length>0),Qt=bt.value.kind!=="constant"||!!bt.value.value||Object.keys(bt.parameters).length>0,ur=Ue.get("symbol-sort-key");if(this.features=[],!zt&&!Qt)return;let Mr=Y.iconDependencies,Fr=Y.glyphDependencies,$r=Y.availableImages,vi=new Os(this.zoom);for(let{feature:Vi,id:Yi,index:Ln,sourceLayerIndex:un}of D){let Tn=ke._featureFilter.needGeometry,jn=Gl(Vi,Tn);if(!ke._featureFilter.filter(vi,jn,he))continue;let qa,Io;if(Tn||(jn.geometry=Al(Vi)),zt){let _o=ke.getValueAndResolveTokens("text-field",jn,he,$r),Pa=_i.factory(_o),ns=this.hasRTLText=this.hasRTLText||k0(Pa);(!ns||el.getRTLTextPluginStatus()==="unavailable"||ns&&el.isParsed())&&(qa=bv(Pa,ke,jn))}if(Qt){let _o=ke.getValueAndResolveTokens("icon-image",jn,he,$r);Io=_o instanceof $i?_o:$i.fromString(_o)}if(!qa&&!Io)continue;let As=this.sortFeaturesByKey?ur.evaluate(jn,{},he):void 0;if(this.features.push({id:Yi,text:qa,icon:Io,index:Ln,sourceLayerIndex:un,geometry:jn.geometry,properties:Vi.properties,type:Jb[Vi.type],sortKey:As}),Io&&(Mr[Io.name]=!0),qa){let _o=Ge.evaluate(jn,{},he).join(","),Pa=Ue.get("text-rotation-alignment")!=="viewport"&&Ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(e.ah.vertical)>=0;for(let ns of qa.sections)if(ns.image)Mr[ns.image.name]=!0;else{let Xo=Po(qa.toString()),Vo=ns.fontStack||_o,va=Fr[Vo]=Fr[Vo]||{};this.calculateGlyphDependencies(ns.text,va,Pa,this.allowVerticalPlacement,Xo)}}}Ue.get("symbol-placement")==="line"&&(this.features=function(Vi){let Yi={},Ln={},un=[],Tn=0;function jn(_o){un.push(Vi[_o]),Tn++}function qa(_o,Pa,ns){let Xo=Ln[_o];return delete Ln[_o],Ln[Pa]=Xo,un[Xo].geometry[0].pop(),un[Xo].geometry[0]=un[Xo].geometry[0].concat(ns[0]),Xo}function Io(_o,Pa,ns){let Xo=Yi[Pa];return delete Yi[Pa],Yi[_o]=Xo,un[Xo].geometry[0].shift(),un[Xo].geometry[0]=ns[0].concat(un[Xo].geometry[0]),Xo}function As(_o,Pa,ns){let Xo=ns?Pa[0][Pa[0].length-1]:Pa[0][0];return`${_o}:${Xo.x}:${Xo.y}`}for(let _o=0;_o_o.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((Vi,Yi)=>Vi.sortKey-Yi.sortKey)}update(D,Y,he){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(D,Y,this.layers,he),this.icon.programConfigurations.updatePaintArrays(D,Y,this.layers,he))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(D){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(D),this.iconCollisionBox.upload(D)),this.text.upload(D,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(D,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(D,Y){let he=this.lineVertexArray.length;if(D.segment!==void 0){let ke=D.dist(Y[D.segment+1]),Ue=D.dist(Y[D.segment]),Ge={};for(let st=D.segment+1;st=0;st--)Ge[st]={x:Y[st].x,y:Y[st].y,tileUnitDistanceFromAnchor:Ue},st>0&&(Ue+=Y[st-1].dist(Y[st]));for(let st=0;st0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(D,Y){let he=D.placedSymbolArray.get(Y),ke=he.vertexStartIndex+4*he.numGlyphs;for(let Ue=he.vertexStartIndex;Ueke[st]-ke[bt]||Ue[bt]-Ue[st]),Ge}addToSortKeyRanges(D,Y){let he=this.sortKeyRanges[this.sortKeyRanges.length-1];he&&he.sortKey===Y?he.symbolInstanceEnd=D+1:this.sortKeyRanges.push({sortKey:Y,symbolInstanceStart:D,symbolInstanceEnd:D+1})}sortFeatures(D){if(this.sortFeaturesByY&&this.sortedAngle!==D&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(D),this.sortedAngle=D,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let Y of this.symbolInstanceIndexes){let he=this.symbolInstances.get(Y);this.featureSortOrder.push(he.featureIndex),[he.rightJustifiedTextSymbolIndex,he.centerJustifiedTextSymbolIndex,he.leftJustifiedTextSymbolIndex].forEach((ke,Ue,Ge)=>{ke>=0&&Ge.indexOf(ke)===Ue&&this.addIndicesForPlacedSymbol(this.text,ke)}),he.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,he.verticalPlacedTextSymbolIndex),he.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.placedIconSymbolIndex),he.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Xc,gm;cn("SymbolBucket",Ap,{omit:["layers","collisionBoxArray","features","compareText"]}),Ap.MAX_GLYPHS=65535,Ap.addDynamicAttributes=E0;var yg={get paint(){return gm=gm||new Be({"icon-opacity":new Ko(ne.paint_symbol["icon-opacity"]),"icon-color":new Ko(ne.paint_symbol["icon-color"]),"icon-halo-color":new Ko(ne.paint_symbol["icon-halo-color"]),"icon-halo-width":new Ko(ne.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Ko(ne.paint_symbol["icon-halo-blur"]),"icon-translate":new bo(ne.paint_symbol["icon-translate"]),"icon-translate-anchor":new bo(ne.paint_symbol["icon-translate-anchor"]),"text-opacity":new Ko(ne.paint_symbol["text-opacity"]),"text-color":new Ko(ne.paint_symbol["text-color"],{runtimeType:Bt,getOverride:q=>q.textColor,hasOverride:q=>!!q.textColor}),"text-halo-color":new Ko(ne.paint_symbol["text-halo-color"]),"text-halo-width":new Ko(ne.paint_symbol["text-halo-width"]),"text-halo-blur":new Ko(ne.paint_symbol["text-halo-blur"]),"text-translate":new bo(ne.paint_symbol["text-translate"]),"text-translate-anchor":new bo(ne.paint_symbol["text-translate-anchor"])})},get layout(){return Xc=Xc||new Be({"symbol-placement":new bo(ne.layout_symbol["symbol-placement"]),"symbol-spacing":new bo(ne.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new bo(ne.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Ko(ne.layout_symbol["symbol-sort-key"]),"symbol-z-order":new bo(ne.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new bo(ne.layout_symbol["icon-allow-overlap"]),"icon-overlap":new bo(ne.layout_symbol["icon-overlap"]),"icon-ignore-placement":new bo(ne.layout_symbol["icon-ignore-placement"]),"icon-optional":new bo(ne.layout_symbol["icon-optional"]),"icon-rotation-alignment":new bo(ne.layout_symbol["icon-rotation-alignment"]),"icon-size":new Ko(ne.layout_symbol["icon-size"]),"icon-text-fit":new bo(ne.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new bo(ne.layout_symbol["icon-text-fit-padding"]),"icon-image":new Ko(ne.layout_symbol["icon-image"]),"icon-rotate":new Ko(ne.layout_symbol["icon-rotate"]),"icon-padding":new Ko(ne.layout_symbol["icon-padding"]),"icon-keep-upright":new bo(ne.layout_symbol["icon-keep-upright"]),"icon-offset":new Ko(ne.layout_symbol["icon-offset"]),"icon-anchor":new Ko(ne.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new bo(ne.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new bo(ne.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new bo(ne.layout_symbol["text-rotation-alignment"]),"text-field":new Ko(ne.layout_symbol["text-field"]),"text-font":new Ko(ne.layout_symbol["text-font"]),"text-size":new Ko(ne.layout_symbol["text-size"]),"text-max-width":new Ko(ne.layout_symbol["text-max-width"]),"text-line-height":new bo(ne.layout_symbol["text-line-height"]),"text-letter-spacing":new Ko(ne.layout_symbol["text-letter-spacing"]),"text-justify":new Ko(ne.layout_symbol["text-justify"]),"text-radial-offset":new Ko(ne.layout_symbol["text-radial-offset"]),"text-variable-anchor":new bo(ne.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Ko(ne.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Ko(ne.layout_symbol["text-anchor"]),"text-max-angle":new bo(ne.layout_symbol["text-max-angle"]),"text-writing-mode":new bo(ne.layout_symbol["text-writing-mode"]),"text-rotate":new Ko(ne.layout_symbol["text-rotate"]),"text-padding":new bo(ne.layout_symbol["text-padding"]),"text-keep-upright":new bo(ne.layout_symbol["text-keep-upright"]),"text-transform":new Ko(ne.layout_symbol["text-transform"]),"text-offset":new Ko(ne.layout_symbol["text-offset"]),"text-allow-overlap":new bo(ne.layout_symbol["text-allow-overlap"]),"text-overlap":new bo(ne.layout_symbol["text-overlap"]),"text-ignore-placement":new bo(ne.layout_symbol["text-ignore-placement"]),"text-optional":new bo(ne.layout_symbol["text-optional"])})}};class ym{constructor(D){if(D.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=D.property.overrides?D.property.overrides.runtimeType:it,this.defaultValue=D}evaluate(D){if(D.formattedSection){let Y=this.defaultValue.property.overrides;if(Y&&Y.hasOverride(D.formattedSection))return Y.getOverride(D.formattedSection)}return D.feature&&D.featureState?this.defaultValue.evaluate(D.feature,D.featureState):this.defaultValue.property.specification.default}eachChild(D){this.defaultValue.isConstant()||D(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}cn("FormatSectionOverride",ym,{omit:["defaultValue"]});class Gv extends ie{constructor(D){super(D,yg)}recalculate(D,Y){if(super.recalculate(D,Y),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let he=this.layout.get("text-writing-mode");if(he){let ke=[];for(let Ue of he)ke.indexOf(Ue)<0&&ke.push(Ue);this.layout._values["text-writing-mode"]=ke}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(D,Y,he,ke){let Ue=this.layout.get(D).evaluate(Y,{},he,ke),Ge=this._unevaluatedLayout._values[D];return Ge.isDataDriven()||Mc(Ge.value)||!Ue?Ue:function(st,bt){return bt.replace(/{([^{}]+)}/g,(zt,Qt)=>st&&Qt in st?String(st[Qt]):"")}(Y.properties,Ue)}createBucket(D){return new Ap(D)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let D of yg.paint.overridableProperties){if(!Gv.hasPaintOverride(this.layout,D))continue;let Y=this.paint.get(D),he=new ym(Y),ke=new Ru(he,Y.property.specification),Ue=null;Ue=Y.value.kind==="constant"||Y.value.kind==="source"?new Uc("source",ke):new ic("composite",ke,Y.value.zoomStops),this.paint._values[D]=new Fu(Y.property,Ue,Y.parameters)}}_handleOverridablePaintPropertyUpdate(D,Y,he){return!(!this.layout||Y.isDataDriven()||he.isDataDriven())&&Gv.hasPaintOverride(this.layout,D)}static hasPaintOverride(D,Y){let he=D.get("text-field"),ke=yg.paint.properties[Y],Ue=!1,Ge=st=>{for(let bt of st)if(ke.overrides&&ke.overrides.hasOverride(bt))return void(Ue=!0)};if(he.value.kind==="constant"&&he.value.value instanceof _i)Ge(he.value.value.sections);else if(he.value.kind==="source"){let st=zt=>{Ue||(zt instanceof kr&&vt(zt.value)===Lr?Ge(zt.value.sections):zt instanceof Ds?Ge(zt.sections):zt.eachChild(st))},bt=he.value;bt._styleExpression&&st(bt._styleExpression.expression)}return Ue}}let _1;var _m={get paint(){return _1=_1||new Be({"background-color":new bo(ne.paint_background["background-color"]),"background-pattern":new gc(ne.paint_background["background-pattern"]),"background-opacity":new bo(ne.paint_background["background-opacity"])})}};class ew extends ie{constructor(D){super(D,_m)}}let L0;var x1={get paint(){return L0=L0||new Be({"raster-opacity":new bo(ne.paint_raster["raster-opacity"]),"raster-hue-rotate":new bo(ne.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new bo(ne.paint_raster["raster-brightness-min"]),"raster-brightness-max":new bo(ne.paint_raster["raster-brightness-max"]),"raster-saturation":new bo(ne.paint_raster["raster-saturation"]),"raster-contrast":new bo(ne.paint_raster["raster-contrast"]),"raster-resampling":new bo(ne.paint_raster["raster-resampling"]),"raster-fade-duration":new bo(ne.paint_raster["raster-fade-duration"])})}};class xm extends ie{constructor(D){super(D,x1)}}class P0 extends ie{constructor(D){super(D,{}),this.onAdd=Y=>{this.implementation.onAdd&&this.implementation.onAdd(Y,Y.painter.context.gl)},this.onRemove=Y=>{this.implementation.onRemove&&this.implementation.onRemove(Y,Y.painter.context.gl)},this.implementation=D}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class I0{constructor(D){this._methodToThrottle=D,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let R0=63710088e-1;class iv{constructor(D,Y){if(isNaN(D)||isNaN(Y))throw new Error(`Invalid LngLat object: (${D}, ${Y})`);if(this.lng=+D,this.lat=+Y,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new iv(M(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(D){let Y=Math.PI/180,he=this.lat*Y,ke=D.lat*Y,Ue=Math.sin(he)*Math.sin(ke)+Math.cos(he)*Math.cos(ke)*Math.cos((D.lng-this.lng)*Y);return R0*Math.acos(Math.min(Ue,1))}static convert(D){if(D instanceof iv)return D;if(Array.isArray(D)&&(D.length===2||D.length===3))return new iv(Number(D[0]),Number(D[1]));if(!Array.isArray(D)&&typeof D=="object"&&D!==null)return new iv(Number("lng"in D?D.lng:D.lon),Number(D.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let Mp=2*Math.PI*R0;function b1(q){return Mp*Math.cos(q*Math.PI/180)}function _g(q){return(180+q)/360}function w1(q){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q*Math.PI/360)))/360}function xg(q,D){return q/b1(D)}function bm(q){return 360/Math.PI*Math.atan(Math.exp((180-360*q)*Math.PI/180))-90}class wm{constructor(D,Y,he=0){this.x=+D,this.y=+Y,this.z=+he}static fromLngLat(D,Y=0){let he=iv.convert(D);return new wm(_g(he.lng),w1(he.lat),xg(Y,he.lat))}toLngLat(){return new iv(360*this.x-180,bm(this.y))}toAltitude(){return this.z*b1(bm(this.y))}meterInMercatorCoordinateUnits(){return 1/Mp*(D=bm(this.y),1/Math.cos(D*Math.PI/180));var D}}function Ed(q,D,Y){var he=2*Math.PI*6378137/256/Math.pow(2,Y);return[q*he-2*Math.PI*6378137/2,D*he-2*Math.PI*6378137/2]}class D0{constructor(D,Y,he){if(!function(ke,Ue,Ge){return!(ke<0||ke>25||Ge<0||Ge>=Math.pow(2,ke)||Ue<0||Ue>=Math.pow(2,ke))}(D,Y,he))throw new Error(`x=${Y}, y=${he}, z=${D} outside of bounds. 0<=x<${Math.pow(2,D)}, 0<=y<${Math.pow(2,D)} 0<=z<=25 `);this.z=D,this.x=Y,this.y=he,this.key=Tm(0,D,D,Y,he)}equals(D){return this.z===D.z&&this.x===D.x&&this.y===D.y}url(D,Y,he){let ke=(Ge=this.y,st=this.z,bt=Ed(256*(Ue=this.x),256*(Ge=Math.pow(2,st)-Ge-1),st),zt=Ed(256*(Ue+1),256*(Ge+1),st),bt[0]+","+bt[1]+","+zt[0]+","+zt[1]);var Ue,Ge,st,bt,zt;let Qt=function(ur,Mr,Fr){let $r,vi="";for(let Vi=ur;Vi>0;Vi--)$r=1<1?"@2x":"").replace(/{quadkey}/g,Qt).replace(/{bbox-epsg-3857}/g,ke)}isChildOf(D){let Y=this.z-D.z;return Y>0&&D.x===this.x>>Y&&D.y===this.y>>Y}getTilePoint(D){let Y=Math.pow(2,this.z);return new n((D.x*Y-this.x)*wo,(D.y*Y-this.y)*wo)}toString(){return`${this.z}/${this.x}/${this.y}`}}class T1{constructor(D,Y){this.wrap=D,this.canonical=Y,this.key=Tm(D,Y.z,Y.z,Y.x,Y.y)}}class dd{constructor(D,Y,he,ke,Ue){if(D= z; overscaledZ = ${D}; z = ${he}`);this.overscaledZ=D,this.wrap=Y,this.canonical=new D0(he,+ke,+Ue),this.key=Tm(Y,D,he,ke,Ue)}clone(){return new dd(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(D){return this.overscaledZ===D.overscaledZ&&this.wrap===D.wrap&&this.canonical.equals(D.canonical)}scaledTo(D){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let Y=this.canonical.z-D;return D>this.canonical.z?new dd(D,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new dd(D,this.wrap,D,this.canonical.x>>Y,this.canonical.y>>Y)}calculateScaledKey(D,Y){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let he=this.canonical.z-D;return D>this.canonical.z?Tm(this.wrap*+Y,D,this.canonical.z,this.canonical.x,this.canonical.y):Tm(this.wrap*+Y,D,D,this.canonical.x>>he,this.canonical.y>>he)}isChildOf(D){if(D.wrap!==this.wrap)return!1;let Y=this.canonical.z-D.canonical.z;return D.overscaledZ===0||D.overscaledZ>Y&&D.canonical.y===this.canonical.y>>Y}children(D){if(this.overscaledZ>=D)return[new dd(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let Y=this.canonical.z+1,he=2*this.canonical.x,ke=2*this.canonical.y;return[new dd(Y,this.wrap,Y,he,ke),new dd(Y,this.wrap,Y,he+1,ke),new dd(Y,this.wrap,Y,he,ke+1),new dd(Y,this.wrap,Y,he+1,ke+1)]}isLessThan(D){return this.wrapD.wrap)&&(this.overscaledZD.overscaledZ)&&(this.canonical.xD.canonical.x)&&this.canonical.ythis.max&&(this.max=ur),ur=this.dim+1||Y<-1||Y>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(Y+1)*this.stride+(D+1)}unpack(D,Y,he){return D*this.redFactor+Y*this.greenFactor+he*this.blueFactor-this.baseShift}getPixels(){return new Oa({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(D,Y,he){if(this.dim!==D.dim)throw new Error("dem dimension mismatch");let ke=Y*this.dim,Ue=Y*this.dim+this.dim,Ge=he*this.dim,st=he*this.dim+this.dim;switch(Y){case-1:ke=Ue-1;break;case 1:Ue=ke+1}switch(he){case-1:Ge=st-1;break;case 1:st=Ge+1}let bt=-Y*this.dim,zt=-he*this.dim;for(let Qt=Ge;Qt=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${D} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[D]}}class z0{constructor(D,Y,he,ke,Ue){this.type="Feature",this._vectorTileFeature=D,D._z=Y,D._x=he,D._y=ke,this.properties=D.properties,this.id=Ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(D){this._geometry=D}toJSON(){let D={geometry:this.geometry};for(let Y in this)Y!=="_geometry"&&Y!=="_vectorTileFeature"&&(D[Y]=this[Y]);return D}}class Wv{constructor(D,Y){this.tileID=D,this.x=D.canonical.x,this.y=D.canonical.y,this.z=D.canonical.z,this.grid=new In(wo,16,0),this.grid3D=new In(wo,16,0),this.featureIndexArray=new ll,this.promoteId=Y}insert(D,Y,he,ke,Ue,Ge){let st=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(he,ke,Ue);let bt=Ge?this.grid3D:this.grid;for(let zt=0;zt=0&&ur[3]>=0&&bt.insert(st,ur[0],ur[1],ur[2],ur[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Hi.VectorTile(new T0(this.rawTileData)).layers,this.sourceLayerCoder=new M1(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(D,Y,he,ke){this.loadVTLayers();let Ue=D.params||{},Ge=wo/D.tileSize/D.scale,st=Sc(Ue.filter),bt=D.queryGeometry,zt=D.queryPadding*Ge,Qt=E1(bt),ur=this.grid.query(Qt.minX-zt,Qt.minY-zt,Qt.maxX+zt,Qt.maxY+zt),Mr=E1(D.cameraQueryGeometry),Fr=this.grid3D.query(Mr.minX-zt,Mr.minY-zt,Mr.maxX+zt,Mr.maxY+zt,(Vi,Yi,Ln,un)=>function(Tn,jn,qa,Io,As){for(let Pa of Tn)if(jn<=Pa.x&&qa<=Pa.y&&Io>=Pa.x&&As>=Pa.y)return!0;let _o=[new n(jn,qa),new n(jn,As),new n(Io,As),new n(Io,qa)];if(Tn.length>2){for(let Pa of _o)if(Sa(Tn,Pa))return!0}for(let Pa=0;Pa(un||(un=Al(Tn)),jn.queryIntersectsFeature(bt,Tn,qa,un,this.z,D.transform,Ge,D.pixelPosMatrix)))}return $r}loadMatchingFeature(D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur){let Mr=this.bucketLayerIDs[Y];if(Ge&&!function(Vi,Yi){for(let Ln=0;Ln=0)return!0;return!1}(Ge,Mr))return;let Fr=this.sourceLayerCoder.decode(he),$r=this.vtLayers[Fr].feature(ke);if(Ue.needGeometry){let Vi=Gl($r,!0);if(!Ue.filter(new Os(this.tileID.overscaledZ),Vi,this.tileID.canonical))return}else if(!Ue.filter(new Os(this.tileID.overscaledZ),$r))return;let vi=this.getId($r,Fr);for(let Vi=0;Vi{let st=D instanceof Cc?D.get(Ge):null;return st&&st.evaluate?st.evaluate(Y,he,ke):st})}function E1(q){let D=1/0,Y=1/0,he=-1/0,ke=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),he=Math.max(he,Ue.x),ke=Math.max(ke,Ue.y);return{minX:D,minY:Y,maxX:he,maxY:ke}}function tw(q,D){return D-q}function k1(q,D,Y,he,ke){let Ue=[];for(let Ge=0;Ge=he&&ur.x>=he||(Qt.x>=he?Qt=new n(he,Qt.y+(he-Qt.x)/(ur.x-Qt.x)*(ur.y-Qt.y))._round():ur.x>=he&&(ur=new n(he,Qt.y+(he-Qt.x)/(ur.x-Qt.x)*(ur.y-Qt.y))._round()),Qt.y>=ke&&ur.y>=ke||(Qt.y>=ke?Qt=new n(Qt.x+(ke-Qt.y)/(ur.y-Qt.y)*(ur.x-Qt.x),ke)._round():ur.y>=ke&&(ur=new n(Qt.x+(ke-Qt.y)/(ur.y-Qt.y)*(ur.x-Qt.x),ke)._round()),bt&&Qt.equals(bt[bt.length-1])||(bt=[Qt],Ue.push(bt)),bt.push(ur)))))}}return Ue}cn("FeatureIndex",Wv,{omit:["rawTileData","sourceLayerCoder"]});class nv extends n{constructor(D,Y,he,ke){super(D,Y),this.angle=he,ke!==void 0&&(this.segment=ke)}clone(){return new nv(this.x,this.y,this.angle,this.segment)}}function F0(q,D,Y,he,ke){if(D.segment===void 0||Y===0)return!0;let Ue=D,Ge=D.segment+1,st=0;for(;st>-Y/2;){if(Ge--,Ge<0)return!1;st-=q[Ge].dist(Ue),Ue=q[Ge]}st+=q[Ge].dist(q[Ge+1]),Ge++;let bt=[],zt=0;for(;sthe;)zt-=bt.shift().angleDelta;if(zt>ke)return!1;Ge++,st+=Qt.dist(ur)}return!0}function C1(q){let D=0;for(let Y=0;Yzt){let $r=(zt-bt)/Fr,vi=yo.number(ur.x,Mr.x,$r),Vi=yo.number(ur.y,Mr.y,$r),Yi=new nv(vi,Vi,Mr.angleTo(ur),Qt);return Yi._round(),!Ge||F0(q,Yi,st,Ge,D)?Yi:void 0}bt+=Fr}}function iw(q,D,Y,he,ke,Ue,Ge,st,bt){let zt=L1(he,Ue,Ge),Qt=P1(he,ke),ur=Qt*Ge,Mr=q[0].x===0||q[0].x===bt||q[0].y===0||q[0].y===bt;return D-ur=0&&Tn=0&&jn=0&&Mr+zt<=Qt){let qa=new nv(Tn,jn,Ln,$r);qa._round(),he&&!F0(q,qa,Ue,he,ke)||Fr.push(qa)}}ur+=Yi}return st||Fr.length||Ge||(Fr=I1(q,ur/2,Y,he,ke,Ue,Ge,!0,bt)),Fr}cn("Anchor",nv);let Sp=_h;function R1(q,D,Y,he){let ke=[],Ue=q.image,Ge=Ue.pixelRatio,st=Ue.paddedRect.w-2*Sp,bt=Ue.paddedRect.h-2*Sp,zt={x1:q.left,y1:q.top,x2:q.right,y2:q.bottom},Qt=Ue.stretchX||[[0,st]],ur=Ue.stretchY||[[0,bt]],Mr=(va,ds)=>va+ds[1]-ds[0],Fr=Qt.reduce(Mr,0),$r=ur.reduce(Mr,0),vi=st-Fr,Vi=bt-$r,Yi=0,Ln=Fr,un=0,Tn=$r,jn=0,qa=vi,Io=0,As=Vi;if(Ue.content&&he){let va=Ue.content,ds=va[2]-va[0],qo=va[3]-va[1];(Ue.textFitWidth||Ue.textFitHeight)&&(zt=m1(q)),Yi=av(Qt,0,va[0]),un=av(ur,0,va[1]),Ln=av(Qt,va[0],va[2]),Tn=av(ur,va[1],va[3]),jn=va[0]-Yi,Io=va[1]-un,qa=ds-Ln,As=qo-Tn}let _o=zt.x1,Pa=zt.y1,ns=zt.x2-_o,Xo=zt.y2-Pa,Vo=(va,ds,qo,Rs)=>{let Su=bg(va.stretch-Yi,Ln,ns,_o),bu=Ep(va.fixed-jn,qa,va.stretch,Fr),Df=bg(ds.stretch-un,Tn,Xo,Pa),vd=Ep(ds.fixed-Io,As,ds.stretch,$r),lh=bg(qo.stretch-Yi,Ln,ns,_o),zf=Ep(qo.fixed-jn,qa,qo.stretch,Fr),Rh=bg(Rs.stretch-un,Tn,Xo,Pa),Dh=Ep(Rs.fixed-Io,As,Rs.stretch,$r),zh=new n(Su,Df),Zc=new n(lh,Df),Ff=new n(lh,Rh),xh=new n(Su,Rh),uh=new n(bu/Ge,vd/Ge),Zf=new n(zf/Ge,Dh/Ge),sf=D*Math.PI/180;if(sf){let Kl=Math.sin(sf),Nu=Math.cos(sf),Eu=[Nu,-Kl,Kl,Nu];zh._matMult(Eu),Zc._matMult(Eu),xh._matMult(Eu),Ff._matMult(Eu)}let ad=va.stretch+va.fixed,qh=ds.stretch+ds.fixed;return{tl:zh,tr:Zc,bl:xh,br:Ff,tex:{x:Ue.paddedRect.x+Sp+ad,y:Ue.paddedRect.y+Sp+qh,w:qo.stretch+qo.fixed-ad,h:Rs.stretch+Rs.fixed-qh},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:uh,pixelOffsetBR:Zf,minFontScaleX:qa/Ge/ns,minFontScaleY:As/Ge/Xo,isSDF:Y}};if(he&&(Ue.stretchX||Ue.stretchY)){let va=D1(Qt,vi,Fr),ds=D1(ur,Vi,$r);for(let qo=0;qo0&&(vi=Math.max(10,vi),this.circleDiameter=vi)}else{let Mr=!((ur=Ge.image)===null||ur===void 0)&&ur.content&&(Ge.image.textFitWidth||Ge.image.textFitHeight)?m1(Ge):{x1:Ge.left,y1:Ge.top,x2:Ge.right,y2:Ge.bottom};Mr.y1=Mr.y1*st-bt[0],Mr.y2=Mr.y2*st+bt[2],Mr.x1=Mr.x1*st-bt[3],Mr.x2=Mr.x2*st+bt[1];let Fr=Ge.collisionPadding;if(Fr&&(Mr.x1-=Fr[0]*st,Mr.y1-=Fr[1]*st,Mr.x2+=Fr[2]*st,Mr.y2+=Fr[3]*st),Qt){let $r=new n(Mr.x1,Mr.y1),vi=new n(Mr.x2,Mr.y1),Vi=new n(Mr.x1,Mr.y2),Yi=new n(Mr.x2,Mr.y2),Ln=Qt*Math.PI/180;$r._rotate(Ln),vi._rotate(Ln),Vi._rotate(Ln),Yi._rotate(Ln),Mr.x1=Math.min($r.x,vi.x,Vi.x,Yi.x),Mr.x2=Math.max($r.x,vi.x,Vi.x,Yi.x),Mr.y1=Math.min($r.y,vi.y,Vi.y,Yi.y),Mr.y2=Math.max($r.y,vi.y,Vi.y,Yi.y)}D.emplaceBack(Y.x,Y.y,Mr.x1,Mr.y1,Mr.x2,Mr.y2,he,ke,Ue)}this.boxEndIndex=D.length}}class Id{constructor(D=[],Y=(he,ke)=>heke?1:0){if(this.data=D,this.length=this.data.length,this.compare=Y,this.length>0)for(let he=(this.length>>1)-1;he>=0;he--)this._down(he)}push(D){this.data.push(D),this._up(this.length++)}pop(){if(this.length===0)return;let D=this.data[0],Y=this.data.pop();return--this.length>0&&(this.data[0]=Y,this._down(0)),D}peek(){return this.data[0]}_up(D){let{data:Y,compare:he}=this,ke=Y[D];for(;D>0;){let Ue=D-1>>1,Ge=Y[Ue];if(he(ke,Ge)>=0)break;Y[D]=Ge,D=Ue}Y[D]=ke}_down(D){let{data:Y,compare:he}=this,ke=this.length>>1,Ue=Y[D];for(;D=0)break;Y[D]=Y[Ge],D=Ge}Y[D]=Ue}}function nw(q,D=1,Y=!1){let he=1/0,ke=1/0,Ue=-1/0,Ge=-1/0,st=q[0];for(let Fr=0;FrUe)&&(Ue=$r.x),(!Fr||$r.y>Ge)&&(Ge=$r.y)}let bt=Math.min(Ue-he,Ge-ke),zt=bt/2,Qt=new Id([],aw);if(bt===0)return new n(he,ke);for(let Fr=he;Frur.d||!ur.d)&&(ur=Fr,Y&&console.log("found best %d after %d probes",Math.round(1e4*Fr.d)/1e4,Mr)),Fr.max-ur.d<=D||(zt=Fr.h/2,Qt.push(new kp(Fr.p.x-zt,Fr.p.y-zt,zt,q)),Qt.push(new kp(Fr.p.x+zt,Fr.p.y-zt,zt,q)),Qt.push(new kp(Fr.p.x-zt,Fr.p.y+zt,zt,q)),Qt.push(new kp(Fr.p.x+zt,Fr.p.y+zt,zt,q)),Mr+=4)}return Y&&(console.log(`num probes: ${Mr}`),console.log(`best distance: ${ur.d}`)),ur.p}function aw(q,D){return D.max-q.max}function kp(q,D,Y,he){this.p=new n(q,D),this.h=Y,this.d=function(ke,Ue){let Ge=!1,st=1/0;for(let bt=0;btke.y!=$r.y>ke.y&&ke.x<($r.x-Fr.x)*(ke.y-Fr.y)/($r.y-Fr.y)+Fr.x&&(Ge=!Ge),st=Math.min(st,Dn(ke,Fr,$r))}}return(Ge?1:-1)*Math.sqrt(st)}(this.p,he),this.max=this.d+this.h*Math.SQRT2}var sh;e.aq=void 0,(sh=e.aq||(e.aq={}))[sh.center=1]="center",sh[sh.left=2]="left",sh[sh.right=3]="right",sh[sh.top=4]="top",sh[sh.bottom=5]="bottom",sh[sh["top-left"]=6]="top-left",sh[sh["top-right"]=7]="top-right",sh[sh["bottom-left"]=8]="bottom-left",sh[sh["bottom-right"]=9]="bottom-right";let kv=7,Xv=Number.POSITIVE_INFINITY;function B0(q,D){return D[1]!==Xv?function(Y,he,ke){let Ue=0,Ge=0;switch(he=Math.abs(he),ke=Math.abs(ke),Y){case"top-right":case"top-left":case"top":Ge=ke-kv;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-ke+kv}switch(Y){case"top-right":case"bottom-right":case"right":Ue=-he;break;case"top-left":case"bottom-left":case"left":Ue=he}return[Ue,Ge]}(q,D[0],D[1]):function(Y,he){let ke=0,Ue=0;he<0&&(he=0);let Ge=he/Math.SQRT2;switch(Y){case"top-right":case"top-left":Ue=Ge-kv;break;case"bottom-right":case"bottom-left":Ue=-Ge+kv;break;case"bottom":Ue=-he+kv;break;case"top":Ue=he-kv}switch(Y){case"top-right":case"bottom-right":ke=-Ge;break;case"top-left":case"bottom-left":ke=Ge;break;case"left":ke=he;break;case"right":ke=-he}return[ke,Ue]}(q,D[0])}function z1(q,D,Y){var he;let ke=q.layout,Ue=(he=ke.get("text-variable-anchor-offset"))===null||he===void 0?void 0:he.evaluate(D,{},Y);if(Ue){let st=Ue.values,bt=[];for(let zt=0;ztMr*Yl);Qt.startsWith("top")?ur[1]-=kv:Qt.startsWith("bottom")&&(ur[1]+=kv),bt[zt+1]=ur}return new qi(bt)}let Ge=ke.get("text-variable-anchor");if(Ge){let st;st=q._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[ke.get("text-radial-offset").evaluate(D,{},Y)*Yl,Xv]:ke.get("text-offset").evaluate(D,{},Y).map(zt=>zt*Yl);let bt=[];for(let zt of Ge)bt.push(zt,B0(zt,st));return new qi(bt)}return null}function O0(q){switch(q){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function ow(q,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt){let ur=Ue.textMaxSize.evaluate(D,{});ur===void 0&&(ur=Ge);let Mr=q.layers[0].layout,Fr=Mr.get("icon-offset").evaluate(D,{},Qt),$r=B1(Y.horizontal),vi=Ge/24,Vi=q.tilePixelRatio*vi,Yi=q.tilePixelRatio*ur/24,Ln=q.tilePixelRatio*st,un=q.tilePixelRatio*Mr.get("symbol-spacing"),Tn=Mr.get("text-padding")*q.tilePixelRatio,jn=function(va,ds,qo,Rs=1){let Su=va.get("icon-padding").evaluate(ds,{},qo),bu=Su&&Su.values;return[bu[0]*Rs,bu[1]*Rs,bu[2]*Rs,bu[3]*Rs]}(Mr,D,Qt,q.tilePixelRatio),qa=Mr.get("text-max-angle")/180*Math.PI,Io=Mr.get("text-rotation-alignment")!=="viewport"&&Mr.get("symbol-placement")!=="point",As=Mr.get("icon-rotation-alignment")==="map"&&Mr.get("symbol-placement")!=="point",_o=Mr.get("symbol-placement"),Pa=un/2,ns=Mr.get("icon-text-fit"),Xo;he&&ns!=="none"&&(q.allowVerticalPlacement&&Y.vertical&&(Xo=g1(he,Y.vertical,ns,Mr.get("icon-text-fit-padding"),Fr,vi)),$r&&(he=g1(he,$r,ns,Mr.get("icon-text-fit-padding"),Fr,vi)));let Vo=(va,ds)=>{ds.x<0||ds.x>=wo||ds.y<0||ds.y>=wo||function(qo,Rs,Su,bu,Df,vd,lh,zf,Rh,Dh,zh,Zc,Ff,xh,uh,Zf,sf,ad,qh,Kl,Nu,Eu,od,Ic,Cp){let jd=qo.addToLineVertexArray(Rs,Su),Rd,pd,oc,mf,md=0,ov=0,Hh=0,Lp=0,q0=-1,Mg=-1,Vd={},Zv=rn("");if(qo.allowVerticalPlacement&&bu.vertical){let bh=zf.layout.get("text-rotate").evaluate(Nu,{},Ic)+90;oc=new Ev(Rh,Rs,Dh,zh,Zc,bu.vertical,Ff,xh,uh,bh),lh&&(mf=new Ev(Rh,Rs,Dh,zh,Zc,lh,sf,ad,uh,bh))}if(Df){let bh=zf.layout.get("icon-rotate").evaluate(Nu,{}),gd=zf.layout.get("icon-text-fit")!=="none",Cv=R1(Df,bh,od,gd),Fh=lh?R1(lh,bh,od,gd):void 0;pd=new Ev(Rh,Rs,Dh,zh,Zc,Df,sf,ad,!1,bh),md=4*Cv.length;let wh=qo.iconSizeData,Cd=null;wh.kind==="source"?(Cd=[Ud*zf.layout.get("icon-size").evaluate(Nu,{})],Cd[0]>Mv&&f(`${qo.layerIds[0]}: Value for "icon-size" is >= ${mm}. Reduce your "icon-size".`)):wh.kind==="composite"&&(Cd=[Ud*Eu.compositeIconSizes[0].evaluate(Nu,{},Ic),Ud*Eu.compositeIconSizes[1].evaluate(Nu,{},Ic)],(Cd[0]>Mv||Cd[1]>Mv)&&f(`${qo.layerIds[0]}: Value for "icon-size" is >= ${mm}. Reduce your "icon-size".`)),qo.addSymbols(qo.icon,Cv,Cd,Kl,qh,Nu,e.ah.none,Rs,jd.lineStartIndex,jd.lineLength,-1,Ic),q0=qo.icon.placedSymbolArray.length-1,Fh&&(ov=4*Fh.length,qo.addSymbols(qo.icon,Fh,Cd,Kl,qh,Nu,e.ah.vertical,Rs,jd.lineStartIndex,jd.lineLength,-1,Ic),Mg=qo.icon.placedSymbolArray.length-1)}let Yf=Object.keys(bu.horizontal);for(let bh of Yf){let gd=bu.horizontal[bh];if(!Rd){Zv=rn(gd.text);let Fh=zf.layout.get("text-rotate").evaluate(Nu,{},Ic);Rd=new Ev(Rh,Rs,Dh,zh,Zc,gd,Ff,xh,uh,Fh)}let Cv=gd.positionedLines.length===1;if(Hh+=F1(qo,Rs,gd,vd,zf,uh,Nu,Zf,jd,bu.vertical?e.ah.horizontal:e.ah.horizontalOnly,Cv?Yf:[bh],Vd,q0,Eu,Ic),Cv)break}bu.vertical&&(Lp+=F1(qo,Rs,bu.vertical,vd,zf,uh,Nu,Zf,jd,e.ah.vertical,["vertical"],Vd,Mg,Eu,Ic));let uw=Rd?Rd.boxStartIndex:qo.collisionBoxArray.length,Sg=Rd?Rd.boxEndIndex:qo.collisionBoxArray.length,qd=oc?oc.boxStartIndex:qo.collisionBoxArray.length,Gh=oc?oc.boxEndIndex:qo.collisionBoxArray.length,j1=pd?pd.boxStartIndex:qo.collisionBoxArray.length,cw=pd?pd.boxEndIndex:qo.collisionBoxArray.length,V1=mf?mf.boxStartIndex:qo.collisionBoxArray.length,fw=mf?mf.boxEndIndex:qo.collisionBoxArray.length,kd=-1,Sm=(bh,gd)=>bh&&bh.circleDiameter?Math.max(bh.circleDiameter,gd):gd;kd=Sm(Rd,kd),kd=Sm(oc,kd),kd=Sm(pd,kd),kd=Sm(mf,kd);let Eg=kd>-1?1:0;Eg&&(kd*=Cp/Yl),qo.glyphOffsetArray.length>=Ap.MAX_GLYPHS&&f("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Nu.sortKey!==void 0&&qo.addToSortKeyRanges(qo.symbolInstances.length,Nu.sortKey);let H0=z1(zf,Nu,Ic),[hw,dw]=function(bh,gd){let Cv=bh.length,Fh=gd?.values;if(Fh?.length>0)for(let wh=0;wh=0?Vd.right:-1,Vd.center>=0?Vd.center:-1,Vd.left>=0?Vd.left:-1,Vd.vertical||-1,q0,Mg,Zv,uw,Sg,qd,Gh,j1,cw,V1,fw,Dh,Hh,Lp,md,ov,Eg,0,Ff,kd,hw,dw)}(q,ds,va,Y,he,ke,Xo,q.layers[0],q.collisionBoxArray,D.index,D.sourceLayerIndex,q.index,Vi,[Tn,Tn,Tn,Tn],Io,bt,Ln,jn,As,Fr,D,Ue,zt,Qt,Ge)};if(_o==="line")for(let va of k1(D.geometry,0,0,wo,wo)){let ds=iw(va,un,qa,Y.vertical||$r,he,24,Yi,q.overscaling,wo);for(let qo of ds)$r&&sw(q,$r.text,Pa,qo)||Vo(va,qo)}else if(_o==="line-center"){for(let va of D.geometry)if(va.length>1){let ds=rw(va,qa,Y.vertical||$r,he,24,Yi);ds&&Vo(va,ds)}}else if(D.type==="Polygon")for(let va of Fc(D.geometry,0)){let ds=nw(va,16);Vo(va[0],new nv(ds.x,ds.y,0))}else if(D.type==="LineString")for(let va of D.geometry)Vo(va,new nv(va[0].x,va[0].y,0));else if(D.type==="Point")for(let va of D.geometry)for(let ds of va)Vo([ds],new nv(ds.x,ds.y,0))}function F1(q,D,Y,he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r){let vi=function(Ln,un,Tn,jn,qa,Io,As,_o){let Pa=jn.layout.get("text-rotate").evaluate(Io,{})*Math.PI/180,ns=[];for(let Xo of un.positionedLines)for(let Vo of Xo.positionedGlyphs){if(!Vo.rect)continue;let va=Vo.rect||{},ds=h1+1,qo=!0,Rs=1,Su=0,bu=(qa||_o)&&Vo.vertical,Df=Vo.metrics.advance*Vo.scale/2;if(_o&&un.verticalizable&&(Su=Xo.lineOffset/2-(Vo.imageName?-(Yl-Vo.metrics.width*Vo.scale)/2:(Vo.scale-1)*Yl)),Vo.imageName){let Kl=As[Vo.imageName];qo=Kl.sdf,Rs=Kl.pixelRatio,ds=_h/Rs}let vd=qa?[Vo.x+Df,Vo.y]:[0,0],lh=qa?[0,0]:[Vo.x+Df+Tn[0],Vo.y+Tn[1]-Su],zf=[0,0];bu&&(zf=lh,lh=[0,0]);let Rh=Vo.metrics.isDoubleResolution?2:1,Dh=(Vo.metrics.left-ds)*Vo.scale-Df+lh[0],zh=(-Vo.metrics.top-ds)*Vo.scale+lh[1],Zc=Dh+va.w/Rh*Vo.scale/Rs,Ff=zh+va.h/Rh*Vo.scale/Rs,xh=new n(Dh,zh),uh=new n(Zc,zh),Zf=new n(Dh,Ff),sf=new n(Zc,Ff);if(bu){let Kl=new n(-Df,Df-Rf),Nu=-Math.PI/2,Eu=Yl/2-Df,od=new n(5-Rf-Eu,-(Vo.imageName?Eu:0)),Ic=new n(...zf);xh._rotateAround(Nu,Kl)._add(od)._add(Ic),uh._rotateAround(Nu,Kl)._add(od)._add(Ic),Zf._rotateAround(Nu,Kl)._add(od)._add(Ic),sf._rotateAround(Nu,Kl)._add(od)._add(Ic)}if(Pa){let Kl=Math.sin(Pa),Nu=Math.cos(Pa),Eu=[Nu,-Kl,Kl,Nu];xh._matMult(Eu),uh._matMult(Eu),Zf._matMult(Eu),sf._matMult(Eu)}let ad=new n(0,0),qh=new n(0,0);ns.push({tl:xh,tr:uh,bl:Zf,br:sf,tex:va,writingMode:un.writingMode,glyphOffset:vd,sectionIndex:Vo.sectionIndex,isSDF:qo,pixelOffsetTL:ad,pixelOffsetBR:qh,minFontScaleX:0,minFontScaleY:0})}return ns}(0,Y,st,ke,Ue,Ge,he,q.allowVerticalPlacement),Vi=q.textSizeData,Yi=null;Vi.kind==="source"?(Yi=[Ud*ke.layout.get("text-size").evaluate(Ge,{})],Yi[0]>Mv&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${mm}. Reduce your "text-size".`)):Vi.kind==="composite"&&(Yi=[Ud*Fr.compositeTextSizes[0].evaluate(Ge,{},$r),Ud*Fr.compositeTextSizes[1].evaluate(Ge,{},$r)],(Yi[0]>Mv||Yi[1]>Mv)&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${mm}. Reduce your "text-size".`)),q.addSymbols(q.text,vi,Yi,st,Ue,Ge,zt,D,bt.lineStartIndex,bt.lineLength,Mr,$r);for(let Ln of Qt)ur[Ln]=q.text.placedSymbolArray.length-1;return 4*vi.length}function B1(q){for(let D in q)return q[D];return null}function sw(q,D,Y,he){let ke=q.compareText;if(D in ke){let Ue=ke[D];for(let Ge=Ue.length-1;Ge>=0;Ge--)if(he.dist(Ue[Ge])>4;if(ke!==1)throw new Error(`Got v${ke} data when expected v1.`);let Ue=O1[15&he];if(!Ue)throw new Error("Unrecognized array type.");let[Ge]=new Uint16Array(D,2,1),[st]=new Uint32Array(D,4,1);return new N0(st,Ge,Ue,D)}constructor(D,Y=64,he=Float64Array,ke){if(isNaN(D)||D<0)throw new Error(`Unpexpected numItems value: ${D}.`);this.numItems=+D,this.nodeSize=Math.min(Math.max(+Y,2),65535),this.ArrayType=he,this.IndexArrayType=D<65536?Uint16Array:Uint32Array;let Ue=O1.indexOf(this.ArrayType),Ge=2*D*this.ArrayType.BYTES_PER_ELEMENT,st=D*this.IndexArrayType.BYTES_PER_ELEMENT,bt=(8-st%8)%8;if(Ue<0)throw new Error(`Unexpected typed array class: ${he}.`);ke&&ke instanceof ArrayBuffer?(this.data=ke,this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+st+bt,2*D),this._pos=2*D,this._finished=!0):(this.data=new ArrayBuffer(8+Ge+st+bt),this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+st+bt,2*D),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+Ue]),new Uint16Array(this.data,2,1)[0]=Y,new Uint32Array(this.data,4,1)[0]=D)}add(D,Y){let he=this._pos>>1;return this.ids[he]=he,this.coords[this._pos++]=D,this.coords[this._pos++]=Y,he}finish(){let D=this._pos>>1;if(D!==this.numItems)throw new Error(`Added ${D} items when expected ${this.numItems}.`);return wg(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(D,Y,he,ke){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ue,coords:Ge,nodeSize:st}=this,bt=[0,Ue.length-1,0],zt=[];for(;bt.length;){let Qt=bt.pop()||0,ur=bt.pop()||0,Mr=bt.pop()||0;if(ur-Mr<=st){for(let Vi=Mr;Vi<=ur;Vi++){let Yi=Ge[2*Vi],Ln=Ge[2*Vi+1];Yi>=D&&Yi<=he&&Ln>=Y&&Ln<=ke&&zt.push(Ue[Vi])}continue}let Fr=Mr+ur>>1,$r=Ge[2*Fr],vi=Ge[2*Fr+1];$r>=D&&$r<=he&&vi>=Y&&vi<=ke&&zt.push(Ue[Fr]),(Qt===0?D<=$r:Y<=vi)&&(bt.push(Mr),bt.push(Fr-1),bt.push(1-Qt)),(Qt===0?he>=$r:ke>=vi)&&(bt.push(Fr+1),bt.push(ur),bt.push(1-Qt))}return zt}within(D,Y,he){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ke,coords:Ue,nodeSize:Ge}=this,st=[0,ke.length-1,0],bt=[],zt=he*he;for(;st.length;){let Qt=st.pop()||0,ur=st.pop()||0,Mr=st.pop()||0;if(ur-Mr<=Ge){for(let Vi=Mr;Vi<=ur;Vi++)U1(Ue[2*Vi],Ue[2*Vi+1],D,Y)<=zt&&bt.push(ke[Vi]);continue}let Fr=Mr+ur>>1,$r=Ue[2*Fr],vi=Ue[2*Fr+1];U1($r,vi,D,Y)<=zt&&bt.push(ke[Fr]),(Qt===0?D-he<=$r:Y-he<=vi)&&(st.push(Mr),st.push(Fr-1),st.push(1-Qt)),(Qt===0?D+he>=$r:Y+he>=vi)&&(st.push(Fr+1),st.push(ur),st.push(1-Qt))}return bt}}function wg(q,D,Y,he,ke,Ue){if(ke-he<=Y)return;let Ge=he+ke>>1;N1(q,D,Ge,he,ke,Ue),wg(q,D,Y,he,Ge-1,1-Ue),wg(q,D,Y,Ge+1,ke,1-Ue)}function N1(q,D,Y,he,ke,Ue){for(;ke>he;){if(ke-he>600){let zt=ke-he+1,Qt=Y-he+1,ur=Math.log(zt),Mr=.5*Math.exp(2*ur/3),Fr=.5*Math.sqrt(ur*Mr*(zt-Mr)/zt)*(Qt-zt/2<0?-1:1);N1(q,D,Y,Math.max(he,Math.floor(Y-Qt*Mr/zt+Fr)),Math.min(ke,Math.floor(Y+(zt-Qt)*Mr/zt+Fr)),Ue)}let Ge=D[2*Y+Ue],st=he,bt=ke;for(Am(q,D,he,Y),D[2*ke+Ue]>Ge&&Am(q,D,he,ke);stGe;)bt--}D[2*he+Ue]===Ge?Am(q,D,he,bt):(bt++,Am(q,D,bt,ke)),bt<=Y&&(he=bt+1),Y<=bt&&(ke=bt-1)}}function Am(q,D,Y,he){U0(q,Y,he),U0(D,2*Y,2*he),U0(D,2*Y+1,2*he+1)}function U0(q,D,Y){let he=q[D];q[D]=q[Y],q[Y]=he}function U1(q,D,Y,he){let ke=q-Y,Ue=D-he;return ke*ke+Ue*Ue}var Tg;e.bg=void 0,(Tg=e.bg||(e.bg={})).create="create",Tg.load="load",Tg.fullLoad="fullLoad";let Mm=null,Tf=[],j0=1e3/60,V0="loadTime",Ag="fullLoadTime",lw={mark(q){performance.mark(q)},frame(q){let D=q;Mm!=null&&Tf.push(D-Mm),Mm=D},clearMetrics(){Mm=null,Tf=[],performance.clearMeasures(V0),performance.clearMeasures(Ag);for(let q in e.bg)performance.clearMarks(e.bg[q])},getPerformanceMetrics(){performance.measure(V0,e.bg.create,e.bg.load),performance.measure(Ag,e.bg.create,e.bg.fullLoad);let q=performance.getEntriesByName(V0)[0].duration,D=performance.getEntriesByName(Ag)[0].duration,Y=Tf.length,he=1/(Tf.reduce((Ue,Ge)=>Ue+Ge,0)/Y/1e3),ke=Tf.filter(Ue=>Ue>j0).reduce((Ue,Ge)=>Ue+(Ge-j0)/j0,0);return{loadTime:q,fullLoadTime:D,fps:he,percentDroppedFrames:ke/(Y+ke)*100,totalFrames:Y}}};e.$=class extends fr{},e.A=_a,e.B=Pn,e.C=function(q){if(z==null){let D=q.navigator?q.navigator.userAgent:null;z=!!q.safari||!(!D||!(/\b(iPad|iPhone|iPod)\b/.test(D)||D.match("Safari")&&!D.match("Chrome")))}return z},e.D=bo,e.E=ee,e.F=class{constructor(q,D){this.target=q,this.mapId=D,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new I0(()=>this.process()),this.subscription=function(Y,he,ke,Ue){return Y.addEventListener(he,ke,!1),{unsubscribe:()=>{Y.removeEventListener(he,ke,!1)}}}(this.target,"message",Y=>this.receive(Y)),this.globalScope=L(self)?q:window}registerMessageHandler(q,D){this.messageHandlers[q]=D}sendAsync(q,D){return new Promise((Y,he)=>{let ke=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[ke]={resolve:Y,reject:he},D&&D.signal.addEventListener("abort",()=>{delete this.resolveRejects[ke];let st={id:ke,type:"",origin:location.origin,targetMapId:q.targetMapId,sourceMapId:this.mapId};this.target.postMessage(st)},{once:!0});let Ue=[],Ge=Object.assign(Object.assign({},q),{id:ke,sourceMapId:this.mapId,origin:location.origin,data:go(q.data,Ue)});this.target.postMessage(Ge,{transfer:Ue})})}receive(q){let D=q.data,Y=D.id;if(!(D.origin!=="file://"&&location.origin!=="file://"&&D.origin!=="resource://android"&&location.origin!=="resource://android"&&D.origin!==location.origin||D.targetMapId&&this.mapId!==D.targetMapId)){if(D.type===""){delete this.tasks[Y];let he=this.abortControllers[Y];return delete this.abortControllers[Y],void(he&&he.abort())}if(L(self)||D.mustQueue)return this.tasks[Y]=D,this.taskQueue.push(Y),void this.invoker.trigger();this.processTask(Y,D)}}process(){if(this.taskQueue.length===0)return;let q=this.taskQueue.shift(),D=this.tasks[q];delete this.tasks[q],this.taskQueue.length>0&&this.invoker.trigger(),D&&this.processTask(q,D)}processTask(q,D){return t(this,void 0,void 0,function*(){if(D.type===""){let ke=this.resolveRejects[q];return delete this.resolveRejects[q],ke?void(D.error?ke.reject(Mo(D.error)):ke.resolve(Mo(D.data))):void 0}if(!this.messageHandlers[D.type])return void this.completeTask(q,new Error(`Could not find a registered handler for ${D.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let Y=Mo(D.data),he=new AbortController;this.abortControllers[q]=he;try{let ke=yield this.messageHandlers[D.type](D.sourceMapId,Y,he);this.completeTask(q,null,ke)}catch(ke){this.completeTask(q,ke)}})}completeTask(q,D,Y){let he=[];delete this.abortControllers[q];let ke={id:q,type:"",sourceMapId:this.mapId,origin:location.origin,error:D?go(D):null,data:go(Y,he)};this.target.postMessage(ke,{transfer:he})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},e.G=se,e.H=function(){var q=new _a(16);return _a!=Float32Array&&(q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=0,q[12]=0,q[13]=0,q[14]=0),q[0]=1,q[5]=1,q[10]=1,q[15]=1,q},e.I=hg,e.J=function(q,D,Y){var he,ke,Ue,Ge,st,bt,zt,Qt,ur,Mr,Fr,$r,vi=Y[0],Vi=Y[1],Yi=Y[2];return D===q?(q[12]=D[0]*vi+D[4]*Vi+D[8]*Yi+D[12],q[13]=D[1]*vi+D[5]*Vi+D[9]*Yi+D[13],q[14]=D[2]*vi+D[6]*Vi+D[10]*Yi+D[14],q[15]=D[3]*vi+D[7]*Vi+D[11]*Yi+D[15]):(ke=D[1],Ue=D[2],Ge=D[3],st=D[4],bt=D[5],zt=D[6],Qt=D[7],ur=D[8],Mr=D[9],Fr=D[10],$r=D[11],q[0]=he=D[0],q[1]=ke,q[2]=Ue,q[3]=Ge,q[4]=st,q[5]=bt,q[6]=zt,q[7]=Qt,q[8]=ur,q[9]=Mr,q[10]=Fr,q[11]=$r,q[12]=he*vi+st*Vi+ur*Yi+D[12],q[13]=ke*vi+bt*Vi+Mr*Yi+D[13],q[14]=Ue*vi+zt*Vi+Fr*Yi+D[14],q[15]=Ge*vi+Qt*Vi+$r*Yi+D[15]),q},e.K=function(q,D,Y){var he=Y[0],ke=Y[1],Ue=Y[2];return q[0]=D[0]*he,q[1]=D[1]*he,q[2]=D[2]*he,q[3]=D[3]*he,q[4]=D[4]*ke,q[5]=D[5]*ke,q[6]=D[6]*ke,q[7]=D[7]*ke,q[8]=D[8]*Ue,q[9]=D[9]*Ue,q[10]=D[10]*Ue,q[11]=D[11]*Ue,q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.L=sa,e.M=function(q,D){let Y={};for(let he=0;he{let D=window.document.createElement("video");return D.muted=!0,new Promise(Y=>{D.onloadstart=()=>{Y(D)};for(let he of q){let ke=window.document.createElement("source");$(he)||(D.crossOrigin="Anonymous"),ke.src=he,D.appendChild(ke)}})},e.a4=function(){return m++},e.a5=qn,e.a6=Ap,e.a7=Sc,e.a8=Gl,e.a9=z0,e.aA=function(q){if(q.type==="custom")return new P0(q);switch(q.type){case"background":return new ew(q);case"circle":return new ha(q);case"fill":return new Gr(q);case"fill-extrusion":return new ed(q);case"heatmap":return new Ts(q);case"hillshade":return new Hc(q);case"line":return new jv(q);case"raster":return new xm(q);case"symbol":return new Gv(q)}},e.aB=u,e.aC=function(q,D){if(!q)return[{command:"setStyle",args:[D]}];let Y=[];try{if(!we(q.version,D.version))return[{command:"setStyle",args:[D]}];we(q.center,D.center)||Y.push({command:"setCenter",args:[D.center]}),we(q.zoom,D.zoom)||Y.push({command:"setZoom",args:[D.zoom]}),we(q.bearing,D.bearing)||Y.push({command:"setBearing",args:[D.bearing]}),we(q.pitch,D.pitch)||Y.push({command:"setPitch",args:[D.pitch]}),we(q.sprite,D.sprite)||Y.push({command:"setSprite",args:[D.sprite]}),we(q.glyphs,D.glyphs)||Y.push({command:"setGlyphs",args:[D.glyphs]}),we(q.transition,D.transition)||Y.push({command:"setTransition",args:[D.transition]}),we(q.light,D.light)||Y.push({command:"setLight",args:[D.light]}),we(q.terrain,D.terrain)||Y.push({command:"setTerrain",args:[D.terrain]}),we(q.sky,D.sky)||Y.push({command:"setSky",args:[D.sky]}),we(q.projection,D.projection)||Y.push({command:"setProjection",args:[D.projection]});let he={},ke=[];(function(Ge,st,bt,zt){let Qt;for(Qt in st=st||{},Ge=Ge||{})Object.prototype.hasOwnProperty.call(Ge,Qt)&&(Object.prototype.hasOwnProperty.call(st,Qt)||Xe(Qt,bt,zt));for(Qt in st)Object.prototype.hasOwnProperty.call(st,Qt)&&(Object.prototype.hasOwnProperty.call(Ge,Qt)?we(Ge[Qt],st[Qt])||(Ge[Qt].type==="geojson"&&st[Qt].type==="geojson"&&rt(Ge,st,Qt)?Oe(bt,{command:"setGeoJSONSourceData",args:[Qt,st[Qt].data]}):tt(Qt,st,bt,zt)):Ie(Qt,st,bt))})(q.sources,D.sources,ke,he);let Ue=[];q.layers&&q.layers.forEach(Ge=>{"source"in Ge&&he[Ge.source]?Y.push({command:"removeLayer",args:[Ge.id]}):Ue.push(Ge)}),Y=Y.concat(ke),function(Ge,st,bt){st=st||[];let zt=(Ge=Ge||[]).map(ot),Qt=st.map(ot),ur=Ge.reduce(Me,{}),Mr=st.reduce(Me,{}),Fr=zt.slice(),$r=Object.create(null),vi,Vi,Yi,Ln,un;for(let Tn=0,jn=0;Tn@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(Y,he,ke,Ue)=>{let Ge=ke||Ue;return D[he]=!Ge||Ge.toLowerCase(),""}),D["max-age"]){let Y=parseInt(D["max-age"],10);isNaN(Y)?delete D["max-age"]:D["max-age"]=Y}return D},e.ab=function(q,D){let Y=[];for(let he in q)he in D||Y.push(he);return Y},e.ac=w,e.ad=function(q,D,Y){var he=Math.sin(Y),ke=Math.cos(Y),Ue=D[0],Ge=D[1],st=D[2],bt=D[3],zt=D[4],Qt=D[5],ur=D[6],Mr=D[7];return D!==q&&(q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[0]=Ue*ke+zt*he,q[1]=Ge*ke+Qt*he,q[2]=st*ke+ur*he,q[3]=bt*ke+Mr*he,q[4]=zt*ke-Ue*he,q[5]=Qt*ke-Ge*he,q[6]=ur*ke-st*he,q[7]=Mr*ke-bt*he,q},e.ae=function(q){var D=new _a(16);return D[0]=q[0],D[1]=q[1],D[2]=q[2],D[3]=q[3],D[4]=q[4],D[5]=q[5],D[6]=q[6],D[7]=q[7],D[8]=q[8],D[9]=q[9],D[10]=q[10],D[11]=q[11],D[12]=q[12],D[13]=q[13],D[14]=q[14],D[15]=q[15],D},e.af=No,e.ag=function(q,D){let Y=0,he=0;if(q.kind==="constant")he=q.layoutSize;else if(q.kind!=="source"){let{interpolationType:ke,minZoom:Ue,maxZoom:Ge}=q,st=ke?w(Ga.interpolationFactor(ke,D,Ue,Ge),0,1):0;q.kind==="camera"?he=yo.number(q.minSize,q.maxSize,st):Y=st}return{uSizeT:Y,uSize:he}},e.ai=function(q,{uSize:D,uSizeT:Y},{lowerSize:he,upperSize:ke}){return q.kind==="source"?he/Ud:q.kind==="composite"?yo.number(he/Ud,ke/Ud,Y):D},e.aj=E0,e.ak=function(q,D,Y,he){let ke=D.y-q.y,Ue=D.x-q.x,Ge=he.y-Y.y,st=he.x-Y.x,bt=Ge*Ue-st*ke;if(bt===0)return null;let zt=(st*(q.y-Y.y)-Ge*(q.x-Y.x))/bt;return new n(q.x+zt*Ue,q.y+zt*ke)},e.al=k1,e.am=_c,e.an=Ca,e.ao=function(q){let D=1/0,Y=1/0,he=-1/0,ke=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),he=Math.max(he,Ue.x),ke=Math.max(ke,Ue.y);return[D,Y,he,ke]},e.ap=Yl,e.ar=S0,e.as=function(q,D){var Y=D[0],he=D[1],ke=D[2],Ue=D[3],Ge=D[4],st=D[5],bt=D[6],zt=D[7],Qt=D[8],ur=D[9],Mr=D[10],Fr=D[11],$r=D[12],vi=D[13],Vi=D[14],Yi=D[15],Ln=Y*st-he*Ge,un=Y*bt-ke*Ge,Tn=Y*zt-Ue*Ge,jn=he*bt-ke*st,qa=he*zt-Ue*st,Io=ke*zt-Ue*bt,As=Qt*vi-ur*$r,_o=Qt*Vi-Mr*$r,Pa=Qt*Yi-Fr*$r,ns=ur*Vi-Mr*vi,Xo=ur*Yi-Fr*vi,Vo=Mr*Yi-Fr*Vi,va=Ln*Vo-un*Xo+Tn*ns+jn*Pa-qa*_o+Io*As;return va?(q[0]=(st*Vo-bt*Xo+zt*ns)*(va=1/va),q[1]=(ke*Xo-he*Vo-Ue*ns)*va,q[2]=(vi*Io-Vi*qa+Yi*jn)*va,q[3]=(Mr*qa-ur*Io-Fr*jn)*va,q[4]=(bt*Pa-Ge*Vo-zt*_o)*va,q[5]=(Y*Vo-ke*Pa+Ue*_o)*va,q[6]=(Vi*Tn-$r*Io-Yi*un)*va,q[7]=(Qt*Io-Mr*Tn+Fr*un)*va,q[8]=(Ge*Xo-st*Pa+zt*As)*va,q[9]=(he*Pa-Y*Xo-Ue*As)*va,q[10]=($r*qa-vi*Tn+Yi*Ln)*va,q[11]=(ur*Tn-Qt*qa-Fr*Ln)*va,q[12]=(st*_o-Ge*ns-bt*As)*va,q[13]=(Y*ns-he*_o+ke*As)*va,q[14]=(vi*un-$r*jn-Vi*Ln)*va,q[15]=(Qt*jn-ur*un+Mr*Ln)*va,q):null},e.at=O0,e.au=mg,e.av=N0,e.aw=function(){let q={},D=ne.$version;for(let Y in ne.$root){let he=ne.$root[Y];if(he.required){let ke=null;ke=Y==="version"?D:he.type==="array"?[]:{},ke!=null&&(q[Y]=ke)}}return q},e.ax=ya,e.ay=G,e.az=function(q){q=q.slice();let D=Object.create(null);for(let Y=0;Y25||he<0||he>=1||Y<0||Y>=1)},e.bc=function(q,D){return q[0]=D[0],q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=D[1],q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=D[2],q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q},e.bd=class extends Kt{},e.be=R0,e.bf=lw,e.bh=fe,e.bi=function(q,D){Q.REGISTERED_PROTOCOLS[q]=D},e.bj=function(q){delete Q.REGISTERED_PROTOCOLS[q]},e.bk=function(q,D){let Y={};for(let ke=0;keVo*Yl)}let _o=Ge?"center":Y.get("text-justify").evaluate(zt,{},q.canonical),Pa=Y.get("symbol-placement")==="point"?Y.get("text-max-width").evaluate(zt,{},q.canonical)*Yl:1/0,ns=()=>{q.bucket.allowVerticalPlacement&&Po(Tn)&&($r.vertical=vm(vi,q.glyphMap,q.glyphPositions,q.imagePositions,Qt,Pa,Ue,Io,"left",qa,Yi,e.ah.vertical,!0,Mr,ur))};if(!Ge&&As){let Xo=new Set;if(_o==="auto")for(let va=0;vat(void 0,void 0,void 0,function*(){if(q.byteLength===0)return createImageBitmap(new ImageData(1,1));let D=new Blob([new Uint8Array(q)],{type:"image/png"});try{return createImageBitmap(D)}catch(Y){throw new Error(`Could not load image because of ${Y.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),e.e=E,e.f=q=>new Promise((D,Y)=>{let he=new Image;he.onload=()=>{D(he),URL.revokeObjectURL(he.src),he.onload=null,window.requestAnimationFrame(()=>{he.src=O})},he.onerror=()=>Y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let ke=new Blob([new Uint8Array(q)],{type:"image/png"});he.src=q.byteLength?URL.createObjectURL(ke):O}),e.g=le,e.h=(q,D)=>J(E(q,{type:"json"}),D),e.i=L,e.j=j,e.k=ae,e.l=(q,D)=>J(E(q,{type:"arrayBuffer"}),D),e.m=J,e.n=function(q){return new T0(q).readFields(XM,[])},e.o=xs,e.p=M0,e.q=Be,e.r=pn,e.s=$,e.t=yn,e.u=an,e.v=ne,e.w=f,e.x=function([q,D,Y]){return D+=90,D*=Math.PI/180,Y*=Math.PI/180,{x:q*Math.cos(D)*Math.sin(Y),y:q*Math.sin(D)*Math.sin(Y),z:q*Math.cos(Y)}},e.y=yo,e.z=Os}),A("worker",["./shared"],function(e){"use strict";class t{constructor(Fe){this.keyCache={},Fe&&this.replace(Fe)}replace(Fe){this._layerConfigs={},this._layers={},this.update(Fe,[])}update(Fe,Ze){for(let Se of Fe){this._layerConfigs[Se.id]=Se;let Ve=this._layers[Se.id]=e.aA(Se);Ve._featureFilter=e.a7(Ve.filter),this.keyCache[Se.id]&&delete this.keyCache[Se.id]}for(let Se of Ze)delete this.keyCache[Se],delete this._layerConfigs[Se],delete this._layers[Se];this.familiesBySource={};let Ne=e.bk(Object.values(this._layerConfigs),this.keyCache);for(let Se of Ne){let Ve=Se.map(yt=>this._layers[yt.id]),Ee=Ve[0];if(Ee.visibility==="none")continue;let be=Ee.source||"",Ce=this.familiesBySource[be];Ce||(Ce=this.familiesBySource[be]={});let et=Ee.sourceLayer||"_geojsonTileLayer",ht=Ce[et];ht||(ht=Ce[et]=[]),ht.push(Ve)}}}class r{constructor(Fe){let Ze={},Ne=[];for(let be in Fe){let Ce=Fe[be],et=Ze[be]={};for(let ht in Ce){let yt=Ce[+ht];if(!yt||yt.bitmap.width===0||yt.bitmap.height===0)continue;let Pt={x:0,y:0,w:yt.bitmap.width+2,h:yt.bitmap.height+2};Ne.push(Pt),et[ht]={rect:Pt,metrics:yt.metrics}}}let{w:Se,h:Ve}=e.p(Ne),Ee=new e.o({width:Se||1,height:Ve||1});for(let be in Fe){let Ce=Fe[be];for(let et in Ce){let ht=Ce[+et];if(!ht||ht.bitmap.width===0||ht.bitmap.height===0)continue;let yt=Ze[be][et].rect;e.o.copy(ht.bitmap,Ee,{x:0,y:0},{x:yt.x+1,y:yt.y+1},ht.bitmap)}}this.image=Ee,this.positions=Ze}}e.bl("GlyphAtlas",r);class o{constructor(Fe){this.tileID=new e.S(Fe.tileID.overscaledZ,Fe.tileID.wrap,Fe.tileID.canonical.z,Fe.tileID.canonical.x,Fe.tileID.canonical.y),this.uid=Fe.uid,this.zoom=Fe.zoom,this.pixelRatio=Fe.pixelRatio,this.tileSize=Fe.tileSize,this.source=Fe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Fe.showCollisionBoxes,this.collectResourceTiming=!!Fe.collectResourceTiming,this.returnDependencies=!!Fe.returnDependencies,this.promoteId=Fe.promoteId,this.inFlightDependencies=[]}parse(Fe,Ze,Ne,Se){return e._(this,void 0,void 0,function*(){this.status="parsing",this.data=Fe,this.collisionBoxArray=new e.a5;let Ve=new e.bm(Object.keys(Fe.layers).sort()),Ee=new e.bn(this.tileID,this.promoteId);Ee.bucketLayerIDs=[];let be={},Ce={featureIndex:Ee,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ne},et=Ze.familiesBySource[this.source];for(let en in et){let Ri=Fe.layers[en];if(!Ri)continue;Ri.version===1&&e.w(`Vector tile source "${this.source}" layer "${en}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Zi=Ve.encode(en),vn=[];for(let Xt=0;Xt=Dt.maxzoom||Dt.visibility!=="none"&&(i(Xt,this.zoom,Ne),(be[Dt.id]=Dt.createBucket({index:Ee.bucketLayerIDs.length,layers:Xt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Zi,sourceID:this.source})).populate(vn,Ce,this.tileID.canonical),Ee.bucketLayerIDs.push(Xt.map(qt=>qt.id)))}}let ht=e.aF(Ce.glyphDependencies,en=>Object.keys(en).map(Number));this.inFlightDependencies.forEach(en=>en?.abort()),this.inFlightDependencies=[];let yt=Promise.resolve({});if(Object.keys(ht).length){let en=new AbortController;this.inFlightDependencies.push(en),yt=Se.sendAsync({type:"GG",data:{stacks:ht,source:this.source,tileID:this.tileID,type:"glyphs"}},en)}let Pt=Object.keys(Ce.iconDependencies),Ot=Promise.resolve({});if(Pt.length){let en=new AbortController;this.inFlightDependencies.push(en),Ot=Se.sendAsync({type:"GI",data:{icons:Pt,source:this.source,tileID:this.tileID,type:"icons"}},en)}let Wt=Object.keys(Ce.patternDependencies),$t=Promise.resolve({});if(Wt.length){let en=new AbortController;this.inFlightDependencies.push(en),$t=Se.sendAsync({type:"GI",data:{icons:Wt,source:this.source,tileID:this.tileID,type:"patterns"}},en)}let[lr,fi,Pi]=yield Promise.all([yt,Ot,$t]),Bi=new r(lr),zi=new e.bo(fi,Pi);for(let en in be){let Ri=be[en];Ri instanceof e.a6?(i(Ri.layers,this.zoom,Ne),e.bp({bucket:Ri,glyphMap:lr,glyphPositions:Bi.positions,imageMap:fi,imagePositions:zi.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Ri.hasPattern&&(Ri instanceof e.bq||Ri instanceof e.br||Ri instanceof e.bs)&&(i(Ri.layers,this.zoom,Ne),Ri.addFeatures(Ce,this.tileID.canonical,zi.patternPositions))}return this.status="done",{buckets:Object.values(be).filter(en=>!en.isEmpty()),featureIndex:Ee,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Bi.image,imageAtlas:zi,glyphMap:this.returnDependencies?lr:null,iconMap:this.returnDependencies?fi:null,glyphPositions:this.returnDependencies?Bi.positions:null}})}}function i(mt,Fe,Ze){let Ne=new e.z(Fe);for(let Se of mt)Se.recalculate(Ne,Ze)}class n{constructor(Fe,Ze,Ne){this.actor=Fe,this.layerIndex=Ze,this.availableImages=Ne,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Fe,Ze){return e._(this,void 0,void 0,function*(){let Ne=yield e.l(Fe.request,Ze);try{return{vectorTile:new e.bt.VectorTile(new e.bu(Ne.data)),rawData:Ne.data,cacheControl:Ne.cacheControl,expires:Ne.expires}}catch(Se){let Ve=new Uint8Array(Ne.data),Ee=`Unable to parse the tile at ${Fe.request.url}, `;throw Ee+=Ve[0]===31&&Ve[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Se.message}`,new Error(Ee)}})}loadTile(Fe){return e._(this,void 0,void 0,function*(){let Ze=Fe.uid,Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request),Se=new o(Fe);this.loading[Ze]=Se;let Ve=new AbortController;Se.abort=Ve;try{let Ee=yield this.loadVectorTile(Fe,Ve);if(delete this.loading[Ze],!Ee)return null;let be=Ee.rawData,Ce={};Ee.expires&&(Ce.expires=Ee.expires),Ee.cacheControl&&(Ce.cacheControl=Ee.cacheControl);let et={};if(Ne){let yt=Ne.finish();yt&&(et.resourceTiming=JSON.parse(JSON.stringify(yt)))}Se.vectorTile=Ee.vectorTile;let ht=Se.parse(Ee.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ze]=Se,this.fetching[Ze]={rawTileData:be,cacheControl:Ce,resourceTiming:et};try{let yt=yield ht;return e.e({rawTileData:be.slice(0)},yt,Ce,et)}finally{delete this.fetching[Ze]}}catch(Ee){throw delete this.loading[Ze],Se.status="done",this.loaded[Ze]=Se,Ee}})}reloadTile(Fe){return e._(this,void 0,void 0,function*(){let Ze=Fe.uid;if(!this.loaded||!this.loaded[Ze])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ne=this.loaded[Ze];if(Ne.showCollisionBoxes=Fe.showCollisionBoxes,Ne.status==="parsing"){let Se=yield Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor),Ve;if(this.fetching[Ze]){let{rawTileData:Ee,cacheControl:be,resourceTiming:Ce}=this.fetching[Ze];delete this.fetching[Ze],Ve=e.e({rawTileData:Ee.slice(0)},Se,be,Ce)}else Ve=Se;return Ve}if(Ne.status==="done"&&Ne.vectorTile)return Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Fe){return e._(this,void 0,void 0,function*(){let Ze=this.loading,Ne=Fe.uid;Ze&&Ze[Ne]&&Ze[Ne].abort&&(Ze[Ne].abort.abort(),delete Ze[Ne])})}removeTile(Fe){return e._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Fe.uid]&&delete this.loaded[Fe.uid]})}}class a{constructor(){this.loaded={}}loadTile(Fe){return e._(this,void 0,void 0,function*(){let{uid:Ze,encoding:Ne,rawImageData:Se,redFactor:Ve,greenFactor:Ee,blueFactor:be,baseShift:Ce}=Fe,et=Se.width+2,ht=Se.height+2,yt=e.b(Se)?new e.R({width:et,height:ht},yield e.bw(Se,-1,-1,et,ht)):Se,Pt=new e.bx(Ze,yt,Ne,Ve,Ee,be,Ce);return this.loaded=this.loaded||{},this.loaded[Ze]=Pt,Pt})}removeTile(Fe){let Ze=this.loaded,Ne=Fe.uid;Ze&&Ze[Ne]&&delete Ze[Ne]}}function s(mt,Fe){if(mt.length!==0){c(mt[0],Fe);for(var Ze=1;Ze=Math.abs(be)?Ze-Ce+be:be-Ce+Ze,Ze=Ce}Ze+Ne>=0!=!!Fe&&mt.reverse()}var h=e.by(function mt(Fe,Ze){var Ne,Se=Fe&&Fe.type;if(Se==="FeatureCollection")for(Ne=0;Ne>31}function L(mt,Fe){for(var Ze=mt.loadGeometry(),Ne=mt.type,Se=0,Ve=0,Ee=Ze.length,be=0;bemt},B=Math.fround||(I=new Float32Array(1),mt=>(I[0]=+mt,I[0]));var I;let N=3,U=5,W=6;class Q{constructor(Fe){this.options=Object.assign(Object.create(O),Fe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Fe){let{log:Ze,minZoom:Ne,maxZoom:Se}=this.options;Ze&&console.time("total time");let Ve=`prepare ${Fe.length} points`;Ze&&console.time(Ve),this.points=Fe;let Ee=[];for(let Ce=0;Ce=Ne;Ce--){let et=+Date.now();be=this.trees[Ce]=this._createTree(this._cluster(be,Ce)),Ze&&console.log("z%d: %d clusters in %dms",Ce,be.numItems,+Date.now()-et)}return Ze&&console.timeEnd("total time"),this}getClusters(Fe,Ze){let Ne=((Fe[0]+180)%360+360)%360-180,Se=Math.max(-90,Math.min(90,Fe[1])),Ve=Fe[2]===180?180:((Fe[2]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,Fe[3]));if(Fe[2]-Fe[0]>=360)Ne=-180,Ve=180;else if(Ne>Ve){let yt=this.getClusters([Ne,Se,180,Ee],Ze),Pt=this.getClusters([-180,Se,Ve,Ee],Ze);return yt.concat(Pt)}let be=this.trees[this._limitZoom(Ze)],Ce=be.range(fe(Ne),G(Ee),fe(Ve),G(Se)),et=be.data,ht=[];for(let yt of Ce){let Pt=this.stride*yt;ht.push(et[Pt+U]>1?le(et,Pt,this.clusterProps):this.points[et[Pt+N]])}return ht}getChildren(Fe){let Ze=this._getOriginId(Fe),Ne=this._getOriginZoom(Fe),Se="No cluster with the specified id.",Ve=this.trees[Ne];if(!Ve)throw new Error(Se);let Ee=Ve.data;if(Ze*this.stride>=Ee.length)throw new Error(Se);let be=this.options.radius/(this.options.extent*Math.pow(2,Ne-1)),Ce=Ve.within(Ee[Ze*this.stride],Ee[Ze*this.stride+1],be),et=[];for(let ht of Ce){let yt=ht*this.stride;Ee[yt+4]===Fe&&et.push(Ee[yt+U]>1?le(Ee,yt,this.clusterProps):this.points[Ee[yt+N]])}if(et.length===0)throw new Error(Se);return et}getLeaves(Fe,Ze,Ne){let Se=[];return this._appendLeaves(Se,Fe,Ze=Ze||10,Ne=Ne||0,0),Se}getTile(Fe,Ze,Ne){let Se=this.trees[this._limitZoom(Fe)],Ve=Math.pow(2,Fe),{extent:Ee,radius:be}=this.options,Ce=be/Ee,et=(Ne-Ce)/Ve,ht=(Ne+1+Ce)/Ve,yt={features:[]};return this._addTileFeatures(Se.range((Ze-Ce)/Ve,et,(Ze+1+Ce)/Ve,ht),Se.data,Ze,Ne,Ve,yt),Ze===0&&this._addTileFeatures(Se.range(1-Ce/Ve,et,1,ht),Se.data,Ve,Ne,Ve,yt),Ze===Ve-1&&this._addTileFeatures(Se.range(0,et,Ce/Ve,ht),Se.data,-1,Ne,Ve,yt),yt.features.length?yt:null}getClusterExpansionZoom(Fe){let Ze=this._getOriginZoom(Fe)-1;for(;Ze<=this.options.maxZoom;){let Ne=this.getChildren(Fe);if(Ze++,Ne.length!==1)break;Fe=Ne[0].properties.cluster_id}return Ze}_appendLeaves(Fe,Ze,Ne,Se,Ve){let Ee=this.getChildren(Ze);for(let be of Ee){let Ce=be.properties;if(Ce&&Ce.cluster?Ve+Ce.point_count<=Se?Ve+=Ce.point_count:Ve=this._appendLeaves(Fe,Ce.cluster_id,Ne,Se,Ve):Ve1,ht,yt,Pt;if(et)ht=se(Ze,Ce,this.clusterProps),yt=Ze[Ce],Pt=Ze[Ce+1];else{let $t=this.points[Ze[Ce+N]];ht=$t.properties;let[lr,fi]=$t.geometry.coordinates;yt=fe(lr),Pt=G(fi)}let Ot={type:1,geometry:[[Math.round(this.options.extent*(yt*Ve-Ne)),Math.round(this.options.extent*(Pt*Ve-Se))]],tags:ht},Wt;Wt=et||this.options.generateId?Ze[Ce+N]:this.points[Ze[Ce+N]].id,Wt!==void 0&&(Ot.id=Wt),Ee.features.push(Ot)}}_limitZoom(Fe){return Math.max(this.options.minZoom,Math.min(Math.floor(+Fe),this.options.maxZoom+1))}_cluster(Fe,Ze){let{radius:Ne,extent:Se,reduce:Ve,minPoints:Ee}=this.options,be=Ne/(Se*Math.pow(2,Ze)),Ce=Fe.data,et=[],ht=this.stride;for(let yt=0;ytZe&&(lr+=Ce[Pi+U])}if(lr>$t&&lr>=Ee){let fi,Pi=Pt*$t,Bi=Ot*$t,zi=-1,en=((yt/ht|0)<<5)+(Ze+1)+this.points.length;for(let Ri of Wt){let Zi=Ri*ht;if(Ce[Zi+2]<=Ze)continue;Ce[Zi+2]=Ze;let vn=Ce[Zi+U];Pi+=Ce[Zi]*vn,Bi+=Ce[Zi+1]*vn,Ce[Zi+4]=en,Ve&&(fi||(fi=this._map(Ce,yt,!0),zi=this.clusterProps.length,this.clusterProps.push(fi)),Ve(fi,this._map(Ce,Zi)))}Ce[yt+4]=en,et.push(Pi/lr,Bi/lr,1/0,en,-1,lr),Ve&&et.push(zi)}else{for(let fi=0;fi1)for(let fi of Wt){let Pi=fi*ht;if(!(Ce[Pi+2]<=Ze)){Ce[Pi+2]=Ze;for(let Bi=0;Bi>5}_getOriginZoom(Fe){return(Fe-this.points.length)%32}_map(Fe,Ze,Ne){if(Fe[Ze+U]>1){let Ee=this.clusterProps[Fe[Ze+W]];return Ne?Object.assign({},Ee):Ee}let Se=this.points[Fe[Ze+N]].properties,Ve=this.options.map(Se);return Ne&&Ve===Se?Object.assign({},Ve):Ve}}function le(mt,Fe,Ze){return{type:"Feature",id:mt[Fe+N],properties:se(mt,Fe,Ze),geometry:{type:"Point",coordinates:[(Ne=mt[Fe],360*(Ne-.5)),J(mt[Fe+1])]}};var Ne}function se(mt,Fe,Ze){let Ne=mt[Fe+U],Se=Ne>=1e4?`${Math.round(Ne/1e3)}k`:Ne>=1e3?Math.round(Ne/100)/10+"k":Ne,Ve=mt[Fe+W],Ee=Ve===-1?{}:Object.assign({},Ze[Ve]);return Object.assign(Ee,{cluster:!0,cluster_id:mt[Fe+N],point_count:Ne,point_count_abbreviated:Se})}function fe(mt){return mt/360+.5}function G(mt){let Fe=Math.sin(mt*Math.PI/180),Ze=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ze<0?0:Ze>1?1:Ze}function J(mt){let Fe=(180-360*mt)*Math.PI/180;return 360*Math.atan(Math.exp(Fe))/Math.PI-90}function $(mt,Fe,Ze,Ne){let Se=Ne,Ve=Fe+(Ze-Fe>>1),Ee,be=Ze-Fe,Ce=mt[Fe],et=mt[Fe+1],ht=mt[Ze],yt=mt[Ze+1];for(let Pt=Fe+3;PtSe)Ee=Pt,Se=Ot;else if(Ot===Se){let Wt=Math.abs(Pt-Ve);WtNe&&(Ee-Fe>3&&$(mt,Fe,Ee,Ne),mt[Ee+2]=Se,Ze-Ee>3&&$(mt,Ee,Ze,Ne))}function X(mt,Fe,Ze,Ne,Se,Ve){let Ee=Se-Ze,be=Ve-Ne;if(Ee!==0||be!==0){let Ce=((mt-Ze)*Ee+(Fe-Ne)*be)/(Ee*Ee+be*be);Ce>1?(Ze=Se,Ne=Ve):Ce>0&&(Ze+=Ee*Ce,Ne+=be*Ce)}return Ee=mt-Ze,be=Fe-Ne,Ee*Ee+be*be}function re(mt,Fe,Ze,Ne){let Se={id:mt??null,type:Fe,geometry:Ze,tags:Ne,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Fe==="Point"||Fe==="MultiPoint"||Fe==="LineString")ae(Se,Ze);else if(Fe==="Polygon")ae(Se,Ze[0]);else if(Fe==="MultiLineString")for(let Ve of Ze)ae(Se,Ve);else if(Fe==="MultiPolygon")for(let Ve of Ze)ae(Se,Ve[0]);return Se}function ae(mt,Fe){for(let Ze=0;Ze0&&(Ee+=Ne?(Se*ht-et*Ve)/2:Math.sqrt(Math.pow(et-Se,2)+Math.pow(ht-Ve,2))),Se=et,Ve=ht}let be=Fe.length-3;Fe[2]=1,$(Fe,0,be,Ze),Fe[be+2]=1,Fe.size=Math.abs(Ee),Fe.start=0,Fe.end=Fe.size}function ce(mt,Fe,Ze,Ne){for(let Se=0;Se1?1:Ze}function Oe(mt,Fe,Ze,Ne,Se,Ve,Ee,be){if(Ne/=Fe,Ve>=(Ze/=Fe)&&Ee=Ne)return null;let Ce=[];for(let et of mt){let ht=et.geometry,yt=et.type,Pt=Se===0?et.minX:et.minY,Ot=Se===0?et.maxX:et.maxY;if(Pt>=Ze&&Ot=Ne)continue;let Wt=[];if(yt==="Point"||yt==="MultiPoint")Ie(ht,Wt,Ze,Ne,Se);else if(yt==="LineString")Xe(ht,Wt,Ze,Ne,Se,!1,be.lineMetrics);else if(yt==="MultiLineString")rt(ht,Wt,Ze,Ne,Se,!1);else if(yt==="Polygon")rt(ht,Wt,Ze,Ne,Se,!0);else if(yt==="MultiPolygon")for(let $t of ht){let lr=[];rt($t,lr,Ze,Ne,Se,!0),lr.length&&Wt.push(lr)}if(Wt.length){if(be.lineMetrics&&yt==="LineString"){for(let $t of Wt)Ce.push(re(et.id,yt,$t,et.tags));continue}yt!=="LineString"&&yt!=="MultiLineString"||(Wt.length===1?(yt="LineString",Wt=Wt[0]):yt="MultiLineString"),yt!=="Point"&&yt!=="MultiPoint"||(yt=Wt.length===3?"Point":"MultiPoint"),Ce.push(re(et.id,yt,Wt,et.tags))}}return Ce.length?Ce:null}function Ie(mt,Fe,Ze,Ne,Se){for(let Ve=0;Ve=Ze&&Ee<=Ne&&Je(Fe,mt[Ve],mt[Ve+1],mt[Ve+2])}}function Xe(mt,Fe,Ze,Ne,Se,Ve,Ee){let be=tt(mt),Ce=Se===0?ot:Me,et,ht,yt=mt.start;for(let lr=0;lrZe&&(ht=Ce(be,fi,Pi,zi,en,Ze),Ee&&(be.start=yt+et*ht)):Ri>Ne?Zi=Ze&&(ht=Ce(be,fi,Pi,zi,en,Ze),vn=!0),Zi>Ne&&Ri<=Ne&&(ht=Ce(be,fi,Pi,zi,en,Ne),vn=!0),!Ve&&vn&&(Ee&&(be.end=yt+et*ht),Fe.push(be),be=tt(mt)),Ee&&(yt+=et)}let Pt=mt.length-3,Ot=mt[Pt],Wt=mt[Pt+1],$t=Se===0?Ot:Wt;$t>=Ze&&$t<=Ne&&Je(be,Ot,Wt,mt[Pt+2]),Pt=be.length-3,Ve&&Pt>=3&&(be[Pt]!==be[0]||be[Pt+1]!==be[1])&&Je(be,be[0],be[1],be[2]),be.length&&Fe.push(be)}function tt(mt){let Fe=[];return Fe.size=mt.size,Fe.start=mt.start,Fe.end=mt.end,Fe}function rt(mt,Fe,Ze,Ne,Se,Ve){for(let Ee of mt)Xe(Ee,Fe,Ze,Ne,Se,Ve,!1)}function Je(mt,Fe,Ze,Ne){mt.push(Fe,Ze,Ne)}function ot(mt,Fe,Ze,Ne,Se,Ve){let Ee=(Ve-Fe)/(Ne-Fe);return Je(mt,Ve,Ze+(Se-Ze)*Ee,1),Ee}function Me(mt,Fe,Ze,Ne,Se,Ve){let Ee=(Ve-Ze)/(Se-Ze);return Je(mt,Fe+(Ne-Fe)*Ee,Ve,1),Ee}function pe(mt,Fe){let Ze=[];for(let Ne=0;Ne0&&Fe.size<(Se?Ee:Ne))return void(Ze.numPoints+=Fe.length/3);let be=[];for(let Ce=0;CeEe)&&(Ze.numSimplified++,be.push(Fe[Ce],Fe[Ce+1])),Ze.numPoints++;Se&&function(Ce,et){let ht=0;for(let yt=0,Pt=Ce.length,Ot=Pt-2;yt0===et)for(let yt=0,Pt=Ce.length;yt24)throw new Error("maxZoom should be in the 0-24 range");if(Ze.promoteId&&Ze.generateId)throw new Error("promoteId and generateId cannot be used together.");let Se=function(Ve,Ee){let be=[];if(Ve.type==="FeatureCollection")for(let Ce=0;Ce1&&console.time("creation"),Ot=this.tiles[Pt]=it(Fe,Ze,Ne,Se,et),this.tileCoords.push({z:Ze,x:Ne,y:Se}),ht)){ht>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ze,Ne,Se,Ot.numFeatures,Ot.numPoints,Ot.numSimplified),console.timeEnd("creation"));let vn=`z${Ze}`;this.stats[vn]=(this.stats[vn]||0)+1,this.total++}if(Ot.source=Fe,Ve==null){if(Ze===et.indexMaxZoom||Ot.numPoints<=et.indexMaxPoints)continue}else{if(Ze===et.maxZoom||Ze===Ve)continue;if(Ve!=null){let vn=Ve-Ze;if(Ne!==Ee>>vn||Se!==be>>vn)continue}}if(Ot.source=null,Fe.length===0)continue;ht>1&&console.time("clipping");let Wt=.5*et.buffer/et.extent,$t=.5-Wt,lr=.5+Wt,fi=1+Wt,Pi=null,Bi=null,zi=null,en=null,Ri=Oe(Fe,yt,Ne-Wt,Ne+lr,0,Ot.minX,Ot.maxX,et),Zi=Oe(Fe,yt,Ne+$t,Ne+fi,0,Ot.minX,Ot.maxX,et);Fe=null,Ri&&(Pi=Oe(Ri,yt,Se-Wt,Se+lr,1,Ot.minY,Ot.maxY,et),Bi=Oe(Ri,yt,Se+$t,Se+fi,1,Ot.minY,Ot.maxY,et),Ri=null),Zi&&(zi=Oe(Zi,yt,Se-Wt,Se+lr,1,Ot.minY,Ot.maxY,et),en=Oe(Zi,yt,Se+$t,Se+fi,1,Ot.minY,Ot.maxY,et),Zi=null),ht>1&&console.timeEnd("clipping"),Ce.push(Pi||[],Ze+1,2*Ne,2*Se),Ce.push(Bi||[],Ze+1,2*Ne,2*Se+1),Ce.push(zi||[],Ze+1,2*Ne+1,2*Se),Ce.push(en||[],Ze+1,2*Ne+1,2*Se+1)}}getTile(Fe,Ze,Ne){Fe=+Fe,Ze=+Ze,Ne=+Ne;let Se=this.options,{extent:Ve,debug:Ee}=Se;if(Fe<0||Fe>24)return null;let be=1<1&&console.log("drilling down to z%d-%d-%d",Fe,Ze,Ne);let et,ht=Fe,yt=Ze,Pt=Ne;for(;!et&&ht>0;)ht--,yt>>=1,Pt>>=1,et=this.tiles[jt(ht,yt,Pt)];return et&&et.source?(Ee>1&&(console.log("found parent tile z%d-%d-%d",ht,yt,Pt),console.time("drilling down")),this.splitTile(et.source,ht,yt,Pt,Fe,Ze,Ne),Ee>1&&console.timeEnd("drilling down"),this.tiles[Ce]?ze(this.tiles[Ce],Ve):null):null}}function jt(mt,Fe,Ze){return 32*((1<{yt.properties=Ot;let Wt={};for(let $t of Pt)Wt[$t]=Ce[$t].evaluate(ht,yt);return Wt},Ee.reduce=(Ot,Wt)=>{yt.properties=Wt;for(let $t of Pt)ht.accumulated=Ot[$t],Ot[$t]=et[$t].evaluate(ht,yt)},Ee}(Fe)).load((yield this._pendingData).features):(Se=yield this._pendingData,new Bt(Se,Fe.geojsonVtOptions)),this.loaded={};let Ve={};if(Ne){let Ee=Ne.finish();Ee&&(Ve.resourceTiming={},Ve.resourceTiming[Fe.source]=JSON.parse(JSON.stringify(Ee)))}return Ve}catch(Ve){if(delete this._pendingRequest,e.bB(Ve))return{abandoned:!0};throw Ve}var Se})}getData(){return e._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Fe){let Ze=this.loaded;return Ze&&Ze[Fe.uid]?super.reloadTile(Fe):this.loadTile(Fe)}loadAndProcessGeoJSON(Fe,Ze){return e._(this,void 0,void 0,function*(){let Ne=yield this.loadGeoJSON(Fe,Ze);if(delete this._pendingRequest,typeof Ne!="object")throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(h(Ne,!0),Fe.filter){let Se=e.bC(Fe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Se.result==="error")throw new Error(Se.value.map(Ee=>`${Ee.key}: ${Ee.message}`).join(", "));Ne={type:"FeatureCollection",features:Ne.features.filter(Ee=>Se.value.evaluate({zoom:0},Ee))}}return Ne})}loadGeoJSON(Fe,Ze){return e._(this,void 0,void 0,function*(){let{promoteId:Ne}=Fe;if(Fe.request){let Se=yield e.h(Fe.request,Ze);return this._dataUpdateable=nr(Se.data,Ne)?Lr(Se.data,Ne):void 0,Se.data}if(typeof Fe.data=="string")try{let Se=JSON.parse(Fe.data);return this._dataUpdateable=nr(Se,Ne)?Lr(Se,Ne):void 0,Se}catch{throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`)}if(!Fe.dataDiff)throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Fe.source}`);return function(Se,Ve,Ee){var be,Ce,et,ht;if(Ve.removeAll&&Se.clear(),Ve.remove)for(let yt of Ve.remove)Se.delete(yt);if(Ve.add)for(let yt of Ve.add){let Pt=cr(yt,Ee);Pt!=null&&Se.set(Pt,yt)}if(Ve.update)for(let yt of Ve.update){let Pt=Se.get(yt.id);if(Pt==null)continue;let Ot=!yt.removeAllProperties&&(((be=yt.removeProperties)===null||be===void 0?void 0:be.length)>0||((Ce=yt.addOrUpdateProperties)===null||Ce===void 0?void 0:Ce.length)>0);if((yt.newGeometry||yt.removeAllProperties||Ot)&&(Pt=Object.assign({},Pt),Se.set(yt.id,Pt),Ot&&(Pt.properties=Object.assign({},Pt.properties))),yt.newGeometry&&(Pt.geometry=yt.newGeometry),yt.removeAllProperties)Pt.properties={};else if(((et=yt.removeProperties)===null||et===void 0?void 0:et.length)>0)for(let Wt of yt.removeProperties)Object.prototype.hasOwnProperty.call(Pt.properties,Wt)&&delete Pt.properties[Wt];if(((ht=yt.addOrUpdateProperties)===null||ht===void 0?void 0:ht.length)>0)for(let{key:Wt,value:$t}of yt.addOrUpdateProperties)Pt.properties[Wt]=$t}}(this._dataUpdateable,Fe.dataDiff,Ne),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Fe){return e._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Fe){return this._geoJSONIndex.getClusterExpansionZoom(Fe.clusterId)}getClusterChildren(Fe){return this._geoJSONIndex.getChildren(Fe.clusterId)}getClusterLeaves(Fe){return this._geoJSONIndex.getLeaves(Fe.clusterId,Fe.limit,Fe.offset)}}class xr{constructor(Fe){this.self=Fe,this.actor=new e.F(Fe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ze,Ne)=>{if(this.externalWorkerSourceTypes[Ze])throw new Error(`Worker source with name "${Ze}" already registered.`);this.externalWorkerSourceTypes[Ze]=Ne},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=Ze=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(Ze)},this.actor.registerMessageHandler("LDT",(Ze,Ne)=>this._getDEMWorkerSource(Ze,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RDT",(Ze,Ne)=>e._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ze,Ne.source).removeTile(Ne)})),this.actor.registerMessageHandler("GCEZ",(Ze,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ze,Ne.type,Ne.source).getClusterExpansionZoom(Ne)})),this.actor.registerMessageHandler("GCC",(Ze,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ze,Ne.type,Ne.source).getClusterChildren(Ne)})),this.actor.registerMessageHandler("GCL",(Ze,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ze,Ne.type,Ne.source).getClusterLeaves(Ne)})),this.actor.registerMessageHandler("LD",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).loadData(Ne)),this.actor.registerMessageHandler("GD",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).getData()),this.actor.registerMessageHandler("LT",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RT",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).reloadTile(Ne)),this.actor.registerMessageHandler("AT",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).abortTile(Ne)),this.actor.registerMessageHandler("RMT",(Ze,Ne)=>this._getWorkerSource(Ze,Ne.type,Ne.source).removeTile(Ne)),this.actor.registerMessageHandler("RS",(Ze,Ne)=>e._(this,void 0,void 0,function*(){if(!this.workerSources[Ze]||!this.workerSources[Ze][Ne.type]||!this.workerSources[Ze][Ne.type][Ne.source])return;let Se=this.workerSources[Ze][Ne.type][Ne.source];delete this.workerSources[Ze][Ne.type][Ne.source],Se.removeSource!==void 0&&Se.removeSource(Ne)})),this.actor.registerMessageHandler("RM",Ze=>e._(this,void 0,void 0,function*(){delete this.layerIndexes[Ze],delete this.availableImages[Ze],delete this.workerSources[Ze],delete this.demWorkerSources[Ze]})),this.actor.registerMessageHandler("SR",(Ze,Ne)=>e._(this,void 0,void 0,function*(){this.referrer=Ne})),this.actor.registerMessageHandler("SRPS",(Ze,Ne)=>this._syncRTLPluginState(Ze,Ne)),this.actor.registerMessageHandler("IS",(Ze,Ne)=>e._(this,void 0,void 0,function*(){this.self.importScripts(Ne)})),this.actor.registerMessageHandler("SI",(Ze,Ne)=>this._setImages(Ze,Ne)),this.actor.registerMessageHandler("UL",(Ze,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ze).update(Ne.layers,Ne.removedIds)})),this.actor.registerMessageHandler("SL",(Ze,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ze).replace(Ne)}))}_setImages(Fe,Ze){return e._(this,void 0,void 0,function*(){this.availableImages[Fe]=Ze;for(let Ne in this.workerSources[Fe]){let Se=this.workerSources[Fe][Ne];for(let Ve in Se)Se[Ve].availableImages=Ze}})}_syncRTLPluginState(Fe,Ze){return e._(this,void 0,void 0,function*(){if(e.bD.isParsed())return e.bD.getState();if(Ze.pluginStatus!=="loading")return e.bD.setState(Ze),Ze;let Ne=Ze.pluginURL;if(this.self.importScripts(Ne),e.bD.isParsed()){let Se={pluginStatus:"loaded",pluginURL:Ne};return e.bD.setState(Se),Se}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ne}`)})}_getAvailableImages(Fe){let Ze=this.availableImages[Fe];return Ze||(Ze=[]),Ze}_getLayerIndex(Fe){let Ze=this.layerIndexes[Fe];return Ze||(Ze=this.layerIndexes[Fe]=new t),Ze}_getWorkerSource(Fe,Ze,Ne){if(this.workerSources[Fe]||(this.workerSources[Fe]={}),this.workerSources[Fe][Ze]||(this.workerSources[Fe][Ze]={}),!this.workerSources[Fe][Ze][Ne]){let Se={sendAsync:(Ve,Ee)=>(Ve.targetMapId=Fe,this.actor.sendAsync(Ve,Ee))};switch(Ze){case"vector":this.workerSources[Fe][Ze][Ne]=new n(Se,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;case"geojson":this.workerSources[Fe][Ze][Ne]=new mr(Se,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;default:this.workerSources[Fe][Ze][Ne]=new this.externalWorkerSourceTypes[Ze](Se,this._getLayerIndex(Fe),this._getAvailableImages(Fe))}}return this.workerSources[Fe][Ze][Ne]}_getDEMWorkerSource(Fe,Ze){return this.demWorkerSources[Fe]||(this.demWorkerSources[Fe]={}),this.demWorkerSources[Fe][Ze]||(this.demWorkerSources[Fe][Ze]=new a),this.demWorkerSources[Fe][Ze]}}return e.i(self)&&(self.worker=new xr(self)),xr}),A("index",["exports","./shared"],function(e,t){"use strict";var r="4.7.1";let o,i,n={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:Be=>new Promise((R,ie)=>{let xe=requestAnimationFrame(R);Be.signal.addEventListener("abort",()=>{cancelAnimationFrame(xe),ie(t.c())})}),getImageData(Be,R=0){return this.getImageCanvasContext(Be).getImageData(-R,-R,Be.width+2*R,Be.height+2*R)},getImageCanvasContext(Be){let R=window.document.createElement("canvas"),ie=R.getContext("2d",{willReadFrequently:!0});if(!ie)throw new Error("failed to create canvas 2d context");return R.width=Be.width,R.height=Be.height,ie.drawImage(Be,0,0,Be.width,Be.height),ie},resolveURL:Be=>(o||(o=document.createElement("a")),o.href=Be,o.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(i==null&&(i=matchMedia("(prefers-reduced-motion: reduce)")),i.matches)}};class a{static testProp(R){if(!a.docStyle)return R[0];for(let ie=0;ie{window.removeEventListener("click",a.suppressClickInternal,!0)},0)}static getScale(R){let ie=R.getBoundingClientRect();return{x:ie.width/R.offsetWidth||1,y:ie.height/R.offsetHeight||1,boundingClientRect:ie}}static getPoint(R,ie,xe){let Te=ie.boundingClientRect;return new t.P((xe.clientX-Te.left)/ie.x-R.clientLeft,(xe.clientY-Te.top)/ie.y-R.clientTop)}static mousePos(R,ie){let xe=a.getScale(R);return a.getPoint(R,xe,ie)}static touchPos(R,ie){let xe=[],Te=a.getScale(R);for(let De=0;De{c&&T(c),c=null,d=!0},h.onerror=()=>{p=!0,c=null},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(Be){let R,ie,xe,Te;Be.resetRequestQueue=()=>{R=[],ie=0,xe=0,Te={}},Be.addThrottleControl=Rt=>{let Kt=xe++;return Te[Kt]=Rt,Kt},Be.removeThrottleControl=Rt=>{delete Te[Rt],ut()},Be.getImage=(Rt,Kt,fr=!0)=>new Promise((dr,jr)=>{s.supported&&(Rt.headers||(Rt.headers={}),Rt.headers.accept="image/webp,*/*"),t.e(Rt,{type:"image"}),R.push({abortController:Kt,requestParameters:Rt,supportImageRefresh:fr,state:"queued",onError:ii=>{jr(ii)},onSuccess:ii=>{dr(ii)}}),ut()});let De=Rt=>t._(this,void 0,void 0,function*(){Rt.state="running";let{requestParameters:Kt,supportImageRefresh:fr,onError:dr,onSuccess:jr,abortController:ii}=Rt,qe=fr===!1&&!t.i(self)&&!t.g(Kt.url)&&(!Kt.headers||Object.keys(Kt.headers).reduce((ct,Tt)=>ct&&Tt==="accept",!0));ie++;let Ye=qe?_t(Kt,ii):t.m(Kt,ii);try{let ct=yield Ye;delete Rt.abortController,Rt.state="completed",ct.data instanceof HTMLImageElement||t.b(ct.data)?jr(ct):ct.data&&jr({data:yield(nt=ct.data,typeof createImageBitmap=="function"?t.d(nt):t.f(nt)),cacheControl:ct.cacheControl,expires:ct.expires})}catch(ct){delete Rt.abortController,dr(ct)}finally{ie--,ut()}var nt}),ut=()=>{let Rt=(()=>{for(let Kt of Object.keys(Te))if(Te[Kt]())return!0;return!1})()?t.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:t.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Kt=ie;Kt0;Kt++){let fr=R.shift();fr.abortController.signal.aborted?Kt--:De(fr)}},_t=(Rt,Kt)=>new Promise((fr,dr)=>{let jr=new Image,ii=Rt.url,qe=Rt.credentials;qe&&qe==="include"?jr.crossOrigin="use-credentials":(qe&&qe==="same-origin"||!t.s(ii))&&(jr.crossOrigin="anonymous"),Kt.signal.addEventListener("abort",()=>{jr.src="",dr(t.c())}),jr.fetchPriority="high",jr.onload=()=>{jr.onerror=jr.onload=null,fr({data:jr})},jr.onerror=()=>{jr.onerror=jr.onload=null,Kt.signal.aborted||dr(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},jr.src=ii})}(l||(l={})),l.resetRequestQueue();class _{constructor(R){this._transformRequestFn=R}transformRequest(R,ie){return this._transformRequestFn&&this._transformRequestFn(R,ie)||{url:R}}setTransformRequest(R){this._transformRequestFn=R}}function w(Be){var R=new t.A(3);return R[0]=Be[0],R[1]=Be[1],R[2]=Be[2],R}var M,E=function(Be,R,ie){return Be[0]=R[0]-ie[0],Be[1]=R[1]-ie[1],Be[2]=R[2]-ie[2],Be};M=new t.A(3),t.A!=Float32Array&&(M[0]=0,M[1]=0,M[2]=0);var m=function(Be){var R=Be[0],ie=Be[1];return R*R+ie*ie};function b(Be){let R=[];if(typeof Be=="string")R.push({id:"default",url:Be});else if(Be&&Be.length>0){let ie=[];for(let{id:xe,url:Te}of Be){let De=`${xe}${Te}`;ie.indexOf(De)===-1&&(ie.push(De),R.push({id:xe,url:Te}))}}return R}function v(Be,R,ie){let xe=Be.split("?");return xe[0]+=`${R}${ie}`,xe.join("?")}(function(){var Be=new t.A(2);t.A!=Float32Array&&(Be[0]=0,Be[1]=0)})();class u{constructor(R,ie,xe,Te){this.context=R,this.format=xe,this.texture=R.gl.createTexture(),this.update(ie,Te)}update(R,ie,xe){let{width:Te,height:De}=R,ut=!(this.size&&this.size[0]===Te&&this.size[1]===De||xe),{context:_t}=this,{gl:Rt}=_t;if(this.useMipmap=!!(ie&&ie.useMipmap),Rt.bindTexture(Rt.TEXTURE_2D,this.texture),_t.pixelStoreUnpackFlipY.set(!1),_t.pixelStoreUnpack.set(1),_t.pixelStoreUnpackPremultiplyAlpha.set(this.format===Rt.RGBA&&(!ie||ie.premultiply!==!1)),ut)this.size=[Te,De],R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Rt.texImage2D(Rt.TEXTURE_2D,0,this.format,this.format,Rt.UNSIGNED_BYTE,R):Rt.texImage2D(Rt.TEXTURE_2D,0,this.format,Te,De,0,this.format,Rt.UNSIGNED_BYTE,R.data);else{let{x:Kt,y:fr}=xe||{x:0,y:0};R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Rt.texSubImage2D(Rt.TEXTURE_2D,0,Kt,fr,Rt.RGBA,Rt.UNSIGNED_BYTE,R):Rt.texSubImage2D(Rt.TEXTURE_2D,0,Kt,fr,Te,De,Rt.RGBA,Rt.UNSIGNED_BYTE,R.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Rt.generateMipmap(Rt.TEXTURE_2D)}bind(R,ie,xe){let{context:Te}=this,{gl:De}=Te;De.bindTexture(De.TEXTURE_2D,this.texture),xe!==De.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(xe=De.LINEAR),R!==this.filter&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,R),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,xe||R),this.filter=R),ie!==this.wrap&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,ie),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,ie),this.wrap=ie)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:R}=this.context;R.deleteTexture(this.texture),this.texture=null}}function y(Be){let{userImage:R}=Be;return!!(R&&R.render&&R.render())&&(Be.data.replace(new Uint8Array(R.data.buffer)),!0)}class f extends t.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(R){if(this.loaded!==R&&(this.loaded=R,R)){for(let{ids:ie,promiseResolve:xe}of this.requestors)xe(this._getImagesForIds(ie));this.requestors=[]}}getImage(R){let ie=this.images[R];if(ie&&!ie.data&&ie.spriteData){let xe=ie.spriteData;ie.data=new t.R({width:xe.width,height:xe.height},xe.context.getImageData(xe.x,xe.y,xe.width,xe.height).data),ie.spriteData=null}return ie}addImage(R,ie){if(this.images[R])throw new Error(`Image id ${R} already exist, use updateImage instead`);this._validate(R,ie)&&(this.images[R]=ie)}_validate(R,ie){let xe=!0,Te=ie.data||ie.spriteData;return this._validateStretch(ie.stretchX,Te&&Te.width)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchX" value`))),xe=!1),this._validateStretch(ie.stretchY,Te&&Te.height)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchY" value`))),xe=!1),this._validateContent(ie.content,ie)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "content" value`))),xe=!1),xe}_validateStretch(R,ie){if(!R)return!0;let xe=0;for(let Te of R){if(Te[0]{let Te=!0;if(!this.isLoaded())for(let De of R)this.images[De]||(Te=!1);this.isLoaded()||Te?ie(this._getImagesForIds(R)):this.requestors.push({ids:R,promiseResolve:ie})})}_getImagesForIds(R){let ie={};for(let xe of R){let Te=this.getImage(xe);Te||(this.fire(new t.k("styleimagemissing",{id:xe})),Te=this.getImage(xe)),Te?ie[xe]={data:Te.data.clone(),pixelRatio:Te.pixelRatio,sdf:Te.sdf,version:Te.version,stretchX:Te.stretchX,stretchY:Te.stretchY,content:Te.content,textFitWidth:Te.textFitWidth,textFitHeight:Te.textFitHeight,hasRenderCallback:!!(Te.userImage&&Te.userImage.render)}:t.w(`Image "${xe}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return ie}getPixelSize(){let{width:R,height:ie}=this.atlasImage;return{width:R,height:ie}}getPattern(R){let ie=this.patterns[R],xe=this.getImage(R);if(!xe)return null;if(ie&&ie.position.version===xe.version)return ie.position;if(ie)ie.position.version=xe.version;else{let Te={w:xe.data.width+2,h:xe.data.height+2,x:0,y:0},De=new t.I(Te,xe);this.patterns[R]={bin:Te,position:De}}return this._updatePatternAtlas(),this.patterns[R].position}bind(R){let ie=R.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new u(R,this.atlasImage,ie.RGBA),this.atlasTexture.bind(ie.LINEAR,ie.CLAMP_TO_EDGE)}_updatePatternAtlas(){let R=[];for(let De in this.patterns)R.push(this.patterns[De].bin);let{w:ie,h:xe}=t.p(R),Te=this.atlasImage;Te.resize({width:ie||1,height:xe||1});for(let De in this.patterns){let{bin:ut}=this.patterns[De],_t=ut.x+1,Rt=ut.y+1,Kt=this.getImage(De).data,fr=Kt.width,dr=Kt.height;t.R.copy(Kt,Te,{x:0,y:0},{x:_t,y:Rt},{width:fr,height:dr}),t.R.copy(Kt,Te,{x:0,y:dr-1},{x:_t,y:Rt-1},{width:fr,height:1}),t.R.copy(Kt,Te,{x:0,y:0},{x:_t,y:Rt+dr},{width:fr,height:1}),t.R.copy(Kt,Te,{x:fr-1,y:0},{x:_t-1,y:Rt},{width:1,height:dr}),t.R.copy(Kt,Te,{x:0,y:0},{x:_t+fr,y:Rt},{width:1,height:dr})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(R){for(let ie of R){if(this.callbackDispatchedThisFrame[ie])continue;this.callbackDispatchedThisFrame[ie]=!0;let xe=this.getImage(ie);xe||t.w(`Image with ID: "${ie}" was not found`),y(xe)&&this.updateImage(ie,xe)}}}let P=1e20;function L(Be,R,ie,xe,Te,De,ut,_t,Rt){for(let Kt=R;Kt-1);Rt++,De[Rt]=_t,ut[Rt]=Kt,ut[Rt+1]=P}for(let _t=0,Rt=0;_t65535)throw new Error("glyphs > 65535 not supported");if(xe.ranges[De])return{stack:R,id:ie,glyph:Te};if(!this.url)throw new Error("glyphsUrl is not set");if(!xe.requests[De]){let _t=F.loadGlyphRange(R,De,this.url,this.requestManager);xe.requests[De]=_t}let ut=yield xe.requests[De];for(let _t in ut)this._doesCharSupportLocalGlyph(+_t)||(xe.glyphs[+_t]=ut[+_t]);return xe.ranges[De]=!0,{stack:R,id:ie,glyph:ut[ie]||null}})}_doesCharSupportLocalGlyph(R){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(R))}_tinySDF(R,ie,xe){let Te=this.localIdeographFontFamily;if(!Te||!this._doesCharSupportLocalGlyph(xe))return;let De=R.tinySDF;if(!De){let _t="400";/bold/i.test(ie)?_t="900":/medium/i.test(ie)?_t="500":/light/i.test(ie)&&(_t="200"),De=R.tinySDF=new F.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:Te,fontWeight:_t})}let ut=De.draw(String.fromCharCode(xe));return{id:xe,bitmap:new t.o({width:ut.width||60,height:ut.height||60},ut.data),metrics:{width:ut.glyphWidth/2||24,height:ut.glyphHeight/2||24,left:ut.glyphLeft/2+.5||0,top:ut.glyphTop/2-27.5||-8,advance:ut.glyphAdvance/2||24,isDoubleResolution:!0}}}}F.loadGlyphRange=function(Be,R,ie,xe){return t._(this,void 0,void 0,function*(){let Te=256*R,De=Te+255,ut=xe.transformRequest(ie.replace("{fontstack}",Be).replace("{range}",`${Te}-${De}`),"Glyphs"),_t=yield t.l(ut,new AbortController);if(!_t||!_t.data)throw new Error(`Could not load glyph range. range: ${R}, ${Te}-${De}`);let Rt={};for(let Kt of t.n(_t.data))Rt[Kt.id]=Kt;return Rt})},F.TinySDF=class{constructor({fontSize:Be=24,buffer:R=3,radius:ie=8,cutoff:xe=.25,fontFamily:Te="sans-serif",fontWeight:De="normal",fontStyle:ut="normal"}={}){this.buffer=R,this.cutoff=xe,this.radius=ie;let _t=this.size=Be+4*R,Rt=this._createCanvas(_t),Kt=this.ctx=Rt.getContext("2d",{willReadFrequently:!0});Kt.font=`${ut} ${De} ${Be}px ${Te}`,Kt.textBaseline="alphabetic",Kt.textAlign="left",Kt.fillStyle="black",this.gridOuter=new Float64Array(_t*_t),this.gridInner=new Float64Array(_t*_t),this.f=new Float64Array(_t),this.z=new Float64Array(_t+1),this.v=new Uint16Array(_t)}_createCanvas(Be){let R=document.createElement("canvas");return R.width=R.height=Be,R}draw(Be){let{width:R,actualBoundingBoxAscent:ie,actualBoundingBoxDescent:xe,actualBoundingBoxLeft:Te,actualBoundingBoxRight:De}=this.ctx.measureText(Be),ut=Math.ceil(ie),_t=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(De-Te))),Rt=Math.min(this.size-this.buffer,ut+Math.ceil(xe)),Kt=_t+2*this.buffer,fr=Rt+2*this.buffer,dr=Math.max(Kt*fr,0),jr=new Uint8ClampedArray(dr),ii={data:jr,width:Kt,height:fr,glyphWidth:_t,glyphHeight:Rt,glyphTop:ut,glyphLeft:0,glyphAdvance:R};if(_t===0||Rt===0)return ii;let{ctx:qe,buffer:Ye,gridInner:nt,gridOuter:ct}=this;qe.clearRect(Ye,Ye,_t,Rt),qe.fillText(Be,Ye,Ye+ut);let Tt=qe.getImageData(Ye,Ye,_t,Rt);ct.fill(P,0,dr),nt.fill(0,0,dr);for(let gt=0;gt0?vr*vr:0,nt[or]=vr<0?vr*vr:0}}L(ct,0,0,Kt,fr,Kt,this.f,this.v,this.z),L(nt,Ye,Ye,_t,Rt,Kt,this.f,this.v,this.z);for(let gt=0;gt1&&(Rt=R[++_t]);let fr=Math.abs(Kt-Rt.left),dr=Math.abs(Kt-Rt.right),jr=Math.min(fr,dr),ii,qe=De/xe*(Te+1);if(Rt.isDash){let Ye=Te-Math.abs(qe);ii=Math.sqrt(jr*jr+Ye*Ye)}else ii=Te-Math.sqrt(jr*jr+qe*qe);this.data[ut+Kt]=Math.max(0,Math.min(255,ii+128))}}}addRegularDash(R){for(let _t=R.length-1;_t>=0;--_t){let Rt=R[_t],Kt=R[_t+1];Rt.zeroLength?R.splice(_t,1):Kt&&Kt.isDash===Rt.isDash&&(Kt.left=Rt.left,R.splice(_t,1))}let ie=R[0],xe=R[R.length-1];ie.isDash===xe.isDash&&(ie.left=xe.left-this.width,xe.right=ie.right+this.width);let Te=this.width*this.nextRow,De=0,ut=R[De];for(let _t=0;_t1&&(ut=R[++De]);let Rt=Math.abs(_t-ut.left),Kt=Math.abs(_t-ut.right),fr=Math.min(Rt,Kt);this.data[Te+_t]=Math.max(0,Math.min(255,(ut.isDash?fr:-fr)+128))}}addDash(R,ie){let xe=ie?7:0,Te=2*xe+1;if(this.nextRow+Te>this.height)return t.w("LineAtlas out of space"),null;let De=0;for(let _t=0;_t{ie.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[Q]}numActive(){return Object.keys(this.active).length}}let se=Math.floor(n.hardwareConcurrency/2),fe,G;function J(){return fe||(fe=new le),fe}le.workerCount=t.C(globalThis)?Math.max(Math.min(se,3),1):1;class ${constructor(R,ie){this.workerPool=R,this.actors=[],this.currentActor=0,this.id=ie;let xe=this.workerPool.acquire(ie);for(let Te=0;Te{ie.remove()}),this.actors=[],R&&this.workerPool.release(this.id)}registerMessageHandler(R,ie){for(let xe of this.actors)xe.registerMessageHandler(R,ie)}}function X(){return G||(G=new $(J(),t.G),G.registerMessageHandler("GR",(Be,R,ie)=>t.m(R,ie))),G}function re(Be,R){let ie=t.H();return t.J(ie,ie,[1,1,0]),t.K(ie,ie,[.5*Be.width,.5*Be.height,1]),t.L(ie,ie,Be.calculatePosMatrix(R.toUnwrapped()))}function ae(Be,R,ie,xe,Te,De){let ut=function(dr,jr,ii){if(dr)for(let qe of dr){let Ye=jr[qe];if(Ye&&Ye.source===ii&&Ye.type==="fill-extrusion")return!0}else for(let qe in jr){let Ye=jr[qe];if(Ye.source===ii&&Ye.type==="fill-extrusion")return!0}return!1}(Te&&Te.layers,R,Be.id),_t=De.maxPitchScaleFactor(),Rt=Be.tilesIn(xe,_t,ut);Rt.sort(j);let Kt=[];for(let dr of Rt)Kt.push({wrappedTileID:dr.tileID.wrapped().key,queryResults:dr.tile.queryRenderedFeatures(R,ie,Be._state,dr.queryGeometry,dr.cameraQueryGeometry,dr.scale,Te,De,_t,re(Be.transform,dr.tileID))});let fr=function(dr){let jr={},ii={};for(let qe of dr){let Ye=qe.queryResults,nt=qe.wrappedTileID,ct=ii[nt]=ii[nt]||{};for(let Tt in Ye){let gt=Ye[Tt],Lt=ct[Tt]=ct[Tt]||{},tr=jr[Tt]=jr[Tt]||[];for(let or of gt)Lt[or.featureIndex]||(Lt[or.featureIndex]=!0,tr.push(or))}}return jr}(Kt);for(let dr in fr)fr[dr].forEach(jr=>{let ii=jr.feature,qe=Be.getFeatureState(ii.layer["source-layer"],ii.id);ii.source=ii.layer.source,ii.layer["source-layer"]&&(ii.sourceLayer=ii.layer["source-layer"]),ii.state=qe});return fr}function j(Be,R){let ie=Be.tileID,xe=R.tileID;return ie.overscaledZ-xe.overscaledZ||ie.canonical.y-xe.canonical.y||ie.wrap-xe.wrap||ie.canonical.x-xe.canonical.x}function ee(Be,R,ie){return t._(this,void 0,void 0,function*(){let xe=Be;if(Be.url?xe=(yield t.h(R.transformRequest(Be.url,"Source"),ie)).data:yield n.frameAsync(ie),!xe)return null;let Te=t.M(t.e(xe,Be),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in xe&&xe.vector_layers&&(Te.vectorLayerIds=xe.vector_layers.map(De=>De.id)),Te})}class ne{constructor(R,ie){R&&(ie?this.setSouthWest(R).setNorthEast(ie):Array.isArray(R)&&(R.length===4?this.setSouthWest([R[0],R[1]]).setNorthEast([R[2],R[3]]):this.setSouthWest(R[0]).setNorthEast(R[1])))}setNorthEast(R){return this._ne=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}setSouthWest(R){return this._sw=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}extend(R){let ie=this._sw,xe=this._ne,Te,De;if(R instanceof t.N)Te=R,De=R;else{if(!(R instanceof ne))return Array.isArray(R)?R.length===4||R.every(Array.isArray)?this.extend(ne.convert(R)):this.extend(t.N.convert(R)):R&&("lng"in R||"lon"in R)&&"lat"in R?this.extend(t.N.convert(R)):this;if(Te=R._sw,De=R._ne,!Te||!De)return this}return ie||xe?(ie.lng=Math.min(Te.lng,ie.lng),ie.lat=Math.min(Te.lat,ie.lat),xe.lng=Math.max(De.lng,xe.lng),xe.lat=Math.max(De.lat,xe.lat)):(this._sw=new t.N(Te.lng,Te.lat),this._ne=new t.N(De.lng,De.lat)),this}getCenter(){return new t.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new t.N(this.getWest(),this.getNorth())}getSouthEast(){return new t.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(R){let{lng:ie,lat:xe}=t.N.convert(R),Te=this._sw.lng<=ie&&ie<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Te=this._sw.lng>=ie&&ie>=this._ne.lng),this._sw.lat<=xe&&xe<=this._ne.lat&&Te}static convert(R){return R instanceof ne?R:R&&new ne(R)}static fromLngLat(R,ie=0){let xe=360*ie/40075017,Te=xe/Math.cos(Math.PI/180*R.lat);return new ne(new t.N(R.lng-Te,R.lat-xe),new t.N(R.lng+Te,R.lat+xe))}adjustAntiMeridian(){let R=new t.N(this._sw.lng,this._sw.lat),ie=new t.N(this._ne.lng,this._ne.lat);return new ne(R,R.lng>ie.lng?new t.N(ie.lng+360,ie.lat):ie)}}class ce{constructor(R,ie,xe){this.bounds=ne.convert(this.validateBounds(R)),this.minzoom=ie||0,this.maxzoom=xe||24}validateBounds(R){return Array.isArray(R)&&R.length===4?[Math.max(-180,R[0]),Math.max(-90,R[1]),Math.min(180,R[2]),Math.min(90,R[3])]:[-180,-90,180,90]}contains(R){let ie=Math.pow(2,R.z),xe=Math.floor(t.O(this.bounds.getWest())*ie),Te=Math.floor(t.Q(this.bounds.getNorth())*ie),De=Math.ceil(t.O(this.bounds.getEast())*ie),ut=Math.ceil(t.Q(this.bounds.getSouth())*ie);return R.x>=xe&&R.x=Te&&R.y{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return t.e({},this._options)}loadTile(R){return t._(this,void 0,void 0,function*(){let ie=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),xe={request:this.map._requestManager.transformRequest(ie,"Tile"),uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,tileSize:this.tileSize*R.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};xe.request.collectResourceTiming=this._collectResourceTiming;let Te="RT";if(R.actor&&R.state!=="expired"){if(R.state==="loading")return new Promise((De,ut)=>{R.reloadPromise={resolve:De,reject:ut}})}else R.actor=this.dispatcher.getActor(),Te="LT";R.abortController=new AbortController;try{let De=yield R.actor.sendAsync({type:Te,data:xe},R.abortController);if(delete R.abortController,R.aborted)return;this._afterTileLoadWorkerResponse(R,De)}catch(De){if(delete R.abortController,R.aborted)return;if(De&&De.status!==404)throw De;this._afterTileLoadWorkerResponse(R,null)}})}_afterTileLoadWorkerResponse(R,ie){if(ie&&ie.resourceTiming&&(R.resourceTiming=ie.resourceTiming),ie&&this.map._refreshExpiredTiles&&R.setExpiryData(ie),R.loadVectorData(ie,this.map.painter),R.reloadPromise){let xe=R.reloadPromise;R.reloadPromise=null,this.loadTile(R).then(xe.resolve).catch(xe.reject)}}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.actor&&(yield R.actor.sendAsync({type:"AT",data:{uid:R.uid,type:this.type,source:this.id}}))})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),R.actor&&(yield R.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class we extends t.E{constructor(R,ie,xe,Te){super(),this.id=R,this.dispatcher=xe,this.setEventedParent(Te),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.e({type:"raster"},ie),t.e(this,t.M(ie,["url","scheme","tileSize"]))}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,R&&(t.e(this,R),R.bounds&&(this.tileBounds=new ce(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}onAdd(R){this.map=R,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(R){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}serialize(){return t.e({},this._options)}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}loadTile(R){return t._(this,void 0,void 0,function*(){let ie=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);R.abortController=new AbortController;try{let xe=yield l.getImage(this.map._requestManager.transformRequest(ie,"Tile"),R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(xe&&xe.data){this.map._refreshExpiredTiles&&xe.cacheControl&&xe.expires&&R.setExpiryData({cacheControl:xe.cacheControl,expires:xe.expires});let Te=this.map.painter.context,De=Te.gl,ut=xe.data;R.texture=this.map.painter.getTileTexture(ut.width),R.texture?R.texture.update(ut,{useMipmap:!0}):(R.texture=new u(Te,ut,De.RGBA,{useMipmap:!0}),R.texture.bind(De.LINEAR,De.CLAMP_TO_EDGE,De.LINEAR_MIPMAP_NEAREST)),R.state="loaded"}}catch(xe){if(delete R.abortController,R.aborted)R.state="unloaded";else if(xe)throw R.state="errored",xe}})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController)})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.texture&&this.map.painter.saveTileTexture(R.texture)})}hasTransition(){return!1}}class Oe extends we{constructor(R,ie,xe,Te){super(R,ie,xe,Te),this.type="raster-dem",this.maxzoom=22,this._options=t.e({type:"raster-dem"},ie),this.encoding=ie.encoding||"mapbox",this.redFactor=ie.redFactor,this.greenFactor=ie.greenFactor,this.blueFactor=ie.blueFactor,this.baseShift=ie.baseShift}loadTile(R){return t._(this,void 0,void 0,function*(){let ie=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),xe=this.map._requestManager.transformRequest(ie,"Tile");R.neighboringTiles=this._getNeighboringTiles(R.tileID),R.abortController=new AbortController;try{let Te=yield l.getImage(xe,R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(Te&&Te.data){let De=Te.data;this.map._refreshExpiredTiles&&Te.cacheControl&&Te.expires&&R.setExpiryData({cacheControl:Te.cacheControl,expires:Te.expires});let ut=t.b(De)&&t.U()?De:yield this.readImageNow(De),_t={type:this.type,uid:R.uid,source:this.id,rawImageData:ut,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!R.actor||R.state==="expired"){R.actor=this.dispatcher.getActor();let Rt=yield R.actor.sendAsync({type:"LDT",data:_t});R.dem=Rt,R.needsHillshadePrepare=!0,R.needsTerrainPrepare=!0,R.state="loaded"}}}catch(Te){if(delete R.abortController,R.aborted)R.state="unloaded";else if(Te)throw R.state="errored",Te}})}readImageNow(R){return t._(this,void 0,void 0,function*(){if(typeof VideoFrame<"u"&&t.V()){let ie=R.width+2,xe=R.height+2;try{return new t.R({width:ie,height:xe},yield t.W(R,-1,-1,ie,xe))}catch{}}return n.getImageData(R,1)})}_getNeighboringTiles(R){let ie=R.canonical,xe=Math.pow(2,ie.z),Te=(ie.x-1+xe)%xe,De=ie.x===0?R.wrap-1:R.wrap,ut=(ie.x+1+xe)%xe,_t=ie.x+1===xe?R.wrap+1:R.wrap,Rt={};return Rt[new t.S(R.overscaledZ,De,ie.z,Te,ie.y).key]={backfilled:!1},Rt[new t.S(R.overscaledZ,_t,ie.z,ut,ie.y).key]={backfilled:!1},ie.y>0&&(Rt[new t.S(R.overscaledZ,De,ie.z,Te,ie.y-1).key]={backfilled:!1},Rt[new t.S(R.overscaledZ,R.wrap,ie.z,ie.x,ie.y-1).key]={backfilled:!1},Rt[new t.S(R.overscaledZ,_t,ie.z,ut,ie.y-1).key]={backfilled:!1}),ie.y+10&&t.e(De,{resourceTiming:Te}),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"metadata"}))),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"content"})))}catch(xe){if(this._pendingLoads--,this._removed)return void this.fire(new t.k("dataabort",{dataType:"source"}));this.fire(new t.j(xe))}})}loaded(){return this._pendingLoads===0}loadTile(R){return t._(this,void 0,void 0,function*(){let ie=R.actor?"RT":"LT";R.actor=this.actor;let xe={type:this.type,uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};R.abortController=new AbortController;let Te=yield this.actor.sendAsync({type:ie,data:xe},R.abortController);delete R.abortController,R.unloadVectorData(),R.aborted||R.loadVectorData(Te,this.map.painter,ie==="RT")})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.aborted=!0})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return t.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Xe=t.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class tt extends t.E{constructor(R,ie,xe,Te){super(),this.id=R,this.dispatcher=xe,this.coordinates=ie.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Te),this.options=ie}load(R){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let ie=yield l.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,ie&&ie.data&&(this.image=ie.data,R&&(this.coordinates=R),this._finishLoading())}catch(ie){this._request=null,this._loaded=!0,this.fire(new t.j(ie))}})}loaded(){return this._loaded}updateImage(R){return R.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=R.url,this.load(R.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(R){this.map=R,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(R){this.coordinates=R;let ie=R.map(t.Z.fromLngLat);this.tileID=function(Te){let De=1/0,ut=1/0,_t=-1/0,Rt=-1/0;for(let jr of Te)De=Math.min(De,jr.x),ut=Math.min(ut,jr.y),_t=Math.max(_t,jr.x),Rt=Math.max(Rt,jr.y);let Kt=Math.max(_t-De,Rt-ut),fr=Math.max(0,Math.floor(-Math.log(Kt)/Math.LN2)),dr=Math.pow(2,fr);return new t.a1(fr,Math.floor((De+_t)/2*dr),Math.floor((ut+Rt)/2*dr))}(ie),this.minzoom=this.maxzoom=this.tileID.z;let xe=ie.map(Te=>this.tileID.getTilePoint(Te)._round());return this._boundsArray=new t.$,this._boundsArray.emplaceBack(xe[0].x,xe[0].y,0,0),this._boundsArray.emplaceBack(xe[1].x,xe[1].y,t.X,0),this._boundsArray.emplaceBack(xe[3].x,xe[3].y,0,t.X),this._boundsArray.emplaceBack(xe[2].x,xe[2].y,t.X,t.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let R=this.map.painter.context,ie=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Xe.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new u(R,this.image,ie.RGBA),this.texture.bind(ie.LINEAR,ie.CLAMP_TO_EDGE));let xe=!1;for(let Te in this.tiles){let De=this.tiles[Te];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,xe=!0)}xe&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(R){return t._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(R.tileID.canonical)?(this.tiles[String(R.tileID.wrap)]=R,R.buckets={}):R.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class rt extends tt{constructor(R,ie,xe,Te){super(R,ie,xe,Te),this.roundZoom=!0,this.type="video",this.options=ie}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1;let R=this.options;this.urls=[];for(let ie of R.urls)this.urls.push(this.map._requestManager.transformRequest(ie,"Source").url);try{let ie=yield t.a3(this.urls);if(this._loaded=!0,!ie)return;this.video=ie,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(ie){this.fire(new t.j(ie))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(R){if(this.video){let ie=this.video.seekable;Rie.end(0)?this.fire(new t.j(new t.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${ie.start(0)} and ${ie.end(0)}-second mark.`))):this.video.currentTime=R}}getVideo(){return this.video}onAdd(R){this.map||(this.map=R,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let R=this.map.painter.context,ie=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Xe.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ie.LINEAR,ie.CLAMP_TO_EDGE),ie.texSubImage2D(ie.TEXTURE_2D,0,0,0,ie.RGBA,ie.UNSIGNED_BYTE,this.video)):(this.texture=new u(R,this.video,ie.RGBA),this.texture.bind(ie.LINEAR,ie.CLAMP_TO_EDGE));let xe=!1;for(let Te in this.tiles){let De=this.tiles[Te];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,xe=!0)}xe&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class Je extends tt{constructor(R,ie,xe,Te){super(R,ie,xe,Te),ie.coordinates?Array.isArray(ie.coordinates)&&ie.coordinates.length===4&&!ie.coordinates.some(De=>!Array.isArray(De)||De.length!==2||De.some(ut=>typeof ut!="number"))||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "coordinates"'))),ie.animate&&typeof ie.animate!="boolean"&&this.fire(new t.j(new t.a2(`sources.${R}`,null,'optional "animate" property must be a boolean value'))),ie.canvas?typeof ie.canvas=="string"||ie.canvas instanceof HTMLCanvasElement||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "canvas"'))),this.options=ie,this.animate=ie.animate===void 0||ie.animate}load(){return t._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(R){this.map=R,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let R=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,R=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,R=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let ie=this.map.painter.context,xe=ie.gl;this.boundsBuffer||(this.boundsBuffer=ie.createVertexBuffer(this._boundsArray,Xe.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?(R||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new u(ie,this.canvas,xe.RGBA,{premultiply:!0});let Te=!1;for(let De in this.tiles){let ut=this.tiles[De];ut.state!=="loaded"&&(ut.state="loaded",ut.texture=this.texture,Te=!0)}Te&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let R of[this.canvas.width,this.canvas.height])if(isNaN(R)||R<=0)return!0;return!1}}let ot={},Me=Be=>{switch(Be){case"geojson":return Ie;case"image":return tt;case"raster":return we;case"raster-dem":return Oe;case"vector":return _e;case"video":return rt;case"canvas":return Je}return ot[Be]},pe="RTLPluginLoaded";class ue extends t.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=X()}_syncState(R){return this.status=R,this.dispatcher.broadcast("SRPS",{pluginStatus:R,pluginURL:this.url}).catch(ie=>{throw this.status="error",ie})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(R){return t._(this,arguments,void 0,function*(ie,xe=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=n.resolveURL(ie),!this.url)throw new Error(`requested url ${ie} is invalid`);if(this.status==="unavailable"){if(!xe)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return t._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new t.k(pe))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ze=null;function Qe(){return ze||(ze=new ue),ze}class it{constructor(R,ie){this.timeAdded=0,this.fadeEndTime=0,this.tileID=R,this.uid=t.a4(),this.uses=0,this.tileSize=ie,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(R){let ie=R+this.timeAdded;ieDe.getLayer(Kt)).filter(Boolean);if(Rt.length!==0){_t.layers=Rt,_t.stateDependentLayerIds&&(_t.stateDependentLayers=_t.stateDependentLayerIds.map(Kt=>Rt.filter(fr=>fr.id===Kt)[0]));for(let Kt of Rt)ut[Kt.id]=_t}}return ut}(R.buckets,ie.style),this.hasSymbolBuckets=!1;for(let Te in this.buckets){let De=this.buckets[Te];if(De instanceof t.a6){if(this.hasSymbolBuckets=!0,!xe)break;De.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let Te in this.buckets){let De=this.buckets[Te];if(De instanceof t.a6&&De.hasRTLText){this.hasRTLText=!0,Qe().lazyLoad();break}}this.queryPadding=0;for(let Te in this.buckets){let De=this.buckets[Te];this.queryPadding=Math.max(this.queryPadding,ie.style.getLayer(Te).queryRadius(De))}R.imageAtlas&&(this.imageAtlas=R.imageAtlas),R.glyphAtlasImage&&(this.glyphAtlasImage=R.glyphAtlasImage)}else this.collisionBoxArray=new t.a5}unloadVectorData(){for(let R in this.buckets)this.buckets[R].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(R){return this.buckets[R.id]}upload(R){for(let xe in this.buckets){let Te=this.buckets[xe];Te.uploadPending()&&Te.upload(R)}let ie=R.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new u(R,this.imageAtlas.image,ie.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new u(R,this.glyphAtlasImage,ie.ALPHA),this.glyphAtlasImage=null)}prepare(R){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(R,this.imageAtlasTexture)}queryRenderedFeatures(R,ie,xe,Te,De,ut,_t,Rt,Kt,fr){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:Te,cameraQueryGeometry:De,scale:ut,tileSize:this.tileSize,pixelPosMatrix:fr,transform:Rt,params:_t,queryPadding:this.queryPadding*Kt},R,ie,xe):{}}querySourceFeatures(R,ie){let xe=this.latestFeatureIndex;if(!xe||!xe.rawTileData)return;let Te=xe.loadVTLayers(),De=ie&&ie.sourceLayer?ie.sourceLayer:"",ut=Te._geojsonTileLayer||Te[De];if(!ut)return;let _t=t.a7(ie&&ie.filter),{z:Rt,x:Kt,y:fr}=this.tileID.canonical,dr={z:Rt,x:Kt,y:fr};for(let jr=0;jrxe)Te=!1;else if(ie)if(this.expirationTime{this.remove(R,De)},xe)),this.data[Te].push(De),this.order.push(Te),this.order.length>this.max){let ut=this._getAndRemoveByKey(this.order[0]);ut&&this.onRemove(ut)}return this}has(R){return R.wrapped().key in this.data}getAndRemove(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null}_getAndRemoveByKey(R){let ie=this.data[R].shift();return ie.timeout&&clearTimeout(ie.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),ie.value}getByKey(R){let ie=this.data[R];return ie?ie[0].value:null}get(R){return this.has(R)?this.data[R.wrapped().key][0].value:null}remove(R,ie){if(!this.has(R))return this;let xe=R.wrapped().key,Te=ie===void 0?0:this.data[xe].indexOf(ie),De=this.data[xe][Te];return this.data[xe].splice(Te,1),De.timeout&&clearTimeout(De.timeout),this.data[xe].length===0&&delete this.data[xe],this.onRemove(De.value),this.order.splice(this.order.indexOf(xe),1),this}setMaxSize(R){for(this.max=R;this.order.length>this.max;){let ie=this._getAndRemoveByKey(this.order[0]);ie&&this.onRemove(ie)}return this}filter(R){let ie=[];for(let xe in this.data)for(let Te of this.data[xe])R(Te.value)||ie.push(Te);for(let xe of ie)this.remove(xe.value.tileID,xe)}}class kt{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(R,ie,xe){let Te=String(ie);if(this.stateChanges[R]=this.stateChanges[R]||{},this.stateChanges[R][Te]=this.stateChanges[R][Te]||{},t.e(this.stateChanges[R][Te],xe),this.deletedStates[R]===null){this.deletedStates[R]={};for(let De in this.state[R])De!==Te&&(this.deletedStates[R][De]=null)}else if(this.deletedStates[R]&&this.deletedStates[R][Te]===null){this.deletedStates[R][Te]={};for(let De in this.state[R][Te])xe[De]||(this.deletedStates[R][Te][De]=null)}else for(let De in xe)this.deletedStates[R]&&this.deletedStates[R][Te]&&this.deletedStates[R][Te][De]===null&&delete this.deletedStates[R][Te][De]}removeFeatureState(R,ie,xe){if(this.deletedStates[R]===null)return;let Te=String(ie);if(this.deletedStates[R]=this.deletedStates[R]||{},xe&&ie!==void 0)this.deletedStates[R][Te]!==null&&(this.deletedStates[R][Te]=this.deletedStates[R][Te]||{},this.deletedStates[R][Te][xe]=null);else if(ie!==void 0)if(this.stateChanges[R]&&this.stateChanges[R][Te])for(xe in this.deletedStates[R][Te]={},this.stateChanges[R][Te])this.deletedStates[R][Te][xe]=null;else this.deletedStates[R][Te]=null;else this.deletedStates[R]=null}getState(R,ie){let xe=String(ie),Te=t.e({},(this.state[R]||{})[xe],(this.stateChanges[R]||{})[xe]);if(this.deletedStates[R]===null)return{};if(this.deletedStates[R]){let De=this.deletedStates[R][ie];if(De===null)return{};for(let ut in De)delete Te[ut]}return Te}initializeTileState(R,ie){R.setFeatureState(this.state,ie)}coalesceChanges(R,ie){let xe={};for(let Te in this.stateChanges){this.state[Te]=this.state[Te]||{};let De={};for(let ut in this.stateChanges[Te])this.state[Te][ut]||(this.state[Te][ut]={}),t.e(this.state[Te][ut],this.stateChanges[Te][ut]),De[ut]=this.state[Te][ut];xe[Te]=De}for(let Te in this.deletedStates){this.state[Te]=this.state[Te]||{};let De={};if(this.deletedStates[Te]===null)for(let ut in this.state[Te])De[ut]={},this.state[Te][ut]={};else for(let ut in this.deletedStates[Te]){if(this.deletedStates[Te][ut]===null)this.state[Te][ut]={};else for(let _t of Object.keys(this.deletedStates[Te][ut]))delete this.state[Te][ut][_t];De[ut]=this.state[Te][ut]}xe[Te]=xe[Te]||{},t.e(xe[Te],De)}if(this.stateChanges={},this.deletedStates={},Object.keys(xe).length!==0)for(let Te in R)R[Te].setFeatureState(xe,ie)}}class Mt extends t.E{constructor(R,ie,xe){super(),this.id=R,this.dispatcher=xe,this.on("data",Te=>this._dataHandler(Te)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((Te,De,ut,_t)=>{let Rt=new(Me(De.type))(Te,De,ut,_t);if(Rt.id!==Te)throw new Error(`Expected Source id to be ${Te} instead of ${Rt.id}`);return Rt})(R,ie,xe,this),this._tiles={},this._cache=new $e(0,Te=>this._unloadTile(Te)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new kt,this._didEmitContent=!1,this._updated=!1}onAdd(R){this.map=R,this._maxTileCacheSize=R?R._maxTileCacheSize:null,this._maxTileCacheZoomLevels=R?R._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(R)}onRemove(R){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(R)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let R in this._tiles){let ie=this._tiles[R];if(ie.state!=="loaded"&&ie.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let R=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,R&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(R,ie,xe){return t._(this,void 0,void 0,function*(){try{yield this._source.loadTile(R),this._tileLoaded(R,ie,xe)}catch(Te){R.state="errored",Te.status!==404?this._source.fire(new t.j(Te,{tile:R})):this.update(this.transform,this.terrain)}})}_unloadTile(R){this._source.unloadTile&&this._source.unloadTile(R)}_abortTile(R){this._source.abortTile&&this._source.abortTile(R),this._source.fire(new t.k("dataabort",{tile:R,coord:R.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(R){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let ie in this._tiles){let xe=this._tiles[ie];xe.upload(R),xe.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(R=>R.tileID).sort(Bt).map(R=>R.key)}getRenderableIds(R){let ie=[];for(let xe in this._tiles)this._isIdRenderable(xe,R)&&ie.push(this._tiles[xe]);return R?ie.sort((xe,Te)=>{let De=xe.tileID,ut=Te.tileID,_t=new t.P(De.canonical.x,De.canonical.y)._rotate(this.transform.angle),Rt=new t.P(ut.canonical.x,ut.canonical.y)._rotate(this.transform.angle);return De.overscaledZ-ut.overscaledZ||Rt.y-_t.y||Rt.x-_t.x}).map(xe=>xe.tileID.key):ie.map(xe=>xe.tileID).sort(Bt).map(xe=>xe.key)}hasRenderableParent(R){let ie=this.findLoadedParent(R,0);return!!ie&&this._isIdRenderable(ie.tileID.key)}_isIdRenderable(R,ie){return this._tiles[R]&&this._tiles[R].hasData()&&!this._coveredTiles[R]&&(ie||!this._tiles[R].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let R in this._tiles)this._tiles[R].state!=="errored"&&this._reloadTile(R,"reloading")}}_reloadTile(R,ie){return t._(this,void 0,void 0,function*(){let xe=this._tiles[R];xe&&(xe.state!=="loading"&&(xe.state=ie),yield this._loadTile(xe,R,ie))})}_tileLoaded(R,ie,xe){R.timeAdded=n.now(),xe==="expired"&&(R.refreshedUponExpiration=!0),this._setTileReloadTimer(ie,R),this.getSource().type==="raster-dem"&&R.dem&&this._backfillDEM(R),this._state.initializeTileState(R,this.map?this.map.painter:null),R.aborted||this._source.fire(new t.k("data",{dataType:"source",tile:R,coord:R.tileID}))}_backfillDEM(R){let ie=this.getRenderableIds();for(let Te=0;Te1||(Math.abs(ut)>1&&(Math.abs(ut+Rt)===1?ut+=Rt:Math.abs(ut-Rt)===1&&(ut-=Rt)),De.dem&&Te.dem&&(Te.dem.backfillBorder(De.dem,ut,_t),Te.neighboringTiles&&Te.neighboringTiles[Kt]&&(Te.neighboringTiles[Kt].backfilled=!0)))}}getTile(R){return this.getTileByID(R.key)}getTileByID(R){return this._tiles[R]}_retainLoadedChildren(R,ie,xe,Te){for(let De in this._tiles){let ut=this._tiles[De];if(Te[De]||!ut.hasData()||ut.tileID.overscaledZ<=ie||ut.tileID.overscaledZ>xe)continue;let _t=ut.tileID;for(;ut&&ut.tileID.overscaledZ>ie+1;){let Kt=ut.tileID.scaledTo(ut.tileID.overscaledZ-1);ut=this._tiles[Kt.key],ut&&ut.hasData()&&(_t=Kt)}let Rt=_t;for(;Rt.overscaledZ>ie;)if(Rt=Rt.scaledTo(Rt.overscaledZ-1),R[Rt.key]){Te[_t.key]=_t;break}}}findLoadedParent(R,ie){if(R.key in this._loadedParentTiles){let xe=this._loadedParentTiles[R.key];return xe&&xe.tileID.overscaledZ>=ie?xe:null}for(let xe=R.overscaledZ-1;xe>=ie;xe--){let Te=R.scaledTo(xe),De=this._getLoadedTile(Te);if(De)return De}}findLoadedSibling(R){return this._getLoadedTile(R)}_getLoadedTile(R){let ie=this._tiles[R.key];return ie&&ie.hasData()?ie:this._cache.getByKey(R.wrapped().key)}updateCacheSize(R){let ie=Math.ceil(R.width/this._source.tileSize)+1,xe=Math.ceil(R.height/this._source.tileSize)+1,Te=Math.floor(ie*xe*(this._maxTileCacheZoomLevels===null?t.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),De=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Te):Te;this._cache.setMaxSize(De)}handleWrapJump(R){let ie=Math.round((R-(this._prevLng===void 0?R:this._prevLng))/360);if(this._prevLng=R,ie){let xe={};for(let Te in this._tiles){let De=this._tiles[Te];De.tileID=De.tileID.unwrapTo(De.tileID.wrap+ie),xe[De.tileID.key]=De}this._tiles=xe;for(let Te in this._timers)clearTimeout(this._timers[Te]),delete this._timers[Te];for(let Te in this._tiles)this._setTileReloadTimer(Te,this._tiles[Te])}}_updateCoveredAndRetainedTiles(R,ie,xe,Te,De,ut){let _t={},Rt={},Kt=Object.keys(R),fr=n.now();for(let dr of Kt){let jr=R[dr],ii=this._tiles[dr];if(!ii||ii.fadeEndTime!==0&&ii.fadeEndTime<=fr)continue;let qe=this.findLoadedParent(jr,ie),Ye=this.findLoadedSibling(jr),nt=qe||Ye||null;nt&&(this._addTile(nt.tileID),_t[nt.tileID.key]=nt.tileID),Rt[dr]=jr}this._retainLoadedChildren(Rt,Te,xe,R);for(let dr in _t)R[dr]||(this._coveredTiles[dr]=!0,R[dr]=_t[dr]);if(ut){let dr={},jr={};for(let ii of De)this._tiles[ii.key].hasData()?dr[ii.key]=ii:jr[ii.key]=ii;for(let ii in jr){let qe=jr[ii].children(this._source.maxzoom);this._tiles[qe[0].key]&&this._tiles[qe[1].key]&&this._tiles[qe[2].key]&&this._tiles[qe[3].key]&&(dr[qe[0].key]=R[qe[0].key]=qe[0],dr[qe[1].key]=R[qe[1].key]=qe[1],dr[qe[2].key]=R[qe[2].key]=qe[2],dr[qe[3].key]=R[qe[3].key]=qe[3],delete jr[ii])}for(let ii in jr){let qe=jr[ii],Ye=this.findLoadedParent(qe,this._source.minzoom),nt=this.findLoadedSibling(qe),ct=Ye||nt||null;if(ct){dr[ct.tileID.key]=R[ct.tileID.key]=ct.tileID;for(let Tt in dr)dr[Tt].isChildOf(ct.tileID)&&delete dr[Tt]}}for(let ii in this._tiles)dr[ii]||(this._coveredTiles[ii]=!0)}}update(R,ie){if(!this._sourceLoaded||this._paused)return;let xe;this.transform=R,this.terrain=ie,this.updateCacheSize(R),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?xe=R.getVisibleUnwrappedCoordinates(this._source.tileID).map(fr=>new t.S(fr.canonical.z,fr.wrap,fr.canonical.z,fr.canonical.x,fr.canonical.y)):(xe=R.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:ie}),this._source.hasTile&&(xe=xe.filter(fr=>this._source.hasTile(fr)))):xe=[];let Te=R.coveringZoomLevel(this._source),De=Math.max(Te-Mt.maxOverzooming,this._source.minzoom),ut=Math.max(Te+Mt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let fr={};for(let dr of xe)if(dr.canonical.z>this._source.minzoom){let jr=dr.scaledTo(dr.canonical.z-1);fr[jr.key]=jr;let ii=dr.scaledTo(Math.max(this._source.minzoom,Math.min(dr.canonical.z,5)));fr[ii.key]=ii}xe=xe.concat(Object.values(fr))}let _t=xe.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,_t&&this.fire(new t.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let Rt=this._updateRetainedTiles(xe,Te);jt(this._source.type)&&this._updateCoveredAndRetainedTiles(Rt,De,ut,Te,xe,ie);for(let fr in Rt)this._tiles[fr].clearFadeHold();let Kt=t.ab(this._tiles,Rt);for(let fr of Kt){let dr=this._tiles[fr];dr.hasSymbolBuckets&&!dr.holdingForFade()?dr.setHoldDuration(this.map._fadeDuration):dr.hasSymbolBuckets&&!dr.symbolFadeFinished()||this._removeTile(fr)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let R in this._tiles)this._tiles[R].holdingForFade()&&this._removeTile(R)}_updateRetainedTiles(R,ie){var xe;let Te={},De={},ut=Math.max(ie-Mt.maxOverzooming,this._source.minzoom),_t=Math.max(ie+Mt.maxUnderzooming,this._source.minzoom),Rt={};for(let Kt of R){let fr=this._addTile(Kt);Te[Kt.key]=Kt,fr.hasData()||iethis._source.maxzoom){let jr=Kt.children(this._source.maxzoom)[0],ii=this.getTile(jr);if(ii&&ii.hasData()){Te[jr.key]=jr;continue}}else{let jr=Kt.children(this._source.maxzoom);if(Te[jr[0].key]&&Te[jr[1].key]&&Te[jr[2].key]&&Te[jr[3].key])continue}let dr=fr.wasRequested();for(let jr=Kt.overscaledZ-1;jr>=ut;--jr){let ii=Kt.scaledTo(jr);if(De[ii.key])break;if(De[ii.key]=!0,fr=this.getTile(ii),!fr&&dr&&(fr=this._addTile(ii)),fr){let qe=fr.hasData();if((qe||!(!((xe=this.map)===null||xe===void 0)&&xe.cancelPendingTileRequestsWhileZooming)||dr)&&(Te[ii.key]=ii),dr=fr.wasRequested(),qe)break}}}return Te}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let R in this._tiles){let ie=[],xe,Te=this._tiles[R].tileID;for(;Te.overscaledZ>0;){if(Te.key in this._loadedParentTiles){xe=this._loadedParentTiles[Te.key];break}ie.push(Te.key);let De=Te.scaledTo(Te.overscaledZ-1);if(xe=this._getLoadedTile(De),xe)break;Te=De}for(let De of ie)this._loadedParentTiles[De]=xe}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let R in this._tiles){let ie=this._tiles[R].tileID,xe=this._getLoadedTile(ie);this._loadedSiblingTiles[ie.key]=xe}}_addTile(R){let ie=this._tiles[R.key];if(ie)return ie;ie=this._cache.getAndRemove(R),ie&&(this._setTileReloadTimer(R.key,ie),ie.tileID=R,this._state.initializeTileState(ie,this.map?this.map.painter:null),this._cacheTimers[R.key]&&(clearTimeout(this._cacheTimers[R.key]),delete this._cacheTimers[R.key],this._setTileReloadTimer(R.key,ie)));let xe=ie;return ie||(ie=new it(R,this._source.tileSize*R.overscaleFactor()),this._loadTile(ie,R.key,ie.state)),ie.uses++,this._tiles[R.key]=ie,xe||this._source.fire(new t.k("dataloading",{tile:ie,coord:ie.tileID,dataType:"source"})),ie}_setTileReloadTimer(R,ie){R in this._timers&&(clearTimeout(this._timers[R]),delete this._timers[R]);let xe=ie.getExpiryTimeout();xe&&(this._timers[R]=setTimeout(()=>{this._reloadTile(R,"expired"),delete this._timers[R]},xe))}_removeTile(R){let ie=this._tiles[R];ie&&(ie.uses--,delete this._tiles[R],this._timers[R]&&(clearTimeout(this._timers[R]),delete this._timers[R]),ie.uses>0||(ie.hasData()&&ie.state!=="reloading"?this._cache.add(ie.tileID,ie,ie.getExpiryTimeout()):(ie.aborted=!0,this._abortTile(ie),this._unloadTile(ie))))}_dataHandler(R){let ie=R.sourceDataType;R.dataType==="source"&&ie==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&R.dataType==="source"&&ie==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let R in this._tiles)this._removeTile(R);this._cache.reset()}tilesIn(R,ie,xe){let Te=[],De=this.transform;if(!De)return Te;let ut=xe?De.getCameraQueryGeometry(R):R,_t=R.map(qe=>De.pointCoordinate(qe,this.terrain)),Rt=ut.map(qe=>De.pointCoordinate(qe,this.terrain)),Kt=this.getIds(),fr=1/0,dr=1/0,jr=-1/0,ii=-1/0;for(let qe of Rt)fr=Math.min(fr,qe.x),dr=Math.min(dr,qe.y),jr=Math.max(jr,qe.x),ii=Math.max(ii,qe.y);for(let qe=0;qe=0&>[1].y+Tt>=0){let Lt=_t.map(or=>nt.getTilePoint(or)),tr=Rt.map(or=>nt.getTilePoint(or));Te.push({tile:Ye,tileID:nt,queryGeometry:Lt,cameraQueryGeometry:tr,scale:ct})}}return Te}getVisibleCoordinates(R){let ie=this.getRenderableIds(R).map(xe=>this._tiles[xe].tileID);for(let xe of ie)xe.posMatrix=this.transform.calculatePosMatrix(xe.toUnwrapped());return ie}hasTransition(){if(this._source.hasTransition())return!0;if(jt(this._source.type)){let R=n.now();for(let ie in this._tiles)if(this._tiles[ie].fadeEndTime>=R)return!0}return!1}setFeatureState(R,ie,xe){this._state.updateState(R=R||"_geojsonTileLayer",ie,xe)}removeFeatureState(R,ie,xe){this._state.removeFeatureState(R=R||"_geojsonTileLayer",ie,xe)}getFeatureState(R,ie){return this._state.getState(R=R||"_geojsonTileLayer",ie)}setDependencies(R,ie,xe){let Te=this._tiles[R];Te&&Te.setDependencies(ie,xe)}reloadTilesForDependencies(R,ie){for(let xe in this._tiles)this._tiles[xe].hasDependency(R,ie)&&this._reloadTile(xe,"reloading");this._cache.filter(xe=>!xe.hasDependency(R,ie))}}function Bt(Be,R){let ie=Math.abs(2*Be.wrap)-+(Be.wrap<0),xe=Math.abs(2*R.wrap)-+(R.wrap<0);return Be.overscaledZ-R.overscaledZ||xe-ie||R.canonical.y-Be.canonical.y||R.canonical.x-Be.canonical.x}function jt(Be){return Be==="raster"||Be==="image"||Be==="video"}Mt.maxOverzooming=10,Mt.maxUnderzooming=3;class cr{constructor(R,ie){this.reset(R,ie)}reset(R,ie){this.points=R||[],this._distances=[0];for(let xe=1;xe0?(Te-ut)/_t:0;return this.points[De].mult(1-Rt).add(this.points[ie].mult(Rt))}}function nr(Be,R){let ie=!0;return Be==="always"||Be!=="never"&&R!=="never"||(ie=!1),ie}class Lr{constructor(R,ie,xe){let Te=this.boxCells=[],De=this.circleCells=[];this.xCellCount=Math.ceil(R/xe),this.yCellCount=Math.ceil(ie/xe);for(let ut=0;utthis.width||Te<0||ie>this.height)return[];let Rt=[];if(R<=0&&ie<=0&&this.width<=xe&&this.height<=Te){if(De)return[{key:null,x1:R,y1:ie,x2:xe,y2:Te}];for(let Kt=0;Kt0}hitTestCircle(R,ie,xe,Te,De){let ut=R-xe,_t=R+xe,Rt=ie-xe,Kt=ie+xe;if(_t<0||ut>this.width||Kt<0||Rt>this.height)return!1;let fr=[];return this._forEachCell(ut,Rt,_t,Kt,this._queryCellCircle,fr,{hitTest:!0,overlapMode:Te,circle:{x:R,y:ie,radius:xe},seenUids:{box:{},circle:{}}},De),fr.length>0}_queryCell(R,ie,xe,Te,De,ut,_t,Rt){let{seenUids:Kt,hitTest:fr,overlapMode:dr}=_t,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Ye of jr)if(!Kt.box[Ye]){Kt.box[Ye]=!0;let nt=4*Ye,ct=this.boxKeys[Ye];if(R<=qe[nt+2]&&ie<=qe[nt+3]&&xe>=qe[nt+0]&&Te>=qe[nt+1]&&(!Rt||Rt(ct))&&(!fr||!nr(dr,ct.overlapMode))&&(ut.push({key:ct,x1:qe[nt],y1:qe[nt+1],x2:qe[nt+2],y2:qe[nt+3]}),fr))return!0}}let ii=this.circleCells[De];if(ii!==null){let qe=this.circles;for(let Ye of ii)if(!Kt.circle[Ye]){Kt.circle[Ye]=!0;let nt=3*Ye,ct=this.circleKeys[Ye];if(this._circleAndRectCollide(qe[nt],qe[nt+1],qe[nt+2],R,ie,xe,Te)&&(!Rt||Rt(ct))&&(!fr||!nr(dr,ct.overlapMode))){let Tt=qe[nt],gt=qe[nt+1],Lt=qe[nt+2];if(ut.push({key:ct,x1:Tt-Lt,y1:gt-Lt,x2:Tt+Lt,y2:gt+Lt}),fr)return!0}}}return!1}_queryCellCircle(R,ie,xe,Te,De,ut,_t,Rt){let{circle:Kt,seenUids:fr,overlapMode:dr}=_t,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Ye of jr)if(!fr.box[Ye]){fr.box[Ye]=!0;let nt=4*Ye,ct=this.boxKeys[Ye];if(this._circleAndRectCollide(Kt.x,Kt.y,Kt.radius,qe[nt+0],qe[nt+1],qe[nt+2],qe[nt+3])&&(!Rt||Rt(ct))&&!nr(dr,ct.overlapMode))return ut.push(!0),!0}}let ii=this.circleCells[De];if(ii!==null){let qe=this.circles;for(let Ye of ii)if(!fr.circle[Ye]){fr.circle[Ye]=!0;let nt=3*Ye,ct=this.circleKeys[Ye];if(this._circlesCollide(qe[nt],qe[nt+1],qe[nt+2],Kt.x,Kt.y,Kt.radius)&&(!Rt||Rt(ct))&&!nr(dr,ct.overlapMode))return ut.push(!0),!0}}}_forEachCell(R,ie,xe,Te,De,ut,_t,Rt){let Kt=this._convertToXCellCoord(R),fr=this._convertToYCellCoord(ie),dr=this._convertToXCellCoord(xe),jr=this._convertToYCellCoord(Te);for(let ii=Kt;ii<=dr;ii++)for(let qe=fr;qe<=jr;qe++)if(De.call(this,R,ie,xe,Te,this.xCellCount*qe+ii,ut,_t,Rt))return}_convertToXCellCoord(R){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(R*this.xScale)))}_convertToYCellCoord(R){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(R*this.yScale)))}_circlesCollide(R,ie,xe,Te,De,ut){let _t=Te-R,Rt=De-ie,Kt=xe+ut;return Kt*Kt>_t*_t+Rt*Rt}_circleAndRectCollide(R,ie,xe,Te,De,ut,_t){let Rt=(ut-Te)/2,Kt=Math.abs(R-(Te+Rt));if(Kt>Rt+xe)return!1;let fr=(_t-De)/2,dr=Math.abs(ie-(De+fr));if(dr>fr+xe)return!1;if(Kt<=Rt||dr<=fr)return!0;let jr=Kt-Rt,ii=dr-fr;return jr*jr+ii*ii<=xe*xe}}function mr(Be,R,ie,xe,Te){let De=t.H();return R?(t.K(De,De,[1/Te,1/Te,1]),ie||t.ad(De,De,xe.angle)):t.L(De,xe.labelPlaneMatrix,Be),De}function xr(Be,R,ie,xe,Te){if(R){let De=t.ae(Be);return t.K(De,De,[Te,Te,1]),ie||t.ad(De,De,-xe.angle),De}return xe.glCoordMatrix}function mt(Be,R,ie,xe){let Te;xe?(Te=[Be,R,xe(Be,R),1],t.af(Te,Te,ie)):(Te=[Be,R,0,1],$t(Te,Te,ie));let De=Te[3];return{point:new t.P(Te[0]/De,Te[1]/De),signedDistanceFromCamera:De,isOccluded:!1}}function Fe(Be,R){return .5+Be/R*.5}function Ze(Be,R){return Be.x>=-R[0]&&Be.x<=R[0]&&Be.y>=-R[1]&&Be.y<=R[1]}function Ne(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii,qe){let Ye=xe?Be.textSizeData:Be.iconSizeData,nt=t.ag(Ye,ie.transform.zoom),ct=[256/ie.width*2+1,256/ie.height*2+1],Tt=xe?Be.text.dynamicLayoutVertexArray:Be.icon.dynamicLayoutVertexArray;Tt.clear();let gt=Be.lineVertexArray,Lt=xe?Be.text.placedSymbolArray:Be.icon.placedSymbolArray,tr=ie.transform.width/ie.transform.height,or=!1;for(let vr=0;vrMath.abs(ie.x-R.x)*xe?{useVertical:!0}:(Be===t.ah.vertical?R.yie.x)?{needsFlipping:!0}:null}function Ee(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr){let dr=ie/24,jr=R.lineOffsetX*dr,ii=R.lineOffsetY*dr,qe;if(R.numGlyphs>1){let Ye=R.glyphStartIndex+R.numGlyphs,nt=R.lineStartIndex,ct=R.lineStartIndex+R.lineLength,Tt=Se(dr,_t,jr,ii,xe,R,fr,Be);if(!Tt)return{notEnoughRoom:!0};let gt=mt(Tt.first.point.x,Tt.first.point.y,ut,Be.getElevation).point,Lt=mt(Tt.last.point.x,Tt.last.point.y,ut,Be.getElevation).point;if(Te&&!xe){let tr=Ve(R.writingMode,gt,Lt,Kt);if(tr)return tr}qe=[Tt.first];for(let tr=R.glyphStartIndex+1;tr0?gt.point:function(or,vr,Sr,Wr,yi,Ai){return be(or,vr,Sr,1,yi,Ai)}(Be.tileAnchorPoint,Tt,nt,0,De,Be),tr=Ve(R.writingMode,nt,Lt,Kt);if(tr)return tr}let Ye=Pt(dr*_t.getoffsetX(R.glyphStartIndex),jr,ii,xe,R.segment,R.lineStartIndex,R.lineStartIndex+R.lineLength,Be,fr);if(!Ye||Be.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};qe=[Ye]}for(let Ye of qe)t.aj(Rt,Ye.point,Ye.angle);return{}}function be(Be,R,ie,xe,Te,De){let ut=Be.add(Be.sub(R)._unit()),_t=Te!==void 0?mt(ut.x,ut.y,Te,De.getElevation).point:et(ut.x,ut.y,De).point,Rt=ie.sub(_t);return ie.add(Rt._mult(xe/Rt.mag()))}function Ce(Be,R,ie){let xe=R.projectionCache;if(xe.projections[Be])return xe.projections[Be];let Te=new t.P(R.lineVertexArray.getx(Be),R.lineVertexArray.gety(Be)),De=et(Te.x,Te.y,R);if(De.signedDistanceFromCamera>0)return xe.projections[Be]=De.point,xe.anyProjectionOccluded=xe.anyProjectionOccluded||De.isOccluded,De.point;let ut=Be-ie.direction;return function(_t,Rt,Kt,fr,dr){return be(_t,Rt,Kt,fr,void 0,dr)}(ie.distanceFromAnchor===0?R.tileAnchorPoint:new t.P(R.lineVertexArray.getx(ut),R.lineVertexArray.gety(ut)),Te,ie.previousVertex,ie.absOffsetX-ie.distanceFromAnchor+1,R)}function et(Be,R,ie){let xe=Be+ie.translation[0],Te=R+ie.translation[1],De;return!ie.pitchWithMap&&ie.projection.useSpecialProjectionForSymbols?(De=ie.projection.projectTileCoordinates(xe,Te,ie.unwrappedTileID,ie.getElevation),De.point.x=(.5*De.point.x+.5)*ie.width,De.point.y=(.5*-De.point.y+.5)*ie.height):(De=mt(xe,Te,ie.labelPlaneMatrix,ie.getElevation),De.isOccluded=!1),De}function ht(Be,R,ie){return Be._unit()._perp()._mult(R*ie)}function yt(Be,R,ie,xe,Te,De,ut,_t,Rt){if(_t.projectionCache.offsets[Be])return _t.projectionCache.offsets[Be];let Kt=ie.add(R);if(Be+Rt.direction=Te)return _t.projectionCache.offsets[Be]=Kt,Kt;let fr=Ce(Be+Rt.direction,_t,Rt),dr=ht(fr.sub(ie),ut,Rt.direction),jr=ie.add(dr),ii=fr.add(dr);return _t.projectionCache.offsets[Be]=t.ak(De,Kt,jr,ii)||Kt,_t.projectionCache.offsets[Be]}function Pt(Be,R,ie,xe,Te,De,ut,_t,Rt){let Kt=xe?Be-R:Be+R,fr=Kt>0?1:-1,dr=0;xe&&(fr*=-1,dr=Math.PI),fr<0&&(dr+=Math.PI);let jr,ii=fr>0?De+Te:De+Te+1;_t.projectionCache.cachedAnchorPoint?jr=_t.projectionCache.cachedAnchorPoint:(jr=et(_t.tileAnchorPoint.x,_t.tileAnchorPoint.y,_t).point,_t.projectionCache.cachedAnchorPoint=jr);let qe,Ye,nt=jr,ct=jr,Tt=0,gt=0,Lt=Math.abs(Kt),tr=[],or;for(;Tt+gt<=Lt;){if(ii+=fr,ii=ut)return null;Tt+=gt,ct=nt,Ye=qe;let Wr={absOffsetX:Lt,direction:fr,distanceFromAnchor:Tt,previousVertex:ct};if(nt=Ce(ii,_t,Wr),ie===0)tr.push(ct),or=nt.sub(ct);else{let yi,Ai=nt.sub(ct);yi=Ai.mag()===0?ht(Ce(ii+fr,_t,Wr).sub(nt),ie,fr):ht(Ai,ie,fr),Ye||(Ye=ct.add(yi)),qe=yt(ii,yi,nt,De,ut,Ye,ie,_t,Wr),tr.push(Ye),or=qe.sub(Ye)}gt=or.mag()}let vr=or._mult((Lt-Tt)/gt)._add(Ye||ct),Sr=dr+Math.atan2(nt.y-ct.y,nt.x-ct.x);return tr.push(vr),{point:vr,angle:Rt?Sr:0,path:tr}}let Ot=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Wt(Be,R){for(let ie=0;ie=1;ja--)qn.push(Mn.path[ja]);for(let ja=1;jaDo.signedDistanceFromCamera<=0)?[]:ja.map(Do=>Do.point)}let eo=[];if(qn.length>0){let ja=qn[0].clone(),Do=qn[0].clone();for(let _s=1;_s=Ai.x&&Do.x<=Oi.x&&ja.y>=Ai.y&&Do.y<=Oi.y?[qn]:Do.xOi.x||Do.yOi.y?[]:t.al([qn],Ai.x,Ai.y,Oi.x,Oi.y)}for(let ja of eo){on.reset(ja,.25*yi);let Do=0;Do=on.length<=.5*yi?1:Math.ceil(on.paddedLength/ma)+1;for(let _s=0;_smt(Te.x,Te.y,xe,ie.getElevation))}queryRenderedSymbols(R){if(R.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let ie=[],xe=1/0,Te=1/0,De=-1/0,ut=-1/0;for(let fr of R){let dr=new t.P(fr.x+lr,fr.y+lr);xe=Math.min(xe,dr.x),Te=Math.min(Te,dr.y),De=Math.max(De,dr.x),ut=Math.max(ut,dr.y),ie.push(dr)}let _t=this.grid.query(xe,Te,De,ut).concat(this.ignoredGrid.query(xe,Te,De,ut)),Rt={},Kt={};for(let fr of _t){let dr=fr.key;if(Rt[dr.bucketInstanceId]===void 0&&(Rt[dr.bucketInstanceId]={}),Rt[dr.bucketInstanceId][dr.featureIndex])continue;let jr=[new t.P(fr.x1,fr.y1),new t.P(fr.x2,fr.y1),new t.P(fr.x2,fr.y2),new t.P(fr.x1,fr.y2)];t.am(ie,jr)&&(Rt[dr.bucketInstanceId][dr.featureIndex]=!0,Kt[dr.bucketInstanceId]===void 0&&(Kt[dr.bucketInstanceId]=[]),Kt[dr.bucketInstanceId].push(dr.featureIndex))}return Kt}insertCollisionBox(R,ie,xe,Te,De,ut){(xe?this.ignoredGrid:this.grid).insert({bucketInstanceId:Te,featureIndex:De,collisionGroupID:ut,overlapMode:ie},R[0],R[1],R[2],R[3])}insertCollisionCircles(R,ie,xe,Te,De,ut){let _t=xe?this.ignoredGrid:this.grid,Rt={bucketInstanceId:Te,featureIndex:De,collisionGroupID:ut,overlapMode:ie};for(let Kt=0;Kt=this.screenRightBoundary||Tethis.screenBottomBoundary}isInsideGrid(R,ie,xe,Te){return xe>=0&&R=0&&iethis.projectAndGetPerspectiveRatio(xe,yi.x,yi.y,Te,Kt));Sr=Wr.some(yi=>!yi.isOccluded),vr=Wr.map(yi=>yi.point)}else Sr=!0;return{box:t.ao(vr),allPointsOccluded:!Sr}}}function Pi(Be,R,ie){return R*(t.X/(Be.tileSize*Math.pow(2,ie-Be.tileID.overscaledZ)))}class Bi{constructor(R,ie,xe,Te){this.opacity=R?Math.max(0,Math.min(1,R.opacity+(R.placed?ie:-ie))):Te&&xe?1:0,this.placed=xe}isHidden(){return this.opacity===0&&!this.placed}}class zi{constructor(R,ie,xe,Te,De){this.text=new Bi(R?R.text:null,ie,xe,De),this.icon=new Bi(R?R.icon:null,ie,Te,De)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class en{constructor(R,ie,xe){this.text=R,this.icon=ie,this.skipFade=xe}}class Ri{constructor(){this.invProjMatrix=t.H(),this.viewportMatrix=t.H(),this.circles=[]}}class Zi{constructor(R,ie,xe,Te,De){this.bucketInstanceId=R,this.featureIndex=ie,this.sourceLayerIndex=xe,this.bucketIndex=Te,this.tileID=De}}class vn{constructor(R){this.crossSourceCollisions=R,this.maxGroupID=0,this.collisionGroups={}}get(R){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[R]){let ie=++this.maxGroupID;this.collisionGroups[R]={ID:ie,predicate:xe=>xe.collisionGroupID===ie}}return this.collisionGroups[R]}}function Xt(Be,R,ie,xe,Te){let{horizontalAlign:De,verticalAlign:ut}=t.au(Be);return new t.P(-(De-.5)*R+xe[0]*Te,-(ut-.5)*ie+xe[1]*Te)}class Dt{constructor(R,ie,xe,Te,De,ut){this.transform=R.clone(),this.terrain=xe,this.collisionIndex=new fi(this.transform,ie),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=Te,this.retainedQueryData={},this.collisionGroups=new vn(De),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=ut,ut&&(ut.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(R){let ie=this.terrain;return ie?(xe,Te)=>ie.getElevation(R,xe,Te):null}getBucketParts(R,ie,xe,Te){let De=xe.getBucket(ie),ut=xe.latestFeatureIndex;if(!De||!ut||ie.id!==De.layerIds[0])return;let _t=xe.collisionBoxArray,Rt=De.layers[0].layout,Kt=De.layers[0].paint,fr=Math.pow(2,this.transform.zoom-xe.tileID.overscaledZ),dr=xe.tileSize/t.X,jr=xe.tileID.toUnwrapped(),ii=this.transform.calculatePosMatrix(jr),qe=Rt.get("text-pitch-alignment")==="map",Ye=Rt.get("text-rotation-alignment")==="map",nt=Pi(xe,1,this.transform.zoom),ct=this.collisionIndex.mapProjection.translatePosition(this.transform,xe,Kt.get("text-translate"),Kt.get("text-translate-anchor")),Tt=this.collisionIndex.mapProjection.translatePosition(this.transform,xe,Kt.get("icon-translate"),Kt.get("icon-translate-anchor")),gt=mr(ii,qe,Ye,this.transform,nt),Lt=null;if(qe){let or=xr(ii,qe,Ye,this.transform,nt);Lt=t.L([],this.transform.labelPlaneMatrix,or)}this.retainedQueryData[De.bucketInstanceId]=new Zi(De.bucketInstanceId,ut,De.sourceLayerIndex,De.index,xe.tileID);let tr={bucket:De,layout:Rt,translationText:ct,translationIcon:Tt,posMatrix:ii,unwrappedTileID:jr,textLabelPlaneMatrix:gt,labelToScreenMatrix:Lt,scale:fr,textPixelRatio:dr,holdingForFade:xe.holdingForFade(),collisionBoxArray:_t,partiallyEvaluatedTextSize:t.ag(De.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(De.sourceID)};if(Te)for(let or of De.sortKeyRanges){let{sortKey:vr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr}=or;R.push({sortKey:vr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr,parameters:tr})}else R.push({symbolInstanceStart:0,symbolInstanceEnd:De.symbolInstances.length,parameters:tr})}attemptAnchorPlacement(R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii,qe,Ye,nt,ct,Tt,gt){let Lt=t.aq[R.textAnchor],tr=[R.textOffset0,R.textOffset1],or=Xt(Lt,xe,Te,tr,De),vr=this.collisionIndex.placeCollisionBox(ie,jr,Rt,Kt,fr,_t,ut,nt,dr.predicate,gt,or);if((!Tt||this.collisionIndex.placeCollisionBox(Tt,jr,Rt,Kt,fr,_t,ut,ct,dr.predicate,gt,or).placeable)&&vr.placeable){let Sr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[ii.crossTileID]&&this.prevPlacement.placements[ii.crossTileID]&&this.prevPlacement.placements[ii.crossTileID].text&&(Sr=this.prevPlacement.variableOffsets[ii.crossTileID].anchor),ii.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[ii.crossTileID]={textOffset:tr,width:xe,height:Te,anchor:Lt,textBoxScale:De,prevAnchor:Sr},this.markUsedJustification(qe,Lt,ii,Ye),qe.allowVerticalPlacement&&(this.markUsedOrientation(qe,Ye,ii),this.placedOrientations[ii.crossTileID]=Ye),{shift:or,placedGlyphBoxes:vr}}}placeLayerBucketPart(R,ie,xe){let{bucket:Te,layout:De,translationText:ut,translationIcon:_t,posMatrix:Rt,unwrappedTileID:Kt,textLabelPlaneMatrix:fr,labelToScreenMatrix:dr,textPixelRatio:jr,holdingForFade:ii,collisionBoxArray:qe,partiallyEvaluatedTextSize:Ye,collisionGroup:nt}=R.parameters,ct=De.get("text-optional"),Tt=De.get("icon-optional"),gt=t.ar(De,"text-overlap","text-allow-overlap"),Lt=gt==="always",tr=t.ar(De,"icon-overlap","icon-allow-overlap"),or=tr==="always",vr=De.get("text-rotation-alignment")==="map",Sr=De.get("text-pitch-alignment")==="map",Wr=De.get("icon-text-fit")!=="none",yi=De.get("symbol-z-order")==="viewport-y",Ai=Lt&&(or||!Te.hasIconData()||Tt),Oi=or&&(Lt||!Te.hasTextData()||ct);!Te.collisionArrays&&qe&&Te.deserializeCollisionBoxes(qe);let on=this._getTerrainElevationFunc(this.retainedQueryData[Te.bucketInstanceId].tileID),Mn=(An,qn,ma)=>{var eo,ja;if(ie[An.crossTileID])return;if(ii)return void(this.placements[An.crossTileID]=new en(!1,!1,!1));let Do=!1,_s=!1,Oo=!0,as=null,Ms={box:null,placeable:!1,offscreen:null},pl={box:null,placeable:!1,offscreen:null},ll=null,cs=null,ls=null,Hl=0,iu=0,Yu=0;qn.textFeatureIndex?Hl=qn.textFeatureIndex:An.useRuntimeCollisionCircles&&(Hl=An.featureIndex),qn.verticalTextFeatureIndex&&(iu=qn.verticalTextFeatureIndex);let _u=qn.textBox;if(_u){let Ql=Ke=>{let ft=t.ah.horizontal;if(Te.allowVerticalPlacement&&!Ke&&this.prevPlacement){let dt=this.prevPlacement.placedOrientations[An.crossTileID];dt&&(this.placedOrientations[An.crossTileID]=dt,ft=dt,this.markUsedOrientation(Te,ft,An))}return ft},eu=(Ke,ft)=>{if(Te.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&qn.verticalTextBox){for(let dt of Te.writingModes)if(dt===t.ah.vertical?(Ms=ft(),pl=Ms):Ms=Ke(),Ms&&Ms.placeable)break}else Ms=Ke()},de=An.textAnchorOffsetStartIndex,Re=An.textAnchorOffsetEndIndex;if(Re===de){let Ke=(ft,dt)=>{let xt=this.collisionIndex.placeCollisionBox(ft,gt,jr,Rt,Kt,Sr,vr,ut,nt.predicate,on);return xt&&xt.placeable&&(this.markUsedOrientation(Te,dt,An),this.placedOrientations[An.crossTileID]=dt),xt};eu(()=>Ke(_u,t.ah.horizontal),()=>{let ft=qn.verticalTextBox;return Te.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&ft?Ke(ft,t.ah.vertical):{box:null,offscreen:null}}),Ql(Ms&&Ms.placeable)}else{let Ke=t.aq[(ja=(eo=this.prevPlacement)===null||eo===void 0?void 0:eo.variableOffsets[An.crossTileID])===null||ja===void 0?void 0:ja.anchor],ft=(xt,Jt,It)=>{let sr=xt.x2-xt.x1,zr=xt.y2-xt.y1,Or=An.textBoxScale,bi=Wr&&tr==="never"?Jt:null,gi=null,Ki=gt==="never"?1:2,rn="never";Ke&&Ki++;for(let Si=0;Sift(_u,qn.iconBox,t.ah.horizontal),()=>{let xt=qn.verticalTextBox;return Te.allowVerticalPlacement&&(!Ms||!Ms.placeable)&&An.numVerticalGlyphVertices>0&&xt?ft(xt,qn.verticalIconBox,t.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Ms&&(Do=Ms.placeable,Oo=Ms.offscreen);let dt=Ql(Ms&&Ms.placeable);if(!Do&&this.prevPlacement){let xt=this.prevPlacement.variableOffsets[An.crossTileID];xt&&(this.variableOffsets[An.crossTileID]=xt,this.markUsedJustification(Te,xt.anchor,An,dt))}}}if(ll=Ms,Do=ll&&ll.placeable,Oo=ll&&ll.offscreen,An.useRuntimeCollisionCircles){let Ql=Te.text.placedSymbolArray.get(An.centerJustifiedTextSymbolIndex),eu=t.ai(Te.textSizeData,Ye,Ql),de=De.get("text-padding");cs=this.collisionIndex.placeCollisionCircles(gt,Ql,Te.lineVertexArray,Te.glyphOffsetArray,eu,Rt,Kt,fr,dr,xe,Sr,nt.predicate,An.collisionCircleDiameter,de,ut,on),cs.circles.length&&cs.collisionDetected&&!xe&&t.w("Collisions detected, but collision boxes are not shown"),Do=Lt||cs.circles.length>0&&!cs.collisionDetected,Oo=Oo&&cs.offscreen}if(qn.iconFeatureIndex&&(Yu=qn.iconFeatureIndex),qn.iconBox){let Ql=eu=>this.collisionIndex.placeCollisionBox(eu,tr,jr,Rt,Kt,Sr,vr,_t,nt.predicate,on,Wr&&as?as:void 0);pl&&pl.placeable&&qn.verticalIconBox?(ls=Ql(qn.verticalIconBox),_s=ls.placeable):(ls=Ql(qn.iconBox),_s=ls.placeable),Oo=Oo&&ls.offscreen}let Il=ct||An.numHorizontalGlyphVertices===0&&An.numVerticalGlyphVertices===0,vu=Tt||An.numIconVertices===0;Il||vu?vu?Il||(_s=_s&&Do):Do=_s&&Do:_s=Do=_s&&Do;let Lc=_s&&ls.placeable;if(Do&&ll.placeable&&this.collisionIndex.insertCollisionBox(ll.box,gt,De.get("text-ignore-placement"),Te.bucketInstanceId,pl&&pl.placeable&&iu?iu:Hl,nt.ID),Lc&&this.collisionIndex.insertCollisionBox(ls.box,tr,De.get("icon-ignore-placement"),Te.bucketInstanceId,Yu,nt.ID),cs&&Do&&this.collisionIndex.insertCollisionCircles(cs.circles,gt,De.get("text-ignore-placement"),Te.bucketInstanceId,Hl,nt.ID),xe&&this.storeCollisionData(Te.bucketInstanceId,ma,qn,ll,ls,cs),An.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(Te.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[An.crossTileID]=new en(Do||Ai,_s||Oi,Oo||Te.justReloaded),ie[An.crossTileID]=!0};if(yi){if(R.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let An=Te.getSortedSymbolIndexes(this.transform.angle);for(let qn=An.length-1;qn>=0;--qn){let ma=An[qn];Mn(Te.symbolInstances.get(ma),Te.collisionArrays[ma],ma)}}else for(let An=R.symbolInstanceStart;An=0&&(R.text.placedSymbolArray.get(_t).crossTileID=De>=0&&_t!==De?0:xe.crossTileID)}markUsedOrientation(R,ie,xe){let Te=ie===t.ah.horizontal||ie===t.ah.horizontalOnly?ie:0,De=ie===t.ah.vertical?ie:0,ut=[xe.leftJustifiedTextSymbolIndex,xe.centerJustifiedTextSymbolIndex,xe.rightJustifiedTextSymbolIndex];for(let _t of ut)R.text.placedSymbolArray.get(_t).placedOrientation=Te;xe.verticalPlacedTextSymbolIndex&&(R.text.placedSymbolArray.get(xe.verticalPlacedTextSymbolIndex).placedOrientation=De)}commit(R){this.commitTime=R,this.zoomAtLastRecencyCheck=this.transform.zoom;let ie=this.prevPlacement,xe=!1;this.prevZoomAdjustment=ie?ie.zoomAdjustment(this.transform.zoom):0;let Te=ie?ie.symbolFadeChange(R):1,De=ie?ie.opacities:{},ut=ie?ie.variableOffsets:{},_t=ie?ie.placedOrientations:{};for(let Rt in this.placements){let Kt=this.placements[Rt],fr=De[Rt];fr?(this.opacities[Rt]=new zi(fr,Te,Kt.text,Kt.icon),xe=xe||Kt.text!==fr.text.placed||Kt.icon!==fr.icon.placed):(this.opacities[Rt]=new zi(null,Te,Kt.text,Kt.icon,Kt.skipFade),xe=xe||Kt.text||Kt.icon)}for(let Rt in De){let Kt=De[Rt];if(!this.opacities[Rt]){let fr=new zi(Kt,Te,!1,!1);fr.isHidden()||(this.opacities[Rt]=fr,xe=xe||Kt.text.placed||Kt.icon.placed)}}for(let Rt in ut)this.variableOffsets[Rt]||!this.opacities[Rt]||this.opacities[Rt].isHidden()||(this.variableOffsets[Rt]=ut[Rt]);for(let Rt in _t)this.placedOrientations[Rt]||!this.opacities[Rt]||this.opacities[Rt].isHidden()||(this.placedOrientations[Rt]=_t[Rt]);if(ie&&ie.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");xe?this.lastPlacementChangeTime=R:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ie?ie.lastPlacementChangeTime:R)}updateLayerOpacities(R,ie){let xe={};for(let Te of ie){let De=Te.getBucket(R);De&&Te.latestFeatureIndex&&R.id===De.layerIds[0]&&this.updateBucketOpacities(De,Te.tileID,xe,Te.collisionBoxArray)}}updateBucketOpacities(R,ie,xe,Te){R.hasTextData()&&(R.text.opacityVertexArray.clear(),R.text.hasVisibleVertices=!1),R.hasIconData()&&(R.icon.opacityVertexArray.clear(),R.icon.hasVisibleVertices=!1),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexArray.clear(),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexArray.clear();let De=R.layers[0],ut=De.layout,_t=new zi(null,0,!1,!1,!0),Rt=ut.get("text-allow-overlap"),Kt=ut.get("icon-allow-overlap"),fr=De._unevaluatedLayout.hasValue("text-variable-anchor")||De._unevaluatedLayout.hasValue("text-variable-anchor-offset"),dr=ut.get("text-rotation-alignment")==="map",jr=ut.get("text-pitch-alignment")==="map",ii=ut.get("icon-text-fit")!=="none",qe=new zi(null,0,Rt&&(Kt||!R.hasIconData()||ut.get("icon-optional")),Kt&&(Rt||!R.hasTextData()||ut.get("text-optional")),!0);!R.collisionArrays&&Te&&(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData())&&R.deserializeCollisionBoxes(Te);let Ye=(ct,Tt,gt)=>{for(let Lt=0;Lt0,Sr=this.placedOrientations[Tt.crossTileID],Wr=Sr===t.ah.vertical,yi=Sr===t.ah.horizontal||Sr===t.ah.horizontalOnly;if(gt>0||Lt>0){let Oi=$i(or.text);Ye(R.text,gt,Wr?Mi:Oi),Ye(R.text,Lt,yi?Mi:Oi);let on=or.text.isHidden();[Tt.rightJustifiedTextSymbolIndex,Tt.centerJustifiedTextSymbolIndex,Tt.leftJustifiedTextSymbolIndex].forEach(qn=>{qn>=0&&(R.text.placedSymbolArray.get(qn).hidden=on||Wr?1:0)}),Tt.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(Tt.verticalPlacedTextSymbolIndex).hidden=on||yi?1:0);let Mn=this.variableOffsets[Tt.crossTileID];Mn&&this.markUsedJustification(R,Mn.anchor,Tt,Sr);let An=this.placedOrientations[Tt.crossTileID];An&&(this.markUsedJustification(R,"left",Tt,An),this.markUsedOrientation(R,An,Tt))}if(vr){let Oi=$i(or.icon),on=!(ii&&Tt.verticalPlacedIconSymbolIndex&&Wr);Tt.placedIconSymbolIndex>=0&&(Ye(R.icon,Tt.numIconVertices,on?Oi:Mi),R.icon.placedSymbolArray.get(Tt.placedIconSymbolIndex).hidden=or.icon.isHidden()),Tt.verticalPlacedIconSymbolIndex>=0&&(Ye(R.icon,Tt.numVerticalIconVertices,on?Mi:Oi),R.icon.placedSymbolArray.get(Tt.verticalPlacedIconSymbolIndex).hidden=or.icon.isHidden())}let Ai=nt&&nt.has(ct)?nt.get(ct):{text:null,icon:null};if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){let Oi=R.collisionArrays[ct];if(Oi){let on=new t.P(0,0);if(Oi.textBox||Oi.verticalTextBox){let Mn=!0;if(fr){let An=this.variableOffsets[tr];An?(on=Xt(An.anchor,An.width,An.height,An.textOffset,An.textBoxScale),dr&&on._rotate(jr?this.transform.angle:-this.transform.angle)):Mn=!1}if(Oi.textBox||Oi.verticalTextBox){let An;Oi.textBox&&(An=Wr),Oi.verticalTextBox&&(An=yi),qt(R.textCollisionBox.collisionVertexArray,or.text.placed,!Mn||An,Ai.text,on.x,on.y)}}if(Oi.iconBox||Oi.verticalIconBox){let Mn=!!(!yi&&Oi.verticalIconBox),An;Oi.iconBox&&(An=Mn),Oi.verticalIconBox&&(An=!Mn),qt(R.iconCollisionBox.collisionVertexArray,or.icon.placed,An,Ai.icon,ii?on.x:0,ii?on.y:0)}}}}if(R.sortFeatures(this.transform.angle),this.retainedQueryData[R.bucketInstanceId]&&(this.retainedQueryData[R.bucketInstanceId].featureSortOrder=R.featureSortOrder),R.hasTextData()&&R.text.opacityVertexBuffer&&R.text.opacityVertexBuffer.updateData(R.text.opacityVertexArray),R.hasIconData()&&R.icon.opacityVertexBuffer&&R.icon.opacityVertexBuffer.updateData(R.icon.opacityVertexArray),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexBuffer&&R.iconCollisionBox.collisionVertexBuffer.updateData(R.iconCollisionBox.collisionVertexArray),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexBuffer&&R.textCollisionBox.collisionVertexBuffer.updateData(R.textCollisionBox.collisionVertexArray),R.text.opacityVertexArray.length!==R.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${R.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${R.text.layoutVertexArray.length}) / 4`);if(R.icon.opacityVertexArray.length!==R.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${R.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${R.icon.layoutVertexArray.length}) / 4`);if(R.bucketInstanceId in this.collisionCircleArrays){let ct=this.collisionCircleArrays[R.bucketInstanceId];R.placementInvProjMatrix=ct.invProjMatrix,R.placementViewportMatrix=ct.viewportMatrix,R.collisionCircleArray=ct.circles,delete this.collisionCircleArrays[R.bucketInstanceId]}}symbolFadeChange(R){return this.fadeDuration===0?1:(R-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(R){return Math.max(0,(this.transform.zoom-R)/1.5)}hasTransitions(R){return this.stale||R-this.lastPlacementChangeTimeR}setStale(){this.stale=!0}}function qt(Be,R,ie,xe,Te,De){xe&&xe.length!==0||(xe=[0,0,0,0]);let ut=xe[0]-lr,_t=xe[1]-lr,Rt=xe[2]-lr,Kt=xe[3]-lr;Be.emplaceBack(R?1:0,ie?1:0,Te||0,De||0,ut,_t),Be.emplaceBack(R?1:0,ie?1:0,Te||0,De||0,Rt,_t),Be.emplaceBack(R?1:0,ie?1:0,Te||0,De||0,Rt,Kt),Be.emplaceBack(R?1:0,ie?1:0,Te||0,De||0,ut,Kt)}let Ut=Math.pow(2,25),br=Math.pow(2,24),Zr=Math.pow(2,17),_i=Math.pow(2,16),Yr=Math.pow(2,9),Di=Math.pow(2,8),qi=Math.pow(2,1);function $i(Be){if(Be.opacity===0&&!Be.placed)return 0;if(Be.opacity===1&&Be.placed)return 4294967295;let R=Be.placed?1:0,ie=Math.floor(127*Be.opacity);return ie*Ut+R*br+ie*Zr+R*_i+ie*Yr+R*Di+ie*qi+R}let Mi=0;function sn(){return{isOccluded:(Be,R,ie)=>!1,getPitchedTextCorrection:(Be,R,ie)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(Be,R,ie,xe){throw new Error("Not implemented.")},translatePosition:(Be,R,ie,xe)=>function(Te,De,ut,_t,Rt=!1){if(!ut[0]&&!ut[1])return[0,0];let Kt=Rt?_t==="map"?Te.angle:0:_t==="viewport"?-Te.angle:0;if(Kt){let fr=Math.sin(Kt),dr=Math.cos(Kt);ut=[ut[0]*dr-ut[1]*fr,ut[0]*fr+ut[1]*dr]}return[Rt?ut[0]:Pi(De,ut[0],Te.zoom),Rt?ut[1]:Pi(De,ut[1],Te.zoom)]}(Be,R,ie,xe),getCircleRadiusCorrection:Be=>1}}class vt{constructor(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&!R.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(R,ie,xe,Te,De){let ut=this._bucketParts;for(;this._currentTileIndex_t.sortKey-Rt.sortKey));this._currentPartIndex!this._forceFullPlacement&&n.now()-Te>2;for(;this._currentPlacementIndex>=0;){let ut=ie[R[this._currentPlacementIndex]],_t=this.placement.collisionIndex.transform.zoom;if(ut.type==="symbol"&&(!ut.minzoom||ut.minzoom<=_t)&&(!ut.maxzoom||ut.maxzoom>_t)){if(this._inProgressLayer||(this._inProgressLayer=new vt(ut)),this._inProgressLayer.continuePlacement(xe[ut.source],this.placement,this._showCollisionBoxes,ut,De))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(R){return this.placement.commit(R),this.placement}}let kr=512/t.X/2;class Cr{constructor(R,ie,xe){this.tileID=R,this.bucketInstanceId=xe,this._symbolsByKey={};let Te=new Map;for(let De=0;De({x:Math.floor(Rt.anchorX*kr),y:Math.floor(Rt.anchorY*kr)})),crossTileIDs:ut.map(Rt=>Rt.crossTileID)};if(_t.positions.length>128){let Rt=new t.av(_t.positions.length,16,Uint16Array);for(let{x:Kt,y:fr}of _t.positions)Rt.add(Kt,fr);Rt.finish(),delete _t.positions,_t.index=Rt}this._symbolsByKey[De]=_t}}getScaledCoordinates(R,ie){let{x:xe,y:Te,z:De}=this.tileID.canonical,{x:ut,y:_t,z:Rt}=ie.canonical,Kt=kr/Math.pow(2,Rt-De),fr=(_t*t.X+R.anchorY)*Kt,dr=Te*t.X*kr;return{x:Math.floor((ut*t.X+R.anchorX)*Kt-xe*t.X*kr),y:Math.floor(fr-dr)}}findMatches(R,ie,xe){let Te=this.tileID.canonical.zR)}}class wr{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Ar{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(R){let ie=Math.round((R-this.lng)/360);if(ie!==0)for(let xe in this.indexes){let Te=this.indexes[xe],De={};for(let ut in Te){let _t=Te[ut];_t.tileID=_t.tileID.unwrapTo(_t.tileID.wrap+ie),De[_t.tileID.key]=_t}this.indexes[xe]=De}this.lng=R}addBucket(R,ie,xe){if(this.indexes[R.overscaledZ]&&this.indexes[R.overscaledZ][R.key]){if(this.indexes[R.overscaledZ][R.key].bucketInstanceId===ie.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(R.overscaledZ,this.indexes[R.overscaledZ][R.key])}for(let De=0;DeR.overscaledZ)for(let _t in ut){let Rt=ut[_t];Rt.tileID.isChildOf(R)&&Rt.findMatches(ie.symbolInstances,R,Te)}else{let _t=ut[R.scaledTo(Number(De)).key];_t&&_t.findMatches(ie.symbolInstances,R,Te)}}for(let De=0;De{ie[xe]=!0});for(let xe in this.layerIndexes)ie[xe]||delete this.layerIndexes[xe]}}let Br=(Be,R)=>t.t(Be,R&&R.filter(ie=>ie.identifier!=="source.canvas")),Pr=t.aw();class Qr extends t.E{constructor(R,ie={}){super(),this._rtlPluginLoaded=()=>{for(let xe in this.sourceCaches){let Te=this.sourceCaches[xe].getSource().type;Te!=="vector"&&Te!=="geojson"||this.sourceCaches[xe].reload()}},this.map=R,this.dispatcher=new $(J(),R._getMapId()),this.dispatcher.registerMessageHandler("GG",(xe,Te)=>this.getGlyphs(xe,Te)),this.dispatcher.registerMessageHandler("GI",(xe,Te)=>this.getImages(xe,Te)),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new F(R._requestManager,ie.localIdeographFontFamily),this.lineAtlas=new W(256,512),this.crossTileSymbolIndex=new Er,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",t.ay()),Qe().on(pe,this._rtlPluginLoaded),this.on("data",xe=>{if(xe.dataType!=="source"||xe.sourceDataType!=="metadata")return;let Te=this.sourceCaches[xe.sourceId];if(!Te)return;let De=Te.getSource();if(De&&De.vectorLayerIds)for(let ut in this._layers){let _t=this._layers[ut];_t.source===De.id&&this._validateLayer(_t)}})}loadURL(R,ie={},xe){this.fire(new t.k("dataloading",{dataType:"style"})),ie.validate=typeof ie.validate!="boolean"||ie.validate;let Te=this.map._requestManager.transformRequest(R,"Style");this._loadStyleRequest=new AbortController;let De=this._loadStyleRequest;t.h(Te,this._loadStyleRequest).then(ut=>{this._loadStyleRequest=null,this._load(ut.data,ie,xe)}).catch(ut=>{this._loadStyleRequest=null,ut&&!De.signal.aborted&&this.fire(new t.j(ut))})}loadJSON(R,ie={},xe){this.fire(new t.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,n.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,ie.validate=ie.validate!==!1,this._load(R,ie,xe)}).catch(()=>{})}loadEmpty(){this.fire(new t.k("dataloading",{dataType:"style"})),this._load(Pr,{validate:!1})}_load(R,ie,xe){var Te;let De=ie.transformStyle?ie.transformStyle(xe,R):R;if(!ie.validate||!Br(this,t.u(De))){this._loaded=!0,this.stylesheet=De;for(let ut in De.sources)this.addSource(ut,De.sources[ut],{validate:!1});De.sprite?this._loadSprite(De.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(De.glyphs),this._createLayers(),this.light=new I(this.stylesheet.light),this.sky=new U(this.stylesheet.sky),this.map.setTerrain((Te=this.stylesheet.terrain)!==null&&Te!==void 0?Te:null),this.fire(new t.k("data",{dataType:"style"})),this.fire(new t.k("style.load"))}}_createLayers(){let R=t.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",R),this._order=R.map(ie=>ie.id),this._layers={},this._serializedLayers=null;for(let ie of R){let xe=t.aA(ie);xe.setEventedParent(this,{layer:{id:ie.id}}),this._layers[ie.id]=xe}}_loadSprite(R,ie=!1,xe=void 0){let Te;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(De,ut,_t,Rt){return t._(this,void 0,void 0,function*(){let Kt=b(De),fr=_t>1?"@2x":"",dr={},jr={};for(let{id:ii,url:qe}of Kt){let Ye=ut.transformRequest(v(qe,fr,".json"),"SpriteJSON");dr[ii]=t.h(Ye,Rt);let nt=ut.transformRequest(v(qe,fr,".png"),"SpriteImage");jr[ii]=l.getImage(nt,Rt)}return yield Promise.all([...Object.values(dr),...Object.values(jr)]),function(ii,qe){return t._(this,void 0,void 0,function*(){let Ye={};for(let nt in ii){Ye[nt]={};let ct=n.getImageCanvasContext((yield qe[nt]).data),Tt=(yield ii[nt]).data;for(let gt in Tt){let{width:Lt,height:tr,x:or,y:vr,sdf:Sr,pixelRatio:Wr,stretchX:yi,stretchY:Ai,content:Oi,textFitWidth:on,textFitHeight:Mn}=Tt[gt];Ye[nt][gt]={data:null,pixelRatio:Wr,sdf:Sr,stretchX:yi,stretchY:Ai,content:Oi,textFitWidth:on,textFitHeight:Mn,spriteData:{width:Lt,height:tr,x:or,y:vr,context:ct}}}}return Ye})}(dr,jr)})}(R,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(De=>{if(this._spriteRequest=null,De)for(let ut in De){this._spritesImagesIds[ut]=[];let _t=this._spritesImagesIds[ut]?this._spritesImagesIds[ut].filter(Rt=>!(Rt in De)):[];for(let Rt of _t)this.imageManager.removeImage(Rt),this._changedImages[Rt]=!0;for(let Rt in De[ut]){let Kt=ut==="default"?Rt:`${ut}:${Rt}`;this._spritesImagesIds[ut].push(Kt),Kt in this.imageManager.images?this.imageManager.updateImage(Kt,De[ut][Rt],!1):this.imageManager.addImage(Kt,De[ut][Rt]),ie&&(this._changedImages[Kt]=!0)}}}).catch(De=>{this._spriteRequest=null,Te=De,this.fire(new t.j(Te))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),ie&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"})),xe&&xe(Te)})}_unloadSprite(){for(let R of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(R),this._changedImages[R]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}_validateLayer(R){let ie=this.sourceCaches[R.source];if(!ie)return;let xe=R.sourceLayer;if(!xe)return;let Te=ie.getSource();(Te.type==="geojson"||Te.vectorLayerIds&&Te.vectorLayerIds.indexOf(xe)===-1)&&this.fire(new t.j(new Error(`Source layer "${xe}" does not exist on source "${Te.id}" as specified by style layer "${R.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let R in this.sourceCaches)if(!this.sourceCaches[R].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(R,ie=!1){let xe=this._serializedAllLayers();if(!R||R.length===0)return Object.values(ie?t.aB(xe):xe);let Te=[];for(let De of R)if(xe[De]){let ut=ie?t.aB(xe[De]):xe[De];Te.push(ut)}return Te}_serializedAllLayers(){let R=this._serializedLayers;if(R)return R;R=this._serializedLayers={};let ie=Object.keys(this._layers);for(let xe of ie){let Te=this._layers[xe];Te.type!=="custom"&&(R[xe]=Te.serialize())}return R}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let R in this.sourceCaches)if(this.sourceCaches[R].hasTransition())return!0;for(let R in this._layers)if(this._layers[R].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(R){if(!this._loaded)return;let ie=this._changed;if(ie){let Te=Object.keys(this._updatedLayers),De=Object.keys(this._removedLayers);(Te.length||De.length)&&this._updateWorkerLayers(Te,De);for(let ut in this._updatedSources){let _t=this._updatedSources[ut];if(_t==="reload")this._reloadSource(ut);else{if(_t!=="clear")throw new Error(`Invalid action ${_t}`);this._clearSource(ut)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let ut in this._updatedPaintProps)this._layers[ut].updateTransitions(R);this.light.updateTransitions(R),this.sky.updateTransitions(R),this._resetUpdates()}let xe={};for(let Te in this.sourceCaches){let De=this.sourceCaches[Te];xe[Te]=De.used,De.used=!1}for(let Te of this._order){let De=this._layers[Te];De.recalculate(R,this._availableImages),!De.isHidden(R.zoom)&&De.source&&(this.sourceCaches[De.source].used=!0)}for(let Te in xe){let De=this.sourceCaches[Te];!!xe[Te]!=!!De.used&&De.fire(new t.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:Te}))}this.light.recalculate(R),this.sky.recalculate(R),this.z=R.zoom,ie&&this.fire(new t.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let R=Object.keys(this._changedImages);if(R.length){for(let ie in this.sourceCaches)this.sourceCaches[ie].reloadTilesForDependencies(["icons","patterns"],R);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let R in this.sourceCaches)this.sourceCaches[R].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(R,ie){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(R,!1),removedIds:ie})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(R,ie={}){var xe;this._checkLoaded();let Te=this.serialize();if(R=ie.transformStyle?ie.transformStyle(Te,R):R,((xe=ie.validate)===null||xe===void 0||xe)&&Br(this,t.u(R)))return!1;(R=t.aB(R)).layers=t.az(R.layers);let De=t.aC(Te,R),ut=this._getOperationsToPerform(De);if(ut.unimplemented.length>0)throw new Error(`Unimplemented: ${ut.unimplemented.join(", ")}.`);if(ut.operations.length===0)return!1;for(let _t of ut.operations)_t();return this.stylesheet=R,this._serializedLayers=null,!0}_getOperationsToPerform(R){let ie=[],xe=[];for(let Te of R)switch(Te.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":ie.push(()=>this.addLayer.apply(this,Te.args));break;case"removeLayer":ie.push(()=>this.removeLayer.apply(this,Te.args));break;case"setPaintProperty":ie.push(()=>this.setPaintProperty.apply(this,Te.args));break;case"setLayoutProperty":ie.push(()=>this.setLayoutProperty.apply(this,Te.args));break;case"setFilter":ie.push(()=>this.setFilter.apply(this,Te.args));break;case"addSource":ie.push(()=>this.addSource.apply(this,Te.args));break;case"removeSource":ie.push(()=>this.removeSource.apply(this,Te.args));break;case"setLayerZoomRange":ie.push(()=>this.setLayerZoomRange.apply(this,Te.args));break;case"setLight":ie.push(()=>this.setLight.apply(this,Te.args));break;case"setGeoJSONSourceData":ie.push(()=>this.setGeoJSONSourceData.apply(this,Te.args));break;case"setGlyphs":ie.push(()=>this.setGlyphs.apply(this,Te.args));break;case"setSprite":ie.push(()=>this.setSprite.apply(this,Te.args));break;case"setSky":ie.push(()=>this.setSky.apply(this,Te.args));break;case"setTerrain":ie.push(()=>this.map.setTerrain.apply(this,Te.args));break;case"setTransition":ie.push(()=>{});break;default:xe.push(Te.command)}return{operations:ie,unimplemented:xe}}addImage(R,ie){if(this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" already exists.`)));this.imageManager.addImage(R,ie),this._afterImageUpdated(R)}updateImage(R,ie){this.imageManager.updateImage(R,ie)}getImage(R){return this.imageManager.getImage(R)}removeImage(R){if(!this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" does not exist.`)));this.imageManager.removeImage(R),this._afterImageUpdated(R)}_afterImageUpdated(R){this._availableImages=this.imageManager.listImages(),this._changedImages[R]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(R,ie,xe={}){if(this._checkLoaded(),this.sourceCaches[R]!==void 0)throw new Error(`Source "${R}" already exists.`);if(!ie.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(ie).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(ie.type)>=0&&this._validate(t.u.source,`sources.${R}`,ie,null,xe))return;this.map&&this.map._collectResourceTiming&&(ie.collectResourceTiming=!0);let Te=this.sourceCaches[R]=new Mt(R,ie,this.dispatcher);Te.style=this,Te.setEventedParent(this,()=>({isSourceLoaded:Te.loaded(),source:Te.serialize(),sourceId:R})),Te.onAdd(this.map),this._changed=!0}removeSource(R){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error("There is no source with this ID");for(let xe in this._layers)if(this._layers[xe].source===R)return this.fire(new t.j(new Error(`Source "${R}" cannot be removed while layer "${xe}" is using it.`)));let ie=this.sourceCaches[R];delete this.sourceCaches[R],delete this._updatedSources[R],ie.fire(new t.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:R})),ie.setEventedParent(null),ie.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(R,ie){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error(`There is no source with this ID=${R}`);let xe=this.sourceCaches[R].getSource();if(xe.type!=="geojson")throw new Error(`geojsonSource.type is ${xe.type}, which is !== 'geojson`);xe.setData(ie),this._changed=!0}getSource(R){return this.sourceCaches[R]&&this.sourceCaches[R].getSource()}addLayer(R,ie,xe={}){this._checkLoaded();let Te=R.id;if(this.getLayer(Te))return void this.fire(new t.j(new Error(`Layer "${Te}" already exists on this map.`)));let De;if(R.type==="custom"){if(Br(this,t.aD(R)))return;De=t.aA(R)}else{if("source"in R&&typeof R.source=="object"&&(this.addSource(Te,R.source),R=t.aB(R),R=t.e(R,{source:Te})),this._validate(t.u.layer,`layers.${Te}`,R,{arrayIndex:-1},xe))return;De=t.aA(R),this._validateLayer(De),De.setEventedParent(this,{layer:{id:Te}})}let ut=ie?this._order.indexOf(ie):this._order.length;if(ie&&ut===-1)this.fire(new t.j(new Error(`Cannot add layer "${Te}" before non-existing layer "${ie}".`)));else{if(this._order.splice(ut,0,Te),this._layerOrderChanged=!0,this._layers[Te]=De,this._removedLayers[Te]&&De.source&&De.type!=="custom"){let _t=this._removedLayers[Te];delete this._removedLayers[Te],_t.type!==De.type?this._updatedSources[De.source]="clear":(this._updatedSources[De.source]="reload",this.sourceCaches[De.source].pause())}this._updateLayer(De),De.onAdd&&De.onAdd(this.map)}}moveLayer(R,ie){if(this._checkLoaded(),this._changed=!0,!this._layers[R])return void this.fire(new t.j(new Error(`The layer '${R}' does not exist in the map's style and cannot be moved.`)));if(R===ie)return;let xe=this._order.indexOf(R);this._order.splice(xe,1);let Te=ie?this._order.indexOf(ie):this._order.length;ie&&Te===-1?this.fire(new t.j(new Error(`Cannot move layer "${R}" before non-existing layer "${ie}".`))):(this._order.splice(Te,0,R),this._layerOrderChanged=!0)}removeLayer(R){this._checkLoaded();let ie=this._layers[R];if(!ie)return void this.fire(new t.j(new Error(`Cannot remove non-existing layer "${R}".`)));ie.setEventedParent(null);let xe=this._order.indexOf(R);this._order.splice(xe,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[R]=ie,delete this._layers[R],this._serializedLayers&&delete this._serializedLayers[R],delete this._updatedLayers[R],delete this._updatedPaintProps[R],ie.onRemove&&ie.onRemove(this.map)}getLayer(R){return this._layers[R]}getLayersOrder(){return[...this._order]}hasLayer(R){return R in this._layers}setLayerZoomRange(R,ie,xe){this._checkLoaded();let Te=this.getLayer(R);Te?Te.minzoom===ie&&Te.maxzoom===xe||(ie!=null&&(Te.minzoom=ie),xe!=null&&(Te.maxzoom=xe),this._updateLayer(Te)):this.fire(new t.j(new Error(`Cannot set the zoom range of non-existing layer "${R}".`)))}setFilter(R,ie,xe={}){this._checkLoaded();let Te=this.getLayer(R);if(Te){if(!t.aE(Te.filter,ie))return ie==null?(Te.filter=void 0,void this._updateLayer(Te)):void(this._validate(t.u.filter,`layers.${Te.id}.filter`,ie,null,xe)||(Te.filter=t.aB(ie),this._updateLayer(Te)))}else this.fire(new t.j(new Error(`Cannot filter non-existing layer "${R}".`)))}getFilter(R){return t.aB(this.getLayer(R).filter)}setLayoutProperty(R,ie,xe,Te={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getLayoutProperty(ie),xe)||(De.setLayoutProperty(ie,xe,Te),this._updateLayer(De)):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getLayoutProperty(R,ie){let xe=this.getLayer(R);if(xe)return xe.getLayoutProperty(ie);this.fire(new t.j(new Error(`Cannot get style of non-existing layer "${R}".`)))}setPaintProperty(R,ie,xe,Te={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getPaintProperty(ie),xe)||(De.setPaintProperty(ie,xe,Te)&&this._updateLayer(De),this._changed=!0,this._updatedPaintProps[R]=!0,this._serializedLayers=null):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getPaintProperty(R,ie){return this.getLayer(R).getPaintProperty(ie)}setFeatureState(R,ie){this._checkLoaded();let xe=R.source,Te=R.sourceLayer,De=this.sourceCaches[xe];if(De===void 0)return void this.fire(new t.j(new Error(`The source '${xe}' does not exist in the map's style.`)));let ut=De.getSource().type;ut==="geojson"&&Te?this.fire(new t.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ut!=="vector"||Te?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),De.setFeatureState(Te,R.id,ie)):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(R,ie){this._checkLoaded();let xe=R.source,Te=this.sourceCaches[xe];if(Te===void 0)return void this.fire(new t.j(new Error(`The source '${xe}' does not exist in the map's style.`)));let De=Te.getSource().type,ut=De==="vector"?R.sourceLayer:void 0;De!=="vector"||ut?ie&&typeof R.id!="string"&&typeof R.id!="number"?this.fire(new t.j(new Error("A feature id is required to remove its specific state property."))):Te.removeFeatureState(ut,R.id,ie):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(R){this._checkLoaded();let ie=R.source,xe=R.sourceLayer,Te=this.sourceCaches[ie];if(Te!==void 0)return Te.getSource().type!=="vector"||xe?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),Te.getFeatureState(xe,R.id)):void this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.j(new Error(`The source '${ie}' does not exist in the map's style.`)))}getTransition(){return t.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let R=t.aF(this.sourceCaches,De=>De.serialize()),ie=this._serializeByIds(this._order,!0),xe=this.map.getTerrain()||void 0,Te=this.stylesheet;return t.aG({version:Te.version,name:Te.name,metadata:Te.metadata,light:Te.light,sky:Te.sky,center:Te.center,zoom:Te.zoom,bearing:Te.bearing,pitch:Te.pitch,sprite:Te.sprite,glyphs:Te.glyphs,transition:Te.transition,sources:R,layers:ie,terrain:xe},De=>De!==void 0)}_updateLayer(R){this._updatedLayers[R.id]=!0,R.source&&!this._updatedSources[R.source]&&this.sourceCaches[R.source].getSource().type!=="raster"&&(this._updatedSources[R.source]="reload",this.sourceCaches[R.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(R){let ie=ut=>this._layers[ut].type==="fill-extrusion",xe={},Te=[];for(let ut=this._order.length-1;ut>=0;ut--){let _t=this._order[ut];if(ie(_t)){xe[_t]=ut;for(let Rt of R){let Kt=Rt[_t];if(Kt)for(let fr of Kt)Te.push(fr)}}}Te.sort((ut,_t)=>_t.intersectionZ-ut.intersectionZ);let De=[];for(let ut=this._order.length-1;ut>=0;ut--){let _t=this._order[ut];if(ie(_t))for(let Rt=Te.length-1;Rt>=0;Rt--){let Kt=Te[Rt].feature;if(xe[Kt.layer.id]{let Sr=ct.featureSortOrder;if(Sr){let Wr=Sr.indexOf(or.featureIndex);return Sr.indexOf(vr.featureIndex)-Wr}return vr.featureIndex-or.featureIndex});for(let or of tr)Lt.push(or)}}for(let ct in qe)qe[ct].forEach(Tt=>{let gt=Tt.feature,Lt=Kt[_t[ct].source].getFeatureState(gt.layer["source-layer"],gt.id);gt.source=gt.layer.source,gt.layer["source-layer"]&&(gt.sourceLayer=gt.layer["source-layer"]),gt.state=Lt});return qe}(this._layers,ut,this.sourceCaches,R,ie,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(De)}querySourceFeatures(R,ie){ie&&ie.filter&&this._validate(t.u.filter,"querySourceFeatures.filter",ie.filter,null,ie);let xe=this.sourceCaches[R];return xe?function(Te,De){let ut=Te.getRenderableIds().map(Kt=>Te.getTileByID(Kt)),_t=[],Rt={};for(let Kt=0;Ktjr.getTileByID(ii)).sort((ii,qe)=>qe.tileID.overscaledZ-ii.tileID.overscaledZ||(ii.tileID.isLessThan(qe.tileID)?-1:1))}let dr=this.crossTileSymbolIndex.addLayer(fr,Rt[fr.source],R.center.lng);ut=ut||dr}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((De=De||this._layerOrderChanged||xe===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(n.now(),R.zoom))&&(this.pauseablePlacement=new pt(R,this.map.terrain,this._order,De,ie,xe,Te,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Rt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(n.now()),_t=!0),ut&&this.pauseablePlacement.placement.setStale()),_t||ut)for(let Kt of this._order){let fr=this._layers[Kt];fr.type==="symbol"&&this.placement.updateLayerOpacities(fr,Rt[fr.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(n.now())}_releaseSymbolFadeTiles(){for(let R in this.sourceCaches)this.sourceCaches[R].releaseSymbolFadeTiles()}getImages(R,ie){return t._(this,void 0,void 0,function*(){let xe=yield this.imageManager.getImages(ie.icons);this._updateTilesForChangedImages();let Te=this.sourceCaches[ie.source];return Te&&Te.setDependencies(ie.tileID.key,ie.type,ie.icons),xe})}getGlyphs(R,ie){return t._(this,void 0,void 0,function*(){let xe=yield this.glyphManager.getGlyphs(ie.stacks),Te=this.sourceCaches[ie.source];return Te&&Te.setDependencies(ie.tileID.key,ie.type,[""]),xe})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(R,ie={}){this._checkLoaded(),R&&this._validate(t.u.glyphs,"glyphs",R,null,ie)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=R,this.glyphManager.entries={},this.glyphManager.setURL(R))}addSprite(R,ie,xe={},Te){this._checkLoaded();let De=[{id:R,url:ie}],ut=[...b(this.stylesheet.sprite),...De];this._validate(t.u.sprite,"sprite",ut,null,xe)||(this.stylesheet.sprite=ut,this._loadSprite(De,!0,Te))}removeSprite(R){this._checkLoaded();let ie=b(this.stylesheet.sprite);if(ie.find(xe=>xe.id===R)){if(this._spritesImagesIds[R])for(let xe of this._spritesImagesIds[R])this.imageManager.removeImage(xe),this._changedImages[xe]=!0;ie.splice(ie.findIndex(xe=>xe.id===R),1),this.stylesheet.sprite=ie.length>0?ie:void 0,delete this._spritesImagesIds[R],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}else this.fire(new t.j(new Error(`Sprite "${R}" doesn't exists on this map.`)))}getSprite(){return b(this.stylesheet.sprite)}setSprite(R,ie={},xe){this._checkLoaded(),R&&this._validate(t.u.sprite,"sprite",R,null,ie)||(this.stylesheet.sprite=R,R?this._loadSprite(R,!0,xe):(this._unloadSprite(),xe&&xe(null)))}}var ci=t.Y([{name:"a_pos",type:"Int16",components:2}]);let mi={prelude:Et(`#ifdef GL_ES +precision mediump float; +#else +#if !defined(lowp) +#define lowp +#endif +#if !defined(mediump) +#define mediump +#endif +#if !defined(highp) +#define highp +#endif +#endif +`,`#ifdef GL_ES +precision highp float; +#else +#if !defined(lowp) +#define lowp +#endif +#if !defined(mediump) +#define mediump +#endif +#if !defined(highp) +#define highp +#endif +#endif +vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0 +);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;} +#ifdef TERRAIN3D +uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth; +#endif +const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) { +#ifdef TERRAIN3D +highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0)); +#else +return 1.0; +#endif +}float calculate_visibility(vec4 pos) { +#ifdef TERRAIN3D +vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0; +#else +return 1.0; +#endif +}float ele(vec2 pos) { +#ifdef TERRAIN3D +vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a; +#else +return 0.0; +#endif +}float get_elevation(vec2 pos) { +#ifdef TERRAIN3D +vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration; +#else +return 0.0; +#endif +}`),background:Et(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:Et(`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:Et(`varying vec3 v_data;varying float v_visibility; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define mediump float radius +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define highp vec4 stroke_color +#pragma mapbox: define mediump float stroke_width +#pragma mapbox: define lowp float stroke_opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize mediump float radius +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize highp vec4 stroke_color +#pragma mapbox: initialize mediump float stroke_width +#pragma mapbox: initialize lowp float stroke_opacity +vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define mediump float radius +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define highp vec4 stroke_color +#pragma mapbox: define mediump float stroke_width +#pragma mapbox: define lowp float stroke_opacity +void main(void) { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize mediump float radius +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize highp vec4 stroke_color +#pragma mapbox: initialize mediump float stroke_width +#pragma mapbox: initialize lowp float stroke_opacity +vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:Et("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:Et(`uniform highp float u_intensity;varying vec2 v_extrude; +#pragma mapbox: define highp float weight +#define GAUSS_COEF 0.3989422804014327 +void main() { +#pragma mapbox: initialize highp float weight +float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude; +#pragma mapbox: define highp float weight +#pragma mapbox: define mediump float radius +const highp float ZERO=1.0/255.0/16.0; +#define GAUSS_COEF 0.3989422804014327 +void main(void) { +#pragma mapbox: initialize highp float weight +#pragma mapbox: initialize mediump float radius +vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:Et(`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(0.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:Et("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:Et("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:Et("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:Et(`#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float opacity +gl_FragColor=color*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec2 a_pos;uniform mat4 u_matrix; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float opacity +gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:Et(`varying vec2 v_pos; +#pragma mapbox: define highp vec4 outline_color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 outline_color +#pragma mapbox: initialize lowp float opacity +float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos; +#pragma mapbox: define highp vec4 outline_color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 outline_color +#pragma mapbox: initialize lowp float opacity +gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:Et(`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillPattern:Et(`#ifdef GL_ES +precision highp float; +#endif +uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`),fillExtrusion:Et(`varying vec4 v_color;void main() {gl_FragColor=v_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed; +#ifdef TERRAIN3D +attribute vec2 a_centroid; +#endif +varying vec4 v_color; +#pragma mapbox: define highp float base +#pragma mapbox: define highp float height +#pragma mapbox: define highp vec4 color +void main() { +#pragma mapbox: initialize highp float base +#pragma mapbox: initialize highp float height +#pragma mapbox: initialize highp vec4 color +vec3 normal=a_normal_ed.xyz; +#ifdef TERRAIN3D +float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0); +#else +float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0; +#endif +base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`),fillExtrusionPattern:Et(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed; +#ifdef TERRAIN3D +attribute vec2 a_centroid; +#endif +varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to; +#ifdef TERRAIN3D +float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0); +#else +float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0; +#endif +base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0 +? a_pos +: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`),hillshadePrepare:Et(`#ifdef GL_ES +precision highp float; +#endif +uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:Et(`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent; +#define PI 3.141592653589793 +void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:Et(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_width2=vec2(outset,inset);}`),lineGradient:Et(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_width2=vec2(outset,inset);}`),linePattern:Et(`#ifdef GL_ES +precision highp float; +#endif +uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:Et(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`),raster:Et(`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:Et(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:Et(`#define SDF_PX 8.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:Et(`#define SDF_PX 8.0 +#define SDF 1.0 +#define ICON 0.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`),terrain:Et("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:Et("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:Et("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:Et("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function Et(Be,R){let ie=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,xe=R.match(/attribute ([\w]+) ([\w]+)/g),Te=Be.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),De=R.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ut=De?De.concat(Te):Te,_t={};return{fragmentSource:Be=Be.replace(ie,(Rt,Kt,fr,dr,jr)=>(_t[jr]=!0,Kt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +varying ${fr} ${dr} ${jr}; +#else +uniform ${fr} ${dr} u_${jr}; +#endif +`:` +#ifdef HAS_UNIFORM_u_${jr} + ${fr} ${dr} ${jr} = u_${jr}; +#endif +`)),vertexSource:R=R.replace(ie,(Rt,Kt,fr,dr,jr)=>{let ii=dr==="float"?"vec2":"vec4",qe=jr.match(/color/)?"color":ii;return _t[jr]?Kt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +uniform lowp float u_${jr}_t; +attribute ${fr} ${ii} a_${jr}; +varying ${fr} ${dr} ${jr}; +#else +uniform ${fr} ${dr} u_${jr}; +#endif +`:qe==="vec4"?` +#ifndef HAS_UNIFORM_u_${jr} + ${jr} = a_${jr}; +#else + ${fr} ${dr} ${jr} = u_${jr}; +#endif +`:` +#ifndef HAS_UNIFORM_u_${jr} + ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t); +#else + ${fr} ${dr} ${jr} = u_${jr}; +#endif +`:Kt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +uniform lowp float u_${jr}_t; +attribute ${fr} ${ii} a_${jr}; +#else +uniform ${fr} ${dr} u_${jr}; +#endif +`:qe==="vec4"?` +#ifndef HAS_UNIFORM_u_${jr} + ${fr} ${dr} ${jr} = a_${jr}; +#else + ${fr} ${dr} ${jr} = u_${jr}; +#endif +`:` +#ifndef HAS_UNIFORM_u_${jr} + ${fr} ${dr} ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t); +#else + ${fr} ${dr} ${jr} = u_${jr}; +#endif +`}),staticAttributes:xe,staticUniforms:ut}}class ar{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(R,ie,xe,Te,De,ut,_t,Rt,Kt){this.context=R;let fr=this.boundPaintVertexBuffers.length!==Te.length;for(let dr=0;!fr&&dr({u_matrix:Be,u_texture:0,u_ele_delta:R,u_fog_matrix:ie,u_fog_color:xe?xe.properties.get("fog-color"):t.aM.white,u_fog_ground_blend:xe?xe.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:xe?xe.calculateFogBlendOpacity(Te):0,u_horizon_color:xe?xe.properties.get("horizon-color"):t.aM.white,u_horizon_fog_blend:xe?xe.properties.get("horizon-fog-blend"):1});function ti(Be){let R=[];for(let ie=0;ie({u_depth:new t.aH(or,vr.u_depth),u_terrain:new t.aH(or,vr.u_terrain),u_terrain_dim:new t.aI(or,vr.u_terrain_dim),u_terrain_matrix:new t.aJ(or,vr.u_terrain_matrix),u_terrain_unpack:new t.aK(or,vr.u_terrain_unpack),u_terrain_exaggeration:new t.aI(or,vr.u_terrain_exaggeration)}))(R,tr),this.binderUniforms=xe?xe.getUniforms(R,tr):[]}draw(R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii,qe,Ye,nt,ct,Tt){let gt=R.gl;if(this.failedToCreate)return;if(R.program.set(this.program),R.setDepthMode(xe),R.setStencilMode(Te),R.setColorMode(De),R.setCullFace(ut),Rt){R.activeTexture.set(gt.TEXTURE2),gt.bindTexture(gt.TEXTURE_2D,Rt.depthTexture),R.activeTexture.set(gt.TEXTURE3),gt.bindTexture(gt.TEXTURE_2D,Rt.texture);for(let tr in this.terrainUniforms)this.terrainUniforms[tr].set(Rt[tr])}for(let tr in this.fixedUniforms)this.fixedUniforms[tr].set(_t[tr]);Ye&&Ye.setUniforms(R,this.binderUniforms,ii,{zoom:qe});let Lt=0;switch(ie){case gt.LINES:Lt=2;break;case gt.TRIANGLES:Lt=3;break;case gt.LINE_STRIP:Lt=1}for(let tr of jr.get()){let or=tr.vaos||(tr.vaos={});(or[Kt]||(or[Kt]=new ar)).bind(R,this,fr,Ye?Ye.getPaintVertexBuffers():[],dr,tr.vertexOffset,nt,ct,Tt),gt.drawElements(ie,tr.primitiveLength*Lt,gt.UNSIGNED_SHORT,tr.primitiveOffset*Lt*2)}}}function Gi(Be,R,ie){let xe=1/Pi(ie,1,R.transform.tileZoom),Te=Math.pow(2,ie.tileID.overscaledZ),De=ie.tileSize*Math.pow(2,R.transform.tileZoom)/Te,ut=De*(ie.tileID.canonical.x+ie.tileID.wrap*Te),_t=De*ie.tileID.canonical.y;return{u_image:0,u_texsize:ie.imageAtlasTexture.size,u_scale:[xe,Be.fromScale,Be.toScale],u_fade:Be.t,u_pixel_coord_upper:[ut>>16,_t>>16],u_pixel_coord_lower:[65535&ut,65535&_t]}}let Fi=(Be,R,ie,xe)=>{let Te=R.style.light,De=Te.properties.get("position"),ut=[De.x,De.y,De.z],_t=function(){var Kt=new t.A(9);return t.A!=Float32Array&&(Kt[1]=0,Kt[2]=0,Kt[3]=0,Kt[5]=0,Kt[6]=0,Kt[7]=0),Kt[0]=1,Kt[4]=1,Kt[8]=1,Kt}();Te.properties.get("anchor")==="viewport"&&function(Kt,fr){var dr=Math.sin(fr),jr=Math.cos(fr);Kt[0]=jr,Kt[1]=dr,Kt[2]=0,Kt[3]=-dr,Kt[4]=jr,Kt[5]=0,Kt[6]=0,Kt[7]=0,Kt[8]=1}(_t,-R.transform.angle),function(Kt,fr,dr){var jr=fr[0],ii=fr[1],qe=fr[2];Kt[0]=jr*dr[0]+ii*dr[3]+qe*dr[6],Kt[1]=jr*dr[1]+ii*dr[4]+qe*dr[7],Kt[2]=jr*dr[2]+ii*dr[5]+qe*dr[8]}(ut,ut,_t);let Rt=Te.properties.get("color");return{u_matrix:Be,u_lightpos:ut,u_lightintensity:Te.properties.get("intensity"),u_lightcolor:[Rt.r,Rt.g,Rt.b],u_vertical_gradient:+ie,u_opacity:xe}},xi=(Be,R,ie,xe,Te,De,ut)=>t.e(Fi(Be,R,ie,xe),Gi(De,R,ut),{u_height_factor:-Math.pow(2,Te.overscaledZ)/ut.tileSize/8}),Ii=Be=>({u_matrix:Be}),Bn=(Be,R,ie,xe)=>t.e(Ii(Be),Gi(ie,R,xe)),hn=(Be,R)=>({u_matrix:Be,u_world:R}),ba=(Be,R,ie,xe,Te)=>t.e(Bn(Be,R,ie,xe),{u_world:Te}),Aa=(Be,R,ie,xe)=>{let Te=Be.transform,De,ut;if(xe.paint.get("circle-pitch-alignment")==="map"){let _t=Pi(ie,1,Te.zoom);De=!0,ut=[_t,_t]}else De=!1,ut=Te.pixelsToGLUnits;return{u_camera_to_center_distance:Te.cameraToCenterDistance,u_scale_with_map:+(xe.paint.get("circle-pitch-scale")==="map"),u_matrix:Be.translatePosMatrix(R.posMatrix,ie,xe.paint.get("circle-translate"),xe.paint.get("circle-translate-anchor")),u_pitch_with_map:+De,u_device_pixel_ratio:Be.pixelRatio,u_extrude_scale:ut}},Va=(Be,R,ie)=>({u_matrix:Be,u_inv_matrix:R,u_camera_to_center_distance:ie.cameraToCenterDistance,u_viewport_size:[ie.width,ie.height]}),Qa=(Be,R,ie=1)=>({u_matrix:Be,u_color:R,u_overlay:0,u_overlay_scale:ie}),yo=Be=>({u_matrix:Be}),Ga=(Be,R,ie,xe)=>({u_matrix:Be,u_extrude_scale:Pi(R,1,ie),u_intensity:xe}),Yo=(Be,R,ie,xe)=>{let Te=t.H();t.aP(Te,0,Be.width,Be.height,0,0,1);let De=Be.context.gl;return{u_matrix:Te,u_world:[De.drawingBufferWidth,De.drawingBufferHeight],u_image:ie,u_color_ramp:xe,u_opacity:R.paint.get("heatmap-opacity")}};function da(Be,R){let ie=Math.pow(2,R.canonical.z),xe=R.canonical.y;return[new t.Z(0,xe/ie).toLngLat().lat,new t.Z(0,(xe+1)/ie).toLngLat().lat]}let vs=(Be,R,ie,xe)=>{let Te=Be.transform;return{u_matrix:Za(Be,R,ie,xe),u_ratio:1/Pi(R,1,Te.zoom),u_device_pixel_ratio:Be.pixelRatio,u_units_to_pixels:[1/Te.pixelsToGLUnits[0],1/Te.pixelsToGLUnits[1]]}},es=(Be,R,ie,xe,Te)=>t.e(vs(Be,R,ie,Te),{u_image:0,u_image_height:xe}),bs=(Be,R,ie,xe,Te)=>{let De=Be.transform,ut=Bo(R,De);return{u_matrix:Za(Be,R,ie,Te),u_texsize:R.imageAtlasTexture.size,u_ratio:1/Pi(R,1,De.zoom),u_device_pixel_ratio:Be.pixelRatio,u_image:0,u_scale:[ut,xe.fromScale,xe.toScale],u_fade:xe.t,u_units_to_pixels:[1/De.pixelsToGLUnits[0],1/De.pixelsToGLUnits[1]]}},Xa=(Be,R,ie,xe,Te,De)=>{let ut=Be.lineAtlas,_t=Bo(R,Be.transform),Rt=ie.layout.get("line-cap")==="round",Kt=ut.getDash(xe.from,Rt),fr=ut.getDash(xe.to,Rt),dr=Kt.width*Te.fromScale,jr=fr.width*Te.toScale;return t.e(vs(Be,R,ie,De),{u_patternscale_a:[_t/dr,-Kt.height/2],u_patternscale_b:[_t/jr,-fr.height/2],u_sdfgamma:ut.width/(256*Math.min(dr,jr)*Be.pixelRatio)/2,u_image:0,u_tex_y_a:Kt.y,u_tex_y_b:fr.y,u_mix:Te.t})};function Bo(Be,R){return 1/Pi(Be,1,R.tileZoom)}function Za(Be,R,ie,xe){return Be.translatePosMatrix(xe?xe.posMatrix:R.tileID.posMatrix,R,ie.paint.get("line-translate"),ie.paint.get("line-translate-anchor"))}let Qo=(Be,R,ie,xe,Te)=>{return{u_matrix:Be,u_tl_parent:R,u_scale_parent:ie,u_buffer_scale:1,u_fade_t:xe.mix,u_opacity:xe.opacity*Te.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:Te.paint.get("raster-brightness-min"),u_brightness_high:Te.paint.get("raster-brightness-max"),u_saturation_factor:(ut=Te.paint.get("raster-saturation"),ut>0?1-1/(1.001-ut):-ut),u_contrast_factor:(De=Te.paint.get("raster-contrast"),De>0?1/(1-De):1+De),u_spin_weights:ss(Te.paint.get("raster-hue-rotate"))};var De,ut};function ss(Be){Be*=Math.PI/180;let R=Math.sin(Be),ie=Math.cos(Be);return[(2*ie+1)/3,(-Math.sqrt(3)*R-ie+1)/3,(Math.sqrt(3)*R-ie+1)/3]}let gs=(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii)=>{let qe=ut.transform;return{u_is_size_zoom_constant:+(Be==="constant"||Be==="source"),u_is_size_feature_constant:+(Be==="constant"||Be==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:qe.cameraToCenterDistance,u_pitch:qe.pitch/360*2*Math.PI,u_rotate_symbol:+ie,u_aspect_ratio:qe.width/qe.height,u_fade_change:ut.options.fadeDuration?ut.symbolFadeChange:1,u_matrix:_t,u_label_plane_matrix:Rt,u_coord_matrix:Kt,u_is_text:+dr,u_pitch_with_map:+xe,u_is_along_line:Te,u_is_variable_anchor:De,u_texsize:jr,u_texture:0,u_translation:fr,u_pitched_scale:ii}},vo=(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii,qe)=>{let Ye=ut.transform;return t.e(gs(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,qe),{u_gamma_scale:xe?Math.cos(Ye._pitch)*Ye.cameraToCenterDistance:1,u_device_pixel_ratio:ut.pixelRatio,u_is_halo:+ii})},zo=(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,dr,jr,ii)=>t.e(vo(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt,fr,!0,dr,!0,ii),{u_texsize_icon:jr,u_texture_icon:1}),Ds=(Be,R,ie)=>({u_matrix:Be,u_opacity:R,u_color:ie}),Hs=(Be,R,ie,xe,Te,De)=>t.e(function(ut,_t,Rt,Kt){let fr=Rt.imageManager.getPattern(ut.from.toString()),dr=Rt.imageManager.getPattern(ut.to.toString()),{width:jr,height:ii}=Rt.imageManager.getPixelSize(),qe=Math.pow(2,Kt.tileID.overscaledZ),Ye=Kt.tileSize*Math.pow(2,Rt.transform.tileZoom)/qe,nt=Ye*(Kt.tileID.canonical.x+Kt.tileID.wrap*qe),ct=Ye*Kt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:fr.tl,u_pattern_br_a:fr.br,u_pattern_tl_b:dr.tl,u_pattern_br_b:dr.br,u_texsize:[jr,ii],u_mix:_t.t,u_pattern_size_a:fr.displaySize,u_pattern_size_b:dr.displaySize,u_scale_a:_t.fromScale,u_scale_b:_t.toScale,u_tile_units_to_pixels:1/Pi(Kt,1,Rt.transform.tileZoom),u_pixel_coord_upper:[nt>>16,ct>>16],u_pixel_coord_lower:[65535&nt,65535&ct]}}(xe,De,ie,Te),{u_matrix:Be,u_opacity:R}),Zs={fillExtrusion:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_lightpos:new t.aN(Be,R.u_lightpos),u_lightintensity:new t.aI(Be,R.u_lightintensity),u_lightcolor:new t.aN(Be,R.u_lightcolor),u_vertical_gradient:new t.aI(Be,R.u_vertical_gradient),u_opacity:new t.aI(Be,R.u_opacity)}),fillExtrusionPattern:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_lightpos:new t.aN(Be,R.u_lightpos),u_lightintensity:new t.aI(Be,R.u_lightintensity),u_lightcolor:new t.aN(Be,R.u_lightcolor),u_vertical_gradient:new t.aI(Be,R.u_vertical_gradient),u_height_factor:new t.aI(Be,R.u_height_factor),u_image:new t.aH(Be,R.u_image),u_texsize:new t.aO(Be,R.u_texsize),u_pixel_coord_upper:new t.aO(Be,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Be,R.u_pixel_coord_lower),u_scale:new t.aN(Be,R.u_scale),u_fade:new t.aI(Be,R.u_fade),u_opacity:new t.aI(Be,R.u_opacity)}),fill:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix)}),fillPattern:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_image:new t.aH(Be,R.u_image),u_texsize:new t.aO(Be,R.u_texsize),u_pixel_coord_upper:new t.aO(Be,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Be,R.u_pixel_coord_lower),u_scale:new t.aN(Be,R.u_scale),u_fade:new t.aI(Be,R.u_fade)}),fillOutline:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_world:new t.aO(Be,R.u_world)}),fillOutlinePattern:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_world:new t.aO(Be,R.u_world),u_image:new t.aH(Be,R.u_image),u_texsize:new t.aO(Be,R.u_texsize),u_pixel_coord_upper:new t.aO(Be,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Be,R.u_pixel_coord_lower),u_scale:new t.aN(Be,R.u_scale),u_fade:new t.aI(Be,R.u_fade)}),circle:(Be,R)=>({u_camera_to_center_distance:new t.aI(Be,R.u_camera_to_center_distance),u_scale_with_map:new t.aH(Be,R.u_scale_with_map),u_pitch_with_map:new t.aH(Be,R.u_pitch_with_map),u_extrude_scale:new t.aO(Be,R.u_extrude_scale),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_matrix:new t.aJ(Be,R.u_matrix)}),collisionBox:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_pixel_extrude_scale:new t.aO(Be,R.u_pixel_extrude_scale)}),collisionCircle:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_inv_matrix:new t.aJ(Be,R.u_inv_matrix),u_camera_to_center_distance:new t.aI(Be,R.u_camera_to_center_distance),u_viewport_size:new t.aO(Be,R.u_viewport_size)}),debug:(Be,R)=>({u_color:new t.aL(Be,R.u_color),u_matrix:new t.aJ(Be,R.u_matrix),u_overlay:new t.aH(Be,R.u_overlay),u_overlay_scale:new t.aI(Be,R.u_overlay_scale)}),clippingMask:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix)}),heatmap:(Be,R)=>({u_extrude_scale:new t.aI(Be,R.u_extrude_scale),u_intensity:new t.aI(Be,R.u_intensity),u_matrix:new t.aJ(Be,R.u_matrix)}),heatmapTexture:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_world:new t.aO(Be,R.u_world),u_image:new t.aH(Be,R.u_image),u_color_ramp:new t.aH(Be,R.u_color_ramp),u_opacity:new t.aI(Be,R.u_opacity)}),hillshade:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_image:new t.aH(Be,R.u_image),u_latrange:new t.aO(Be,R.u_latrange),u_light:new t.aO(Be,R.u_light),u_shadow:new t.aL(Be,R.u_shadow),u_highlight:new t.aL(Be,R.u_highlight),u_accent:new t.aL(Be,R.u_accent)}),hillshadePrepare:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_image:new t.aH(Be,R.u_image),u_dimension:new t.aO(Be,R.u_dimension),u_zoom:new t.aI(Be,R.u_zoom),u_unpack:new t.aK(Be,R.u_unpack)}),line:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_ratio:new t.aI(Be,R.u_ratio),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Be,R.u_units_to_pixels)}),lineGradient:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_ratio:new t.aI(Be,R.u_ratio),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Be,R.u_units_to_pixels),u_image:new t.aH(Be,R.u_image),u_image_height:new t.aI(Be,R.u_image_height)}),linePattern:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_texsize:new t.aO(Be,R.u_texsize),u_ratio:new t.aI(Be,R.u_ratio),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_image:new t.aH(Be,R.u_image),u_units_to_pixels:new t.aO(Be,R.u_units_to_pixels),u_scale:new t.aN(Be,R.u_scale),u_fade:new t.aI(Be,R.u_fade)}),lineSDF:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_ratio:new t.aI(Be,R.u_ratio),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Be,R.u_units_to_pixels),u_patternscale_a:new t.aO(Be,R.u_patternscale_a),u_patternscale_b:new t.aO(Be,R.u_patternscale_b),u_sdfgamma:new t.aI(Be,R.u_sdfgamma),u_image:new t.aH(Be,R.u_image),u_tex_y_a:new t.aI(Be,R.u_tex_y_a),u_tex_y_b:new t.aI(Be,R.u_tex_y_b),u_mix:new t.aI(Be,R.u_mix)}),raster:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_tl_parent:new t.aO(Be,R.u_tl_parent),u_scale_parent:new t.aI(Be,R.u_scale_parent),u_buffer_scale:new t.aI(Be,R.u_buffer_scale),u_fade_t:new t.aI(Be,R.u_fade_t),u_opacity:new t.aI(Be,R.u_opacity),u_image0:new t.aH(Be,R.u_image0),u_image1:new t.aH(Be,R.u_image1),u_brightness_low:new t.aI(Be,R.u_brightness_low),u_brightness_high:new t.aI(Be,R.u_brightness_high),u_saturation_factor:new t.aI(Be,R.u_saturation_factor),u_contrast_factor:new t.aI(Be,R.u_contrast_factor),u_spin_weights:new t.aN(Be,R.u_spin_weights)}),symbolIcon:(Be,R)=>({u_is_size_zoom_constant:new t.aH(Be,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Be,R.u_is_size_feature_constant),u_size_t:new t.aI(Be,R.u_size_t),u_size:new t.aI(Be,R.u_size),u_camera_to_center_distance:new t.aI(Be,R.u_camera_to_center_distance),u_pitch:new t.aI(Be,R.u_pitch),u_rotate_symbol:new t.aH(Be,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Be,R.u_aspect_ratio),u_fade_change:new t.aI(Be,R.u_fade_change),u_matrix:new t.aJ(Be,R.u_matrix),u_label_plane_matrix:new t.aJ(Be,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Be,R.u_coord_matrix),u_is_text:new t.aH(Be,R.u_is_text),u_pitch_with_map:new t.aH(Be,R.u_pitch_with_map),u_is_along_line:new t.aH(Be,R.u_is_along_line),u_is_variable_anchor:new t.aH(Be,R.u_is_variable_anchor),u_texsize:new t.aO(Be,R.u_texsize),u_texture:new t.aH(Be,R.u_texture),u_translation:new t.aO(Be,R.u_translation),u_pitched_scale:new t.aI(Be,R.u_pitched_scale)}),symbolSDF:(Be,R)=>({u_is_size_zoom_constant:new t.aH(Be,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Be,R.u_is_size_feature_constant),u_size_t:new t.aI(Be,R.u_size_t),u_size:new t.aI(Be,R.u_size),u_camera_to_center_distance:new t.aI(Be,R.u_camera_to_center_distance),u_pitch:new t.aI(Be,R.u_pitch),u_rotate_symbol:new t.aH(Be,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Be,R.u_aspect_ratio),u_fade_change:new t.aI(Be,R.u_fade_change),u_matrix:new t.aJ(Be,R.u_matrix),u_label_plane_matrix:new t.aJ(Be,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Be,R.u_coord_matrix),u_is_text:new t.aH(Be,R.u_is_text),u_pitch_with_map:new t.aH(Be,R.u_pitch_with_map),u_is_along_line:new t.aH(Be,R.u_is_along_line),u_is_variable_anchor:new t.aH(Be,R.u_is_variable_anchor),u_texsize:new t.aO(Be,R.u_texsize),u_texture:new t.aH(Be,R.u_texture),u_gamma_scale:new t.aI(Be,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_is_halo:new t.aH(Be,R.u_is_halo),u_translation:new t.aO(Be,R.u_translation),u_pitched_scale:new t.aI(Be,R.u_pitched_scale)}),symbolTextAndIcon:(Be,R)=>({u_is_size_zoom_constant:new t.aH(Be,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Be,R.u_is_size_feature_constant),u_size_t:new t.aI(Be,R.u_size_t),u_size:new t.aI(Be,R.u_size),u_camera_to_center_distance:new t.aI(Be,R.u_camera_to_center_distance),u_pitch:new t.aI(Be,R.u_pitch),u_rotate_symbol:new t.aH(Be,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Be,R.u_aspect_ratio),u_fade_change:new t.aI(Be,R.u_fade_change),u_matrix:new t.aJ(Be,R.u_matrix),u_label_plane_matrix:new t.aJ(Be,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Be,R.u_coord_matrix),u_is_text:new t.aH(Be,R.u_is_text),u_pitch_with_map:new t.aH(Be,R.u_pitch_with_map),u_is_along_line:new t.aH(Be,R.u_is_along_line),u_is_variable_anchor:new t.aH(Be,R.u_is_variable_anchor),u_texsize:new t.aO(Be,R.u_texsize),u_texsize_icon:new t.aO(Be,R.u_texsize_icon),u_texture:new t.aH(Be,R.u_texture),u_texture_icon:new t.aH(Be,R.u_texture_icon),u_gamma_scale:new t.aI(Be,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Be,R.u_device_pixel_ratio),u_is_halo:new t.aH(Be,R.u_is_halo),u_translation:new t.aO(Be,R.u_translation),u_pitched_scale:new t.aI(Be,R.u_pitched_scale)}),background:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_opacity:new t.aI(Be,R.u_opacity),u_color:new t.aL(Be,R.u_color)}),backgroundPattern:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_opacity:new t.aI(Be,R.u_opacity),u_image:new t.aH(Be,R.u_image),u_pattern_tl_a:new t.aO(Be,R.u_pattern_tl_a),u_pattern_br_a:new t.aO(Be,R.u_pattern_br_a),u_pattern_tl_b:new t.aO(Be,R.u_pattern_tl_b),u_pattern_br_b:new t.aO(Be,R.u_pattern_br_b),u_texsize:new t.aO(Be,R.u_texsize),u_mix:new t.aI(Be,R.u_mix),u_pattern_size_a:new t.aO(Be,R.u_pattern_size_a),u_pattern_size_b:new t.aO(Be,R.u_pattern_size_b),u_scale_a:new t.aI(Be,R.u_scale_a),u_scale_b:new t.aI(Be,R.u_scale_b),u_pixel_coord_upper:new t.aO(Be,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Be,R.u_pixel_coord_lower),u_tile_units_to_pixels:new t.aI(Be,R.u_tile_units_to_pixels)}),terrain:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_texture:new t.aH(Be,R.u_texture),u_ele_delta:new t.aI(Be,R.u_ele_delta),u_fog_matrix:new t.aJ(Be,R.u_fog_matrix),u_fog_color:new t.aL(Be,R.u_fog_color),u_fog_ground_blend:new t.aI(Be,R.u_fog_ground_blend),u_fog_ground_blend_opacity:new t.aI(Be,R.u_fog_ground_blend_opacity),u_horizon_color:new t.aL(Be,R.u_horizon_color),u_horizon_fog_blend:new t.aI(Be,R.u_horizon_fog_blend)}),terrainDepth:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_ele_delta:new t.aI(Be,R.u_ele_delta)}),terrainCoords:(Be,R)=>({u_matrix:new t.aJ(Be,R.u_matrix),u_texture:new t.aH(Be,R.u_texture),u_terrain_coords_id:new t.aI(Be,R.u_terrain_coords_id),u_ele_delta:new t.aI(Be,R.u_ele_delta)}),sky:(Be,R)=>({u_sky_color:new t.aL(Be,R.u_sky_color),u_horizon_color:new t.aL(Be,R.u_horizon_color),u_horizon:new t.aI(Be,R.u_horizon),u_sky_horizon_blend:new t.aI(Be,R.u_sky_horizon_blend)})};class ps{constructor(R,ie,xe){this.context=R;let Te=R.gl;this.buffer=Te.createBuffer(),this.dynamicDraw=!!xe,this.context.unbindVAO(),R.bindElementBuffer.set(this.buffer),Te.bufferData(Te.ELEMENT_ARRAY_BUFFER,ie.arrayBuffer,this.dynamicDraw?Te.DYNAMIC_DRAW:Te.STATIC_DRAW),this.dynamicDraw||delete ie.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(R){let ie=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),ie.bufferSubData(ie.ELEMENT_ARRAY_BUFFER,0,R.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let bn={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Ra{constructor(R,ie,xe,Te){this.length=ie.length,this.attributes=xe,this.itemSize=ie.bytesPerElement,this.dynamicDraw=Te,this.context=R;let De=R.gl;this.buffer=De.createBuffer(),R.bindVertexBuffer.set(this.buffer),De.bufferData(De.ARRAY_BUFFER,ie.arrayBuffer,this.dynamicDraw?De.DYNAMIC_DRAW:De.STATIC_DRAW),this.dynamicDraw||delete ie.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(R){if(R.length!==this.length)throw new Error(`Length of new data is ${R.length}, which doesn't match current length of ${this.length}`);let ie=this.context.gl;this.bind(),ie.bufferSubData(ie.ARRAY_BUFFER,0,R.arrayBuffer)}enableAttributes(R,ie){for(let xe=0;xe0){let or=t.H();t.aQ(or,gt.placementInvProjMatrix,Be.transform.glCoordMatrix),t.aQ(or,or,gt.placementViewportMatrix),Rt.push({circleArray:tr,circleOffset:fr,transform:Tt.posMatrix,invTransform:or,coord:Tt}),Kt+=tr.length/4,fr=Kt}Lt&&_t.draw(De,ut.LINES,ys.disabled,Us.disabled,Be.colorModeForRenderPass(),Wo.disabled,{u_matrix:Tt.posMatrix,u_pixel_extrude_scale:[1/(dr=Be.transform).width,1/dr.height]},Be.style.map.terrain&&Be.style.map.terrain.getTerrainData(Tt),ie.id,Lt.layoutVertexBuffer,Lt.indexBuffer,Lt.segments,null,Be.transform.zoom,null,null,Lt.collisionVertexBuffer)}var dr;if(!Te||!Rt.length)return;let jr=Be.useProgram("collisionCircle"),ii=new t.aR;ii.resize(4*Kt),ii._trim();let qe=0;for(let ct of Rt)for(let Tt=0;Tt=0&&(ct[gt.associatedIconIndex]={shiftedAnchor:ma,angle:eo})}else Wt(gt.numGlyphs,Ye)}if(Kt){nt.clear();let Tt=Be.icon.placedSymbolArray;for(let gt=0;gtBe.style.map.terrain.getElevation(Ai,It,sr):null,Jt=ie.layout.get("text-rotation-alignment")==="map";Ne(on,Ai.posMatrix,Be,Te,iu,_u,ct,Kt,Jt,Ye,Ai.toUnwrapped(),qe.width,qe.height,Il,xt)}let Ql=Ai.posMatrix,eu=Te&&Sr||Lc,de=Tt||eu?yu:iu,Re=Yu,Ke=qn&&ie.paint.get(Te?"text-halo-width":"icon-halo-width").constantOr(1)!==0,ft;ft=qn?on.iconsInText?zo(ma.kind,Do,gt,ct,Tt,eu,Be,Ql,de,Re,Il,Oo,ll,yi):vo(ma.kind,Do,gt,ct,Tt,eu,Be,Ql,de,Re,Il,Te,Oo,!0,yi):gs(ma.kind,Do,gt,ct,Tt,eu,Be,Ql,de,Re,Il,Te,Oo,yi);let dt={program:ja,buffers:Mn,uniformValues:ft,atlasTexture:as,atlasTextureIcon:cs,atlasInterpolation:Ms,atlasInterpolationIcon:pl,isSDF:qn,hasHalo:Ke};if(tr&&on.canOverlap){or=!0;let xt=Mn.segments.get();for(let Jt of xt)Wr.push({segments:new t.a0([Jt]),sortKey:Jt.sortKey,state:dt,terrainData:_s})}else Wr.push({segments:Mn.segments,sortKey:0,state:dt,terrainData:_s})}or&&Wr.sort((Ai,Oi)=>Ai.sortKey-Oi.sortKey);for(let Ai of Wr){let Oi=Ai.state;if(jr.activeTexture.set(ii.TEXTURE0),Oi.atlasTexture.bind(Oi.atlasInterpolation,ii.CLAMP_TO_EDGE),Oi.atlasTextureIcon&&(jr.activeTexture.set(ii.TEXTURE1),Oi.atlasTextureIcon&&Oi.atlasTextureIcon.bind(Oi.atlasInterpolationIcon,ii.CLAMP_TO_EDGE)),Oi.isSDF){let on=Oi.uniformValues;Oi.hasHalo&&(on.u_is_halo=1,jf(Oi.buffers,Ai.segments,ie,Be,Oi.program,vr,fr,dr,on,Ai.terrainData)),on.u_is_halo=0}jf(Oi.buffers,Ai.segments,ie,Be,Oi.program,vr,fr,dr,Oi.uniformValues,Ai.terrainData)}}function jf(Be,R,ie,xe,Te,De,ut,_t,Rt,Kt){let fr=xe.context;Te.draw(fr,fr.gl.TRIANGLES,De,ut,_t,Wo.disabled,Rt,Kt,ie.id,Be.layoutVertexBuffer,Be.indexBuffer,R,ie.paint,xe.transform.zoom,Be.programConfigurations.get(ie.id),Be.dynamicLayoutVertexBuffer,Be.opacityVertexBuffer)}function Cf(Be,R,ie,xe){let Te=Be.context,De=Te.gl,ut=Us.disabled,_t=new hl([De.ONE,De.ONE],t.aM.transparent,[!0,!0,!0,!0]),Rt=R.getBucket(ie);if(!Rt)return;let Kt=xe.key,fr=ie.heatmapFbos.get(Kt);fr||(fr=Vf(Te,R.tileSize,R.tileSize),ie.heatmapFbos.set(Kt,fr)),Te.bindFramebuffer.set(fr.framebuffer),Te.viewport.set([0,0,R.tileSize,R.tileSize]),Te.clear({color:t.aM.transparent});let dr=Rt.programConfigurations.get(ie.id),jr=Be.useProgram("heatmap",dr),ii=Be.style.map.terrain.getTerrainData(xe);jr.draw(Te,De.TRIANGLES,ys.disabled,ut,_t,Wo.disabled,Ga(xe.posMatrix,R,Be.transform.zoom,ie.paint.get("heatmap-intensity")),ii,ie.id,Rt.layoutVertexBuffer,Rt.indexBuffer,Rt.segments,ie.paint,Be.transform.zoom,dr)}function Jc(Be,R,ie){let xe=Be.context,Te=xe.gl;xe.setColorMode(Be.colorModeForRenderPass());let De=ih(xe,R),ut=ie.key,_t=R.heatmapFbos.get(ut);_t&&(xe.activeTexture.set(Te.TEXTURE0),Te.bindTexture(Te.TEXTURE_2D,_t.colorAttachment.get()),xe.activeTexture.set(Te.TEXTURE1),De.bind(Te.LINEAR,Te.CLAMP_TO_EDGE),Be.useProgram("heatmapTexture").draw(xe,Te.TRIANGLES,ys.disabled,Us.disabled,Be.colorModeForRenderPass(),Wo.disabled,Yo(Be,R,0,1),null,R.id,Be.rasterBoundsBuffer,Be.quadTriangleIndexBuffer,Be.rasterBoundsSegments,R.paint,Be.transform.zoom),_t.destroy(),R.heatmapFbos.delete(ut))}function Vf(Be,R,ie){var xe,Te;let De=Be.gl,ut=De.createTexture();De.bindTexture(De.TEXTURE_2D,ut),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,De.LINEAR),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,De.LINEAR);let _t=(xe=Be.HALF_FLOAT)!==null&&xe!==void 0?xe:De.UNSIGNED_BYTE,Rt=(Te=Be.RGBA16F)!==null&&Te!==void 0?Te:De.RGBA;De.texImage2D(De.TEXTURE_2D,0,Rt,R,ie,0,De.RGBA,_t,null);let Kt=Be.createFramebuffer(R,ie,!1,!1);return Kt.colorAttachment.set(ut),Kt}function ih(Be,R){return R.colorRampTexture||(R.colorRampTexture=new u(Be,R.colorRamp,Be.gl.RGBA)),R.colorRampTexture}function rc(Be,R,ie,xe,Te){if(!ie||!xe||!xe.imageAtlas)return;let De=xe.imageAtlas.patternPositions,ut=De[ie.to.toString()],_t=De[ie.from.toString()];if(!ut&&_t&&(ut=_t),!_t&&ut&&(_t=ut),!ut||!_t){let Rt=Te.getPaintProperty(R);ut=De[Rt],_t=De[Rt]}ut&&_t&&Be.setConstantPatternPositions(ut,_t)}function Lf(Be,R,ie,xe,Te,De,ut){let _t=Be.context.gl,Rt="fill-pattern",Kt=ie.paint.get(Rt),fr=Kt&&Kt.constantOr(1),dr=ie.getCrossfadeParameters(),jr,ii,qe,Ye,nt;ut?(ii=fr&&!ie.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",jr=_t.LINES):(ii=fr?"fillPattern":"fill",jr=_t.TRIANGLES);let ct=Kt.constantOr(null);for(let Tt of xe){let gt=R.getTile(Tt);if(fr&&!gt.patternsLoaded())continue;let Lt=gt.getBucket(ie);if(!Lt)continue;let tr=Lt.programConfigurations.get(ie.id),or=Be.useProgram(ii,tr),vr=Be.style.map.terrain&&Be.style.map.terrain.getTerrainData(Tt);fr&&(Be.context.activeTexture.set(_t.TEXTURE0),gt.imageAtlasTexture.bind(_t.LINEAR,_t.CLAMP_TO_EDGE),tr.updatePaintBuffers(dr)),rc(tr,Rt,ct,gt,ie);let Sr=vr?Tt:null,Wr=Be.translatePosMatrix(Sr?Sr.posMatrix:Tt.posMatrix,gt,ie.paint.get("fill-translate"),ie.paint.get("fill-translate-anchor"));if(ut){Ye=Lt.indexBuffer2,nt=Lt.segments2;let yi=[_t.drawingBufferWidth,_t.drawingBufferHeight];qe=ii==="fillOutlinePattern"&&fr?ba(Wr,Be,dr,gt,yi):hn(Wr,yi)}else Ye=Lt.indexBuffer,nt=Lt.segments,qe=fr?Bn(Wr,Be,dr,gt):Ii(Wr);or.draw(Be.context,jr,Te,Be.stencilModeForClipping(Tt),De,Wo.disabled,qe,vr,ie.id,Lt.layoutVertexBuffer,Ye,nt,ie.paint,Be.transform.zoom,tr)}}function Oc(Be,R,ie,xe,Te,De,ut){let _t=Be.context,Rt=_t.gl,Kt="fill-extrusion-pattern",fr=ie.paint.get(Kt),dr=fr.constantOr(1),jr=ie.getCrossfadeParameters(),ii=ie.paint.get("fill-extrusion-opacity"),qe=fr.constantOr(null);for(let Ye of xe){let nt=R.getTile(Ye),ct=nt.getBucket(ie);if(!ct)continue;let Tt=Be.style.map.terrain&&Be.style.map.terrain.getTerrainData(Ye),gt=ct.programConfigurations.get(ie.id),Lt=Be.useProgram(dr?"fillExtrusionPattern":"fillExtrusion",gt);dr&&(Be.context.activeTexture.set(Rt.TEXTURE0),nt.imageAtlasTexture.bind(Rt.LINEAR,Rt.CLAMP_TO_EDGE),gt.updatePaintBuffers(jr)),rc(gt,Kt,qe,nt,ie);let tr=Be.translatePosMatrix(Ye.posMatrix,nt,ie.paint.get("fill-extrusion-translate"),ie.paint.get("fill-extrusion-translate-anchor")),or=ie.paint.get("fill-extrusion-vertical-gradient"),vr=dr?xi(tr,Be,or,ii,Ye,jr,nt):Fi(tr,Be,or,ii);Lt.draw(_t,_t.gl.TRIANGLES,Te,De,ut,Wo.backCCW,vr,Tt,ie.id,ct.layoutVertexBuffer,ct.indexBuffer,ct.segments,ie.paint,Be.transform.zoom,gt,Be.style.map.terrain&&ct.centroidVertexBuffer)}}function Qc(Be,R,ie,xe,Te,De,ut){let _t=Be.context,Rt=_t.gl,Kt=ie.fbo;if(!Kt)return;let fr=Be.useProgram("hillshade"),dr=Be.style.map.terrain&&Be.style.map.terrain.getTerrainData(R);_t.activeTexture.set(Rt.TEXTURE0),Rt.bindTexture(Rt.TEXTURE_2D,Kt.colorAttachment.get()),fr.draw(_t,Rt.TRIANGLES,Te,De,ut,Wo.disabled,((jr,ii,qe,Ye)=>{let nt=qe.paint.get("hillshade-shadow-color"),ct=qe.paint.get("hillshade-highlight-color"),Tt=qe.paint.get("hillshade-accent-color"),gt=qe.paint.get("hillshade-illumination-direction")*(Math.PI/180);qe.paint.get("hillshade-illumination-anchor")==="viewport"&&(gt-=jr.transform.angle);let Lt=!jr.options.moving;return{u_matrix:Ye?Ye.posMatrix:jr.transform.calculatePosMatrix(ii.tileID.toUnwrapped(),Lt),u_image:0,u_latrange:da(0,ii.tileID),u_light:[qe.paint.get("hillshade-exaggeration"),gt],u_shadow:nt,u_highlight:ct,u_accent:Tt}})(Be,ie,xe,dr?R:null),dr,xe.id,Be.rasterBoundsBuffer,Be.quadTriangleIndexBuffer,Be.rasterBoundsSegments)}function Pu(Be,R,ie,xe,Te,De){let ut=Be.context,_t=ut.gl,Rt=R.dem;if(Rt&&Rt.data){let Kt=Rt.dim,fr=Rt.stride,dr=Rt.getPixels();if(ut.activeTexture.set(_t.TEXTURE1),ut.pixelStoreUnpackPremultiplyAlpha.set(!1),R.demTexture=R.demTexture||Be.getTileTexture(fr),R.demTexture){let ii=R.demTexture;ii.update(dr,{premultiply:!1}),ii.bind(_t.NEAREST,_t.CLAMP_TO_EDGE)}else R.demTexture=new u(ut,dr,_t.RGBA,{premultiply:!1}),R.demTexture.bind(_t.NEAREST,_t.CLAMP_TO_EDGE);ut.activeTexture.set(_t.TEXTURE0);let jr=R.fbo;if(!jr){let ii=new u(ut,{width:Kt,height:Kt,data:null},_t.RGBA);ii.bind(_t.LINEAR,_t.CLAMP_TO_EDGE),jr=R.fbo=ut.createFramebuffer(Kt,Kt,!0,!1),jr.colorAttachment.set(ii.texture)}ut.bindFramebuffer.set(jr.framebuffer),ut.viewport.set([0,0,Kt,Kt]),Be.useProgram("hillshadePrepare").draw(ut,_t.TRIANGLES,xe,Te,De,Wo.disabled,((ii,qe)=>{let Ye=qe.stride,nt=t.H();return t.aP(nt,0,t.X,-t.X,0,0,1),t.J(nt,nt,[0,-t.X,0]),{u_matrix:nt,u_image:1,u_dimension:[Ye,Ye],u_zoom:ii.overscaledZ,u_unpack:qe.getUnpackVector()}})(R.tileID,Rt),null,ie.id,Be.rasterBoundsBuffer,Be.quadTriangleIndexBuffer,Be.rasterBoundsSegments),R.needsHillshadePrepare=!1}}function _f(Be,R,ie,xe,Te,De){let ut=xe.paint.get("raster-fade-duration");if(!De&&ut>0){let _t=n.now(),Rt=(_t-Be.timeAdded)/ut,Kt=R?(_t-R.timeAdded)/ut:-1,fr=ie.getSource(),dr=Te.coveringZoomLevel({tileSize:fr.tileSize,roundZoom:fr.roundZoom}),jr=!R||Math.abs(R.tileID.overscaledZ-dr)>Math.abs(Be.tileID.overscaledZ-dr),ii=jr&&Be.refreshedUponExpiration?1:t.ac(jr?Rt:1-Kt,0,1);return Be.refreshedUponExpiration&&Rt>=1&&(Be.refreshedUponExpiration=!1),R?{opacity:1,mix:1-ii}:{opacity:ii,mix:0}}return{opacity:1,mix:0}}let Nc=new t.aM(1,0,0,1),Qs=new t.aM(0,1,0,1),qf=new t.aM(0,0,1,1),Ph=new t.aM(1,0,1,1),nh=new t.aM(0,1,1,1);function df(Be,R,ie,xe){Iu(Be,0,R+ie/2,Be.transform.width,ie,xe)}function hh(Be,R,ie,xe){Iu(Be,R-ie/2,0,ie,Be.transform.height,xe)}function Iu(Be,R,ie,xe,Te,De){let ut=Be.context,_t=ut.gl;_t.enable(_t.SCISSOR_TEST),_t.scissor(R*Be.pixelRatio,ie*Be.pixelRatio,xe*Be.pixelRatio,Te*Be.pixelRatio),ut.clear({color:De}),_t.disable(_t.SCISSOR_TEST)}function ah(Be,R,ie){let xe=Be.context,Te=xe.gl,De=ie.posMatrix,ut=Be.useProgram("debug"),_t=ys.disabled,Rt=Us.disabled,Kt=Be.colorModeForRenderPass(),fr="$debug",dr=Be.style.map.terrain&&Be.style.map.terrain.getTerrainData(ie);xe.activeTexture.set(Te.TEXTURE0);let jr=R.getTileByID(ie.key).latestRawTileData,ii=Math.floor((jr&&jr.byteLength||0)/1024),qe=R.getTile(ie).tileSize,Ye=512/Math.min(qe,512)*(ie.overscaledZ/Be.transform.zoom)*.5,nt=ie.canonical.toString();ie.overscaledZ!==ie.canonical.z&&(nt+=` => ${ie.overscaledZ}`),function(ct,Tt){ct.initDebugOverlayCanvas();let gt=ct.debugOverlayCanvas,Lt=ct.context.gl,tr=ct.debugOverlayCanvas.getContext("2d");tr.clearRect(0,0,gt.width,gt.height),tr.shadowColor="white",tr.shadowBlur=2,tr.lineWidth=1.5,tr.strokeStyle="white",tr.textBaseline="top",tr.font="bold 36px Open Sans, sans-serif",tr.fillText(Tt,5,5),tr.strokeText(Tt,5,5),ct.debugOverlayTexture.update(gt),ct.debugOverlayTexture.bind(Lt.LINEAR,Lt.CLAMP_TO_EDGE)}(Be,`${nt} ${ii}kB`),ut.draw(xe,Te.TRIANGLES,_t,Rt,hl.alphaBlended,Wo.disabled,Qa(De,t.aM.transparent,Ye),null,fr,Be.debugBuffer,Be.quadTriangleIndexBuffer,Be.debugSegments),ut.draw(xe,Te.LINE_STRIP,_t,Rt,Kt,Wo.disabled,Qa(De,t.aM.red),dr,fr,Be.debugBuffer,Be.tileBorderIndexBuffer,Be.debugSegments)}function cu(Be,R,ie){let xe=Be.context,Te=xe.gl,De=Be.colorModeForRenderPass(),ut=new ys(Te.LEQUAL,ys.ReadWrite,Be.depthRangeFor3D),_t=Be.useProgram("terrain"),Rt=R.getTerrainMesh();xe.bindFramebuffer.set(null),xe.viewport.set([0,0,Be.width,Be.height]);for(let Kt of ie){let fr=Be.renderToTexture.getTexture(Kt),dr=R.getTerrainData(Kt.tileID);xe.activeTexture.set(Te.TEXTURE0),Te.bindTexture(Te.TEXTURE_2D,fr.texture);let jr=Be.transform.calculatePosMatrix(Kt.tileID.toUnwrapped()),ii=R.getMeshFrameDelta(Be.transform.zoom),qe=Be.transform.calculateFogMatrix(Kt.tileID.toUnwrapped()),Ye=gr(jr,ii,qe,Be.style.sky,Be.transform.pitch);_t.draw(xe,Te.TRIANGLES,ut,Us.disabled,De,Wo.backCCW,Ye,dr,"terrain",Rt.vertexBuffer,Rt.indexBuffer,Rt.segments)}}class Ru{constructor(R,ie,xe){this.vertexBuffer=R,this.indexBuffer=ie,this.segments=xe}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Mc{constructor(R,ie){this.context=new jh(R),this.transform=ie,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:t.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=Mt.maxUnderzooming+Mt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Er}resize(R,ie,xe){if(this.width=Math.floor(R*xe),this.height=Math.floor(ie*xe),this.pixelRatio=xe,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let Te of this.style._order)this.style._layers[Te].resize()}setup(){let R=this.context,ie=new t.aX;ie.emplaceBack(0,0),ie.emplaceBack(t.X,0),ie.emplaceBack(0,t.X),ie.emplaceBack(t.X,t.X),this.tileExtentBuffer=R.createVertexBuffer(ie,ci.members),this.tileExtentSegments=t.a0.simpleSegment(0,0,4,2);let xe=new t.aX;xe.emplaceBack(0,0),xe.emplaceBack(t.X,0),xe.emplaceBack(0,t.X),xe.emplaceBack(t.X,t.X),this.debugBuffer=R.createVertexBuffer(xe,ci.members),this.debugSegments=t.a0.simpleSegment(0,0,4,5);let Te=new t.$;Te.emplaceBack(0,0,0,0),Te.emplaceBack(t.X,0,t.X,0),Te.emplaceBack(0,t.X,0,t.X),Te.emplaceBack(t.X,t.X,t.X,t.X),this.rasterBoundsBuffer=R.createVertexBuffer(Te,Xe.members),this.rasterBoundsSegments=t.a0.simpleSegment(0,0,4,2);let De=new t.aX;De.emplaceBack(0,0),De.emplaceBack(1,0),De.emplaceBack(0,1),De.emplaceBack(1,1),this.viewportBuffer=R.createVertexBuffer(De,ci.members),this.viewportSegments=t.a0.simpleSegment(0,0,4,2);let ut=new t.aZ;ut.emplaceBack(0),ut.emplaceBack(1),ut.emplaceBack(3),ut.emplaceBack(2),ut.emplaceBack(0),this.tileBorderIndexBuffer=R.createIndexBuffer(ut);let _t=new t.aY;_t.emplaceBack(0,1,2),_t.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=R.createIndexBuffer(_t);let Rt=this.context.gl;this.stencilClearMode=new Us({func:Rt.ALWAYS,mask:0},0,255,Rt.ZERO,Rt.ZERO,Rt.ZERO)}clearStencil(){let R=this.context,ie=R.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let xe=t.H();t.aP(xe,0,this.width,this.height,0,0,1),t.K(xe,xe,[ie.drawingBufferWidth,ie.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(R,ie.TRIANGLES,ys.disabled,this.stencilClearMode,hl.disabled,Wo.disabled,yo(xe),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(R,ie){if(this.currentStencilSource===R.source||!R.isTileClipped()||!ie||!ie.length)return;this.currentStencilSource=R.source;let xe=this.context,Te=xe.gl;this.nextStencilID+ie.length>256&&this.clearStencil(),xe.setColorMode(hl.disabled),xe.setDepthMode(ys.disabled);let De=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let ut of ie){let _t=this._tileClippingMaskIDs[ut.key]=this.nextStencilID++,Rt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(ut);De.draw(xe,Te.TRIANGLES,ys.disabled,new Us({func:Te.ALWAYS,mask:0},_t,255,Te.KEEP,Te.KEEP,Te.REPLACE),hl.disabled,Wo.disabled,yo(ut.posMatrix),Rt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let R=this.nextStencilID++,ie=this.context.gl;return new Us({func:ie.NOTEQUAL,mask:255},R,255,ie.KEEP,ie.KEEP,ie.REPLACE)}stencilModeForClipping(R){let ie=this.context.gl;return new Us({func:ie.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,ie.KEEP,ie.KEEP,ie.REPLACE)}stencilConfigForOverlap(R){let ie=this.context.gl,xe=R.sort((ut,_t)=>_t.overscaledZ-ut.overscaledZ),Te=xe[xe.length-1].overscaledZ,De=xe[0].overscaledZ-Te+1;if(De>1){this.currentStencilSource=void 0,this.nextStencilID+De>256&&this.clearStencil();let ut={};for(let _t=0;_t({u_sky_color:ct.properties.get("sky-color"),u_horizon_color:ct.properties.get("horizon-color"),u_horizon:(Tt.height/2+Tt.getHorizon())*gt,u_sky_horizon_blend:ct.properties.get("sky-horizon-blend")*Tt.height/2*gt}))(Kt,Rt.style.map.transform,Rt.pixelRatio),ii=new ys(dr.LEQUAL,ys.ReadWrite,[0,1]),qe=Us.disabled,Ye=Rt.colorModeForRenderPass(),nt=Rt.useProgram("sky");if(!Kt.mesh){let ct=new t.aX;ct.emplaceBack(-1,-1),ct.emplaceBack(1,-1),ct.emplaceBack(1,1),ct.emplaceBack(-1,1);let Tt=new t.aY;Tt.emplaceBack(0,1,2),Tt.emplaceBack(0,2,3),Kt.mesh=new Ru(fr.createVertexBuffer(ct,ci.members),fr.createIndexBuffer(Tt),t.a0.simpleSegment(0,0,ct.length,Tt.length))}nt.draw(fr,dr.TRIANGLES,ii,qe,Ye,Wo.disabled,jr,void 0,"sky",Kt.mesh.vertexBuffer,Kt.mesh.indexBuffer,Kt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=ie.showOverdrawInspector,this.depthRangeFor3D=[0,1-(R._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=xe.length-1;this.currentLayer>=0;this.currentLayer--){let Rt=this.style._layers[xe[this.currentLayer]],Kt=Te[Rt.source],fr=De[Rt.source];this._renderTileClippingMasks(Rt,fr),this.renderLayer(this,Kt,Rt,fr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayernt.source&&!nt.isHidden(fr)?[Kt.sourceCaches[nt.source]]:[]),ii=jr.filter(nt=>nt.getSource().type==="vector"),qe=jr.filter(nt=>nt.getSource().type!=="vector"),Ye=nt=>{(!dr||dr.getSource().maxzoomYe(nt)),dr||qe.forEach(nt=>Ye(nt)),dr}(this.style,this.transform.zoom);Rt&&function(Kt,fr,dr){for(let jr=0;jr0),Te&&(t.b0(ie,xe),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(De,ut){let _t=De.context,Rt=_t.gl,Kt=hl.unblended,fr=new ys(Rt.LEQUAL,ys.ReadWrite,[0,1]),dr=ut.getTerrainMesh(),jr=ut.sourceCache.getRenderableTiles(),ii=De.useProgram("terrainDepth");_t.bindFramebuffer.set(ut.getFramebuffer("depth").framebuffer),_t.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),_t.clear({color:t.aM.transparent,depth:1});for(let qe of jr){let Ye=ut.getTerrainData(qe.tileID),nt={u_matrix:De.transform.calculatePosMatrix(qe.tileID.toUnwrapped()),u_ele_delta:ut.getMeshFrameDelta(De.transform.zoom)};ii.draw(_t,Rt.TRIANGLES,fr,Us.disabled,Kt,Wo.backCCW,nt,Ye,"terrain",dr.vertexBuffer,dr.indexBuffer,dr.segments)}_t.bindFramebuffer.set(null),_t.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain),function(De,ut){let _t=De.context,Rt=_t.gl,Kt=hl.unblended,fr=new ys(Rt.LEQUAL,ys.ReadWrite,[0,1]),dr=ut.getTerrainMesh(),jr=ut.getCoordsTexture(),ii=ut.sourceCache.getRenderableTiles(),qe=De.useProgram("terrainCoords");_t.bindFramebuffer.set(ut.getFramebuffer("coords").framebuffer),_t.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),_t.clear({color:t.aM.transparent,depth:1}),ut.coordsIndex=[];for(let Ye of ii){let nt=ut.getTerrainData(Ye.tileID);_t.activeTexture.set(Rt.TEXTURE0),Rt.bindTexture(Rt.TEXTURE_2D,jr.texture);let ct={u_matrix:De.transform.calculatePosMatrix(Ye.tileID.toUnwrapped()),u_terrain_coords_id:(255-ut.coordsIndex.length)/255,u_texture:0,u_ele_delta:ut.getMeshFrameDelta(De.transform.zoom)};qe.draw(_t,Rt.TRIANGLES,fr,Us.disabled,Kt,Wo.backCCW,ct,nt,"terrain",dr.vertexBuffer,dr.indexBuffer,dr.segments),ut.coordsIndex.push(Ye.tileID.key)}_t.bindFramebuffer.set(null),_t.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain))}renderLayer(R,ie,xe,Te){if(!xe.isHidden(this.transform.zoom)&&(xe.type==="background"||xe.type==="custom"||(Te||[]).length))switch(this.id=xe.id,xe.type){case"symbol":(function(De,ut,_t,Rt,Kt){if(De.renderPass!=="translucent")return;let fr=Us.disabled,dr=De.colorModeForRenderPass();(_t._unevaluatedLayout.hasValue("text-variable-anchor")||_t._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(jr,ii,qe,Ye,nt,ct,Tt,gt,Lt){let tr=ii.transform,or=sn(),vr=nt==="map",Sr=ct==="map";for(let Wr of jr){let yi=Ye.getTile(Wr),Ai=yi.getBucket(qe);if(!Ai||!Ai.text||!Ai.text.segments.get().length)continue;let Oi=t.ag(Ai.textSizeData,tr.zoom),on=Pi(yi,1,ii.transform.zoom),Mn=mr(Wr.posMatrix,Sr,vr,ii.transform,on),An=qe.layout.get("icon-text-fit")!=="none"&&Ai.hasIconData();if(Oi){let qn=Math.pow(2,tr.zoom-yi.tileID.overscaledZ),ma=ii.style.map.terrain?(ja,Do)=>ii.style.map.terrain.getElevation(Wr,ja,Do):null,eo=or.translatePosition(tr,yi,Tt,gt);hf(Ai,vr,Sr,Lt,tr,Mn,Wr.posMatrix,qn,Oi,An,or,eo,Wr.toUnwrapped(),ma)}}}(Rt,De,_t,ut,_t.layout.get("text-rotation-alignment"),_t.layout.get("text-pitch-alignment"),_t.paint.get("text-translate"),_t.paint.get("text-translate-anchor"),Kt),_t.paint.get("icon-opacity").constantOr(1)!==0&&rh(De,ut,_t,Rt,!1,_t.paint.get("icon-translate"),_t.paint.get("icon-translate-anchor"),_t.layout.get("icon-rotation-alignment"),_t.layout.get("icon-pitch-alignment"),_t.layout.get("icon-keep-upright"),fr,dr),_t.paint.get("text-opacity").constantOr(1)!==0&&rh(De,ut,_t,Rt,!0,_t.paint.get("text-translate"),_t.paint.get("text-translate-anchor"),_t.layout.get("text-rotation-alignment"),_t.layout.get("text-pitch-alignment"),_t.layout.get("text-keep-upright"),fr,dr),ut.map.showCollisionBoxes&&(tc(De,ut,_t,Rt,!0),tc(De,ut,_t,Rt,!1))})(R,ie,xe,Te,this.style.placement.variableOffsets);break;case"circle":(function(De,ut,_t,Rt){if(De.renderPass!=="translucent")return;let Kt=_t.paint.get("circle-opacity"),fr=_t.paint.get("circle-stroke-width"),dr=_t.paint.get("circle-stroke-opacity"),jr=!_t.layout.get("circle-sort-key").isConstant();if(Kt.constantOr(1)===0&&(fr.constantOr(1)===0||dr.constantOr(1)===0))return;let ii=De.context,qe=ii.gl,Ye=De.depthModeForSublayer(0,ys.ReadOnly),nt=Us.disabled,ct=De.colorModeForRenderPass(),Tt=[];for(let gt=0;gtgt.sortKey-Lt.sortKey);for(let gt of Tt){let{programConfiguration:Lt,program:tr,layoutVertexBuffer:or,indexBuffer:vr,uniformValues:Sr,terrainData:Wr}=gt.state;tr.draw(ii,qe.TRIANGLES,Ye,nt,ct,Wo.disabled,Sr,Wr,_t.id,or,vr,gt.segments,_t.paint,De.transform.zoom,Lt)}})(R,ie,xe,Te);break;case"heatmap":(function(De,ut,_t,Rt){if(_t.paint.get("heatmap-opacity")===0)return;let Kt=De.context;if(De.style.map.terrain){for(let fr of Rt){let dr=ut.getTile(fr);ut.hasRenderableParent(fr)||(De.renderPass==="offscreen"?Cf(De,dr,_t,fr):De.renderPass==="translucent"&&Jc(De,_t,fr))}Kt.viewport.set([0,0,De.width,De.height])}else De.renderPass==="offscreen"?function(fr,dr,jr,ii){let qe=fr.context,Ye=qe.gl,nt=Us.disabled,ct=new hl([Ye.ONE,Ye.ONE],t.aM.transparent,[!0,!0,!0,!0]);(function(Tt,gt,Lt){let tr=Tt.gl;Tt.activeTexture.set(tr.TEXTURE1),Tt.viewport.set([0,0,gt.width/4,gt.height/4]);let or=Lt.heatmapFbos.get(t.aU);or?(tr.bindTexture(tr.TEXTURE_2D,or.colorAttachment.get()),Tt.bindFramebuffer.set(or.framebuffer)):(or=Vf(Tt,gt.width/4,gt.height/4),Lt.heatmapFbos.set(t.aU,or))})(qe,fr,jr),qe.clear({color:t.aM.transparent});for(let Tt=0;Tt20&&fr.texParameterf(fr.TEXTURE_2D,Kt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Kt.extTextureFilterAnisotropicMax);let Ai=De.style.map.terrain&&De.style.map.terrain.getTerrainData(Tt),Oi=Ai?Tt:null,on=Oi?Oi.posMatrix:De.transform.calculatePosMatrix(Tt.toUnwrapped(),ct),Mn=Qo(on,Wr||[0,0],Sr||1,vr,_t);dr instanceof tt?jr.draw(Kt,fr.TRIANGLES,gt,Us.disabled,ii,Wo.disabled,Mn,Ai,_t.id,dr.boundsBuffer,De.quadTriangleIndexBuffer,dr.boundsSegments):jr.draw(Kt,fr.TRIANGLES,gt,qe[Tt.overscaledZ],ii,Wo.disabled,Mn,Ai,_t.id,De.rasterBoundsBuffer,De.quadTriangleIndexBuffer,De.rasterBoundsSegments)}})(R,ie,xe,Te);break;case"background":(function(De,ut,_t,Rt){let Kt=_t.paint.get("background-color"),fr=_t.paint.get("background-opacity");if(fr===0)return;let dr=De.context,jr=dr.gl,ii=De.transform,qe=ii.tileSize,Ye=_t.paint.get("background-pattern");if(De.isPatternMissing(Ye))return;let nt=!Ye&&Kt.a===1&&fr===1&&De.opaquePassEnabledForLayer()?"opaque":"translucent";if(De.renderPass!==nt)return;let ct=Us.disabled,Tt=De.depthModeForSublayer(0,nt==="opaque"?ys.ReadWrite:ys.ReadOnly),gt=De.colorModeForRenderPass(),Lt=De.useProgram(Ye?"backgroundPattern":"background"),tr=Rt||ii.coveringTiles({tileSize:qe,terrain:De.style.map.terrain});Ye&&(dr.activeTexture.set(jr.TEXTURE0),De.imageManager.bind(De.context));let or=_t.getCrossfadeParameters();for(let vr of tr){let Sr=Rt?vr.posMatrix:De.transform.calculatePosMatrix(vr.toUnwrapped()),Wr=Ye?Hs(Sr,fr,De,Ye,{tileID:vr,tileSize:qe},or):Ds(Sr,fr,Kt),yi=De.style.map.terrain&&De.style.map.terrain.getTerrainData(vr);Lt.draw(dr,jr.TRIANGLES,Tt,ct,gt,Wo.disabled,Wr,yi,_t.id,De.tileExtentBuffer,De.quadTriangleIndexBuffer,De.tileExtentSegments)}})(R,0,xe,Te);break;case"custom":(function(De,ut,_t){let Rt=De.context,Kt=_t.implementation;if(De.renderPass==="offscreen"){let fr=Kt.prerender;fr&&(De.setCustomLayerDefaults(),Rt.setColorMode(De.colorModeForRenderPass()),fr.call(Kt,Rt.gl,De.transform.customLayerMatrix()),Rt.setDirty(),De.setBaseState())}else if(De.renderPass==="translucent"){De.setCustomLayerDefaults(),Rt.setColorMode(De.colorModeForRenderPass()),Rt.setStencilMode(Us.disabled);let fr=Kt.renderingMode==="3d"?new ys(De.context.gl.LEQUAL,ys.ReadWrite,De.depthRangeFor3D):De.depthModeForSublayer(0,ys.ReadOnly);Rt.setDepthMode(fr),Kt.render(Rt.gl,De.transform.customLayerMatrix(),{farZ:De.transform.farZ,nearZ:De.transform.nearZ,fov:De.transform._fov,modelViewProjectionMatrix:De.transform.modelViewProjectionMatrix,projectionMatrix:De.transform.projectionMatrix}),Rt.setDirty(),De.setBaseState(),Rt.bindFramebuffer.set(null)}})(R,0,xe)}}translatePosMatrix(R,ie,xe,Te,De){if(!xe[0]&&!xe[1])return R;let ut=De?Te==="map"?this.transform.angle:0:Te==="viewport"?-this.transform.angle:0;if(ut){let Kt=Math.sin(ut),fr=Math.cos(ut);xe=[xe[0]*fr-xe[1]*Kt,xe[0]*Kt+xe[1]*fr]}let _t=[De?xe[0]:Pi(ie,xe[0],this.transform.zoom),De?xe[1]:Pi(ie,xe[1],this.transform.zoom),0],Rt=new Float32Array(16);return t.J(Rt,R,_t),Rt}saveTileTexture(R){let ie=this._tileTextures[R.size[0]];ie?ie.push(R):this._tileTextures[R.size[0]]=[R]}getTileTexture(R){let ie=this._tileTextures[R];return ie&&ie.length>0?ie.pop():null}isPatternMissing(R){if(!R)return!1;if(!R.from||!R.to)return!0;let ie=this.imageManager.getPattern(R.from.toString()),xe=this.imageManager.getPattern(R.to.toString());return!ie||!xe}useProgram(R,ie){this.cache=this.cache||{};let xe=R+(ie?ie.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[xe]||(this.cache[xe]=new wi(this.context,mi[R],ie,Zs[R],this._showOverdrawInspector,this.style.map.terrain)),this.cache[xe]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new u(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:R,drawingBufferHeight:ie}=this.context.gl;return this.width!==R||this.height!==ie}}class Ol{constructor(R,ie){this.points=R,this.planes=ie}static fromInvProjectionMatrix(R,ie,xe){let Te=Math.pow(2,xe),De=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(_t=>{let Rt=1/(_t=t.af([],_t,R))[3]/ie*Te;return t.b1(_t,_t,[Rt,Rt,1/_t[3],Rt])}),ut=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(_t=>{let Rt=function(jr,ii){var qe=ii[0],Ye=ii[1],nt=ii[2],ct=qe*qe+Ye*Ye+nt*nt;return ct>0&&(ct=1/Math.sqrt(ct)),jr[0]=ii[0]*ct,jr[1]=ii[1]*ct,jr[2]=ii[2]*ct,jr}([],function(jr,ii,qe){var Ye=ii[0],nt=ii[1],ct=ii[2],Tt=qe[0],gt=qe[1],Lt=qe[2];return jr[0]=nt*Lt-ct*gt,jr[1]=ct*Tt-Ye*Lt,jr[2]=Ye*gt-nt*Tt,jr}([],E([],De[_t[0]],De[_t[1]]),E([],De[_t[2]],De[_t[1]]))),Kt=-((fr=Rt)[0]*(dr=De[_t[1]])[0]+fr[1]*dr[1]+fr[2]*dr[2]);var fr,dr;return Rt.concat(Kt)});return new Ol(De,ut)}}class Uc{constructor(R,ie){this.min=R,this.max=ie,this.center=function(xe,Te,De){return xe[0]=.5*Te[0],xe[1]=.5*Te[1],xe[2]=.5*Te[2],xe}([],function(xe,Te,De){return xe[0]=Te[0]+De[0],xe[1]=Te[1]+De[1],xe[2]=Te[2]+De[2],xe}([],this.min,this.max))}quadrant(R){let ie=[R%2==0,R<2],xe=w(this.min),Te=w(this.max);for(let De=0;De=0&&ut++;if(ut===0)return 0;ut!==ie.length&&(xe=!1)}if(xe)return 2;for(let Te=0;Te<3;Te++){let De=Number.MAX_VALUE,ut=-Number.MAX_VALUE;for(let _t=0;_tthis.max[Te]-this.min[Te])return 0}return 1}}class ic{constructor(R=0,ie=0,xe=0,Te=0){if(isNaN(R)||R<0||isNaN(ie)||ie<0||isNaN(xe)||xe<0||isNaN(Te)||Te<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=ie,this.left=xe,this.right=Te}interpolate(R,ie,xe){return ie.top!=null&&R.top!=null&&(this.top=t.y.number(R.top,ie.top,xe)),ie.bottom!=null&&R.bottom!=null&&(this.bottom=t.y.number(R.bottom,ie.bottom,xe)),ie.left!=null&&R.left!=null&&(this.left=t.y.number(R.left,ie.left,xe)),ie.right!=null&&R.right!=null&&(this.right=t.y.number(R.right,ie.right,xe)),this}getCenter(R,ie){let xe=t.ac((this.left+R-this.right)/2,0,R),Te=t.ac((this.top+ie-this.bottom)/2,0,ie);return new t.P(xe,Te)}equals(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right}clone(){return new ic(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let wu=85.051129;class Pl{constructor(R,ie,xe,Te,De){this.tileSize=512,this._renderWorldCopies=De===void 0||!!De,this._minZoom=R||0,this._maxZoom=ie||22,this._minPitch=xe??0,this._maxPitch=Te??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ic,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let R=new Pl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.apply(this),R}apply(R){this.tileSize=R.tileSize,this.latRange=R.latRange,this.lngRange=R.lngRange,this.width=R.width,this.height=R.height,this._center=R._center,this._elevation=R._elevation,this.minElevationForCurrentTile=R.minElevationForCurrentTile,this.zoom=R.zoom,this.angle=R.angle,this._fov=R._fov,this._pitch=R._pitch,this._unmodified=R._unmodified,this._edgeInsets=R._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(R){this._minZoom!==R&&(this._minZoom=R,this.zoom=Math.max(this.zoom,R))}get maxZoom(){return this._maxZoom}set maxZoom(R){this._maxZoom!==R&&(this._maxZoom=R,this.zoom=Math.min(this.zoom,R))}get minPitch(){return this._minPitch}set minPitch(R){this._minPitch!==R&&(this._minPitch=R,this.pitch=Math.max(this.pitch,R))}get maxPitch(){return this._maxPitch}set maxPitch(R){this._maxPitch!==R&&(this._maxPitch=R,this.pitch=Math.min(this.pitch,R))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(R){R===void 0?R=!0:R===null&&(R=!1),this._renderWorldCopies=R}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(R){let ie=-t.b3(R,-180,180)*Math.PI/180;this.angle!==ie&&(this._unmodified=!1,this.angle=ie,this._calcMatrices(),this.rotationMatrix=function(){var xe=new t.A(4);return t.A!=Float32Array&&(xe[1]=0,xe[2]=0),xe[0]=1,xe[3]=1,xe}(),function(xe,Te,De){var ut=Te[0],_t=Te[1],Rt=Te[2],Kt=Te[3],fr=Math.sin(De),dr=Math.cos(De);xe[0]=ut*dr+Rt*fr,xe[1]=_t*dr+Kt*fr,xe[2]=ut*-fr+Rt*dr,xe[3]=_t*-fr+Kt*dr}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(R){let ie=t.ac(R,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==ie&&(this._unmodified=!1,this._pitch=ie,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(R){R=Math.max(.01,Math.min(60,R)),this._fov!==R&&(this._unmodified=!1,this._fov=R/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(R){let ie=Math.min(Math.max(R,this.minZoom),this.maxZoom);this._zoom!==ie&&(this._unmodified=!1,this._zoom=ie,this.tileZoom=Math.max(0,Math.floor(ie)),this.scale=this.zoomScale(ie),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(R){R.lat===this._center.lat&&R.lng===this._center.lng||(this._unmodified=!1,this._center=R,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(R){R!==this._elevation&&(this._elevation=R,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(R){this._edgeInsets.equals(R)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,R,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(R){return this._edgeInsets.equals(R)}interpolatePadding(R,ie,xe){this._unmodified=!1,this._edgeInsets.interpolate(R,ie,xe),this._constrain(),this._calcMatrices()}coveringZoomLevel(R){let ie=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,ie)}getVisibleUnwrappedCoordinates(R){let ie=[new t.b4(0,R)];if(this._renderWorldCopies){let xe=this.pointCoordinate(new t.P(0,0)),Te=this.pointCoordinate(new t.P(this.width,0)),De=this.pointCoordinate(new t.P(this.width,this.height)),ut=this.pointCoordinate(new t.P(0,this.height)),_t=Math.floor(Math.min(xe.x,Te.x,De.x,ut.x)),Rt=Math.floor(Math.max(xe.x,Te.x,De.x,ut.x)),Kt=1;for(let fr=_t-Kt;fr<=Rt+Kt;fr++)fr!==0&&ie.push(new t.b4(fr,R))}return ie}coveringTiles(R){var ie,xe;let Te=this.coveringZoomLevel(R),De=Te;if(R.minzoom!==void 0&&TeR.maxzoom&&(Te=R.maxzoom);let ut=this.pointCoordinate(this.getCameraPoint()),_t=t.Z.fromLngLat(this.center),Rt=Math.pow(2,Te),Kt=[Rt*ut.x,Rt*ut.y,0],fr=[Rt*_t.x,Rt*_t.y,0],dr=Ol.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,Te),jr=R.minzoom||0;!R.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(jr=Te);let ii=R.terrain?2/Math.min(this.tileSize,R.tileSize)*this.tileSize:3,qe=gt=>({aabb:new Uc([gt*Rt,0,0],[(gt+1)*Rt,Rt,0]),zoom:0,x:0,y:0,wrap:gt,fullyVisible:!1}),Ye=[],nt=[],ct=Te,Tt=R.reparseOverscaled?De:Te;if(this._renderWorldCopies)for(let gt=1;gt<=3;gt++)Ye.push(qe(-gt)),Ye.push(qe(gt));for(Ye.push(qe(0));Ye.length>0;){let gt=Ye.pop(),Lt=gt.x,tr=gt.y,or=gt.fullyVisible;if(!or){let Ai=gt.aabb.intersects(dr);if(Ai===0)continue;or=Ai===2}let vr=R.terrain?Kt:fr,Sr=gt.aabb.distanceX(vr),Wr=gt.aabb.distanceY(vr),yi=Math.max(Math.abs(Sr),Math.abs(Wr));if(gt.zoom===ct||yi>ii+(1<=jr){let Ai=ct-gt.zoom,Oi=Kt[0]-.5-(Lt<>1),Mn=gt.zoom+1,An=gt.aabb.quadrant(Ai);if(R.terrain){let qn=new t.S(Mn,gt.wrap,Mn,Oi,on),ma=R.terrain.getMinMaxElevation(qn),eo=(ie=ma.minElevation)!==null&&ie!==void 0?ie:this.elevation,ja=(xe=ma.maxElevation)!==null&&xe!==void 0?xe:this.elevation;An=new Uc([An.min[0],An.min[1],eo],[An.max[0],An.max[1],ja])}Ye.push({aabb:An,zoom:Mn,x:Oi,y:on,wrap:gt.wrap,fullyVisible:or})}}return nt.sort((gt,Lt)=>gt.distanceSq-Lt.distanceSq).map(gt=>gt.tileID)}resize(R,ie){this.width=R,this.height=ie,this.pixelsToGLUnits=[2/R,-2/ie],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(R){return Math.pow(2,R)}scaleZoom(R){return Math.log(R)/Math.LN2}project(R){let ie=t.ac(R.lat,-85.051129,wu);return new t.P(t.O(R.lng)*this.worldSize,t.Q(ie)*this.worldSize)}unproject(R){return new t.Z(R.x/this.worldSize,R.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(R){let ie=this.elevation,xe=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,Te=this.pointLocation(this.centerPoint,R),De=R.getElevationForLngLatZoom(Te,this.tileZoom);if(!(this.elevation-De))return;let ut=xe+ie-De,_t=Math.cos(this._pitch)*this.cameraToCenterDistance/ut/t.b5(1,Te.lat),Rt=this.scaleZoom(_t/this.tileSize);this._elevation=De,this._center=Te,this.zoom=Rt}setLocationAtPoint(R,ie){let xe=this.pointCoordinate(ie),Te=this.pointCoordinate(this.centerPoint),De=this.locationCoordinate(R),ut=new t.Z(De.x-(xe.x-Te.x),De.y-(xe.y-Te.y));this.center=this.coordinateLocation(ut),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(R,ie){return ie?this.coordinatePoint(this.locationCoordinate(R),ie.getElevationForLngLatZoom(R,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(R))}pointLocation(R,ie){return this.coordinateLocation(this.pointCoordinate(R,ie))}locationCoordinate(R){return t.Z.fromLngLat(R)}coordinateLocation(R){return R&&R.toLngLat()}pointCoordinate(R,ie){if(ie){let jr=ie.pointCoordinate(R);if(jr!=null)return jr}let xe=[R.x,R.y,0,1],Te=[R.x,R.y,1,1];t.af(xe,xe,this.pixelMatrixInverse),t.af(Te,Te,this.pixelMatrixInverse);let De=xe[3],ut=Te[3],_t=xe[1]/De,Rt=Te[1]/ut,Kt=xe[2]/De,fr=Te[2]/ut,dr=Kt===fr?0:(0-Kt)/(fr-Kt);return new t.Z(t.y.number(xe[0]/De,Te[0]/ut,dr)/this.worldSize,t.y.number(_t,Rt,dr)/this.worldSize)}coordinatePoint(R,ie=0,xe=this.pixelMatrix){let Te=[R.x*this.worldSize,R.y*this.worldSize,ie,1];return t.af(Te,Te,xe),new t.P(Te[0]/Te[3],Te[1]/Te[3])}getBounds(){let R=Math.max(0,this.height/2-this.getHorizon());return new ne().extend(this.pointLocation(new t.P(0,R))).extend(this.pointLocation(new t.P(this.width,R))).extend(this.pointLocation(new t.P(this.width,this.height))).extend(this.pointLocation(new t.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ne([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,wu])}calculateTileMatrix(R){let ie=R.canonical,xe=this.worldSize/this.zoomScale(ie.z),Te=ie.x+Math.pow(2,ie.z)*R.wrap,De=t.an(new Float64Array(16));return t.J(De,De,[Te*xe,ie.y*xe,0]),t.K(De,De,[xe/t.X,xe/t.X,1]),De}calculatePosMatrix(R,ie=!1){let xe=R.key,Te=ie?this._alignedPosMatrixCache:this._posMatrixCache;if(Te[xe])return Te[xe];let De=this.calculateTileMatrix(R);return t.L(De,ie?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,De),Te[xe]=new Float32Array(De),Te[xe]}calculateFogMatrix(R){let ie=R.key,xe=this._fogMatrixCache;if(xe[ie])return xe[ie];let Te=this.calculateTileMatrix(R);return t.L(Te,this.fogMatrix,Te),xe[ie]=new Float32Array(Te),xe[ie]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(R,ie){ie=t.ac(+ie,this.minZoom,this.maxZoom);let xe={center:new t.N(R.lng,R.lat),zoom:ie},Te=this.lngRange;if(!this._renderWorldCopies&&Te===null){let gt=179.9999999999;Te=[-gt,gt]}let De=this.tileSize*this.zoomScale(xe.zoom),ut=0,_t=De,Rt=0,Kt=De,fr=0,dr=0,{x:jr,y:ii}=this.size;if(this.latRange){let gt=this.latRange;ut=t.Q(gt[1])*De,_t=t.Q(gt[0])*De,_t-ut_t&&(ct=_t-gt)}if(Te){let gt=(Rt+Kt)/2,Lt=qe;this._renderWorldCopies&&(Lt=t.b3(qe,gt-De/2,gt+De/2));let tr=jr/2;Lt-trKt&&(nt=Kt-tr)}if(nt!==void 0||ct!==void 0){let gt=new t.P(nt??qe,ct??Ye);xe.center=this.unproject.call({worldSize:De},gt).wrap()}return xe}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let R=this._unmodified,{center:ie,zoom:xe}=this.getConstrained(this.center,this.zoom);this.center=ie,this.zoom=xe,this._unmodified=R,this._constraining=!1}_calcMatrices(){if(!this.height)return;let R=this.centerOffset,ie=this.point.x,xe=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.b5(1,this.center.lat)*this.worldSize;let Te=t.an(new Float64Array(16));t.K(Te,Te,[this.width/2,-this.height/2,1]),t.J(Te,Te,[1,-1,0]),this.labelPlaneMatrix=Te,Te=t.an(new Float64Array(16)),t.K(Te,Te,[1,-1,1]),t.J(Te,Te,[-1,-1,0]),t.K(Te,Te,[2/this.width,2/this.height,1]),this.glCoordMatrix=Te;let De=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),ut=Math.min(this.elevation,this.minElevationForCurrentTile),_t=De-ut*this._pixelPerMeter/Math.cos(this._pitch),Rt=ut<0?_t:De,Kt=Math.PI/2+this._pitch,fr=this._fov*(.5+R.y/this.height),dr=Math.sin(fr)*Rt/Math.sin(t.ac(Math.PI-Kt-fr,.01,Math.PI-.01)),jr=this.getHorizon(),ii=2*Math.atan(jr/this.cameraToCenterDistance)*(.5+R.y/(2*jr)),qe=Math.sin(ii)*Rt/Math.sin(t.ac(Math.PI-Kt-ii,.01,Math.PI-.01)),Ye=Math.min(dr,qe);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Ye+Rt),this.nearZ=this.height/50,Te=new Float64Array(16),t.b6(Te,this._fov,this.width/this.height,this.nearZ,this.farZ),Te[8]=2*-R.x/this.width,Te[9]=2*R.y/this.height,this.projectionMatrix=t.ae(Te),t.K(Te,Te,[1,-1,1]),t.J(Te,Te,[0,0,-this.cameraToCenterDistance]),t.b7(Te,Te,this._pitch),t.ad(Te,Te,this.angle),t.J(Te,Te,[-ie,-xe,0]),this.mercatorMatrix=t.K([],Te,[this.worldSize,this.worldSize,this.worldSize]),t.K(Te,Te,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.L(new Float64Array(16),this.labelPlaneMatrix,Te),t.J(Te,Te,[0,0,-this.elevation]),this.modelViewProjectionMatrix=Te,this.invModelViewProjectionMatrix=t.as([],Te),this.fogMatrix=new Float64Array(16),t.b6(this.fogMatrix,this._fov,this.width/this.height,De,this.farZ),this.fogMatrix[8]=2*-R.x/this.width,this.fogMatrix[9]=2*R.y/this.height,t.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),t.b7(this.fogMatrix,this.fogMatrix,this._pitch),t.ad(this.fogMatrix,this.fogMatrix,this.angle),t.J(this.fogMatrix,this.fogMatrix,[-ie,-xe,0]),t.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=t.L(new Float64Array(16),this.labelPlaneMatrix,Te);let nt=this.width%2/2,ct=this.height%2/2,Tt=Math.cos(this.angle),gt=Math.sin(this.angle),Lt=ie-Math.round(ie)+Tt*nt+gt*ct,tr=xe-Math.round(xe)+Tt*ct+gt*nt,or=new Float64Array(Te);if(t.J(or,or,[Lt>.5?Lt-1:Lt,tr>.5?tr-1:tr,0]),this.alignedModelViewProjectionMatrix=or,Te=t.as(new Float64Array(16),this.pixelMatrix),!Te)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Te,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let R=this.pointCoordinate(new t.P(0,0)),ie=[R.x*this.worldSize,R.y*this.worldSize,0,1];return t.af(ie,ie,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let R=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.P(0,R))}getCameraQueryGeometry(R){let ie=this.getCameraPoint();if(R.length===1)return[R[0],ie];{let xe=ie.x,Te=ie.y,De=ie.x,ut=ie.y;for(let _t of R)xe=Math.min(xe,_t.x),Te=Math.min(Te,_t.y),De=Math.max(De,_t.x),ut=Math.max(ut,_t.y);return[new t.P(xe,Te),new t.P(De,Te),new t.P(De,ut),new t.P(xe,ut),new t.P(xe,Te)]}}lngLatToCameraDepth(R,ie){let xe=this.locationCoordinate(R),Te=[xe.x*this.worldSize,xe.y*this.worldSize,ie,1];return t.af(Te,Te,this.modelViewProjectionMatrix),Te[2]/Te[3]}}function oh(Be,R){let ie,xe=!1,Te=null,De=null,ut=()=>{Te=null,xe&&(Be.apply(De,ie),Te=setTimeout(ut,R),xe=!1)};return(..._t)=>(xe=!0,De=this,ie=_t,Te||ut(),Te)}class dh{constructor(R){this._getCurrentHash=()=>{let ie=window.location.hash.replace("#","");if(this._hashName){let xe;return ie.split("&").map(Te=>Te.split("=")).forEach(Te=>{Te[0]===this._hashName&&(xe=Te)}),(xe&&xe[1]||"").split("/")}return ie.split("/")},this._onHashChange=()=>{let ie=this._getCurrentHash();if(ie.length>=3&&!ie.some(xe=>isNaN(xe))){let xe=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(ie[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+ie[2],+ie[1]],zoom:+ie[0],bearing:xe,pitch:+(ie[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let ie=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,ie)},this._removeHash=()=>{let ie=this._getCurrentHash();if(ie.length===0)return;let xe=ie.join("/"),Te=xe;Te.split("&").length>0&&(Te=Te.split("&")[0]),this._hashName&&(Te=`${this._hashName}=${xe}`);let De=window.location.hash.replace(Te,"");De.startsWith("#&")?De=De.slice(0,1)+De.slice(2):De==="#"&&(De="");let ut=window.location.href.replace(/(#.+)?$/,De);ut=ut.replace("&&","&"),window.history.replaceState(window.history.state,null,ut)},this._updateHash=oh(this._updateHashUnthrottled,300),this._hashName=R&&encodeURIComponent(R)}addTo(R){return this._map=R,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(R){let ie=this._map.getCenter(),xe=Math.round(100*this._map.getZoom())/100,Te=Math.ceil((xe*Math.LN2+Math.log(512/360/.5))/Math.LN10),De=Math.pow(10,Te),ut=Math.round(ie.lng*De)/De,_t=Math.round(ie.lat*De)/De,Rt=this._map.getBearing(),Kt=this._map.getPitch(),fr="";if(fr+=R?`/${ut}/${_t}/${xe}`:`${xe}/${_t}/${ut}`,(Rt||Kt)&&(fr+="/"+Math.round(10*Rt)/10),Kt&&(fr+=`/${Math.round(Kt)}`),this._hashName){let dr=this._hashName,jr=!1,ii=window.location.hash.slice(1).split("&").map(qe=>{let Ye=qe.split("=")[0];return Ye===dr?(jr=!0,`${Ye}=${fr}`):qe}).filter(qe=>qe);return jr||ii.push(`${dr}=${fr}`),`#${ii.join("&")}`}return`#${fr}`}}let Wu={linearity:.3,easing:t.b8(0,0,.3,1)},Sc=t.e({deceleration:2500,maxSpeed:1400},Wu),dc=t.e({deceleration:20,maxSpeed:1400},Wu),Vh=t.e({deceleration:1e3,maxSpeed:360},Wu),vf=t.e({deceleration:1e3,maxSpeed:90},Wu);class xf{constructor(R){this._map=R,this.clear()}clear(){this._inertiaBuffer=[]}record(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:n.now(),settings:R})}_drainInertiaBuffer(){let R=this._inertiaBuffer,ie=n.now();for(;R.length>0&&ie-R[0].time>160;)R.shift()}_onMoveEnd(R){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let ie={zoom:0,bearing:0,pitch:0,pan:new t.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:De}of this._inertiaBuffer)ie.zoom+=De.zoomDelta||0,ie.bearing+=De.bearingDelta||0,ie.pitch+=De.pitchDelta||0,De.panDelta&&ie.pan._add(De.panDelta),De.around&&(ie.around=De.around),De.pinchAround&&(ie.pinchAround=De.pinchAround);let xe=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,Te={};if(ie.pan.mag()){let De=Pf(ie.pan.mag(),xe,t.e({},Sc,R||{}));Te.offset=ie.pan.mult(De.amount/ie.pan.mag()),Te.center=this._map.transform.center,Du(Te,De)}if(ie.zoom){let De=Pf(ie.zoom,xe,dc);Te.zoom=this._map.transform.zoom+De.amount,Du(Te,De)}if(ie.bearing){let De=Pf(ie.bearing,xe,Vh);Te.bearing=this._map.transform.bearing+t.ac(De.amount,-179,179),Du(Te,De)}if(ie.pitch){let De=Pf(ie.pitch,xe,vf);Te.pitch=this._map.transform.pitch+De.amount,Du(Te,De)}if(Te.zoom||Te.bearing){let De=ie.pinchAround===void 0?ie.around:ie.pinchAround;Te.around=De?this._map.unproject(De):this._map.getCenter()}return this.clear(),t.e(Te,{noMoveStart:!0})}}function Du(Be,R){(!Be.duration||Be.durationie.unproject(Rt)),_t=De.reduce((Rt,Kt,fr,dr)=>Rt.add(Kt.div(dr.length)),new t.P(0,0));super(R,{points:De,point:_t,lngLats:ut,lngLat:ie.unproject(_t),originalEvent:xe}),this._defaultPrevented=!1}}class vh extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ie,xe){super(R,{originalEvent:xe}),this._defaultPrevented=!1}}class If{constructor(R,ie){this._map=R,this._clickTolerance=ie.clickTolerance}reset(){delete this._mousedownPos}wheel(R){return this._firePreventable(new vh(R.type,this._map,R))}mousedown(R,ie){return this._mousedownPos=ie,this._firePreventable(new fu(R.type,this._map,R))}mouseup(R){this._map.fire(new fu(R.type,this._map,R))}click(R,ie){this._mousedownPos&&this._mousedownPos.dist(ie)>=this._clickTolerance||this._map.fire(new fu(R.type,this._map,R))}dblclick(R){return this._firePreventable(new fu(R.type,this._map,R))}mouseover(R){this._map.fire(new fu(R.type,this._map,R))}mouseout(R){this._map.fire(new fu(R.type,this._map,R))}touchstart(R){return this._firePreventable(new ef(R.type,this._map,R))}touchmove(R){this._map.fire(new ef(R.type,this._map,R))}touchend(R){this._map.fire(new ef(R.type,this._map,R))}touchcancel(R){this._map.fire(new ef(R.type,this._map,R))}_firePreventable(R){if(this._map.fire(R),R.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class yl{constructor(R){this._map=R}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(R){this._map.fire(new fu(R.type,this._map,R))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new fu("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(R){this._delayContextMenu?this._contextMenuEvent=R:this._ignoreContextMenu||this._map.fire(new fu(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Tu{constructor(R){this._map=R}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(R){return this.transform.pointLocation(t.P.convert(R),this._map.terrain)}}class Au{constructor(R,ie){this._map=R,this._tr=new Tu(R),this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=ie.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(R,ie){this.isEnabled()&&R.shiftKey&&R.button===0&&(a.disableDrag(),this._startPos=this._lastPos=ie,this._active=!0)}mousemoveWindow(R,ie){if(!this._active)return;let xe=ie;if(this._lastPos.equals(xe)||!this._box&&xe.dist(this._startPos)De.fitScreenCoordinates(xe,Te,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",R)}keydown(R){this._active&&R.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",R))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(a.remove(this._box),this._box=null),a.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(R,ie){return this._map.fire(new t.k(R,{originalEvent:ie}))}}function Hf(Be,R){if(Be.length!==R.length)throw new Error(`The number of touches and points are not equal - touches ${Be.length}, points ${R.length}`);let ie={};for(let xe=0;xethis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=R.timeStamp),xe.length===this.numTouches&&(this.centroid=function(Te){let De=new t.P(0,0);for(let ut of Te)De._add(ut);return De.div(Te.length)}(ie),this.touches=Hf(xe,ie)))}touchmove(R,ie,xe){if(this.aborted||!this.centroid)return;let Te=Hf(xe,ie);for(let De in this.touches){let ut=Te[De];(!ut||ut.dist(this.touches[De])>30)&&(this.aborted=!0)}}touchend(R,ie,xe){if((!this.centroid||R.timeStamp-this.startTime>500)&&(this.aborted=!0),xe.length===0){let Te=!this.aborted&&this.centroid;if(this.reset(),Te)return Te}}}class pf{constructor(R){this.singleTap=new dl(R),this.numTaps=R.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(R,ie,xe){this.singleTap.touchstart(R,ie,xe)}touchmove(R,ie,xe){this.singleTap.touchmove(R,ie,xe)}touchend(R,ie,xe){let Te=this.singleTap.touchend(R,ie,xe);if(Te){let De=R.timeStamp-this.lastTime<500,ut=!this.lastTap||this.lastTap.dist(Te)<30;if(De&&ut||this.reset(),this.count++,this.lastTime=R.timeStamp,this.lastTap=Te,this.count===this.numTaps)return this.reset(),Te}}}class Ec{constructor(R){this._tr=new Tu(R),this._zoomIn=new pf({numTouches:1,numTaps:2}),this._zoomOut=new pf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(R,ie,xe){this._zoomIn.touchstart(R,ie,xe),this._zoomOut.touchstart(R,ie,xe)}touchmove(R,ie,xe){this._zoomIn.touchmove(R,ie,xe),this._zoomOut.touchmove(R,ie,xe)}touchend(R,ie,xe){let Te=this._zoomIn.touchend(R,ie,xe),De=this._zoomOut.touchend(R,ie,xe),ut=this._tr;return Te?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:_t=>_t.easeTo({duration:300,zoom:ut.zoom+1,around:ut.unproject(Te)},{originalEvent:R})}):De?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:_t=>_t.easeTo({duration:300,zoom:ut.zoom-1,around:ut.unproject(De)},{originalEvent:R})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Xu{constructor(R){this._enabled=!!R.enable,this._moveStateManager=R.moveStateManager,this._clickTolerance=R.clickTolerance||1,this._moveFunction=R.move,this._activateOnStart=!!R.activateOnStart,R.assignEvents(this),this.reset()}reset(R){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(R)}_move(...R){let ie=this._moveFunction(...R);if(ie.bearingDelta||ie.pitchDelta||ie.around||ie.panDelta)return this._active=!0,ie}dragStart(R,ie){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(R)&&(this._moveStateManager.startMove(R),this._lastPoint=ie.length?ie[0]:ie,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(R,ie){if(!this.isEnabled())return;let xe=this._lastPoint;if(!xe)return;if(R.preventDefault(),!this._moveStateManager.isValidMoveEvent(R))return void this.reset(R);let Te=ie.length?ie[0]:ie;return!this._moved&&Te.dist(xe){Be.mousedown=Be.dragStart,Be.mousemoveWindow=Be.dragMove,Be.mouseup=Be.dragEnd,Be.contextmenu=R=>{R.preventDefault()}},Jl=({enable:Be,clickTolerance:R,bearingDegreesPerPixelMoved:ie=.8})=>{let xe=new vc({checkCorrectEvent:Te=>a.mouseButton(Te)===0&&Te.ctrlKey||a.mouseButton(Te)===2});return new Xu({clickTolerance:R,move:(Te,De)=>({bearingDelta:(De.x-Te.x)*ie}),moveStateManager:xe,enable:Be,assignEvents:Gf})},Wf=({enable:Be,clickTolerance:R,pitchDegreesPerPixelMoved:ie=-.5})=>{let xe=new vc({checkCorrectEvent:Te=>a.mouseButton(Te)===0&&Te.ctrlKey||a.mouseButton(Te)===2});return new Xu({clickTolerance:R,move:(Te,De)=>({pitchDelta:(De.y-Te.y)*ie}),moveStateManager:xe,enable:Be,assignEvents:Gf})};class Zu{constructor(R,ie){this._clickTolerance=R.clickTolerance||1,this._map=ie,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new t.P(0,0)}_shouldBePrevented(R){return R<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(R,ie,xe){return this._calculateTransform(R,ie,xe)}touchmove(R,ie,xe){if(this._active){if(!this._shouldBePrevented(xe.length))return R.preventDefault(),this._calculateTransform(R,ie,xe);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",R)}}touchend(R,ie,xe){this._calculateTransform(R,ie,xe),this._active&&this._shouldBePrevented(xe.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(R,ie,xe){xe.length>0&&(this._active=!0);let Te=Hf(xe,ie),De=new t.P(0,0),ut=new t.P(0,0),_t=0;for(let Kt in Te){let fr=Te[Kt],dr=this._touches[Kt];dr&&(De._add(fr),ut._add(fr.sub(dr)),_t++,Te[Kt]=fr)}if(this._touches=Te,this._shouldBePrevented(_t)||!ut.mag())return;let Rt=ut.div(_t);return this._sum._add(Rt),this._sum.mag()Math.abs(Be.x)}class rf extends kc{constructor(R){super(),this._currentTouchCount=0,this._map=R}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(R,ie,xe){super.touchstart(R,ie,xe),this._currentTouchCount=xe.length}_start(R){this._lastPoints=R,nc(R[0].sub(R[1]))&&(this._valid=!1)}_move(R,ie,xe){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let Te=R[0].sub(this._lastPoints[0]),De=R[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(Te,De,xe.timeStamp),this._valid?(this._lastPoints=R,this._active=!0,{pitchDelta:(Te.y+De.y)/2*-.5}):void 0}gestureBeginsVertically(R,ie,xe){if(this._valid!==void 0)return this._valid;let Te=R.mag()>=2,De=ie.mag()>=2;if(!Te&&!De)return;if(!Te||!De)return this._firstMove===void 0&&(this._firstMove=xe),xe-this._firstMove<100&&void 0;let ut=R.y>0==ie.y>0;return nc(R)&&nc(ie)&&ut}}let Zt={panStep:100,bearingStep:15,pitchStep:10};class hr{constructor(R){this._tr=new Tu(R);let ie=Zt;this._panStep=ie.panStep,this._bearingStep=ie.bearingStep,this._pitchStep=ie.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(R){if(R.altKey||R.ctrlKey||R.metaKey)return;let ie=0,xe=0,Te=0,De=0,ut=0;switch(R.keyCode){case 61:case 107:case 171:case 187:ie=1;break;case 189:case 109:case 173:ie=-1;break;case 37:R.shiftKey?xe=-1:(R.preventDefault(),De=-1);break;case 39:R.shiftKey?xe=1:(R.preventDefault(),De=1);break;case 38:R.shiftKey?Te=1:(R.preventDefault(),ut=-1);break;case 40:R.shiftKey?Te=-1:(R.preventDefault(),ut=1);break;default:return}return this._rotationDisabled&&(xe=0,Te=0),{cameraAnimation:_t=>{let Rt=this._tr;_t.easeTo({duration:300,easeId:"keyboardHandler",easing:Kr,zoom:ie?Math.round(Rt.zoom)+ie*(R.shiftKey?2:1):Rt.zoom,bearing:Rt.bearing+xe*this._bearingStep,pitch:Rt.pitch+Te*this._pitchStep,offset:[-De*this._panStep,-ut*this._panStep],center:Rt.center},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Kr(Be){return Be*(2-Be)}let qr=4.000244140625;class ki{constructor(R,ie){this._onTimeout=xe=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(xe)},this._map=R,this._tr=new Tu(R),this._triggerRenderFrame=ie,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(R){this._defaultZoomRate=R}setWheelZoomRate(R){this._wheelZoomRate=R}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!R&&R.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(R){return!!this._map.cooperativeGestures.isEnabled()&&!(R.ctrlKey||this._map.cooperativeGestures.isBypassed(R))}wheel(R){if(!this.isEnabled())return;if(this._shouldBePrevented(R))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",R);let ie=R.deltaMode===WheelEvent.DOM_DELTA_LINE?40*R.deltaY:R.deltaY,xe=n.now(),Te=xe-(this._lastWheelEventTime||0);this._lastWheelEventTime=xe,ie!==0&&ie%qr==0?this._type="wheel":ie!==0&&Math.abs(ie)<4?this._type="trackpad":Te>400?(this._type=null,this._lastValue=ie,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(Te*ie)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ie+=this._lastValue)),R.shiftKey&&ie&&(ie/=4),this._type&&(this._lastWheelEvent=R,this._delta-=ie,this._active||this._start(R)),R.preventDefault()}_start(R){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let ie=a.mousePos(this._map.getCanvas(),R),xe=this._tr;this._around=ie.y>xe.transform.height/2-xe.transform.getHorizon()?t.N.convert(this._aroundCenter?xe.center:xe.unproject(ie)):t.N.convert(xe.center),this._aroundPoint=xe.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let R=this._tr.transform;if(this._delta!==0){let Rt=this._type==="wheel"&&Math.abs(this._delta)>qr?this._wheelZoomRate:this._defaultZoomRate,Kt=2/(1+Math.exp(-Math.abs(this._delta*Rt)));this._delta<0&&Kt!==0&&(Kt=1/Kt);let fr=typeof this._targetZoom=="number"?R.zoomScale(this._targetZoom):R.scale;this._targetZoom=Math.min(R.maxZoom,Math.max(R.minZoom,R.scaleZoom(fr*Kt))),this._type==="wheel"&&(this._startZoom=R.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let ie=typeof this._targetZoom=="number"?this._targetZoom:R.zoom,xe=this._startZoom,Te=this._easing,De,ut=!1,_t=n.now()-this._lastWheelEventTime;if(this._type==="wheel"&&xe&&Te&&_t){let Rt=Math.min(_t/200,1),Kt=Te(Rt);De=t.y.number(xe,ie,Kt),Rt<1?this._frameId||(this._frameId=!0):ut=!0}else De=ie,ut=!0;return this._active=!0,ut&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ut,zoomDelta:De-R.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(R){let ie=t.b9;if(this._prevEase){let xe=this._prevEase,Te=(n.now()-xe.start)/xe.duration,De=xe.easing(Te+.01)-xe.easing(Te),ut=.27/Math.sqrt(De*De+1e-4)*.01,_t=Math.sqrt(.0729-ut*ut);ie=t.b8(ut,_t,.25,1)}return this._prevEase={start:n.now(),duration:R,easing:ie},ie}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class an{constructor(R,ie){this._clickZoom=R,this._tapZoom=ie}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class pn{constructor(R){this._tr=new Tu(R),this.reset()}reset(){this._active=!1}dblclick(R,ie){return R.preventDefault(),{cameraAnimation:xe=>{xe.easeTo({duration:300,zoom:this._tr.zoom+(R.shiftKey?-1:1),around:this._tr.unproject(ie)},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Pn{constructor(){this._tap=new pf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(R,ie,xe){if(!this._swipePoint)if(this._tapTime){let Te=ie[0],De=R.timeStamp-this._tapTime<500,ut=this._tapPoint.dist(Te)<30;De&&ut?xe.length>0&&(this._swipePoint=Te,this._swipeTouch=xe[0].identifier):this.reset()}else this._tap.touchstart(R,ie,xe)}touchmove(R,ie,xe){if(this._tapTime){if(this._swipePoint){if(xe[0].identifier!==this._swipeTouch)return;let Te=ie[0],De=Te.y-this._swipePoint.y;return this._swipePoint=Te,R.preventDefault(),this._active=!0,{zoomDelta:De/128}}}else this._tap.touchmove(R,ie,xe)}touchend(R,ie,xe){if(this._tapTime)this._swipePoint&&xe.length===0&&this.reset();else{let Te=this._tap.touchend(R,ie,xe);Te&&(this._tapTime=R.timeStamp,this._tapPoint=Te)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Vn{constructor(R,ie,xe){this._el=R,this._mousePan=ie,this._touchPan=xe}enable(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class ra{constructor(R,ie,xe){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=ie,this._mousePitch=xe}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class yn{constructor(R,ie,xe,Te){this._el=R,this._touchZoom=ie,this._touchRotate=xe,this._tapDragZoom=Te,this._rotationDisabled=!1,this._enabled=!0}enable(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class In{constructor(R,ie){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=R,this._options=ie,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let R=this._map.getCanvasContainer();R.classList.add("maplibregl-cooperative-gestures"),this._container=a.create("div","maplibregl-cooperative-gesture-screen",R);let ie=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(ie=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let xe=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),Te=document.createElement("div");Te.className="maplibregl-desktop-message",Te.textContent=ie,this._container.appendChild(Te);let De=document.createElement("div");De.className="maplibregl-mobile-message",De.textContent=xe,this._container.appendChild(De),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(a.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(R){return R[this._bypassKey]}notifyGestureBlocked(R,ie){this._enabled&&(this._map.fire(new t.k("cooperativegestureprevented",{gestureType:R,originalEvent:ie})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let kn=Be=>Be.zoom||Be.drag||Be.pitch||Be.rotate;class cn extends t.k{}function xa(Be){return Be.panDelta&&Be.panDelta.mag()||Be.zoomDelta||Be.bearingDelta||Be.pitchDelta}class mo{constructor(R,ie){this.handleWindowEvent=Te=>{this.handleEvent(Te,`${Te.type}Window`)},this.handleEvent=(Te,De)=>{if(Te.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let ut=Te.type==="renderFrame"?void 0:Te,_t={needsRenderFrame:!1},Rt={},Kt={},fr=Te.touches,dr=fr?this._getMapTouches(fr):void 0,jr=dr?a.touchPos(this._map.getCanvas(),dr):a.mousePos(this._map.getCanvas(),Te);for(let{handlerName:Ye,handler:nt,allowed:ct}of this._handlers){if(!nt.isEnabled())continue;let Tt;this._blockedByActive(Kt,ct,Ye)?nt.reset():nt[De||Te.type]&&(Tt=nt[De||Te.type](Te,jr,dr),this.mergeHandlerResult(_t,Rt,Tt,Ye,ut),Tt&&Tt.needsRenderFrame&&this._triggerRenderFrame()),(Tt||nt.isActive())&&(Kt[Ye]=nt)}let ii={};for(let Ye in this._previousActiveHandlers)Kt[Ye]||(ii[Ye]=ut);this._previousActiveHandlers=Kt,(Object.keys(ii).length||xa(_t))&&(this._changes.push([_t,Rt,ii]),this._triggerRenderFrame()),(Object.keys(Kt).length||xa(_t))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:qe}=_t;qe&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],qe(this._map))},this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new xf(R),this._bearingSnap=ie.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ie);let xe=this._el;this._listeners=[[xe,"touchstart",{passive:!0}],[xe,"touchmove",{passive:!1}],[xe,"touchend",void 0],[xe,"touchcancel",void 0],[xe,"mousedown",void 0],[xe,"mousemove",void 0],[xe,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[xe,"mouseover",void 0],[xe,"mouseout",void 0],[xe,"dblclick",void 0],[xe,"click",void 0],[xe,"keydown",{capture:!1}],[xe,"keyup",void 0],[xe,"wheel",{passive:!1}],[xe,"contextmenu",void 0],[window,"blur",void 0]];for(let[Te,De,ut]of this._listeners)a.addEventListener(Te,De,Te===document?this.handleWindowEvent:this.handleEvent,ut)}destroy(){for(let[R,ie,xe]of this._listeners)a.removeEventListener(R,ie,R===document?this.handleWindowEvent:this.handleEvent,xe)}_addDefaultHandlers(R){let ie=this._map,xe=ie.getCanvasContainer();this._add("mapEvent",new If(ie,R));let Te=ie.boxZoom=new Au(ie,R);this._add("boxZoom",Te),R.interactive&&R.boxZoom&&Te.enable();let De=ie.cooperativeGestures=new In(ie,R.cooperativeGestures);this._add("cooperativeGestures",De),R.cooperativeGestures&&De.enable();let ut=new Ec(ie),_t=new pn(ie);ie.doubleClickZoom=new an(_t,ut),this._add("tapZoom",ut),this._add("clickZoom",_t),R.interactive&&R.doubleClickZoom&&ie.doubleClickZoom.enable();let Rt=new Pn;this._add("tapDragZoom",Rt);let Kt=ie.touchPitch=new rf(ie);this._add("touchPitch",Kt),R.interactive&&R.touchPitch&&ie.touchPitch.enable(R.touchPitch);let fr=Jl(R),dr=Wf(R);ie.dragRotate=new ra(R,fr,dr),this._add("mouseRotate",fr,["mousePitch"]),this._add("mousePitch",dr,["mouseRotate"]),R.interactive&&R.dragRotate&&ie.dragRotate.enable();let jr=(({enable:Tt,clickTolerance:gt})=>{let Lt=new vc({checkCorrectEvent:tr=>a.mouseButton(tr)===0&&!tr.ctrlKey});return new Xu({clickTolerance:gt,move:(tr,or)=>({around:or,panDelta:or.sub(tr)}),activateOnStart:!0,moveStateManager:Lt,enable:Tt,assignEvents:Gf})})(R),ii=new Zu(R,ie);ie.dragPan=new Vn(xe,jr,ii),this._add("mousePan",jr),this._add("touchPan",ii,["touchZoom","touchRotate"]),R.interactive&&R.dragPan&&ie.dragPan.enable(R.dragPan);let qe=new jc,Ye=new hu;ie.touchZoomRotate=new yn(xe,Ye,qe,Rt),this._add("touchRotate",qe,["touchPan","touchZoom"]),this._add("touchZoom",Ye,["touchPan","touchRotate"]),R.interactive&&R.touchZoomRotate&&ie.touchZoomRotate.enable(R.touchZoomRotate);let nt=ie.scrollZoom=new ki(ie,()=>this._triggerRenderFrame());this._add("scrollZoom",nt,["mousePan"]),R.interactive&&R.scrollZoom&&ie.scrollZoom.enable(R.scrollZoom);let ct=ie.keyboard=new hr(ie);this._add("keyboard",ct),R.interactive&&R.keyboard&&ie.keyboard.enable(),this._add("blockableMapEvent",new yl(ie))}_add(R,ie,xe){this._handlers.push({handlerName:R,handler:ie,allowed:xe}),this._handlersById[R]=ie}stop(R){if(!this._updatingCamera){for(let{handler:ie}of this._handlers)ie.reset();this._inertia.clear(),this._fireEvents({},{},R),this._changes=[]}}isActive(){for(let{handler:R}of this._handlers)if(R.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!kn(this._eventsInProgress)||this.isZooming()}_blockedByActive(R,ie,xe){for(let Te in R)if(Te!==xe&&(!ie||ie.indexOf(Te)<0))return!0;return!1}_getMapTouches(R){let ie=[];for(let xe of R)this._el.contains(xe.target)&&ie.push(xe);return ie}mergeHandlerResult(R,ie,xe,Te,De){if(!xe)return;t.e(R,xe);let ut={handlerName:Te,originalEvent:xe.originalEvent||De};xe.zoomDelta!==void 0&&(ie.zoom=ut),xe.panDelta!==void 0&&(ie.drag=ut),xe.pitchDelta!==void 0&&(ie.pitch=ut),xe.bearingDelta!==void 0&&(ie.rotate=ut)}_applyChanges(){let R={},ie={},xe={};for(let[Te,De,ut]of this._changes)Te.panDelta&&(R.panDelta=(R.panDelta||new t.P(0,0))._add(Te.panDelta)),Te.zoomDelta&&(R.zoomDelta=(R.zoomDelta||0)+Te.zoomDelta),Te.bearingDelta&&(R.bearingDelta=(R.bearingDelta||0)+Te.bearingDelta),Te.pitchDelta&&(R.pitchDelta=(R.pitchDelta||0)+Te.pitchDelta),Te.around!==void 0&&(R.around=Te.around),Te.pinchAround!==void 0&&(R.pinchAround=Te.pinchAround),Te.noInertia&&(R.noInertia=Te.noInertia),t.e(ie,De),t.e(xe,ut);this._updateMapTransform(R,ie,xe),this._changes=[]}_updateMapTransform(R,ie,xe){let Te=this._map,De=Te._getTransformForUpdate(),ut=Te.terrain;if(!(xa(R)||ut&&this._terrainMovement))return this._fireEvents(ie,xe,!0);let{panDelta:_t,zoomDelta:Rt,bearingDelta:Kt,pitchDelta:fr,around:dr,pinchAround:jr}=R;jr!==void 0&&(dr=jr),Te._stop(!0),dr=dr||Te.transform.centerPoint;let ii=De.pointLocation(_t?dr.sub(_t):dr);Kt&&(De.bearing+=Kt),fr&&(De.pitch+=fr),Rt&&(De.zoom+=Rt),ut?this._terrainMovement||!ie.drag&&!ie.zoom?ie.drag&&this._terrainMovement?De.center=De.pointLocation(De.centerPoint.sub(_t)):De.setLocationAtPoint(ii,dr):(this._terrainMovement=!0,this._map._elevationFreeze=!0,De.setLocationAtPoint(ii,dr)):De.setLocationAtPoint(ii,dr),Te._applyUpdatedTransform(De),this._map._update(),R.noInertia||this._inertia.record(R),this._fireEvents(ie,xe,!0)}_fireEvents(R,ie,xe){let Te=kn(this._eventsInProgress),De=kn(R),ut={};for(let dr in R){let{originalEvent:jr}=R[dr];this._eventsInProgress[dr]||(ut[`${dr}start`]=jr),this._eventsInProgress[dr]=R[dr]}!Te&&De&&this._fireEvent("movestart",De.originalEvent);for(let dr in ut)this._fireEvent(dr,ut[dr]);De&&this._fireEvent("move",De.originalEvent);for(let dr in R){let{originalEvent:jr}=R[dr];this._fireEvent(dr,jr)}let _t={},Rt;for(let dr in this._eventsInProgress){let{handlerName:jr,originalEvent:ii}=this._eventsInProgress[dr];this._handlersById[jr].isActive()||(delete this._eventsInProgress[dr],Rt=ie[jr]||ii,_t[`${dr}end`]=Rt)}for(let dr in _t)this._fireEvent(dr,_t[dr]);let Kt=kn(this._eventsInProgress),fr=(Te||De)&&!Kt;if(fr&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let dr=this._map._getTransformForUpdate();dr.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(dr)}if(xe&&fr){this._updatingCamera=!0;let dr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),jr=ii=>ii!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new cn("renderFrame",{timeStamp:R})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class uo extends t.E{constructor(R,ie){super(),this._renderFrameCallback=()=>{let xe=Math.min((n.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(xe)),xe<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=R,this._bearingSnap=ie.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new t.N(this.transform.center.lng,this.transform.center.lat)}setCenter(R,ie){return this.jumpTo({center:R},ie)}panBy(R,ie,xe){return R=t.P.convert(R).mult(-1),this.panTo(this.transform.center,t.e({offset:R},ie),xe)}panTo(R,ie,xe){return this.easeTo(t.e({center:R},ie),xe)}getZoom(){return this.transform.zoom}setZoom(R,ie){return this.jumpTo({zoom:R},ie),this}zoomTo(R,ie,xe){return this.easeTo(t.e({zoom:R},ie),xe)}zoomIn(R,ie){return this.zoomTo(this.getZoom()+1,R,ie),this}zoomOut(R,ie){return this.zoomTo(this.getZoom()-1,R,ie),this}getBearing(){return this.transform.bearing}setBearing(R,ie){return this.jumpTo({bearing:R},ie),this}getPadding(){return this.transform.padding}setPadding(R,ie){return this.jumpTo({padding:R},ie),this}rotateTo(R,ie,xe){return this.easeTo(t.e({bearing:R},ie),xe)}resetNorth(R,ie){return this.rotateTo(0,t.e({duration:1e3},R),ie),this}resetNorthPitch(R,ie){return this.easeTo(t.e({bearing:0,pitch:0,duration:1e3},R),ie),this}snapToNorth(R,ie){return Math.abs(this.getBearing()){if(this._zooming&&(Te.zoom=t.y.number(De,nt,vr)),this._rotating&&(Te.bearing=t.y.number(ut,Kt,vr)),this._pitching&&(Te.pitch=t.y.number(_t,fr,vr)),this._padding&&(Te.interpolatePadding(Rt,dr,vr),ii=Te.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(vr),Lt)Te.setLocationAtPoint(Lt,tr);else{let Sr=Te.zoomScale(Te.zoom-De),Wr=nt>De?Math.min(2,gt):Math.max(.5,gt),yi=Math.pow(Wr,1-vr),Ai=Te.unproject(ct.add(Tt.mult(vr*yi)).mult(Sr));Te.setLocationAtPoint(Te.renderWorldCopies?Ai.wrap():Ai,ii)}this._applyUpdatedTransform(Te),this._fireMoveEvents(ie)},vr=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ie,vr)},R),this}_prepareEase(R,ie,xe={}){this._moving=!0,ie||xe.moving||this.fire(new t.k("movestart",R)),this._zooming&&!xe.zooming&&this.fire(new t.k("zoomstart",R)),this._rotating&&!xe.rotating&&this.fire(new t.k("rotatestart",R)),this._pitching&&!xe.pitching&&this.fire(new t.k("pitchstart",R))}_prepareElevation(R){this._elevationCenter=R,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(R,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(R){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let ie=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(R<1&&ie!==this._elevationTarget){let xe=this._elevationTarget-this._elevationStart;this._elevationStart+=R*(xe-(ie-(xe*R+this._elevationStart))/(1-R)),this._elevationTarget=ie}this.transform.elevation=t.y.number(this._elevationStart,this._elevationTarget,R)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(R){let ie=R.getCameraPosition(),xe=this.terrain.getElevationForLngLatZoom(ie.lngLat,R.zoom);if(ie.altitudethis._elevateCameraIfInsideTerrain(Te)),this.transformCameraUpdate&&ie.push(Te=>this.transformCameraUpdate(Te)),!ie.length)return;let xe=R.clone();for(let Te of ie){let De=xe.clone(),{center:ut,zoom:_t,pitch:Rt,bearing:Kt,elevation:fr}=Te(De);ut&&(De.center=ut),_t!==void 0&&(De.zoom=_t),Rt!==void 0&&(De.pitch=Rt),Kt!==void 0&&(De.bearing=Kt),fr!==void 0&&(De.elevation=fr),xe.apply(De)}this.transform.apply(xe)}_fireMoveEvents(R){this.fire(new t.k("move",R)),this._zooming&&this.fire(new t.k("zoom",R)),this._rotating&&this.fire(new t.k("rotate",R)),this._pitching&&this.fire(new t.k("pitch",R))}_afterEase(R,ie){if(this._easeId&&ie&&this._easeId===ie)return;delete this._easeId;let xe=this._zooming,Te=this._rotating,De=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,xe&&this.fire(new t.k("zoomend",R)),Te&&this.fire(new t.k("rotateend",R)),De&&this.fire(new t.k("pitchend",R)),this.fire(new t.k("moveend",R))}flyTo(R,ie){var xe;if(!R.essential&&n.prefersReducedMotion){let qn=t.M(R,["center","zoom","bearing","pitch","around"]);return this.jumpTo(qn,ie)}this.stop(),R=t.e({offset:[0,0],speed:1.2,curve:1.42,easing:t.b9},R);let Te=this._getTransformForUpdate(),De=Te.zoom,ut=Te.bearing,_t=Te.pitch,Rt=Te.padding,Kt="bearing"in R?this._normalizeBearing(R.bearing,ut):ut,fr="pitch"in R?+R.pitch:_t,dr="padding"in R?R.padding:Te.padding,jr=t.P.convert(R.offset),ii=Te.centerPoint.add(jr),qe=Te.pointLocation(ii),{center:Ye,zoom:nt}=Te.getConstrained(t.N.convert(R.center||qe),(xe=R.zoom)!==null&&xe!==void 0?xe:De);this._normalizeCenter(Ye,Te);let ct=Te.zoomScale(nt-De),Tt=Te.project(qe),gt=Te.project(Ye).sub(Tt),Lt=R.curve,tr=Math.max(Te.width,Te.height),or=tr/ct,vr=gt.mag();if("minZoom"in R){let qn=t.ac(Math.min(R.minZoom,De,nt),Te.minZoom,Te.maxZoom),ma=tr/Te.zoomScale(qn-De);Lt=Math.sqrt(ma/vr*2)}let Sr=Lt*Lt;function Wr(qn){let ma=(or*or-tr*tr+(qn?-1:1)*Sr*Sr*vr*vr)/(2*(qn?or:tr)*Sr*vr);return Math.log(Math.sqrt(ma*ma+1)-ma)}function yi(qn){return(Math.exp(qn)-Math.exp(-qn))/2}function Ai(qn){return(Math.exp(qn)+Math.exp(-qn))/2}let Oi=Wr(!1),on=function(qn){return Ai(Oi)/Ai(Oi+Lt*qn)},Mn=function(qn){return tr*((Ai(Oi)*(yi(ma=Oi+Lt*qn)/Ai(ma))-yi(Oi))/Sr)/vr;var ma},An=(Wr(!0)-Oi)/Lt;if(Math.abs(vr)<1e-6||!isFinite(An)){if(Math.abs(tr-or)<1e-6)return this.easeTo(R,ie);let qn=or0,on=ma=>Math.exp(qn*Lt*ma)}return R.duration="duration"in R?+R.duration:1e3*An/("screenSpeed"in R?+R.screenSpeed/Lt:+R.speed),R.maxDuration&&R.duration>R.maxDuration&&(R.duration=0),this._zooming=!0,this._rotating=ut!==Kt,this._pitching=fr!==_t,this._padding=!Te.isPaddingEqual(dr),this._prepareEase(ie,!1),this.terrain&&this._prepareElevation(Ye),this._ease(qn=>{let ma=qn*An,eo=1/on(ma);Te.zoom=qn===1?nt:De+Te.scaleZoom(eo),this._rotating&&(Te.bearing=t.y.number(ut,Kt,qn)),this._pitching&&(Te.pitch=t.y.number(_t,fr,qn)),this._padding&&(Te.interpolatePadding(Rt,dr,qn),ii=Te.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(qn);let ja=qn===1?Ye:Te.unproject(Tt.add(gt.mult(Mn(ma))).mult(eo));Te.setLocationAtPoint(Te.renderWorldCopies?ja.wrap():ja,ii),this._applyUpdatedTransform(Te),this._fireMoveEvents(ie)},()=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ie)},R),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(R,ie){var xe;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let Te=this._onEaseEnd;delete this._onEaseEnd,Te.call(this,ie)}return R||(xe=this.handlers)===null||xe===void 0||xe.stop(!1),this}_ease(R,ie,xe){xe.animate===!1||xe.duration===0?(R(1),ie()):(this._easeStart=n.now(),this._easeOptions=xe,this._onEaseFrame=R,this._onEaseEnd=ie,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(R,ie){R=t.b3(R,-180,180);let xe=Math.abs(R-ie);return Math.abs(R-360-ie)180?-360:xe<-180?360:0}queryTerrainElevation(R){return this.terrain?this.terrain.getElevationForLngLatZoom(t.N.convert(R),this.transform.tileZoom)-this.transform.elevation:null}}let go={compact:!0,customAttribution:'MapLibre'};class Mo{constructor(R=go){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=ie=>{!ie||ie.sourceDataType!=="metadata"&&ie.sourceDataType!=="visibility"&&ie.dataType!=="style"&&ie.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=R}getDefaultPosition(){return"bottom-right"}onAdd(R){return this._map=R,this._compact=this.options.compact,this._container=a.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=a.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=a.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){a.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(R,ie){let xe=this._map._getUIString(`AttributionControl.${ie}`);R.title=xe,R.setAttribute("aria-label",xe)}_updateAttributions(){if(!this._map.style)return;let R=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?R=R.concat(this.options.customAttribution.map(Te=>typeof Te!="string"?"":Te)):typeof this.options.customAttribution=="string"&&R.push(this.options.customAttribution)),this._map.style.stylesheet){let Te=this._map.style.stylesheet;this.styleOwner=Te.owner,this.styleId=Te.id}let ie=this._map.style.sourceCaches;for(let Te in ie){let De=ie[Te];if(De.used||De.usedForTerrain){let ut=De.getSource();ut.attribution&&R.indexOf(ut.attribution)<0&&R.push(ut.attribution)}}R=R.filter(Te=>String(Te).trim()),R.sort((Te,De)=>Te.length-De.length),R=R.filter((Te,De)=>{for(let ut=De+1;ut=0)return!1;return!0});let xe=R.join(" | ");xe!==this._attribHTML&&(this._attribHTML=xe,R.length?(this._innerContainer.innerHTML=xe,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class ya{constructor(R={}){this._updateCompact=()=>{let ie=this._container.children;if(ie.length){let xe=ie[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&xe.classList.add("maplibregl-compact"):xe.classList.remove("maplibregl-compact")}},this.options=R}getDefaultPosition(){return"bottom-left"}onAdd(R){this._map=R,this._compact=this.options&&this.options.compact,this._container=a.create("div","maplibregl-ctrl");let ie=a.create("a","maplibregl-ctrl-logo");return ie.target="_blank",ie.rel="noopener nofollow",ie.href="https://maplibre.org/",ie.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ie.setAttribute("rel","noopener nofollow"),this._container.appendChild(ie),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){a.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Zn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(R){let ie=++this._id;return this._queue.push({callback:R,id:ie,cancelled:!1}),ie}remove(R){let ie=this._currentlyRunning,xe=ie?this._queue.concat(ie):this._queue;for(let Te of xe)if(Te.id===R)return void(Te.cancelled=!0)}run(R=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let ie=this._currentlyRunning=this._queue;this._queue=[];for(let xe of ie)if(!xe.cancelled&&(xe.callback(R),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Po=t.Y([{name:"a_pos3d",type:"Int16",components:3}]);class us extends t.E{constructor(R){super(),this.sourceCache=R,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,R.usedForTerrain=!0,R.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(R,ie){this.sourceCache.update(R,ie),this._renderableTilesKeys=[];let xe={};for(let Te of R.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:ie}))xe[Te.key]=!0,this._renderableTilesKeys.push(Te.key),this._tiles[Te.key]||(Te.posMatrix=new Float64Array(16),t.aP(Te.posMatrix,0,t.X,0,t.X,0,1),this._tiles[Te.key]=new it(Te,this.tileSize));for(let Te in this._tiles)xe[Te]||delete this._tiles[Te]}freeRtt(R){for(let ie in this._tiles){let xe=this._tiles[ie];(!R||xe.tileID.equals(R)||xe.tileID.isChildOf(R)||R.isChildOf(xe.tileID))&&(xe.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(R=>this.getTileByID(R))}getTileByID(R){return this._tiles[R]}getTerrainCoords(R){let ie={};for(let xe of this._renderableTilesKeys){let Te=this._tiles[xe].tileID;if(Te.canonical.equals(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16),t.aP(De.posMatrix,0,t.X,0,t.X,0,1),ie[xe]=De}else if(Te.canonical.isChildOf(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ut=Te.canonical.z-R.canonical.z,_t=Te.canonical.x-(Te.canonical.x>>ut<>ut<>ut;t.aP(De.posMatrix,0,Kt,0,Kt,0,1),t.J(De.posMatrix,De.posMatrix,[-_t*Kt,-Rt*Kt,0]),ie[xe]=De}else if(R.canonical.isChildOf(Te.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ut=R.canonical.z-Te.canonical.z,_t=R.canonical.x-(R.canonical.x>>ut<>ut<>ut;t.aP(De.posMatrix,0,t.X,0,t.X,0,1),t.J(De.posMatrix,De.posMatrix,[_t*Kt,Rt*Kt,0]),t.K(De.posMatrix,De.posMatrix,[1/2**ut,1/2**ut,0]),ie[xe]=De}}return ie}getSourceTile(R,ie){let xe=this.sourceCache._source,Te=R.overscaledZ-this.deltaZoom;if(Te>xe.maxzoom&&(Te=xe.maxzoom),Te=xe.minzoom&&(!De||!De.dem);)De=this.sourceCache.getTileByID(R.scaledTo(Te--).key);return De}tilesAfterTime(R=Date.now()){return Object.values(this._tiles).filter(ie=>ie.timeAdded>=R)}}class Bs{constructor(R,ie,xe){this.painter=R,this.sourceCache=new us(ie),this.options=xe,this.exaggeration=typeof xe.exaggeration=="number"?xe.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(R,ie,xe,Te=t.X){var De;if(!(ie>=0&&ie=0&&xeR.canonical.z&&(R.canonical.z>=Te?De=R.canonical.z-Te:t.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let ut=R.canonical.x-(R.canonical.x>>De<>De<>8<<4|De>>8,ie[ut+3]=0;let xe=new t.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(ie.buffer)),Te=new u(R,xe,R.gl.RGBA,{premultiply:!1});return Te.bind(R.gl.NEAREST,R.gl.CLAMP_TO_EDGE),this._coordsTexture=Te,Te}pointCoordinate(R){this.painter.maybeDrawDepthAndCoords(!0);let ie=new Uint8Array(4),xe=this.painter.context,Te=xe.gl,De=Math.round(R.x*this.painter.pixelRatio/devicePixelRatio),ut=Math.round(R.y*this.painter.pixelRatio/devicePixelRatio),_t=Math.round(this.painter.height/devicePixelRatio);xe.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),Te.readPixels(De,_t-ut-1,1,1,Te.RGBA,Te.UNSIGNED_BYTE,ie),xe.bindFramebuffer.set(null);let Rt=ie[0]+(ie[2]>>4<<8),Kt=ie[1]+((15&ie[2])<<8),fr=this.coordsIndex[255-ie[3]],dr=fr&&this.sourceCache.getTileByID(fr);if(!dr)return null;let jr=this._coordsTextureSize,ii=(1<R.id!==ie),this._recentlyUsed.push(R.id)}stampObject(R){R.stamp=++this._stamp}getOrCreateFreeObject(){for(let ie of this._recentlyUsed)if(!this._objects[ie].inUse)return this._objects[ie];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let R=this._createObject(this._objects.length);return this._objects.push(R),R}freeObject(R){R.inUse=!1}freeAllObjects(){for(let R of this._objects)this.freeObject(R)}isFull(){return!(this._objects.length!R.inUse)===!1}}let js={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class il{constructor(R,ie){this.painter=R,this.terrain=ie,this.pool=new sl(R.context,30,ie.sourceCache.tileSize*ie.qualityFactor)}destruct(){this.pool.destruct()}getTexture(R){return this.pool.getObjectForId(R.rtt[this._stacks.length-1].id).texture}prepareForRender(R,ie){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=R._order.filter(xe=>!R._layers[xe].isHidden(ie)),this._coordsDescendingInv={};for(let xe in R.sourceCaches){this._coordsDescendingInv[xe]={};let Te=R.sourceCaches[xe].getVisibleCoordinates();for(let De of Te){let ut=this.terrain.sourceCache.getTerrainCoords(De);for(let _t in ut)this._coordsDescendingInv[xe][_t]||(this._coordsDescendingInv[xe][_t]=[]),this._coordsDescendingInv[xe][_t].push(ut[_t])}}this._coordsDescendingInvStr={};for(let xe of R._order){let Te=R._layers[xe],De=Te.source;if(js[Te.type]&&!this._coordsDescendingInvStr[De]){this._coordsDescendingInvStr[De]={};for(let ut in this._coordsDescendingInv[De])this._coordsDescendingInvStr[De][ut]=this._coordsDescendingInv[De][ut].map(_t=>_t.key).sort().join()}}for(let xe of this._renderableTiles)for(let Te in this._coordsDescendingInvStr){let De=this._coordsDescendingInvStr[Te][xe.tileID.key];De&&De!==xe.rttCoords[Te]&&(xe.rtt=[])}}renderLayer(R){if(R.isHidden(this.painter.transform.zoom))return!1;let ie=R.type,xe=this.painter,Te=this._renderableLayerIds[this._renderableLayerIds.length-1]===R.id;if(js[ie]&&(this._prevType&&js[this._prevType]||this._stacks.push([]),this._prevType=ie,this._stacks[this._stacks.length-1].push(R.id),!Te))return!0;if(js[this._prevType]||js[ie]&&Te){this._prevType=ie;let De=this._stacks.length-1,ut=this._stacks[De]||[];for(let _t of this._renderableTiles){if(this.pool.isFull()&&(cu(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(_t),_t.rtt[De]){let Kt=this.pool.getObjectForId(_t.rtt[De].id);if(Kt.stamp===_t.rtt[De].stamp){this.pool.useObject(Kt);continue}}let Rt=this.pool.getOrCreateFreeObject();this.pool.useObject(Rt),this.pool.stampObject(Rt),_t.rtt[De]={id:Rt.id,stamp:Rt.stamp},xe.context.bindFramebuffer.set(Rt.fbo.framebuffer),xe.context.clear({color:t.aM.transparent,stencil:0}),xe.currentStencilSource=void 0;for(let Kt=0;Kt{Be.touchstart=Be.dragStart,Be.touchmoveWindow=Be.dragMove,Be.touchend=Be.dragEnd},Wa={showCompass:!0,showZoom:!0,visualizePitch:!1};class Go{constructor(R,ie,xe=!1){this.mousedown=ut=>{this.startMouse(t.e({},ut,{ctrlKey:!0,preventDefault:()=>ut.preventDefault()}),a.mousePos(this.element,ut)),a.addEventListener(window,"mousemove",this.mousemove),a.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=ut=>{this.moveMouse(ut,a.mousePos(this.element,ut))},this.mouseup=ut=>{this.mouseRotate.dragEnd(ut),this.mousePitch&&this.mousePitch.dragEnd(ut),this.offTemp()},this.touchstart=ut=>{ut.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=a.touchPos(this.element,ut.targetTouches)[0],this.startTouch(ut,this._startPos),a.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),a.addEventListener(window,"touchend",this.touchend))},this.touchmove=ut=>{ut.targetTouches.length!==1?this.reset():(this._lastPos=a.touchPos(this.element,ut.targetTouches)[0],this.moveTouch(ut,this._lastPos))},this.touchend=ut=>{ut.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let Te=R.dragRotate._mouseRotate.getClickTolerance(),De=R.dragRotate._mousePitch.getClickTolerance();this.element=ie,this.mouseRotate=Jl({clickTolerance:Te,enable:!0}),this.touchRotate=(({enable:ut,clickTolerance:_t,bearingDegreesPerPixelMoved:Rt=.8})=>{let Kt=new tf;return new Xu({clickTolerance:_t,move:(fr,dr)=>({bearingDelta:(dr.x-fr.x)*Rt}),moveStateManager:Kt,enable:ut,assignEvents:vl})})({clickTolerance:Te,enable:!0}),this.map=R,xe&&(this.mousePitch=Wf({clickTolerance:De,enable:!0}),this.touchPitch=(({enable:ut,clickTolerance:_t,pitchDegreesPerPixelMoved:Rt=-.5})=>{let Kt=new tf;return new Xu({clickTolerance:_t,move:(fr,dr)=>({pitchDelta:(dr.y-fr.y)*Rt}),moveStateManager:Kt,enable:ut,assignEvents:vl})})({clickTolerance:De,enable:!0})),a.addEventListener(ie,"mousedown",this.mousedown),a.addEventListener(ie,"touchstart",this.touchstart,{passive:!1}),a.addEventListener(ie,"touchcancel",this.reset)}startMouse(R,ie){this.mouseRotate.dragStart(R,ie),this.mousePitch&&this.mousePitch.dragStart(R,ie),a.disableDrag()}startTouch(R,ie){this.touchRotate.dragStart(R,ie),this.touchPitch&&this.touchPitch.dragStart(R,ie),a.disableDrag()}moveMouse(R,ie){let xe=this.map,{bearingDelta:Te}=this.mouseRotate.dragMove(R,ie)||{};if(Te&&xe.setBearing(xe.getBearing()+Te),this.mousePitch){let{pitchDelta:De}=this.mousePitch.dragMove(R,ie)||{};De&&xe.setPitch(xe.getPitch()+De)}}moveTouch(R,ie){let xe=this.map,{bearingDelta:Te}=this.touchRotate.dragMove(R,ie)||{};if(Te&&xe.setBearing(xe.getBearing()+Te),this.touchPitch){let{pitchDelta:De}=this.touchPitch.dragMove(R,ie)||{};De&&xe.setPitch(xe.getPitch()+De)}}off(){let R=this.element;a.removeEventListener(R,"mousedown",this.mousedown),a.removeEventListener(R,"touchstart",this.touchstart,{passive:!1}),a.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),a.removeEventListener(window,"touchend",this.touchend),a.removeEventListener(R,"touchcancel",this.reset),this.offTemp()}offTemp(){a.enableDrag(),a.removeEventListener(window,"mousemove",this.mousemove),a.removeEventListener(window,"mouseup",this.mouseup),a.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),a.removeEventListener(window,"touchend",this.touchend)}}let el;function Os(Be,R,ie){let xe=new t.N(Be.lng,Be.lat);if(Be=new t.N(Be.lng,Be.lat),R){let Te=new t.N(Be.lng-360,Be.lat),De=new t.N(Be.lng+360,Be.lat),ut=ie.locationPoint(Be).distSqr(R);ie.locationPoint(Te).distSqr(R)180;){let Te=ie.locationPoint(Be);if(Te.x>=0&&Te.y>=0&&Te.x<=ie.width&&Te.y<=ie.height)break;Be.lng>ie.center.lng?Be.lng-=360:Be.lng+=360}return Be.lng!==xe.lng&&ie.locationPoint(Be).y>ie.height/2-ie.getHorizon()?Be:xe}let du={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function zu(Be,R,ie){let xe=Be.classList;for(let Te in du)xe.remove(`maplibregl-${ie}-anchor-${Te}`);xe.add(`maplibregl-${ie}-anchor-${R}`)}class ac extends t.E{constructor(R){if(super(),this._onKeyPress=ie=>{let xe=ie.code,Te=ie.charCode||ie.keyCode;xe!=="Space"&&xe!=="Enter"&&Te!==32&&Te!==13||this.togglePopup()},this._onMapClick=ie=>{let xe=ie.originalEvent.target,Te=this._element;this._popup&&(xe===Te||Te.contains(xe))&&this.togglePopup()},this._update=ie=>{var xe;if(!this._map)return;let Te=this._map.loaded()&&!this._map.isMoving();(ie?.type==="terrain"||ie?.type==="render"&&!Te)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Os(this._lngLat,this._flatPos,this._map.transform):(xe=this._lngLat)===null||xe===void 0?void 0:xe.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let De="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?De=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(De=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let ut="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ut="rotateX(0deg)":this._pitchAlignment==="map"&&(ut=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||ie&&ie.type!=="moveend"||(this._pos=this._pos.round()),a.setTransform(this._element,`${du[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${ut} ${De}`),n.frameAsync(new AbortController).then(()=>{this._updateOpacity(ie&&ie.type==="moveend")}).catch(()=>{})},this._onMove=ie=>{if(!this._isDragging){let xe=this._clickTolerance||this._map._clickTolerance;this._isDragging=ie.point.dist(this._pointerdownPos)>=xe}this._isDragging&&(this._pos=ie.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new t.k("dragstart"))),this.fire(new t.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new t.k("dragend")),this._state="inactive"},this._addDragHandler=ie=>{this._element.contains(ie.originalEvent.target)&&(ie.preventDefault(),this._positionDelta=ie.point.sub(this._pos).add(this._offset),this._pointerdownPos=ie.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=R&&R.anchor||"center",this._color=R&&R.color||"#3FB1CE",this._scale=R&&R.scale||1,this._draggable=R&&R.draggable||!1,this._clickTolerance=R&&R.clickTolerance||0,this._subpixelPositioning=R&&R.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=R&&R.rotation||0,this._rotationAlignment=R&&R.rotationAlignment||"auto",this._pitchAlignment=R&&R.pitchAlignment&&R.pitchAlignment!=="auto"?R.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(R?.opacity,R?.opacityWhenCovered),R&&R.element)this._element=R.element,this._offset=t.P.convert(R&&R.offset||[0,0]);else{this._defaultMarker=!0,this._element=a.create("div");let ie=a.createNS("http://www.w3.org/2000/svg","svg"),xe=41,Te=27;ie.setAttributeNS(null,"display","block"),ie.setAttributeNS(null,"height",`${xe}px`),ie.setAttributeNS(null,"width",`${Te}px`),ie.setAttributeNS(null,"viewBox",`0 0 ${Te} ${xe}`);let De=a.createNS("http://www.w3.org/2000/svg","g");De.setAttributeNS(null,"stroke","none"),De.setAttributeNS(null,"stroke-width","1"),De.setAttributeNS(null,"fill","none"),De.setAttributeNS(null,"fill-rule","evenodd");let ut=a.createNS("http://www.w3.org/2000/svg","g");ut.setAttributeNS(null,"fill-rule","nonzero");let _t=a.createNS("http://www.w3.org/2000/svg","g");_t.setAttributeNS(null,"transform","translate(3.0, 29.0)"),_t.setAttributeNS(null,"fill","#000000");let Rt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let ct of Rt){let Tt=a.createNS("http://www.w3.org/2000/svg","ellipse");Tt.setAttributeNS(null,"opacity","0.04"),Tt.setAttributeNS(null,"cx","10.5"),Tt.setAttributeNS(null,"cy","5.80029008"),Tt.setAttributeNS(null,"rx",ct.rx),Tt.setAttributeNS(null,"ry",ct.ry),_t.appendChild(Tt)}let Kt=a.createNS("http://www.w3.org/2000/svg","g");Kt.setAttributeNS(null,"fill",this._color);let fr=a.createNS("http://www.w3.org/2000/svg","path");fr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Kt.appendChild(fr);let dr=a.createNS("http://www.w3.org/2000/svg","g");dr.setAttributeNS(null,"opacity","0.25"),dr.setAttributeNS(null,"fill","#000000");let jr=a.createNS("http://www.w3.org/2000/svg","path");jr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),dr.appendChild(jr);let ii=a.createNS("http://www.w3.org/2000/svg","g");ii.setAttributeNS(null,"transform","translate(6.0, 7.0)"),ii.setAttributeNS(null,"fill","#FFFFFF");let qe=a.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Ye=a.createNS("http://www.w3.org/2000/svg","circle");Ye.setAttributeNS(null,"fill","#000000"),Ye.setAttributeNS(null,"opacity","0.25"),Ye.setAttributeNS(null,"cx","5.5"),Ye.setAttributeNS(null,"cy","5.5"),Ye.setAttributeNS(null,"r","5.4999962");let nt=a.createNS("http://www.w3.org/2000/svg","circle");nt.setAttributeNS(null,"fill","#FFFFFF"),nt.setAttributeNS(null,"cx","5.5"),nt.setAttributeNS(null,"cy","5.5"),nt.setAttributeNS(null,"r","5.4999962"),qe.appendChild(Ye),qe.appendChild(nt),ut.appendChild(_t),ut.appendChild(Kt),ut.appendChild(dr),ut.appendChild(ii),ut.appendChild(qe),ie.appendChild(ut),ie.setAttributeNS(null,"height",xe*this._scale+"px"),ie.setAttributeNS(null,"width",Te*this._scale+"px"),this._element.appendChild(ie),this._offset=t.P.convert(R&&R.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",ie=>{ie.preventDefault()}),this._element.addEventListener("mousedown",ie=>{ie.preventDefault()}),zu(this._element,this._anchor,"marker"),R&&R.className)for(let ie of R.className.split(" "))this._element.classList.add(ie);this._popup=null}addTo(R){return this.remove(),this._map=R,this._element.setAttribute("aria-label",R._getUIString("Marker.Title")),R.getCanvasContainer().appendChild(this._element),R.on("move",this._update),R.on("moveend",this._update),R.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),a.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(R){return this._lngLat=t.N.convert(R),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(R){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),R){if(!("offset"in R.options)){let Te=Math.abs(13.5)/Math.SQRT2;R.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[Te,-1*(38.1-13.5+Te)],"bottom-right":[-Te,-1*(38.1-13.5+Te)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=R,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(R){return this._subpixelPositioning=R,this}getPopup(){return this._popup}togglePopup(){let R=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:R?(R.isOpen()?R.remove():(R.setLngLat(this._lngLat),R.addTo(this._map)),this):this}_updateOpacity(R=!1){var ie,xe;if(!(!((ie=this._map)===null||ie===void 0)&&ie.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(R)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let Te=this._map,De=Te.terrain.depthAtPoint(this._pos),ut=Te.terrain.getElevationForLngLatZoom(this._lngLat,Te.transform.tileZoom);if(Te.transform.lngLatToCameraDepth(this._lngLat,ut)-De<.006)return void(this._element.style.opacity=this._opacity);let _t=-this._offset.y/Te.transform._pixelPerMeter,Rt=Math.sin(Te.getPitch()*Math.PI/180)*_t,Kt=Te.terrain.depthAtPoint(new t.P(this._pos.x,this._pos.y-this._offset.y)),fr=Te.transform.lngLatToCameraDepth(this._lngLat,ut+Rt)-Kt>.006;!((xe=this._popup)===null||xe===void 0)&&xe.isOpen()&&fr&&this._popup.remove(),this._element.style.opacity=fr?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(R){return this._offset=t.P.convert(R),this._update(),this}addClassName(R){this._element.classList.add(R)}removeClassName(R){this._element.classList.remove(R)}toggleClassName(R){return this._element.classList.toggle(R)}setDraggable(R){return this._draggable=!!R,this._map&&(R?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(R){return this._rotation=R||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(R){return this._rotationAlignment=R||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(R){return this._pitchAlignment=R&&R!=="auto"?R:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(R,ie){return R===void 0&&ie===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),R!==void 0&&(this._opacity=R),ie!==void 0&&(this._opacityWhenCovered=ie),this._map&&this._updateOpacity(!0),this}}let nf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Mu=0,Vc=!1,Fu={maxWidth:100,unit:"metric"};function Cc(Be,R,ie){let xe=ie&&ie.maxWidth||100,Te=Be._container.clientHeight/2,De=Be.unproject([0,Te]),ut=Be.unproject([xe,Te]),_t=De.distanceTo(ut);if(ie&&ie.unit==="imperial"){let Rt=3.2808*_t;Rt>5280?bo(R,xe,Rt/5280,Be._getUIString("ScaleControl.Miles")):bo(R,xe,Rt,Be._getUIString("ScaleControl.Feet"))}else ie&&ie.unit==="nautical"?bo(R,xe,_t/1852,Be._getUIString("ScaleControl.NauticalMiles")):_t>=1e3?bo(R,xe,_t/1e3,Be._getUIString("ScaleControl.Kilometers")):bo(R,xe,_t,Be._getUIString("ScaleControl.Meters"))}function bo(Be,R,ie,xe){let Te=function(De){let ut=Math.pow(10,`${Math.floor(De)}`.length-1),_t=De/ut;return _t=_t>=10?10:_t>=5?5:_t>=3?3:_t>=2?2:_t>=1?1:function(Rt){let Kt=Math.pow(10,Math.ceil(-Math.log(Rt)/Math.LN10));return Math.round(Rt*Kt)/Kt}(_t),ut*_t}(ie);Be.style.width=R*(Te/ie)+"px",Be.innerHTML=`${Te} ${xe}`}let Ko={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},qc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function gc(Be){if(Be){if(typeof Be=="number"){let R=Math.round(Math.abs(Be)/Math.SQRT2);return{center:new t.P(0,0),top:new t.P(0,Be),"top-left":new t.P(R,R),"top-right":new t.P(-R,R),bottom:new t.P(0,-Be),"bottom-left":new t.P(R,-R),"bottom-right":new t.P(-R,-R),left:new t.P(Be,0),right:new t.P(-Be,0)}}if(Be instanceof t.P||Array.isArray(Be)){let R=t.P.convert(Be);return{center:R,top:R,"top-left":R,"top-right":R,bottom:R,"bottom-left":R,"bottom-right":R,left:R,right:R}}return{center:t.P.convert(Be.center||[0,0]),top:t.P.convert(Be.top||[0,0]),"top-left":t.P.convert(Be["top-left"]||[0,0]),"top-right":t.P.convert(Be["top-right"]||[0,0]),bottom:t.P.convert(Be.bottom||[0,0]),"bottom-left":t.P.convert(Be["bottom-left"]||[0,0]),"bottom-right":t.P.convert(Be["bottom-right"]||[0,0]),left:t.P.convert(Be.left||[0,0]),right:t.P.convert(Be.right||[0,0])}}return gc(new t.P(0,0))}let yc=r;e.AJAXError=t.bh,e.Evented=t.E,e.LngLat=t.N,e.MercatorCoordinate=t.Z,e.Point=t.P,e.addProtocol=t.bi,e.config=t.a,e.removeProtocol=t.bj,e.AttributionControl=Mo,e.BoxZoomHandler=Au,e.CanvasSource=Je,e.CooperativeGesturesHandler=In,e.DoubleClickZoomHandler=an,e.DragPanHandler=Vn,e.DragRotateHandler=ra,e.EdgeInsets=ic,e.FullscreenControl=class extends t.E{constructor(Be={}){super(),this._onFullscreenChange=()=>{var R;let ie=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((R=ie?.shadowRoot)===null||R===void 0)&&R.fullscreenElement;)ie=ie.shadowRoot.fullscreenElement;ie===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,Be&&Be.container&&(Be.container instanceof HTMLElement?this._container=Be.container:t.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(Be){return this._map=Be,this._container||(this._container=this._map.getContainer()),this._controlContainer=a.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){a.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let Be=this._fullscreenButton=a.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);a.create("span","maplibregl-ctrl-icon",Be).setAttribute("aria-hidden","true"),Be.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let Be=this._getTitle();this._fullscreenButton.setAttribute("aria-label",Be),this._fullscreenButton.title=Be}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new t.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new t.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},e.GeoJSONSource=Ie,e.GeolocateControl=class extends t.E{constructor(Be){super(),this._onSuccess=R=>{if(this._map){if(this._isOutOfMapMaxBounds(R))return this._setErrorState(),this.fire(new t.k("outofmaxbounds",R)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=R,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(R),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(R),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new t.k("geolocate",R)),this._finish()}},this._updateCamera=R=>{let ie=new t.N(R.coords.longitude,R.coords.latitude),xe=R.coords.accuracy,Te=this._map.getBearing(),De=t.e({bearing:Te},this.options.fitBoundsOptions),ut=ne.fromLngLat(ie,xe);this._map.fitBounds(ut,De,{geolocateSource:!0})},this._updateMarker=R=>{if(R){let ie=new t.N(R.coords.longitude,R.coords.latitude);this._accuracyCircleMarker.setLngLat(ie).addTo(this._map),this._userLocationDotMarker.setLngLat(ie).addTo(this._map),this._accuracy=R.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=R=>{if(this._map){if(this.options.trackUserLocation)if(R.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let ie=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ie,this._geolocateButton.setAttribute("aria-label",ie),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(R.code===3&&Vc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new t.k("error",R)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",R=>R.preventDefault()),this._geolocateButton=a.create("button","maplibregl-ctrl-geolocate",this._container),a.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=R=>{if(this._map){if(R===!1){t.w("Geolocation support is not available so the GeolocateControl will be disabled.");let ie=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ie,this._geolocateButton.setAttribute("aria-label",ie)}else{let ie=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=ie,this._geolocateButton.setAttribute("aria-label",ie)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=a.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ac({element:this._dotElement}),this._circleElement=a.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ac({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",ie=>{ie.geolocateSource||this._watchState!=="ACTIVE_LOCK"||ie.originalEvent&&ie.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new t.k("trackuserlocationend")),this.fire(new t.k("userlocationlostfocus")))})}},this.options=t.e({},nf,Be)}onAdd(Be){return this._map=Be,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return t._(this,arguments,void 0,function*(R=!1){if(el!==void 0&&!R)return el;if(window.navigator.permissions===void 0)return el=!!window.navigator.geolocation,el;try{el=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{el=!!window.navigator.geolocation}return el})}().then(R=>this._finishSetupUI(R)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),a.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Mu=0,Vc=!1}_isOutOfMapMaxBounds(Be){let R=this._map.getMaxBounds(),ie=Be.coords;return R&&(ie.longitudeR.getEast()||ie.latitudeR.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let Be=this._map.getBounds(),R=Be.getSouthEast(),ie=Be.getNorthEast(),xe=R.distanceTo(ie),Te=Math.ceil(this._accuracy/(xe/this._map._container.clientHeight)*2);this._circleElement.style.width=`${Te}px`,this._circleElement.style.height=`${Te}px`}trigger(){if(!this._setup)return t.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Mu--,Vc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new t.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.k("trackuserlocationstart")),this.fire(new t.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let Be;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Mu++,Mu>1?(Be={maximumAge:6e5,timeout:0},Vc=!0):(Be=this.options.positionOptions,Vc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,Be)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},e.Hash=dh,e.ImageSource=tt,e.KeyboardHandler=hr,e.LngLatBounds=ne,e.LogoControl=ya,e.Map=class extends uo{constructor(Be){t.bf.mark(t.bg.create);let R=Object.assign(Object.assign({},Tl),Be);if(R.minZoom!=null&&R.maxZoom!=null&&R.minZoom>R.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(R.minPitch!=null&&R.maxPitch!=null&&R.minPitch>R.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(R.minPitch!=null&&R.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(R.maxPitch!=null&&R.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Pl(R.minZoom,R.maxZoom,R.minPitch,R.maxPitch,R.renderWorldCopies),{bearingSnap:R.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Zn,this._controls=[],this._mapId=t.a4(),this._contextLost=ie=>{ie.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new t.k("webglcontextlost",{originalEvent:ie}))},this._contextRestored=ie=>{this._setupPainter(),this.resize(),this._update(),this.fire(new t.k("webglcontextrestored",{originalEvent:ie}))},this._onMapScroll=ie=>{if(ie.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=R.interactive,this._maxTileCacheSize=R.maxTileCacheSize,this._maxTileCacheZoomLevels=R.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=R.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=R.preserveDrawingBuffer===!0,this._antialias=R.antialias===!0,this._trackResize=R.trackResize===!0,this._bearingSnap=R.bearingSnap,this._refreshExpiredTiles=R.refreshExpiredTiles===!0,this._fadeDuration=R.fadeDuration,this._crossSourceCollisions=R.crossSourceCollisions===!0,this._collectResourceTiming=R.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Ps),R.locale),this._clickTolerance=R.clickTolerance,this._overridePixelRatio=R.pixelRatio,this._maxCanvasSize=R.maxCanvasSize,this.transformCameraUpdate=R.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=R.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=l.addThrottleControl(()=>this.isMoving()),this._requestManager=new _(R.transformRequest),typeof R.container=="string"){if(this._container=document.getElementById(R.container),!this._container)throw new Error(`Container '${R.container}' not found.`)}else{if(!(R.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=R.container}if(R.maxBounds&&this.setMaxBounds(R.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let ie=!1,xe=oh(Te=>{this._trackResize&&!this._removed&&(this.resize(Te),this.redraw())},50);this._resizeObserver=new ResizeObserver(Te=>{ie?xe(Te):ie=!0}),this._resizeObserver.observe(this._container)}this.handlers=new mo(this,R),this._hash=R.hash&&new dh(typeof R.hash=="string"&&R.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:R.center,zoom:R.zoom,bearing:R.bearing,pitch:R.pitch}),R.bounds&&(this.resize(),this.fitBounds(R.bounds,t.e({},R.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=R.localIdeographFontFamily,this._validateStyle=R.validateStyle,R.style&&this.setStyle(R.style,{localIdeographFontFamily:R.localIdeographFontFamily}),R.attributionControl&&this.addControl(new Mo(typeof R.attributionControl=="boolean"?void 0:R.attributionControl)),R.maplibreLogo&&this.addControl(new ya,R.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",ie=>{this._update(ie.dataType==="style"),this.fire(new t.k(`${ie.dataType}data`,ie))}),this.on("dataloading",ie=>{this.fire(new t.k(`${ie.dataType}dataloading`,ie))}),this.on("dataabort",ie=>{this.fire(new t.k("sourcedataabort",ie))})}_getMapId(){return this._mapId}addControl(Be,R){if(R===void 0&&(R=Be.getDefaultPosition?Be.getDefaultPosition():"top-right"),!Be||!Be.onAdd)return this.fire(new t.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let ie=Be.onAdd(this);this._controls.push(Be);let xe=this._controlPositions[R];return R.indexOf("bottom")!==-1?xe.insertBefore(ie,xe.firstChild):xe.appendChild(ie),this}removeControl(Be){if(!Be||!Be.onRemove)return this.fire(new t.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let R=this._controls.indexOf(Be);return R>-1&&this._controls.splice(R,1),Be.onRemove(this),this}hasControl(Be){return this._controls.indexOf(Be)>-1}calculateCameraOptionsFromTo(Be,R,ie,xe){return xe==null&&this.terrain&&(xe=this.terrain.getElevationForLngLatZoom(ie,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(Be,R,ie,xe)}resize(Be){var R;let ie=this._containerDimensions(),xe=ie[0],Te=ie[1],De=this._getClampedPixelRatio(xe,Te);if(this._resizeCanvas(xe,Te,De),this.painter.resize(xe,Te,De),this.painter.overLimit()){let _t=this.painter.context.gl;this._maxCanvasSize=[_t.drawingBufferWidth,_t.drawingBufferHeight];let Rt=this._getClampedPixelRatio(xe,Te);this._resizeCanvas(xe,Te,Rt),this.painter.resize(xe,Te,Rt)}this.transform.resize(xe,Te),(R=this._requestedCameraState)===null||R===void 0||R.resize(xe,Te);let ut=!this._moving;return ut&&(this.stop(),this.fire(new t.k("movestart",Be)).fire(new t.k("move",Be))),this.fire(new t.k("resize",Be)),ut&&this.fire(new t.k("moveend",Be)),this}_getClampedPixelRatio(Be,R){let{0:ie,1:xe}=this._maxCanvasSize,Te=this.getPixelRatio(),De=Be*Te,ut=R*Te;return Math.min(De>ie?ie/De:1,ut>xe?xe/ut:1)*Te}getPixelRatio(){var Be;return(Be=this._overridePixelRatio)!==null&&Be!==void 0?Be:devicePixelRatio}setPixelRatio(Be){this._overridePixelRatio=Be,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(Be){return this.transform.setMaxBounds(ne.convert(Be)),this._update()}setMinZoom(Be){if((Be=Be??-2)>=-2&&Be<=this.transform.maxZoom)return this.transform.minZoom=Be,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=Be,this._update(),this.getZoom()>Be&&this.setZoom(Be),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(Be){if((Be=Be??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Be>=0&&Be<=this.transform.maxPitch)return this.transform.minPitch=Be,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(Be>=this.transform.minPitch)return this.transform.maxPitch=Be,this._update(),this.getPitch()>Be&&this.setPitch(Be),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(Be){return this.transform.renderWorldCopies=Be,this._update()}project(Be){return this.transform.locationPoint(t.N.convert(Be),this.style&&this.terrain)}unproject(Be){return this.transform.pointLocation(t.P.convert(Be),this.terrain)}isMoving(){var Be;return this._moving||((Be=this.handlers)===null||Be===void 0?void 0:Be.isMoving())}isZooming(){var Be;return this._zooming||((Be=this.handlers)===null||Be===void 0?void 0:Be.isZooming())}isRotating(){var Be;return this._rotating||((Be=this.handlers)===null||Be===void 0?void 0:Be.isRotating())}_createDelegatedListener(Be,R,ie){if(Be==="mouseenter"||Be==="mouseover"){let xe=!1;return{layers:R,listener:ie,delegates:{mousemove:De=>{let ut=R.filter(Rt=>this.getLayer(Rt)),_t=ut.length!==0?this.queryRenderedFeatures(De.point,{layers:ut}):[];_t.length?xe||(xe=!0,ie.call(this,new fu(Be,this,De.originalEvent,{features:_t}))):xe=!1},mouseout:()=>{xe=!1}}}}if(Be==="mouseleave"||Be==="mouseout"){let xe=!1;return{layers:R,listener:ie,delegates:{mousemove:ut=>{let _t=R.filter(Rt=>this.getLayer(Rt));(_t.length!==0?this.queryRenderedFeatures(ut.point,{layers:_t}):[]).length?xe=!0:xe&&(xe=!1,ie.call(this,new fu(Be,this,ut.originalEvent)))},mouseout:ut=>{xe&&(xe=!1,ie.call(this,new fu(Be,this,ut.originalEvent)))}}}}{let xe=Te=>{let De=R.filter(_t=>this.getLayer(_t)),ut=De.length!==0?this.queryRenderedFeatures(Te.point,{layers:De}):[];ut.length&&(Te.features=ut,ie.call(this,Te),delete Te.features)};return{layers:R,listener:ie,delegates:{[Be]:xe}}}}_saveDelegatedListener(Be,R){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Be]=this._delegatedListeners[Be]||[],this._delegatedListeners[Be].push(R)}_removeDelegatedListener(Be,R,ie){if(!this._delegatedListeners||!this._delegatedListeners[Be])return;let xe=this._delegatedListeners[Be];for(let Te=0;TeR.includes(ut))){for(let ut in De.delegates)this.off(ut,De.delegates[ut]);return void xe.splice(Te,1)}}}on(Be,R,ie){if(ie===void 0)return super.on(Be,R);let xe=this._createDelegatedListener(Be,typeof R=="string"?[R]:R,ie);this._saveDelegatedListener(Be,xe);for(let Te in xe.delegates)this.on(Te,xe.delegates[Te]);return this}once(Be,R,ie){if(ie===void 0)return super.once(Be,R);let xe=typeof R=="string"?[R]:R,Te=this._createDelegatedListener(Be,xe,ie);for(let De in Te.delegates){let ut=Te.delegates[De];Te.delegates[De]=(..._t)=>{this._removeDelegatedListener(Be,xe,ie),ut(..._t)}}this._saveDelegatedListener(Be,Te);for(let De in Te.delegates)this.once(De,Te.delegates[De]);return this}off(Be,R,ie){return ie===void 0?super.off(Be,R):(this._removeDelegatedListener(Be,typeof R=="string"?[R]:R,ie),this)}queryRenderedFeatures(Be,R){if(!this.style)return[];let ie,xe=Be instanceof t.P||Array.isArray(Be),Te=xe?Be:[[0,0],[this.transform.width,this.transform.height]];if(R=R||(xe?{}:Be)||{},Te instanceof t.P||typeof Te[0]=="number")ie=[t.P.convert(Te)];else{let De=t.P.convert(Te[0]),ut=t.P.convert(Te[1]);ie=[De,new t.P(ut.x,De.y),ut,new t.P(De.x,ut.y),De]}return this.style.queryRenderedFeatures(ie,R,this.transform)}querySourceFeatures(Be,R){return this.style.querySourceFeatures(Be,R)}setStyle(Be,R){return(R=t.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},R)).diff!==!1&&R.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Be?(this._diffStyle(Be,R),this):(this._localIdeographFontFamily=R.localIdeographFontFamily,this._updateStyle(Be,R))}setTransformRequest(Be){return this._requestManager.setTransformRequest(Be),this}_getUIString(Be){let R=this._locale[Be];if(R==null)throw new Error(`Missing UI string '${Be}'`);return R}_updateStyle(Be,R){if(R.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(Be,R));let ie=this.style&&R.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!Be)),Be?(this.style=new Qr(this,R||{}),this.style.setEventedParent(this,{style:this.style}),typeof Be=="string"?this.style.loadURL(Be,R,ie):this.style.loadJSON(Be,R,ie),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Qr(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(Be,R){if(typeof Be=="string"){let ie=this._requestManager.transformRequest(Be,"Style");t.h(ie,new AbortController).then(xe=>{this._updateDiff(xe.data,R)}).catch(xe=>{xe&&this.fire(new t.j(xe))})}else typeof Be=="object"&&this._updateDiff(Be,R)}_updateDiff(Be,R){try{this.style.setState(Be,R)&&this._update(!0)}catch(ie){t.w(`Unable to perform style diff: ${ie.message||ie.error||ie}. Rebuilding the style from scratch.`),this._updateStyle(Be,R)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.w("There is no style added to the map.")}addSource(Be,R){return this._lazyInitEmptyStyle(),this.style.addSource(Be,R),this._update(!0)}isSourceLoaded(Be){let R=this.style&&this.style.sourceCaches[Be];if(R!==void 0)return R.loaded();this.fire(new t.j(new Error(`There is no source with ID '${Be}'`)))}setTerrain(Be){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),Be){let R=this.style.sourceCaches[Be.source];if(!R)throw new Error(`cannot load terrain, because there exists no source with ID: ${Be.source}`);this.terrain===null&&R.reload();for(let ie in this.style._layers){let xe=this.style._layers[ie];xe.type==="hillshade"&&xe.source===Be.source&&t.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Bs(this.painter,R,Be),this.painter.renderToTexture=new il(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=ie=>{ie.dataType==="style"?this.terrain.sourceCache.freeRtt():ie.dataType==="source"&&ie.tile&&(ie.sourceId!==Be.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(ie.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new t.k("terrain",{terrain:Be})),this}getTerrain(){var Be,R;return(R=(Be=this.terrain)===null||Be===void 0?void 0:Be.options)!==null&&R!==void 0?R:null}areTilesLoaded(){let Be=this.style&&this.style.sourceCaches;for(let R in Be){let ie=Be[R]._tiles;for(let xe in ie){let Te=ie[xe];if(Te.state!=="loaded"&&Te.state!=="errored")return!1}}return!0}removeSource(Be){return this.style.removeSource(Be),this._update(!0)}getSource(Be){return this.style.getSource(Be)}addImage(Be,R,ie={}){let{pixelRatio:xe=1,sdf:Te=!1,stretchX:De,stretchY:ut,content:_t,textFitWidth:Rt,textFitHeight:Kt}=ie;if(this._lazyInitEmptyStyle(),!(R instanceof HTMLImageElement||t.b(R))){if(R.width===void 0||R.height===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:fr,height:dr,data:jr}=R,ii=R;return this.style.addImage(Be,{data:new t.R({width:fr,height:dr},new Uint8Array(jr)),pixelRatio:xe,stretchX:De,stretchY:ut,content:_t,textFitWidth:Rt,textFitHeight:Kt,sdf:Te,version:0,userImage:ii}),ii.onAdd&&ii.onAdd(this,Be),this}}{let{width:fr,height:dr,data:jr}=n.getImageData(R);this.style.addImage(Be,{data:new t.R({width:fr,height:dr},jr),pixelRatio:xe,stretchX:De,stretchY:ut,content:_t,textFitWidth:Rt,textFitHeight:Kt,sdf:Te,version:0})}}updateImage(Be,R){let ie=this.style.getImage(Be);if(!ie)return this.fire(new t.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let xe=R instanceof HTMLImageElement||t.b(R)?n.getImageData(R):R,{width:Te,height:De,data:ut}=xe;if(Te===void 0||De===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Te!==ie.data.width||De!==ie.data.height)return this.fire(new t.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let _t=!(R instanceof HTMLImageElement||t.b(R));return ie.data.replace(ut,_t),this.style.updateImage(Be,ie),this}getImage(Be){return this.style.getImage(Be)}hasImage(Be){return Be?!!this.style.getImage(Be):(this.fire(new t.j(new Error("Missing required image id"))),!1)}removeImage(Be){this.style.removeImage(Be)}loadImage(Be){return l.getImage(this._requestManager.transformRequest(Be,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(Be,R){return this._lazyInitEmptyStyle(),this.style.addLayer(Be,R),this._update(!0)}moveLayer(Be,R){return this.style.moveLayer(Be,R),this._update(!0)}removeLayer(Be){return this.style.removeLayer(Be),this._update(!0)}getLayer(Be){return this.style.getLayer(Be)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(Be,R,ie){return this.style.setLayerZoomRange(Be,R,ie),this._update(!0)}setFilter(Be,R,ie={}){return this.style.setFilter(Be,R,ie),this._update(!0)}getFilter(Be){return this.style.getFilter(Be)}setPaintProperty(Be,R,ie,xe={}){return this.style.setPaintProperty(Be,R,ie,xe),this._update(!0)}getPaintProperty(Be,R){return this.style.getPaintProperty(Be,R)}setLayoutProperty(Be,R,ie,xe={}){return this.style.setLayoutProperty(Be,R,ie,xe),this._update(!0)}getLayoutProperty(Be,R){return this.style.getLayoutProperty(Be,R)}setGlyphs(Be,R={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(Be,R),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(Be,R,ie={}){return this._lazyInitEmptyStyle(),this.style.addSprite(Be,R,ie,xe=>{xe||this._update(!0)}),this}removeSprite(Be){return this._lazyInitEmptyStyle(),this.style.removeSprite(Be),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(Be,R={}){return this._lazyInitEmptyStyle(),this.style.setSprite(Be,R,ie=>{ie||this._update(!0)}),this}setLight(Be,R={}){return this._lazyInitEmptyStyle(),this.style.setLight(Be,R),this._update(!0)}getLight(){return this.style.getLight()}setSky(Be){return this._lazyInitEmptyStyle(),this.style.setSky(Be),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(Be,R){return this.style.setFeatureState(Be,R),this._update()}removeFeatureState(Be,R){return this.style.removeFeatureState(Be,R),this._update()}getFeatureState(Be){return this.style.getFeatureState(Be)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let Be=0,R=0;return this._container&&(Be=this._container.clientWidth||400,R=this._container.clientHeight||300),[Be,R]}_setupContainer(){let Be=this._container;Be.classList.add("maplibregl-map");let R=this._canvasContainer=a.create("div","maplibregl-canvas-container",Be);this._interactive&&R.classList.add("maplibregl-interactive"),this._canvas=a.create("canvas","maplibregl-canvas",R),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let ie=this._containerDimensions(),xe=this._getClampedPixelRatio(ie[0],ie[1]);this._resizeCanvas(ie[0],ie[1],xe);let Te=this._controlContainer=a.create("div","maplibregl-control-container",Be),De=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(ut=>{De[ut]=a.create("div",`maplibregl-ctrl-${ut} `,Te)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(Be,R,ie){this._canvas.width=Math.floor(ie*Be),this._canvas.height=Math.floor(ie*R),this._canvas.style.width=`${Be}px`,this._canvas.style.height=`${R}px`}_setupPainter(){let Be={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},R=null;this._canvas.addEventListener("webglcontextcreationerror",xe=>{R={requestedAttributes:Be},xe&&(R.statusMessage=xe.statusMessage,R.type=xe.type)},{once:!0});let ie=this._canvas.getContext("webgl2",Be)||this._canvas.getContext("webgl",Be);if(!ie){let xe="Failed to initialize WebGL";throw R?(R.message=xe,new Error(JSON.stringify(R))):new Error(xe)}this.painter=new Mc(ie,this.transform),s.testSupport(ie)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(Be){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||Be,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(Be){return this._update(),this._renderTaskQueue.add(Be)}_cancelRenderFrame(Be){this._renderTaskQueue.remove(Be)}_render(Be){let R=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Be),this._removed)return;let ie=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let Te=this.transform.zoom,De=n.now();this.style.zoomHistory.update(Te,De);let ut=new t.z(Te,{now:De,fadeDuration:R,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),_t=ut.crossFadingFactor();_t===1&&_t===this._crossFadingFactor||(ie=!0,this._crossFadingFactor=_t),this.style.update(ut)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,R,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:R,showPadding:this.showPadding}),this.fire(new t.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.bf.mark(t.bg.load),this.fire(new t.k("load"))),this.style&&(this.style.hasTransitions()||ie)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let xe=this._sourcesDirty||this._styleDirty||this._placementDirty;return xe||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.k("idle")),!this._loaded||this._fullyLoaded||xe||(this._fullyLoaded=!0,t.bf.mark(t.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var Be;this._hash&&this._hash.remove();for(let ie of this._controls)ie.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),l.removeThrottleControl(this._imageQueueHandle),(Be=this._resizeObserver)===null||Be===void 0||Be.disconnect();let R=this.painter.context.gl.getExtension("WEBGL_lose_context");R?.loseContext&&R.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),a.remove(this._canvasContainer),a.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),t.bf.clearMetrics(),this._removed=!0,this.fire(new t.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,n.frameAsync(this._frameRequest).then(Be=>{t.bf.frame(Be),this._frameRequest=null,this._render(Be)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(Be){this._showTileBoundaries!==Be&&(this._showTileBoundaries=Be,this._update())}get showPadding(){return!!this._showPadding}set showPadding(Be){this._showPadding!==Be&&(this._showPadding=Be,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(Be){this._showCollisionBoxes!==Be&&(this._showCollisionBoxes=Be,Be?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(Be){this._showOverdrawInspector!==Be&&(this._showOverdrawInspector=Be,this._update())}get repaint(){return!!this._repaint}set repaint(Be){this._repaint!==Be&&(this._repaint=Be,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(Be){this._vertices=Be,this._update()}get version(){return ql}getCameraTargetElevation(){return this.transform.elevation}},e.MapMouseEvent=fu,e.MapTouchEvent=ef,e.MapWheelEvent=vh,e.Marker=ac,e.NavigationControl=class{constructor(Be){this._updateZoomButtons=()=>{let R=this._map.getZoom(),ie=R===this._map.getMaxZoom(),xe=R===this._map.getMinZoom();this._zoomInButton.disabled=ie,this._zoomOutButton.disabled=xe,this._zoomInButton.setAttribute("aria-disabled",ie.toString()),this._zoomOutButton.setAttribute("aria-disabled",xe.toString())},this._rotateCompassArrow=()=>{let R=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=R},this._setButtonTitle=(R,ie)=>{let xe=this._map._getUIString(`NavigationControl.${ie}`);R.title=xe,R.setAttribute("aria-label",xe)},this.options=t.e({},Wa,Be),this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",R=>R.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",R=>this._map.zoomIn({},{originalEvent:R})),a.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",R=>this._map.zoomOut({},{originalEvent:R})),a.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",R=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:R}):this._map.resetNorth({},{originalEvent:R})}),this._compassIcon=a.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(Be){return this._map=Be,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Go(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){a.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(Be,R){let ie=a.create("button",Be,this._container);return ie.type="button",ie.addEventListener("click",R),ie}},e.Popup=class extends t.E{constructor(Be){super(),this.remove=()=>(this._content&&a.remove(this._content),this._container&&(a.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new t.k("close"))),this),this._onMouseUp=R=>{this._update(R.point)},this._onMouseMove=R=>{this._update(R.point)},this._onDrag=R=>{this._update(R.point)},this._update=R=>{var ie;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=a.create("div","maplibregl-popup",this._map.getContainer()),this._tip=a.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let _t of this.options.className.split(" "))this._container.classList.add(_t);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Os(this._lngLat,this._flatPos,this._map.transform):(ie=this._lngLat)===null||ie===void 0?void 0:ie.wrap(),this._trackPointer&&!R)return;let xe=this._flatPos=this._pos=this._trackPointer&&R?R:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&R?R:this._map.transform.locationPoint(this._lngLat));let Te=this.options.anchor,De=gc(this.options.offset);if(!Te){let _t=this._container.offsetWidth,Rt=this._container.offsetHeight,Kt;Kt=xe.y+De.bottom.ythis._map.transform.height-Rt?["bottom"]:[],xe.x<_t/2?Kt.push("left"):xe.x>this._map.transform.width-_t/2&&Kt.push("right"),Te=Kt.length===0?"bottom":Kt.join("-")}let ut=xe.add(De[Te]);this.options.subpixelPositioning||(ut=ut.round()),a.setTransform(this._container,`${du[Te]} translate(${ut.x}px,${ut.y}px)`),zu(this._container,Te,"popup")},this._onClose=()=>{this.remove()},this.options=t.e(Object.create(Ko),Be)}addTo(Be){return this._map&&this.remove(),this._map=Be,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new t.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(Be){return this._lngLat=t.N.convert(Be),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(Be){return this.setDOMContent(document.createTextNode(Be))}setHTML(Be){let R=document.createDocumentFragment(),ie=document.createElement("body"),xe;for(ie.innerHTML=Be;xe=ie.firstChild,xe;)R.appendChild(xe);return this.setDOMContent(R)}getMaxWidth(){var Be;return(Be=this._container)===null||Be===void 0?void 0:Be.style.maxWidth}setMaxWidth(Be){return this.options.maxWidth=Be,this._update(),this}setDOMContent(Be){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=a.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(Be),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(Be){return this._container&&this._container.classList.add(Be),this}removeClassName(Be){return this._container&&this._container.classList.remove(Be),this}setOffset(Be){return this.options.offset=Be,this._update(),this}toggleClassName(Be){if(this._container)return this._container.classList.toggle(Be)}setSubpixelPositioning(Be){this.options.subpixelPositioning=Be}_createCloseButton(){this.options.closeButton&&(this._closeButton=a.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let Be=this._container.querySelector(qc);Be&&Be.focus()}},e.RasterDEMTileSource=Oe,e.RasterTileSource=we,e.ScaleControl=class{constructor(Be){this._onMove=()=>{Cc(this._map,this._container,this.options)},this.setUnit=R=>{this.options.unit=R,Cc(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Fu),Be)}getDefaultPosition(){return"bottom-left"}onAdd(Be){return this._map=Be,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-scale",Be.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){a.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},e.ScrollZoomHandler=ki,e.Style=Qr,e.TerrainControl=class{constructor(Be){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=Be}onAdd(Be){return this._map=Be,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=a.create("button","maplibregl-ctrl-terrain",this._container),a.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){a.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},e.TwoFingersTouchPitchHandler=rf,e.TwoFingersTouchRotateHandler=jc,e.TwoFingersTouchZoomHandler=hu,e.TwoFingersTouchZoomRotateHandler=yn,e.VectorTileSource=_e,e.VideoSource=rt,e.addSourceType=(Be,R)=>t._(void 0,void 0,void 0,function*(){if(Me(Be))throw new Error(`A source type called "${Be}" already exists.`);((ie,xe)=>{ot[ie]=xe})(Be,R)}),e.clearPrewarmedResources=function(){let Be=fe;Be&&(Be.isPreloaded()&&Be.numActive()===1?(Be.release(Q),fe=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},e.getMaxParallelImageRequests=function(){return t.a.MAX_PARALLEL_IMAGE_REQUESTS},e.getRTLTextPluginStatus=function(){return Qe().getRTLTextPluginStatus()},e.getVersion=function(){return yc},e.getWorkerCount=function(){return le.workerCount},e.getWorkerUrl=function(){return t.a.WORKER_URL},e.importScriptInWorkers=function(Be){return X().broadcast("IS",Be)},e.prewarm=function(){J().acquire(Q)},e.setMaxParallelImageRequests=function(Be){t.a.MAX_PARALLEL_IMAGE_REQUESTS=Be},e.setRTLTextPlugin=function(Be,R){return Qe().setRTLTextPlugin(Be,R)},e.setWorkerCount=function(Be){le.workerCount=Be},e.setWorkerUrl=function(Be){t.a.WORKER_URL=Be}});var S=g;return S})}}),ZD=Le({"src/plots/map/layers.js"(Z,H){"use strict";var g=ni(),x=$l().sanitizeHTML,A=fM(),S=um();function e(n,a){this.subplot=n,this.uid=n.uid+"-"+a,this.index=a,this.idSource="source-"+this.uid,this.idLayer=S.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(a){this.visible?this.needsNewImage(a)?this.updateImage(a):this.needsNewSource(a)?(this.removeLayer(),this.updateSource(a),this.updateLayer(a)):this.needsNewLayer(a)?this.updateLayer(a):this.updateStyle(a):(this.updateSource(a),this.updateLayer(a)),this.visible=r(a)},t.needsNewImage=function(n){var a=this.subplot.map;return a.getSource(this.idSource)&&this.sourceType==="image"&&n.sourcetype==="image"&&(this.source!==n.source||JSON.stringify(this.coordinates)!==JSON.stringify(n.coordinates))},t.needsNewSource=function(n){return this.sourceType!==n.sourcetype||JSON.stringify(this.source)!==JSON.stringify(n.source)||this.layerType!==n.type},t.needsNewLayer=function(n){return this.layerType!==n.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(n){var a=this.subplot.map;a.getSource(this.idSource).updateImage({url:n.source,coordinates:n.coordinates});var s=this.findFollowingMapLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(n){var a=this.subplot.map;if(a.getSource(this.idSource)&&a.removeSource(this.idSource),this.sourceType=n.sourcetype,this.source=n.source,!!r(n)){var s=i(n);a.addSource(this.idSource,s)}},t.findFollowingMapLayerId=function(n){if(n==="traces")for(var a=this.subplot.getMapLayers(),s=0;s0){for(var s=0;s0}function o(n){var a={},s={};switch(n.type){case"circle":g.extendFlat(s,{"circle-radius":n.circle.radius,"circle-color":n.color,"circle-opacity":n.opacity});break;case"line":g.extendFlat(s,{"line-width":n.line.width,"line-color":n.color,"line-opacity":n.opacity,"line-dasharray":n.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":n.color,"fill-outline-color":n.fill.outlinecolor,"fill-opacity":n.opacity});break;case"symbol":var c=n.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(a,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":n.color,"text-color":c.textfont.color,"text-opacity":n.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":n.opacity});break}return{layout:a,paint:s}}function i(n){var a=n.sourcetype,s=n.source,c={type:a},h;return a==="geojson"?h="data":a==="vector"?h=typeof s=="string"?"url":"tiles":a==="raster"?(h="tiles",c.tileSize=256):a==="image"&&(h="url",c.coordinates=n.coordinates),c[h]=s,n.sourceattribution&&(c.attribution=x(n.sourceattribution)),c}H.exports=function(a,s,c){var h=new e(a,s);return h.update(c),h}}}),YD=Le({"src/plots/map/map.js"(Z,H){"use strict";var g=XD(),x=ni(),A=am(),S=so(),e=Zo(),t=Kh(),r=Dc(),o=hv(),i=o.drawMode,n=o.selectMode,a=cf().prepSelect,s=cf().clearOutline,c=cf().clearSelectionsCache,h=cf().selectOnClick,p=um(),d=ZD();function T(m,b){this.id=b,this.gd=m;var v=m._fullLayout,u=m._context;this.container=v._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=v._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(v),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,v){var u=this,y;u.map?y=new Promise(function(f,P){u.updateMap(m,b,f,P)}):y=new Promise(function(f,P){u.createMap(m,b,f,P)}),v.push(y)},l.createMap=function(m,b,v,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style),L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0})),O={};F.on("styleimagemissing",function(I){var N=I.id;if(!O[N]&&N.includes("-15")){O[N]=!0;var U=new Image(15,15);U.onload=function(){F.addImage(N,U)},U.crossOrigin="Anonymous",U.src="https://unpkg.com/maki@2.1.0/icons/"+N+".svg"}}),F.setTransformRequest(function(I){return I=I.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:I}}),F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var B=[];B.push(new Promise(function(I){F.once("load",I)})),B=B.concat(A.fetchTraceGeoData(m)),Promise.all(B).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(v)}).catch(u)},l.updateMap=function(m,b,v,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(v)}).catch(u)},l.fillBelowLookup=function(m,b){var v=b[this.id],u=v.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y1)for(y=0;y-1&&h(z.originalEvent,u,[v.xaxis],[v.yaxis],v.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,v=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var O=z.range={};O[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var B=z.lassoPoints={};B[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),v.off("click",b.onClickInPanHandler),n(f)||i(f)?(v.dragPan.disable(),v.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,O){a(z,F,O,b.dragOptions,f)},t.init(b.dragOptions)):(v.dragPan.enable(),v.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),v.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,v=m._size,u=this.div.style;u.width=v.w*(b.x[1]-b.x[0])+"px",u.height=v.h*(b.y[1]-b.y[0])+"px",u.left=v.l+b.x[0]*v.w+"px",u.top=v.t+(1-b.y[1])*v.h+"px",this.xaxis._offset=v.l+b.x[0]*v.w,this.xaxis._length=v.w*(b.x[1]-b.x[0]),this.yaxis._offset=v.t+(1-b.y[1])*v.h,this.yaxis._length=v.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],v=b.layers,u=this.layerList,y;if(v.length!==u.length){for(y=0;yv/2){var u=M.split("|").join("
");m.text(u).attr("data-unformatted",u).call(r.convertToTspans,n),b=t.bBox(m.node())}m.attr("transform",g(-3,-b.height+8)),E.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var y=1;b.width+6>v&&(y=v/(b.width+6));var f=[c.l+c.w*d.x[1],c.t+c.h*(1-d.y[0])];E.attr("transform",g(f[0],f[1])+x(y))}},Z.updateFx=function(n){for(var a=n._fullLayout,s=a._subplots[i],c=0;c=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var i=o[0].trace,n=new S(r,i.uid),a=n.sourceId,s=g(o),c=n.below=r.belowLookup["trace-"+i.uid];return r.map.addSource(a,{type:"geojson",data:s.geojson}),n._addLayers(s,c),o[0].trace._glTrace=n,n}}}),tz=Le({"src/traces/choroplethmap/index.js"(Z,H){"use strict";H.exports={attributes:hM(),supplyDefaults:QD(),colorbar:Xp(),calc:ub(),plot:ez(),hoverPoints:fb(),eventData:hb(),selectPoints:db(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.updateOnSelect(x)}},getBelow:function(g,x){for(var A=x.getMapLayers(),S=A.length-2;S>=0;S--){var e=A[S].id;if(typeof e=="string"&&e.indexOf("water")===0){for(var t=S+1;t0?+d[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:M})}}var m=S.extractOpts(i),b=m.reversescale?S.flipScale(m.colorscale):m.colorscale,v=b[0][1],u=A.opacity(v)<1?v:A.addOpacity(v,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h=0;r--)e.removeLayer(t[r][1])},S.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,i=new A(t,o.uid),n=i.sourceId,a=g(r),s=i.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(n,{type:"geojson",data:a.geojson}),i._addLayers(a,s),i}}}),sz=Le({"src/traces/densitymap/hover.js"(Z,H){"use strict";var g=Zo(),x=Cb().hoverPoints,A=Cb().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var i=o[0],n=i.cd,a=n[0].trace,s=n[i.index];if(delete i.color,"z"in s){var c=i.subplot.mockAxis;i.z=s.z,i.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return i.extraText=A(a,s,n[0].t.labels),[i]}}}}),lz=Le({"src/traces/densitymap/event_data.js"(Z,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),uz=Le({"src/traces/densitymap/index.js"(Z,H){"use strict";H.exports={attributes:vM(),supplyDefaults:iz(),colorbar:Xp(),formatLabels:cM(),calc:nz(),plot:oz(),hoverPoints:sz(),eventData:lz(),getBelow:function(g,x){for(var A=x.getMapLayers(),S=0;S0;){l=w[w.length-1];var M=x[l];if(r[l]=0&&i[l].push(o[m])}r[l]=E}else{if(e[l]===S[l]){for(var b=[],v=[],u=0,E=_.length-1;E>=0;--E){var y=_[E];if(t[y]=!1,b.push(y),v.push(i[y]),u+=i[y].length,o[y]=s.length,y===l){_.length=E;break}}s.push(b);for(var f=new Array(u),E=0;Em&&(m=a.source[_]),a.target[_]>m&&(m=a.target[_]);var b=m+1;i.node._count=b;var v,u=i.node.groups,y={};for(_=0;_0&&e(O,b)&&e(B,b)&&!(y.hasOwnProperty(O)&&y.hasOwnProperty(B)&&y[O]===y[B])){y.hasOwnProperty(B)&&(B=y[B]),y.hasOwnProperty(O)&&(O=y[O]),O=+O,B=+B,d[O]=d[B]=!0;var I="";a.label&&a.label[_]&&(I=a.label[_]);var N=null;I&&T.hasOwnProperty(I)&&(N=T[I]),s.push({pointNumber:_,label:I,color:c?a.color[_]:a.color,hovercolor:h?a.hovercolor[_]:a.hovercolor,customdata:p?a.customdata[_]:a.customdata,concentrationscale:N,source:O,target:B,value:+F}),z.source.push(O),z.target.push(B)}}var U=b+u.length,W=S(n.color),Q=S(n.customdata),le=[];for(_=0;_b-1,childrenNodes:[],pointNumber:_,label:se,color:W?n.color[_]:n.color,customdata:Q?n.customdata[_]:n.customdata})}var fe=!1;return o(U,z.source,z.target)&&(fe=!0),{circular:fe,links:s,nodes:le,groups:u,groupLookup:y}}function o(i,n,a){for(var s=x.init2dArray(i,0),c=0;c1})}H.exports=function(n,a){var s=r(a);return A({circular:s.circular,_nodes:s.nodes,_links:s.links,_groups:s.groups,_groupLookup:s.groupLookup})}}}),dz=Le({"node_modules/d3-quadtree/dist/d3-quadtree.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z):(g=g||self,x(g.d3=g.d3||{}))})(Z,function(g){"use strict";function x(b){var v=+this._x.call(null,b),u=+this._y.call(null,b);return A(this.cover(v,u),v,u,b)}function A(b,v,u,y){if(isNaN(v)||isNaN(u))return b;var f,P=b._root,L={data:y},z=b._x0,F=b._y0,O=b._x1,B=b._y1,I,N,U,W,Q,le,se,fe;if(!P)return b._root=L,b;for(;P.length;)if((Q=v>=(I=(z+O)/2))?z=I:O=I,(le=u>=(N=(F+B)/2))?F=N:B=N,f=P,!(P=P[se=le<<1|Q]))return f[se]=L,b;if(U=+b._x.call(null,P.data),W=+b._y.call(null,P.data),v===U&&u===W)return L.next=P,f?f[se]=L:b._root=L,b;do f=f?f[se]=new Array(4):b._root=new Array(4),(Q=v>=(I=(z+O)/2))?z=I:O=I,(le=u>=(N=(F+B)/2))?F=N:B=N;while((se=le<<1|Q)===(fe=(W>=N)<<1|U>=I));return f[fe]=P,f[se]=L,b}function S(b){var v,u,y=b.length,f,P,L=new Array(y),z=new Array(y),F=1/0,O=1/0,B=-1/0,I=-1/0;for(u=0;uB&&(B=f),PI&&(I=P));if(F>B||O>I)return this;for(this.cover(F,O).cover(B,I),u=0;ub||b>=f||y>v||v>=P;)switch(O=(vB||(z=W.y0)>I||(F=W.x1)=se)<<1|b>=le)&&(W=N[N.length-1],N[N.length-1]=N[N.length-1-Q],N[N.length-1-Q]=W)}else{var fe=b-+this._x.call(null,U.data),G=v-+this._y.call(null,U.data),J=fe*fe+G*G;if(J=(N=(L+F)/2))?L=N:F=N,(Q=I>=(U=(z+O)/2))?z=U:O=U,v=u,!(u=u[le=Q<<1|W]))return this;if(!u.length)break;(v[le+1&3]||v[le+2&3]||v[le+3&3])&&(y=v,se=le)}for(;u.data!==b;)if(f=u,!(u=u.next))return this;return(P=u.next)&&delete u.next,f?(P?f.next=P:delete f.next,this):v?(P?v[le]=P:delete v[le],(u=v[0]||v[1]||v[2]||v[3])&&u===(v[3]||v[2]||v[1]||v[0])&&!u.length&&(y?y[se]=u:this._root=u),this):(this._root=P,this)}function a(b){for(var v=0,u=b.length;v=d.length)return l!=null&&m.sort(l),_!=null?_(m):m;for(var y=-1,f=m.length,P=d[b++],L,z,F=S(),O,B=v();++yd.length)return m;var v,u=T[b-1];return _!=null&&b>=d.length?v=m.entries():(v=[],m.each(function(y,f){v.push({key:f,values:E(y,b)})})),u!=null?v.sort(function(y,f){return u(y.key,f.key)}):v}return w={object:function(m){return M(m,0,t,r)},map:function(m){return M(m,0,o,i)},entries:function(m){return E(M(m,0,o,i),0)},key:function(m){return d.push(m),w},sortKeys:function(m){return T[d.length-1]=m,w},sortValues:function(m){return l=m,w},rollup:function(m){return _=m,w}}}function t(){return{}}function r(d,T,l){d[T]=l}function o(){return S()}function i(d,T,l){d.set(T,l)}function n(){}var a=S.prototype;n.prototype=s.prototype={constructor:n,has:a.has,add:function(d){return d+="",this[x+d]=d,this},remove:a.remove,clear:a.clear,values:a.keys,size:a.size,empty:a.empty,each:a.each};function s(d,T){var l=new n;if(d instanceof n)d.each(function(M){l.add(M)});else if(d){var _=-1,w=d.length;if(T==null)for(;++_=0&&(a=n.slice(s+1),n=n.slice(0,s)),n&&!i.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:a}})}S.prototype=A.prototype={constructor:S,on:function(o,i){var n=this._,a=e(o+"",n),s,c=-1,h=a.length;if(arguments.length<2){for(;++c0)for(var n=new Array(s),a=0,s,c;a=0&&b._call.call(null,v),b=b._next;--x}function l(){i=(o=a.now())+n,x=A=0;try{T()}finally{x=0,w(),i=0}}function _(){var b=a.now(),v=b-o;v>e&&(n-=v,o=b)}function w(){for(var b,v=t,u,y=1/0;v;)v._call?(y>v._time&&(y=v._time),b=v,v=v._next):(u=v._next,v._next=null,v=b?b._next=u:t=u);r=b,M(y)}function M(b){if(!x){A&&(A=clearTimeout(A));var v=b-i;v>24?(b<1/0&&(A=setTimeout(l,b-a.now()-n)),S&&(S=clearInterval(S))):(S||(o=a.now(),S=setInterval(_,e)),x=1,s(l))}}function E(b,v,u){var y=new p;return v=v==null?0:+v,y.restart(function(f){y.stop(),b(f+v)},v,u),y}function m(b,v,u){var y=new p,f=v;return v==null?(y.restart(b,v,u),y):(v=+v,u=u==null?c():+u,y.restart(function P(L){L+=f,y.restart(P,f+=v,u),b(L)},v,u),y)}g.interval=m,g.now=c,g.timeout=E,g.timer=d,g.timerFlush=T,Object.defineProperty(g,"__esModule",{value:!0})})}}),mz=Le({"node_modules/d3-force/dist/d3-force.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z,dz(),Pb(),vz(),pz()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,g.d3)})(Z,function(g,x,A,S,e){"use strict";function t(b,v){var u;b==null&&(b=0),v==null&&(v=0);function y(){var f,P=u.length,L,z=0,F=0;for(f=0;fI.index){var ee=N-re.x-re.vx,ne=U-re.y-re.vy,ce=ee*ee+ne*ne;ceN+j||$U+j||XF.r&&(F.r=F[O].r)}function z(){if(v){var F,O=v.length,B;for(u=new Array(O),F=0;F1?(Q==null?z.remove(W):z.set(W,U(Q)),v):z.get(W)},find:function(W,Q,le){var se=0,fe=b.length,G,J,$,X,re;for(le==null?le=1/0:le*=le,se=0;se1?(O.on(W,Q),v):O.on(W)}}}function w(){var b,v,u,y=r(-30),f,P=1,L=1/0,z=.81;function F(N){var U,W=b.length,Q=x.quadtree(b,p,d).visitAfter(B);for(u=N,U=0;U=L)return;(N.data!==v||N.next)&&(le===0&&(le=o(),G+=le*le),se===0&&(se=o(),G+=se*se),GS)if(!(Math.abs(l*p-d*T)>S)||!s)this._+="L"+(this._x1=o)+","+(this._y1=i);else{var w=n-c,M=a-h,E=p*p+d*d,m=w*w+M*M,b=Math.sqrt(E),v=Math.sqrt(_),u=s*Math.tan((x-Math.acos((E+_-m)/(2*b*v)))/2),y=u/v,f=u/b;Math.abs(y-1)>S&&(this._+="L"+(o+y*T)+","+(i+y*l)),this._+="A"+s+","+s+",0,0,"+ +(l*w>T*M)+","+(this._x1=o+f*p)+","+(this._y1=i+f*d)}},arc:function(o,i,n,a,s,c){o=+o,i=+i,n=+n,c=!!c;var h=n*Math.cos(a),p=n*Math.sin(a),d=o+h,T=i+p,l=1^c,_=c?a-s:s-a;if(n<0)throw new Error("negative radius: "+n);this._x1===null?this._+="M"+d+","+T:(Math.abs(this._x1-d)>S||Math.abs(this._y1-T)>S)&&(this._+="L"+d+","+T),n&&(_<0&&(_=_%A+A),_>e?this._+="A"+n+","+n+",0,1,"+l+","+(o-h)+","+(i-p)+"A"+n+","+n+",0,1,"+l+","+(this._x1=d)+","+(this._y1=T):_>S&&(this._+="A"+n+","+n+",0,"+ +(_>=x)+","+l+","+(this._x1=o+n*Math.cos(s))+","+(this._y1=i+n*Math.sin(s))))},rect:function(o,i,n,a){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+i)+"h"+ +n+"v"+ +a+"h"+-n+"Z"},toString:function(){return this._}},g.path=r,Object.defineProperty(g,"__esModule",{value:!0})})}}),gM=Le({"node_modules/d3-shape/dist/d3-shape.js"(Z,H){(function(g,x){typeof Z=="object"&&typeof H<"u"?x(Z,gz()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(Z,function(g,x){"use strict";function A(Et){return function(){return Et}}var S=Math.abs,e=Math.atan2,t=Math.cos,r=Math.max,o=Math.min,i=Math.sin,n=Math.sqrt,a=1e-12,s=Math.PI,c=s/2,h=2*s;function p(Et){return Et>1?0:Et<-1?s:Math.acos(Et)}function d(Et){return Et>=1?c:Et<=-1?-c:Math.asin(Et)}function T(Et){return Et.innerRadius}function l(Et){return Et.outerRadius}function _(Et){return Et.startAngle}function w(Et){return Et.endAngle}function M(Et){return Et&&Et.padAngle}function E(Et,ar,gr,ti,wi,Gi,Fi,xi){var Ii=gr-Et,Bn=ti-ar,hn=Fi-wi,ba=xi-Gi,Aa=ba*Ii-hn*Bn;if(!(Aa*AaDs*Ds+Hs*Hs&&(Za=ss,Qo=gs),{cx:Za,cy:Qo,x01:-hn,y01:-ba,x11:Za*(wi/bs-1),y11:Qo*(wi/bs-1)}}function b(){var Et=T,ar=l,gr=A(0),ti=null,wi=_,Gi=w,Fi=M,xi=null;function Ii(){var Bn,hn,ba=+Et.apply(this,arguments),Aa=+ar.apply(this,arguments),Va=wi.apply(this,arguments)-c,Qa=Gi.apply(this,arguments)-c,yo=S(Qa-Va),Ga=Qa>Va;if(xi||(xi=Bn=x.path()),Aaa))xi.moveTo(0,0);else if(yo>h-a)xi.moveTo(Aa*t(Va),Aa*i(Va)),xi.arc(0,0,Aa,Va,Qa,!Ga),ba>a&&(xi.moveTo(ba*t(Qa),ba*i(Qa)),xi.arc(0,0,ba,Qa,Va,Ga));else{var Yo=Va,da=Qa,vs=Va,es=Qa,bs=yo,Xa=yo,Bo=Fi.apply(this,arguments)/2,Za=Bo>a&&(ti?+ti.apply(this,arguments):n(ba*ba+Aa*Aa)),Qo=o(S(Aa-ba)/2,+gr.apply(this,arguments)),ss=Qo,gs=Qo,vo,zo;if(Za>a){var Ds=d(Za/ba*i(Bo)),Hs=d(Za/Aa*i(Bo));(bs-=Ds*2)>a?(Ds*=Ga?1:-1,vs+=Ds,es-=Ds):(bs=0,vs=es=(Va+Qa)/2),(Xa-=Hs*2)>a?(Hs*=Ga?1:-1,Yo+=Hs,da-=Hs):(Xa=0,Yo=da=(Va+Qa)/2)}var Zs=Aa*t(Yo),ps=Aa*i(Yo),bn=ba*t(es),Ra=ba*i(es);if(Qo>a){var _l=Aa*t(da),Ys=Aa*i(da),ko=ba*t(vs),Js=ba*i(vs),ks;if(yoa?gs>a?(vo=m(ko,Js,Zs,ps,Aa,gs,Ga),zo=m(_l,Ys,bn,Ra,Aa,gs,Ga),xi.moveTo(vo.cx+vo.x01,vo.cy+vo.y01),gsa)||!(bs>a)?xi.lineTo(bn,Ra):ss>a?(vo=m(bn,Ra,_l,Ys,ba,-ss,Ga),zo=m(Zs,ps,ko,Js,ba,-ss,Ga),xi.lineTo(vo.cx+vo.x01,vo.cy+vo.y01),ss=Aa;--Va)xi.point(da[Va],vs[Va]);xi.lineEnd(),xi.areaEnd()}Ga&&(da[ba]=+Et(yo,ba,hn),vs[ba]=+gr(yo,ba,hn),xi.point(ar?+ar(yo,ba,hn):da[ba],ti?+ti(yo,ba,hn):vs[ba]))}if(Yo)return xi=null,Yo+""||null}function Bn(){return P().defined(wi).curve(Fi).context(Gi)}return Ii.x=function(hn){return arguments.length?(Et=typeof hn=="function"?hn:A(+hn),ar=null,Ii):Et},Ii.x0=function(hn){return arguments.length?(Et=typeof hn=="function"?hn:A(+hn),Ii):Et},Ii.x1=function(hn){return arguments.length?(ar=hn==null?null:typeof hn=="function"?hn:A(+hn),Ii):ar},Ii.y=function(hn){return arguments.length?(gr=typeof hn=="function"?hn:A(+hn),ti=null,Ii):gr},Ii.y0=function(hn){return arguments.length?(gr=typeof hn=="function"?hn:A(+hn),Ii):gr},Ii.y1=function(hn){return arguments.length?(ti=hn==null?null:typeof hn=="function"?hn:A(+hn),Ii):ti},Ii.lineX0=Ii.lineY0=function(){return Bn().x(Et).y(gr)},Ii.lineY1=function(){return Bn().x(Et).y(ti)},Ii.lineX1=function(){return Bn().x(ar).y(gr)},Ii.defined=function(hn){return arguments.length?(wi=typeof hn=="function"?hn:A(!!hn),Ii):wi},Ii.curve=function(hn){return arguments.length?(Fi=hn,Gi!=null&&(xi=Fi(Gi)),Ii):Fi},Ii.context=function(hn){return arguments.length?(hn==null?Gi=xi=null:xi=Fi(Gi=hn),Ii):Gi},Ii}function z(Et,ar){return arEt?1:ar>=Et?0:NaN}function F(Et){return Et}function O(){var Et=F,ar=z,gr=null,ti=A(0),wi=A(h),Gi=A(0);function Fi(xi){var Ii,Bn=xi.length,hn,ba,Aa=0,Va=new Array(Bn),Qa=new Array(Bn),yo=+ti.apply(this,arguments),Ga=Math.min(h,Math.max(-h,wi.apply(this,arguments)-yo)),Yo,da=Math.min(Math.abs(Ga)/Bn,Gi.apply(this,arguments)),vs=da*(Ga<0?-1:1),es;for(Ii=0;Ii0&&(Aa+=es);for(ar!=null?Va.sort(function(bs,Xa){return ar(Qa[bs],Qa[Xa])}):gr!=null&&Va.sort(function(bs,Xa){return gr(xi[bs],xi[Xa])}),Ii=0,ba=Aa?(Ga-Bn*vs)/Aa:0;Ii0?es*ba:0)+vs,Qa[hn]={data:xi[hn],index:Ii,value:es,startAngle:yo,endAngle:Yo,padAngle:da};return Qa}return Fi.value=function(xi){return arguments.length?(Et=typeof xi=="function"?xi:A(+xi),Fi):Et},Fi.sortValues=function(xi){return arguments.length?(ar=xi,gr=null,Fi):ar},Fi.sort=function(xi){return arguments.length?(gr=xi,ar=null,Fi):gr},Fi.startAngle=function(xi){return arguments.length?(ti=typeof xi=="function"?xi:A(+xi),Fi):ti},Fi.endAngle=function(xi){return arguments.length?(wi=typeof xi=="function"?xi:A(+xi),Fi):wi},Fi.padAngle=function(xi){return arguments.length?(Gi=typeof xi=="function"?xi:A(+xi),Fi):Gi},Fi}var B=N(u);function I(Et){this._curve=Et}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(Et,ar){this._curve.point(ar*Math.sin(Et),ar*-Math.cos(Et))}};function N(Et){function ar(gr){return new I(Et(gr))}return ar._curve=Et,ar}function U(Et){var ar=Et.curve;return Et.angle=Et.x,delete Et.x,Et.radius=Et.y,delete Et.y,Et.curve=function(gr){return arguments.length?ar(N(gr)):ar()._curve},Et}function W(){return U(P().curve(B))}function Q(){var Et=L().curve(B),ar=Et.curve,gr=Et.lineX0,ti=Et.lineX1,wi=Et.lineY0,Gi=Et.lineY1;return Et.angle=Et.x,delete Et.x,Et.startAngle=Et.x0,delete Et.x0,Et.endAngle=Et.x1,delete Et.x1,Et.radius=Et.y,delete Et.y,Et.innerRadius=Et.y0,delete Et.y0,Et.outerRadius=Et.y1,delete Et.y1,Et.lineStartAngle=function(){return U(gr())},delete Et.lineX0,Et.lineEndAngle=function(){return U(ti())},delete Et.lineX1,Et.lineInnerRadius=function(){return U(wi())},delete Et.lineY0,Et.lineOuterRadius=function(){return U(Gi())},delete Et.lineY1,Et.curve=function(Fi){return arguments.length?ar(N(Fi)):ar()._curve},Et}function le(Et,ar){return[(ar=+ar)*Math.cos(Et-=Math.PI/2),ar*Math.sin(Et)]}var se=Array.prototype.slice;function fe(Et){return Et.source}function G(Et){return Et.target}function J(Et){var ar=fe,gr=G,ti=y,wi=f,Gi=null;function Fi(){var xi,Ii=se.call(arguments),Bn=ar.apply(this,Ii),hn=gr.apply(this,Ii);if(Gi||(Gi=xi=x.path()),Et(Gi,+ti.apply(this,(Ii[0]=Bn,Ii)),+wi.apply(this,Ii),+ti.apply(this,(Ii[0]=hn,Ii)),+wi.apply(this,Ii)),xi)return Gi=null,xi+""||null}return Fi.source=function(xi){return arguments.length?(ar=xi,Fi):ar},Fi.target=function(xi){return arguments.length?(gr=xi,Fi):gr},Fi.x=function(xi){return arguments.length?(ti=typeof xi=="function"?xi:A(+xi),Fi):ti},Fi.y=function(xi){return arguments.length?(wi=typeof xi=="function"?xi:A(+xi),Fi):wi},Fi.context=function(xi){return arguments.length?(Gi=xi??null,Fi):Gi},Fi}function $(Et,ar,gr,ti,wi){Et.moveTo(ar,gr),Et.bezierCurveTo(ar=(ar+ti)/2,gr,ar,wi,ti,wi)}function X(Et,ar,gr,ti,wi){Et.moveTo(ar,gr),Et.bezierCurveTo(ar,gr=(gr+wi)/2,ti,gr,ti,wi)}function re(Et,ar,gr,ti,wi){var Gi=le(ar,gr),Fi=le(ar,gr=(gr+wi)/2),xi=le(ti,gr),Ii=le(ti,wi);Et.moveTo(Gi[0],Gi[1]),Et.bezierCurveTo(Fi[0],Fi[1],xi[0],xi[1],Ii[0],Ii[1])}function ae(){return J($)}function j(){return J(X)}function ee(){var Et=J(re);return Et.angle=Et.x,delete Et.x,Et.radius=Et.y,delete Et.y,Et}var ne={draw:function(Et,ar){var gr=Math.sqrt(ar/s);Et.moveTo(gr,0),Et.arc(0,0,gr,0,h)}},ce={draw:function(Et,ar){var gr=Math.sqrt(ar/5)/2;Et.moveTo(-3*gr,-gr),Et.lineTo(-gr,-gr),Et.lineTo(-gr,-3*gr),Et.lineTo(gr,-3*gr),Et.lineTo(gr,-gr),Et.lineTo(3*gr,-gr),Et.lineTo(3*gr,gr),Et.lineTo(gr,gr),Et.lineTo(gr,3*gr),Et.lineTo(-gr,3*gr),Et.lineTo(-gr,gr),Et.lineTo(-3*gr,gr),Et.closePath()}},_e=Math.sqrt(1/3),we=_e*2,Oe={draw:function(Et,ar){var gr=Math.sqrt(ar/we),ti=gr*_e;Et.moveTo(0,-gr),Et.lineTo(ti,0),Et.lineTo(0,gr),Et.lineTo(-ti,0),Et.closePath()}},Ie=.8908130915292852,Xe=Math.sin(s/10)/Math.sin(7*s/10),tt=Math.sin(h/10)*Xe,rt=-Math.cos(h/10)*Xe,Je={draw:function(Et,ar){var gr=Math.sqrt(ar*Ie),ti=tt*gr,wi=rt*gr;Et.moveTo(0,-gr),Et.lineTo(ti,wi);for(var Gi=1;Gi<5;++Gi){var Fi=h*Gi/5,xi=Math.cos(Fi),Ii=Math.sin(Fi);Et.lineTo(Ii*gr,-xi*gr),Et.lineTo(xi*ti-Ii*wi,Ii*ti+xi*wi)}Et.closePath()}},ot={draw:function(Et,ar){var gr=Math.sqrt(ar),ti=-gr/2;Et.rect(ti,ti,gr,gr)}},Me=Math.sqrt(3),pe={draw:function(Et,ar){var gr=-Math.sqrt(ar/(Me*3));Et.moveTo(0,gr*2),Et.lineTo(-Me*gr,-gr),Et.lineTo(Me*gr,-gr),Et.closePath()}},ue=-.5,ze=Math.sqrt(3)/2,Qe=1/Math.sqrt(12),it=(Qe/2+1)*3,$e={draw:function(Et,ar){var gr=Math.sqrt(ar/it),ti=gr/2,wi=gr*Qe,Gi=ti,Fi=gr*Qe+gr,xi=-Gi,Ii=Fi;Et.moveTo(ti,wi),Et.lineTo(Gi,Fi),Et.lineTo(xi,Ii),Et.lineTo(ue*ti-ze*wi,ze*ti+ue*wi),Et.lineTo(ue*Gi-ze*Fi,ze*Gi+ue*Fi),Et.lineTo(ue*xi-ze*Ii,ze*xi+ue*Ii),Et.lineTo(ue*ti+ze*wi,ue*wi-ze*ti),Et.lineTo(ue*Gi+ze*Fi,ue*Fi-ze*Gi),Et.lineTo(ue*xi+ze*Ii,ue*Ii-ze*xi),Et.closePath()}},kt=[ne,ce,Oe,ot,Je,pe,$e];function Mt(){var Et=A(ne),ar=A(64),gr=null;function ti(){var wi;if(gr||(gr=wi=x.path()),Et.apply(this,arguments).draw(gr,+ar.apply(this,arguments)),wi)return gr=null,wi+""||null}return ti.type=function(wi){return arguments.length?(Et=typeof wi=="function"?wi:A(wi),ti):Et},ti.size=function(wi){return arguments.length?(ar=typeof wi=="function"?wi:A(+wi),ti):ar},ti.context=function(wi){return arguments.length?(gr=wi??null,ti):gr},ti}function Bt(){}function jt(Et,ar,gr){Et._context.bezierCurveTo((2*Et._x0+Et._x1)/3,(2*Et._y0+Et._y1)/3,(Et._x0+2*Et._x1)/3,(Et._y0+2*Et._y1)/3,(Et._x0+4*Et._x1+ar)/6,(Et._y0+4*Et._y1+gr)/6)}function cr(Et){this._context=Et}cr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:jt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1,this._line?this._context.lineTo(Et,ar):this._context.moveTo(Et,ar);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:jt(this,Et,ar);break}this._x0=this._x1,this._x1=Et,this._y0=this._y1,this._y1=ar}};function nr(Et){return new cr(Et)}function Lr(Et){this._context=Et}Lr.prototype={areaStart:Bt,areaEnd:Bt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1,this._x2=Et,this._y2=ar;break;case 1:this._point=2,this._x3=Et,this._y3=ar;break;case 2:this._point=3,this._x4=Et,this._y4=ar,this._context.moveTo((this._x0+4*this._x1+Et)/6,(this._y0+4*this._y1+ar)/6);break;default:jt(this,Et,ar);break}this._x0=this._x1,this._x1=Et,this._y0=this._y1,this._y1=ar}};function mr(Et){return new Lr(Et)}function xr(Et){this._context=Et}xr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var gr=(this._x0+4*this._x1+Et)/6,ti=(this._y0+4*this._y1+ar)/6;this._line?this._context.lineTo(gr,ti):this._context.moveTo(gr,ti);break;case 3:this._point=4;default:jt(this,Et,ar);break}this._x0=this._x1,this._x1=Et,this._y0=this._y1,this._y1=ar}};function mt(Et){return new xr(Et)}function Fe(Et,ar){this._basis=new cr(Et),this._beta=ar}Fe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var Et=this._x,ar=this._y,gr=Et.length-1;if(gr>0)for(var ti=Et[0],wi=ar[0],Gi=Et[gr]-ti,Fi=ar[gr]-wi,xi=-1,Ii;++xi<=gr;)Ii=xi/gr,this._basis.point(this._beta*Et[xi]+(1-this._beta)*(ti+Ii*Gi),this._beta*ar[xi]+(1-this._beta)*(wi+Ii*Fi));this._x=this._y=null,this._basis.lineEnd()},point:function(Et,ar){this._x.push(+Et),this._y.push(+ar)}};var Ze=function Et(ar){function gr(ti){return ar===1?new cr(ti):new Fe(ti,ar)}return gr.beta=function(ti){return Et(+ti)},gr}(.85);function Ne(Et,ar,gr){Et._context.bezierCurveTo(Et._x1+Et._k*(Et._x2-Et._x0),Et._y1+Et._k*(Et._y2-Et._y0),Et._x2+Et._k*(Et._x1-ar),Et._y2+Et._k*(Et._y1-gr),Et._x2,Et._y2)}function Se(Et,ar){this._context=Et,this._k=(1-ar)/6}Se.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ne(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1,this._line?this._context.lineTo(Et,ar):this._context.moveTo(Et,ar);break;case 1:this._point=2,this._x1=Et,this._y1=ar;break;case 2:this._point=3;default:Ne(this,Et,ar);break}this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var Ve=function Et(ar){function gr(ti){return new Se(ti,ar)}return gr.tension=function(ti){return Et(+ti)},gr}(0);function Ee(Et,ar){this._context=Et,this._k=(1-ar)/6}Ee.prototype={areaStart:Bt,areaEnd:Bt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1,this._x3=Et,this._y3=ar;break;case 1:this._point=2,this._context.moveTo(this._x4=Et,this._y4=ar);break;case 2:this._point=3,this._x5=Et,this._y5=ar;break;default:Ne(this,Et,ar);break}this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var be=function Et(ar){function gr(ti){return new Ee(ti,ar)}return gr.tension=function(ti){return Et(+ti)},gr}(0);function Ce(Et,ar){this._context=Et,this._k=(1-ar)/6}Ce.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ne(this,Et,ar);break}this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var et=function Et(ar){function gr(ti){return new Ce(ti,ar)}return gr.tension=function(ti){return Et(+ti)},gr}(0);function ht(Et,ar,gr){var ti=Et._x1,wi=Et._y1,Gi=Et._x2,Fi=Et._y2;if(Et._l01_a>a){var xi=2*Et._l01_2a+3*Et._l01_a*Et._l12_a+Et._l12_2a,Ii=3*Et._l01_a*(Et._l01_a+Et._l12_a);ti=(ti*xi-Et._x0*Et._l12_2a+Et._x2*Et._l01_2a)/Ii,wi=(wi*xi-Et._y0*Et._l12_2a+Et._y2*Et._l01_2a)/Ii}if(Et._l23_a>a){var Bn=2*Et._l23_2a+3*Et._l23_a*Et._l12_a+Et._l12_2a,hn=3*Et._l23_a*(Et._l23_a+Et._l12_a);Gi=(Gi*Bn+Et._x1*Et._l23_2a-ar*Et._l12_2a)/hn,Fi=(Fi*Bn+Et._y1*Et._l23_2a-gr*Et._l12_2a)/hn}Et._context.bezierCurveTo(ti,wi,Gi,Fi,Et._x2,Et._y2)}function yt(Et,ar){this._context=Et,this._alpha=ar}yt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){if(Et=+Et,ar=+ar,this._point){var gr=this._x2-Et,ti=this._y2-ar;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(gr*gr+ti*ti,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Et,ar):this._context.moveTo(Et,ar);break;case 1:this._point=2;break;case 2:this._point=3;default:ht(this,Et,ar);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var Pt=function Et(ar){function gr(ti){return ar?new yt(ti,ar):new Se(ti,0)}return gr.alpha=function(ti){return Et(+ti)},gr}(.5);function Ot(Et,ar){this._context=Et,this._alpha=ar}Ot.prototype={areaStart:Bt,areaEnd:Bt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Et,ar){if(Et=+Et,ar=+ar,this._point){var gr=this._x2-Et,ti=this._y2-ar;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(gr*gr+ti*ti,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=Et,this._y3=ar;break;case 1:this._point=2,this._context.moveTo(this._x4=Et,this._y4=ar);break;case 2:this._point=3,this._x5=Et,this._y5=ar;break;default:ht(this,Et,ar);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var Wt=function Et(ar){function gr(ti){return ar?new Ot(ti,ar):new Ee(ti,0)}return gr.alpha=function(ti){return Et(+ti)},gr}(.5);function $t(Et,ar){this._context=Et,this._alpha=ar}$t.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){if(Et=+Et,ar=+ar,this._point){var gr=this._x2-Et,ti=this._y2-ar;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(gr*gr+ti*ti,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ht(this,Et,ar);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Et,this._y0=this._y1,this._y1=this._y2,this._y2=ar}};var lr=function Et(ar){function gr(ti){return ar?new $t(ti,ar):new Ce(ti,0)}return gr.alpha=function(ti){return Et(+ti)},gr}(.5);function fi(Et){this._context=Et}fi.prototype={areaStart:Bt,areaEnd:Bt,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(Et,ar){Et=+Et,ar=+ar,this._point?this._context.lineTo(Et,ar):(this._point=1,this._context.moveTo(Et,ar))}};function Pi(Et){return new fi(Et)}function Bi(Et){return Et<0?-1:1}function zi(Et,ar,gr){var ti=Et._x1-Et._x0,wi=ar-Et._x1,Gi=(Et._y1-Et._y0)/(ti||wi<0&&-0),Fi=(gr-Et._y1)/(wi||ti<0&&-0),xi=(Gi*wi+Fi*ti)/(ti+wi);return(Bi(Gi)+Bi(Fi))*Math.min(Math.abs(Gi),Math.abs(Fi),.5*Math.abs(xi))||0}function en(Et,ar){var gr=Et._x1-Et._x0;return gr?(3*(Et._y1-Et._y0)/gr-ar)/2:ar}function Ri(Et,ar,gr){var ti=Et._x0,wi=Et._y0,Gi=Et._x1,Fi=Et._y1,xi=(Gi-ti)/3;Et._context.bezierCurveTo(ti+xi,wi+xi*ar,Gi-xi,Fi-xi*gr,Gi,Fi)}function Zi(Et){this._context=Et}Zi.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ri(this,this._t0,en(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Et,ar){var gr=NaN;if(Et=+Et,ar=+ar,!(Et===this._x1&&ar===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Et,ar):this._context.moveTo(Et,ar);break;case 1:this._point=2;break;case 2:this._point=3,Ri(this,en(this,gr=zi(this,Et,ar)),gr);break;default:Ri(this,this._t0,gr=zi(this,Et,ar));break}this._x0=this._x1,this._x1=Et,this._y0=this._y1,this._y1=ar,this._t0=gr}}};function vn(Et){this._context=new Xt(Et)}(vn.prototype=Object.create(Zi.prototype)).point=function(Et,ar){Zi.prototype.point.call(this,ar,Et)};function Xt(Et){this._context=Et}Xt.prototype={moveTo:function(Et,ar){this._context.moveTo(ar,Et)},closePath:function(){this._context.closePath()},lineTo:function(Et,ar){this._context.lineTo(ar,Et)},bezierCurveTo:function(Et,ar,gr,ti,wi,Gi){this._context.bezierCurveTo(ar,Et,ti,gr,Gi,wi)}};function Dt(Et){return new Zi(Et)}function qt(Et){return new vn(Et)}function Ut(Et){this._context=Et}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var Et=this._x,ar=this._y,gr=Et.length;if(gr)if(this._line?this._context.lineTo(Et[0],ar[0]):this._context.moveTo(Et[0],ar[0]),gr===2)this._context.lineTo(Et[1],ar[1]);else for(var ti=br(Et),wi=br(ar),Gi=0,Fi=1;Fi=0;--ar)wi[ar]=(Fi[ar]-wi[ar+1])/Gi[ar];for(Gi[gr-1]=(Et[gr]+wi[gr-1])/2,ar=0;ar=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(Et,ar){switch(Et=+Et,ar=+ar,this._point){case 0:this._point=1,this._line?this._context.lineTo(Et,ar):this._context.moveTo(Et,ar);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ar),this._context.lineTo(Et,ar);else{var gr=this._x*(1-this._t)+Et*this._t;this._context.lineTo(gr,this._y),this._context.lineTo(gr,ar)}break}}this._x=Et,this._y=ar}};function Yr(Et){return new _i(Et,.5)}function Di(Et){return new _i(Et,0)}function qi(Et){return new _i(Et,1)}function $i(Et,ar){if((Fi=Et.length)>1)for(var gr=1,ti,wi,Gi=Et[ar[0]],Fi,xi=Gi.length;gr=0;)gr[ar]=ar;return gr}function sn(Et,ar){return Et[ar]}function vt(){var Et=A([]),ar=Mi,gr=$i,ti=sn;function wi(Gi){var Fi=Et.apply(this,arguments),xi,Ii=Gi.length,Bn=Fi.length,hn=new Array(Bn),ba;for(xi=0;xi0){for(var gr,ti,wi=0,Gi=Et[0].length,Fi;wi0)for(var gr,ti=0,wi,Gi,Fi,xi,Ii,Bn=Et[ar[0]].length;ti0?(wi[0]=Fi,wi[1]=Fi+=Gi):Gi<0?(wi[1]=xi,wi[0]=xi+=Gi):(wi[0]=0,wi[1]=Gi)}function Cr(Et,ar){if((wi=Et.length)>0){for(var gr=0,ti=Et[ar[0]],wi,Gi=ti.length;gr0)||!((Gi=(wi=Et[ar[0]]).length)>0))){for(var gr=0,ti=1,wi,Gi,Fi;tiGi&&(Gi=wi,gr=ar);return gr}function Br(Et){var ar=Et.map(Pr);return Mi(Et).sort(function(gr,ti){return ar[gr]-ar[ti]})}function Pr(Et){for(var ar=0,gr=-1,ti=Et.length,wi;++gr0;--re)ee(X*=.99),ne(),j(X),ne();function ae(){var ce=x.max($,function(Oe){return Oe.length}),_e=U*(P-y)/(ce-1);z>_e&&(z=_e);var we=x.min($,function(Oe){return(P-y-(Oe.length-1)*z)/x.sum(Oe,h)});$.forEach(function(Oe){Oe.forEach(function(Ie,Xe){Ie.y1=(Ie.y0=Xe)+Ie.value*we})}),J.links.forEach(function(Oe){Oe.width=Oe.value*we})}function j(ce){$.forEach(function(_e){_e.forEach(function(we){if(we.targetLinks.length){var Oe=(x.sum(we.targetLinks,d)/x.sum(we.targetLinks,h)-p(we))*ce;we.y0+=Oe,we.y1+=Oe}})})}function ee(ce){$.slice().reverse().forEach(function(_e){_e.forEach(function(we){if(we.sourceLinks.length){var Oe=(x.sum(we.sourceLinks,T)/x.sum(we.sourceLinks,h)-p(we))*ce;we.y0+=Oe,we.y1+=Oe}})})}function ne(){$.forEach(function(ce){var _e,we,Oe=y,Ie=ce.length,Xe;for(ce.sort(c),Xe=0;Xe0&&(_e.y0+=we,_e.y1+=we),Oe=_e.y1+z;if(we=Oe-z-P,we>0)for(Oe=_e.y0-=we,_e.y1-=we,Xe=Ie-2;Xe>=0;--Xe)_e=ce[Xe],we=_e.y1+z-Oe,we>0&&(_e.y0-=we,_e.y1-=we),Oe=_e.y0})}}function G(J){J.nodes.forEach(function($){$.sourceLinks.sort(s),$.targetLinks.sort(a)}),J.nodes.forEach(function($){var X=$.y0,re=X;$.sourceLinks.forEach(function(ae){ae.y0=X+ae.width/2,X+=ae.width}),$.targetLinks.forEach(function(ae){ae.y1=re+ae.width/2,re+=ae.width})})}return W};function m(u){return[u.source.x1,u.y0]}function b(u){return[u.target.x0,u.y1]}var v=function(){return S.linkHorizontal().source(m).target(b)};g.sankey=E,g.sankeyCenter=i,g.sankeyLeft=t,g.sankeyRight=r,g.sankeyJustify=o,g.sankeyLinkHorizontal=v,Object.defineProperty(g,"__esModule",{value:!0})})}}),_z=Le({"node_modules/elementary-circuits-directed-graph/johnson.js"(Z,H){var g=mM();H.exports=function(A,S){var e=[],t=[],r=[],o={},i=[],n;function a(M){r[M]=!1,o.hasOwnProperty(M)&&Object.keys(o[M]).forEach(function(E){delete o[M][E],r[E]&&a(E)})}function s(M){var E=!1;t.push(M),r[M]=!0;var m,b;for(m=0;m=M})}function p(M){h(M);for(var E=A,m=g(E),b=m.components.filter(function(z){return z.length>1}),v=1/0,u,y=0;y"u"?"undefined":s(Se))!=="object"&&(Se=Ze.source=m(Fe,Se)),(typeof Ve>"u"?"undefined":s(Ve))!=="object"&&(Ve=Ze.target=m(Fe,Ve)),Se.sourceLinks.push(Ze),Ve.targetLinks.push(Ze)}),mt}function jt(mt){mt.nodes.forEach(function(Fe){Fe.partOfCycle=!1,Fe.value=Math.max(x.sum(Fe.sourceLinks,d),x.sum(Fe.targetLinks,d)),Fe.sourceLinks.forEach(function(Ze){Ze.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ze.circularLinkType)}),Fe.targetLinks.forEach(function(Ze){Ze.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ze.circularLinkType)})})}function cr(mt){var Fe=0,Ze=0,Ne=0,Se=0,Ve=x.max(mt.nodes,function(Ee){return Ee.column});return mt.links.forEach(function(Ee){Ee.circular&&(Ee.circularLinkType=="top"?Fe=Fe+Ee.width:Ze=Ze+Ee.width,Ee.target.column==0&&(Se=Se+Ee.width),Ee.source.column==Ve&&(Ne=Ne+Ee.width))}),Fe=Fe>0?Fe+v+u:Fe,Ze=Ze>0?Ze+v+u:Ze,Ne=Ne>0?Ne+v+u:Ne,Se=Se>0?Se+v+u:Se,{top:Fe,bottom:Ze,left:Se,right:Ne}}function nr(mt,Fe){var Ze=x.max(mt.nodes,function(et){return et.column}),Ne=tt-Ie,Se=rt-Xe,Ve=Ne+Fe.right+Fe.left,Ee=Se+Fe.top+Fe.bottom,be=Ne/Ve,Ce=Se/Ee;return Ie=Ie*be+Fe.left,tt=Fe.right==0?tt:tt*be,Xe=Xe*Ce+Fe.top,rt=rt*Ce,mt.nodes.forEach(function(et){et.x0=Ie+et.column*((tt-Ie-Je)/Ze),et.x1=et.x0+Je}),Ce}function Lr(mt){var Fe,Ze,Ne;for(Fe=mt.nodes,Ze=[],Ne=0;Fe.length;++Ne,Fe=Ze,Ze=[])Fe.forEach(function(Se){Se.depth=Ne,Se.sourceLinks.forEach(function(Ve){Ze.indexOf(Ve.target)<0&&!Ve.circular&&Ze.push(Ve.target)})});for(Fe=mt.nodes,Ze=[],Ne=0;Fe.length;++Ne,Fe=Ze,Ze=[])Fe.forEach(function(Se){Se.height=Ne,Se.targetLinks.forEach(function(Ve){Ze.indexOf(Ve.source)<0&&!Ve.circular&&Ze.push(Ve.source)})});mt.nodes.forEach(function(Se){Se.column=Math.floor(pe.call(null,Se,Ne))})}function mr(mt,Fe,Ze){var Ne=A.nest().key(function(et){return et.column}).sortKeys(x.ascending).entries(mt.nodes).map(function(et){return et.values});Ee(Ze),Ce();for(var Se=1,Ve=Fe;Ve>0;--Ve)be(Se*=.99,Ze),Ce();function Ee(et){if($e){var ht=1/0;Ne.forEach(function(Wt){var $t=rt*$e/(Wt.length+1);ht=$t0))if(Wt==0&&Ot==1)lr=$t.y1-$t.y0,$t.y0=rt/2-lr/2,$t.y1=rt/2+lr/2;else if(Wt==yt-1&&Ot==1)lr=$t.y1-$t.y0,$t.y0=rt/2-lr/2,$t.y1=rt/2+lr/2;else{var fi=0,Pi=x.mean($t.sourceLinks,_),Bi=x.mean($t.targetLinks,l);Pi&&Bi?fi=(Pi+Bi)/2:fi=Pi||Bi;var zi=(fi-T($t))*et;$t.y0+=zi,$t.y1+=zi}})})}function Ce(){Ne.forEach(function(et){var ht,yt,Pt=Xe,Ot=et.length,Wt;for(et.sort(p),Wt=0;Wt0&&(ht.y0+=yt,ht.y1+=yt),Pt=ht.y1+ot;if(yt=Pt-ot-rt,yt>0)for(Pt=ht.y0-=yt,ht.y1-=yt,Wt=Ot-2;Wt>=0;--Wt)ht=et[Wt],yt=ht.y1+ot-Pt,yt>0&&(ht.y0-=yt,ht.y1-=yt),Pt=ht.y0})}}function xr(mt){mt.nodes.forEach(function(Fe){Fe.sourceLinks.sort(h),Fe.targetLinks.sort(c)}),mt.nodes.forEach(function(Fe){var Ze=Fe.y0,Ne=Ze,Se=Fe.y1,Ve=Se;Fe.sourceLinks.forEach(function(Ee){Ee.circular?(Ee.y0=Se-Ee.width/2,Se=Se-Ee.width):(Ee.y0=Ze+Ee.width/2,Ze+=Ee.width)}),Fe.targetLinks.forEach(function(Ee){Ee.circular?(Ee.y1=Ve-Ee.width/2,Ve=Ve-Ee.width):(Ee.y1=Ne+Ee.width/2,Ne+=Ee.width)})})}return Mt}function P(Ie,Xe,tt){var rt=0;if(tt===null){for(var Je=[],ot=0;otXe.source.column)}function O(Ie,Xe){var tt=0;Ie.sourceLinks.forEach(function(Je){tt=Je.circular&&!we(Je,Xe)?tt+1:tt});var rt=0;return Ie.targetLinks.forEach(function(Je){rt=Je.circular&&!we(Je,Xe)?rt+1:rt}),tt+rt}function B(Ie){var Xe=Ie.source.sourceLinks,tt=0;Xe.forEach(function(ot){tt=ot.circular?tt+1:tt});var rt=Ie.target.targetLinks,Je=0;return rt.forEach(function(ot){Je=ot.circular?Je+1:Je}),!(tt>1||Je>1)}function I(Ie,Xe,tt){return Ie.sort(W),Ie.forEach(function(rt,Je){var ot=0;if(we(rt,tt)&&B(rt))rt.circularPathData.verticalBuffer=ot+rt.width/2;else{var Me=0;for(Me;Meot?pe:ot}rt.circularPathData.verticalBuffer=ot+rt.width/2}}),Ie}function N(Ie,Xe,tt,rt){var Je=5,ot=x.min(Ie.links,function(ue){return ue.source.y0});Ie.links.forEach(function(ue){ue.circular&&(ue.circularPathData={})});var Me=Ie.links.filter(function(ue){return ue.circularLinkType=="top"});I(Me,Xe,rt);var pe=Ie.links.filter(function(ue){return ue.circularLinkType=="bottom"});I(pe,Xe,rt),Ie.links.forEach(function(ue){if(ue.circular){if(ue.circularPathData.arcRadius=ue.width+u,ue.circularPathData.leftNodeBuffer=Je,ue.circularPathData.rightNodeBuffer=Je,ue.circularPathData.sourceWidth=ue.source.x1-ue.source.x0,ue.circularPathData.sourceX=ue.source.x0+ue.circularPathData.sourceWidth,ue.circularPathData.targetX=ue.target.x0,ue.circularPathData.sourceY=ue.y0,ue.circularPathData.targetY=ue.y1,we(ue,rt)&&B(ue))ue.circularPathData.leftSmallArcRadius=u+ue.width/2,ue.circularPathData.leftLargeArcRadius=u+ue.width/2,ue.circularPathData.rightSmallArcRadius=u+ue.width/2,ue.circularPathData.rightLargeArcRadius=u+ue.width/2,ue.circularLinkType=="bottom"?(ue.circularPathData.verticalFullExtent=ue.source.y1+v+ue.circularPathData.verticalBuffer,ue.circularPathData.verticalLeftInnerExtent=ue.circularPathData.verticalFullExtent-ue.circularPathData.leftLargeArcRadius,ue.circularPathData.verticalRightInnerExtent=ue.circularPathData.verticalFullExtent-ue.circularPathData.rightLargeArcRadius):(ue.circularPathData.verticalFullExtent=ue.source.y0-v-ue.circularPathData.verticalBuffer,ue.circularPathData.verticalLeftInnerExtent=ue.circularPathData.verticalFullExtent+ue.circularPathData.leftLargeArcRadius,ue.circularPathData.verticalRightInnerExtent=ue.circularPathData.verticalFullExtent+ue.circularPathData.rightLargeArcRadius);else{var ze=ue.source.column,Qe=ue.circularLinkType,it=Ie.links.filter(function(Mt){return Mt.source.column==ze&&Mt.circularLinkType==Qe});ue.circularLinkType=="bottom"?it.sort(le):it.sort(Q);var $e=0;it.forEach(function(Mt,Bt){Mt.circularLinkID==ue.circularLinkID&&(ue.circularPathData.leftSmallArcRadius=u+ue.width/2+$e,ue.circularPathData.leftLargeArcRadius=u+ue.width/2+Bt*Xe+$e),$e=$e+Mt.width}),ze=ue.target.column,it=Ie.links.filter(function(Mt){return Mt.target.column==ze&&Mt.circularLinkType==Qe}),ue.circularLinkType=="bottom"?it.sort(fe):it.sort(se),$e=0,it.forEach(function(Mt,Bt){Mt.circularLinkID==ue.circularLinkID&&(ue.circularPathData.rightSmallArcRadius=u+ue.width/2+$e,ue.circularPathData.rightLargeArcRadius=u+ue.width/2+Bt*Xe+$e),$e=$e+Mt.width}),ue.circularLinkType=="bottom"?(ue.circularPathData.verticalFullExtent=Math.max(tt,ue.source.y1,ue.target.y1)+v+ue.circularPathData.verticalBuffer,ue.circularPathData.verticalLeftInnerExtent=ue.circularPathData.verticalFullExtent-ue.circularPathData.leftLargeArcRadius,ue.circularPathData.verticalRightInnerExtent=ue.circularPathData.verticalFullExtent-ue.circularPathData.rightLargeArcRadius):(ue.circularPathData.verticalFullExtent=ot-v-ue.circularPathData.verticalBuffer,ue.circularPathData.verticalLeftInnerExtent=ue.circularPathData.verticalFullExtent+ue.circularPathData.leftLargeArcRadius,ue.circularPathData.verticalRightInnerExtent=ue.circularPathData.verticalFullExtent+ue.circularPathData.rightLargeArcRadius)}ue.circularPathData.leftInnerExtent=ue.circularPathData.sourceX+ue.circularPathData.leftNodeBuffer,ue.circularPathData.rightInnerExtent=ue.circularPathData.targetX-ue.circularPathData.rightNodeBuffer,ue.circularPathData.leftFullExtent=ue.circularPathData.sourceX+ue.circularPathData.leftLargeArcRadius+ue.circularPathData.leftNodeBuffer,ue.circularPathData.rightFullExtent=ue.circularPathData.targetX-ue.circularPathData.rightLargeArcRadius-ue.circularPathData.rightNodeBuffer}if(ue.circular)ue.path=U(ue);else{var kt=S.linkHorizontal().source(function(Mt){var Bt=Mt.source.x0+(Mt.source.x1-Mt.source.x0),jt=Mt.y0;return[Bt,jt]}).target(function(Mt){var Bt=Mt.target.x0,jt=Mt.y1;return[Bt,jt]});ue.path=kt(ue)}})}function U(Ie){var Xe="";return Ie.circularLinkType=="top"?Xe="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 0 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY-Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 0 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 0 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY-Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 0 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY:Xe="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 1 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY+Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 1 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 1 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY+Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 1 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY,Xe}function W(Ie,Xe){return G(Ie)==G(Xe)?Ie.circularLinkType=="bottom"?le(Ie,Xe):Q(Ie,Xe):G(Xe)-G(Ie)}function Q(Ie,Xe){return Ie.y0-Xe.y0}function le(Ie,Xe){return Xe.y0-Ie.y0}function se(Ie,Xe){return Ie.y1-Xe.y1}function fe(Ie,Xe){return Xe.y1-Ie.y1}function G(Ie){return Ie.target.column-Ie.source.column}function J(Ie){return Ie.target.x0-Ie.source.x1}function $(Ie,Xe){var tt=z(Ie),rt=J(Xe)/Math.tan(tt),Je=_e(Ie)=="up"?Ie.y1+rt:Ie.y1-rt;return Je}function X(Ie,Xe){var tt=z(Ie),rt=J(Xe)/Math.tan(tt),Je=_e(Ie)=="up"?Ie.y1-rt:Ie.y1+rt;return Je}function re(Ie,Xe,tt,rt){Ie.links.forEach(function(Je){if(!Je.circular&&Je.target.column-Je.source.column>1){var ot=Je.source.column+1,Me=Je.target.column-1,pe=1,ue=Me-ot+1;for(pe=1;ot<=Me;ot++,pe++)Ie.nodes.forEach(function(ze){if(ze.column==ot){var Qe=pe/(ue+1),it=Math.pow(1-Qe,3),$e=3*Qe*Math.pow(1-Qe,2),kt=3*Math.pow(Qe,2)*(1-Qe),Mt=Math.pow(Qe,3),Bt=it*Je.y0+$e*Je.y0+kt*Je.y1+Mt*Je.y1,jt=Bt-Je.width/2,cr=Bt+Je.width/2,nr;jt>ze.y0&&jtze.y0&&crze.y1&&j(Lr,nr,Xe,tt)})):jtze.y1&&(nr=cr-ze.y0+10,ze=j(ze,nr,Xe,tt),Ie.nodes.forEach(function(Lr){b(Lr,rt)==b(ze,rt)||Lr.column!=ze.column||Lr.y0ze.y1&&j(Lr,nr,Xe,tt)}))}})}})}function ae(Ie,Xe){return Ie.y0>Xe.y0&&Ie.y0Xe.y0&&Ie.y1Xe.y1}function j(Ie,Xe,tt,rt){return Ie.y0+Xe>=tt&&Ie.y1+Xe<=rt&&(Ie.y0=Ie.y0+Xe,Ie.y1=Ie.y1+Xe,Ie.targetLinks.forEach(function(Je){Je.y1=Je.y1+Xe}),Ie.sourceLinks.forEach(function(Je){Je.y0=Je.y0+Xe})),Ie}function ee(Ie,Xe,tt,rt){Ie.nodes.forEach(function(Je){rt&&Je.y+(Je.y1-Je.y0)>Xe&&(Je.y=Je.y-(Je.y+(Je.y1-Je.y0)-Xe));var ot=Ie.links.filter(function(ue){return b(ue.source,tt)==b(Je,tt)}),Me=ot.length;Me>1&&ot.sort(function(ue,ze){if(!ue.circular&&!ze.circular){if(ue.target.column==ze.target.column)return ue.y1-ze.y1;if(ce(ue,ze)){if(ue.target.column>ze.target.column){var Qe=X(ze,ue);return ue.y1-Qe}if(ze.target.column>ue.target.column){var it=X(ue,ze);return it-ze.y1}}else return ue.y1-ze.y1}if(ue.circular&&!ze.circular)return ue.circularLinkType=="top"?-1:1;if(ze.circular&&!ue.circular)return ze.circularLinkType=="top"?1:-1;if(ue.circular&&ze.circular)return ue.circularLinkType===ze.circularLinkType&&ue.circularLinkType=="top"?ue.target.column===ze.target.column?ue.target.y1-ze.target.y1:ze.target.column-ue.target.column:ue.circularLinkType===ze.circularLinkType&&ue.circularLinkType=="bottom"?ue.target.column===ze.target.column?ze.target.y1-ue.target.y1:ue.target.column-ze.target.column:ue.circularLinkType=="top"?-1:1});var pe=Je.y0;ot.forEach(function(ue){ue.y0=pe+ue.width/2,pe=pe+ue.width}),ot.forEach(function(ue,ze){if(ue.circularLinkType=="bottom"){var Qe=ze+1,it=0;for(Qe;Qe1&&Je.sort(function(pe,ue){if(!pe.circular&&!ue.circular){if(pe.source.column==ue.source.column)return pe.y0-ue.y0;if(ce(pe,ue)){if(ue.source.column0?"up":"down"}function we(Ie,Xe){return b(Ie.source,Xe)==b(Ie.target,Xe)}function Oe(Ie,Xe,tt){var rt=Ie.nodes,Je=Ie.links,ot=!1,Me=!1;if(Je.forEach(function($e){$e.circularLinkType=="top"?ot=!0:$e.circularLinkType=="bottom"&&(Me=!0)}),ot==!1||Me==!1){var pe=x.min(rt,function($e){return $e.y0}),ue=x.max(rt,function($e){return $e.y1}),ze=ue-pe,Qe=tt-Xe,it=Qe/ze;rt.forEach(function($e){var kt=($e.y1-$e.y0)*it;$e.y0=($e.y0-pe)*it,$e.y1=$e.y0+kt}),Je.forEach(function($e){$e.y0=($e.y0-pe)*it,$e.y1=($e.y1-pe)*it,$e.width=$e.width*it})}}g.sankeyCircular=f,g.sankeyCenter=n,g.sankeyLeft=r,g.sankeyRight=o,g.sankeyJustify=i,Object.defineProperty(g,"__esModule",{value:!0})})}}),yM=Le({"src/traces/sankey/constants.js"(Z,H){"use strict";H.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}}}),bz=Le({"src/traces/sankey/render.js"(Z,H){"use strict";var g=mz(),x=(ig(),Wi(tm)).interpolateNumber,A=Ji(),S=yz(),e=xz(),t=yM(),r=Vl(),o=$a(),i=rs(),n=ni(),a=n.strTranslate,s=n.strRotate,c=Nv(),h=c.keyFun,p=c.repeat,d=c.unwrap,T=$l(),l=so(),_=eh(),w=_.CAP_SHIFT,M=_.LINE_SPACING,E=3;function m($,X,re){var ae=d(X),j=ae.trace,ee=j.domain,ne=j.orientation==="h",ce=j.node.pad,_e=j.node.thickness,we={justify:S.sankeyJustify,left:S.sankeyLeft,right:S.sankeyRight,center:S.sankeyCenter}[j.node.align],Oe=$.width*(ee.x[1]-ee.x[0]),Ie=$.height*(ee.y[1]-ee.y[0]),Xe=ae._nodes,tt=ae._links,rt=ae.circular,Je;rt?Je=e.sankeyCircular().circularLinkGap(0):Je=S.sankey(),Je.iterations(t.sankeyIterations).size(ne?[Oe,Ie]:[Ie,Oe]).nodeWidth(_e).nodePadding(ce).nodeId(function(Lr){return Lr.pointNumber}).nodeAlign(we).nodes(Xe).links(tt);var ot=Je();Je.nodePadding()=Fe||(mt=Fe-xr.y0,mt>1e-6&&(xr.y0+=mt,xr.y1+=mt)),Fe=xr.y1+ce})}function Bt(Lr){var mr=Lr.map(function(Ve,Ee){return{x0:Ve.x0,index:Ee}}).sort(function(Ve,Ee){return Ve.x0-Ee.x0}),xr=[],mt=-1,Fe,Ze=-1/0,Ne;for(Me=0;MeZe+_e&&(mt+=1,Fe=Se.x0),Ze=Se.x0,xr[mt]||(xr[mt]=[]),xr[mt].push(Se),Ne=Fe-Se.x0,Se.x0+=Ne,Se.x1+=Ne}return xr}if(j.node.x.length&&j.node.y.length){for(Me=0;Me0?" L "+j.targetX+" "+j.targetY:"")+"Z"):(re="M "+(j.targetX-X)+" "+(j.targetY-ae)+" L "+(j.rightInnerExtent-X)+" "+(j.targetY-ae)+" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightSmallArcRadius+ae)+" 0 0 0 "+(j.rightFullExtent-ae-X)+" "+(j.targetY+j.rightSmallArcRadius)+" L "+(j.rightFullExtent-ae-X)+" "+j.verticalRightInnerExtent,ee&&ne?re+=" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightLargeArcRadius+ae)+" 0 0 0 "+(j.rightInnerExtent-ae-X)+" "+(j.verticalFullExtent+ae)+" L "+(j.rightFullExtent+ae-X-(j.rightLargeArcRadius-ae))+" "+(j.verticalFullExtent+ae)+" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightLargeArcRadius+ae)+" 0 0 0 "+(j.leftFullExtent+ae)+" "+j.verticalLeftInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightSmallArcRadius-ae)+" 0 0 1 "+(j.rightFullExtent-X-ae-(j.rightLargeArcRadius-ae))+" "+(j.verticalFullExtent-ae)+" L "+(j.leftFullExtent+ae+(j.rightLargeArcRadius-ae))+" "+(j.verticalFullExtent-ae)+" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightSmallArcRadius-ae)+" 0 0 1 "+(j.leftFullExtent+ae)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightLargeArcRadius+ae)+" 0 0 0 "+(j.rightInnerExtent-X)+" "+(j.verticalFullExtent+ae)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent+ae)+" A "+(j.leftLargeArcRadius+ae)+" "+(j.leftLargeArcRadius+ae)+" 0 0 0 "+(j.leftFullExtent+ae)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ae)+" "+(j.sourceY+j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ae)+" "+(j.leftSmallArcRadius+ae)+" 0 0 0 "+j.leftInnerExtent+" "+(j.sourceY-ae)+" L "+j.sourceX+" "+(j.sourceY-ae)+" L "+j.sourceX+" "+(j.sourceY+ae)+" L "+j.leftInnerExtent+" "+(j.sourceY+ae)+" A "+(j.leftLargeArcRadius-ae)+" "+(j.leftSmallArcRadius-ae)+" 0 0 1 "+(j.leftFullExtent-ae)+" "+(j.sourceY+j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ae)+" "+j.verticalLeftInnerExtent,ee&&ne?re+=" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightSmallArcRadius-ae)+" 0 0 1 "+(j.leftFullExtent-ae-(j.rightLargeArcRadius-ae))+" "+(j.verticalFullExtent-ae)+" L "+(j.rightFullExtent+ae-X+(j.rightLargeArcRadius-ae))+" "+(j.verticalFullExtent-ae)+" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightSmallArcRadius-ae)+" 0 0 1 "+(j.rightFullExtent+ae-X)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightLargeArcRadius+ae)+" 0 0 0 "+(j.leftFullExtent+ae)+" "+(j.verticalFullExtent+ae)+" L "+(j.rightFullExtent-X-ae)+" "+(j.verticalFullExtent+ae)+" A "+(j.rightLargeArcRadius+ae)+" "+(j.rightLargeArcRadius+ae)+" 0 0 0 "+(j.rightFullExtent+ae-X)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ae)+" "+(j.leftLargeArcRadius-ae)+" 0 0 1 "+j.leftInnerExtent+" "+(j.verticalFullExtent-ae)+" L "+(j.rightInnerExtent-X)+" "+(j.verticalFullExtent-ae)+" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightLargeArcRadius-ae)+" 0 0 1 "+(j.rightFullExtent+ae-X)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ae-X)+" "+(j.targetY+j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ae)+" "+(j.rightSmallArcRadius-ae)+" 0 0 1 "+(j.rightInnerExtent-X)+" "+(j.targetY+ae)+" L "+(j.targetX-X)+" "+(j.targetY+ae)+(X>0?" L "+j.targetX+" "+j.targetY:"")+"Z"),re}function u(){var $=.5;function X(re){var ae=re.linkArrowLength;if(re.link.circular)return v(re.link,ae);var j=Math.abs((re.link.target.x0-re.link.source.x1)/2);ae>j&&(ae=j);var ee=re.link.source.x1,ne=re.link.target.x0-ae,ce=x(ee,ne),_e=ce($),we=ce(1-$),Oe=re.link.y0-re.link.width/2,Ie=re.link.y0+re.link.width/2,Xe=re.link.y1-re.link.width/2,tt=re.link.y1+re.link.width/2,rt="M"+ee+","+Oe,Je="C"+_e+","+Oe+" "+we+","+Xe+" "+ne+","+Xe,ot="C"+we+","+tt+" "+_e+","+Ie+" "+ee+","+Ie,Me=ae>0?"L"+(ne+ae)+","+(Xe+re.link.width/2):"";return Me+="L"+ne+","+tt,rt+Je+Me+ot+"Z"}return X}function y($,X){var re=r(X.color),ae=t.nodePadAcross,j=$.nodePad/2;X.dx=X.x1-X.x0,X.dy=X.y1-X.y0;var ee=X.dx,ne=Math.max(.5,X.dy),ce="node_"+X.pointNumber;return X.group&&(ce=n.randstr()),X.trace=$.trace,X.curveNumber=$.trace.index,{index:X.pointNumber,key:ce,partOfGroup:X.partOfGroup||!1,group:X.group,traceId:$.key,trace:$.trace,node:X,nodePad:$.nodePad,nodeLineColor:$.nodeLineColor,nodeLineWidth:$.nodeLineWidth,textFont:$.textFont,size:$.horizontal?$.height:$.width,visibleWidth:Math.ceil(ee),visibleHeight:ne,zoneX:-ae,zoneY:-j,zoneWidth:ee+2*ae,zoneHeight:ne+2*j,labelY:$.horizontal?X.dy/2+1:X.dx/2+1,left:X.originalLayer===1,sizeAcross:$.width,forceLayouts:$.forceLayouts,horizontal:$.horizontal,darkBackground:re.getBrightness()<=128,tinyColorHue:o.tinyRGB(re),tinyColorAlpha:re.getAlpha(),valueFormat:$.valueFormat,valueSuffix:$.valueSuffix,sankey:$.sankey,graph:$.graph,arrangement:$.arrangement,uniqueNodeLabelPathId:[$.guid,$.key,ce].join("_"),interactionState:$.interactionState,figure:$}}function f($){$.attr("transform",function(X){return a(X.node.x0.toFixed(3),X.node.y0.toFixed(3))})}function P($){$.call(f)}function L($,X){$.call(P),X.attr("d",u())}function z($){$.attr("width",function(X){return X.node.x1-X.node.x0}).attr("height",function(X){return X.visibleHeight})}function F($){return $.link.width>1||$.linkLineWidth>0}function O($){var X=a($.translateX,$.translateY);return X+($.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function B($,X,re){$.on(".basic",null).on("mouseover.basic",function(ae){!ae.interactionState.dragInProgress&&!ae.partOfGroup&&(re.hover(this,ae,X),ae.interactionState.hovered=[this,ae])}).on("mousemove.basic",function(ae){!ae.interactionState.dragInProgress&&!ae.partOfGroup&&(re.follow(this,ae),ae.interactionState.hovered=[this,ae])}).on("mouseout.basic",function(ae){!ae.interactionState.dragInProgress&&!ae.partOfGroup&&(re.unhover(this,ae,X),ae.interactionState.hovered=!1)}).on("click.basic",function(ae){ae.interactionState.hovered&&(re.unhover(this,ae,X),ae.interactionState.hovered=!1),!ae.interactionState.dragInProgress&&!ae.partOfGroup&&re.select(this,ae,X)})}function I($,X,re,ae){var j=A.behavior.drag().origin(function(ee){return{x:ee.node.x0+ee.visibleWidth/2,y:ee.node.y0+ee.visibleHeight/2}}).on("dragstart",function(ee){if(ee.arrangement!=="fixed"&&(n.ensureSingle(ae._fullLayout._infolayer,"g","dragcover",function(ce){ae._fullLayout._dragCover=ce}),n.raiseToTop(this),ee.interactionState.dragInProgress=ee.node,se(ee.node),ee.interactionState.hovered&&(re.nodeEvents.unhover.apply(0,ee.interactionState.hovered),ee.interactionState.hovered=!1),ee.arrangement==="snap")){var ne=ee.traceId+"|"+ee.key;ee.forceLayouts[ne]?ee.forceLayouts[ne].alpha(1):N($,ne,ee,ae),U($,X,ee,ne,ae)}}).on("drag",function(ee){if(ee.arrangement!=="fixed"){var ne=A.event.x,ce=A.event.y;ee.arrangement==="snap"?(ee.node.x0=ne-ee.visibleWidth/2,ee.node.x1=ne+ee.visibleWidth/2,ee.node.y0=ce-ee.visibleHeight/2,ee.node.y1=ce+ee.visibleHeight/2):(ee.arrangement==="freeform"&&(ee.node.x0=ne-ee.visibleWidth/2,ee.node.x1=ne+ee.visibleWidth/2),ce=Math.max(0,Math.min(ee.size-ee.visibleHeight/2,ce)),ee.node.y0=ce-ee.visibleHeight/2,ee.node.y1=ce+ee.visibleHeight/2),se(ee.node),ee.arrangement!=="snap"&&(ee.sankey.update(ee.graph),L($.filter(fe(ee)),X))}}).on("dragend",function(ee){if(ee.arrangement!=="fixed"){ee.interactionState.dragInProgress=!1;for(var ne=0;ne0)window.requestAnimationFrame(ee);else{var _e=re.node.originalX;re.node.x0=_e-re.visibleWidth/2,re.node.x1=_e+re.visibleWidth/2,Q(re,j)}})}function W($,X,re,ae){return function(){for(var ee=0,ne=0;ne0&&ae.forceLayouts[X].alpha(0)}}function Q($,X){for(var re=[],ae=[],j=0;j<$.graph.nodes.length;j++){var ee=($.graph.nodes[j].x0+$.graph.nodes[j].x1)/2,ne=($.graph.nodes[j].y0+$.graph.nodes[j].y1)/2;re.push(ee/$.figure.width),ae.push(ne/$.figure.height)}l.call("_guiRestyle",X,{"node.x":[re],"node.y":[ae]},$.trace.index).then(function(){X._fullLayout._dragCover&&X._fullLayout._dragCover.remove()})}function le($){var X=[],re;for(re=0;re<$.length;re++)$[re].originalX=($[re].x0+$[re].x1)/2,$[re].originalY=($[re].y0+$[re].y1)/2,X.indexOf($[re].originalX)===-1&&X.push($[re].originalX);for(X.sort(function(ae,j){return ae-j}),re=0;re<$.length;re++)$[re].originalLayerIndex=X.indexOf($[re].originalX),$[re].originalLayer=$[re].originalLayerIndex/(X.length-1)}function se($){$.lastDraggedX=$.x0+$.dx/2,$.lastDraggedY=$.y0+$.dy/2}function fe($){return function(X){return X.node.originalX===$.node.originalX}}function G($){for(var X=0;X<$.length;X++)$[X].y=($[X].y0+$[X].y1)/2,$[X].x=($[X].x0+$[X].x1)/2}function J($){for(var X=0;X<$.length;X++)$[X].y0=$[X].y-$[X].dy/2,$[X].y1=$[X].y0+$[X].dy,$[X].x0=$[X].x-$[X].dx/2,$[X].x1=$[X].x0+$[X].dx}H.exports=function($,X,re,ae,j){var ee=$._context.staticPlot,ne=!1;n.ensureSingle($._fullLayout._infolayer,"g","first-render",function(){ne=!0});var ce=$._fullLayout._dragCover,_e=re.filter(function(ot){return d(ot).trace.visible}).map(m.bind(null,ae)),we=X.selectAll("."+t.cn.sankey).data(_e,h);we.exit().remove(),we.enter().append("g").classed(t.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",ee?"none":"auto").attr("transform",O),we.each(function(ot,Me){$._fullData[Me]._sankey=ot;var pe="bgsankey-"+ot.trace.uid+"-"+Me;n.ensureSingle($._fullLayout._draggers,"rect",pe),$._fullData[Me]._bgRect=A.select("."+pe),$._fullData[Me]._bgRect.style("pointer-events",ee?"none":"all").attr("width",ot.width).attr("height",ot.height).attr("x",ot.translateX).attr("y",ot.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),we.transition().ease(t.ease).duration(t.duration).attr("transform",O);var Oe=we.selectAll("."+t.cn.sankeyLinks).data(p,h);Oe.enter().append("g").classed(t.cn.sankeyLinks,!0).style("fill","none");var Ie=Oe.selectAll("."+t.cn.sankeyLink).data(function(ot){var Me=ot.graph.links;return Me.filter(function(pe){return pe.value}).map(b.bind(null,ot))},h);Ie.enter().append("path").classed(t.cn.sankeyLink,!0).call(B,we,j.linkEvents),Ie.style("stroke",function(ot){return F(ot)?o.tinyRGB(r(ot.linkLineColor)):ot.tinyColorHue}).style("stroke-opacity",function(ot){return F(ot)?o.opacity(ot.linkLineColor):ot.tinyColorAlpha}).style("fill",function(ot){return ot.tinyColorHue}).style("fill-opacity",function(ot){return ot.tinyColorAlpha}).style("stroke-width",function(ot){return F(ot)?ot.linkLineWidth:1}).attr("d",u()),Ie.style("opacity",function(){return $._context.staticPlot||ne||ce?1:0}).transition().ease(t.ease).duration(t.duration).style("opacity",1),Ie.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var Xe=we.selectAll("."+t.cn.sankeyNodeSet).data(p,h);Xe.enter().append("g").classed(t.cn.sankeyNodeSet,!0),Xe.style("cursor",function(ot){switch(ot.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var tt=Xe.selectAll("."+t.cn.sankeyNode).data(function(ot){var Me=ot.graph.nodes;return le(Me),Me.map(y.bind(null,ot))},h);tt.enter().append("g").classed(t.cn.sankeyNode,!0).call(f).style("opacity",function(ot){return($._context.staticPlot||ne)&&!ot.partOfGroup?1:0}),tt.call(B,we,j.nodeEvents).call(I,Ie,j,$),tt.transition().ease(t.ease).duration(t.duration).call(f).style("opacity",function(ot){return ot.partOfGroup?0:1}),tt.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var rt=tt.selectAll("."+t.cn.nodeRect).data(p);rt.enter().append("rect").classed(t.cn.nodeRect,!0).call(z),rt.style("stroke-width",function(ot){return ot.nodeLineWidth}).style("stroke",function(ot){return o.tinyRGB(r(ot.nodeLineColor))}).style("stroke-opacity",function(ot){return o.opacity(ot.nodeLineColor)}).style("fill",function(ot){return ot.tinyColorHue}).style("fill-opacity",function(ot){return ot.tinyColorAlpha}),rt.transition().ease(t.ease).duration(t.duration).call(z);var Je=tt.selectAll("."+t.cn.nodeLabel).data(p);Je.enter().append("text").classed(t.cn.nodeLabel,!0).style("cursor","default"),Je.attr("data-notex",1).text(function(ot){return ot.node.label}).each(function(ot){var Me=A.select(this);i.font(Me,ot.textFont),T.convertToTspans(Me,$)}).attr("text-anchor",function(ot){return ot.horizontal&&ot.left?"end":"start"}).attr("transform",function(ot){var Me=A.select(this),pe=T.lineCount(Me),ue=ot.textFont.size*((pe-1)*M-w),ze=ot.nodeLineWidth/2+E,Qe=((ot.horizontal?ot.visibleHeight:ot.visibleWidth)-ue)/2;ot.horizontal&&(ot.left?ze=-ze:ze+=ot.visibleWidth);var it=ot.horizontal?"":"scale(-1,1)"+s(90);return a(ot.horizontal?ze:Qe,ot.horizontal?Qe:ze)+it}),Je.transition().ease(t.ease).duration(t.duration)}}}),_M=Le({"src/traces/sankey/plot.js"(Z,H){"use strict";var g=Ji(),x=ni(),A=x.numberFormat,S=bz(),e=Dc(),t=$a(),r=yM().cn,o=x._;function i(w){return w!==""}function n(w,M){return w.filter(function(E){return E.key===M.traceId})}function a(w,M){g.select(w).select("path").style("fill-opacity",M),g.select(w).select("rect").style("fill-opacity",M)}function s(w){g.select(w).select("text.name").style("fill","black")}function c(w){return function(M){return w.node.sourceLinks.indexOf(M.link)!==-1||w.node.targetLinks.indexOf(M.link)!==-1}}function h(w){return function(M){return M.node.sourceLinks.indexOf(w.link)!==-1||M.node.targetLinks.indexOf(w.link)!==-1}}function p(w,M,E){M&&E&&n(E,M).selectAll("."+r.sankeyLink).filter(c(M)).call(T.bind(0,M,E,!1))}function d(w,M,E){M&&E&&n(E,M).selectAll("."+r.sankeyLink).filter(c(M)).call(l.bind(0,M,E,!1))}function T(w,M,E,m){m.style("fill",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverHue}).style("fill-opacity",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverAlpha}),m.each(function(b){var v=b.link.label;v!==""&&n(M,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===v}).style("fill",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverHue}).style("fill-opacity",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverAlpha})}),E&&n(M,w).selectAll("."+r.sankeyNode).filter(h(w)).call(p)}function l(w,M,E,m){m.style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}),m.each(function(b){var v=b.link.label;v!==""&&n(M,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===v}).style("fill",function(u){return u.tinyColorHue}).style("fill-opacity",function(u){return u.tinyColorAlpha})}),E&&n(M,w).selectAll(r.sankeyNode).filter(h(w)).call(d)}function _(w,M){var E=w.hoverlabel||{},m=x.nestedProperty(E,M).get();return Array.isArray(m)?!1:m}H.exports=function(M,E){for(var m=M._fullLayout,b=m._paper,v=m._size,u=0;u"),color:_(G,"bgcolor")||t.addOpacity(ae.color,1),borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:g.event.x"),color:_(G,"bgcolor")||fe.tinyColorHue,borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[fe.node]},{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:M});a(_e,.85),s(_e)}}},le=function(se,fe,G){M._fullLayout.hovermode!==!1&&(g.select(se).call(d,fe,G),fe.node.trace.node.hoverinfo!=="skip"&&(fe.node.fullData=fe.node.trace,M.emit("plotly_unhover",{event:g.event,points:[fe.node]})),e.loneUnhover(m._hoverlayer.node()))};S(M,b,E,{width:v.w,height:v.h,margin:{t:v.t,r:v.r,b:v.b,l:v.l}},{linkEvents:{hover:P,follow:I,unhover:N,select:f},nodeEvents:{hover:W,follow:Q,unhover:le,select:U}})}}}),wz=Le({"src/traces/sankey/base_plot.js"(Z){"use strict";var H=qu().overrideAll,g=Mh().getModuleCalcData,x=_M(),A=Pd(),S=fv(),e=Kh(),t=cf().prepSelect,r=ni(),o=so(),i="sankey";Z.name=i,Z.baseLayoutAttrOverrides=H({hoverlabel:A.hoverlabel},"plot","nested"),Z.plot=function(a){var s=g(a.calcdata,i)[0];x(a,s),Z.updateFx(a)},Z.clean=function(a,s,c,h){var p=h._has&&h._has(i),d=s._has&&s._has(i);p&&!d&&(h._paperdiv.selectAll(".sankey").remove(),h._paperdiv.selectAll(".bgsankey").remove())},Z.updateFx=function(a){for(var s=0;s0}H.exports=function(F,O,B,I){var N=F._fullLayout,U;w(B)&&I&&(U=I()),S.makeTraceGroups(N._indicatorlayer,O,"trace").each(function(W){var Q=W[0],le=Q.trace,se=g.select(this),fe=le._hasGauge,G=le._isAngular,J=le._isBullet,$=le.domain,X={w:N._size.w*($.x[1]-$.x[0]),h:N._size.h*($.y[1]-$.y[0]),l:N._size.l+N._size.w*$.x[0],r:N._size.r+N._size.w*(1-$.x[1]),t:N._size.t+N._size.h*(1-$.y[1]),b:N._size.b+N._size.h*$.y[0]},re=X.l+X.w/2,ae=X.t+X.h/2,j=Math.min(X.w/2,X.h),ee=n.innerRadius*j,ne,ce,_e,we=le.align||"center";if(ce=ae,!fe)ne=X.l+l[we]*X.w,_e=function(ue){return y(ue,X.w,X.h)};else if(G&&(ne=re,ce=ae+j/2,_e=function(ue){return f(ue,.9*ee)}),J){var Oe=n.bulletPadding,Ie=1-n.bulletNumberDomainSize+Oe;ne=X.l+(Ie+(1-Ie)*l[we])*X.w,_e=function(ue){return y(ue,(n.bulletNumberDomainSize-Oe)*X.w,X.h)}}m(F,se,W,{numbersX:ne,numbersY:ce,numbersScaler:_e,transitionOpts:B,onComplete:U});var Xe,tt;fe&&(Xe={range:le.gauge.axis.range,color:le.gauge.bgcolor,line:{color:le.gauge.bordercolor,width:0},thickness:1},tt={range:le.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:le.gauge.bordercolor,width:le.gauge.borderwidth},thickness:1});var rt=se.selectAll("g.angular").data(G?W:[]);rt.exit().remove();var Je=se.selectAll("g.angularaxis").data(G?W:[]);Je.exit().remove(),G&&E(F,se,W,{radius:j,innerRadius:ee,gauge:rt,layer:Je,size:X,gaugeBg:Xe,gaugeOutline:tt,transitionOpts:B,onComplete:U});var ot=se.selectAll("g.bullet").data(J?W:[]);ot.exit().remove();var Me=se.selectAll("g.bulletaxis").data(J?W:[]);Me.exit().remove(),J&&M(F,se,W,{gauge:ot,layer:Me,size:X,gaugeBg:Xe,gaugeOutline:tt,transitionOpts:B,onComplete:U});var pe=se.selectAll("text.title").data(W);pe.exit().remove(),pe.enter().append("text").classed("title",!0),pe.attr("text-anchor",function(){return J?T.right:T[le.title.align]}).text(le.title.text).call(i.font,le.title.font).call(a.convertToTspans,F),pe.attr("transform",function(){var ue=X.l+X.w*l[le.title.align],ze,Qe=n.titlePadding,it=i.bBox(pe.node());if(fe){if(G)if(le.gauge.axis.visible){var $e=i.bBox(Je.node());ze=$e.top-Qe-it.bottom}else ze=X.t+X.h/2-j/2-it.bottom-Qe;J&&(ze=ce-(it.top+it.bottom)/2,ue=X.l-n.bulletPadding*X.w)}else ze=le._numbersTop-Qe-it.bottom;return t(ue,ze)})})};function M(z,F,O,B){var I=O[0].trace,N=B.gauge,U=B.layer,W=B.gaugeBg,Q=B.gaugeOutline,le=B.size,se=I.domain,fe=B.transitionOpts,G=B.onComplete,J,$,X,re,ae;N.enter().append("g").classed("bullet",!0),N.attr("transform",t(le.l,le.t)),U.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),U.selectAll("g.xbulletaxistick,path,text").remove();var j=le.h,ee=I.gauge.bar.thickness*j,ne=se.x[0],ce=se.x[0]+(se.x[1]-se.x[0])*(I._hasNumber||I._hasDelta?1-n.bulletNumberDomainSize:1);J=u(z,I.gauge.axis),J._id="xbulletaxis",J.domain=[ne,ce],J.setScale(),$=s.calcTicks(J),X=s.makeTransTickFn(J),re=s.getTickSigns(J)[2],ae=le.t+le.h,J.visible&&(s.drawTicks(z,J,{vals:J.ticks==="inside"?s.clipEnds(J,$):$,layer:U,path:s.makeTickPath(J,ae,re),transFn:X}),s.drawLabels(z,J,{vals:$,layer:U,transFn:X,labelFns:s.makeLabelFns(J,ae)}));function _e(Je){Je.attr("width",function(ot){return Math.max(0,J.c2p(ot.range[1])-J.c2p(ot.range[0]))}).attr("x",function(ot){return J.c2p(ot.range[0])}).attr("y",function(ot){return .5*(1-ot.thickness)*j}).attr("height",function(ot){return ot.thickness*j})}var we=[W].concat(I.gauge.steps),Oe=N.selectAll("g.bg-bullet").data(we);Oe.enter().append("g").classed("bg-bullet",!0).append("rect"),Oe.select("rect").call(_e).call(b),Oe.exit().remove();var Ie=N.selectAll("g.value-bullet").data([I.gauge.bar]);Ie.enter().append("g").classed("value-bullet",!0).append("rect"),Ie.select("rect").attr("height",ee).attr("y",(j-ee)/2).call(b),w(fe)?Ie.select("rect").transition().duration(fe.duration).ease(fe.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()}).attr("width",Math.max(0,J.c2p(Math.min(I.gauge.axis.range[1],O[0].y)))):Ie.select("rect").attr("width",typeof O[0].y=="number"?Math.max(0,J.c2p(Math.min(I.gauge.axis.range[1],O[0].y))):0),Ie.exit().remove();var Xe=O.filter(function(){return I.gauge.threshold.value||I.gauge.threshold.value===0}),tt=N.selectAll("g.threshold-bullet").data(Xe);tt.enter().append("g").classed("threshold-bullet",!0).append("line"),tt.select("line").attr("x1",J.c2p(I.gauge.threshold.value)).attr("x2",J.c2p(I.gauge.threshold.value)).attr("y1",(1-I.gauge.threshold.thickness)/2*j).attr("y2",(1-(1-I.gauge.threshold.thickness)/2)*j).call(d.stroke,I.gauge.threshold.line.color).style("stroke-width",I.gauge.threshold.line.width),tt.exit().remove();var rt=N.selectAll("g.gauge-outline").data([Q]);rt.enter().append("g").classed("gauge-outline",!0).append("rect"),rt.select("rect").call(_e).call(b),rt.exit().remove()}function E(z,F,O,B){var I=O[0].trace,N=B.size,U=B.radius,W=B.innerRadius,Q=B.gaugeBg,le=B.gaugeOutline,se=[N.l+N.w/2,N.t+N.h/2+U/2],fe=B.gauge,G=B.layer,J=B.transitionOpts,$=B.onComplete,X=Math.PI/2;function re(kt){var Mt=I.gauge.axis.range[0],Bt=I.gauge.axis.range[1],jt=(kt-Mt)/(Bt-Mt)*Math.PI-X;return jt<-X?-X:jt>X?X:jt}function ae(kt){return g.svg.arc().innerRadius((W+U)/2-kt/2*(U-W)).outerRadius((W+U)/2+kt/2*(U-W)).startAngle(-X)}function j(kt){kt.attr("d",function(Mt){return ae(Mt.thickness).startAngle(re(Mt.range[0])).endAngle(re(Mt.range[1]))()})}var ee,ne,ce,_e;fe.enter().append("g").classed("angular",!0),fe.attr("transform",t(se[0],se[1])),G.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),G.selectAll("g.xangularaxistick,path,text").remove(),ee=u(z,I.gauge.axis),ee.type="linear",ee.range=I.gauge.axis.range,ee._id="xangularaxis",ee.ticklabeloverflow="allow",ee.setScale();var we=function(kt){return(ee.range[0]-kt.x)/(ee.range[1]-ee.range[0])*Math.PI+Math.PI},Oe={},Ie=s.makeLabelFns(ee,0),Xe=Ie.labelStandoff;Oe.xFn=function(kt){var Mt=we(kt);return Math.cos(Mt)*Xe},Oe.yFn=function(kt){var Mt=we(kt),Bt=Math.sin(Mt)>0?.2:1;return-Math.sin(Mt)*(Xe+kt.fontSize*Bt)+Math.abs(Math.cos(Mt))*(kt.fontSize*o)},Oe.anchorFn=function(kt){var Mt=we(kt),Bt=Math.cos(Mt);return Math.abs(Bt)<.1?"middle":Bt>0?"start":"end"},Oe.heightFn=function(kt,Mt,Bt){var jt=we(kt);return-.5*(1+Math.sin(jt))*Bt};var tt=function(kt){return t(se[0]+U*Math.cos(kt),se[1]-U*Math.sin(kt))};ce=function(kt){return tt(we(kt))};var rt=function(kt){var Mt=we(kt);return tt(Mt)+"rotate("+-r(Mt)+")"};if(ne=s.calcTicks(ee),_e=s.getTickSigns(ee)[2],ee.visible){_e=ee.ticks==="inside"?-1:1;var Je=(ee.linewidth||1)/2;s.drawTicks(z,ee,{vals:ne,layer:G,path:"M"+_e*Je+",0h"+_e*ee.ticklen,transFn:rt}),s.drawLabels(z,ee,{vals:ne,layer:G,transFn:ce,labelFns:Oe})}var ot=[Q].concat(I.gauge.steps),Me=fe.selectAll("g.bg-arc").data(ot);Me.enter().append("g").classed("bg-arc",!0).append("path"),Me.select("path").call(j).call(b),Me.exit().remove();var pe=ae(I.gauge.bar.thickness),ue=fe.selectAll("g.value-arc").data([I.gauge.bar]);ue.enter().append("g").classed("value-arc",!0).append("path");var ze=ue.select("path");w(J)?(ze.transition().duration(J.duration).ease(J.easing).each("end",function(){$&&$()}).each("interrupt",function(){$&&$()}).attrTween("d",v(pe,re(O[0].lastY),re(O[0].y))),I._lastValue=O[0].y):ze.attr("d",typeof O[0].y=="number"?pe.endAngle(re(O[0].y)):"M0,0Z"),ze.call(b),ue.exit().remove(),ot=[];var Qe=I.gauge.threshold.value;(Qe||Qe===0)&&ot.push({range:[Qe,Qe],color:I.gauge.threshold.color,line:{color:I.gauge.threshold.line.color,width:I.gauge.threshold.line.width},thickness:I.gauge.threshold.thickness});var it=fe.selectAll("g.threshold-arc").data(ot);it.enter().append("g").classed("threshold-arc",!0).append("path"),it.select("path").call(j).call(b),it.exit().remove();var $e=fe.selectAll("g.gauge-outline").data([le]);$e.enter().append("g").classed("gauge-outline",!0).append("path"),$e.select("path").call(j).call(b),$e.exit().remove()}function m(z,F,O,B){var I=O[0].trace,N=B.numbersX,U=B.numbersY,W=I.align||"center",Q=T[W],le=B.transitionOpts,se=B.onComplete,fe=S.ensureSingle(F,"g","numbers"),G,J,$,X=[];I._hasNumber&&X.push("number"),I._hasDelta&&(X.push("delta"),I.delta.position==="left"&&X.reverse());var re=fe.selectAll("text").data(X);re.enter().append("text"),re.attr("text-anchor",function(){return Q}).attr("class",function(tt){return tt}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),re.exit().remove();function ae(tt,rt,Je,ot){if(tt.match("s")&&Je>=0!=ot>=0&&!rt(Je).slice(-1).match(_)&&!rt(ot).slice(-1).match(_)){var Me=tt.slice().replace("s","f").replace(/\d+/,function(ue){return parseInt(ue)-1}),pe=u(z,{tickformat:Me});return function(ue){return Math.abs(ue)<1?s.tickText(pe,ue).text:rt(ue)}}else return rt}function j(){var tt=u(z,{tickformat:I.number.valueformat},I._range);tt.setScale(),s.prepTicks(tt);var rt=function(ue){return s.tickText(tt,ue).text},Je=I.number.suffix,ot=I.number.prefix,Me=fe.select("text.number");function pe(){var ue=typeof O[0].y=="number"?ot+rt(O[0].y)+Je:"-";Me.text(ue).call(i.font,I.number.font).call(a.convertToTspans,z)}return w(le)?Me.transition().duration(le.duration).ease(le.easing).each("end",function(){pe(),se&&se()}).each("interrupt",function(){pe(),se&&se()}).attrTween("text",function(){var ue=g.select(this),ze=A(O[0].lastY,O[0].y);I._lastValue=O[0].y;var Qe=ae(I.number.valueformat,rt,O[0].lastY,O[0].y);return function(it){ue.text(ot+Qe(ze(it))+Je)}}):pe(),G=P(ot+rt(O[0].y)+Je,I.number.font,Q,z),Me}function ee(){var tt=u(z,{tickformat:I.delta.valueformat},I._range);tt.setScale(),s.prepTicks(tt);var rt=function(it){return s.tickText(tt,it).text},Je=I.delta.suffix,ot=I.delta.prefix,Me=function(it){var $e=I.delta.relative?it.relativeDelta:it.delta;return $e},pe=function(it,$e){return it===0||typeof it!="number"||isNaN(it)?"-":(it>0?I.delta.increasing.symbol:I.delta.decreasing.symbol)+ot+$e(it)+Je},ue=function(it){return it.delta>=0?I.delta.increasing.color:I.delta.decreasing.color};I._deltaLastValue===void 0&&(I._deltaLastValue=Me(O[0]));var ze=fe.select("text.delta");ze.call(i.font,I.delta.font).call(d.fill,ue({delta:I._deltaLastValue}));function Qe(){ze.text(pe(Me(O[0]),rt)).call(d.fill,ue(O[0])).call(a.convertToTspans,z)}return w(le)?ze.transition().duration(le.duration).ease(le.easing).tween("text",function(){var it=g.select(this),$e=Me(O[0]),kt=I._deltaLastValue,Mt=ae(I.delta.valueformat,rt,kt,$e),Bt=A(kt,$e);return I._deltaLastValue=$e,function(jt){it.text(pe(Bt(jt),Mt)),it.call(d.fill,ue({delta:Bt(jt)}))}}).each("end",function(){Qe(),se&&se()}).each("interrupt",function(){Qe(),se&&se()}):Qe(),J=P(pe(Me(O[0]),rt),I.delta.font,Q,z),ze}var ne=I.mode+I.align,ce;if(I._hasDelta&&(ce=ee(),ne+=I.delta.position+I.delta.font.size+I.delta.font.family+I.delta.valueformat,ne+=I.delta.increasing.symbol+I.delta.decreasing.symbol,$=J),I._hasNumber&&(j(),ne+=I.number.font.size+I.number.font.family+I.number.valueformat+I.number.suffix+I.number.prefix,$=G),I._hasDelta&&I._hasNumber){var _e=[(G.left+G.right)/2,(G.top+G.bottom)/2],we=[(J.left+J.right)/2,(J.top+J.bottom)/2],Oe,Ie,Xe=.75*I.delta.font.size;I.delta.position==="left"&&(Oe=L(I,"deltaPos",0,-1*(G.width*l[I.align]+J.width*(1-l[I.align])+Xe),ne,Math.min),Ie=_e[1]-we[1],$={width:G.width+J.width+Xe,height:Math.max(G.height,J.height),left:J.left+Oe,right:G.right,top:Math.min(G.top,J.top+Ie),bottom:Math.max(G.bottom,J.bottom+Ie)}),I.delta.position==="right"&&(Oe=L(I,"deltaPos",0,G.width*(1-l[I.align])+J.width*l[I.align]+Xe,ne,Math.max),Ie=_e[1]-we[1],$={width:G.width+J.width+Xe,height:Math.max(G.height,J.height),left:G.left,right:J.right+Oe,top:Math.min(G.top,J.top+Ie),bottom:Math.max(G.bottom,J.bottom+Ie)}),I.delta.position==="bottom"&&(Oe=null,Ie=J.height,$={width:Math.max(G.width,J.width),height:G.height+J.height,left:Math.min(G.left,J.left),right:Math.max(G.right,J.right),top:G.bottom-G.height,bottom:G.bottom+J.height}),I.delta.position==="top"&&(Oe=null,Ie=G.top,$={width:Math.max(G.width,J.width),height:G.height+J.height,left:Math.min(G.left,J.left),right:Math.max(G.right,J.right),top:G.bottom-G.height-J.height,bottom:G.bottom}),ce.attr({dx:Oe,dy:Ie})}(I._hasNumber||I._hasDelta)&&fe.attr("transform",function(){var tt=B.numbersScaler($);ne+=tt[2];var rt=L(I,"numbersScale",1,tt[0],ne,Math.min),Je;I._scaleNumbers||(rt=1),I._isAngular?Je=U-rt*$.bottom:Je=U-rt*($.top+$.bottom)/2,I._numbersTop=rt*$.top+Je;var ot=$[W];W==="center"&&(ot=($.left+$.right)/2);var Me=N-rt*ot;return Me=L(I,"numbersTranslate",0,Me,ne,Math.max),t(Me,Je)+e(rt)})}function b(z){z.each(function(F){d.stroke(g.select(this),F.line.color)}).each(function(F){d.fill(g.select(this),F.color)}).style("stroke-width",function(F){return F.line.width})}function v(z,F,O){return function(){var B=x(F,O);return function(I){return z.endAngle(B(I))()}}}function u(z,F,O){var B=z._fullLayout,I=S.extendFlat({type:"linear",ticks:"outside",range:O,showline:!0},F),N={type:"linear",_id:"x"+F._id},U={letter:"x",font:B.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function W(Q,le){return S.coerce(I,N,p,Q,le)}return c(I,N,W,U,B),h(I,N,W,U),N}function y(z,F,O){var B=Math.min(F/z.width,O/z.height);return[B,z,F+"x"+O]}function f(z,F){var O=Math.sqrt(z.width/2*(z.width/2)+z.height*z.height),B=F/O;return[B,z,F]}function P(z,F,O,B){var I=document.createElementNS("http://www.w3.org/2000/svg","text"),N=g.select(I);return N.text(z).attr("x",0).attr("y",0).attr("text-anchor",O).attr("data-unformatted",z).call(a.convertToTspans,B).call(i.font,F),i.bBox(N.node())}function L(z,F,O,B,I,N){var U="_cache"+F;z[U]&&z[U].key===I||(z[U]={key:I,value:O});var W=S.aggNums(N,null,[z[U].value,B],2);return z[U].value=W,W}}}),Lz=Le({"src/traces/indicator/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"indicator",basePlotModule:Sz(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:xM(),supplyDefaults:Ez().supplyDefaults,calc:kz().calc,plot:Cz(),meta:{}}}}),Pz=Le({"lib/indicator.js"(Z,H){"use strict";H.exports=Lz()}}),wM=Le({"src/traces/table/attributes.js"(Z,H){"use strict";var g=Vm(),x=ho().extendFlat,A=qu().overrideAll,S=bl(),e=$u().attributes,t=Rc().descriptionOnlyNumbers,r=H.exports=A({domain:e({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},S({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},S({arrayOk:!0}))}},"calc","from-root")}}),Iz=Le({"src/traces/table/defaults.js"(Z,H){"use strict";var g=ni(),x=wM(),A=$u().defaults;function S(e,t){for(var r=e.columnorder||[],o=e.header.values.length,i=r.slice(0,o),n=i.slice().sort(function(c,h){return c-h}),a=i.map(function(c){return n.indexOf(c)}),s=a.length;s",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}}}),Dz=Le({"src/traces/table/data_preparation_helper.js"(Z,H){"use strict";var g=TM(),x=ho().extendFlat,A=zn(),S=cl().isTypedArray,e=cl().isArrayOrTypedArray;H.exports=function(p,d){var T=o(d.cells.values),l=function(Q){return Q.slice(d.header.values.length,Q.length)},_=o(d.header.values);_.length&&!_[0].length&&(_[0]=[""],_=o(_));var w=_.concat(l(T).map(function(){return i((_[0]||[""]).length)})),M=d.domain,E=Math.floor(p._fullLayout._size.w*(M.x[1]-M.x[0])),m=Math.floor(p._fullLayout._size.h*(M.y[1]-M.y[0])),b=d.header.values.length?w[0].map(function(){return d.header.height}):[g.emptyHeaderHeight],v=T.length?T[0].map(function(){return d.cells.height}):[],u=b.reduce(r,0),y=m-u,f=y+g.uplift,P=s(v,f),L=s(b,u),z=a(L,[]),F=a(P,z),O={},B=d._fullInput.columnorder;e(B)&&(B=Array.from(B)),B=B.concat(l(T.map(function(Q,le){return le})));var I=w.map(function(Q,le){var se=e(d.columnwidth)?d.columnwidth[Math.min(le,d.columnwidth.length-1)]:d.columnwidth;return A(se)?Number(se):1}),N=I.reduce(r,0);I=I.map(function(Q){return Q/N*E});var U=Math.max(t(d.header.line.width),t(d.cells.line.width)),W={key:d.uid+p._context.staticPlot,translateX:M.x[0]*p._fullLayout._size.w,translateY:p._fullLayout._size.h*(1-M.y[1]),size:p._fullLayout._size,width:E,maxLineWidth:U,height:m,columnOrder:B,groupHeight:m,rowBlocks:F,headerRowBlocks:z,scrollY:0,cells:x({},d.cells,{values:T}),headerCells:x({},d.header,{values:w}),gdColumns:w.map(function(Q){return Q[0]}),gdColumnsOriginalOrder:w.map(function(Q){return Q[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:w.map(function(Q,le){var se=O[Q];O[Q]=(se||0)+1;var fe=Q+"__"+O[Q];return{key:fe,label:Q,specIndex:le,xIndex:B[le],xScale:n,x:void 0,calcdata:void 0,columnWidth:I[le]}})};return W.columns.forEach(function(Q){Q.calcdata=W,Q.x=n(Q)}),W};function t(h){if(e(h)){for(var p=0,d=0;d=p||m===h.length-1)&&(d[l]=w,w.key=E++,w.firstRowIndex=M,w.lastRowIndex=m,w=c(),l+=_,M=m+1,_=0);return d}function c(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}}}),zz=Le({"src/traces/table/data_split_helpers.js"(Z){"use strict";var H=ho().extendFlat;Z.splitToPanels=function(x){var A=[0,0],S=H({},x,{key:"header",type:"header",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!0,values:x.calcdata.headerCells.values[x.specIndex],rowBlocks:x.calcdata.headerRowBlocks,calcdata:H({},x.calcdata,{cells:x.calcdata.headerCells})}),e=H({},x,{key:"cells1",type:"cells",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks}),t=H({},x,{key:"cells2",type:"cells",page:1,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks});return[e,t,S]},Z.splitToCells=function(x){var A=g(x);return(x.values||[]).slice(A[0],A[1]).map(function(S,e){var t=typeof S=="string"&&S.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:e+t,key:A[0]+e,column:x,calcdata:x.calcdata,page:x.page,rowBlocks:x.rowBlocks,value:S}})};function g(x){var A=x.rowBlocks[x.page],S=A?A.rows[0].rowIndex:0,e=A?S+A.rows.length:0;return[S,e]}}}),AM=Le({"src/traces/table/plot.js"(Z,H){"use strict";var g=TM(),x=Ji(),A=ni(),S=A.numberFormat,e=Nv(),t=rs(),r=$l(),o=ni().raiseToTop,i=ni().strTranslate,n=ni().cancelTransition,a=Dz(),s=zz(),c=$a();H.exports=function(ne,ce){var _e=!ne._context.staticPlot,we=ne._fullLayout._paper.selectAll("."+g.cn.table).data(ce.map(function($e){var kt=e.unwrap($e),Mt=kt.trace;return a(ne,Mt)}),e.keyFun);we.exit().remove(),we.enter().append("g").classed(g.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),we.attr("width",function($e){return $e.width+$e.size.l+$e.size.r}).attr("height",function($e){return $e.height+$e.size.t+$e.size.b}).attr("transform",function($e){return i($e.translateX,$e.translateY)});var Oe=we.selectAll("."+g.cn.tableControlView).data(e.repeat,e.keyFun),Ie=Oe.enter().append("g").classed(g.cn.tableControlView,!0).style("box-sizing","content-box");if(_e){var Xe="onwheel"in document?"wheel":"mousewheel";Ie.on("mousemove",function($e){Oe.filter(function(kt){return $e===kt}).call(l,ne)}).on(Xe,function($e){if(!$e.scrollbarState.wheeling){$e.scrollbarState.wheeling=!0;var kt=$e.scrollY+x.event.deltaY,Mt=Q(ne,Oe,null,kt)($e);Mt||(x.event.stopPropagation(),x.event.preventDefault()),$e.scrollbarState.wheeling=!1}}).call(l,ne,!0)}Oe.attr("transform",function($e){return i($e.size.l,$e.size.t)});var tt=Oe.selectAll("."+g.cn.scrollBackground).data(e.repeat,e.keyFun);tt.enter().append("rect").classed(g.cn.scrollBackground,!0).attr("fill","none"),tt.attr("width",function($e){return $e.width}).attr("height",function($e){return $e.height}),Oe.each(function($e){t.setClipUrl(x.select(this),p(ne,$e),ne)});var rt=Oe.selectAll("."+g.cn.yColumn).data(function($e){return $e.columns},e.keyFun);rt.enter().append("g").classed(g.cn.yColumn,!0),rt.exit().remove(),rt.attr("transform",function($e){return i($e.x,0)}),_e&&rt.call(x.behavior.drag().origin(function($e){var kt=x.select(this);return O(kt,$e,-g.uplift),o(this),$e.calcdata.columnDragInProgress=!0,l(Oe.filter(function(Mt){return $e.calcdata.key===Mt.key}),ne),$e}).on("drag",function($e){var kt=x.select(this),Mt=function(cr){return($e===cr?x.event.x:cr.x)+cr.columnWidth/2};$e.x=Math.max(-g.overdrag,Math.min($e.calcdata.width+g.overdrag-$e.columnWidth,x.event.x));var Bt=T(rt).filter(function(cr){return cr.calcdata.key===$e.calcdata.key}),jt=Bt.sort(function(cr,nr){return Mt(cr)-Mt(nr)});jt.forEach(function(cr,nr){cr.xIndex=nr,cr.x=$e===cr?cr.x:cr.xScale(cr)}),rt.filter(function(cr){return $e!==cr}).transition().ease(g.transitionEase).duration(g.transitionDuration).attr("transform",function(cr){return i(cr.x,0)}),kt.call(n).attr("transform",i($e.x,-g.uplift))}).on("dragend",function($e){var kt=x.select(this),Mt=$e.calcdata;$e.x=$e.xScale($e),$e.calcdata.columnDragInProgress=!1,O(kt,$e,0),z(ne,Mt,Mt.columns.map(function(Bt){return Bt.xIndex}))})),rt.each(function($e){t.setClipUrl(x.select(this),d(ne,$e),ne)});var Je=rt.selectAll("."+g.cn.columnBlock).data(s.splitToPanels,e.keyFun);Je.enter().append("g").classed(g.cn.columnBlock,!0).attr("id",function($e){return $e.key}),Je.style("cursor",function($e){return $e.dragHandle?"ew-resize":$e.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var ot=Je.filter(I),Me=Je.filter(B);_e&&Me.call(x.behavior.drag().origin(function($e){return x.event.stopPropagation(),$e}).on("drag",Q(ne,Oe,-1)).on("dragend",function(){})),_(ne,Oe,ot,Je),_(ne,Oe,Me,Je);var pe=Oe.selectAll("."+g.cn.scrollAreaClip).data(e.repeat,e.keyFun);pe.enter().append("clipPath").classed(g.cn.scrollAreaClip,!0).attr("id",function($e){return p(ne,$e)});var ue=pe.selectAll("."+g.cn.scrollAreaClipRect).data(e.repeat,e.keyFun);ue.enter().append("rect").classed(g.cn.scrollAreaClipRect,!0).attr("x",-g.overdrag).attr("y",-g.uplift).attr("fill","none"),ue.attr("width",function($e){return $e.width+2*g.overdrag}).attr("height",function($e){return $e.height+g.uplift});var ze=rt.selectAll("."+g.cn.columnBoundary).data(e.repeat,e.keyFun);ze.enter().append("g").classed(g.cn.columnBoundary,!0);var Qe=rt.selectAll("."+g.cn.columnBoundaryClippath).data(e.repeat,e.keyFun);Qe.enter().append("clipPath").classed(g.cn.columnBoundaryClippath,!0),Qe.attr("id",function($e){return d(ne,$e)});var it=Qe.selectAll("."+g.cn.columnBoundaryRect).data(e.repeat,e.keyFun);it.enter().append("rect").classed(g.cn.columnBoundaryRect,!0).attr("fill","none"),it.attr("width",function($e){return $e.columnWidth+2*h($e)}).attr("height",function($e){return $e.calcdata.height+2*h($e)+g.uplift}).attr("x",function($e){return-h($e)}).attr("y",function($e){return-h($e)}),W(null,Me,Oe)};function h(ee){return Math.ceil(ee.calcdata.maxLineWidth/2)}function p(ee,ne){return"clip"+ee._fullLayout._uid+"_scrollAreaBottomClip_"+ne.key}function d(ee,ne){return"clip"+ee._fullLayout._uid+"_columnBoundaryClippath_"+ne.calcdata.key+"_"+ne.specIndex}function T(ee){return[].concat.apply([],ee.map(function(ne){return ne})).map(function(ne){return ne.__data__})}function l(ee,ne,ce){function _e(rt){var Je=rt.rowBlocks;return $(Je,Je.length-1)+(Je.length?X(Je[Je.length-1],1/0):1)}var we=ee.selectAll("."+g.cn.scrollbarKit).data(e.repeat,e.keyFun);we.enter().append("g").classed(g.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),we.each(function(rt){var Je=rt.scrollbarState;Je.totalHeight=_e(rt),Je.scrollableAreaHeight=rt.groupHeight-N(rt),Je.currentlyVisibleHeight=Math.min(Je.totalHeight,Je.scrollableAreaHeight),Je.ratio=Je.currentlyVisibleHeight/Je.totalHeight,Je.barLength=Math.max(Je.ratio*Je.currentlyVisibleHeight,g.goldenRatio*g.scrollbarWidth),Je.barWiggleRoom=Je.currentlyVisibleHeight-Je.barLength,Je.wiggleRoom=Math.max(0,Je.totalHeight-Je.scrollableAreaHeight),Je.topY=Je.barWiggleRoom===0?0:rt.scrollY/Je.wiggleRoom*Je.barWiggleRoom,Je.bottomY=Je.topY+Je.barLength,Je.dragMultiplier=Je.wiggleRoom/Je.barWiggleRoom}).attr("transform",function(rt){var Je=rt.width+g.scrollbarWidth/2+g.scrollbarOffset;return i(Je,N(rt))});var Oe=we.selectAll("."+g.cn.scrollbar).data(e.repeat,e.keyFun);Oe.enter().append("g").classed(g.cn.scrollbar,!0);var Ie=Oe.selectAll("."+g.cn.scrollbarSlider).data(e.repeat,e.keyFun);Ie.enter().append("g").classed(g.cn.scrollbarSlider,!0),Ie.attr("transform",function(rt){return i(0,rt.scrollbarState.topY||0)});var Xe=Ie.selectAll("."+g.cn.scrollbarGlyph).data(e.repeat,e.keyFun);Xe.enter().append("line").classed(g.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",g.scrollbarWidth).attr("stroke-linecap","round").attr("y1",g.scrollbarWidth/2),Xe.attr("y2",function(rt){return rt.scrollbarState.barLength-g.scrollbarWidth/2}).attr("stroke-opacity",function(rt){return rt.columnDragInProgress||!rt.scrollbarState.barWiggleRoom||ce?0:.4}),Xe.transition().delay(0).duration(0),Xe.transition().delay(g.scrollbarHideDelay).duration(g.scrollbarHideDuration).attr("stroke-opacity",0);var tt=Oe.selectAll("."+g.cn.scrollbarCaptureZone).data(e.repeat,e.keyFun);tt.enter().append("line").classed(g.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",g.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(rt){var Je=x.event.y,ot=this.getBoundingClientRect(),Me=rt.scrollbarState,pe=Je-ot.top,ue=x.scale.linear().domain([0,Me.scrollableAreaHeight]).range([0,Me.totalHeight]).clamp(!0);Me.topY<=pe&&pe<=Me.bottomY||Q(ne,ee,null,ue(pe-Me.barLength/2))(rt)}).call(x.behavior.drag().origin(function(rt){return x.event.stopPropagation(),rt.scrollbarState.scrollbarScrollInProgress=!0,rt}).on("drag",Q(ne,ee)).on("dragend",function(){})),tt.attr("y2",function(rt){return rt.scrollbarState.scrollableAreaHeight}),ne._context.staticPlot&&(Xe.remove(),tt.remove())}function _(ee,ne,ce,_e){var we=w(ce),Oe=M(we);v(Oe);var Ie=E(Oe);y(Ie);var Xe=b(Oe),tt=m(Xe);u(tt),f(tt,ne,_e,ee),J(Oe)}function w(ee){var ne=ee.selectAll("."+g.cn.columnCells).data(e.repeat,e.keyFun);return ne.enter().append("g").classed(g.cn.columnCells,!0),ne.exit().remove(),ne}function M(ee){var ne=ee.selectAll("."+g.cn.columnCell).data(s.splitToCells,function(ce){return ce.keyWithinBlock});return ne.enter().append("g").classed(g.cn.columnCell,!0),ne.exit().remove(),ne}function E(ee){var ne=ee.selectAll("."+g.cn.cellRect).data(e.repeat,function(ce){return ce.keyWithinBlock});return ne.enter().append("rect").classed(g.cn.cellRect,!0),ne}function m(ee){var ne=ee.selectAll("."+g.cn.cellText).data(e.repeat,function(ce){return ce.keyWithinBlock});return ne.enter().append("text").classed(g.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){x.event.stopPropagation()}),ne}function b(ee){var ne=ee.selectAll("."+g.cn.cellTextHolder).data(e.repeat,function(ce){return ce.keyWithinBlock});return ne.enter().append("g").classed(g.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ne}function v(ee){ee.each(function(ne,ce){var _e=ne.calcdata.cells.font,we=ne.column.specIndex,Oe={size:F(_e.size,we,ce),color:F(_e.color,we,ce),family:F(_e.family,we,ce),weight:F(_e.weight,we,ce),style:F(_e.style,we,ce),variant:F(_e.variant,we,ce),textcase:F(_e.textcase,we,ce),lineposition:F(_e.lineposition,we,ce),shadow:F(_e.shadow,we,ce)};ne.rowNumber=ne.key,ne.align=F(ne.calcdata.cells.align,we,ce),ne.cellBorderWidth=F(ne.calcdata.cells.line.width,we,ce),ne.font=Oe})}function u(ee){ee.each(function(ne){t.font(x.select(this),ne.font)})}function y(ee){ee.attr("width",function(ne){return ne.column.columnWidth}).attr("stroke-width",function(ne){return ne.cellBorderWidth}).each(function(ne){var ce=x.select(this);c.stroke(ce,F(ne.calcdata.cells.line.color,ne.column.specIndex,ne.rowNumber)),c.fill(ce,F(ne.calcdata.cells.fill.color,ne.column.specIndex,ne.rowNumber))})}function f(ee,ne,ce,_e){ee.text(function(we){var Oe=we.column.specIndex,Ie=we.rowNumber,Xe=we.value,tt=typeof Xe=="string",rt=tt&&Xe.match(/
/i),Je=!tt||rt;we.mayHaveMarkup=tt&&Xe.match(/[<&>]/);var ot=P(Xe);we.latex=ot;var Me=ot?"":F(we.calcdata.cells.prefix,Oe,Ie)||"",pe=ot?"":F(we.calcdata.cells.suffix,Oe,Ie)||"",ue=ot?null:F(we.calcdata.cells.format,Oe,Ie)||null,ze=Me+(ue?S(ue)(we.value):we.value)+pe,Qe;we.wrappingNeeded=!we.wrapped&&!Je&&!ot&&(Qe=L(ze)),we.cellHeightMayIncrease=rt||ot||we.mayHaveMarkup||(Qe===void 0?L(ze):Qe),we.needsConvertToTspans=we.mayHaveMarkup||we.wrappingNeeded||we.latex;var it;if(we.wrappingNeeded){var $e=g.wrapSplitCharacter===" "?ze.replace(/we&&_e.push(Oe),we+=tt}return _e}function W(ee,ne,ce){var _e=T(ne)[0];if(_e!==void 0){var we=_e.rowBlocks,Oe=_e.calcdata,Ie=$(we,we.length),Xe=_e.calcdata.groupHeight-N(_e),tt=Oe.scrollY=Math.max(0,Math.min(Ie-Xe,Oe.scrollY)),rt=U(we,tt,Xe);rt.length===1&&(rt[0]===we.length-1?rt.unshift(rt[0]-1):rt.push(rt[0]+1)),rt[0]%2&&rt.reverse(),ne.each(function(Je,ot){Je.page=rt[ot],Je.scrollY=tt}),ne.attr("transform",function(Je){var ot=$(Je.rowBlocks,Je.page)-Je.scrollY;return i(0,ot)}),ee&&(le(ee,ce,ne,rt,_e.prevPages,_e,0),le(ee,ce,ne,rt,_e.prevPages,_e,1),l(ce,ee))}}function Q(ee,ne,ce,_e){return function(Oe){var Ie=Oe.calcdata?Oe.calcdata:Oe,Xe=ne.filter(function(ot){return Ie.key===ot.key}),tt=ce||Ie.scrollbarState.dragMultiplier,rt=Ie.scrollY;Ie.scrollY=_e===void 0?Ie.scrollY+tt*x.event.dy:_e;var Je=Xe.selectAll("."+g.cn.yColumn).selectAll("."+g.cn.columnBlock).filter(B);return W(ee,Je,Xe),Ie.scrollY===rt}}function le(ee,ne,ce,_e,we,Oe,Ie){var Xe=_e[Ie]!==we[Ie];Xe&&(clearTimeout(Oe.currentRepaint[Ie]),Oe.currentRepaint[Ie]=setTimeout(function(){var tt=ce.filter(function(rt,Je){return Je===Ie&&_e[Je]!==we[Je]});_(ee,ne,tt,ce),we[Ie]=_e[Ie]}))}function se(ee,ne,ce,_e){return function(){var Oe=x.select(ne.parentNode);Oe.each(function(Ie){var Xe=Ie.fragments;Oe.selectAll("tspan.line").each(function(ze,Qe){Xe[Qe].width=this.getComputedTextLength()});var tt=Xe[Xe.length-1].width,rt=Xe.slice(0,-1),Je=[],ot,Me,pe=0,ue=Ie.column.columnWidth-2*g.cellPad;for(Ie.value="";rt.length;)ot=rt.shift(),Me=ot.width+tt,pe+Me>ue&&(Ie.value+=Je.join(g.wrapSpacer)+g.lineBreaker,Je=[],pe=0),Je.push(ot.text),pe+=Me;pe&&(Ie.value+=Je.join(g.wrapSpacer)),Ie.wrapped=!0}),Oe.selectAll("tspan.line").remove(),f(Oe.select("."+g.cn.cellText),ce,ee,_e),x.select(ne.parentNode.parentNode).call(J)}}function fe(ee,ne,ce,_e,we){return function(){if(!we.settledY){var Ie=x.select(ne.parentNode),Xe=ae(we),tt=we.key-Xe.firstRowIndex,rt=Xe.rows[tt].rowHeight,Je=we.cellHeightMayIncrease?ne.parentNode.getBoundingClientRect().height+2*g.cellPad:rt,ot=Math.max(Je,rt),Me=ot-Xe.rows[tt].rowHeight;Me&&(Xe.rows[tt].rowHeight=ot,ee.selectAll("."+g.cn.columnCell).call(J),W(null,ee.filter(B),0),l(ce,_e,!0)),Ie.attr("transform",function(){var pe=this,ue=pe.parentNode,ze=ue.getBoundingClientRect(),Qe=x.select(pe.parentNode).select("."+g.cn.cellRect).node().getBoundingClientRect(),it=pe.transform.baseVal.consolidate(),$e=Qe.top-ze.top+(it?it.matrix.f:g.cellPad);return i(G(we,x.select(pe.parentNode).select("."+g.cn.cellTextHolder).node().getBoundingClientRect().width),$e)}),we.settledY=!0}}}function G(ee,ne){switch(ee.align){case"left":return g.cellPad;case"right":return ee.column.columnWidth-(ne||0)-g.cellPad;case"center":return(ee.column.columnWidth-(ne||0))/2;default:return g.cellPad}}function J(ee){ee.attr("transform",function(ne){var ce=ne.rowBlocks[0].auxiliaryBlocks.reduce(function(Ie,Xe){return Ie+X(Xe,1/0)},0),_e=ae(ne),we=X(_e,ne.key),Oe=we+ce;return i(0,Oe)}).selectAll("."+g.cn.cellRect).attr("height",function(ne){return j(ae(ne),ne.key).rowHeight})}function $(ee,ne){for(var ce=0,_e=ne-1;_e>=0;_e--)ce+=re(ee[_e]);return ce}function X(ee,ne){for(var ce=0,_e=0;_eS.length&&(A=A.slice(0,S.length)):A=[],t=0;t90&&(p-=180,n=-n),{angle:p,flip:n,p:x.c2p(e,A,S),offsetMultplier:a}}}}),Gz=Le({"src/traces/carpet/plot.js"(Z,H){"use strict";var g=Ji(),x=rs(),A=MM(),S=SM(),e=Hz(),t=$l(),r=ni(),o=r.strRotate,i=r.strTranslate,n=eh();H.exports=function(_,w,M,E){var m=_._context.staticPlot,b=w.xaxis,v=w.yaxis,u=_._fullLayout,y=u._clips;r.makeTraceGroups(E,M,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace,F=z.aaxis,O=z.baxis,B=r.ensureSingle(P,"g","minorlayer"),I=r.ensureSingle(P,"g","majorlayer"),N=r.ensureSingle(P,"g","boundarylayer"),U=r.ensureSingle(P,"g","labellayer");P.style("opacity",z.opacity),s(b,v,I,F,"a",F._gridlines,!0,m),s(b,v,I,O,"b",O._gridlines,!0,m),s(b,v,B,F,"a",F._minorgridlines,!0,m),s(b,v,B,O,"b",O._minorgridlines,!0,m),s(b,v,N,F,"a-boundary",F._boundarylines,m),s(b,v,N,O,"b-boundary",O._boundarylines,m);var W=c(_,b,v,z,L,U,F._labels,"a-label"),Q=c(_,b,v,z,L,U,O._labels,"b-label");h(_,U,z,L,b,v,W,Q),a(z,L,y,b,v)})};function a(l,_,w,M,E){var m,b,v,u,y=w.select("#"+l._clipPathId);y.size()||(y=w.append("clipPath").classed("carpetclip",!0));var f=r.ensureSingle(y,"path","carpetboundary"),P=_.clipsegments,L=[];for(u=0;u0?"start":"end","data-notex":1}).call(x.font,P.font).text(P.text).call(t.convertToTspans,l),I=x.bBox(this);B.attr("transform",i(z.p[0],z.p[1])+o(z.angle)+i(P.axis.labelpadding*O,I.height*.3)),y=Math.max(y,I.width+P.axis.labelpadding)}),u.exit().remove(),f.maxExtent=y,f}function h(l,_,w,M,E,m,b,v){var u,y,f,P,L=r.aggNums(Math.min,null,w.a),z=r.aggNums(Math.max,null,w.a),F=r.aggNums(Math.min,null,w.b),O=r.aggNums(Math.max,null,w.b);u=.5*(L+z),y=F,f=w.ab2xy(u,y,!0),P=w.dxyda_rough(u,y),b.angle===void 0&&r.extendFlat(b,e(w,E,m,f,w.dxydb_rough(u,y))),T(l,_,w,M,f,P,w.aaxis,E,m,b,"a-title"),u=L,y=.5*(F+O),f=w.ab2xy(u,y,!0),P=w.dxydb_rough(u,y),v.angle===void 0&&r.extendFlat(v,e(w,E,m,f,w.dxyda_rough(u,y))),T(l,_,w,M,f,P,w.baxis,E,m,v,"b-title")}var p=n.LINE_SPACING,d=(1-n.MID_SHIFT)/p+1;function T(l,_,w,M,E,m,b,v,u,y,f){var P=[];b.title.text&&P.push(b.title.text);var L=_.selectAll("text."+f).data(P),z=y.maxExtent;L.enter().append("text").classed(f,!0),L.each(function(){var F=e(w,v,u,E,m);["start","both"].indexOf(b.showticklabels)===-1&&(z=0);var O=b.title.font.size;z+=O+b.title.offset;var B=y.angle+(y.flip<0?180:0),I=(B-F.angle+450)%360,N=I>90&&I<270,U=g.select(this);U.text(b.title.text).call(t.convertToTspans,l),N&&(z=(-t.lineCount(U)+d)*p*O-z),U.attr("transform",i(F.p[0],F.p[1])+o(F.angle)+i(0,z)).attr("text-anchor","middle").call(x.font,b.title.font)}),L.exit().remove()}}}),Wz=Le({"src/traces/carpet/cheater_basis.js"(Z,H){"use strict";var g=ni().isArrayOrTypedArray;H.exports=function(x,A,S){var e,t,r,o,i,n,a=[],s=g(x)?x.length:x,c=g(A)?A.length:A,h=g(x)?x:null,p=g(A)?A:null;h&&(r=(h.length-1)/(h[h.length-1]-h[0])/(s-1)),p&&(o=(p.length-1)/(p[p.length-1]-p[0])/(c-1));var d,T=1/0,l=-1/0;for(t=0;t=10)return null;for(var e=1/0,t=-1/0,r=A.length,o=0;o0&&(X=S.dxydi([],W-1,le,0,se),ee.push(fe[0]+X[0]/3),ne.push(fe[1]+X[1]/3),re=S.dxydi([],W-1,le,1,se),ee.push($[0]-re[0]/3),ne.push($[1]-re[1]/3)),ee.push($[0]),ne.push($[1]),fe=$;else for(W=S.a2i(U),G=Math.floor(Math.max(0,Math.min(F-2,W))),J=W-G,ce.length=F,ce.crossLength=O,ce.xy=function(_e){return S.evalxy([],W,_e)},ce.dxy=function(_e,we){return S.dxydj([],G,_e,J,we)},Q=0;Q0&&(ae=S.dxydj([],G,Q-1,J,0),ee.push(fe[0]+ae[0]/3),ne.push(fe[1]+ae[1]/3),j=S.dxydj([],G,Q-1,J,1),ee.push($[0]-j[0]/3),ne.push($[1]-j[1]/3)),ee.push($[0]),ne.push($[1]),fe=$;return ce.axisLetter=e,ce.axis=E,ce.crossAxis=y,ce.value=U,ce.constvar=t,ce.index=h,ce.x=ee,ce.y=ne,ce.smoothing=y.smoothing,ce}function N(U){var W,Q,le,se,fe,G=[],J=[],$={};if($.length=M.length,$.crossLength=u.length,e==="b")for(le=Math.max(0,Math.min(O-2,U)),fe=Math.min(1,Math.max(0,U-le)),$.xy=function(X){return S.evalxy([],X,U)},$.dxy=function(X,re){return S.dxydi([],X,le,re,fe)},W=0;WM.length-1)&&m.push(x(N(o),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s;hM.length-1)&&!(T<0||T>M.length-1))for(l=M[i],_=M[T],r=0;rM[M.length-1])&&b.push(x(I(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&v.push(x(N(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&v.push(x(N(M.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(n=5e-15,a=[Math.floor((M[M.length-1]-E.tick0)/E.dtick*(1+n)),Math.ceil((M[0]-E.tick0)/E.dtick/(1+n))].sort(function(U,W){return U-W}),s=a[0],c=a[1],h=s;h<=c;h++)p=E.tick0+E.dtick*h,m.push(x(I(p),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s-1;hM[M.length-1])&&b.push(x(I(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&v.push(x(I(M[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&v.push(x(I(M[M.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}}}),Yz=Le({"src/traces/carpet/calc_labels.js"(Z,H){"use strict";var g=Zo(),x=ho().extendFlat;H.exports=function(S,e){var t,r,o,i,n,a=e._labels=[],s=e._gridlines;for(t=0;t=0;t--)r[s-t]=x[c][t],o[s-t]=A[c][t];for(i.push({x:r,y:o,bicubic:n}),t=c,r=[],o=[];t>=0;t--)r[c-t]=x[t][0],o[c-t]=A[t][0];return i.push({x:r,y:o,bicubic:a}),i}}}),$z=Le({"src/traces/carpet/smooth_fill_2d_array.js"(Z,H){"use strict";var g=ni();H.exports=function(A,S,e){var t,r,o,i=[],n=[],a=A[0].length,s=A.length;function c(Q,le){var se=0,fe,G=0;return Q>0&&(fe=A[le][Q-1])!==void 0&&(G++,se+=fe),Q0&&(fe=A[le-1][Q])!==void 0&&(G++,se+=fe),le0&&r0&&tu);return g.log("Smoother converged to",y,"after",P,"iterations"),A}}}),Jz=Le({"src/traces/carpet/constants.js"(Z,H){"use strict";H.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),Qz=Le({"src/traces/carpet/catmull_rom.js"(Z,H){"use strict";var g=.5;H.exports=function(A,S,e,t){var r=A[0]-S[0],o=A[1]-S[1],i=e[0]-S[0],n=e[1]-S[1],a=Math.pow(r*r+o*o,g/2),s=Math.pow(i*i+n*n,g/2),c=(s*s*r-a*a*i)*t,h=(s*s*o-a*a*n)*t,p=s*(a+s)*3,d=a*(a+s)*3;return[[S[0]+(p&&c/p),S[1]+(p&&h/p)],[S[0]-(d&&c/d),S[1]-(d&&h/d)]]}}}),e8=Le({"src/traces/carpet/compute_control_points.js"(Z,H){"use strict";var g=Qz(),x=ni().ensureArray;function A(S,e,t){var r=-.5*t[0]+1.5*e[0],o=-.5*t[1]+1.5*e[1];return[(2*r+S[0])/3,(2*o+S[1])/3]}H.exports=function(e,t,r,o,i,n){var a,s,c,h,p,d,T,l,_,w,M=r[0].length,E=r.length,m=i?3*M-2:M,b=n?3*E-2:E;for(e=x(e,b),t=x(t,b),c=0;cp&&mT&&bd||bl},o.setScale=function(){var m=o._x,b=o._y,v=A(o._xctrl,o._yctrl,m,b,c.smoothing,h.smoothing);o._xctrl=v[0],o._yctrl=v[1],o.evalxy=S([o._xctrl,o._yctrl],a,s,c.smoothing,h.smoothing),o.dxydi=e([o._xctrl,o._yctrl],c.smoothing,h.smoothing),o.dxydj=t([o._xctrl,o._yctrl],c.smoothing,h.smoothing)},o.i2a=function(m){var b=Math.max(0,Math.floor(m[0]),a-2),v=m[0]-b;return(1-v)*i[b]+v*i[b+1]},o.j2b=function(m){var b=Math.max(0,Math.floor(m[1]),a-2),v=m[1]-b;return(1-v)*n[b]+v*n[b+1]},o.ij2ab=function(m){return[o.i2a(m[0]),o.j2b(m[1])]},o.a2i=function(m){var b=Math.max(0,Math.min(x(m,i),a-2)),v=i[b],u=i[b+1];return Math.max(0,Math.min(a-1,b+(m-v)/(u-v)))},o.b2j=function(m){var b=Math.max(0,Math.min(x(m,n),s-2)),v=n[b],u=n[b+1];return Math.max(0,Math.min(s-1,b+(m-v)/(u-v)))},o.ab2ij=function(m){return[o.a2i(m[0]),o.b2j(m[1])]},o.i2c=function(m,b){return o.evalxy([],m,b)},o.ab2xy=function(m,b,v){if(!v&&(mi[a-1]|bn[s-1]))return[!1,!1];var u=o.a2i(m),y=o.b2j(b),f=o.evalxy([],u,y);if(v){var P=0,L=0,z=[],F,O,B,I;mi[a-1]?(F=a-2,O=1,P=(m-i[a-1])/(i[a-1]-i[a-2])):(F=Math.max(0,Math.min(a-2,Math.floor(u))),O=u-F),bn[s-1]?(B=s-2,I=1,L=(b-n[s-1])/(n[s-1]-n[s-2])):(B=Math.max(0,Math.min(s-2,Math.floor(y))),I=y-B),P&&(o.dxydi(z,F,B,O,I),f[0]+=z[0]*P,f[1]+=z[1]*P),L&&(o.dxydj(z,F,B,O,I),f[0]+=z[0]*L,f[1]+=z[1]*L)}return f},o.c2p=function(m,b,v){return[b.c2p(m[0]),v.c2p(m[1])]},o.p2x=function(m,b,v){return[b.p2c(m[0]),v.p2c(m[1])]},o.dadi=function(m){var b=Math.max(0,Math.min(i.length-2,m));return i[b+1]-i[b]},o.dbdj=function(m){var b=Math.max(0,Math.min(n.length-2,m));return n[b+1]-n[b]},o.dxyda=function(m,b,v,u){var y=o.dxydi(null,m,b,v,u),f=o.dadi(m,v);return[y[0]/f,y[1]/f]},o.dxydb=function(m,b,v,u){var y=o.dxydj(null,m,b,v,u),f=o.dbdj(b,u);return[y[0]/f,y[1]/f]},o.dxyda_rough=function(m,b,v){var u=_*(v||.1),y=o.ab2xy(m+u,b,!0),f=o.ab2xy(m-u,b,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dxydb_rough=function(m,b,v){var u=w*(v||.1),y=o.ab2xy(m,b+u,!0),f=o.ab2xy(m,b-u,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dpdx=function(m){return m._m},o.dpdy=function(m){return m._m}}}}),a8=Le({"src/traces/carpet/calc.js"(Z,H){"use strict";var g=Zo(),x=ni().isArray1D,A=Wz(),S=Xz(),e=Zz(),t=Yz(),r=Kz(),o=K_(),i=$z(),n=Y_(),a=n8();H.exports=function(c,h){var p=g.getFromId(c,h.xaxis),d=g.getFromId(c,h.yaxis),T=h.aaxis,l=h.baxis,_=h.x,w=h.y,M=[];_&&x(_)&&M.push("x"),w&&x(w)&&M.push("y"),M.length&&n(h,T,l,"a","b",M);var E=h._a=h._a||h.a,m=h._b=h._b||h.b;_=h._x||h.x,w=h._y||h.y;var b={};if(h._cheater){var v=T.cheatertype==="index"?E.length:E,u=l.cheatertype==="index"?m.length:m;_=A(v,u,h.cheaterslope)}h._x=_=o(_),h._y=w=o(w),i(_,E,m),i(w,E,m),a(h),h.setScale();var y=S(_),f=S(w),P=.5*(y[1]-y[0]),L=.5*(y[1]+y[0]),z=.5*(f[1]-f[0]),F=.5*(f[1]+f[0]),O=1.3;return y=[L-P*O,L+P*O],f=[F-z*O,F+z*O],h._extremes[p._id]=g.findExtremes(p,y,{padded:!0}),h._extremes[d._id]=g.findExtremes(d,f,{padded:!0}),e(h,"a","b"),e(h,"b","a"),t(h,T),t(h,l),b.clipsegments=r(h._xctrl,h._yctrl,T,l),b.x=_,b.y=w,b.a=E,b.b=m,[b]}}}),o8=Le({"src/traces/carpet/index.js"(Z,H){"use strict";H.exports={attributes:Ib(),supplyDefaults:qz(),plot:Gz(),calc:a8(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Ef(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),s8=Le({"lib/carpet.js"(Z,H){"use strict";H.exports=o8()}}),EM=Le({"src/traces/scattercarpet/attributes.js"(Z,H){"use strict";var g=dv(),x=zc(),A=Sl(),S=Fs().hovertemplateAttrs,e=Fs().texttemplateAttrs,t=uu(),r=ho().extendFlat,o=x.marker,i=x.line,n=o.line;H.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:r({},x.mode,{dflt:"markers"}),text:r({},x.text,{}),texttemplate:e({editType:"plot"},{keys:["a","b","text"]}),hovertext:r({},x.hovertext,{}),line:{color:i.color,width:i.width,dash:i.dash,backoff:i.backoff,shape:r({},i.shape,{values:["linear","spline"]}),smoothing:i.smoothing,editType:"calc"},connectgaps:x.connectgaps,fill:r({},x.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:g(),marker:r({symbol:o.symbol,opacity:o.opacity,maxdisplayed:o.maxdisplayed,angle:o.angle,angleref:o.angleref,standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,line:r({width:n.width,editType:"calc"},t("marker.line")),gradient:o.gradient,editType:"calc"},t("marker")),textfont:x.textfont,textposition:x.textposition,selected:x.selected,unselected:x.unselected,hoverinfo:r({},A.hoverinfo,{flags:["a","b","text","name"]}),hoveron:x.hoveron,hovertemplate:S(),zorder:x.zorder}}}),l8=Le({"src/traces/scattercarpet/defaults.js"(Z,H){"use strict";var g=ni(),x=Dv(),A=gu(),S=Od(),e=Wd(),t=Qg(),r=Xd(),o=pv(),i=EM();H.exports=function(a,s,c,h){function p(E,m){return g.coerce(a,s,i,E,m)}p("carpet"),s.xaxis="x",s.yaxis="y";var d=p("a"),T=p("b"),l=Math.min(d.length,T.length);if(!l){s.visible=!1;return}s._length=l,p("text"),p("texttemplate"),p("hovertext");var _=l0?b=E.labelprefix.replace(/ = $/,""):b=E._hovertitle,l.push(b+": "+m.toFixed(3)+E.labelsuffix)}if(!p.hovertemplate){var w=h.hi||p.hoverinfo,M=w.split("+");M.indexOf("all")!==-1&&(M=["a","b","text"]),M.indexOf("a")!==-1&&_(d.aaxis,h.a),M.indexOf("b")!==-1&&_(d.baxis,h.b),l.push("y: "+i.yLabel),M.indexOf("text")!==-1&&x(h,p,l),i.extraText=l.join("
")}return o}}}),d8=Le({"src/traces/scattercarpet/event_data.js"(Z,H){"use strict";H.exports=function(x,A,S,e,t){var r=e[t];return x.a=r.a,x.b=r.b,x.y=r.y,x}}}),v8=Le({"src/traces/scattercarpet/index.js"(Z,H){"use strict";H.exports={attributes:EM(),supplyDefaults:l8(),colorbar:Uh(),formatLabels:u8(),calc:c8(),plot:f8(),style:Ad().style,styleOnSelect:Ad().styleOnSelect,hoverPoints:h8(),selectPoints:i0(),eventData:d8(),moduleType:"trace",name:"scattercarpet",basePlotModule:Ef(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),p8=Le({"lib/scattercarpet.js"(Z,H){"use strict";H.exports=v8()}}),kM=Le({"src/traces/contourcarpet/attributes.js"(Z,H){"use strict";var g=o0(),x=wy(),A=uu(),S=ho().extendFlat,e=x.contours;H.exports=S({carpet:{valType:"string",editType:"calc"},z:g.z,a:g.x,a0:g.x0,da:g.dx,b:g.y,b0:g.y0,db:g.dy,text:g.text,hovertext:g.hovertext,transpose:g.transpose,atype:g.xtype,btype:g.ytype,fillcolor:x.fillcolor,autocontour:x.autocontour,ncontours:x.ncontours,contours:{type:e.type,start:e.start,end:e.end,size:e.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:e.showlines,showlabels:e.showlabels,labelfont:e.labelfont,labelformat:e.labelformat,operation:e.operation,value:e.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:x.line.color,width:x.line.width,dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},zorder:x.zorder},A("",{cLetter:"z",autoColorDflt:!1}))}}),CM=Le({"src/traces/contourcarpet/defaults.js"(Z,H){"use strict";var g=ni(),x=Z_(),A=kM(),S=i3(),e=lx(),t=ux();H.exports=function(o,i,n,a){function s(d,T){return g.coerce(o,i,A,d,T)}function c(d){return g.coerce2(o,i,A,d)}if(s("carpet"),o.a&&o.b){var h=x(o,i,s,a,"a","b");if(!h){i.visible=!1;return}s("text");var p=s("contours.type")==="constraint";p?S(o,i,s,a,n,{hasHover:!1}):(e(o,i,s,c),t(o,i,s,a,{hasHover:!1}))}else i._defaultColor=n,i._length=null;s("zorder")}}}),m8=Le({"src/traces/contourcarpet/calc.js"(Z,H){"use strict";var g=cd(),x=ni(),A=Y_(),S=K_(),e=$_(),t=J_(),r=j2(),o=CM(),i=Rb(),n=Z2();H.exports=function(c,h){var p=h._carpetTrace=i(c,h);if(!(!p||!p.visible||p.visible==="legendonly")){if(!h.a||!h.b){var d=c.data[p.index],T=c.data[h.index];T.a||(T.a=d.a),T.b||(T.b=d.b),o(T,h,h._defaultColor,c._fullLayout)}var l=a(c,h);return n(h,h._z),l}};function a(s,c){var h=c._carpetTrace,p=h.aaxis,d=h.baxis,T,l,_,w,M,E,m;p._minDtick=0,d._minDtick=0,x.isArray1D(c.z)&&A(c,p,d,"a","b",["z"]),T=c._a=c._a||c.a,w=c._b=c._b||c.b,T=T?p.makeCalcdata(c,"_a"):[],w=w?d.makeCalcdata(c,"_b"):[],l=c.a0||0,_=c.da||1,M=c.b0||0,E=c.db||1,m=c._z=S(c._z||c.z,c.transpose),c._emptypoints=t(m),e(m,c._emptypoints);var b=x.maxRowLength(m),v=c.xtype==="scaled"?"":T,u=r(c,v,l,_,b,p),y=c.ytype==="scaled"?"":w,f=r(c,y,M,E,m.length,d),P={a:u,b:f,z:m};return c.contours.type==="levels"&&c.contours.coloring!=="none"&&g(s,c,{vals:m,containerStr:"",cLetter:"z"}),[P]}}}),g8=Le({"src/traces/carpet/axis_aligned_line.js"(Z,H){"use strict";var g=ni().isArrayOrTypedArray;H.exports=function(x,A,S,e){var t,r,o,i,n,a,s,c,h,p,d,T,l,_=g(S)?"a":"b",w=_==="a"?x.aaxis:x.baxis,M=w.smoothing,E=_==="a"?x.a2i:x.b2j,m=_==="a"?S:e,b=_==="a"?e:S,v=_==="a"?A.a.length:A.b.length,u=_==="a"?A.b.length:A.a.length,y=Math.floor(_==="a"?x.b2j(b):x.a2i(b)),f=_==="a"?function(le){return x.evalxy([],le,y)}:function(le){return x.evalxy([],y,le)};M&&(o=Math.max(0,Math.min(u-2,y)),i=y-o,r=_==="a"?function(le,se){return x.dxydi([],le,o,se,i)}:function(le,se){return x.dxydj([],o,le,i,se)});var P=E(m[0]),L=E(m[1]),z=P0?Math.floor:Math.ceil,B=z>0?Math.ceil:Math.floor,I=z>0?Math.min:Math.max,N=z>0?Math.max:Math.min,U=O(P+F),W=B(L-F);s=f(P);var Q=[[s]];for(t=U;t*z=0;ce--)j=N.clipsegments[ce],ee=x([],j.x,P.c2p),ne=x([],j.y,L.c2p),ee.reverse(),ne.reverse(),_e.push(A(ee,ne,j.bicubic));var we="M"+_e.join("L")+"Z";M(F,N.clipsegments,P,L,se,G),E(B,F,P,L,ae,$,J,I,N,G,we),d(F,le,v,O,Q,u,I),S.setClipUrl(F,I._clipPathId,v)})};function p(b,v){var u,y,f,P,L,z,F,O,B;for(u=0;ule&&(y.max=le),y.len=y.max-y.min}function l(b,v,u){var y=b.getPointAtLength(v),f=b.getPointAtLength(u),P=f.x-y.x,L=f.y-y.y,z=Math.sqrt(P*P+L*L);return[P/z,L/z]}function _(b){var v=Math.sqrt(b[0]*b[0]+b[1]*b[1]);return[b[0]/v,b[1]/v]}function w(b,v){var u=Math.abs(b[0]*v[0]+b[1]*v[1]),y=Math.sqrt(1-u*u);return y/u}function M(b,v,u,y,f,P){var L,z,F,O,B=e.ensureSingle(b,"g","contourbg"),I=B.selectAll("path").data(P==="fill"&&!f?[0]:[]);I.enter().append("path"),I.exit().remove();var N=[];for(O=0;O=0&&(U=ee,Q=le):Math.abs(N[1]-U[1])=0&&(U=ee,Q=le):e.log("endpt to newendpt is not vert. or horz.",N,U,ee)}if(Q>=0)break;O+=ae(N,U),N=U}if(Q===v.edgepaths.length){e.log("unclosed perimeter path");break}F=Q,I=B.indexOf(F)===-1,I&&(F=B[0],O+=ae(N,U)+"Z",N=null)}for(F=0;Fm):E=z>f,m=z;var F=p(f,P,L,z);F.pos=y,F.yc=(f+z)/2,F.i=u,F.dir=E?"increasing":"decreasing",F.x=F.pos,F.y=[L,P],b&&(F.orig_p=s[u]),w&&(F.tx=a.text[u]),M&&(F.htx=a.hovertext[u]),v.push(F)}else v.push({pos:y,empty:!0})}return a._extremes[h._id]=A.findExtremes(h,g.concat(l,T),{padded:!0}),v.length&&(v[0].t={labels:{open:x(n,"open:")+" ",high:x(n,"high:")+" ",low:x(n,"low:")+" ",close:x(n,"close:")+" "}}),v}function i(n,a,s){var c=s._minDiff;if(!c){var h=n._fullData,p=[];c=1/0;var d;for(d=0;d"+_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat)):(B=x.extendFlat({},M),B.y0=B.y1=O,B.yLabelVal=F,B.yLabel=_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat),B.name="",w.push(B),P[F]=B)}return w}function a(s,c,h,p){var d=s.cd,T=s.ya,l=d[0].trace,_=d[0].t,w=i(s,c,h,p);if(!w)return[];var M=w.index,E=d[M],m=w.index=E.i,b=E.dir;function v(F){return _.labels[F]+g.hoverLabelText(T,l[F][m],l.yhoverformat)}var u=E.hi||l.hoverinfo,y=u.split("+"),f=u==="all",P=f||y.indexOf("y")!==-1,L=f||y.indexOf("text")!==-1,z=P?[v("open"),v("high"),v("low"),v("close")+" "+r[b]]:[];return L&&e(E,l,z),w.extraText=z.join("
"),w.y0=w.y1=T.c2p(E.yc,!0),[w]}H.exports={hoverPoints:o,hoverSplit:n,hoverOnPoints:a}}}),RM=Le({"src/traces/ohlc/select.js"(Z,H){"use strict";H.exports=function(x,A){var S=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,i=S[0].t.bPos||0;if(A===!1)for(o=0;oc?function(l){return l<=0}:function(l){return l>=0};i.c2g=function(l){var _=i.c2l(l)-s;return(T(_)?_:0)+d},i.g2c=function(l){return i.l2c(l+s-d)},i.g2p=function(l){return l*p},i.c2p=function(l){return i.g2p(i.c2g(l))}}}function t(i,n){return n==="degrees"?A(i):i}function r(i,n){return n==="degrees"?S(i):i}function o(i,n){var a=i.type;if(a==="linear"){var s=i.d2c,c=i.c2d;i.d2c=function(h,p){return t(s(h),p)},i.c2d=function(h,p){return c(r(h,p))}}i.makeCalcdata=function(h,p){var d=h[p],T=h._length,l,_,w=function(v){return i.d2c(v,h.thetaunit)};if(d)for(l=new Array(T),_=0;_0?v:1/0},E=A(w,M),m=g.mod(E+1,w.length);return[w[E],w[m]]}function p(_){return Math.abs(_)>1e-10?_:0}function d(_,w,M){w=w||0,M=M||0;for(var E=_.length,m=new Array(E),b=0;b0?1:0}function x(r){var o=r[0],i=r[1];if(!isFinite(o)||!isFinite(i))return[1,0];var n=(o+1)*(o+1)+i*i;return[(o*o+i*i-1)/n,2*i/n]}function A(r,o){var i=o[0],n=o[1];return[i*r.radius+r.cx,-n*r.radius+r.cy]}function S(r,o){return o*r.radius}function e(r,o,i,n){var a=A(r,x([i,o])),s=a[0],c=a[1],h=A(r,x([n,o])),p=h[0],d=h[1];if(o===0)return["M"+s+","+c,"L"+p+","+d].join(" ");var T=S(r,1/Math.abs(o));return["M"+s+","+c,"A"+T+","+T+" 0 0,"+(o<0?1:0)+" "+p+","+d].join(" ")}function t(r,o,i,n){var a=S(r,1/(o+1)),s=A(r,x([o,i])),c=s[0],h=s[1],p=A(r,x([o,n])),d=p[0],T=p[1];if(g(i)!==g(n)){var l=A(r,x([o,0])),_=l[0],w=l[1];return["M"+c+","+h,"A"+a+","+a+" 0 0,"+(0tt?(rt=ne,Je=ne*tt,pe=(ce-Je)/X.h/2,ot=[j[0],j[1]],Me=[ee[0]+pe,ee[1]-pe]):(rt=ce/tt,Je=ce,pe=(ne-rt)/X.w/2,ot=[j[0]+pe,j[1]-pe],Me=[ee[0],ee[1]]),J.xLength2=rt,J.yLength2=Je,J.xDomain2=ot,J.yDomain2=Me;var ue=J.xOffset2=X.l+X.w*ot[0],ze=J.yOffset2=X.t+X.h*(1-Me[1]),Qe=J.radius=rt/Oe,it=J.innerRadius=J.getHole(G)*Qe,$e=J.cx=ue-Qe*we[0],kt=J.cy=ze+Qe*we[3],Mt=J.cxx=$e-ue,Bt=J.cyy=kt-ze,jt=re.side,cr;jt==="counterclockwise"?(cr=jt,jt="top"):jt==="clockwise"&&(cr=jt,jt="bottom"),J.radialAxis=J.mockAxis(fe,G,re,{_id:"x",side:jt,_trueSide:cr,domain:[it/X.w,Qe/X.w]}),J.angularAxis=J.mockAxis(fe,G,ae,{side:"right",domain:[0,Math.PI],autorange:!1}),J.doAutoRange(fe,G),J.updateAngularAxis(fe,G),J.updateRadialAxis(fe,G),J.updateRadialAxisTitle(fe,G),J.xaxis=J.mockCartesianAxis(fe,G,{_id:"x",domain:ot}),J.yaxis=J.mockCartesianAxis(fe,G,{_id:"y",domain:Me});var nr=J.pathSubplot();J.clipPaths.forTraces.select("path").attr("d",nr).attr("transform",t(Mt,Bt)),$.frontplot.attr("transform",t(ue,ze)).call(o.setClipUrl,J._hasClipOnAxisFalse?null:J.clipIds.forTraces,J.gd),$.bg.attr("d",nr).attr("transform",t($e,kt)).call(r.fill,G.bgcolor)},U.mockAxis=function(fe,G,J,$){var X=S.extendFlat({},J,$);return s(X,G,fe),X},U.mockCartesianAxis=function(fe,G,J){var $=this,X=$.isSmith,re=J._id,ae=S.extendFlat({type:"linear"},J);a(ae,fe);var j={x:[0,2],y:[1,3]};return ae.setRange=function(){var ee=$.sectorBBox,ne=j[re],ce=$.radialAxis._rl,_e=(ce[1]-ce[0])/(1-$.getHole(G));ae.range=[ee[ne[0]]*_e,ee[ne[1]]*_e]},ae.isPtWithinRange=re==="x"&&!X?function(ee){return $.isPtInside(ee)}:function(){return!0},ae.setRange(),ae.setScale(),ae},U.doAutoRange=function(fe,G){var J=this,$=J.gd,X=J.radialAxis,re=J.getRadial(G);c($,X);var ae=X.range;if(re.range=ae.slice(),re._input.range=ae.slice(),X._rl=[X.r2l(ae[0],null,"gregorian"),X.r2l(ae[1],null,"gregorian")],X.minallowed!==void 0){var j=X.r2l(X.minallowed);X._rl[0]>X._rl[1]?X._rl[1]=Math.max(X._rl[1],j):X._rl[0]=Math.max(X._rl[0],j)}if(X.maxallowed!==void 0){var ee=X.r2l(X.maxallowed);X._rl[0]90&&ce<=270&&(_e.tickangle=180);var Ie=Oe?function(Qe){var it=z(J,f([Qe.x,0]));return t(it[0]-j,it[1]-ee)}:function(Qe){return t(_e.l2p(Qe.x)+ae,0)},Xe=Oe?function(Qe){return L(J,Qe.x,-1/0,1/0)}:function(Qe){return J.pathArc(_e.r2p(Qe.x)+ae)},tt=W(ne);if(J.radialTickLayout!==tt&&(X["radial-axis"].selectAll(".xtick").remove(),J.radialTickLayout=tt),we){_e.setScale();var rt=0,Je=Oe?(_e.tickvals||[]).filter(function(Qe){return Qe>=0}).map(function(Qe){return n.tickText(_e,Qe,!0,!1)}):n.calcTicks(_e),ot=Oe?Je:n.clipEnds(_e,Je),Me=n.getTickSigns(_e)[2];Oe&&((_e.ticks==="top"&&_e.side==="bottom"||_e.ticks==="bottom"&&_e.side==="top")&&(Me=-Me),_e.ticks==="top"&&_e.side==="top"&&(rt=-_e.ticklen),_e.ticks==="bottom"&&_e.side==="bottom"&&(rt=_e.ticklen)),n.drawTicks($,_e,{vals:Je,layer:X["radial-axis"],path:n.makeTickPath(_e,0,Me),transFn:Ie,crisp:!1}),n.drawGrid($,_e,{vals:ot,layer:X["radial-grid"],path:Xe,transFn:S.noop,crisp:!1}),n.drawLabels($,_e,{vals:Je,layer:X["radial-axis"],transFn:Ie,labelFns:n.makeLabelFns(_e,rt)})}var pe=J.radialAxisAngle=J.vangles?I(le(B(ne.angle),J.vangles)):ne.angle,ue=t(j,ee),ze=ue+e(-pe);se(X["radial-axis"],we&&(ne.showticklabels||ne.ticks),{transform:ze}),se(X["radial-grid"],we&&ne.showgrid,{transform:Oe?"":ue}),se(X["radial-line"].select("line"),we&&ne.showline,{x1:Oe?-re:ae,y1:0,x2:re,y2:0,transform:ze}).attr("stroke-width",ne.linewidth).call(r.stroke,ne.linecolor)},U.updateRadialAxisTitle=function(fe,G,J){if(!this.isSmith){var $=this,X=$.gd,re=$.radius,ae=$.cx,j=$.cy,ee=$.getRadial(G),ne=$.id+"title",ce=0;if(ee.title){var _e=o.bBox($.layers["radial-axis"].node()).height,we=ee.title.font.size,Oe=ee.side;ce=Oe==="top"?we:Oe==="counterclockwise"?-(_e+we*.4):_e+we*.8}var Ie=J!==void 0?J:$.radialAxisAngle,Xe=B(Ie),tt=Math.cos(Xe),rt=Math.sin(Xe),Je=ae+re/2*tt+ce*rt,ot=j-re/2*rt+ce*tt;$.layers["radial-axis-title"]=T.draw(X,ne,{propContainer:ee,propName:$.id+".radialaxis.title",placeholder:F(X,"Click to enter radial axis title"),attributes:{x:Je,y:ot,"text-anchor":"middle"},transform:{rotate:-Ie}})}},U.updateAngularAxis=function(fe,G){var J=this,$=J.gd,X=J.layers,re=J.radius,ae=J.innerRadius,j=J.cx,ee=J.cy,ne=J.getAngular(G),ce=J.angularAxis,_e=J.isSmith;_e||(J.fillViewInitialKey("angularaxis.rotation",ne.rotation),ce.setGeometry(),ce.setScale());var we=_e?function(it){var $e=z(J,f([0,it.x]));return Math.atan2($e[0]-j,$e[1]-ee)-Math.PI/2}:function(it){return ce.t2g(it.x)};ce.type==="linear"&&ce.thetaunit==="radians"&&(ce.tick0=I(ce.tick0),ce.dtick=I(ce.dtick));var Oe=function(it){return t(j+re*Math.cos(it),ee-re*Math.sin(it))},Ie=_e?function(it){var $e=z(J,f([0,it.x]));return t($e[0],$e[1])}:function(it){return Oe(we(it))},Xe=_e?function(it){var $e=z(J,f([0,it.x])),kt=Math.atan2($e[0]-j,$e[1]-ee)-Math.PI/2;return t($e[0],$e[1])+e(-I(kt))}:function(it){var $e=we(it);return Oe($e)+e(-I($e))},tt=_e?function(it){return P(J,it.x,0,1/0)}:function(it){var $e=we(it),kt=Math.cos($e),Mt=Math.sin($e);return"M"+[j+ae*kt,ee-ae*Mt]+"L"+[j+re*kt,ee-re*Mt]},rt=n.makeLabelFns(ce,0),Je=rt.labelStandoff,ot={};ot.xFn=function(it){var $e=we(it);return Math.cos($e)*Je},ot.yFn=function(it){var $e=we(it),kt=Math.sin($e)>0?.2:1;return-Math.sin($e)*(Je+it.fontSize*kt)+Math.abs(Math.cos($e))*(it.fontSize*b)},ot.anchorFn=function(it){var $e=we(it),kt=Math.cos($e);return Math.abs(kt)<.1?"middle":kt>0?"start":"end"},ot.heightFn=function(it,$e,kt){var Mt=we(it);return-.5*(1+Math.sin(Mt))*kt};var Me=W(ne);J.angularTickLayout!==Me&&(X["angular-axis"].selectAll("."+ce._id+"tick").remove(),J.angularTickLayout=Me);var pe=_e?[1/0].concat(ce.tickvals||[]).map(function(it){return n.tickText(ce,it,!0,!1)}):n.calcTicks(ce);_e&&(pe[0].text="\u221E",pe[0].fontSize*=1.75);var ue;if(G.gridshape==="linear"?(ue=pe.map(we),S.angleDelta(ue[0],ue[1])<0&&(ue=ue.slice().reverse())):ue=null,J.vangles=ue,ce.type==="category"&&(pe=pe.filter(function(it){return S.isAngleInsideSector(we(it),J.sectorInRad)})),ce.visible){var ze=ce.ticks==="inside"?-1:1,Qe=(ce.linewidth||1)/2;n.drawTicks($,ce,{vals:pe,layer:X["angular-axis"],path:"M"+ze*Qe+",0h"+ze*ce.ticklen,transFn:Xe,crisp:!1}),n.drawGrid($,ce,{vals:pe,layer:X["angular-grid"],path:tt,transFn:S.noop,crisp:!1}),n.drawLabels($,ce,{vals:pe,layer:X["angular-axis"],repositionOnUpdate:!0,transFn:Ie,labelFns:ot})}se(X["angular-line"].select("path"),ne.showline,{d:J.pathSubplot(),transform:t(j,ee)}).attr("stroke-width",ne.linewidth).call(r.stroke,ne.linecolor)},U.updateFx=function(fe,G){if(!this.gd._context.staticPlot){var J=!this.isSmith;J&&(this.updateAngularDrag(fe),this.updateRadialDrag(fe,G,0),this.updateRadialDrag(fe,G,1)),this.updateHoverAndMainDrag(fe)}},U.updateHoverAndMainDrag=function(fe){var G=this,J=G.isSmith,$=G.gd,X=G.layers,re=fe._zoomlayer,ae=v.MINZOOM,j=v.OFFEDGE,ee=G.radius,ne=G.innerRadius,ce=G.cx,_e=G.cy,we=G.cxx,Oe=G.cyy,Ie=G.sectorInRad,Xe=G.vangles,tt=G.radialAxis,rt=u.clampTiny,Je=u.findXYatLength,ot=u.findEnclosingVertexAngles,Me=v.cornerHalfWidth,pe=v.cornerLen/2,ue,ze,Qe=h.makeDragger(X,"path","maindrag",fe.dragmode===!1?"none":"crosshair");g.select(Qe).attr("d",G.pathSubplot()).attr("transform",t(ce,_e)),Qe.onmousemove=function(Wt){d.hover($,Wt,G.id),$._fullLayout._lasthover=Qe,$._fullLayout._hoversubplot=G.id},Qe.onmouseout=function(Wt){$._dragging||p.unhover($,Wt)};var it={element:Qe,gd:$,subplot:G.id,plotinfo:{id:G.id,xaxis:G.xaxis,yaxis:G.yaxis},xaxes:[G.xaxis],yaxes:[G.yaxis]},$e,kt,Mt,Bt,jt,cr,nr,Lr,mr;function xr(Wt,$t){return Math.sqrt(Wt*Wt+$t*$t)}function mt(Wt,$t){return xr(Wt-we,$t-Oe)}function Fe(Wt,$t){return Math.atan2(Oe-$t,Wt-we)}function Ze(Wt,$t){return[Wt*Math.cos($t),Wt*Math.sin(-$t)]}function Ne(Wt,$t){if(Wt===0)return G.pathSector(2*Me);var lr=pe/Wt,fi=$t-lr,Pi=$t+lr,Bi=Math.max(0,Math.min(Wt,ee)),zi=Bi-Me,en=Bi+Me;return"M"+Ze(zi,fi)+"A"+[zi,zi]+" 0,0,0 "+Ze(zi,Pi)+"L"+Ze(en,Pi)+"A"+[en,en]+" 0,0,1 "+Ze(en,fi)+"Z"}function Se(Wt,$t,lr){if(Wt===0)return G.pathSector(2*Me);var fi=Ze(Wt,$t),Pi=Ze(Wt,lr),Bi=rt((fi[0]+Pi[0])/2),zi=rt((fi[1]+Pi[1])/2),en,Ri;if(Bi&&zi){var Zi=zi/Bi,vn=-1/Zi,Xt=Je(Me,Zi,Bi,zi);en=Je(pe,vn,Xt[0][0],Xt[0][1]),Ri=Je(pe,vn,Xt[1][0],Xt[1][1])}else{var Dt,qt;zi?(Dt=pe,qt=Me):(Dt=Me,qt=pe),en=[[Bi-Dt,zi-qt],[Bi+Dt,zi-qt]],Ri=[[Bi-Dt,zi+qt],[Bi+Dt,zi+qt]]}return"M"+en.join("L")+"L"+Ri.reverse().join("L")+"Z"}function Ve(){Mt=null,Bt=null,jt=G.pathSubplot(),cr=!1;var Wt=$._fullLayout[G.id];nr=x(Wt.bgcolor).getLuminance(),Lr=h.makeZoombox(re,nr,ce,_e,jt),Lr.attr("fill-rule","evenodd"),mr=h.makeCorners(re,ce,_e),w($)}function Ee(Wt,$t){return $t=Math.max(Math.min($t,ee),ne),Wtae?(Wt<$t?(Mt=Wt,Bt=$t):(Mt=$t,Bt=Wt),!0):(Mt=null,Bt=null,!1)}function be(Wt,$t){Wt=Wt||jt,$t=$t||"M0,0Z",Lr.attr("d",Wt),mr.attr("d",$t),h.transitionZoombox(Lr,mr,cr,nr),cr=!0;var lr={};Pt(lr),$.emit("plotly_relayouting",lr)}function Ce(Wt,$t){Wt=Wt*ue,$t=$t*ze;var lr=$e+Wt,fi=kt+$t,Pi=mt($e,kt),Bi=Math.min(mt(lr,fi),ee),zi=Fe($e,kt),en,Ri;Ee(Pi,Bi)&&(en=jt+G.pathSector(Bt),Mt&&(en+=G.pathSector(Mt)),Ri=Ne(Mt,zi)+Ne(Bt,zi)),be(en,Ri)}function et(Wt,$t,lr,fi){var Pi=u.findIntersectionXY(lr,fi,lr,[Wt-we,Oe-$t]);return xr(Pi[0],Pi[1])}function ht(Wt,$t){var lr=$e+Wt,fi=kt+$t,Pi=Fe($e,kt),Bi=Fe(lr,fi),zi=ot(Pi,Xe),en=ot(Bi,Xe),Ri=et($e,kt,zi[0],zi[1]),Zi=Math.min(et(lr,fi,en[0],en[1]),ee),vn,Xt;Ee(Ri,Zi)&&(vn=jt+G.pathSector(Bt),Mt&&(vn+=G.pathSector(Mt)),Xt=[Se(Mt,zi[0],zi[1]),Se(Bt,zi[0],zi[1])].join(" ")),be(vn,Xt)}function yt(){if(h.removeZoombox($),!(Mt===null||Bt===null)){var Wt={};Pt(Wt),h.showDoubleClickNotifier($),A.call("_guiRelayout",$,Wt)}}function Pt(Wt){var $t=tt._rl,lr=($t[1]-$t[0])/(1-ne/ee)/ee,fi=[$t[0]+(Mt-ne)*lr,$t[0]+(Bt-ne)*lr];Wt[G.id+".radialaxis.range"]=fi}function Ot(Wt,$t){var lr=$._fullLayout.clickmode;if(h.removeZoombox($),Wt===2){var fi={};for(var Pi in G.viewInitial)fi[G.id+"."+Pi]=G.viewInitial[Pi];$.emit("plotly_doubleclick",null),A.call("_guiRelayout",$,fi)}lr.indexOf("select")>-1&&Wt===1&&_($t,$,[G.xaxis],[G.yaxis],G.id,it),lr.indexOf("event")>-1&&d.click($,$t,G.id)}it.prepFn=function(Wt,$t,lr){var fi=$._fullLayout.dragmode,Pi=Qe.getBoundingClientRect();$._fullLayout._calcInverseTransform($);var Bi=$._fullLayout._invTransform;ue=$._fullLayout._invScaleX,ze=$._fullLayout._invScaleY;var zi=S.apply3DTransform(Bi)($t-Pi.left,lr-Pi.top);if($e=zi[0],kt=zi[1],Xe){var en=u.findPolygonOffset(ee,Ie[0],Ie[1],Xe);$e+=we+en[0],kt+=Oe+en[1]}switch(fi){case"zoom":it.clickFn=Ot,J||(Xe?it.moveFn=ht:it.moveFn=Ce,it.doneFn=yt,Ve(Wt,$t,lr));break;case"select":case"lasso":l(Wt,$t,lr,it,fi);break}},p.init(it)},U.updateRadialDrag=function(fe,G,J){var $=this,X=$.gd,re=$.layers,ae=$.radius,j=$.innerRadius,ee=$.cx,ne=$.cy,ce=$.radialAxis,_e=v.radialDragBoxSize,we=_e/2;if(!ce.visible)return;var Oe=B($.radialAxisAngle),Ie=ce._rl,Xe=Ie[0],tt=Ie[1],rt=Ie[J],Je=.75*(Ie[1]-Ie[0])/(1-$.getHole(G))/ae,ot,Me,pe;J?(ot=ee+(ae+we)*Math.cos(Oe),Me=ne-(ae+we)*Math.sin(Oe),pe="radialdrag"):(ot=ee+(j-we)*Math.cos(Oe),Me=ne-(j-we)*Math.sin(Oe),pe="radialdrag-inner");var ue=h.makeRectDragger(re,pe,"crosshair",-we,-we,_e,_e),ze={element:ue,gd:X};fe.dragmode===!1&&(ze.dragmode=!1),se(g.select(ue),ce.visible&&j0!=(J?$e>Xe:$e=90||X>90&&re>=450?Oe=1:j<=0&&ne<=0?Oe=0:Oe=Math.max(j,ne),X<=180&&re>=180||X>180&&re>=540?ce=-1:ae>=0&&ee>=0?ce=0:ce=Math.min(ae,ee),X<=270&&re>=270||X>270&&re>=630?_e=-1:j>=0&&ne>=0?_e=0:_e=Math.min(j,ne),re>=360?we=1:ae<=0&&ee<=0?we=0:we=Math.max(ae,ee),[ce,_e,we,Oe]}function le(fe,G){var J=function(X){return S.angleDist(fe,X)},$=S.findIndexOfMin(G,J);return G[$]}function se(fe,G,J){return G?(fe.attr("display",null),fe.attr(J)):fe&&fe.attr("display","none"),fe}}}),OM=Le({"src/plots/polar/layout_attributes.js"(Z,H){"use strict";var g=gf(),x=Sh(),A=$u().attributes,S=ni().extendFlat,e=qu().overrideAll,t=e({color:x.color,showline:S({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:S({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,ticklabelstep:x.ticklabelstep,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickfont:x.tickfont,tickangle:x.tickangle,tickformat:x.tickformat,tickformatstops:x.tickformatstops,layer:x.layer},"plot","from-root"),o={visible:S({},x.visible,{dflt:!0}),type:S({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},autorange:S({},x.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:S({},x.minallowed,{editType:"plot"}),maxallowed:S({},x.maxallowed,{editType:"plot"}),range:S({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:x.categoryorder,categoryarray:x.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:x.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:S({},x.title.text,{editType:"plot",dflt:""}),font:S({},x.title.font,{editType:"plot"}),editType:"plot"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};S(o,t,r);var i={visible:S({},x.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:x.autotypenumbers,categoryorder:x.categoryorder,categoryarray:x.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};S(i,t,r),H.exports={domain:A({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:g.background},radialaxis:o,angularaxis:i,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),L8=Le({"src/plots/polar/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=$a(),A=wl(),S=Zp(),e=Mh().getSubplotData,t=Nm(),r=Zg(),o=Vp(),i=qp(),n=R_(),a=vy(),s=Ww(),c=Kg(),h=OM(),p=zM(),d=zb(),T=d.axisNames;function l(w,M,E,m){var b=E("bgcolor");m.bgColor=x.combine(b,m.paper_bgcolor);var v=E("sector");E("hole");var u=e(m.fullData,d.name,m.id),y=m.layoutOut,f;function P(_e,we){return E(f+"."+_e,we)}for(var L=0;L")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),R8=Le({"src/traces/scatterpolar/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:Bb(),categories:["polar","symbols","showLegend","scatter-like"],attributes:u1(),supplyDefaults:Ob().supplyDefaults,colorbar:Uh(),formatLabels:Nb(),calc:P8(),plot:I8(),style:Ad().style,styleOnSelect:Ad().styleOnSelect,hoverPoints:Ub().hoverPoints,selectPoints:i0(),meta:{}}}}),D8=Le({"lib/scatterpolar.js"(Z,H){"use strict";H.exports=R8()}}),NM=Le({"src/traces/scatterpolargl/attributes.js"(Z,H){"use strict";var g=u1(),x=e1(),A=Fs().texttemplateAttrs;H.exports={mode:g.mode,r:g.r,theta:g.theta,r0:g.r0,dr:g.dr,theta0:g.theta0,dtheta:g.dtheta,thetaunit:g.thetaunit,text:g.text,texttemplate:A({editType:"plot"},{keys:["r","theta","text"]}),hovertext:g.hovertext,hovertemplate:g.hovertemplate,line:{color:x.line.color,width:x.line.width,dash:x.line.dash,editType:"calc"},connectgaps:x.connectgaps,marker:x.marker,fill:x.fill,fillcolor:x.fillcolor,textposition:x.textposition,textfont:x.textfont,hoverinfo:g.hoverinfo,selected:g.selected,unselected:g.unselected}}}),z8=Le({"src/traces/scatterpolargl/defaults.js"(Z,H){"use strict";var g=ni(),x=gu(),A=Ob().handleRThetaDefaults,S=Od(),e=Wd(),t=Xd(),r=pv(),o=Dv().PTS_LINESONLY,i=NM();H.exports=function(a,s,c,h){function p(T,l){return g.coerce(a,s,i,T,l)}var d=A(a,s,h,p);if(!d){s.visible=!1;return}p("thetaunit"),p("mode",d=r&&(m.marker.cluster=_.tree),m.marker&&(m.markerSel.positions=m.markerUnsel.positions=m.marker.positions=y),m.line&&y.length>1&&t.extendFlat(m.line,e.linePositions(n,l,y)),m.text&&(t.extendFlat(m.text,{positions:y},e.textPosition(n,l,m.text,m.marker)),t.extendFlat(m.textSel,{positions:y},e.textPosition(n,l,m.text,m.markerSel)),t.extendFlat(m.textUnsel,{positions:y},e.textPosition(n,l,m.text,m.markerUnsel))),m.fill&&!p.fill2d&&(p.fill2d=!0),m.marker&&!p.scatter2d&&(p.scatter2d=!0),m.line&&!p.line2d&&(p.line2d=!0),m.text&&!p.glText&&(p.glText=!0),p.lineOptions.push(m.line),p.fillOptions.push(m.fill),p.markerOptions.push(m.marker),p.markerSelectedOptions.push(m.markerSel),p.markerUnselectedOptions.push(m.markerUnsel),p.textOptions.push(m.text),p.textSelectedOptions.push(m.textSel),p.textUnselectedOptions.push(m.textUnsel),p.selectBatch.push([]),p.unselectBatch.push([]),_.x=f,_.y=P,_.rawx=f,_.rawy=P,_.r=M,_.theta=E,_.positions=y,_._scene=p,_.index=p.count,p.count++}}),A(n,a,s)}},H.exports.reglPrecompiled=o}}),j8=Le({"src/traces/scatterpolargl/index.js"(Z,H){"use strict";var g=N8();g.plot=U8(),H.exports=g}}),V8=Le({"lib/scatterpolargl.js"(Z,H){"use strict";H.exports=j8()}}),UM=Le({"src/traces/barpolar/attributes.js"(Z,H){"use strict";var g=Fs().hovertemplateAttrs,x=ho().extendFlat,A=u1(),S=Fv();H.exports={r:A.r,theta:A.theta,r0:A.r0,dr:A.dr,theta0:A.theta0,dtheta:A.dtheta,thetaunit:A.thetaunit,base:x({},S.base,{}),offset:x({},S.offset,{}),width:x({},S.width,{}),text:x({},S.text,{}),hovertext:x({},S.hovertext,{}),marker:e(),hoverinfo:A.hoverinfo,hovertemplate:g(),selected:S.selected,unselected:S.unselected};function e(){var t=x({},S.marker);return delete t.cornerradius,t}}}),jM=Le({"src/traces/barpolar/layout_attributes.js"(Z,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),q8=Le({"src/traces/barpolar/defaults.js"(Z,H){"use strict";var g=ni(),x=Ob().handleRThetaDefaults,A=V_(),S=UM();H.exports=function(t,r,o,i){function n(s,c){return g.coerce(t,r,S,s,c)}var a=x(t,r,i,n);if(!a){r.visible=!1;return}n("thetaunit"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),A(t,r,n,o,i),g.coerceSelectionMarkerOpacity(r,n)}}}),H8=Le({"src/traces/barpolar/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=jM();H.exports=function(A,S,e){var t={},r;function o(a,s){return g.coerce(A[r]||{},S[r],x,a,s)}for(var i=0;i0?(h=s,p=c):(h=c,p=s);var d=e.findEnclosingVertexAngles(h,r.vangles)[0],T=e.findEnclosingVertexAngles(p,r.vangles)[1],l=[d,(h+p)/2,T];return e.pathPolygonAnnulus(n,a,h,p,l,o,i)}:function(n,a,s,c){return A.pathAnnulus(n,a,s,c,o,i)}}}}),W8=Le({"src/traces/barpolar/hover.js"(Z,H){"use strict";var g=Dc(),x=ni(),A=n0().getTraceColor,S=x.fillText,e=Ub().makeHoverPointText,t=Fb().isPtInsidePolygon;H.exports=function(o,i,n){var a=o.cd,s=a[0].trace,c=o.subplot,h=c.radialAxis,p=c.angularAxis,d=c.vangles,T=d?t:x.isPtInsideSector,l=o.maxHoverDistance,_=p._period||2*Math.PI,w=Math.abs(h.g2p(Math.sqrt(i*i+n*n))),M=Math.atan2(n,i);h.range[0]>h.range[1]&&(M+=Math.PI);var E=function(u){return T(w,M,[u.rp0,u.rp1],[u.thetag0,u.thetag1],d)?l+Math.min(1,Math.abs(u.thetag1-u.thetag0)/_)-1+(u.rp1-w)/(u.rp1-u.rp0)-1:1/0};if(g.getClosest(a,E,o),o.index!==!1){var m=o.index,b=a[m];o.x0=o.x1=b.ct[0],o.y0=o.y1=b.ct[1];var v=x.extendFlat({},b,{r:b.s,theta:b.p});return S(b,s,o),e(v,s,c,o),o.hovertemplate=s.hovertemplate,o.color=A(s,b),o.xLabelVal=o.yLabelVal=void 0,b.s<0&&(o.idealAlign="left"),[o]}}}}),X8=Le({"src/traces/barpolar/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"barpolar",basePlotModule:Bb(),categories:["polar","bar","showLegend"],attributes:UM(),layoutAttributes:jM(),supplyDefaults:q8(),supplyLayoutDefaults:H8(),calc:VM().calc,crossTraceCalc:VM().crossTraceCalc,plot:G8(),colorbar:Uh(),formatLabels:Nb(),style:$d().style,styleOnSelect:$d().styleOnSelect,hoverPoints:W8(),selectPoints:a0(),meta:{}}}}),Z8=Le({"lib/barpolar.js"(Z,H){"use strict";H.exports=X8()}}),qM=Le({"src/plots/smith/constants.js"(Z,H){"use strict";H.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),HM=Le({"src/plots/smith/layout_attributes.js"(Z,H){"use strict";var g=gf(),x=Sh(),A=$u().attributes,S=ni().extendFlat,e=qu().overrideAll,t=e({color:x.color,showline:S({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:S({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({ticklen:x.ticklen,tickwidth:S({},x.tickwidth,{dflt:2}),tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,tickfont:x.tickfont,tickformat:x.tickformat,hoverformat:x.hoverformat,layer:x.layer},"plot","from-root"),o=S({visible:S({},x.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:S({},x.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},t,r),i=S({visible:S({},x.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:x.ticks,editType:"calc"},t,r);H.exports={domain:A({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:g.background},realaxis:o,imaginaryaxis:i,editType:"calc"}}}),Y8=Le({"src/plots/smith/layout_defaults.js"(Z,H){"use strict";var g=ni(),x=$a(),A=wl(),S=Zp(),e=Mh().getSubplotData,t=qp(),r=Vp(),o=vy(),i=Rv(),n=HM(),a=qM(),s=a.axisNames,c=p(function(d){return g.isTypedArray(d)&&(d=Array.from(d)),d.slice().reverse().map(function(T){return-T}).concat([0]).concat(d)},String);function h(d,T,l,_){var w=l("bgcolor");_.bgColor=x.combine(w,_.paper_bgcolor);var M=e(_.fullData,a.name,_.id),E=_.layoutOut,m;function b(U,W){return l(m+"."+U,W)}for(var v=0;v")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),rF=Le({"src/traces/scattersmith/index.js"(Z,H){"use strict";H.exports={moduleType:"trace",name:"scattersmith",basePlotModule:K8(),categories:["smith","symbols","showLegend","scatter-like"],attributes:GM(),supplyDefaults:$8(),colorbar:Uh(),formatLabels:J8(),calc:Q8(),plot:eF(),style:Ad().style,styleOnSelect:Ad().styleOnSelect,hoverPoints:tF().hoverPoints,selectPoints:i0(),meta:{}}}}),iF=Le({"lib/scattersmith.js"(Z,H){"use strict";H.exports=rF()}}),Jh=Le({"node_modules/world-calendars/dist/main.js"(Z,H){var g=Nf();function x(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}g(x.prototype,{instance:function(o,i){o=(o||"gregorian").toLowerCase(),i=i||"";var n=this._localCals[o+"-"+i];if(!n&&this.calendars[o]&&(n=new this.calendars[o](i),this._localCals[o+"-"+i]=n),!n)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,o);return n},newDate:function(o,i,n,a,s){return a=(o!=null&&o.year?o.calendar():typeof a=="string"?this.instance(a,s):a)||this.instance(),a.newDate(o,i,n)},substituteDigits:function(o){return function(i){return(i+"").replace(/[0-9]/g,function(n){return o[n]})}},substituteChineseDigits:function(o,i){return function(n){for(var a="",s=0;n>0;){var c=n%10;a=(c===0?"":o[c]+i[s])+a,s++,n=Math.floor(n/10)}return a.indexOf(o[1]+i[1])===0&&(a=a.substr(1)),a||o[0]}}});function A(o,i,n,a){if(this._calendar=o,this._year=i,this._month=n,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function S(o,i){return o=""+o,"000000".substring(0,i-o.length)+o}g(A.prototype,{newDate:function(o,i,n){return this._calendar.newDate(o??this,i,n)},year:function(o){return arguments.length===0?this._year:this.set(o,"y")},month:function(o){return arguments.length===0?this._month:this.set(o,"m")},day:function(o){return arguments.length===0?this._day:this.set(o,"d")},date:function(o,i,n){if(!this._calendar.isValid(o,i,n))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=o,this._month=i,this._day=n,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(o,i){return this._calendar.add(this,o,i)},set:function(o,i){return this._calendar.set(this,o,i)},compareTo:function(o){if(this._calendar.name!==o._calendar.name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,o._calendar.local.name);var i=this._year!==o._year?this._year-o._year:this._month!==o._month?this.monthOfYear()-o.monthOfYear():this._day-o._day;return i===0?0:i<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(o){return this._calendar.fromJD(o)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(o){return this._calendar.fromJSDate(o)},toString:function(){return(this.year()<0?"-":"")+S(Math.abs(this.year()),4)+"-"+S(this.month(),2)+"-"+S(this.day(),2)}});function e(){this.shortYearCutoff="+10"}g(e.prototype,{_validateLevel:0,newDate:function(o,i,n){return o==null?this.today():(o.year&&(this._validate(o,i,n,r.local.invalidDate||r.regionalOptions[""].invalidDate),n=o.day(),i=o.month(),o=o.year()),new A(this,o,i,n))},today:function(){return this.fromJSDate(new Date)},epoch:function(o){var i=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return i.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(o){var i=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return(i.year()<0?"-":"")+S(Math.abs(i.year()),4)},monthsInYear:function(o){return this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),12},monthOfYear:function(o,i){var n=this._validate(o,i,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return(n.month()+this.monthsInYear(n)-this.firstMonth)%this.monthsInYear(n)+this.minMonth},fromMonthOfYear:function(o,i){var n=(i+this.firstMonth-2*this.minMonth)%this.monthsInYear(o)+this.minMonth;return this._validate(o,n,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth),n},daysInYear:function(o){var i=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return this.leapYear(i)?366:365},dayOfYear:function(o,i,n){var a=this._validate(o,i,n,r.local.invalidDate||r.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(o,i,n){var a=this._validate(o,i,n,r.local.invalidDate||r.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(o,i,n){return this._validate(o,i,n,r.local.invalidDate||r.regionalOptions[""].invalidDate),{}},add:function(o,i,n){return this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate),this._correctAdd(o,this._add(o,i,n),i,n)},_add:function(o,i,n){if(this._validateLevel++,n==="d"||n==="w"){var a=o.toJD()+i*(n==="w"?this.daysInWeek():1),s=o.calendar().fromJD(a);return this._validateLevel--,[s.year(),s.month(),s.day()]}try{var c=o.year()+(n==="y"?i:0),h=o.monthOfYear()+(n==="m"?i:0),s=o.day(),p=function(l){for(;h_-1+l.minMonth;)c++,h-=_,_=l.monthsInYear(c)};n==="y"?(o.month()!==this.fromMonthOfYear(c,h)&&(h=this.newDate(c,o.month(),this.minDay).monthOfYear()),h=Math.min(h,this.monthsInYear(c)),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h)))):n==="m"&&(p(this),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h))));var d=[c,this.fromMonthOfYear(c,h),s];return this._validateLevel--,d}catch(T){throw this._validateLevel--,T}},_correctAdd:function(o,i,n,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(i[0]===0||o.year()>0!=i[0]>0)){var s={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],c=n<0?-1:1;i=this._add(o,n*s[0]+c*s[1],s[2])}return o.date(i[0],i[1],i[2])},set:function(o,i,n){this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate);var a=n==="y"?i:o.year(),s=n==="m"?i:o.month(),c=n==="d"?i:o.day();return(n==="y"||n==="m")&&(c=Math.min(c,this.daysInMonth(a,s))),o.date(a,s,c)},isValid:function(o,i,n){this._validateLevel++;var a=this.hasYearZero||o!==0;if(a){var s=this.newDate(o,i,this.minDay);a=i>=this.minMonth&&i-this.minMonth=this.minDay&&n-this.minDay13.5?13:1),T=s-(d>2.5?4716:4715);return T<=0&&T--,this.newDate(T,d,p)},toJSDate:function(o,i,n){var a=this._validate(o,i,n,r.local.invalidDate||r.regionalOptions[""].invalidDate),s=new Date(a.year(),a.month()-1,a.day());return s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0),s.setHours(s.getHours()>12?s.getHours()+2:0),s},fromJSDate:function(o){return this.newDate(o.getFullYear(),o.getMonth()+1,o.getDate())}});var r=H.exports=new x;r.cdate=A,r.baseCalendar=e,r.calendars.gregorian=t}}),nF=Le({"node_modules/world-calendars/dist/plus.js"(){var Z=Nf(),H=Jh();Z(H.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"}),H.local=H.regionalOptions[""],Z(H.cdate.prototype,{formatDate:function(g,x){return typeof g!="string"&&(x=g,g=""),this._calendar.formatDate(g||"",this,x)}}),Z(H.baseCalendar.prototype,{UNIX_EPOCH:H.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:H.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(g,x,A){if(typeof g!="string"&&(A=x,x=g,g=""),!x)return"";if(x.calendar()!==this)throw H.local.invalidFormat||H.regionalOptions[""].invalidFormat;g=g||this.local.dateFormat,A=A||{};for(var S=A.dayNamesShort||this.local.dayNamesShort,e=A.dayNames||this.local.dayNames,t=A.monthNumbers||this.local.monthNumbers,r=A.monthNamesShort||this.local.monthNamesShort,o=A.monthNames||this.local.monthNames,i=A.calculateWeek||this.local.calculateWeek,n=function(M,E){for(var m=1;w+m1},a=function(M,E,m,b){var v=""+E;if(n(M,b))for(;v.length1},_=function(P,L){var z=l(P,L),F=[2,3,z?4:2,z?4:2,10,11,20]["oyYJ@!".indexOf(P)+1],O=new RegExp("^-?\\d{1,"+F+"}"),B=x.substring(v).match(O);if(!B)throw(H.local.missingNumberAt||H.regionalOptions[""].missingNumberAt).replace(/\{0\}/,v);return v+=B[0].length,parseInt(B[0],10)},w=this,M=function(){if(typeof o=="function"){l("m");var P=o.call(w,x.substring(v));return v+=P.length,P}return _("m")},E=function(P,L,z,F){for(var O=l(P,F)?z:L,B=0;B-1){c=1,h=p;for(var f=this.daysInMonth(s,c);h>f;f=this.daysInMonth(s,c))c++,h-=f}return a>-1?this.fromJD(a):this.newDate(s,c,h)},determineDate:function(g,x,A,S,e){A&&typeof A!="object"&&(e=S,S=A,A=null),typeof S!="string"&&(e=S,S="");var t=this,r=function(o){try{return t.parseDate(S,o,e)}catch{}o=o.toLowerCase();for(var i=(o.match(/^c/)&&A?A.newDate():null)||t.today(),n=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,a=n.exec(o);a;)i.add(parseInt(a[1],10),a[2]||"d"),a=n.exec(o);return i};return x=x?x.newDate():null,g=g==null?x:typeof g=="string"?r(g):typeof g=="number"?isNaN(g)||g===1/0||g===-1/0?x:t.today().add(g,"d"):t.newDate(g),g}})}}),aF=Le({"node_modules/world-calendars/dist/calendars/chinese.js"(){var Z=Jh(),H=Nf(),g=Z.instance();function x(a){this.local=this.regionalOptions[a||""]||this.regionalOptions[""]}x.prototype=new Z.baseCalendar,H(x.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(a,s){if(typeof a=="string"){var c=a.match(S);return c?c[0]:""}var h=this._validateYear(a),p=a.month(),d=""+this.toChineseMonth(h,p);return s&&d.length<2&&(d="0"+d),this.isIntercalaryMonth(h,p)&&(d+="i"),d},monthNames:function(a){if(typeof a=="string"){var s=a.match(e);return s?s[0]:""}var c=this._validateYear(a),h=a.month(),p=this.toChineseMonth(c,h),d=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][p-1];return this.isIntercalaryMonth(c,h)&&(d="\u95F0"+d),d},monthNamesShort:function(a){if(typeof a=="string"){var s=a.match(t);return s?s[0]:""}var c=this._validateYear(a),h=a.month(),p=this.toChineseMonth(c,h),d=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][p-1];return this.isIntercalaryMonth(c,h)&&(d="\u95F0"+d),d},parseMonth:function(a,s){a=this._validateYear(a);var c=parseInt(s),h;if(isNaN(c))s[0]==="\u95F0"&&(h=!0,s=s.substring(1)),s[s.length-1]==="\u6708"&&(s=s.substring(0,s.length-1)),c=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(s);else{var p=s[s.length-1];h=p==="i"||p==="I"}var d=this.toMonthIndex(a,c,h);return d},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(a,s){if(a.year&&(a=a.year()),typeof a!="number"||a<1888||a>2111)throw s.replace(/\{0\}/,this.local.name);return a},toMonthIndex:function(a,s,c){var h=this.intercalaryMonth(a),p=c&&s!==h;if(p||s<1||s>12)throw Z.local.invalidMonth.replace(/\{0\}/,this.local.name);var d;return h?!c&&s<=h?d=s-1:d=s:d=s-1,d},toChineseMonth:function(a,s){a.year&&(a=a.year(),s=a.month());var c=this.intercalaryMonth(a),h=c?12:11;if(s<0||s>h)throw Z.local.invalidMonth.replace(/\{0\}/,this.local.name);var p;return c?s>13;return c},isIntercalaryMonth:function(a,s){a.year&&(a=a.year(),s=a.month());var c=this.intercalaryMonth(a);return!!c&&c===s},leapYear:function(a){return this.intercalaryMonth(a)!==0},weekOfYear:function(a,s,c){var h=this._validateYear(a,Z.local.invalidyear),p=o[h-o[0]],d=p>>9&4095,T=p>>5&15,l=p&31,_;_=g.newDate(d,T,l),_.add(4-(_.dayOfWeek()||7),"d");var w=this.toJD(a,s,c)-_.toJD();return 1+Math.floor(w/7)},monthsInYear:function(a){return this.leapYear(a)?13:12},daysInMonth:function(a,s){a.year&&(s=a.month(),a=a.year()),a=this._validateYear(a);var c=r[a-r[0]],h=c>>13,p=h?12:11;if(s>p)throw Z.local.invalidMonth.replace(/\{0\}/,this.local.name);var d=c&1<<12-s?30:29;return d},weekDay:function(a,s,c){return(this.dayOfWeek(a,s,c)||7)<6},toJD:function(a,s,c){var h=this._validate(a,d,c,Z.local.invalidDate);a=this._validateYear(h.year()),s=h.month(),c=h.day();var p=this.isIntercalaryMonth(a,s),d=this.toChineseMonth(a,s),T=n(a,d,c,p);return g.toJD(T.year,T.month,T.day)},fromJD:function(a){var s=g.fromJD(a),c=i(s.year(),s.month(),s.day()),h=this.toMonthIndex(c.year,c.month,c.isIntercalary);return this.newDate(c.year,h,c.day)},fromString:function(a){var s=a.match(A),c=this._validateYear(+s[1]),h=+s[2],p=!!s[3],d=this.toMonthIndex(c,h,p),T=+s[4];return this.newDate(c,d,T)},add:function(a,s,c){var h=a.year(),p=a.month(),d=this.isIntercalaryMonth(h,p),T=this.toChineseMonth(h,p),l=Object.getPrototypeOf(x.prototype).add.call(this,a,s,c);if(c==="y"){var _=l.year(),w=l.month(),M=this.isIntercalaryMonth(_,T),E=d&&M?this.toMonthIndex(_,T,!0):this.toMonthIndex(_,T,!1);E!==w&&l.month(E)}return l}});var A=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,S=/^\d?\d[iI]?/m,e=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;Z.calendars.chinese=x;var r=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],o=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function i(a,s,c,h){var p,d;if(typeof a=="object")p=a,d=s||{};else{var T=typeof a=="number"&&a>=1888&&a<=2111;if(!T)throw new Error("Solar year outside range 1888-2111");var l=typeof s=="number"&&s>=1&&s<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var _=typeof c=="number"&&c>=1&&c<=31;if(!_)throw new Error("Solar day outside range 1 - 31");p={year:a,month:s,day:c},d=h||{}}var w=o[p.year-o[0]],M=p.year<<9|p.month<<5|p.day;d.year=M>=w?p.year:p.year-1,w=o[d.year-o[0]];var E=w>>9&4095,m=w>>5&15,b=w&31,v,u=new Date(E,m-1,b),y=new Date(p.year,p.month-1,p.day);v=Math.round((y-u)/(24*3600*1e3));var f=r[d.year-r[0]],P;for(P=0;P<13;P++){var L=f&1<<12-P?30:29;if(v>13;return!z||P=1888&&a<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var _=typeof s=="number"&&s>=1&&s<=12;if(!_)throw new Error("Lunar month outside range 1 - 12");var w=typeof c=="number"&&c>=1&&c<=30;if(!w)throw new Error("Lunar day outside range 1 - 30");var M;typeof h=="object"?(M=!1,d=h):(M=!!h,d=p||{}),T={year:a,month:s,day:c,isIntercalary:M}}var E;E=T.day-1;var m=r[T.year-r[0]],b=m>>13,v;b&&(T.month>b||T.isIntercalary)?v=T.month:v=T.month-1;for(var u=0;u>9&4095,L=f>>5&15,z=f&31,F=new Date(P,L-1,z+E);return d.year=F.getFullYear(),d.month=1+F.getMonth(),d.day=F.getDate(),d}}}),oF=Le({"node_modules/world-calendars/dist/calendars/coptic.js"(){var Z=Jh(),H=Nf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(S){var A=this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),S=A.year()+(A.year()<0?1:0);return S%4===3||S%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,Z.local.invalidYear||Z.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,S){var e=this.newDate(x,A,S);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var S=this._validate(x,A,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[S.month()-1]+(S.month()===13&&this.leapYear(S.year())?1:0)},weekDay:function(x,A,S){return(this.dayOfWeek(x,A,S)||7)<6},toJD:function(x,A,S){var e=this._validate(x,A,S,Z.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,S=Math.floor((A-Math.floor((A+366)/1461))/365)+1;S<=0&&S--,A=Math.floor(x)+.5-this.newDate(S,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(S,e,t)}}),Z.calendars.coptic=g}}),sF=Le({"node_modules/world-calendars/dist/calendars/discworld.js"(){var Z=Jh(),H=Nf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(A){return this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear),!1},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear),13},daysInYear:function(A){return this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear),400},weekOfYear:function(A,S,e){var t=this.newDate(A,S,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(A,S){var e=this._validate(A,S,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[e.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);return(t.day()+1)%8},weekDay:function(A,S,e){var t=this.dayOfWeek(A,S,e);return t>=2&&t<=6},extraInfo:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);return{century:x[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);return A=t.year()+(t.year()<0?1:0),S=t.month(),e=t.day(),e+(S>1?16:0)+(S>2?(S-2)*32:0)+(A-1)*400+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A+.5)-Math.floor(this.jdEpoch)-1;var S=Math.floor(A/400)+1;A-=(S-1)*400,A+=A>15?16:0;var e=Math.floor(A/32)+1,t=A-(e-1)*32+1;return this.newDate(S<=0?S-1:S,e,t)}});var x={20:"Fruitbat",21:"Anchovy"};Z.calendars.discworld=g}}),lF=Le({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var Z=Jh(),H=Nf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(S){var A=this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),S=A.year()+(A.year()<0?1:0);return S%4===3||S%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,Z.local.invalidYear||Z.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,S){var e=this.newDate(x,A,S);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var S=this._validate(x,A,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[S.month()-1]+(S.month()===13&&this.leapYear(S.year())?1:0)},weekDay:function(x,A,S){return(this.dayOfWeek(x,A,S)||7)<6},toJD:function(x,A,S){var e=this._validate(x,A,S,Z.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,S=Math.floor((A-Math.floor((A+366)/1461))/365)+1;S<=0&&S--,A=Math.floor(x)+.5-this.newDate(S,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(S,e,t)}}),Z.calendars.ethiopian=g}}),uF=Le({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var Z=Jh(),H=Nf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var S=this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear);return this._leapYear(S.year())},_leapYear:function(A){return A=A<0?A+1:A,x(A*7+1,19)<7},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear),this._leapYear(A.year?A.year():A)?13:12},weekOfYear:function(A,S,e){var t=this.newDate(A,S,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){var S=this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear);return A=S.year(),this.toJD(A===-1?1:A+1,7,1)-this.toJD(A,7,1)},daysInMonth:function(A,S){return A.year&&(S=A.month(),A=A.year()),this._validate(A,S,this.minDay,Z.local.invalidMonth),S===12&&this.leapYear(A)||S===8&&x(this.daysInYear(A),10)===5?30:S===9&&x(this.daysInYear(A),10)===3?29:this.daysPerMonth[S-1]},weekDay:function(A,S,e){return this.dayOfWeek(A,S,e)!==6},extraInfo:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);A=t.year(),S=t.month(),e=t.day();var r=A<=0?A+1:A,o=this.jdEpoch+this._delay1(r)+this._delay2(r)+e+1;if(S<7){for(var i=7;i<=this.monthsInYear(A);i++)o+=this.daysInMonth(A,i);for(var i=1;i=this.toJD(S===-1?1:S+1,7,1);)S++;for(var e=Athis.toJD(S,e,this.daysInMonth(S,e));)e++;var t=A-this.toJD(S,e,1)+1;return this.newDate(S,e,t)}});function x(A,S){return A-S*Math.floor(A/S)}Z.calendars.hebrew=g}}),cF=Le({"node_modules/world-calendars/dist/calendars/islamic.js"(){var Z=Jh(),H=Nf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,Z.local.invalidYear);return(A.year()*11+14)%30<11},weekOfYear:function(x,A,S){var e=this.newDate(x,A,S);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){return this.leapYear(x)?355:354},daysInMonth:function(x,A){var S=this._validate(x,A,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[S.month()-1]+(S.month()===12&&this.leapYear(S.year())?1:0)},weekDay:function(x,A,S){return this.dayOfWeek(x,A,S)!==5},toJD:function(x,A,S){var e=this._validate(x,A,S,Z.local.invalidDate);return x=e.year(),A=e.month(),S=e.day(),x=x<=0?x+1:x,S+Math.ceil(29.5*(A-1))+(x-1)*354+Math.floor((3+11*x)/30)+this.jdEpoch-1},fromJD:function(x){x=Math.floor(x)+.5;var A=Math.floor((30*(x-this.jdEpoch)+10646)/10631);A=A<=0?A-1:A;var S=Math.min(12,Math.ceil((x-29-this.toJD(A,1,1))/29.5)+1),e=x-this.toJD(A,S,1)+1;return this.newDate(A,S,e)}}),Z.calendars.islamic=g}}),fF=Le({"node_modules/world-calendars/dist/calendars/julian.js"(){var Z=Jh(),H=Nf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(S){var A=this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),S=A.year()<0?A.year()+1:A.year();return S%4===0},weekOfYear:function(x,A,S){var e=this.newDate(x,A,S);return e.add(4-(e.dayOfWeek()||7),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var S=this._validate(x,A,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[S.month()-1]+(S.month()===2&&this.leapYear(S.year())?1:0)},weekDay:function(x,A,S){return(this.dayOfWeek(x,A,S)||7)<6},toJD:function(x,A,S){var e=this._validate(x,A,S,Z.local.invalidDate);return x=e.year(),A=e.month(),S=e.day(),x<0&&x++,A<=2&&(x--,A+=12),Math.floor(365.25*(x+4716))+Math.floor(30.6001*(A+1))+S-1524.5},fromJD:function(x){var A=Math.floor(x+.5),S=A+1524,e=Math.floor((S-122.1)/365.25),t=Math.floor(365.25*e),r=Math.floor((S-t)/30.6001),o=r-Math.floor(r<14?1:13),i=e-Math.floor(o>2?4716:4715),n=S-t-Math.floor(30.6001*r);return i<=0&&i--,this.newDate(i,o,n)}}),Z.calendars.julian=g}}),hF=Le({"node_modules/world-calendars/dist/calendars/mayan.js"(){var Z=Jh(),H=Nf();function g(S){this.local=this.regionalOptions[S||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(S){return this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),!1},formatYear:function(S){var e=this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear);S=e.year();var t=Math.floor(S/400);S=S%400,S+=S<0?400:0;var r=Math.floor(S/20);return t+"."+r+"."+S%20},forYear:function(S){if(S=S.split("."),S.length<3)throw"Invalid Mayan year";for(var e=0,t=0;t19||t>0&&r<0)throw"Invalid Mayan year";e=e*20+r}return e},monthsInYear:function(S){return this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),18},weekOfYear:function(S,e,t){return this._validate(S,e,t,Z.local.invalidDate),0},daysInYear:function(S){return this._validate(S,this.minMonth,this.minDay,Z.local.invalidYear),360},daysInMonth:function(S,e){return this._validate(S,e,this.minDay,Z.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(S,e,t){var r=this._validate(S,e,t,Z.local.invalidDate);return r.day()},weekDay:function(S,e,t){return this._validate(S,e,t,Z.local.invalidDate),!0},extraInfo:function(S,e,t){var r=this._validate(S,e,t,Z.local.invalidDate),o=r.toJD(),i=this._toHaab(o),n=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[n[0]-1],tzolkinDay:n[0],tzolkinTrecena:n[1]}},_toHaab:function(S){S-=this.jdEpoch;var e=x(S+8+17*20,365);return[Math.floor(e/20)+1,x(e,20)]},_toTzolkin:function(S){return S-=this.jdEpoch,[A(S+20,20),A(S+4,13)]},toJD:function(S,e,t){var r=this._validate(S,e,t,Z.local.invalidDate);return r.day()+r.month()*20+r.year()*360+this.jdEpoch},fromJD:function(S){S=Math.floor(S)+.5-this.jdEpoch;var e=Math.floor(S/360);S=S%360,S+=S<0?360:0;var t=Math.floor(S/20),r=S%20;return this.newDate(e,t,r)}});function x(S,e){return S-e*Math.floor(S/e)}function A(S,e){return x(S-1,e)+1}Z.calendars.mayan=g}}),dF=Le({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var Z=Jh(),H=Nf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar;var x=Z.instance("gregorian");H(g.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var S=this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear||Z.regionalOptions[""].invalidYear);return x.leapYear(S.year()+(S.year()<1?1:0)+1469)},weekOfYear:function(A,S,e){var t=this.newDate(A,S,e);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,S){var e=this._validate(A,S,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,S,e){return(this.dayOfWeek(A,S,e)||7)<6},toJD:function(r,S,e){var t=this._validate(r,S,e,Z.local.invalidMonth),r=t.year();r<0&&r++;for(var o=t.day(),i=1;i=this.toJD(S+1,1,1);)S++;for(var e=A-Math.floor(this.toJD(S,1,1)+.5)+1,t=1;e>this.daysInMonth(S,t);)e-=this.daysInMonth(S,t),t++;return this.newDate(S,t,e)}}),Z.calendars.nanakshahi=g}}),vF=Le({"node_modules/world-calendars/dist/calendars/nepali.js"(){var Z=Jh(),H=Nf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(x){return this.daysInYear(x)!==this.daysPerYear},weekOfYear:function(x,A,S){var e=this.newDate(x,A,S);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,Z.local.invalidYear);if(x=A.year(),typeof this.NEPALI_CALENDAR_DATA[x]>"u")return this.daysPerYear;for(var S=0,e=this.minMonth;e<=12;e++)S+=this.NEPALI_CALENDAR_DATA[x][e];return S},daysInMonth:function(x,A){return x.year&&(A=x.month(),x=x.year()),this._validate(x,A,this.minDay,Z.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[x]>"u"?this.daysPerMonth[A-1]:this.NEPALI_CALENDAR_DATA[x][A]},weekDay:function(x,A,S){return this.dayOfWeek(x,A,S)!==6},toJD:function(x,A,S){var e=this._validate(x,A,S,Z.local.invalidDate);x=e.year(),A=e.month(),S=e.day();var t=Z.instance(),r=0,o=A,i=x;this._createMissingCalendarData(x);var n=x-(o>9||o===9&&S>=this.NEPALI_CALENDAR_DATA[i][0]?56:57);for(A!==9&&(r=S,o--);o!==9;)o<=0&&(o=12,i--),r+=this.NEPALI_CALENDAR_DATA[i][o],o--;return A===9?(r+=S-this.NEPALI_CALENDAR_DATA[i][0],r<0&&(r+=t.daysInYear(n))):r+=this.NEPALI_CALENDAR_DATA[i][9]-this.NEPALI_CALENDAR_DATA[i][0],t.newDate(n,1,1).add(r,"d").toJD()},fromJD:function(x){var A=Z.instance(),S=A.fromJD(x),e=S.year(),t=S.dayOfYear(),r=e+56;this._createMissingCalendarData(r);for(var o=9,i=this.NEPALI_CALENDAR_DATA[r][0],n=this.NEPALI_CALENDAR_DATA[r][o]-i+1;t>n;)o++,o>12&&(o=1,r++),n+=this.NEPALI_CALENDAR_DATA[r][o];var a=this.NEPALI_CALENDAR_DATA[r][o]-(n-t);return this.newDate(r,o,a)},_createMissingCalendarData:function(x){var A=this.daysPerMonth.slice(0);A.unshift(17);for(var S=x-1;S"u"&&(this.NEPALI_CALENDAR_DATA[S]=A)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),Z.calendars.nepali=g}}),pF=Le({"node_modules/world-calendars/dist/calendars/persian.js"(){var Z=Jh(),H=Nf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xE6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xE6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(A){var S=this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear);return((S.year()-(S.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(A,S,e){var t=this.newDate(A,S,e);return t.add(-((t.dayOfWeek()+1)%7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,S){var e=this._validate(A,S,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,S,e){return this.dayOfWeek(A,S,e)!==5},toJD:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate);A=t.year(),S=t.month(),e=t.day();var r=A-(A>=0?474:473),o=474+x(r,2820);return e+(S<=7?(S-1)*31:(S-1)*30+6)+Math.floor((o*682-110)/2816)+(o-1)*365+Math.floor(r/2820)*1029983+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A)+.5;var S=A-this.toJD(475,1,1),e=Math.floor(S/1029983),t=x(S,1029983),r=2820;if(t!==1029982){var o=Math.floor(t/366),i=x(t,366);r=Math.floor((2134*o+2816*i+2815)/1028522)+o+1}var n=r+2820*e+474;n=n<=0?n-1:n;var a=A-this.toJD(n,1,1)+1,s=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),c=A-this.toJD(n,s,1)+1;return this.newDate(n,s,c)}});function x(A,S){return A-S*Math.floor(A/S)}Z.calendars.persian=g,Z.calendars.jalali=g}}),mF=Le({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var Z=Jh(),H=Nf(),g=Z.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new Z.baseCalendar,H(x.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var S=this._validate(e,this.minMonth,this.minDay,Z.local.invalidYear),e=this._t2gYear(S.year());return g.leapYear(e)},weekOfYear:function(r,S,e){var t=this._validate(r,this.minMonth,this.minDay,Z.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,S){var e=this._validate(A,S,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,S,e){return(this.dayOfWeek(A,S,e)||7)<6},toJD:function(r,S,e){var t=this._validate(r,S,e,Z.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var S=g.fromJD(A),e=this._g2tYear(S.year());return this.newDate(e,S.month(),S.day())},_t2gYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)},_g2tYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)}}),Z.calendars.taiwan=x}}),gF=Le({"node_modules/world-calendars/dist/calendars/thai.js"(){var Z=Jh(),H=Nf(),g=Z.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new Z.baseCalendar,H(x.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var S=this._validate(e,this.minMonth,this.minDay,Z.local.invalidYear),e=this._t2gYear(S.year());return g.leapYear(e)},weekOfYear:function(r,S,e){var t=this._validate(r,this.minMonth,this.minDay,Z.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,S){var e=this._validate(A,S,this.minDay,Z.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,S,e){return(this.dayOfWeek(A,S,e)||7)<6},toJD:function(r,S,e){var t=this._validate(r,S,e,Z.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var S=g.fromJD(A),e=this._g2tYear(S.year());return this.newDate(e,S.month(),S.day())},_t2gYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)},_g2tYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)}}),Z.calendars.thai=x}}),yF=Le({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var Z=Jh(),H=Nf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new Z.baseCalendar,H(g.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(A){var S=this._validate(A,this.minMonth,this.minDay,Z.local.invalidYear);return this.daysInYear(S.year())===355},weekOfYear:function(A,S,e){var t=this.newDate(A,S,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){for(var S=0,e=1;e<=12;e++)S+=this.daysInMonth(A,e);return S},daysInMonth:function(A,S){for(var e=this._validate(A,S,this.minDay,Z.local.invalidMonth),t=e.toJD()-24e5+.5,r=0,o=0;ot)return x[r]-x[r-1];r++}return 30},weekDay:function(A,S,e){return this.dayOfWeek(A,S,e)!==5},toJD:function(A,S,e){var t=this._validate(A,S,e,Z.local.invalidDate),r=12*(t.year()-1)+t.month()-15292,o=t.day()+x[r-1]-1;return o+24e5-.5},fromJD:function(A){for(var S=A-24e5+.5,e=0,t=0;tS);t++)e++;var r=e+15292,o=Math.floor((r-1)/12),i=o+1,n=r-12*o,a=S-x[e-1]+1;return this.newDate(i,n,a)},isValid:function(A,S,e){var t=Z.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(A=A.year!=null?A.year:A,t=A>=1276&&A<=1500),t},_validate:function(A,S,e,t){var r=Z.baseCalendar.prototype._validate.apply(this,arguments);if(r.year<1276||r.year>1500)throw t.replace(/\{0\}/,this.local.name);return r}}),Z.calendars.ummalqura=g;var x=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]}}),_F=Le({"src/components/calendars/calendars.js"(Z,H){"use strict";H.exports=Jh(),nF(),aF(),oF(),sF(),lF(),uF(),cF(),fF(),hF(),dF(),vF(),pF(),mF(),gF(),yF()}}),xF=Le({"src/components/calendars/index.js"(Z,H){"use strict";var g=_F(),x=ni(),A=$n(),S=A.EPOCHJD,e=A.ONEDAY,t={valType:"enumerated",values:x.sortObjectKeys(g.calendars),editType:"calc",dflt:"gregorian"},r=function(m,b,v,u){var y={};return y[v]=t,x.coerce(m,b,y,v,u)},o=function(m,b,v,u){for(var y=0;y{rr.preventDefault(),rr.stopPropagation(),rr.clipboardData.setData("text",wt),At.removeEventListener("copy",Vt,!0)};At.addEventListener("copy",Vt,!0),document.execCommand("copy")}Ft.copyText=Ae})(SS||(SS={}));var wc;(function(Ft){function Ae(rr){let hi=window.getComputedStyle(rr),Xr=parseFloat(hi.borderTopWidth)||0,ai=parseFloat(hi.borderLeftWidth)||0,Ti=parseFloat(hi.borderRightWidth)||0,ei=parseFloat(hi.borderBottomWidth)||0,di=parseFloat(hi.paddingTop)||0,Ei=parseFloat(hi.paddingLeft)||0,pi=parseFloat(hi.paddingRight)||0,Jr=parseFloat(hi.paddingBottom)||0,Le=ai+Ei+pi+Ti,Qi=Xr+di+Jr+ei;return{borderTop:Xr,borderLeft:ai,borderRight:Ti,borderBottom:ei,paddingTop:di,paddingLeft:Ei,paddingRight:pi,paddingBottom:Jr,horizontalSum:Le,verticalSum:Qi}}Ft.boxSizing=Ae;function wt(rr){let hi=window.getComputedStyle(rr),Xr=parseFloat(hi.minWidth)||0,ai=parseFloat(hi.minHeight)||0,Ti=parseFloat(hi.maxWidth)||1/0,ei=parseFloat(hi.maxHeight)||1/0;return Ti=Math.max(Xr,Ti),ei=Math.max(ai,ei),{minWidth:Xr,minHeight:ai,maxWidth:Ti,maxHeight:ei}}Ft.sizeLimits=wt;function At(rr,hi,Xr){let ai=rr.getBoundingClientRect();return hi>=ai.left&&hi=ai.top&&Xr=Xr.bottom)){if(ai.topXr.bottom&&ai.height>=Xr.height){rr.scrollTop-=Xr.top-ai.top;return}if(ai.topXr.height){rr.scrollTop-=Xr.bottom-ai.bottom;return}if(ai.bottom>Xr.bottom&&ai.height{let ei=Element.prototype;return ei.matches||ei.matchesSelector||ei.mozMatchesSelector||ei.msMatchesSelector||ei.oMatchesSelector||ei.webkitMatchesSelector||function(di){let Ei=this,pi=Ei.ownerDocument?Ei.ownerDocument.querySelectorAll(di):[];return Array.prototype.indexOf.call(pi,Ei)!==-1}})();function Ae(ei){ei=ei.split(",",1)[0];let di=0,Ei=0,pi=0;function Jr(Le){let Qi=ei.match(Le);return Qi===null?!1:(ei=ei.slice(Qi[0].length),!0)}for(ei=ei.replace(Ti," $1 ");ei.length>0;){if(Jr(wt)){di++;continue}if(Jr(At)){Ei++;continue}if(Jr(Vt)){Ei++;continue}if(Jr(hi)){pi++;continue}if(Jr(Xr)){Ei++;continue}if(Jr(rr)){pi++;continue}if(!Jr(ai))return 0}return di=Math.min(di,255),Ei=Math.min(Ei,255),pi=Math.min(pi,255),di<<16|Ei<<8|pi}Ft.calculateSingle=Ae;let wt=/^#[^\s\+>~#\.\[:]+/,At=/^\.[^\s\+>~#\.\[:]+/,Vt=/^\[[^\]]+\]/,rr=/^[^\s\+>~#\.\[:]+/,hi=/^(::[^\s\+>~#\.\[:]+|:first-line|:first-letter|:before|:after)/,Xr=/^:[^\s\+>~#\.\[:]+/,ai=/^[\s\+>~\*]+/,Ti=/:not\(([^\)]+)\)/g})(sv||(sv={}));var ep=Jv(Lm());var Og=class{constructor(){this._first=null,this._last=null,this._size=0}get isEmpty(){return this._size===0}get size(){return this._size}get length(){return this._size}get first(){return this._first?this._first.value:void 0}get last(){return this._last?this._last.value:void 0}get firstNode(){return this._first}get lastNode(){return this._last}*[Symbol.iterator](){let Ae=this._first;for(;Ae;)yield Ae.value,Ae=Ae.next}*retro(){let Ae=this._last;for(;Ae;)yield Ae.value,Ae=Ae.prev}*nodes(){let Ae=this._first;for(;Ae;)yield Ae,Ae=Ae.next}*retroNodes(){let Ae=this._last;for(;Ae;)yield Ae,Ae=Ae.prev}assign(Ae){this.clear();for(let wt of Ae)this.addLast(wt)}push(Ae){this.addLast(Ae)}pop(){return this.removeLast()}shift(Ae){this.addFirst(Ae)}unshift(){return this.removeFirst()}addFirst(Ae){let wt=new Qv.LinkedListNode(this,Ae);return this._first?(wt.next=this._first,this._first.prev=wt,this._first=wt):(this._first=wt,this._last=wt),this._size++,wt}addLast(Ae){let wt=new Qv.LinkedListNode(this,Ae);return this._last?(wt.prev=this._last,this._last.next=wt,this._last=wt):(this._first=wt,this._last=wt),this._size++,wt}insertBefore(Ae,wt){if(!wt||wt===this._first)return this.addFirst(Ae);if(!(wt instanceof Qv.LinkedListNode)||wt.list!==this)throw new Error("Reference node is not owned by the list.");let At=new Qv.LinkedListNode(this,Ae),Vt=wt,rr=Vt.prev;return At.next=Vt,At.prev=rr,Vt.prev=At,rr.next=At,this._size++,At}insertAfter(Ae,wt){if(!wt||wt===this._last)return this.addLast(Ae);if(!(wt instanceof Qv.LinkedListNode)||wt.list!==this)throw new Error("Reference node is not owned by the list.");let At=new Qv.LinkedListNode(this,Ae),Vt=wt,rr=Vt.next;return At.next=rr,At.prev=Vt,Vt.next=At,rr.prev=At,this._size++,At}removeFirst(){let Ae=this._first;if(Ae)return Ae===this._last?(this._first=null,this._last=null):(this._first=Ae.next,this._first.prev=null),Ae.list=null,Ae.next=null,Ae.prev=null,this._size--,Ae.value}removeLast(){let Ae=this._last;if(Ae)return Ae===this._first?(this._first=null,this._last=null):(this._last=Ae.prev,this._last.next=null),Ae.list=null,Ae.next=null,Ae.prev=null,this._size--,Ae.value}removeNode(Ae){if(!(Ae instanceof Qv.LinkedListNode)||Ae.list!==this)throw new Error("Node is not owned by the list.");let wt=Ae;wt===this._first&&wt===this._last?(this._first=null,this._last=null):wt===this._first?(this._first=wt.next,this._first.prev=null):wt===this._last?(this._last=wt.prev,this._last.next=null):(wt.next.prev=wt.prev,wt.prev.next=wt.next),wt.list=null,wt.next=null,wt.prev=null,this._size--}clear(){let Ae=this._first;for(;Ae;){let wt=Ae.next;Ae.list=null,Ae.prev=null,Ae.next=null,Ae=wt}this._first=null,this._last=null,this._size=0}};(function(Ft){function Ae(wt){let At=new Ft;return At.assign(wt),At}Ft.from=Ae})(Og||(Og={}));var Qv;(function(Ft){class Ae{constructor(At,Vt){this.list=null,this.next=null,this.prev=null,this.list=At,this.value=Vt}}Ft.LinkedListNode=Ae})(Qv||(Qv={}));var yd=class{constructor(Ae){this.type=Ae}get isConflatable(){return!1}conflate(Ae){return!1}},Fp=class extends yd{get isConflatable(){return!0}conflate(Ae){return!0}},Eo;(function(Ft){let Ae=null,wt=(Ia=>To=>{let Xn=!1;return Ia.then(()=>!Xn&&To()),()=>{Xn=!0}})(Promise.resolve());function At(Ia,To){let Xn=Ei.get(Ia);if(!Xn||Xn.length===0){En(Ia,To);return}(0,ep.every)((0,ep.retro)(Xn),$n=>$n?Qi($n,Ia,To):!0)&&En(Ia,To)}Ft.sendMessage=At;function Vt(Ia,To){if(!To.isConflatable){wn(Ia,To);return}(0,ep.some)(di,zn=>zn.handler!==Ia||!zn.msg||zn.msg.type!==To.type||!zn.msg.isConflatable?!1:zn.msg.conflate(To))||wn(Ia,To)}Ft.postMessage=Vt;function rr(Ia,To){let Xn=Ei.get(Ia);Xn&&Xn.indexOf(To)!==-1||(Xn?Xn.push(To):Ei.set(Ia,[To]))}Ft.installMessageHook=rr;function hi(Ia,To){let Xn=Ei.get(Ia);if(!Xn)return;let zn=Xn.indexOf(To);zn!==-1&&(Xn[zn]=null,gn(Xn))}Ft.removeMessageHook=hi;function Xr(Ia){let To=Ei.get(Ia);To&&To.length>0&&(ep.ArrayExt.fill(To,null),gn(To));for(let Xn of di)Xn.handler===Ia&&(Xn.handler=null,Xn.msg=null)}Ft.clearData=Xr;function ai(){Le||Ae===null||(Ae(),Ae=null,Le=!0,Wi(),Le=!1)}Ft.flush=ai;function Ti(){return Jr}Ft.getExceptionHandler=Ti;function ei(Ia){let To=Jr;return Jr=Ia,To}Ft.setExceptionHandler=ei;let di=new Og,Ei=new WeakMap,pi=new Set,Jr=Ia=>{console.error(Ia)},Le=!1;function Qi(Ia,To,Xn){let zn=!0;try{typeof Ia=="function"?zn=Ia(To,Xn):zn=Ia.messageHook(To,Xn)}catch($n){Jr($n)}return zn}function En(Ia,To){try{Ia.processMessage(To)}catch(Xn){Jr(Xn)}}function wn(Ia,To){di.addLast({handler:Ia,msg:To}),Ae===null&&(Ae=wt(Wi))}function Wi(){if(Ae=null,di.isEmpty)return;let Ia={handler:null,msg:null};for(di.addLast(Ia);;){let To=di.removeFirst();if(To===Ia)return;To.handler&&To.msg&&At(To.handler,To.msg)}}function gn(Ia){pi.size===0&&wt(Sn),pi.add(Ia)}function Sn(){pi.forEach(Ji),pi.clear()}function Ji(Ia){ep.ArrayExt.removeAllWhere(Ia,za)}function za(Ia){return Ia===null}})(Eo||(Eo={}));var _d=class{constructor(Ae){this._pid=Pm.nextPID(),this.name=Ae.name,this._create=Ae.create,this._coerce=Ae.coerce||null,this._compare=Ae.compare||null,this._changed=Ae.changed||null}get(Ae){let wt,At=Pm.ensureMap(Ae);return this._pid in At?wt=At[this._pid]:wt=At[this._pid]=this._createValue(Ae),wt}set(Ae,wt){let At,Vt=Pm.ensureMap(Ae);this._pid in Vt?At=Vt[this._pid]:At=Vt[this._pid]=this._createValue(Ae);let rr=this._coerceValue(Ae,wt);this._maybeNotify(Ae,At,Vt[this._pid]=rr)}coerce(Ae){let wt,At=Pm.ensureMap(Ae);this._pid in At?wt=At[this._pid]:wt=At[this._pid]=this._createValue(Ae);let Vt=this._coerceValue(Ae,wt);this._maybeNotify(Ae,wt,At[this._pid]=Vt)}_createValue(Ae){let wt=this._create;return wt(Ae)}_coerceValue(Ae,wt){let At=this._coerce;return At?At(Ae,wt):wt}_compareValue(Ae,wt){let At=this._compare;return At?At(Ae,wt):Ae===wt}_maybeNotify(Ae,wt,At){let Vt=this._changed;Vt&&!this._compareValue(wt,At)&&Vt(Ae,wt,At)}};(function(Ft){function Ae(wt){Pm.ownerData.delete(wt)}Ft.clearData=Ae})(_d||(_d={}));var Pm;(function(Ft){Ft.ownerData=new WeakMap,Ft.nextPID=(()=>{let wt=0;return()=>`pid-${`${Math.random()}`.slice(2)}-${wt++}`})();function Ae(wt){let At=Ft.ownerData.get(wt);return At||(At=Object.create(null),Ft.ownerData.set(wt,At),At)}Ft.ensureMap=Ae})(Pm||(Pm={}));var i_=Jv(Lm()),vB=Jv(r_()),lc=class{constructor(Ae){this.sender=Ae}connect(Ae,wt){return zd.connect(this,Ae,wt)}disconnect(Ae,wt){return zd.disconnect(this,Ae,wt)}emit(Ae){zd.emit(this,Ae)}};(function(Ft){function Ae(ai,Ti){zd.disconnectBetween(ai,Ti)}Ft.disconnectBetween=Ae;function wt(ai){zd.disconnectSender(ai)}Ft.disconnectSender=wt;function At(ai){zd.disconnectReceiver(ai)}Ft.disconnectReceiver=At;function Vt(ai){zd.disconnectAll(ai)}Ft.disconnectAll=Vt;function rr(ai){zd.disconnectAll(ai)}Ft.clearData=rr;function hi(){return zd.exceptionHandler}Ft.getExceptionHandler=hi;function Xr(ai){let Ti=zd.exceptionHandler;return zd.exceptionHandler=ai,Ti}Ft.setExceptionHandler=Xr})(lc||(lc={}));var zd;(function(Ft){Ft.exceptionHandler=wn=>{console.error(wn)};function Ae(wn,Wi,gn){gn=gn||void 0;let Sn=ai.get(wn.sender);if(Sn||(Sn=[],ai.set(wn.sender,Sn)),Ei(Sn,wn,Wi,gn))return!1;let Ji=gn||Wi,za=Ti.get(Ji);za||(za=[],Ti.set(Ji,za));let Ia={signal:wn,slot:Wi,thisArg:gn};return Sn.push(Ia),za.push(Ia),!0}Ft.connect=Ae;function wt(wn,Wi,gn){gn=gn||void 0;let Sn=ai.get(wn.sender);if(!Sn||Sn.length===0)return!1;let Ji=Ei(Sn,wn,Wi,gn);if(!Ji)return!1;let za=gn||Wi,Ia=Ti.get(za);return Ji.signal=null,Jr(Sn),Jr(Ia),!0}Ft.disconnect=wt;function At(wn,Wi){let gn=ai.get(wn);if(!gn||gn.length===0)return;let Sn=Ti.get(Wi);if(!(!Sn||Sn.length===0)){for(let Ji of Sn)Ji.signal&&Ji.signal.sender===wn&&(Ji.signal=null);Jr(gn),Jr(Sn)}}Ft.disconnectBetween=At;function Vt(wn){let Wi=ai.get(wn);if(!(!Wi||Wi.length===0)){for(let gn of Wi){if(!gn.signal)continue;let Sn=gn.thisArg||gn.slot;gn.signal=null,Jr(Ti.get(Sn))}Jr(Wi)}}Ft.disconnectSender=Vt;function rr(wn){let Wi=Ti.get(wn);if(!(!Wi||Wi.length===0)){for(let gn of Wi){if(!gn.signal)continue;let Sn=gn.signal.sender;gn.signal=null,Jr(ai.get(Sn))}Jr(Wi)}}Ft.disconnectReceiver=rr;function hi(wn){Vt(wn),rr(wn)}Ft.disconnectAll=hi;function Xr(wn,Wi){let gn=ai.get(wn.sender);if(!(!gn||gn.length===0))for(let Sn=0,Ji=gn.length;SnJi.signal===Wi&&Ji.slot===gn&&Ji.thisArg===Sn)}function pi(wn,Wi){let{signal:gn,slot:Sn,thisArg:Ji}=wn;try{Sn.call(Ji,gn.sender,Wi)}catch(za){Ft.exceptionHandler(za)}}function Jr(wn){ei.size===0&&di(Le),ei.add(wn)}function Le(){ei.forEach(Qi),ei.clear()}function Qi(wn){i_.ArrayExt.removeAllWhere(wn,En)}function En(wn){return wn.signal===null}})(zd||(zd={}));var Bp=class{constructor(Ae){this._fn=Ae}get isDisposed(){return!this._fn}dispose(){if(!this._fn)return;let Ae=this._fn;this._fn=null,Ae()}};var Y0=class{constructor(){this._isDisposed=!1,this._items=new Set}get isDisposed(){return this._isDisposed}dispose(){this._isDisposed||(this._isDisposed=!0,this._items.forEach(Ae=>{Ae.dispose()}),this._items.clear())}contains(Ae){return this._items.has(Ae)}add(Ae){this._items.add(Ae)}remove(Ae){this._items.delete(Ae)}clear(){this._items.clear()}};(function(Ft){function Ae(wt){let At=new Ft;for(let Vt of wt)At.add(Vt);return At}Ft.from=Ae})(Y0||(Y0={}));var n_=class extends Y0{constructor(){super(...arguments),this._disposed=new lc(this)}get disposed(){return this._disposed}dispose(){this.isDisposed||(super.dispose(),this._disposed.emit(void 0),lc.clearData(this))}};(function(Ft){function Ae(wt){let At=new Ft;for(let Vt of wt)At.add(Vt);return At}Ft.from=Ae})(n_||(n_={}));var xd=class Ft{constructor(Ae){this._onScrollFrame=()=>{if(!this._scrollTarget)return;let{element:wt,edge:At,distance:Vt}=this._scrollTarget,rr=ld.SCROLL_EDGE_SIZE-Vt,hi=Math.pow(rr/ld.SCROLL_EDGE_SIZE,2),Xr=Math.max(1,Math.round(hi*ld.SCROLL_EDGE_SIZE));switch(At){case"top":wt.scrollTop-=Xr;break;case"left":wt.scrollLeft-=Xr;break;case"right":wt.scrollLeft+=Xr;break;case"bottom":wt.scrollTop+=Xr;break}requestAnimationFrame(this._onScrollFrame)},this._disposed=!1,this._dropAction="none",this._override=null,this._currentTarget=null,this._currentElement=null,this._promise=null,this._scrollTarget=null,this._resolve=null,this.document=Ae.document||document,this.mimeData=Ae.mimeData,this.dragImage=Ae.dragImage||null,this.proposedAction=Ae.proposedAction||"copy",this.supportedActions=Ae.supportedActions||"all",this.source=Ae.source||null}dispose(){if(!this._disposed){if(this._disposed=!0,this._currentTarget){let Ae=new PointerEvent("pointerup",{bubbles:!0,cancelable:!0,clientX:-1,clientY:-1});ld.dispatchDragLeave(this,this._currentTarget,null,Ae)}this._finalize("none")}}get isDisposed(){return this._disposed}start(Ae,wt){if(this._disposed)return Promise.resolve("none");if(this._promise)return this._promise;this._addListeners(),this._attachDragImage(Ae,wt),this._promise=new Promise(Vt=>{this._resolve=Vt});let At=new PointerEvent("pointermove",{bubbles:!0,cancelable:!0,clientX:Ae,clientY:wt});return document.dispatchEvent(At),this._promise}handleEvent(Ae){switch(Ae.type){case"pointermove":this._evtPointerMove(Ae);break;case"pointerup":this._evtPointerUp(Ae);break;case"keydown":this._evtKeyDown(Ae);break;default:Ae.preventDefault(),Ae.stopPropagation();break}}moveDragImage(Ae,wt){if(!this.dragImage)return;let At=this.dragImage.style;At.transform=`translate(${Ae}px, ${wt}px)`}_evtPointerMove(Ae){Ae.preventDefault(),Ae.stopPropagation(),this._updateCurrentTarget(Ae),this._updateDragScroll(Ae),this.moveDragImage(Ae.clientX,Ae.clientY)}_evtPointerUp(Ae){if(Ae.preventDefault(),Ae.stopPropagation(),Ae.button!==0)return;if(this._updateCurrentTarget(Ae),!this._currentTarget){this._finalize("none");return}if(this._dropAction==="none"){ld.dispatchDragLeave(this,this._currentTarget,null,Ae),this._finalize("none");return}let wt=ld.dispatchDrop(this,this._currentTarget,Ae);this._finalize(wt)}_evtKeyDown(Ae){Ae.preventDefault(),Ae.stopPropagation(),Ae.keyCode===27&&this.dispose()}_addListeners(){document.addEventListener("pointerdown",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("pointerup",this,!0),document.addEventListener("pointerenter",this,!0),document.addEventListener("pointerleave",this,!0),document.addEventListener("pointerover",this,!0),document.addEventListener("pointerout",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("keyup",this,!0),document.addEventListener("keypress",this,!0),document.addEventListener("contextmenu",this,!0)}_removeListeners(){document.removeEventListener("pointerdown",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointerenter",this,!0),document.removeEventListener("pointerleave",this,!0),document.removeEventListener("pointerover",this,!0),document.removeEventListener("pointerout",this,!0),document.removeEventListener("keydown",this,!0),document.removeEventListener("keyup",this,!0),document.removeEventListener("keypress",this,!0),document.removeEventListener("contextmenu",this,!0)}_updateDragScroll(Ae){let wt=ld.findScrollTarget(Ae);!this._scrollTarget&&!wt||(this._scrollTarget||setTimeout(this._onScrollFrame,500),this._scrollTarget=wt)}_updateCurrentTarget(Ae){let wt=this._currentTarget,At=this._currentTarget,Vt=this._currentElement,rr=ld.findElementBehindBackdrop(Ae,this.document);this._currentElement=rr,rr!==Vt&&rr!==At&&ld.dispatchDragExit(this,At,rr,Ae),rr!==Vt&&rr!==At&&(At=ld.dispatchDragEnter(this,rr,At,Ae)),At!==wt&&(this._currentTarget=At,ld.dispatchDragLeave(this,wt,At,Ae));let hi=ld.dispatchDragOver(this,At,Ae);this._setDropAction(hi)}_attachDragImage(Ae,wt){if(!this.dragImage)return;this.dragImage.classList.add("lm-mod-drag-image");let At=this.dragImage.style;At.pointerEvents="none",At.position="fixed",At.transform=`translate(${Ae}px, ${wt}px)`,(this.document instanceof Document?this.document.body:this.document.firstElementChild).appendChild(this.dragImage)}_detachDragImage(){if(!this.dragImage)return;let Ae=this.dragImage.parentNode;Ae&&Ae.removeChild(this.dragImage)}_setDropAction(Ae){if(Ae=ld.validateAction(Ae,this.supportedActions),!(this._override&&this._dropAction===Ae))switch(Ae){case"none":this._dropAction=Ae,this._override=Ft.overrideCursor("no-drop",this.document);break;case"copy":this._dropAction=Ae,this._override=Ft.overrideCursor("copy",this.document);break;case"link":this._dropAction=Ae,this._override=Ft.overrideCursor("alias",this.document);break;case"move":this._dropAction=Ae,this._override=Ft.overrideCursor("move",this.document);break}}_finalize(Ae){let wt=this._resolve;this._removeListeners(),this._detachDragImage(),this._override&&(this._override.dispose(),this._override=null),this.mimeData.clear(),this._disposed=!0,this._dropAction="none",this._currentTarget=null,this._currentElement=null,this._scrollTarget=null,this._promise=null,this._resolve=null,wt&&wt(Ae)}};(function(Ft){class Ae extends DragEvent{constructor(Vt,rr){super(rr.type,{bubbles:!0,cancelable:!0,altKey:Vt.altKey,button:Vt.button,clientX:Vt.clientX,clientY:Vt.clientY,ctrlKey:Vt.ctrlKey,detail:0,metaKey:Vt.metaKey,relatedTarget:rr.related,screenX:Vt.screenX,screenY:Vt.screenY,shiftKey:Vt.shiftKey,view:window});let{drag:hi}=rr;this.dropAction="none",this.mimeData=hi.mimeData,this.proposedAction=hi.proposedAction,this.supportedActions=hi.supportedActions,this.source=hi.source}}Ft.Event=Ae;function wt(At,Vt=document){return ld.overrideCursor(At,Vt)}Ft.overrideCursor=wt})(xd||(xd={}));var ld;(function(Ft){Ft.SCROLL_EDGE_SIZE=20;function Ae(gn,Sn){return di[gn]&Ei[Sn]?gn:"none"}Ft.validateAction=Ae;function wt(gn,Sn=document){if(gn){if(At&&gn==At.event)return At.element;Ft.cursorBackdrop.style.zIndex="-1000";let Ji=Sn.elementFromPoint(gn.clientX,gn.clientY);return Ft.cursorBackdrop.style.zIndex="",At={event:gn,element:Ji},Ji}else{let Ji=Ft.cursorBackdrop.style.transform;if(Vt&&Ji===Vt.transform)return Vt.element;let za=Ft.cursorBackdrop.getBoundingClientRect();Ft.cursorBackdrop.style.zIndex="-1000";let Ia=Sn.elementFromPoint(za.left+za.width/2,za.top+za.height/2);return Ft.cursorBackdrop.style.zIndex="",Vt={transform:Ji,element:Ia},Ia}}Ft.findElementBehindBackdrop=wt;let At=null,Vt=null;function rr(gn){let Sn=gn.clientX,Ji=gn.clientY,za=wt(gn);for(;za;za=za.parentElement){if(!za.hasAttribute("data-lm-dragscroll"))continue;let Ia=0,To=0;za===document.body&&(Ia=window.pageXOffset,To=window.pageYOffset);let Xn=za.getBoundingClientRect(),zn=Xn.top+To,$n=Xn.left+Ia,Ao=$n+Xn.width,$s=zn+Xn.height;if(Sn<$n||Sn>=Ao||Ji=$s)continue;let cl=Sn-$n+1,jl=Ji-zn+1,lu=Ao-Sn,uf=$s-Ji,ju=Math.min(cl,jl,lu,uf);if(ju>Ft.SCROLL_EDGE_SIZE)continue;let Tc;switch(ju){case uf:Tc="bottom";break;case jl:Tc="top";break;case lu:Tc="right";break;case cl:Tc="left";break;default:throw"unreachable"}let Vu=za.scrollWidth-za.clientWidth,Vl=za.scrollHeight-za.clientHeight,ho;switch(Tc){case"top":ho=Vl>0&&za.scrollTop>0;break;case"left":ho=Vu>0&&za.scrollLeft>0;break;case"right":ho=Vu>0&&za.scrollLeft0&&za.scrollTop{Ji===Wi&&Ft.cursorBackdrop.isConnected&&(document.removeEventListener("pointermove",Jr,!0),Ft.cursorBackdrop.removeEventListener("scroll",Le,!0),za.removeChild(Ft.cursorBackdrop))})}Ft.overrideCursor=pi;function Jr(gn){Ft.cursorBackdrop&&(Ft.cursorBackdrop.style.transform=`translate(${gn.clientX}px, ${gn.clientY}px)`)}function Le(gn){if(!Ft.cursorBackdrop)return;let Sn=wt();if(!Sn)return;let Ji=Sn.closest("[data-lm-dragscroll]");Ji&&(Ji.scrollTop+=Ft.cursorBackdrop.scrollTop-En,Ji.scrollLeft+=Ft.cursorBackdrop.scrollLeft-En,Qi())}function Qi(){Ft.cursorBackdrop.scrollTop=En,Ft.cursorBackdrop.scrollLeft=En}let En=500;function wn(){let gn=document.createElement("div");return gn.classList.add("lm-cursor-backdrop"),gn}let Wi=0;Ft.cursorBackdrop=wn()})(ld||(ld={}));var ES=Jv(Lm()),Yh=Jv(r_());function Ng(){return Aw.keyboardLayout}var K0=class Ft{constructor(Ae,wt,At=[]){this.name=Ae,this._codes=wt,this._keys=Ft.extractKeys(wt),this._modifierKeys=Ft.convertToKeySet(At)}keys(){return Object.keys(this._keys)}isValidKey(Ae){return Ae in this._keys}isModifierKey(Ae){return Ae in this._modifierKeys}keyForKeydownEvent(Ae){return this._codes[Ae.keyCode]||""}};(function(Ft){function Ae(At){let Vt=Object.create(null);for(let rr in At)Vt[At[rr]]=!0;return Vt}Ft.extractKeys=Ae;function wt(At){let Vt=Object(null);for(let rr=0,hi=At.length;rr{this._commands.delete(Ae),this._commandChanged.emit({id:Ae,type:"removed"})})}notifyCommandChanged(Ae){if(Ae!==void 0&&!this._commands.has(Ae))throw new Error(`Command '${Ae}' is not registered.`);this._commandChanged.emit({id:Ae,type:Ae?"changed":"many-changed"})}describedBy(Ae,wt=Yh.JSONExt.emptyObject){var At;let Vt=this._commands.get(Ae);return Promise.resolve((At=Vt?.describedBy.call(void 0,wt))!==null&&At!==void 0?At:{args:null})}label(Ae,wt=Yh.JSONExt.emptyObject){var At;let Vt=this._commands.get(Ae);return(At=Vt?.label.call(void 0,wt))!==null&&At!==void 0?At:""}mnemonic(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.mnemonic.call(void 0,wt):-1}icon(Ae,wt=Yh.JSONExt.emptyObject){var At;return(At=this._commands.get(Ae))===null||At===void 0?void 0:At.icon.call(void 0,wt)}iconClass(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.iconClass.call(void 0,wt):""}iconLabel(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.iconLabel.call(void 0,wt):""}caption(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.caption.call(void 0,wt):""}usage(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.usage.call(void 0,wt):""}className(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.className.call(void 0,wt):""}dataset(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.dataset.call(void 0,wt):{}}isEnabled(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.isEnabled.call(void 0,wt):!1}isToggled(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.isToggled.call(void 0,wt):!1}isToggleable(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.isToggleable:!1}isVisible(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);return At?At.isVisible.call(void 0,wt):!1}execute(Ae,wt=Yh.JSONExt.emptyObject){let At=this._commands.get(Ae);if(!At)return Promise.reject(new Error(`Command '${Ae}' not registered.`));let Vt;try{Vt=At.execute.call(void 0,wt)}catch(hi){Vt=Promise.reject(hi)}let rr=Promise.resolve(Vt);return this._commandExecuted.emit({id:Ae,args:wt,result:rr}),rr}addKeyBinding(Ae){let wt=uv.createKeyBinding(Ae);return this._keyBindings.push(wt),this._keyBindingChanged.emit({binding:wt,type:"added"}),new Bp(()=>{ES.ArrayExt.removeFirstOf(this._keyBindings,wt),this._keyBindingChanged.emit({binding:wt,type:"removed"})})}processKeydownEvent(Ae){if(Ae.defaultPrevented||this._replaying)return;let wt=Ft.keystrokeForKeydownEvent(Ae);if(!wt){this._replayKeydownEvents(),this._clearPendingState();return}if(Ft.isModifierKeyPressed(Ae)){let{exact:hi}=uv.matchKeyBinding(this._keyBindings,[wt],Ae);hi?(Ae.preventDefault(),Ae.stopPropagation(),this._startModifierTimer(hi)):this._clearModifierTimer();return}this._keystrokes.push(wt);let{exact:At,partial:Vt}=uv.matchKeyBinding(this._keyBindings,this._keystrokes,Ae),rr=Vt.length!==0;if(!At&&!rr){this._replayKeydownEvents(),this._clearPendingState();return}if((At?.preventDefault||Vt.some(hi=>hi.preventDefault))&&(Ae.preventDefault(),Ae.stopPropagation()),this._keydownEvents.push(Ae),At&&!rr){this._executeKeyBinding(At),this._clearPendingState();return}At&&(this._exactKeyMatch=At),this._startTimer()}holdKeyBindingExecution(Ae,wt){this._holdKeyBindingPromises.set(Ae,wt)}processKeyupEvent(Ae){this._clearModifierTimer()}_startModifierTimer(Ae){this._clearModifierTimer(),this._timerModifierID=window.setTimeout(()=>{this._executeKeyBinding(Ae)},uv.modifierkeyTimeOut)}_clearModifierTimer(){this._timerModifierID!==0&&(clearTimeout(this._timerModifierID),this._timerModifierID=0)}_startTimer(){this._clearTimer(),this._timerID=window.setTimeout(()=>{this._onPendingTimeout()},uv.CHORD_TIMEOUT)}_clearTimer(){this._timerID!==0&&(clearTimeout(this._timerID),this._timerID=0)}_replayKeydownEvents(){this._keydownEvents.length!==0&&(this._replaying=!0,this._keydownEvents.forEach(uv.replayKeyEvent),this._replaying=!1)}async _executeKeyBinding(Ae){if(this._holdKeyBindingPromises.size!==0){let rr=[...this._keydownEvents],hi=(await Promise.race([Promise.all(rr.map(async Xr=>{var ai;return(ai=this._holdKeyBindingPromises.get(Xr))!==null&&ai!==void 0?ai:Promise.resolve(!0)})),new Promise(Xr=>{setTimeout(()=>Xr([!1]),uv.KEYBINDING_HOLD_TIMEOUT)})])).every(Boolean);if(this._holdKeyBindingPromises.clear(),!hi)return}let{command:wt,args:At}=Ae,Vt={_luminoEvent:{type:"keybinding",keys:Ae.keys},...At};if(!this.hasCommand(wt)||!this.isEnabled(wt,Vt)){let rr=this.hasCommand(wt)?"enabled":"registered",Xr=`Cannot execute key binding '${Ae.keys.join(", ")}':`,ai=`command '${wt}' is not ${rr}.`;console.warn(`${Xr} ${ai}`);return}await this.execute(wt,Vt)}_clearPendingState(){this._clearTimer(),this._clearModifierTimer(),this._exactKeyMatch=null,this._keystrokes.length=0,this._keydownEvents.length=0}_onPendingTimeout(){this._timerID=0,this._exactKeyMatch?this._executeKeyBinding(this._exactKeyMatch):this._replayKeydownEvents(),this._clearPendingState()}};(function(Ft){function Ae(Xr){let ai="",Ti=!1,ei=!1,di=!1,Ei=!1;for(let pi of Xr.split(/\s+/))pi==="Accel"?sd.IS_MAC?ei=!0:di=!0:pi==="Alt"?Ti=!0:pi==="Cmd"?ei=!0:pi==="Ctrl"?di=!0:pi==="Shift"?Ei=!0:pi.length>0&&(ai=pi);return{cmd:ei,ctrl:di,alt:Ti,shift:Ei,key:ai}}Ft.parseKeystroke=Ae;function wt(Xr){let ai="",Ti=Ae(Xr);return Ti.ctrl&&(ai+="Ctrl "),Ti.alt&&(ai+="Alt "),Ti.shift&&(ai+="Shift "),Ti.cmd&&sd.IS_MAC&&(ai+="Cmd "),Ti.key?ai+Ti.key:ai.trim()}Ft.normalizeKeystroke=wt;function At(Xr){let ai;return sd.IS_WIN?ai=Xr.winKeys||Xr.keys:sd.IS_MAC?ai=Xr.macKeys||Xr.keys:ai=Xr.linuxKeys||Xr.keys,ai.map(wt)}Ft.normalizeKeys=At;function Vt(Xr){return typeof Xr=="string"?ai(Xr):Xr.map(ai).join(", ");function ai(Ti){let ei=[],di=sd.IS_MAC?" ":"+",Ei=Ae(Ti);return Ei.ctrl&&ei.push("Ctrl"),Ei.alt&&ei.push("Alt"),Ei.shift&&ei.push("Shift"),sd.IS_MAC&&Ei.cmd&&ei.push("Cmd"),ei.push(Ei.key),ei.map(uv.formatKey).join(di)}}Ft.formatKeystroke=Vt;function rr(Xr){let ai=Ng(),Ti=ai.keyForKeydownEvent(Xr);return ai.isModifierKey(Ti)}Ft.isModifierKeyPressed=rr;function hi(Xr){let ai=Ng(),Ti=ai.keyForKeydownEvent(Xr),ei=[];return Xr.ctrlKey&&ei.push("Ctrl"),Xr.altKey&&ei.push("Alt"),Xr.shiftKey&&ei.push("Shift"),Xr.metaKey&&sd.IS_MAC&&ei.push("Cmd"),ai.isModifierKey(Ti)||ei.push(Ti),ei.join(" ")}Ft.keystrokeForKeydownEvent=hi})(tp||(tp={}));var uv;(function(Ft){Ft.CHORD_TIMEOUT=1e3,Ft.KEYBINDING_HOLD_TIMEOUT=1e3,Ft.modifierkeyTimeOut=500;function Ae(Wi){return{execute:Wi.execute,describedBy:Jr(typeof Wi.describedBy=="function"?Wi.describedBy:{args:null,...Wi.describedBy},()=>({args:null})),label:Jr(Wi.label,ai),mnemonic:Jr(Wi.mnemonic,Ti),icon:Jr(Wi.icon,pi),iconClass:Jr(Wi.iconClass,ai),iconLabel:Jr(Wi.iconLabel,ai),caption:Jr(Wi.caption,ai),usage:Jr(Wi.usage,ai),className:Jr(Wi.className,ai),dataset:Jr(Wi.dataset,Ei),isEnabled:Wi.isEnabled||ei,isToggled:Wi.isToggled||di,isToggleable:Wi.isToggleable||!!Wi.isToggled,isVisible:Wi.isVisible||ei}}Ft.createCommand=Ae;function wt(Wi){var gn;return{keys:tp.normalizeKeys(Wi),selector:Le(Wi),command:Wi.command,args:Wi.args||Yh.JSONExt.emptyObject,preventDefault:(gn=Wi.preventDefault)!==null&&gn!==void 0?gn:!0}}Ft.createKeyBinding=wt;function At(Wi,gn,Sn){let Ji=null,za=[],Ia=1/0,To=0;for(let Xn=0,zn=Wi.length;XnIa)continue;let cl=lv.calculateSpecificity($n.selector);(!Ji||$s=To)&&(Ji=$n,Ia=$s,To=cl)}return{exact:Ji,partial:za}}Ft.matchKeyBinding=At;function Vt(Wi){Wi.target.dispatchEvent(wn(Wi))}Ft.replayKeyEvent=Vt;function rr(Wi){return sd.IS_MAC?hi.hasOwnProperty(Wi)?hi[Wi]:Wi:Xr.hasOwnProperty(Wi)?Xr[Wi]:Wi}Ft.formatKey=rr;let hi={Backspace:"\u232B",Tab:"\u21E5",Enter:"\u23CE",Shift:"\u21E7",Ctrl:"\u2303",Alt:"\u2325",Escape:"\u238B",PageUp:"\u21DE",PageDown:"\u21DF",End:"\u2198",Home:"\u2196",ArrowLeft:"\u2190",ArrowUp:"\u2191",ArrowRight:"\u2192",ArrowDown:"\u2193",Delete:"\u2326",Cmd:"\u2318"},Xr={Escape:"Esc",PageUp:"Page Up",PageDown:"Page Down",ArrowLeft:"Left",ArrowUp:"Up",ArrowRight:"Right",ArrowDown:"Down",Delete:"Del"},ai=()=>"",Ti=()=>-1,ei=()=>!0,di=()=>!1,Ei=()=>({}),pi=()=>{};function Jr(Wi,gn){return Wi===void 0?gn:typeof Wi=="function"?Wi:()=>Wi}function Le(Wi){if(Wi.selector.indexOf(",")!==-1)throw new Error(`Selector cannot contain commas: ${Wi.selector}`);if(!lv.isValid(Wi.selector))throw new Error(`Invalid selector: ${Wi.selector}`);return Wi.selector}function Qi(Wi,gn){if(Wi.lengthgn.length?2:1}function En(Wi,gn){let Sn=gn.target,Ji=gn.currentTarget;for(let za=0;Sn!==null;Sn=Sn.parentElement,++za){if(Sn.hasAttribute("data-lm-suppress-shortcuts"))return-1;if(lv.matches(Sn,Wi))return za;if(Sn===Ji)return-1}return-1}function wn(Wi){let gn=document.createEvent("Event"),Sn=Wi.bubbles||!0,Ji=Wi.cancelable||!0;return gn.initEvent(Wi.type||"keydown",Sn,Ji),gn.key=Wi.key||"",gn.keyCode=Wi.keyCode||0,gn.which=Wi.keyCode||0,gn.ctrlKey=Wi.ctrlKey||!1,gn.altKey=Wi.altKey||!1,gn.shiftKey=Wi.shiftKey||!1,gn.metaKey=Wi.metaKey||!1,gn.view=Wi.view||window,gn}})(uv||(uv={}));var Ug=Jv(Lm()),jg=class{constructor(Ae){this.type="text",this.content=Ae}},$0=class{constructor(Ae,wt,At,Vt){this.type="element",this.tag=Ae,this.attrs=wt,this.children=At,this.renderer=Vt}};function uc(Ft){let Ae={},wt,At=[];for(let rr=1,hi=arguments.length;rr=En.length){wt(Le[gn],pi);continue}let Sn=En[gn],Ji=Le[gn];if(Sn===Ji){wn=wn.nextSibling;continue}if(Sn.type==="text"&&Ji.type==="text"){wn.textContent!==Ji.content&&(wn.textContent=Ji.content),wn=wn.nextSibling;continue}if(Sn.type==="text"||Ji.type==="text"){Ug.ArrayExt.insert(En,gn,Ji),wt(Ji,pi,wn);continue}if(!Sn.renderer!=!Ji.renderer){Ug.ArrayExt.insert(En,gn,Ji),wt(Ji,pi,wn);continue}let za=Ji.attrs.key;if(za&&za in Qi){let To=Qi[za];To.vNode!==Sn&&(Ug.ArrayExt.move(En,En.indexOf(To.vNode,gn+1),gn),pi.insertBefore(To.element,wn),Sn=To.vNode,wn=To.element)}if(Sn===Ji){wn=wn.nextSibling;continue}let Ia=Sn.attrs.key;if(Ia&&Ia!==za){Ug.ArrayExt.insert(En,gn,Ji),wt(Ji,pi,wn);continue}if(Sn.tag!==Ji.tag){Ug.ArrayExt.insert(En,gn,Ji),wt(Ji,pi,wn);continue}Xr(wn,Sn.attrs,Ji.attrs),Ji.renderer?Ji.renderer.render(wn,{attrs:Ji.attrs,children:Ji.children}):At(wn,Sn.children,Ji.children),wn=wn.nextSibling}Vt(pi,En,Wi,!0)}Ft.updateContent=At;function Vt(pi,Jr,Le,Qi){for(let En=Jr.length-1;En>=Le;--En){let wn=Jr[En],Wi=Qi?pi.lastChild:pi.childNodes[En];wn.type==="text"||(wn.renderer&&wn.renderer.unrender?wn.renderer.unrender(Wi,{attrs:wn.attrs,children:wn.children}):Vt(Wi,wn.children,0,!1)),Qi&&pi.removeChild(Wi)}}let rr={key:!0,className:!0,htmlFor:!0,dataset:!0,style:!0};function hi(pi,Jr){for(let Le in Jr)Le in rr||(Le.substr(0,2)==="on"?pi[Le]=Jr[Le]:pi.setAttribute(Le,Jr[Le]));Jr.className!==void 0&&pi.setAttribute("class",Jr.className),Jr.htmlFor!==void 0&&pi.setAttribute("for",Jr.htmlFor),Jr.dataset&&ai(pi,Jr.dataset),Jr.style&&ei(pi,Jr.style)}function Xr(pi,Jr,Le){if(Jr===Le)return;let Qi;for(Qi in Jr)Qi in rr||Qi in Le||(Qi.substr(0,2)==="on"?pi[Qi]=null:pi.removeAttribute(Qi));for(Qi in Le)Qi in rr||Jr[Qi]===Le[Qi]||(Qi.substr(0,2)==="on"?pi[Qi]=Le[Qi]:pi.setAttribute(Qi,Le[Qi]));Jr.className!==Le.className&&(Le.className!==void 0?pi.setAttribute("class",Le.className):pi.removeAttribute("class")),Jr.htmlFor!==Le.htmlFor&&(Le.htmlFor!==void 0?pi.setAttribute("for",Le.htmlFor):pi.removeAttribute("for")),Jr.dataset!==Le.dataset&&Ti(pi,Jr.dataset||{},Le.dataset||{}),Jr.style!==Le.style&&di(pi,Jr.style||{},Le.style||{})}function ai(pi,Jr){for(let Le in Jr)pi.setAttribute(`data-${Le}`,Jr[Le])}function Ti(pi,Jr,Le){for(let Qi in Jr)Qi in Le||pi.removeAttribute(`data-${Qi}`);for(let Qi in Le)Jr[Qi]!==Le[Qi]&&pi.setAttribute(`data-${Qi}`,Le[Qi])}function ei(pi,Jr){let Le=pi.style,Qi;for(Qi in Jr)Le[Qi]=Jr[Qi]}function di(pi,Jr,Le){let Qi=pi.style,En;for(En in Jr)En in Le||(Qi[En]="");for(En in Le)Jr[En]!==Le[En]&&(Qi[En]=Le[En])}function Ei(pi,Jr){let Le=pi.firstChild,Qi=Object.create(null);for(let En of Jr)En.type==="element"&&En.attrs.key&&(Qi[En.attrs.key]={vNode:En,element:Le}),Le=Le.nextSibling;return Qi}})(Im||(Im={}));var Pv=class{constructor(){this.sizeHint=0,this.minSize=0,this.maxSize=1/0,this.stretch=1,this.size=0,this.done=!1}},Fd;(function(Ft){function Ae(rr,hi){let Xr=rr.length;if(Xr===0)return hi;let ai=0,Ti=0,ei=0,di=0,Ei=0;for(let Le=0;Le0&&(di+=Qi.stretch,Ei++)}if(hi===ei)return 0;if(hi<=ai){for(let Le=0;Le=Ti){for(let Le=0;Le0&&Le>pi;){let Qi=Le,En=di;for(let wn=0;wn0&&Le>pi;){let Qi=Le/Jr;for(let En=0;En0&&Le>pi;){let Qi=Le,En=di;for(let wn=0;wn=Wi.maxSize?(Le-=Wi.maxSize-Wi.size,di-=Wi.stretch,Wi.size=Wi.maxSize,Wi.done=!0,Jr--,Ei--):(Le-=gn,Wi.size+=gn)}}for(;Jr>0&&Le>pi;){let Qi=Le/Jr;for(let En=0;En=wn.maxSize?(Le-=wn.maxSize-wn.size,wn.size=wn.maxSize,wn.done=!0,Jr--):(Le-=Qi,wn.size+=Qi))}}}return 0}Ft.calc=Ae;function wt(rr,hi,Xr){rr.length===0||Xr===0||(Xr>0?At(rr,hi,Xr):Vt(rr,hi,-Xr))}Ft.adjust=wt;function At(rr,hi,Xr){let ai=0;for(let Ei=0;Ei<=hi;++Ei){let pi=rr[Ei];ai+=pi.maxSize-pi.size}let Ti=0;for(let Ei=hi+1,pi=rr.length;Ei=0&&ei>0;--Ei){let pi=rr[Ei],Jr=pi.maxSize-pi.size;Jr>=ei?(pi.sizeHint=pi.size+ei,ei=0):(pi.sizeHint=pi.size+Jr,ei-=Jr)}let di=Xr;for(let Ei=hi+1,pi=rr.length;Ei0;++Ei){let Jr=rr[Ei],Le=Jr.size-Jr.minSize;Le>=di?(Jr.sizeHint=Jr.size-di,di=0):(Jr.sizeHint=Jr.size-Le,di-=Le)}}function Vt(rr,hi,Xr){let ai=0;for(let Ei=hi+1,pi=rr.length;Ei0;++Ei){let Jr=rr[Ei],Le=Jr.maxSize-Jr.size;Le>=ei?(Jr.sizeHint=Jr.size+ei,ei=0):(Jr.sizeHint=Jr.size+Le,ei-=Le)}let di=Xr;for(let Ei=hi;Ei>=0&&di>0;--Ei){let pi=rr[Ei],Jr=pi.size-pi.minSize;Jr>=di?(pi.sizeHint=pi.size-di,di=0):(pi.sizeHint=pi.size-Jr,di-=Jr)}}})(Fd||(Fd={}));var J0=class{constructor(Ae){this._label="",this._caption="",this._mnemonic=-1,this._icon=void 0,this._iconClass="",this._iconLabel="",this._className="",this._closable=!1,this._changed=new lc(this),this._isDisposed=!1,this.owner=Ae.owner,Ae.label!==void 0&&(this._label=Ae.label),Ae.mnemonic!==void 0&&(this._mnemonic=Ae.mnemonic),Ae.icon!==void 0&&(this._icon=Ae.icon),Ae.iconClass!==void 0&&(this._iconClass=Ae.iconClass),Ae.iconLabel!==void 0&&(this._iconLabel=Ae.iconLabel),Ae.caption!==void 0&&(this._caption=Ae.caption),Ae.className!==void 0&&(this._className=Ae.className),Ae.closable!==void 0&&(this._closable=Ae.closable),this._dataset=Ae.dataset||{}}get changed(){return this._changed}get label(){return this._label}set label(Ae){this._label!==Ae&&(this._label=Ae,this._changed.emit(void 0))}get mnemonic(){return this._mnemonic}set mnemonic(Ae){this._mnemonic!==Ae&&(this._mnemonic=Ae,this._changed.emit(void 0))}get icon(){return this._icon}set icon(Ae){this._icon!==Ae&&(this._icon=Ae,this._changed.emit(void 0))}get iconClass(){return this._iconClass}set iconClass(Ae){this._iconClass!==Ae&&(this._iconClass=Ae,this._changed.emit(void 0))}get iconLabel(){return this._iconLabel}set iconLabel(Ae){this._iconLabel!==Ae&&(this._iconLabel=Ae,this._changed.emit(void 0))}get caption(){return this._caption}set caption(Ae){this._caption!==Ae&&(this._caption=Ae,this._changed.emit(void 0))}get className(){return this._className}set className(Ae){this._className!==Ae&&(this._className=Ae,this._changed.emit(void 0))}get closable(){return this._closable}set closable(Ae){this._closable!==Ae&&(this._closable=Ae,this._changed.emit(void 0))}get dataset(){return this._dataset}set dataset(Ae){this._dataset!==Ae&&(this._dataset=Ae,this._changed.emit(void 0))}get isDisposed(){return this._isDisposed}dispose(){this.isDisposed||(this._isDisposed=!0,lc.clearData(this))}},Uo=class Ft{constructor(Ae={}){this._flags=0,this._layout=null,this._parent=null,this._disposed=new lc(this),this._hiddenMode=Ft.HiddenMode.Display,this.node=a_.createNode(Ae),this.addClass("lm-Widget")}dispose(){this.isDisposed||(this.setFlag(Ft.Flag.IsDisposed),this._disposed.emit(void 0),this.parent?this.parent=null:this.isAttached&&Ft.detach(this),this._layout&&(this._layout.dispose(),this._layout=null),this.title.dispose(),lc.clearData(this),Eo.clearData(this),_d.clearData(this))}get disposed(){return this._disposed}get isDisposed(){return this.testFlag(Ft.Flag.IsDisposed)}get isAttached(){return this.testFlag(Ft.Flag.IsAttached)}get isHidden(){return this.testFlag(Ft.Flag.IsHidden)}get isVisible(){return this.testFlag(Ft.Flag.IsVisible)}get title(){return a_.titleProperty.get(this)}get id(){return this.node.id}set id(Ae){this.node.id=Ae}get dataset(){return this.node.dataset}get hiddenMode(){return this._hiddenMode}set hiddenMode(Ae){this._hiddenMode!==Ae&&(this.isHidden&&this._toggleHidden(!1),Ae==Ft.HiddenMode.Scale?this.node.style.willChange="transform":this.node.style.willChange="auto",this._hiddenMode=Ae,this.isHidden&&this._toggleHidden(!0))}get parent(){return this._parent}set parent(Ae){if(this._parent!==Ae){if(Ae&&this.contains(Ae))throw new Error("Invalid parent widget.");if(this._parent&&!this._parent.isDisposed){let wt=new Ft.ChildMessage("child-removed",this);Eo.sendMessage(this._parent,wt)}if(this._parent=Ae,this._parent&&!this._parent.isDisposed){let wt=new Ft.ChildMessage("child-added",this);Eo.sendMessage(this._parent,wt)}this.isDisposed||Eo.sendMessage(this,Ft.Msg.ParentChanged)}}get layout(){return this._layout}set layout(Ae){if(this._layout!==Ae){if(this.testFlag(Ft.Flag.DisallowLayout))throw new Error("Cannot set widget layout.");if(this._layout)throw new Error("Cannot change widget layout.");if(Ae.parent)throw new Error("Cannot change layout parent.");this._layout=Ae,Ae.parent=this}}*children(){this._layout&&(yield*this._layout)}contains(Ae){for(let wt=Ae;wt;wt=wt._parent)if(wt===this)return!0;return!1}hasClass(Ae){return this.node.classList.contains(Ae)}addClass(Ae){this.node.classList.add(Ae)}removeClass(Ae){this.node.classList.remove(Ae)}toggleClass(Ae,wt){return wt===!0?(this.node.classList.add(Ae),!0):wt===!1?(this.node.classList.remove(Ae),!1):this.node.classList.toggle(Ae)}update(){Eo.postMessage(this,Ft.Msg.UpdateRequest)}fit(){Eo.postMessage(this,Ft.Msg.FitRequest)}activate(){Eo.postMessage(this,Ft.Msg.ActivateRequest)}close(){Eo.sendMessage(this,Ft.Msg.CloseRequest)}show(){if(this.testFlag(Ft.Flag.IsHidden)&&(this.isAttached&&(!this.parent||this.parent.isVisible)&&Eo.sendMessage(this,Ft.Msg.BeforeShow),this.clearFlag(Ft.Flag.IsHidden),this._toggleHidden(!1),this.isAttached&&(!this.parent||this.parent.isVisible)&&Eo.sendMessage(this,Ft.Msg.AfterShow),this.parent)){let Ae=new Ft.ChildMessage("child-shown",this);Eo.sendMessage(this.parent,Ae)}}hide(){if(!this.testFlag(Ft.Flag.IsHidden)&&(this.isAttached&&(!this.parent||this.parent.isVisible)&&Eo.sendMessage(this,Ft.Msg.BeforeHide),this.setFlag(Ft.Flag.IsHidden),this._toggleHidden(!0),this.isAttached&&(!this.parent||this.parent.isVisible)&&Eo.sendMessage(this,Ft.Msg.AfterHide),this.parent)){let Ae=new Ft.ChildMessage("child-hidden",this);Eo.sendMessage(this.parent,Ae)}}setHidden(Ae){Ae?this.hide():this.show()}testFlag(Ae){return(this._flags&Ae)!==0}setFlag(Ae){this._flags|=Ae}clearFlag(Ae){this._flags&=~Ae}processMessage(Ae){switch(Ae.type){case"resize":this.notifyLayout(Ae),this.onResize(Ae);break;case"update-request":this.notifyLayout(Ae),this.onUpdateRequest(Ae);break;case"fit-request":this.notifyLayout(Ae),this.onFitRequest(Ae);break;case"before-show":this.notifyLayout(Ae),this.onBeforeShow(Ae);break;case"after-show":this.setFlag(Ft.Flag.IsVisible),this.notifyLayout(Ae),this.onAfterShow(Ae);break;case"before-hide":this.notifyLayout(Ae),this.onBeforeHide(Ae);break;case"after-hide":this.clearFlag(Ft.Flag.IsVisible),this.notifyLayout(Ae),this.onAfterHide(Ae);break;case"before-attach":this.notifyLayout(Ae),this.onBeforeAttach(Ae);break;case"after-attach":!this.isHidden&&(!this.parent||this.parent.isVisible)&&this.setFlag(Ft.Flag.IsVisible),this.setFlag(Ft.Flag.IsAttached),this.notifyLayout(Ae),this.onAfterAttach(Ae);break;case"before-detach":this.notifyLayout(Ae),this.onBeforeDetach(Ae);break;case"after-detach":this.clearFlag(Ft.Flag.IsVisible),this.clearFlag(Ft.Flag.IsAttached),this.notifyLayout(Ae),this.onAfterDetach(Ae);break;case"activate-request":this.notifyLayout(Ae),this.onActivateRequest(Ae);break;case"close-request":this.notifyLayout(Ae),this.onCloseRequest(Ae);break;case"child-added":this.notifyLayout(Ae),this.onChildAdded(Ae);break;case"child-removed":this.notifyLayout(Ae),this.onChildRemoved(Ae);break;default:this.notifyLayout(Ae);break}}notifyLayout(Ae){this._layout&&this._layout.processParentMessage(Ae)}onCloseRequest(Ae){this.parent?this.parent=null:this.isAttached&&Ft.detach(this)}onResize(Ae){}onUpdateRequest(Ae){}onFitRequest(Ae){}onActivateRequest(Ae){}onBeforeShow(Ae){}onAfterShow(Ae){}onBeforeHide(Ae){}onAfterHide(Ae){}onBeforeAttach(Ae){}onAfterAttach(Ae){}onBeforeDetach(Ae){}onAfterDetach(Ae){}onChildAdded(Ae){}onChildRemoved(Ae){}_toggleHidden(Ae){if(Ae)switch(this._hiddenMode){case Ft.HiddenMode.Display:this.addClass("lm-mod-hidden");break;case Ft.HiddenMode.Scale:this.node.style.transform="scale(0)",this.node.setAttribute("aria-hidden","true");break;case Ft.HiddenMode.ContentVisibility:this.node.style.contentVisibility="hidden",this.node.style.zIndex="-1";break}else switch(this._hiddenMode){case Ft.HiddenMode.Display:this.removeClass("lm-mod-hidden");break;case Ft.HiddenMode.Scale:this.node.style.transform="",this.node.removeAttribute("aria-hidden");break;case Ft.HiddenMode.ContentVisibility:this.node.style.contentVisibility="",this.node.style.zIndex="";break}}};(function(Ft){(function(rr){rr[rr.Display=0]="Display",rr[rr.Scale=1]="Scale",rr[rr.ContentVisibility=2]="ContentVisibility"})(Ft.HiddenMode||(Ft.HiddenMode={})),function(rr){rr[rr.IsDisposed=1]="IsDisposed",rr[rr.IsAttached=2]="IsAttached",rr[rr.IsHidden=4]="IsHidden",rr[rr.IsVisible=8]="IsVisible",rr[rr.DisallowLayout=16]="DisallowLayout"}(Ft.Flag||(Ft.Flag={})),function(rr){rr.BeforeShow=new yd("before-show"),rr.AfterShow=new yd("after-show"),rr.BeforeHide=new yd("before-hide"),rr.AfterHide=new yd("after-hide"),rr.BeforeAttach=new yd("before-attach"),rr.AfterAttach=new yd("after-attach"),rr.BeforeDetach=new yd("before-detach"),rr.AfterDetach=new yd("after-detach"),rr.ParentChanged=new yd("parent-changed"),rr.UpdateRequest=new Fp("update-request"),rr.FitRequest=new Fp("fit-request"),rr.ActivateRequest=new Fp("activate-request"),rr.CloseRequest=new Fp("close-request")}(Ft.Msg||(Ft.Msg={}));class Ae extends yd{constructor(hi,Xr){super(hi),this.child=Xr}}Ft.ChildMessage=Ae;class wt extends yd{constructor(hi,Xr){super("resize"),this.width=hi,this.height=Xr}}Ft.ResizeMessage=wt,function(rr){rr.UnknownSize=new rr(-1,-1)}(wt=Ft.ResizeMessage||(Ft.ResizeMessage={}));function At(rr,hi,Xr=null){if(rr.parent)throw new Error("Cannot attach a child widget.");if(rr.isAttached||rr.node.isConnected)throw new Error("Widget is already attached.");if(!hi.isConnected)throw new Error("Host is not attached.");Eo.sendMessage(rr,Ft.Msg.BeforeAttach),hi.insertBefore(rr.node,Xr),Eo.sendMessage(rr,Ft.Msg.AfterAttach)}Ft.attach=At;function Vt(rr){if(rr.parent)throw new Error("Cannot detach a child widget.");if(!rr.isAttached||!rr.node.isConnected)throw new Error("Widget is not attached.");Eo.sendMessage(rr,Ft.Msg.BeforeDetach),rr.node.parentNode.removeChild(rr.node),Eo.sendMessage(rr,Ft.Msg.AfterDetach)}Ft.detach=Vt})(Uo||(Uo={}));var a_;(function(Ft){Ft.titleProperty=new _d({name:"title",create:wt=>new J0({owner:wt})});function Ae(wt){return wt.node||document.createElement(wt.tag||"div")}Ft.createNode=Ae})(a_||(a_={}));var op=class{constructor(Ae={}){this._disposed=!1,this._parent=null,this._fitPolicy=Ae.fitPolicy||"set-min-size"}dispose(){this._parent=null,this._disposed=!0,lc.clearData(this),_d.clearData(this)}get isDisposed(){return this._disposed}get parent(){return this._parent}set parent(Ae){if(this._parent!==Ae){if(this._parent)throw new Error("Cannot change parent widget.");if(Ae.layout!==this)throw new Error("Invalid parent widget.");this._parent=Ae,this.init()}}get fitPolicy(){return this._fitPolicy}set fitPolicy(Ae){if(this._fitPolicy!==Ae&&(this._fitPolicy=Ae,this._parent)){let wt=this._parent.node.style;wt.minWidth="",wt.minHeight="",wt.maxWidth="",wt.maxHeight="",this._parent.fit()}}processParentMessage(Ae){switch(Ae.type){case"resize":this.onResize(Ae);break;case"update-request":this.onUpdateRequest(Ae);break;case"fit-request":this.onFitRequest(Ae);break;case"before-show":this.onBeforeShow(Ae);break;case"after-show":this.onAfterShow(Ae);break;case"before-hide":this.onBeforeHide(Ae);break;case"after-hide":this.onAfterHide(Ae);break;case"before-attach":this.onBeforeAttach(Ae);break;case"after-attach":this.onAfterAttach(Ae);break;case"before-detach":this.onBeforeDetach(Ae);break;case"after-detach":this.onAfterDetach(Ae);break;case"child-removed":this.onChildRemoved(Ae);break;case"child-shown":this.onChildShown(Ae);break;case"child-hidden":this.onChildHidden(Ae);break}}init(){for(let Ae of this)Ae.parent=this.parent}onResize(Ae){for(let wt of this)Eo.sendMessage(wt,Uo.ResizeMessage.UnknownSize)}onUpdateRequest(Ae){for(let wt of this)Eo.sendMessage(wt,Uo.ResizeMessage.UnknownSize)}onBeforeAttach(Ae){for(let wt of this)Eo.sendMessage(wt,Ae)}onAfterAttach(Ae){for(let wt of this)Eo.sendMessage(wt,Ae)}onBeforeDetach(Ae){for(let wt of this)Eo.sendMessage(wt,Ae)}onAfterDetach(Ae){for(let wt of this)Eo.sendMessage(wt,Ae)}onBeforeShow(Ae){for(let wt of this)wt.isHidden||Eo.sendMessage(wt,Ae)}onAfterShow(Ae){for(let wt of this)wt.isHidden||Eo.sendMessage(wt,Ae)}onBeforeHide(Ae){for(let wt of this)wt.isHidden||Eo.sendMessage(wt,Ae)}onAfterHide(Ae){for(let wt of this)wt.isHidden||Eo.sendMessage(wt,Ae)}onChildRemoved(Ae){this.removeWidget(Ae.child)}onFitRequest(Ae){}onChildShown(Ae){}onChildHidden(Ae){}};(function(Ft){function Ae(rr){return Vg.horizontalAlignmentProperty.get(rr)}Ft.getHorizontalAlignment=Ae;function wt(rr,hi){Vg.horizontalAlignmentProperty.set(rr,hi)}Ft.setHorizontalAlignment=wt;function At(rr){return Vg.verticalAlignmentProperty.get(rr)}Ft.getVerticalAlignment=At;function Vt(rr,hi){Vg.verticalAlignmentProperty.set(rr,hi)}Ft.setVerticalAlignment=Vt})(op||(op={}));var zm=class{constructor(Ae){this._top=NaN,this._left=NaN,this._width=NaN,this._height=NaN,this._minWidth=0,this._minHeight=0,this._maxWidth=1/0,this._maxHeight=1/0,this._disposed=!1,this.widget=Ae,this.widget.node.style.position="absolute",this.widget.node.style.contain="strict"}dispose(){if(this._disposed)return;this._disposed=!0;let Ae=this.widget.node.style;Ae.position="",Ae.top="",Ae.left="",Ae.width="",Ae.height="",Ae.contain=""}get minWidth(){return this._minWidth}get minHeight(){return this._minHeight}get maxWidth(){return this._maxWidth}get maxHeight(){return this._maxHeight}get isDisposed(){return this._disposed}get isHidden(){return this.widget.isHidden}get isVisible(){return this.widget.isVisible}get isAttached(){return this.widget.isAttached}fit(){let Ae=wc.sizeLimits(this.widget.node);this._minWidth=Ae.minWidth,this._minHeight=Ae.minHeight,this._maxWidth=Ae.maxWidth,this._maxHeight=Ae.maxHeight}update(Ae,wt,At,Vt){let rr=Math.max(this._minWidth,Math.min(At,this._maxWidth)),hi=Math.max(this._minHeight,Math.min(Vt,this._maxHeight));if(rr"center",changed:Ae}),Ft.verticalAlignmentProperty=new _d({name:"verticalAlignment",create:()=>"top",changed:Ae});function Ae(wt){wt.parent&&wt.parent.layout&&wt.parent.update()}})(Vg||(Vg={}));var qg=class extends op{constructor(){super(...arguments),this._widgets=[]}dispose(){for(;this._widgets.length>0;)this._widgets.pop().dispose();super.dispose()}get widgets(){return this._widgets}*[Symbol.iterator](){yield*this._widgets}addWidget(Ae){this.insertWidget(this._widgets.length,Ae)}insertWidget(Ae,wt){wt.parent=this.parent;let At=this._widgets.indexOf(wt),Vt=Math.max(0,Math.min(Ae,this._widgets.length));if(At===-1){fo.ArrayExt.insert(this._widgets,Vt,wt),this.parent&&this.attachWidget(Vt,wt);return}Vt===this._widgets.length&&Vt--,At!==Vt&&(fo.ArrayExt.move(this._widgets,At,Vt),this.parent&&this.moveWidget(At,Vt,wt))}removeWidget(Ae){this.removeWidgetAt(this._widgets.indexOf(Ae))}removeWidgetAt(Ae){let wt=fo.ArrayExt.removeAt(this._widgets,Ae);wt&&this.parent&&this.detachWidget(Ae,wt)}init(){super.init();let Ae=0;for(let wt of this)this.attachWidget(Ae++,wt)}attachWidget(Ae,wt){let At=this.parent.node.children[Ae];this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeAttach),this.parent.node.insertBefore(wt.node,At),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterAttach)}moveWidget(Ae,wt,At){this.parent.isAttached&&Eo.sendMessage(At,Uo.Msg.BeforeDetach),this.parent.node.removeChild(At.node),this.parent.isAttached&&Eo.sendMessage(At,Uo.Msg.AfterDetach);let Vt=this.parent.node.children[wt];this.parent.isAttached&&Eo.sendMessage(At,Uo.Msg.BeforeAttach),this.parent.node.insertBefore(At.node,Vt),this.parent.isAttached&&Eo.sendMessage(At,Uo.Msg.AfterAttach)}detachWidget(Ae,wt){this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeDetach),this.parent.node.removeChild(wt.node),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterDetach)}},Q0;(function(Ft){function Ae(wt){return Math.max(0,Math.floor(wt))}Ft.clampDimension=Ae})(Q0||(Q0={}));var ey=Q0,sp=class Ft extends qg{constructor(Ae){super(),this.widgetOffset=0,this._fixed=0,this._spacing=4,this._dirty=!1,this._hasNormedSizes=!1,this._sizers=[],this._items=[],this._handles=[],this._box=null,this._alignment="start",this._orientation="horizontal",this.renderer=Ae.renderer,Ae.orientation!==void 0&&(this._orientation=Ae.orientation),Ae.alignment!==void 0&&(this._alignment=Ae.alignment),Ae.spacing!==void 0&&(this._spacing=Q0.clampDimension(Ae.spacing))}dispose(){for(let Ae of this._items)Ae.dispose();this._box=null,this._items.length=0,this._sizers.length=0,this._handles.length=0,super.dispose()}get orientation(){return this._orientation}set orientation(Ae){this._orientation!==Ae&&(this._orientation=Ae,this.parent&&(this.parent.dataset.orientation=Ae,this.parent.fit()))}get alignment(){return this._alignment}set alignment(Ae){this._alignment!==Ae&&(this._alignment=Ae,this.parent&&(this.parent.dataset.alignment=Ae,this.parent.update()))}get spacing(){return this._spacing}set spacing(Ae){Ae=Q0.clampDimension(Ae),this._spacing!==Ae&&(this._spacing=Ae,this.parent&&this.parent.fit())}get handles(){return this._handles}absoluteSizes(){return this._sizers.map(Ae=>Ae.size)}relativeSizes(){return np.normalize(this._sizers.map(Ae=>Ae.size))}setRelativeSizes(Ae,wt=!0){let At=this._sizers.length,Vt=Ae.slice(0,At);for(;Vt.length0&&(rr.sizeHint=rr.size);Fd.adjust(this._sizers,Ae,Vt),this.parent&&this.parent.update()}}init(){this.parent.dataset.orientation=this.orientation,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(Ae,wt){let At=new zm(wt),Vt=np.createHandle(this.renderer),rr=np.averageSize(this._sizers),hi=np.createSizer(rr);fo.ArrayExt.insert(this._items,Ae,At),fo.ArrayExt.insert(this._sizers,Ae,hi),fo.ArrayExt.insert(this._handles,Ae,Vt),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeAttach),this.parent.node.appendChild(wt.node),this.parent.node.appendChild(Vt),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterAttach),this.parent.fit()}moveWidget(Ae,wt,At){fo.ArrayExt.move(this._items,Ae,wt),fo.ArrayExt.move(this._sizers,Ae,wt),fo.ArrayExt.move(this._handles,Ae,wt),this.parent.fit()}detachWidget(Ae,wt){let At=fo.ArrayExt.removeAt(this._items,Ae),Vt=fo.ArrayExt.removeAt(this._handles,Ae);fo.ArrayExt.removeAt(this._sizers,Ae),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeDetach),this.parent.node.removeChild(wt.node),this.parent.node.removeChild(Vt),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterDetach),At.dispose(),this.parent.fit()}onBeforeShow(Ae){super.onBeforeShow(Ae),this.parent.update()}onBeforeAttach(Ae){super.onBeforeAttach(Ae),this.parent.fit()}onChildShown(Ae){this.parent.fit()}onChildHidden(Ae){this.parent.fit()}onResize(Ae){this.parent.isVisible&&this._update(Ae.width,Ae.height)}onUpdateRequest(Ae){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(Ae){this.parent.isAttached&&this._fit()}updateItemPosition(Ae,wt,At,Vt,rr,hi,Xr){let ai=this._items[Ae];if(ai.isHidden)return;let Ti=this._handles[Ae].style;wt?(At+=this.widgetOffset,ai.update(At,Vt,Xr,rr),At+=Xr,Ti.top=`${Vt}px`,Ti.left=`${At}px`,Ti.width=`${this._spacing}px`,Ti.height=`${rr}px`):(Vt+=this.widgetOffset,ai.update(At,Vt,hi,Xr),Vt+=Xr,Ti.top=`${Vt}px`,Ti.left=`${At}px`,Ti.width=`${hi}px`,Ti.height=`${this._spacing}px`)}_fit(){let Ae=0,wt=-1;for(let ai=0,Ti=this._items.length;ai0&&(di.sizeHint=di.size),ei.isHidden){di.minSize=0,di.maxSize=0;continue}ei.fit(),di.stretch=Ft.getStretch(ei.widget),At?(di.minSize=ei.minWidth,di.maxSize=ei.maxWidth,Vt+=ei.minWidth,rr=Math.max(rr,ei.minHeight)):(di.minSize=ei.minHeight,di.maxSize=ei.maxHeight,rr+=ei.minHeight,Vt=Math.max(Vt,ei.minWidth))}let hi=this._box=wc.boxSizing(this.parent.node);Vt+=hi.horizontalSum,rr+=hi.verticalSum;let Xr=this.parent.node.style;Xr.minWidth=`${Vt}px`,Xr.minHeight=`${rr}px`,this._dirty=!0,this.parent.parent&&Eo.sendMessage(this.parent.parent,Uo.Msg.FitRequest),this._dirty&&Eo.sendMessage(this.parent,Uo.Msg.UpdateRequest)}_update(Ae,wt){this._dirty=!1;let At=0;for(let di=0,Ei=this._items.length;di0){let di;if(ei?di=Math.max(0,hi-this._fixed):di=Math.max(0,Xr-this._fixed),this._hasNormedSizes){for(let pi of this._sizers)pi.sizeHint*=di;this._hasNormedSizes=!1}let Ei=Fd.calc(this._sizers,di);if(Ei>0)switch(this._alignment){case"start":break;case"center":ai=0,Ti=Ei/2;break;case"end":ai=0,Ti=Ei;break;case"justify":ai=Ei/At,Ti=0;break;default:throw"unreachable"}}for(let di=0,Ei=this._items.length;di0,coerce:(hi,Xr)=>Math.max(0,Math.floor(Xr)),changed:rr});function Ae(hi){let Xr=new Pv;return Xr.sizeHint=Math.floor(hi),Xr}Ft.createSizer=Ae;function wt(hi){let Xr=hi.createHandle();return Xr.style.position="absolute",Xr.style.contain="style",Xr}Ft.createHandle=wt;function At(hi){return hi.reduce((Xr,ai)=>Xr+ai.size,0)/hi.length||0}Ft.averageSize=At;function Vt(hi){let Xr=hi.length;if(Xr===0)return[];let ai=hi.reduce((Ti,ei)=>Ti+Math.abs(ei),0);return ai===0?hi.map(Ti=>1/Xr):hi.map(Ti=>Ti/ai)}Ft.normalize=Vt;function rr(hi){hi.parent&&hi.parent.layout instanceof sp&&hi.parent.fit()}})(np||(np={}));var Mw=class extends sp{constructor(Ae){super({...Ae,orientation:Ae.orientation||"vertical"}),this._titles=[],this.titleSpace=Ae.titleSpace||22}get titleSpace(){return this.widgetOffset}set titleSpace(Ae){Ae=ey.clampDimension(Ae),this.widgetOffset!==Ae&&(this.widgetOffset=Ae,this.parent&&this.parent.fit())}get titles(){return this._titles}dispose(){this.isDisposed||(this._titles.length=0,super.dispose())}updateTitle(Ae,wt){let At=this._titles[Ae],Vt=At.classList.contains("lm-mod-expanded"),rr=o_.createTitle(this.renderer,wt.title,Vt);this._titles[Ae]=rr,this.parent.node.replaceChild(rr,At)}insertWidget(Ae,wt){wt.id||(wt.id=`id-${ap.UUID.uuid4()}`),super.insertWidget(Ae,wt)}attachWidget(Ae,wt){let At=o_.createTitle(this.renderer,wt.title);fo.ArrayExt.insert(this._titles,Ae,At),this.parent.node.appendChild(At),wt.node.setAttribute("role","region"),wt.node.setAttribute("aria-labelledby",At.id),super.attachWidget(Ae,wt)}moveWidget(Ae,wt,At){fo.ArrayExt.move(this._titles,Ae,wt),super.moveWidget(Ae,wt,At)}detachWidget(Ae,wt){let At=fo.ArrayExt.removeAt(this._titles,Ae);this.parent.node.removeChild(At),super.detachWidget(Ae,wt)}updateItemPosition(Ae,wt,At,Vt,rr,hi,Xr){let ai=this._titles[Ae].style;ai.top=`${Vt}px`,ai.left=`${At}px`,ai.height=`${this.widgetOffset}px`,wt?ai.width=`${rr}px`:ai.width=`${hi}px`,super.updateItemPosition(Ae,wt,At,Vt,rr,hi,Xr)}},o_;(function(Ft){function Ae(wt,At,Vt=!0){let rr=wt.createSectionTitle(At);return rr.style.position="absolute",rr.style.contain="strict",rr.setAttribute("aria-label",`${At.label} Section`),rr.setAttribute("aria-expanded",Vt?"true":"false"),rr.setAttribute("aria-controls",At.owner.id),Vt&&rr.classList.add("lm-mod-expanded"),rr}Ft.createTitle=Ae})(o_||(o_={}));var s_=class extends Uo{constructor(Ae={}){super(),this.addClass("lm-Panel"),this.layout=Sw.createLayout(Ae)}get widgets(){return this.layout.widgets}addWidget(Ae){this.layout.addWidget(Ae)}insertWidget(Ae,wt){this.layout.insertWidget(Ae,wt)}},Sw;(function(Ft){function Ae(wt){return wt.layout||new qg}Ft.createLayout=Ae})(Sw||(Sw={}));var Fm=class extends s_{constructor(Ae={}){super({layout:Ew.createLayout(Ae)}),this._handleMoved=new lc(this),this._pressData=null,this.addClass("lm-SplitPanel")}dispose(){this._releaseMouse(),super.dispose()}get orientation(){return this.layout.orientation}set orientation(Ae){this.layout.orientation=Ae}get alignment(){return this.layout.alignment}set alignment(Ae){this.layout.alignment=Ae}get spacing(){return this.layout.spacing}set spacing(Ae){this.layout.spacing=Ae}get renderer(){return this.layout.renderer}get handleMoved(){return this._handleMoved}get handles(){return this.layout.handles}relativeSizes(){return this.layout.relativeSizes()}setRelativeSizes(Ae,wt=!0){this.layout.setRelativeSizes(Ae,wt)}handleEvent(Ae){switch(Ae.type){case"pointerdown":this._evtPointerDown(Ae);break;case"pointermove":this._evtPointerMove(Ae);break;case"pointerup":this._evtPointerUp(Ae);break;case"keydown":this._evtKeyDown(Ae);break;case"contextmenu":Ae.preventDefault(),Ae.stopPropagation();break}}onBeforeAttach(Ae){this.node.addEventListener("pointerdown",this)}onAfterDetach(Ae){this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(Ae){Ae.child.addClass("lm-SplitPanel-child"),this._releaseMouse()}onChildRemoved(Ae){Ae.child.removeClass("lm-SplitPanel-child"),this._releaseMouse()}_evtKeyDown(Ae){this._pressData&&(Ae.preventDefault(),Ae.stopPropagation()),Ae.keyCode===27&&this._releaseMouse()}_evtPointerDown(Ae){if(Ae.button!==0)return;let wt=this.layout,At=fo.ArrayExt.findFirstIndex(wt.handles,Ti=>Ti.contains(Ae.target));if(At===-1)return;Ae.preventDefault(),Ae.stopPropagation(),document.addEventListener("pointerup",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("contextmenu",this,!0);let Vt,rr=wt.handles[At],hi=rr.getBoundingClientRect();wt.orientation==="horizontal"?Vt=Ae.clientX-hi.left:Vt=Ae.clientY-hi.top;let Xr=window.getComputedStyle(rr),ai=xd.overrideCursor(Xr.cursor);this._pressData={index:At,delta:Vt,override:ai}}_evtPointerMove(Ae){Ae.preventDefault(),Ae.stopPropagation();let wt,At=this.layout,Vt=this.node.getBoundingClientRect();At.orientation==="horizontal"?wt=Ae.clientX-Vt.left-this._pressData.delta:wt=Ae.clientY-Vt.top-this._pressData.delta,At.moveHandle(this._pressData.index,wt)}_evtPointerUp(Ae){Ae.button===0&&(Ae.preventDefault(),Ae.stopPropagation(),this._releaseMouse())}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._handleMoved.emit(),document.removeEventListener("keydown",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("contextmenu",this,!0))}};(function(Ft){class Ae{createHandle(){let rr=document.createElement("div");return rr.className="lm-SplitPanel-handle",rr}}Ft.Renderer=Ae,Ft.defaultRenderer=new Ae;function wt(Vt){return sp.getStretch(Vt)}Ft.getStretch=wt;function At(Vt,rr){sp.setStretch(Vt,rr)}Ft.setStretch=At})(Fm||(Fm={}));var Ew;(function(Ft){function Ae(wt){return wt.layout||new sp({renderer:wt.renderer||Fm.defaultRenderer,orientation:wt.orientation,alignment:wt.alignment,spacing:wt.spacing})}Ft.createLayout=Ae})(Ew||(Ew={}));var ty=class extends Fm{constructor(Ae={}){super({...Ae,layout:kw.createLayout(Ae)}),this._widgetSizesCache=new WeakMap,this._expansionToggled=new lc(this),this.addClass("lm-AccordionPanel")}get renderer(){return this.layout.renderer}get titleSpace(){return this.layout.titleSpace}set titleSpace(Ae){this.layout.titleSpace=Ae}get titles(){return this.layout.titles}get expansionToggled(){return this._expansionToggled}addWidget(Ae){super.addWidget(Ae),Ae.title.changed.connect(this._onTitleChanged,this)}collapse(Ae){let wt=this.layout.widgets[Ae];wt&&!wt.isHidden&&this._toggleExpansion(Ae)}expand(Ae){let wt=this.layout.widgets[Ae];wt&&wt.isHidden&&this._toggleExpansion(Ae)}insertWidget(Ae,wt){super.insertWidget(Ae,wt),wt.title.changed.connect(this._onTitleChanged,this)}handleEvent(Ae){switch(super.handleEvent(Ae),Ae.type){case"click":this._evtClick(Ae);break;case"keydown":this._eventKeyDown(Ae);break}}onBeforeAttach(Ae){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),super.onBeforeAttach(Ae)}onAfterDetach(Ae){super.onAfterDetach(Ae),this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this)}_onTitleChanged(Ae){let wt=fo.ArrayExt.findFirstIndex(this.widgets,At=>At.contains(Ae.owner));wt>=0&&(this.layout.updateTitle(wt,Ae.owner),this.update())}_computeWidgetSize(Ae){let wt=this.layout,At=wt.widgets[Ae];if(!At)return;let Vt=At.isHidden,rr=wt.absoluteSizes(),hi=(Vt?-1:1)*this.spacing,Xr=rr.reduce((Ti,ei)=>Ti+ei),ai=[...rr];if(Vt){let Ti=this._widgetSizesCache.get(At);if(!Ti)return;ai[Ae]+=Ti;let ei=ai.map(di=>di-Ti>0).lastIndexOf(!0);ei===-1?ai.forEach((di,Ei)=>{Ei!==Ae&&(ai[Ei]-=rr[Ei]/Xr*(Ti-hi))}):ai[ei]-=Ti-hi}else{let Ti=rr[Ae];this._widgetSizesCache.set(At,Ti),ai[Ae]=0;let ei=ai.map(di=>di>0).lastIndexOf(!0);if(ei===-1)return;ai[ei]=rr[ei]+Ti+hi}return ai.map(Ti=>Ti/(Xr+hi))}_evtClick(Ae){let wt=Ae.target;if(wt){let At=fo.ArrayExt.findFirstIndex(this.titles,Vt=>Vt.contains(wt));At>=0&&(Ae.preventDefault(),Ae.stopPropagation(),this._toggleExpansion(At))}}_eventKeyDown(Ae){if(Ae.defaultPrevented)return;let wt=Ae.target,At=!1;if(wt){let Vt=fo.ArrayExt.findFirstIndex(this.titles,rr=>rr.contains(wt));if(Vt>=0){let rr=Ae.keyCode.toString();if(Ae.key.match(/Space|Enter/)||rr.match(/13|32/))wt.click(),At=!0;else if(this.orientation==="horizontal"?Ae.key.match(/ArrowLeft|ArrowRight/)||rr.match(/37|39/):Ae.key.match(/ArrowUp|ArrowDown/)||rr.match(/38|40/)){let hi=Ae.key.match(/ArrowLeft|ArrowUp/)||rr.match(/37|38/)?-1:1,Xr=this.titles.length,ai=(Vt+Xr+hi)%Xr;this.titles[ai].focus(),At=!0}else Ae.key==="End"||rr==="35"?(this.titles[this.titles.length-1].focus(),At=!0):(Ae.key==="Home"||rr==="36")&&(this.titles[0].focus(),At=!0)}At&&Ae.preventDefault()}}_toggleExpansion(Ae){let wt=this.titles[Ae],At=this.layout.widgets[Ae],Vt=this._computeWidgetSize(Ae);Vt&&this.setRelativeSizes(Vt,!1),At.isHidden?(wt.classList.add("lm-mod-expanded"),wt.setAttribute("aria-expanded","true"),At.show()):(wt.classList.remove("lm-mod-expanded"),wt.setAttribute("aria-expanded","false"),At.hide()),this._expansionToggled.emit(Ae)}};(function(Ft){class Ae extends Fm.Renderer{constructor(){super(),this.titleClassName="lm-AccordionPanel-title",this._titleID=0,this._titleKeys=new WeakMap,this._uuid=++Ae._nInstance}createCollapseIcon(At){return document.createElement("span")}createSectionTitle(At){let Vt=document.createElement("h3");Vt.setAttribute("tabindex","0"),Vt.id=this.createTitleKey(At),Vt.className=this.titleClassName;for(let Xr in At.dataset)Vt.dataset[Xr]=At.dataset[Xr];let rr=Vt.appendChild(this.createCollapseIcon(At));rr.className="lm-AccordionPanel-titleCollapser";let hi=Vt.appendChild(document.createElement("span"));return hi.className="lm-AccordionPanel-titleLabel",hi.textContent=At.label,hi.title=At.caption||At.label,Vt}createTitleKey(At){let Vt=this._titleKeys.get(At);return Vt===void 0&&(Vt=`title-key-${this._uuid}-${this._titleID++}`,this._titleKeys.set(At,Vt)),Vt}}Ae._nInstance=0,Ft.Renderer=Ae,Ft.defaultRenderer=new Ae})(ty||(ty={}));var kw;(function(Ft){function Ae(wt){return wt.layout||new Mw({renderer:wt.renderer||ty.defaultRenderer,orientation:wt.orientation,alignment:wt.alignment,spacing:wt.spacing,titleSpace:wt.titleSpace})}Ft.createLayout=Ae})(kw||(kw={}));var Lv=class Ft extends qg{constructor(Ae={}){super(),this._fixed=0,this._spacing=4,this._dirty=!1,this._sizers=[],this._items=[],this._box=null,this._alignment="start",this._direction="top-to-bottom",Ae.direction!==void 0&&(this._direction=Ae.direction),Ae.alignment!==void 0&&(this._alignment=Ae.alignment),Ae.spacing!==void 0&&(this._spacing=ey.clampDimension(Ae.spacing))}dispose(){for(let Ae of this._items)Ae.dispose();this._box=null,this._items.length=0,this._sizers.length=0,super.dispose()}get direction(){return this._direction}set direction(Ae){this._direction!==Ae&&(this._direction=Ae,this.parent&&(this.parent.dataset.direction=Ae,this.parent.fit()))}get alignment(){return this._alignment}set alignment(Ae){this._alignment!==Ae&&(this._alignment=Ae,this.parent&&(this.parent.dataset.alignment=Ae,this.parent.update()))}get spacing(){return this._spacing}set spacing(Ae){Ae=ey.clampDimension(Ae),this._spacing!==Ae&&(this._spacing=Ae,this.parent&&this.parent.fit())}init(){this.parent.dataset.direction=this.direction,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(Ae,wt){fo.ArrayExt.insert(this._items,Ae,new zm(wt)),fo.ArrayExt.insert(this._sizers,Ae,new Pv),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeAttach),this.parent.node.appendChild(wt.node),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterAttach),this.parent.fit()}moveWidget(Ae,wt,At){fo.ArrayExt.move(this._items,Ae,wt),fo.ArrayExt.move(this._sizers,Ae,wt),this.parent.update()}detachWidget(Ae,wt){let At=fo.ArrayExt.removeAt(this._items,Ae);fo.ArrayExt.removeAt(this._sizers,Ae),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeDetach),this.parent.node.removeChild(wt.node),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterDetach),At.dispose(),this.parent.fit()}onBeforeShow(Ae){super.onBeforeShow(Ae),this.parent.update()}onBeforeAttach(Ae){super.onBeforeAttach(Ae),this.parent.fit()}onChildShown(Ae){this.parent.fit()}onChildHidden(Ae){this.parent.fit()}onResize(Ae){this.parent.isVisible&&this._update(Ae.width,Ae.height)}onUpdateRequest(Ae){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(Ae){this.parent.isAttached&&this._fit()}_fit(){let Ae=0;for(let Xr=0,ai=this._items.length;Xr0)switch(this._alignment){case"start":break;case"center":Ti=0,ei=ai/2;break;case"end":Ti=0,ei=ai;break;case"justify":Ti=ai/At,ei=0;break;default:throw"unreachable"}for(let di=0,Ei=this._items.length;di0,coerce:(Vt,rr)=>Math.max(0,Math.floor(rr)),changed:At}),Ft.sizeBasisProperty=new _d({name:"sizeBasis",create:()=>0,coerce:(Vt,rr)=>Math.max(0,Math.floor(rr)),changed:At});function Ae(Vt){return Vt==="left-to-right"||Vt==="right-to-left"}Ft.isHorizontal=Ae;function wt(Vt){return Math.max(0,Math.floor(Vt))}Ft.clampSpacing=wt;function At(Vt){Vt.parent&&Vt.parent.layout instanceof Lv&&Vt.parent.fit()}})(Rm||(Rm={}));var l_=class extends s_{constructor(Ae={}){super({layout:Cw.createLayout(Ae)}),this.addClass("lm-BoxPanel")}get direction(){return this.layout.direction}set direction(Ae){this.layout.direction=Ae}get alignment(){return this.layout.alignment}set alignment(Ae){this.layout.alignment=Ae}get spacing(){return this.layout.spacing}set spacing(Ae){this.layout.spacing=Ae}onChildAdded(Ae){Ae.child.addClass("lm-BoxPanel-child")}onChildRemoved(Ae){Ae.child.removeClass("lm-BoxPanel-child")}};(function(Ft){function Ae(rr){return Lv.getStretch(rr)}Ft.getStretch=Ae;function wt(rr,hi){Lv.setStretch(rr,hi)}Ft.setStretch=wt;function At(rr){return Lv.getSizeBasis(rr)}Ft.getSizeBasis=At;function Vt(rr,hi){Lv.setSizeBasis(rr,hi)}Ft.setSizeBasis=Vt})(l_||(l_={}));var Cw;(function(Ft){function Ae(wt){return wt.layout||new Lv(wt)}Ft.createLayout=Ae})(Cw||(Cw={}));var u_=class Ft extends Uo{constructor(Ae){super({node:ip.createNode()}),this._activeIndex=-1,this._items=[],this._results=null,this.addClass("lm-CommandPalette"),this.setFlag(Uo.Flag.DisallowLayout),this.commands=Ae.commands,this.renderer=Ae.renderer||Ft.defaultRenderer,this.commands.commandChanged.connect(this._onGenericChange,this),this.commands.keyBindingChanged.connect(this._onGenericChange,this)}dispose(){this._items.length=0,this._results=null,super.dispose()}get searchNode(){return this.node.getElementsByClassName("lm-CommandPalette-search")[0]}get inputNode(){return this.node.getElementsByClassName("lm-CommandPalette-input")[0]}get contentNode(){return this.node.getElementsByClassName("lm-CommandPalette-content")[0]}get items(){return this._items}addItem(Ae){let wt=ip.createItem(this.commands,Ae);return this._items.push(wt),this.refresh(),wt}addItems(Ae){let wt=Ae.map(At=>ip.createItem(this.commands,At));return wt.forEach(At=>this._items.push(At)),this.refresh(),wt}removeItem(Ae){this.removeItemAt(this._items.indexOf(Ae))}removeItemAt(Ae){fo.ArrayExt.removeAt(this._items,Ae)&&this.refresh()}clearItems(){this._items.length!==0&&(this._items.length=0,this.refresh())}refresh(){if(this._results=null,this.inputNode.value!==""){let Ae=this.node.getElementsByClassName("lm-close-icon")[0];Ae.style.display="inherit"}else{let Ae=this.node.getElementsByClassName("lm-close-icon")[0];Ae.style.display="none"}this.update()}handleEvent(Ae){switch(Ae.type){case"click":this._evtClick(Ae);break;case"keydown":this._evtKeyDown(Ae);break;case"input":this.refresh();break;case"focus":case"blur":this._toggleFocused();break}}onBeforeAttach(Ae){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),this.node.addEventListener("input",this),this.node.addEventListener("focus",this,!0),this.node.addEventListener("blur",this,!0)}onAfterDetach(Ae){this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this),this.node.removeEventListener("input",this),this.node.removeEventListener("focus",this,!0),this.node.removeEventListener("blur",this,!0)}onAfterShow(Ae){this.update(),super.onAfterShow(Ae)}onActivateRequest(Ae){if(this.isAttached){let wt=this.inputNode;wt.focus(),wt.select()}}onUpdateRequest(Ae){if(this.isHidden)return;let wt=this.inputNode.value,At=this.contentNode,Vt=this._results;if(Vt||(Vt=this._results=ip.search(this._items,wt),this._activeIndex=wt?fo.ArrayExt.findFirstIndex(Vt,ip.canActivate):-1),!wt&&Vt.length===0){rp.render(null,At);return}if(wt&&Vt.length===0){let ai=this.renderer.renderEmptyMessage({query:wt});rp.render(ai,At);return}let rr=this.renderer,hi=this._activeIndex,Xr=new Array(Vt.length);for(let ai=0,Ti=Vt.length;ai=Vt.length)At.scrollTop=0;else{let ai=At.children[hi];wc.scrollIntoViewIfNeeded(At,ai)}}_evtClick(Ae){if(Ae.button!==0)return;if(Ae.target.classList.contains("lm-close-icon")){this.inputNode.value="",this.refresh();return}let wt=fo.ArrayExt.findFirstIndex(this.contentNode.children,At=>At.contains(Ae.target));wt!==-1&&(Ae.preventDefault(),Ae.stopPropagation(),this._execute(wt))}_evtKeyDown(Ae){if(!(Ae.altKey||Ae.ctrlKey||Ae.metaKey||Ae.shiftKey))switch(Ae.keyCode){case 13:Ae.preventDefault(),Ae.stopPropagation(),this._execute(this._activeIndex);break;case 38:Ae.preventDefault(),Ae.stopPropagation(),this._activatePreviousItem();break;case 40:Ae.preventDefault(),Ae.stopPropagation(),this._activateNextItem();break}}_activateNextItem(){if(!this._results||this._results.length===0)return;let Ae=this._activeIndex,wt=this._results.length,At=AeIa-To),Ji=wn.slice(0,Sn),za=wn.slice(Sn);for(let Ia=0,To=za.length;IaLe.command===pi&&ap.JSONExt.deepEqual(Le.args,Jr))||null}}})(ip||(ip={}));var Dm=class Ft extends Uo{constructor(Ae){super({node:bd.createNode()}),this._childIndex=-1,this._activeIndex=-1,this._openTimerID=0,this._closeTimerID=0,this._items=[],this._childMenu=null,this._parentMenu=null,this._aboutToClose=new lc(this),this._menuRequested=new lc(this),this.addClass("lm-Menu"),this.setFlag(Uo.Flag.DisallowLayout),this.commands=Ae.commands,this.renderer=Ae.renderer||Ft.defaultRenderer}dispose(){this.close(),this._items.length=0,super.dispose()}get aboutToClose(){return this._aboutToClose}get menuRequested(){return this._menuRequested}get parentMenu(){return this._parentMenu}get childMenu(){return this._childMenu}get rootMenu(){let Ae=this;for(;Ae._parentMenu;)Ae=Ae._parentMenu;return Ae}get leafMenu(){let Ae=this;for(;Ae._childMenu;)Ae=Ae._childMenu;return Ae}get contentNode(){return this.node.getElementsByClassName("lm-Menu-content")[0]}get activeItem(){return this._items[this._activeIndex]||null}set activeItem(Ae){this.activeIndex=Ae?this._items.indexOf(Ae):-1}get activeIndex(){return this._activeIndex}set activeIndex(Ae){(Ae<0||Ae>=this._items.length)&&(Ae=-1),Ae!==-1&&!bd.canActivate(this._items[Ae])&&(Ae=-1),this._activeIndex!==Ae&&(this._activeIndex=Ae,this._activeIndex>=0&&this.contentNode.childNodes[this._activeIndex]&&this.contentNode.childNodes[this._activeIndex].focus(),this.update())}get items(){return this._items}activateNextItem(){let Ae=this._items.length,wt=this._activeIndex,At=wt{this.activeIndex=Xr}})}rp.render(hi,this.contentNode)}onCloseRequest(Ae){this._cancelOpenTimer(),this._cancelCloseTimer(),this.activeIndex=-1;let wt=this._childMenu;wt&&(this._childIndex=-1,this._childMenu=null,wt._parentMenu=null,wt.close());let At=this._parentMenu;At&&(this._parentMenu=null,At._childIndex=-1,At._childMenu=null,At.activate()),this.isAttached&&this._aboutToClose.emit(void 0),super.onCloseRequest(Ae)}_evtKeyDown(Ae){Ae.preventDefault(),Ae.stopPropagation();let wt=Ae.keyCode;if(wt===13){this.triggerActiveItem();return}if(wt===27){this.close();return}if(wt===37){this._parentMenu?this.close():this._menuRequested.emit("previous");return}if(wt===38){this.activatePreviousItem();return}if(wt===39){let hi=this.activeItem;hi&&hi.type==="submenu"?this.triggerActiveItem():this.rootMenu._menuRequested.emit("next");return}if(wt===40){this.activateNextItem();return}let At=Ng().keyForKeydownEvent(Ae);if(!At)return;let Vt=this._activeIndex+1,rr=bd.findMnemonic(this._items,At,Vt);rr.index!==-1&&!rr.multiple?(this.activeIndex=rr.index,this.triggerActiveItem()):rr.index!==-1?this.activeIndex=rr.index:rr.auto!==-1&&(this.activeIndex=rr.auto)}_evtMouseUp(Ae){Ae.button===0&&(Ae.preventDefault(),Ae.stopPropagation(),this.triggerActiveItem())}_evtMouseMove(Ae){let wt=fo.ArrayExt.findFirstIndex(this.contentNode.children,Vt=>wc.hitTest(Vt,Ae.clientX,Ae.clientY));if(wt===this._activeIndex)return;if(this.activeIndex=wt,wt=this.activeIndex,wt===this._childIndex){this._cancelOpenTimer(),this._cancelCloseTimer();return}this._childIndex!==-1&&this._startCloseTimer(),this._cancelOpenTimer();let At=this.activeItem;!At||At.type!=="submenu"||!At.submenu||this._startOpenTimer()}_evtMouseEnter(Ae){for(let wt=this._parentMenu;wt;wt=wt._parentMenu)wt._cancelOpenTimer(),wt._cancelCloseTimer(),wt.activeIndex=wt._childIndex}_evtMouseLeave(Ae){if(this._cancelOpenTimer(),!this._childMenu){this.activeIndex=-1;return}let{clientX:wt,clientY:At}=Ae;if(wc.hitTest(this._childMenu.node,wt,At)){this._cancelCloseTimer();return}this.activeIndex=-1,this._startCloseTimer()}_evtMouseDown(Ae){this._parentMenu||(bd.hitTestMenus(this,Ae.clientX,Ae.clientY)?(Ae.preventDefault(),Ae.stopPropagation()):this.close())}_openChildMenu(Ae=!1){let wt=this.activeItem;if(!wt||wt.type!=="submenu"||!wt.submenu){this._closeChildMenu();return}let At=wt.submenu;if(At===this._childMenu)return;Ft.saveWindowData(),this._closeChildMenu(),this._childMenu=At,this._childIndex=this._activeIndex,At._parentMenu=this,Eo.sendMessage(this,Uo.Msg.UpdateRequest);let Vt=this.contentNode.children[this._activeIndex];bd.openSubmenu(At,Vt),Ae&&(At.activeIndex=-1,At.activateNextItem()),At.activate()}_closeChildMenu(){this._childMenu&&this._childMenu.close()}_startOpenTimer(){this._openTimerID===0&&(this._openTimerID=window.setTimeout(()=>{this._openTimerID=0,this._openChildMenu()},bd.TIMER_DELAY))}_startCloseTimer(){this._closeTimerID===0&&(this._closeTimerID=window.setTimeout(()=>{this._closeTimerID=0,this._closeChildMenu()},bd.TIMER_DELAY))}_cancelOpenTimer(){this._openTimerID!==0&&(clearTimeout(this._openTimerID),this._openTimerID=0)}_cancelCloseTimer(){this._closeTimerID!==0&&(clearTimeout(this._closeTimerID),this._closeTimerID=0)}static saveWindowData(){bd.saveWindowData()}};(function(Ft){class Ae{renderItem(At){let Vt=this.createItemClass(At),rr=this.createItemDataset(At),hi=this.createItemARIA(At);return uc.li({className:Vt,dataset:rr,tabindex:"0",onfocus:At.onfocus,...hi},this.renderIcon(At),this.renderLabel(At),this.renderShortcut(At),this.renderSubmenu(At))}renderIcon(At){let Vt=this.createIconClass(At);return uc.div({className:Vt},At.item.icon,At.item.iconLabel)}renderLabel(At){let Vt=this.formatLabel(At);return uc.div({className:"lm-Menu-itemLabel"},Vt)}renderShortcut(At){let Vt=this.formatShortcut(At);return uc.div({className:"lm-Menu-itemShortcut"},Vt)}renderSubmenu(At){return uc.div({className:"lm-Menu-itemSubmenuIcon"})}createItemClass(At){let Vt="lm-Menu-item";At.item.isEnabled||(Vt+=" lm-mod-disabled"),At.item.isToggled&&(Vt+=" lm-mod-toggled"),At.item.isVisible||(Vt+=" lm-mod-hidden"),At.active&&(Vt+=" lm-mod-active"),At.collapsed&&(Vt+=" lm-mod-collapsed");let rr=At.item.className;return rr&&(Vt+=` ${rr}`),Vt}createItemDataset(At){let Vt,{type:rr,command:hi,dataset:Xr}=At.item;return rr==="command"?Vt={...Xr,type:rr,command:hi}:Vt={...Xr,type:rr},Vt}createIconClass(At){let Vt="lm-Menu-itemIcon",rr=At.item.iconClass;return rr?`${Vt} ${rr}`:Vt}createItemARIA(At){let Vt={};switch(At.item.type){case"separator":Vt.role="presentation";break;case"submenu":Vt["aria-haspopup"]="true",At.item.isEnabled||(Vt["aria-disabled"]="true");break;default:At.item.isEnabled||(Vt["aria-disabled"]="true"),Vt.role="menuitem"}return Vt}formatLabel(At){let{label:Vt,mnemonic:rr}=At.item;if(rr<0||rr>=Vt.length)return Vt;let hi=Vt.slice(0,rr),Xr=Vt.slice(rr+1),ai=Vt[rr],Ti=uc.span({className:"lm-Menu-itemMnemonic"},ai);return[hi,Ti,Xr]}formatShortcut(At){let Vt=At.item.keyBinding;return Vt?tp.formatKeystroke(Vt.keys):null}}Ft.Renderer=Ae,Ft.defaultRenderer=new Ae})(Dm||(Dm={}));var bd;(function(Ft){Ft.TIMER_DELAY=300,Ft.SUBMENU_OVERLAP=3;let Ae=null,wt=0;function At(){return wt>0?(wt--,Ae):ei()}function Vt(){Ae=ei(),wt++}Ft.saveWindowData=Vt;function rr(){let Le=document.createElement("div"),Qi=document.createElement("ul");return Qi.className="lm-Menu-content",Le.appendChild(Qi),Qi.setAttribute("role","menu"),Le.tabIndex=0,Le}Ft.createNode=rr;function hi(Le){return Le.type!=="separator"&&Le.isEnabled&&Le.isVisible}Ft.canActivate=hi;function Xr(Le,Qi){return new Jr(Le.commands,Qi)}Ft.createItem=Xr;function ai(Le,Qi,En){for(let wn=Le;wn;wn=wn.childMenu)if(wc.hitTest(wn.node,Qi,En))return!0;return!1}Ft.hitTestMenus=ai;function Ti(Le){let Qi=new Array(Le.length);fo.ArrayExt.fill(Qi,!1);let En=0,wn=Le.length;for(;En=0;--Wi){let Sn=Le[Wi];if(Sn.isVisible){if(Sn.type!=="separator")break;Qi[Wi]=!0}}let gn=!1;for(;++Enza+To&&(Qi=za+To-$s),!Wi&&En+cl>Ia+Xn&&(En>Ia+Xn?En=Ia+Xn-cl:En=En-cl),Ao.transform=`translate(${Math.max(0,Qi)}px, ${Math.max(0,En)}px`,Ao.opacity="1"}Ft.openRootMenu=di;function Ei(Le,Qi){let En=At(),wn=En.pageXOffset,Wi=En.pageYOffset,gn=En.clientWidth,Sn=En.clientHeight;Eo.sendMessage(Le,Uo.Msg.UpdateRequest);let Ji=Sn,za=Le.node,Ia=za.style;Ia.opacity="0",Ia.maxHeight=`${Ji}px`,Uo.attach(Le,document.body);let{width:To,height:Xn}=za.getBoundingClientRect(),zn=wc.boxSizing(Le.node),$n=Qi.getBoundingClientRect(),Ao=$n.right-Ft.SUBMENU_OVERLAP;Ao+To>wn+gn&&(Ao=$n.left+Ft.SUBMENU_OVERLAP-To);let $s=$n.top-zn.borderTop-zn.paddingTop;$s+Xn>Wi+Sn&&($s=$n.bottom+zn.borderBottom+zn.paddingBottom-Xn),Ia.transform=`translate(${Math.max(0,Ao)}px, ${Math.max(0,$s)}px`,Ia.opacity="1"}Ft.openSubmenu=Ei;function pi(Le,Qi,En){let wn=-1,Wi=-1,gn=!1,Sn=Qi.toUpperCase();for(let Ji=0,za=Le.length;Ji=0&&znwn.command===Qi&&ap.JSONExt.deepEqual(wn.args,En))||null}return null}}})(bd||(bd={}));var kS;(function(Ft){function Ae(hi,Xr){let ai=At(hi.selector),Ti=hi.rank!==void 0?hi.rank:1/0;return{...hi,selector:ai,rank:Ti,id:Xr}}Ft.createItem=Ae;function wt(hi,Xr,ai,Ti){let ei=Xr.target;if(!ei)return null;let di=Xr.currentTarget;if(!di||!di.contains(ei)&&(ei=document.elementFromPoint(Xr.clientX,Xr.clientY),!ei||!di.contains(ei)))return null;let Ei=[],pi=hi.slice();for(;ei!==null;){let Jr=[];for(let Le=0,Qi=pi.length;Le=this._titles.length)&&(Ae=-1),this._currentIndex===Ae)return;let wt=this._currentIndex,At=this._titles[wt]||null,Vt=Ae,rr=this._titles[Vt]||null;this._currentIndex=Vt,this._previousTitle=At,this.update(),this._currentChanged.emit({previousIndex:wt,previousTitle:At,currentIndex:Vt,currentTitle:rr})}get name(){return this._name}set name(Ae){this._name=Ae,Ae?this.contentNode.setAttribute("aria-label",Ae):this.contentNode.removeAttribute("aria-label")}get orientation(){return this._orientation}set orientation(Ae){this._orientation!==Ae&&(this._releaseMouse(),this._orientation=Ae,this.dataset.orientation=Ae,this.contentNode.setAttribute("aria-orientation",Ae))}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(Ae){this._addButtonEnabled!==Ae&&(this._addButtonEnabled=Ae,Ae?this.addButtonNode.classList.remove("lm-mod-hidden"):this.addButtonNode.classList.add("lm-mod-hidden"))}get titles(){return this._titles}get contentNode(){return this.node.getElementsByClassName("lm-TabBar-content")[0]}get addButtonNode(){return this.node.getElementsByClassName("lm-TabBar-addButton")[0]}addTab(Ae){return this.insertTab(this._titles.length,Ae)}insertTab(Ae,wt){this._releaseMouse();let At=Gd.asTitle(wt),Vt=this._titles.indexOf(At),rr=Math.max(0,Math.min(Ae,this._titles.length));return Vt===-1?(fo.ArrayExt.insert(this._titles,rr,At),At.changed.connect(this._onTitleChanged,this),this.update(),this._adjustCurrentForInsert(rr,At),At):(rr===this._titles.length&&rr--,Vt===rr||(fo.ArrayExt.move(this._titles,Vt,rr),this.update(),this._adjustCurrentForMove(Vt,rr)),At)}removeTab(Ae){this.removeTabAt(this._titles.indexOf(Ae))}removeTabAt(Ae){this._releaseMouse();let wt=fo.ArrayExt.removeAt(this._titles,Ae);wt&&(wt.changed.disconnect(this._onTitleChanged,this),wt===this._previousTitle&&(this._previousTitle=null),this.update(),this._adjustCurrentForRemove(Ae,wt))}clearTabs(){if(this._titles.length===0)return;this._releaseMouse();for(let At of this._titles)At.changed.disconnect(this._onTitleChanged,this);let Ae=this.currentIndex,wt=this.currentTitle;this._currentIndex=-1,this._previousTitle=null,this._titles.length=0,this.update(),Ae!==-1&&this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:-1,currentTitle:null})}releaseMouse(){this._releaseMouse()}handleEvent(Ae){switch(Ae.type){case"pointerdown":this._evtPointerDown(Ae);break;case"pointermove":this._evtPointerMove(Ae);break;case"pointerup":this._evtPointerUp(Ae);break;case"dblclick":this._evtDblClick(Ae);break;case"keydown":Ae.eventPhase===Event.CAPTURING_PHASE?this._evtKeyDownCapturing(Ae):this._evtKeyDown(Ae);break;case"contextmenu":Ae.preventDefault(),Ae.stopPropagation();break}}onBeforeAttach(Ae){this.node.addEventListener("pointerdown",this),this.node.addEventListener("dblclick",this),this.node.addEventListener("keydown",this)}onAfterDetach(Ae){this.node.removeEventListener("pointerdown",this),this.node.removeEventListener("dblclick",this),this.node.removeEventListener("keydown",this),this._releaseMouse()}onUpdateRequest(Ae){var wt;let At=this._titles,Vt=this.renderer,rr=this.currentTitle,hi=new Array(At.length),Xr=(wt=this._getCurrentTabindex())!==null&&wt!==void 0?wt:this._currentIndex>-1?this._currentIndex:0;for(let ai=0,Ti=At.length;aiwc.hitTest(hi,Ae.clientX,Ae.clientY));if(At===-1)return;let Vt=this.titles[At],rr=wt[At].querySelector(".lm-TabBar-tabLabel");if(rr&&rr.contains(Ae.target)){let hi=Vt.label||"",Xr=rr.innerHTML;rr.innerHTML="";let ai=document.createElement("input");ai.classList.add("lm-TabBar-tabInput"),ai.value=hi,rr.appendChild(ai);let Ti=()=>{ai.removeEventListener("blur",Ti),rr.innerHTML=Xr,this.node.addEventListener("keydown",this)};ai.addEventListener("dblclick",ei=>ei.stopPropagation()),ai.addEventListener("blur",Ti),ai.addEventListener("keydown",ei=>{ei.key==="Enter"?(ai.value!==""&&(Vt.label=Vt.caption=ai.value),Ti()):ei.key==="Escape"&&Ti()}),this.node.removeEventListener("keydown",this),ai.select(),ai.focus(),rr.children.length>0&&rr.children[0].focus()}}_evtKeyDownCapturing(Ae){Ae.eventPhase===Event.CAPTURING_PHASE&&(Ae.preventDefault(),Ae.stopPropagation(),Ae.key==="Escape"&&this._releaseMouse())}_evtKeyDown(Ae){var wt,At,Vt;if(!(Ae.key==="Tab"||Ae.eventPhase===Event.CAPTURING_PHASE)){if(Ae.key==="Enter"||Ae.key==="Spacebar"||Ae.key===" "){let rr=document.activeElement;if(this.addButtonEnabled&&this.addButtonNode.contains(rr))Ae.preventDefault(),Ae.stopPropagation(),this._addRequested.emit();else{let hi=fo.ArrayExt.findFirstIndex(this.contentNode.children,Xr=>Xr.contains(rr));hi>=0&&(Ae.preventDefault(),Ae.stopPropagation(),this.currentIndex=hi)}}else if(mB.includes(Ae.key)){let rr=[...this.contentNode.children];if(this.addButtonEnabled&&rr.push(this.addButtonNode),rr.length<=1)return;Ae.preventDefault(),Ae.stopPropagation();let hi=rr.indexOf(document.activeElement);hi===-1&&(hi=this._currentIndex);let Xr;Ae.key==="ArrowRight"&&this._orientation==="horizontal"||Ae.key==="ArrowDown"&&this._orientation==="vertical"?Xr=(wt=rr[hi+1])!==null&&wt!==void 0?wt:rr[0]:Ae.key==="ArrowLeft"&&this._orientation==="horizontal"||Ae.key==="ArrowUp"&&this._orientation==="vertical"?Xr=(At=rr[hi-1])!==null&&At!==void 0?At:rr[rr.length-1]:Ae.key==="Home"?Xr=rr[0]:Ae.key==="End"&&(Xr=rr[rr.length-1]),Xr&&((Vt=rr[hi])===null||Vt===void 0||Vt.setAttribute("tabindex","-1"),Xr?.setAttribute("tabindex","0"),Xr.focus())}}}_evtPointerDown(Ae){if(Ae.button!==0&&Ae.button!==1||this._dragData||Ae.target.classList.contains("lm-TabBar-tabInput"))return;let wt=this.addButtonEnabled&&this.addButtonNode.contains(Ae.target),At=this.contentNode.children,Vt=fo.ArrayExt.findFirstIndex(At,hi=>wc.hitTest(hi,Ae.clientX,Ae.clientY));if(Vt===-1&&!wt||(Ae.preventDefault(),Ae.stopPropagation(),this._dragData={tab:At[Vt],index:Vt,pressX:Ae.clientX,pressY:Ae.clientY,tabPos:-1,tabSize:-1,tabPressPos:-1,targetIndex:-1,tabLayout:null,contentRect:null,override:null,dragActive:!1,dragAborted:!1,detachRequested:!1},this.document.addEventListener("pointerup",this,!0),Ae.button===1||wt))return;let rr=At[Vt].querySelector(this.renderer.closeIconSelector);rr&&rr.contains(Ae.target)||(this.tabsMovable&&(this.document.addEventListener("pointermove",this,!0),this.document.addEventListener("keydown",this,!0),this.document.addEventListener("contextmenu",this,!0)),this.allowDeselect&&this.currentIndex===Vt?this.currentIndex=-1:this.currentIndex=Vt,this.currentIndex!==-1&&this._tabActivateRequested.emit({index:this.currentIndex,title:this.currentTitle}))}_evtPointerMove(Ae){let wt=this._dragData;if(!wt)return;Ae.preventDefault(),Ae.stopPropagation();let At=this.contentNode.children;if(!(!wt.dragActive&&!Gd.dragExceeded(wt,Ae))){if(!wt.dragActive){let Vt=wt.tab.getBoundingClientRect();this._orientation==="horizontal"?(wt.tabPos=wt.tab.offsetLeft,wt.tabSize=Vt.width,wt.tabPressPos=wt.pressX-Vt.left):(wt.tabPos=wt.tab.offsetTop,wt.tabSize=Vt.height,wt.tabPressPos=wt.pressY-Vt.top),wt.tabPressOffset={x:wt.pressX-Vt.left,y:wt.pressY-Vt.top},wt.tabLayout=Gd.snapTabLayout(At,this._orientation),wt.contentRect=this.contentNode.getBoundingClientRect(),wt.override=xd.overrideCursor("default"),wt.tab.classList.add("lm-mod-dragging"),this.addClass("lm-mod-dragging"),wt.dragActive=!0}if(!wt.detachRequested&&Gd.detachExceeded(wt,Ae)){wt.detachRequested=!0;let Vt=wt.index,rr=Ae.clientX,hi=Ae.clientY,Xr=At[Vt],ai=this._titles[Vt];if(this._tabDetachRequested.emit({index:Vt,title:ai,tab:Xr,clientX:rr,clientY:hi,offset:wt.tabPressOffset}),wt.dragAborted)return}Gd.layoutTabs(At,wt,Ae,this._orientation)}}_evtPointerUp(Ae){if(Ae.button!==0&&Ae.button!==1)return;let wt=this._dragData;if(!wt)return;if(Ae.preventDefault(),Ae.stopPropagation(),this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),!wt.dragActive){if(this._dragData=null,this.addButtonEnabled&&this.addButtonNode.contains(Ae.target)){this._addRequested.emit(void 0);return}let rr=this.contentNode.children,hi=fo.ArrayExt.findFirstIndex(rr,Ti=>wc.hitTest(Ti,Ae.clientX,Ae.clientY));if(hi!==wt.index)return;let Xr=this._titles[hi];if(!Xr.closable)return;if(Ae.button===1){this._tabCloseRequested.emit({index:hi,title:Xr});return}let ai=rr[hi].querySelector(this.renderer.closeIconSelector);if(ai&&ai.contains(Ae.target)){this._tabCloseRequested.emit({index:hi,title:Xr});return}return}if(Ae.button!==0)return;Gd.finalizeTabPosition(wt,this._orientation),wt.tab.classList.remove("lm-mod-dragging");let At=Gd.parseTransitionDuration(wt.tab);setTimeout(()=>{if(wt.dragAborted)return;this._dragData=null,Gd.resetTabPositions(this.contentNode.children,this._orientation),wt.override.dispose(),this.removeClass("lm-mod-dragging");let Vt=wt.index,rr=wt.targetIndex;rr===-1||Vt===rr||(fo.ArrayExt.move(this._titles,Vt,rr),this._adjustCurrentForMove(Vt,rr),this._tabMoved.emit({fromIndex:Vt,toIndex:rr,title:this._titles[rr]}),Eo.sendMessage(this,Uo.Msg.UpdateRequest))},At)}_releaseMouse(){let Ae=this._dragData;Ae&&(this._dragData=null,this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),Ae.dragAborted=!0,Ae.dragActive&&(Gd.resetTabPositions(this.contentNode.children,this._orientation),Ae.override.dispose(),Ae.tab.classList.remove("lm-mod-dragging"),this.removeClass("lm-mod-dragging")))}_adjustCurrentForInsert(Ae,wt){let At=this.currentTitle,Vt=this._currentIndex,rr=this.insertBehavior;if(rr==="select-tab"||rr==="select-tab-if-needed"&&Vt===-1){this._currentIndex=Ae,this._previousTitle=At,this._currentChanged.emit({previousIndex:Vt,previousTitle:At,currentIndex:Ae,currentTitle:wt});return}Vt>=Ae&&this._currentIndex++}_adjustCurrentForMove(Ae,wt){this._currentIndex===Ae?this._currentIndex=wt:this._currentIndex=wt?this._currentIndex++:this._currentIndex>Ae&&this._currentIndex<=wt&&this._currentIndex--}_adjustCurrentForRemove(Ae,wt){let At=this._currentIndex,Vt=this.removeBehavior;if(At!==Ae){At>Ae&&this._currentIndex--;return}if(this._titles.length===0){this._currentIndex=-1,this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:-1,currentTitle:null});return}if(Vt==="select-tab-after"){this._currentIndex=Math.min(Ae,this._titles.length-1),this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:this._currentIndex,currentTitle:this.currentTitle});return}if(Vt==="select-tab-before"){this._currentIndex=Math.max(0,Ae-1),this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:this._currentIndex,currentTitle:this.currentTitle});return}if(Vt==="select-previous-tab"){this._previousTitle?(this._currentIndex=this._titles.indexOf(this._previousTitle),this._previousTitle=null):this._currentIndex=Math.min(Ae,this._titles.length-1),this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:this._currentIndex,currentTitle:this.currentTitle});return}this._currentIndex=-1,this._currentChanged.emit({previousIndex:Ae,previousTitle:wt,currentIndex:-1,currentTitle:null})}_onTitleChanged(Ae){this.update()}};(function(Ft){class Ae{constructor(){this.closeIconSelector=".lm-TabBar-tabCloseIcon",this._tabID=0,this._tabKeys=new WeakMap,this._uuid=++Ae._nInstance}renderTab(At){let Vt=At.title.caption,rr=this.createTabKey(At),hi=rr,Xr=this.createTabStyle(At),ai=this.createTabClass(At),Ti=this.createTabDataset(At),ei=this.createTabARIA(At);return At.title.closable?uc.li({id:hi,key:rr,className:ai,title:Vt,style:Xr,dataset:Ti,...ei},this.renderIcon(At),this.renderLabel(At),this.renderCloseIcon(At)):uc.li({id:hi,key:rr,className:ai,title:Vt,style:Xr,dataset:Ti,...ei},this.renderIcon(At),this.renderLabel(At))}renderIcon(At){let{title:Vt}=At,rr=this.createIconClass(At);return uc.div({className:rr},Vt.icon,Vt.iconLabel)}renderLabel(At){return uc.div({className:"lm-TabBar-tabLabel"},At.title.label)}renderCloseIcon(At){return uc.div({className:"lm-TabBar-tabCloseIcon"})}createTabKey(At){let Vt=this._tabKeys.get(At.title);return Vt===void 0&&(Vt=`tab-key-${this._uuid}-${this._tabID++}`,this._tabKeys.set(At.title,Vt)),Vt}createTabStyle(At){return{zIndex:`${At.zIndex}`}}createTabClass(At){let Vt="lm-TabBar-tab";return At.title.className&&(Vt+=` ${At.title.className}`),At.title.closable&&(Vt+=" lm-mod-closable"),At.current&&(Vt+=" lm-mod-current"),Vt}createTabDataset(At){return At.title.dataset}createTabARIA(At){var Vt;return{role:"tab","aria-selected":At.current.toString(),tabindex:`${(Vt=At.tabIndex)!==null&&Vt!==void 0?Vt:"-1"}`}}createIconClass(At){let Vt="lm-TabBar-tabIcon",rr=At.title.iconClass;return rr?`${Vt} ${rr}`:Vt}}Ae._nInstance=0,Ft.Renderer=Ae,Ft.defaultRenderer=new Ae,Ft.addButtonSelector=".lm-TabBar-addButton"})(Hg||(Hg={}));var Gd;(function(Ft){Ft.DRAG_THRESHOLD=5,Ft.DETACH_THRESHOLD=20;function Ae(){let ei=document.createElement("div"),di=document.createElement("ul");di.setAttribute("role","tablist"),di.className="lm-TabBar-content",ei.appendChild(di);let Ei=document.createElement("div");return Ei.className="lm-TabBar-addButton lm-mod-hidden",Ei.setAttribute("tabindex","-1"),Ei.setAttribute("role","button"),ei.appendChild(Ei),ei}Ft.createNode=Ae;function wt(ei){return ei instanceof J0?ei:new J0(ei)}Ft.asTitle=wt;function At(ei){let di=window.getComputedStyle(ei);return 1e3*(parseFloat(di.transitionDuration)||0)}Ft.parseTransitionDuration=At;function Vt(ei,di){let Ei=new Array(ei.length);for(let pi=0,Jr=ei.length;pi=Ft.DRAG_THRESHOLD||pi>=Ft.DRAG_THRESHOLD}Ft.dragExceeded=rr;function hi(ei,di){let Ei=ei.contentRect;return di.clientX=Ei.right+Ft.DETACH_THRESHOLD||di.clientY=Ei.bottom+Ft.DETACH_THRESHOLD}Ft.detachExceeded=hi;function Xr(ei,di,Ei,pi){let Jr,Le,Qi,En;pi==="horizontal"?(Jr=di.pressX,Le=Ei.clientX-di.contentRect.left,Qi=Ei.clientX,En=di.contentRect.width):(Jr=di.pressY,Le=Ei.clientY-di.contentRect.top,Qi=Ei.clientY,En=di.contentRect.height);let wn=di.index,Wi=Le-di.tabPressPos,gn=Wi+di.tabSize;for(let Sn=0,Ji=ei.length;Sn>1);if(Sndi.index&&gn>To)za=`${-di.tabSize-Ia.margin}px`,wn=Math.max(wn,Sn);else if(Sn===di.index){let Xn=Qi-Jr,zn=En-(di.tabPos+di.tabSize);za=`${Math.max(-di.tabPos,Math.min(Xn,zn))}px`}else za="";pi==="horizontal"?ei[Sn].style.left=za:ei[Sn].style.top=za}di.targetIndex=wn}Ft.layoutTabs=Xr;function ai(ei,di){let Ei;di==="horizontal"?Ei=ei.contentRect.width:Ei=ei.contentRect.height;let pi;if(ei.targetIndex===ei.index)pi=0;else if(ei.targetIndex>ei.index){let Qi=ei.tabLayout[ei.targetIndex];pi=Qi.pos+Qi.size-ei.tabSize-ei.tabPos}else pi=ei.tabLayout[ei.targetIndex].pos-ei.tabPos;let Jr=Ei-(ei.tabPos+ei.tabSize),Le=Math.max(-ei.tabPos,Math.min(pi,Jr));di==="horizontal"?ei.tab.style.left=`${Le}px`:ei.tab.style.top=`${Le}px`}Ft.finalizeTabPosition=ai;function Ti(ei,di){for(let Ei of ei)di==="horizontal"?Ei.style.left="":Ei.style.top=""}Ft.resetTabPositions=Ti})(Gd||(Gd={}));var Lw=class extends op{constructor(Ae){super(),this._spacing=4,this._dirty=!1,this._root=null,this._box=null,this._items=new Map,this.renderer=Ae.renderer,Ae.spacing!==void 0&&(this._spacing=ey.clampDimension(Ae.spacing)),this._document=Ae.document||document,this._hiddenMode=Ae.hiddenMode!==void 0?Ae.hiddenMode:Uo.HiddenMode.Display}dispose(){let Ae=this[Symbol.iterator]();this._items.forEach(wt=>{wt.dispose()}),this._box=null,this._root=null,this._items.clear();for(let wt of Ae)wt.dispose();super.dispose()}get hiddenMode(){return this._hiddenMode}set hiddenMode(Ae){if(this._hiddenMode!==Ae){this._hiddenMode=Ae;for(let wt of this.tabBars())if(wt.titles.length>1)for(let At of wt.titles)At.owner.hiddenMode=this._hiddenMode}}get spacing(){return this._spacing}set spacing(Ae){Ae=ey.clampDimension(Ae),this._spacing!==Ae&&(this._spacing=Ae,this.parent&&this.parent.fit())}get isEmpty(){return this._root===null}[Symbol.iterator](){return this._root?this._root.iterAllWidgets():(0,fo.empty)()}widgets(){return this._root?this._root.iterUserWidgets():(0,fo.empty)()}selectedWidgets(){return this._root?this._root.iterSelectedWidgets():(0,fo.empty)()}tabBars(){return this._root?this._root.iterTabBars():(0,fo.empty)()}handles(){return this._root?this._root.iterHandles():(0,fo.empty)()}moveHandle(Ae,wt,At){let Vt=Ae.classList.contains("lm-mod-hidden");if(!this._root||Vt)return;let rr=this._root.findSplitNode(Ae);if(!rr)return;let hi;rr.node.orientation==="horizontal"?hi=wt-Ae.offsetLeft:hi=At-Ae.offsetTop,hi!==0&&(rr.node.holdSizes(),Fd.adjust(rr.node.sizers,rr.index,hi),this.parent&&this.parent.update())}saveLayout(){return this._root?(this._root.holdAllSizes(),{main:this._root.createConfig()}):{main:null}}restoreLayout(Ae){let wt=new Set,At;Ae.main?At=Qf.normalizeAreaConfig(Ae.main,wt):At=null;let Vt=this.widgets(),rr=this.tabBars(),hi=this.handles();this._root=null;for(let Xr of Vt)wt.has(Xr)||(Xr.parent=null);for(let Xr of rr)Xr.dispose();for(let Xr of hi)Xr.parentNode&&Xr.parentNode.removeChild(Xr);for(let Xr of wt)Xr.parent=this.parent;At?this._root=Qf.realizeAreaConfig(At,{createTabBar:Xr=>this._createTabBar(),createHandle:()=>this._createHandle()},this._document):this._root=null,this.parent&&(wt.forEach(Xr=>{this.attachWidget(Xr)}),this.parent.fit())}addWidget(Ae,wt={}){let At=wt.ref||null,Vt=wt.mode||"tab-after",rr=null;if(this._root&&At&&(rr=this._root.findTabNode(At)),At&&!rr)throw new Error("Reference widget is not in the layout.");switch(Ae.parent=this.parent,Vt){case"tab-after":this._insertTab(Ae,At,rr,!0);break;case"tab-before":this._insertTab(Ae,At,rr,!1);break;case"split-top":this._insertSplit(Ae,At,rr,"vertical",!1);break;case"split-left":this._insertSplit(Ae,At,rr,"horizontal",!1);break;case"split-right":this._insertSplit(Ae,At,rr,"horizontal",!0);break;case"split-bottom":this._insertSplit(Ae,At,rr,"vertical",!0);break;case"merge-top":this._insertSplit(Ae,At,rr,"vertical",!1,!0);break;case"merge-left":this._insertSplit(Ae,At,rr,"horizontal",!1,!0);break;case"merge-right":this._insertSplit(Ae,At,rr,"horizontal",!0,!0);break;case"merge-bottom":this._insertSplit(Ae,At,rr,"vertical",!0,!0);break}this.parent&&(this.attachWidget(Ae),this.parent.fit())}removeWidget(Ae){this._removeWidget(Ae),this.parent&&(this.detachWidget(Ae),this.parent.fit())}hitTestTabAreas(Ae,wt){if(!this._root||!this.parent||!this.parent.isVisible)return null;this._box||(this._box=wc.boxSizing(this.parent.node));let At=this.parent.node.getBoundingClientRect(),Vt=Ae-At.left-this._box.borderLeft,rr=wt-At.top-this._box.borderTop,hi=this._root.hitTestTabNodes(Vt,rr);if(!hi)return null;let{tabBar:Xr,top:ai,left:Ti,width:ei,height:di}=hi,Ei=this._box.borderLeft+this._box.borderRight,pi=this._box.borderTop+this._box.borderBottom,Jr=At.width-Ei-(Ti+ei),Le=At.height-pi-(ai+di);return{tabBar:Xr,x:Vt,y:rr,top:ai,left:Ti,right:Jr,bottom:Le,width:ei,height:di}}init(){super.init();for(let Ae of this)this.attachWidget(Ae);for(let Ae of this.handles())this.parent.node.appendChild(Ae);this.parent.fit()}attachWidget(Ae){this.parent.node!==Ae.node.parentNode&&(this._items.set(Ae,new zm(Ae)),this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.BeforeAttach),this.parent.node.appendChild(Ae.node),this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.AfterAttach))}detachWidget(Ae){if(this.parent.node!==Ae.node.parentNode)return;this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.BeforeDetach),this.parent.node.removeChild(Ae.node),this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.AfterDetach);let wt=this._items.get(Ae);wt&&(this._items.delete(Ae),wt.dispose())}onBeforeShow(Ae){super.onBeforeShow(Ae),this.parent.update()}onBeforeAttach(Ae){super.onBeforeAttach(Ae),this.parent.fit()}onChildShown(Ae){this.parent.fit()}onChildHidden(Ae){this.parent.fit()}onResize(Ae){this.parent.isVisible&&this._update(Ae.width,Ae.height)}onUpdateRequest(Ae){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(Ae){this.parent.isAttached&&this._fit()}_removeWidget(Ae){if(!this._root)return;let wt=this._root.findTabNode(Ae);if(!wt)return;if(Qf.removeAria(Ae),wt.tabBar.titles.length>1){if(wt.tabBar.removeTab(Ae.title),this._hiddenMode===Uo.HiddenMode.Scale&&wt.tabBar.titles.length==1){let Ei=wt.tabBar.titles[0].owner;Ei.hiddenMode=Uo.HiddenMode.Display}return}if(wt.tabBar.dispose(),this._root===wt){this._root=null;return}this._root.holdAllSizes();let At=wt.parent;wt.parent=null;let Vt=fo.ArrayExt.removeFirstOf(At.children,wt),rr=fo.ArrayExt.removeAt(At.handles,Vt);if(fo.ArrayExt.removeAt(At.sizers,Vt),rr.parentNode&&rr.parentNode.removeChild(rr),At.children.length>1){At.syncHandles();return}let hi=At.parent;At.parent=null;let Xr=At.children[0],ai=At.handles[0];if(At.children.length=0,At.handles.length=0,At.sizers.length=0,ai.parentNode&&ai.parentNode.removeChild(ai),this._root===At){Xr.parent=null,this._root=Xr;return}let Ti=hi,ei=Ti.children.indexOf(At);if(Xr instanceof Qf.TabLayoutNode){Xr.parent=Ti,Ti.children[ei]=Xr;return}let di=fo.ArrayExt.removeAt(Ti.handles,ei);fo.ArrayExt.removeAt(Ti.children,ei),fo.ArrayExt.removeAt(Ti.sizers,ei),di.parentNode&&di.parentNode.removeChild(di);for(let Ei=0,pi=Xr.children.length;Ei=this._left+this._width||Jr=this._top+this._height?null:this}createConfig(){let pi=this.tabBar.titles.map(Le=>Le.owner),Jr=this.tabBar.currentIndex;return{type:"tab-area",widgets:pi,currentIndex:Jr}}holdAllSizes(){}fit(pi,Jr){let Le=0,Qi=0,En=1/0,wn=1/0,Wi=Jr.get(this.tabBar),gn=this.tabBar.currentTitle,Sn=gn?Jr.get(gn.owner):void 0,[Ji,za]=this.sizers;return Wi&&Wi.fit(),Sn&&Sn.fit(),Wi&&!Wi.isHidden?(Le=Math.max(Le,Wi.minWidth),Qi+=Wi.minHeight,Ji.minSize=Wi.minHeight,Ji.maxSize=Wi.maxHeight):(Ji.minSize=0,Ji.maxSize=0),Sn&&!Sn.isHidden?(Le=Math.max(Le,Sn.minWidth),Qi+=Sn.minHeight,za.minSize=Sn.minHeight,za.maxSize=1/0):(za.minSize=0,za.maxSize=1/0),{minWidth:Le,minHeight:Qi,maxWidth:En,maxHeight:wn}}update(pi,Jr,Le,Qi,En,wn){this._top=Jr,this._left=pi,this._width=Le,this._height=Qi;let Wi=wn.get(this.tabBar),gn=this.tabBar.currentTitle,Sn=gn?wn.get(gn.owner):void 0;if(Fd.calc(this.sizers,Qi),Wi&&!Wi.isHidden){let Ji=this.sizers[0].size;Wi.update(pi,Jr,Le,Ji),Jr+=Ji}if(Sn&&!Sn.isHidden){let Ji=this.sizers[1].size;Sn.update(pi,Jr,Le,Ji)}}}Ft.TabLayoutNode=Vt;class rr{constructor(pi){this.parent=null,this.normalized=!1,this.children=[],this.sizers=[],this.handles=[],this.orientation=pi}*iterAllWidgets(){for(let pi of this.children)yield*pi.iterAllWidgets()}*iterUserWidgets(){for(let pi of this.children)yield*pi.iterUserWidgets()}*iterSelectedWidgets(){for(let pi of this.children)yield*pi.iterSelectedWidgets()}*iterTabBars(){for(let pi of this.children)yield*pi.iterTabBars()}*iterHandles(){yield*this.handles;for(let pi of this.children)yield*pi.iterHandles()}findTabNode(pi){for(let Jr=0,Le=this.children.length;JrQi.createConfig());return{type:"split-area",orientation:pi,children:Le,sizes:Jr}}syncHandles(){this.handles.forEach((pi,Jr)=>{pi.setAttribute("data-orientation",this.orientation),Jr===this.handles.length-1?pi.classList.add("lm-mod-hidden"):pi.classList.remove("lm-mod-hidden")})}holdSizes(){for(let pi of this.sizers)pi.sizeHint=pi.size}holdAllSizes(){for(let pi of this.children)pi.holdAllSizes();this.holdSizes()}normalizeSizes(){let pi=this.sizers.length;if(pi===0)return;this.holdSizes();let Jr=this.sizers.reduce((Le,Qi)=>Le+Qi.sizeHint,0);if(Jr===0)for(let Le of this.sizers)Le.size=Le.sizeHint=1/pi;else for(let Le of this.sizers)Le.size=Le.sizeHint/=Jr;this.normalized=!0}createNormalizedSizes(){let pi=this.sizers.length;if(pi===0)return[];let Jr=this.sizers.map(Qi=>Qi.size),Le=Jr.reduce((Qi,En)=>Qi+En,0);if(Le===0)for(let Qi=Jr.length-1;Qi>-1;Qi--)Jr[Qi]=1/pi;else for(let Qi=Jr.length-1;Qi>-1;Qi--)Jr[Qi]/=Le;return Jr}fit(pi,Jr){let Le=this.orientation==="horizontal",Qi=Math.max(0,this.children.length-1)*pi,En=Le?Qi:0,wn=Le?0:Qi,Wi=1/0,gn=1/0;for(let Sn=0,Ji=this.children.length;Sn=Jr.length)&&(Le=0),{type:"tab-area",widgets:Jr,currentIndex:Le}}function Ti(Ei,pi){let Jr=Ei.orientation,Le=[],Qi=[];for(let En=0,wn=Ei.children.length;En{let wn=At(Qi,pi,Jr),Wi=Ae(Ei.sizes[En]),gn=pi.createHandle();Le.children.push(wn),Le.handles.push(gn),Le.sizers.push(Wi),wn.parent=Le}),Le.syncHandles(),Le.normalizeSizes(),Le}})(Qf||(Qf={}));var c_=class Ft extends Uo{constructor(Ae={}){super(),this._drag=null,this._tabsMovable=!0,this._tabsConstrained=!1,this._addButtonEnabled=!1,this._pressData=null,this._layoutModified=new lc(this),this._addRequested=new lc(this),this.addClass("lm-DockPanel"),this._document=Ae.document||document,this._mode=Ae.mode||"multiple-document",this._renderer=Ae.renderer||Ft.defaultRenderer,this._edges=Ae.edges||Of.DEFAULT_EDGES,Ae.tabsMovable!==void 0&&(this._tabsMovable=Ae.tabsMovable),Ae.tabsConstrained!==void 0&&(this._tabsConstrained=Ae.tabsConstrained),Ae.addButtonEnabled!==void 0&&(this._addButtonEnabled=Ae.addButtonEnabled),this.dataset.mode=this._mode;let wt={createTabBar:()=>this._createTabBar(),createHandle:()=>this._createHandle()};this.layout=new Lw({document:this._document,renderer:wt,spacing:Ae.spacing,hiddenMode:Ae.hiddenMode}),this.overlay=Ae.overlay||new Ft.Overlay,this.node.appendChild(this.overlay.node)}dispose(){this._releaseMouse(),this.overlay.hide(0),this._drag&&this._drag.dispose(),super.dispose()}get hiddenMode(){return this.layout.hiddenMode}set hiddenMode(Ae){this.layout.hiddenMode=Ae}get layoutModified(){return this._layoutModified}get addRequested(){return this._addRequested}get renderer(){return this.layout.renderer}get spacing(){return this.layout.spacing}set spacing(Ae){this.layout.spacing=Ae}get mode(){return this._mode}set mode(Ae){if(this._mode===Ae)return;this._mode=Ae,this.dataset.mode=Ae;let wt=this.layout;switch(Ae){case"multiple-document":for(let At of wt.tabBars())At.show();break;case"single-document":wt.restoreLayout(Of.createSingleDocumentConfig(this));break;default:throw"unreachable"}Eo.postMessage(this,Of.LayoutModified)}get tabsMovable(){return this._tabsMovable}set tabsMovable(Ae){this._tabsMovable=Ae;for(let wt of this.tabBars())wt.tabsMovable=Ae}get tabsConstrained(){return this._tabsConstrained}set tabsConstrained(Ae){this._tabsConstrained=Ae}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(Ae){this._addButtonEnabled=Ae;for(let wt of this.tabBars())wt.addButtonEnabled=Ae}get isEmpty(){return this.layout.isEmpty}*widgets(){yield*this.layout.widgets()}*selectedWidgets(){yield*this.layout.selectedWidgets()}*tabBars(){yield*this.layout.tabBars()}*handles(){yield*this.layout.handles()}selectWidget(Ae){let wt=(0,fo.find)(this.tabBars(),At=>At.titles.indexOf(Ae.title)!==-1);if(!wt)throw new Error("Widget is not contained in the dock panel.");wt.currentTitle=Ae.title}activateWidget(Ae){this.selectWidget(Ae),Ae.activate()}saveLayout(){return this.layout.saveLayout()}restoreLayout(Ae){this._mode="multiple-document",this.layout.restoreLayout(Ae),(sd.IS_EDGE||sd.IS_IE)&&Eo.flush(),Eo.postMessage(this,Of.LayoutModified)}addWidget(Ae,wt={}){this._mode==="single-document"?this.layout.addWidget(Ae):this.layout.addWidget(Ae,wt),Eo.postMessage(this,Of.LayoutModified)}processMessage(Ae){Ae.type==="layout-modified"?this._layoutModified.emit(void 0):super.processMessage(Ae)}handleEvent(Ae){switch(Ae.type){case"lm-dragenter":this._evtDragEnter(Ae);break;case"lm-dragleave":this._evtDragLeave(Ae);break;case"lm-dragover":this._evtDragOver(Ae);break;case"lm-drop":this._evtDrop(Ae);break;case"pointerdown":this._evtPointerDown(Ae);break;case"pointermove":this._evtPointerMove(Ae);break;case"pointerup":this._evtPointerUp(Ae);break;case"keydown":this._evtKeyDown(Ae);break;case"contextmenu":Ae.preventDefault(),Ae.stopPropagation();break}}onBeforeAttach(Ae){this.node.addEventListener("lm-dragenter",this),this.node.addEventListener("lm-dragleave",this),this.node.addEventListener("lm-dragover",this),this.node.addEventListener("lm-drop",this),this.node.addEventListener("pointerdown",this)}onAfterDetach(Ae){this.node.removeEventListener("lm-dragenter",this),this.node.removeEventListener("lm-dragleave",this),this.node.removeEventListener("lm-dragover",this),this.node.removeEventListener("lm-drop",this),this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(Ae){Of.isGeneratedTabBarProperty.get(Ae.child)||Ae.child.addClass("lm-DockPanel-widget")}onChildRemoved(Ae){Of.isGeneratedTabBarProperty.get(Ae.child)||(Ae.child.removeClass("lm-DockPanel-widget"),Eo.postMessage(this,Of.LayoutModified))}_evtDragEnter(Ae){Ae.mimeData.hasData("application/vnd.lumino.widget-factory")&&(Ae.preventDefault(),Ae.stopPropagation())}_evtDragLeave(Ae){Ae.preventDefault(),!(this._tabsConstrained&&Ae.source!==this)&&(Ae.stopPropagation(),this.overlay.hide(1))}_evtDragOver(Ae){Ae.preventDefault(),this._tabsConstrained&&Ae.source!==this||this._showOverlay(Ae.clientX,Ae.clientY)==="invalid"?Ae.dropAction="none":(Ae.stopPropagation(),Ae.dropAction=Ae.proposedAction)}_evtDrop(Ae){if(Ae.preventDefault(),this.overlay.hide(0),Ae.proposedAction==="none"){Ae.dropAction="none";return}let{clientX:wt,clientY:At}=Ae,{zone:Vt,target:rr}=Of.findDropTarget(this,wt,At,this._edges);if(this._tabsConstrained&&Ae.source!==this||Vt==="invalid"){Ae.dropAction="none";return}let Xr=Ae.mimeData.getData("application/vnd.lumino.widget-factory");if(typeof Xr!="function"){Ae.dropAction="none";return}let ai=Xr();if(!(ai instanceof Uo)){Ae.dropAction="none";return}if(ai.contains(this)){Ae.dropAction="none";return}let Ti=rr?Of.getDropRef(rr.tabBar):null;switch(Vt){case"root-all":this.addWidget(ai);break;case"root-top":this.addWidget(ai,{mode:"split-top"});break;case"root-left":this.addWidget(ai,{mode:"split-left"});break;case"root-right":this.addWidget(ai,{mode:"split-right"});break;case"root-bottom":this.addWidget(ai,{mode:"split-bottom"});break;case"widget-all":this.addWidget(ai,{mode:"tab-after",ref:Ti});break;case"widget-top":this.addWidget(ai,{mode:"split-top",ref:Ti});break;case"widget-left":this.addWidget(ai,{mode:"split-left",ref:Ti});break;case"widget-right":this.addWidget(ai,{mode:"split-right",ref:Ti});break;case"widget-bottom":this.addWidget(ai,{mode:"split-bottom",ref:Ti});break;case"widget-tab":this.addWidget(ai,{mode:"tab-after",ref:Ti});break;default:throw"unreachable"}Ae.dropAction=Ae.proposedAction,Ae.stopPropagation(),this.activateWidget(ai)}_evtKeyDown(Ae){Ae.preventDefault(),Ae.stopPropagation(),Ae.keyCode===27&&(this._releaseMouse(),Eo.postMessage(this,Of.LayoutModified))}_evtPointerDown(Ae){if(Ae.button!==0)return;let wt=this.layout,At=Ae.target,Vt=(0,fo.find)(wt.handles(),ei=>ei.contains(At));if(!Vt)return;Ae.preventDefault(),Ae.stopPropagation(),this._document.addEventListener("keydown",this,!0),this._document.addEventListener("pointerup",this,!0),this._document.addEventListener("pointermove",this,!0),this._document.addEventListener("contextmenu",this,!0);let rr=Vt.getBoundingClientRect(),hi=Ae.clientX-rr.left,Xr=Ae.clientY-rr.top,ai=window.getComputedStyle(Vt),Ti=xd.overrideCursor(ai.cursor,this._document);this._pressData={handle:Vt,deltaX:hi,deltaY:Xr,override:Ti}}_evtPointerMove(Ae){if(!this._pressData)return;Ae.preventDefault(),Ae.stopPropagation();let wt=this.node.getBoundingClientRect(),At=Ae.clientX-wt.left-this._pressData.deltaX,Vt=Ae.clientY-wt.top-this._pressData.deltaY;this.layout.moveHandle(this._pressData.handle,At,Vt)}_evtPointerUp(Ae){Ae.button===0&&(Ae.preventDefault(),Ae.stopPropagation(),this._releaseMouse(),Eo.postMessage(this,Of.LayoutModified))}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._document.removeEventListener("keydown",this,!0),this._document.removeEventListener("pointerup",this,!0),this._document.removeEventListener("pointermove",this,!0),this._document.removeEventListener("contextmenu",this,!0))}_showOverlay(Ae,wt){let{zone:At,target:Vt}=Of.findDropTarget(this,Ae,wt,this._edges);if(At==="invalid")return this.overlay.hide(100),At;let rr,hi,Xr,ai,Ti=wc.boxSizing(this.node),ei=this.node.getBoundingClientRect();switch(At){case"root-all":rr=Ti.paddingTop,hi=Ti.paddingLeft,Xr=Ti.paddingRight,ai=Ti.paddingBottom;break;case"root-top":rr=Ti.paddingTop,hi=Ti.paddingLeft,Xr=Ti.paddingRight,ai=ei.height*Of.GOLDEN_RATIO;break;case"root-left":rr=Ti.paddingTop,hi=Ti.paddingLeft,Xr=ei.width*Of.GOLDEN_RATIO,ai=Ti.paddingBottom;break;case"root-right":rr=Ti.paddingTop,hi=ei.width*Of.GOLDEN_RATIO,Xr=Ti.paddingRight,ai=Ti.paddingBottom;break;case"root-bottom":rr=ei.height*Of.GOLDEN_RATIO,hi=Ti.paddingLeft,Xr=Ti.paddingRight,ai=Ti.paddingBottom;break;case"widget-all":rr=Vt.top,hi=Vt.left,Xr=Vt.right,ai=Vt.bottom;break;case"widget-top":rr=Vt.top,hi=Vt.left,Xr=Vt.right,ai=Vt.bottom+Vt.height/2;break;case"widget-left":rr=Vt.top,hi=Vt.left,Xr=Vt.right+Vt.width/2,ai=Vt.bottom;break;case"widget-right":rr=Vt.top,hi=Vt.left+Vt.width/2,Xr=Vt.right,ai=Vt.bottom;break;case"widget-bottom":rr=Vt.top+Vt.height/2,hi=Vt.left,Xr=Vt.right,ai=Vt.bottom;break;case"widget-tab":{let di=Vt.tabBar.node.getBoundingClientRect().height;rr=Vt.top,hi=Vt.left,Xr=Vt.right,ai=Vt.bottom+Vt.height-di;break}default:throw"unreachable"}return this.overlay.show({top:rr,left:hi,right:Xr,bottom:ai}),At}_createTabBar(){let Ae=this._renderer.createTabBar(this._document);return Of.isGeneratedTabBarProperty.set(Ae,!0),this._mode==="single-document"&&Ae.hide(),Ae.tabsMovable=this._tabsMovable,Ae.allowDeselect=!1,Ae.addButtonEnabled=this._addButtonEnabled,Ae.removeBehavior="select-previous-tab",Ae.insertBehavior="select-tab-if-needed",Ae.tabMoved.connect(this._onTabMoved,this),Ae.currentChanged.connect(this._onCurrentChanged,this),Ae.tabCloseRequested.connect(this._onTabCloseRequested,this),Ae.tabDetachRequested.connect(this._onTabDetachRequested,this),Ae.tabActivateRequested.connect(this._onTabActivateRequested,this),Ae.addRequested.connect(this._onTabAddRequested,this),Ae}_createHandle(){return this._renderer.createHandle()}_onTabMoved(){Eo.postMessage(this,Of.LayoutModified)}_onCurrentChanged(Ae,wt){let{previousTitle:At,currentTitle:Vt}=wt;At&&At.owner.hide(),Vt&&Vt.owner.show(),(sd.IS_EDGE||sd.IS_IE)&&Eo.flush(),Eo.postMessage(this,Of.LayoutModified)}_onTabAddRequested(Ae){this._addRequested.emit(Ae)}_onTabActivateRequested(Ae,wt){wt.title.owner.activate()}_onTabCloseRequested(Ae,wt){wt.title.owner.close()}_onTabDetachRequested(Ae,wt){if(this._drag)return;Ae.releaseMouse();let{title:At,tab:Vt,clientX:rr,clientY:hi,offset:Xr}=wt,ai=new ap.MimeData,Ti=()=>At.owner;ai.setData("application/vnd.lumino.widget-factory",Ti);let ei=Vt.cloneNode(!0);Xr&&(ei.style.top=`-${Xr.y}px`,ei.style.left=`-${Xr.x}px`),this._drag=new xd({document:this._document,mimeData:ai,dragImage:ei,proposedAction:"move",supportedActions:"move",source:this}),Vt.classList.add("lm-mod-hidden");let di=()=>{this._drag=null,Vt.classList.remove("lm-mod-hidden")};this._drag.start(rr,hi).then(di)}};(function(Ft){class Ae{constructor(){this._timer=-1,this._hidden=!0,this.node=document.createElement("div"),this.node.classList.add("lm-DockPanel-overlay"),this.node.classList.add("lm-mod-hidden"),this.node.style.position="absolute",this.node.style.contain="strict"}show(Vt){let rr=this.node.style;rr.top=`${Vt.top}px`,rr.left=`${Vt.left}px`,rr.right=`${Vt.right}px`,rr.bottom=`${Vt.bottom}px`,clearTimeout(this._timer),this._timer=-1,this._hidden&&(this._hidden=!1,this.node.classList.remove("lm-mod-hidden"))}hide(Vt){if(!this._hidden){if(Vt<=0){clearTimeout(this._timer),this._timer=-1,this._hidden=!0,this.node.classList.add("lm-mod-hidden");return}this._timer===-1&&(this._timer=window.setTimeout(()=>{this._timer=-1,this._hidden=!0,this.node.classList.add("lm-mod-hidden")},Vt))}}}Ft.Overlay=Ae;class wt{createTabBar(Vt){let rr=new Hg({document:Vt});return rr.addClass("lm-DockPanel-tabBar"),rr}createHandle(){let Vt=document.createElement("div");return Vt.className="lm-DockPanel-handle",Vt}}Ft.Renderer=wt,Ft.defaultRenderer=new wt})(c_||(c_={}));var Of;(function(Ft){Ft.GOLDEN_RATIO=.618,Ft.DEFAULT_EDGES={top:12,right:40,bottom:40,left:40},Ft.LayoutModified=new Fp("layout-modified"),Ft.isGeneratedTabBarProperty=new _d({name:"isGeneratedTabBar",create:()=>!1});function Ae(Vt){if(Vt.isEmpty)return{main:null};let rr=Array.from(Vt.widgets()),hi=Vt.selectedWidgets().next().value,Xr=hi?rr.indexOf(hi):-1;return{main:{type:"tab-area",widgets:rr,currentIndex:Xr}}}Ft.createSingleDocumentConfig=Ae;function wt(Vt,rr,hi,Xr){if(!wc.hitTest(Vt.node,rr,hi))return{zone:"invalid",target:null};let ai=Vt.layout;if(ai.isEmpty)return{zone:"root-all",target:null};if(Vt.mode==="multiple-document"){let Wi=Vt.node.getBoundingClientRect(),gn=rr-Wi.left+1,Sn=hi-Wi.top+1,Ji=Wi.right-rr,za=Wi.bottom-hi;switch(Math.min(Sn,Ji,za,gn)){case Sn:if(SnLe&&Ei>Le&&di>Qi&&pi>Qi)return{zone:"widget-all",target:Ti};ei/=Le,di/=Qi,Ei/=Le,pi/=Qi;let En=Math.min(ei,di,Ei,pi),wn;switch(En){case ei:wn="widget-left";break;case di:wn="widget-top";break;case Ei:wn="widget-right";break;case pi:wn="widget-bottom";break;default:throw"unreachable"}return{zone:wn,target:Ti}}Ft.findDropTarget=wt;function At(Vt){return Vt.titles.length===0?null:Vt.currentTitle?Vt.currentTitle.owner:Vt.titles[Vt.titles.length-1].owner}Ft.getDropRef=At})(Of||(Of={}));var ry=class Ft extends op{constructor(Ae={}){super(Ae),this._dirty=!1,this._rowSpacing=4,this._columnSpacing=4,this._items=[],this._rowStarts=[],this._columnStarts=[],this._rowSizers=[new Pv],this._columnSizers=[new Pv],this._box=null,Ae.rowCount!==void 0&&Th.reallocSizers(this._rowSizers,Ae.rowCount),Ae.columnCount!==void 0&&Th.reallocSizers(this._columnSizers,Ae.columnCount),Ae.rowSpacing!==void 0&&(this._rowSpacing=Th.clampValue(Ae.rowSpacing)),Ae.columnSpacing!==void 0&&(this._columnSpacing=Th.clampValue(Ae.columnSpacing))}dispose(){for(let Ae of this._items){let wt=Ae.widget;Ae.dispose(),wt.dispose()}this._box=null,this._items.length=0,this._rowStarts.length=0,this._rowSizers.length=0,this._columnStarts.length=0,this._columnSizers.length=0,super.dispose()}get rowCount(){return this._rowSizers.length}set rowCount(Ae){Ae!==this.rowCount&&(Th.reallocSizers(this._rowSizers,Ae),this.parent&&this.parent.fit())}get columnCount(){return this._columnSizers.length}set columnCount(Ae){Ae!==this.columnCount&&(Th.reallocSizers(this._columnSizers,Ae),this.parent&&this.parent.fit())}get rowSpacing(){return this._rowSpacing}set rowSpacing(Ae){Ae=Th.clampValue(Ae),this._rowSpacing!==Ae&&(this._rowSpacing=Ae,this.parent&&this.parent.fit())}get columnSpacing(){return this._columnSpacing}set columnSpacing(Ae){Ae=Th.clampValue(Ae),this._columnSpacing!==Ae&&(this._columnSpacing=Ae,this.parent&&this.parent.fit())}rowStretch(Ae){let wt=this._rowSizers[Ae];return wt?wt.stretch:-1}setRowStretch(Ae,wt){let At=this._rowSizers[Ae];At&&(wt=Th.clampValue(wt),At.stretch!==wt&&(At.stretch=wt,this.parent&&this.parent.update()))}columnStretch(Ae){let wt=this._columnSizers[Ae];return wt?wt.stretch:-1}setColumnStretch(Ae,wt){let At=this._columnSizers[Ae];At&&(wt=Th.clampValue(wt),At.stretch!==wt&&(At.stretch=wt,this.parent&&this.parent.update()))}*[Symbol.iterator](){for(let Ae of this._items)yield Ae.widget}addWidget(Ae){fo.ArrayExt.findFirstIndex(this._items,At=>At.widget===Ae)===-1&&(this._items.push(new zm(Ae)),this.parent&&this.attachWidget(Ae))}removeWidget(Ae){let wt=fo.ArrayExt.findFirstIndex(this._items,Vt=>Vt.widget===Ae);if(wt===-1)return;let At=fo.ArrayExt.removeAt(this._items,wt);this.parent&&this.detachWidget(Ae),At.dispose()}init(){super.init();for(let Ae of this)this.attachWidget(Ae)}attachWidget(Ae){this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.BeforeAttach),this.parent.node.appendChild(Ae.node),this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.AfterAttach),this.parent.fit()}detachWidget(Ae){this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.BeforeDetach),this.parent.node.removeChild(Ae.node),this.parent.isAttached&&Eo.sendMessage(Ae,Uo.Msg.AfterDetach),this.parent.fit()}onBeforeShow(Ae){super.onBeforeShow(Ae),this.parent.update()}onBeforeAttach(Ae){super.onBeforeAttach(Ae),this.parent.fit()}onChildShown(Ae){this.parent.fit()}onChildHidden(Ae){this.parent.fit()}onResize(Ae){this.parent.isVisible&&this._update(Ae.width,Ae.height)}onUpdateRequest(Ae){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(Ae){this.parent.isAttached&&this._fit()}_fit(){for(let ai=0,Ti=this.rowCount;ai!ai.isHidden);for(let ai=0,Ti=Ae.length;ai({row:0,column:0,rowSpan:1,columnSpan:1}),changed:Xr});function Ae(ai){let Ti=Math.max(0,Math.floor(ai.row||0)),ei=Math.max(0,Math.floor(ai.column||0)),di=Math.max(1,Math.floor(ai.rowSpan||0)),Ei=Math.max(1,Math.floor(ai.columnSpan||0));return{row:Ti,column:ei,rowSpan:di,columnSpan:Ei}}Ft.normalizeConfig=Ae;function wt(ai){return Math.max(0,Math.floor(ai))}Ft.clampValue=wt;function At(ai,Ti){let ei=Ft.cellConfigProperty.get(ai.widget),di=Ft.cellConfigProperty.get(Ti.widget);return ei.rowSpan-di.rowSpan}Ft.rowSpanCmp=At;function Vt(ai,Ti){let ei=Ft.cellConfigProperty.get(ai.widget),di=Ft.cellConfigProperty.get(Ti.widget);return ei.columnSpan-di.columnSpan}Ft.columnSpanCmp=Vt;function rr(ai,Ti){for(Ti=Math.max(1,Math.floor(Ti));ai.lengthTi&&(ai.length=Ti)}Ft.reallocSizers=rr;function hi(ai,Ti,ei,di){if(ei=di)return;let pi=(di-Ei)/(ei-Ti+1);for(let Jr=Ti;Jr<=ei;++Jr)ai[Jr].minSize+=pi}Ft.distributeMin=hi;function Xr(ai){ai.parent&&ai.parent.layout instanceof ry&&ai.parent.fit()}})(Th||(Th={}));var f_=class Ft extends Uo{constructor(Ae={}){super({node:h_.createNode()}),this._activeIndex=-1,this._tabFocusIndex=0,this._menus=[],this._childMenu=null,this._overflowMenu=null,this._menuItemSizes=[],this._overflowIndex=-1,this.addClass("lm-MenuBar"),this.setFlag(Uo.Flag.DisallowLayout),this.renderer=Ae.renderer||Ft.defaultRenderer,this._forceItemsPosition=Ae.forceItemsPosition||{forceX:!0,forceY:!0},this._overflowMenuOptions=Ae.overflowMenuOptions||{isVisible:!0}}dispose(){this._closeChildMenu(),this._menus.length=0,super.dispose()}get childMenu(){return this._childMenu}get overflowIndex(){return this._overflowIndex}get overflowMenu(){return this._overflowMenu}get contentNode(){return this.node.getElementsByClassName("lm-MenuBar-content")[0]}get activeMenu(){return this._menus[this._activeIndex]||null}set activeMenu(Ae){this.activeIndex=Ae?this._menus.indexOf(Ae):-1}get activeIndex(){return this._activeIndex}set activeIndex(Ae){(Ae<0||Ae>=this._menus.length)&&(Ae=-1),Ae>-1&&this._menus[Ae].items.length===0&&(Ae=-1),this._activeIndex!==Ae&&(this._activeIndex=Ae,this.update())}get menus(){return this._menus}openActiveMenu(){this._activeIndex!==-1&&(this._openChildMenu(),this._childMenu&&(this._childMenu.activeIndex=-1,this._childMenu.activateNextItem()))}addMenu(Ae,wt=!0){this.insertMenu(this._menus.length,Ae,wt)}insertMenu(Ae,wt,At=!0){this._closeChildMenu();let Vt=this._menus.indexOf(wt),rr=Math.max(0,Math.min(Ae,this._menus.length));if(Vt===-1){fo.ArrayExt.insert(this._menus,rr,wt),wt.addClass("lm-MenuBar-menu"),wt.aboutToClose.connect(this._onMenuAboutToClose,this),wt.menuRequested.connect(this._onMenuMenuRequested,this),wt.title.changed.connect(this._onTitleChanged,this),At&&this.update();return}rr===this._menus.length&&rr--,Vt!==rr&&(fo.ArrayExt.move(this._menus,Vt,rr),At&&this.update())}removeMenu(Ae,wt=!0){this.removeMenuAt(this._menus.indexOf(Ae),wt)}removeMenuAt(Ae,wt=!0){this._closeChildMenu();let At=fo.ArrayExt.removeAt(this._menus,Ae);At&&(At.aboutToClose.disconnect(this._onMenuAboutToClose,this),At.menuRequested.disconnect(this._onMenuMenuRequested,this),At.title.changed.disconnect(this._onTitleChanged,this),At.removeClass("lm-MenuBar-menu"),wt&&this.update())}clearMenus(){if(this._menus.length!==0){this._closeChildMenu();for(let Ae of this._menus)Ae.aboutToClose.disconnect(this._onMenuAboutToClose,this),Ae.menuRequested.disconnect(this._onMenuMenuRequested,this),Ae.title.changed.disconnect(this._onTitleChanged,this),Ae.removeClass("lm-MenuBar-menu");this._menus.length=0,this.update()}}handleEvent(Ae){switch(Ae.type){case"keydown":this._evtKeyDown(Ae);break;case"mousedown":this._evtMouseDown(Ae);break;case"mousemove":this._evtMouseMove(Ae);break;case"focusout":this._evtFocusOut(Ae);break;case"contextmenu":Ae.preventDefault(),Ae.stopPropagation();break}}onBeforeAttach(Ae){this.node.addEventListener("keydown",this),this.node.addEventListener("mousedown",this),this.node.addEventListener("mousemove",this),this.node.addEventListener("focusout",this),this.node.addEventListener("contextmenu",this)}onAfterDetach(Ae){this.node.removeEventListener("keydown",this),this.node.removeEventListener("mousedown",this),this.node.removeEventListener("mousemove",this),this.node.removeEventListener("focusout",this),this.node.removeEventListener("contextmenu",this),this._closeChildMenu()}onActivateRequest(Ae){this.isAttached&&this._focusItemAt(0)}onResize(Ae){this.update(),super.onResize(Ae)}onUpdateRequest(Ae){var wt;let At=this._menus,Vt=this.renderer,rr=this._activeIndex,hi=this._tabFocusIndex>=0&&this._tabFocusIndex-1?this._overflowIndex:At.length,ai=0,Ti=!1;Xr=this._overflowMenu!==null?Xr-1:Xr;let ei=new Array(Xr);for(let di=0;di{this._tabFocusIndex=di,this.activeIndex=di}}),ai+=this._menuItemSizes[di],At[di].title.label===this._overflowMenuOptions.title&&(Ti=!0,Xr--);if(this._overflowMenuOptions.isVisible){if(this._overflowIndex>-1&&!Ti){if(this._overflowMenu===null){let di=(wt=this._overflowMenuOptions.title)!==null&&wt!==void 0?wt:"...";this._overflowMenu=new Dm({commands:new tp}),this._overflowMenu.title.label=di,this._overflowMenu.title.mnemonic=0,this.addMenu(this._overflowMenu,!1)}for(let di=At.length-2;di>=Xr;di--){let Ei=this.menus[di];Ei.title.mnemonic=0,this._overflowMenu.insertItem(0,{type:"submenu",submenu:Ei}),this.removeMenu(Ei,!1)}ei[Xr]=Vt.renderItem({title:this._overflowMenu.title,active:Xr===rr&&At[Xr].items.length!==0,tabbable:Xr===hi,disabled:At[Xr].items.length===0,onfocus:()=>{this._tabFocusIndex=Xr,this.activeIndex=Xr}}),Xr++}else if(this._overflowMenu!==null){let di=this._overflowMenu.items,Ei=this.node.offsetWidth,pi=this._overflowMenu.items.length;for(let Jr=0;Jrthis._menuItemSizes[Le]){let Qi=di[0].submenu;this._overflowMenu.removeItemAt(0),this.insertMenu(Xr,Qi,!1),ei[Xr]=Vt.renderItem({title:Qi.title,active:!1,tabbable:Xr===hi,disabled:At[Xr].items.length===0,onfocus:()=>{this._tabFocusIndex=Xr,this.activeIndex=Xr}}),Xr++}}this._overflowMenu.items.length===0&&(this.removeMenu(this._overflowMenu,!1),ei.pop(),this._overflowMenu=null,this._overflowIndex=-1)}}rp.render(ei,this.contentNode),this._updateOverflowIndex()}_updateOverflowIndex(){if(!this._overflowMenuOptions.isVisible)return;let Ae=this.contentNode.childNodes,wt=this.node.offsetWidth,At=0,Vt=-1,rr=Ae.length;if(this._menuItemSizes.length==0)for(let hi=0;hiwt&&Vt===-1&&(Vt=hi)}else for(let hi=0;hiwt){Vt=hi;break}this._overflowIndex=Vt}_evtKeyDown(Ae){let wt=Ae.keyCode;if(wt===9){this.activeIndex=-1;return}if(Ae.preventDefault(),Ae.stopPropagation(),wt===13||wt===32||wt===38||wt===40){if(this.activeIndex=this._tabFocusIndex,this.activeIndex!==this._tabFocusIndex)return;this.openActiveMenu();return}if(wt===27){this._closeChildMenu(),this._focusItemAt(this.activeIndex);return}if(wt===37||wt===39){let hi=wt===37?-1:1,Xr=this._tabFocusIndex+hi,ai=this._menus.length;for(let Ti=0;Tiwc.hitTest(At,Ae.clientX,Ae.clientY));if(wt===-1){this._closeChildMenu();return}if(Ae.button===0)if(this._childMenu)this._closeChildMenu(),this.activeIndex=wt;else{Ae.preventDefault();let At=this._positionForMenu(wt);Dm.saveWindowData(),this.activeIndex=wt,this._openChildMenu(At)}}_evtMouseMove(Ae){let wt=fo.ArrayExt.findFirstIndex(this.contentNode.children,Vt=>wc.hitTest(Vt,Ae.clientX,Ae.clientY));if(wt===this._activeIndex||wt===-1&&this._childMenu)return;let At=wt>=0&&this._childMenu?this._positionForMenu(wt):null;Dm.saveWindowData(),this.activeIndex=wt,At&&this._openChildMenu(At)}_positionForMenu(Ae){let wt=this.contentNode.children[Ae],{left:At,bottom:Vt}=wt.getBoundingClientRect();return{top:Vt,left:At}}_evtFocusOut(Ae){!this._childMenu&&!this.node.contains(Ae.relatedTarget)&&(this.activeIndex=-1)}_focusItemAt(Ae){let wt=this.contentNode.childNodes[Ae];wt&&wt.focus()}_openChildMenu(Ae={}){let wt=this.activeMenu;if(!wt){this._closeChildMenu();return}let At=this._childMenu;if(At===wt)return;this._childMenu=wt,At?At.close():document.addEventListener("mousedown",this,!0),this._tabFocusIndex=this.activeIndex,Eo.sendMessage(this,Uo.Msg.UpdateRequest);let{left:Vt,top:rr}=Ae;(typeof Vt>"u"||typeof rr>"u")&&({left:Vt,top:rr}=this._positionForMenu(this._activeIndex)),At||this.addClass("lm-mod-active"),wt.items.length>0&&wt.open(Vt,rr,this._forceItemsPosition)}_closeChildMenu(){if(!this._childMenu)return;this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0);let Ae=this._childMenu;this._childMenu=null,Ae.close(),this.activeIndex=-1}_onMenuAboutToClose(Ae){Ae===this._childMenu&&(this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0),this._childMenu=null,this.activeIndex=-1)}_onMenuMenuRequested(Ae,wt){if(Ae!==this._childMenu)return;let At=this._activeIndex,Vt=this._menus.length;switch(wt){case"next":this.activeIndex=At===Vt-1?0:At+1;break;case"previous":this.activeIndex=At===0?Vt-1:At-1;break}this.openActiveMenu()}_onTitleChanged(){this.update()}};(function(Ft){class Ae{renderItem(At){let Vt=this.createItemClass(At),rr=this.createItemDataset(At),hi=this.createItemARIA(At);return uc.li({className:Vt,dataset:rr,...At.disabled?{}:{tabindex:At.tabbable?"0":"-1"},onfocus:At.onfocus,...hi},this.renderIcon(At),this.renderLabel(At))}renderIcon(At){let Vt=this.createIconClass(At);return uc.div({className:Vt},At.title.icon,At.title.iconLabel)}renderLabel(At){let Vt=this.formatLabel(At);return uc.div({className:"lm-MenuBar-itemLabel"},Vt)}createItemClass(At){let Vt="lm-MenuBar-item";return At.title.className&&(Vt+=` ${At.title.className}`),At.active&&!At.disabled&&(Vt+=" lm-mod-active"),Vt}createItemDataset(At){return At.title.dataset}createItemARIA(At){return{role:"menuitem","aria-haspopup":"true","aria-disabled":At.disabled?"true":"false"}}createIconClass(At){let Vt="lm-MenuBar-itemIcon",rr=At.title.iconClass;return rr?`${Vt} ${rr}`:Vt}formatLabel(At){let{label:Vt,mnemonic:rr}=At.title;if(rr<0||rr>=Vt.length)return Vt;let hi=Vt.slice(0,rr),Xr=Vt.slice(rr+1),ai=Vt[rr],Ti=uc.span({className:"lm-MenuBar-itemMnemonic"},ai);return[hi,Ti,Xr]}}Ft.Renderer=Ae,Ft.defaultRenderer=new Ae})(f_||(f_={}));var h_;(function(Ft){function Ae(){let At=document.createElement("div"),Vt=document.createElement("ul");return Vt.className="lm-MenuBar-content",At.appendChild(Vt),Vt.setAttribute("role","menubar"),At}Ft.createNode=Ae;function wt(At,Vt,rr){let hi=-1,Xr=-1,ai=!1,Ti=Vt.toUpperCase();for(let ei=0,di=At.length;ei=0&&Jr1&&this.widgets.forEach(wt=>{wt.hiddenMode=this._hiddenMode}))}dispose(){for(let Ae of this._items)Ae.dispose();this._box=null,this._items.length=0,super.dispose()}attachWidget(Ae,wt){this._hiddenMode===Uo.HiddenMode.Scale&&this._items.length>0?(this._items.length===1&&(this.widgets[0].hiddenMode=Uo.HiddenMode.Scale),wt.hiddenMode=Uo.HiddenMode.Scale):wt.hiddenMode=Uo.HiddenMode.Display,fo.ArrayExt.insert(this._items,Ae,new zm(wt)),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeAttach),this.parent.node.appendChild(wt.node),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterAttach),this.parent.fit()}moveWidget(Ae,wt,At){fo.ArrayExt.move(this._items,Ae,wt),this.parent.update()}detachWidget(Ae,wt){let At=fo.ArrayExt.removeAt(this._items,Ae);this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.BeforeDetach),this.parent.node.removeChild(wt.node),this.parent.isAttached&&Eo.sendMessage(wt,Uo.Msg.AfterDetach),At.widget.node.style.zIndex="",this._hiddenMode===Uo.HiddenMode.Scale&&(wt.hiddenMode=Uo.HiddenMode.Display,this._items.length===1&&(this._items[0].widget.hiddenMode=Uo.HiddenMode.Display)),At.dispose(),this.parent.fit()}onBeforeShow(Ae){super.onBeforeShow(Ae),this.parent.update()}onBeforeAttach(Ae){super.onBeforeAttach(Ae),this.parent.fit()}onChildShown(Ae){this.parent.fit()}onChildHidden(Ae){this.parent.fit()}onResize(Ae){this.parent.isVisible&&this._update(Ae.width,Ae.height)}onUpdateRequest(Ae){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(Ae){this.parent.isAttached&&this._fit()}_fit(){let Ae=0,wt=0;for(let rr=0,hi=this._items.length;rr{this.createGraph(this._model)})}renderModel(Ae){if(this.hasGraphElement())return Promise.resolve();this._model=Ae;let wt=Ae.data["image/png"];return wt!=null?(this.updateImage(wt),Promise.resolve()):this.createGraph(Ae)}hasGraphElement(){return this.node.querySelector(".plot-container")!==null}updateImage(Ae){this.hideGraph(),this._img_el.src="data:image/png;base64,"+Ae,this.showImage()}hideGraph(){let Ae=this.node.querySelector(".plot-container");Ae!=null&&(Ae.style.display="none")}showGraph(){let Ae=this.node.querySelector(".plot-container");Ae!=null&&(Ae.style.display="block")}hideImage(){let Ae=this.node.querySelector(".plot-img");Ae!=null&&(Ae.style.display="none")}showImage(){let Ae=this.node.querySelector(".plot-img");Ae!=null&&(Ae.style.display="block")}createGraph(Ae){let{data:wt,layout:At,frames:Vt,config:rr}=Ae.data[this._mimeType];return At.height||(At.height=360),(async()=>(Ft.Plotly===null&&(Ft.Plotly=await Promise.resolve().then(()=>Jv(DS())),Ft._resolveLoadingPlotly()),Ft.loadingPlotly))().then(()=>Ft.Plotly.react(this.node,wt,At,rr)).then(Xr=>{this.showGraph(),this.hideImage(),this.update(),Vt&&Ft.Plotly.addFrames(this.node,Vt),this.node.offsetWidth>0&&this.node.offsetHeight>0&&Ft.Plotly.toImage(Xr,{format:"png",width:this.node.offsetWidth,height:this.node.offsetHeight}).then(ai=>{let Ti=ai.split(",")[1];Ae.data["image/png"]!==Ti&&Ae.setData({data:{...Ae.data,"image/png":Ti}})}),this.node.on("plotly_webglcontextlost",()=>{let ai=Ae.data["image/png"];if(ai!=null)return this.updateImage(ai),Promise.resolve()})})}onAfterShow(Ae){this.update()}onResize(Ae){this.update()}onUpdateRequest(Ae){Ft.Plotly&&this.isVisible&&this.hasGraphElement()&&Ft.Plotly.redraw(this.node).then(()=>{Ft.Plotly.Plots.resize(this.node)})}static{this.Plotly=null}static{this.loadingPlotly=new Promise(Ae=>{Ft._resolveLoadingPlotly=Ae})}},_B={safe:!0,mimeTypes:[zS],createRenderer:Ft=>new Iw(Ft)},xB=[{id:"@jupyterlab/plotly-extension:factory",rendererFactory:_B,rank:2,dataType:"json",fileTypes:[{name:"plotly",mimeTypes:[zS],extensions:[".plotly",".plotly.json"],iconClass:yB}],documentWidgetFactoryOptions:{name:"Plotly",primaryFileType:"plotly",fileTypes:["plotly","json"],defaultFor:["plotly"]}}],bO=xB;export{zS as MIME_TYPE,Iw as RenderedPlotly,bO as default,_B as rendererFactory}; +/*! Bundled license information: + +plotly.js/dist/plotly.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + (*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! + * pad-left + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT license. + *) + (*! + * repeat-string + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + *) + (*! Bundled license information: + + native-promise-only/lib/npo.src.js: + (*! Native Promise Only + v0.8.1 (c) Kyle Simpson + MIT License: http://getify.mit-license.org + *) + + polybooljs/index.js: + (* + * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc + * @license MIT + * @preserve Project Home: https://github.com/voidqk/polybooljs + *) + + ieee754/index.js: + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + + buffer/index.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + + assert/build/internal/util/comparisons.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) + + maplibre-gl/dist/maplibre-gl.js: + (** + * MapLibre GL JS + * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt + *) + *) +*/ diff --git a/js/package-lock.json b/js/package-lock.json index 11c27e62d4..8695a00250 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1,4680 +1,5886 @@ { - "name": "js", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "dependencies": { - "lodash-es": "^4.17.21", - "plotly.js": "3.0.1" - }, - "devDependencies": { - "@types/plotly.js": "^2.33.4", - "esbuild": "^0.23.1", - "typescript": "^5.6.2" - } - }, - "node_modules/@choojs/findup": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@choojs/findup/-/findup-0.2.1.tgz", - "integrity": "sha512-YstAqNb0MCN8PjdLCDfRsBcGVRN41f3vgLvaI0IrIcBp4AqILRSS0DeWNGkicC+f/zRIPJLc+9RURVSepwvfBw==", - "dependencies": { - "commander": "^2.15.1" - }, - "bin": { - "findup": "bin/findup.js" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", - "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", - "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", - "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", - "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", - "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", - "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", - "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", - "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", - "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", - "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", - "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", - "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", - "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", - "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", - "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", - "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", - "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", - "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", - "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", - "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", - "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", - "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", - "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", - "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "peer": true, - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "peer": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "peer": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "peer": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mapbox/geojson-rewind": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", - "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", - "dependencies": { - "get-stream": "^6.0.1", - "minimist": "^1.2.6" - }, - "bin": { - "geojson-rewind": "geojson-rewind" - } - }, - "node_modules/@mapbox/geojson-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz", - "integrity": "sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw==" - }, - "node_modules/@mapbox/jsonlint-lines-primitives": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", - "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@mapbox/mapbox-gl-supported": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz", - "integrity": "sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==", - "peerDependencies": { - "mapbox-gl": ">=0.32.1 <2.0.0" - } - }, - "node_modules/@mapbox/point-geometry": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", - "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" - }, - "node_modules/@mapbox/tiny-sdf": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz", - "integrity": "sha512-cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw==" - }, - "node_modules/@mapbox/unitbezier": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz", - "integrity": "sha512-HPnRdYO0WjFjRTSwO3frz1wKaU649OBFPX3Zo/2WZvuRi6zMiRGui8SnPQiQABgqCf8YikDe5t3HViTVw1WUzA==" - }, - "node_modules/@mapbox/vector-tile": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", - "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", - "dependencies": { - "@mapbox/point-geometry": "~0.1.0" - } - }, - "node_modules/@mapbox/whoots-js": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz", - "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@maplibre/maplibre-gl-style-spec": { - "version": "20.4.0", - "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.4.0.tgz", - "integrity": "sha512-AzBy3095fTFPjDjmWpR2w6HVRAZJ6hQZUCwk5Plz6EyfnfuQW1odeW5i2Ai47Y6TBA2hQnC+azscjBSALpaWgw==", - "dependencies": { - "@mapbox/jsonlint-lines-primitives": "~2.0.2", - "@mapbox/unitbezier": "^0.0.1", - "json-stringify-pretty-compact": "^4.0.0", - "minimist": "^1.2.8", - "quickselect": "^2.0.0", - "rw": "^1.3.3", - "tinyqueue": "^3.0.0" - }, - "bin": { - "gl-style-format": "dist/gl-style-format.mjs", - "gl-style-migrate": "dist/gl-style-migrate.mjs", - "gl-style-validate": "dist/gl-style-validate.mjs" - } - }, - "node_modules/@maplibre/maplibre-gl-style-spec/node_modules/@mapbox/unitbezier": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", - "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" - }, - "node_modules/@maplibre/maplibre-gl-style-spec/node_modules/tinyqueue": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", - "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" - }, - "node_modules/@parcel/watcher": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz", - "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.0", - "@parcel/watcher-darwin-arm64": "2.5.0", - "@parcel/watcher-darwin-x64": "2.5.0", - "@parcel/watcher-freebsd-x64": "2.5.0", - "@parcel/watcher-linux-arm-glibc": "2.5.0", - "@parcel/watcher-linux-arm-musl": "2.5.0", - "@parcel/watcher-linux-arm64-glibc": "2.5.0", - "@parcel/watcher-linux-arm64-musl": "2.5.0", - "@parcel/watcher-linux-x64-glibc": "2.5.0", - "@parcel/watcher-linux-x64-musl": "2.5.0", - "@parcel/watcher-win32-arm64": "2.5.0", - "@parcel/watcher-win32-ia32": "2.5.0", - "@parcel/watcher-win32-x64": "2.5.0" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz", - "integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz", - "integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz", - "integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz", - "integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz", - "integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-musl": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz", - "integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz", - "integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz", - "integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz", - "integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz", - "integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz", - "integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz", - "integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz", - "integrity": "sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@plotly/d3": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@plotly/d3/-/d3-3.8.2.tgz", - "integrity": "sha512-wvsNmh1GYjyJfyEBPKJLTMzgf2c2bEbSIL50lmqVUi+o1NHaLPi1Lb4v7VxXXJn043BhNyrxUrWI85Q+zmjOVA==" - }, - "node_modules/@plotly/d3-sankey": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@plotly/d3-sankey/-/d3-sankey-0.7.2.tgz", - "integrity": "sha512-2jdVos1N3mMp3QW0k2q1ph7Gd6j5PY1YihBrwpkFnKqO+cqtZq3AdEYUeSGXMeLsBDQYiqTVcihYfk8vr5tqhw==", - "dependencies": { - "d3-array": "1", - "d3-collection": "1", - "d3-shape": "^1.2.0" - } - }, - "node_modules/@plotly/d3-sankey-circular": { - "version": "0.33.1", - "resolved": "https://registry.npmjs.org/@plotly/d3-sankey-circular/-/d3-sankey-circular-0.33.1.tgz", - "integrity": "sha512-FgBV1HEvCr3DV7RHhDsPXyryknucxtfnLwPtCKKxdolKyTFYoLX/ibEfX39iFYIL7DYbVeRtP43dbFcrHNE+KQ==", - "dependencies": { - "d3-array": "^1.2.1", - "d3-collection": "^1.0.4", - "d3-shape": "^1.2.0", - "elementary-circuits-directed-graph": "^1.0.4" - } - }, - "node_modules/@plotly/mapbox-gl": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/@plotly/mapbox-gl/-/mapbox-gl-1.13.4.tgz", - "integrity": "sha512-sR3/Pe5LqT/fhYgp4rT4aSFf1rTsxMbGiH6Hojc7PH36ny5Bn17iVFUjpzycafETURuFbLZUfjODO8LvSI+5zQ==", - "dependencies": { - "@mapbox/geojson-rewind": "^0.5.2", - "@mapbox/geojson-types": "^1.0.2", - "@mapbox/jsonlint-lines-primitives": "^2.0.2", - "@mapbox/mapbox-gl-supported": "^1.5.0", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/tiny-sdf": "^1.1.1", - "@mapbox/unitbezier": "^0.0.0", - "@mapbox/vector-tile": "^1.3.1", - "@mapbox/whoots-js": "^3.1.0", - "csscolorparser": "~1.0.3", - "earcut": "^2.2.2", - "geojson-vt": "^3.2.1", - "gl-matrix": "^3.2.1", - "grid-index": "^1.1.0", - "murmurhash-js": "^1.0.0", - "pbf": "^3.2.1", - "potpack": "^1.0.1", - "quickselect": "^2.0.0", - "rw": "^1.3.3", - "supercluster": "^7.1.0", - "tinyqueue": "^2.0.3", - "vt-pbf": "^3.1.1" - }, - "engines": { - "node": ">=6.4.0" - } - }, - "node_modules/@plotly/point-cluster": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/@plotly/point-cluster/-/point-cluster-3.1.9.tgz", - "integrity": "sha512-MwaI6g9scKf68Orpr1pHZ597pYx9uP8UEFXLPbsCmuw3a84obwz6pnMXGc90VhgDNeNiLEdlmuK7CPo+5PIxXw==", - "dependencies": { - "array-bounds": "^1.0.1", - "binary-search-bounds": "^2.0.4", - "clamp": "^1.0.1", - "defined": "^1.0.0", - "dtype": "^2.0.0", - "flatten-vertex-data": "^1.0.2", - "is-obj": "^1.0.1", - "math-log2": "^1.0.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0" - } - }, - "node_modules/@turf/area": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@turf/area/-/area-7.1.0.tgz", - "integrity": "sha512-w91FEe02/mQfMPRX2pXua48scFuKJ2dSVMF2XmJ6+BJfFiCPxp95I3+Org8+ZsYv93CDNKbf0oLNEPnuQdgs2g==", - "dependencies": { - "@turf/helpers": "^7.1.0", - "@turf/meta": "^7.1.0", - "@types/geojson": "^7946.0.10", - "tslib": "^2.6.2" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/bbox": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-7.1.0.tgz", - "integrity": "sha512-PdWPz9tW86PD78vSZj2fiRaB8JhUHy6piSa/QXb83lucxPK+HTAdzlDQMTKj5okRCU8Ox/25IR2ep9T8NdopRA==", - "dependencies": { - "@turf/helpers": "^7.1.0", - "@turf/meta": "^7.1.0", - "@types/geojson": "^7946.0.10", - "tslib": "^2.6.2" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/centroid": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-7.1.0.tgz", - "integrity": "sha512-1Y1b2l+ZB1CZ+ITjUCsGqC4/tSjwm/R4OUfDztVqyyCq/VvezkLmTNqvXTGXgfP0GXkpv68iCfxF5M7QdM5pJQ==", - "dependencies": { - "@turf/helpers": "^7.1.0", - "@turf/meta": "^7.1.0", - "@types/geojson": "^7946.0.10", - "tslib": "^2.6.2" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/helpers": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-7.1.0.tgz", - "integrity": "sha512-dTeILEUVeNbaEeoZUOhxH5auv7WWlOShbx7QSd4s0T4Z0/iz90z9yaVCtZOLbU89umKotwKaJQltBNO9CzVgaQ==", - "dependencies": { - "@types/geojson": "^7946.0.10", - "tslib": "^2.6.2" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/meta": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-7.1.0.tgz", - "integrity": "sha512-ZgGpWWiKz797Fe8lfRj7HKCkGR+nSJ/5aKXMyofCvLSc2PuYJs/qyyifDPWjASQQCzseJ7AlF2Pc/XQ/3XkkuA==", - "dependencies": { - "@turf/helpers": "^7.1.0", - "@types/geojson": "^7946.0.10" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "peer": true - }, - "node_modules/@types/geojson": { - "version": "7946.0.14", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.14.tgz", - "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==" - }, - "node_modules/@types/geojson-vt": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/@types/geojson-vt/-/geojson-vt-3.2.5.tgz", - "integrity": "sha512-qDO7wqtprzlpe8FfQ//ClPV9xiuoh2nkIgiouIptON9w5jvD/fA4szvP9GBlDVdJ5dldAl0kX/sy3URbWwLx0g==", - "dependencies": { - "@types/geojson": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "peer": true - }, - "node_modules/@types/less": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@types/less/-/less-3.0.6.tgz", - "integrity": "sha512-PecSzorDGdabF57OBeQO/xFbAkYWo88g4Xvnsx7LRwqLC17I7OoKtA3bQB9uXkY6UkMWCOsA8HSVpaoitscdXw==" - }, - "node_modules/@types/mapbox__point-geometry": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz", - "integrity": "sha512-mUWlSxAmYLfwnRBmgYV86tgYmMIICX4kza8YnE/eIlywGe2XoOxlpVnXWwir92xRLjwyarqwpu2EJKD2pk0IUA==" - }, - "node_modules/@types/mapbox__vector-tile": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/mapbox__vector-tile/-/mapbox__vector-tile-1.3.4.tgz", - "integrity": "sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==", - "dependencies": { - "@types/geojson": "*", - "@types/mapbox__point-geometry": "*", - "@types/pbf": "*" - } - }, - "node_modules/@types/node": { - "version": "22.8.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", - "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", - "dependencies": { - "undici-types": "~6.19.8" - } - }, - "node_modules/@types/pbf": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/pbf/-/pbf-3.0.5.tgz", - "integrity": "sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==" - }, - "node_modules/@types/plotly.js": { - "version": "2.33.4", - "resolved": "https://registry.npmjs.org/@types/plotly.js/-/plotly.js-2.33.4.tgz", - "integrity": "sha512-BzAbsJTiUQyALkkYx1D31YZ9YvcU2ag3LlE/iePMo19eDPvM30cbM2EFNIcu31n39EhXj/9G7800XLA8/rfApA==", - "dev": true - }, - "node_modules/@types/sass": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/@types/sass/-/sass-1.45.0.tgz", - "integrity": "sha512-jn7qwGFmJHwUSphV8zZneO3GmtlgLsmhs/LQyVvQbIIa+fzGMUiHI4HXJZL3FT8MJmgXWbLGiVVY7ElvHq6vDA==", - "deprecated": "This is a stub types definition. sass provides its own type definitions, so you do not need this installed.", - "dependencies": { - "sass": "*" - } - }, - "node_modules/@types/stylus": { - "version": "0.48.43", - "resolved": "https://registry.npmjs.org/@types/stylus/-/stylus-0.48.43.tgz", - "integrity": "sha512-72dv/zdhuyXWVHUXG2VTPEQdOG+oen95/DNFx2aMFFaY6LoITI6PwEqf5x31JF49kp2w9hvUzkNfTGBIeg61LQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/supercluster": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@types/supercluster/-/supercluster-7.1.3.tgz", - "integrity": "sha512-Z0pOY34GDFl3Q6hUFYf3HkTwKEE02e7QgtJppBt+beEAxnyOpJua+voGFvxINBHa06GwLFFym7gRPY2SiKIfIA==", - "dependencies": { - "@types/geojson": "*" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", - "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "peer": true - }, - "node_modules/abs-svg-path": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/abs-svg-path/-/abs-svg-path-0.1.1.tgz", - "integrity": "sha512-d8XPSGjfyzlXC3Xx891DJRyZfqk5JU0BJrDQcsWomFIV1/BIzPW5HDH5iDdWpqWaav0YVIEzT1RHTwWr0FFshA==" - }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "peer": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/almost-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/almost-equal/-/almost-equal-1.1.0.tgz", - "integrity": "sha512-0V/PkoculFl5+0Lp47JoxUcO0xSxhIBvm+BxHdD/OgXNmdRpRHCFnKVuUoWyS9EzQP+otSGv0m9Lb4yVkQBn2A==" - }, - "node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/array-bounds": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-bounds/-/array-bounds-1.0.1.tgz", - "integrity": "sha512-8wdW3ZGk6UjMPJx/glyEt0sLzzwAE1bhToPsO1W2pbpR2gULyxe3BjSiuJFheP50T/GgODVPz2fuMUmIywt8cQ==" - }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-normalize": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array-normalize/-/array-normalize-1.1.4.tgz", - "integrity": "sha512-fCp0wKFLjvSPmCn4F5Tiw4M3lpMZoHlCjfcs7nNzuj3vqQQ1/a8cgB9DXcpDSn18c+coLnaW7rqfcYCvKbyJXg==", - "dependencies": { - "array-bounds": "^1.0.0" - } - }, - "node_modules/array-range": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-range/-/array-range-1.0.1.tgz", - "integrity": "sha512-shdaI1zT3CVNL2hnx9c0JMc0ZogGaxDs5e85akgHWKYa0yVbIyp06Ind3dVkTj/uuFrzaHBOyqFzo+VV6aXgtA==" - }, - "node_modules/array-rearrange": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/array-rearrange/-/array-rearrange-2.2.2.tgz", - "integrity": "sha512-UfobP5N12Qm4Qu4fwLDIi2v6+wZsSf6snYSxAMeKhrh37YGnNWZPRmVEKc/2wfms53TLQnzfpG8wCx2Y/6NG1w==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/binary-search-bounds": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/binary-search-bounds/-/binary-search-bounds-2.0.5.tgz", - "integrity": "sha512-H0ea4Fd3lS1+sTEB2TgcLoK21lLhwEJzlQv3IN47pJS976Gx4zoWe0ak3q+uYh60ppQxg9F16Ri4tS1sfD4+jA==" - }, - "node_modules/bit-twiddle": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bit-twiddle/-/bit-twiddle-1.0.2.tgz", - "integrity": "sha512-B9UhK0DKFZhoTFcfvAzhqsjStvGJp9vYWf3+6SNTtdSQnvIgfkHbgHrg/e4+TH71N2GDu8tpmCVoyfrL1d7ntA==" - }, - "node_modules/bitmap-sdf": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/bitmap-sdf/-/bitmap-sdf-1.0.4.tgz", - "integrity": "sha512-1G3U4n5JE6RAiALMxu0p1XmeZkTeCwGKykzsLTCqVzfSDaN6S7fKnkIkfejogz+iwqBWc0UYAIKnKHNN7pSfDg==" - }, - "node_modules/bl": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", - "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", - "dependencies": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "optional": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "peer": true, - "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.1" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001675", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001675.tgz", - "integrity": "sha512-/wV1bQwPrkLiQMjaJF5yUMVM/VdRPOCU8QZ+PmG6uW6DvYSrNY1bpwHI/3mOcUosLaJCzYDi5o91IQB51ft6cg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "peer": true - }, - "node_modules/canvas-fit": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/canvas-fit/-/canvas-fit-1.5.0.tgz", - "integrity": "sha512-onIcjRpz69/Hx5bB5HGbYKUF2uC6QT6Gp+pfpGm3A7mPfcluSLV5v4Zu+oflDUwLdUw0rLIBhUbi0v8hM4FJQQ==", - "dependencies": { - "element-size": "^1.1.1" - } - }, - "node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", - "peer": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clamp": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", - "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" - }, - "node_modules/color-alpha": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/color-alpha/-/color-alpha-1.0.4.tgz", - "integrity": "sha512-lr8/t5NPozTSqli+duAN+x+no/2WaKTeWvxhHGN+aXT6AJ8vPlzLa7UriyjWak0pSC2jHol9JgjBYnnHsGha9A==", - "dependencies": { - "color-parse": "^1.3.8" - } - }, - "node_modules/color-alpha/node_modules/color-parse": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", - "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", - "dependencies": { - "color-name": "^1.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-id": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/color-id/-/color-id-1.1.0.tgz", - "integrity": "sha512-2iRtAn6dC/6/G7bBIo0uupVrIne1NsQJvJxZOBCzQOfk7jRq97feaDZ3RdzuHakRXXnHGNwglto3pqtRx1sX0g==", - "dependencies": { - "clamp": "^1.0.1" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/color-normalize": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/color-normalize/-/color-normalize-1.5.0.tgz", - "integrity": "sha512-rUT/HDXMr6RFffrR53oX3HGWkDOP9goSAQGBkUaAYKjOE2JxozccdGyufageWDlInRAjm/jYPrf/Y38oa+7obw==", - "dependencies": { - "clamp": "^1.0.1", - "color-rgba": "^2.1.1", - "dtype": "^2.0.0" - } - }, - "node_modules/color-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", - "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", - "dependencies": { - "color-name": "^1.0.0" - } - }, - "node_modules/color-rgba": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-2.1.1.tgz", - "integrity": "sha512-VaX97wsqrMwLSOR6H7rU1Doa2zyVdmShabKrPEIFywLlHoibgD3QW9Dw6fSqM4+H/LfjprDNAUUW31qEQcGzNw==", - "dependencies": { - "clamp": "^1.0.1", - "color-parse": "^1.3.8", - "color-space": "^1.14.6" - } - }, - "node_modules/color-rgba/node_modules/color-parse": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", - "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", - "dependencies": { - "color-name": "^1.0.0" - } - }, - "node_modules/color-space": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/color-space/-/color-space-1.16.0.tgz", - "integrity": "sha512-A6WMiFzunQ8KEPFmj02OnnoUnqhmSaHaZ/0LVFcPTdlvm8+3aMJ5x1HRHy3bDHPkovkf4sS0f4wsVvwk71fKkg==", - "dependencies": { - "hsluv": "^0.0.3", - "mumath": "^3.3.4" - } - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/country-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/country-regex/-/country-regex-1.1.0.tgz", - "integrity": "sha512-iSPlClZP8vX7MC3/u6s3lrDuoQyhQukh5LyABJ3hvfzbQ3Yyayd4fp04zjLnfi267B/B2FkumcWWgrbban7sSA==" - }, - "node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css-font": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-font/-/css-font-1.2.0.tgz", - "integrity": "sha512-V4U4Wps4dPDACJ4WpgofJ2RT5Yqwe1lEH6wlOOaIxMi0gTjdIijsc5FmxQlZ7ZZyKQkkutqqvULOp07l9c7ssA==", - "dependencies": { - "css-font-size-keywords": "^1.0.0", - "css-font-stretch-keywords": "^1.0.1", - "css-font-style-keywords": "^1.0.1", - "css-font-weight-keywords": "^1.0.0", - "css-global-keywords": "^1.0.1", - "css-system-font-keywords": "^1.0.0", - "pick-by-alias": "^1.2.0", - "string-split-by": "^1.0.0", - "unquote": "^1.1.0" - } - }, - "node_modules/css-font-size-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", - "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==" - }, - "node_modules/css-font-stretch-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", - "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==" - }, - "node_modules/css-font-style-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", - "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==" - }, - "node_modules/css-font-weight-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", - "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==" - }, - "node_modules/css-global-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-global-keywords/-/css-global-keywords-1.0.1.tgz", - "integrity": "sha512-X1xgQhkZ9n94WDwntqst5D/FKkmiU0GlJSFZSV3kLvyJ1WC5VeyoXDOuleUD+SIuH9C7W05is++0Woh0CGfKjQ==" - }, - "node_modules/css-loader": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-7.1.2.tgz", - "integrity": "sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==", - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">= 18.12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.27.0" - }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } - } - }, - "node_modules/css-system-font-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", - "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==" - }, - "node_modules/csscolorparser": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz", - "integrity": "sha512-umPSgYwZkdFoUrH5hIq5kf0wPSXiro51nPw0j2K/c83KflkPSTBGMz6NJvMB+07VlL0y7VPo6QJcDjcgKTTm3w==" - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/d": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", - "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", - "dependencies": { - "es5-ext": "^0.10.64", - "type": "^2.7.2" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/d3-array": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", - "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==" - }, - "node_modules/d3-collection": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", - "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" - }, - "node_modules/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", - "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" - }, - "node_modules/d3-force": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", - "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", - "dependencies": { - "d3-collection": "1", - "d3-dispatch": "1", - "d3-quadtree": "1", - "d3-timer": "1" - } - }, - "node_modules/d3-format": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", - "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==" - }, - "node_modules/d3-geo": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.12.1.tgz", - "integrity": "sha512-XG4d1c/UJSEX9NfU02KwBL6BYPj8YKHxgBEw5om2ZnTRSbIcego6dhHwcxuSR3clxh0EpE38os1DVPOmnYtTPg==", - "dependencies": { - "d3-array": "1" - } - }, - "node_modules/d3-geo-projection": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/d3-geo-projection/-/d3-geo-projection-2.9.0.tgz", - "integrity": "sha512-ZULvK/zBn87of5rWAfFMc9mJOipeSo57O+BBitsKIXmU4rTVAnX1kSsJkE0R+TxY8pGNoM1nbyRRE7GYHhdOEQ==", - "dependencies": { - "commander": "2", - "d3-array": "1", - "d3-geo": "^1.12.0", - "resolve": "^1.1.10" - }, - "bin": { - "geo2svg": "bin/geo2svg", - "geograticule": "bin/geograticule", - "geoproject": "bin/geoproject", - "geoquantize": "bin/geoquantize", - "geostitch": "bin/geostitch" - } - }, - "node_modules/d3-hierarchy": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz", - "integrity": "sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==" - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-path": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" - }, - "node_modules/d3-quadtree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", - "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==" - }, - "node_modules/d3-shape": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", - "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "dependencies": { - "d3-path": "1" - } - }, - "node_modules/d3-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", - "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" - }, - "node_modules/d3-time-format": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.3.0.tgz", - "integrity": "sha512-guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ==", - "dependencies": { - "d3-time": "1" - } - }, - "node_modules/d3-timer": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", - "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" - }, - "node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/detect-kerning": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-kerning/-/detect-kerning-2.1.2.tgz", - "integrity": "sha512-I3JIbrnKPAntNLl1I6TpSQQdQ4AutYzv/sKMFKbepawV/hlH0GmYKhUoOEMd4xqaUHT+Bm0f4127lh5qs1m1tw==" - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "optional": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/draw-svg-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/draw-svg-path/-/draw-svg-path-1.0.0.tgz", - "integrity": "sha512-P8j3IHxcgRMcY6sDzr0QvJDLzBnJJqpTG33UZ2Pvp8rw0apCHhJCWqYprqrXjrgHnJ6tuhP1iTJSAodPDHxwkg==", - "dependencies": { - "abs-svg-path": "~0.1.1", - "normalize-svg-path": "~0.1.0" - } - }, - "node_modules/dtype": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dtype/-/dtype-2.0.0.tgz", - "integrity": "sha512-s2YVcLKdFGS0hpFqJaTwscsyt0E8nNFdmo73Ocd81xNPj4URI4rj6D60A+vFMIw7BXWlb4yRkEwfBqcZzPGiZg==", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/dup": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dup/-/dup-1.0.0.tgz", - "integrity": "sha512-Bz5jxMMC0wgp23Zm15ip1x8IhYRqJvF3nFC0UInJUDkN1z4uNPk9jTnfCUJXbOGiQ1JbXLQsiV41Fb+HXcj5BA==" - }, - "node_modules/duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dependencies": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "node_modules/earcut": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", - "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "node_modules/electron-to-chromium": { - "version": "1.5.49", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.49.tgz", - "integrity": "sha512-ZXfs1Of8fDb6z7WEYZjXpgIRF6MEu8JdeGA0A40aZq6OQbS+eJpnnV49epZRna2DU/YsEjSQuGtQPPtvt6J65A==", - "peer": true - }, - "node_modules/element-size": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/element-size/-/element-size-1.1.1.tgz", - "integrity": "sha512-eaN+GMOq/Q+BIWy0ybsgpcYImjGIdNLyjLFJU4XsLHXYQao5jCNb36GyN6C2qwmDDYSfIBmKpPpr4VnBdLCsPQ==" - }, - "node_modules/elementary-circuits-directed-graph": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/elementary-circuits-directed-graph/-/elementary-circuits-directed-graph-1.3.1.tgz", - "integrity": "sha512-ZEiB5qkn2adYmpXGnJKkxT8uJHlW/mxmBpmeqawEHzPxh9HkLD4/1mFYX5l0On+f6rcPIt8/EWlRU2Vo3fX6dQ==", - "dependencies": { - "strongly-connected-components": "^1.0.1" - } - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", - "peer": true - }, - "node_modules/es5-ext": { - "version": "0.10.64", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", - "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", - "hasInstallScript": true, - "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "esniff": "^2.0.1", - "next-tick": "^1.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/es6-symbol": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", - "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", - "dependencies": { - "d": "^1.0.2", - "ext": "^1.7.0" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/esbuild": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", - "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.1", - "@esbuild/android-arm": "0.23.1", - "@esbuild/android-arm64": "0.23.1", - "@esbuild/android-x64": "0.23.1", - "@esbuild/darwin-arm64": "0.23.1", - "@esbuild/darwin-x64": "0.23.1", - "@esbuild/freebsd-arm64": "0.23.1", - "@esbuild/freebsd-x64": "0.23.1", - "@esbuild/linux-arm": "0.23.1", - "@esbuild/linux-arm64": "0.23.1", - "@esbuild/linux-ia32": "0.23.1", - "@esbuild/linux-loong64": "0.23.1", - "@esbuild/linux-mips64el": "0.23.1", - "@esbuild/linux-ppc64": "0.23.1", - "@esbuild/linux-riscv64": "0.23.1", - "@esbuild/linux-s390x": "0.23.1", - "@esbuild/linux-x64": "0.23.1", - "@esbuild/netbsd-x64": "0.23.1", - "@esbuild/openbsd-arm64": "0.23.1", - "@esbuild/openbsd-x64": "0.23.1", - "@esbuild/sunos-x64": "0.23.1", - "@esbuild/win32-arm64": "0.23.1", - "@esbuild/win32-ia32": "0.23.1", - "@esbuild/win32-x64": "0.23.1" - } - }, - "node_modules/esbuild-style-plugin": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/esbuild-style-plugin/-/esbuild-style-plugin-1.6.3.tgz", - "integrity": "sha512-XPEKf4FjLjEVLv/dJH4UxDzXCrFHYpD93DBO8B+izdZARW5b7nNKQbnKv3J+7VDWJbgCU+hzfgIh2AuIZzlmXQ==", - "dependencies": { - "@types/less": "^3.0.3", - "@types/sass": "^1.43.1", - "@types/stylus": "^0.48.38", - "glob": "^10.2.2", - "postcss": "^8.4.31", - "postcss-modules": "^6.0.0" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "peer": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esniff": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", - "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", - "dependencies": { - "d": "^1.0.1", - "es5-ext": "^0.10.62", - "event-emitter": "^0.3.5", - "type": "^2.7.2" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "peer": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "dependencies": { - "type": "^2.7.2" - } - }, - "node_modules/falafel": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.5.tgz", - "integrity": "sha512-HuC1qF9iTnHDnML9YZAdCDQwT0yKl/U55K4XSUXqGAA2GLoafFgWRqdAbhWJxXaYD4pyoVxAJ8wH670jMpI9DQ==", - "dependencies": { - "acorn": "^7.1.1", - "isarray": "^2.0.1" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "peer": true - }, - "node_modules/fast-isnumeric": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/fast-isnumeric/-/fast-isnumeric-1.1.4.tgz", - "integrity": "sha512-1mM8qOr2LYz8zGaUdmiqRDiuue00Dxjgcb1NQR7TnhLVh6sQyngP9xvLo7Sl7LZpP/sk5eb+bcyWXw530NTBZw==", - "dependencies": { - "is-string-blank": "^1.0.1" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "peer": true - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "optional": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatten-vertex-data": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten-vertex-data/-/flatten-vertex-data-1.0.2.tgz", - "integrity": "sha512-BvCBFK2NZqerFTdMDgqfHBwxYWnxeCkwONsw6PvBMcUXqo8U/KDWwmXhqx1x2kLIg7DqIsJfOaJFOmlua3Lxuw==", - "dependencies": { - "dtype": "^2.0.0" - } - }, - "node_modules/font-atlas": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/font-atlas/-/font-atlas-2.1.0.tgz", - "integrity": "sha512-kP3AmvX+HJpW4w3d+PiPR2X6E1yvsBXt2yhuCw+yReO9F1WYhvZwx3c95DGZGwg9xYzDGrgJYa885xmVA+28Cg==", - "dependencies": { - "css-font": "^1.0.0" - } - }, - "node_modules/font-measure": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/font-measure/-/font-measure-1.2.2.tgz", - "integrity": "sha512-mRLEpdrWzKe9hbfaF3Qpr06TAjquuBVP5cHy4b3hyeNdjc9i0PO6HniGsX5vjL5OWv7+Bd++NiooNpT/s8BvIA==", - "dependencies": { - "css-font": "^1.2.0" - } - }, - "node_modules/foreground-child": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/generic-names": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/generic-names/-/generic-names-4.0.0.tgz", - "integrity": "sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==", - "dependencies": { - "loader-utils": "^3.2.0" - } - }, - "node_modules/geojson-vt": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz", - "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg==" - }, - "node_modules/get-canvas-context": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-canvas-context/-/get-canvas-context-1.0.2.tgz", - "integrity": "sha512-LnpfLf/TNzr9zVOGiIY6aKCz8EKuXmlYNV7CM2pUjBa/B+c2I15tS7KLySep75+FuerJdmArvJLcsAXWEy2H0A==" - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gl-mat4": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.2.0.tgz", - "integrity": "sha512-sT5C0pwB1/e9G9AvAoLsoaJtbMGjfd/jfxo8jMCKqYYEnjZuFvqV5rehqar0538EmssjdDeiEWnKyBSTw7quoA==" - }, - "node_modules/gl-matrix": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", - "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" - }, - "node_modules/gl-text": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.4.0.tgz", - "integrity": "sha512-o47+XBqLCj1efmuNyCHt7/UEJmB9l66ql7pnobD6p+sgmBUdzfMZXIF0zD2+KRfpd99DJN+QXdvTFAGCKCVSmQ==", - "dependencies": { - "bit-twiddle": "^1.0.2", - "color-normalize": "^1.5.0", - "css-font": "^1.2.0", - "detect-kerning": "^2.1.2", - "es6-weak-map": "^2.0.3", - "flatten-vertex-data": "^1.0.2", - "font-atlas": "^2.1.0", - "font-measure": "^1.2.2", - "gl-util": "^3.1.2", - "is-plain-obj": "^1.1.0", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "parse-unit": "^1.0.1", - "pick-by-alias": "^1.2.0", - "regl": "^2.0.0", - "to-px": "^1.0.1", - "typedarray-pool": "^1.1.0" - } - }, - "node_modules/gl-util": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/gl-util/-/gl-util-3.1.3.tgz", - "integrity": "sha512-dvRTggw5MSkJnCbh74jZzSoTOGnVYK+Bt+Ckqm39CVcl6+zSsxqWk4lr5NKhkqXHL6qvZAU9h17ZF8mIskY9mA==", - "dependencies": { - "is-browser": "^2.0.1", - "is-firefox": "^1.0.3", - "is-plain-obj": "^1.1.0", - "number-is-integer": "^1.0.1", - "object-assign": "^4.1.0", - "pick-by-alias": "^1.2.0", - "weak-map": "^1.0.5" - } - }, - "node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "peer": true - }, - "node_modules/global-prefix": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz", - "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==", - "dependencies": { - "ini": "^4.1.3", - "kind-of": "^6.0.3", - "which": "^4.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/glsl-inject-defines": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/glsl-inject-defines/-/glsl-inject-defines-1.0.3.tgz", - "integrity": "sha512-W49jIhuDtF6w+7wCMcClk27a2hq8znvHtlGnrYkSWEr8tHe9eA2dcnohlcAmxLYBSpSSdzOkRdyPTrx9fw49+A==", - "dependencies": { - "glsl-token-inject-block": "^1.0.0", - "glsl-token-string": "^1.0.1", - "glsl-tokenizer": "^2.0.2" - } - }, - "node_modules/glsl-resolve": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/glsl-resolve/-/glsl-resolve-0.0.1.tgz", - "integrity": "sha512-xxFNsfnhZTK9NBhzJjSBGX6IOqYpvBHxxmo+4vapiljyGNCY0Bekzn0firQkQrazK59c1hYxMDxYS8MDlhw4gA==", - "dependencies": { - "resolve": "^0.6.1", - "xtend": "^2.1.2" - } - }, - "node_modules/glsl-resolve/node_modules/resolve": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", - "integrity": "sha512-UHBY3viPlJKf85YijDUcikKX6tmF4SokIDp518ZDVT92JNDcG5uKIthaT/owt3Sar0lwtOafsQuwrg22/v2Dwg==" - }, - "node_modules/glsl-resolve/node_modules/xtend": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.2.0.tgz", - "integrity": "sha512-SLt5uylT+4aoXxXuwtQp5ZnMMzhDb1Xkg4pEqc00WUJCQifPfV9Ub1VrNhp9kXkrjZD2I2Hl8WnjP37jzZLPZw==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/glsl-token-assignments": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/glsl-token-assignments/-/glsl-token-assignments-2.0.2.tgz", - "integrity": "sha512-OwXrxixCyHzzA0U2g4btSNAyB2Dx8XrztY5aVUCjRSh4/D0WoJn8Qdps7Xub3sz6zE73W3szLrmWtQ7QMpeHEQ==" - }, - "node_modules/glsl-token-defines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/glsl-token-defines/-/glsl-token-defines-1.0.0.tgz", - "integrity": "sha512-Vb5QMVeLjmOwvvOJuPNg3vnRlffscq2/qvIuTpMzuO/7s5kT+63iL6Dfo2FYLWbzuiycWpbC0/KV0biqFwHxaQ==", - "dependencies": { - "glsl-tokenizer": "^2.0.0" - } - }, - "node_modules/glsl-token-depth": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/glsl-token-depth/-/glsl-token-depth-1.1.2.tgz", - "integrity": "sha512-eQnIBLc7vFf8axF9aoi/xW37LSWd2hCQr/3sZui8aBJnksq9C7zMeUYHVJWMhFzXrBU7fgIqni4EhXVW4/krpg==" - }, - "node_modules/glsl-token-descope": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glsl-token-descope/-/glsl-token-descope-1.0.2.tgz", - "integrity": "sha512-kS2PTWkvi/YOeicVjXGgX5j7+8N7e56srNDEHDTVZ1dcESmbmpmgrnpjPcjxJjMxh56mSXYoFdZqb90gXkGjQw==", - "dependencies": { - "glsl-token-assignments": "^2.0.0", - "glsl-token-depth": "^1.1.0", - "glsl-token-properties": "^1.0.0", - "glsl-token-scope": "^1.1.0" - } - }, - "node_modules/glsl-token-inject-block": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/glsl-token-inject-block/-/glsl-token-inject-block-1.1.0.tgz", - "integrity": "sha512-q/m+ukdUBuHCOtLhSr0uFb/qYQr4/oKrPSdIK2C4TD+qLaJvqM9wfXIF/OOBjuSA3pUoYHurVRNao6LTVVUPWA==" - }, - "node_modules/glsl-token-properties": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glsl-token-properties/-/glsl-token-properties-1.0.1.tgz", - "integrity": "sha512-dSeW1cOIzbuUoYH0y+nxzwK9S9O3wsjttkq5ij9ZGw0OS41BirKJzzH48VLm8qLg+au6b0sINxGC0IrGwtQUcA==" - }, - "node_modules/glsl-token-scope": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/glsl-token-scope/-/glsl-token-scope-1.1.2.tgz", - "integrity": "sha512-YKyOMk1B/tz9BwYUdfDoHvMIYTGtVv2vbDSLh94PT4+f87z21FVdou1KNKgF+nECBTo0fJ20dpm0B1vZB1Q03A==" - }, - "node_modules/glsl-token-string": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glsl-token-string/-/glsl-token-string-1.0.1.tgz", - "integrity": "sha512-1mtQ47Uxd47wrovl+T6RshKGkRRCYWhnELmkEcUAPALWGTFe2XZpH3r45XAwL2B6v+l0KNsCnoaZCSnhzKEksg==" - }, - "node_modules/glsl-token-whitespace-trim": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/glsl-token-whitespace-trim/-/glsl-token-whitespace-trim-1.0.0.tgz", - "integrity": "sha512-ZJtsPut/aDaUdLUNtmBYhaCmhIjpKNg7IgZSfX5wFReMc2vnj8zok+gB/3Quqs0TsBSX/fGnqUUYZDqyuc2xLQ==" - }, - "node_modules/glsl-tokenizer": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/glsl-tokenizer/-/glsl-tokenizer-2.1.5.tgz", - "integrity": "sha512-XSZEJ/i4dmz3Pmbnpsy3cKh7cotvFlBiZnDOwnj/05EwNp2XrhQ4XKJxT7/pDt4kp4YcpRSKz8eTV7S+mwV6MA==", - "dependencies": { - "through2": "^0.6.3" - } - }, - "node_modules/glsl-tokenizer/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "node_modules/glsl-tokenizer/node_modules/readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/glsl-tokenizer/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - }, - "node_modules/glsl-tokenizer/node_modules/through2": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", - "dependencies": { - "readable-stream": ">=1.0.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" - } - }, - "node_modules/glslify": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/glslify/-/glslify-7.1.1.tgz", - "integrity": "sha512-bud98CJ6kGZcP9Yxcsi7Iz647wuDz3oN+IZsjCRi5X1PI7t/xPKeL0mOwXJjo+CRZMqvq0CkSJiywCcY7kVYog==", - "dependencies": { - "bl": "^2.2.1", - "concat-stream": "^1.5.2", - "duplexify": "^3.4.5", - "falafel": "^2.1.0", - "from2": "^2.3.0", - "glsl-resolve": "0.0.1", - "glsl-token-whitespace-trim": "^1.0.0", - "glslify-bundle": "^5.0.0", - "glslify-deps": "^1.2.5", - "minimist": "^1.2.5", - "resolve": "^1.1.5", - "stack-trace": "0.0.9", - "static-eval": "^2.0.5", - "through2": "^2.0.1", - "xtend": "^4.0.0" - }, - "bin": { - "glslify": "bin.js" - } - }, - "node_modules/glslify-bundle": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glslify-bundle/-/glslify-bundle-5.1.1.tgz", - "integrity": "sha512-plaAOQPv62M1r3OsWf2UbjN0hUYAB7Aph5bfH58VxJZJhloRNbxOL9tl/7H71K7OLJoSJ2ZqWOKk3ttQ6wy24A==", - "dependencies": { - "glsl-inject-defines": "^1.0.1", - "glsl-token-defines": "^1.0.0", - "glsl-token-depth": "^1.1.1", - "glsl-token-descope": "^1.0.2", - "glsl-token-scope": "^1.1.1", - "glsl-token-string": "^1.0.1", - "glsl-token-whitespace-trim": "^1.0.0", - "glsl-tokenizer": "^2.0.2", - "murmurhash-js": "^1.0.0", - "shallow-copy": "0.0.1" - } - }, - "node_modules/glslify-deps": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/glslify-deps/-/glslify-deps-1.3.2.tgz", - "integrity": "sha512-7S7IkHWygJRjcawveXQjRXLO2FTjijPDYC7QfZyAQanY+yGLCFHYnPtsGT9bdyHiwPTw/5a1m1M9hamT2aBpag==", - "dependencies": { - "@choojs/findup": "^0.2.0", - "events": "^3.2.0", - "glsl-resolve": "0.0.1", - "glsl-tokenizer": "^2.0.0", - "graceful-fs": "^4.1.2", - "inherits": "^2.0.1", - "map-limit": "0.0.1", - "resolve": "^1.0.0" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/grid-index": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz", - "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==" - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/has-hover": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-hover/-/has-hover-1.0.1.tgz", - "integrity": "sha512-0G6w7LnlcpyDzpeGUTuT0CEw05+QlMuGVk1IHNAlHrGJITGodjZu3x8BNDUMfKJSZXNB2ZAclqc1bvrd+uUpfg==", - "dependencies": { - "is-browser": "^2.0.1" - } - }, - "node_modules/has-passive-events": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-passive-events/-/has-passive-events-1.0.0.tgz", - "integrity": "sha512-2vSj6IeIsgvsRMyeQ0JaCX5Q3lX4zMn5HpoVc7MEhQ6pv8Iq9rsXjsp+E5ZwaT7T0xhMT0KmU8gtt1EFVdbJiw==", - "dependencies": { - "is-browser": "^2.0.1" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hsluv": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/hsluv/-/hsluv-0.0.3.tgz", - "integrity": "sha512-08iL2VyCRbkQKBySkSh6m8zMUa3sADAxGVWs3Z1aPcUkTJeK0ETG4Fc27tEmQBGUAXZjIsXOZqBvacuVNSC/fQ==" - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/immutable": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.2.tgz", - "integrity": "sha512-1NU7hWZDkV7hJ4PJ9dur9gTNQ4ePNPN4k9/0YhwjzykTi/+3Q5pF93YU5QoVj8BuOnhLgaY8gs0U2pj4kSYVcw==" - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ini": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/is-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-browser/-/is-browser-2.1.0.tgz", - "integrity": "sha512-F5rTJxDQ2sW81fcfOR1GnCXT6sVJC104fCyfj+mjpwNEwaPYSn5fte5jiHmBg3DHsIoL/l8Kvw5VN5SsTRcRFQ==" - }, - "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-firefox": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-firefox/-/is-firefox-1.0.3.tgz", - "integrity": "sha512-6Q9ITjvWIm0Xdqv+5U12wgOKEM2KoBw4Y926m0OFkvlCxnbG94HKAsVz8w3fWcfAS5YA2fJORXX1dLrkprCCxA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "optional": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-iexplorer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-iexplorer/-/is-iexplorer-1.0.0.tgz", - "integrity": "sha512-YeLzceuwg3K6O0MLM3UyUUjKAlyULetwryFp1mHy1I5PfArK0AEqlfa+MR4gkJjcbuJXoDJCvXbyqZVf5CR2Sg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-mobile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-mobile/-/is-mobile-4.0.0.tgz", - "integrity": "sha512-mlcHZA84t1qLSuWkt2v0I2l61PYdyQDt4aG1mLIXF5FDMm4+haBCxCPYSr/uwqQNRk1MiTizn0ypEuRAOLRAew==" - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "optional": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-string-blank": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-string-blank/-/is-string-blank-1.0.1.tgz", - "integrity": "sha512-9H+ZBCVs3L9OYqv8nuUAzpcT9OTgMD1yAWrG7ihlnibdkbtB850heAmYWxHuXc4CHy4lKeK69tN+ny1K7gBIrw==" - }, - "node_modules/is-svg-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-svg-path/-/is-svg-path-1.0.2.tgz", - "integrity": "sha512-Lj4vePmqpPR1ZnRctHv8ltSh1OrSxHkhUkd7wi+VQdcdP15/KvQFyk7LhNuM7ZW0EVbJz8kZLVmL9quLrfq4Kg==" - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - }, - "node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "engines": { - "node": ">=16" - } - }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "peer": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "peer": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "peer": true - }, - "node_modules/json-stringify-pretty-compact": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-4.0.0.tgz", - "integrity": "sha512-3CNZ2DnrpByG9Nqj6Xo8vqbjT4F6N+tb4Gb28ESAZjYZ5yqvmc56J+/kuIwkaAMOyblTQhUW7PxMkUb8Q36N3Q==" - }, - "node_modules/kdbush": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-4.0.2.tgz", - "integrity": "sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==" - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "peer": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.3.1.tgz", - "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" - }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/map-limit": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/map-limit/-/map-limit-0.0.1.tgz", - "integrity": "sha512-pJpcfLPnIF/Sk3taPW21G/RQsEEirGaFpCW3oXRwH9dnFHPHNGjNyvh++rdmC2fNqEaTw2MhYJraoJWAHx8kEg==", - "dependencies": { - "once": "~1.3.0" - } - }, - "node_modules/map-limit/node_modules/once": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/mapbox-gl": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.3.tgz", - "integrity": "sha512-p8lJFEiqmEQlyv+DQxFAOG/XPWN0Wp7j/Psq93Zywz7qt9CcUKFYDBOoOEKzqe6gudHVJY8/Bhqw6VDpX2lSBg==", - "peer": true, - "dependencies": { - "@mapbox/geojson-rewind": "^0.5.2", - "@mapbox/geojson-types": "^1.0.2", - "@mapbox/jsonlint-lines-primitives": "^2.0.2", - "@mapbox/mapbox-gl-supported": "^1.5.0", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/tiny-sdf": "^1.1.1", - "@mapbox/unitbezier": "^0.0.0", - "@mapbox/vector-tile": "^1.3.1", - "@mapbox/whoots-js": "^3.1.0", - "csscolorparser": "~1.0.3", - "earcut": "^2.2.2", - "geojson-vt": "^3.2.1", - "gl-matrix": "^3.2.1", - "grid-index": "^1.1.0", - "murmurhash-js": "^1.0.0", - "pbf": "^3.2.1", - "potpack": "^1.0.1", - "quickselect": "^2.0.0", - "rw": "^1.3.3", - "supercluster": "^7.1.0", - "tinyqueue": "^2.0.3", - "vt-pbf": "^3.1.1" - }, - "engines": { - "node": ">=6.4.0" - } - }, - "node_modules/maplibre-gl": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-4.7.1.tgz", - "integrity": "sha512-lgL7XpIwsgICiL82ITplfS7IGwrB1OJIw/pCvprDp2dhmSSEBgmPzYRvwYYYvJGJD7fxUv1Tvpih4nZ6VrLuaA==", - "dependencies": { - "@mapbox/geojson-rewind": "^0.5.2", - "@mapbox/jsonlint-lines-primitives": "^2.0.2", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/tiny-sdf": "^2.0.6", - "@mapbox/unitbezier": "^0.0.1", - "@mapbox/vector-tile": "^1.3.1", - "@mapbox/whoots-js": "^3.1.0", - "@maplibre/maplibre-gl-style-spec": "^20.3.1", - "@types/geojson": "^7946.0.14", - "@types/geojson-vt": "3.2.5", - "@types/mapbox__point-geometry": "^0.1.4", - "@types/mapbox__vector-tile": "^1.3.4", - "@types/pbf": "^3.0.5", - "@types/supercluster": "^7.1.3", - "earcut": "^3.0.0", - "geojson-vt": "^4.0.2", - "gl-matrix": "^3.4.3", - "global-prefix": "^4.0.0", - "kdbush": "^4.0.2", - "murmurhash-js": "^1.0.0", - "pbf": "^3.3.0", - "potpack": "^2.0.0", - "quickselect": "^3.0.0", - "supercluster": "^8.0.1", - "tinyqueue": "^3.0.0", - "vt-pbf": "^3.1.3" - }, - "engines": { - "node": ">=16.14.0", - "npm": ">=8.1.0" - }, - "funding": { - "url": "https://github.com/maplibre/maplibre-gl-js?sponsor=1" - } - }, - "node_modules/maplibre-gl/node_modules/@mapbox/tiny-sdf": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.6.tgz", - "integrity": "sha512-qMqa27TLw+ZQz5Jk+RcwZGH7BQf5G/TrutJhspsca/3SHwmgKQ1iq+d3Jxz5oysPVYTGP6aXxCo5Lk9Er6YBAA==" - }, - "node_modules/maplibre-gl/node_modules/@mapbox/unitbezier": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", - "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" - }, - "node_modules/maplibre-gl/node_modules/earcut": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.0.tgz", - "integrity": "sha512-41Fs7Q/PLq1SDbqjsgcY7GA42T0jvaCNGXgGtsNdvg+Yv8eIu06bxv4/PoREkZ9nMDNwnUSG9OFB9+yv8eKhDg==" - }, - "node_modules/maplibre-gl/node_modules/geojson-vt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz", - "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A==" - }, - "node_modules/maplibre-gl/node_modules/potpack": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.0.0.tgz", - "integrity": "sha512-Q+/tYsFU9r7xoOJ+y/ZTtdVQwTWfzjbiXBDMM/JKUux3+QPP02iUuIoeBQ+Ot6oEDlC+/PGjB/5A3K7KKb7hcw==" - }, - "node_modules/maplibre-gl/node_modules/quickselect": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", - "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==" - }, - "node_modules/maplibre-gl/node_modules/supercluster": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-8.0.1.tgz", - "integrity": "sha512-IiOea5kJ9iqzD2t7QJq/cREyLHTtSmUT6gQsweojg9WH2sYJqZK9SswTu6jrscO6D1G5v5vYZ9ru/eq85lXeZQ==", - "dependencies": { - "kdbush": "^4.0.2" - } - }, - "node_modules/maplibre-gl/node_modules/tinyqueue": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", - "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" - }, - "node_modules/math-log2": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-log2/-/math-log2-1.0.1.tgz", - "integrity": "sha512-9W0yGtkaMAkf74XGYVy4Dqw3YUMnTNB2eeiw9aQbUl4A3KmuCEHTt2DgAB07ENzOYAjsYSAYufkAq0Zd+jU7zA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "peer": true - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "optional": true, - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "peer": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/mouse-change": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mouse-change/-/mouse-change-1.4.0.tgz", - "integrity": "sha512-vpN0s+zLL2ykyyUDh+fayu9Xkor5v/zRD9jhSqjRS1cJTGS0+oakVZzNm5n19JvvEj0you+MXlYTpNxUDQUjkQ==", - "dependencies": { - "mouse-event": "^1.0.0" - } - }, - "node_modules/mouse-event": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/mouse-event/-/mouse-event-1.0.5.tgz", - "integrity": "sha512-ItUxtL2IkeSKSp9cyaX2JLUuKk2uMoxBg4bbOWVd29+CskYJR9BGsUqtXenNzKbnDshvupjUewDIYVrOB6NmGw==" - }, - "node_modules/mouse-event-offset": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mouse-event-offset/-/mouse-event-offset-3.0.2.tgz", - "integrity": "sha512-s9sqOs5B1Ykox3Xo8b3Ss2IQju4UwlW6LSR+Q5FXWpprJ5fzMLefIIItr3PH8RwzfGy6gxs/4GAmiNuZScE25w==" - }, - "node_modules/mouse-wheel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mouse-wheel/-/mouse-wheel-1.2.0.tgz", - "integrity": "sha512-+OfYBiUOCTWcTECES49neZwL5AoGkXE+lFjIvzwNCnYRlso+EnfvovcBxGoyQ0yQt806eSPjS675K0EwWknXmw==", - "dependencies": { - "right-now": "^1.0.0", - "signum": "^1.0.0", - "to-px": "^1.0.1" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/mumath": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/mumath/-/mumath-3.3.4.tgz", - "integrity": "sha512-VAFIOG6rsxoc7q/IaY3jdjmrsuX9f15KlRLYTHmixASBZkZEKC1IFqE2BC5CdhXmK6WLM1Re33z//AGmeRI6FA==", - "deprecated": "Redundant dependency in your project.", - "dependencies": { - "almost-equal": "^1.1.0" - } - }, - "node_modules/murmurhash-js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz", - "integrity": "sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw==" - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/native-promise-only": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", - "integrity": "sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==" - }, - "node_modules/needle": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", - "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "peer": true - }, - "node_modules/next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, - "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "optional": true - }, - "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", - "peer": true - }, - "node_modules/normalize-svg-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-0.1.0.tgz", - "integrity": "sha512-1/kmYej2iedi5+ROxkRESL/pI02pkg0OBnaR4hJkSIX6+ORzepwbuUXfrdZaPjysTsJInj0Rj5NuX027+dMBvA==" - }, - "node_modules/number-is-integer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-integer/-/number-is-integer-1.0.1.tgz", - "integrity": "sha512-Dq3iuiFBkrbmuQjGFFF3zckXNCQoSD37/SdSbgcBailUx6knDvDwb5CympBgcoWHy36sfS12u74MHYkXyHq6bg==", - "dependencies": { - "is-finite": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" - }, - "node_modules/parenthesis": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/parenthesis/-/parenthesis-3.1.8.tgz", - "integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw==" - }, - "node_modules/parse-rect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parse-rect/-/parse-rect-1.2.0.tgz", - "integrity": "sha512-4QZ6KYbnE6RTwg9E0HpLchUM9EZt6DnDxajFZZDSV4p/12ZJEvPO702DZpGvRYEPo00yKDys7jASi+/w7aO8LA==", - "dependencies": { - "pick-by-alias": "^1.2.0" - } - }, - "node_modules/parse-svg-path": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", - "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==" - }, - "node_modules/parse-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-unit/-/parse-unit-1.0.1.tgz", - "integrity": "sha512-hrqldJHokR3Qj88EIlV/kAyAi/G5R2+R56TBANxNMy0uPlYcttx0jnMW6Yx5KsKPSbC3KddM/7qQm3+0wEXKxg==" - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pbf": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz", - "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==", - "dependencies": { - "ieee754": "^1.1.12", - "resolve-protobuf-schema": "^2.1.0" - }, - "bin": { - "pbf": "bin/pbf" - } - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, - "node_modules/pick-by-alias": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pick-by-alias/-/pick-by-alias-1.2.0.tgz", - "integrity": "sha512-ESj2+eBxhGrcA1azgHs7lARG5+5iLakc/6nlfbpjcLl00HuuUOIuORhYXN4D1HfvMSKuVtFQjAlnwi1JHEeDIw==" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "optional": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/plotly.js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-3.0.1.tgz", - "integrity": "sha512-eWEUkqdv4sblmUQJ7xGlEA+LghzEVPJOlPBZMJuagG0CsQxlmBb+7rd0UFVig5jhRnN8PQqRQaLv6qXIjnvzgg==", - "dependencies": { - "@plotly/d3": "3.8.2", - "@plotly/d3-sankey": "0.7.2", - "@plotly/d3-sankey-circular": "0.33.1", - "@plotly/mapbox-gl": "1.13.4", - "@turf/area": "^7.1.0", - "@turf/bbox": "^7.1.0", - "@turf/centroid": "^7.1.0", - "base64-arraybuffer": "^1.0.2", - "canvas-fit": "^1.5.0", - "color-alpha": "1.0.4", - "color-normalize": "1.5.0", - "color-parse": "2.0.0", - "color-rgba": "3.0.0", - "country-regex": "^1.1.0", - "css-loader": "^7.1.2", - "d3-force": "^1.2.1", - "d3-format": "^1.4.5", - "d3-geo": "^1.12.1", - "d3-geo-projection": "^2.9.0", - "d3-hierarchy": "^1.1.9", - "d3-interpolate": "^3.0.1", - "d3-time": "^1.1.0", - "d3-time-format": "^2.2.3", - "esbuild-style-plugin": "^1.6.3", - "fast-isnumeric": "^1.1.4", - "gl-mat4": "^1.2.0", - "gl-text": "^1.4.0", - "has-hover": "^1.0.1", - "has-passive-events": "^1.0.0", - "is-mobile": "^4.0.0", - "maplibre-gl": "^4.7.1", - "mouse-change": "^1.4.0", - "mouse-event-offset": "^3.0.2", - "mouse-wheel": "^1.2.0", - "native-promise-only": "^0.8.1", - "parse-svg-path": "^0.1.2", - "point-in-polygon": "^1.1.0", - "polybooljs": "^1.2.2", - "probe-image-size": "^7.2.3", - "regl": "npm:@plotly/regl@^2.1.2", - "regl-error2d": "^2.0.12", - "regl-line2d": "^3.1.3", - "regl-scatter2d": "^3.3.1", - "regl-splom": "^1.0.14", - "strongly-connected-components": "^1.0.1", - "style-loader": "^4.0.0", - "superscript-text": "^1.0.0", - "svg-path-sdf": "^1.1.3", - "tinycolor2": "^1.4.2", - "to-px": "1.0.1", - "topojson-client": "^3.1.0", - "webgl-context": "^2.2.0", - "world-calendars": "^1.0.3" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/plotly.js/node_modules/color-rgba": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-3.0.0.tgz", - "integrity": "sha512-PPwZYkEY3M2THEHHV6Y95sGUie77S7X8v+h1r6LSAPF3/LL2xJ8duUXSrkic31Nzc4odPwHgUbiX/XuTYzQHQg==", - "dependencies": { - "color-parse": "^2.0.0", - "color-space": "^2.0.0" - } - }, - "node_modules/plotly.js/node_modules/color-space": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/color-space/-/color-space-2.3.1.tgz", - "integrity": "sha512-5DJdKYwoDji3ik/i0xSn+SiwXsfwr+1FEcCMUz2GS5speGCfGSbBMOLd84SDUBOuX8y4CvdFJmOBBJuC4wp7sQ==" - }, - "node_modules/point-in-polygon": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/point-in-polygon/-/point-in-polygon-1.1.0.tgz", - "integrity": "sha512-3ojrFwjnnw8Q9242TzgXuTD+eKiutbzyslcq1ydfu82Db2y+Ogbmyrkpv0Hgj31qwT3lbS9+QAAO/pIQM35XRw==" - }, - "node_modules/polybooljs": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/polybooljs/-/polybooljs-1.2.2.tgz", - "integrity": "sha512-ziHW/02J0XuNuUtmidBc6GXE8YohYydp3DWPWXYsd7O721TjcmN+k6ezjdwkDqep+gnWnFY+yqZHvzElra2oCg==" - }, - "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.1.0", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-modules": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-6.0.1.tgz", - "integrity": "sha512-zyo2sAkVvuZFFy0gc2+4O+xar5dYlaVy/ebO24KT0ftk/iJevSNyPyQellsBLlnccwh7f6V6Y4GvuKRYToNgpQ==", - "dependencies": { - "generic-names": "^4.0.0", - "icss-utils": "^5.1.0", - "lodash.camelcase": "^4.3.0", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "string-hash": "^1.1.3" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", - "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", - "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", - "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "node_modules/potpack": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz", - "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==" - }, - "node_modules/probe-image-size": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-7.2.3.tgz", - "integrity": "sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==", - "dependencies": { - "lodash.merge": "^4.6.2", - "needle": "^2.5.2", - "stream-parser": "~0.3.1" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/protocol-buffers-schema": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", - "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/quickselect": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", - "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "dependencies": { - "performance-now": "^2.1.0" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "peer": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/regl": { - "name": "@plotly/regl", - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@plotly/regl/-/regl-2.1.2.tgz", - "integrity": "sha512-Mdk+vUACbQvjd0m/1JJjOOafmkp/EpmHjISsopEz5Av44CBq7rPC05HHNbYGKVyNUF2zmEoBS/TT0pd0SPFFyw==" - }, - "node_modules/regl-error2d": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/regl-error2d/-/regl-error2d-2.0.12.tgz", - "integrity": "sha512-r7BUprZoPO9AbyqM5qlJesrSRkl+hZnVKWKsVp7YhOl/3RIpi4UDGASGJY0puQ96u5fBYw/OlqV24IGcgJ0McA==", - "dependencies": { - "array-bounds": "^1.0.1", - "color-normalize": "^1.5.0", - "flatten-vertex-data": "^1.0.2", - "object-assign": "^4.1.1", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0", - "update-diff": "^1.1.0" - } - }, - "node_modules/regl-line2d": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.3.tgz", - "integrity": "sha512-fkgzW+tTn4QUQLpFKsUIE0sgWdCmXAM3ctXcCgoGBZTSX5FE2A0M7aynz7nrZT5baaftLrk9te54B+MEq4QcSA==", - "dependencies": { - "array-bounds": "^1.0.1", - "array-find-index": "^1.0.2", - "array-normalize": "^1.1.4", - "color-normalize": "^1.5.0", - "earcut": "^2.1.5", - "es6-weak-map": "^2.0.3", - "flatten-vertex-data": "^1.0.2", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0" - } - }, - "node_modules/regl-scatter2d": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.3.1.tgz", - "integrity": "sha512-seOmMIVwaCwemSYz/y4WE0dbSO9svNFSqtTh5RE57I7PjGo3tcUYKtH0MTSoshcAsreoqN8HoCtnn8wfHXXfKQ==", - "dependencies": { - "@plotly/point-cluster": "^3.1.9", - "array-range": "^1.0.1", - "array-rearrange": "^2.2.2", - "clamp": "^1.0.1", - "color-id": "^1.1.0", - "color-normalize": "^1.5.0", - "color-rgba": "^2.1.1", - "flatten-vertex-data": "^1.0.2", - "glslify": "^7.0.0", - "is-iexplorer": "^1.0.0", - "object-assign": "^4.1.1", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "to-float32": "^1.1.0", - "update-diff": "^1.1.0" - } - }, - "node_modules/regl-splom": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/regl-splom/-/regl-splom-1.0.14.tgz", - "integrity": "sha512-OiLqjmPRYbd7kDlHC6/zDf6L8lxgDC65BhC8JirhP4ykrK4x22ZyS+BnY8EUinXKDeMgmpRwCvUmk7BK4Nweuw==", - "dependencies": { - "array-bounds": "^1.0.1", - "array-range": "^1.0.1", - "color-alpha": "^1.0.4", - "flatten-vertex-data": "^1.0.2", - "parse-rect": "^1.2.0", - "pick-by-alias": "^1.2.0", - "raf": "^3.4.1", - "regl-scatter2d": "^3.2.3" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-protobuf-schema": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", - "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", - "dependencies": { - "protocol-buffers-schema": "^3.3.1" - } - }, - "node_modules/right-now": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/right-now/-/right-now-1.0.0.tgz", - "integrity": "sha512-DA8+YS+sMIVpbsuKgy+Z67L9Lxb1p05mNxRpDPNksPDEFir4vmBlUtuN9jkTGn9YMMdlBuK7XQgFiz6ws+yhSg==" - }, - "node_modules/rw": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sass": { - "version": "1.80.7", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.7.tgz", - "integrity": "sha512-MVWvN0u5meytrSjsU7AWsbhoXi1sc58zADXFllfZzbsBT1GHjjar6JwBINYPRrkx/zqnQ6uqbQuHgE95O+C+eQ==", - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^5.0.2", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, - "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" - }, - "node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "peer": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/shallow-copy": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", - "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==" - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "engines": { - "node": ">=8" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/signum": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/signum/-/signum-1.0.0.tgz", - "integrity": "sha512-yodFGwcyt59XRh7w5W3jPcIQb3Bwi21suEfT7MAWnBX3iCdklJpgDgvGT9o04UonglZN5SNMfJFkHIR/jO8GHw==" - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/stack-trace": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz", - "integrity": "sha512-vjUc6sfgtgY0dxCdnc40mK6Oftjo9+2K8H/NG81TMhgL392FtiPA9tn9RLyTxXmTLPJPjF3VyzFp6bsWFLisMQ==", - "engines": { - "node": "*" - } - }, - "node_modules/static-eval": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.1.tgz", - "integrity": "sha512-MgWpQ/ZjGieSVB3eOJVs4OA2LT/q1vx98KPCTTQPzq/aLr0YUXTsgryTXr4SLfR0ZfUUCiedM9n/ABeDIyy4mA==", - "dependencies": { - "escodegen": "^2.1.0" - } - }, - "node_modules/stream-parser": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==", - "dependencies": { - "debug": "2" - } - }, - "node_modules/stream-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/stream-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/stream-shift": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", - "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/string-hash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", - "integrity": "sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==" - }, - "node_modules/string-split-by": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string-split-by/-/string-split-by-1.0.0.tgz", - "integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==", - "dependencies": { - "parenthesis": "^3.1.5" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/strongly-connected-components": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strongly-connected-components/-/strongly-connected-components-1.0.1.tgz", - "integrity": "sha512-i0TFx4wPcO0FwX+4RkLJi1MxmcTv90jNZgxMu9XRnMXMeFUY1VJlIoXpZunPUvUUqbCT1pg5PEkFqqpcaElNaA==" - }, - "node_modules/style-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-4.0.0.tgz", - "integrity": "sha512-1V4WqhhZZgjVAVJyt7TdDPZoPBPNHbekX4fWnCJL1yQukhCeZhJySUL+gL9y6sNdN95uEOS83Y55SqHcP7MzLA==", - "engines": { - "node": ">= 18.12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.27.0" - } - }, - "node_modules/supercluster": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-7.1.5.tgz", - "integrity": "sha512-EulshI3pGUM66o6ZdH3ReiFcvHpM3vAigyK+vcxdjpJyEbIIrtbmBdY23mGgnI24uXiGFvrGq9Gkum/8U7vJWg==", - "dependencies": { - "kdbush": "^3.0.0" - } - }, - "node_modules/supercluster/node_modules/kdbush": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz", - "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew==" - }, - "node_modules/superscript-text": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/superscript-text/-/superscript-text-1.0.0.tgz", - "integrity": "sha512-gwu8l5MtRZ6koO0icVTlmN5pm7Dhh1+Xpe9O4x6ObMAsW+3jPbW14d1DsBq1F4wiI+WOFjXF35pslgec/G8yCQ==" - }, - "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-arc-to-cubic-bezier": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/svg-arc-to-cubic-bezier/-/svg-arc-to-cubic-bezier-3.2.0.tgz", - "integrity": "sha512-djbJ/vZKZO+gPoSDThGNpKDO+o+bAeA4XQKovvkNCqnIS2t+S4qnLAGQhyyrulhCFRl1WWzAp0wUDV8PpTVU3g==" - }, - "node_modules/svg-path-bounds": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/svg-path-bounds/-/svg-path-bounds-1.0.2.tgz", - "integrity": "sha512-H4/uAgLWrppIC0kHsb2/dWUYSmb4GE5UqH06uqWBcg6LBjX2fu0A8+JrO2/FJPZiSsNOKZAhyFFgsLTdYUvSqQ==", - "dependencies": { - "abs-svg-path": "^0.1.1", - "is-svg-path": "^1.0.1", - "normalize-svg-path": "^1.0.0", - "parse-svg-path": "^0.1.2" - } - }, - "node_modules/svg-path-bounds/node_modules/normalize-svg-path": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-1.1.0.tgz", - "integrity": "sha512-r9KHKG2UUeB5LoTouwDzBy2VxXlHsiM6fyLQvnJa0S5hrhzqElH/CH7TUGhT1fVvIYBIKf3OpY4YJ4CK+iaqHg==", - "dependencies": { - "svg-arc-to-cubic-bezier": "^3.0.0" - } - }, - "node_modules/svg-path-sdf": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/svg-path-sdf/-/svg-path-sdf-1.1.3.tgz", - "integrity": "sha512-vJJjVq/R5lSr2KLfVXVAStktfcfa1pNFjFOgyJnzZFXlO/fDZ5DmM8FpnSKKzLPfEYTVeXuVBTHF296TpxuJVg==", - "dependencies": { - "bitmap-sdf": "^1.0.0", - "draw-svg-path": "^1.0.0", - "is-svg-path": "^1.0.1", - "parse-svg-path": "^0.1.2", - "svg-path-bounds": "^1.0.1" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/terser": { - "version": "5.36.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.36.0.tgz", - "integrity": "sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==", - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", - "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.20", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser/node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/tinycolor2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", - "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" - }, - "node_modules/tinyqueue": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz", - "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==" - }, - "node_modules/to-float32": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/to-float32/-/to-float32-1.1.0.tgz", - "integrity": "sha512-keDnAusn/vc+R3iEiSDw8TOF7gPiTLdK1ArvWtYbJQiVfmRg6i/CAvbKq3uIS0vWroAC7ZecN3DjQKw3aSklUg==" - }, - "node_modules/to-px": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-px/-/to-px-1.0.1.tgz", - "integrity": "sha512-2y3LjBeIZYL19e5gczp14/uRWFDtDUErJPVN3VU9a7SJO+RjGRtYR47aMN2bZgGlxvW4ZcEz2ddUPVHXcMfuXw==", - "dependencies": { - "parse-unit": "^1.0.1" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "optional": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/topojson-client": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/topojson-client/-/topojson-client-3.1.0.tgz", - "integrity": "sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==", - "dependencies": { - "commander": "2" - }, - "bin": { - "topo2geo": "bin/topo2geo", - "topomerge": "bin/topomerge", - "topoquantize": "bin/topoquantize" - } - }, - "node_modules/tslib": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==" - }, - "node_modules/type": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", - "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==" - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" - }, - "node_modules/typedarray-pool": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/typedarray-pool/-/typedarray-pool-1.2.0.tgz", - "integrity": "sha512-YTSQbzX43yvtpfRtIDAYygoYtgT+Rpjuxy9iOpczrjpXLgGoyG7aS5USJXV2d3nn8uHTeb9rXDvzS27zUg5KYQ==", - "dependencies": { - "bit-twiddle": "^1.0.0", - "dup": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", - "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" - }, - "node_modules/unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" - }, - "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "peer": true, - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-diff/-/update-diff-1.1.0.tgz", - "integrity": "sha512-rCiBPiHxZwT4+sBhEbChzpO5hYHjm91kScWgdHf4Qeafs6Ba7MBl+d9GlGv72bcTZQO0sLmtQS1pHSWoCLtN/A==" - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "peer": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/vt-pbf": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", - "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", - "dependencies": { - "@mapbox/point-geometry": "0.1.0", - "@mapbox/vector-tile": "^1.3.1", - "pbf": "^3.2.1" - } - }, - "node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/weak-map": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.8.tgz", - "integrity": "sha512-lNR9aAefbGPpHO7AEnY0hCFjz1eTkWCXYvkTRrTHs9qv8zJp+SkVYpzfLIFXQQiG3tVvbNFQgVg2bQS8YGgxyw==" - }, - "node_modules/webgl-context": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webgl-context/-/webgl-context-2.2.0.tgz", - "integrity": "sha512-q/fGIivtqTT7PEoF07axFIlHNk/XCPaYpq64btnepopSWvKNFkoORlQYgqDigBIuGA1ExnFd/GnSUnBNEPQY7Q==", - "dependencies": { - "get-canvas-context": "^1.0.1" - } - }, - "node_modules/webpack": { - "version": "5.95.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", - "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", - "peer": true, - "dependencies": { - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.1", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true + "name": "jupyterlab-plotly", + "version": "6.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "jupyterlab-plotly", + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "@lumino/widgets": "~2.4.0", + "lodash-es": "^4.17.21", + "plotly.js": "3.0.1" + }, + "devDependencies": { + "@jupyterlab/builder": "^4.3.6 || ^3.6.8", + "@types/plotly.js": "^2.33.4", + "esbuild": "^0.23.1", + "typescript": "^5.6.2" + } + }, + "node_modules/@choojs/findup": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@choojs/findup/-/findup-0.2.1.tgz", + "integrity": "sha512-YstAqNb0MCN8PjdLCDfRsBcGVRN41f3vgLvaI0IrIcBp4AqILRSS0DeWNGkicC+f/zRIPJLc+9RURVSepwvfBw==", + "dependencies": { + "commander": "^2.15.1" + }, + "bin": { + "findup": "bin/findup.js" + } + }, + "node_modules/@choojs/findup/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jupyterlab/builder": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@jupyterlab/builder/-/builder-4.3.6.tgz", + "integrity": "sha512-h96k18hl93G8lmGlMN0Tiu18Hz5rgsmjJu3nULPpa+U9tVgaWG61vv1e+UmzxEpMVUQ6nlNmoho29EP6gEAIaQ==", + "dev": true, + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/application": "^2.4.1", + "@lumino/commands": "^2.3.1", + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3", + "@lumino/domutils": "^2.0.2", + "@lumino/dragdrop": "^2.1.5", + "@lumino/messaging": "^2.0.2", + "@lumino/properties": "^2.0.2", + "@lumino/signaling": "^2.1.3", + "@lumino/virtualdom": "^2.0.2", + "@lumino/widgets": "^2.5.0", + "ajv": "^8.12.0", + "commander": "^9.4.1", + "css-loader": "^6.7.1", + "duplicate-package-checker-webpack-plugin": "^3.0.0", + "fs-extra": "^10.1.0", + "glob": "~7.1.6", + "license-webpack-plugin": "^2.3.14", + "mini-css-extract-plugin": "^2.7.0", + "mini-svg-data-uri": "^1.4.4", + "path-browserify": "^1.0.0", + "process": "^0.11.10", + "source-map-loader": "~1.0.2", + "style-loader": "~3.3.1", + "supports-color": "^7.2.0", + "terser-webpack-plugin": "^5.3.7", + "webpack": "^5.76.1", + "webpack-cli": "^5.0.1", + "webpack-merge": "^5.8.0", + "worker-loader": "^3.0.2" + }, + "bin": { + "build-labextension": "lib/build-labextension.js" + } + }, + "node_modules/@jupyterlab/builder/node_modules/@lumino/widgets": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@lumino/widgets/-/widgets-2.6.0.tgz", + "integrity": "sha512-UjLtRod9QfUBzASP4geUzfW3P+qzF+d9I9/4CwrIsL9JIQ7VIxeB3nEMuhKMLOQttaJleL488lmUW9zSs5+AuQ==", + "dev": true, + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/commands": "^2.3.1", + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3", + "@lumino/domutils": "^2.0.2", + "@lumino/dragdrop": "^2.1.5", + "@lumino/keyboard": "^2.0.2", + "@lumino/messaging": "^2.0.2", + "@lumino/properties": "^2.0.2", + "@lumino/signaling": "^2.1.3", + "@lumino/virtualdom": "^2.0.2" + } + }, + "node_modules/@lumino/algorithm": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/algorithm/-/algorithm-2.0.2.tgz", + "integrity": "sha512-cI8yJ2+QK1yM5ZRU3Kuaw9fJ/64JEDZEwWWp7+U0cd/mvcZ44BGdJJ29w+tIet1QXxPAvnsUleWyQ5qm4qUouA==" + }, + "node_modules/@lumino/application": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@lumino/application/-/application-2.4.2.tgz", + "integrity": "sha512-fuY7zSzgl/N0gBX2HQsuXJWA05TEzNs+lcswg3sX5+clodEU7TadJIWuRP/PNHSJZODz1uz5QFvZ/lHpvj122Q==", + "dev": true, + "dependencies": { + "@lumino/commands": "^2.3.1", + "@lumino/coreutils": "^2.2.0", + "@lumino/widgets": "^2.6.0" + } + }, + "node_modules/@lumino/application/node_modules/@lumino/widgets": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@lumino/widgets/-/widgets-2.6.0.tgz", + "integrity": "sha512-UjLtRod9QfUBzASP4geUzfW3P+qzF+d9I9/4CwrIsL9JIQ7VIxeB3nEMuhKMLOQttaJleL488lmUW9zSs5+AuQ==", + "dev": true, + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/commands": "^2.3.1", + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3", + "@lumino/domutils": "^2.0.2", + "@lumino/dragdrop": "^2.1.5", + "@lumino/keyboard": "^2.0.2", + "@lumino/messaging": "^2.0.2", + "@lumino/properties": "^2.0.2", + "@lumino/signaling": "^2.1.3", + "@lumino/virtualdom": "^2.0.2" + } + }, + "node_modules/@lumino/collections": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/collections/-/collections-2.0.2.tgz", + "integrity": "sha512-o0QmfV1D3WhAeA8GI1/YmEPaK89JtHVa764rQ5T0LdbDEwUtUDbjavHs1E/+y66tNTXz9RUJ4D2rcSb9tysYsg==", + "dependencies": { + "@lumino/algorithm": "^2.0.2" + } + }, + "node_modules/@lumino/commands": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@lumino/commands/-/commands-2.3.1.tgz", + "integrity": "sha512-DpX1kkE4PhILpvK1T4ZnaFb6UP4+YTkdZifvN3nbiomD64O2CTd+wcWIBpZMgy6MMgbVgrE8dzHxHk1EsKxNxw==", + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3", + "@lumino/domutils": "^2.0.2", + "@lumino/keyboard": "^2.0.2", + "@lumino/signaling": "^2.1.3", + "@lumino/virtualdom": "^2.0.2" + } + }, + "node_modules/@lumino/coreutils": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@lumino/coreutils/-/coreutils-2.2.0.tgz", + "integrity": "sha512-x5wnQ/GjWBayJ6vXVaUi6+Q6ETDdcUiH9eSfpRZFbgMQyyM6pi6baKqJBK2CHkCc/YbAEl6ipApTgm3KOJ/I3g==", + "dependencies": { + "@lumino/algorithm": "^2.0.2" + } + }, + "node_modules/@lumino/disposable": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@lumino/disposable/-/disposable-2.1.3.tgz", + "integrity": "sha512-k5KXy/+T3UItiWHY4WwQawnsJnGo3aNtP5CTRKqo4+tbTNuhc3rTSvygJlNKIbEfIZXW2EWYnwfFDozkYx95eA==", + "dependencies": { + "@lumino/signaling": "^2.1.3" + } + }, + "node_modules/@lumino/domutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/domutils/-/domutils-2.0.2.tgz", + "integrity": "sha512-2Kp6YHaMNI1rKB0PrALvOsZBHPy2EvVVAvJLWjlCm8MpWOVETjFp0MA9QpMubT9I76aKbaI5s1o1NJyZ8Y99pQ==" + }, + "node_modules/@lumino/dragdrop": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@lumino/dragdrop/-/dragdrop-2.1.5.tgz", + "integrity": "sha512-zqwR4GakrQBKZOW6S5pj2nfrQDurOErAoe9x3HS3BKLa1AzWA+t9PD5NESOKd81NqXFHjiMirSyFkTUs6pw+uA==", + "dependencies": { + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3" + } + }, + "node_modules/@lumino/keyboard": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/keyboard/-/keyboard-2.0.2.tgz", + "integrity": "sha512-icRUpvswDaFjqmAJNbQRb/aTu6Iugo6Y2oC08TiIwhQtLS9W+Ee9VofdqvbPSvCm6DkyP+DCWMuA3KXZ4V4g4g==" + }, + "node_modules/@lumino/messaging": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/messaging/-/messaging-2.0.2.tgz", + "integrity": "sha512-2sUF07cYA0f3mDil41Eh5sfBk0aGAH/mOh1I4+vyRUsKyBqp4WTUtpJFd8xVJGAntygxwnebIygkIaXXTIQvxA==", + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/collections": "^2.0.2" + } + }, + "node_modules/@lumino/properties": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/properties/-/properties-2.0.2.tgz", + "integrity": "sha512-b312oA3Bh97WFK8efXejYmC3DVJmvzJk72LQB7H3fXhfqS5jUWvL7MSnNmgcQvGzl9fIhDWDWjhtSTi0KGYYBg==" + }, + "node_modules/@lumino/signaling": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@lumino/signaling/-/signaling-2.1.3.tgz", + "integrity": "sha512-9Wd4iMk8F1i6pYjy65bqKuPlzQMicyL9xy1/ccS20kovPcfD074waneL/7BVe+3M8i+fGa3x2qjbWrBzOdTdNw==", + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/coreutils": "^2.2.0" + } + }, + "node_modules/@lumino/virtualdom": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@lumino/virtualdom/-/virtualdom-2.0.2.tgz", + "integrity": "sha512-HYZThOtZSoknjdXA102xpy5CiXtTFCVz45EXdWeYLx3NhuEwuAIX93QBBIhupalmtFlRg1yhdDNV40HxJ4kcXg==", + "dependencies": { + "@lumino/algorithm": "^2.0.2" + } + }, + "node_modules/@lumino/widgets": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@lumino/widgets/-/widgets-2.4.0.tgz", + "integrity": "sha512-n7MqRKj+g/aRnI3dl4EJw/Bkt5/LSwGcn3sA9opn88CMZmAzjC33ac+q6zijovjCX8yDud7KKK8yPFTwOFaxhg==", + "dependencies": { + "@lumino/algorithm": "^2.0.2", + "@lumino/commands": "^2.3.1", + "@lumino/coreutils": "^2.2.0", + "@lumino/disposable": "^2.1.3", + "@lumino/domutils": "^2.0.2", + "@lumino/dragdrop": "^2.1.5", + "@lumino/keyboard": "^2.0.2", + "@lumino/messaging": "^2.0.2", + "@lumino/properties": "^2.0.2", + "@lumino/signaling": "^2.1.3", + "@lumino/virtualdom": "^2.0.2" + } + }, + "node_modules/@mapbox/geojson-rewind": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", + "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", + "dependencies": { + "get-stream": "^6.0.1", + "minimist": "^1.2.6" + }, + "bin": { + "geojson-rewind": "geojson-rewind" + } + }, + "node_modules/@mapbox/geojson-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz", + "integrity": "sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw==" + }, + "node_modules/@mapbox/jsonlint-lines-primitives": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", + "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@mapbox/mapbox-gl-supported": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz", + "integrity": "sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==", + "peerDependencies": { + "mapbox-gl": ">=0.32.1 <2.0.0" + } + }, + "node_modules/@mapbox/point-geometry": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", + "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" + }, + "node_modules/@mapbox/tiny-sdf": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz", + "integrity": "sha512-cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw==" + }, + "node_modules/@mapbox/unitbezier": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz", + "integrity": "sha512-HPnRdYO0WjFjRTSwO3frz1wKaU649OBFPX3Zo/2WZvuRi6zMiRGui8SnPQiQABgqCf8YikDe5t3HViTVw1WUzA==" + }, + "node_modules/@mapbox/vector-tile": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", + "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", + "dependencies": { + "@mapbox/point-geometry": "~0.1.0" + } + }, + "node_modules/@mapbox/whoots-js": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz", + "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@maplibre/maplibre-gl-style-spec": { + "version": "20.4.0", + "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.4.0.tgz", + "integrity": "sha512-AzBy3095fTFPjDjmWpR2w6HVRAZJ6hQZUCwk5Plz6EyfnfuQW1odeW5i2Ai47Y6TBA2hQnC+azscjBSALpaWgw==", + "dependencies": { + "@mapbox/jsonlint-lines-primitives": "~2.0.2", + "@mapbox/unitbezier": "^0.0.1", + "json-stringify-pretty-compact": "^4.0.0", + "minimist": "^1.2.8", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "tinyqueue": "^3.0.0" + }, + "bin": { + "gl-style-format": "dist/gl-style-format.mjs", + "gl-style-migrate": "dist/gl-style-migrate.mjs", + "gl-style-validate": "dist/gl-style-validate.mjs" + } + }, + "node_modules/@maplibre/maplibre-gl-style-spec/node_modules/@mapbox/unitbezier": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", + "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" + }, + "node_modules/@maplibre/maplibre-gl-style-spec/node_modules/tinyqueue": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", + "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" + }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@plotly/d3": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@plotly/d3/-/d3-3.8.2.tgz", + "integrity": "sha512-wvsNmh1GYjyJfyEBPKJLTMzgf2c2bEbSIL50lmqVUi+o1NHaLPi1Lb4v7VxXXJn043BhNyrxUrWI85Q+zmjOVA==" + }, + "node_modules/@plotly/d3-sankey": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@plotly/d3-sankey/-/d3-sankey-0.7.2.tgz", + "integrity": "sha512-2jdVos1N3mMp3QW0k2q1ph7Gd6j5PY1YihBrwpkFnKqO+cqtZq3AdEYUeSGXMeLsBDQYiqTVcihYfk8vr5tqhw==", + "dependencies": { + "d3-array": "1", + "d3-collection": "1", + "d3-shape": "^1.2.0" + } + }, + "node_modules/@plotly/d3-sankey-circular": { + "version": "0.33.1", + "resolved": "https://registry.npmjs.org/@plotly/d3-sankey-circular/-/d3-sankey-circular-0.33.1.tgz", + "integrity": "sha512-FgBV1HEvCr3DV7RHhDsPXyryknucxtfnLwPtCKKxdolKyTFYoLX/ibEfX39iFYIL7DYbVeRtP43dbFcrHNE+KQ==", + "dependencies": { + "d3-array": "^1.2.1", + "d3-collection": "^1.0.4", + "d3-shape": "^1.2.0", + "elementary-circuits-directed-graph": "^1.0.4" + } + }, + "node_modules/@plotly/mapbox-gl": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/@plotly/mapbox-gl/-/mapbox-gl-1.13.4.tgz", + "integrity": "sha512-sR3/Pe5LqT/fhYgp4rT4aSFf1rTsxMbGiH6Hojc7PH36ny5Bn17iVFUjpzycafETURuFbLZUfjODO8LvSI+5zQ==", + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/geojson-types": "^1.0.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/mapbox-gl-supported": "^1.5.0", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^1.1.1", + "@mapbox/unitbezier": "^0.0.0", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "csscolorparser": "~1.0.3", + "earcut": "^2.2.2", + "geojson-vt": "^3.2.1", + "gl-matrix": "^3.2.1", + "grid-index": "^1.1.0", + "murmurhash-js": "^1.0.0", + "pbf": "^3.2.1", + "potpack": "^1.0.1", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "supercluster": "^7.1.0", + "tinyqueue": "^2.0.3", + "vt-pbf": "^3.1.1" + }, + "engines": { + "node": ">=6.4.0" + } + }, + "node_modules/@plotly/point-cluster": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@plotly/point-cluster/-/point-cluster-3.1.9.tgz", + "integrity": "sha512-MwaI6g9scKf68Orpr1pHZ597pYx9uP8UEFXLPbsCmuw3a84obwz6pnMXGc90VhgDNeNiLEdlmuK7CPo+5PIxXw==", + "dependencies": { + "array-bounds": "^1.0.1", + "binary-search-bounds": "^2.0.4", + "clamp": "^1.0.1", + "defined": "^1.0.0", + "dtype": "^2.0.0", + "flatten-vertex-data": "^1.0.2", + "is-obj": "^1.0.1", + "math-log2": "^1.0.1", + "parse-rect": "^1.2.0", + "pick-by-alias": "^1.2.0" + } + }, + "node_modules/@turf/area": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@turf/area/-/area-7.2.0.tgz", + "integrity": "sha512-zuTTdQ4eoTI9nSSjerIy4QwgvxqwJVciQJ8tOPuMHbXJ9N/dNjI7bU8tasjhxas/Cx3NE9NxVHtNpYHL0FSzoA==", + "dependencies": { + "@turf/helpers": "^7.2.0", + "@turf/meta": "^7.2.0", + "@types/geojson": "^7946.0.10", + "tslib": "^2.8.1" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/bbox": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-7.2.0.tgz", + "integrity": "sha512-wzHEjCXlYZiDludDbXkpBSmv8Zu6tPGLmJ1sXQ6qDwpLE1Ew3mcWqt8AaxfTP5QwDNQa3sf2vvgTEzNbPQkCiA==", + "dependencies": { + "@turf/helpers": "^7.2.0", + "@turf/meta": "^7.2.0", + "@types/geojson": "^7946.0.10", + "tslib": "^2.8.1" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/centroid": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-7.2.0.tgz", + "integrity": "sha512-yJqDSw25T7P48au5KjvYqbDVZ7qVnipziVfZ9aSo7P2/jTE7d4BP21w0/XLi3T/9bry/t9PR1GDDDQljN4KfDw==", + "dependencies": { + "@turf/helpers": "^7.2.0", + "@turf/meta": "^7.2.0", + "@types/geojson": "^7946.0.10", + "tslib": "^2.8.1" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/helpers": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-7.2.0.tgz", + "integrity": "sha512-cXo7bKNZoa7aC7ydLmUR02oB3IgDe7MxiPuRz3cCtYQHn+BJ6h1tihmamYDWWUlPHgSNF0i3ATc4WmDECZafKw==", + "dependencies": { + "@types/geojson": "^7946.0.10", + "tslib": "^2.8.1" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/meta": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-7.2.0.tgz", + "integrity": "sha512-igzTdHsQc8TV1RhPuOLVo74Px/hyPrVgVOTgjWQZzt3J9BVseCdpfY/0cJBdlSRI4S/yTmmHl7gAqjhpYH5Yaw==", + "dependencies": { + "@turf/helpers": "^7.2.0", + "@types/geojson": "^7946.0.10" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==" + }, + "node_modules/@types/geojson-vt": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@types/geojson-vt/-/geojson-vt-3.2.5.tgz", + "integrity": "sha512-qDO7wqtprzlpe8FfQ//ClPV9xiuoh2nkIgiouIptON9w5jvD/fA4szvP9GBlDVdJ5dldAl0kX/sy3URbWwLx0g==", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/less": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@types/less/-/less-3.0.8.tgz", + "integrity": "sha512-Gjm4+H9noDJgu5EdT3rUw5MhPBag46fiOy27BefvWkNL8mlZnKnCaVVVTLKj6RYXed9b62CPKnPav9govyQDzA==" + }, + "node_modules/@types/mapbox__point-geometry": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz", + "integrity": "sha512-mUWlSxAmYLfwnRBmgYV86tgYmMIICX4kza8YnE/eIlywGe2XoOxlpVnXWwir92xRLjwyarqwpu2EJKD2pk0IUA==" + }, + "node_modules/@types/mapbox__vector-tile": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/mapbox__vector-tile/-/mapbox__vector-tile-1.3.4.tgz", + "integrity": "sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==", + "dependencies": { + "@types/geojson": "*", + "@types/mapbox__point-geometry": "*", + "@types/pbf": "*" + } + }, + "node_modules/@types/node": { + "version": "22.13.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", + "dependencies": { + "undici-types": "~6.20.0" + } + }, + "node_modules/@types/pbf": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/pbf/-/pbf-3.0.5.tgz", + "integrity": "sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==" + }, + "node_modules/@types/plotly.js": { + "version": "2.35.2", + "resolved": "https://registry.npmjs.org/@types/plotly.js/-/plotly.js-2.35.2.tgz", + "integrity": "sha512-tn0Kp7F6VWiu96jknCvR/PcdIGIATeIK+Z5WXH3bEvG6CRwUNfhy34yBhfPYmTea7mMQxXvTZKGMm6/Y4wxESg==", + "dev": true + }, + "node_modules/@types/sass": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/@types/sass/-/sass-1.45.0.tgz", + "integrity": "sha512-jn7qwGFmJHwUSphV8zZneO3GmtlgLsmhs/LQyVvQbIIa+fzGMUiHI4HXJZL3FT8MJmgXWbLGiVVY7ElvHq6vDA==", + "deprecated": "This is a stub types definition. sass provides its own type definitions, so you do not need this installed.", + "dependencies": { + "sass": "*" + } + }, + "node_modules/@types/source-list-map": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", + "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", + "dev": true + }, + "node_modules/@types/stylus": { + "version": "0.48.43", + "resolved": "https://registry.npmjs.org/@types/stylus/-/stylus-0.48.43.tgz", + "integrity": "sha512-72dv/zdhuyXWVHUXG2VTPEQdOG+oen95/DNFx2aMFFaY6LoITI6PwEqf5x31JF49kp2w9hvUzkNfTGBIeg61LQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/supercluster": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/supercluster/-/supercluster-7.1.3.tgz", + "integrity": "sha512-Z0pOY34GDFl3Q6hUFYf3HkTwKEE02e7QgtJppBt+beEAxnyOpJua+voGFvxINBHa06GwLFFym7gRPY2SiKIfIA==", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/webpack-sources": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.12.tgz", + "integrity": "sha512-+vRVqE3LzMLLVPgZHUeI8k1YmvgEky+MOir5fQhKvFxpB8uZ0CFnGqxkRAmf8jvNhUBQzhuGZpIMNWZDeEyDIA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.6.1" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", + "dev": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", + "dev": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", + "dev": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/abs-svg-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/abs-svg-path/-/abs-svg-path-0.1.1.tgz", + "integrity": "sha512-d8XPSGjfyzlXC3Xx891DJRyZfqk5JU0BJrDQcsWomFIV1/BIzPW5HDH5iDdWpqWaav0YVIEzT1RHTwWr0FFshA==" + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/array-bounds": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-bounds/-/array-bounds-1.0.1.tgz", + "integrity": "sha512-8wdW3ZGk6UjMPJx/glyEt0sLzzwAE1bhToPsO1W2pbpR2gULyxe3BjSiuJFheP50T/GgODVPz2fuMUmIywt8cQ==" + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-normalize": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array-normalize/-/array-normalize-1.1.4.tgz", + "integrity": "sha512-fCp0wKFLjvSPmCn4F5Tiw4M3lpMZoHlCjfcs7nNzuj3vqQQ1/a8cgB9DXcpDSn18c+coLnaW7rqfcYCvKbyJXg==", + "dependencies": { + "array-bounds": "^1.0.0" + } + }, + "node_modules/array-range": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-range/-/array-range-1.0.1.tgz", + "integrity": "sha512-shdaI1zT3CVNL2hnx9c0JMc0ZogGaxDs5e85akgHWKYa0yVbIyp06Ind3dVkTj/uuFrzaHBOyqFzo+VV6aXgtA==" + }, + "node_modules/array-rearrange": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/array-rearrange/-/array-rearrange-2.2.2.tgz", + "integrity": "sha512-UfobP5N12Qm4Qu4fwLDIi2v6+wZsSf6snYSxAMeKhrh37YGnNWZPRmVEKc/2wfms53TLQnzfpG8wCx2Y/6NG1w==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-search-bounds": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/binary-search-bounds/-/binary-search-bounds-2.0.5.tgz", + "integrity": "sha512-H0ea4Fd3lS1+sTEB2TgcLoK21lLhwEJzlQv3IN47pJS976Gx4zoWe0ak3q+uYh60ppQxg9F16Ri4tS1sfD4+jA==" + }, + "node_modules/bit-twiddle": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bit-twiddle/-/bit-twiddle-1.0.2.tgz", + "integrity": "sha512-B9UhK0DKFZhoTFcfvAzhqsjStvGJp9vYWf3+6SNTtdSQnvIgfkHbgHrg/e4+TH71N2GDu8tpmCVoyfrL1d7ntA==" + }, + "node_modules/bitmap-sdf": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bitmap-sdf/-/bitmap-sdf-1.0.4.tgz", + "integrity": "sha512-1G3U4n5JE6RAiALMxu0p1XmeZkTeCwGKykzsLTCqVzfSDaN6S7fKnkIkfejogz+iwqBWc0UYAIKnKHNN7pSfDg==" + }, + "node_modules/bl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "optional": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001706", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001706.tgz", + "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/canvas-fit": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/canvas-fit/-/canvas-fit-1.5.0.tgz", + "integrity": "sha512-onIcjRpz69/Hx5bB5HGbYKUF2uC6QT6Gp+pfpGm3A7mPfcluSLV5v4Zu+oflDUwLdUw0rLIBhUbi0v8hM4FJQQ==", + "dependencies": { + "element-size": "^1.1.1" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clamp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", + "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-alpha": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/color-alpha/-/color-alpha-1.0.4.tgz", + "integrity": "sha512-lr8/t5NPozTSqli+duAN+x+no/2WaKTeWvxhHGN+aXT6AJ8vPlzLa7UriyjWak0pSC2jHol9JgjBYnnHsGha9A==", + "dependencies": { + "color-parse": "^1.3.8" + } + }, + "node_modules/color-alpha/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/color-id/-/color-id-1.1.0.tgz", + "integrity": "sha512-2iRtAn6dC/6/G7bBIo0uupVrIne1NsQJvJxZOBCzQOfk7jRq97feaDZ3RdzuHakRXXnHGNwglto3pqtRx1sX0g==", + "dependencies": { + "clamp": "^1.0.1" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/color-normalize": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/color-normalize/-/color-normalize-1.5.0.tgz", + "integrity": "sha512-rUT/HDXMr6RFffrR53oX3HGWkDOP9goSAQGBkUaAYKjOE2JxozccdGyufageWDlInRAjm/jYPrf/Y38oa+7obw==", + "dependencies": { + "clamp": "^1.0.1", + "color-rgba": "^2.1.1", + "dtype": "^2.0.0" + } + }, + "node_modules/color-normalize/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/color-normalize/node_modules/color-rgba": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-2.4.0.tgz", + "integrity": "sha512-Nti4qbzr/z2LbUWySr7H9dk3Rl7gZt7ihHAxlgT4Ho90EXWkjtkL1avTleu9yeGuqrt/chxTB6GKK8nZZ6V0+Q==", + "dependencies": { + "color-parse": "^1.4.2", + "color-space": "^2.0.0" + } + }, + "node_modules/color-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", + "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/color-rgba": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-3.0.0.tgz", + "integrity": "sha512-PPwZYkEY3M2THEHHV6Y95sGUie77S7X8v+h1r6LSAPF3/LL2xJ8duUXSrkic31Nzc4odPwHgUbiX/XuTYzQHQg==", + "dependencies": { + "color-parse": "^2.0.0", + "color-space": "^2.0.0" + } + }, + "node_modules/color-space": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/color-space/-/color-space-2.3.1.tgz", + "integrity": "sha512-5DJdKYwoDji3ik/i0xSn+SiwXsfwr+1FEcCMUz2GS5speGCfGSbBMOLd84SDUBOuX8y4CvdFJmOBBJuC4wp7sQ==" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/country-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/country-regex/-/country-regex-1.1.0.tgz", + "integrity": "sha512-iSPlClZP8vX7MC3/u6s3lrDuoQyhQukh5LyABJ3hvfzbQ3Yyayd4fp04zjLnfi267B/B2FkumcWWgrbban7sSA==" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-font": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-font/-/css-font-1.2.0.tgz", + "integrity": "sha512-V4U4Wps4dPDACJ4WpgofJ2RT5Yqwe1lEH6wlOOaIxMi0gTjdIijsc5FmxQlZ7ZZyKQkkutqqvULOp07l9c7ssA==", + "dependencies": { + "css-font-size-keywords": "^1.0.0", + "css-font-stretch-keywords": "^1.0.1", + "css-font-style-keywords": "^1.0.1", + "css-font-weight-keywords": "^1.0.0", + "css-global-keywords": "^1.0.1", + "css-system-font-keywords": "^1.0.0", + "pick-by-alias": "^1.2.0", + "string-split-by": "^1.0.0", + "unquote": "^1.1.0" + } + }, + "node_modules/css-font-size-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", + "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==" + }, + "node_modules/css-font-stretch-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", + "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==" + }, + "node_modules/css-font-style-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", + "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==" + }, + "node_modules/css-font-weight-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", + "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==" + }, + "node_modules/css-global-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-global-keywords/-/css-global-keywords-1.0.1.tgz", + "integrity": "sha512-X1xgQhkZ9n94WDwntqst5D/FKkmiU0GlJSFZSV3kLvyJ1WC5VeyoXDOuleUD+SIuH9C7W05is++0Woh0CGfKjQ==" + }, + "node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/css-system-font-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", + "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==" + }, + "node_modules/csscolorparser": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz", + "integrity": "sha512-umPSgYwZkdFoUrH5hIq5kf0wPSXiro51nPw0j2K/c83KflkPSTBGMz6NJvMB+07VlL0y7VPo6QJcDjcgKTTm3w==" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/d": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", + "dependencies": { + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/d3-array": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", + "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==" + }, + "node_modules/d3-collection": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", + "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-dispatch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" + }, + "node_modules/d3-force": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", + "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", + "dependencies": { + "d3-collection": "1", + "d3-dispatch": "1", + "d3-quadtree": "1", + "d3-timer": "1" + } + }, + "node_modules/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==" + }, + "node_modules/d3-geo": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.12.1.tgz", + "integrity": "sha512-XG4d1c/UJSEX9NfU02KwBL6BYPj8YKHxgBEw5om2ZnTRSbIcego6dhHwcxuSR3clxh0EpE38os1DVPOmnYtTPg==", + "dependencies": { + "d3-array": "1" + } + }, + "node_modules/d3-geo-projection": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/d3-geo-projection/-/d3-geo-projection-2.9.0.tgz", + "integrity": "sha512-ZULvK/zBn87of5rWAfFMc9mJOipeSo57O+BBitsKIXmU4rTVAnX1kSsJkE0R+TxY8pGNoM1nbyRRE7GYHhdOEQ==", + "dependencies": { + "commander": "2", + "d3-array": "1", + "d3-geo": "^1.12.0", + "resolve": "^1.1.10" + }, + "bin": { + "geo2svg": "bin/geo2svg", + "geograticule": "bin/geograticule", + "geoproject": "bin/geoproject", + "geoquantize": "bin/geoquantize", + "geostitch": "bin/geostitch" + } + }, + "node_modules/d3-geo-projection/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/d3-hierarchy": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz", + "integrity": "sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==" + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + }, + "node_modules/d3-quadtree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", + "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==" + }, + "node_modules/d3-shape": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "dependencies": { + "d3-path": "1" + } + }, + "node_modules/d3-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", + "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" + }, + "node_modules/d3-time-format": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.3.0.tgz", + "integrity": "sha512-guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ==", + "dependencies": { + "d3-time": "1" + } + }, + "node_modules/d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/detect-kerning": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-kerning/-/detect-kerning-2.1.2.tgz", + "integrity": "sha512-I3JIbrnKPAntNLl1I6TpSQQdQ4AutYzv/sKMFKbepawV/hlH0GmYKhUoOEMd4xqaUHT+Bm0f4127lh5qs1m1tw==" + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/draw-svg-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/draw-svg-path/-/draw-svg-path-1.0.0.tgz", + "integrity": "sha512-P8j3IHxcgRMcY6sDzr0QvJDLzBnJJqpTG33UZ2Pvp8rw0apCHhJCWqYprqrXjrgHnJ6tuhP1iTJSAodPDHxwkg==", + "dependencies": { + "abs-svg-path": "~0.1.1", + "normalize-svg-path": "~0.1.0" + } + }, + "node_modules/dtype": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dtype/-/dtype-2.0.0.tgz", + "integrity": "sha512-s2YVcLKdFGS0hpFqJaTwscsyt0E8nNFdmo73Ocd81xNPj4URI4rj6D60A+vFMIw7BXWlb4yRkEwfBqcZzPGiZg==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/dup": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dup/-/dup-1.0.0.tgz", + "integrity": "sha512-Bz5jxMMC0wgp23Zm15ip1x8IhYRqJvF3nFC0UInJUDkN1z4uNPk9jTnfCUJXbOGiQ1JbXLQsiV41Fb+HXcj5BA==" + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/duplicate-package-checker-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/duplicate-package-checker-webpack-plugin/-/duplicate-package-checker-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-aO50/qPC7X2ChjRFniRiscxBLT/K01bALqfcDaf8Ih5OqQ1N4iT/Abx9Ofu3/ms446vHTm46FACIuJUmgUQcDQ==", + "dev": true, + "dependencies": { + "chalk": "^2.3.0", + "find-root": "^1.0.0", + "lodash": "^4.17.4", + "semver": "^5.4.1" + } + }, + "node_modules/duplicate-package-checker-webpack-plugin/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/earcut": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", + "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.120", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.120.tgz", + "integrity": "sha512-oTUp3gfX1gZI+xfD2djr2rzQdHCwHzPQrrK0CD7WpTdF0nPdQ/INcRVjWgLdCT4a9W3jFObR9DAfsuyFQnI8CQ==" + }, + "node_modules/element-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/element-size/-/element-size-1.1.1.tgz", + "integrity": "sha512-eaN+GMOq/Q+BIWy0ybsgpcYImjGIdNLyjLFJU4XsLHXYQao5jCNb36GyN6C2qwmDDYSfIBmKpPpr4VnBdLCsPQ==" + }, + "node_modules/elementary-circuits-directed-graph": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/elementary-circuits-directed-graph/-/elementary-circuits-directed-graph-1.3.1.tgz", + "integrity": "sha512-ZEiB5qkn2adYmpXGnJKkxT8uJHlW/mxmBpmeqawEHzPxh9HkLD4/1mFYX5l0On+f6rcPIt8/EWlRU2Vo3fX6dQ==", + "dependencies": { + "strongly-connected-components": "^1.0.1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/envinfo": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.14.0.tgz", + "integrity": "sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==", + "dev": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==" + }, + "node_modules/es5-ext": { + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", + "dependencies": { + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, + "node_modules/esbuild-style-plugin": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/esbuild-style-plugin/-/esbuild-style-plugin-1.6.3.tgz", + "integrity": "sha512-XPEKf4FjLjEVLv/dJH4UxDzXCrFHYpD93DBO8B+izdZARW5b7nNKQbnKv3J+7VDWJbgCU+hzfgIh2AuIZzlmXQ==", + "dependencies": { + "@types/less": "^3.0.3", + "@types/sass": "^1.43.1", + "@types/stylus": "^0.48.38", + "glob": "^10.2.2", + "postcss": "^8.4.31", + "postcss-modules": "^6.0.0" + } + }, + "node_modules/esbuild-style-plugin/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/esbuild-style-plugin/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/esbuild-style-plugin/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/falafel": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.5.tgz", + "integrity": "sha512-HuC1qF9iTnHDnML9YZAdCDQwT0yKl/U55K4XSUXqGAA2GLoafFgWRqdAbhWJxXaYD4pyoVxAJ8wH670jMpI9DQ==", + "dependencies": { + "acorn": "^7.1.1", + "isarray": "^2.0.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-isnumeric": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-isnumeric/-/fast-isnumeric-1.1.4.tgz", + "integrity": "sha512-1mM8qOr2LYz8zGaUdmiqRDiuue00Dxjgcb1NQR7TnhLVh6sQyngP9xvLo7Sl7LZpP/sk5eb+bcyWXw530NTBZw==", + "dependencies": { + "is-string-blank": "^1.0.1" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-uri": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", + "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ] + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "optional": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flatten-vertex-data": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/flatten-vertex-data/-/flatten-vertex-data-1.0.2.tgz", + "integrity": "sha512-BvCBFK2NZqerFTdMDgqfHBwxYWnxeCkwONsw6PvBMcUXqo8U/KDWwmXhqx1x2kLIg7DqIsJfOaJFOmlua3Lxuw==", + "dependencies": { + "dtype": "^2.0.0" + } + }, + "node_modules/font-atlas": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/font-atlas/-/font-atlas-2.1.0.tgz", + "integrity": "sha512-kP3AmvX+HJpW4w3d+PiPR2X6E1yvsBXt2yhuCw+yReO9F1WYhvZwx3c95DGZGwg9xYzDGrgJYa885xmVA+28Cg==", + "dependencies": { + "css-font": "^1.0.0" + } + }, + "node_modules/font-measure": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/font-measure/-/font-measure-1.2.2.tgz", + "integrity": "sha512-mRLEpdrWzKe9hbfaF3Qpr06TAjquuBVP5cHy4b3hyeNdjc9i0PO6HniGsX5vjL5OWv7+Bd++NiooNpT/s8BvIA==", + "dependencies": { + "css-font": "^1.2.0" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generic-names": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/generic-names/-/generic-names-4.0.0.tgz", + "integrity": "sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==", + "dependencies": { + "loader-utils": "^3.2.0" + } + }, + "node_modules/geojson-vt": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz", + "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg==" + }, + "node_modules/get-canvas-context": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-canvas-context/-/get-canvas-context-1.0.2.tgz", + "integrity": "sha512-LnpfLf/TNzr9zVOGiIY6aKCz8EKuXmlYNV7CM2pUjBa/B+c2I15tS7KLySep75+FuerJdmArvJLcsAXWEy2H0A==" + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gl-mat4": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.2.0.tgz", + "integrity": "sha512-sT5C0pwB1/e9G9AvAoLsoaJtbMGjfd/jfxo8jMCKqYYEnjZuFvqV5rehqar0538EmssjdDeiEWnKyBSTw7quoA==" + }, + "node_modules/gl-matrix": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", + "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" + }, + "node_modules/gl-text": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.4.0.tgz", + "integrity": "sha512-o47+XBqLCj1efmuNyCHt7/UEJmB9l66ql7pnobD6p+sgmBUdzfMZXIF0zD2+KRfpd99DJN+QXdvTFAGCKCVSmQ==", + "dependencies": { + "bit-twiddle": "^1.0.2", + "color-normalize": "^1.5.0", + "css-font": "^1.2.0", + "detect-kerning": "^2.1.2", + "es6-weak-map": "^2.0.3", + "flatten-vertex-data": "^1.0.2", + "font-atlas": "^2.1.0", + "font-measure": "^1.2.2", + "gl-util": "^3.1.2", + "is-plain-obj": "^1.1.0", + "object-assign": "^4.1.1", + "parse-rect": "^1.2.0", + "parse-unit": "^1.0.1", + "pick-by-alias": "^1.2.0", + "regl": "^2.0.0", + "to-px": "^1.0.1", + "typedarray-pool": "^1.1.0" + } + }, + "node_modules/gl-util": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/gl-util/-/gl-util-3.1.3.tgz", + "integrity": "sha512-dvRTggw5MSkJnCbh74jZzSoTOGnVYK+Bt+Ckqm39CVcl6+zSsxqWk4lr5NKhkqXHL6qvZAU9h17ZF8mIskY9mA==", + "dependencies": { + "is-browser": "^2.0.1", + "is-firefox": "^1.0.3", + "is-plain-obj": "^1.1.0", + "number-is-integer": "^1.0.1", + "object-assign": "^4.1.0", + "pick-by-alias": "^1.2.0", + "weak-map": "^1.0.5" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/global-prefix": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz", + "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==", + "dependencies": { + "ini": "^4.1.3", + "kind-of": "^6.0.3", + "which": "^4.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/glsl-inject-defines": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/glsl-inject-defines/-/glsl-inject-defines-1.0.3.tgz", + "integrity": "sha512-W49jIhuDtF6w+7wCMcClk27a2hq8znvHtlGnrYkSWEr8tHe9eA2dcnohlcAmxLYBSpSSdzOkRdyPTrx9fw49+A==", + "dependencies": { + "glsl-token-inject-block": "^1.0.0", + "glsl-token-string": "^1.0.1", + "glsl-tokenizer": "^2.0.2" + } + }, + "node_modules/glsl-resolve": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/glsl-resolve/-/glsl-resolve-0.0.1.tgz", + "integrity": "sha512-xxFNsfnhZTK9NBhzJjSBGX6IOqYpvBHxxmo+4vapiljyGNCY0Bekzn0firQkQrazK59c1hYxMDxYS8MDlhw4gA==", + "dependencies": { + "resolve": "^0.6.1", + "xtend": "^2.1.2" + } + }, + "node_modules/glsl-resolve/node_modules/resolve": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", + "integrity": "sha512-UHBY3viPlJKf85YijDUcikKX6tmF4SokIDp518ZDVT92JNDcG5uKIthaT/owt3Sar0lwtOafsQuwrg22/v2Dwg==" + }, + "node_modules/glsl-resolve/node_modules/xtend": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.2.0.tgz", + "integrity": "sha512-SLt5uylT+4aoXxXuwtQp5ZnMMzhDb1Xkg4pEqc00WUJCQifPfV9Ub1VrNhp9kXkrjZD2I2Hl8WnjP37jzZLPZw==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/glsl-token-assignments": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/glsl-token-assignments/-/glsl-token-assignments-2.0.2.tgz", + "integrity": "sha512-OwXrxixCyHzzA0U2g4btSNAyB2Dx8XrztY5aVUCjRSh4/D0WoJn8Qdps7Xub3sz6zE73W3szLrmWtQ7QMpeHEQ==" + }, + "node_modules/glsl-token-defines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/glsl-token-defines/-/glsl-token-defines-1.0.0.tgz", + "integrity": "sha512-Vb5QMVeLjmOwvvOJuPNg3vnRlffscq2/qvIuTpMzuO/7s5kT+63iL6Dfo2FYLWbzuiycWpbC0/KV0biqFwHxaQ==", + "dependencies": { + "glsl-tokenizer": "^2.0.0" + } + }, + "node_modules/glsl-token-depth": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/glsl-token-depth/-/glsl-token-depth-1.1.2.tgz", + "integrity": "sha512-eQnIBLc7vFf8axF9aoi/xW37LSWd2hCQr/3sZui8aBJnksq9C7zMeUYHVJWMhFzXrBU7fgIqni4EhXVW4/krpg==" + }, + "node_modules/glsl-token-descope": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glsl-token-descope/-/glsl-token-descope-1.0.2.tgz", + "integrity": "sha512-kS2PTWkvi/YOeicVjXGgX5j7+8N7e56srNDEHDTVZ1dcESmbmpmgrnpjPcjxJjMxh56mSXYoFdZqb90gXkGjQw==", + "dependencies": { + "glsl-token-assignments": "^2.0.0", + "glsl-token-depth": "^1.1.0", + "glsl-token-properties": "^1.0.0", + "glsl-token-scope": "^1.1.0" + } + }, + "node_modules/glsl-token-inject-block": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/glsl-token-inject-block/-/glsl-token-inject-block-1.1.0.tgz", + "integrity": "sha512-q/m+ukdUBuHCOtLhSr0uFb/qYQr4/oKrPSdIK2C4TD+qLaJvqM9wfXIF/OOBjuSA3pUoYHurVRNao6LTVVUPWA==" + }, + "node_modules/glsl-token-properties": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/glsl-token-properties/-/glsl-token-properties-1.0.1.tgz", + "integrity": "sha512-dSeW1cOIzbuUoYH0y+nxzwK9S9O3wsjttkq5ij9ZGw0OS41BirKJzzH48VLm8qLg+au6b0sINxGC0IrGwtQUcA==" + }, + "node_modules/glsl-token-scope": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/glsl-token-scope/-/glsl-token-scope-1.1.2.tgz", + "integrity": "sha512-YKyOMk1B/tz9BwYUdfDoHvMIYTGtVv2vbDSLh94PT4+f87z21FVdou1KNKgF+nECBTo0fJ20dpm0B1vZB1Q03A==" + }, + "node_modules/glsl-token-string": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/glsl-token-string/-/glsl-token-string-1.0.1.tgz", + "integrity": "sha512-1mtQ47Uxd47wrovl+T6RshKGkRRCYWhnELmkEcUAPALWGTFe2XZpH3r45XAwL2B6v+l0KNsCnoaZCSnhzKEksg==" + }, + "node_modules/glsl-token-whitespace-trim": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/glsl-token-whitespace-trim/-/glsl-token-whitespace-trim-1.0.0.tgz", + "integrity": "sha512-ZJtsPut/aDaUdLUNtmBYhaCmhIjpKNg7IgZSfX5wFReMc2vnj8zok+gB/3Quqs0TsBSX/fGnqUUYZDqyuc2xLQ==" + }, + "node_modules/glsl-tokenizer": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/glsl-tokenizer/-/glsl-tokenizer-2.1.5.tgz", + "integrity": "sha512-XSZEJ/i4dmz3Pmbnpsy3cKh7cotvFlBiZnDOwnj/05EwNp2XrhQ4XKJxT7/pDt4kp4YcpRSKz8eTV7S+mwV6MA==", + "dependencies": { + "through2": "^0.6.3" + } + }, + "node_modules/glsl-tokenizer/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "node_modules/glsl-tokenizer/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/glsl-tokenizer/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + }, + "node_modules/glsl-tokenizer/node_modules/through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dependencies": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + }, + "node_modules/glslify": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/glslify/-/glslify-7.1.1.tgz", + "integrity": "sha512-bud98CJ6kGZcP9Yxcsi7Iz647wuDz3oN+IZsjCRi5X1PI7t/xPKeL0mOwXJjo+CRZMqvq0CkSJiywCcY7kVYog==", + "dependencies": { + "bl": "^2.2.1", + "concat-stream": "^1.5.2", + "duplexify": "^3.4.5", + "falafel": "^2.1.0", + "from2": "^2.3.0", + "glsl-resolve": "0.0.1", + "glsl-token-whitespace-trim": "^1.0.0", + "glslify-bundle": "^5.0.0", + "glslify-deps": "^1.2.5", + "minimist": "^1.2.5", + "resolve": "^1.1.5", + "stack-trace": "0.0.9", + "static-eval": "^2.0.5", + "through2": "^2.0.1", + "xtend": "^4.0.0" + }, + "bin": { + "glslify": "bin.js" + } + }, + "node_modules/glslify-bundle": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glslify-bundle/-/glslify-bundle-5.1.1.tgz", + "integrity": "sha512-plaAOQPv62M1r3OsWf2UbjN0hUYAB7Aph5bfH58VxJZJhloRNbxOL9tl/7H71K7OLJoSJ2ZqWOKk3ttQ6wy24A==", + "dependencies": { + "glsl-inject-defines": "^1.0.1", + "glsl-token-defines": "^1.0.0", + "glsl-token-depth": "^1.1.1", + "glsl-token-descope": "^1.0.2", + "glsl-token-scope": "^1.1.1", + "glsl-token-string": "^1.0.1", + "glsl-token-whitespace-trim": "^1.0.0", + "glsl-tokenizer": "^2.0.2", + "murmurhash-js": "^1.0.0", + "shallow-copy": "0.0.1" + } + }, + "node_modules/glslify-deps": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/glslify-deps/-/glslify-deps-1.3.2.tgz", + "integrity": "sha512-7S7IkHWygJRjcawveXQjRXLO2FTjijPDYC7QfZyAQanY+yGLCFHYnPtsGT9bdyHiwPTw/5a1m1M9hamT2aBpag==", + "dependencies": { + "@choojs/findup": "^0.2.0", + "events": "^3.2.0", + "glsl-resolve": "0.0.1", + "glsl-tokenizer": "^2.0.0", + "graceful-fs": "^4.1.2", + "inherits": "^2.0.1", + "map-limit": "0.0.1", + "resolve": "^1.0.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/grid-index": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz", + "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-hover": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-hover/-/has-hover-1.0.1.tgz", + "integrity": "sha512-0G6w7LnlcpyDzpeGUTuT0CEw05+QlMuGVk1IHNAlHrGJITGodjZu3x8BNDUMfKJSZXNB2ZAclqc1bvrd+uUpfg==", + "dependencies": { + "is-browser": "^2.0.1" + } + }, + "node_modules/has-passive-events": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-passive-events/-/has-passive-events-1.0.0.tgz", + "integrity": "sha512-2vSj6IeIsgvsRMyeQ0JaCX5Q3lX4zMn5HpoVc7MEhQ6pv8Iq9rsXjsp+E5ZwaT7T0xhMT0KmU8gtt1EFVdbJiw==", + "dependencies": { + "is-browser": "^2.0.1" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/immutable": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==" + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/interpret": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/is-browser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-browser/-/is-browser-2.1.0.tgz", + "integrity": "sha512-F5rTJxDQ2sW81fcfOR1GnCXT6sVJC104fCyfj+mjpwNEwaPYSn5fte5jiHmBg3DHsIoL/l8Kvw5VN5SsTRcRFQ==" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-firefox": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-firefox/-/is-firefox-1.0.3.tgz", + "integrity": "sha512-6Q9ITjvWIm0Xdqv+5U12wgOKEM2KoBw4Y926m0OFkvlCxnbG94HKAsVz8w3fWcfAS5YA2fJORXX1dLrkprCCxA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "optional": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-iexplorer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-iexplorer/-/is-iexplorer-1.0.0.tgz", + "integrity": "sha512-YeLzceuwg3K6O0MLM3UyUUjKAlyULetwryFp1mHy1I5PfArK0AEqlfa+MR4gkJjcbuJXoDJCvXbyqZVf5CR2Sg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-mobile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-mobile/-/is-mobile-4.0.0.tgz", + "integrity": "sha512-mlcHZA84t1qLSuWkt2v0I2l61PYdyQDt4aG1mLIXF5FDMm4+haBCxCPYSr/uwqQNRk1MiTizn0ypEuRAOLRAew==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "optional": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-string-blank": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-string-blank/-/is-string-blank-1.0.1.tgz", + "integrity": "sha512-9H+ZBCVs3L9OYqv8nuUAzpcT9OTgMD1yAWrG7ihlnibdkbtB850heAmYWxHuXc4CHy4lKeK69tN+ny1K7gBIrw==" + }, + "node_modules/is-svg-path": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-svg-path/-/is-svg-path-1.0.2.tgz", + "integrity": "sha512-Lj4vePmqpPR1ZnRctHv8ltSh1OrSxHkhUkd7wi+VQdcdP15/KvQFyk7LhNuM7ZW0EVbJz8kZLVmL9quLrfq4Kg==" + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json-stringify-pretty-compact": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-4.0.0.tgz", + "integrity": "sha512-3CNZ2DnrpByG9Nqj6Xo8vqbjT4F6N+tb4Gb28ESAZjYZ5yqvmc56J+/kuIwkaAMOyblTQhUW7PxMkUb8Q36N3Q==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kdbush": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-4.0.2.tgz", + "integrity": "sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "2.3.21", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.3.21.tgz", + "integrity": "sha512-rVaYU9TddZN3ao8M/0PrRSCdTp2EW6VQymlgsuScld1vef0Ou7fALx3ePe83KLP3xAEDcPK5fkqUVqGBnbz1zQ==", + "dev": true, + "dependencies": { + "@types/webpack-sources": "^0.1.5", + "webpack-sources": "^1.2.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.3.1.tgz", + "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/map-limit": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/map-limit/-/map-limit-0.0.1.tgz", + "integrity": "sha512-pJpcfLPnIF/Sk3taPW21G/RQsEEirGaFpCW3oXRwH9dnFHPHNGjNyvh++rdmC2fNqEaTw2MhYJraoJWAHx8kEg==", + "dependencies": { + "once": "~1.3.0" + } + }, + "node_modules/map-limit/node_modules/once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/mapbox-gl": { + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.3.tgz", + "integrity": "sha512-p8lJFEiqmEQlyv+DQxFAOG/XPWN0Wp7j/Psq93Zywz7qt9CcUKFYDBOoOEKzqe6gudHVJY8/Bhqw6VDpX2lSBg==", + "peer": true, + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/geojson-types": "^1.0.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/mapbox-gl-supported": "^1.5.0", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^1.1.1", + "@mapbox/unitbezier": "^0.0.0", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "csscolorparser": "~1.0.3", + "earcut": "^2.2.2", + "geojson-vt": "^3.2.1", + "gl-matrix": "^3.2.1", + "grid-index": "^1.1.0", + "murmurhash-js": "^1.0.0", + "pbf": "^3.2.1", + "potpack": "^1.0.1", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "supercluster": "^7.1.0", + "tinyqueue": "^2.0.3", + "vt-pbf": "^3.1.1" + }, + "engines": { + "node": ">=6.4.0" + } + }, + "node_modules/maplibre-gl": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-4.7.1.tgz", + "integrity": "sha512-lgL7XpIwsgICiL82ITplfS7IGwrB1OJIw/pCvprDp2dhmSSEBgmPzYRvwYYYvJGJD7fxUv1Tvpih4nZ6VrLuaA==", + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^2.0.6", + "@mapbox/unitbezier": "^0.0.1", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "@maplibre/maplibre-gl-style-spec": "^20.3.1", + "@types/geojson": "^7946.0.14", + "@types/geojson-vt": "3.2.5", + "@types/mapbox__point-geometry": "^0.1.4", + "@types/mapbox__vector-tile": "^1.3.4", + "@types/pbf": "^3.0.5", + "@types/supercluster": "^7.1.3", + "earcut": "^3.0.0", + "geojson-vt": "^4.0.2", + "gl-matrix": "^3.4.3", + "global-prefix": "^4.0.0", + "kdbush": "^4.0.2", + "murmurhash-js": "^1.0.0", + "pbf": "^3.3.0", + "potpack": "^2.0.0", + "quickselect": "^3.0.0", + "supercluster": "^8.0.1", + "tinyqueue": "^3.0.0", + "vt-pbf": "^3.1.3" + }, + "engines": { + "node": ">=16.14.0", + "npm": ">=8.1.0" + }, + "funding": { + "url": "https://github.com/maplibre/maplibre-gl-js?sponsor=1" + } + }, + "node_modules/maplibre-gl/node_modules/@mapbox/tiny-sdf": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.6.tgz", + "integrity": "sha512-qMqa27TLw+ZQz5Jk+RcwZGH7BQf5G/TrutJhspsca/3SHwmgKQ1iq+d3Jxz5oysPVYTGP6aXxCo5Lk9Er6YBAA==" + }, + "node_modules/maplibre-gl/node_modules/@mapbox/unitbezier": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.1.tgz", + "integrity": "sha512-nMkuDXFv60aBr9soUG5q+GvZYL+2KZHVvsqFCzqnkGEf46U2fvmytHaEVc1/YZbiLn8X+eR3QzX1+dwDO1lxlw==" + }, + "node_modules/maplibre-gl/node_modules/earcut": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.1.tgz", + "integrity": "sha512-0l1/0gOjESMeQyYaK5IDiPNvFeu93Z/cO0TjZh9eZ1vyCtZnA7KMZ8rQggpsJHIbGSdrqYq9OhuveadOVHCshw==" + }, + "node_modules/maplibre-gl/node_modules/geojson-vt": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz", + "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A==" + }, + "node_modules/maplibre-gl/node_modules/potpack": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.0.0.tgz", + "integrity": "sha512-Q+/tYsFU9r7xoOJ+y/ZTtdVQwTWfzjbiXBDMM/JKUux3+QPP02iUuIoeBQ+Ot6oEDlC+/PGjB/5A3K7KKb7hcw==" + }, + "node_modules/maplibre-gl/node_modules/quickselect": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", + "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==" + }, + "node_modules/maplibre-gl/node_modules/supercluster": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-8.0.1.tgz", + "integrity": "sha512-IiOea5kJ9iqzD2t7QJq/cREyLHTtSmUT6gQsweojg9WH2sYJqZK9SswTu6jrscO6D1G5v5vYZ9ru/eq85lXeZQ==", + "dependencies": { + "kdbush": "^4.0.2" + } + }, + "node_modules/maplibre-gl/node_modules/tinyqueue": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz", + "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==" + }, + "node_modules/math-log2": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-log2/-/math-log2-1.0.1.tgz", + "integrity": "sha512-9W0yGtkaMAkf74XGYVy4Dqw3YUMnTNB2eeiw9aQbUl4A3KmuCEHTt2DgAB07ENzOYAjsYSAYufkAq0Zd+jU7zA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "optional": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz", + "integrity": "sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0", + "tapable": "^2.2.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-svg-data-uri": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", + "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==", + "dev": true, + "bin": { + "mini-svg-data-uri": "cli.js" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/mouse-change": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mouse-change/-/mouse-change-1.4.0.tgz", + "integrity": "sha512-vpN0s+zLL2ykyyUDh+fayu9Xkor5v/zRD9jhSqjRS1cJTGS0+oakVZzNm5n19JvvEj0you+MXlYTpNxUDQUjkQ==", + "dependencies": { + "mouse-event": "^1.0.0" + } + }, + "node_modules/mouse-event": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/mouse-event/-/mouse-event-1.0.5.tgz", + "integrity": "sha512-ItUxtL2IkeSKSp9cyaX2JLUuKk2uMoxBg4bbOWVd29+CskYJR9BGsUqtXenNzKbnDshvupjUewDIYVrOB6NmGw==" + }, + "node_modules/mouse-event-offset": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mouse-event-offset/-/mouse-event-offset-3.0.2.tgz", + "integrity": "sha512-s9sqOs5B1Ykox3Xo8b3Ss2IQju4UwlW6LSR+Q5FXWpprJ5fzMLefIIItr3PH8RwzfGy6gxs/4GAmiNuZScE25w==" + }, + "node_modules/mouse-wheel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mouse-wheel/-/mouse-wheel-1.2.0.tgz", + "integrity": "sha512-+OfYBiUOCTWcTECES49neZwL5AoGkXE+lFjIvzwNCnYRlso+EnfvovcBxGoyQ0yQt806eSPjS675K0EwWknXmw==", + "dependencies": { + "right-now": "^1.0.0", + "signum": "^1.0.0", + "to-px": "^1.0.1" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/murmurhash-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz", + "integrity": "sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw==" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/native-promise-only": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", + "integrity": "sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==" + }, + "node_modules/needle": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "optional": true + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==" + }, + "node_modules/normalize-svg-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-0.1.0.tgz", + "integrity": "sha512-1/kmYej2iedi5+ROxkRESL/pI02pkg0OBnaR4hJkSIX6+ORzepwbuUXfrdZaPjysTsJInj0Rj5NuX027+dMBvA==" + }, + "node_modules/number-is-integer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-integer/-/number-is-integer-1.0.1.tgz", + "integrity": "sha512-Dq3iuiFBkrbmuQjGFFF3zckXNCQoSD37/SdSbgcBailUx6knDvDwb5CympBgcoWHy36sfS12u74MHYkXyHq6bg==", + "dependencies": { + "is-finite": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "node_modules/parenthesis": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/parenthesis/-/parenthesis-3.1.8.tgz", + "integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw==" + }, + "node_modules/parse-rect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parse-rect/-/parse-rect-1.2.0.tgz", + "integrity": "sha512-4QZ6KYbnE6RTwg9E0HpLchUM9EZt6DnDxajFZZDSV4p/12ZJEvPO702DZpGvRYEPo00yKDys7jASi+/w7aO8LA==", + "dependencies": { + "pick-by-alias": "^1.2.0" + } + }, + "node_modules/parse-svg-path": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", + "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==" + }, + "node_modules/parse-unit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-unit/-/parse-unit-1.0.1.tgz", + "integrity": "sha512-hrqldJHokR3Qj88EIlV/kAyAi/G5R2+R56TBANxNMy0uPlYcttx0jnMW6Yx5KsKPSbC3KddM/7qQm3+0wEXKxg==" + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pbf": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz", + "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==", + "dependencies": { + "ieee754": "^1.1.12", + "resolve-protobuf-schema": "^2.1.0" + }, + "bin": { + "pbf": "bin/pbf" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + }, + "node_modules/pick-by-alias": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pick-by-alias/-/pick-by-alias-1.2.0.tgz", + "integrity": "sha512-ESj2+eBxhGrcA1azgHs7lARG5+5iLakc/6nlfbpjcLl00HuuUOIuORhYXN4D1HfvMSKuVtFQjAlnwi1JHEeDIw==" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "optional": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/plotly.js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-3.0.1.tgz", + "integrity": "sha512-eWEUkqdv4sblmUQJ7xGlEA+LghzEVPJOlPBZMJuagG0CsQxlmBb+7rd0UFVig5jhRnN8PQqRQaLv6qXIjnvzgg==", + "dependencies": { + "@plotly/d3": "3.8.2", + "@plotly/d3-sankey": "0.7.2", + "@plotly/d3-sankey-circular": "0.33.1", + "@plotly/mapbox-gl": "1.13.4", + "@turf/area": "^7.1.0", + "@turf/bbox": "^7.1.0", + "@turf/centroid": "^7.1.0", + "base64-arraybuffer": "^1.0.2", + "canvas-fit": "^1.5.0", + "color-alpha": "1.0.4", + "color-normalize": "1.5.0", + "color-parse": "2.0.0", + "color-rgba": "3.0.0", + "country-regex": "^1.1.0", + "css-loader": "^7.1.2", + "d3-force": "^1.2.1", + "d3-format": "^1.4.5", + "d3-geo": "^1.12.1", + "d3-geo-projection": "^2.9.0", + "d3-hierarchy": "^1.1.9", + "d3-interpolate": "^3.0.1", + "d3-time": "^1.1.0", + "d3-time-format": "^2.2.3", + "esbuild-style-plugin": "^1.6.3", + "fast-isnumeric": "^1.1.4", + "gl-mat4": "^1.2.0", + "gl-text": "^1.4.0", + "has-hover": "^1.0.1", + "has-passive-events": "^1.0.0", + "is-mobile": "^4.0.0", + "maplibre-gl": "^4.7.1", + "mouse-change": "^1.4.0", + "mouse-event-offset": "^3.0.2", + "mouse-wheel": "^1.2.0", + "native-promise-only": "^0.8.1", + "parse-svg-path": "^0.1.2", + "point-in-polygon": "^1.1.0", + "polybooljs": "^1.2.2", + "probe-image-size": "^7.2.3", + "regl": "npm:@plotly/regl@^2.1.2", + "regl-error2d": "^2.0.12", + "regl-line2d": "^3.1.3", + "regl-scatter2d": "^3.3.1", + "regl-splom": "^1.0.14", + "strongly-connected-components": "^1.0.1", + "style-loader": "^4.0.0", + "superscript-text": "^1.0.0", + "svg-path-sdf": "^1.1.3", + "tinycolor2": "^1.4.2", + "to-px": "1.0.1", + "topojson-client": "^3.1.0", + "webgl-context": "^2.2.0", + "world-calendars": "^1.0.3" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/plotly.js/node_modules/css-loader": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-7.1.2.tgz", + "integrity": "sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.27.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/plotly.js/node_modules/style-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-4.0.0.tgz", + "integrity": "sha512-1V4WqhhZZgjVAVJyt7TdDPZoPBPNHbekX4fWnCJL1yQukhCeZhJySUL+gL9y6sNdN95uEOS83Y55SqHcP7MzLA==", + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.27.0" + } + }, + "node_modules/point-in-polygon": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/point-in-polygon/-/point-in-polygon-1.1.0.tgz", + "integrity": "sha512-3ojrFwjnnw8Q9242TzgXuTD+eKiutbzyslcq1ydfu82Db2y+Ogbmyrkpv0Hgj31qwT3lbS9+QAAO/pIQM35XRw==" + }, + "node_modules/polybooljs": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/polybooljs/-/polybooljs-1.2.2.tgz", + "integrity": "sha512-ziHW/02J0XuNuUtmidBc6GXE8YohYydp3DWPWXYsd7O721TjcmN+k6ezjdwkDqep+gnWnFY+yqZHvzElra2oCg==" + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-modules": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-6.0.1.tgz", + "integrity": "sha512-zyo2sAkVvuZFFy0gc2+4O+xar5dYlaVy/ebO24KT0ftk/iJevSNyPyQellsBLlnccwh7f6V6Y4GvuKRYToNgpQ==", + "dependencies": { + "generic-names": "^4.0.0", + "icss-utils": "^5.1.0", + "lodash.camelcase": "^4.3.0", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "string-hash": "^1.1.3" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/potpack": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz", + "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==" + }, + "node_modules/probe-image-size": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-7.2.3.tgz", + "integrity": "sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==", + "dependencies": { + "lodash.merge": "^4.6.2", + "needle": "^2.5.2", + "stream-parser": "~0.3.1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", + "dev": true, + "dependencies": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/regl": { + "name": "@plotly/regl", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@plotly/regl/-/regl-2.1.2.tgz", + "integrity": "sha512-Mdk+vUACbQvjd0m/1JJjOOafmkp/EpmHjISsopEz5Av44CBq7rPC05HHNbYGKVyNUF2zmEoBS/TT0pd0SPFFyw==" + }, + "node_modules/regl-error2d": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/regl-error2d/-/regl-error2d-2.0.12.tgz", + "integrity": "sha512-r7BUprZoPO9AbyqM5qlJesrSRkl+hZnVKWKsVp7YhOl/3RIpi4UDGASGJY0puQ96u5fBYw/OlqV24IGcgJ0McA==", + "dependencies": { + "array-bounds": "^1.0.1", + "color-normalize": "^1.5.0", + "flatten-vertex-data": "^1.0.2", + "object-assign": "^4.1.1", + "pick-by-alias": "^1.2.0", + "to-float32": "^1.1.0", + "update-diff": "^1.1.0" + } + }, + "node_modules/regl-line2d": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.3.tgz", + "integrity": "sha512-fkgzW+tTn4QUQLpFKsUIE0sgWdCmXAM3ctXcCgoGBZTSX5FE2A0M7aynz7nrZT5baaftLrk9te54B+MEq4QcSA==", + "dependencies": { + "array-bounds": "^1.0.1", + "array-find-index": "^1.0.2", + "array-normalize": "^1.1.4", + "color-normalize": "^1.5.0", + "earcut": "^2.1.5", + "es6-weak-map": "^2.0.3", + "flatten-vertex-data": "^1.0.2", + "object-assign": "^4.1.1", + "parse-rect": "^1.2.0", + "pick-by-alias": "^1.2.0", + "to-float32": "^1.1.0" + } + }, + "node_modules/regl-scatter2d": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.3.1.tgz", + "integrity": "sha512-seOmMIVwaCwemSYz/y4WE0dbSO9svNFSqtTh5RE57I7PjGo3tcUYKtH0MTSoshcAsreoqN8HoCtnn8wfHXXfKQ==", + "dependencies": { + "@plotly/point-cluster": "^3.1.9", + "array-range": "^1.0.1", + "array-rearrange": "^2.2.2", + "clamp": "^1.0.1", + "color-id": "^1.1.0", + "color-normalize": "^1.5.0", + "color-rgba": "^2.1.1", + "flatten-vertex-data": "^1.0.2", + "glslify": "^7.0.0", + "is-iexplorer": "^1.0.0", + "object-assign": "^4.1.1", + "parse-rect": "^1.2.0", + "pick-by-alias": "^1.2.0", + "to-float32": "^1.1.0", + "update-diff": "^1.1.0" + } + }, + "node_modules/regl-scatter2d/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/regl-scatter2d/node_modules/color-rgba": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/color-rgba/-/color-rgba-2.4.0.tgz", + "integrity": "sha512-Nti4qbzr/z2LbUWySr7H9dk3Rl7gZt7ihHAxlgT4Ho90EXWkjtkL1avTleu9yeGuqrt/chxTB6GKK8nZZ6V0+Q==", + "dependencies": { + "color-parse": "^1.4.2", + "color-space": "^2.0.0" + } + }, + "node_modules/regl-splom": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/regl-splom/-/regl-splom-1.0.14.tgz", + "integrity": "sha512-OiLqjmPRYbd7kDlHC6/zDf6L8lxgDC65BhC8JirhP4ykrK4x22ZyS+BnY8EUinXKDeMgmpRwCvUmk7BK4Nweuw==", + "dependencies": { + "array-bounds": "^1.0.1", + "array-range": "^1.0.1", + "color-alpha": "^1.0.4", + "flatten-vertex-data": "^1.0.2", + "parse-rect": "^1.2.0", + "pick-by-alias": "^1.2.0", + "raf": "^3.4.1", + "regl-scatter2d": "^3.2.3" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-protobuf-schema": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", + "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", + "dependencies": { + "protocol-buffers-schema": "^3.3.1" + } + }, + "node_modules/right-now": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/right-now/-/right-now-1.0.0.tgz", + "integrity": "sha512-DA8+YS+sMIVpbsuKgy+Z67L9Lxb1p05mNxRpDPNksPDEFir4vmBlUtuN9jkTGn9YMMdlBuK7XQgFiz6ws+yhSg==" + }, + "node_modules/rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.86.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.86.0.tgz", + "integrity": "sha512-zV8vGUld/+mP4KbMLJMX7TyGCuUp7hnkOScgCMsWuHtns8CWBoz+vmEhoGMXsaJrbUP8gj+F1dLvVe79sK8UdA==", + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" + }, + "node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallow-copy": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", + "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/signum": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/signum/-/signum-1.0.0.tgz", + "integrity": "sha512-yodFGwcyt59XRh7w5W3jPcIQb3Bwi21suEfT7MAWnBX3iCdklJpgDgvGT9o04UonglZN5SNMfJFkHIR/jO8GHw==" + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-1.0.2.tgz", + "integrity": "sha512-oX8d6ndRjN+tVyjj6PlXSyFPhDdVAPsZA30nD3/II8g4uOv8fCz0DMn5sy8KtVbDfKQxOpGwGJnK3xIW3tauDw==", + "dev": true, + "dependencies": { + "data-urls": "^2.0.0", + "iconv-lite": "^0.6.2", + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/source-map-loader/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/source-map-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/source-map-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/source-map-loader/node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/stack-trace": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz", + "integrity": "sha512-vjUc6sfgtgY0dxCdnc40mK6Oftjo9+2K8H/NG81TMhgL392FtiPA9tn9RLyTxXmTLPJPjF3VyzFp6bsWFLisMQ==", + "engines": { + "node": "*" + } + }, + "node_modules/static-eval": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.1.tgz", + "integrity": "sha512-MgWpQ/ZjGieSVB3eOJVs4OA2LT/q1vx98KPCTTQPzq/aLr0YUXTsgryTXr4SLfR0ZfUUCiedM9n/ABeDIyy4mA==", + "dependencies": { + "escodegen": "^2.1.0" + } + }, + "node_modules/stream-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", + "integrity": "sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==", + "dependencies": { + "debug": "2" + } + }, + "node_modules/stream-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stream-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/stream-shift": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==" + }, + "node_modules/string-split-by": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string-split-by/-/string-split-by-1.0.0.tgz", + "integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==", + "dependencies": { + "parenthesis": "^3.1.5" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/strongly-connected-components": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strongly-connected-components/-/strongly-connected-components-1.0.1.tgz", + "integrity": "sha512-i0TFx4wPcO0FwX+4RkLJi1MxmcTv90jNZgxMu9XRnMXMeFUY1VJlIoXpZunPUvUUqbCT1pg5PEkFqqpcaElNaA==" + }, + "node_modules/style-loader": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz", + "integrity": "sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/supercluster": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-7.1.5.tgz", + "integrity": "sha512-EulshI3pGUM66o6ZdH3ReiFcvHpM3vAigyK+vcxdjpJyEbIIrtbmBdY23mGgnI24uXiGFvrGq9Gkum/8U7vJWg==", + "dependencies": { + "kdbush": "^3.0.0" + } + }, + "node_modules/supercluster/node_modules/kdbush": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz", + "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew==" + }, + "node_modules/superscript-text": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/superscript-text/-/superscript-text-1.0.0.tgz", + "integrity": "sha512-gwu8l5MtRZ6koO0icVTlmN5pm7Dhh1+Xpe9O4x6ObMAsW+3jPbW14d1DsBq1F4wiI+WOFjXF35pslgec/G8yCQ==" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-arc-to-cubic-bezier": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svg-arc-to-cubic-bezier/-/svg-arc-to-cubic-bezier-3.2.0.tgz", + "integrity": "sha512-djbJ/vZKZO+gPoSDThGNpKDO+o+bAeA4XQKovvkNCqnIS2t+S4qnLAGQhyyrulhCFRl1WWzAp0wUDV8PpTVU3g==" + }, + "node_modules/svg-path-bounds": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/svg-path-bounds/-/svg-path-bounds-1.0.2.tgz", + "integrity": "sha512-H4/uAgLWrppIC0kHsb2/dWUYSmb4GE5UqH06uqWBcg6LBjX2fu0A8+JrO2/FJPZiSsNOKZAhyFFgsLTdYUvSqQ==", + "dependencies": { + "abs-svg-path": "^0.1.1", + "is-svg-path": "^1.0.1", + "normalize-svg-path": "^1.0.0", + "parse-svg-path": "^0.1.2" + } + }, + "node_modules/svg-path-bounds/node_modules/normalize-svg-path": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-1.1.0.tgz", + "integrity": "sha512-r9KHKG2UUeB5LoTouwDzBy2VxXlHsiM6fyLQvnJa0S5hrhzqElH/CH7TUGhT1fVvIYBIKf3OpY4YJ4CK+iaqHg==", + "dependencies": { + "svg-arc-to-cubic-bezier": "^3.0.0" + } + }, + "node_modules/svg-path-sdf": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/svg-path-sdf/-/svg-path-sdf-1.1.3.tgz", + "integrity": "sha512-vJJjVq/R5lSr2KLfVXVAStktfcfa1pNFjFOgyJnzZFXlO/fDZ5DmM8FpnSKKzLPfEYTVeXuVBTHF296TpxuJVg==", + "dependencies": { + "bitmap-sdf": "^1.0.0", + "draw-svg-path": "^1.0.0", + "is-svg-path": "^1.0.1", + "parse-svg-path": "^0.1.2", + "svg-path-bounds": "^1.0.1" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", + "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", + "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" + }, + "node_modules/tinyqueue": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz", + "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==" + }, + "node_modules/to-float32": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/to-float32/-/to-float32-1.1.0.tgz", + "integrity": "sha512-keDnAusn/vc+R3iEiSDw8TOF7gPiTLdK1ArvWtYbJQiVfmRg6i/CAvbKq3uIS0vWroAC7ZecN3DjQKw3aSklUg==" + }, + "node_modules/to-px": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-px/-/to-px-1.0.1.tgz", + "integrity": "sha512-2y3LjBeIZYL19e5gczp14/uRWFDtDUErJPVN3VU9a7SJO+RjGRtYR47aMN2bZgGlxvW4ZcEz2ddUPVHXcMfuXw==", + "dependencies": { + "parse-unit": "^1.0.1" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "optional": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/topojson-client": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/topojson-client/-/topojson-client-3.1.0.tgz", + "integrity": "sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==", + "dependencies": { + "commander": "2" + }, + "bin": { + "topo2geo": "bin/topo2geo", + "topomerge": "bin/topomerge", + "topoquantize": "bin/topoquantize" + } + }, + "node_modules/topojson-client/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/type": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", + "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==" + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "node_modules/typedarray-pool": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/typedarray-pool/-/typedarray-pool-1.2.0.tgz", + "integrity": "sha512-YTSQbzX43yvtpfRtIDAYygoYtgT+Rpjuxy9iOpczrjpXLgGoyG7aS5USJXV2d3nn8uHTeb9rXDvzS27zUg5KYQ==", + "dependencies": { + "bit-twiddle": "^1.0.0", + "dup": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-diff/-/update-diff-1.1.0.tgz", + "integrity": "sha512-rCiBPiHxZwT4+sBhEbChzpO5hYHjm91kScWgdHf4Qeafs6Ba7MBl+d9GlGv72bcTZQO0sLmtQS1pHSWoCLtN/A==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/vt-pbf": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", + "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", + "dependencies": { + "@mapbox/point-geometry": "0.1.0", + "@mapbox/vector-tile": "^1.3.1", + "pbf": "^3.2.1" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/weak-map": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.8.tgz", + "integrity": "sha512-lNR9aAefbGPpHO7AEnY0hCFjz1eTkWCXYvkTRrTHs9qv8zJp+SkVYpzfLIFXQQiG3tVvbNFQgVg2bQS8YGgxyw==" + }, + "node_modules/webgl-context": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webgl-context/-/webgl-context-2.2.0.tgz", + "integrity": "sha512-q/fGIivtqTT7PEoF07axFIlHNk/XCPaYpq64btnepopSWvKNFkoORlQYgqDigBIuGA1ExnFd/GnSUnBNEPQY7Q==", + "dependencies": { + "get-canvas-context": "^1.0.1" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.98.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.98.0.tgz", + "integrity": "sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA==", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^4.3.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.11", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-cli": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", + "colorette": "^2.0.14", + "commander": "^10.0.1", + "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/webpack-cli/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/webpack-merge": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack/node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack/node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/worker-loader": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/worker-loader/-/worker-loader-3.0.8.tgz", + "integrity": "sha512-XQyQkIFeRVC7f7uRhFdNMe/iJOdO6zxAaR3EWbDp45v3mDhrTi+++oswKNxShUNjPC/1xUp5DB29YKLhFo129g==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/worker-loader/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/worker-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/worker-loader/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/worker-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/worker-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/world-calendars": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/world-calendars/-/world-calendars-1.0.3.tgz", + "integrity": "sha512-sAjLZkBnsbHkHWVhrsCU5Sa/EVuf9QqgvrN8zyJ2L/F9FR9Oc6CvVK0674+PGAtmmmYQMH98tCUSO4QLQv3/TQ==", + "dependencies": { + "object-assign": "^4.1.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } } - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "peer": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack/node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "peer": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, - "node_modules/world-calendars": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/world-calendars/-/world-calendars-1.0.3.tgz", - "integrity": "sha512-sAjLZkBnsbHkHWVhrsCU5Sa/EVuf9QqgvrN8zyJ2L/F9FR9Oc6CvVK0674+PGAtmmmYQMH98tCUSO4QLQv3/TQ==", - "dependencies": { - "object-assign": "^4.1.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } } - } } diff --git a/js/package.json b/js/package.json index f7ad6a3799..166bf83663 100644 --- a/js/package.json +++ b/js/package.json @@ -1,16 +1,36 @@ { - "scripts": { - "build": "esbuild --bundle --alias:plotly.js=plotly.js/dist/plotly --format=esm --minify --outfile=../plotly/package_data/widgetbundle.js widget.ts", - "watch": "npm run build -- --watch --sourcemap=inline", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "lodash-es": "^4.17.21", - "plotly.js": "3.0.1" - }, - "devDependencies": { - "@types/plotly.js": "^2.33.4", - "esbuild": "^0.23.1", - "typescript": "^5.6.2" + "name": "jupyterlab-plotly", + "main": "lib/mimeExtension.js", + "version": "6.0.1", + "repository": { + "type": "git", + "url": "https://github.com/plotly/plotly.py" + }, + "description": "The plotly Jupyter extension", + "author": "The plotly.py team", + "license": "MIT", + "scripts": { + "build:widget": "esbuild --bundle --alias:plotly.js=plotly.js/dist/plotly --format=esm --minify --outfile=../plotly/package_data/widgetbundle.js src/widget.ts", + "build:mimerenderer": "esbuild --bundle --alias:plotly.js=plotly.js/dist/plotly --format=esm --minify --outfile=lib/mimeExtension.js src/mimeExtension.ts", + "build:labextension": "jupyter labextension build .", + "build": "npm run build:widget && npm run build:mimerenderer && npm run build:labextension", + "watch": "npm run build -- --watch --sourcemap=inline", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "lodash-es": "^4.17.21", + "plotly.js": "3.0.1", + "@lumino/widgets": "~2.4.0" + }, + "devDependencies": { + "@jupyterlab/builder": "^4.3.6 || ^3.6.8", + "@types/plotly.js": "^2.33.4", + "esbuild": "^0.23.1", + "typescript": "^5.6.2" + }, + "jupyterlab": { + "mimeExtension": true, + "outputDir": "../plotly/labextension" + } } -} + \ No newline at end of file diff --git a/js/src/mimeExtension.ts b/js/src/mimeExtension.ts new file mode 100644 index 0000000000..b49d0de86d --- /dev/null +++ b/js/src/mimeExtension.ts @@ -0,0 +1,248 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +import { IRenderMime } from '@jupyterlab/rendermime-interfaces'; +import { Widget } from '@lumino/widgets'; +import type PlotlyType from "plotly.js"; + +import { Message } from "@lumino/messaging"; + +/** + * The CSS class to add to the Plotly Widget. + */ +const CSS_CLASS = "jp-RenderedPlotly"; + +/** + * The CSS class for a Plotly icon. + */ +const CSS_ICON_CLASS = "jp-MaterialIcon jp-PlotlyIcon"; + +/** + * The MIME type for Plotly. + * The version of this follows the major version of Plotly. + */ +export const MIME_TYPE = "application/vnd.plotly.v1+json"; + +interface IPlotlySpec { + data: PlotlyType.Data; + layout: PlotlyType.Layout; + frames?: PlotlyType.Frame[]; +} + +export class RenderedPlotly extends Widget implements IRenderMime.IRenderer { + /** + * Create a new widget for rendering Plotly. + */ + constructor(options: IRenderMime.IRendererOptions) { + super(); + this.addClass(CSS_CLASS); + this._mimeType = options.mimeType; + + // Create image element + this._img_el = document.createElement("img"); + this._img_el.className = "plot-img"; + this.node.appendChild(this._img_el); + + // Install image hover callback + this._img_el.addEventListener("mouseenter", (event) => { + this.createGraph(this._model); + }); + } + + /** + * Render Plotly into this widget's node. + */ + renderModel(model: IRenderMime.IMimeModel): Promise { + if (this.hasGraphElement()) { + // We already have a graph, don't overwrite it + return Promise.resolve(); + } + + // Save off reference to model so that we can regenerate the plot later + this._model = model; + + // Check for PNG data in mime bundle + const png_data = model.data["image/png"]; + if (png_data !== undefined && png_data !== null) { + // We have PNG data, use it + this.updateImage(png_data); + return Promise.resolve(); + } else { + // Create a new graph + return this.createGraph(model); + } + } + + private hasGraphElement() { + // Check for the presence of the .plot-container element that plotly.js + // places at the top of the figure structure + return this.node.querySelector(".plot-container") !== null; + } + + private updateImage(png_data: string) { + this.hideGraph(); + this._img_el.src = "data:image/png;base64," + png_data; + this.showImage(); + } + + private hideGraph() { + // Hide the graph if there is one + let el = this.node.querySelector(".plot-container"); + if (el !== null && el !== undefined) { + el.style.display = "none"; + } + } + + private showGraph() { + // Show the graph if there is one + let el = this.node.querySelector(".plot-container"); + if (el !== null && el !== undefined) { + el.style.display = "block"; + } + } + + private hideImage() { + // Hide the image element + let el = this.node.querySelector(".plot-img"); + if (el !== null && el !== undefined) { + el.style.display = "none"; + } + } + + private showImage() { + // Show the image element + let el = this.node.querySelector(".plot-img"); + if (el !== null && el !== undefined) { + el.style.display = "block"; + } + } + + private createGraph(model: IRenderMime.IMimeModel): Promise { + const { data, layout, frames, config } = model.data[this._mimeType] as + | any + | IPlotlySpec; + + if (!layout.height) { + layout.height = 360; + } + + // Load plotly asynchronously + const loadPlotly = async (): Promise => { + if (RenderedPlotly.Plotly === null) { + RenderedPlotly.Plotly = await import("plotly.js"); + RenderedPlotly._resolveLoadingPlotly(); + } + return RenderedPlotly.loadingPlotly; + }; + + return loadPlotly() + .then(() => RenderedPlotly.Plotly!.react(this.node, data, layout, config)) + .then((plot) => { + this.showGraph(); + this.hideImage(); + this.update(); + if (frames) { + RenderedPlotly.Plotly!.addFrames(this.node, frames); + } + if (this.node.offsetWidth > 0 && this.node.offsetHeight > 0) { + RenderedPlotly.Plotly!.toImage(plot, { + format: "png", + width: this.node.offsetWidth, + height: this.node.offsetHeight, + }).then((url: string) => { + const imageData = url.split(",")[1]; + if (model.data["image/png"] !== imageData) { + model.setData({ + data: { + ...model.data, + "image/png": imageData, + }, + }); + } + }); + } + + // Handle webgl context lost events + (this.node).on( + "plotly_webglcontextlost", + () => { + const png_data = model.data["image/png"]; + if (png_data !== undefined && png_data !== null) { + // We have PNG data, use it + this.updateImage(png_data); + return Promise.resolve(); + } + } + ); + }); + } + + /** + * A message handler invoked on an `'after-show'` message. + */ + protected onAfterShow(msg: Message): void { + this.update(); + } + + /** + * A message handler invoked on a `'resize'` message. + */ + protected onResize(msg: Widget.ResizeMessage): void { + this.update(); + } + + /** + * A message handler invoked on an `'update-request'` message. + */ + protected onUpdateRequest(msg: Message): void { + if (RenderedPlotly.Plotly && this.isVisible && this.hasGraphElement()) { + RenderedPlotly.Plotly.redraw(this.node).then(() => { + RenderedPlotly.Plotly!.Plots.resize(this.node); + }); + } + } + + private _mimeType: string; + private _img_el: HTMLImageElement; + private _model: IRenderMime.IMimeModel; + + private static Plotly: typeof PlotlyType | null = null; + private static _resolveLoadingPlotly: () => void; + private static loadingPlotly = new Promise((resolve) => { + RenderedPlotly._resolveLoadingPlotly = resolve; + }); +} + +/** + * A mime renderer factory for Plotly data. + */ +export const rendererFactory: IRenderMime.IRendererFactory = { + safe: true, + mimeTypes: [MIME_TYPE], + createRenderer: (options) => new RenderedPlotly(options), +}; + +const extensions: IRenderMime.IExtension | IRenderMime.IExtension[] = [ + { + id: "@jupyterlab/plotly-extension:factory", + rendererFactory, + rank: 2, + dataType: "json", + fileTypes: [ + { + name: "plotly", + mimeTypes: [MIME_TYPE], + extensions: [".plotly", ".plotly.json"], + iconClass: CSS_ICON_CLASS, + }, + ], + documentWidgetFactoryOptions: { + name: "Plotly", + primaryFileType: "plotly", + fileTypes: ["plotly", "json"], + defaultFor: ["plotly"], + }, + }, +]; + +export default extensions; \ No newline at end of file diff --git a/js/widget.ts b/js/src/widget.ts similarity index 100% rename from js/widget.ts rename to js/src/widget.ts diff --git a/plotly/__init__.py b/plotly/__init__.py index 024801a98b..9bf096de20 100644 --- a/plotly/__init__.py +++ b/plotly/__init__.py @@ -180,3 +180,15 @@ def hist_series(data_frame, **kwargs): skip += ["figsize", "bins", "legend"] new_kwargs = {k: kwargs[k] for k in kwargs if k not in skip} return histogram(data_frame, **new_kwargs) + + +def _jupyter_labextension_paths(): + """Called by Jupyter Lab Server to detect if it is a valid labextension and + to install the extension. + """ + return [ + { + "src": "labextension/static", + "dest": "jupyterlab-plotly", + } + ] diff --git a/plotly/io/_base_renderers.py b/plotly/io/_base_renderers.py index d683d1694f..22674b139f 100644 --- a/plotly/io/_base_renderers.py +++ b/plotly/io/_base_renderers.py @@ -76,8 +76,7 @@ def to_mimebundle(self, fig_dict): class PlotlyRenderer(MimetypeRenderer): """ Renderer to display figures using the plotly mime type. This renderer is - compatible with JupyterLab (using the @jupyterlab/plotly-extension), - VSCode, and nteract. + compatible with VSCode and nteract. mime type: 'application/vnd.plotly.v1+json' """ diff --git a/plotly/io/_renderers.py b/plotly/io/_renderers.py index d4fe4eda0e..de0d8f5ff7 100644 --- a/plotly/io/_renderers.py +++ b/plotly/io/_renderers.py @@ -497,7 +497,7 @@ def show(fig, renderer=None, validate=True, **kwargs): ) default_renderer = env_renderer -elif ipython and ipython.get_ipython(): +elif ipython: # Try to detect environment so that we can enable a useful # default renderer if not default_renderer: @@ -543,13 +543,21 @@ def show(fig, renderer=None, validate=True, **kwargs): pass # Check if we're running in ipython terminal - if not default_renderer and ( - ipython.get_ipython().__class__.__name__ == "TerminalInteractiveShell" - ): + ipython_info = ipython.get_ipython() + shell = ipython_info.__class__.__name__ + if not default_renderer and (shell == "TerminalInteractiveShell"): default_renderer = "browser" + # Check if we're running in a Jupyter notebook or JupyterLab + if ( + not default_renderer + and (shell == "ZMQInteractiveShell") + and (type(ipython_info).__module__.startswith("ipykernel.")) + ): + default_renderer = "plotly_mimetype" + # Fallback to renderer combination that will work automatically - # in the classic notebook (offline), jupyterlab, nteract, vscode, and + # in the jupyter notebook, jupyterlab, nteract, vscode, and # nbconvert HTML export. if not default_renderer: default_renderer = "plotly_mimetype+notebook" diff --git a/plotly/labextension/package.json b/plotly/labextension/package.json new file mode 100644 index 0000000000..2b3f6fb884 --- /dev/null +++ b/plotly/labextension/package.json @@ -0,0 +1,39 @@ +{ + "name": "jupyterlab-plotly", + "main": "lib/mimeExtension.js", + "version": "6.0.1", + "repository": { + "type": "git", + "url": "https://github.com/plotly/plotly.py" + }, + "description": "The plotly Jupyter extension", + "author": "The plotly.py team", + "license": "MIT", + "scripts": { + "build:widget": "esbuild --bundle --alias:plotly.js=plotly.js/dist/plotly --format=esm --minify --outfile=../plotly/package_data/widgetbundle.js src/widget.ts", + "build:mimerenderer": "esbuild --bundle --alias:plotly.js=plotly.js/dist/plotly --format=esm --minify --outfile=lib/mimeExtension.js src/mimeExtension.ts", + "build:labextension": "jupyter labextension build .", + "build": "npm run build:widget && npm run build:mimerenderer && npm run build:labextension", + "watch": "npm run build -- --watch --sourcemap=inline", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "lodash-es": "^4.17.21", + "plotly.js": "3.0.1", + "@lumino/widgets": "~2.4.0" + }, + "devDependencies": { + "@jupyterlab/builder": "^4.3.6 || ^3.6.8", + "@types/plotly.js": "^2.33.4", + "esbuild": "^0.23.1", + "typescript": "^5.6.2" + }, + "jupyterlab": { + "mimeExtension": true, + "outputDir": "../plotly/labextension", + "_build": { + "load": "static/remoteEntry.ee69569354eef8c6803d.js", + "mimeExtension": "./mimeExtension" + } + } +} diff --git a/plotly/labextension/static/340.2a23c8275d47a2531dae.js b/plotly/labextension/static/340.2a23c8275d47a2531dae.js new file mode 100644 index 0000000000..d763c0743d --- /dev/null +++ b/plotly/labextension/static/340.2a23c8275d47a2531dae.js @@ -0,0 +1,2 @@ +/*! For license information please see 340.2a23c8275d47a2531dae.js.LICENSE.txt */ +(self.webpackChunkjupyterlab_plotly=self.webpackChunkjupyterlab_plotly||[]).push([[340],{340:(t,e,r)=>{"use strict";r.r(e),r.d(e,{MIME_TYPE:()=>Ht,RenderedPlotly:()=>Gt,default:()=>Zt,rendererFactory:()=>Wt});var n,i,a,o,s,l,c=r(606),u=Object.create,h=Object.defineProperty,p=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,d=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty,g=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),y=(t,e,r)=>(r=null!=t?u(d(t)):{},((t,e,r,n)=>{if(e&&"object"==typeof e||"function"==typeof e)for(let r of f(e))!m.call(t,r)&&undefined!==r&&h(t,r,{get:()=>e[r],enumerable:!(n=p(e,r))||n.enumerable});return t})(!e&&t&&t.__esModule?r:h(r,"default",{value:t,enumerable:!0}),t)),v=g(((t,e)=>{var n,i;n=t,i=function(t){function e(t,e){let r=0;for(let n of t)if(!1===e(n,r++))return!1;return!0}var r;t.ArrayExt=void 0,function(t){function e(t,e,r=0,n=-1){let i,a=t.length;if(0===a)return-1;r=r<0?Math.max(0,r+a):Math.min(r,a-1),i=(n=n<0?Math.max(0,n+a):Math.min(n,a-1))=r)return;let n=t[e];for(let n=e+1;n0;){let n=s>>1,i=o+n;r(t[i],e)<0?(o=i+1,s-=n+1):s=n}return o},t.upperBound=function(t,e,r,n=0,i=-1){let a=t.length;if(0===a)return 0;let o=n=n<0?Math.max(0,n+a):Math.min(n,a-1),s=(i=i<0?Math.max(0,i+a):Math.min(i,a-1))-n+1;for(;s>0;){let n=s>>1,i=o+n;r(t[i],e)>0?s=n:(o=i+1,s-=n+1)}return o},t.shallowEqual=function(t,e,r){if(t===e)return!0;if(t.length!==e.length)return!1;for(let n=0,i=t.length;n=o&&(r=i<0?o-1:o),void 0===n?n=i<0?-1:o:n<0?n=Math.max(n+o,i<0?-1:0):n>=o&&(n=i<0?o-1:o),a=i<0&&n>=r||i>0&&r>=n?0:i<0?Math.floor((n-r+1)/i+1):Math.floor((n-r-1)/i+1);let s=[];for(let e=0;e=(n=n<0?Math.max(0,n+i):Math.min(n,i-1)))return;let o=n-r+1;if(e>0?e%=o:e<0&&(e=(e%o+o)%o),0===e)return;let s=r+e;a(t,r,s-1),a(t,s,n),a(t,r,n)},t.fill=function(t,e,r=0,n=-1){let i,a=t.length;if(0!==a){r=r<0?Math.max(0,r+a):Math.min(r,a-1),i=(n=n<0?Math.max(0,n+a):Math.min(n,a-1))e;--r)t[r]=t[r-1];t[e]=r},t.removeAt=o,t.removeFirstOf=function(t,r,n=0,i=-1){let a=e(t,r,n,i);return-1!==a&&o(t,a),a},t.removeLastOf=function(t,e,n=-1,i=0){let a=r(t,e,n,i);return-1!==a&&o(t,a),a},t.removeAllOf=function(t,e,r=0,n=-1){let i=t.length;if(0===i)return 0;r=r<0?Math.max(0,r+i):Math.min(r,i-1),n=n<0?Math.max(0,n+i):Math.min(n,i-1);let a=0;for(let o=0;o=r&&o<=n&&t[o]===e||n=r)&&t[o]===e?a++:a>0&&(t[o-a]=t[o]);return a>0&&(t.length=i-a),a},t.removeFirstWhere=function(t,e,r=0,i=-1){let a,s=n(t,e,r,i);return-1!==s&&(a=o(t,s)),{index:s,value:a}},t.removeLastWhere=function(t,e,r=-1,n=0){let a,s=i(t,e,r,n);return-1!==s&&(a=o(t,s)),{index:s,value:a}},t.removeAllWhere=function(t,e,r=0,n=-1){let i=t.length;if(0===i)return 0;r=r<0?Math.max(0,r+i):Math.min(r,i-1),n=n<0?Math.max(0,n+i):Math.min(n,i-1);let a=0;for(let o=0;o=r&&o<=n&&e(t[o],o)||n=r)&&e(t[o],o)?a++:a>0&&(t[o-a]=t[o]);return a>0&&(t.length=i-a),a}}(t.ArrayExt||(t.ArrayExt={})),(r||(r={})).rangeLength=function(t,e,r){return 0===r?1/0:t>e&&r>0||te?1:0}}(t.StringExt||(t.StringExt={})),t.chain=function*(...t){for(let e of t)yield*e},t.each=function(t,e){let r=0;for(let n of t)if(!1===e(n,r++))return},t.empty=function*(){},t.enumerate=function*(t,e=0){for(let r of t)yield[e++,r]},t.every=e,t.filter=function*(t,e){let r=0;for(let n of t)e(n,r++)&&(yield n)},t.find=function(t,e){let r=0;for(let n of t)if(e(n,r++))return n},t.findIndex=function(t,e){let r=0;for(let n of t)if(e(n,r++))return r-1;return-1},t.map=function*(t,e){let r=0;for(let n of t)yield e(n,r++)},t.max=function(t,e){let r;for(let n of t)void 0!==r?e(n,r)>0&&(r=n):r=n;return r},t.min=function(t,e){let r;for(let n of t)void 0!==r?e(n,r)<0&&(r=n):r=n;return r},t.minmax=function(t,e){let r,n,i=!0;for(let a of t)i?(r=a,n=a,i=!1):e(a,r)<0?r=a:e(a,n)>0&&(n=a);return i?void 0:[r,n]},t.once=function*(t){yield t},t.range=function*(t,e,n){void 0===e?(e=t,t=0,n=1):void 0===n&&(n=1);let i=r.rangeLength(t,e,n);for(let e=0;e-1;e--)yield t[e]},t.some=function(t,e){let r=0;for(let n of t)if(e(n,r++))return!0;return!1},t.stride=function*(t,e){let r=0;for(let n of t)r++%e==0&&(yield n)},t.take=function*(t,e){if(e<1)return;let r,n=t[Symbol.iterator]();for(;0t[Symbol.iterator]())),n=r.map((t=>t.next()));for(;e(n,(t=>!t.done));n=r.map((t=>t.next())))yield n.map((t=>t.value))}},"object"==typeof t&&typeof e<"u"?i(t):"function"==typeof define&&r.amdO?define(["exports"],i):i((n=typeof globalThis<"u"?globalThis:n||self).lumino_algorithm={})})),x=g(((t,e)=>{var n,i;n=t,i=function(t,e){var r;function n(t){let e=0;for(let r=0,n=t.length;r>>0),t[r]=255&e,e>>>=8}t.JSONExt=void 0,function(t){function e(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t}function r(t){return Array.isArray(t)}t.emptyObject=Object.freeze({}),t.emptyArray=Object.freeze([]),t.isPrimitive=e,t.isArray=r,t.isObject=function(t){return!e(t)&&!r(t)},t.deepEqual=function t(n,i){if(n===i)return!0;if(e(n)||e(i))return!1;let a=r(n),o=r(i);return a===o&&(a&&o?function(e,r){if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0,i=e.length;n{if(n===t.provides)return!0;let o=r.get(n);if(!o)return!1;let s=e.get(o),l=[...s.requires,...s.optional];return 0!==l.length&&(a.push(o),!!l.some(i)||(a.pop(),!1))};if(!t.provides||0===n.length)return;let a=[t.id];if(n.some(i))throw new ReferenceError(`Cycle detected: ${a.join(" -> ")}.`)},t.findDependents=function(t,r,n){let i=new Array,a=t=>{let e=r.get(t),a=[...e.requires,...e.optional];i.push(...a.reduce(((e,r)=>{let i=n.get(r);return i&&e.push([t,i]),e}),[]))};for(let t of r.keys())a(t);let o=i.filter((e=>e[1]===t)),s=0;for(;o.length>s;){let t=o.length,e=new Set(o.map((t=>t[0])));for(let t of e)i.filter((e=>e[1]===t)).forEach((t=>{o.includes(t)||o.push(t)}));s=t}let l=e.topologicSort(o),c=l.findIndex((e=>e===t));return-1===c?[t]:l.slice(0,c+1)},t.collectStartupPlugins=function(t,e){let r=new Set;for(let e of t.keys())!0===t.get(e).autoStart&&r.add(e);if(e.startPlugins)for(let t of e.startPlugins)r.add(t);if(e.ignorePlugins)for(let t of e.ignorePlugins)r.delete(t);return Array.from(r)}}(r||(r={})),t.Random=void 0,(t.Random||(t.Random={})).getRandomValues=(()=>{let t=typeof window<"u"&&(window.crypto||window.msCrypto)||null;return t&&"function"==typeof t.getRandomValues?function(e){return t.getRandomValues(e)}:n})(),t.UUID=void 0,(t.UUID||(t.UUID={})).uuid4=function(t){let e=new Uint8Array(16),r=new Array(256);for(let t=0;t<16;++t)r[t]="0"+t.toString(16);for(let t=16;t<256;++t)r[t]=t.toString(16);return function(){return t(e),e[6]=64|15&e[6],e[8]=128|63&e[8],r[e[0]]+r[e[1]]+r[e[2]]+r[e[3]]+"-"+r[e[4]]+r[e[5]]+"-"+r[e[6]]+r[e[7]]+"-"+r[e[8]]+r[e[9]]+"-"+r[e[10]]+r[e[11]]+r[e[12]]+r[e[13]]+r[e[14]]+r[e[15]]}}(t.Random.getRandomValues),t.MimeData=class{constructor(){this._types=[],this._values=[]}types(){return this._types.slice()}hasData(t){return-1!==this._types.indexOf(t)}getData(t){let e=this._types.indexOf(t);return-1!==e?this._values[e]:void 0}setData(t,e){this.clearData(t),this._types.push(t),this._values.push(e)}clearData(t){let e=this._types.indexOf(t);-1!==e&&(this._types.splice(e,1),this._values.splice(e,1))}clear(){this._types.length=0,this._values.length=0}},t.PluginRegistry=class{constructor(t={}){this._application=null,this._validatePlugin=()=>!0,this._plugins=new Map,this._services=new Map,t.validatePlugin&&(console.info("Plugins may be rejected by the custom validation plugin method."),this._validatePlugin=t.validatePlugin)}get application(){return this._application}set application(t){if(null!==this._application)throw Error("PluginRegistry.application is already set. It cannot be overridden.");this._application=t}get deferredPlugins(){return Array.from(this._plugins).filter((([t,e])=>"defer"===e.autoStart)).map((([t,e])=>t))}getPluginDescription(t){var e,r;return null!==(r=null===(e=this._plugins.get(t))||void 0===e?void 0:e.description)&&void 0!==r?r:""}hasPlugin(t){return this._plugins.has(t)}isPluginActivated(t){var e,r;return null!==(r=null===(e=this._plugins.get(t))||void 0===e?void 0:e.activated)&&void 0!==r&&r}listPlugins(){return Array.from(this._plugins.keys())}registerPlugin(t){if(this._plugins.has(t.id))throw new TypeError(`Plugin '${t.id}' is already registered.`);if(!this._validatePlugin(t))throw new Error(`Plugin '${t.id}' is not valid.`);let e=r.createPluginData(t);r.ensureNoCycle(e,this._plugins,this._services),e.provides&&this._services.set(e.provides,e.id),this._plugins.set(e.id,e)}registerPlugins(t){for(let e of t)this.registerPlugin(e)}deregisterPlugin(t,e){let r=this._plugins.get(t);if(r){if(r.activated&&!e)throw new Error(`Plugin '${t}' is still active.`);this._plugins.delete(t)}}async activatePlugin(t){let e=this._plugins.get(t);if(!e)throw new ReferenceError(`Plugin '${t}' is not registered.`);if(e.activated)return;if(e.promise)return e.promise;let r=e.requires.map((t=>this.resolveRequiredService(t))),n=e.optional.map((t=>this.resolveOptionalService(t)));return e.promise=Promise.all([...r,...n]).then((t=>e.activate.apply(void 0,[this.application,...t]))).then((t=>{e.service=t,e.activated=!0,e.promise=null})).catch((t=>{throw e.promise=null,t})),e.promise}async activatePlugins(t,e={}){switch(t){case"defer":{let t=this.deferredPlugins.filter((t=>this._plugins.get(t).autoStart)).map((t=>this.activatePlugin(t)));await Promise.all(t);break}case"startUp":{let t=r.collectStartupPlugins(this._plugins,e).map((async t=>{try{return await this.activatePlugin(t)}catch(e){console.error(`Plugin '${t}' failed to activate.`,e)}}));await Promise.all(t);break}}}async deactivatePlugin(t){let e=this._plugins.get(t);if(!e)throw new ReferenceError(`Plugin '${t}' is not registered.`);if(!e.activated)return[];if(!e.deactivate)throw new TypeError(`Plugin '${t}'#deactivate() method missing`);let n=r.findDependents(t,this._plugins,this._services),i=n.map((t=>this._plugins.get(t)));for(let e of i)if(!e.deactivate)throw new TypeError(`Plugin ${e.id}#deactivate() method missing (depends on ${t})`);for(let t of i){let e=[...t.requires,...t.optional].map((t=>{let e=this._services.get(t);return e?this._plugins.get(e).service:null}));await t.deactivate(this.application,...e),t.service=null,t.activated=!1}return n.pop(),n}async resolveRequiredService(t){let e=this._services.get(t);if(!e)throw new TypeError(`No provider for: ${t.name}.`);let r=this._plugins.get(e);return r.activated||await this.activatePlugin(e),r.service}async resolveOptionalService(t){let e=this._services.get(t);if(!e)return null;let r=this._plugins.get(e);if(!r.activated)try{await this.activatePlugin(e)}catch(t){return console.error(t),null}return r.service}},t.PromiseDelegate=class{constructor(){this.promise=new Promise(((t,e)=>{this._resolve=t,this._reject=e}))}resolve(t){(0,this._resolve)(t)}reject(t){(0,this._reject)(t)}},t.Token=class{constructor(t,e){this.name=t,this.description=e??"",this._tokenStructuralPropertyT=null}}},"object"==typeof t&&typeof e<"u"?i(t,v()):"function"==typeof define&&r.amdO?define(["exports","@lumino/algorithm"],i):i((n=typeof globalThis<"u"?globalThis:n||self).lumino_coreutils={},n.lumino_algorithm)})),_=g(((t,e)=>{var r,n;r=typeof self<"u"?self:t,n=()=>{var t=(()=>{var t=Object.create,e=Object.defineProperty,r=Object.defineProperties,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyDescriptors,a=Object.getOwnPropertyNames,o=Object.getOwnPropertySymbols,s=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=Object.prototype.propertyIsEnumerable,h=(t,r,n)=>r in t?e(t,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[r]=n,p=(t,e)=>function(){return t&&(e=(0,t[a(t)[0]])(t=0)),e},f=(t,e)=>function(){return e||(0,t[a(t)[0]])((e={exports:{}}).exports,e),e.exports},d=(t,r)=>{for(var n in r)e(t,n,{get:r[n],enumerable:!0})},m=(t,r,i,o)=>{if(r&&"object"==typeof r||"function"==typeof r)for(let s of a(r))!l.call(t,s)&&s!==i&&e(t,s,{get:()=>r[s],enumerable:!(o=n(r,s))||o.enumerable});return t},g=t=>m(e({},"__esModule",{value:!0}),t),y=f({"src/version.js"(t){t.version="3.0.1"}}),v=f({"node_modules/native-promise-only/lib/npo.src.js"(t,e){var r,n;r="Promise",(n=typeof window<"u"?window:t)[r]=n[r]||function(){var t,e,r,n=Object.prototype.toString,i=typeof setImmediate<"u"?function(t){return setImmediate(t)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(t,e,r,n){return Object.defineProperty(t,e,{value:r,writable:!0,configurable:!1!==n})}}catch{t=function(t,e,r){return t[e]=r,t}}function a(t,n){r.add(t,n),e||(e=i(r.drain))}function o(t){var e,r=typeof t;return null!=t&&("object"==r||"function"==r)&&(e=t.then),"function"==typeof e&&e}function s(){for(var t=0;t0&&a(s,r))}catch(t){u.call(new p(r),t)}}}function u(t){var e=this;e.triggered||(e.triggered=!0,e.def&&(e=e.def),e.msg=t,e.state=2,e.chain.length>0&&a(s,e))}function h(t,e,r,n){for(var i=0;ie?1:t>=e?0:NaN}function f(t){return null===t?NaN:+t}function d(t){return!isNaN(t)}function m(t){return{left:function(e,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=e.length);n>>1;t(e[a],r)<0?n=a+1:i=a}return n},right:function(e,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=e.length);n>>1;t(e[a],r)>0?i=a:n=a+1}return n}}}t.ascending=p,t.descending=function(t,e){return et?1:e>=t?0:NaN},t.min=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++in&&(r=n)}else{for(;++i=n){r=n;break}for(;++in&&(r=n)}return r},t.max=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++ir&&(r=n)}else{for(;++i=n){r=n;break}for(;++ir&&(r=n)}return r},t.extent=function(t,e){var r,n,i,a=-1,o=t.length;if(1===arguments.length){for(;++a=n){r=i=n;break}for(;++an&&(r=n),i=n){r=i=n;break}for(;++an&&(r=n),i1)return o/(l-1)},t.deviation=function(){var e=t.variance.apply(this,arguments);return e&&Math.sqrt(e)};var g=m(p);function y(t){return t.length}t.bisectLeft=g.left,t.bisect=t.bisectRight=g.right,t.bisector=function(t){return m(1===t.length?function(e,r){return p(t(e),r)}:t)},t.shuffle=function(t,e,r){(a=arguments.length)<3&&(r=t.length,a<2&&(e=0));for(var n,i,a=r-e;a;)i=Math.random()*a--|0,n=t[a+e],t[a+e]=t[i+e],t[i+e]=n;return t},t.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},t.pairs=function(t){for(var e=0,r=t.length-1,n=t[0],i=new Array(r<0?0:r);e=0;)for(e=(n=t[i]).length;--e>=0;)r[--o]=n[e];return r};var v=Math.abs;function x(t,e){for(var r in e)Object.defineProperty(t.prototype,r,{value:e[r],enumerable:!1})}function _(){this._=Object.create(null)}function b(t){return"__proto__"==(t+="")||"\0"===t[0]?"\0"+t:t}function w(t){return"\0"===(t+="")[0]?t.slice(1):t}function T(t){return b(t)in this._}function A(t){return(t=b(t))in this._&&delete this._[t]}function k(){var t=[];for(var e in this._)t.push(w(e));return t}function M(){var t=0;for(var e in this._)++t;return t}function S(){for(var t in this._)return!1;return!0}function E(){this._=Object.create(null)}function C(t){return t}function I(t,e,r){return function(){var n=r.apply(e,arguments);return n===e?t:n}}function L(t,e){if(e in t)return e;e=e.charAt(0).toUpperCase()+e.slice(1);for(var r=0,n=P.length;re;)i.push(n/a);else for(;(n=t+r*++o)=i.length)return r?r.call(n,a):e?a.sort(e):a;for(var l,c,u,h,p=-1,f=a.length,d=i[s++],m=new _;++p=i.length)return t;var r=[],n=a[e++];return t.forEach((function(t,n){r.push({key:t,values:s(n,e)})})),n?r.sort((function(t,e){return n(t.key,e.key)})):r}return n.map=function(t,e){return o(e,t,0)},n.entries=function(e){return s(o(t.map,e,0),0)},n.key=function(t){return i.push(t),n},n.sortKeys=function(t){return a[i.length-1]=t,n},n.sortValues=function(t){return e=t,n},n.rollup=function(t){return r=t,n},n},t.set=function(t){var e=new E;if(t)for(var r=0,n=t.length;r=0&&(n=t.slice(r+1),t=t.slice(0,r)),t)return arguments.length<2?this[t].on(n):this[t].on(n,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(n,null);return this}},t.event=null,t.requote=function(t){return t.replace(j,"\\$&")};var j=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,N={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var r in e)t[r]=e[r]};function U(t){return N(t,G),t}var V=function(t,e){return e.querySelector(t)},q=function(t,e){return e.querySelectorAll(t)},H=function(t,e){var r=t.matches||t[L(t,"matchesSelector")];return(H=function(t,e){return r.call(t,e)})(t,e)};"function"==typeof Sizzle&&(V=function(t,e){return Sizzle(t,e)[0]||null},q=Sizzle,H=Sizzle.matchesSelector),t.selection=function(){return t.select(i.documentElement)};var G=t.selection.prototype=[];function W(t){return"function"==typeof t?t:function(){return V(t,this)}}function Z(t){return"function"==typeof t?t:function(){return q(t,this)}}G.select=function(t){var e,r,n,i,a=[];t=W(t);for(var o=-1,s=this.length;++o=0&&"xmlns"!==(r=t.slice(0,e))&&(t=t.slice(e+1)),X.hasOwnProperty(r)?{space:X[r],local:t}:t}},G.attr=function(e,r){if(arguments.length<2){if("string"==typeof e){var n=this.node();return(e=t.ns.qualify(e)).local?n.getAttributeNS(e.space,e.local):n.getAttribute(e)}for(r in e)this.each($(r,e[r]));return this}return this.each($(e,r))},G.classed=function(t,e){if(arguments.length<2){if("string"==typeof t){var r=this.node(),n=(t=Q(t)).length,i=-1;if(e=r.classList){for(;++i=0;)(r=n[i])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},G.sort=function(t){t=lt.apply(this,arguments);for(var e=-1,r=this.length;++e0&&(e=e.slice(0,o));var l=ft.get(e);function c(){var t=this[a];t&&(this.removeEventListener(e,t,t.$),delete this[a])}return l&&(e=l,s=mt),o?r?function(){var t=s(r,n(arguments));c.call(this),this.addEventListener(e,this[a]=t,t.$=i),t._=r}:c:r?z:function(){var r,n=new RegExp("^__on([^.]+)"+t.requote(e)+"$");for(var i in this)if(r=i.match(n)){var a=this[i];this.removeEventListener(r[1],a,a.$),delete this[i]}}}t.selection.enter=ut,t.selection.enter.prototype=ht,ht.append=G.append,ht.empty=G.empty,ht.node=G.node,ht.call=G.call,ht.size=G.size,ht.select=function(t){for(var e,r,n,i,a,o=[],s=-1,l=this.length;++s=e&&(e=i+1);!(o=s[e])&&++e1?Mt:t<-1?-Mt:Math.asin(t)}function Lt(t){return((t=Math.exp(t))+1/t)/2}var Pt=Math.SQRT2;t.interpolateZoom=function(t,e){var r,n,i=t[0],a=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-i,h=l-a,p=u*u+h*h;if(p<1e-12)n=Math.log(c/o)/Pt,r=function(t){return[i+t*u,a+t*h,o*Math.exp(Pt*t*n)]};else{var f=Math.sqrt(p),d=(c*c-o*o+4*p)/(2*o*2*f),m=(c*c-o*o-4*p)/(2*c*2*f),g=Math.log(Math.sqrt(d*d+1)-d),y=Math.log(Math.sqrt(m*m+1)-m);n=(y-g)/Pt,r=function(t){var e=t*n,r=Lt(g),s=o/(2*f)*(r*function(t){return((t=Math.exp(2*t))-1)/(t+1)}(Pt*e+g)-function(t){return((t=Math.exp(t))-1/t)/2}(g));return[i+s*u,a+s*h,o*r/Lt(Pt*e+g)]}}return r.duration=1e3*n,r},t.behavior.zoom=function(){var e,r,n,a,s,l,c,u,h,p={x:0,y:0,k:1},f=[960,500],d=Ot,m=250,g=0,y="mousedown.zoom",v="mousemove.zoom",x="mouseup.zoom",_="touchstart.zoom",b=B(w,"zoomstart","zoom","zoomend");function w(t){t.on(y,L).on(Dt+".zoom",z).on("dblclick.zoom",D).on(_,P)}function T(t){return[(t[0]-p.x)/p.k,(t[1]-p.y)/p.k]}function A(t){p.k=Math.max(d[0],Math.min(d[1],t))}function k(t,e){e=function(t){return[t[0]*p.k+p.x,t[1]*p.k+p.y]}(e),p.x+=t[0]-e[0],p.y+=t[1]-e[1]}function M(e,n,i,a){e.__chart__={x:p.x,y:p.y,k:p.k},A(Math.pow(2,a)),k(r=n,i),e=t.select(e),m>0&&(e=e.transition().duration(m)),e.call(w.event)}function S(){c&&c.domain(l.range().map((function(t){return(t-p.x)/p.k})).map(l.invert)),h&&h.domain(u.range().map((function(t){return(t-p.y)/p.k})).map(u.invert))}function E(t){g++||t({type:"zoomstart"})}function C(t){S(),t({type:"zoom",scale:p.k,translate:[p.x,p.y]})}function I(t){--g||(t({type:"zoomend"}),r=null)}function L(){var e=this,r=b.of(e,arguments),n=0,i=t.select(o(e)).on(v,(function(){n=1,k(t.mouse(e),a),C(r)})).on(x,(function(){i.on(v,null).on(x,null),s(n),I(r)})),a=T(t.mouse(e)),s=vt(e);Wi.call(e),E(r)}function P(){var e,r=this,n=b.of(r,arguments),i={},a=0,o=".zoom-"+t.event.changedTouches[0].identifier,l="touchmove"+o,c="touchend"+o,u=[],h=t.select(r),f=vt(r);function d(){var n=t.touches(r);return e=p.k,n.forEach((function(t){t.identifier in i&&(i[t.identifier]=T(t))})),n}function m(){var e=t.event.target;t.select(e).on(l,g).on(c,v),u.push(e);for(var n=t.event.changedTouches,o=0,h=n.length;o1){y=f[0];var x=f[1],_=y[0]-x[0],b=y[1]-x[1];a=_*_+b*b}}function g(){var o,l,c,u,h=t.touches(r);Wi.call(r);for(var p=0,f=h.length;p360?t-=360:t<0&&(t+=360),t<60?n+(i-n)*t/60:t<180?i:t<240?n+(i-n)*(240-t)/60:n}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,n=2*(r=r<0?0:r>1?1:r)-(i=r<=.5?r*(1+e):r+e-r*e),new Qt(a(t+120),a(t),a(t-120))}function Nt(e,r,n){return this instanceof Nt?(this.h=+e,this.c=+r,void(this.l=+n)):arguments.length<2?e instanceof Nt?new Nt(e.h,e.c,e.l):function(t,e,r){return t>0?new Nt(Math.atan2(r,e)*Et,Math.sqrt(e*e+r*r),t):new Nt(NaN,NaN,t)}(e instanceof qt?e.l:(e=oe((e=t.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Nt(e,r,n)}Bt.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new Ft(this.h,this.s,this.l/t)},Bt.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new Ft(this.h,this.s,t*this.l)},Bt.rgb=function(){return jt(this.h,this.s,this.l)},t.hcl=Nt;var Ut=Nt.prototype=new Rt;function Vt(t,e,r){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new qt(r,Math.cos(t*=St)*e,Math.sin(t)*e)}function qt(t,e,r){return this instanceof qt?(this.l=+t,this.a=+e,void(this.b=+r)):arguments.length<2?t instanceof qt?new qt(t.l,t.a,t.b):t instanceof Nt?Vt(t.h,t.c,t.l):oe((t=Qt(t)).r,t.g,t.b):new qt(t,e,r)}Ut.brighter=function(t){return new Nt(this.h,this.c,Math.min(100,this.l+Ht*(arguments.length?t:1)))},Ut.darker=function(t){return new Nt(this.h,this.c,Math.max(0,this.l-Ht*(arguments.length?t:1)))},Ut.rgb=function(){return Vt(this.h,this.c,this.l).rgb()},t.lab=qt;var Ht=18,Gt=.95047,Wt=1,Zt=1.08883,Yt=qt.prototype=new Rt;function Xt(t,e,r){var n=(t+16)/116,i=n+e/500,a=n-r/200;return new Qt(Jt(3.2404542*(i=$t(i)*Gt)-1.5371385*(n=$t(n)*Wt)-.4985314*(a=$t(a)*Zt)),Jt(-.969266*i+1.8760108*n+.041556*a),Jt(.0556434*i-.2040259*n+1.0572252*a))}function $t(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function Kt(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function Jt(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function Qt(t,e,r){return this instanceof Qt?(this.r=~~t,this.g=~~e,void(this.b=~~r)):arguments.length<2?t instanceof Qt?new Qt(t.r,t.g,t.b):ie(""+t,Qt,jt):new Qt(t,e,r)}function te(t){return new Qt(t>>16,t>>8&255,255&t)}function ee(t){return te(t)+""}Yt.brighter=function(t){return new qt(Math.min(100,this.l+Ht*(arguments.length?t:1)),this.a,this.b)},Yt.darker=function(t){return new qt(Math.max(0,this.l-Ht*(arguments.length?t:1)),this.a,this.b)},Yt.rgb=function(){return Xt(this.l,this.a,this.b)},t.rgb=Qt;var re=Qt.prototype=new Rt;function ne(t){return t<16?"0"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function ie(t,e,r){var n,i,a,o=0,s=0,l=0;if(n=/([a-z]+)\((.*)\)/.exec(t=t.toLowerCase()))switch(i=n[2].split(","),n[1]){case"hsl":return r(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return e(le(i[0]),le(i[1]),le(i[2]))}return(a=ce.get(t))?e(a.r,a.g,a.b):(null!=t&&"#"===t.charAt(0)&&!isNaN(a=parseInt(t.slice(1),16))&&(4===t.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===t.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),e(o,s,l))}function ae(t,e,r){var n,i,a=Math.min(t/=255,e/=255,r/=255),o=Math.max(t,e,r),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),n=t==o?(e-r)/s+(e0&&l<1?0:n),new Ft(n,i,l)}function oe(t,e,r){var n=Kt((.4124564*(t=se(t))+.3575761*(e=se(e))+.1804375*(r=se(r)))/Gt),i=Kt((.2126729*t+.7151522*e+.072175*r)/Wt);return qt(116*i-16,500*(n-i),200*(i-Kt((.0193339*t+.119192*e+.9503041*r)/Zt)))}function se(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function le(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}re.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,r=this.g,n=this.b,i=30;return e||r||n?(e&&e=200&&e<300||304===e){try{t=i.call(o,c)}catch(t){return void s.error.call(o,t)}s.load.call(o,t)}else s.error.call(o,c)}return self.XDomainRequest&&!("withCredentials"in c)&&/^(http(s)?:)?\/\//.test(e)&&(c=new XDomainRequest),"onload"in c?c.onload=c.onerror=h:c.onreadystatechange=function(){c.readyState>3&&h()},c.onprogress=function(e){var r=t.event;t.event=e;try{s.progress.call(o,c)}finally{t.event=r}},o.header=function(t,e){return t=(t+"").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+"",o)},o.mimeType=function(t){return arguments.length?(r=null==t?null:t+"",o):r},o.responseType=function(t){return arguments.length?(u=t,o):u},o.response=function(t){return i=t,o},["get","post"].forEach((function(t){o[t]=function(){return o.send.apply(o,[t].concat(n(arguments)))}})),o.send=function(t,n,i){if(2===arguments.length&&"function"==typeof n&&(i=n,n=null),c.open(t,e,!0),null!=r&&!("accept"in l)&&(l.accept=r+",*/*"),c.setRequestHeader)for(var a in l)c.setRequestHeader(a,l[a]);return null!=r&&c.overrideMimeType&&c.overrideMimeType(r),null!=u&&(c.responseType=u),null!=i&&o.on("error",i).on("load",(function(t){i(null,t)})),s.beforesend.call(o,c),c.send(n??null),o},o.abort=function(){return c.abort(),o},t.rebind(o,s,"on"),null==a?o:o.get(function(t){return 1===t.length?function(e,r){t(null==e?r:null)}:t}(a))}ce.forEach((function(t,e){ce.set(t,te(e))})),t.functor=ue,t.xhr=he(C),t.dsv=function(t,e){var r=new RegExp('["'+t+"\n]"),n=t.charCodeAt(0);function i(t,r,n){arguments.length<3&&(n=r,r=null);var i=pe(t,e,null==r?a:o(r),n);return i.row=function(t){return arguments.length?i.response(null==(r=t)?a:o(t)):r},i}function a(t){return i.parse(t.responseText)}function o(t){return function(e){return i.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return r.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}return i.parse=function(t,e){var r;return i.parseRows(t,(function(t,n){if(r)return r(t,n-1);var i=function(e){for(var r={},n=t.length,i=0;i=l)return o;if(i)return i=!1,a;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++24?(isFinite(e)&&(clearTimeout(ge),ge=setTimeout(xe,e)),me=0):(me=1,ye(xe))}function _e(){for(var t=Date.now(),e=fe;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function be(){for(var t,e=fe,r=1/0;e;)e.c?(e.t1&&Ct(t[r[n-2]],t[r[n-1]],t[i])<=0;)--n;r[n++]=i}return r.slice(0,n)}function ke(t,e){return t[0]-e[0]||t[1]-e[1]}t.timer=function(){ve.apply(this,arguments)},t.timer.flush=function(){_e(),be()},t.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)},t.geom={},t.geom.hull=function(t){var e=we,r=Te;if(arguments.length)return n(t);function n(t){if(t.length<3)return[];var n,i=ue(e),a=ue(r),o=t.length,s=[],l=[];for(n=0;n=0;--n)f.push(t[s[c[n]][2]]);for(n=+h;nwt)s=s.L;else{if(!((i=a-qe(s,o))>wt)){n>-wt?(e=s.P,r=s):i>-wt?(e=s,r=s.N):e=r=s;break}if(!s.R){e=s;break}s=s.R}var l=Be(t);if(Pe.insert(e,l),e||r){if(e===r)return Ye(e),r=Be(e.site),Pe.insert(l,r),l.edge=r.edge=Ke(e.site,l.site),Ze(e),void Ze(r);if(!r)return void(l.edge=Ke(e.site,l.site));Ye(e),Ye(r);var c=e.site,u=c.x,h=c.y,p=t.x-u,f=t.y-h,d=r.site,m=d.x-u,g=d.y-h,y=2*(p*g-f*m),v=p*p+f*f,x=m*m+g*g,_={x:(g*v-f*x)/y+u,y:(p*x-m*v)/y+h};Qe(r.edge,c,d,_),l.edge=Ke(c,t,null,_),r.edge=Ke(t,d,null,_),Ze(e),Ze(r)}}function Ve(t,e){var r=t.site,n=r.x,i=r.y,a=i-e;if(!a)return n;var o=t.P;if(!o)return-1/0;var s=(r=o.site).x,l=r.y,c=l-e;if(!c)return s;var u=s-n,h=1/a-1/c,p=u/c;return h?(-p+Math.sqrt(p*p-2*h*(u*u/(-2*c)-l+c/2+i-a/2)))/h+n:(n+s)/2}function qe(t,e){var r=t.N;if(r)return Ve(r,e);var n=t.site;return n.y===e?n.x:1/0}function He(t){this.site=t,this.edges=[]}function Ge(t,e){return e.angle-t.angle}function We(){rr(this),this.x=this.y=this.arc=this.site=this.cy=null}function Ze(t){var e=t.P,r=t.N;if(e&&r){var n=e.site,i=t.site,a=r.site;if(n!==a){var o=i.x,s=i.y,l=n.x-o,c=n.y-s,u=a.x-o,h=2*(l*(g=a.y-s)-c*u);if(!(h>=-1e-12)){var p=l*l+c*c,f=u*u+g*g,d=(g*p-c*f)/h,m=(l*f-u*p)/h,g=m+s,y=Re.pop()||new We;y.arc=t,y.site=i,y.x=d+o,y.y=g+Math.sqrt(d*d+m*m),y.cy=g,t.circle=y;for(var v=null,x=De._;x;)if(y.y=s)return;if(p>d){if(a){if(a.y>=c)return}else a={x:g,y:l};r={x:g,y:c}}else{if(a){if(a.y1)if(p>d){if(a){if(a.y>=c)return}else a={x:(l-i)/n,y:l};r={x:(c-i)/n,y:c}}else{if(a){if(a.y=s)return}else a={x:o,y:n*o+i};r={x:s,y:n*s+i}}else{if(a){if(a.x0)){if(a/=p,p<0){if(a0){if(a>h)return;a>u&&(u=a)}if(a=r-l,p||!(a<0)){if(a/=p,p<0){if(a>h)return;a>u&&(u=a)}else if(p>0){if(a0)){if(a/=f,f<0){if(a0){if(a>h)return;a>u&&(u=a)}if(a=n-c,f||!(a<0)){if(a/=f,f<0){if(a>h)return;a>u&&(u=a)}else if(f>0){if(a0&&(i.a={x:l+u*p,y:c+u*f}),h<1&&(i.b={x:l+h*p,y:c+h*f}),i}}}}}}(t[0][0],t[0][1],t[1][0],t[1][1]),i=r.length;i--;)(!Xe(e=r[i],t)||!n(e)||v(e.a.x-e.b.x)wt||v(i-r)>wt)&&(s.splice(o,0,new tr(Je(a.site,u,v(n-h)wt?{x:h,y:v(e-h)wt?{x:v(r-d)wt?{x:p,y:v(e-p)wt?{x:v(r-f)=r&&c.x<=i&&c.y>=n&&c.y<=o?[[r,o],[i,o],[i,n],[r,n]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(n(t,e)/wt)*wt,y:Math.round(i(t,e)/wt)*wt,i:e}}))}return o.links=function(t){return or(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return or(s(t)).cells.forEach((function(r,n){for(var i,a=r.site,o=r.edges.sort(Ge),s=-1,l=o.length,c=o[l-1].edge,u=c.l===a?c.r:c.l;++sa&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:mr(r,n)})),a=vr.lastIndex;return am&&(m=l.x),l.y>g&&(g=l.y),c.push(l.x),u.push(l.y);else for(h=0;hm&&(m=_),b>g&&(g=b),c.push(_),u.push(b)}var w=m-f,T=g-d;function A(t,e,r,n,i,a,o,s){if(!isNaN(r)&&!isNaN(n))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(v(l-r)+v(c-n)<.01)k(t,e,r,n,i,a,o,s);else{var u=t.point;t.x=t.y=t.point=null,k(t,u,l,c,i,a,o,s),k(t,e,r,n,i,a,o,s)}else t.x=r,t.y=n,t.point=e}else k(t,e,r,n,i,a,o,s)}function k(t,e,r,n,i,a,o,s){var l=.5*(i+o),c=.5*(a+s),u=r>=l,h=n>=c,p=h<<1|u;t.leaf=!1,u?i=l:o=l,h?a=c:s=c,A(t=t.nodes[p]||(t.nodes[p]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,r,n,i,a,o,s)}w>T?g=d+w:m=f+T;var M={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){A(M,t,+y(t,++h),+x(t,h),f,d,m,g)},visit:function(t){pr(t,M,f,d,m,g)},find:function(t){return function(t,e,r,n,i,a,o){var s,l=1/0;return function t(c,u,h,p,f){if(!(u>a||h>o||p=b)<<1|e>=_,T=w+4;w=0&&!(n=t.interpolators[i](e,r)););return n}function _r(t,e){var r,n=[],i=[],a=t.length,o=e.length,s=Math.min(t.length,e.length);for(r=0;r=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}function Cr(t){return 1-Math.cos(t*Mt)}function Ir(t){return Math.pow(2,10*(t-1))}function Lr(t){return 1-Math.sqrt(1-t*t)}function Pr(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function zr(t,e){return e-=t,function(r){return Math.round(t+e*r)}}function Dr(t){var e=[t.a,t.b],r=[t.c,t.d],n=Rr(e),i=Or(e,r),a=Rr(function(t,e,r){return t[0]+=r*e[0],t[1]+=r*e[1],t}(r,e,-i))||0;e[0]*r[1]=0?t.slice(0,e):t,i=e>=0?t.slice(e+1):"in";return n=wr.get(n)||br,function(t){return function(e){return e<=0?0:e>=1?1:t(e)}}((i=Tr.get(i)||C)(n.apply(null,r.call(arguments,1))))},t.interpolateHcl=function(e,r){e=t.hcl(e),r=t.hcl(r);var n=e.h,i=e.c,a=e.l,o=r.h-n,s=r.c-i,l=r.l-a;return isNaN(s)&&(s=0,i=isNaN(i)?r.c:i),isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return Vt(n+o*t,i+s*t,a+l*t)+""}},t.interpolateHsl=function(e,r){e=t.hsl(e),r=t.hsl(r);var n=e.h,i=e.s,a=e.l,o=r.h-n,s=r.s-i,l=r.l-a;return isNaN(s)&&(s=0,i=isNaN(i)?r.s:i),isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return jt(n+o*t,i+s*t,a+l*t)+""}},t.interpolateLab=function(e,r){e=t.lab(e),r=t.lab(r);var n=e.l,i=e.a,a=e.b,o=r.l-n,s=r.a-i,l=r.b-a;return function(t){return Xt(n+o*t,i+s*t,a+l*t)+""}},t.interpolateRound=zr,t.transform=function(e){var r=i.createElementNS(t.ns.prefix.svg,"g");return(t.transform=function(t){if(null!=t){r.setAttribute("transform",t);var e=r.transform.baseVal.consolidate()}return new Dr(e?e.matrix:Fr)})(e)},Dr.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var Fr={a:1,b:0,c:0,d:1,e:0,f:0};function Br(t){return t.length?t.pop()+",":""}function jr(e,r){var n=[],i=[];return e=t.transform(e),r=t.transform(r),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var i=r.push("translate(",null,",",null,")");n.push({i:i-4,x:mr(t[0],e[0])},{i:i-2,x:mr(t[1],e[1])})}else(e[0]||e[1])&&r.push("translate("+e+")")}(e.translate,r.translate,n,i),function(t,e,r,n){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),n.push({i:r.push(Br(r)+"rotate(",null,")")-2,x:mr(t,e)})):e&&r.push(Br(r)+"rotate("+e+")")}(e.rotate,r.rotate,n,i),function(t,e,r,n){t!==e?n.push({i:r.push(Br(r)+"skewX(",null,")")-2,x:mr(t,e)}):e&&r.push(Br(r)+"skewX("+e+")")}(e.skew,r.skew,n,i),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var i=r.push(Br(r)+"scale(",null,",",null,")");n.push({i:i-4,x:mr(t[0],e[0])},{i:i-2,x:mr(t[1],e[1])})}else(1!==e[0]||1!==e[1])&&r.push(Br(r)+"scale("+e+")")}(e.scale,r.scale,n,i),e=r=null,function(t){for(var e,r=-1,a=i.length;++r0?n=t:(e.c=null,e.t=NaN,e=null,l.end({type:"end",alpha:n=0})):t>0&&(l.start({type:"start",alpha:n=t}),e=ve(s.tick)),s):n},s.start=function(){var t,e,r,n=y.length,l=v.length,u=c[0],d=c[1];for(t=0;t=0;)r.push(i[n])}function tn(t,e){for(var r=[t],n=[];null!=(t=r.pop());)if(n.push(t),(a=t.children)&&(i=a.length))for(var i,a,o=-1;++o=0;)o.push(u=c[l]),u.parent=a,u.depth=a.depth+1;r&&(a.value=0),a.children=c}else r&&(a.value=+r.call(n,a,a.depth)||0),delete a.children;return tn(i,(function(e){var n,i;t&&(n=e.children)&&n.sort(t),r&&(i=e.parent)&&(i.value+=e.value)})),s}return n.sort=function(e){return arguments.length?(t=e,n):t},n.children=function(t){return arguments.length?(e=t,n):e},n.value=function(t){return arguments.length?(r=t,n):r},n.revalue=function(t){return r&&(Qr(t,(function(t){t.children&&(t.value=0)})),tn(t,(function(t){var e;t.children||(t.value=+r.call(n,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},n},t.layout.partition=function(){var e=t.layout.hierarchy(),r=[1,1];function n(t,e,r,i){var a=t.children;if(t.x=e,t.y=t.depth*i,t.dx=r,t.dy=i,a&&(o=a.length)){var o,s,l,c=-1;for(r=t.value?r/t.value:0;++cs&&(s=n),o.push(n)}for(r=0;ri&&(n=r,i=e);return n}function mn(t){return t.reduce(gn,0)}function gn(t,e){return t+e[1]}function yn(t,e){return vn(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function vn(t,e){for(var r=-1,n=+t[0],i=(t[1]-n)/e,a=[];++r<=e;)a[r]=i*r+n;return a}function xn(e){return[t.min(e),t.max(e)]}function _n(t,e){return t.value-e.value}function bn(t,e){var r=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=r,r._pack_prev=e}function wn(t,e){t._pack_next=e,e._pack_prev=t}function Tn(t,e){var r=e.x-t.x,n=e.y-t.y,i=t.r+e.r;return.999*i*i>r*r+n*n}function An(t){if((e=t.children)&&(l=e.length)){var e,r,n,i,a,o,s,l,c=1/0,u=-1/0,h=1/0,p=-1/0;if(e.forEach(kn),(r=e[0]).x=-r.r,r.y=0,x(r),l>1&&((n=e[1]).x=n.r,n.y=0,x(n),l>2))for(En(r,n,i=e[2]),x(i),bn(r,i),r._pack_prev=i,bn(i,n),n=r._pack_next,a=3;a0)for(o=-1;++o=h[0]&&l<=h[1]&&((s=c[t.bisect(p,l,1,d)-1]).y+=m,s.push(a[o]));return c}return a.value=function(t){return arguments.length?(r=t,a):r},a.range=function(t){return arguments.length?(n=ue(t),a):n},a.bins=function(t){return arguments.length?(i="number"==typeof t?function(e){return vn(e,t)}:ue(t),a):i},a.frequency=function(t){return arguments.length?(e=!!t,a):e},a},t.layout.pack=function(){var e,r=t.layout.hierarchy().sort(_n),n=0,i=[1,1];function a(t,a){var o=r.call(this,t,a),s=o[0],l=i[0],c=i[1],u=null==e?Math.sqrt:"function"==typeof e?e:function(){return e};if(s.x=s.y=0,tn(s,(function(t){t.r=+u(t.value)})),tn(s,An),n){var h=n*(e?1:Math.max(2*s.r/l,2*s.r/c))/2;tn(s,(function(t){t.r+=h})),tn(s,An),tn(s,(function(t){t.r-=h}))}return Sn(s,l/2,c/2,e?1:1/Math.max(2*s.r/l,2*s.r/c)),o}return a.size=function(t){return arguments.length?(i=t,a):i},a.radius=function(t){return arguments.length?(e=null==t||"function"==typeof t?t:+t,a):e},a.padding=function(t){return arguments.length?(n=+t,a):n},Jr(a,r)},t.layout.tree=function(){var e=t.layout.hierarchy().sort(null).value(null),r=Cn,n=[1,1],i=null;function a(t,a){var c=e.call(this,t,a),u=c[0],h=function(t){for(var e,r={A:null,children:[t]},n=[r];null!=(e=n.pop());)for(var i,a=e.children,o=0,s=a.length;of.x&&(f=t),t.depth>d.depth&&(d=t)}));var m=r(p,f)/2-p.x,g=n[0]/(f.x+r(f,p)/2+m),y=n[1]/(d.depth||1);Qr(u,(function(t){t.x=(t.x+m)*g,t.y=t.depth*y}))}return c}function o(t){var e=t.children,n=t.parent.children,i=t.i?n[t.i-1]:null;if(e.length){!function(t){for(var e,r=0,n=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(t);var a=(e[0].z+e[e.length-1].z)/2;i?(t.z=i.z+r(t._,i._),t.m=t.z-a):t.z=a}else i&&(t.z=i.z+r(t._,i._));t.parent.A=function(t,e,n){if(e){for(var i,a=t,o=t,s=e,l=a.parent.children[0],c=a.m,u=o.m,h=s.m,p=l.m;s=Ln(s),a=In(a),s&&a;)l=In(l),(o=Ln(o)).a=t,(i=s.z+h-a.z-c+r(s._,a._))>0&&(Pn(zn(s,t,n),t,i),c+=i,u+=i),h+=s.m,c+=a.m,p+=l.m,u+=o.m;s&&!Ln(o)&&(o.t=s,o.m+=h-u),a&&!In(l)&&(l.t=a,l.m+=c-p,n=t)}return n}(t,i,t.parent.A||n[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x*=n[0],t.y=t.depth*n[1]}return a.separation=function(t){return arguments.length?(r=t,a):r},a.size=function(t){return arguments.length?(i=null==(n=t)?l:null,a):i?null:n},a.nodeSize=function(t){return arguments.length?(i=null==(n=t)?null:l,a):i?n:null},Jr(a,e)},t.layout.cluster=function(){var e=t.layout.hierarchy().sort(null).value(null),r=Cn,n=[1,1],i=!1;function a(a,o){var s,l=e.call(this,a,o),c=l[0],u=0;tn(c,(function(e){var n=e.children;n&&n.length?(e.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),e.y=function(e){return 1+t.max(e,(function(t){return t.y}))}(n)):(e.x=s?u+=r(e,s):0,e.y=0,s=e)}));var h=Dn(c),p=On(c),f=h.x-r(h,p)/2,d=p.x+r(p,h)/2;return tn(c,i?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-f)/(d-f)*n[0],t.y=(1-(c.y?t.y/c.y:1))*n[1]}),l}return a.separation=function(t){return arguments.length?(r=t,a):r},a.size=function(t){return arguments.length?(i=null==(n=t),a):i?null:n},a.nodeSize=function(t){return arguments.length?(i=null!=(n=t),a):i?n:null},Jr(a,e)},t.layout.treemap=function(){var e,r=t.layout.hierarchy(),n=Math.round,i=[1,1],a=null,o=Rn,s=!1,l="squarify",c=.5*(1+Math.sqrt(5));function u(t,e){for(var r,n,i=-1,a=t.length;++i0;)s.push(r=c[i-1]),s.area+=r.area,"squarify"!==l||(n=f(s,m))<=p?(c.pop(),p=n):(s.area-=s.pop().area,d(s,m,a,!1),m=Math.min(a.dx,a.dy),s.length=s.area=0,p=1/0);s.length&&(d(s,m,a,!0),s.length=s.area=0),e.forEach(h)}}function p(t){var e=t.children;if(e&&e.length){var r,n=o(t),i=e.slice(),a=[];for(u(i,n.dx*n.dy/t.value),a.area=0;r=i.pop();)a.push(r),a.area+=r.area,null!=r.z&&(d(a,r.z?n.dx:n.dy,n,!i.length),a.length=a.area=0);e.forEach(p)}}function f(t,e){for(var r,n=t.area,i=0,a=1/0,o=-1,s=t.length;++oi&&(i=r));return e*=e,(n*=n)?Math.max(e*i*c/n,n/(e*a*c)):1/0}function d(t,e,r,i){var a,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((i||u>r.dy)&&(u=r.dy);++or.dx)&&(u=r.dx);++o1);return t+e*r*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var e=t.random.normal.apply(t,arguments);return function(){return Math.exp(e())}},bates:function(e){var r=t.random.irwinHall(e);return function(){return r()/e}},irwinHall:function(t){return function(){for(var e=0,r=0;r2?Hn:Nn,l=n?Ur:Nr;return i=o(t,e,l,r),a=o(e,t,l,xr),s}function s(t){return i(t)}return s.invert=function(t){return a(t)},s.domain=function(e){return arguments.length?(t=e.map(Number),o()):t},s.range=function(t){return arguments.length?(e=t,o()):e},s.rangeRound=function(t){return s.range(t).interpolate(zr)},s.clamp=function(t){return arguments.length?(n=t,o()):n},s.interpolate=function(t){return arguments.length?(r=t,o()):r},s.ticks=function(e){return Xn(t,e)},s.tickFormat=function(e,r){return d3_scale_linearTickFormat(t,e,r)},s.nice=function(e){return Zn(t,e),o()},s.copy=function(){return Gn(t,e,r,n)},o()}function Wn(e,r){return t.rebind(e,r,"range","rangeRound","interpolate","clamp")}function Zn(t,e){return Un(t,Vn(Yn(t,e)[2])),Un(t,Vn(Yn(t,e)[2])),t}function Yn(t,e){null==e&&(e=10);var r=Bn(t),n=r[1]-r[0],i=Math.pow(10,Math.floor(Math.log(n/e)/Math.LN10)),a=e/n*i;return a<=.15?i*=10:a<=.35?i*=5:a<=.75&&(i*=2),r[0]=Math.ceil(r[0]/i)*i,r[1]=Math.floor(r[1]/i)*i+.5*i,r[2]=i,r}function Xn(e,r){return t.range.apply(t,Yn(e,r))}function $n(t,e,r,n){function i(t){return(r?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(e)}function a(t){return r?Math.pow(e,t):-Math.pow(e,-t)}function o(e){return t(i(e))}return o.invert=function(e){return a(t.invert(e))},o.domain=function(e){return arguments.length?(r=e[0]>=0,t.domain((n=e.map(Number)).map(i)),o):n},o.base=function(r){return arguments.length?(e=+r,t.domain(n.map(i)),o):e},o.nice=function(){var e=Un(n.map(i),r?Math:Kn);return t.domain(e),n=e.map(a),o},o.ticks=function(){var t=Bn(n),o=[],s=t[0],l=t[1],c=Math.floor(i(s)),u=Math.ceil(i(l)),h=e%1?2:e;if(isFinite(u-c)){if(r){for(;c0;p--)o.push(a(c)*p);for(c=0;o[c]l;u--);o=o.slice(c,u)}return o},o.copy=function(){return $n(t.copy(),e,r,n)},Wn(o,t)}t.scale.linear=function(){return Gn([0,1],[0,1],xr,!1)},t.scale.log=function(){return $n(t.scale.linear().domain([0,1]),10,!0,[1,10])};var Kn={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};function Jn(t,e,r){var n=Qn(e),i=Qn(1/e);function a(e){return t(n(e))}return a.invert=function(e){return i(t.invert(e))},a.domain=function(e){return arguments.length?(t.domain((r=e.map(Number)).map(n)),a):r},a.ticks=function(t){return Xn(r,t)},a.tickFormat=function(t,e){return d3_scale_linearTickFormat(r,t,e)},a.nice=function(t){return a.domain(Zn(r,t))},a.exponent=function(o){return arguments.length?(n=Qn(e=o),i=Qn(1/e),t.domain(r.map(n)),a):e},a.copy=function(){return Jn(t.copy(),e,r)},Wn(a,t)}function Qn(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function ti(e,r){var n,i,a;function o(t){return i[((n.get(t)||("range"===r.t?n.set(t,e.push(t)):NaN))-1)%i.length]}function s(r,n){return t.range(e.length).map((function(t){return r+n*t}))}return o.domain=function(t){if(!arguments.length)return e;e=[],n=new _;for(var i,a=-1,s=t.length;++a0?n[t-1]:e[0],th?0:1;if(c=kt)return l(c,f)+(s?l(s,1-f):"")+"Z";var d,m,g,y,v,x,_,b,w,T,A,k,M=0,S=0,E=[];if((y=(+o.apply(this,arguments)||0)/2)&&(g=n===ui?Math.sqrt(s*s+c*c):+n.apply(this,arguments),f||(S*=-1),c&&(S=It(g/c*Math.sin(y))),s&&(M=It(g/s*Math.sin(y)))),c){v=c*Math.cos(u+S),x=c*Math.sin(u+S),_=c*Math.cos(h-S),b=c*Math.sin(h-S);var C=Math.abs(h-u-2*S)<=Tt?0:1;if(S&&gi(v,x,_,b)===f^C){var I=(u+h)/2;v=c*Math.cos(I),x=c*Math.sin(I),_=b=null}}else v=x=0;if(s){w=s*Math.cos(h-M),T=s*Math.sin(h-M),A=s*Math.cos(u+M),k=s*Math.sin(u+M);var L=Math.abs(u-h+2*M)<=Tt?0:1;if(M&&gi(w,T,A,k)===1-f^L){var P=(u+h)/2;w=s*Math.cos(P),T=s*Math.sin(P),A=k=null}}else w=T=0;if(p>wt&&(d=Math.min(Math.abs(c-s)/2,+r.apply(this,arguments)))>.001){m=s0?0:1}function yi(t,e,r,n,i){var a=t[0]-e[0],o=t[1]-e[1],s=(i?n:-n)/Math.sqrt(a*a+o*o),l=s*o,c=-s*a,u=t[0]+l,h=t[1]+c,p=e[0]+l,f=e[1]+c,d=(u+p)/2,m=(h+f)/2,g=p-u,y=f-h,v=g*g+y*y,x=r-n,_=u*f-p*h,b=(y<0?-1:1)*Math.sqrt(Math.max(0,x*x*v-_*_)),w=(_*y-g*b)/v,T=(-_*g-y*b)/v,A=(_*y+g*b)/v,k=(-_*g+y*b)/v,M=w-d,S=T-m,E=A-d,C=k-m;return M*M+S*S>E*E+C*C&&(w=A,T=k),[[w-l,T-c],[w*r/x,T*r/x]]}function vi(){return!0}function xi(t){var e=we,r=Te,n=vi,i=bi,a=i.key,o=.7;function s(a){var s,l=[],c=[],u=-1,h=a.length,p=ue(e),f=ue(r);function d(){l.push("M",i(t(c),o))}for(;++u1&&i.push("H",n[0]),i.join("")},"step-before":Ti,"step-after":Ai,basis:Si,"basis-open":function(t){if(t.length<4)return bi(t);for(var e,r=[],n=-1,i=t.length,a=[0],o=[0];++n<3;)e=t[n],a.push(e[0]),o.push(e[1]);for(r.push(Ei(Li,a)+","+Ei(Li,o)),--n;++n9&&(i=3*e/Math.sqrt(i),o[s]=i*r,o[s+1]=i*n);for(s=-1;++s<=l;)i=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(t))}});function bi(t){return t.length>1?t.join("L"):t+"Z"}function wi(t){return t.join("L")+"Z"}function Ti(t){for(var e=0,r=t.length,n=t[0],i=[n[0],",",n[1]];++e1){s=e[1],a=t[l],l++,n+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var c=2;cTt)+",1 "+e}function l(t,e,r,n){return"Q 0,0 "+n}return a.radius=function(t){return arguments.length?(r=ue(t),a):r},a.source=function(e){return arguments.length?(t=ue(e),a):t},a.target=function(t){return arguments.length?(e=ue(t),a):e},a.startAngle=function(t){return arguments.length?(n=ue(t),a):n},a.endAngle=function(t){return arguments.length?(i=ue(t),a):i},a},t.svg.diagonal=function(){var t=Ri,e=Fi,r=ji;function n(n,i){var a=t.call(this,n,i),o=e.call(this,n,i),s=(a.y+o.y)/2,l=[a,{x:a.x,y:s},{x:o.x,y:s},o];return"M"+(l=l.map(r))[0]+"C"+l[1]+" "+l[2]+" "+l[3]}return n.source=function(e){return arguments.length?(t=ue(e),n):t},n.target=function(t){return arguments.length?(e=ue(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},t.svg.diagonal.radial=function(){var e=t.svg.diagonal(),r=ji,n=e.projection;return e.projection=function(t){return arguments.length?n(function(t){return function(){var e=t.apply(this,arguments),r=e[0],n=e[1]-Mt;return[r*Math.cos(n),r*Math.sin(n)]}}(r=t)):r},e},t.svg.symbol=function(){var t=Ui,e=Ni;function r(r,n){return(qi.get(t.call(this,r,n))||Vi)(e.call(this,r,n))}return r.type=function(e){return arguments.length?(t=ue(e),r):t},r.size=function(t){return arguments.length?(e=ue(t),r):e},r};var qi=t.map({circle:Vi,cross:function(t){var e=Math.sqrt(t/5)/2;return"M"+-3*e+","+-e+"H"+-e+"V"+-3*e+"H"+e+"V"+-e+"H"+3*e+"V"+e+"H"+e+"V"+3*e+"H"+-e+"V"+e+"H"+-3*e+"Z"},diamond:function(t){var e=Math.sqrt(t/(2*Gi)),r=e*Gi;return"M0,"+-e+"L"+r+",0 0,"+e+" "+-r+",0Z"},square:function(t){var e=Math.sqrt(t)/2;return"M"+-e+","+-e+"L"+e+","+-e+" "+e+","+e+" "+-e+","+e+"Z"},"triangle-down":function(t){var e=Math.sqrt(t/Hi),r=e*Hi/2;return"M0,"+r+"L"+e+","+-r+" "+-e+","+-r+"Z"},"triangle-up":function(t){var e=Math.sqrt(t/Hi),r=e*Hi/2;return"M0,"+-r+"L"+e+","+r+" "+-e+","+r+"Z"}});t.svg.symbolTypes=qi.keys();var Hi=Math.sqrt(3),Gi=Math.tan(30*St);G.transition=function(t){for(var e,r,n=Xi||++Ji,i=ea(t),a=[],o=$i||{time:Date.now(),ease:Er,delay:0,duration:250},s=-1,l=this.length;++s0;)c[--p].call(t,o);if(a>=1)return h.event&&h.event.end.call(t,t.__data__,e),--u.count?delete u[n]:delete t[r],1}h||(a=i.time,o=ve((function(t){var e=h.delay;if(o.t=e+a,e<=t)return p(t-e);o.c=p}),0,a),h=u[n]={tween:new _,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:e},i=null,++u.count)}Ki.call=G.call,Ki.empty=G.empty,Ki.node=G.node,Ki.size=G.size,t.transition=function(e,r){return e&&e.transition?Xi?e.transition(r):e:t.selection().transition(e)},t.transition.prototype=Ki,Ki.select=function(t){var e,r,n,i=this.id,a=this.namespace,o=[];t=W(t);for(var s=-1,l=this.length;++srect,.s>rect").attr("width",s[1]-s[0])}function m(t){t.select(".extent").attr("y",l[0]),t.selectAll(".extent,.e>rect,.w>rect").attr("height",l[1]-l[0])}function g(){var h,g,y=this,v=t.select(t.event.target),x=n.of(y,arguments),_=t.select(y),b=v.datum(),w=!/^(n|s)$/.test(b)&&i,T=!/^(e|w)$/.test(b)&&a,A=v.classed("extent"),k=vt(y),M=t.mouse(y),S=t.select(o(y)).on("keydown.brush",(function(){32==t.event.keyCode&&(A||(h=null,M[0]-=s[1],M[1]-=l[1],A=2),R())})).on("keyup.brush",(function(){32==t.event.keyCode&&2==A&&(M[0]+=s[1],M[1]+=l[1],A=0,R())}));if(t.event.changedTouches?S.on("touchmove.brush",I).on("touchend.brush",P):S.on("mousemove.brush",I).on("mouseup.brush",P),_.interrupt().selectAll("*").interrupt(),A)M[0]=s[0]-M[0],M[1]=l[0]-M[1];else if(b){var E=+/w$/.test(b),C=+/^n/.test(b);g=[s[1-E]-M[0],l[1-C]-M[1]],M[0]=s[E],M[1]=l[C]}else t.event.altKey&&(h=M.slice());function I(){var e=t.mouse(y),r=!1;g&&(e[0]+=g[0],e[1]+=g[1]),A||(t.event.altKey?(h||(h=[(s[0]+s[1])/2,(l[0]+l[1])/2]),M[0]=s[+(e[0]0))return o;do{o.push(a=new Date(+e)),i(e,n),t(e)}while(a=r)for(;t(r),!e(r);)r.setTime(r-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;i(t,-1),!e(t););else for(;--r>=0;)for(;i(t,1),!e(t););}))},a&&(s.count=function(n,i){return e.setTime(+n),r.setTime(+i),t(e),t(r),Math.floor(a(e,r))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(o?function(e){return o(e)%t==0}:function(e){return s.count(0,e)%t==0}):s:null}),s}var i=n((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?n((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,r){e.setTime(+e+r*t)}),(function(e,r){return(r-e)/t})):i:null};var a=i.range,o=1e3,s=6e4,l=36e5,c=864e5,u=6048e5,h=n((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*o)}),(function(t,e){return(e-t)/o}),(function(t){return t.getUTCSeconds()})),p=h.range,f=n((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*o)}),(function(t,e){t.setTime(+t+e*s)}),(function(t,e){return(e-t)/s}),(function(t){return t.getMinutes()})),d=f.range,m=n((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*o-t.getMinutes()*s)}),(function(t,e){t.setTime(+t+e*l)}),(function(t,e){return(e-t)/l}),(function(t){return t.getHours()})),g=m.range,y=n((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*s)/c}),(function(t){return t.getDate()-1})),v=y.range;function x(t){return n((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*s)/u}))}var _=x(0),b=x(1),w=x(2),T=x(3),A=x(4),k=x(5),M=x(6),S=_.range,E=b.range,C=w.range,I=T.range,L=A.range,P=k.range,z=M.range,D=n((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),O=D.range,R=n((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));R.every=function(t){return isFinite(t=Math.floor(t))&&t>0?n((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,r){e.setFullYear(e.getFullYear()+r*t)})):null};var F=R.range,B=n((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*s)}),(function(t,e){return(e-t)/s}),(function(t){return t.getUTCMinutes()})),j=B.range,N=n((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*l)}),(function(t,e){return(e-t)/l}),(function(t){return t.getUTCHours()})),U=N.range,V=n((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/c}),(function(t){return t.getUTCDate()-1})),q=V.range;function H(t){return n((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/u}))}var G=H(0),W=H(1),Z=H(2),Y=H(3),X=H(4),$=H(5),K=H(6),J=G.range,Q=W.range,tt=Z.range,et=Y.range,rt=X.range,nt=$.range,it=K.range,at=n((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),ot=at.range,st=n((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));st.every=function(t){return isFinite(t=Math.floor(t))&&t>0?n((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,r){e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null};var lt=st.range;t.timeDay=y,t.timeDays=v,t.timeFriday=k,t.timeFridays=P,t.timeHour=m,t.timeHours=g,t.timeInterval=n,t.timeMillisecond=i,t.timeMilliseconds=a,t.timeMinute=f,t.timeMinutes=d,t.timeMonday=b,t.timeMondays=E,t.timeMonth=D,t.timeMonths=O,t.timeSaturday=M,t.timeSaturdays=z,t.timeSecond=h,t.timeSeconds=p,t.timeSunday=_,t.timeSundays=S,t.timeThursday=A,t.timeThursdays=L,t.timeTuesday=w,t.timeTuesdays=C,t.timeWednesday=T,t.timeWednesdays=I,t.timeWeek=_,t.timeWeeks=S,t.timeYear=R,t.timeYears=F,t.utcDay=V,t.utcDays=q,t.utcFriday=$,t.utcFridays=nt,t.utcHour=N,t.utcHours=U,t.utcMillisecond=i,t.utcMilliseconds=a,t.utcMinute=B,t.utcMinutes=j,t.utcMonday=W,t.utcMondays=Q,t.utcMonth=at,t.utcMonths=ot,t.utcSaturday=K,t.utcSaturdays=it,t.utcSecond=h,t.utcSeconds=p,t.utcSunday=G,t.utcSundays=J,t.utcThursday=X,t.utcThursdays=rt,t.utcTuesday=Z,t.utcTuesdays=tt,t.utcWednesday=Y,t.utcWednesdays=et,t.utcWeek=G,t.utcWeeks=J,t.utcYear=st,t.utcYears=lt,Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=r||self).d3=r.d3||{})}}),b=f({"node_modules/d3-time-format/dist/d3-time-format.js"(t,e){var r,n;r=t,n=function(t,e){function r(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function n(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function i(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function a(t){var a=t.dateTime,o=t.date,l=t.time,c=t.periods,u=t.days,h=t.shortDays,p=t.months,vt=t.shortMonths,xt=f(c),_t=d(c),bt=f(u),wt=d(u),Tt=f(h),At=d(h),kt=f(p),Mt=d(p),St=f(vt),Et=d(vt),Ct={a:function(t){return h[t.getDay()]},A:function(t){return u[t.getDay()]},b:function(t){return vt[t.getMonth()]},B:function(t){return p[t.getMonth()]},c:null,d:O,e:O,f:N,H:R,I:F,j:B,L:j,m:U,M:V,p:function(t){return c[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:gt,s:yt,S:q,u:H,U:G,V:W,w:Z,W:Y,x:null,X:null,y:X,Y:$,Z:K,"%":mt},It={a:function(t){return h[t.getUTCDay()]},A:function(t){return u[t.getUTCDay()]},b:function(t){return vt[t.getUTCMonth()]},B:function(t){return p[t.getUTCMonth()]},c:null,d:J,e:J,f:nt,H:Q,I:tt,j:et,L:rt,m:it,M:at,p:function(t){return c[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:gt,s:yt,S:ot,u:st,U:lt,V:ct,w:ut,W:ht,x:null,X:null,y:pt,Y:ft,Z:dt,"%":mt},Lt={a:function(t,e,r){var n=Tt.exec(e.slice(r));return n?(t.w=At[n[0].toLowerCase()],r+n[0].length):-1},A:function(t,e,r){var n=bt.exec(e.slice(r));return n?(t.w=wt[n[0].toLowerCase()],r+n[0].length):-1},b:function(t,e,r){var n=St.exec(e.slice(r));return n?(t.m=Et[n[0].toLowerCase()],r+n[0].length):-1},B:function(t,e,r){var n=kt.exec(e.slice(r));return n?(t.m=Mt[n[0].toLowerCase()],r+n[0].length):-1},c:function(t,e,r){return Dt(t,a,e,r)},d:k,e:k,f:L,H:S,I:S,j:M,L:I,m:A,M:E,p:function(t,e,r){var n=xt.exec(e.slice(r));return n?(t.p=_t[n[0].toLowerCase()],r+n[0].length):-1},q:T,Q:z,s:D,S:C,u:g,U:y,V:v,w:m,W:x,x:function(t,e,r){return Dt(t,o,e,r)},X:function(t,e,r){return Dt(t,l,e,r)},y:b,Y:_,Z:w,"%":P};function Pt(t,e){return function(r){var n,i,a,o=[],l=-1,c=0,u=t.length;for(r instanceof Date||(r=new Date(+r));++l53)return null;"w"in c||(c.w=1),"Z"in c?(l=(s=n(i(c.y,0,1))).getUTCDay(),s=l>4||0===l?e.utcMonday.ceil(s):e.utcMonday(s),s=e.utcDay.offset(s,7*(c.V-1)),c.y=s.getUTCFullYear(),c.m=s.getUTCMonth(),c.d=s.getUTCDate()+(c.w+6)%7):(l=(s=r(i(c.y,0,1))).getDay(),s=l>4||0===l?e.timeMonday.ceil(s):e.timeMonday(s),s=e.timeDay.offset(s,7*(c.V-1)),c.y=s.getFullYear(),c.m=s.getMonth(),c.d=s.getDate()+(c.w+6)%7)}else("W"in c||"U"in c)&&("w"in c||(c.w="u"in c?c.u%7:"W"in c?1:0),l="Z"in c?n(i(c.y,0,1)).getUTCDay():r(i(c.y,0,1)).getDay(),c.m=0,c.d="W"in c?(c.w+6)%7+7*c.W-(l+5)%7:c.w+7*c.U-(l+6)%7);return"Z"in c?(c.H+=c.Z/100|0,c.M+=c.Z%100,n(c)):r(c)}}function Dt(t,e,r,n){for(var i,a,o=0,l=e.length,c=r.length;o=c)return-1;if(37===(i=e.charCodeAt(o++))){if(i=e.charAt(o++),!(a=Lt[i in s?e.charAt(o++):i])||(n=a(t,r,n))<0)return-1}else if(i!=r.charCodeAt(n++))return-1}return n}return Ct.x=Pt(o,Ct),Ct.X=Pt(l,Ct),Ct.c=Pt(a,Ct),It.x=Pt(o,It),It.X=Pt(l,It),It.c=Pt(a,It),{format:function(t){var e=Pt(t+="",Ct);return e.toString=function(){return t},e},parse:function(t){var e=zt(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=Pt(t+="",It);return e.toString=function(){return t},e},utcParse:function(t){var e=zt(t+="",!0);return e.toString=function(){return t},e}}}var o,s={"-":"",_:" ",0:"0"},l=/^\s*\d+/,c=/^%/,u=/[\\^$*+?|[\]().{}]/g;function h(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a68?1900:2e3),r+n[0].length):-1}function w(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function T(t,e,r){var n=l.exec(e.slice(r,r+1));return n?(t.q=3*n[0]-3,r+n[0].length):-1}function A(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function k(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function M(t,e,r){var n=l.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function S(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function E(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function C(t,e,r){var n=l.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function I(t,e,r){var n=l.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function L(t,e,r){var n=l.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function P(t,e,r){var n=c.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function z(t,e,r){var n=l.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function D(t,e,r){var n=l.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function O(t,e){return h(t.getDate(),e,2)}function R(t,e){return h(t.getHours(),e,2)}function F(t,e){return h(t.getHours()%12||12,e,2)}function B(t,r){return h(1+e.timeDay.count(e.timeYear(t),t),r,3)}function j(t,e){return h(t.getMilliseconds(),e,3)}function N(t,e){return j(t,e)+"000"}function U(t,e){return h(t.getMonth()+1,e,2)}function V(t,e){return h(t.getMinutes(),e,2)}function q(t,e){return h(t.getSeconds(),e,2)}function H(t){var e=t.getDay();return 0===e?7:e}function G(t,r){return h(e.timeSunday.count(e.timeYear(t)-1,t),r,2)}function W(t,r){var n=t.getDay();return t=n>=4||0===n?e.timeThursday(t):e.timeThursday.ceil(t),h(e.timeThursday.count(e.timeYear(t),t)+(4===e.timeYear(t).getDay()),r,2)}function Z(t){return t.getDay()}function Y(t,r){return h(e.timeMonday.count(e.timeYear(t)-1,t),r,2)}function X(t,e){return h(t.getFullYear()%100,e,2)}function $(t,e){return h(t.getFullYear()%1e4,e,4)}function K(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+h(e/60|0,"0",2)+h(e%60,"0",2)}function J(t,e){return h(t.getUTCDate(),e,2)}function Q(t,e){return h(t.getUTCHours(),e,2)}function tt(t,e){return h(t.getUTCHours()%12||12,e,2)}function et(t,r){return h(1+e.utcDay.count(e.utcYear(t),t),r,3)}function rt(t,e){return h(t.getUTCMilliseconds(),e,3)}function nt(t,e){return rt(t,e)+"000"}function it(t,e){return h(t.getUTCMonth()+1,e,2)}function at(t,e){return h(t.getUTCMinutes(),e,2)}function ot(t,e){return h(t.getUTCSeconds(),e,2)}function st(t){var e=t.getUTCDay();return 0===e?7:e}function lt(t,r){return h(e.utcSunday.count(e.utcYear(t)-1,t),r,2)}function ct(t,r){var n=t.getUTCDay();return t=n>=4||0===n?e.utcThursday(t):e.utcThursday.ceil(t),h(e.utcThursday.count(e.utcYear(t),t)+(4===e.utcYear(t).getUTCDay()),r,2)}function ut(t){return t.getUTCDay()}function ht(t,r){return h(e.utcMonday.count(e.utcYear(t)-1,t),r,2)}function pt(t,e){return h(t.getUTCFullYear()%100,e,2)}function ft(t,e){return h(t.getUTCFullYear()%1e4,e,4)}function dt(){return"+0000"}function mt(){return"%"}function gt(t){return+t}function yt(t){return Math.floor(+t/1e3)}function vt(e){return o=a(e),t.timeFormat=o.format,t.timeParse=o.parse,t.utcFormat=o.utcFormat,t.utcParse=o.utcParse,o}vt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var xt="%Y-%m-%dT%H:%M:%S.%LZ",_t=Date.prototype.toISOString?function(t){return t.toISOString()}:t.utcFormat(xt),bt=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:t.utcParse(xt);t.isoFormat=_t,t.isoParse=bt,t.timeFormatDefaultLocale=vt,t.timeFormatLocale=a,Object.defineProperty(t,"__esModule",{value:!0})},"object"==typeof t&&typeof e<"u"?n(t,_()):n((r=r||self).d3=r.d3||{},r.d3)}}),w=f({"node_modules/d3-format/dist/d3-format.js"(t,e){var r,n;r=t,n=function(t){function e(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}function r(t){return(t=e(Math.abs(t)))?t[1]:NaN}var n,i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function a(t){if(!(e=i.exec(t)))throw new Error("invalid format: "+t);var e;return new o({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function o(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function s(t,r){var n=e(t,r);if(!n)return t+"";var i=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+i:i.length>a+1?i.slice(0,a+1)+"."+i.slice(a+1):i+new Array(a-i.length+2).join("0")}a.prototype=o.prototype,o.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var l={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return s(100*t,e)},r:s,s:function(t,r){var i=e(t,r);if(!i)return t+"";var a=i[0],o=i[1],s=o-(n=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,l=a.length;return s===l?a:s>l?a+new Array(s-l+1).join("0"):s>0?a.slice(0,s)+"."+a.slice(s):"0."+new Array(1-s).join("0")+e(t,Math.max(0,r+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};function c(t){return t}var u,h=Array.prototype.map,p=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function f(t){var e=void 0===t.grouping||void 0===t.thousands?c:function(t,e){return function(r,n){for(var i=r.length,a=[],o=0,s=t[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(r.substring(i-=s,i+s)),!((l+=s+1)>n));)s=t[o=(o+1)%t.length];return a.reverse().join(e)}}(h.call(t.grouping,Number),t.thousands+""),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",s=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?c:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(h.call(t.numerals,String)),f=void 0===t.percent?"%":t.percent+"",d=void 0===t.minus?"-":t.minus+"",m=void 0===t.nan?"NaN":t.nan+"";function g(t){var r=(t=a(t)).fill,c=t.align,h=t.sign,g=t.symbol,y=t.zero,v=t.width,x=t.comma,_=t.precision,b=t.trim,w=t.type;"n"===w?(x=!0,w="g"):l[w]||(void 0===_&&(_=12),b=!0,w="g"),(y||"0"===r&&"="===c)&&(y=!0,r="0",c="=");var T="$"===g?i:"#"===g&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",A="$"===g?o:/[%p]/.test(w)?f:"",k=l[w],M=/[defgprs%]/.test(w);function S(t){var i,a,o,l=T,f=A;if("c"===w)f=k(t)+f,t="";else{var g=(t=+t)<0||1/t<0;if(t=isNaN(t)?m:k(Math.abs(t),_),b&&(t=function(t){t:for(var e,r=t.length,n=1,i=-1;n0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),g&&0==+t&&"+"!==h&&(g=!1),l=(g?"("===h?h:d:"-"===h||"("===h?"":h)+l,f=("s"===w?p[8+n/3]:"")+f+(g&&"("===h?")":""),M)for(i=-1,a=t.length;++i(o=t.charCodeAt(i))||o>57){f=(46===o?s+t.slice(i+1):t.slice(i))+f,t=t.slice(0,i);break}}x&&!y&&(t=e(t,1/0));var S=l.length+t.length+f.length,E=S>1)+l+t+f+E.slice(S);break;default:t=E+l+t+f}return u(t)}return _=void 0===_?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_)),S.toString=function(){return t+""},S}return{format:g,formatPrefix:function(t,e){var n=g(((t=a(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(r(e)/3))),o=Math.pow(10,-i),s=p[8+i/3];return function(t){return n(o*t)+s}}}}function d(e){return u=f(e),t.format=u.format,t.formatPrefix=u.formatPrefix,u}d({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),t.FormatSpecifier=o,t.formatDefaultLocale=d,t.formatLocale=f,t.formatSpecifier=a,t.precisionFixed=function(t){return Math.max(0,-r(Math.abs(t)))},t.precisionPrefix=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(r(e)/3)))-r(Math.abs(t)))},t.precisionRound=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,r(e)-r(t))+1},Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=typeof globalThis<"u"?globalThis:r||self).d3=r.d3||{})}}),T=f({"node_modules/is-string-blank/index.js"(t,e){e.exports=function(t){for(var e,r=t.length,n=0;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}}}),A=f({"node_modules/fast-isnumeric/index.js"(t,e){var r=T();e.exports=function(t){var e=typeof t;if("string"===e){var n=t;if(0==(t=+t)&&r(n))return!1}else if("number"!==e)return!1;return t-t<1}}}),k=f({"src/constants/numerical.js"(t,e){e.exports={BADNUM:void 0,FP_SAFE:1e-4*Number.MAX_VALUE,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:"−"}}}),M=f({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(t,e){var r,n;r=t,n=function(t){for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array>"u"?[]:new Uint8Array(256),n=0;n<64;n++)r[e.charCodeAt(n)]=n;t.decode=function(t){var e,n,i,a,o,s=.75*t.length,l=t.length,c=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var u=new ArrayBuffer(s),h=new Uint8Array(u);for(e=0;e>4,h[c++]=(15&i)<<4|a>>2,h[c++]=(3&a)<<6|63&o;return u},t.encode=function(t){var r,n=new Uint8Array(t),i=n.length,a="";for(r=0;r>2],a+=e[(3&n[r])<<4|n[r+1]>>4],a+=e[(15&n[r+1])<<2|n[r+2]>>6],a+=e[63&n[r+2]];return i%3==2?a=a.substring(0,a.length-1)+"=":i%3==1&&(a=a.substring(0,a.length-2)+"=="),a},Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=typeof globalThis<"u"?globalThis:r||self)["base64-arraybuffer"]={})}}),S=f({"src/lib/is_plain_object.js"(t,e){e.exports=function(t){return window&&window.process&&window.process.versions?"[object Object]"===Object.prototype.toString.call(t):"[object Object]"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}}}),E=f({"src/lib/array.js"(t){var e=M().decode,r=S(),n=Array.isArray,i=ArrayBuffer,a=DataView;function o(t){return i.isView(t)&&!(t instanceof a)}function s(t){return n(t)||o(t)}t.isTypedArray=o,t.isArrayOrTypedArray=s,t.isArray1D=function(t){return!s(t[0])},t.ensureArray=function(t,e){return n(t)||(t=[]),t.length=e,t};var l={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};function c(t){return t.constructor===ArrayBuffer}function u(t,e,r){if(s(t)){if(s(t[0])){for(var n=r,i=0;i2)return c[e]=2|c[e],p.set(t,null);if(h){for(o=e;o0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(e[0],e[1]))/Math.LN10;return r(n)||(n=Math.log(Math.max(e[0],e[1]))/Math.LN10-6),n}}}),z=f({"src/lib/relink_private.js"(t,e){var r=E().isArrayOrTypedArray,n=S();e.exports=function t(e,i){for(var a in i){var o=i[a],s=e[a];if(s!==o)if("_"===a.charAt(0)||"function"==typeof o){if(a in e)continue;e[a]=o}else if(r(o)&&r(s)&&n(o[0])){if("customdata"===a||"ids"===a)continue;for(var l=Math.min(o.length,s.length),c=0;ce/2?t-Math.round(t/e)*e:t}}}}),O=f({"node_modules/tinycolor2/tinycolor.js"(t,e){!function(t){var r=/^\s+/,n=/\s+$/,i=0,a=t.round,o=t.min,s=t.max,l=t.random;function c(e,l){if(l=l||{},(e=e||"")instanceof c)return e;if(!(this instanceof c))return new c(e,l);var u=function(e){var i={r:0,g:0,b:0},a=1,l=null,c=null,u=null,h=!1,p=!1;return"string"==typeof e&&(e=function(t){t=t.replace(r,"").replace(n,"").toLowerCase();var e,i=!1;if(S[t])t=S[t],i=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};return(e=N.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=N.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=N.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=N.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=N.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=N.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=N.hex8.exec(t))?{r:P(e[1]),g:P(e[2]),b:P(e[3]),a:R(e[4]),format:i?"name":"hex8"}:(e=N.hex6.exec(t))?{r:P(e[1]),g:P(e[2]),b:P(e[3]),format:i?"name":"hex"}:(e=N.hex4.exec(t))?{r:P(e[1]+""+e[1]),g:P(e[2]+""+e[2]),b:P(e[3]+""+e[3]),a:R(e[4]+""+e[4]),format:i?"name":"hex8"}:!!(e=N.hex3.exec(t))&&{r:P(e[1]+""+e[1]),g:P(e[2]+""+e[2]),b:P(e[3]+""+e[3]),format:i?"name":"hex"}}(e)),"object"==typeof e&&(U(e.r)&&U(e.g)&&U(e.b)?(i=function(t,e,r){return{r:255*I(t,255),g:255*I(e,255),b:255*I(r,255)}}(e.r,e.g,e.b),h=!0,p="%"===String(e.r).substr(-1)?"prgb":"rgb"):U(e.h)&&U(e.s)&&U(e.v)?(l=D(e.s),c=D(e.v),i=function(e,r,n){e=6*I(e,360),r=I(r,100),n=I(n,100);var i=t.floor(e),a=e-i,o=n*(1-r),s=n*(1-a*r),l=n*(1-(1-a)*r),c=i%6;return{r:255*[n,s,o,o,l,n][c],g:255*[l,n,n,s,o,o][c],b:255*[o,o,l,n,n,s][c]}}(e.h,l,c),h=!0,p="hsv"):U(e.h)&&U(e.s)&&U(e.l)&&(l=D(e.s),u=D(e.l),i=function(t,e,r){var n,i,a;function o(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t}if(t=I(t,360),e=I(e,100),r=I(r,100),0===e)n=i=a=r;else{var s=r<.5?r*(1+e):r+e-r*e,l=2*r-s;n=o(l,s,t+1/3),i=o(l,s,t),a=o(l,s,t-1/3)}return{r:255*n,g:255*i,b:255*a}}(e.h,l,u),h=!0,p="hsl"),e.hasOwnProperty("a")&&(a=e.a)),a=C(a),{ok:h,format:e.format||p,r:o(255,s(i.r,0)),g:o(255,s(i.g,0)),b:o(255,s(i.b,0)),a}}(e);this._originalInput=e,this._r=u.r,this._g=u.g,this._b=u.b,this._a=u.a,this._roundA=a(100*this._a)/100,this._format=l.format||u.format,this._gradientType=l.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=u.ok,this._tc_id=i++}function u(t,e,r){t=I(t,255),e=I(e,255),r=I(r,255);var n,i,a=s(t,e,r),l=o(t,e,r),c=(a+l)/2;if(a==l)n=i=0;else{var u=a-l;switch(i=c>.5?u/(2-a-l):u/(a+l),a){case t:n=(e-r)/u+(e>1)+720)%360;--e;)n.h=(n.h+i)%360,a.push(c(n));return a}function M(t,e){e=e||6;for(var r=c(t).toHsv(),n=r.h,i=r.s,a=r.v,o=[],s=1/e;e--;)o.push(c({h:n,s:i,v:a})),a=(a+s)%1;return o}c.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var e,r,n,i=this.toRgb();return e=i.r/255,r=i.g/255,n=i.b/255,.2126*(e<=.03928?e/12.92:t.pow((e+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:t.pow((r+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:t.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=C(t),this._roundA=a(100*this._a)/100,this},toHsv:function(){var t=h(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=h(this._r,this._g,this._b),e=a(360*t.h),r=a(100*t.s),n=a(100*t.v);return 1==this._a?"hsv("+e+", "+r+"%, "+n+"%)":"hsva("+e+", "+r+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var t=u(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=u(this._r,this._g,this._b),e=a(360*t.h),r=a(100*t.s),n=a(100*t.l);return 1==this._a?"hsl("+e+", "+r+"%, "+n+"%)":"hsla("+e+", "+r+"%, "+n+"%, "+this._roundA+")"},toHex:function(t){return p(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(t){return function(t,e,r,n,i){var o=[z(a(t).toString(16)),z(a(e).toString(16)),z(a(r).toString(16)),z(O(n))];return i&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1)?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0):o.join("")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(100*I(this._r,255))+"%",g:a(100*I(this._g,255))+"%",b:a(100*I(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+a(100*I(this._r,255))+"%, "+a(100*I(this._g,255))+"%, "+a(100*I(this._b,255))+"%)":"rgba("+a(100*I(this._r,255))+"%, "+a(100*I(this._g,255))+"%, "+a(100*I(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(E[p(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+f(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?"GradientType = 1, ":"";if(t){var i=c(t);r="#"+f(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+e+",endColorstr="+r+")"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,n=this._a<1&&this._a>=0;return e||!n||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(r=this.toRgbString()),"prgb"===t&&(r=this.toPercentageRgbString()),("hex"===t||"hex6"===t)&&(r=this.toHexString()),"hex3"===t&&(r=this.toHexString(!0)),"hex4"===t&&(r=this.toHex8String(!0)),"hex8"===t&&(r=this.toHex8String()),"name"===t&&(r=this.toName()),"hsl"===t&&(r=this.toHslString()),"hsv"===t&&(r=this.toHsvString()),r||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return c(this.toString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(y,arguments)},brighten:function(){return this._applyModification(v,arguments)},darken:function(){return this._applyModification(x,arguments)},desaturate:function(){return this._applyModification(d,arguments)},saturate:function(){return this._applyModification(m,arguments)},greyscale:function(){return this._applyModification(g,arguments)},spin:function(){return this._applyModification(_,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(k,arguments)},complement:function(){return this._applyCombination(b,arguments)},monochromatic:function(){return this._applyCombination(M,arguments)},splitcomplement:function(){return this._applyCombination(A,arguments)},triad:function(){return this._applyCombination(w,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},c.fromRatio=function(t,e){if("object"==typeof t){var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]="a"===n?t[n]:D(t[n]));t=r}return c(t,e)},c.equals=function(t,e){return!(!t||!e)&&c(t).toRgbString()==c(e).toRgbString()},c.random=function(){return c.fromRatio({r:l(),g:l(),b:l()})},c.mix=function(t,e,r){r=0===r?0:r||50;var n=c(t).toRgb(),i=c(e).toRgb(),a=r/100;return c({r:(i.r-n.r)*a+n.r,g:(i.g-n.g)*a+n.g,b:(i.b-n.b)*a+n.b,a:(i.a-n.a)*a+n.a})},c.readability=function(e,r){var n=c(e),i=c(r);return(t.max(n.getLuminance(),i.getLuminance())+.05)/(t.min(n.getLuminance(),i.getLuminance())+.05)},c.isReadable=function(t,e,r){var n,i,a=c.readability(t,e);switch(i=!1,n=function(t){var e,r;return"AA"!==(e=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase())&&"AAA"!==e&&(e="AA"),"small"!==(r=(t.size||"small").toLowerCase())&&"large"!==r&&(r="small"),{level:e,size:r}}(r),n.level+n.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},c.mostReadable=function(t,e,r){var n,i,a,o,s=null,l=0;i=(r=r||{}).includeFallbackColors,a=r.level,o=r.size;for(var u=0;ul&&(l=n,s=c(e[u]));return c.isReadable(t,s,{level:a,size:o})||!i?s:(r.includeFallbackColors=!1,c.mostReadable(t,["#fff","#000"],r))};var S=c.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=c.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(S);function C(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function I(e,r){(function(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)})(e)&&(e="100%");var n=function(t){return"string"==typeof t&&-1!=t.indexOf("%")}(e);return e=o(r,s(0,parseFloat(e))),n&&(e=parseInt(e*r,10)/100),t.abs(e-r)<1e-6?1:e%r/parseFloat(r)}function L(t){return o(1,s(0,t))}function P(t){return parseInt(t,16)}function z(t){return 1==t.length?"0"+t:""+t}function D(t){return t<=1&&(t=100*t+"%"),t}function O(e){return t.round(255*parseFloat(e)).toString(16)}function R(t){return P(t)/255}var F,B,j,N=(B="[\\s|\\(]+("+(F="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+F+")[,|\\s]+("+F+")\\s*\\)?",j="[\\s|\\(]+("+F+")[,|\\s]+("+F+")[,|\\s]+("+F+")[,|\\s]+("+F+")\\s*\\)?",{CSS_UNIT:new RegExp(F),rgb:new RegExp("rgb"+B),rgba:new RegExp("rgba"+j),hsl:new RegExp("hsl"+B),hsla:new RegExp("hsla"+j),hsv:new RegExp("hsv"+B),hsva:new RegExp("hsva"+j),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function U(t){return!!N.CSS_UNIT.exec(t)}typeof e<"u"&&e.exports?e.exports=c:window.tinycolor=c}(Math)}}),R=f({"src/lib/extend.js"(t){var e=S(),r=Array.isArray;function n(t,i,a,o){var s,l,c,u,h,p,f,d=t[0],m=t.length;if(2===m&&r(d)&&r(t[1])&&0===d.length){if(f=function(t,e){var r,n;for(r=0;r=0)))return t;if(3===o)i[o]>1&&(i[o]=1);else if(i[o]>=1)return t}var s=Math.round(255*i[0])+", "+Math.round(255*i[1])+", "+Math.round(255*i[2]);return a?"rgba("+s+", "+i[3]+")":"rgb("+s+")"}a.tinyRGB=function(t){var e=t.toRgb();return"rgb("+Math.round(e.r)+", "+Math.round(e.g)+", "+Math.round(e.b)+")"},a.rgb=function(t){return a.tinyRGB(r(t))},a.opacity=function(t){return t?r(t).getAlpha():0},a.addOpacity=function(t,e){var n=r(t).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+e+")"},a.combine=function(t,e){var n=r(t).toRgb();if(1===n.a)return r(t).toRgbString();var i=r(e||l).toRgb(),a=1===i.a?i:{r:255*(1-i.a)+i.r*i.a,g:255*(1-i.a)+i.g*i.a,b:255*(1-i.a)+i.b*i.a},o={r:a.r*(1-n.a)+n.r*n.a,g:a.g*(1-n.a)+n.g*n.a,b:a.b*(1-n.a)+n.b*n.a};return r(o).toRgbString()},a.interpolate=function(t,e,n){var i=r(t).toRgb(),a=r(e).toRgb(),o={r:n*i.r+(1-n)*a.r,g:n*i.g+(1-n)*a.g,b:n*i.b+(1-n)*a.b};return r(o).toRgbString()},a.contrast=function(t,e,n){var i=r(t);return 1!==i.getAlpha()&&(i=r(a.combine(t,l))),(i.isDark()?e?i.lighten(e):l:n?i.darken(n):s).toString()},a.stroke=function(t,e){var n=r(e);t.style({stroke:a.tinyRGB(n),"stroke-opacity":n.getAlpha()})},a.fill=function(t,e){var n=r(e);t.style({fill:a.tinyRGB(n),"fill-opacity":n.getAlpha()})},a.clean=function(t){if(t&&"object"==typeof t){var e,r,n,o,s=Object.keys(t);for(e=0;ei.max?r.set(n):r.set(+t)}},integer:{coerceFunction:function(t,r,n,i){-1===(i.extras||[]).indexOf(t)?(p(t)&&(t=f(t)),t%1||!e(t)||void 0!==i.min&&ti.max?r.set(n):r.set(+t)):r.set(t)}},string:{coerceFunction:function(t,e,r,n){if("string"!=typeof t){var i="number"==typeof t;!0!==n.strict&&i?e.set(String(t)):e.set(r)}else n.noBlank&&!t?e.set(r):e.set(t)}},color:{coerceFunction:function(t,e,n){p(t)&&(t=f(t)),r(t).isValid()?e.set(t):e.set(n)}},colorlist:{coerceFunction:function(t,e,n){Array.isArray(t)&&t.length&&t.every((function(t){return r(t).isValid()}))?e.set(t):e.set(n)}},colorscale:{coerceFunction:function(t,e,r){e.set(a.get(t,r))}},angle:{coerceFunction:function(t,r,n){p(t)&&(t=f(t)),"auto"===t?r.set("auto"):e(t)?r.set(u(+t,360)):r.set(n)}},subplotid:{coerceFunction:function(t,e,r,n){var i=n.regex||c(r);"string"==typeof t&&i.test(t)?e.set(t):e.set(r)},validateFunction:function(t,e){var r=e.dflt;return t===r||"string"==typeof t&&!!c(r).test(t)}},flaglist:{coerceFunction:function(t,e,r,n){if(-1===(n.extras||[]).indexOf(t))if("string"==typeof t){for(var i=t.split("+"),a=0;a/g),l=0;l1){var e=["LOG:"];for(t=0;t1){var i=[];for(t=0;t"),"long")}},i.warn=function(){var t;if(r.logging>0){var e=["WARN:"];for(t=0;t0){var i=[];for(t=0;t"),"stick")}},i.error=function(){var t;if(r.logging>0){var e=["ERROR:"];for(t=0;t0){var i=[];for(t=0;t"),"stick")}}}}),K=f({"src/lib/noop.js"(t,e){e.exports=function(){}}}),J=f({"src/lib/push_unique.js"(t,e){e.exports=function(t,e){if(e instanceof RegExp){for(var r=e.toString(),n=0;n0){for(var n=[],i=0;i=e&&n<=r?n:l}if("string"!=typeof n&&"number"!=typeof n)return l;n=String(n);var _=x(i),b=n.charAt(0);_&&("G"===b||"g"===b)&&(n=n.substr(1),i="");var w=_&&"chinese"===i.substr(0,7),T=n.match(w?y:g);if(!T)return l;var A=T[1],k=T[3]||"1",M=Number(T[5]||1),S=Number(T[7]||0),E=Number(T[9]||0),C=Number(T[11]||0);if(_){if(2===A.length)return l;var I;A=Number(A);try{var L=d.getComponentMethod("calendars","getCal")(i);if(w){var P="i"===k.charAt(k.length-1);k=parseInt(k,10),I=L.newDate(A,L.toMonthIndex(A,k,P),M)}else I=L.newDate(A,Number(k),M)}catch{return l}return I?(I.toJD()-f)*c+S*u+E*h+C*p:l}A=2===A.length?(Number(A)+2e3-v)%100+v:Number(A),k-=1;var z=new Date(Date.UTC(2e3,k,M,S,E));return z.setUTCFullYear(A),z.getUTCMonth()!==k||z.getUTCDate()!==M?l:z.getTime()+C*p},e=t.MIN_MS=t.dateTime2ms("-9999"),r=t.MAX_MS=t.dateTime2ms("9999-12-31 23:59:59.9999"),t.isDateTime=function(e,r){return t.dateTime2ms(e,r)!==l};var w=90*c,T=3*u,M=5*h;function S(t,e,r,n,i){if((e||r||n||i)&&(t+=" "+_(e,2)+":"+_(r,2),(n||i)&&(t+=":"+_(n,2),i))){for(var a=4;i%10==0;)a-=1,i/=10;t+="."+_(i,a)}return t}t.ms2DateTime=function(t,n,i){if("number"!=typeof t||!(t>=e&&t<=r))return l;n||(n=0);var a,s,g,y,v,_,b=Math.floor(10*o(t+.05,1)),A=Math.round(t-b/10);if(x(i)){var k=Math.floor(A/c)+f,E=Math.floor(o(t,c));try{a=d.getComponentMethod("calendars","getCal")(i).fromJD(k).formatDate("yyyy-mm-dd")}catch{a=m("G%Y-%m-%d")(new Date(A))}if("-"===a.charAt(0))for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;s=n=e+c&&t<=r-c))return l;var i=Math.floor(10*o(t+.05,1)),a=new Date(Math.round(t-i/10));return S(n("%Y-%m-%d")(a),a.getHours(),a.getMinutes(),a.getSeconds(),10*a.getUTCMilliseconds()+i)},t.cleanDate=function(e,r,n){if(e===l)return r;if(t.isJSDate(e)||"number"==typeof e&&isFinite(e)){if(x(n))return a.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(!(e=t.ms2DateTimeLocal(+e))&&void 0!==r)return r}else if(!t.isDateTime(e,n))return a.error("unrecognized date",e),r;return e};var E=/%\d?f/g,C=/%h/g,I={1:"1",2:"1",3:"2",4:"2"};function L(t,e,r,n){t=t.replace(E,(function(t){var r=Math.min(+t.charAt(1)||6,6);return(e/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,"")||"0"}));var i=new Date(Math.floor(e+.05));if(t=t.replace(C,(function(){return I[r("%q")(i)]})),x(n))try{t=d.getComponentMethod("calendars","worldCalFmt")(t,e,n)}catch{return"Invalid"}return r(t)(i)}var P=[59,59.9,59.99,59.999,59.9999];t.formatDate=function(t,e,r,n,a,s){if(a=x(a)&&a,!e)if("y"===r)e=s.year;else if("m"===r)e=s.month;else{if("d"!==r)return function(t,e){var r=o(t+.05,c),n=_(Math.floor(r/u),2)+":"+_(o(Math.floor(r/h),60),2);if("M"!==e){i(e)||(e=0);var a=(100+Math.min(o(t/p,60),P[e])).toFixed(e).substr(1);e>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}(t,r)+"\n"+L(s.dayMonthYear,t,n,a);e=s.dayMonth+"\n"+s.year}return L(e,t,n,a)};var z=3*c;t.incrementMonth=function(t,e,r){r=x(r)&&r;var n=o(t,c);if(t=Math.round(t-n),r)try{var i=Math.round(t/c)+f,s=d.getComponentMethod("calendars","getCal")(r),l=s.fromJD(i);return e%12?s.add(l,e,"m"):s.add(l,e/12,"y"),(l.toJD()-f)*c+n}catch{a.error("invalid ms "+t+" in calendar "+r)}var u=new Date(t+z);return u.setUTCMonth(u.getUTCMonth()+e)+n-z},t.findExactDates=function(t,e){for(var r,n,a=0,o=0,s=0,l=0,u=x(e)&&d.getComponentMethod("calendars","getCal")(e),h=0;he}function c(t,e){return t>=e}t.findBin=function(t,n,i){if(e(n.start))return i?Math.ceil((t-n.start)/n.size-a)-1:Math.floor((t-n.start)/n.size+a);var u,h,p=0,f=n.length,d=0,m=f>1?(n[f-1]-n[0])/(f-1):1;for(h=m>=0?i?o:s:i?c:l,t+=m*a*(i?-1:1)*(m>=0?1:-1);p90&&r.log("Long binary search..."),p-1},t.sorterAsc=function(t,e){return t-e},t.sorterDes=function(t,e){return e-t},t.distinctVals=function(e){var r,n=e.slice();for(n.sort(t.sorterAsc),r=n.length-1;r>-1&&n[r]===i;r--);for(var a,o=n[r]-n[0]||1,s=o/(r||1)/1e4,l=[],c=0;c<=r;c++){var u=n[c],h=u-a;void 0===a?(l.push(u),a=u):h>s&&(o=Math.min(o,h),l.push(u),a=u)}return{vals:l,minDiff:o}},t.roundUp=function(t,e,r){for(var n,i=0,a=e.length-1,o=0,s=r?0:1,l=r?1:0,c=r?Math.ceil:Math.floor;i0&&(n=1),r&&n)return t.sort(e)}return n?t:t.reverse()},t.findIndexOfMin=function(t,e){e=e||n;for(var r,i=1/0,a=0;aa.length)&&(o=a.length),e(i)||(i=!1),r(a[0])){for(l=new Array(o),s=0;st.length-1)return t[t.length-1];var n=r%1;return n*t[Math.ceil(r)]+(1-n)*t[Math.floor(r)]}}}),Xt=f({"src/lib/angles.js"(t,e){var r=D(),n=r.mod,i=r.modHalf,a=Math.PI,o=2*a;function s(t){return Math.abs(t[1]-t[0])>o-1e-14}function l(t,e){return i(e-t,o)}function c(t,e){if(s(e))return!0;var r,i;e[0](i=n(i,o))&&(i+=o);var a=n(t,o),l=a+o;return a>=r&&a<=i||l>=r&&l<=i}function u(t,e,r,n,i,l,c){i=i||0,l=l||0;var u,h,p,f,d,m=s([r,n]);function g(t,e){return[t*Math.cos(e)+i,l-t*Math.sin(e)]}m?(u=0,h=a,p=o):r=i&&t<=a);var i,a},pathArc:function(t,e,r,n,i){return u(null,t,e,r,n,i,0)},pathSector:function(t,e,r,n,i){return u(null,t,e,r,n,i,1)},pathAnnulus:function(t,e,r,n,i,a){return u(t,e,r,n,i,a,1)}}}}),$t=f({"src/lib/anchor_utils.js"(t){t.isLeftAnchor=function(t){return"left"===t.xanchor||"auto"===t.xanchor&&t.x<=1/3},t.isCenterAnchor=function(t){return"center"===t.xanchor||"auto"===t.xanchor&&t.x>1/3&&t.x<2/3},t.isRightAnchor=function(t){return"right"===t.xanchor||"auto"===t.xanchor&&t.x>=2/3},t.isTopAnchor=function(t){return"top"===t.yanchor||"auto"===t.yanchor&&t.y>=2/3},t.isMiddleAnchor=function(t){return"middle"===t.yanchor||"auto"===t.yanchor&&t.y>1/3&&t.y<2/3},t.isBottomAnchor=function(t){return"bottom"===t.yanchor||"auto"===t.yanchor&&t.y<=1/3}}}),Kt=f({"src/lib/geometry2d.js"(t){var e,r,n,i=D().mod;function a(t,e,r,n,i,a,o,s){var l=r-t,c=i-t,u=o-i,h=n-e,p=a-e,f=s-a,d=l*f-u*h;if(0===d)return null;var m=(c*f-u*p)/d,g=(c*h-l*p)/d;return g<0||g>1||m<0||m>1?null:{x:t+l*m,y:e+h*m}}function o(t,e,r,n,i){var a=n*t+i*e;if(a<0)return n*n+i*i;if(a>r){var o=n-t,s=i-e;return o*o+s*s}var l=n*e-i*t;return l*l/r}t.segmentsIntersect=a,t.segmentDistance=function(t,e,r,n,i,s,l,c){if(a(t,e,r,n,i,s,l,c))return 0;var u=r-t,h=n-e,p=l-i,f=c-s,d=u*u+h*h,m=p*p+f*f,g=Math.min(o(u,h,d,i-t,s-e),o(u,h,d,l-t,c-e),o(p,f,m,t-i,e-s),o(p,f,m,r-i,n-s));return Math.sqrt(g)},t.getTextLocation=function(t,a,o,s){if((t!==r||s!==n)&&(e={},r=t,n=s),e[o])return e[o];var l=t.getPointAtLength(i(o-s/2,a)),c=t.getPointAtLength(i(o+s/2,a)),u=Math.atan((c.y-l.y)/(c.x-l.x)),h=t.getPointAtLength(i(o,a)),p={x:(4*h.x+l.x+c.x)/6,y:(4*h.y+l.y+c.y)/6,theta:u};return e[o]=p,p},t.clearLocationCache=function(){r=null},t.getVisibleSegment=function(t,e,r){var n,i,a=e.left,o=e.right,s=e.top,l=e.bottom,c=0,u=t.getTotalLength(),h=u;function p(e){var r=t.getPointAtLength(e);0===e?n=r:e===u&&(i=r);var c=r.xo?r.x-o:0,h=r.yl?r.y-l:0;return Math.sqrt(c*c+h*h)}for(var f=p(c);f;){if((c+=f+r)>h)return;f=p(c)}for(f=p(h);f;){if(c>(h-=f+r))return;f=p(h)}return{min:c,max:h,len:h-c,total:u,isClosed:0===c&&h===u&&Math.abs(n.x-i.x)<.1&&Math.abs(n.y-i.y)<.1}},t.findPointOnPath=function(t,e,r,n){for(var i,a,o,s=(n=n||{}).pathLength||t.getTotalLength(),l=n.tolerance||.001,c=n.iterationLimit||30,u=t.getPointAtLength(0)[r]>t.getPointAtLength(s)[r]?-1:1,h=0,p=0,f=s;h0?f=i:p=i,h++}return a}}}),Jt=f({"src/lib/throttle.js"(t){var e={};function r(t){t&&null!==t.timer&&(clearTimeout(t.timer),t.timer=null)}t.throttle=function(t,n,i){var a=e[t],o=Date.now();if(!a){for(var s in e)e[s].tsa.ts+n?l():a.timer=setTimeout((function(){l(),a.timer=null}),n)},t.done=function(t){var r=e[t];return r&&r.timer?new Promise((function(t){var e=r.onDone;r.onDone=function(){e&&e(),t(),r.onDone=null}})):Promise.resolve()},t.clear=function(n){if(n)r(e[n]),delete e[n];else for(var i in e)t.clear(i)}}}),Qt=f({"src/lib/clear_responsive.js"(t,e){e.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}}}),te=f({"node_modules/is-mobile/index.js"(t,e){e.exports=a,e.exports.isMobile=a,e.exports.default=a;var r=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,n=/CrOS/,i=/android|ipad|playbook|silk/i;function a(t){t||(t={});let e=t.ua;if(!e&&typeof navigator<"u"&&(e=navigator.userAgent),e&&e.headers&&"string"==typeof e.headers["user-agent"]&&(e=e.headers["user-agent"]),"string"!=typeof e)return!1;let a=r.test(e)&&!n.test(e)||!!t.tablet&&i.test(e);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==e.indexOf("Macintosh")&&-1!==e.indexOf("Safari")&&(a=!0),a}}}),ee=f({"src/lib/preserve_drawing_buffer.js"(t,e){var r=A(),n=te();e.exports=function(t){var e,i;if(t&&t.hasOwnProperty("userAgent")?e=t.userAgent:(typeof navigator<"u"&&(i=navigator.userAgent),i&&i.headers&&"string"==typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),e=i),"string"!=typeof e)return!0;var a=n({ua:{headers:{"user-agent":e}},tablet:!0,featureDetect:!1});if(!a)for(var o=e.split(" "),s=1;s-1;l--){var c=o[l];if("Version/"===c.substr(0,8)){var u=c.substr(8).split(".")[0];if(r(u)&&(u=+u),u>=13)return!0}}return a}}}),re=f({"src/lib/make_trace_groups.js"(t,e){var r=x();e.exports=function(t,e,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(e,(function(t){return t[0].trace.uid}));i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each((function(t){t[0][a]=r.select(this)})),i}}}),ne=f({"src/lib/localize.js"(t,e){var r=qt();e.exports=function(t,e){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[e];if(l)return l}a=r.localeRegistry}var c=n.split("-")[0];if(c===n)break;n=c}return e}}}),ie=f({"src/lib/filter_unique.js"(t,e){e.exports=function(t){for(var e={},r=[],n=0,i=0;i1?(r*t+r*e)/r:t+e,i=String(n).length;if(i>16){var a=String(e).length;if(i>=String(t).length+a){var o=parseFloat(n).toPrecision(12);-1===o.indexOf("e+")&&(n=+o)}}return n}}}),se=f({"src/lib/clean_number.js"(t,e){var r=A(),n=k().BADNUM,i=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;e.exports=function(t){return"string"==typeof t&&(t=t.replace(i,"")),r(t)?Number(t):n}}}),le=f({"src/lib/index.js"(t,e){var r=x(),n=b().utcFormat,i=w().format,a=A(),o=k(),s=o.FP_SAFE,l=-s,c=o.BADNUM,u=e.exports={};u.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:"0.f"===t?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var h={};u.warnBadFormat=function(t){var e=String(t);h[e]||(h[e]=1,u.warn('encountered bad format: "'+e+'"'))},u.noFormat=function(t){return String(t)},u.numberFormat=function(t){var e;try{e=i(u.adjustFormat(t))}catch{return u.warnBadFormat(t),u.noFormat}return e},u.nestedProperty=C(),u.keyedContainer=I(),u.relativeAttr=L(),u.isPlainObject=S(),u.toLogRange=P(),u.relinkPrivateKeys=z();var p=E();u.isArrayBuffer=p.isArrayBuffer,u.isTypedArray=p.isTypedArray,u.isArrayOrTypedArray=p.isArrayOrTypedArray,u.isArray1D=p.isArray1D,u.ensureArray=p.ensureArray,u.concat=p.concat,u.maxRowLength=p.maxRowLength,u.minRowLength=p.minRowLength;var f=D();u.mod=f.mod,u.modHalf=f.modHalf;var d=Z();u.valObjectMeta=d.valObjectMeta,u.coerce=d.coerce,u.coerce2=d.coerce2,u.coerceFont=d.coerceFont,u.coercePattern=d.coercePattern,u.coerceHoverinfo=d.coerceHoverinfo,u.coerceSelectionMarkerOpacity=d.coerceSelectionMarkerOpacity,u.validate=d.validate;var m=Ht();u.dateTime2ms=m.dateTime2ms,u.isDateTime=m.isDateTime,u.ms2DateTime=m.ms2DateTime,u.ms2DateTimeLocal=m.ms2DateTimeLocal,u.cleanDate=m.cleanDate,u.isJSDate=m.isJSDate,u.formatDate=m.formatDate,u.incrementMonth=m.incrementMonth,u.dateTick0=m.dateTick0,u.dfltRange=m.dfltRange,u.findExactDates=m.findExactDates,u.MIN_MS=m.MIN_MS,u.MAX_MS=m.MAX_MS;var g=Wt();u.findBin=g.findBin,u.sorterAsc=g.sorterAsc,u.sorterDes=g.sorterDes,u.distinctVals=g.distinctVals,u.roundUp=g.roundUp,u.sort=g.sort,u.findIndexOfMin=g.findIndexOfMin,u.sortObjectKeys=Zt();var y=Yt();u.aggNums=y.aggNums,u.len=y.len,u.mean=y.mean,u.geometricMean=y.geometricMean,u.median=y.median,u.midRange=y.midRange,u.variance=y.variance,u.stdev=y.stdev,u.interp=y.interp;var v=Ct();u.init2dArray=v.init2dArray,u.transposeRagged=v.transposeRagged,u.dot=v.dot,u.translationMatrix=v.translationMatrix,u.rotationMatrix=v.rotationMatrix,u.rotationXYMatrix=v.rotationXYMatrix,u.apply3DTransform=v.apply3DTransform,u.apply2DTransform=v.apply2DTransform,u.apply2DTransform2=v.apply2DTransform2,u.convertCssMatrix=v.convertCssMatrix,u.inverseTransformMatrix=v.inverseTransformMatrix;var _=Xt();u.deg2rad=_.deg2rad,u.rad2deg=_.rad2deg,u.angleDelta=_.angleDelta,u.angleDist=_.angleDist,u.isFullCircle=_.isFullCircle,u.isAngleInsideSector=_.isAngleInsideSector,u.isPtInsideSector=_.isPtInsideSector,u.pathArc=_.pathArc,u.pathSector=_.pathSector,u.pathAnnulus=_.pathAnnulus;var T=$t();u.isLeftAnchor=T.isLeftAnchor,u.isCenterAnchor=T.isCenterAnchor,u.isRightAnchor=T.isRightAnchor,u.isTopAnchor=T.isTopAnchor,u.isMiddleAnchor=T.isMiddleAnchor,u.isBottomAnchor=T.isBottomAnchor;var M=Kt();u.segmentsIntersect=M.segmentsIntersect,u.segmentDistance=M.segmentDistance,u.getTextLocation=M.getTextLocation,u.clearLocationCache=M.clearLocationCache,u.getVisibleSegment=M.getVisibleSegment,u.findPointOnPath=M.findPointOnPath;var O=R();u.extendFlat=O.extendFlat,u.extendDeep=O.extendDeep,u.extendDeepAll=O.extendDeepAll,u.extendDeepNoArrays=O.extendDeepNoArrays;var F=$();u.log=F.log,u.warn=F.warn,u.error=F.error;var B=W();u.counterRegex=B.counter;var j=Jt();u.throttle=j.throttle,u.throttleDone=j.done,u.clearThrottle=j.clear;var N=It();function U(t){var e={};for(var r in t)for(var n=t[r],i=0;is||t=e)&&a(t)&&t>=0&&t%1==0},u.noop=K(),u.identity=Gt(),u.repeat=function(t,e){for(var r=new Array(e),n=0;nr?Math.max(r,Math.min(e,t)):Math.max(e,Math.min(r,t))},u.bBoxIntersect=function(t,e,r){return r=r||0,t.left<=e.right+r&&e.left<=t.right+r&&t.top<=e.bottom+r&&e.top<=t.bottom+r},u.simpleMap=function(t,e,r,n,i){for(var a=t.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(u.warn("randstr failed uniqueness"),l):t(e,r,n,(i||0)+1):l},u.OptionControl=function(t,e){t||(t={}),e||(e="opt");var r={optionList:[],_newoption:function(n){n[e]=t,r[n.name]=n,r.optionList.push(n)}};return r["_"+e]=t,r},u.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var r,n,i,a,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(r=0;r=s&&(i-=s*Math.floor(i/s)),i<0?i=-1-i:i>=o&&(i=s-1-i),a+=t[i]*c[n];u[r]=a}return u},u.syncOrAsync=function(t,e,r){var n;function i(){return u.syncOrAsync(t,e,r)}for(;t.length;)if((n=(0,t.splice(0,1)[0])(e))&&n.then)return n.then(i);return r&&r(e)},u.stripTrailingSlash=function(t){return"/"===t.substr(-1)?t.substr(0,t.length-1):t},u.noneOrAll=function(t,e,r){if(t){var n,i=!1,a=!0;for(n=0;n0?e:0}))},u.fillArray=function(t,e,r,n){if(n=n||u.identity,u.isArrayOrTypedArray(t))for(var i=0;i1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l},u.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var tt=/^\w*$/;u.templateString=function(t,e){var r={};return t.replace(u.TEMPLATE_STRING_REGEX,(function(t,n){var i;return tt.test(n)?i=e[n]:(r[n]=r[n]||u.nestedProperty(e,n).get,i=r[n](!0)),void 0!==i?i:""}))};var et={max:10,count:0,name:"hovertemplate"};u.hovertemplateString=function(){return ot.apply(et,arguments)};var rt={max:10,count:0,name:"texttemplate"};u.texttemplateString=function(){return ot.apply(rt,arguments)};var nt=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/,it={max:10,count:0,name:"texttemplate",parseMultDiv:!0};u.texttemplateStringForShapes=function(){return ot.apply(it,arguments)};var at=/^[:|\|]/;function ot(t,e,r){var i=this,a=arguments;return e||(e={}),t.replace(u.TEMPLATE_STRING_REGEX,(function(t,o,s){var l="_xother"===o||"_yother"===o,c="_xother_"===o||"_yother_"===o,h="xother_"===o||"yother_"===o,p="xother"===o||"yother"===o||l||h||c,f=o;(l||c)&&(f=f.substring(1)),(h||c)&&(f=f.substring(0,f.length-1));var d,m,g,y=null,v=null;if(i.parseMultDiv){var x=function(t){var e=t.match(nt);return e?{key:e[1],op:e[2],number:Number(e[3])}:{key:t,op:null,number:null}}(f);f=x.key,y=x.op,v=x.number}if(p){if(void 0===(d=e[f]))return""}else for(g=3;g=48&&o<=57,c=s>=48&&s<=57;if(l&&(n=10*n+o-48),c&&(i=10*i+s-48),!l||!c){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var st=2e9;u.seedPseudoRandom=function(){st=2e9},u.pseudoRandom=function(){var t=st;return st=(69069*st+1)%4294967296,Math.abs(st-t)<429496729?u.pseudoRandom():st/4294967296},u.fillText=function(t,e,r){var n=Array.isArray(r)?function(t){r.push(t)}:function(t){r.text=t},i=u.extractOption(t,e,"htx","hovertext");if(u.isValidTextValue(i))return n(i);var a=u.extractOption(t,e,"tx","text");return u.isValidTextValue(a)?n(a):void 0},u.isValidTextValue=function(t){return t||0===t},u.formatPercent=function(t,e){e=e||0;for(var r=(Math.round(100*t*Math.pow(10,e))*Math.pow(.1,e)).toFixed(e)+"%",n=0;n1&&(c=1):c=0,u.strTranslate(i-c*(r+o),a-c*(n+s))+u.strScale(c)+(l?"rotate("+l+(e?"":" "+r+" "+n)+")":"")},u.setTransormAndDisplay=function(t,e){t.attr("transform",u.getTextTransform(e)),t.style("display",e.scale?null:"none")},u.ensureUniformFontSize=function(t,e){var r=u.extendFlat({},e);return r.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),r},u.join2=function(t,e,r){var n=t.length;return n>1?t.slice(0,-1).join(e)+r+t[n-1]:t.join(e)},u.bigFont=function(t){return Math.round(1.2*t)};var lt=u.getFirefoxVersion(),ct=null!==lt&<<86;u.getPositionFromD3Event=function(){return ct?[r.event.layerX,r.event.layerY]:[r.event.offsetX,r.event.offsetY]}}}),ce=f({"build/plotcss.js"(){var t,e,r=le(),n={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(e in n)t=e.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),r.addStyleRule(t,n[e])}}),ue=f({"node_modules/is-browser/client.js"(t,e){e.exports=!0}}),he=f({"node_modules/has-hover/index.js"(t,e){var r,n=ue();r="function"==typeof window.matchMedia?!window.matchMedia("(hover: none)").matches:n,e.exports=r}}),pe=f({"node_modules/events/events.js"(t,e){var r,n="object"==typeof Reflect?Reflect:null,i=n&&"function"==typeof n.apply?n.apply:function(t,e,r){return Function.prototype.apply.call(t,e,r)};r=n&&"function"==typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var a=Number.isNaN||function(t){return t!=t};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(t,e){return new Promise((function(r,n){function i(r){t.removeListener(e,a),n(r)}function a(){"function"==typeof t.removeListener&&t.removeListener("error",i),r([].slice.call(arguments))}g(t,e,a,{once:!0}),"error"!==e&&function(t,e){"function"==typeof t.on&&g(t,"error",e,{once:!0})}(t,i)}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var s=10;function l(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function c(t){return void 0===t._maxListeners?o.defaultMaxListeners:t._maxListeners}function u(t,e,r,n){var i,a,o;if(l(r),void 0===(a=t._events)?(a=t._events=Object.create(null),t._eventsCount=0):(void 0!==a.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),a=t._events),o=a[e]),void 0===o)o=a[e]=r,++t._eventsCount;else if("function"==typeof o?o=a[e]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),(i=c(t))>0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=t,s.type=e,s.count=o.length,function(t){console&&console.warn&&console.warn(t)}(s)}return t}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=h.bind(n);return i.listener=r,n.wrapFn=i,i}function f(t,e,r){var n=t._events;if(void 0===n)return[];var i=n[e];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(t){for(var e=new Array(t.length),r=0;r0&&(o=e[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(void 0===l)return!1;if("function"==typeof l)i(l,this,e);else{var c=l.length,u=m(l,c);for(r=0;r=0;a--)if(r[a]===e||r[a].listener===e){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(t,e){for(;e+1=0;n--)this.removeListener(t,e[n]);return this},o.prototype.listeners=function(t){return f(this,t,!0)},o.prototype.rawListeners=function(t){return f(this,t,!1)},o.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):d.call(t,e)},o.prototype.listenerCount=d,o.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}}}),fe=f({"src/lib/events.js"(t,e){var r=pe().EventEmitter,n={init:function(t){if(t._ev instanceof r)return t;var e=new r,n=new r;return t._ev=e,t._internalEv=n,t.on=e.on.bind(e),t.once=e.once.bind(e),t.removeListener=e.removeListener.bind(e),t.removeAllListeners=e.removeAllListeners.bind(e),t._internalOn=n.on.bind(n),t._internalOnce=n.once.bind(n),t._removeInternalListener=n.removeListener.bind(n),t._removeAllInternalListeners=n.removeAllListeners.bind(n),t.emit=function(t,r){e.emit(t,r),n.emit(t,r)},t},triggerHandler:function(t,e,r){var n=t._ev;if(n){var i=n._events[e];if(i){var a;for(i=Array.isArray(i)?i:[i],a=0;an.queueLength&&(t.undoQueue.queue.shift(),t.undoQueue.index--))},startSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!0,t.undoQueue.beginSequence=!0},stopSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!1,t.undoQueue.beginSequence=!1},undo:function(t){var e,r;if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r=a.length)return!1;if(2===t.dimensions){if(r++,e.length===r)return t;var o=e[r];if(!x(o))return!1;t=a[i][o]}else t=a[i]}else t=a}}return t}function x(t){return t===Math.round(t)&&t>=0}function _(){var t,r,n={};for(t in c(n,i),e.subplotsRegistry)if((r=e.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(r.attr))for(var a=0;a=a&&(i._input||{})._templateitemname;s&&(o=a);var l,c=r+"["+o+"]";function u(){l={},s&&(l[c]={},l[c][n]=s)}function h(t,r){s?e.nestedProperty(l[c],t).set(r):l[c+"."+t]=r}function p(){var t=l;return u(),t}return u(),{modifyBase:function(t,e){l[t]=e},modifyItem:h,getUpdateObj:p,applyUpdate:function(r,n){r&&h(r,n);var i=p();for(var a in i)e.nestedProperty(t,a).set(i[a])}}}}}),ve=f({"src/plots/cartesian/constants.js"(t,e){var r=W().counter;e.exports={idRegex:{x:r("x","( domain)?"),y:r("y","( domain)?")},attrRegex:r("[xy]axis"),xAxisMatch:r("xaxis"),yAxisMatch:r("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),xe=f({"src/plots/cartesian/axis_ids.js"(t){var e=qt(),r=ve();function n(t,e){if(e&&e.length)for(var r=0;rn?1:-1:+(t.substr(1)||1)-+(e.substr(1)||1)},t.ref2id=function(t){return!!/^[xyz]/.test(t)&&t.split(" ")[0]},t.isLinked=function(t,e){return n(e,t._axisMatchGroups)||n(e,t._axisConstraintGroups)}}}),_e=f({"src/components/shapes/handle_outline.js"(t,e){e.exports={clearOutlineControllers:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(".outline-controllers").remove()},clearOutline:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(".select-outline").remove(),t._fullLayout._outlining=!1}}}}),be=f({"src/traces/scatter/layout_attributes.js"(t,e){e.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}}}),we=f({"src/plots/get_data.js"(t){var e=qt();ve().SUBPLOT_PATTERN,t.getSubplotCalcData=function(t,r,n){var i=e.subplotsRegistry[r];if(!i)return[];for(var a=i.attr,o=[],s=0;s0?".":"")+a;r.isPlainObject(s)?o(s,e,l,i+1):e(l,a,s)}}))}t.manageCommandObserver=function(e,i,a,o){var s={},l=!0;i&&i._commandObserver&&(s=i._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=t.hasSimpleAPICommandBindings(e,a,s.lookupTable);if(i&&i._commandObserver){if(c)return s;if(i._commandObserver.remove)return i._commandObserver.remove(),i._commandObserver=null,s}if(c){n(e,c,s.cache),s.check=function(){if(l){var t=n(e,c,s.cache);return t.changed&&o&&void 0!==s.lookupTable[t.value]&&(s.disable(),Promise.resolve(o({value:t.value,type:c.type,prop:c.prop,traces:c.traces,index:s.lookupTable[t.value]})).then(s.enable,s.enable)),t.changed}};for(var u=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],h=0;h=e.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=e._paper.attr("width")-7),n.attr(a);var o=n.select(".js-link-to-tool"),s=n.select(".js-link-spacer"),l=n.select(".js-sourcelinks");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text("");var r=e.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(t._context.linkText+" »");if(t._context.sendData)r.on("click",(function(){S.sendDataToCloud(t)}));else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}(t,o),s.text(o.text()&&l.text()?" - ":"")}},S.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit("plotly_beforeexport");var n=r.select(t).append("div").attr("id","hiddenform").style("display","none"),i=n.append("form").attr({action:e+"/external",method:"post",target:"_blank"});return i.append("input").attr({type:"text",name:"data"}).node().value=S.graphJson(t,!1,"keepdata"),i.node().submit(),n.remove(),t.emit("plotly_afterexport"),!1}};var C=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],I=["year","month","dayMonth","dayMonthYear"];function L(t,e){var r=t._context.locale;r||(r="en-US");var n=!1,i={};function a(t){for(var r=!0,a=0;a1&&z.length>1){for(s.getComponentMethod("grid","sizeDefaults")(c,l),o=0;o15&&z.length>15&&0===l.shapes.length&&0===l.images.length,S.linkSubplots(p,l,h,a),S.cleanPlot(p,l,h,a);var j=!(!a._has||!a._has("cartesian")),N=!(!l._has||!l._has("cartesian"));j&&!N?a._bgLayer.remove():N&&!j&&(l._shouldCreateBgLayer=!0),a._zoomlayer&&!t._dragging&&d({_fullLayout:a}),function(t,e){var r,n=[];e.meta&&(r=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var i=0;i0){var h=1-2*s;n=Math.round(h*n),i=Math.round(h*i)}}var p=S.layoutAttributes.width.min,f=S.layoutAttributes.height.min;n1,m=!e.height&&Math.abs(r.height-i)>1;(m||d)&&(d&&(r.width=n),m&&(r.height=i)),t._initialAutoSize||(t._initialAutoSize={width:n,height:i}),S.sanitizeMargins(r)},S.supplyLayoutModuleDefaults=function(t,e,r,n){var i,a,o,l=s.componentsRegistry,c=e._basePlotModules,h=s.subplotsRegistry.cartesian;for(i in l)(o=l[i]).includeBasePlot&&o.includeBasePlot(t,e);for(var p in c.length||c.push(h),e._has("cartesian")&&(s.getComponentMethod("grid","contentDefaults")(t,e),h.finalizeSubplots(t,e)),e._subplots)e._subplots[p].sort(u.subplotSort);for(a=0;a1&&(r.l/=y,r.r/=y)}if(f){var v=(r.t+r.b)/f;v>1&&(r.t/=v,r.b/=v)}var x=void 0!==r.xl?r.xl:r.x,_=void 0!==r.xr?r.xr:r.x,b=void 0!==r.yt?r.yt:r.y,w=void 0!==r.yb?r.yb:r.y;d[e]={l:{val:x,size:r.l+g},r:{val:_,size:r.r+g},b:{val:w,size:r.b+g},t:{val:b,size:r.t+g}},m[e]=1}else delete d[e],delete m[e];if(!n._replotting)return S.doAutoMargin(t)}},S.doAutoMargin=function(t){var e=t._fullLayout,r=e.width,n=e.height;e._size||(e._size={}),D(e);var i=e._size,o=e.margin,l={t:0,b:0,l:0,r:0},c=u.extendFlat({},i),h=o.l,p=o.r,d=o.t,m=o.b,g=e._pushmargin,y=e._pushmarginIds,v=e.minreducedwidth,x=e.minreducedheight;if(!1!==o.autoexpand){for(var _ in g)y[_]||delete g[_];var b=t._fullLayout._reservedMargin;for(var w in b)for(var T in b[w]){var A=b[w][T];l[T]=Math.max(l[T],A)}for(var k in g.base={l:{val:0,size:h},r:{val:1,size:p},t:{val:1,size:d},b:{val:0,size:m}},l){var M=0;for(var E in g)"base"!==E&&a(g[E][k].size)&&(M=g[E][k].size>M?g[E][k].size:M);var C=Math.max(0,o[k]-M);l[k]=Math.max(0,l[k]-C)}for(var I in g){var L=g[I].l||{},P=g[I].b||{},z=L.val,O=L.size,R=P.val,F=P.size,B=r-l.r-l.l,j=n-l.t-l.b;for(var N in g){if(a(O)&&g[N].r){var U=g[N].r.val,V=g[N].r.size;if(U>z){var q=(O*U+(V-B)*z)/(U-z),H=(V*(1-z)+(O-B)*(1-U))/(U-z);q+H>h+p&&(h=q,p=H)}}if(a(F)&&g[N].t){var G=g[N].t.val,W=g[N].t.size;if(G>R){var Z=(F*G+(W-j)*R)/(G-R),Y=(W*(1-R)+(F-j)*(1-G))/(G-R);Z+Y>m+d&&(m=Z,d=Y)}}}}}var X=u.constrain(r-o.l-o.r,2,v),$=u.constrain(n-o.t-o.b,2,x),K=Math.max(0,r-X),J=Math.max(0,n-$);if(K){var Q=(h+p)/K;Q>1&&(h/=Q,p/=Q)}if(J){var tt=(m+d)/J;tt>1&&(m/=tt,d/=tt)}if(i.l=Math.round(h)+l.l,i.r=Math.round(p)+l.r,i.t=Math.round(d)+l.t,i.b=Math.round(m)+l.b,i.p=Math.round(o.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!e._replotting&&(S.didMarginChange(c,i)||function(t){if("_redrawFromAutoMarginCount"in t._fullLayout)return!1;var e=f.list(t,"",!0);for(var r in e)if(e[r].autoshift||e[r].shift)return!0;return!1}(t))){"_redrawFromAutoMarginCount"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var et=3*(1+Object.keys(y).length);if(e._redrawFromAutoMarginCount0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&t._transitionData._interruptCallbacks.push((function(){return s.call("redraw",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit("plotly_transitioninterrupted",[])}));var a=0,o=0;function l(){return a++,function(){o++,!n&&o===a&&function(e){t._transitionData&&(function(t){if(t)for(;t.length;)t.shift()}(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return s.call("redraw",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit("plotly_transitioned",[])})).then(e))}(i)}}r.runFn(l),setTimeout(l())}))}],a=u.syncOrAsync(i,t);return(!a||!a.then)&&(a=Promise.resolve()),a.then((function(){return t}))}S.didMarginChange=function(t,e){for(var r=0;r1)return!0}return!1},S.graphJson=function(t,e,r,n,i,a){(i&&e&&!t._fullData||i&&!e&&!t._fullLayout)&&S.supplyDefaults(t);var s=i?t._fullData:t.data,l=i?t._fullLayout:t.layout,c=(t._transitionData||{})._frames;function h(t,e){if("function"==typeof t)return e?"_function_":null;if(u.isPlainObject(t)){var n,i={};return Object.keys(t).sort().forEach((function(a){if(-1===["_","["].indexOf(a.charAt(0))){if("function"==typeof t[a])return void(e&&(i[a]="_function"));if("keepdata"===r){if("src"===a.substr(a.length-3))return}else if("keepstream"===r){if("string"==typeof(n=t[a+"src"])&&n.indexOf(":")>0&&!u.isPlainObject(t.stream))return}else if("keepall"!==r&&"string"==typeof(n=t[a+"src"])&&n.indexOf(":")>0)return;i[a]=h(t[a],e)}})),i}var a=Array.isArray(t),s=u.isTypedArray(t);if((a||s)&&t.dtype&&t.shape){var l=t.bdata;return h({dtype:t.dtype,shape:t.shape,bdata:u.isArrayBuffer(l)?o.encode(l):l},e)}return a?t.map((function(t){return h(t,e)})):s?u.simpleMap(t,u.identity):u.isJSDate(t)?u.ms2DateTimeLocal(+t):t}var p={data:(s||[]).map((function(t){var r=h(t);return e&&delete r.fit,r}))};if(!e&&(p.layout=h(l),i)){var f=l._size;p.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return c&&(p.frames=h(c)),a&&(p.config=h(t._context,!0)),"object"===n?p:JSON.stringify(p)},S.modifyFrames=function(t,e){var r,n,i,a=t._transitionData._frames,o=t._transitionData._frameHash;for(r=0;r=0;a--)if(s[a].enabled){r._indexToPoints=s[a]._indexToPoints;break}n&&n.calc&&(o=n.calc(t,r))}(!Array.isArray(o)||!o[0])&&(o=[{x:p,y:p}]),o[0].t||(o[0].t={}),o[0].trace=r,d[e]=o}}for(j(o,c,h),i=0;il||m>c)&&(o.style("overflow","hidden"),f=(p=o.node().getBoundingClientRect()).width,m=p.height);var g=+d.attr("x"),y=+d.attr("y"),v=-(i||d.node().getBoundingClientRect().height)/4;if("y"===P[0])s.attr({transform:"rotate("+[-90,g,y]+")"+n(-f/2,v-m/2)});else if("l"===P[0])y=v-m/2;else if("a"===P[0]&&0!==P.indexOf("atitle"))g=0,y=v;else{var x=d.attr("text-anchor");g-=f*("middle"===x?.5:"end"===x?1:0),y=y+v-m/2}o.attr({x:g,y}),M&&M.call(d,s),t(s)}))}))):z(),d}function z(){L.empty()||(P=d.attr("class")+"-math",L.select("svg."+P).remove()),d.text("").style("white-space","pre");var n=function(t,n){n=n.replace(m," ");var o,s=!1,l=[],c=-1;function d(){c++;var r=document.createElementNS(i.svg,"tspan");e.select(r).attr({class:"line",dy:c*a+"em"}),t.appendChild(r),o=r;var n=l;if(l=[{node:r}],n.length>1)for(var s=1;s doesnt match end tag <"+t+">. Pretending it did match.",n),o=l[l.length-1].node}else r.log("Ignoring unexpected end tag .",n)}v.test(n)?d():(o=t,l=[{node:t}]);for(var I=n.split(g),L=0;L|>|>)/g,c=[["$","$"],["\\(","\\)"]],u={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},h={sub:"0.3em",sup:"-0.6em"},p={sub:"-0.21em",sup:"0.42em"},f="​",d=["http:","https:","mailto:","",void 0,":"],m=t.NEWLINES=/(\r\n?|\n)/g,g=/(<[^<>]*>)/,y=/<(\/?)([^ >]*)(\s+(.*))?>/i,v=//i;t.BR_TAG_ALL=//gi;var _=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,b=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,w=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,T=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function A(t,e){if(!t)return null;var r=t.match(e),n=r&&(r[3]||r[4]);return n&&E(n)}var k=/(^|;)\s*color:/;t.plainText=function(t,e){for(var r=void 0!==(e=e||{}).len&&-1!==e.len?e.len:1/0,n=void 0!==e.allowedTags?e.allowedTags:["br"],i=t.split(g),a=[],o="",s=0,l=0;l3?a.push(c.substr(0,f-3)+"..."):a.push(c.substr(0,f));break}o=""}}return a.join("")};var M={mu:"μ",amp:"&",lt:"<",gt:">",nbsp:" ",times:"×",plusmn:"±",deg:"°"},S=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function E(t){return t.replace(S,(function(t,e){var r;return r="#"===e.charAt(0)?function(t){if(!(t>1114111)){var e=String.fromCodePoint;if(e)return e(t);var r=String.fromCharCode;return t<=65535?r(t):r(55232+(t>>10),t%1024+56320)}}("x"===e.charAt(1)?parseInt(e.substr(2),16):parseInt(e.substr(1),10)):M[e],r||t}))}function C(t){var e=encodeURI(decodeURI(t)),r=document.createElement("a"),n=document.createElement("a");r.href=t,n.href=e;var i=r.protocol,a=n.protocol;return-1!==d.indexOf(i)&&-1!==d.indexOf(a)?e:""}function I(t,e,n){var i,a,o,s=n.horizontalAlign,l=n.verticalAlign||"top",c=t.node().getBoundingClientRect(),u=e.node().getBoundingClientRect();return a="bottom"===l?function(){return c.bottom-i.height}:"middle"===l?function(){return c.top+(c.height-i.height)/2}:function(){return c.top},o="right"===s?function(){return c.right-i.width}:"center"===s?function(){return c.left+(c.width-i.width)/2}:function(){return c.left},function(){i=this.node().getBoundingClientRect();var t=o()-u.left,e=a()-u.top,s=n.gd||{};if(n.gd){s._fullLayout._calcInverseTransform(s);var l=r.apply3DTransform(s._fullLayout._invTransform)(t,e);t=l[0],e=l[1]}return this.style({top:e+"px",left:t+"px","z-index":1e3}),this}}t.convertEntities=E,t.sanitizeHTML=function(t){t=t.replace(m," ");for(var r=document.createElement("p"),n=r,i=[],a=t.split(g),o=0;o=0;n--,i++){var a=t[n];r[i]=[1-a[0],a[1]]}return r}function f(t,e){e=e||{};for(var a=t.domain,s=t.range,l=s.length,c=new Array(l),u=0;um-f?f=m-(d-m):d-m=0?s.colorscale.sequential:s.colorscale.sequentialminus,h._sync("colorscale",o))}}}),Ze=f({"src/components/colorscale/index.js"(t,e){var r=V(),n=Ee();e.exports={moduleType:"component",name:"colorscale",attributes:Pe(),layoutAttributes:ze(),supplyLayoutDefaults:He(),handleDefaults:qe(),crossTraceDefaults:Ge(),calc:We(),scales:r.scales,defaultScale:r.defaultScale,getScale:r.get,isValidScale:r.isValid,hasColorscale:n.hasColorscale,extractOpts:n.extractOpts,extractScale:n.extractScale,flipScale:n.flipScale,makeColorScaleFunc:n.makeColorScaleFunc,makeColorScaleFuncFromTrace:n.makeColorScaleFuncFromTrace}}}),Ye=f({"src/traces/scatter/subtypes.js"(t,e){var r=le(),n=E().isTypedArraySpec;e.exports={hasLines:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf("lines")},hasMarkers:function(t){return t.visible&&(t.mode&&-1!==t.mode.indexOf("markers")||"splom"===t.type)},hasText:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf("text")},isBubble:function(t){var e=t.marker;return r.isPlainObject(e)&&(r.isArrayOrTypedArray(e.size)||n(e.size))}}}}),Xe=f({"src/traces/scatter/make_bubble_size_func.js"(t,e){var r=A();e.exports=function(t,e){e||(e=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o="area"===n.sizemode?function(t){return Math.sqrt(t/i)}:function(t){return t/i};return function(t){var n=o(t/e);return r(n)&&n>0?Math.max(n,a):0}}}}),$e=f({"src/components/fx/helpers.js"(t){var e=le();t.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},t.isTraceInSubplots=function(e,r){if("splom"===e.type){for(var n=e.xaxes||[],i=e.yaxes||[],a=0;a=0&&r.index2&&(e.push([n].concat(a.splice(0,2))),o="l",n="m"==n?"l":"L");;){if(a.length==r[o])return a.unshift(n),e.push(a);if(a.length=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}v.symbolNumber=function(t){if(a(t))t=+t;else if("string"==typeof t){var e=0;t.indexOf("-open")>0&&(e=100,t=t.replace("-open","")),t.indexOf("-dot")>0&&(e+=200,t=t.replace("-dot","")),(t=v.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=k||t>=400?0:Math.floor(Math.max(t,0))};var S=i("~f"),E={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};function C(t,e,i,a,s,c,u,h,p,f){var d,m=s.length;"linear"===a?d={node:"linearGradient",attrs:{x1:u.x,y1:u.y,x2:h.x,y2:h.y,gradientUnits:p?"userSpaceOnUse":"objectBoundingBox"},reversed:f}:"radial"===a&&(d={node:"radialGradient",reversed:f});for(var g=new Array(m),y=0;y=0&&void 0===t.i&&(t.i=o.i),e.style("opacity",i.selectedOpacityFn?i.selectedOpacityFn(t):void 0===t.mo?s.opacity:t.mo),i.ms2mrc){var u;u="various"===t.ms||"various"===s.size?3:i.ms2mrc(t.ms),t.mrc=u,i.selectedSizeFn&&(u=t.mrc=i.selectedSizeFn(t));var h=v.symbolNumber(t.mx||s.symbol)||0;t.om=h%200>=100;var p=st(t,r),f=$(t,r);e.attr("d",M(h,u,p,f))}var d,m,g,y=!1;if(t.so)g=c.outlierwidth,m=c.outliercolor,d=s.outliercolor;else{var x=(c||{}).width;g=(t.mlw+1||x+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,m="mlc"in t?t.mlcc=i.lineScale(t.mlc):n.isArrayOrTypedArray(c.color)?l.defaultLine:c.color,n.isArrayOrTypedArray(s.color)&&(d=l.defaultLine,y=!0),d="mc"in t?t.mcc=i.markerScale(t.mc):s.color||s.colors||"rgba(0,0,0,0)",i.selectedColorFn&&(d=i.selectedColorFn(t))}if(t.om)e.call(l.stroke,d).style({"stroke-width":(g||1)+"px",fill:"none"});else{e.style("stroke-width",(t.isBlank?0:g)+"px");var _=s.gradient,b=t.mgt;b?y=!0:b=_&&_.type,n.isArrayOrTypedArray(b)&&(b=b[0],E[b]||(b=0));var w=s.pattern,T=w&&v.getPatternAttr(w.shape,t.i,"");if(b&&"none"!==b){var A=t.mgc;A?y=!0:A=_.color;var k=r.uid;y&&(k+="-"+t.i),v.gradient(e,a,k,b,[[0,A],[1,d]],"fill")}else if(T){var S=!1,C=w.fgcolor;!C&&o&&o.color&&(C=o.color,S=!0);var I=v.getPatternAttr(C,t.i,o&&o.color||null),L=v.getPatternAttr(w.bgcolor,t.i,null),P=w.fgopacity,z=v.getPatternAttr(w.size,t.i,8),D=v.getPatternAttr(w.solidity,t.i,.3);S=S||t.mcc||n.isArrayOrTypedArray(w.shape)||n.isArrayOrTypedArray(w.bgcolor)||n.isArrayOrTypedArray(w.fgcolor)||n.isArrayOrTypedArray(w.size)||n.isArrayOrTypedArray(w.solidity);var O=r.uid;S&&(O+="-"+t.i),v.pattern(e,"point",a,O,T,z,D,t.mcc,w.fillmode,L,I,P)}else n.isArrayOrTypedArray(d)?l.fill(e,d[t.i]):l.fill(e,d);g&&l.stroke(e,m)}},v.makePointStyleFns=function(t){var e={},r=t.marker;return e.markerScale=v.tryColorscale(r,""),e.lineScale=v.tryColorscale(r,"line"),s.traceIs(t,"symbols")&&(e.ms2mrc=m.isBubble(t)?g(t):function(){return(r.size||6)/2}),t.selectedpoints&&n.extendFlat(e,v.makeSelectedPointStyleFns(t)),e},v.makeSelectedPointStyleFns=function(t){var e={},r=t.selected||{},i=t.unselected||{},a=t.marker||{},o=r.marker||{},l=i.marker||{},c=a.opacity,u=o.opacity,h=l.opacity,p=void 0!==u,f=void 0!==h;(n.isArrayOrTypedArray(c)||p||f)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?p?u:e:f?h:d*e});var m=a.color,g=o.color,y=l.color;(g||y)&&(e.selectedColorFn=function(t){var e=t.mcc||m;return t.selected?g||e:y||e});var v=a.size,x=o.size,_=l.size,b=void 0!==x,w=void 0!==_;return s.traceIs(t,"symbols")&&(b||w)&&(e.selectedSizeFn=function(t){var e=t.mrc||v/2;return t.selected?b?x/2:e:w?_/2:e}),e},v.makeSelectedTextStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},i=t.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,c=a.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||s;return t.selected?c||e:u||(c?e:l.addOpacity(e,d))},e},v.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var n=v.makeSelectedPointStyleFns(e),i=e.marker||{},a=[];n.selectedOpacityFn&&a.push((function(t,e){t.style("opacity",n.selectedOpacityFn(e))})),n.selectedColorFn&&a.push((function(t,e){l.fill(t,n.selectedColorFn(e))})),n.selectedSizeFn&&a.push((function(t,r){var a=r.mx||i.symbol||0,o=n.selectedSizeFn(r);t.attr("d",M(v.symbolNumber(a),o,st(r,e),$(r,e))),r.mrc2=o})),a.length&&t.each((function(t){for(var e=r.select(this),n=0;n0?r:0}function R(t,e,r){return r&&(t=V(t)),e?B(t[1]):F(t[0])}function F(t){var e=r.round(t,2);return I=e,e}function B(t){var e=r.round(t,2);return L=e,e}function j(t,e,r,n){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(i*i+a*a,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*i-l*l*o)*n,h=(c*c*a-l*l*s)*n,p=3*c*(l+c),f=3*l*(l+c);return[[F(e[0]+(p&&u/p)),B(e[1]+(p&&h/p))],[F(e[0]-(f&&u/f)),B(e[1]-(f&&h/f))]]}v.textPointStyle=function(t,e,i){if(t.size()){var a;if(e.selectedpoints){var o=v.makeSelectedTextStyleFns(e);a=o.selectedTextColorFn}var s=e.texttemplate,l=i._fullLayout;t.each((function(t){var o=r.select(this),c=s?n.extractOption(t,e,"txt","texttemplate"):n.extractOption(t,e,"tx","text");if(c||0===c){if(s){var u=e._module.formatLabels,p=u?u(t,e,l):{},f={};y(f,e,t.i);var d=e._meta||{};c=n.texttemplateString(c,p,l._d3locale,f,t,d)}var m=t.tp||e.textposition,g=D(t,e),x=a?a(t):t.tc||e.textfont.color;o.call(v.font,{family:t.tf||e.textfont.family,weight:t.tw||e.textfont.weight,style:t.ty||e.textfont.style,variant:t.tv||e.textfont.variant,textcase:t.tC||e.textfont.textcase,lineposition:t.tE||e.textfont.lineposition,shadow:t.tS||e.textfont.shadow,size:g,color:x}).text(c).call(h.convertToTspans,i).call(z,m,g,t.mrc)}else o.remove()}))}},v.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var n=v.makeSelectedTextStyleFns(e);t.each((function(t){var i=r.select(this),a=n.selectedTextColorFn(t),o=t.tp||e.textposition,c=D(t,e);l.fill(i,a);var u=s.traceIs(e,"bar-like");z(i,o,c,t.mrc2||t.mrc,u)}))}},v.smoothopen=function(t,e){if(t.length<3)return"M"+t.join("L");var r,n="M"+t[0],i=[];for(r=1;r=c||w>=h&&w<=c)&&(T<=p&&T>=u||T>=p&&T<=u)&&(t=[w,T])}return t}v.steps=function(t){var e=N[t]||U;return function(t){for(var r="M"+F(t[0][0])+","+B(t[0][1]),n=t.length,i=1;i=1e4&&(v.savedBBoxes={},q=0),i&&(v.savedBBoxes[i]=g),q++,n.extendFlat({},g)},v.setClipUrl=function(t,e,r){t.attr("clip-path",Z(e,r))},v.getTranslate=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(t,e,r){return[e,r].join(" ")})).split(" ");return{x:+e[0]||0,y:+e[1]||0}},v.setTranslate=function(t,e,r){var n=t.attr?"attr":"getAttribute",i=t.attr?"attr":"setAttribute",a=t[n]("transform")||"";return e=e||0,r=r||0,a=a.replace(/(\btranslate\(.*?\);?)/,"").trim(),a=(a+=u(e,r)).trim(),t[i]("transform",a),a},v.getScale=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(t,e,r){return[e,r].join(" ")})).split(" ");return{x:+e[0]||1,y:+e[1]||1}},v.setScale=function(t,e,r){var n=t.attr?"attr":"getAttribute",i=t.attr?"attr":"setAttribute",a=t[n]("transform")||"";return e=e||1,r=r||1,a=a.replace(/(\bscale\(.*?\);?)/,"").trim(),a=(a+="scale("+e+","+r+")").trim(),t[i]("transform",a),a};var Y=/\s*sc.*/;v.setPointGroupScale=function(t,e,r){if(e=e||1,r=r||1,t){var n=1===e&&1===r?"":"scale("+e+","+r+")";t.each((function(){var t=(this.getAttribute("transform")||"").replace(Y,"");t=(t+=n).trim(),this.setAttribute("transform",t)}))}};var X=/translate\([^)]*\)\s*$/;function $(t,e){var r;return t&&(r=t.mf),void 0===r&&(r=e.marker&&e.marker.standoff||0),e._geo||e._xA?r:-r}v.setTextPointsScale=function(t,e,n){t&&t.each((function(){var t,i=r.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(X);t=1===e&&1===n?[]:[u(o,s),"scale("+e+","+n+")",u(-o,-s)],l&&t.push(l),i.attr("transform",t.join(""))}}))},v.getMarkerStandoff=$;var K,J,Q,tt,et,rt,nt=Math.atan2,it=Math.cos,at=Math.sin;function ot(t,e){var r=e[0],n=e[1];return[r*it(t)-n*at(t),r*at(t)+n*it(t)]}function st(t,e){var r=t.ma;void 0===r&&(!(r=e.marker.angle)||n.isArrayOrTypedArray(r))&&(r=0);var i,o,s=e.marker.angleref;if("previous"===s||"north"===s){if(e._geo){var l=e._geo.project(t.lonlat);i=l[0],o=l[1]}else{var c=e._xA,u=e._yA;if(!c||!u)return 90;i=c.c2p(t.x),o=u.c2p(t.y)}if(e._geo){var h,p=t.lonlat[0],f=t.lonlat[1],d=e._geo.project([p,f+1e-5]),m=e._geo.project([p+1e-5,f]),g=nt(m[1]-o,m[0]-i),y=nt(d[1]-o,d[0]-i);if("north"===s)h=r/180*Math.PI;else if("previous"===s){var v=p/180*Math.PI,x=f/180*Math.PI,_=K/180*Math.PI,b=J/180*Math.PI,w=_-v,T=it(b)*at(w),A=at(b)*it(x)-it(b)*at(x)*it(w);h=-nt(T,A)-Math.PI,K=p,J=f}var k=ot(g,[it(h),0]),M=ot(y,[at(h),0]);r=nt(k[1]+M[1],k[0]+M[0])/Math.PI*180,"previous"===s&&(rt!==e.uid||t.i!==et+1)&&(r=null)}if("previous"===s&&!e._geo)if(rt===e.uid&&t.i===et+1&&a(i)&&a(o)){var S=i-Q,E=o-tt,C=e.line&&e.line.shape||"",I=C.slice(C.length-1);"h"===I&&(E=0),"v"===I&&(S=0),r+=nt(E,S)/Math.PI*180+90}else r=null}return Q=i,tt=o,et=t.i,rt=e.uid,r}v.getMarkerAngle=st}}),tr=f({"src/components/titles/index.js"(t,e){var r=x(),n=A(),i=Ae(),a=qt(),o=le(),s=o.strTranslate,l=Qe(),c=H(),u=Se(),h=G(),p=Me().OPPOSITE_SIDE,f=/ [XY][0-9]* /;e.exports={draw:function(t,e,d){var m,g=t._fullLayout,y=d.propContainer,v=d.propName,x=d.placeholder,_=d.traceIndex,b=d.avoid||{},w=d.attributes,T=d.transform,A=d.containerGroup,k=1,M=y.title,S=(M&&M.text?M.text:"").trim(),E=!1,C=M&&M.font?M.font:{},I=C.family,L=C.size,P=C.color,z=C.weight,D=C.style,O=C.variant,R=C.textcase,F=C.lineposition,B=C.shadow,j=!!d.subtitlePropName,N=d.subtitlePlaceholder,U=(y.title||{}).subtitle||{text:"",font:{}},V=U.text.trim(),q=!1,H=1,G=U.font,W=G.family,Z=G.size,Y=G.color,X=G.weight,$=G.style,K=G.variant,J=G.textcase,Q=G.lineposition,tt=G.shadow;"title.text"===v?m="titleText":-1!==v.indexOf("axis")?m="axisTitleText":v.indexOf(!0)&&(m="colorbarTitleText");var et=t._context.edits[m];function rt(t,e){return void 0!==t&&void 0!==e&&t.replace(f," % ")===e.replace(f," % ")}""===S?k=0:rt(S,x)&&(et||(S=""),k=.2,E=!0),j&&(""===V?H=0:rt(V,N)&&(et||(V=""),H=.2,q=!0)),d._meta?S=o.templateString(S,d._meta):g._meta&&(S=o.templateString(S,g._meta));var nt,it=S||V||et;A||(A=o.ensureSingle(g._infolayer,"g","g-"+e),nt=g._hColorbarMoveTitle);var at=A.selectAll("text."+e).data(it?[0]:[]);at.enter().append("text"),at.text(S).attr("class",e),at.exit().remove();var ot=null,st=e+"-subtitle",lt=V||et;if(j&<&&((ot=A.selectAll("text."+st).data(lt?[0]:[])).enter().append("text"),ot.text(V).attr("class",st),ot.exit().remove()),!it)return A;function ct(t,e){o.syncOrAsync([ut,ht],{title:t,subtitle:e})}function ut(n){var a,h=n.title,p=n.subtitle;if(!T&&nt&&(T={}),T?(a="",T.rotate&&(a+="rotate("+[T.rotate,w.x,w.y]+")"),(T.offset||nt)&&(a+=s(0,(T.offset||0)-(nt||0)))):a=null,h.attr("transform",a),h.style("opacity",k*c.opacity(P)).call(l.font,{color:c.rgb(P),size:r.round(L,2),family:I,weight:z,style:D,variant:O,textcase:R,shadow:B,lineposition:F}).attr(w).call(u.convertToTspans,t,(function(t){if(t){var e=r.select(t.node().parentNode).select("."+st);if(!e.empty()){var n=t.node().getBBox();if(n.height){var i=n.y+n.height+1.6*Z;e.attr("y",i)}}}})),p){var f=A.select("."+e+"-math-group"),d=h.node().getBBox(),m=f.node()?f.node().getBBox():void 0,g=m?m.y+m.height+1.6*Z:d.y+d.height+1.6*Z,y=o.extendFlat({},w,{y:g});p.attr("transform",a),p.style("opacity",H*c.opacity(Y)).call(l.font,{color:c.rgb(Y),size:r.round(Z,2),family:W,weight:X,style:$,variant:K,textcase:J,shadow:tt,lineposition:Q}).attr(y).call(u.convertToTspans,t)}return i.previousPromises(t)}function ht(e){var i=e.title,a=r.select(i.node().parentNode);if(b&&b.selection&&b.side&&S){a.attr("transform",null);var c=p[b.side],u="left"===b.side||"top"===b.side?-1:1,h=n(b.pad)?b.pad:2,f=l.bBox(a.node()),d={t:0,b:0,l:0,r:0},m=t._fullLayout._reservedMargin;for(var v in m)for(var x in m[v]){var _=m[v][x];d[x]=Math.max(d[x],_)}var w={left:d.l,top:d.t,right:g.width-d.r,bottom:g.height-d.b},T=b.maxShift||u*(w[b.side]-f[b.side]),A=0;if(T<0)A=T;else{var k=b.offsetLeft||0,M=b.offsetTop||0;f.left-=k,f.right-=k,f.top-=M,f.bottom-=M,b.selection.each((function(){var t=l.bBox(this);o.bBoxIntersect(f,t,h)&&(A=Math.max(A,u*(t[b.side]-f[c])+h))})),A=Math.min(T,A),y._titleScoot=Math.abs(A)}if(A>0||T<0){var E={left:[-A,0],right:[A,0],top:[0,-A],bottom:[0,A]}[b.side];a.attr("transform",s(E[0],E[1]))}}}function pt(t,e){t.text(e).on("mouseover.opacity",(function(){r.select(this).transition().duration(h.SHOW_PLACEHOLDER).style("opacity",1)})).on("mouseout.opacity",(function(){r.select(this).transition().duration(h.HIDE_PLACEHOLDER).style("opacity",0)}))}if(at.call(ct,ot),et&&(S?at.on(".opacity",null):(pt(at,x),E=!0),at.call(u.makeEditable,{gd:t}).on("edit",(function(e){void 0!==_?a.call("_guiRestyle",t,v,e,_):a.call("_guiRelayout",t,v,e)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(ct)})).on("input",(function(t){this.text(t||" ").call(u.positionText,w.x,w.y)})),j)){if(j&&!S){var ft=at.node().getBBox(),dt=ft.y+ft.height+1.6*Z;ot.attr("y",dt)}V?ot.on(".opacity",null):(pt(ot,N),q=!0),ot.call(u.makeEditable,{gd:t}).on("edit",(function(e){a.call("_guiRelayout",t,"title.subtitle.text",e)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(ct)})).on("input",(function(t){this.text(t||" ").call(u.positionText,ot.attr("x"),ot.attr("y"))}))}return at.classed("js-placeholder",E),ot&&ot.classed("js-placeholder",q),A},SUBTITLE_PADDING_EM:1.6,SUBTITLE_PADDING_MATHJAX_EM:1.6}}}),er=f({"src/plots/cartesian/set_convert.js"(t,e){var r=x(),n=b().utcFormat,i=le(),a=i.numberFormat,o=A(),s=i.cleanNumber,l=i.ms2DateTime,c=i.dateTime2ms,u=i.ensureNumber,h=i.isArrayOrTypedArray,p=k(),f=p.FP_SAFE,d=p.BADNUM,m=p.LOG_CLIP,g=p.ONEWEEK,y=p.ONEDAY,v=p.ONEHOUR,_=p.ONEMIN,w=p.ONESEC,T=xe(),M=ve(),S=M.HOUR_PATTERN,E=M.WEEKDAY_PATTERN;function C(t){return Math.pow(10,t)}function I(t){return null!=t}e.exports=function(t,e){e=e||{};var p=t._id||"x",x=p.charAt(0);function b(e,r){if(e>0)return Math.log(e)/Math.LN10;if(e<=0&&r&&t.range&&2===t.range.length){var n=t.range[0],i=t.range[1];return.5*(n+i-2*m*Math.abs(n-i))}return d}function A(e,r,n,a){if((a||{}).msUTC&&o(e))return+e;var s=c(e,n||t.calendar);if(s===d){if(!o(e))return d;e=+e;var l=Math.floor(10*i.mod(e+.05,1)),u=Math.round(e-l/10);s=c(new Date(u))+l/10}return s}function k(e,r,n){return l(e,r,n||t.calendar)}function L(e){return t._categories[Math.round(e)]}function P(e){if(I(e)){if(void 0===t._categoriesMap&&(t._categoriesMap={}),void 0!==t._categoriesMap[e])return t._categoriesMap[e];t._categories.push("number"==typeof e?String(e):e);var r=t._categories.length-1;return t._categoriesMap[e]=r,r}return d}function z(e){if(t._categoriesMap)return t._categoriesMap[e]}function D(t){var e=z(t);return void 0!==e?e:o(t)?+t:void 0}function O(t){return o(t)?+t:z(t)}function R(t,e,n){return r.round(n+e*t,2)}function F(t,e,r){return(t-r)/e}var B=function(e){return o(e)?R(e,t._m,t._b):d},j=function(e){return F(e,t._m,t._b)};if(t.rangebreaks){var N="y"===x;B=function(e){if(!o(e))return d;var r=t._rangebreaks.length;if(!r)return R(e,t._m,t._b);var n=N;t.range[0]>t.range[1]&&(n=!n);for(var i=n?-1:1,a=i*e,s=0,l=0;lu)){s=a<(c+u)/2?l:l+1;break}s=l+1}var h=t._B[s]||0;return isFinite(h)?R(e,t._m2,h):0},j=function(e){var r=t._rangebreaks.length;if(!r)return F(e,t._m,t._b);for(var n=0,i=0;it._rangebreaks[i].pmax&&(n=i+1);return F(e,t._m2,t._B[n])}}t.c2l="log"===t.type?b:u,t.l2c="log"===t.type?C:u,t.l2p=B,t.p2l=j,t.c2p="log"===t.type?function(t,e){return B(b(t,e))}:B,t.p2c="log"===t.type?function(t){return C(j(t))}:j,-1!==["linear","-"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=s,t.c2d=t.c2r=t.l2d=t.l2r=u,t.d2p=t.r2p=function(e){return t.l2p(s(e))},t.p2d=t.p2r=j,t.cleanPos=u):"log"===t.type?(t.d2r=t.d2l=function(t,e){return b(s(t),e)},t.r2d=t.r2c=function(t){return C(s(t))},t.d2c=t.r2l=s,t.c2d=t.l2r=u,t.c2r=b,t.l2d=C,t.d2p=function(e,r){return t.l2p(t.d2r(e,r))},t.p2d=function(t){return C(j(t))},t.r2p=function(e){return t.l2p(s(e))},t.p2r=j,t.cleanPos=u):"date"===t.type?(t.d2r=t.r2d=i.identity,t.d2c=t.r2c=t.d2l=t.r2l=A,t.c2d=t.c2r=t.l2d=t.l2r=k,t.d2p=t.r2p=function(e,r,n){return t.l2p(A(e,0,n))},t.p2d=t.p2r=function(t,e,r){return k(j(t),e,r)},t.cleanPos=function(e){return i.cleanDate(e,d,t.calendar)}):"category"===t.type?(t.d2c=t.d2l=P,t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=D,t.r2c=function(e){var r=O(e);return void 0!==r?r:t.fraction2r(.5)},t.l2r=t.c2r=u,t.r2l=O,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(j(t))},t.r2p=t.d2p,t.p2r=j,t.cleanPos=function(t){return"string"==typeof t&&""!==t?t:u(t)}):"multicategory"===t.type&&(t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=D,t.r2c=function(e){var r=D(e);return void 0!==r?r:t.fraction2r(.5)},t.r2c_just_indices=z,t.l2r=t.c2r=u,t.r2l=D,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(j(t))},t.r2p=t.d2p,t.p2r=j,t.cleanPos=function(t){return Array.isArray(t)||"string"==typeof t&&""!==t?t:u(t)},t.setupMultiCategory=function(r){var n,a,o=t._traceIndices,s=t._matchGroup;if(s&&0===t._categories.length)for(var l in s)if(l!==p){var c=e[T.id2name(l)];o=o.concat(c._traceIndices)}var u=[[0,{}],[0,{}]],f=[];for(n=0;nl[1]&&(a[s?0:1]=n),a[0]===a[1]){var c=t.l2r(r),u=t.l2r(n);if(void 0!==r){var h=c+1;void 0!==n&&(h=Math.min(h,u)),a[s?1:0]=h}if(void 0!==n){var p=u+1;void 0!==r&&(p=Math.max(p,c)),a[s?0:1]=p}}}},t.cleanRange=function(e,r){t._cleanRange(e,r),t.limitRange(e)},t._cleanRange=function(e,r){r||(r={}),e||(e="range");var n,a,s=i.nestedProperty(t,e).get();if(a=(a="date"===t.type?i.dfltRange(t.calendar):"y"===x?M.DFLTRANGEY:"realaxis"===t._name?[0,1]:r.dfltRange||M.DFLTRANGEX).slice(),("tozero"===t.rangemode||"nonnegative"===t.rangemode)&&(a[0]=0),s&&2===s.length){var l=null===s[0],c=null===s[1];for("date"===t.type&&!t.autorange&&(s[0]=i.cleanDate(s[0],d,t.calendar),s[1]=i.cleanDate(s[1],d,t.calendar)),n=0;n<2;n++)if("date"===t.type){if(!i.isDateTime(s[n],t.calendar)){t[e]=a;break}if(t.r2l(s[0])===t.r2l(s[1])){var u=i.constrain(t.r2l(s[0]),i.MIN_MS+1e3,i.MAX_MS-1e3);s[0]=t.l2r(u-1e3),s[1]=t.l2r(u+1e3);break}}else{if(!o(s[n])){if(l||c||!o(s[1-n])){t[e]=a;break}s[n]=s[1-n]*(n?10:.1)}if(s[n]<-f?s[n]=-f:s[n]>f&&(s[n]=f),s[0]===s[1]){var h=Math.max(1,Math.abs(1e-6*s[0]));s[0]-=h,s[1]+=h}}}else i.nestedProperty(t,e).set(a)},t.setScale=function(r){var n=e._size;if(t.overlaying){var i=T.getFromId({_fullLayout:e},t.overlaying);t.domain=i.domain}var a=r&&t._r?"_r":"range",o=t.calendar;t.cleanRange(a);var s,l,c=t.r2l(t[a][0],o),u=t.r2l(t[a][1],o),h="y"===x;if(h?(t._offset=n.t+(1-t.domain[1])*n.h,t._length=n.h*(t.domain[1]-t.domain[0]),t._m=t._length/(c-u),t._b=-t._m*u):(t._offset=n.l+t.domain[0]*n.w,t._length=n.w*(t.domain[1]-t.domain[0]),t._m=t._length/(u-c),t._b=-t._m*c),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks&&(t._rangebreaks=t.locateBreaks(Math.min(c,u),Math.max(c,u)),t._rangebreaks.length)){for(s=0;su&&(p=!p),p&&t._rangebreaks.reverse();var f=p?-1:1;for(t._m2=f*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(h?u:c)),s=0;sa&&(a+=7,oa&&(a+=24,o=n&&o=n&&e=s.min&&(ts.max&&(s.max=n),a=!1)}a&&c.push({min:t,max:n})}};for(n=0;n2*s}(p,e))return"date";var y="strict"!==n.autotypenumbers;return function(t,e){for(var r=t.length,n=u(r),a=0,o=0,c={},h=0;h2*a}(p,y)?"category":function(t,e){for(var r=t.length,n=0;n0&&((k=I-s(_)-l(b))>L?M/k>P&&(w=_,A=b,P=M/k):M/I>P&&(w={val:_.val,nopad:1},A={val:b.val,nopad:1},P=M/I));if(m===g){var z=m-1,D=m+1;if(E)if(0===m)a=[0,1];else{var O=(m>0?h:u).reduce((function(t,e){return Math.max(t,l(e))}),0),R=m/(1-Math.min(.5,O/I));a=m>0?[0,R]:[R,0]}else a=C?[Math.max(0,z),Math.max(1,D)]:[z,D]}else E?(w.val>=0&&(w={val:0,nopad:1}),A.val<=0&&(A={val:0,nopad:1})):C&&(w.val-P*s(w)<0&&(w={val:0,nopad:1}),A.val<=0&&(A={val:1,nopad:1})),P=(A.val-w.val-p(e,_.val,b.val))/(I-s(w)-l(A)),a=[w.val-P*s(w),A.val+P*l(A)];return a=T(a,e),e.limitRange&&e.limitRange(),v&&a.reverse(),i.simpleMap(a,e.l2r||Number)}function p(t,e,r){var n=0;if(t.rangebreaks)for(var i=t.locateBreaks(e,r),a=0;a=r&&(c.extrapad||!o)){s=!1;break}i(e,c.val)&&c.pad<=r&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=a&&0===e;t.push({val:e,pad:u?0:r,extrapad:!u&&o})}}function v(t){return n(t)&&Math.abs(t)=e}function w(t,e,r){return void 0===e||void 0===r||(e=t.d2l(e))=c&&(o=c,r=c),s<=c&&(s=c,n=c)}}return r=function(t,e){var r=e.autorangeoptions;return r&&void 0!==r.minallowed&&w(e,r.minallowed,r.maxallowed)?r.minallowed:r&&void 0!==r.clipmin&&w(e,r.clipmin,r.clipmax)?Math.max(t,e.d2l(r.clipmin)):t}(r,e),n=function(t,e){var r=e.autorangeoptions;return r&&void 0!==r.maxallowed&&w(e,r.minallowed,r.maxallowed)?r.maxallowed:r&&void 0!==r.clipmax&&w(e,r.clipmin,r.clipmax)?Math.min(t,e.d2l(r.clipmax)):t}(n,e),[r,n]}e.exports={applyAutorangeOptions:T,getAutoRange:h,makePadFn:f,doAutoRange:function(t,e,r){if(e.setScale(),e.autorange){e.range=r?r.slice():h(t,e),e._r=e.range.slice(),e._rl=i.simpleMap(e._r,e.r2l);var n=e._input,a={};a[e._attr+".range"]=e.range,a[e._attr+".autorange"]=e.autorange,o.call("_storeDirectGUIEdit",t.layout,t._fullLayout._preGUI,a),n.range=e.range.slice(),n.autorange=e.autorange}var s=e._anchorAxis;if(s&&s.rangeslider){var l=s.rangeslider[e._name];l&&"auto"===l.rangemode&&(l.range=h(t,e)),s._input.rangeslider[e._name]=i.extendFlat({},l)}},findExtremes:function(t,e,r){r||(r={}),t._m||t.setScale();var i,o,s,l,c,u,h,p,f,d=[],y=[],x=e.length,_=r.padded||!1,b=r.tozero&&("linear"===t.type||"-"===t.type),w="log"===t.type,T=!1,A=r.vpadLinearized||!1;function k(t){if(Array.isArray(t))return T=!0,function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}var M=k((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),S=k((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=k(r.vpadplus||r.vpad),C=k(r.vpadminus||r.vpad);if(!T){if(p=1/0,f=-1/0,w)for(i=0;i0&&(p=o),o>f&&o-a&&(p=o),o>f&&o=P;i--)L(i);return{min:d,max:y,opts:r}},concatExtremes:d}}}),ir=f({"src/plots/cartesian/axes.js"(t,e){var r=x(),n=A(),i=Ae(),a=qt(),o=le(),s=o.strTranslate,l=Se(),c=tr(),u=H(),h=Qe(),p=Ie(),f=Oe(),d=k(),m=d.ONEMAXYEAR,g=d.ONEAVGYEAR,y=d.ONEMINYEAR,v=d.ONEMAXQUARTER,_=d.ONEAVGQUARTER,b=d.ONEMINQUARTER,w=d.ONEMAXMONTH,T=d.ONEAVGMONTH,M=d.ONEMINMONTH,S=d.ONEWEEK,E=d.ONEDAY,C=E/2,I=d.ONEHOUR,L=d.ONEMIN,P=d.ONESEC,z=d.ONEMILLI,D=d.ONEMICROSEC,O=d.MINUS_SIGN,R=d.BADNUM,F={K:"zeroline"},B={K:"gridline",L:"path"},j={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},V={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},q=Me(),G=q.MID_SHIFT,W=q.CAP_SHIFT,Z=q.LINE_SPACING,Y=q.OPPOSITE_SIDE,X=e.exports={};X.setConvert=er();var $=rr(),K=xe(),J=K.idSort,Q=K.isLinked;X.id2name=K.id2name,X.name2id=K.name2id,X.cleanId=K.cleanId,X.list=K.list,X.listIds=K.listIds,X.getFromId=K.getFromId,X.getFromTrace=K.getFromTrace;var tt=nr();function et(t){var e=1e-4*(t[1]-t[0]);return[t[0]-e,t[1]+e]}X.getAutoRange=tt.getAutoRange,X.findExtremes=tt.findExtremes,X.coerceRef=function(t,e,r,n,i,a){var s=n.charAt(n.length-1),l=r._fullLayout._subplots[s+"axis"],c=n+"ref",u={};return i||(i=l[0]||("string"==typeof a?a:a[0])),a||(a=i),l=l.concat(l.map((function(t){return t+" domain"}))),u[c]={valType:"enumerated",values:l.concat(a?"string"==typeof a?[a]:a:[]),dflt:i},o.coerce(t,e,u,c)},X.getRefType=function(t){return void 0===t?t:"paper"===t?"paper":"pixel"===t?"pixel":/( domain)$/.test(t)?"domain":"range"},X.coercePosition=function(t,e,r,n,i,a){var s,l;if("range"!==X.getRefType(n))s=o.ensureNumber,l=r(i,a);else{var c=X.getFromId(e,n);l=r(i,a=c.fraction2r(a)),s=c.cleanPos}t[i]=s(l)},X.cleanPosition=function(t,e,r){return("paper"===r||"pixel"===r?o.ensureNumber:X.getFromId(e,r).cleanPos)(t)},X.redrawComponents=function(t,e){e=e||X.listIds(t);var r=t._fullLayout;function n(n,i,o,s){for(var l=a.getComponentMethod(n,i),c={},u=0;un&&p2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},X.saveRangeInitial=function(t,e){for(var r=X.list(t,"",!0),n=!1,i=0;i.3*p||u(i)||u(a))){var f=r.dtick/2;t+=t+f.8){var s=Number(r.substr(1));a.exactYears>.8&&s%12==0?t=X.tickIncrement(t,"M6","reverse")+1.5*E:a.exactMonths>.8?t=X.tickIncrement(t,"M1","reverse")+15.5*E:t-=C;var l=X.tickIncrement(t,r);if(l<=n)return l}return t}(v,t,y,c,a)),g=v;g<=u;)g=X.tickIncrement(g,y,!1,a);return{start:e.c2r(v,0,a),end:e.c2r(g,0,a),size:y,_dataSpan:u-c}},X.prepMinorTicks=function(t,e,r){if(!e.minor.dtick){delete t.dtick;var i,a=e.dtick&&n(e._tmin);if(a){var s=X.tickIncrement(e._tmin,e.dtick,!0);i=[e._tmin,.99*s+.01*e._tmin]}else{var l=o.simpleMap(e.range,e.r2l);i=[l[0],.8*l[0]+.2*l[1]]}if(t.range=o.simpleMap(i,e.l2r),t._isMinor=!0,X.prepTicks(t,r),a){var c=n(e.dtick),u=n(t.dtick),h=c?e.dtick:+e.dtick.substring(1),p=u?t.dtick:+t.dtick.substring(1);c&&u?at(h,p)?h===2*S&&p===2*E&&(t.dtick=S):h===2*S&&p===3*E?t.dtick=S:h!==S||(e._input.minor||{}).nticks?ot(h/p,2.5)?t.dtick=h/2:t.dtick=h:t.dtick=E:"M"===String(e.dtick).charAt(0)?u?t.dtick="M1":at(h,p)?h>=12&&2===p&&(t.dtick="M3"):t.dtick=e.dtick:"L"===String(t.dtick).charAt(0)?"L"===String(e.dtick).charAt(0)?at(h,p)||(t.dtick=ot(h/p,2.5)?e.dtick/2:e.dtick):t.dtick="D1":"D2"===t.dtick&&+e.dtick>1&&(t.dtick=1)}t.range=e.range}void 0===e.minor._tick0Init&&(t.tick0=e.tick0)},X.prepTicks=function(t,e){var r=o.simpleMap(t.range,t.r2l,void 0,void 0,e);if("auto"===t.tickmode||!t.dtick){var i,a=t.nticks;a||("category"===t.type||"multicategory"===t.type?(i=t.tickfont?o.bigFont(t.tickfont.size||12):15,a=t._length/i):(i="y"===t._id.charAt(0)?40:80,a=o.constrain(t._length/i,4,9)+1),"radialaxis"===t._name&&(a*=2)),t.minor&&"array"!==t.minor.tickmode||"array"===t.tickmode&&(a*=100),t._roughDTick=Math.abs(r[1]-r[0])/a,X.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}"period"===t.ticklabelmode&&function(t){var e;function r(){return!(n(t.dtick)||"M"!==t.dtick.charAt(0))}var i=r(),a=X.getTickFormat(t);if(a){var o=t._dtickInit!==t.dtick;/%[fLQsSMX]/.test(a)||(/%[HI]/.test(a)?(e=I,o&&!i&&t.dtickt.range[1],c=!t.ticklabelindex||o.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=o.simpleMap(t.range,t.r2l,void 0,void 0,e),h=u[1]=(B?0:1);j--){var N=!j;j?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var U=j?t:o.extendFlat({},t,t.minor);if(N?X.prepMinorTicks(U,t,e):X.prepTicks(U,e),"array"!==U.tickmode)if("sync"!==U.tickmode){var V=et(u),q=V[0],H=V[1],G=n(U.dtick),W="log"===r&&!(G||"L"===U.dtick.charAt(0)),Z=X.tickFirst(U,e);if(j){if(t._tmin=Z,Z=H:J<=H;J=X.tickIncrement(J,Q,h,i)){if(j&&Y++,U.rangebreaks&&!h){if(J=f)break}if(k.length>d||J===K)break;K=J;var tt={value:J};j?(W&&J!==(0|J)&&(tt.simpleLabel=!0),a>1&&Y%a&&(tt.skipLabel=!0),k.push(tt)):(tt.minor=!0,O.push(tt))}}else k=[],x=ct(t);else j?(k=[],x=ut(t,!N)):(O=[],A=ut(t,!N))}var rt;if(!O||O.length<2?c=!1:function(t,e){return/%f/.test(e)?t>=D:/%L/.test(e)?t>=z:/%[SX]/.test(e)?t>=P:/%M/.test(e)?t>=L:/%[HI]/.test(e)?t>=I:/%p/.test(e)?t>=C:/%[Aadejuwx]/.test(e)?t>=E:/%[UVW]/.test(e)?t>=S:/%[Bbm]/.test(e)?t>=M:/%[q]/.test(e)?t>=b:!/%[Yy]/.test(e)||t>=y}((O[1].value-O[0].value)*(l?-1:1),t.tickformat)||(c=!1),c){var nt=k.concat(O);s&&k.length&&(nt=nt.slice(1)),(nt=nt.sort((function(t,e){return t.value-e.value})).filter((function(t,e,r){return 0===e||t.value!==r[e-1].value}))).map((function(t,e){return void 0!==t.minor||t.skipLabel?null:e})).filter((function(t){return null!==t})).forEach((function(t){c.map((function(e){var r=t+e;r>=0&&r0?(a=n-1,o=n):(a=n,o=n);var s,l=t[a].value,c=t[o].value,u=Math.abs(c-l),h=r||u,p=0;h>=y?p=u>=y&&u<=m?u:g:r===_&&h>=b?p=u>=b&&u<=v?u:_:h>=M?p=u>=M&&u<=w?u:T:r===S&&h>=S?p=S:h>=E?p=E:r===C&&h>=C?p=C:r===I&&h>=I&&(p=I),p>=u&&(p=u,s=!0);var f=i+p;if(e.rangebreaks&&p>0){for(var d=0,x=0;x<84;x++){var A=(x+.5)/84;e.maskBreaks(i*(1-A)+A*f)!==R&&d++}(p*=d/84)||(t[n].drop=!0),s&&u>S&&(p=u)}(p>0||0===n)&&(t[n].periodX=i+p/2)}}(F,t,t._definedDelta),t.rangebreaks){var ft="y"===t._id.charAt(0),dt=1;"auto"===t.tickmode&&(dt=t.tickfont?t.tickfont.size:12);var mt=NaN;for(rt=k.length-1;rt>-1;rt--)if(k[rt].drop)k.splice(rt,1);else{k[rt].value=jt(k[rt].value,t);var gt=t.c2p(k[rt].value);(ft?mt>gt-dt:mtf||nf&&(r.periodX=f),n10||"01-01"!==i.substr(5)?t._tickround="d":t._tickround=+e.substr(1)%12==0?"y":"m";else if(e>=E&&a<=10||e>=15*E)t._tickround="d";else if(e>=L&&a<=16||e>=I)t._tickround="M";else if(e>=P&&a<=19||e>=L)t._tickround="S";else{var o=t.l2r(r+e).replace(/^-/,"").length;t._tickround=Math.max(a,o)-20,t._tickround<0&&(t._tickround=4)}}else if(n(e)||"L"===e.charAt(0)){var s=t.range.map(t.r2d||Number);n(e)||(e=Number(e.substr(1))),t._tickround=2-Math.floor(Math.log(e)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),c=Math.floor(Math.log(l)/Math.LN10+.01),u=void 0===t.minexponent?3:t.minexponent;Math.abs(c)>u&&(wt(t.exponentformat)&&!Tt(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function _t(t,e,r){var n=t.tickfont||{};return{x:e,dx:0,dy:0,text:r||"",fontSize:n.size,font:n.family,fontWeight:n.weight,fontStyle:n.style,fontVariant:n.variant,fontTextcase:n.textcase,fontLineposition:n.lineposition,fontShadow:n.shadow,fontColor:n.color}}X.autoTicks=function(t,e,r){var i;function a(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if("date"===t.type){t.tick0=o.dateTick0(t.calendar,0);var s=2*e;if(s>g)e/=g,i=a(10),t.dtick="M"+12*vt(e,i,ht);else if(s>T)e/=T,t.dtick="M"+vt(e,1,pt);else if(s>E){if(t.dtick=vt(e,E,t._hasDayOfWeekBreaks?[1,2,7,14]:dt),!r){var l=X.getTickFormat(t),c="period"===t.ticklabelmode;c&&(t._rawTick0=t.tick0),/%[uVW]/.test(l)?t.tick0=o.dateTick0(t.calendar,2):t.tick0=o.dateTick0(t.calendar,1),c&&(t._dowTick0=t.tick0)}}else s>I?t.dtick=vt(e,I,pt):s>L?t.dtick=vt(e,L,ft):s>P?t.dtick=vt(e,P,ft):(i=a(10),t.dtick=vt(e,i,ht))}else if("log"===t.type){t.tick0=0;var u=o.simpleMap(t.range,t.r2l);if(t._isMinor&&(e*=1.5),e>.7)t.dtick=Math.ceil(e);else if(Math.abs(u[1]-u[0])<1){var h=1.5*Math.abs((u[1]-u[0])/e);e=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/h,i=a(10),t.dtick="L"+vt(e,i,ht)}else t.dtick=e>.3?"D2":"D1"}else"category"===t.type||"multicategory"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):Bt(t)?(t.tick0=0,i=1,t.dtick=vt(e,i,yt)):(t.tick0=0,i=a(10),t.dtick=vt(e,i,ht));if(0===t.dtick&&(t.dtick=1),!n(t.dtick)&&"string"!=typeof t.dtick){var p=t.dtick;throw t.dtick=1,"ax.dtick error: "+String(p)}},X.tickIncrement=function(t,e,i,a){var s=i?-1:1;if(n(e))return o.increment(t,s*e);var l=e.charAt(0),c=s*Number(e.substr(1));if("M"===l)return o.incrementMonth(t,c,a);if("L"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if("D"===l){var u="D2"===e?gt:mt,h=t+.01*s,p=o.roundUp(o.mod(h,1),u,i);return Math.floor(h)+Math.log(r.round(Math.pow(10,p),1))/Math.LN10}throw"unrecognized dtick "+String(e)},X.tickFirst=function(t,e){var i=t.r2l||Number,a=o.simpleMap(t.range,i,void 0,void 0,e),s=a[1]=0&&r<=t._length?e:null};if(l&&o.isArrayOrTypedArray(t.ticktext)){var f=o.simpleMap(t.range,t.r2l),d=(Math.abs(f[1]-f[0])-(t._lBreaks||0))/1e4;for(a=0;a ")}else t._prevDateHead=l,c+="
"+l;e.text=c}(t,s,r,c):"log"===u?function(t,e,r,i,a){var s=t.dtick,l=e.x,c=t.tickformat,u="string"==typeof s&&s.charAt(0);if("never"===a&&(a=""),i&&"L"!==u&&(s="L3",u="L"),c||"L"===u)e.text=At(Math.pow(10,l),t,a,i);else if(n(s)||"D"===u&&o.mod(l+.01,1)<.1){var h=Math.round(l),p=Math.abs(h),f=t.exponentformat;"power"===f||wt(f)&&Tt(h)?(e.text=0===h?1:1===h?"10":"10"+(h>1?"":O)+p+"",e.fontSize*=1.25):("e"===f||"E"===f)&&p>2?e.text="1"+f+(h>0?"+":O)+p:(e.text=At(Math.pow(10,l),t,"","fakehover"),"D1"===s&&"y"===t._id.charAt(0)&&(e.dy-=e.fontSize/6))}else{if("D"!==u)throw"unrecognized dtick "+String(s);e.text=String(Math.round(Math.pow(10,o.mod(l,1)))),e.fontSize*=.75}if("D1"===t.dtick){var d=String(e.text).charAt(0);("0"===d||"1"===d)&&("y"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(l<0?.5:.25)))}}(t,s,0,c,g):"category"===u?function(t,e){var r=t._categories[Math.round(e.x)];void 0===r&&(r=""),e.text=String(r)}(t,s):"multicategory"===u?function(t,e,r){var n=Math.round(e.x),i=t._categories[n]||[],a=void 0===i[1]?"":String(i[1]),o=void 0===i[0]?"":String(i[0]);r?e.text=o+" - "+a:(e.text=a,e.text2=o)}(t,s,r):Bt(t)?function(t,e,r,n,i){if("radians"!==t.thetaunit||r)e.text=At(e.x,t,i,n);else{var a=e.x/180;if(0===a)e.text="0";else{var s=function(t){function e(t,e){return Math.abs(t-e)<=1e-6}var r=function(t){for(var r=1;!e(Math.round(t*r)/r,t);)r*=10;return r}(t),n=t*r,i=Math.abs(function t(r,n){return e(n,0)?r:t(n,r%n)}(n,r));return[Math.round(n/i),Math.round(r/i)]}(a);if(s[1]>=100)e.text=At(o.deg2rad(e.x),t,i,n);else{var l=e.x<0;1===s[1]?1===s[0]?e.text="π":e.text=s[0]+"π":e.text=["",s[0],"","⁄","",s[1],"","π"].join(""),l&&(e.text=O+e.text)}}}}(t,s,r,c,g):function(t,e,r,n,i){"never"===i?i="":"all"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(i="hide"),e.text=At(e.x,t,i,n)}(t,s,0,c,g),i||(t.tickprefix&&!m(t.showtickprefix)&&(s.text=t.tickprefix+s.text),t.ticksuffix&&!m(t.showticksuffix)&&(s.text+=t.ticksuffix)),t.labelalias&&t.labelalias.hasOwnProperty(s.text)){var y=t.labelalias[s.text];"string"==typeof y&&(s.text=y)}return("boundaries"===t.tickson||t.showdividers)&&(s.xbnd=[p(s.x-.5),p(s.x+t.dtick-.5)]),s},X.hoverLabelText=function(t,e,r){r&&(t=o.extendFlat({},t,{hoverformat:r}));var n=o.isArrayOrTypedArray(e)?e[0]:e,i=o.isArrayOrTypedArray(e)?e[1]:void 0;if(void 0!==i&&i!==n)return X.hoverLabelText(t,n,r)+" - "+X.hoverLabelText(t,i,r);var a="log"===t.type&&n<=0,s=X.tickText(t,t.c2l(a?-n:n),"hover").text;return a?0===n?"0":O+s:s};var bt=["f","p","n","μ","m","","k","M","G","T"];function wt(t){return"SI"===t||"B"===t}function Tt(t){return t>14||t<-15}function At(t,e,r,i){var a=t<0,s=e._tickround,l=r||e.exponentformat||"B",c=e._tickexponent,u=X.getTickFormat(e),h=e.separatethousands;if(i){var p={exponentformat:l,minexponent:e.minexponent,dtick:"none"===e.showexponent?e.dtick:n(t)&&Math.abs(t)||1,range:"none"===e.showexponent?e.range.map(e.r2d):[0,t||1]};xt(p),s=(Number(p._tickround)||0)+4,c=p._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,O);var f,d=Math.pow(10,-s)/2;if("none"===l&&(c=0),(t=Math.abs(t))"+f+"":"B"===l&&9===c?t+="B":wt(l)&&(t+=bt[c/3+5])),a?O+t:t}function kt(t,e){if(t){var r=Object.keys(V).reduce((function(t,r){return-1!==e.indexOf(r)&&V[r].forEach((function(e){t[e]=1})),t}),{});Object.keys(t).forEach((function(e){r[e]||(1===e.length?t[e]=0:delete t[e])}))}}function Mt(t,e){for(var r=[],n={},i=0;i1&&r=i.min&&t=0,a=u(t,e[1])<=0;return(r||i)&&(n||a)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case"date":case"linear":for(e=0;e=o(i)))){r=n;break}break;case"log":for(e=0;e=0&&i.unshift(i.splice(n,1).shift())}}));var s={false:{left:0,right:0}};return o.syncOrAsync(i.map((function(e){return function(){if(e){var n=X.getFromId(t,e);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=a;var i=X.drawOne(t,n,r);return n._shiftPusher&&Vt(n,n._fullDepth||0,s,!0),n._r=n.range.slice(),n._rl=o.simpleMap(n._r,n.r2l),i}}})))},X.drawOne=function(t,e,r){var n,s,p,f=(r=r||{}).axShifts||{},d=r.overlayingShiftedAx||[];e.setScale();var m=t._fullLayout,g=e._id,y=g.charAt(0),v=X.counterLetter(g),x=m._plots[e._mainSubplot];if(x){if(e._shiftPusher=e.autoshift||-1!==d.indexOf(e._id)||-1!==d.indexOf(e.overlaying),e._shiftPusher&"free"===e.anchor){var _=e.linewidth/2||0;"inside"===e.ticks&&(_+=e.ticklen),Vt(e,_,f,!0),Vt(e,e.shift||0,f,!1)}(!0!==r.skipTitle||void 0===e._shift)&&(e._shift=function(t,e){return t.autoshift?e[t.overlaying][t.side]:t.shift||0}(e,f));var b=x[y+"axislayer"],w=e._mainLinePosition,T=w+=e._shift,A=e._mainMirrorPosition,k=e._vals=X.calcTicks(e),M=[e.mirror,T,A].join("_");for(n=0;n0?r.bottom-u:0,h))));var p=0,f=0;if(e._shiftPusher&&(p=Math.max(h,r.height>0?"l"===l?u-r.left:r.right-u:0),e.title.text!==m._dfltTitle[y]&&(f=(e._titleStandoff||0)+(e._titleScoot||0),"l"===l&&(f+=Ct(e))),e._fullDepth=Math.max(p,f)),e.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var d=[0,1],g="number"==typeof e._shift?e._shift:0;if("x"===y){if("b"===l?n[l]=e._depth:(n[l]=e._depth=Math.max(r.width>0?u-r.top:0,h),d.reverse()),r.width>0){var x=r.right-(e._offset+e._length);x>0&&(n.xr=1,n.r=x);var _=e._offset-r.left;_>0&&(n.xl=0,n.l=_)}}else if("l"===l?(e._depth=Math.max(r.height>0?u-r.left:0,h),n[l]=e._depth-g):(e._depth=Math.max(r.height>0?r.right-u:0,h),n[l]=e._depth+g,d.reverse()),r.height>0){var b=r.bottom-(e._offset+e._length);b>0&&(n.yb=0,n.b=b);var w=e._offset-r.top;w>0&&(n.yt=1,n.t=w)}n[v]="free"===e.anchor?e.position:e._anchorAxis.domain[d[0]],e.title.text!==m._dfltTitle[y]&&(n[l]+=Ct(e)+(e.title.standoff||0)),e.mirror&&"free"!==e.anchor&&((o={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(o[c]+=h),!0===e.mirror||"ticks"===e.mirror?o[v]=e._anchorAxis.domain[d[1]]:("all"===e.mirror||"allticks"===e.mirror)&&(o[v]=[e._counterDomainMin,e._counterDomainMax][d[1]]))}ht&&(s=a.getComponentMethod("rangeslider","autoMarginOpts")(t,e)),"string"==typeof e.automargin&&(kt(n,e.automargin),kt(o,e.automargin)),i.autoMargin(t,Pt(e),n),i.autoMargin(t,zt(e),o),i.autoMargin(t,Dt(e),s)})),o.syncOrAsync(ct)}}function pt(t){var r=g+(t||"tick");return S[r]||(S[r]=function(t,e,r){var n,i,a,o;if(t._selections[e].size())n=1/0,i=-1/0,a=1/0,o=-1/0,t._selections[e].each((function(){var t=Lt(this),e=h.bBox(t.node().parentNode);n=Math.min(n,e.top),i=Math.max(i,e.bottom),a=Math.min(a,e.left),o=Math.max(o,e.right)}));else{var s=X.makeLabelFns(t,r);n=i=s.yFn({dx:0,dy:0,fontSize:0}),a=o=s.xFn({dx:0,dy:0,fontSize:0})}return{top:n,bottom:i,left:a,right:o,height:i-n,width:o-a}}(e,r,T)),S[r]}},X.getTickSigns=function(t,e){var r=t._id.charAt(0),n={x:"top",y:"right"}[r],i=t.side===n?1:-1,a=[-1,1,i,-i];return"inside"!==(e?(t.minor||{}).ticks:t.ticks)==("x"===r)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},X.makeTransTickFn=function(t){return"x"===t._id.charAt(0)?function(e){return s(t._offset+t.l2p(e.x),0)}:function(e){return s(0,t._offset+t.l2p(e.x))}},X.makeTransTickLabelFn=function(t){var e=function(t){var e=t.ticklabelposition||"",r=function(t){return-1!==e.indexOf(t)},n=r("top"),i=r("left"),a=r("right"),o=r("bottom"),s=r("inside"),l=o||i||n||a;if(!l&&!s)return[0,0];var c=t.side,u=l?(t.tickwidth||0)/2:0,h=3,p=t.tickfont?t.tickfont.size:12;return(o||n)&&(u+=p*W,h+=(t.linewidth||0)/2),(i||a)&&(u+=(t.linewidth||0)/2,h+=3),s&&"top"===c&&(h-=p*(1-W)),(i||n)&&(u=-u),("bottom"===c||"right"===c)&&(h=-h),[l?u:0,s?h:0]}(t),r=t.ticklabelshift||0,n=t.ticklabelstandoff||0,i=e[0],a=e[1],o=t.range[0]>t.range[1],l=t.ticklabelposition&&-1!==t.ticklabelposition.indexOf("inside"),c=!l;if(r&&(r*=o?-1:1),n){var u=t.side;n*=l&&("top"===u||"left"===u)||c&&("bottom"===u||"right"===u)?1:-1}return"x"===t._id.charAt(0)?function(e){return s(i+t._offset+t.l2p(St(e))+r,a+n)}:function(e){return s(a+n,i+t._offset+t.l2p(St(e))+r)}},X.makeTickPath=function(t,e,r,n){n||(n={});var i=n.minor;if(i&&!t.minor)return"";var a=void 0!==n.len?n.len:i?t.minor.ticklen:t.ticklen,o=t._id.charAt(0),s=(t.linewidth||1)/2;return"x"===o?"M0,"+(e+s*r)+"v"+a*r:"M"+(e+s*r)+",0h"+a*r},X.makeLabelFns=function(t,e,r){var i=t.ticklabelposition||"",a=function(t){return-1!==i.indexOf(t)},s=a("top"),l=a("left"),c=a("right"),u=a("bottom")||l||s||c,h=a("inside"),p="inside"===i&&"inside"===t.ticks||!h&&"outside"===t.ticks&&"boundaries"!==t.tickson,f=0,d=0,m=p?t.ticklen:0;if(h?m*=-1:u&&(m=0),p&&(f+=m,r)){var g=o.deg2rad(r);f=m*Math.cos(g)+1,d=m*Math.sin(g)}t.showticklabels&&(p||t.showline)&&(f+=.2*t.tickfont.size);var y,v,x,_,b,w={labelStandoff:f+=(t.linewidth||1)/2*(h?-1:1),labelShift:d},T=0,A=t.side,k=t._id.charAt(0),M=t.tickangle;if("x"===k)_=(b=!h&&"bottom"===A||h&&"top"===A)?1:-1,h&&(_*=-1),y=d*_,v=e+f*_,x=b?1:-.2,90===Math.abs(M)&&(h?x+=G:x=-90===M&&"bottom"===A?W:90===M&&"top"===A?G:.5,T=G/2*(M/90)),w.xFn=function(t){return t.dx+y+T*t.fontSize},w.yFn=function(t){return t.dy+v+t.fontSize*x},w.anchorFn=function(t,e){if(u){if(l)return"end";if(c)return"start"}return n(e)&&0!==e&&180!==e?e*_<0!==h?"end":"start":"middle"},w.heightFn=function(e,r,n){return r<-60||r>60?-.5*n:"top"===t.side!==h?-n:0};else if("y"===k){if(_=(b=!h&&"left"===A||h&&"right"===A)?1:-1,h&&(_*=-1),y=f,v=d*_,x=0,!h&&90===Math.abs(M)&&(x=-90===M&&"left"===A||90===M&&"right"===A?W:.5),h){var S=n(M)?+M:0;if(0!==S){var E=o.deg2rad(S);T=Math.abs(Math.sin(E))*W*_,x=0}}w.xFn=function(t){return t.dx+e-(y+t.fontSize*x)*_+T*t.fontSize},w.yFn=function(t){return t.dy+v+t.fontSize*G},w.anchorFn=function(t,e){return n(e)&&90===Math.abs(e)?"middle":b?"end":"start"},w.heightFn=function(e,r,n){return"right"===t.side&&(r*=-1),r<-30?-n:r<30?-.5*n:0}}return w},X.drawTicks=function(t,e,n){n=n||{};var i=e._id+"tick",a=[].concat(e.minor&&e.minor.ticks?n.vals.filter((function(t){return t.minor&&!t.noTick})):[]).concat(e.ticks?n.vals.filter((function(t){return!t.minor&&!t.noTick})):[]),o=n.layer.selectAll("path."+i).data(a,Et);o.exit().remove(),o.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",!1!==n.crisp).each((function(t){return u.stroke(r.select(this),t.minor?e.minor.tickcolor:e.tickcolor)})).style("stroke-width",(function(r){return h.crispRound(t,r.minor?e.minor.tickwidth:e.tickwidth,1)+"px"})).attr("d",n.path).style("display",null),Ut(e,[N]),o.attr("transform",n.transFn)},X.drawGrid=function(t,e,n){if(n=n||{},"sync"!==e.tickmode){var i=e._id+"grid",a=e.minor&&e.minor.showgrid,o=a?n.vals.filter((function(t){return t.minor})):[],s=e.showgrid?n.vals.filter((function(t){return!t.minor})):[],l=n.counterAxis;if(l&&X.shouldShowZeroLine(t,e,l))for(var c="array"===e.tickmode,p=0;p=0;y--){var v=y?m:g;if(v){var x=v.selectAll("path."+i).data(y?s:o,Et);x.exit().remove(),x.enter().append("path").classed(i,1).classed("crisp",!1!==n.crisp),x.attr("transform",n.transFn).attr("d",n.path).each((function(t){return u.stroke(r.select(this),t.minor?e.minor.gridcolor:e.gridcolor||"#ddd")})).style("stroke-dasharray",(function(t){return h.dashStyle(t.minor?e.minor.griddash:e.griddash,t.minor?e.minor.gridwidth:e.gridwidth)})).style("stroke-width",(function(t){return(t.minor?d:e._gw)+"px"})).style("display",null),"function"==typeof n.path&&x.attr("d",n.path)}}Ut(e,[B,j])}},X.drawZeroLine=function(t,e,r){r=r||r;var n=e._id+"zl",i=X.shouldShowZeroLine(t,e,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:e._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",!1!==r.crisp).each((function(){r.layer.selectAll("path").sort((function(t,e){return J(t.id,e.id)}))})),a.attr("transform",r.transFn).attr("d",r.path).call(u.stroke,e.zerolinecolor||u.defaultLine).style("stroke-width",h.crispRound(t,e.zerolinewidth,e._gw||1)+"px").style("display",null),Ut(e,[F])},X.drawLabels=function(t,e,i){i=i||{};var a=t._fullLayout,c=e._id,u=i.cls||c+"tick",p=i.vals.filter((function(t){return t.text})),f=i.labelFns,d=i.secondary?0:e.tickangle,m=(e._prevTickAngles||{})[u],g=i.layer.selectAll("g."+u).data(e.showticklabels?p:[],Et),y=[];function v(t,a){t.each((function(t){var o=r.select(this),c=o.select(".text-math-group"),u=f.anchorFn(t,a),p=i.transFn.call(o.node(),t)+(n(a)&&0!=+a?" rotate("+a+","+f.xFn(t)+","+(f.yFn(t)-t.fontSize/2)+")":""),d=l.lineCount(o),m=Z*t.fontSize,g=f.heightFn(t,n(a)?+a:0,(d-1)*m);if(g&&(p+=s(0,g)),c.empty()){var y=o.select("text");y.attr({transform:p,"text-anchor":u}),y.style("opacity",1),e._adjustTickLabelsOverflow&&e._adjustTickLabelsOverflow()}else{var v=h.bBox(c.node()).width*{end:-.5,start:.5}[u];c.attr("transform",p+s(v,0))}}))}g.enter().append("g").classed(u,1).append("text").attr("text-anchor","middle").each((function(e){var n=r.select(this),i=t._promises.length;n.call(l.positionText,f.xFn(e),f.yFn(e)).call(h.font,{family:e.font,size:e.fontSize,color:e.fontColor,weight:e.fontWeight,style:e.fontStyle,variant:e.fontVariant,textcase:e.fontTextcase,lineposition:e.fontLineposition,shadow:e.fontShadow}).text(e.text).call(l.convertToTspans,t),t._promises[i]?y.push(t._promises.pop().then((function(){v(n,d)}))):v(n,d)})),Ut(e,[U]),g.exit().remove(),i.repositionOnUpdate&&g.each((function(t){r.select(this).select("text").call(l.positionText,f.xFn(t),f.yFn(t))})),e._adjustTickLabelsOverflow=function(){var n=e.ticklabeloverflow;if(n&&"allow"!==n){var i=-1!==n.indexOf("hide"),s="x"===e._id.charAt(0),l=0,c=s?t._fullLayout.width:t._fullLayout.height;if(-1!==n.indexOf("domain")){var u=o.simpleMap(e.range,e.r2l);l=e.l2p(u[0])+e._offset,c=e.l2p(u[1])+e._offset}var p=Math.min(l,c),f=Math.max(l,c),d=e.side,m=1/0,y=-1/0;for(var v in g.each((function(t){var n=r.select(this);if(n.select(".text-math-group").empty()){var a=h.bBox(n.node()),o=0;s?(a.right>f||a.leftf||a.top+(e.tickangle?0:t.fontSize/4)e["_visibleLabelMin_"+n._id]?l.style("display","none"):"tick"===t.K&&!i&&l.style("display",null)}))}))}))}))},v(g,m+1?m:d);var x=null;e._selections&&(e._selections[u]=g);var _=[function(){return y.length&&Promise.all(y)}];e.automargin&&a._redrawFromAutoMarginCount&&90===m?(x=m,_.push((function(){v(g,m)}))):_.push((function(){if(v(g,d),p.length&&e.autotickangles&&("log"!==e.type||"D"!==String(e.dtick).charAt(0))){x=e.autotickangles[0];var t,r=0,n=[],a=1;g.each((function(t){r=Math.max(r,t.fontSize);var i=e.l2p(t.x),o=Lt(this),s=h.bBox(o.node());a=Math.max(a,l.lineCount(o)),n.push({top:0,bottom:10,height:10,left:i-s.width/2,right:i+s.width/2+2,width:s.width+2})}));var s=("boundaries"===e.tickson||e.showdividers)&&!i.secondary,c=p.length,u=Math.abs((p[c-1].x-p[0].x)*e._m)/(c-1),f=s?u/2:u,m=s?e.ticklen:1.25*r*a,y=f/Math.sqrt(Math.pow(f,2)+Math.pow(m,2)),_=e.autotickangles.map((function(t){return t*Math.PI/180})),b=_.find((function(t){return Math.abs(Math.cos(t))<=y}));void 0===b&&(b=_.reduce((function(t,e){return Math.abs(Math.cos(t))O*D&&(L=D,E[S]=C[S]=P[S])}var R=Math.abs(L-I);R-A>0?A*=1+A/(R-=A):A=0,"y"!==e._id.charAt(0)&&(A=-A),E[M]=w.p2r(w.r2p(C[M])+k*A),"min"===w.autorange||"max reversed"===w.autorange?(E[0]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0):("max"===w.autorange||"min reversed"===w.autorange)&&(E[1]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[w._name+".range"]=E}var V=o.syncOrAsync(_);return V&&V.then&&t._promises.push(V),V},X.getPxPosition=function(t,e){var r,n=t._fullLayout._size,i=e._id.charAt(0),a=e.side;return"free"!==e.anchor?r=e._anchorAxis:"x"===i?r={_offset:n.t+(1-(e.position||0))*n.h,_length:0}:"y"===i&&(r={_offset:n.l+(e.position||0)*n.w+e._shift,_length:0}),"top"===a||"left"===a?r._offset:"bottom"===a||"right"===a?r._offset+r._length:void 0},X.shouldShowZeroLine=function(t,e,r){var n=o.simpleMap(e.range,e.r2l);return n[0]*n[1]<=0&&e.zeroline&&("linear"===e.type||"-"===e.type)&&!(e.rangebreaks&&e.maskBreaks(0)===R)&&(It(e,0)||!function(t,e,r,n){var i=r._mainAxis;if(i){var a=t._fullLayout,o=e._id.charAt(0),s=X.counterLetter(e._id),l=e._offset+(Math.abs(n[0])1)for(n=1;n4/3-s?o:s}}}),ur=f({"src/components/dragelement/cursor.js"(t,e){var r=le(),n=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];e.exports=function(t,e,i,a){return t="left"===i?0:"center"===i?1:"right"===i?2:r.constrain(Math.floor(3*t),0,2),e="bottom"===a?0:"middle"===a?1:"top"===a?2:r.constrain(Math.floor(3*e),0,2),n[e][t]}}}),hr=f({"src/components/dragelement/unhover.js"(t,e){var r=fe(),n=Jt(),i=It().getGraphDiv,a=B(),o=e.exports={};o.wrapped=function(t,e,r){(t=i(t))._fullLayout&&n.clear(t._fullLayout._uid+a.HOVERID),o.raw(t,e,r)},o.raw=function(t,e){var n=t._fullLayout,i=t._hoverdata;e||(e={}),(!e.target||t._dragged||!1!==r.triggerHandler(t,"plotly_beforehover",e))&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,e.target&&i&&t.emit("plotly_unhover",{event:e,points:i}))}}}),pr=f({"src/components/dragelement/index.js"(t,e){var r=sr(),n=he(),i=lr(),a=le().removeElement,o=ve(),s=e.exports={};s.align=cr(),s.getCursor=ur();var l=hr();function c(){var t=document.createElement("div");t.className="dragcover";var e=t.style;return e.position="fixed",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background="none",document.body.appendChild(t),t}function u(t){return r(t.changedTouches?t.changedTouches[0]:t,document.body)}s.unhover=l.wrapped,s.unhoverRaw=l.raw,s.init=function(t){var e,r,l,h,p,f,d,m,g=t.gd,y=1,v=g._context.doubleClickDelay,x=t.element;g._mouseDownTime||(g._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=b,i?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=b,x.addEventListener("touchstart",b,{passive:!1})):x.ontouchstart=b;var _=t.clampFn||function(t,e,r){return Math.abs(t)"u"&&typeof i.clientY>"u"&&(i.clientX=e,i.clientY=r),(l=(new Date).getTime())-g._mouseDownTimev&&(y=Math.max(y-1,1)),g._dragged?t.doneFn&&t.doneFn():(f.target===d?r=f:(r={target:d,srcElement:d,toElement:d},Object.keys(f).concat(Object.keys(f.__proto__)).forEach((t=>{var e=f[t];!r[t]&&"function"!=typeof e&&(r[t]=e)}))),t.clickFn&&t.clickFn(y,r),m||d.dispatchEvent(new MouseEvent("click",e))),g._dragging=!1,g._dragged=!1):g._dragged=!1}},s.coverSlip=c}}),fr=f({"src/lib/setcursor.js"(t,e){e.exports=function(t,e){(t.attr("class")||"").split(" ").forEach((function(e){0===e.indexOf("cursor-")&&t.classed(e,!1)})),e&&t.classed("cursor-"+e,!0)}}}),dr=f({"src/lib/override_cursor.js"(t,e){var r=fr(),n="data-savedcursor";e.exports=function(t,e){var i=t.attr(n);if(e){if(!i){for(var a=(t.attr("class")||"").split(" "),o=0;o("legend"===t?1:0));if(!1===M&&(c[t]=void 0),(!1!==M||h.uirevision)&&(f("uirevision",c.uirevision),!1!==M)){f("borderwidth");var S,E,C,I="h"===f("orientation"),L="paper"===f("yref"),P="paper"===f("xref"),z="left";if(I?(S=0,r.getComponentMethod("rangeslider","isVisible")(e.xaxis)?L?(E=1.1,C="bottom"):(E=1,C="top"):L?(E=-.1,C="top"):(E=0,C="bottom")):(E=1,C="auto",P?S=1.02:(S=1,z="right")),n.coerce(h,p,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:S}},"x"),n.coerce(h,p,{y:{valType:"number",editType:"legend",min:L?-2:0,max:L?3:1,dflt:E}},"y"),f("traceorder",b),l.isGrouped(c[t])&&f("tracegroupgap"),f("entrywidth"),f("entrywidthmode"),f("indentation"),f("itemsizing"),f("itemwidth"),f("itemclick"),f("itemdoubleclick"),f("groupclick"),f("xanchor",z),f("yanchor",C),f("valign"),n.noneOrAll(h,p,["x","y"]),f("title.text")){f("title.side",I?"left":"top");var D=n.extendFlat({},d,{size:n.bigFont(d.size)});n.coerceFont(f,"title.font",D)}}}}e.exports=function(t,e,r){var i,a=r.slice(),o=e.shapes;if(o)for(i=0;iS&&(M=S)}A[a][0]._groupMinRank=M,A[a][0]._preGroupSort=a}var E=function(t,e){return t.trace.legendrank-e.trace.legendrank||t._preSort-e._preSort};for(A.forEach((function(t,e){t[0]._preGroupSort=e})),A.sort((function(t,e){return t[0]._groupMinRank-e[0]._groupMinRank||t[0]._preGroupSort-e[0]._preGroupSort})),a=0;ar?r:t}e.exports=function(t,e,g){var y=e._fullLayout;g||(g=y.legend);var v="constant"===g.itemsizing,x=g.itemwidth,_=(x+2*p.itemGap)/2,b=a(_,0),w=function(t,e,r,n){var i;if(t+1)i=t;else{if(!(e&&e.width>0))return 0;i=e.width}return v?n:Math.min(i,r)};function T(t,i,a){var c=t[0].trace,u=c.marker||{},h=u.line||{},p=u.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",f=a?c.visible&&c.type===a:n.traceIs(c,"bar"),d=r.select(i).select("g.legendpoints").selectAll("path.legend"+a).data(f?[t]:[]);d.enter().append("path").classed("legend"+a,!0).attr("d",p).attr("transform",b),d.exit().remove(),d.each((function(t){var n=r.select(this),i=t[0],a=w(i.mlw,u.line,5,2);n.style("stroke-width",a+"px");var p=i.mcc;if(!g._inHover&&"mc"in i){var f=l(u),d=f.mid;void 0===d&&(d=(f.max+f.min)/2),p=o.tryColorscale(u,"")(d)}var y=p||i.mc||u.color,v=u.pattern,x=v&&o.getPatternAttr(v.shape,0,"");if(x){var _=o.getPatternAttr(v.bgcolor,0,null),b=o.getPatternAttr(v.fgcolor,0,null),T=v.fgopacity,A=m(v.size,8,10),k=m(v.solidity,.5,1),M="legend-"+c.uid;n.call(o.pattern,"legend",e,M,x,A,k,p,v.fillmode,_,b,T)}else n.call(s.fill,y);a&&s.stroke(n,i.mlc||h.color)}))}function A(t,a,o){var s=t[0],l=s.trace,c=o?l.visible&&l.type===o:n.traceIs(l,o),p=r.select(a).select("g.legendpoints").selectAll("path.legend"+o).data(c?[t]:[]);if(p.enter().append("path").classed("legend"+o,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",b),p.exit().remove(),p.size()){var f=l.marker||{},d=w(h(f.line.width,s.pts),f.line,5,2),m="pieLike",g=i.minExtend(l,{marker:{line:{width:d}}},m),y=i.minExtend(s,{trace:g},m);u(p,y,g,e)}}t.each((function(t){var e=r.select(this),n=i.ensureSingle(e,"g","layers");n.style("opacity",t[0].trace.opacity);var o=g.indentation,s=g.valign,l=t[0].lineHeight,c=t[0].height;if("middle"===s&&0===o||!l||!c)n.attr("transform",null);else{var u={top:1,bottom:-1}[s]*(.5*(l-c+3))||0,h=g.indentation;n.attr("transform",a(h,u))}n.selectAll("g.legendfill").data([t]).enter().append("g").classed("legendfill",!0),n.selectAll("g.legendlines").data([t]).enter().append("g").classed("legendlines",!0);var p=n.selectAll("g.legendsymbols").data([t]);p.enter().append("g").classed("legendsymbols",!0),p.selectAll("g.legendpoints").data([t]).enter().append("g").classed("legendpoints",!0)})).each((function(t){var n,a=t[0].trace,c=[];if(a.visible)switch(a.type){case"histogram2d":case"heatmap":c=[["M-15,-2V4H15V-2Z"]],n=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":c=[["M-6,-6V6H6V-6Z"]],n=!0;break;case"densitymapbox":case"densitymap":c=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],n="radial";break;case"cone":c=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],n=!1;break;case"streamtube":c=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],n=!1;break;case"surface":c=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],n=!0;break;case"mesh3d":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],n=!1;break;case"volume":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],n=!0;break;case"isosurface":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],n=!1}var u=r.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(c);u.enter().append("path").classed("legend3dandfriends",!0).attr("transform",b).style("stroke-miterlimit",1),u.exit().remove(),u.each((function(t,c){var u,h=r.select(this),p=l(a),d=p.colorscale,m=p.reversescale;if(d){if(!n){var g=d.length;u=0===c?d[m?g-1:0][1]:1===c?d[m?0:g-1][1]:d[Math.floor((g-1)/2)][1]}}else{var y=a.vertexcolor||a.facecolor||a.color;u=i.isArrayOrTypedArray(y)?y[c]||y[0]:y}h.attr("d",t[0]),u?h.call(s.fill,u):h.call((function(t){if(t.size()){var r="legendfill-"+a.uid;o.gradient(t,e,r,f(m,"radial"===n),d,"fill")}}))}))})).each((function(t){var e=t[0].trace,n="waterfall"===e.type;if(t[0]._distinct&&n){var i=t[0].trace[t[0].dir].marker;return t[0].mc=i.color,t[0].mlw=i.line.width,t[0].mlc=i.line.color,T(t,this,"waterfall")}var a=[];e.visible&&n&&(a=t[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var o=r.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(a);o.enter().append("path").classed("legendwaterfall",!0).attr("transform",b).style("stroke-miterlimit",1),o.exit().remove(),o.each((function(t){var n=r.select(this),i=e[t[0]].marker,a=w(void 0,i.line,5,2);n.attr("d",t[1]).style("stroke-width",a+"px").call(s.fill,i.color),a&&n.call(s.stroke,i.line.color)}))})).each((function(t){T(t,this,"funnel")})).each((function(t){T(t,this)})).each((function(t){var a=t[0].trace,l=r.select(this).select("g.legendpoints").selectAll("path.legendbox").data(a.visible&&n.traceIs(a,"box-violin")?[t]:[]);l.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",b),l.exit().remove(),l.each((function(){var t=r.select(this);if("all"!==a.boxpoints&&"all"!==a.points||0!==s.opacity(a.fillcolor)||0!==s.opacity((a.line||{}).color)){var n=w(void 0,a.line,5,2);t.style("stroke-width",n+"px").call(s.fill,a.fillcolor),n&&s.stroke(t,a.line.color)}else{var c=i.minExtend(a,{marker:{size:v?12:i.constrain(a.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});l.call(o.pointStyle,c,e)}}))})).each((function(t){A(t,this,"funnelarea")})).each((function(t){A(t,this,"pie")})).each((function(t){var n,a,s=d(t),u=s.showFill,h=s.showLine,p=s.showGradientLine,m=s.showGradientFill,g=s.anyFill,y=s.anyLine,v=t[0],_=v.trace,b=l(_),T=b.colorscale,A=b.reversescale,k=c.hasMarkers(_)||!g?"M5,0":y?"M5,-2":"M5,-3",M=r.select(this),S=M.select(".legendfill").selectAll("path").data(u||m?[t]:[]);if(S.enter().append("path").classed("js-fill",!0),S.exit().remove(),S.attr("d",k+"h"+x+"v6h-"+x+"z").call((function(t){if(t.size())if(u)o.fillGroupStyle(t,e,!0);else{var r="legendfill-"+_.uid;o.gradient(t,e,r,f(A),T,"fill")}})),h||p){var E=w(void 0,_.line,10,5);a=i.minExtend(_,{line:{width:E}}),n=[i.minExtend(v,{trace:a})]}var C=M.select(".legendlines").selectAll("path").data(h||p?[n]:[]);C.enter().append("path").classed("js-line",!0),C.exit().remove(),C.attr("d",k+(p?"l"+x+",0.0001":"h"+x)).call(h?o.lineGroupStyle:function(t){if(t.size()){var r="legendline-"+_.uid;o.lineGroupStyle(t),o.gradient(t,e,r,f(A),T,"stroke")}})})).each((function(t){var n,a,s=d(t),l=s.anyFill,u=s.anyLine,h=s.showLine,p=s.showMarker,f=t[0],m=f.trace,g=!p&&!u&&!l&&c.hasText(m);function y(t,e,r,n){var a=i.nestedProperty(m,t).get(),o=i.isArrayOrTypedArray(a)&&e?e(a):a;if(v&&o&&void 0!==n&&(o=n),r){if(or[1])return r[1]}return o}function x(t){return f._distinct&&f.index&&t[f.index]?t[f.index]:t[0]}if(p||g||h){var _={},w={};if(p){_.mc=y("marker.color",x),_.mx=y("marker.symbol",x),_.mo=y("marker.opacity",i.mean,[.2,1]),_.mlc=y("marker.line.color",x),_.mlw=y("marker.line.width",i.mean,[0,5],2),w.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var T=y("marker.size",i.mean,[2,16],12);_.ms=T,w.marker.size=T}h&&(w.line={width:y("line.width",x,[0,10],5)}),g&&(_.tx="Aa",_.tp=y("textposition",x),_.ts=10,_.tc=y("textfont.color",x),_.tf=y("textfont.family",x),_.tw=y("textfont.weight",x),_.ty=y("textfont.style",x),_.tv=y("textfont.variant",x),_.tC=y("textfont.textcase",x),_.tE=y("textfont.lineposition",x),_.tS=y("textfont.shadow",x)),n=[i.minExtend(f,_)],(a=i.minExtend(m,w)).selectedpoints=null,a.texttemplate=null}var A=r.select(this).select("g.legendpoints"),k=A.selectAll("path.scatterpts").data(p?n:[]);k.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",b),k.exit().remove(),k.call(o.pointStyle,a,e),p&&(n[0].mrc=3);var M=A.selectAll("g.pointtext").data(g?n:[]);M.enter().append("g").classed("pointtext",!0).append("text").attr("transform",b),M.exit().remove(),M.selectAll("text").call(o.textPointStyle,a,e)})).each((function(t){var e=t[0].trace,n=r.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(e.visible&&"candlestick"===e.type?[t,t]:[]);n.enter().append("path").classed("legendcandle",!0).attr("d",(function(t,e){return e?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"})).attr("transform",b).style("stroke-miterlimit",1),n.exit().remove(),n.each((function(t,n){var i=r.select(this),a=e[n?"increasing":"decreasing"],o=w(void 0,a.line,5,2);i.style("stroke-width",o+"px").call(s.fill,a.fillcolor),o&&s.stroke(i,a.line.color)}))})).each((function(t){var e=t[0].trace,n=r.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(e.visible&&"ohlc"===e.type?[t,t]:[]);n.enter().append("path").classed("legendohlc",!0).attr("d",(function(t,e){return e?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"})).attr("transform",b).style("stroke-miterlimit",1),n.exit().remove(),n.each((function(t,n){var i=r.select(this),a=e[n?"increasing":"decreasing"],l=w(void 0,a.line,5,2);i.style("fill","none").call(o.dashLine,a.line.dash,l),l&&s.stroke(i,a.line.color)}))}))}}}),kr=f({"src/components/legend/draw.js"(t,e){var r=x(),n=le(),i=Ae(),a=qt(),o=fe(),s=pr(),l=Qe(),c=H(),u=Se(),h=vr(),p=xr(),f=Me(),d=f.LINE_SPACING,m=f.FROM_TL,g=f.FROM_BR,y=_r(),v=Ar(),_=gr(),b=/^legend[0-9]*$/;function w(t,e){var o,h,f=e||{},x=t._fullLayout,b=L(f),w=f._inHover;if(w?(h=f.layer,o="hover"):(h=x._infolayer,o=b),h){var M;if(o+=x._uid,t._legendMouseDownTime||(t._legendMouseDownTime=0),w){if(!f.entries)return;M=y(f.entries,f)}else{for(var P=(t.calcdata||[]).slice(),z=x.shapes,D=0;D1)}var F=x.hiddenlabels||[];if(!(w||x.showlegend&&M.length))return h.selectAll("."+b).remove(),x._topdefs.select("#"+o).remove(),i.autoMargin(t,b);var B=n.ensureSingle(h,"g",b,(function(t){w||t.attr("pointer-events","all")})),j=n.ensureSingleById(x._topdefs,"clipPath",o,(function(t){t.append("rect")})),N=n.ensureSingle(B,"rect","bg",(function(t){t.attr("shape-rendering","crispEdges")}));N.call(c.stroke,f.bordercolor).call(c.fill,f.bgcolor).style("stroke-width",f.borderwidth+"px");var U,V=n.ensureSingle(B,"g","scrollbox"),q=f.title;f._titleWidth=0,f._titleHeight=0,q.text?((U=n.ensureSingle(V,"text",b+"titletext")).attr("text-anchor","start").call(l.font,q.font).text(q.text),E(U,V,t,f,1)):V.selectAll("."+b+"titletext").remove();var H=n.ensureSingle(B,"rect","scrollbar",(function(t){t.attr(p.scrollBarEnterAttrs).call(c.fill,p.scrollBarColor)})),G=V.selectAll("g.groups").data(M);G.enter().append("g").attr("class","groups"),G.exit().remove();var W=G.selectAll("g.traces").data(n.identity);W.enter().append("g").attr("class","traces"),W.exit().remove(),W.style("opacity",(function(t){var e=t[0].trace;return a.traceIs(e,"pie-like")?-1!==F.indexOf(t[0].label)?.5:1:"legendonly"===e.visible?.5:1})).each((function(){r.select(this).call(k,t,f)})).call(v,t,f).each((function(){w||r.select(this).call(S,t,b)})),n.syncOrAsync([i.previousPromises,function(){return function(t,e,n,i){var a=t._fullLayout,o=L(i);i||(i=a[o]);var s=a._size,c=_.isVertical(i),u=_.isGrouped(i),h="fraction"===i.entrywidthmode,f=i.borderwidth,d=2*f,m=p.itemGap,g=i.indentation+i.itemwidth+2*m,y=2*(f+m),v=I(i),x=i.y<0||0===i.y&&"top"===v,b=i.y>1||1===i.y&&"bottom"===v,w=i.tracegroupgap,A={};i._maxHeight=Math.max(x||b?a.height/2:s.h,30);var k=0;i._width=0,i._height=0;var M=function(t){var e=0,r=0,n=t.title.side;return n&&(-1!==n.indexOf("left")&&(e=t._titleWidth),-1!==n.indexOf("top")&&(r=t._titleHeight)),[e,r]}(i);if(c)n.each((function(t){var e=t[0].height;l.setTranslate(this,f+M[0],f+M[1]+i._height+e/2+m),i._height+=e,i._width=Math.max(i._width,t[0].width)})),k=g+i._width,i._width+=m+g+d,i._height+=y,u&&(e.each((function(t,e){l.setTranslate(this,0,e*i.tracegroupgap)})),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var S=C(i),E=i.x<0||0===i.x&&"right"===S,P=i.x>1||1===i.x&&"left"===S,z=b||x,D=a.width/2;i._maxWidth=Math.max(E?z&&"left"===S?s.l+s.w:D:P?z&&"right"===S?s.r+s.w:D:s.w,2*g);var O=0,R=0;n.each((function(t){var e=T(t,i,g);O=Math.max(O,e),R+=e})),k=null;var F=0;if(u){var B=0,j=0,N=0;e.each((function(){var t=0,e=0;r.select(this).selectAll("g.traces").each((function(r){var n=T(r,i,g),a=r[0].height;l.setTranslate(this,M[0],M[1]+f+m+a/2+e),e+=a,t=Math.max(t,n),A[r[0].trace.legendgroup]=t}));var n=t+m;j>0&&n+f+j>i._maxWidth?(F=Math.max(F,j),j=0,N+=B+w,B=e):B=Math.max(B,e),l.setTranslate(this,j,N),j+=n})),i._width=Math.max(F,j)+f,i._height=N+B+y}else{var U=n.size(),V=R+d+(U-1)*m=i._maxWidth&&(F=Math.max(F,W),H=0,G+=q,i._height+=q,q=0),l.setTranslate(this,M[0]+f+H,M[1]+f+G+e/2+m),W=H+r+m,H+=n,q=Math.max(q,e)})),V?(i._width=H+d,i._height=q+y):(i._width=Math.max(F,W)+d,i._height+=q+y)}}i._width=Math.ceil(Math.max(i._width+M[0],i._titleWidth+2*(f+p.titlePad))),i._height=Math.ceil(Math.max(i._height+M[1],i._titleHeight+2*(f+p.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var Z=t._context.edits,Y=Z.legendText||Z.legendPosition;n.each((function(t){var e=r.select(this).select("."+o+"toggle"),n=t[0].height,a=t[0].trace.legendgroup,s=T(t,i,g);u&&""!==a&&(s=A[a]);var p=Y?g:k||s;!c&&!h&&(p+=m/2),l.setRect(e,0,-n/2,p,n)}))}(t,G,W,f)},function(){var e,c,y,v,_=x._size,T=f.borderwidth,k="paper"===f.xref,M="paper"===f.yref;if(q.text&&function(t,e,r){if("top center"===e.title.side||"top right"===e.title.side){var n=e.title.font.size*d,i=0,a=t.node(),o=l.bBox(a).width;"top center"===e.title.side?i=.5*(e._width-2*r-2*p.titlePad-o):"top right"===e.title.side&&(i=e._width-2*r-2*p.titlePad-o),u.positionText(t,r+p.titlePad+i,r+n)}}(U,f,T),!w){var S,E;S=k?_.l+_.w*f.x-m[C(f)]*f._width:x.width*f.x-m[C(f)]*f._width,E=M?_.t+_.h*(1-f.y)-m[I(f)]*f._effHeight:x.height*(1-f.y)-m[I(f)]*f._effHeight;var L=function(t,e,r,n){var a=t._fullLayout,o=a[e],s=C(o),l=I(o),c="paper"===o.xref,u="paper"===o.yref;t._fullLayout._reservedMargin[e]={};var h=o.y<.5?"b":"t",p=o.x<.5?"l":"r",f={r:a.width-r,l:r+o._width,b:a.height-n,t:n+o._effHeight};if(c&&u)return i.autoMargin(t,e,{x:o.x,y:o.y,l:o._width*m[s],r:o._width*g[s],b:o._effHeight*g[l],t:o._effHeight*m[l]});c?t._fullLayout._reservedMargin[e][h]=f[h]:u||"v"===o.orientation?t._fullLayout._reservedMargin[e][p]=f[p]:t._fullLayout._reservedMargin[e][h]=f[h]}(t,b,S,E);if(L)return;if(x.margin.autoexpand){var P=S,z=E;S=k?n.constrain(S,0,x.width-f._width):P,E=M?n.constrain(E,0,x.height-f._effHeight):z,S!==P&&n.log("Constrain "+b+".x to make legend fit inside graph"),E!==z&&n.log("Constrain "+b+".y to make legend fit inside graph")}l.setTranslate(B,S,E)}if(H.on(".drag",null),B.on("wheel",null),w||f._height<=f._maxHeight||t._context.staticPlot){var D=f._effHeight;w&&(D=f._height),N.attr({width:f._width-T,height:D-T,x:T/2,y:T/2}),l.setTranslate(V,0,0),j.select("rect").attr({width:f._width-2*T,height:D-2*T,x:T,y:T}),l.setClipUrl(V,o,t),l.setRect(H,0,0,0,0),delete f._scrollY}else{var O=Math.max(p.scrollBarMinHeight,f._effHeight*f._effHeight/f._height),R=f._effHeight-O-2*p.scrollBarMargin,F=f._height-f._effHeight,G=R/F,W=Math.min(f._scrollY||0,F);N.attr({width:f._width-2*T+p.scrollBarWidth+p.scrollBarMargin,height:f._effHeight-T,x:T/2,y:T/2}),j.select("rect").attr({width:f._width-2*T+p.scrollBarWidth+p.scrollBarMargin,height:f._effHeight-2*T,x:T,y:T+W}),l.setClipUrl(V,o,t),J(W,O,G),B.on("wheel",(function(){J(W=n.constrain(f._scrollY+r.event.deltaY/R*F,0,F),O,G),0!==W&&W!==F&&r.event.preventDefault()}));var Z,Y,X,$=r.behavior.drag().on("dragstart",(function(){var t=r.event.sourceEvent;Z="touchstart"===t.type?t.changedTouches[0].clientY:t.clientY,X=W})).on("drag",(function(){var t=r.event.sourceEvent;2===t.buttons||t.ctrlKey||(Y="touchmove"===t.type?t.changedTouches[0].clientY:t.clientY,W=function(t,e,r){var i=(r-e)/G+t;return n.constrain(i,0,F)}(X,Z,Y),J(W,O,G))}));H.call($);var K=r.behavior.drag().on("dragstart",(function(){var t=r.event.sourceEvent;"touchstart"===t.type&&(Z=t.changedTouches[0].clientY,X=W)})).on("drag",(function(){var t=r.event.sourceEvent;"touchmove"===t.type&&(Y=t.changedTouches[0].clientY,W=function(t,e,r){var i=(e-r)/G+t;return n.constrain(i,0,F)}(X,Z,Y),J(W,O,G))}));V.call(K)}function J(e,r,n){f._scrollY=t._fullLayout[b]._scrollY=e,l.setTranslate(V,0,-e),l.setRect(H,f._width,p.scrollBarMargin+e*n,p.scrollBarWidth,r),j.select("rect").attr("y",T+e)}t._context.edits.legendPosition&&(B.classed("cursor-move",!0),s.init({element:B.node(),gd:t,prepFn:function(t){if(t.target!==H.node()){var e=l.getTranslate(B);y=e.x,v=e.y}},moveFn:function(t,r){if(void 0!==y&&void 0!==v){var n=y+t,i=v+r;l.setTranslate(B,n,i),e=s.align(n,f._width,_.l,_.l+_.w,f.xanchor),c=s.align(i+f._height,-f._height,_.t+_.h,_.t,f.yanchor)}},doneFn:function(){if(void 0!==e&&void 0!==c){var r={};r[b+".x"]=e,r[b+".y"]=c,a.call("_guiRelayout",t,r)}},clickFn:function(e,r){var n=h.selectAll("g.traces").filter((function(){var t=this.getBoundingClientRect();return r.clientX>=t.left&&r.clientX<=t.right&&r.clientY>=t.top&&r.clientY<=t.bottom}));n.size()>0&&A(t,B,n,e,r)}}))}],t)}}function T(t,e,r){var n=t[0],i=n.width,a=e.entrywidthmode,o=n.trace.legendwidth||e.entrywidth;return"fraction"===a?e._maxWidth*o:r+(o||i)}function A(t,e,r,n,i){var s=r.data()[0][0].trace,l={event:i,node:r.node(),curveNumber:s.index,expandedIndex:s.index,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};s._group&&(l.group=s._group),a.traceIs(s,"pie-like")&&(l.label=r.datum()[0].label);var c=o.triggerHandler(t,"plotly_legendclick",l);if(1===n){if(!1===c)return;e._clickTimeout=setTimeout((function(){t._fullLayout&&h(r,t,n)}),t._context.doubleClickDelay)}else 2===n&&(e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==o.triggerHandler(t,"plotly_legenddoubleclick",l)&&!1!==c&&h(r,t,n))}function k(t,e,r){var i,o,s=L(r),c=t.data()[0][0],h=c.trace,f=a.traceIs(h,"pie-like"),d=!r._inHover&&e._context.edits.legendText&&!f,m=r._maxNameLength;c.groupTitle?(i=c.groupTitle.text,o=c.groupTitle.font):(o=r.font,r.entries?i=c.text:(i=f?c.label:h.name,h._meta&&(i=n.templateString(i,h._meta))));var g=n.ensureSingle(t,"text",s+"text");g.attr("text-anchor","start").call(l.font,o).text(d?M(i,m):i);var y=r.indentation+r.itemwidth+2*p.itemGap;u.positionText(g,y,0),d?g.call(u.makeEditable,{gd:e,text:i}).call(E,t,e,r).on("edit",(function(n){this.text(M(n,m)).call(E,t,e,r);var i=c.trace._fullInput||{},o={};return o.name=n,i._isShape?a.call("_guiRelayout",e,"shapes["+h.index+"].name",o.name):a.call("_guiRestyle",e,o,h.index)})):E(g,t,e,r)}function M(t,e){var r=Math.max(4,e);if(t&&t.trim().length>=r/2)return t;for(var n=r-(t=t||"").length;n>0;n--)t+=" ";return t}function S(t,e,i){var a,o=e._context.doubleClickDelay,s=1,l=n.ensureSingle(t,"rect",i+"toggle",(function(t){e._context.staticPlot||t.style("cursor","pointer").attr("pointer-events","all"),t.call(c.fill,"rgba(0,0,0,0)")}));e._context.staticPlot||(l.on("mousedown",(function(){(a=(new Date).getTime())-e._legendMouseDownTimeo&&(s=Math.max(s-1,1)),A(e,n,t,s,r.event)}})))}function E(t,e,r,n,i){n._inHover&&t.attr("data-notex",!0),u.convertToTspans(t,r,(function(){!function(t,e,r,n){var i=t.data()[0][0];if(r._inHover||!i||i.trace.showlegend){var a=t.select("g[class*=math-group]"),o=a.node(),s=L(r);r||(r=e._fullLayout[s]);var c,h,f=r.borderwidth,m=(1===n?r.title.font:i.groupTitle?i.groupTitle.font:r.font).size*d;if(o){var g=l.bBox(o);c=g.height,h=g.width,1===n?l.setTranslate(a,f,f+.75*c):l.setTranslate(a,0,.25*c)}else{var y="."+s+(1===n?"title":"")+"text",v=t.select(y),x=u.lineCount(v),_=v.node();if(c=m*x,h=_?l.bBox(_).width:0,1===n)"left"===r.title.side&&(h+=2*p.itemGap),u.positionText(v,f+p.titlePad,f+m);else{var b=2*p.itemGap+r.indentation+r.itemwidth;i.groupTitle&&(b=p.itemGap,h-=r.indentation+r.itemwidth),u.positionText(v,b,-m*((x-1)/2-.3))}}1===n?(r._titleWidth=h,r._titleHeight=c):(i.lineHeight=m,i.height=Math.max(c,16)+3,i.width=h)}else t.remove()}(e,r,n,i)}))}function C(t){return n.isRightAnchor(t)?"right":n.isCenterAnchor(t)?"center":"left"}function I(t){return n.isBottomAnchor(t)?"bottom":n.isMiddleAnchor(t)?"middle":"top"}function L(t){return t._id||"legend"}e.exports=function(t,e){if(e)w(t,e);else{var n=t._fullLayout,i=n._legends;n._infolayer.selectAll('[class^="legend"]').each((function(){var t=r.select(this),e=t.attr("class").split(" ")[0];e.match(b)&&-1===i.indexOf(e)&&t.remove()}));for(var a=0;a$[0]._length||bt<0||bt>K[0]._length)return f.unhoverRaw(t,n)}else _t="xpx"in n?n.xpx:$[0]._length/2,bt="ypx"in n?n.ypx:K[0]._length/2;if(n.pointerX=_t+$[0]._offset,n.pointerY=bt+K[0]._offset,nt="xval"in n?y.flat(_,n.xval):y.p2c($,_t),it="yval"in n?y.flat(_,n.yval):y.p2c(K,bt),!r(nt[0])||!r(it[0]))return i.warn("Fx.hover failed",n,t),f.unhoverRaw(t,n)}var kt=1/0;function Mt(e,a){for(ot=0;otmt&&(gt.splice(0,mt),kt=gt[0].distance),M&&0!==rt&&0===gt.length){dt.distance=rt,dt.index=!1;var u=lt._module.hoverPoints(dt,pt,ft,"closest",{hoverLayer:b._hoverlayer});if(u&&(u=u.filter((function(t){return t.spikeDistance<=rt}))),u&&u.length){var h,f=u.filter((function(t){return t.xa.showspikes&&"hovered data"!==t.xa.spikesnap}));if(f.length){var d=f[0];r(d.x0)&&r(d.y0)&&(h=Et(d),(!vt.vLinePoint||vt.vLinePoint.spikeDistance>h.spikeDistance)&&(vt.vLinePoint=h))}var m=u.filter((function(t){return t.ya.showspikes&&"hovered data"!==t.ya.spikesnap}));if(m.length){var g=m[0];r(g.x0)&&r(g.y0)&&(h=Et(g),(!vt.hLinePoint||vt.hLinePoint.spikeDistance>h.spikeDistance)&&(vt.hLinePoint=h))}}}}}function St(t,e,r){for(var n,i=null,a=1/0,o=0;o0&&Math.abs(t.distance)jt-1;Nt--)Ht(gt[Nt]);gt=Ut,Pt()}var Gt=t._hoverdata,Wt=[],Zt=Z(t),Yt=Y(t);for(at=0;at1||gt.length>1)||"closest"===S&&xt&>.length>1,se=p.combine(b.plot_bgcolor||p.background,b.paper_bgcolor),le=R(gt,{gd:t,hovermode:S,rotateLabels:oe,bgColor:se,container:b._hoverlayer,outerContainer:b._paper.node(),commonLabelOpts:b.hoverlabel,hoverdistance:b.hoverdistance}),ce=le.hoverLabels;if(y.isUnifiedHover(S)||(function(t,e,r,n){var i,a,o,s,l,c,u,h=e?"xa":"ya",p=e?"ya":"xa",f=0,d=1,m=t.size(),g=new Array(m),y=0,v=n.minX,x=n.maxX,_=n.minY,b=n.maxY,w=function(t){return t*r._invScaleX},T=function(t){return t*r._invScaleY};function A(t){var e=t[0],r=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,o=r.pos+r.dp+r.size-e.pmax,a>.01){for(l=t.length-1;l>=0;l--)t[l].dp+=a;i=!1}if(!(o<.01)){if(a<-.01){for(l=t.length-1;l>=0;l--)t[l].dp-=o;i=!1}if(i){var n=0;for(s=0;se.pmax&&n++;for(s=t.length-1;s>=0&&!(n<=0);s--)(c=t[s]).pos>e.pmax-1&&(c.del=!0,n--);for(s=0;s=0;l--)t[l].dp-=o;for(s=t.length-1;s>=0&&!(n<=0);s--)(c=t[s]).pos+c.dp+c.size>e.pmax&&(c.del=!0,n--)}}}for(t.each((function(t){var n=t[h],i=t[p],a="x"===n._id.charAt(0),o=n.range;0===y&&o&&o[0]>o[1]!==a&&(d=-1);var s=0,l=a?r.width:r.height;if("x"===r.hovermode||"y"===r.hovermode){var c,u,f=j(t,e),m=t.anchor,A="end"===m?-1:1;if("middle"===m)u=(c=t.crossPos+(a?T(f.y-t.by/2):w(t.bx/2+t.tx2width/2)))+(a?T(t.by):w(t.bx));else if(a)u=(c=t.crossPos+T(E+f.y)-T(t.by/2-E))+T(t.by);else{var M=w(A*E+f.x),S=M+w(A*t.bx);c=t.crossPos+Math.min(M,S),u=t.crossPos+Math.max(M,S)}a?void 0!==_&&void 0!==b&&Math.min(u,b)-Math.max(c,_)>1&&("left"===i.side?(s=i._mainLinePosition,l=r.width):l=i._mainLinePosition):void 0!==v&&void 0!==x&&Math.min(u,x)-Math.max(c,v)>1&&("top"===i.side?(s=i._mainLinePosition,l=r.height):l=i._mainLinePosition)}g[y++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?k:1)/2,pmin:s,pmax:l}]})),g.sort((function(t,e){return t[0].posref-e[0].posref||d*(e[0].traceIndex-t[0].traceIndex)}));!i&&f<=m;){for(f++,i=!0,s=0;s.01){for(l=S.length-1;l>=0;l--)S[l].dp+=a;for(M.push.apply(M,S),g.splice(s+1,1),u=0,l=M.length-1;l>=0;l--)u+=M[l].dp;for(o=u/M.length,l=M.length-1;l>=0;l--)M[l].dp-=o;i=!1}else s++}g.forEach(A)}for(s=g.length-1;s>=0;s--){var L=g[s];for(l=L.length-1;l>=0;l--){var P=L[l],z=P.datum;z.offset=P.dp,z.del=P.del}}}(ce,oe,b,le.commonLabelBoundingBox),N(ce,oe,b._invScaleX,b._invScaleY)),c&&c.tagName){var ue=g.getComponentMethod("annotations","hasClickToShow")(t,Wt);u(e.select(c),ue?"pointer":"")}!c||s||!function(t,e,r){if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=t._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}(t,0,Gt)||(Gt&&t.emit("plotly_unhover",{event:n,points:Gt}),t.emit("plotly_hover",{event:n,points:t._hoverdata,xaxes:$,yaxes:K,xvals:nt,yvals:it}))}(t,n,o,s,c)}))},t.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Z(i),o=Y(i),s=!1,l=R(t.map((function(t){var e=t._x0||t.x0||t.x||0,n=t._x1||t.x1||t.x||0,s=t._y0||t.y0||t.y||0,l=t._y1||t.y1||t.y||0,c=t.eventData;if(c){var u=Math.min(e,n),h=Math.max(e,n),f=Math.min(s,l),d=Math.max(s,l),m=t.trace;if(g.traceIs(m,"gl3d")){var y=i._fullLayout[m.scene]._scene.container,v=y.offsetLeft,x=y.offsetTop;u+=v,h+=v,f+=x,d+=x}c.bbox={x0:u+o,x1:h+o,y0:f+a,y1:d+a},r.inOut_bbox&&r.inOut_bbox.push(c.bbox)}else c=!1;return{color:t.color||p.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,borderColor:t.borderColor,fontFamily:t.fontFamily,fontSize:t.fontSize,fontColor:t.fontColor,fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontVariant:t.fontVariant,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,hovertemplateLabels:t.hovertemplateLabels||!1,eventData:c}})),{gd:i,hovermode:"closest",rotateLabels:s,bgColor:r.bgColor||p.background,container:e.select(r.container),outerContainer:r.outerContainer||r.container}).hoverLabels,c=0,u=0;return l.sort((function(t,e){return t.y0-e.y0})).each((function(t,e){var n=t.y0-t.by/2;t.offset=n-5([\s\S]*)<\/extra>/;function R(t,r){var n=r.gd,a=n._fullLayout,l=r.hovermode,u=r.rotateLabels,f=r.bgColor,d=r.container,m=r.outerContainer,x=r.commonLabelOpts||{};if(0===t.length)return[[]];var T=r.fontFamily||v.HOVERFONT,A=r.fontSize||v.HOVERFONTSIZE,k=r.fontWeight||a.font.weight,M=r.fontStyle||a.font.style,S=r.fontVariant||a.font.variant,I=r.fontTextcase||a.font.textcase,L=r.fontLineposition||a.font.lineposition,P=r.fontShadow||a.font.shadow,D=t[0],O=D.xa,R=D.ya,B=l.charAt(0),j=B+"Label",N=D[j];if(void 0===N&&"multicategory"===O.type)for(var U=0;Ua.width-w&&(z=a.width-w),r.attr("d","M"+(y-z)+",0L"+(y-z+E)+","+b+E+"H"+w+"v"+b+(2*C+_.height)+"H"+-w+"V"+b+E+"H"+(y-z-E)+"Z"),y=z,Q.minX=y-w,Q.maxX=y+w,"top"===O.side?(Q.minY=v-(2*C+_.height),Q.maxY=v-C):(Q.minY=v+C,Q.maxY=v+(2*C+_.height))}else{var F,B,j;"right"===R.side?(F="start",B=1,j="",y=O._offset+O._length):(F="end",B=-1,j="-",y=O._offset),v=R._offset+(D.y0+D.y1)/2,s.attr("text-anchor",F),r.attr("d","M0,0L"+j+E+","+E+"V"+(C+_.height/2)+"h"+j+(2*C+_.width)+"V-"+(C+_.height/2)+"H"+j+E+"V-"+E+"Z"),Q.minY=v-(C+_.height/2),Q.maxY=v+(C+_.height/2),"right"===R.side?(Q.minX=y+E,Q.maxX=y+E+(2*C+_.width)):(Q.minX=y-E-(2*C+_.width),Q.maxX=y-E);var U,V=_.height/2,H=q-_.top-V,G="clip"+a._uid+"commonlabel"+R._id;if(y<_.width+2*C+E){U="M-"+(E+C)+"-"+V+"h-"+(_.width-C)+"V"+V+"h"+(_.width-C)+"Z";var W=_.width-y+C;c.positionText(s,W,H),"end"===F&&s.selectAll("tspan").each((function(){var t=e.select(this),r=h.tester.append("text").text(t.text()).call(h.font,g),i=X(n,r.node());Math.round(i.width)=0?dt:mt+vt=0?mt:Mt+vt=0?pt:ft+xt=0?ft:St+xt=0,"top"!==t.idealAlign&&K||!J?K?(j+=V/2,t.anchor="start"):t.anchor="middle":(j-=V/2,t.anchor="end"),t.crossPos=j;else{if(t.pos=j,K=B+U/2+Q<=H,J=B-U/2-Q>=0,"left"!==t.idealAlign&&K||!J)if(K)B+=U/2,t.anchor="start";else{t.anchor="middle";var tt=Q/2,et=B+tt-H,rt=B-tt;et>0&&(B-=et),rt<0&&(B+=-rt)}else B-=U/2,t.anchor="end";t.crossPos=B}b.attr("text-anchor",t.anchor),D&&z.attr("text-anchor",t.anchor),r.attr("transform",o(B,j)+(u?s(w):""))})),{hoverLabels:Et,commonLabelBoundingBox:Q}}function F(t,e,r,n,a,o){var s="",l="";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=i.templateString(t.name,t.trace._meta)),s=G(t.name,t.nameLength));var c=r.charAt(0),u="x"===c?"y":"x";void 0!==t.zLabel?(void 0!==t.xLabel&&(l+="x: "+t.xLabel+"
"),void 0!==t.yLabel&&(l+="y: "+t.yLabel+"
"),"choropleth"!==t.trace.type&&"choroplethmapbox"!==t.trace.type&&"choroplethmap"!==t.trace.type&&(l+=(l?"z: ":"")+t.zLabel)):e&&t[c+"Label"]===a?l=t[u+"Label"]||"":void 0===t.xLabel?void 0!==t.yLabel&&"scattercarpet"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:"("+t.xLabel+", "+t.yLabel+")",(t.text||0===t.text)&&!Array.isArray(t.text)&&(l+=(l?"
":"")+t.text),void 0!==t.extraText&&(l+=(l?"
":"")+t.extraText),o&&""===l&&!t.hovertemplate&&(""===s&&o.remove(),l=s);var h=t.hovertemplate||!1;if(h){var p=t.hovertemplateLabels||t;t[c+"Label"]!==a&&(p[c+"other"]=p[c+"Val"],p[c+"otherLabel"]=p[c+"Label"]),l=(l=i.hovertemplateString(h,p,n._d3locale,t.eventData[0]||{},t.trace._meta)).replace(D,(function(e,r){return s=G(r,t.nameLength),""}))}return[l,s]}function j(t,e){var r=0,n=t.offset;return e&&(n*=-S,r=t.offset*M),{x:r,y:n}}function N(t,r,n,i){var a=function(t){return t*n},o=function(t){return t*i};t.each((function(t){var n=e.select(this);if(t.del)return n.remove();var i=n.select("text.nums"),s=t.anchor,l="end"===s?-1:1,u=function(t){var e={start:1,end:-1,middle:0}[t.anchor],r=e*(E+C),n=r+e*(t.txwidth+C);return"middle"===t.anchor&&(r-=t.tx2width/2,n+=t.txwidth/2+C),{alignShift:e,textShiftX:r,text2ShiftX:n}}(t),p=j(t,r),f=p.x,d=p.y,m="middle"===s;n.select("path").attr("d",m?"M-"+a(t.bx/2+t.tx2width/2)+","+o(d-t.by/2)+"h"+a(t.bx)+"v"+o(t.by)+"h-"+a(t.bx)+"Z":"M0,0L"+a(l*E+f)+","+o(E+d)+"v"+o(t.by/2-E)+"h"+a(l*t.bx)+"v-"+o(t.by)+"H"+a(l*E+f)+"V"+o(d-E)+"Z");var g=f+u.textShiftX,y=d+t.ty0-t.by/2+C,v=t.textAlign||"auto";"auto"!==v&&("left"===v&&"start"!==s?(i.attr("text-anchor","start"),g=m?-t.bx/2-t.tx2width/2+C:-t.bx-C):"right"===v&&"end"!==s&&(i.attr("text-anchor","end"),g=m?t.bx/2-t.tx2width/2-C:t.bx+C)),i.call(c.positionText,a(g),o(y)),t.tx2width&&(n.select("text.name").call(c.positionText,a(u.text2ShiftX+u.alignShift*C+f),o(d+t.ty0-t.by/2+C)),n.select("rect").call(h.setRect,a(u.text2ShiftX+(u.alignShift-1)*t.tx2width/2+f),o(d-t.by/2-1),a(t.tx2width),o(t.by+2)))}))}function U(t,e){var n=t.index,a=t.trace||{},o=t.cd[0],s=t.cd[n]||{};function l(t){return t||r(t)&&0===t}var c=Array.isArray(n)?function(t,e){var r=i.castOption(o,n,t);return l(r)?r:i.extractOption({},a,"",e)}:function(t,e){return i.extractOption(s,a,t,e)};function u(e,r,n){var i=c(r,n);l(i)&&(t[e]=i)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("fontWeight","htw","hoverlabel.font.weight"),u("fontStyle","hty","hoverlabel.font.style"),u("fontVariant","htv","hoverlabel.font.variant"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),t.posref="y"===e||"closest"===e&&"h"===a.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=i.constrain(t.x0,0,t.xa._length),t.x1=i.constrain(t.x1,0,t.xa._length),t.y0=i.constrain(t.y0,0,t.ya._length),t.y1=i.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel="xLabel"in t?t.xLabel:d.hoverLabelText(t.xa,t.xLabelVal,a.xhoverformat),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel="yLabel"in t?t.yLabel:d.hoverLabelText(t.ya,t.yLabelVal,a.yhoverformat),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!(isNaN(t.xerr)||"log"===t.xa.type&&t.xerr<=0)){var h=d.tickText(t.xa,t.xa.c2l(t.xerr),"hover").text;void 0!==t.xerrneg?t.xLabel+=" +"+h+" / -"+d.tickText(t.xa,t.xa.c2l(t.xerrneg),"hover").text:t.xLabel+=" ± "+h,"x"===e&&(t.distance+=1)}if(!(isNaN(t.yerr)||"log"===t.ya.type&&t.yerr<=0)){var p=d.tickText(t.ya,t.ya.c2l(t.yerr),"hover").text;void 0!==t.yerrneg?t.yLabel+=" +"+p+" / -"+d.tickText(t.ya,t.ya.c2l(t.yerrneg),"hover").text:t.yLabel+=" ± "+p,"y"===e&&(t.distance+=1)}var f=t.hoverinfo||t.trace.hoverinfo;return f&&"all"!==f&&(-1===(f=Array.isArray(f)?f:f.split("+")).indexOf("x")&&(t.xLabel=void 0),-1===f.indexOf("y")&&(t.yLabel=void 0),-1===f.indexOf("z")&&(t.zLabel=void 0),-1===f.indexOf("text")&&(t.text=void 0),-1===f.indexOf("name")&&(t.name=void 0)),t}function V(t,e,r){var i,a,o=r.container,s=r.fullLayout,l=s._size,c=r.event,u=!!e.hLinePoint,f=!!e.vLinePoint;if(o.selectAll(".spikeline").remove(),f||u){var m=p.combine(s.plot_bgcolor,s.paper_bgcolor);if(u){var g,y,v=e.hLinePoint;i=v&&v.xa,"cursor"===(a=v&&v.ya).spikesnap?(g=c.pointerX,y=c.pointerY):(g=i._offset+v.x,y=a._offset+v.y);var x,_,b=n.readability(v.color,m)<1.5?p.contrast(m):v.color,w=a.spikemode,T=a.spikethickness,A=a.spikecolor||b,k=d.getPxPosition(t,a);if(-1!==w.indexOf("toaxis")||-1!==w.indexOf("across")){if(-1!==w.indexOf("toaxis")&&(x=k,_=g),-1!==w.indexOf("across")){var M=a._counterDomainMin,S=a._counterDomainMax;"free"===a.anchor&&(M=Math.min(M,a.position),S=Math.max(S,a.position)),x=l.l+M*l.w,_=l.l+S*l.w}o.insert("line",":first-child").attr({x1:x,x2:_,y1:y,y2:y,"stroke-width":T,stroke:A,"stroke-dasharray":h.dashStyle(a.spikedash,T)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:x,x2:_,y1:y,y2:y,"stroke-width":T+2,stroke:m}).classed("spikeline",!0).classed("crisp",!0)}-1!==w.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:k+("right"!==a.side?T:-T),cy:y,r:T,fill:A}).classed("spikeline",!0)}if(f){var E,C,I=e.vLinePoint;i=I&&I.xa,a=I&&I.ya,"cursor"===i.spikesnap?(E=c.pointerX,C=c.pointerY):(E=i._offset+I.x,C=a._offset+I.y);var L,P,z=n.readability(I.color,m)<1.5?p.contrast(m):I.color,D=i.spikemode,O=i.spikethickness,R=i.spikecolor||z,F=d.getPxPosition(t,i);if(-1!==D.indexOf("toaxis")||-1!==D.indexOf("across")){if(-1!==D.indexOf("toaxis")&&(L=F,P=C),-1!==D.indexOf("across")){var B=i._counterDomainMin,j=i._counterDomainMax;"free"===i.anchor&&(B=Math.min(B,i.position),j=Math.max(j,i.position)),L=l.t+(1-j)*l.h,P=l.t+(1-B)*l.h}o.insert("line",":first-child").attr({x1:E,x2:E,y1:L,y2:P,"stroke-width":O,stroke:R,"stroke-dasharray":h.dashStyle(i.spikedash,O)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:E,x2:E,y1:L,y2:P,"stroke-width":O+2,stroke:m}).classed("spikeline",!0).classed("crisp",!0)}-1!==D.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:E,cy:F-("top"!==i.side?O:-O),r:O,fill:R}).classed("spikeline",!0)}}}function q(t,e){return!e||e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint}function G(t,e){return c.plainText(t||"",{len:e,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function W(t,e,r){var n=e[t+"a"],i=e[t+"Val"],a=e.cd[0];if("category"===n.type||"multicategory"===n.type)i=n._categoriesMap[i];else if("date"===n.type){var o=e.trace[t+"periodalignment"];if(o){var s=e.cd[e.index],l=s[t+"Start"];void 0===l&&(l=s[t]);var c=s[t+"End"];void 0===c&&(c=s[t]);var u=c-l;"end"===o?i+=u:"middle"===o&&(i+=u/2)}i=n.d2c(i)}return a&&a.t&&a.t.posLetter===n._id&&("group"===r.boxmode||"group"===r.violinmode)&&(i+=a.t.dPos),i}function Z(t){return t.offsetTop+t.clientTop}function Y(t){return t.offsetLeft+t.clientLeft}function X(t,e){var r=t._fullLayout,n=e.getBoundingClientRect(),a=n.left,o=n.top,s=a+n.width,l=o+n.height,c=i.apply3DTransform(r._invTransform)(a,o),u=i.apply3DTransform(r._invTransform)(s,l),h=c[0],p=c[1],f=u[0],d=u[1];return{x:h,y:p,width:f-h,height:d-p,top:Math.min(p,d),left:Math.min(h,f),right:Math.max(h,f),bottom:Math.max(p,d)}}}}),Sr=f({"src/components/fx/hoverlabel_defaults.js"(t,e){var r=le(),n=H(),i=$e().isUnifiedHover;e.exports=function(t,e,a,o){o=o||{};var s=e.legend;function l(t){o.font[t]||(o.font[t]=s?e.legend.font[t]:e.font[t])}e&&i(e.hovermode)&&(o.font||(o.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),s?(o.bgcolor||(o.bgcolor=n.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),a("hoverlabel.bgcolor",o.bgcolor),a("hoverlabel.bordercolor",o.bordercolor),a("hoverlabel.namelength",o.namelength),r.coerceFont(a,"hoverlabel.font",o.font),a("hoverlabel.align",o.align)}}}),Er=f({"src/components/fx/layout_global_defaults.js"(t,e){var r=le(),n=Sr(),i=j();e.exports=function(t,e){n(t,e,(function(n,a){return r.coerce(t,e,i,n,a)}))}}}),Cr=f({"src/components/fx/defaults.js"(t,e){var r=le(),n=N(),i=Sr();e.exports=function(t,e,a,o){var s=r.extendFlat({},o.hoverlabel);e.hovertemplate&&(s.namelength=-1),i(t,e,(function(i,a){return r.coerce(t,e,n,i,a)}),s)}}}),Ir=f({"src/components/fx/hovermode_defaults.js"(t,e){var r=le(),n=j();e.exports=function(t,e){function i(i,a){return void 0!==e[i]?e[i]:r.coerce(t,e,n,i,a)}return i("clickmode"),i("hoversubplots"),i("hovermode")}}}),Lr=f({"src/components/fx/layout_defaults.js"(t,e){var r=le(),n=j(),i=Ir(),a=Sr();e.exports=function(t,e){function o(i,a){return r.coerce(t,e,n,i,a)}i(t,e)&&(o("hoverdistance"),o("spikedistance")),"select"===o("dragmode")&&o("selectdirection");var s=e._has("mapbox"),l=e._has("map"),c=e._has("geo"),u=e._basePlotModules.length;"zoom"===e.dragmode&&((s||l||c)&&1===u||(s||l)&&c&&2===u)&&(e.dragmode="pan"),a(t,e,o),r.coerceFont(o,"hoverlabel.grouptitlefont",e.hoverlabel.font)}}}),Pr=f({"src/components/fx/calc.js"(t,e){var r=le(),n=qt();function i(t,e,n,i){i=i||r.identity,Array.isArray(t)&&(e[0][n]=i(t))}e.exports=function(t){var e=t.calcdata,a=t._fullLayout;function o(t){return function(e){return r.coerceHoverinfo({hoverinfo:e},{_module:t._module},a)}}for(var s=0;s"," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}}}),Br=f({"src/components/shapes/draw_newshape/constants.js"(t,e){e.exports={CIRCLE_SIDES:32,i000:0,i090:8,i180:16,i270:24,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),jr=f({"src/components/selections/helpers.js"(t,e){var r=le().strTranslate;function n(t,e){switch(t.type){case"log":return t.p2d(e);case"date":return t.p2r(e,0,t.calendar);default:return t.p2r(e)}}e.exports={p2r:n,r2p:function(t,e){switch(t.type){case"log":return t.d2p(e);case"date":return t.r2p(e,0,t.calendar);default:return t.r2p(e)}},axValue:function(t){var e="y"===t._id.charAt(0)?1:0;return function(r){return n(t,r[e])}},getTransform:function(t){return r(t.xaxis._offset,t.yaxis._offset)}}}}),Nr=f({"src/components/shapes/draw_newshape/helpers.js"(t){var e=Ke(),r=Br(),n=r.CIRCLE_SIDES,i=r.SQRT2,a=jr(),o=a.p2r,s=a.r2p,l=[0,3,4,5,6,1,2],c=[0,3,4,1,2];function u(t,e){return Math.abs(t-e)<=1e-6}function h(t,e){var r=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(r*r+n*n)}t.writePaths=function(t){var e=t.length;if(!e)return"M0,0Z";for(var r="",n=0;n0&&uf&&(t="X"),t}));return a>f&&(d=d.replace(/[\s,]*X.*/,""),r.log("Ignoring extra params in segment "+t)),u+d}))}(o,l,u);if("pixel"===o.xsizemode){var k=l(o.xanchor);h=k+o.x0+b,p=k+o.x1+w}else h=l(o.x0)+b,p=l(o.x1)+w;if("pixel"===o.ysizemode){var M=u(o.yanchor);f=M-o.y0+T,d=M-o.y1+A}else f=u(o.y0)+T,d=u(o.y1)+A;if("line"===m)return"M"+h+","+f+"L"+p+","+d;if("rect"===m)return"M"+h+","+f+"H"+p+"V"+d+"H"+h+"Z";var S=(h+p)/2,E=(f+d)/2,C=Math.abs(S-h),I=Math.abs(E-f),L="A"+C+","+I,P=S+C+","+E;return"M"+P+L+" 0 1,1 "+S+","+(E-I)+L+" 0 0,1 "+P+"Z"}}}),Gr=f({"src/components/shapes/display_labels.js"(t,e){var r=le(),n=ir(),i=Se(),a=Qe(),o=Nr().readPaths,s=Hr(),l=s.getPathString,c=Rt(),u=Me().FROM_TL;e.exports=function(t,e,h,p){if(p.selectAll(".shape-label").remove(),h.label.text||h.label.texttemplate){var f;if(h.label.texttemplate){var d={};if("path"!==h.type){var m=n.getFromId(t,h.xref),g=n.getFromId(t,h.yref);for(var y in c){var v=c[y](h,m,g);void 0!==v&&(d[y]=v)}}f=r.texttemplateStringForShapes(h.label.texttemplate,{},t._fullLayout._d3locale,d)}else f=h.label.text;var x,_,b,w,T={"data-index":e},A=h.label.font,k=p.append("g").attr(T).classed("shape-label",!0).append("text").attr({"data-notex":1}).classed("shape-label-text",!0).text(f);if(h.path){var M=l(t,h),S=o(M,t);x=1/0,b=1/0,_=-1/0,w=-1/0;for(var E=0;E=t?e-n:n-e,-180/Math.PI*Math.atan2(i,a)}(x,b,_,w):0),k.call((function(e){return e.call(a.font,A).attr({}),i.convertToTspans(e,t),e}));var G=function(t,e,r,n,i,a,o){var s,l,c,h,p=i.label.textposition,f=i.label.textangle,d=i.label.padding,m=i.type,g=Math.PI/180*a,y=Math.sin(g),v=Math.cos(g),x=i.label.xanchor,_=i.label.yanchor;if("line"===m){"start"===p?(s=t,l=e):"end"===p?(s=r,l=n):(s=(t+r)/2,l=(e+n)/2),"auto"===x&&(x="start"===p?"auto"===f?r>t?"left":rt?"right":rt?"right":rt?"left":r1&&(2!==t.length||"Z"!==t[1][0])&&(0===I&&(t[0][0]="M"),e[C]=t,k(),M())}}()}}function V(t,r){(function(t,r){if(e.length)for(var n=0;nb?(M=v,I="y0",S=b,L="y1"):(M=b,I="y1",S=v,L="y0"),rt(r),at(c,o),function(t,e,r){var n=e.xref,i=e.yref,o=a.getFromId(r,n),s=a.getFromId(r,i),l="";"paper"!==n&&!o.autorange&&(l+=n),"paper"!==i&&!s.autorange&&(l+=i),h.setClipUrl(t,l?"clip"+r._fullLayout._uid+l:null,r)}(e,o,t),et.moveFn="move"===O?nt:it,et.altKey=r.altKey)},doneFn:function(){_(t)||(d(e),ot(c),T(e,t,o),n.call("_guiRelayout",t,u.getUpdateObj()))},clickFn:function(){_(t)||ot(c)}};function rt(r){if(_(t))O=null;else if(B)O="path"===r.target.tagName?"move":"start-point"===r.target.attributes["data-line-point"].value?"resize-over-start-point":"resize-over-end-point";else{var n=et.element.getBoundingClientRect(),i=n.right-n.left,a=n.bottom-n.top,o=r.clientX-n.left,s=r.clientY-n.top,l=!j&&i>10&&a>10&&!r.shiftKey?f.getCursor(o/i,1-s/a):"move";d(e,l),O=l.split("-")[0]}}function nt(r,n){if("path"===o.type){var i=function(t){return t},a=i,u=i;R?N("xanchor",o.xanchor=J(w+r)):(a=function(t){return J($(t)+r)},V&&"date"===V.type&&(a=g.encodeDate(a))),F?N("yanchor",o.yanchor=Q(k+n)):(u=function(t){return Q(K(t)+n)},H&&"date"===H.type&&(u=g.encodeDate(u))),N("path",o.path=A(D,a,u))}else R?N("xanchor",o.xanchor=J(w+r)):(N("x0",o.x0=J(p+r)),N("x1",o.x1=J(x+r))),F?N("yanchor",o.yanchor=Q(k+n)):(N("y0",o.y0=Q(v+n)),N("y1",o.y1=Q(b+n)));e.attr("d",y(t,o)),at(c,o),l(t,s,o,U)}function it(r,n){if(j){var i=function(t){return t},a=i,u=i;R?N("xanchor",o.xanchor=J(w+r)):(a=function(t){return J($(t)+r)},V&&"date"===V.type&&(a=g.encodeDate(a))),F?N("yanchor",o.yanchor=Q(k+n)):(u=function(t){return Q(K(t)+n)},H&&"date"===H.type&&(u=g.encodeDate(u))),N("path",o.path=A(D,a,u))}else if(B){if("resize-over-start-point"===O){var h=p+r,f=F?v-n:v+n;N("x0",o.x0=R?h:J(h)),N("y0",o.y0=F?f:Q(f))}else if("resize-over-end-point"===O){var d=x+r,m=F?b-n:b+n;N("x1",o.x1=R?d:J(d)),N("y1",o.y1=F?m:Q(m))}}else{var _=function(t){return-1!==O.indexOf(t)},T=_("n"),q=_("s"),G=_("w"),W=_("e"),Z=T?M+n:M,Y=q?S+n:S,X=G?E+r:E,tt=W?C+r:C;F&&(T&&(Z=M-n),q&&(Y=S-n)),(!F&&Y-Z>10||F&&Z-Y>10)&&(N(I,o[I]=F?Z:Q(Z)),N(L,o[L]=F?Y:Q(Y))),tt-X>10&&(N(P,o[P]=R?X:J(X)),N(z,o[z]=R?tt:J(tt)))}e.attr("d",y(t,o)),at(c,o),l(t,s,o,U)}function at(t,e){(R||F)&&function(){var r="path"!==e.type,n=t.selectAll(".visual-cue").data([0]);n.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":1}).classed("visual-cue",!0);var a=$(R?e.xanchor:i.midRange(r?[e.x0,e.x1]:g.extractPathCoords(e.path,m.paramIsX))),o=K(F?e.yanchor:i.midRange(r?[e.y0,e.y1]:g.extractPathCoords(e.path,m.paramIsY)));if(a=g.roundPositionForSharpStrokeRendering(a,1),o=g.roundPositionForSharpStrokeRendering(o,1),R&&F){var s="M"+(a-1-1)+","+(o-1-1)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";n.attr("d",s)}else if(R){var l="M"+(a-1-1)+","+(o-9-1)+"v18 h2 v-18 Z";n.attr("d",l)}else{var c="M"+(a-9-1)+","+(o-1-1)+"h18 v2 h-18 Z";n.attr("d",c)}}()}function ot(t){t.selectAll(".visual-cue").remove()}f.init(et),tt.node().onmousemove=rt}(t,F,x,e,c,O):!0===x.editable&&F.style("pointer-events",z||u.opacity(C)*E<=.5?"stroke":"all");F.node().addEventListener("click",(function(){return function(t,e){if(b(t)){var r=+e.node().getAttribute("data-index");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void k(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=k,v(t)}}}(t,F)}))}x._input&&!0===x.visible&&("above"===x.layer?M(t._fullLayout._shapeUpperLayer):"paper"===x.xref||"paper"===x.yref?M(t._fullLayout._shapeLowerLayer):"between"===x.layer?M(w.shapelayerBetween):w._hadPlotinfo?M((w.mainplotinfo||w).shapelayer):M(t._fullLayout._shapeLowerLayer))}function T(t,e,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");h.setClipUrl(t,n?"clip"+e._fullLayout._uid+n:null,e)}function A(t,e,r){return t.replace(m.segmentRE,(function(t){var n=0,i=t.charAt(0),a=m.paramIsX[i],o=m.paramIsY[i],s=m.numParams[i];return i+t.substr(1).replace(m.paramRE,(function(t){return n>=s||(a[n]?t=e(t):o[n]&&(t=r(t)),n++),t}))}))}function k(t){b(t)&&t._fullLayout._activeShapeIndex>=0&&(c(t),delete t._fullLayout._activeShapeIndex,v(t))}e.exports={draw:v,drawOne:w,eraseActiveShape:function(t){if(b(t)){c(t);var e=t._fullLayout._activeShapeIndex,r=(t.layout||{}).shapes||[];if(e1?(P=["toggleHover"],z=["resetViews"]):y?(L=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],z=["resetGeo"]):g?(P=["hoverClosest3d"],z=["resetCameraDefault3d","resetCameraLastSave3d"]):b?(L=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],z=["resetViewMapbox"]):w?(L=["zoomInMap","zoomOutMap"],P=["toggleHover"],z=["resetViewMap"]):v?P=["hoverClosestPie"]:k?(P=["hoverClosestCartesian","hoverCompareCartesian"],z=["resetViewSankey"]):P=["toggleHover"],m&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(function(t){for(var e=0;en?i.substr(n):a.substr(r))+o:i+a+t*e:o}function d(t,e){for(var r=e._size,n=r.h/r.w,i={},a=Object.keys(t),o=0;os*x)||T)for(i=0;iz&&FL&&(L=F);p/=(L-I)/(2*P),I=c.l2r(I),L=c.l2r(L),c.range=c._input.range=S=t[1]||i[1]<=t[0])&&a[0]e[0])return!0}return!1}function b(r){var a,o,c,f,d,m,g=r._fullLayout,y=g._size,x=y.p,b=h.list(r,"",!0);if(g._paperdiv.style({width:r._context.responsive&&g.autosize&&!r._context._hasZeroWidth&&!r.layout.width?"100%":g.width+"px",height:r._context.responsive&&g.autosize&&!r._context._hasZeroHeight&&!r.layout.height?"100%":g.height+"px"}).selectAll(".main-svg").call(l.setSize,g.width,g.height),r._context.setBackground(r,g.paper_bgcolor),t.drawMainTitle(r),u.manage(r),!g._has("cartesian"))return n.previousPromises(r);function T(t,e,r){var n=t._lw/2;return"x"===t._id.charAt(0)?e?"top"===r?e._offset-x-n:e._offset+e._length+x+n:y.t+y.h*(1-(t.position||0))+n%1:e?"right"===r?e._offset+e._length+x+n:e._offset-x-n:y.l+y.w*(t.position||0)+n%1}for(a=0;a.5?"t":"b",o=t._fullLayout.margin[a],s=0;return"paper"===e.yref?s=r+e.pad.t+e.pad.b:"container"===e.yref&&(s=function(t,e,r,n,i){var a=0;return"middle"===r&&(a+=i/2),"t"===t?("top"===r&&(a+=i),a+=n-e*n):("bottom"===r&&(a+=i),a+=e*n),a}(a,n,i,t._fullLayout.height,r)+e.pad.t+e.pad.b),s>o?s:0}(t,r,m);if(g>0){(function(t,e,r,a){var o="title.automargin",s=t._fullLayout.title,l=s.y>.5?"t":"b",c={x:s.x,y:s.y,t:0,b:0},u={};"paper"===s.yref&&function(t,e,r,n,a){var o="paper"===e.yref?t._fullLayout._size.h:t._fullLayout.height,s=i.isTopAnchor(e)?n:n-a,l="b"===r?o-s:s;return!(i.isTopAnchor(e)&&"t"===r||i.isBottomAnchor(e)&&"b"===r)&&l=0;A--){var k=i.append("path").attr(g).style("opacity",A?.1:y).call(a.stroke,x).call(a.fill,v).call(o.dashLine,A?"solid":b,A?4+_:_);if(f(k,t,p),w){var M=s(t.layout,"selections",p);k.style({cursor:"move"});var S={element:k.node(),plotinfo:m,gd:t,editHelpers:M,isActiveSelection:!0},E=r(l,t);n(E,k,S)}else k.style("pointer-events",A?"all":"none");T[A]=k}var C=T[0];T[1].node().addEventListener("click",(function(){return function(t,e){if(h(t)){var r=+e.node().getAttribute("data-index");if(r>=0){if(r===t._fullLayout._activeSelectionIndex)return void d(t);t._fullLayout._activeSelectionIndex=r,t._fullLayout._deactivateSelection=d,u(t)}}}(t,C)}))}(t._fullLayout._selectionLayer)}function f(t,e,r){var n=r.xref+r.yref;o.setClipUrl(t,"clip"+e._fullLayout._uid+n,e)}function d(t){h(t)&&t._fullLayout._activeSelectionIndex>=0&&(i(t),delete t._fullLayout._activeSelectionIndex,u(t))}e.exports={draw:u,drawOne:p,activateLastSelection:function(t){if(h(t)){var e=t._fullLayout.selections.length-1;t._fullLayout._activeSelectionIndex=e,t._fullLayout._deactivateSelection=d,u(t)}}}}}),on=f({"node_modules/polybooljs/lib/build-log.js"(t,e){e.exports=function(){var t,e=0,r=!1;function n(e,r){return t.list.push({type:e,data:r?JSON.parse(JSON.stringify(r)):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return n("check",{seg1:t,seg2:e})},segmentChop:function(t,e){return n("div_seg",{seg:t,pt:e}),n("chop",{seg:t,pt:e})},statusRemove:function(t){return n("pop_seg",{seg:t})},segmentUpdate:function(t){return n("seg_update",{seg:t})},segmentNew:function(t,e){return n("new_seg",{seg:t,primary:e})},segmentRemove:function(t){return n("rem_seg",{seg:t})},tempStatus:function(t,e,r){return n("temp_status",{seg:t,above:e,below:r})},rewind:function(t){return n("rewind",{seg:t})},status:function(t,e,r){return n("status",{seg:t,above:e,below:r})},vert:function(e){return e===r?t:(r=e,n("vert",{x:e}))},log:function(t){return"string"!=typeof t&&(t=JSON.stringify(t,!1," ")),n("log",{txt:t})},reset:function(){return n("reset")},selected:function(t){return n("selected",{segs:t})},chainStart:function(t){return n("chain_start",{seg:t})},chainRemoveHead:function(t,e){return n("chain_rem_head",{index:t,pt:e})},chainRemoveTail:function(t,e){return n("chain_rem_tail",{index:t,pt:e})},chainNew:function(t,e){return n("chain_new",{pt1:t,pt2:e})},chainMatch:function(t){return n("chain_match",{index:t})},chainClose:function(t){return n("chain_close",{index:t})},chainAddHead:function(t,e){return n("chain_add_head",{index:t,pt:e})},chainAddTail:function(t,e){return n("chain_add_tail",{index:t,pt:e})},chainConnect:function(t,e){return n("chain_con",{index1:t,index2:e})},chainReverse:function(t){return n("chain_rev",{index:t})},chainJoin:function(t,e){return n("chain_join",{index1:t,index2:e})},done:function(){return n("done")}}}}}),sn=f({"node_modules/polybooljs/lib/epsilon.js"(t,e){e.exports=function(t){"number"!=typeof t&&(t=1e-10);var e={epsilon:function(e){return"number"==typeof e&&(t=e),t},pointAboveOrOnLine:function(e,r,n){var i=r[0],a=r[1],o=n[0],s=n[1],l=e[0];return(o-i)*(e[1]-a)-(s-a)*(l-i)>=-t},pointBetween:function(e,r,n){var i=e[1]-r[1],a=n[0]-r[0],o=e[0]-r[0],s=n[1]-r[1],l=o*a+i*s;return!(l-t)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])t!=o-i>t&&(a-c)*(i-u)/(o-u)+c-n>t&&(s=!s),a=c,o=u}return s}};return e}}}),ln=f({"node_modules/polybooljs/lib/linked-list.js"(t,e){e.exports={create:function(){var t={root:{root:!0,next:null},exists:function(e){return!(null===e||e===t.root)},isEmpty:function(){return null===t.root.next},getHead:function(){return t.root.next},insertBefore:function(e,r){for(var n=t.root,i=t.root.next;null!==i;){if(r(i))return e.prev=i.prev,e.next=i,i.prev.next=e,void(i.prev=e);n=i,i=i.next}n.next=e,e.prev=n,e.next=null},findTransition:function(e){for(var r=t.root,n=t.root.next;null!==n&&!e(n);)r=n,n=n.next;return{before:r===t.root?null:r,after:n,insert:function(t){return t.prev=r,t.next=n,r.next=t,null!==n&&(n.prev=t),t}}}};return t},node:function(t){return t.prev=null,t.next=null,t.remove=function(){t.prev.next=t.next,t.next&&(t.next.prev=t.prev),t.prev=null,t.next=null},t}}}}),cn=f({"node_modules/polybooljs/lib/intersecter.js"(t,e){var r=ln();e.exports=function(t,e,n){function i(t,e){return{id:n?n.segmentId():-1,start:t,end:e,myFill:{above:null,below:null},otherFill:null}}function a(t,e,r){return{id:n?n.segmentId():-1,start:t,end:e,myFill:{above:r.myFill.above,below:r.myFill.below},otherFill:null}}var o=r.create();function s(t,r){o.insertBefore(t,(function(n){var i=function(t,r,n,i,a,o){var s=e.pointsCompare(r,a);return 0!==s?s:e.pointsSame(n,o)?0:t!==i?t?1:-1:e.pointAboveOrOnLine(n,i?a:o,i?o:a)?1:-1}(t.isStart,t.pt,r,n.isStart,n.pt,n.other.pt);return i<0}))}function l(t,e){var n=function(t,e){var n=r.node({isStart:!0,pt:t.start,seg:t,primary:e,other:null,status:null});return s(n,t.end),n}(t,e);return function(t,e,n){var i=r.node({isStart:!1,pt:e.end,seg:e,primary:n,other:t,status:null});t.other=i,s(i,t.pt)}(n,t,e),n}function c(t,e){var r=a(e,t.seg.end,t.seg);return function(t,e){n&&n.segmentChop(t.seg,e),t.other.remove(),t.seg.end=e,t.other.pt=e,s(t.other,t.pt)}(t,e),l(r,t.primary)}function u(i,a){var s=r.create();function l(t){return s.findTransition((function(r){var n=function(t,r){var n=t.seg.start,i=t.seg.end,a=r.seg.start,o=r.seg.end;return e.pointsCollinear(n,a,o)?e.pointsCollinear(i,a,o)||e.pointAboveOrOnLine(i,a,o)?1:-1:e.pointAboveOrOnLine(n,a,o)?1:-1}(t,r.ev);return n>0}))}function u(t,r){var i=t.seg,a=r.seg,o=i.start,s=i.end,l=a.start,u=a.end;n&&n.checkIntersection(i,a);var h=e.linesIntersect(o,s,l,u);if(!1===h){if(!e.pointsCollinear(o,s,l)||e.pointsSame(o,u)||e.pointsSame(s,l))return!1;var p=e.pointsSame(o,l),f=e.pointsSame(s,u);if(p&&f)return r;var d=!p&&e.pointBetween(o,l,u),m=!f&&e.pointBetween(s,l,u);if(p)return m?c(r,s):c(t,u),r;d&&(f||(m?c(r,s):c(t,u)),c(r,o))}else 0===h.alongA&&(-1===h.alongB?c(t,l):0===h.alongB?c(t,h.pt):1===h.alongB&&c(t,u)),0===h.alongB&&(-1===h.alongA?c(r,o):0===h.alongA?c(r,h.pt):1===h.alongA&&c(r,s));return!1}for(var h=[];!o.isEmpty();){var p=o.getHead();if(n&&n.vert(p.pt[0]),p.isStart){let e=function(){if(d){var t=u(p,d);if(t)return t}return!!m&&u(p,m)};n&&n.segmentNew(p.seg,p.primary);var f=l(p),d=f.before?f.before.ev:null,m=f.after?f.after.ev:null;n&&n.tempStatus(p.seg,!!d&&d.seg,!!m&&m.seg);var g,y=e();if(y&&(t?(g=null===p.seg.myFill.below||p.seg.myFill.above!==p.seg.myFill.below)&&(y.seg.myFill.above=!y.seg.myFill.above):y.seg.otherFill=p.seg.myFill,n&&n.segmentUpdate(y.seg),p.other.remove(),p.remove()),o.getHead()!==p){n&&n.rewind(p.seg);continue}if(t)g=null===p.seg.myFill.below||p.seg.myFill.above!==p.seg.myFill.below,p.seg.myFill.below=m?m.seg.myFill.above:i,p.seg.myFill.above=g?!p.seg.myFill.below:p.seg.myFill.below;else if(null===p.seg.otherFill){var v;v=m?p.primary===m.primary?m.seg.otherFill.above:m.seg.myFill.above:p.primary?a:i,p.seg.otherFill={above:v,below:v}}n&&n.status(p.seg,!!d&&d.seg,!!m&&m.seg),p.other.status=f.insert(r.node({ev:p}))}else{var x=p.status;if(null===x)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(s.exists(x.prev)&&s.exists(x.next)&&u(x.prev.ev,x.next.ev),n&&n.statusRemove(x.ev.seg),x.remove(),!p.primary){var _=p.seg.myFill;p.seg.myFill=p.seg.otherFill,p.seg.otherFill=_}h.push(p.seg)}o.getHead().remove()}return n&&n.done(),h}return t?{addRegion:function(t){for(var r,n=t[t.length-1],a=0;aa!=f>a&&i<(p-u)*(a-h)/(f-h)+u&&(o=!o)}return o}}}),mn=f({"src/lib/polygon.js"(t,e){var r=Ct().dot,n=k().BADNUM,i=e.exports={};i.tester=function(t){var e,r=t.slice(),i=r[0][0],a=i,o=r[0][1],s=o;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),e=1;ea||c===n||cs||e&&l(t))}:function(t,e){var l=t[0],c=t[1];if(l===n||la||c===n||cs)return!1;var u,h,p,f,d,m=r.length,g=r[0][0],y=r[0][1],v=0;for(u=1;uMath.max(h,g)||c>Math.max(p,y)))if(cu||Math.abs(r(o,p))>i)return!0;return!1},i.filter=function(t,e){var r=[t[0]],n=0,a=0;function o(o){t.push(o);var s=r.length,l=n;r.splice(a+1);for(var c=l+1;c1&&o(t.pop()),{addPt:o,raw:t,filtered:r}}}}),gn=f({"src/components/selections/constants.js"(t,e){e.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),yn=f({"src/components/selections/select.js"(t,e){var r=fn(),n=dn(),i=qt(),a=Qe().dashStyle,o=H(),s=Dr(),l=$e().makeEventData,c=Or(),u=c.freeMode,h=c.rectMode,p=c.drawMode,f=c.openMode,d=c.selectMode,m=Hr(),g=qr(),y=Wr(),v=_e().clearOutline,x=Nr(),_=x.handleEllipse,b=x.readPaths,w=Ur().newShapes,T=Vr(),A=an().activateLastSelection,k=le(),M=k.sorterAsc,S=mn(),E=Jt(),C=xe().getFromId,I=Rr(),L=nn().redrawReglTraces,P=gn(),z=P.MINSELECT,D=S.filter,O=S.tester,R=jr(),F=R.p2r,B=R.axValue,j=R.getTransform;function N(t){return void 0!==t.subplot}function U(t,e,r,n,i,a,o){var s,l,c,u,h,p,d,m,g,v=e._hoverdata,x=e._fullLayout.clickmode.indexOf("event")>-1,_=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(v)){W(t,e,a);var b=function(t,e){var r,n,i=t[0],a=-1,o=[];for(n=0;n0?function(t,e){var r,n,i,a=[];for(i=0;i0&&a.push(r);if(1===a.length&&a[0]===e.searchInfo&&(n=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(i=0;i1||(n+=e.selectedpoints.length)>1))return!1;return 1===n}(s)&&(p=K(b))){for(o&&o.remove(),g=0;g=0})(a)&&a._fullLayout._deactivateShape(a),function(t){return t._fullLayout._activeSelectionIndex>=0}(a)&&a._fullLayout._deactivateSelection(a);var o=a._fullLayout._zoomlayer,s=p(r),l=d(r);if(s||l){var c,u,h=o.selectAll(".select-outline-"+n.id);h&&a._fullLayout._outlining&&(s&&(c=w(h,t)),c&&i.call("_guiRelayout",a,{shapes:c}),l&&!N(t)&&(u=T(h,t)),u&&(a._fullLayout._noEmitSelectedAtStart=!0,i.call("_guiRelayout",a,{selections:u}).then((function(){e&&A(a)}))),a._fullLayout._outlining=!1)}n.selection={},n.selection.selectionDefs=t.selectionDefs=[],n.selection.mergedPolygons=t.mergedPolygons=[]}function Y(t){return t._id}function X(t,e,r,n){if(!t.calcdata)return[];var i,a,o,s=[],l=e.map(Y),c=r.map(Y);for(o=0;o0?n[0]:r;return!!e.selectedpoints&&e.selectedpoints.indexOf(i)>-1}function J(t,e,r){var n,a;for(n=0;n-1&&e;if(!a&&e){var et=ot(t,!0);if(et.length){var nt=et[0].xref,ft=et[0].yref;if(nt&&ft){var dt=ct(et);ut([C(t,nt,"x"),C(t,ft,"y")])(Q,dt)}}t._fullLayout._noEmitSelectedAtStart?t._fullLayout._noEmitSelectedAtStart=!1:tt&&ht(t,Q),f._reselect=!1}if(!a&&f._deselect){var mt=f._deselect;(function(t,e,r){for(var n=0;n=0)A._fullLayout._deactivateShape(A);else if(!x){var r=M.clickmode;E.done(Mt).then((function(){if(E.clear(Mt),2===t){for(_t.remove(),K=0;K-1&&U(e,A,n.xaxes,n.yaxes,n.subplot,n,_t),"event"===r&&ht(A,void 0);s.click(A,e,L.id)})).catch(k.error)}},n.doneFn=function(){At.remove(),E.done(Mt).then((function(){E.clear(Mt),!S&&$&&n.selectionDefs&&($.subtract=xt,n.selectionDefs.push($),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,Y)),(S||x)&&Z(n,S),n.doneFnCompleted&&n.doneFnCompleted(St),b&&ht(A,at)})).catch(k.error)}},clearOutline:v,clearSelectionsCache:Z,selectOnClick:U}}}),vn=f({"src/components/annotations/arrow_paths.js"(t,e){e.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]}}),xn=f({"src/constants/axis_placeable_objects.js"(t,e){e.exports={axisRefDescription:function(t,e,r){return["If set to a",t,"axis id (e.g. *"+t+"* or","*"+t+"2*), the `"+t+"` position refers to a",t,"coordinate. If set to *paper*, the `"+t+"`","position refers to the distance from the",e,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",e,"("+r+"). If set to a",t,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",e,"of the domain of that axis: e.g.,","*"+t+"2 domain* refers to the domain of the second",t," axis and a",t,"position of 0.5 refers to the","point between the",e,"and the",r,"of the domain of the","second",t,"axis."].join(" ")}}}}),_n=f({"src/components/annotations/attributes.js"(t,e){var r=vn(),n=F(),i=ve(),a=ye().templatedArray;xn(),e.exports=a("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:n({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:r.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:r.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",i.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",i.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",i.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",i.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:n({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})}}),bn=f({"src/traces/scatter/constants.js"(t,e){e.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}}}),wn=f({"src/traces/scatter/fillcolor_attribute.js"(t,e){e.exports=function(t){return{valType:"color",editType:"style",anim:!0}}}}),Tn=f({"src/traces/scatter/attributes.js"(t,e){var r=Ce().axisHoverFormat,n=Ot().texttemplateAttrs,i=Ot().hovertemplateAttrs,a=Pe(),o=F(),s=zt().dash,l=zt().pattern,c=Qe(),u=bn(),h=R().extendFlat,p=wn();e.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:{valType:"any",dflt:0,editType:"calc"},yperiod:{valType:"any",dflt:0,editType:"calc"},xperiod0:{valType:"any",editType:"calc"},yperiod0:{valType:"any",editType:"calc"},xperiodalignment:{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"},yperiodalignment:{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"},xhoverformat:r("x"),yhoverformat:r("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:n({},{}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:i({},{keys:u.eventDataKeys}),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:h({},s,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:p(!0),fillgradient:h({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:l,marker:h({symbol:{valType:"enumerated",values:c.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:h({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},a("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},a("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:o({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}}}),An=f({"src/components/selections/attributes.js"(t,e){var r=_n(),n=Tn().line,i=zt().dash,a=R().extendFlat,o=Pt().overrideAll,s=ye().templatedArray;xn(),e.exports=o(s("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:a({},r.xref,{}),yref:a({},r.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:n.color,width:a({},n.width,{min:1,dflt:1}),dash:a({},i,{dflt:"dot"})}}),"arraydraw","from-root")}}),kn=f({"src/components/selections/defaults.js"(t,e){var r=le(),n=ir(),i=je(),a=An(),o=Hr();function s(t,e,i){function s(n,i){return r.coerce(t,e,a,n,i)}var l=s("path"),c="path"!==s("type",l?"path":"rect");c&&delete e.path,s("opacity"),s("line.color"),s("line.width"),s("line.dash");for(var u=["x","y"],h=0;h<2;h++){var p,f,d,m=u[h],g={_fullLayout:i},y=n.coerceRef(t,e,g,m);if((p=n.getFromId(g,y))._selectionIndices.push(e._index),d=o.rangeToShapePosition(p),f=o.shapePositionToRange(p),c){var v=m+"0",x=m+"1",_=t[v],b=t[x];t[v]=f(t[v],!0),t[x]=f(t[x],!0),n.coercePosition(e,g,s,y,v),n.coercePosition(e,g,s,y,x);var w=e[v],T=e[x];void 0!==w&&void 0!==T&&(e[v]=d(w),e[x]=d(T),t[v]=_,t[x]=b)}}c&&r.noneOrAll(t,e,["x0","x1","y0","y1"])}e.exports=function(t,e){i(t,e,{name:"selections",handleItemDefaults:s});for(var r=e.selections,n=0;n=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function N(t,e,r,n,i){return t.append("path").attr("class","zoombox").style({fill:e>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",l(r,n)).attr("d",i+"Z")}function U(t,e,r){return t.append("path").attr("class","zoombox-corners").style({fill:u.background,stroke:u.defaultLine,"stroke-width":1,opacity:0}).attr("transform",l(e,r)).attr("d","M0,0Z")}function V(t,e,r,n,i,a){t.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),q(t,e,i,a)}function q(t,e,r,n){r||(t.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),e.transition().style("opacity",1).duration(200))}function G(t){r.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function W(t){P&&t.data&&t._context.showTips&&(n.notifier(n._(t,"Double-click to zoom back out"),"long"),P=!1)}function Z(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,L)/2);return"M"+(t.l-3.5)+","+(t.t-.5+e)+"h3v"+-e+"h"+e+"v-3h-"+(e+3)+"ZM"+(t.r+3.5)+","+(t.t-.5+e)+"h-3v"+-e+"h"+-e+"v-3h"+(e+3)+"ZM"+(t.r+3.5)+","+(t.b+.5-e)+"h-3v"+e+"h"+-e+"v3h"+(e+3)+"ZM"+(t.l-3.5)+","+(t.b+.5-e)+"h3v"+e+"h"+e+"v3h-"+(e+3)+"Z"}function Y(t,e,r,i,a){for(var o,s,l,c,u=!1,h={},p={},f=(a||{}).xaHash,d=(a||{}).yaHash,m=0;m=0)o._fullLayout._deactivateShape(o);else{var l=o._fullLayout.clickmode;if(G(o),2===n&&!yt&&function(){if(!t._transitioningWithDuration){var e=t._context.doubleClick,r=[];it&&(r=r.concat(H)),at&&(r=r.concat(K)),nt.xaxes&&(r=r.concat(nt.xaxes)),nt.yaxes&&(r=r.concat(nt.yaxes));var n,i,a={};if("reset+autosize"===e)for(e="autosize",i=0;i-1&&S(a,o,H,K,e.id,Lt),l.indexOf("event")>-1&&p.click(o,a,e.id);else if(1===n&&yt){var u=g?z:P,h="s"===g||"w"===x?0:1,f=u._name+".range["+h+"]",d=function(t,e){var r,n=t.range[e],a=Math.abs(n-t.range[1-e]);return"date"===t.type?n:"log"===t.type?(r=Math.ceil(Math.max(0,-Math.log(a)/Math.LN10))+3,i("."+r+"g")(Math.pow(10,n))):(r=Math.floor(Math.log(Math.abs(n))/Math.LN10)-Math.floor(Math.log(a)/Math.LN10)+4,i("."+String(r)+"g")(n))}(u,h),m="left",y="middle";if(u.fixedrange)return;g?(y="n"===g?"top":"bottom","right"===u.side&&(m="right")):"e"===x&&(m="right"),o._context.showAxisRangeEntryBoxes&&r.select(_t).call(c.makeEditable,{gd:o,immediate:!0,background:o._fullLayout.paper_bgcolor,text:String(d),fill:u.tickfont?u.tickfont.color:"#444",horizontalAlign:m,verticalAlign:y}).on("edit",(function(t){var e=u.d2r(t);void 0!==e&&s.call("_guiRelayout",o,f,e)}))}}}function Dt(e,r){if(t._transitioningWithDuration)return!1;var n=Math.max(0,Math.min(tt,ft*e+bt)),i=Math.max(0,Math.min(et,dt*r+wt)),a=Math.abs(n-bt),o=Math.abs(i-wt);function s(){St="",Tt.r=Tt.l,Tt.t=Tt.b,Ct.attr("d","M0,0Z")}if(Tt.l=Math.min(bt,n),Tt.r=Math.max(bt,n),Tt.t=Math.min(wt,i),Tt.b=Math.max(wt,i),rt.isSubplotConstrained)a>L||o>L?(St="xy",a/tt>o/et?(o=a*et/tt,wt>i?Tt.t=wt-o:Tt.b=wt+o):(a=o*tt/et,bt>n?Tt.l=bt-a:Tt.r=bt+a),Ct.attr("d",Z(Tt))):s();else if(nt.isSubplotConstrained)if(a>L||o>L){St="xy";var l=Math.min(Tt.l/tt,(et-Tt.b)/et),c=Math.max(Tt.r/tt,(et-Tt.t)/et);Tt.l=l*tt,Tt.r=c*tt,Tt.b=(1-l)*et,Tt.t=(1-c)*et,Ct.attr("d",Z(Tt))}else s();else!at||o0){var u;if(nt.isSubplotConstrained||!it&&1===at.length){for(u=0;u1&&(void 0!==a.maxallowed&&st===(a.range[0]1&&(void 0!==o.maxallowed&<===(o.range[0]1&&n.warn("Full array edits are incompatible with other edits",h);var v=l[""][""];if(s(v))e.set(null);else{if(!Array.isArray(v))return n.warn("Unrecognized full array edit value",h,v),!0;e.set(v)}return!m&&(p(g,y),f(t),!0)}var x,_,b,w,T,A,k,M,S=Object.keys(l).map(Number).sort(i),E=e.get(),C=E||[],I=u(y,h).get(),L=[],P=-1,z=C.length;for(x=0;xC.length-(k?0:1))n.warn("index out of range",h,b);else if(void 0!==A)T.length>1&&n.warn("Insertion & removal are incompatible with edits to the same index.",h,b),s(A)?L.push(b):k?("add"===A&&(A={}),C.splice(b,0,A),I&&I.splice(b,0,{})):n.warn("Unrecognized full object edit value",h,b,A),-1===P&&(P=b);else for(_=0;_=0;x--)C.splice(L[x],1),I&&I.splice(L[x],1);if(C.length?E||e.set(C):e.set(null),m)return!1;if(p(g,y),d!==r){var D;if(-1===P)D=S;else{for(z=Math.max(C.length,z),D=[],x=0;x=P);x++)D.push(b);for(x=P;x0&&n.log("Clearing previous rejected promises from queue."),t._promises=[]},t.cleanLayout=function(e){var r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(i.subplotsRegistry.cartesian||{}).attrRegex,l=((i.subplotsRegistry.polar||{}).attrRegex,(i.subplotsRegistry.ternary||{}).attrRegex,(i.subplotsRegistry.gl3d||{}).attrRegex,Object.keys(e));for(r=0;r3?(x.x=1.02,x.xanchor="left"):x.x<-2&&(x.x=-.02,x.xanchor="right"),x.y>3?(x.y=1.02,x.yanchor="bottom"):x.y<-2&&(x.y=-.02,x.yanchor="top")),"rotate"===e.dragmode&&(e.dragmode="orbit"),o.clean(e),e.template&&e.template.layout&&t.cleanLayout(e.template.layout),e},t.cleanData=function(e){for(var a=0;a0)return t.substr(0,e)}t.hasParent=function(t,e){for(var r=g(e);r;){if(r in t)return!0;r=g(r)}return!1};var y=["x","y","z"];t.clearAxisTypes=function(t,e,r){for(var i=0;i=t.data.length||i<-t.data.length)throw new Error(r+" must be valid indices for gd.data.");if(e.indexOf(i,n+1)>-1||i>=0&&e.indexOf(-t.data.length+i)>-1||i<0&&e.indexOf(t.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function D(t,e,r){if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if(typeof e>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(e)||(e=[e]),z(t,e,"currentIndices"),typeof r<"u"&&!Array.isArray(r)&&(r=[r]),typeof r<"u"&&z(t,r,"newIndices"),typeof r<"u"&&e.length!==r.length)throw new Error("current and new indices must be of equal length.")}function O(t,e,n,o,s){!function(t,e,r,n){var a=i.isPlainObject(n);if(!Array.isArray(t.data))throw new Error("gd.data must be an array");if(!i.isPlainObject(e))throw new Error("update must be a key:value object");if(typeof r>"u")throw new Error("indices must be an integer or array of integers");for(var o in z(t,r,"indices"),e){if(!Array.isArray(e[o])||e[o].length!==r.length)throw new Error("attribute "+o+" must be an array of length equal to indices array length");if(a&&(!(o in n)||!Array.isArray(n[o])||n[o].length!==e[o].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}(t,e,n,o);for(var l=function(t,e,n,o){var s,l,c,u,h,p=i.isPlainObject(o),f=[];for(var d in Array.isArray(n)||(n=[n]),n=P(n,t.data.length-1),e)for(var m=0;m0&&"string"!=typeof z.parts[O];)O--;var R=z.parts[O],F=z.parts[O-1]+"."+R,N=z.parts.slice(0,O).join("."),U=a(t.layout,N).get(),V=a(u,N).get(),q=z.get();if(void 0!==D){A[P]=D,S[P]="reverse"===R?D:B(q);var H=c.getLayoutValObject(u,z.parts);if(H&&H.impliedEdits&&null!==D)for(var G in H.impliedEdits)E(i.relativeAttr(P,G),H.impliedEdits[G]);if(-1!==["width","height"].indexOf(P))if(D){E("autosize",null);var Y="height"===P?"width":"height";E(Y,u[Y])}else u[P]=t._initialAutoSize[P];else if("autosize"===P)E("width",D?null:u.width),E("height",D?null:u.height);else if(F.match(W))L(F),a(u,N+"._inputRange").set(null);else if(F.match(Z)){L(F),a(u,N+"._inputRange").set(null);var $=a(u,N).get();$._inputDomain&&($._input.domain=$._inputDomain.slice())}else F.match(X)&&a(u,N+"._inputDomain").set(null);if("type"===R){C=U;var J="linear"===V.type&&"log"===D,Q="log"===V.type&&"linear"===D;if(J||Q){if(C&&C.range)if(V.autorange)J&&(C.range=C.range[1]>C.range[0]?[1,2]:[2,1]);else{var tt=C.range[0],et=C.range[1];J?(tt<=0&&et<=0&&E(N+".autorange",!0),tt<=0?tt=et/1e6:et<=0&&(et=tt/1e6),E(N+".range[0]",Math.log(tt)/Math.LN10),E(N+".range[1]",Math.log(et)/Math.LN10)):(E(N+".range[0]",Math.pow(10,tt)),E(N+".range[1]",Math.pow(10,et)))}else E(N+".autorange",!0);Array.isArray(u._subplots.polar)&&u._subplots.polar.length&&u[z.parts[0]]&&"radialaxis"===z.parts[1]&&delete u[z.parts[0]]._subplot.viewInitial["radialaxis.range"],l.getComponentMethod("annotations","convertCoords")(t,V,D,E),l.getComponentMethod("images","convertCoords")(t,V,D,E)}else E(N+".autorange",!0),E(N+".range",null);a(u,N+"._inputRange").set(null)}else if(R.match(M)){var rt=a(u,P).get(),nt=(D||{}).type;(!nt||"-"===nt)&&(nt="linear"),l.getComponentMethod("annotations","convertCoords")(t,rt,nt,E),l.getComponentMethod("images","convertCoords")(t,rt,nt,E)}var it=b.containerArrayMatch(P);if(it){r=it.array,n=it.index;var at=it.property,ot=H||{editType:"calc"};""!==n&&""===at&&(b.isAddVal(D)?S[P]=null:b.isRemoveVal(D)?S[P]=(a(s,r).get()||[])[n]:i.warn("unrecognized full object value",e)),k.update(T,ot),y[r]||(y[r]={});var st=y[r][n];st||(st=y[r][n]={}),st[at]=D,delete e[P]}else"reverse"===R?(U.range?U.range.reverse():(E(N+".autorange",!0),U.range=[1,0]),V.autorange?T.calc=!0:T.plot=!0):("dragmode"===P&&(!1===D&&!1!==q||!1!==D&&!1===q)||u._has("scatter-like")&&u._has("regl")&&"dragmode"===P&&("lasso"===D||"select"===D)&&"lasso"!==q&&"select"!==q?T.plot=!0:H?k.update(T,H):T.calc=!0,z.set(D))}}for(r in y)b.applyContainerArrayChanges(t,f(s,r),y[r],T,f)||(T.plot=!0);for(var lt in I){var ct=(C=h.getFromId(t,lt))&&C._constraintGroup;if(ct)for(var ut in T.calc=!0,ct)I[ut]||(h.getFromId(t,ut)._constraintShrinkable=!0)}(K(t)||e.height||e.width)&&(T.plot=!0);var ht=u.shapes;for(n=0;n1;)if(n.pop(),void 0!==(r=a(e,n.join(".")+".uirevision").get()))return r;return e.uirevision}function it(t,e){for(var r=0;r=a.length?a[0]:a[t]:a}function l(t){return Array.isArray(o)?t>=o.length?o[0]:o[t]:o}function c(t,e){var r=0;return function(){if(t&&++r===e)return t()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(o,h){var p=0;function f(t){return Array.isArray(a)?p>=a.length?t.transitionOpts=a[p]:t.transitionOpts=a[0]:t.transitionOpts=a,p++,t}var d,m,g=[],y=null==e,v=Array.isArray(e);if(y||v||!i.isPlainObject(e)){if(y||-1!==["string","number"].indexOf(typeof e))for(d=0;d0&&bb)&&T.push(m);g=T}}g.length>0?function(e){if(0!==e.length){for(var i=0;in._timeToNext&&function(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var e=n._currentFrame=n._frameQueue.shift();if(e){var r=e.name?e.name.toString():null;t._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=e.frameOpts.duration,u.transition(t,e.frame.data,e.frame.layout,w.coerceTraceIndices(t,e.frame.traces),e.frameOpts,e.transitionOpts).then((function(){e.onComplete&&e.onComplete()})),t.emit("plotly_animatingframe",{name:r,frame:e.frame,animation:{frame:e.frameOpts,transition:e.transitionOpts}})}else t.emit("plotly_animated"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}()};e()}()}}(g):(t.emit("plotly_animated"),o())}))},t.addFrames=function(t,e,r){if(t=i.getGraphDiv(t),null==e)return Promise.resolve();if(!i.isPlotDiv(t))throw new Error("This element is not a Plotly plot: "+t+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,a,o,l,c=t._transitionData._frames,h=t._transitionData._frameHash;if(!Array.isArray(e))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+e);var p=c.length+2*e.length,f=[],d={};for(n=e.length-1;n>=0;n--)if(i.isPlainObject(e[n])){var m=e[n].name,g=(h[m]||d[m]||{}).name,y=e[n].name,v=h[g]||d[g];g&&y&&"number"==typeof y&&v&&S<5&&(S++,i.warn('addFrames: overwriting frame "'+(h[g]||d[g]).name+'" with a frame whose name of type "number" also equates to "'+g+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===S&&i.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),d[m]={name:m},f.push({frame:u.supplyFrameDefaults(e[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:p+n})}f.sort((function(t,e){return t.index>e.index?-1:t.index=0;n--){if("number"==typeof(a=f[n].frame).name&&i.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;h[a.name="frame "+t._transitionData._counter++];);if(h[a.name]){for(o=0;o=0;r--)n=e[r],o.push({type:"delete",index:n}),l.unshift({type:"insert",index:n,value:a[n]});var c=u.modifyFrames,h=u.modifyFrames,p=[t,l],f=[t,o];return s&&s.add(t,c,p,h,f),u.modifyFrames(t,o)},t.addTraces=function e(r,n,a){r=i.getGraphDiv(r);var o,l,c=[],u=t.deleteTraces,h=e,p=[r,c],f=[r,n];for(function(t,e,r){var n,i;if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if(typeof e>"u")throw new Error("traces must be defined.");for(Array.isArray(e)||(e=[e]),n=0;n"u")return l=t.redraw(r),s.add(r,u,p,h,f),l;Array.isArray(a)||(a=[a]);try{D(r,c,a)}catch(t){throw r.data.splice(r.data.length-n.length,n.length),t}return s.startSequence(r),s.add(r,u,p,h,f),l=t.moveTraces(r,c,a),s.stopSequence(r),l},t.deleteTraces=function e(r,n){r=i.getGraphDiv(r);var a,o,l=[],c=t.addTraces,u=e,h=[r,l,n],p=[r,n];if(typeof n>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(n)||(n=[n]),z(r,n,"indices"),(n=P(n,r.data.length-1)).sort(i.sorterDes),a=0;a=0&&r"u")for(a=[],o=0;o=0&&r")?"":e.html(t).text()}));return e.remove(),n}(_),(_=_.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(s,"'")}}}),Fn=f({"src/snapshot/svgtoimg.js"(t,e){var r=le(),n=pe().EventEmitter,i=On();e.exports=function(t){var e=t.emitter||new n,a=new Promise((function(n,a){var o,s,l=window.Image,c=t.svg,u=t.format||"png",h=t.canvas,p=t.scale||1,f=t.width||300,d=t.height||150,m=p*f,g=p*d,y=h.getContext("2d",{willReadFrequently:!0}),v=new l;"svg"===u||r.isSafari()?s=i.encodeSVG(c):(o=i.createBlob(c,"svg"),s=i.createObjectURL(o)),h.width=m,h.height=g,v.onload=function(){var r;switch(o=null,i.revokeObjectURL(s),"svg"!==u&&y.drawImage(v,0,0,m,g),u){case"jpeg":r=h.toDataURL("image/jpeg");break;case"png":r=h.toDataURL("image/png");break;case"webp":r=h.toDataURL("image/webp");break;case"svg":r=s;break;default:var l="Image format is not jpeg, png, svg or webp.";if(a(new Error(l)),!t.promise)return e.emit("error",l)}n(r),t.promise||e.emit("success",r)},v.onerror=function(r){if(o=null,i.revokeObjectURL(s),a(r),!t.promise)return e.emit("error",r)},v.src=s}));return t.promise?a:e}}}),Bn=f({"src/plot_api/to_image.js"(t,e){var r=A(),n=Dn(),i=Ae(),a=le(),o=On(),s=Rn(),l=Fn(),c=y().version,u={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};e.exports=function(t,e){var h,p,f,d;function m(t){return!(t in e)||a.validate(e[t],u[t])}if(e=e||{},a.isPlainObject(t)?(h=t.data||[],p=t.layout||{},f=t.config||{},d={}):(t=a.getGraphDiv(t),h=a.extendDeep([],t.data),p=a.extendDeep({},t.layout),f=t._context,d=t._fullLayout||{}),!m("width")&&null!==e.width||!m("height")&&null!==e.height)throw new Error("Height and width should be pixel values.");if(!m("format"))throw new Error("Export format is not "+a.join2(u.format.values,", "," or ")+".");var g={};function y(t,r){return a.coerce(e,g,u,t,r)}var v=y("format"),x=y("width"),_=y("height"),b=y("scale"),w=y("setBackground"),T=y("imageDataOnly"),A=document.createElement("div");A.style.position="absolute",A.style.left="-5000px",document.body.appendChild(A);var k=a.extendFlat({},p);x?k.width=x:null===e.width&&r(d.width)&&(k.width=d.width),_?k.height=_:null===e.height&&r(d.height)&&(k.height=d.height);var M=a.extendFlat({},f,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=o.getRedrawFunc(A);function E(){return new Promise((function(t){setTimeout(t,o.getDelay(A._fullLayout))}))}function C(){return new Promise((function(t,e){var r=s(A,v,b),u=A._fullLayout.width,h=A._fullLayout.height;function p(){n.purge(A),document.body.removeChild(A)}if("full-json"===v){var f=i.graphJson(A,!1,"keepdata","object",!0,!0);return f.version=c,f=JSON.stringify(f),p(),t(T?f:o.encodeJSON(f))}if(p(),"svg"===v)return t(T?r:o.encodeSVG(r));var d=document.createElement("canvas");d.id=a.randstr(),l({format:v,width:u,height:h,scale:b,canvas:d,svg:r,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){n.newPlot(A,h,k,M).then(S).then(E).then(C).then((function(e){t(function(t){return T?t.replace(o.IMAGE_URL_PREFIX,""):t}(e))})).catch((function(t){e(t)}))}))}}}),jn=f({"src/plot_api/validate.js"(t,e){var r=le(),n=Ae(),i=ge(),a=Y().dfltConfig,o=r.isPlainObject,s=Array.isArray,l=r.isArrayOrTypedArray;function c(t,e,n,i,a,u){u=u||[];for(var h=Object.keys(t),m=0;mx.length&&i.push(p("unused",a,y.concat(x.length)));var k,M,S,E,C,I=x.length,L=Array.isArray(A);if(L&&(I=Math.min(I,A.length)),2===_.dimensions)for(M=0;Mx[M].length&&i.push(p("unused",a,y.concat(M,x[M].length)));var P=x[M].length;for(k=0;k<(L?Math.min(P,A[M].length):P);k++)S=L?A[M][k]:A,E=v[M][k],C=x[M][k],r.validate(E,S)?C!==E&&C!==+E&&i.push(p("dynamic",a,y.concat(M,k),E,C)):i.push(p("value",a,y.concat(M,k),E))}else i.push(p("array",a,y.concat(M),v[M]));else for(M=0;M1&&f.push(p("object","layout"))),n.supplyDefaults(d);for(var m=d._fullData,g=l.length,y=0;yT?h.push({code:"unused",traceType:v,templateCount:w,dataCount:T}):T>w&&h.push({code:"reused",traceType:v,templateCount:w,dataCount:T})}}else h.push({code:"data"});if(function t(e,n){for(var i in e)if("_"!==i.charAt(0)){var a=e[i],o=f(e,i,n);r(a)?(Array.isArray(e)&&!1===a._template&&a.templateitemname&&h.push({code:"missing",path:o,templateitemname:a.templateitemname}),t(a,o)):Array.isArray(a)&&d(a)&&t(a,o)}}({data:g,layout:p},""),h.length)return h.map(m)}}}),qn=f({"src/plot_api/index.js"(t){var e=Dn();t._doPlot=e._doPlot,t.newPlot=e.newPlot,t.restyle=e.restyle,t.relayout=e.relayout,t.redraw=e.redraw,t.update=e.update,t._guiRestyle=e._guiRestyle,t._guiRelayout=e._guiRelayout,t._guiUpdate=e._guiUpdate,t._storeDirectGUIEdit=e._storeDirectGUIEdit,t.react=e.react,t.extendTraces=e.extendTraces,t.prependTraces=e.prependTraces,t.addTraces=e.addTraces,t.deleteTraces=e.deleteTraces,t.moveTraces=e.moveTraces,t.purge=e.purge,t.addFrames=e.addFrames,t.deleteFrames=e.deleteFrames,t.animate=e.animate,t.setPlotConfig=e.setPlotConfig;var r=It().getGraphDiv,n=Zr().eraseActiveShape;t.deleteActiveShape=function(t){return n(r(t))},t.toImage=Bn(),t.validate=jn(),t.downloadImage=Un();var i=Vn();t.makeTemplate=i.makeTemplate,t.validateTemplate=i.validateTemplate}}),Hn=f({"src/traces/scatter/xy_defaults.js"(t,e){var r=le(),n=qt();e.exports=function(t,e,i,a){var o,s=a("x"),l=a("y");if(n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],i),s){var c=r.minRowLength(s);l?o=Math.min(c,r.minRowLength(l)):(o=c,a("y0"),a("dy"))}else{if(!l)return 0;o=r.minRowLength(l),a("x0"),a("dx")}return e._length=o,o}}}),Gn=f({"src/traces/scatter/period_defaults.js"(t,e){var r=le().dateTick0,n=k().ONEWEEK;function i(t,e){return r(e,t%n==0?1:0)}e.exports=function(t,e,r,n,a){if(a||(a={x:!0,y:!0}),a.x){var o=n("xperiod");o&&(n("xperiod0",i(o,e.xcalendar)),n("xperiodalignment"))}if(a.y){var s=n("yperiod");s&&(n("yperiod0",i(s,e.ycalendar)),n("yperiodalignment"))}}}}),Wn=f({"src/traces/scatter/stack_defaults.js"(t,e){var r=["orientation","groupnorm","stackgaps"];e.exports=function(t,e,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=e.xaxis+e.yaxis,l=a[s];l||(l=a[s]={});var c=l[o],u=!1;c?c.traces.push(e):(c=l[o]={traceIndices:[],traces:[e]},u=!0);for(var h={orientation:e.x&&!e.y?"h":"v"},p=0;p=0;p--){var f=t[p];if("scatter"===f.type&&f.xaxis===u.xaxis&&f.yaxis===u.yaxis){f.opacity=void 0;break}}}}}}}),ei=f({"src/traces/scatter/layout_defaults.js"(t,e){var r=le(),n=be();e.exports=function(t,e){var i,a="group"===e.barmode;"group"===e.scattermode&&(i=a?e.bargap:.2,r.coerce(t,e,n,"scattergap",i))}}}),ri=f({"src/plots/cartesian/align_period.js"(t,e){var r=A(),n=le(),i=n.dateTime2ms,a=n.incrementMonth,o=k().ONEAVGMONTH;e.exports=function(t,e,n,s){if("date"!==e.type)return{vals:s};var l=t[n+"periodalignment"];if(!l)return{vals:s};var c,u=t[n+"period"];if(r(u)){if((u=+u)<=0)return{vals:s}}else if("string"==typeof u&&"M"===u.charAt(0)){var h=+u.substring(1);if(!(h>0&&Math.round(h)===h))return{vals:s};c=h}for(var p=e.calendar,f="start"===l,d="end"===l,m=t[n+"period0"],g=i(m,p)||0,y=[],v=[],x=[],_=s.length,b=0;b<_;b++){var w,T,A,k=s[b];if(c){for(w=Math.round((k-g)/(c*o)),A=a(g,c*w,p);A>k;)A=a(A,-c,p);for(;A<=k;)A=a(A,c,p);T=a(A,-c,p)}else{for(A=g+(w=Math.round((k-g)/u))*u;A>k;)A-=u;for(;A<=k;)A+=u;T=A-u}y[b]=f?T:d?A:(T+A)/2,v[b]=T,x[b]=A}return{vals:y,starts:v,ends:x}}}}),ni=f({"src/traces/scatter/colorscale_calc.js"(t,e){var r=Ee().hasColorscale,n=We(),i=Ye();e.exports=function(t,e){i.hasLines(e)&&r(e,"line")&&n(t,e,{vals:e.line.color,containerStr:"line",cLetter:"c"}),i.hasMarkers(e)&&(r(e,"marker")&&n(t,e,{vals:e.marker.color,containerStr:"marker",cLetter:"c"}),r(e,"marker.line")&&n(t,e,{vals:e.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),ii=f({"src/traces/scatter/arrays_to_calcdata.js"(t,e){var r=le();e.exports=function(t,e){for(var n=0;nd&&I[y].gap;)y--;for(x=I[y].s,g=I.length-1;g>y;g--)I[g].s=x;for(;dh+c||!r(u))}for(var f=0;fS[h]&&h0?o:s)/(I._m*z*(I._m>0?o:s)))),a*=1e3}if(l===i){if(P&&(l=I.c2p(n.y,!0)),l===i)return!1;l*=1e3}return[a,l]}function Y(t,e,r,n){var i=r-t,a=n-e,o=.5-t,s=.5-e,l=i*i+a*a,c=i*o+a*s;if(c>0&&cot||t[1]lt)return[u(t[0],at,ot),u(t[1],st,lt)]}function ht(t,e){if(t[0]===e[0]&&(t[0]===at||t[0]===ot)||t[1]===e[1]&&(t[1]===st||t[1]===lt))return!0}function pt(t,e,r){return function(n,i){var a=ut(n),o=ut(i),s=[];if(a&&o&&ht(a,o))return s;a&&s.push(a),o&&s.push(o);var c=2*l.constrain((n[t]+i[t])/2,e,r)-((a||n)[t]+(o||i)[t]);return c&&((a&&o?c>0==a[t]>o[t]?a:o:a||o)[t]+=c),s}}function ft(t){var e=t[0],r=t[1],n=e===G[W-1][0],i=r===G[W-1][1];if(!n||!i)if(W>1){var a=e===G[W-2][0],o=r===G[W-2][1];n&&(e===at||e===ot)&&a?o?W--:G[W-1]=t:i&&(r===st||r===lt)&&o?a?W--:G[W-1]=t:G[W++]=t}else G[W++]=t}function dt(t){G[W-1][0]!==t[0]&&G[W-1][1]!==t[1]&&ft([Q,tt]),ft(t),et=null,Q=tt=0}"linear"===j||"spline"===j?nt=function(t,e){for(var r=[],n=0,i=0;i<4;i++){var a=ct[i],o=c(t[0],t[1],e[0],e[1],a[0],a[1],a[2],a[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&$(o,t)<$(r[0],t)?r.unshift(o):r.push(o),n++)}return r}:"hv"===j||"vh"===j?nt=function(t,e){var r=[],n=ut(t),i=ut(e);return n&&i&&ht(n,i)||(n&&r.push(n),i&&r.push(i)),r}:"hvh"===j?nt=pt(0,at,ot):"vhv"===j&&(nt=pt(1,st,lt));var mt=l.isArrayOrTypedArray(R);function gt(e){if(e&&O&&(e.i=n,e.d=t,e.trace=E,e.marker=mt?R[e.i]:R,e.backoff=O),M=e[0]/z,S=e[1]/D,K=e[0]ot?ot:0,J=e[1]lt?lt:0,K||J){if(W)if(et){var r=nt(et,e);r.length>1&&(dt(r[0]),G[W++]=r[1])}else rt=nt(G[W-1],e)[0],G[W++]=rt;else G[W++]=[K||e[0],J||e[1]];var i=G[W-1];K&&J&&(i[0]!==K||i[1]!==J)?(et&&(Q!==K&&tt!==J?ft(Q&&tt?function(t,e){var r=e[0]-t[0],n=(e[1]-t[1])/r;return(t[1]*e[0]-e[1]*t[0])/r>0?[n>0?at:ot,lt]:[n>0?ot:at,st]}(et,e):[Q||K,tt||J]):Q&&tt&&ft([Q,tt])),ft([K,J])):Q-K&&tt-J&&ft([K||Q,J||tt]),et=e,Q=K,tt=J}else et&&dt(nt(et,e)[0]),G[W++]=e}for(n=0;nX(m,yt))break;p=m,(w=v[0]*y[0]+v[1]*y[1])>_?(_=w,f=m,g=!1):w=t.length||!m)break;gt(m),a=m}}else gt(f)}et&&ft([Q||et[0],tt||et[1]]),V.push(G.slice(0,W))}var vt=j.slice(j.length-1);if(O&&"h"!==vt&&"v"!==vt){for(var xt=!1,_t=-1,bt=[],wt=0;wt=0?l=f:(l=f=p,p++),l=u[0]&&t.x<=u[1]&&t.y>=h[0]&&t.y<=h[1]})),m=Math.ceil(d.length/f),g=0;o.forEach((function(t,r){var n=t[0].trace;l.hasMarkers(n)&&n.marker.maxdisplayed>0&&r0;function x(t){return v?t.transition():t}var _=u.xaxis,b=u.yaxis,w=p[0].trace,T=w.line,A=r.select(d),k=a(A,"g","errorbars"),M=a(A,"g","lines"),S=a(A,"g","points"),E=a(A,"g","text");if(n.getComponentMethod("errorbars","plot")(t,k,u,m),!0===w.visible){x(A).style("opacity",w.opacity);var C,I,L,P,z=w.fill.charAt(w.fill.length-1);"x"!==z&&"y"!==z&&(z=""),"y"===z?(L=1,P=b.c2p(0,!0)):"x"===z&&(L=0,P=_.c2p(0,!0)),p[0][u.isRangePlot?"nodeRangePlot3":"node3"]=A;var D="",O=[],R=w._prevtrace,F=null,B=null;R&&(D=R._prevRevpath||"",I=R._nextFill,O=R._ownPolygons,F=R._fillsegments,B=R._fillElement);var j,N,U,V,q,H,G,W,Z="",Y="",X=[];w._polygons=[];var $=[],K=[],J=i.noop;if(C=w._ownFill,l.hasLines(w)||"none"!==w.fill){I&&I.datum(p),-1!==["hv","vh","hvh","vhv"].indexOf(T.shape)?(U=s.steps(T.shape),V=s.steps(T.shape.split("").reverse().join(""))):U=V="spline"===T.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?s.smoothclosed(t.slice(1),T.smoothing):s.smoothopen(t,T.smoothing)}:function(t){return"M"+t.join("L")},q=function(t){return V(t.reverse())},K=c(p,{xaxis:_,yaxis:b,trace:w,connectGaps:w.connectgaps,baseTolerance:Math.max(T.width||1,3)/4,shape:T.shape,backoff:T.backoff,simplify:T.simplify,fill:w.fill}),$=new Array(K.length);var Q=0;for(g=0;g0,g=u(t,e,n);(h=i.selectAll("g.trace").data(g,(function(t){return t[0].trace.uid}))).enter().append("g").attr("class",(function(t){return"trace scatter trace"+t[0].trace.uid})).style("stroke-miterlimit",2),h.order(),function(t,e,n){e.each((function(e){var i=a(r.select(this),"g","fills");s.setClipUrl(i,n.layerClipId,t);var l=e[0].trace,c=[];l._ownfill&&c.push("_ownFill"),l._nexttrace&&c.push("_nextFill");var u=i.selectAll("g").data(c,o);u.enter().append("g"),u.exit().each((function(t){l[t]=null})).remove(),u.order().each((function(t){l[t]=a(r.select(this),"path","js-fill")}))}))}(t,h,e),m?(c&&(f=c()),r.transition().duration(l.duration).ease(l.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){i.selectAll("g.trace").each((function(r,n){p(t,n,e,r,g,this,l)}))}))):h.each((function(r,n){p(t,n,e,r,g,this,l)})),d&&h.exit().remove(),i.selectAll("path:not([d])").remove()}}}),fi=f({"src/traces/scatter/marker_colorbar.js"(t,e){e.exports={container:"marker",min:"cmin",max:"cmax"}}}),di=f({"src/traces/scatter/format_labels.js"(t,e){var r=ir();e.exports=function(t,e,n){var i={},a={_fullLayout:n},o=r.getFromTrace(a,e,"x"),s=r.getFromTrace(a,e,"y"),l=t.orig_x;void 0===l&&(l=t.x);var c=t.orig_y;return void 0===c&&(c=t.y),i.xLabel=r.tickText(o,o.c2l(l),!0).text,i.yLabel=r.tickText(s,s.c2l(c),!0).text,i}}}),mi=f({"src/traces/scatter/style.js"(t,e){var r=x(),n=Qe(),i=qt();function a(t,e,r){n.pointStyle(t.selectAll("path.point"),e,r)}function o(t,e,r){n.textPointStyle(t.selectAll("text"),e,r)}e.exports={style:function(t){var e=r.select(t).selectAll("g.trace.scatter");e.style("opacity",(function(t){return t[0].trace.opacity})),e.selectAll("g.points").each((function(e){a(r.select(this),e.trace||e[0].trace,t)})),e.selectAll("g.text").each((function(e){o(r.select(this),e.trace||e[0].trace,t)})),e.selectAll("g.trace path.js-line").call(n.lineGroupStyle),e.selectAll("g.trace path.js-fill").call(n.fillGroupStyle,t,!1),i.getComponentMethod("errorbars","style")(e)},stylePoints:a,styleText:o,styleOnSelect:function(t,e,r){var i=e[0].trace;i.selectedpoints?(n.selectedPointStyle(r.selectAll("path.point"),i),n.selectedTextStyle(r.selectAll("text"),i)):(a(r,i,t),o(r,i,t))}}}}),gi=f({"src/traces/scatter/get_trace_color.js"(t,e){var r=H(),n=Ye();e.exports=function(t,e){var i,a;if("lines"===t.mode)return(i=t.line.color)&&r.opacity(i)?i:t.fillcolor;if("none"===t.mode)return t.fill?t.fillcolor:"";var o=e.mcc||(t.marker||{}).color,s=e.mlcc||((t.marker||{}).line||{}).color;return(a=o&&r.opacity(o)?o:s&&r.opacity(s)&&(e.mlw||((t.marker||{}).line||{}).width)?s:"")?r.opacity(a)<.3?r.addOpacity(a,.3):a:(i=(t.line||{}).color)&&r.opacity(i)&&n.hasLines(t)&&t.line.width?i:t.fillcolor}}}),yi=f({"src/traces/scatter/hover.js"(t,e){var r=le(),n=Dr(),i=qt(),a=gi(),o=H(),s=r.fillText;e.exports=function(t,e,l,c){var u=t.cd,h=u[0].trace,p=t.xa,f=t.ya,d=p.c2p(e),m=f.c2p(l),g=[d,m],y=h.hoveron||"",v=-1!==h.mode.indexOf("markers")?3:.5,x=!!h.xperiodalignment,_=!!h.yperiodalignment;if(-1!==y.indexOf("points")){var b=function(t){var e=Math.max(v,t.mrc||0),r=p.c2p(t.x)-d,n=f.c2p(t.y)-m;return Math.max(Math.sqrt(r*r+n*n)-e,1-v/e)},w=n.getDistanceFunction(c,(function(t){if(x){var e=p.c2p(t.xStart),r=p.c2p(t.xEnd);return d>=Math.min(e,r)&&d<=Math.max(e,r)?0:1/0}var n=Math.max(3,t.mrc||0),i=1-1/n,a=Math.abs(p.c2p(t.x)-d);return a=Math.min(e,r)&&m<=Math.max(e,r)?0:1/0}var n=Math.max(3,t.mrc||0),i=1-1/n,a=Math.abs(f.c2p(t.y)-m);return ar!=(c=i[n][1])>=r&&(o=i[n-1][0],s=i[n][0],c-l&&(a=o+(s-o)*(r-l)/(c-l),h=Math.min(h,a),d=Math.max(d,a)));return{x0:h=Math.max(h,0),x1:d=Math.min(d,p._length),y0:r,y1:r}}(h._polygons);null===P&&(P={x0:g[0],x1:g[0],y0:g[1],y1:g[1]});var z=o.defaultLine;return o.opacity(h.fillcolor)?z=h.fillcolor:o.opacity((h.line||{}).color)&&(z=h.line.color),r.extendFlat(t,{distance:t.maxHoverDistance,x0:P.x0,x1:P.x1,y0:P.y0,y1:P.y1,color:z,hovertemplate:!1}),delete t.index,h.text&&!r.isArrayOrTypedArray(h.text)?t.text=String(h.text):t.text=h.name,[t]}}}}),vi=f({"src/traces/scatter/select.js"(t,e){var r=Ye();e.exports=function(t,e){var n,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],h=s[0].trace;if(!r.hasMarkers(h)&&!r.hasText(h))return[];if(!1===e)for(n=0;n0&&(i["_"+r+"axes"]||{})[e])return i;if((i[r+"axis"]||r)===e){if(a(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}(e,s,l);if(c){if("histogram"===c.type&&l==={v:"y",h:"x"}[c.orientation||"v"])return void(t.type="linear");var u=l+"calendar",h=c[u],p={noMultiCategory:!r(c,"cartesian")||r(c,"noMultiCategory")};if("box"===c.type&&c._hasPreCompStats&&l==={h:"x",v:"y"}[c.orientation||"v"]&&(p.noMultiCategory=!0),p.autotypenumbers=t.autotypenumbers,a(c,l)){var f=i(c),d=[];for(o=0;o0||r(o);s&&(a="array");var l,c=n("categoryorder",a);"array"===c&&(l=n("categoryarray")),!s&&"array"===c&&(c=e.categoryorder="trace"),"trace"===c?e._initialCategories=[]:"array"===c?e._initialCategories=l.slice():(l=function(t,e){var r,n,i,a=e.dataAttr||t._id.charAt(0),o={};if(e.axData)r=e.axData;else for(r=[],n=0;n=2){var l,c,u="";if(2===o.length)for(l=0;l<2;l++)if(c=_(o[l])){u=g;break}var h=a("pattern",u);if(h===g)for(l=0;l<2;l++)(c=_(o[l]))&&(e.bounds[l]=o[l]=c-1);if(h)for(l=0;l<2;l++)switch(c=o[l],h){case g:if(!r(c))return void(e.enabled=!1);if((c=+c)!==Math.floor(c)||c<0||c>=7)return void(e.enabled=!1);e.bounds[l]=o[l]=c;break;case y:if(!r(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[l]=o[l]=c}if(!1===n.autorange){var p=n.range;if(p[0]p[1])return void(e.enabled=!1)}else if(o[0]>p[0]&&o[1]_[1]-1/4096&&(e.domain=s),n.noneOrAll(t.domain,e.domain,s),"sync"===e.tickmode&&(e.tickmode="auto")}return i("layer"),e}}}),ki=f({"src/plots/cartesian/layout_defaults.js"(t,e){var r=le(),n=H(),i=$e().isUnifiedHover,a=Ir(),o=ye(),s=Nt(),l=Ie(),c=_i(),u=Ti(),h=rn(),p=Ai(),f=xe(),d=f.id2name,m=f.name2id,g=ve().AX_ID_PATTERN,y=qt(),v=y.traceIs,x=y.getComponentMethod;function _(t,e,r){Array.isArray(t[e])?t[e].push(r):t[e]=[r]}e.exports=function(t,e,y){var b,w,T=e.autotypenumbers,A={},k={},M={},S={},E={},C={},I={},L={},P={},z={};for(b=0;bs.duration?(function(){for(var r={},i=0;i rect").call(a.setTranslate,0,0).call(a.setScale,1,1),t.plot.call(a.setTranslate,e._offset,r._offset).call(a.setScale,1,1);var n=t.plot.selectAll(".scatterlayer .trace");n.selectAll(".point").call(a.setPointGroupScale,1,1),n.selectAll(".textpoint").call(a.setTextPointsScale,1,1),n.call(a.hideOutsideRangePoints,t)}function g(e,r){var n=e.plotinfo,s=n.xaxis,l=n.yaxis,c=s._length,u=l._length,h=!!e.xr1,p=!!e.yr1,f=[];if(h){var d=i.simpleMap(e.xr0,s.r2l),m=i.simpleMap(e.xr1,s.r2l),g=d[1]-d[0],y=m[1]-m[0];f[0]=(d[0]*(1-r)+r*m[0]-d[0])/(d[1]-d[0])*c,f[2]=c*(1-r+r*y/g),s.range[0]=s.l2r(d[0]*(1-r)+r*m[0]),s.range[1]=s.l2r(d[1]*(1-r)+r*m[1])}else f[0]=0,f[2]=c;if(p){var v=i.simpleMap(e.yr0,l.r2l),x=i.simpleMap(e.yr1,l.r2l),_=v[1]-v[0],b=x[1]-x[0];f[1]=(v[1]*(1-r)+r*x[1]-v[1])/(v[0]-v[1])*u,f[3]=u*(1-r+r*b/_),l.range[0]=s.l2r(v[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(v[1]*(1-r)+r*x[1])}else f[1]=0,f[3]=u;o.drawOne(t,s,{skipTitle:!0}),o.drawOne(t,l,{skipTitle:!0}),o.redrawComponents(t,[s._id,l._id]);var w=h?c/f[2]:1,T=p?u/f[3]:1,A=h?f[0]:0,k=p?f[1]:0,M=h?f[0]/f[2]*c:0,S=p?f[1]/f[3]*u:0,E=s._offset-M,C=l._offset-S;n.clipRect.call(a.setTranslate,A,k).call(a.setScale,1/w,1/T),n.plot.call(a.setTranslate,E,C).call(a.setScale,w,T),a.setPointGroupScale(n.zoomScalePts,1/w,1/T),a.setTextPointsScale(n.zoomScaleTxt,1/w,1/T)}o.redrawComponents(t)}}}),Si=f({"src/plots/cartesian/index.js"(t){var e=x(),r=qt(),n=le(),i=Ae(),a=Qe(),o=we().getModuleCalcData,s=xe(),l=ve(),c=ke(),u=n.ensureSingle;function h(t,e,r){return n.ensureSingle(t,e,r,(function(t){t.datum(r)}))}var p=l.zindexSeparator;function f(t,n,i,s,c){for(var u,h,p,f=l.traceLayerClasses,d=t._fullLayout,m=d._zindices,g=d._modules,y=[],v=[],x=0;x1,m=e.mainplotinfo;if(!e.mainplot||d)if(f)e.xlines=u(n,"path","xlines-above"),e.ylines=u(n,"path","ylines-above"),e.xaxislayer=u(n,"g","xaxislayer-above"),e.yaxislayer=u(n,"g","yaxislayer-above");else{if(!a){var g=u(n,"g","layer-subplot");e.shapelayer=u(g,"g","shapelayer"),e.imagelayer=u(g,"g","imagelayer"),m&&d?(e.minorGridlayer=m.minorGridlayer,e.gridlayer=m.gridlayer,e.zerolinelayer=m.zerolinelayer):(e.minorGridlayer=u(n,"g","minor-gridlayer"),e.gridlayer=u(n,"g","gridlayer"),e.zerolinelayer=u(n,"g","zerolinelayer"));var y=u(n,"g","layer-between");e.shapelayerBetween=u(y,"g","shapelayer"),e.imagelayerBetween=u(y,"g","imagelayer"),u(n,"path","xlines-below"),u(n,"path","ylines-below"),e.overlinesBelow=u(n,"g","overlines-below"),u(n,"g","xaxislayer-below"),u(n,"g","yaxislayer-below"),e.overaxesBelow=u(n,"g","overaxes-below")}e.overplot=u(n,"g","overplot"),e.plot=u(e.overplot,"g",i),a||(e.xlines=u(n,"path","xlines-above"),e.ylines=u(n,"path","ylines-above"),e.overlinesAbove=u(n,"g","overlines-above"),u(n,"g","xaxislayer-above"),u(n,"g","yaxislayer-above"),e.overaxesAbove=u(n,"g","overaxes-above"),e.xlines=n.select(".xlines-"+o),e.ylines=n.select(".ylines-"+c),e.xaxislayer=n.select(".xaxislayer-"+o),e.yaxislayer=n.select(".yaxislayer-"+c))}else{var v=m.plotgroup,x=i+"-x",_=i+"-y";e.minorGridlayer=m.minorGridlayer,e.gridlayer=m.gridlayer,e.zerolinelayer=m.zerolinelayer,u(m.overlinesBelow,"path",x),u(m.overlinesBelow,"path",_),u(m.overaxesBelow,"g",x),u(m.overaxesBelow,"g",_),e.plot=u(m.overplot,"g",i),u(m.overlinesAbove,"path",x),u(m.overlinesAbove,"path",_),u(m.overaxesAbove,"g",x),u(m.overaxesAbove,"g",_),e.xlines=v.select(".overlines-"+o).select("."+x),e.ylines=v.select(".overlines-"+c).select("."+_),e.xaxislayer=v.select(".overaxes-"+o).select("."+x),e.yaxislayer=v.select(".overaxes-"+c).select("."+_)}a||(f||(h(e.minorGridlayer,"g",e.xaxis._id),h(e.minorGridlayer,"g",e.yaxis._id),e.minorGridlayer.selectAll("g").map((function(t){return t[0]})).sort(s.idSort),h(e.gridlayer,"g",e.xaxis._id),h(e.gridlayer,"g",e.yaxis._id),e.gridlayer.selectAll("g").map((function(t){return t[0]})).sort(s.idSort)),e.xlines.style("fill","none").classed("crisp",!0),e.ylines.style("fill","none").classed("crisp",!0))}function m(t,r){if(t){var n={};for(var i in t.each((function(t){var i=t[0];e.select(this).remove(),g(i,r),n[i]=!0})),r._plots)for(var a=r._plots[i].overlays||[],o=0;o0){var g=m.id;if(-1!==g.indexOf(p))continue;g+=p+(u+1),m=n.extendFlat({},m,{id:g,plot:o._cartesianlayer.selectAll(".subplot").select("."+g)})}for(var y,v=[],x=0;x1&&(w+=p+b),_.push(n+w),r=0;r=0,x=e.indexOf("end")>=0,_=d.backoff*g+a.standoff,b=m.backoff*y+a.startstandoff;if("line"===f.nodeName){c={x:+t.attr("x1"),y:+t.attr("y1")},u={x:+t.attr("x2"),y:+t.attr("y2")};var w=c.x-u.x,T=c.y-u.y;if(p=(h=Math.atan2(T,w))+Math.PI,_&&b&&_+b>Math.sqrt(w*w+T*T))return void D();if(_){if(_*_>w*w+T*T)return void D();var A=_*Math.cos(h),k=_*Math.sin(h);u.x+=A,u.y+=k,t.attr({x2:u.x,y2:u.y})}if(b){if(b*b>w*w+T*T)return void D();var M=b*Math.cos(h),S=b*Math.sin(h);c.x-=M,c.y-=S,t.attr({x1:c.x,y1:c.y})}}else if("path"===f.nodeName){var E=f.getTotalLength(),C="";if(E<_+b)return void D();var I=f.getPointAtLength(0),L=f.getPointAtLength(.1);h=Math.atan2(I.y-L.y,I.x-L.x),c=f.getPointAtLength(Math.min(b,E)),C="0px,"+b+"px,";var P=f.getPointAtLength(E),z=f.getPointAtLength(E-.1);p=Math.atan2(P.y-z.y,P.x-z.x),u=f.getPointAtLength(Math.max(0,E-_)),C+=E-(C?b+_:_)+"px,"+E+"px",t.style("stroke-dasharray",C)}function D(){t.style("stroke-dasharray","0px,100px")}function O(e,i,c,u){e.path&&(e.noRotate&&(c=0),r.select(f.parentNode).append("path").attr({class:t.attr("class"),d:e.path,transform:l(i.x,i.y)+s(180*c/Math.PI)+o(u)}).style({fill:n.rgb(a.arrowcolor),"stroke-width":0}))}v&&O(m,c,h,y),x&&O(d,u,p,g)}}}),Ii=f({"src/components/annotations/draw.js"(t,e){var r=x(),n=qt(),i=Ae(),a=le(),o=a.strTranslate,s=ir(),l=H(),c=Qe(),u=Dr(),h=Se(),p=fr(),f=pr(),d=ye().arrayEditor,m=Ci();function g(t,e){var r=t._fullLayout.annotations[e]||{},n=s.getFromId(t,r.xref),i=s.getFromId(t,r.yref);n&&n.setScale(),i&&i.setScale(),v(t,r,e,!1,n,i)}function y(t,e,r,n,i){var a=i[r],o=i[r+"ref"],l=-1!==r.indexOf("y"),c="domain"===s.getRefType(o),u=l?n.h:n.w;return t?c?a+(l?-e:e)/t._length:t.p2r(t.r2p(a)+e):a+(l?-e:e)/u}function v(t,e,i,g,v,x){var _,b,w=t._fullLayout,T=t._fullLayout._size,A=t._context.edits;g?(_="annotation-"+g,b=g+".annotations"):(_="annotation",b="annotations");var k=d(t.layout,b,e),M=k.modifyBase,S=k.modifyItem,E=k.getUpdateObj;w._infolayer.selectAll("."+_+'[data-index="'+i+'"]').remove();var C="clip"+w._uid+"_ann"+i;if(e._input&&!1!==e.visible){var I={x:{},y:{}},L=+e.textangle||0,P=w._infolayer.append("g").classed(_,!0).attr("data-index",String(i)).style("opacity",e.opacity),z=P.append("g").classed("annotation-text-g",!0),D=A[e.showarrow?"annotationTail":"annotationPosition"],O=e.captureevents||A.annotationText||D,R=z.append("g").style("pointer-events",O?"all":null).call(p,"pointer").on("click",(function(){t._dragging=!1,t.emit("plotly_clickannotation",W(r.event))}));e.hovertext&&R.on("mouseover",(function(){var r=e.hoverlabel,n=r.font,i=this.getBoundingClientRect(),a=t.getBoundingClientRect();u.loneHover({x0:i.left-a.left,x1:i.right-a.left,y:(i.top+i.bottom)/2-a.top,text:e.hovertext,color:r.bgcolor,borderColor:r.bordercolor,fontFamily:n.family,fontSize:n.size,fontColor:n.color,fontWeight:n.weight,fontStyle:n.style,fontVariant:n.variant,fontShadow:n.fontShadow,fontLineposition:n.fontLineposition,fontTextcase:n.fontTextcase},{container:w._hoverlayer.node(),outerContainer:w._paper.node(),gd:t})})).on("mouseout",(function(){u.loneUnhover(w._hoverlayer.node())}));var F=e.borderwidth,B=e.borderpad,j=F+B,N=R.append("rect").attr("class","bg").style("stroke-width",F+"px").call(l.stroke,e.bordercolor).call(l.fill,e.bgcolor),U=e.width||e.height,V=w._topclips.selectAll("#"+C).data(U?[0]:[]);V.enter().append("clipPath").classed("annclip",!0).attr("id",C).append("rect"),V.exit().remove();var q=e.font,H=w._meta?a.templateString(e.text,w._meta):e.text,G=R.append("text").classed("annotation-text",!0).text(H);A.annotationText?G.call(h.makeEditable,{delegate:R,gd:t}).call(Z).on("edit",(function(r){e.text=r,this.call(Z),S("text",r),v&&v.autorange&&M(v._name+".autorange",!0),x&&x.autorange&&M(x._name+".autorange",!0),n.call("_guiRelayout",t,E())})):G.call(Z)}else r.selectAll("#"+C).remove();function W(t){var r={index:i,annotation:e._input,fullAnnotation:e,event:t};return g&&(r.subplotId=g),r}function Z(r){return r.call(c.font,q).attr({"text-anchor":{left:"start",right:"end"}[e.align]||"middle"}),h.convertToTspans(r,t,Y),r}function Y(){var r=G.selectAll("a");1===r.size()&&r.text()===G.text()&&R.insert("a",":first-child").attr({"xlink:xlink:href":r.attr("xlink:href"),"xlink:xlink:show":r.attr("xlink:show")}).style({cursor:"pointer"}).node().appendChild(N.node());var i=R.select(".annotation-text-math-group"),u=!i.empty(),d=c.bBox((u?i:G).node()),_=d.width,b=d.height,k=e.width||_,O=e.height||b,B=Math.round(k+2*j),q=Math.round(O+2*j);function H(t,e){return"auto"===e&&(e=t<1/3?"left":t>2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var Z=!1,Y=["x","y"],X=0;X1)&&(nt===rt?((ft=it.r2fraction(e["a"+et]))<0||ft>1)&&(Z=!0):Z=!0),$=it._offset+it.r2p(e[et]),Q=.5}else{var dt="domain"===pt;"x"===et?(J=e[et],$=dt?it._offset+it._length*J:$=T.l+T.w*J):(J=1-e[et],$=dt?it._offset+it._length*J:$=T.t+T.h*J),Q=e.showarrow?.5:J}if(e.showarrow){ht.head=$;var mt=e["a"+et];if(tt=ot*H(.5,e.xanchor)-st*H(.5,e.yanchor),nt===rt){var gt=s.getRefType(nt);"domain"===gt?("y"===et&&(mt=1-mt),ht.tail=it._offset+it._length*mt):"paper"===gt?"y"===et?(mt=1-mt,ht.tail=T.t+T.h*mt):ht.tail=T.l+T.w*mt:ht.tail=it._offset+it.r2p(mt),K=tt}else ht.tail=$+mt,K=tt+mt;ht.text=ht.tail+tt;var yt=w["x"===et?"width":"height"];if("paper"===rt&&(ht.head=a.constrain(ht.head,1,yt-1)),"pixel"===nt){var vt=-Math.max(ht.tail-3,ht.text),xt=Math.min(ht.tail+3,ht.text)-yt;vt>0?(ht.tail+=vt,ht.text+=vt):xt>0&&(ht.tail-=xt,ht.text-=xt)}ht.tail+=ut,ht.head+=ut}else K=tt=lt*H(Q,ct),ht.text=$+tt;ht.text+=ut,tt+=ut,K+=ut,e["_"+et+"padplus"]=lt/2+K,e["_"+et+"padminus"]=lt/2-K,e["_"+et+"size"]=lt,e["_"+et+"shift"]=tt}if(Z)R.remove();else{var _t=0,bt=0;if("left"!==e.align&&(_t=(k-_)*("center"===e.align?.5:1)),"top"!==e.valign&&(bt=(O-b)*("middle"===e.valign?.5:1)),u)i.select("svg").attr({x:j+_t-1,y:j+bt}).call(c.setClipUrl,U?C:null,t);else{var wt=j+bt-d.top,Tt=j+_t-d.left;G.call(h.positionText,Tt,wt).call(c.setClipUrl,U?C:null,t)}V.select("rect").call(c.setRect,j,j,k,O),N.call(c.setRect,F/2,F/2,B-F,q-F),R.call(c.setTranslate,Math.round(I.x.text-B/2),Math.round(I.y.text-q/2)),z.attr({transform:"rotate("+L+","+I.x.text+","+I.y.text+")"});var At,kt=function(r,i){P.selectAll(".annotation-arrow-g").remove();var s=I.x.head,u=I.y.head,h=I.x.tail+r,p=I.y.tail+i,d=I.x.text+r,_=I.y.text+i,b=a.rotationXYMatrix(L,d,_),w=a.apply2DTransform(b),k=a.apply2DTransform2(b),C=+N.attr("width"),D=+N.attr("height"),O=d-.5*C,F=O+C,B=_-.5*D,j=B+D,U=[[O,B,O,j],[O,j,F,j],[F,j,F,B],[F,B,O,B]].map(k);if(!U.reduce((function(t,e){return t^!!a.segmentsIntersect(s,u,s+1e6,u+1e6,e[0],e[1],e[2],e[3])}),!1)){U.forEach((function(t){var e=a.segmentsIntersect(h,p,s,u,t[0],t[1],t[2],t[3]);e&&(h=e.x,p=e.y)}));var V=e.arrowwidth,q=e.arrowcolor,H=e.arrowside,G=P.append("g").style({opacity:l.opacity(q)}).classed("annotation-arrow-g",!0),W=G.append("path").attr("d","M"+h+","+p+"L"+s+","+u).style("stroke-width",V+"px").call(l.stroke,l.rgb(q));if(m(W,H,e),A.annotationPosition&&W.node().parentNode&&!g){var Z=s,Y=u;if(e.standoff){var X=Math.sqrt(Math.pow(s-h,2)+Math.pow(u-p,2));Z+=e.standoff*(h-s)/X,Y+=e.standoff*(p-u)/X}var $,K,J=G.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(h-Z)+","+(p-Y),transform:o(Z,Y)}).style("stroke-width",V+6+"px").call(l.stroke,"rgba(0,0,0,0)").call(l.fill,"rgba(0,0,0,0)");f.init({element:J.node(),gd:t,prepFn:function(){var t=c.getTranslate(R);$=t.x,K=t.y,v&&v.autorange&&M(v._name+".autorange",!0),x&&x.autorange&&M(x._name+".autorange",!0)},moveFn:function(t,r){var n=w($,K),i=n[0]+t,a=n[1]+r;R.call(c.setTranslate,i,a),S("x",y(v,t,"x",T,e)),S("y",y(x,r,"y",T,e)),e.axref===e.xref&&S("ax",y(v,t,"ax",T,e)),e.ayref===e.yref&&S("ay",y(x,r,"ay",T,e)),G.attr("transform",o(t,r)),z.attr({transform:"rotate("+L+","+i+","+a+")"})},doneFn:function(){n.call("_guiRelayout",t,E());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}};e.showarrow&&kt(0,0),D&&f.init({element:R.node(),gd:t,prepFn:function(){At=z.attr("transform")},moveFn:function(t,r){var n="pointer";if(e.showarrow)e.axref===e.xref?S("ax",y(v,t,"ax",T,e)):S("ax",e.ax+t),e.ayref===e.yref?S("ay",y(x,r,"ay",T.w,e)):S("ay",e.ay+r),kt(t,r);else{if(g)return;var i,a;if(v)i=y(v,t,"x",T,e);else{var s=e._xsize/T.w,l=e.x+(e._xshift-e.xshift)/T.w-s/2;i=f.align(l+t/T.w,s,0,1,e.xanchor)}if(x)a=y(x,r,"y",T,e);else{var c=e._ysize/T.h,u=e.y-(e._yshift+e.yshift)/T.h-c/2;a=f.align(u-r/T.h,c,0,1,e.yanchor)}S("x",i),S("y",a),(!v||!x)&&(n=f.getCursor(v?.5:i,x?.5:a,e.xanchor,e.yanchor))}z.attr({transform:o(t,r)+At}),p(R,n)},clickFn:function(r,n){e.captureevents&&t.emit("plotly_clickannotation",W(n))},doneFn:function(){p(R),n.call("_guiRelayout",t,E());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}}e.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(".annotation").remove();for(var r=0;r0||r.explicitOff.length>0},onClick:function(t,e){var o,s,l=a(t,e),c=l.on,u=l.off.concat(l.explicitOff),h={},p=t._fullLayout.annotations;if(c.length||u.length){for(o=0;o1){c=!0;break}}c?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+s+'"]').remove():(l._pdata=n(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*a[0],e.yaxis.r2l(l.y)*a[1],e.zaxis.r2l(l.z)*a[2]]),r(t.graphDiv,l,s,t.id,l._xa,l._ya))}}}}),Vi=f({"src/components/annotations3d/index.js"(t,e){var r=qt(),n=le();e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Fi()}}},layoutAttributes:Fi(),handleDefaults:Bi(),includeBasePlot:function(t,e){var i=r.subplotsRegistry.gl3d;if(i)for(var a=i.attrRegex,o=Object.keys(t),s=0;s0?p+c:c;return{ppad:c,ppadplus:u?d:m,ppadminus:u?m:d}}return{ppad:c}}function l(t,e,r){var n,o,s="x"===t._id.charAt(0)?"x":"y",l="category"===t.type||"multicategory"===t.type,c=0,u=0,h=l?t.r2c:t.d2c;if("scaled"===e[s+"sizemode"]?(n=e[s+"0"],o=e[s+"1"],l&&(c=e[s+"0shift"],u=e[s+"1shift"])):(n=e[s+"anchor"],o=e[s+"anchor"]),void 0!==n)return[h(n)+c,h(o)+u];if(e.path){var p,f,d,m,g=1/0,y=-1/0,v=e.path.match(i.segmentRE);for("date"===t.type&&(h=a.decodeDate(h)),p=0;py&&(y=m));if(y>=g)return[g,y]}}e.exports=function(t){var e,a=t._fullLayout,c=r.filterVisible(a.shapes);if(c.length&&t._fullData.length)for(var u=0;u0)&&(o("active"),o("direction"),o("type"),o("showactive"),o("x"),o("y"),r.noneOrAll(t,e,["x","y"]),o("xanchor"),o("yanchor"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),r.coerceFont(o,"font",a.font),o("bgcolor",a.paper_bgcolor),o("bordercolor"),o("borderwidth"))}function l(t,e){function n(n,i){return r.coerce(t,e,o,n,i)}n("visible","skip"===t.method||Array.isArray(t.args))&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}e.exports=function(t,e){n(t,e,{name:a,handleItemDefaults:s})}}}),ra=f({"src/components/updatemenus/scrollbox.js"(t,e){e.exports=o;var r=x(),n=H(),i=Qe(),a=le();function o(t,e,r){this.gd=t,this.container=e,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}o.barWidth=2,o.barLength=20,o.barRadius=2,o.barPad=1,o.barColor="#808BA4",o.prototype.enable=function(t,e,a){var s=this.gd._fullLayout,l=s.width,c=s.height;this.position=t;var u,h,p,f,d=this.position.l,m=this.position.w,g=this.position.t,y=this.position.h,v=this.position.direction,x="down"===v,_="left"===v,b="up"===v,w=m,T=y;!x&&!_&&!("right"===v)&&!b&&(this.position.direction="down",x=!0),x||b?(h=(u=d)+w,x?(p=g,T=(f=Math.min(p+T,c))-p):T=(f=g+T)-(p=Math.max(f-T,0))):(f=(p=g)+T,_?w=(h=d+w)-(u=Math.max(h-w,0)):(u=d,w=(h=Math.min(u+w,l))-u)),this._box={l:u,t:p,w,h:T};var A=m>w,k=o.barLength+2*o.barPad,M=o.barWidth+2*o.barPad,S=d,E=g+y;E+M>c&&(E=c-M);var C=this.container.selectAll("rect.scrollbar-horizontal").data(A?[0]:[]);C.exit().on(".drag",null).remove(),C.enter().append("rect").classed("scrollbar-horizontal",!0).call(n.fill,o.barColor),A?(this.hbar=C.attr({rx:o.barRadius,ry:o.barRadius,x:S,y:E,width:k,height:M}),this._hbarXMin=S+k/2,this._hbarTranslateMax=w-k):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=y>T,L=o.barWidth+2*o.barPad,P=o.barLength+2*o.barPad,z=d+m,D=g;z+L>l&&(z=l-L);var O=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-vertical",!0).call(n.fill,o.barColor),I?(this.vbar=O.attr({rx:o.barRadius,ry:o.barRadius,x:z,y:D,width:L,height:P}),this._vbarYMin=D+P/2,this._vbarTranslateMax=T-P):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var R=this.id,F=u-.5,B=I?h+L+.5:h+.5,j=p-.5,N=A?f+M+.5:f+.5,U=s._topdefs.selectAll("#"+R).data(A||I?[0]:[]);if(U.exit().remove(),U.enter().append("clipPath").attr("id",R).append("rect"),A||I?(this._clipRect=U.select("rect").attr({x:Math.floor(F),y:Math.floor(j),width:Math.ceil(B)-Math.floor(F),height:Math.ceil(N)-Math.floor(j)}),this.container.call(i.setClipUrl,R,this.gd),this.bg.attr({x:d,y:g,width:m,height:y})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.setClipUrl,null),delete this._clipRect),A||I){var V=r.behavior.drag().on("dragstart",(function(){r.event.sourceEvent.preventDefault()})).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(V);var q=r.behavior.drag().on("dragstart",(function(){r.event.sourceEvent.preventDefault(),r.event.sourceEvent.stopPropagation()})).on("drag",this._onBarDrag.bind(this));A&&this.hbar.on(".drag",null).call(q),I&&this.vbar.on(".drag",null).call(q)}this.setTranslate(e,a)},o.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},o.prototype._onBoxDrag=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t-=r.event.dx),this.vbar&&(e-=r.event.dy),this.setTranslate(t,e)},o.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=r.event.deltaY),this.vbar&&(e+=r.event.deltaY),this.setTranslate(t,e)},o.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax;t=(a.constrain(r.event.x,n,i)-n)/(i-n)*(this.position.w-this._box.w)}if(this.vbar){var o=e+this._vbarYMin,s=o+this._vbarTranslateMax;e=(a.constrain(r.event.y,o,s)-o)/(s-o)*(this.position.h-this._box.h)}this.setTranslate(t,e)},o.prototype.setTranslate=function(t,e){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(t=a.constrain(t||0,0,r),e=a.constrain(e||0,0,n),this.translateX=t,this.translateY=e,this.container.call(i.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var o=t/r;this.hbar.call(i.setTranslate,t+o*this._hbarTranslateMax,e)}if(this.vbar){var s=e/n;this.vbar.call(i.setTranslate,t,e+s*this._vbarTranslateMax)}}}}),na=f({"src/components/updatemenus/draw.js"(t,e){var r=x(),n=Ae(),i=H(),a=Qe(),o=le(),s=Se(),l=ye().arrayEditor,c=Me().LINE_SPACING,u=Qi(),h=ra();function p(t){return t._index}function f(t,e){return+t.attr(u.menuIndexAttrName)===e._index}function d(t,e,r,n,i,a,o,s){e.active=o,l(t.layout,u.name,e).applyUpdate("active",o),"buttons"===e.type?g(t,n,null,null,e):"dropdown"===e.type&&(i.attr(u.menuIndexAttrName,"-1"),m(t,n,i,a,e),s||g(t,n,i,a,e))}function m(t,e,r,n,i){var s=o.ensureSingle(e,"g",u.headerClassName,(function(t){t.style("pointer-events","all")})),l=i._dims,c=i.active,h=i.buttons[c]||u.blankHeaderOpts,p={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},d={width:l.headerWidth,height:l.headerHeight};s.call(y,i,h,t).call(M,i,p,d),o.ensureSingle(e,"text",u.headerArrowClassName,(function(t){t.attr("text-anchor","end").call(a.font,i.font).text(u.arrowSymbol[i.direction])})).attr({x:l.headerWidth-u.arrowOffsetX+i.pad.l,y:l.headerHeight/2+u.textOffsetY+i.pad.t}),s.on("click",(function(){r.call(S,String(f(r,i)?-1:i._index)),g(t,e,r,n,i)})),s.on("mouseover",(function(){s.call(w)})),s.on("mouseout",(function(){s.call(T,i)})),a.setTranslate(e,l.lx,l.ly)}function g(t,e,i,a,s){i||(i=e).attr("pointer-events","all");var l=function(t){return-1==+t.attr(u.menuIndexAttrName)}(i)&&"buttons"!==s.type?[]:s.buttons,c="dropdown"===s.type?u.dropdownButtonClassName:u.buttonClassName,h=i.selectAll("g."+c).data(o.filterVisible(l)),p=h.enter().append("g").classed(c,!0),f=h.exit();"dropdown"===s.type?(p.attr("opacity","0").transition().attr("opacity","1"),f.transition().attr("opacity","0").remove()):f.remove();var m=0,g=0,v=s._dims,x=-1!==["up","down"].indexOf(s.direction);"dropdown"===s.type&&(x?g=v.headerHeight+u.gapButtonHeader:m=v.headerWidth+u.gapButtonHeader),"dropdown"===s.type&&"up"===s.direction&&(g=-u.gapButtonHeader+u.gapButton-v.openHeight),"dropdown"===s.type&&"left"===s.direction&&(m=-u.gapButtonHeader+u.gapButton-v.openWidth);var _={x:v.lx+m+s.pad.l,y:v.ly+g+s.pad.t,yPad:u.gapButton,xPad:u.gapButton,index:0},A={l:_.x+s.borderwidth,t:_.y+s.borderwidth};h.each((function(o,l){var c=r.select(this);c.call(y,s,o,t).call(M,s,_),c.on("click",(function(){r.event.defaultPrevented||(o.execute&&(o.args2&&s.active===l?(d(t,s,0,e,i,a,-1),n.executeAPICommand(t,o.method,o.args2)):(d(t,s,0,e,i,a,l),n.executeAPICommand(t,o.method,o.args))),t.emit("plotly_buttonclicked",{menu:s,button:o,active:s.active}))})),c.on("mouseover",(function(){c.call(w)})),c.on("mouseout",(function(){c.call(T,s),h.call(b,s)}))})),h.call(b,s),x?(A.w=Math.max(v.openWidth,v.headerWidth),A.h=_.y-A.t):(A.w=_.x-A.l,A.h=Math.max(v.openHeight,v.headerHeight)),A.direction=s.direction,a&&(h.size()?function(t,e,r,n,i,a){var o,s,l,c=i.direction,h="up"===c||"down"===c,p=i._dims,f=i.active;if(h)for(s=0,l=0;l0?[0]:[]);if(s.enter().append("g").classed(u.containerClassName,!0).style("cursor","pointer"),s.exit().each((function(){r.select(this).selectAll("g."+u.headerGroupClassName).each(a)})).remove(),0!==i.length){var l=s.selectAll("g."+u.headerGroupClassName).data(i,p);l.enter().append("g").classed(u.headerGroupClassName,!0);for(var c=o.ensureSingle(s,"g",u.dropdownButtonGroupClassName,(function(t){t.style("pointer-events","all")})),y=0;y0&&(l=l.transition().duration(e.transition.duration).ease(e.transition.easing)),l.attr("transform",s(o-.5*u.gripWidth,e._dims.currentValueTotalHeight))}}function E(t,e){var r=t._dims;return r.inputAreaStart+u.stepInset+(r.inputAreaLength-2*u.stepInset)*Math.min(1,Math.max(0,e))}function C(t,e){var r=t._dims;return Math.min(1,Math.max(0,(e-u.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*u.stepInset-2*r.inputAreaStart)))}function I(t,e,r){var n=r._dims,s=o.ensureSingle(t,"rect",u.railTouchRectClass,(function(n){n.call(k,e,t,r).style("pointer-events","all")}));s.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,u.tickOffset+r.ticklen+n.labelHeight)}).call(i.fill,r.bgcolor).attr("opacity",0),a.setTranslate(s,0,n.currentValueTotalHeight)}function L(t,e){var r=e._dims,n=r.inputAreaLength-2*u.railInset,s=o.ensureSingle(t,"rect",u.railRectClass);s.attr({width:n,height:u.railWidth,rx:u.railRadius,ry:u.railRadius,"shape-rendering":"crispEdges"}).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px"),a.setTranslate(s,u.railInset,.5*(r.inputAreaWidth-u.railWidth)+r.currentValueTotalHeight)}e.exports=function(t){var e=t._context.staticPlot,i=t._fullLayout,o=function(t,e){for(var r=t[u.name],n=[],i=0;i0?[0]:[]);function l(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),n.autoMargin(t,m(e))}if(s.enter().append("g").classed(u.containerClassName,!0).style("cursor",e?null:"ew-resize"),s.exit().each((function(){r.select(this).selectAll("g."+u.groupClassName).each(l)})).remove(),0!==o.length){var c=s.selectAll("g."+u.groupClassName).data(o,g);c.enter().append("g").classed(u.groupClassName,!0),c.exit().each(l).remove();for(var h=0;h0?t.touches[0].clientX:0}function g(t,e,r,n){var i=a.ensureSingle(t,"rect",d.bgClassName,(function(t){t.attr({x:0,y:0,"shape-rendering":"crispEdges"})})),c=n.borderwidth%2==0?n.borderwidth:n.borderwidth-1,u=-n._offsetShift,h=s.crispRound(e,n.borderwidth);i.attr({width:n._width+c,height:n._height+c,transform:o(u,u),"stroke-width":h}).call(l.stroke,n.bordercolor).call(l.fill,n.bgcolor)}function y(t,e,r,n){var i=e._fullLayout;a.ensureSingleById(i._topdefs,"clipPath",n._clipId,(function(t){t.append("rect").attr({x:0,y:0})})).select("rect").attr({width:n._width,height:n._height})}function v(t,e,n,o){var l,c=e.calcdata,p=t.selectAll("g."+d.rangePlotClassName).data(n._subplotsWith,a.identity);p.enter().append("g").attr("class",(function(t){return d.rangePlotClassName+" "+t})).call(s.setClipUrl,o._clipId,e),p.order(),p.exit().remove(),p.each((function(t,a){var s=r.select(this),p=0===a,f=h.getFromId(e,t,"y"),d=f._name,m=o[d],g={data:[],layout:{xaxis:{type:n.type,domain:[0,1],range:o.range.slice(),calendar:n.calendar},width:o._width,height:o._height,margin:{t:0,b:0,l:0,r:0}},_context:e._context};n.rangebreaks&&(g.layout.xaxis.rangebreaks=n.rangebreaks),g.layout[d]={type:f.type,domain:[0,1],range:"match"!==m.rangemode?m.range.slice():f.range.slice(),calendar:f.calendar},f.rangebreaks&&(g.layout[d].rangebreaks=f.rangebreaks),i.supplyDefaults(g);var y=g._fullLayout.xaxis,v=g._fullLayout[d];y.clearCalc(),y.setScale(),v.clearCalc(),v.setScale();var x={id:t,plotgroup:s,xaxis:y,yaxis:v,isRangePlot:!0};p?l=x:(x.mainplot="xy",x.mainplotinfo=l),u.rangePlot(e,x,function(t,e){for(var r=[],n=0;n=n.max)e=B[r+1];else if(t=n.pmax)e=B[r+1];else if(ti._length||v+b<0)return;u=y+b,p=v+b;break;case l:if(_="col-resize",y+b>i._length)return;u=y+b,p=v;break;case c:if(_="col-resize",v+b<0)return;u=y,p=v+b;break;default:_="ew-resize",u=g,p=g+b}if(p0)){var m=function(t,e,r){for(var n=r.filter((function(r){return e[r].anchor===t._id})),i=0,a=0;a1){p||f||d||"independent"===A("pattern")&&(p=!0),g._hasSubplotGrid=p;var x,_,b="top to bottom"===A("roworder"),w=p?.2:.1,T=p?.3:.1;m&&e._splomGridDflt&&(x=e._splomGridDflt.xside,_=e._splomGridDflt.yside),g._domains={x:c("x",A,w,x,v),y:c("y",A,T,_,y,b)}}else delete e.grid}function A(t,e){return r.coerce(n,g,s,t,e)}},contentDefaults:function(t,e){var r=e.grid;if(r&&r._domains){var n,i,a,o,s,c,h,p=t.grid||{},f=e._subplots,d=r._hasSubplotGrid,m=r.rows,g=r.columns,y="independent"===r.pattern,v=r._axisMap={};if(d){var x=p.subplots||[];c=r.subplots=new Array(m);var _=1;for(n=0;n0,h=t._context.staticPlot;e.each((function(e){var p,f=e[0].trace,d=f.error_x||{},m=f.error_y||{};f.ids&&(p=function(t){return t.id});var g=a.hasMarkers(f)&&f.marker.maxdisplayed>0;!m.visible&&!d.visible&&(e=[]);var y=r.select(this).selectAll("g.errorbar").data(e,p);if(y.exit().remove(),e.length){d.visible||y.selectAll("path.xerror").remove(),m.visible||y.selectAll("path.yerror").remove(),y.style("opacity",1);var v=y.enter().append("g").classed("errorbar",!0);u&&v.style("opacity",0).transition().duration(s.duration).style("opacity",1),i.setClipUrl(y,o.layerClipId,t),y.each((function(t){var e=r.select(this),i=function(t,e,r){var i={x:e.c2p(t.x),y:r.c2p(t.y)};return void 0!==t.yh&&(i.yh=r.c2p(t.yh),i.ys=r.c2p(t.ys),n(i.ys)||(i.noYS=!0,i.ys=r.c2p(t.ys,!0))),void 0!==t.xh&&(i.xh=e.c2p(t.xh),i.xs=e.c2p(t.xs),n(i.xs)||(i.noXS=!0,i.xs=e.c2p(t.xs,!0))),i}(t,l,c);if(!g||t.vis){var a,o=e.select("path.yerror");if(m.visible&&n(i.x)&&n(i.yh)&&n(i.ys)){var p=m.width;a="M"+(i.x-p)+","+i.yh+"h"+2*p+"m-"+p+",0V"+i.ys,i.noYS||(a+="m-"+p+",0h"+2*p),o.size()?u&&(o=o.transition().duration(s.duration).ease(s.easing)):o=e.append("path").style("vector-effect",h?"none":"non-scaling-stroke").classed("yerror",!0),o.attr("d",a)}else o.remove();var f=e.select("path.xerror");if(d.visible&&n(i.y)&&n(i.xh)&&n(i.xs)){var y=(d.copy_ystyle?m:d).width;a="M"+i.xh+","+(i.y-y)+"v"+2*y+"m0,-"+y+"H"+i.xs,i.noXS||(a+="m0,-"+y+"v"+2*y),f.size()?u&&(f=f.transition().duration(s.duration).ease(s.easing)):f=e.append("path").style("vector-effect",h?"none":"non-scaling-stroke").classed("xerror",!0),f.attr("d",a)}else f.remove()}}))}}))}}}),La=f({"src/components/errorbars/style.js"(t,e){var r=x(),n=H();e.exports=function(t){t.each((function(t){var e=t[0].trace,i=e.error_y||{},a=e.error_x||{},o=r.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(n.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(n.stroke,a.color)}))}}}),Pa=f({"src/components/errorbars/index.js"(t,e){var r=le(),n=Pt().overrideAll,i=Ma(),a={error_x:r.extendFlat({},i),error_y:r.extendFlat({},i)};delete a.error_x.copy_zstyle,delete a.error_y.copy_zstyle,delete a.error_y.copy_ystyle;var o={error_x:r.extendFlat({},i),error_y:r.extendFlat({},i),error_z:r.extendFlat({},i)};delete o.error_x.copy_ystyle,delete o.error_y.copy_ystyle,delete o.error_z.copy_ystyle,delete o.error_z.copy_zstyle,e.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:a,bar:a,histogram:a,scatter3d:n(o,"calc","nested"),scattergl:n(a,"calc","nested")}},supplyDefaults:Sa(),calc:Ca(),makeComputeError:Ea(),plot:Ia(),style:La(),hoverInfo:function(t,e,r){(e.error_y||{}).visible&&(r.yerr=t.yh-t.y,e.error_y.symmetric||(r.yerrneg=t.y-t.ys)),(e.error_x||{}).visible&&(r.xerr=t.xh-t.x,e.error_x.symmetric||(r.xerrneg=t.x-t.xs))}}}}),za=f({"src/components/colorbar/constants.js"(t,e){e.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}}}),Da=f({"src/components/colorbar/draw.js"(t,e){var r=x(),n=O(),i=Ae(),a=qt(),o=ir(),s=pr(),l=le(),c=l.strTranslate,u=R().extendFlat,h=fr(),p=Qe(),f=H(),d=tr(),m=Se(),g=Ee().flipScale,y=Ti(),v=Ai(),_=Ie(),b=Me(),w=b.LINE_SPACING,T=b.FROM_TL,A=b.FROM_BR,k=za().cn;e.exports={draw:function(t){var e=t._fullLayout._infolayer.selectAll("g."+k.colorbar).data(function(t){var e,r,n,i,a=t._fullLayout,o=t.calcdata,s=[];function l(t){return u(t,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function c(){"function"==typeof i.calc?i.calc(t,n,e):(e._fillgradient=r.reversescale?g(r.colorscale):r.colorscale,e._zrange=[r[i.min],r[i.max]])}for(var h=0;h0?n>=l:n<=l));i++)n>u&&n0?n>=l:n<=l));i++)n>r[0]&&n1){var ft=Math.pow(10,Math.floor(Math.log(pt)/Math.LN10));ut*=ft*l.roundUp(pt/ft,[2,5,10]),(Math.abs(W.start)/W.size+1e-6)%1<2e-6&&(lt.tick0=0)}lt.dtick=ut}lt.domain=s?[ot+P/B.h,ot+Q-P/B.h]:[ot+L/B.w,ot+Q-L/B.w],lt.setScale(),t.attr("transform",c(Math.round(B.l),Math.round(B.t)));var dt,mt=t.select("."+k.cbtitleunshift).attr("transform",c(-Math.round(B.l),-Math.round(B.t))),gt=lt.ticklabelposition,yt=lt.title.font.size,vt=t.select("."+k.cbaxis),xt=0,_t=0;function bt(r,n){var i={propContainer:lt,propName:e._propPrefix+"title",traceIndex:e._traceIndex,_meta:e._meta,placeholder:F._dfltTitle.colorbar,containerGroup:t.select("."+k.cbtitle)},o="h"===r.charAt(0)?r.substr(1):"h"+r;t.selectAll("."+o+",."+o+"-math-group").remove(),d.draw(a,r,u(i,n||{}))}return l.syncOrAsync([i.previousPromises,function(){var t,e;(s&&ct||!s&&!ct)&&("top"===V&&(t=L+B.l+tt*z,e=P+B.t+et*(1-ot-Q)+3+.75*yt),"bottom"===V&&(t=L+B.l+tt*z,e=P+B.t+et*(1-ot)-3-.25*yt),"right"===V&&(e=P+B.t+et*D+3+.75*yt,t=L+B.l+tt*ot),bt(lt._id+"title",{attributes:{x:t,y:e,"text-anchor":s?"start":"middle"}}))},function(){if(!s&&!ct||s&&ct){var i,u=t.select("."+k.cbtitle),h=u.select("text"),f=[-M/2,M/2],d=u.select(".h"+lt._id+"title-math-group").node(),g=15.6;if(h.node()&&(g=parseInt(h.node().style.fontSize,10)*w),d?(i=p.bBox(d),_t=i.width,(xt=i.height)>g&&(f[1]-=(xt-g)/2)):h.node()&&!h.classed(k.jsPlaceholder)&&(i=p.bBox(h.node()),_t=i.width,xt=i.height),s){if(xt){if(xt+=5,"top"===V)lt.domain[1]-=xt/B.h,f[1]*=-1;else{lt.domain[0]+=xt/B.h;var y=m.lineCount(h);f[1]+=(1-y)*g}u.attr("transform",c(f[0],f[1])),lt.setScale()}}else _t&&("right"===V&&(lt.domain[0]+=(_t+yt/2)/B.w),u.attr("transform",c(f[0],f[1])),lt.setScale())}t.selectAll("."+k.cbfills+",."+k.cblines).attr("transform",s?c(0,Math.round(B.h*(1-lt.domain[1]))):c(Math.round(B.w*lt.domain[0]),0)),vt.attr("transform",s?c(0,Math.round(-B.t)):c(Math.round(-B.l),0));var v=t.select("."+k.cbfills).selectAll("rect."+k.cbfill).attr("style","").data(Y);v.enter().append("rect").classed(k.cbfill,!0).attr("style",""),v.exit().remove();var x=q.map(lt.c2p).map(Math.round).sort((function(t,e){return t-e}));v.each((function(t,i){var o=[0===i?q[0]:(Y[i]+Y[i-1])/2,i===Y.length-1?q[1]:(Y[i]+Y[i+1])/2].map(lt.c2p).map(Math.round);s&&(o[1]=l.constrain(o[1]+(o[1]>o[0])?1:-1,x[0],x[1]));var c=r.select(this).attr(s?"x":"y",rt).attr(s?"y":"x",r.min(o)).attr(s?"width":"height",Math.max($,2)).attr(s?"height":"width",Math.max(r.max(o)-r.min(o),2));if(e._fillgradient)p.gradient(c,a,e._id,s?"vertical":"horizontalreversed",e._fillgradient,"fill");else{var u=G(t).replace("e-","");c.attr("fill",n(u).toHexString())}}));var _=t.select("."+k.cblines).selectAll("path."+k.cbline).data(N.color&&N.width?X:[]);_.enter().append("path").classed(k.cbline,!0),_.exit().remove(),_.each((function(t){var e=rt,n=Math.round(lt.c2p(t))+N.width/2%1;r.select(this).attr("d","M"+(s?e+","+n:n+","+e)+(s?"h":"v")+$).call(p.lineGroupStyle,N.width,H(t),N.dash)})),vt.selectAll("g."+lt._id+"tick,path").remove();var b=rt+$+(M||0)/2-("outside"===e.ticks?1:0),T=o.calcTicks(lt),A=o.getTickSigns(lt)[2];return o.drawTicks(a,lt,{vals:"inside"===lt.ticks?o.clipEnds(lt,T):T,layer:vt,path:o.makeTickPath(lt,b,A),transFn:o.makeTransTickFn(lt)}),o.drawLabels(a,lt,{vals:T,layer:vt,transFn:o.makeTransTickLabelFn(lt),labelFns:o.makeLabelFns(lt,b)})},function(){if(s&&!ct||!s&&ct){var t,n,i=lt.position||0,o=lt._offset+lt._length/2;if("right"===V)n=o,t=B.l+tt*i+10+yt*(lt.showticklabels?1:.5);else if(t=o,"bottom"===V&&(n=B.t+et*i+10+(-1===gt.indexOf("inside")?lt.tickfont.size:0)+("intside"!==lt.ticks&&e.ticklen||0)),"top"===V){var l=U.text.split("
").length;n=B.t+et*i+10-$-w*yt*l}bt((s?"h":"v")+lt._id+"title",{avoid:{selection:r.select(a).selectAll("g."+lt._id+"tick"),side:V,offsetTop:s?0:B.t,offsetLeft:s?B.l:0,maxShift:s?F.width:F.height},attributes:{x:t,y:n,"text-anchor":"middle"},transform:{rotate:s?-90:0,offset:0}})}},i.previousPromises,function(){var r,o=$+M/2;-1===gt.indexOf("inside")&&(r=p.bBox(vt.node()),o+=s?r.width:r.height),dt=mt.select("text");var l=0,u=s&&"top"===V,d=!s&&"right"===V,m=0;if(dt.node()&&!dt.classed(k.jsPlaceholder)){var y,v=mt.select(".h"+lt._id+"title-math-group").node();v&&(s&&ct||!s&&!ct)?(l=(r=p.bBox(v)).width,y=r.height):(l=(r=p.bBox(mt.node())).right-B.l-(s?rt:st),y=r.bottom-B.t-(s?st:rt),!s&&"top"===V&&(o+=r.height,m=r.height)),d&&(dt.attr("transform",c(l/2+yt/2,0)),l*=2),o=Math.max(o,s?l:y)}var _=2*(s?L:P)+o+S+M/2,w=0;!s&&U.text&&"bottom"===I&&D<=0&&(_+=w=_/2,m+=w),F._hColorbarMoveTitle=w,F._hColorbarMoveCBTitle=m;var j=S+M,N=(s?rt:st)-j/2-(s?L:0),q=(s?st:rt)-(s?J:P+m-w);t.select("."+k.cbbg).attr("x",N).attr("y",q).attr(s?"width":"height",Math.max(_-w,2)).attr(s?"height":"width",Math.max(J+j,2)).call(f.fill,E).call(f.stroke,e.bordercolor).style("stroke-width",S);var H=d?Math.max(l-10,0):0;t.selectAll("."+k.cboutline).attr("x",(s?rt:st+L)+H).attr("y",(s?st+P-J:rt)+(u?xt:0)).attr(s?"width":"height",Math.max($,2)).attr(s?"height":"width",Math.max(J-(s?2*P+xt:2*L+H),2)).call(f.stroke,e.outlinecolor).style({fill:"none","stroke-width":M});var G=s?nt*_:0,W=s?0:(1-it)*_-m;if(G=R?B.l-G:-G,W=O?B.t-W:-W,t.attr("transform",c(G,W)),!s&&(S||n(E).getAlpha()&&!n.equals(F.paper_bgcolor,E))){var Z=vt.selectAll("text"),Y=Z[0].length,X=t.select("."+k.cbbg).node(),K=p.bBox(X),Q=p.getTranslate(t);Z.each((function(t,e){var r=Y-1;if(0===e||e===r){var n,i=p.bBox(this),a=p.getTranslate(this);if(e===r){var o=i.right+a.x;(n=K.right+Q.x+st-S-2+z-o)>0&&(n=0)}else if(0===e){var s=i.left+a.x;(n=K.left+Q.x+st+S+2-s)<0&&(n=0)}n&&(Y<3?this.setAttribute("transform","translate("+n+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}}))}var tt={},et=T[C],at=A[C],ot=T[I],ut=A[I],ht=_-$;s?("pixels"===g?(tt.y=D,tt.t=J*ot,tt.b=J*ut):(tt.t=tt.b=0,tt.yt=D+h*ot,tt.yb=D-h*ut),"pixels"===b?(tt.x=z,tt.l=_*et,tt.r=_*at):(tt.l=ht*et,tt.r=ht*at,tt.xl=z-x*et,tt.xr=z+x*at)):("pixels"===g?(tt.x=z,tt.l=J*et,tt.r=J*at):(tt.l=tt.r=0,tt.xl=z+h*et,tt.xr=z-h*at),"pixels"===b?(tt.y=1-D,tt.t=_*ot,tt.b=_*ut):(tt.t=ht*ot,tt.b=ht*ut,tt.yt=D-x*ot,tt.yb=D+x*ut));var pt=e.y<.5?"b":"t",ft=e.x<.5?"l":"r";a._fullLayout._reservedMargin[e._id]={};var _t={r:F.width-N-G,l:N+tt.r,b:F.height-q-W,t:q+tt.b};R&&O?i.autoMargin(a,e._id,tt):R?a._fullLayout._reservedMargin[e._id][pt]=_t[pt]:O||s?a._fullLayout._reservedMargin[e._id][ft]=_t[ft]:a._fullLayout._reservedMargin[e._id][pt]=_t[pt]}],a)}(g,e,t);x&&x.then&&(t._promises||[]).push(x),t._context.edits.colorbarPosition&&function(t,e,r){var n,i,o,l="v"===e.orientation,u=r._fullLayout._size;s.init({element:t.node(),gd:r,prepFn:function(){n=t.attr("transform"),h(t)},moveFn:function(r,a){t.attr("transform",n+c(r,a)),i=s.align((l?e._uFrac:e._vFrac)+r/u.w,l?e._thickFrac:e._lenFrac,0,1,e.xanchor),o=s.align((l?e._vFrac:1-e._uFrac)-a/u.h,l?e._lenFrac:e._thickFrac,0,1,e.yanchor);var p=s.getCursor(i,o,e.xanchor,e.yanchor);h(t,p)},doneFn:function(){if(h(t),void 0!==i&&void 0!==o){var n={};n[e._propPrefix+"x"]=i,n[e._propPrefix+"y"]=o,void 0!==e._traceIndex?a.call("_guiRestyle",r,n,e._traceIndex):a.call("_guiRelayout",r,n)}}})}(g,e,t)})),e.exit().each((function(e){i.autoMargin(t,e._id)})).remove(),e.order()}}}}),Oa=f({"src/components/colorbar/index.js"(t,e){e.exports={moduleType:"component",name:"colorbar",attributes:Le(),supplyDefaults:Ve(),draw:Da().draw,hasColorbar:De()}}}),Ra=f({"src/components/legend/index.js"(t,e){e.exports={moduleType:"component",name:"legend",layoutAttributes:mr(),supplyLayoutDefaults:yr(),draw:kr(),style:Ar()}}}),Fa=f({"src/locale-en.js"(t,e){e.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}}}),Ba=f({"src/locale-en-us.js"(t,e){e.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}}}),ja=f({"src/snapshot/cloneplot.js"(t,e){var r=qt(),n=le(),i=n.extendFlat,a=n.extendDeep;function o(t){var e;switch(t){case"themes__thumb":e={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":e={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:e={}}return e}e.exports=function(t,e){var n,s,l=t.data,c=t.layout,u=a([],l),h=a({},c,o(e.tileClass)),p=t._context||{};if(e.width&&(h.width=e.width),e.height&&(h.height=e.height),"thumbnail"===e.tileClass||"themes__thumb"===e.tileClass){h.annotations=[];var f=Object.keys(h);for(n=0;n-1&&(h[f[n]].title={text:""});for(n=0;n=0)return t}else if("string"==typeof t&&"%"===(t=t.trim()).slice(-1)&&r(t.slice(0,-1))&&(t=+t.slice(0,-1))>=0)return t+"%"}function f(t,e,r,i,a,o){var s=!1!==(o=o||{}).moduleHasSelected,l=!1!==o.moduleHasUnselected,c=!1!==o.moduleHasConstrain,u=!1!==o.moduleHasCliponaxis,p=!1!==o.moduleHasTextangle,f=!1!==o.moduleHasInsideanchor,d=!!o.hasPathbar,m=Array.isArray(a)||"auto"===a,g=m||"inside"===a,y=m||"outside"===a;if(g||y){var v=h(i,"textfont",r.font),x=n.extendFlat({},v),_=!(t.textfont&&t.textfont.color);if(_&&delete x.color,h(i,"insidetextfont",x),d){var b=n.extendFlat({},v);_&&delete b.color,h(i,"pathbar.textfont",b)}y&&h(i,"outsidetextfont",v),s&&i("selected.textfont.color"),l&&i("unselected.textfont.color"),c&&i("constraintext"),u&&i("cliponaxis"),p&&i("textangle"),i("texttemplate")}g&&f&&i("insidetextanchor")}e.exports={supplyDefaults:function(t,e,r,c){function h(r,i){return n.coerce(t,e,u,r,i)}if(o(t,e,c,h)){s(t,e,c,h),h("xhoverformat"),h("yhoverformat"),h("zorder"),h("orientation",e.x&&!e.y?"h":"v"),h("base"),h("offset"),h("width"),h("text"),h("hovertext"),h("hovertemplate");var p=h("textposition");f(t,0,c,h,p,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),l(t,e,h,r,c);var d=(e.marker.line||{}).color,m=a.getComponentMethod("errorbars","supplyDefaults");m(t,e,d||i.defaultLine,{axis:"y"}),m(t,e,d||i.defaultLine,{axis:"x",inherit:"y"}),n.coerceSelectionMarkerOpacity(e,h)}else e.visible=!1},crossTraceDefaults:function(t,e){var r,i;function a(t,e){return n.coerce(i._input,i,u,t,e)}for(var o=0;o0&&!p[y]&&(h=!0),p[y]=!0),g.visible&&"histogram"===g.type&&"category"!==n.getFromId({_fullLayout:e},g["v"===g.orientation?"xaxis":"yaxis"]).type&&(u=!0)}}if(c){"overlay"!==f&&l("barnorm"),l("bargap",u&&!h?0:.2),l("bargroupgap");var v=l("barcornerradius");e.barcornerradius=o(v)}else delete e.barmode}}}),$a=f({"src/traces/bar/arrays_to_calcdata.js"(t,e){var r=le();e.exports=function(t,e){for(var n=0;na))return r}return void 0!==n?n:t.dflt},t.coerceColor=function(t,e,n){return r(e).isValid()?e:void 0!==n?n:t.dflt},t.coerceEnumerated=function(t,e,r){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==r?r:t.dflt},t.getValue=function(t,e){var r;return n(t)?e1||0===i.bargap&&0===i.bargroupgap&&!t[0].trace.marker.line.width)&&r.select(this).attr("shape-rendering","crispEdges")})),e.selectAll("g.points").each((function(e){f(r.select(this),e[0].trace,t)})),o.getComponentMethod("errorbars","style")(e)},styleTextPoints:d,styleOnSelect:function(t,e,n){var s=e[0].trace;s.selectedpoints?function(t,e,n){i.selectedPointStyle(t.selectAll("path"),e),function(t,e,n){t.each((function(t){var o,s=r.select(this);if(t.selected){o=a.ensureUniformFontSize(n,m(s,t,e,n));var l=e.selected.textfont&&e.selected.textfont.color;l&&(o.color=l),i.font(s,o)}else i.selectedTextStyle(s,e)}))}(t.selectAll("text"),e,n)}(n,s,t):(f(n,s,t),o.getComponentMethod("errorbars","style")(n))},getInsideTextFont:y,getOutsideTextFont:v,getBarColor:b,resizeText:s}}}),eo=f({"src/traces/bar/plot.js"(t,e){var r=x(),n=A(),i=le(),a=Se(),o=H(),s=Qe(),l=qt(),c=ir().tickText,u=Ja(),h=u.recordMinTextSize,p=u.clearMinTextSize,f=to(),d=Qa(),m=Ha(),g=Ga(),y=g.text,v=g.textposition,_=$e().appendArrayPointValue,b=m.TEXTPAD;function w(t){return t.id}function T(t){return(t>0)-(t<0)}function k(t,e){return t0}function E(t,e,r,n,i){return!(t<0||e<0)&&(r<=t&&n<=e||r<=e&&n<=t||(i?t>=r*(e/n):e>=n*(t/r)))}function C(t){return"auto"===t?0:t}function I(t,e){var r=Math.PI/180*e,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:t.width*i+t.height*n,y:t.width*n+t.height*i}}function L(t,e,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,c=a.anchor,u="end"===c,h="start"===c,p=((a.leftToRight||0)+1)/2,f=1-p,d=a.hasB,m=a.r,g=a.overhead,y=i.width,v=i.height,x=Math.abs(e-t),_=Math.abs(n-r),w=x>2*b&&_>2*b?b:0;x-=2*w,_-=2*w;var T=C(l);"auto"===l&&!(y<=x&&v<=_)&&(y>x||v>_)&&(!(y>_||v>x)||yb){var E=function(t,e,r,n,i,a,o,s,l){var c,u,h,p,f=Math.max(0,Math.abs(e-t)-2*b),d=Math.max(0,Math.abs(n-r)-2*b),m=a-b,g=o?m-Math.sqrt(m*m-(m-o)*(m-o)):m,y=l?2*m:s?m-o:2*g,v=l?2*m:s?2*g:m-o;return i.y/i.x>=d/(f-y)?p=d/i.y:i.y/i.x<=(d-v)/f?p=f/i.x:!l&&s?(c=i.x*i.x+i.y*i.y/4,h=(f-m)*(f-m)+(d/2-m)*(d/2-m)-m*m,p=(-(u=-2*i.x*(f-m)-i.y*(d/2-m))+Math.sqrt(u*u-4*c*h))/(2*c)):l?(c=(i.x*i.x+i.y*i.y)/4,h=(f/2-m)*(f/2-m)+(d/2-m)*(d/2-m)-m*m,p=(-(u=-i.x*(f/2-m)-i.y*(d/2-m))+Math.sqrt(u*u-4*c*h))/(2*c)):(c=i.x*i.x/4+i.y*i.y,h=(f/2-m)*(f/2-m)+(d-m)*(d-m)-m*m,p=(-(u=-i.x*(f/2-m)-2*i.y*(d-m))+Math.sqrt(u*u-4*c*h))/(2*c)),{scale:p=Math.min(1,p),pad:s?Math.max(0,m-Math.sqrt(Math.max(0,m*m-(m-(d-i.y*p)/2)*(m-(d-i.y*p)/2)))-o):Math.max(0,m-Math.sqrt(Math.max(0,m*m-(m-(f-i.x*p)/2)*(m-(f-i.x*p)/2)))-o)}}(t,e,r,n,S,m,g,o,d);A=E.scale,M=E.pad}else A=1,s&&(A=Math.min(1,x/S.x,_/S.y)),M=0;var L=i.left*f+i.right*p,P=(i.top+i.bottom)/2,z=(t+b)*f+(e-b)*p,D=(r+n)/2,O=0,R=0;if(h||u){var F=(o?S.x:S.y)/2;m&&(u||d)&&(w+=M);var B=o?k(t,e):k(r,n);o?h?(z=t+B*w,O=-B*F):(z=e-B*w,O=B*F):h?(D=r+B*w,R=-B*F):(D=n-B*w,R=B*F)}return{textX:L,textY:P,targetX:z,targetY:D,anchorX:O,anchorY:R,scale:A,rotate:T}}e.exports={plot:function(t,e,u,m,g,x){var A=e.xaxis,P=e.yaxis,z=t._fullLayout,D=t._context.staticPlot;g||(g={mode:z.barmode,norm:z.barmode,gap:z.bargap,groupgap:z.bargroupgap},p("bar",z));var O=i.makeTraceGroups(m,u,"trace bars").each((function(l){var u=r.select(this),p=l[0].trace,m=l[0].t,O="waterfall"===p.type,R="funnel"===p.type,F="histogram"===p.type,B="bar"===p.type,j=B||R,N=0;O&&p.connector.visible&&"between"===p.connector.mode&&(N=p.connector.line.width/2);var U="h"===p.orientation,V=S(g),q=i.ensureSingle(u,"g","points"),H=function(t){if(t.ids)return w}(p),G=q.selectAll("g.point").data(i.identity,H);G.enter().append("g").classed("point",!0),G.exit().remove(),G.each((function(u,w){var S,O,R=r.select(this),q=function(t,e,r,n){var i=[],a=[],o=n?e:r,s=n?r:e;return i[0]=o.c2p(t.s0,!0),a[0]=s.c2p(t.p0,!0),i[1]=o.c2p(t.s1,!0),a[1]=s.c2p(t.p1,!0),n?[i,a]:[a,i]}(u,A,P,U),H=q[0][0],G=q[0][1],W=q[1][0],Z=q[1][1],Y=0==(U?G-H:Z-W);if(Y&&j&&d.getLineWidth(p,u)&&(Y=!1),Y||(Y=!(n(H)&&n(G)&&n(W)&&n(Z))),u.isBlank=Y,Y&&(U?G=H:Z=W),N&&!Y&&(U?(H-=k(H,G)*N,G+=k(H,G)*N):(W-=k(W,Z)*N,Z+=k(W,Z)*N)),"waterfall"===p.type){if(!Y){var X=p[u.dir].marker;S=X.line.width,O=X.color}}else S=d.getLineWidth(p,u),O=u.mc||p.marker.color;function $(t){var e=r.round(S/2%1,2);return 0===g.gap&&0===g.groupgap?r.round(Math.round(t)-e,2):t}var K=o.opacity(O)<1||S>.01?$:function(t,e,r){return r&&t===e?t:Math.abs(t-e)>=2?$(t):t>e?Math.ceil(t):Math.floor(t)};t._context.staticPlot||(H=K(H,G,U),G=K(G,H,U),W=K(W,Z,!U),Z=K(Z,W,!U));var J,Q=U?A.c2p:P.c2p;J=u.s0>0?u._sMax:u.s0<0?u._sMin:u.s1>0?u._sMax:u._sMin;var tt,et,rt=B||F?function(t,e){if(!t)return 0;var r,n=Math.abs(U?Z-W:G-H),i=Math.abs(U?G-H:Z-W),a=K(Math.abs(Q(J,!0)-Q(0,!0))),o=u.hasB?Math.min(n/2,i/2):Math.min(n/2,a);return r="%"===e?n*(Math.min(50,t)/100):t,K(Math.max(Math.min(r,o),0))}(m.cornerradiusvalue,m.cornerradiusform):0,nt="M"+H+","+W+"V"+Z+"H"+G+"V"+W+"Z",it=0;if(rt&&u.s){var at=0===T(u.s0)||T(u.s)===T(u.s0)?u.s1:u.s0;if((it=K(u.hasB?0:Math.abs(Q(J,!0)-Q(at,!0))))0?Math.sqrt(it*(2*rt-it)):0,ht=ot>0?Math.max:Math.min;tt="M"+H+","+W+"V"+(Z-ct*st)+"H"+ht(G-(rt-it)*ot,H)+"A "+rt+","+rt+" 0 0 "+lt+" "+G+","+(Z-rt*st-ut)+"V"+(W+rt*st+ut)+"A "+rt+","+rt+" 0 0 "+lt+" "+ht(G-(rt-it)*ot,H)+","+(W+ct*st)+"Z"}else if(u.hasB)tt="M"+(H+rt*ot)+","+W+"A "+rt+","+rt+" 0 0 "+lt+" "+H+","+(W+rt*st)+"V"+(Z-rt*st)+"A "+rt+","+rt+" 0 0 "+lt+" "+(H+rt*ot)+","+Z+"H"+(G-rt*ot)+"A "+rt+","+rt+" 0 0 "+lt+" "+G+","+(Z-rt*st)+"V"+(W+rt*st)+"A "+rt+","+rt+" 0 0 "+lt+" "+(G-rt*ot)+","+W+"Z";else{var pt=(et=Math.abs(Z-W)+it)0?Math.sqrt(it*(2*rt-it)):0,dt=st>0?Math.max:Math.min;tt="M"+(H+pt*ot)+","+W+"V"+dt(Z-(rt-it)*st,W)+"A "+rt+","+rt+" 0 0 "+lt+" "+(H+rt*ot-ft)+","+Z+"H"+(G-rt*ot+ft)+"A "+rt+","+rt+" 0 0 "+lt+" "+(G-pt*ot)+","+dt(Z-(rt-it)*st,W)+"V"+W+"Z"}}else tt=nt}else tt=nt;var mt=M(i.ensureSingle(R,"path"),z,g,x);if(mt.style("vector-effect",D?"none":"non-scaling-stroke").attr("d",isNaN((G-H)*(Z-W))||Y&&t._context.staticPlot?"M0,0Z":tt).call(s.setClipUrl,e.layerClipId,t),!z.uniformtext.mode&&V){var gt=s.makePointStyleFns(p);s.singlePointStyle(u,mt,p,gt,t)}(function(t,e,r,n,o,l,u,p,m,g,x,w,T){var A,S=e.xaxis,P=e.yaxis,z=t._fullLayout;function D(e,r,n){return i.ensureSingle(e,"text").text(r).attr({class:"bartext bartext-"+A,"text-anchor":"middle","data-notex":1}).call(s.font,n).call(a.convertToTspans,t)}var O=n[0].trace,R="h"===O.orientation,F=function(t,e,r,n,a){var o,s=e[0].trace;return o=s.texttemplate?function(t,e,r,n,a){var o=e[0].trace,s=i.castOption(o,r,"texttemplate");if(!s)return"";var l,u,h,p,f="histogram"===o.type,d="waterfall"===o.type,m="funnel"===o.type,g="h"===o.orientation;function y(t){return c(p,p.c2l(t),!0).text}g?(l="y",u=a,h="x",p=n):(l="x",u=n,h="y",p=a);var v=e[r],x={};x.label=v.p,x.labelLabel=x[l+"Label"]=function(t){return c(u,u.c2l(t),!0).text}(v.p);var b=i.castOption(o,v.i,"text");(0===b||b)&&(x.text=b),x.value=v.s,x.valueLabel=x[h+"Label"]=y(v.s);var w={};_(w,o,v.i),(f||void 0===w.x)&&(w.x=g?x.value:x.label),(f||void 0===w.y)&&(w.y=g?x.label:x.value),(f||void 0===w.xLabel)&&(w.xLabel=g?x.valueLabel:x.labelLabel),(f||void 0===w.yLabel)&&(w.yLabel=g?x.labelLabel:x.valueLabel),d&&(x.delta=+v.rawS||v.s,x.deltaLabel=y(x.delta),x.final=v.v,x.finalLabel=y(x.final),x.initial=x.final-x.delta,x.initialLabel=y(x.initial)),m&&(x.value=v.s,x.valueLabel=y(x.value),x.percentInitial=v.begR,x.percentInitialLabel=i.formatPercent(v.begR),x.percentPrevious=v.difR,x.percentPreviousLabel=i.formatPercent(v.difR),x.percentTotal=v.sumR,x.percenTotalLabel=i.formatPercent(v.sumR));var T=i.castOption(o,v.i,"customdata");return T&&(x.customdata=T),i.texttemplateString(s,x,t._d3locale,w,x,o._meta||{})}(t,e,r,n,a):s.textinfo?function(t,e,r,n){var a=t[0].trace,o="h"===a.orientation,s="waterfall"===a.type,l="funnel"===a.type;function u(t){return c(o?r:n,+t,!0).text}var h,p=a.textinfo,f=t[e],d=p.split("+"),m=[],g=function(t){return-1!==d.indexOf(t)};if(g("label")&&m.push(function(t){return c(o?n:r,t,!0).text}(t[e].p)),g("text")&&(0===(h=i.castOption(a,f.i,"text"))||h)&&m.push(h),s){var y=+f.rawS||f.s,v=f.v,x=v-y;g("initial")&&m.push(u(x)),g("delta")&&m.push(u(y)),g("final")&&m.push(u(v))}if(l){g("value")&&m.push(u(f.s));var _=0;g("percent initial")&&_++,g("percent previous")&&_++,g("percent total")&&_++;var b=_>1;g("percent initial")&&(h=i.formatPercent(f.begR),b&&(h+=" of initial"),m.push(h)),g("percent previous")&&(h=i.formatPercent(f.difR),b&&(h+=" of previous"),m.push(h)),g("percent total")&&(h=i.formatPercent(f.sumR),b&&(h+=" of total"),m.push(h))}return m.join("
")}(e,r,n,a):d.getValue(s.text,r),d.coerceString(y,o)}(z,n,o,S,P);A=function(t,e){var r=d.getValue(t.textposition,e);return d.coerceEnumerated(v,r)}(O,o);var B="stack"===w.mode||"relative"===w.mode,j=n[o],N=!B||j._outmost,U=j.hasB,V=g&&g-x>b;if(F&&"none"!==A&&(!j.isBlank&&l!==u&&p!==m||"auto"!==A&&"inside"!==A)){var q=z.font,H=f.getBarColor(n[o],O),G=f.getInsideTextFont(O,o,q,H),W=f.getOutsideTextFont(O,o,q),Z=O.insidetextanchor||"end",Y=r.datum();R?"log"===S.type&&Y.s0<=0&&(l=S.range[0]0&&J>0;it=V?U?E(rt-2*g,nt,K,J,R)||E(rt,nt-2*g,K,J,R):R?E(rt-(g-x),nt,K,J,R)||E(rt,nt-2*(g-x),K,J,R):E(rt,nt-(g-x),K,J,R)||E(rt-2*(g-x),nt,K,J,R):E(rt,nt,K,J,R),at&&it?A="inside":(A="outside",X.remove(),X=null)}else A="inside";if(!X){var ot=(X=D(r,F,Q=i.ensureUniformFontSize(t,"outside"===A?W:G))).attr("transform");if(X.attr("transform",""),K=($=s.bBox(X.node())).width,J=$.height,X.attr("transform",ot),K<=0||J<=0)return void X.remove()}var st,lt=O.textangle;"outside"===A?st=function(t,e,r,n,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,c=a.angle||0,u=i.width,h=i.height,p=Math.abs(e-t),f=Math.abs(n-r);o=s?f>2*b?b:0:p>2*b?b:0;var d=1;l&&(d=s?Math.min(1,f/h):Math.min(1,p/u));var m=C(c),g=I(i,m),y=(s?g.x:g.y)/2,v=(i.left+i.right)/2,x=(i.top+i.bottom)/2,_=(t+e)/2,w=(r+n)/2,T=0,A=0,M=s?k(e,t):k(r,n);return s?(_=e-M*o,T=M*y):(w=n+M*o,A=-M*y),{textX:v,textY:x,targetX:_,targetY:w,anchorX:T,anchorY:A,scale:d,rotate:m}}(l,u,p,m,$,{isHorizontal:R,constrained:"both"===O.constraintext||"outside"===O.constraintext,angle:lt}):st=L(l,u,p,m,$,{isHorizontal:R,constrained:"both"===O.constraintext||"inside"===O.constraintext,angle:lt,anchor:Z,hasB:U,r:g,overhead:x}),st.fontSize=Q.size,h("histogram"===O.type?"bar":O.type,st,z),j.transform=st;var ct=M(X,z,w,T);i.setTransormAndDisplay(ct,st)}else r.select("text").remove()})(t,e,R,l,w,H,G,W,Z,rt,it,g,x),e.layerClipId&&s.hideOutsideRangePoint(u,R.select("text"),A,P,p.xcalendar,p.ycalendar)}));var W=!1===p.cliponaxis;s.setClipUrl(u,W?null:e.layerClipId,t)}));l.getComponentMethod("errorbars","plot")(t,O,e,g)},toMoveInsideBar:L}}}),ro=f({"src/traces/bar/hover.js"(t,e){var r=Dr(),n=qt(),i=H(),a=le().fillText,o=Qa().getLineWidth,s=ir().hoverLabelText,l=k().BADNUM;function c(t,e,n,i,o){var c,u,h,p,f,d,m,g=t.cd,y=g[0].trace,v=g[0].t,x="closest"===i,_="waterfall"===y.type,b=t.maxHoverDistance,w=t.maxSpikeDistance;"h"===y.orientation?(c=n,u=e,h="y",p="x",f=D,d=P):(c=e,u=n,h="x",p="y",d=D,f=P);var T=y[h+"period"],A=x||T;function k(t){return S(t,-1)}function M(t){return S(t,1)}function S(t,e){var r=t.w;return t[h]+e*r/2}function E(t){return t[h+"End"]-t[h+"Start"]}var C=x?k:T?function(t){return t.p-E(t)/2}:function(t){return Math.min(k(t),t.p-v.bardelta/2)},I=x?M:T?function(t){return t.p+E(t)/2}:function(t){return Math.max(M(t),t.p+v.bardelta/2)};function L(t,e,n){return o.finiteRange&&(n=0),r.inbox(t-c,e-c,n+Math.min(1,Math.abs(e-t)/m)-1)}function P(t){return L(C(t),I(t),b)}function z(t){var e=t[p];if(_){var r=Math.abs(t.rawS)||0;u>0?e+=r:u<0&&(e-=r)}return e}function D(t){var e=u,n=t.b,i=z(t);return r.inbox(n-e,i-e,b+(i-e)/(i-n)-1)}var O=t[h+"a"],R=t[p+"a"];m=Math.abs(O.r2c(O.range[1])-O.r2c(O.range[0]));var F,B,j,N,U=r.getDistanceFunction(i,f,d,(function(t){return(f(t)+d(t))/2}));if(r.getClosest(g,U,t),!1!==t.index&&g[t.index].p!==l){A||(C=function(t){return Math.min(k(t),t.p-v.bargroupwidth/2)},I=function(t){return Math.max(M(t),t.p+v.bargroupwidth/2)});var V=g[t.index],q=y.base?V.b+V.s:V.s;t[p+"0"]=t[p+"1"]=R.c2p(V[p],!0),t[p+"LabelVal"]=q;var H=v.extents[v.extents.round(V.p)];t[h+"0"]=O.c2p(x?C(V):H[0],!0),t[h+"1"]=O.c2p(x?I(V):H[1],!0);var G=void 0!==V.orig_p;return t[h+"LabelVal"]=G?V.orig_p:V.p,t.labelLabel=s(O,t[h+"LabelVal"],y[h+"hoverformat"]),t.valueLabel=s(R,t[p+"LabelVal"],y[p+"hoverformat"]),t.baseLabel=s(R,V.b,y[p+"hoverformat"]),t.spikeDistance=(B=u,j=(F=V).b,N=z(F),(r.inbox(j-B,N-B,w+(N-B)/(N-j)-1)+function(t){return L(k(t),M(t),w)}(V))/2),t[h+"Spike"]=O.c2p(V.p,!0),a(V,y,t),t.hovertemplate=y.hovertemplate,t}}function u(t,e){var r=e.mcc||t.marker.color,n=e.mlcc||t.marker.line.color,a=o(t,e);return i.opacity(r)?r:i.opacity(n)&&a?n:void 0}e.exports={hoverPoints:function(t,e,r,i,a){var o=c(t,e,r,i,a);if(o){var s=o.cd,l=s[0].trace,h=s[o.index];return o.color=u(l,h),n.getComponentMethod("errorbars","hoverInfo")(h,l,o),[o]}},hoverOnBars:c,getTraceColor:u}}}),no=f({"src/traces/bar/event_data.js"(t,e){e.exports=function(t,e,r){return t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),"h"===r.orientation?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}}}),io=f({"src/traces/bar/select.js"(t,e){function r(t,e,r,n,i){var a=e.c2p(n?t.s0:t.p0,!0),o=e.c2p(n?t.s1:t.p1,!0),s=r.c2p(n?t.p0:t.s0,!0),l=r.c2p(n?t.p1:t.s1,!0);return i?[(a+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(a+o)/2,l]}e.exports=function(t,e){var n,i=t.cd,a=t.xaxis,o=t.yaxis,s=i[0].trace,l="funnel"===s.type,c="h"===s.orientation,u=[];if(!1===e)for(n=0;n0?(g="v",y=x>0?Math.min(b,_):Math.min(_)):x>0?(g="h",y=Math.min(b)):y=0;if(y){e._length=y;var S=i("orientation",g);e._hasPreCompStats?"v"===S&&0===x?(i("x0",0),i("dx",1)):"h"===S&&0===v&&(i("y0",0),i("dy",1)):"v"===S&&0===x?i("x0"):"h"===S&&0===v&&i("y0"),n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],a)}else e.visible=!1}function u(t,e,n,i){var a=i.prefix,o=r.coerce2(t,e,l,"marker.outliercolor"),s=n("marker.line.outliercolor"),c="outliers";e._hasPreCompStats?c="all":(o||s)&&(c="suspectedoutliers");var u=n(a+"points",c);u?(n("jitter","all"===u?.3:0),n("pointpos","all"===u?-1.5:0),n("marker.symbol"),n("marker.opacity"),n("marker.size"),n("marker.angle"),n("marker.color",e.line.color),n("marker.line.color"),n("marker.line.width"),"suspectedoutliers"===u&&(n("marker.line.outliercolor",e.marker.color),n("marker.line.outlierwidth")),n("selected.marker.color"),n("unselected.marker.color"),n("selected.marker.size"),n("unselected.marker.size"),n("text"),n("hovertext")):delete e.marker;var h=n("hoveron");("all"===h||-1!==h.indexOf("points"))&&n("hovertemplate"),r.coerceSelectionMarkerOpacity(e,n)}e.exports={supplyDefaults:function(t,e,n,o){function s(n,i){return r.coerce(t,e,l,n,i)}if(c(t,e,s,o),!1!==e.visible){a(t,e,o,s),s("xhoverformat"),s("yhoverformat");var h=e._hasPreCompStats;h&&(s("lowerfence"),s("upperfence")),s("line.color",(t.marker||{}).color||n),s("line.width"),s("fillcolor",i.addOpacity(e.line.color,.5));var p=!1;if(h){var f=s("mean"),d=s("sd");f&&f.length&&(p=!0,d&&d.length&&(p="sd"))}s("whiskerwidth");var m,g=s("sizemode");"quartiles"===g&&(m=s("boxmean",p)),s("showwhiskers","quartiles"===g),("sd"===g||"sd"===m)&&s("sdmultiple"),s("width"),s("quartilemethod");var y=!1;if(h){var v=s("notchspan");v&&v.length&&(y=!0)}else r.validate(t.notchwidth,l.notchwidth)&&(y=!0);s("notched",y)&&s("notchwidth"),u(t,e,s,{prefix:"box"}),s("zorder")}},crossTraceDefaults:function(t,e){var n,i;function a(t){return r.coerce(i._input,i,l,t)}for(var s=0;sE.uf};if(e._hasPreCompStats){var U=e[x],V=function(t){return v.d2c((e[t]||[])[l])},q=1/0,H=-1/0;for(l=0;l=E.q1&&E.q3>=E.med){var W=V("lowerfence");E.lf=W!==o&&W<=E.q1?W:p(E,I,L);var Z=V("upperfence");E.uf=Z!==o&&Z>=E.q3?Z:f(E,I,L);var Y=V("mean");E.mean=Y!==o?Y:L?a.mean(I,L):(E.q1+E.q3)/2;var X=V("sd");E.sd=Y!==o&&X>=0?X:L?a.stdev(I,L,E.mean):E.q3-E.q1,E.lo=d(E),E.uo=m(E);var $=V("notchspan");$=$!==o&&$>0?$:g(E,L),E.ln=E.med-$,E.un=E.med+$;var K=E.lf,J=E.uf;e.boxpoints&&I.length&&(K=Math.min(K,I[0]),J=Math.max(J,I[L-1])),e.notched&&(K=Math.min(K,E.ln),J=Math.max(J,E.un)),E.min=K,E.max=J}else{var Q;a.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+E.q1,"median = "+E.med,"q3 = "+E.q3].join("\n")),Q=E.med!==o?E.med:E.q1!==o?E.q3!==o?(E.q1+E.q3)/2:E.q1:E.q3!==o?E.q3:0,E.med=Q,E.q1=E.q3=Q,E.lf=E.uf=Q,E.mean=E.sd=Q,E.ln=E.un=Q,E.min=E.max=Q}q=Math.min(q,E.min),H=Math.max(H,E.max),E.pts2=C.filter(N),M.push(E)}}e._extremes[v._id]=n.findExtremes(v,[q,H],{padded:!0})}else{var tt=v.makeCalcdata(e,x),et=function(t,e){for(var r=t.length,n=new Array(r+1),i=0;i=0&&it0){var ut,ht;(E={}).pos=E[b]=B[l],C=E.pts=nt[l].sort(u),L=(I=E[x]=C.map(h)).length,E.min=I[0],E.max=I[L-1],E.mean=a.mean(I,L),E.sd=a.stdev(I,L,E.mean)*e.sdmultiple,E.med=a.interp(I,.5),L%2&&(lt||ct)?(lt?(ut=I.slice(0,L/2),ht=I.slice(L/2+1)):ct&&(ut=I.slice(0,L/2+1),ht=I.slice(L/2)),E.q1=a.interp(ut,.5),E.q3=a.interp(ht,.5)):(E.q1=a.interp(I,.25),E.q3=a.interp(I,.75)),E.lf=p(E,I,L),E.uf=f(E,I,L),E.lo=d(E),E.uo=m(E);var pt=g(E,L);E.ln=E.med-pt,E.un=E.med+pt,at=Math.min(at,E.ln),ot=Math.max(ot,E.un),E.pts2=C.filter(N),M.push(E)}e.notched&&a.isTypedArray(tt)&&(tt=Array.from(tt)),e._extremes[v._id]=n.findExtremes(v,e.notched?tt.concat([at,ot]):tt,{padded:!0})}return function(t,e){if(a.isArrayOrTypedArray(e.selectedpoints))for(var r=0;r0?(M[0].t={num:T[S],dPos:j,posLetter:b,valLetter:x,labels:{med:s(t,"median:"),min:s(t,"min:"),q1:s(t,"q1:"),q3:s(t,"q3:"),max:s(t,"max:"),mean:"sd"===e.boxmean||"sd"===e.sizemode?s(t,"mean ± σ:").replace("σ",1===e.sdmultiple?"σ":e.sdmultiple+"σ"):s(t,"mean:"),lf:s(t,"lower fence:"),uf:s(t,"upper fence:")}},T[S]++,M):[{t:{empty:!0}}]};var l={text:"tx",hovertext:"htx"};function c(t,e,r){for(var n in l)a.isArrayOrTypedArray(e[n])&&(Array.isArray(r)?a.isArrayOrTypedArray(e[n][r[0]])&&(t[l[n]]=e[n][r[0]][r[1]]):t[l[n]]=e[n][r])}function u(t,e){return t.v-e.v}function h(t){return t.v}function p(t,e,r){return 0===r?t.q1:Math.min(t.q1,e[Math.min(a.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,r-1)])}function f(t,e,r){return 0===r?t.q3:Math.max(t.q3,e[Math.max(a.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function d(t){return 4*t.q1-3*t.q3}function m(t){return 4*t.q3-3*t.q1}function g(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}}}),po=f({"src/traces/box/cross_trace_calc.js"(t,e){var r=ir(),n=le(),i=rn().getAxisGroup,a=["v","h"];function o(t,e,a,o){var s,l,c,u=e.calcdata,h=e._fullLayout,p=o._id,f=p.charAt(0),d=[],m=0;for(s=0;s1,_=1-h[t+"gap"],b=1-h[t+"groupgap"];for(s=0;s0){var H=M.pointpos,G=M.jitter,W=M.marker.size/2,Z=0;H+G>=0&&((Z=V*(H+G))>D?(q=!0,N=W,B=Z):Z>R&&(N=W,B=D)),Z<=D&&(B=D);var Y=0;H-G<=0&&((Y=-V*(H-G))>O?(q=!0,U=W,j=Y):Y>F&&(U=W,j=O)),Y<=O&&(j=O)}else B=D,j=O;var X=new Array(c.length);for(l=0;lt.lo&&(x.so=!0)}return a}));p.enter().append("path").classed("point",!0),p.exit().remove(),p.call(i.translatePoints,o,s)}function s(t,e,i,a){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,h=a.bPos,p=a.bPosPxOffset||0,f=i.boxmean||(i.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var d=t.selectAll("path.mean").data("box"===i.type&&i.boxmean||"violin"===i.type&&i.box.visible&&i.meanline.visible?n.identity:[]);d.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),d.exit().remove(),d.each((function(t){var e=c.c2l(t.pos+h,!0),n=c.l2p(e-o)+p,a=c.l2p(e+s)+p,d=u?(n+a)/2:c.l2p(e)+p,m=l.c2p(t.mean,!0),g=l.c2p(t.mean-t.sd,!0),y=l.c2p(t.mean+t.sd,!0);"h"===i.orientation?r.select(this).attr("d","M"+m+","+n+"V"+a+("sd"===f?"m0,0L"+g+","+d+"L"+m+","+n+"L"+y+","+d+"Z":"")):r.select(this).attr("d","M"+n+","+m+"H"+a+("sd"===f?"m0,0L"+d+","+g+"L"+n+","+m+"L"+d+","+y+"Z":""))}))}e.exports={plot:function(t,e,i,l){var c=t._context.staticPlot,u=e.xaxis,h=e.yaxis;n.makeTraceGroups(l,i,"trace boxes").each((function(t){var e,n,i=r.select(this),l=t[0],p=l.t,f=l.trace;p.wdPos=p.bdPos*f.whiskerwidth,!0!==f.visible||p.empty?i.remove():("h"===f.orientation?(e=h,n=u):(e=u,n=h),a(i,{pos:e,val:n},f,p,c),o(i,{x:u,y:h},f,p),s(i,{pos:e,val:n},f,p))}))},plotBoxAndWhiskers:a,plotPoints:o,plotBoxMean:s}}}),mo=f({"src/traces/box/style.js"(t,e){var r=x(),n=H(),i=Qe();e.exports={style:function(t,e,a){var o=a||r.select(t).selectAll("g.trace.boxes");o.style("opacity",(function(t){return t[0].trace.opacity})),o.each((function(e){var a=r.select(this),o=e[0].trace,s=o.line.width;function l(t,e,r,i){t.style("stroke-width",e+"px").call(n.stroke,r).call(n.fill,i)}var c=a.selectAll("path.box");if("candlestick"===o.type)c.each((function(t){if(!t.empty){var e=r.select(this),n=o[t.dir];l(e,n.line.width,n.line.color,n.fillcolor),e.style("opacity",o.selectedpoints&&!t.selected?.3:1)}}));else{l(c,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(n.stroke,o.line.color);var u=a.selectAll("path.point");i.pointStyle(u,o,t)}}))},styleOnSelect:function(t,e,r){var n=e[0].trace,a=r.selectAll("path.point");n.selectedpoints?i.selectedPointStyle(a,n):i.pointStyle(a,n,t)}}}}),go=f({"src/traces/box/hover.js"(t,e){var r=ir(),n=le(),i=Dr(),a=H(),o=n.fillText;function s(t,e,o,s){var l,c,u,h,p,f,d,m,g,y,v,x,_,b,w=t.cd,T=t.xa,A=t.ya,k=w[0].trace,M=w[0].t,S="violin"===k.type,E=M.bdPos,C=M.wHover,I=function(t){return u.c2l(t.pos)+M.bPos-u.c2l(f)};S&&"both"!==k.side?("positive"===k.side&&(g=function(t){var e=I(t);return i.inbox(e,e+C,y)},x=E,_=0),"negative"===k.side&&(g=function(t){var e=I(t);return i.inbox(e-C,e,y)},x=0,_=E)):(g=function(t){var e=I(t);return i.inbox(e-C,e+C,y)},x=_=E),b=S?function(t){return i.inbox(t.span[0]-p,t.span[1]-p,y)}:function(t){return i.inbox(t.min-p,t.max-p,y)},"h"===k.orientation?(p=e,f=o,d=b,m=g,l="y",u=A,c="x",h=T):(p=o,f=e,d=g,m=b,l="x",u=T,c="y",h=A);var L=Math.min(1,E/Math.abs(u.r2c(u.range[1])-u.r2c(u.range[0])));function P(t){return(d(t)+m(t))/2}y=t.maxHoverDistance-L,v=t.maxSpikeDistance-L;var z=i.getDistanceFunction(s,d,m,P);if(i.getClosest(w,z,t),!1===t.index)return[];var D=w[t.index],O=k.line.color,R=(k.marker||{}).color;a.opacity(O)&&k.line.width?t.color=O:a.opacity(R)&&k.boxpoints?t.color=R:t.color=k.fillcolor,t[l+"0"]=u.c2p(D.pos+M.bPos-_,!0),t[l+"1"]=u.c2p(D.pos+M.bPos+x,!0),t[l+"LabelVal"]=void 0!==D.orig_p?D.orig_p:D.pos;var F=l+"Spike";t.spikeDistance=P(D)*v/y,t[F]=u.c2p(D.pos,!0);var B=k.boxmean||"sd"===k.sizemode||(k.meanline||{}).visible,j=k.boxpoints||k.points,N=j&&B?["max","uf","q3","med","mean","q1","lf","min"]:j&&!B?["max","uf","q3","med","q1","lf","min"]:!j&&B?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],U=h.range[1]0&&(a=!0);for(var l=0;la){var o=a-n[t];return n[t]=a,o}}return 0},max:function(t,e,n,i){var a=i[e];if(r(a)){if(a=Number(a),!r(n[t]))return n[t]=a,a;if(n[t]l?t>a?t>1.1*n?n:t>1.1*i?i:a:t>o?o:t>s?s:l:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function p(t,e,r,i,o,s){if(i&&t>a){var l=f(e,o,s),c=f(r,o,s),u=t===n?0:1;return l[u]!==c[u]}return Math.floor(r/t)-Math.floor(e/t)>.1}function f(t,e,r){var i=e.c2d(t,n,r).split("-");return""===i[0]&&(i.unshift(),i[0]="-"+i[0]),i}e.exports=function(t,e,r,i,o){var s,l,h=-1.1*e,p=-.1*e,f=t-p,d=r[0],m=r[1],g=Math.min(u(d+p,d+f,i,o),u(m+p,m+f,i,o)),y=Math.min(u(d+h,d+p,i,o),u(m+h,m+p,i,o));if(g>y&&ya){var v=s===n?1:6,x=s===n?"M12":"M1";return function(e,r){var a=i.c2d(e,n,o),s=a.indexOf("-",v);s>0&&(a=a.substr(0,s));var u=i.d2c(a,0,o);if(u"u"){if(l)return[L,d,!0];L=function(t,e,r,i,a){var o,s,l,c=t._fullLayout,u=function(t,e){for(var r=e.xaxis,n=e.yaxis,i=e.orientation,a=[],o=t._fullData,s=0;so.r2l(B)&&(N=a.tickIncrement(N,_.size,!0,f)),D.start=o.l2r(N),F||n.nestedProperty(e,y+".start").set(D.start)}var U=_.end,V=o.r2l(z.end),q=void 0!==V;if((_.endFound||q)&&V!==o.r2l(U)){var H=q?V:n.aggNums(Math.max,null,d);D.end=o.l2r(H),q||n.nestedProperty(e,y+".start").set(D.end)}var G="autobin"+s;return!1===e._input[G]&&(e._input[y]=n.extendFlat({},e[y]||{}),delete e._input[G],delete e[G]),[D,d]}e.exports={calc:function(t,e){var i,p,f,d,m=[],g=[],y="h"===e.orientation,v=a.getFromId(t,y?e.yaxis:e.xaxis),x=y?"y":"x",_={x:"y",y:"x"}[x],b=e[x+"calendar"],w=e.cumulative,T=h(t,e,v,x),A=T[0],k=T[1],M="string"==typeof A.size,S=[],E=M?S:A,C=[],I=[],L=[],P=0,z=e.histnorm,D=e.histfunc,O=-1!==z.indexOf("density");w.enabled&&O&&(z=z.replace(/ ?density$/,""),O=!1);var R,F="max"===D||"min"===D?null:0,B=s.count,j=l[z],N=!1,U=function(t){return v.r2c(t,0,b)};for(n.isArrayOrTypedArray(e[_])&&"count"!==D&&(R=e[_],N="avg"===D,B=s[D]),i=U(A.start),f=U(A.end)+(i-a.tickIncrement(i,A.size,!1,b))/1e6;i=0&&d=0;n--)s(n);else if("increasing"===e){for(n=1;n=0;n--)t[n]+=t[n+1];"exclude"===r&&(t.push(0),t.shift())}}(g,w.direction,w.currentbin);var K=Math.min(m.length,g.length),J=[],Q=0,tt=K-1;for(i=0;i=Q;i--)if(g[i]){tt=i;break}for(i=Q;i<=tt;i++)if(r(m[i])&&r(g[i])){var et={p:m[i],s:g[i],b:0};w.enabled||(et.pts=L[i],W?et.ph0=et.ph1=L[i].length?k[L[i][0]]:m[i]:(e._computePh=!0,et.ph0=H(S[i]),et.ph1=H(S[i+1],!0))),J.push(et)}return 1===J.length&&(J[0].width1=a.tickIncrement(J[0].p,A.size,!1,b)-J[0].p),o(J,e),n.isArrayOrTypedArray(e.selectedpoints)&&n.tagSelected(J,e,X),J},calcAllAutoBins:h}}}),Lo=f({"src/traces/histogram2d/calc.js"(t,e){var r=le(),n=ir(),i=Mo(),a=So(),o=Eo(),s=Co(),l=Io().calcAllAutoBins;function c(t,e,r,n){var i,a=new Array(t);if(n)for(i=0;iS&&T.splice(S,T.length-S),M.length>S&&M.splice(S,M.length-S);var E=[],C=[],I=[],L="string"==typeof w.size,P="string"==typeof k.size,z=[],D=[],O=L?z:w,R=P?D:k,F=0,B=[],j=[],N=e.histnorm,U=e.histfunc,V=-1!==N.indexOf("density"),q="max"===U||"min"===U?null:0,H=i.count,G=a[N],W=!1,Z=[],Y=[],X="z"in e?e.z:"marker"in e&&Array.isArray(e.marker.color)?e.marker.color:"";X&&"count"!==U&&(W="avg"===U,H=i[U]);var $=w.size,K=x(w.start),J=x(w.end)+(K-n.tickIncrement(K,$,!1,y))/1e6;for(s=K;s=0&&f=0&&dm&&(y=Math.max(y,Math.abs(t[a][o]-d)/(g-m))))}return y}e.exports=function(t,e){var n,a,o=1;for(i(t,e),n=0;n.01;n++)o=i(t,e,(a=o,.5-.25*Math.min(1,.5*a)));return o>.01&&r.log("interp2d didn't converge quickly",o),t}}}),Oo=f({"src/traces/heatmap/find_empties.js"(t,e){var r=le().maxRowLength;e.exports=function(t){var e,n,i,a,o,s,l,c,u=[],h={},p=[],f=t[0],d=[],m=[0,0,0],g=r(t);for(n=0;n=0;o--)(s=((h[[(n=(a=p[o])[0])-1,i=a[1]]]||m)[2]+(h[[n+1,i]]||m)[2]+(h[[n,i-1]]||m)[2]+(h[[n,i+1]]||m)[2])/20)&&(l[a]=[n,i,s],p.splice(o,1),c=!0);if(!c)throw"findEmpties iterated with no new neighbors";for(a in l)h[a]=l[a],u.push(l[a])}return u.sort((function(t,e){return e[2]-t[2]}))}}}),Ro=f({"src/traces/heatmap/make_bound_array.js"(t,e){var r=qt(),n=le().isArrayOrTypedArray;e.exports=function(t,e,i,a,o,s){var l,c,u,h=[],p=r.traceIs(t,"contour"),f=r.traceIs(t,"histogram");if(n(e)&&e.length>1&&!f&&"category"!==s.type){var d=e.length;if(!(d<=o))return p?e.slice(0,o):e.slice(0,o+1);if(p)h=Array.from(e).slice(0,o);else if(1===o)h="log"===s.type?[.5*e[0],2*e[0]]:[e[0]-.5,e[0]+.5];else if("log"===s.type){for(h=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],u=1;u1){var e=(t[t.length-1]-t[0])/(t.length-1),r=Math.abs(e/100);for(A=0;Ar)return!1}return!0}(M.rangebreaks||S.rangebreaks)&&(T=function(t,e,r){for(var n=[],i=-1,a=0;a0;)A=k.c2p(j[I]),I--;for(A0;)C=M.c2p(N[I]),I--;C=k._length||A<=0||E>=M._length||C<=0)return z.selectAll("image").data([]).exit().remove(),void _(z);"fast"===X?(K=W,J=G):(K=Q,J=tt);var et=document.createElement("canvas");et.width=K,et.height=J;var rt,nt,it=et.getContext("2d",{willReadFrequently:!0}),at=p(O,{noNumericCheck:!0,returnArray:!0});"fast"===X?(rt=Z?function(t){return W-1-t}:s.identity,nt=Y?function(t){return G-1-t}:s.identity):(rt=function(t){return s.constrain(Math.round(k.c2p(j[t])-x),0,Q)},nt=function(t){return s.constrain(Math.round(M.c2p(N[t])-E),0,tt)});var ot,st,lt,ct,ut=nt(0),ht=[ut,ut],pt=Z?0:1,ft=Y?0:1,dt=0,mt=0,gt=0,yt=0;function vt(t,e){if(void 0!==t){var r=at(t);return r[0]=Math.round(r[0]),r[1]=Math.round(r[1]),r[2]=Math.round(r[2]),dt+=e,mt+=r[0]*e,gt+=r[1]*e,yt+=r[2]*e,r}return[0,0,0,0]}function xt(t,e,r,n){var i=t[r.bin0];if(void 0===i)return vt(void 0,1);var a,o=t[r.bin1],s=e[r.bin0],l=e[r.bin1],c=o-i||0,u=s-i||0;return a=void 0===o?void 0===l?0:void 0===s?2*(l-i):2*(2*l-s-i)/3:void 0===l?void 0===s?0:2*(2*i-o-s)/3:void 0===s?2*(2*l-o-i)/3:l+i-o-s,vt(i+r.frac*c+n.frac*(u+r.frac*a))}if("default"!==X){var _t,bt=0;try{_t=new Uint8Array(K*J*4)}catch{_t=new Array(K*J*4)}if("smooth"===X){var wt,Tt,At,kt=U||j,Mt=V||N,St=new Array(kt.length),Et=new Array(Mt.length),Ct=new Array(Q),It=U?w:b,Lt=V?w:b;for(I=0;IXt||Xt>M._length))for(L=Gt;LKt||Kt>k._length)){var Jt=c({x:$t,y:Yt},O,t._fullLayout);Jt.x=$t,Jt.y=Yt;var Qt=D.z[I][L];void 0===Qt?(Jt.z="",Jt.zLabel=""):(Jt.z=Qt,Jt.zLabel=o.tickText(Ut,Qt,"hover").text);var te=D.text&&D.text[I]&&D.text[I][L];(void 0===te||!1===te)&&(te=""),Jt.text=te;var ee=s.texttemplateString(jt,Jt,t._fullLayout._d3locale,Jt,O._meta||{});if(ee){var re=ee.split("
"),ne=re.length,ie=0;for(P=0;P=b[0].length||f<0||f>b.length)return}else{if(r.inbox(e-x[0],e-x[x.length-1],0)>0||r.inbox(s-_[0],s-_[_.length-1],0)>0)return;if(d){var E;for(M=[2*x[0]-x[1]],E=1;E=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),ls=f({"src/traces/contour/attributes.js"(t,e){var r=bo(),n=Tn(),i=Ce(),a=i.axisHoverFormat,o=i.descriptionOnlyNumbers,s=Pe(),l=zt().dash,c=F(),u=R().extendFlat,h=ss(),p=h.COMPARISON_OPS2,f=h.INTERVAL_OPS,d=n.line;e.exports=u({z:r.z,x:r.x,x0:r.x0,dx:r.dx,y:r.y,y0:r.y0,dy:r.dy,xperiod:r.xperiod,yperiod:r.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:r.xperiodalignment,yperiodalignment:r.yperiodalignment,text:r.text,hovertext:r.hovertext,transpose:r.transpose,xtype:r.xtype,ytype:r.ytype,xhoverformat:a("x"),yhoverformat:a("y"),zhoverformat:a("z",1),hovertemplate:r.hovertemplate,texttemplate:u({},r.texttemplate,{}),textfont:u({},r.textfont,{}),hoverongaps:r.hoverongaps,connectgaps:u({},r.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:c({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:o("contour label")},operation:{valType:"enumerated",values:[].concat(p).concat(f),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:u({},d.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:l,smoothing:u({},d.smoothing,{}),editType:"plot"},zorder:n.zorder},s("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),cs=f({"src/traces/histogram2dcontour/attributes.js"(t,e){var r=es(),n=ls(),i=Pe(),a=Ce().axisHoverFormat,o=R().extendFlat;e.exports=o({x:r.x,y:r.y,z:r.z,marker:r.marker,histnorm:r.histnorm,histfunc:r.histfunc,nbinsx:r.nbinsx,xbins:r.xbins,nbinsy:r.nbinsy,ybins:r.ybins,autobinx:r.autobinx,autobiny:r.autobiny,bingroup:r.bingroup,xbingroup:r.xbingroup,ybingroup:r.ybingroup,autocontour:n.autocontour,ncontours:n.ncontours,contours:n.contours,line:{color:n.line.color,width:o({},n.line.width,{dflt:.5}),dash:n.line.dash,smoothing:n.line.smoothing,editType:"plot"},xhoverformat:a("x"),yhoverformat:a("y"),zhoverformat:a("z",1),hovertemplate:r.hovertemplate,texttemplate:n.texttemplate,textfont:n.textfont},i("",{cLetter:"z",editTypeOverride:"calc"}))}}),us=f({"src/traces/contour/contours_defaults.js"(t,e){e.exports=function(t,e,r,n){var i=n("contours.start"),a=n("contours.end"),o=!1===i||!1===a,s=r("contours.size");((o?e.autocontour=!0:r("autocontour",!1))||!s)&&r("ncontours")}}}),hs=f({"src/traces/contour/label_defaults.js"(t,e){var r=le();e.exports=function(t,e,n,i){if(i||(i={}),t("contours.showlabels")){var a=e.font;r.coerceFont(t,"contours.labelfont",a,{overrideDflt:{color:n}}),t("contours.labelformat")}!1!==i.hasHover&&t("zhoverformat")}}}),ps=f({"src/traces/contour/style_defaults.js"(t,e){var r=qe(),n=hs();e.exports=function(t,e,i,a,o){var s,l=i("contours.coloring"),c="";"fill"===l&&(s=i("contours.showlines")),!1!==s&&("lines"!==l&&(c=i("line.color","#000")),i("line.width",.5),i("line.dash")),"none"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,r(t,e,a,i,{prefix:"",cLetter:"z"})),i("line.smoothing"),n(i,a,c,o)}}}),fs=f({"src/traces/histogram2dcontour/defaults.js"(t,e){var r=le(),n=rs(),i=us(),a=ps(),o=To(),s=cs();e.exports=function(t,e,l,c){function u(n,i){return r.coerce(t,e,s,n,i)}n(t,e,u,c),!1!==e.visible&&(i(t,e,u,(function(n){return r.coerce2(t,e,s,n)})),a(t,e,u,c),u("xhoverformat"),u("yhoverformat"),u("hovertemplate"),e.contours&&"heatmap"===e.contours.coloring&&o(u,c))}}}),ds=f({"src/traces/contour/set_contours.js"(t,e){var r=ir(),n=le();function i(t,e,n){var i={type:"linear",range:[t,e]};return r.autoTicks(i,(e-t)/(n||15)),i}e.exports=function(t,e){var a=t.contours;if(t.autocontour){var o=t.zmin,s=t.zmax;(t.zauto||void 0===o)&&(o=n.aggNums(Math.min,null,e)),(t.zauto||void 0===s)&&(s=n.aggNums(Math.max,null,e));var l=i(o,s,t.ncontours);a.size=l.dtick,a.start=r.tickFirst(l),l.range.reverse(),a.end=r.tickFirst(l),a.start===o&&(a.start+=a.size),a.end===s&&(a.end-=a.size),a.start>a.end&&(a.start=a.end=(a.start+a.end)/2),t._input.contours||(t._input.contours={}),n.extendFlat(t._input.contours,{start:a.start,end:a.end,size:a.size}),t._input.autocontour=!0}else if("constraint"!==a.type){var c,u=a.start,h=a.end,p=t._input.contours;u>h&&(a.start=p.start=h,h=a.end=p.end=u,u=a.start),a.size>0||(c=u===h?1:i(u,h,t.ncontours).dtick,p.size=a.size=c)}}}}),ms=f({"src/traces/contour/end_plus.js"(t,e){e.exports=function(t){return t.end+t.size/1e6}}}),gs=f({"src/traces/contour/calc.js"(t,e){var r=Ze(),n=Fo(),i=ds(),a=ms();e.exports=function(t,e){var o=n(t,e),s=o[0].z;i(e,s);var l,c=e.contours,u=r.extractOpts(e);if("heatmap"===c.coloring&&u.auto&&!1===e.autocontour){var h=c.start,p=a(c),f=c.size||1,d=Math.floor((p-h)/f)+1;isFinite(f)||(f=1,d=1);var m=h-f/2;l=[m,m+d*f]}else l=s;return r.calc(t,e,{vals:l,cLetter:"z"}),o}}}),ys=f({"src/traces/contour/constants.js"(t,e){e.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}}}),vs=f({"src/traces/contour/make_crossings.js"(t,e){var r=ys();function n(t,e){var r=(e[0][0]>t?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===r||10===r?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}e.exports=function(t){var e,i,a,o,s,l,c,u,h,p=t[0].z,f=p.length,d=p[0].length,m=2===f||2===d;for(i=0;i20&&e?208===t||1114===t?i=0===r[0]?1:-1:a=0===r[1]?1:-1:-1!==n.BOTTOMSTART.indexOf(t)?a=1:-1!==n.LEFTSTART.indexOf(t)?i=1:-1!==n.TOPSTART.indexOf(t)?a=-1:i=-1,[i,a]}(p,o,e),d=[s(t,e,[-f[0],-f[1]])],m=t.z.length,g=t.z[0].length,y=e.slice(),v=f.slice();for(u=0;u<1e4;u++){if(p>20?(p=n.CHOOSESADDLE[p][(f[0]||f[1])<0?0:1],t.crossings[h]=n.SADDLEREMAINDER[p]):delete t.crossings[h],!(f=n.NEWDELTA[p])){r.log("Found bad marching index:",p,e,t.level);break}d.push(s(t,e,f)),e[0]+=f[0],e[1]+=f[1],h=e.join(","),i(d[d.length-1],d[d.length-2],l,c)&&d.pop();var x=f[0]&&(e[0]<0||e[0]>g-2)||f[1]&&(e[1]<0||e[1]>m-2);if(e[0]===y[0]&&e[1]===y[1]&&f[0]===v[0]&&f[1]===v[1]||o&&x)break;p=t.crossings[h]}1e4===u&&r.log("Infinite loop in contour?");var _,b,w,T,A,k,M,S,E,C,I,L=i(d[0],d[d.length-1],l,c),P=0,z=.2*t.smoothing,D=[],O=0;for(u=1;u=O;u--)if((_=D[u])=O&&_+D[b]S&&E--,t.edgepaths[E]=I.concat(d,C));break}j||(t.edgepaths[S]=d.concat(C))}for(S=0;S":o(">"),"<":o("<"),"=":o("=")}}}),bs=f({"src/traces/contour/empty_pathinfo.js"(t,e){var r=le(),n=_s(),i=ms();e.exports=function(t,e,a){for(var o="constraint"===t.type?n[t._operation](t.value):t,s=o.size,l=[],c=i(o),u=a.trace._carpetTrace,h=u?{xaxis:u.aaxis,yaxis:u.baxis,x:a.a,y:a.b}:{xaxis:e.xaxis,yaxis:e.yaxis,x:a.x,y:a.y},p=o.start;p1e3){r.warn("Too many contours, clipping at 1000",t);break}return l}}}),ws=f({"src/traces/contour/convert_to_constraints.js"(t,e){var r=le();function n(t){return r.extendFlat({},t,{edgepaths:r.extendDeep([],t.edgepaths),paths:r.extendDeep([],t.paths),starts:r.extendDeep([],t.starts)})}e.exports=function(t,e){var i,a,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case"=":case"<":return t;case">":for(1!==t.length&&r.warn("Contour data invalid for the specified inequality operation."),a=t[0],i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(n.prefixBoundary=!1,n.edgepaths.length)return;var s=n.x.length,l=n.y.length,c=-1/0,u=1/0;for(r=0;r":f>c&&(n.prefixBoundary=!0);break;case"<":(fc||n.starts.length&&p===u)&&(n.prefixBoundary=!0);break;case"][":h=Math.min(f[0],f[1]),p=Math.max(f[0],f[1]),hc&&(n.prefixBoundary=!0)}}}}}),As=f({"src/traces/contour/plot.js"(t){var e=x(),r=le(),n=Qe(),i=Ze(),a=Se(),o=ir(),s=er(),l=No(),c=vs(),u=xs(),h=bs(),p=ws(),f=Ts(),d=ys(),m=d.LABELOPTIMIZER;function g(t,e){var i,a,o,s,l,c,u,h="",p=0,f=t.edgepaths.map((function(t,e){return e})),d=!0;function m(t){return Math.abs(t[1]-e[2][1])<.01}function g(t){return Math.abs(t[0]-e[0][0])<.01}function y(t){return Math.abs(t[0]-e[2][0])<.01}for(;f.length;){for(c=n.smoothopen(t.edgepaths[p],t.smoothing),h+=d?c:c.replace(/^M/,"L"),f.splice(f.indexOf(p),1),i=t.edgepaths[p][t.edgepaths[p].length-1],s=-1,o=0;o<4;o++){if(!i){r.log("Missing end?",p,t);break}for(u=i,Math.abs(u[1]-e[0][1])<.01&&!y(i)?a=e[1]:g(i)?a=e[0]:m(i)?a=e[3]:y(i)&&(a=e[2]),l=0;l=0&&(a=v,s=l):Math.abs(i[1]-a[1])<.01?Math.abs(i[1]-v[1])<.01&&(v[0]-i[0])*(a[0]-v[0])>=0&&(a=v,s=l):r.log("endpt to newendpt is not vert. or horz.",i,a,v)}if(i=a,s>=0)break;h+="L"+a}if(s===t.edgepaths.length){r.log("unclosed perimeter path");break}p=s,(d=-1===f.indexOf(p))&&(p=f[0],h+="Z")}for(p=0;pi.center?i.right-s:s-i.left)/(u+Math.abs(Math.sin(c)*o)),f=(l>i.middle?i.bottom-l:l-i.top)/(Math.abs(h)+Math.cos(c)*o);if(p<1||f<1)return 1/0;var d=m.EDGECOST*(1/(p-1)+1/(f-1));d+=m.ANGLECOST*c*c;for(var g=s-u,y=l-h,v=s+u,x=l+h,_=0;_2*m.MAXCOST)break;f&&(s/=2),l=(o=c-s/2)+1.5*s}if(p<=m.MAXCOST)return u},t.addLabelData=function(t,e,r,n){var i=e.fontSize,a=e.width+i/3,o=Math.max(0,e.height-i/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),h=Math.cos(c),p=function(t,e){return[s+t*h-e*u,l+t*u+e*h]},f=[p(-a/2,-o/2),p(-a/2,o/2),p(a/2,o/2),p(a/2,-o/2)];r.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:a,height:o}),n.push(f)},t.drawLabels=function(t,n,i,o,s){var l=t.selectAll("text").data(n,(function(t){return t.text+","+t.x+","+t.y+","+t.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(t){var r=t.x+Math.sin(t.theta)*t.dy,n=t.y-Math.cos(t.theta)*t.dy;e.select(this).text(t.text).attr({x:r,y:n,transform:"rotate("+180*t.theta/Math.PI+" "+r+" "+n+")"}).call(a.convertToTspans,i)})),s){for(var c="",u=0;u=v)&&(a<=y&&(a=y),o>=v&&(o=v),l=Math.floor((o-a)/s)+1,c=0),p=0;py&&(m.unshift(y),g.unshift(g[0])),m[m.length-1]2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(n=parseFloat(e.value[0]),e.value=[n,n+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:r(e.value)&&(n=parseFloat(e.value),e.value=[n,n+1])):(t("contours.value",0),r(e.value)||(l(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(i,g),"="===y?f=g.showlines=!0:(f=i("contours.showlines"),m=i("fillcolor",a((t.line||{}).color||h,.5))),f&&(d=i("line.color",m&&o(m)?a(e.fillcolor,1):h),i("line.width",2),i("line.dash")),i("line.smoothing"),n(i,s,d,p)}}}),Ps=f({"src/traces/contour/defaults.js"(t,e){var r=le(),n=wo(),i=Gn(),a=Ls(),o=us(),s=ps(),l=To(),c=ls();e.exports=function(t,e,u,h){function p(n,i){return r.coerce(t,e,c,n,i)}if(n(t,e,p,h)){i(t,e,h,p),p("xhoverformat"),p("yhoverformat"),p("text"),p("hovertext"),p("hoverongaps"),p("hovertemplate");var f="constraint"===p("contours.type");p("connectgaps",r.isArray1D(e.z)),f?a(t,e,p,h,u):(o(t,e,p,(function(n){return r.coerce2(t,e,c,n)})),s(t,e,p,h)),e.contours&&"heatmap"===e.contours.coloring&&l(p,h),p("zorder")}else e.visible=!1}}}),zs=f({"src/traces/contour/index.js"(t,e){e.exports={attributes:ls(),supplyDefaults:Ps(),calc:gs(),plot:As().plot,style:Ms(),colorbar:Ss(),hoverPoints:Es(),moduleType:"trace",name:"contour",basePlotModule:Si(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),Ds=f({"lib/contour.js"(t,e){e.exports=zs()}}),Os=f({"src/traces/scatterternary/attributes.js"(t,e){var r=Ot().hovertemplateAttrs,n=Ot().texttemplateAttrs,i=wn(),a=Tn(),o=U(),s=Pe(),l=zt().dash,c=R().extendFlat,u=a.marker,h=a.line,p=u.line;e.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:c({},a.mode,{dflt:"markers"}),text:c({},a.text,{}),texttemplate:n({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:c({},a.hovertext,{}),line:{color:h.color,width:h.width,dash:l,backoff:h.backoff,shape:c({},h.shape,{values:["linear","spline"]}),smoothing:h.smoothing,editType:"calc"},connectgaps:a.connectgaps,cliponaxis:a.cliponaxis,fill:c({},a.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:i(),marker:c({symbol:u.symbol,opacity:u.opacity,angle:u.angle,angleref:u.angleref,standoff:u.standoff,maxdisplayed:u.maxdisplayed,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:c({width:p.width,editType:"calc"},s("marker.line")),gradient:u.gradient,editType:"calc"},s("marker")),textfont:a.textfont,textposition:a.textposition,selected:a.selected,unselected:a.unselected,hoverinfo:c({},o.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a.hoveron,hovertemplate:r()}}}),Rs=f({"src/traces/scatterternary/defaults.js"(t,e){var r=le(),n=bn(),i=Ye(),a=Zn(),o=Yn(),s=Xn(),l=$n(),c=Kn(),u=Os();e.exports=function(t,e,h,p){function f(n,i){return r.coerce(t,e,u,n,i)}var d,m=f("a"),g=f("b"),y=f("c");if(m?(d=m.length,g?(d=Math.min(d,g.length),y&&(d=Math.min(d,y.length))):d=y?Math.min(d,y.length):0):g&&y&&(d=Math.min(g.length,y.length)),d){e._length=d,f("sum"),f("text"),f("hovertext"),"fills"!==e.hoveron&&f("hovertemplate"),f("mode",d"),o.hovertemplate=p.hovertemplate,a}function x(t,e){y.push(t._hovertitle+": "+e)}}}}),Us=f({"src/traces/scatterternary/event_data.js"(t,e){e.exports=function(t,e,r,n,i){if(e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),n[i]){var a=n[i];t.a=a.a,t.b=a.b,t.c=a.c}else t.a=e.a,t.b=e.b,t.c=e.c;return t}}}),Vs=f({"src/plots/ternary/ternary.js"(t,e){var r=x(),n=O(),i=qt(),a=le(),o=a.strTranslate,s=a._,l=H(),c=Qe(),u=er(),h=R().extendFlat,p=Ae(),f=ir(),d=pr(),m=Dr(),g=Or(),y=g.freeMode,v=g.rectMode,_=tr(),b=En().prepSelect,w=En().selectOnClick,T=En().clearOutline,A=En().clearSelectionsCache,k=ve();function M(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.updateFx(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=M;var S=M.prototype;S.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},S.plot=function(t,e){var r=this,n=e[r.id],i=e._size;r._hasClipOnAxisFalse=!1;for(var a=0;aE*_?i=(a=_)*E:a=(i=x)/E,s=y*i/x,p=v*a/_,r=e.l+e.w*m-i/2,n=e.t+e.h*(1-g)-a/2,f.x0=r,f.y0=n,f.w=i,f.h=a,f.sum=b,f.xaxis={type:"linear",range:[w+2*A-b,b-w-2*T],domain:[m-s/2,m+s/2],_id:"x"},u(f.xaxis,f.graphDiv._fullLayout),f.xaxis.setScale(),f.xaxis.isPtWithinRange=function(t){return t.a>=f.aaxis.range[0]&&t.a<=f.aaxis.range[1]&&t.b>=f.baxis.range[1]&&t.b<=f.baxis.range[0]&&t.c>=f.caxis.range[1]&&t.c<=f.caxis.range[0]},f.yaxis={type:"linear",range:[w,b-T-A],domain:[g-p/2,g+p/2],_id:"y"},u(f.yaxis,f.graphDiv._fullLayout),f.yaxis.setScale(),f.yaxis.isPtWithinRange=function(){return!0};var k=f.yaxis.domain[0],M=f.aaxis=h({},t.aaxis,{range:[w,b-T-A],side:"left",tickangle:(+t.aaxis.tickangle||0)-30,domain:[k,k+p*E],anchor:"free",position:0,_id:"y",_length:i});u(M,f.graphDiv._fullLayout),M.setScale();var S=f.baxis=h({},t.baxis,{range:[b-w-A,T],side:"bottom",domain:f.xaxis.domain,anchor:"free",position:0,_id:"x",_length:i});u(S,f.graphDiv._fullLayout),S.setScale();var C=f.caxis=h({},t.caxis,{range:[b-w-T,A],side:"right",tickangle:(+t.caxis.tickangle||0)+30,domain:[k,k+p*E],anchor:"free",position:0,_id:"y",_length:i});u(C,f.graphDiv._fullLayout),C.setScale();var I="M"+r+","+(n+a)+"h"+i+"l-"+i/2+",-"+a+"Z";f.clipDef.select("path").attr("d",I),f.layers.plotbg.select("path").attr("d",I);var L="M0,"+a+"h"+i+"l-"+i/2+",-"+a+"Z";f.clipDefRelative.select("path").attr("d",L);var P=o(r,n);f.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),f.clipDefRelative.select("path").attr("transform",null);var z=o(r-S._offset,n+a);f.layers.baxis.attr("transform",z),f.layers.bgrid.attr("transform",z);var D=o(r+i/2,n)+"rotate(30)"+o(0,-M._offset);f.layers.aaxis.attr("transform",D),f.layers.agrid.attr("transform",D);var O=o(r+i/2,n)+"rotate(-30)"+o(0,-C._offset);f.layers.caxis.attr("transform",O),f.layers.cgrid.attr("transform",O),f.drawAxes(!0),f.layers.aline.select("path").attr("d",M.showline?"M"+r+","+(n+a)+"l"+i/2+",-"+a:"M0,0").call(l.stroke,M.linecolor||"#000").style("stroke-width",(M.linewidth||0)+"px"),f.layers.bline.select("path").attr("d",S.showline?"M"+r+","+(n+a)+"h"+i:"M0,0").call(l.stroke,S.linecolor||"#000").style("stroke-width",(S.linewidth||0)+"px"),f.layers.cline.select("path").attr("d",C.showline?"M"+(r+i/2)+","+n+"l"+i/2+","+a:"M0,0").call(l.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),f.graphDiv._context.staticPlot||f.initInteractions(),c.setClipUrl(f.layers.frontplot,f._hasClipOnAxisFalse?null:f.clipId,f.graphDiv)},S.drawAxes=function(t){var e=this,r=e.graphDiv,n=e.id.substr(7)+"title",i=e.layers,a=e.aaxis,o=e.baxis,l=e.caxis;if(e.drawAx(a),e.drawAx(o),e.drawAx(l),t){var c=Math.max(a.showticklabels?a.tickfont.size/2:0,(l.showticklabels?.75*l.tickfont.size:0)+("outside"===l.ticks?.87*l.ticklen:0)),u=(o.showticklabels?o.tickfont.size:0)+("outside"===o.ticks?o.ticklen:0)+3;i["a-title"]=_.draw(r,"a"+n,{propContainer:a,propName:e.id+".aaxis.title",placeholder:s(r,"Click to enter Component A title"),attributes:{x:e.x0+e.w/2,y:e.y0-a.title.font.size/3-c,"text-anchor":"middle"}}),i["b-title"]=_.draw(r,"b"+n,{propContainer:o,propName:e.id+".baxis.title",placeholder:s(r,"Click to enter Component B title"),attributes:{x:e.x0-u,y:e.y0+e.h+.83*o.title.font.size+u,"text-anchor":"middle"}}),i["c-title"]=_.draw(r,"c"+n,{propContainer:l,propName:e.id+".caxis.title",placeholder:s(r,"Click to enter Component C title"),attributes:{x:e.x0+e.w+u,y:e.y0+e.h+.83*l.title.font.size+u,"text-anchor":"middle"}})}},S.drawAx=function(t){var e=this,r=e.graphDiv,n=t._name,i=n.charAt(0),o=t._id,s=e.layers[n],l=i+"tickLayout",c=function(t){return t.ticks+String(t.ticklen)+String(t.showticklabels)}(t);e[l]!==c&&(s.selectAll("."+o+"tick").remove(),e[l]=c),t.setScale();var u=f.calcTicks(t),h=f.clipEnds(t,u),p=f.makeTransTickFn(t),d=f.getTickSigns(t)[2],m=a.deg2rad(30),g=d*(t.linewidth||1)/2,y=d*t.ticklen,v=e.w,x=e.h,_="b"===i?"M0,"+g+"l"+Math.sin(m)*y+","+Math.cos(m)*y:"M"+g+",0l"+Math.cos(m)*y+","+-Math.sin(m)*y,b={a:"M0,0l"+x+",-"+v/2,b:"M0,0l-"+v/2+",-"+x,c:"M0,0l-"+x+","+v/2}[i];f.drawTicks(r,t,{vals:"inside"===t.ticks?h:u,layer:s,path:_,transFn:p,crisp:!1}),f.drawGrid(r,t,{vals:h,layer:e.layers[i+"grid"],path:b,transFn:p,crisp:!1}),f.drawLabels(r,t,{vals:u,layer:s,transFn:p,labelFns:f.makeLabelFns(t,0,30)})};var C=k.MINZOOM/2+.87,I="m-0.87,.5h"+C+"v3h-"+(C+5.2)+"l"+(C/2+2.6)+",-"+(.87*C+4.5)+"l2.6,1.5l-"+C/2+","+.87*C+"Z",L="m0.87,.5h-"+C+"v3h"+(C+5.2)+"l-"+(C/2+2.6)+",-"+(.87*C+4.5)+"l-2.6,1.5l"+C/2+","+.87*C+"Z",P="m0,1l"+C/2+","+.87*C+"l2.6,-1.5l-"+(C/2+2.6)+",-"+(.87*C+4.5)+"l-"+(C/2+2.6)+","+(.87*C+4.5)+"l2.6,1.5l"+C/2+",-"+.87*C+"Z",z=!0;function D(t){r.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}S.clearOutline=function(){A(this.dragOptions),T(this.dragOptions.gd)},S.initInteractions=function(){var t,e,r,u,h,p,f,g,x,_,T,A,M=this,S=M.layers.plotbg.select("path").node(),C=M.graphDiv,O=C._fullLayout._zoomlayer;function R(t){var e={};return e[M.id+".aaxis.min"]=t.a,e[M.id+".baxis.min"]=t.b,e[M.id+".caxis.min"]=t.c,e}function F(t,e){var r=C._fullLayout.clickmode;D(C),2===t&&(C.emit("plotly_doubleclick",null),i.call("_guiRelayout",C,R({a:0,b:0,c:0}))),r.indexOf("select")>-1&&1===t&&w(e,C,[M.xaxis],[M.yaxis],M.id,M.dragOptions),r.indexOf("event")>-1&&m.click(C,e,M.id)}function B(t,e){return 1-e/M.h}function j(t,e){return 1-(t+(M.h-e)/Math.sqrt(3))/M.w}function N(t,e){return(t-(M.h-e)/Math.sqrt(3))/M.w}function U(n,i){var a=r+n*t,o=u+i*e,s=Math.max(0,Math.min(1,B(0,u),B(0,o))),l=Math.max(0,Math.min(1,j(r,u),j(a,o))),c=Math.max(0,Math.min(1,N(r,u),N(a,o))),d=(s/2+c)*M.w,m=(1-s/2-l)*M.w,y=(d+m)/2,v=m-d,b=(1-s)*M.h,w=b-v/E;v.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),A.transition().style("opacity",1).duration(200),_=!0),C.emit("plotly_relayouting",R(f))}function V(){D(C),f!==h&&(i.call("_guiRelayout",C,R(f)),z&&C.data&&C._context.showTips&&(a.notifier(s(C,"Double-click to zoom back out"),"long"),z=!1))}function q(t,e){var r=t/M.xaxis._m,n=e/M.yaxis._m,i=[(f={a:h.a-n,b:h.b+(r+n)/2,c:h.c-(r-n)/2}).a,f.b,f.c].sort(a.sorterAsc),s=i.indexOf(f.a),l=i.indexOf(f.b),u=i.indexOf(f.c);i[0]<0&&(i[1]+i[0]/2<0?(i[2]+=i[0]+i[1],i[0]=i[1]=0):(i[2]+=i[0]/2,i[1]+=i[0]/2,i[0]=0),f={a:i[s],b:i[l],c:i[u]},e=(h.a-f.a)*M.yaxis._m,t=(h.c-f.c-h.b+f.b)*M.xaxis._m);var p=o(M.x0+t,M.y0+e);M.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",p);var d=o(-t,-e);M.clipDefRelative.select("path").attr("transform",d),M.aaxis.range=[f.a,M.sum-f.b-f.c],M.baxis.range=[M.sum-f.a-f.c,f.b],M.caxis.range=[M.sum-f.a-f.b,f.c],M.drawAxes(!1),M._hasClipOnAxisFalse&&M.plotContainer.select(".scatterlayer").selectAll(".trace").call(c.hideOutsideRangePoints,M),C.emit("plotly_relayouting",R(f))}function H(){i.call("_guiRelayout",C,R(f))}this.dragOptions={element:S,gd:C,plotinfo:{id:M.id,domain:C._fullLayout[M.id].domain,xaxis:M.xaxis,yaxis:M.yaxis},subplot:M.id,prepFn:function(i,s,c){M.dragOptions.xaxes=[M.xaxis],M.dragOptions.yaxes=[M.yaxis],t=C._fullLayout._invScaleX,e=C._fullLayout._invScaleY;var d=M.dragOptions.dragmode=C._fullLayout.dragmode;y(d)?M.dragOptions.minDrag=1:M.dragOptions.minDrag=void 0,"zoom"===d?(M.dragOptions.moveFn=U,M.dragOptions.clickFn=F,M.dragOptions.doneFn=V,function(t,e,i){var s=S.getBoundingClientRect();r=e-s.left,u=i-s.top,C._fullLayout._calcInverseTransform(C);var c=C._fullLayout._invTransform,d=a.apply3DTransform(c)(r,u);r=d[0],u=d[1],h={a:M.aaxis.range[0],b:M.baxis.range[1],c:M.caxis.range[1]},f=h,p=M.aaxis.range[1]-h.a,g=n(M.graphDiv._fullLayout[M.id].bgcolor).getLuminance(),x="M0,"+M.h+"L"+M.w/2+", 0L"+M.w+","+M.h+"Z",_=!1,T=O.append("path").attr("class","zoombox").attr("transform",o(M.x0,M.y0)).style({fill:g>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",x),A=O.append("path").attr("class","zoombox-corners").attr("transform",o(M.x0,M.y0)).style({fill:l.background,stroke:l.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),M.clearOutline(C)}(0,s,c)):"pan"===d?(M.dragOptions.moveFn=q,M.dragOptions.clickFn=F,M.dragOptions.doneFn=H,h={a:M.aaxis.range[0],b:M.baxis.range[1],c:M.caxis.range[1]},f=h,M.clearOutline(C)):(v(d)||y(d))&&b(i,s,c,M.dragOptions,d)}},S.onmousemove=function(t){m.hover(C,t,M.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=M.id},S.onmouseout=function(t){C._dragging||d.unhover(C,t)},d.init(this.dragOptions)}}}),qs=f({"src/plots/ternary/layout_attributes.js"(t,e){var r=q(),n=Aa().attributes,i=Ie(),a=Pt().overrideAll,o=R().extendFlat,s={title:{text:i.title.text,font:i.title.font},color:i.color,tickmode:i.minor.tickmode,nticks:o({},i.nticks,{dflt:6,min:1}),tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,ticklabelstep:i.ticklabelstep,showticklabels:i.showticklabels,labelalias:i.labelalias,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,minexponent:i.minexponent,separatethousands:i.separatethousands,tickfont:i.tickfont,tickangle:i.tickangle,tickformat:i.tickformat,tickformatstops:i.tickformatstops,hoverformat:i.hoverformat,showline:o({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:o({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,griddash:i.griddash,layer:i.layer,min:{valType:"number",dflt:0,min:0}},l=e.exports=a({domain:n({name:"ternary"}),bgcolor:{valType:"color",dflt:r.background},sum:{valType:"number",dflt:1,min:0},aaxis:s,baxis:s,caxis:s},"plot","from-root");l.uirevision={valType:"any",editType:"none"},l.aaxis.uirevision=l.baxis.uirevision=l.caxis.uirevision={valType:"any",editType:"none"}}}),Hs=f({"src/plots/subplot_defaults.js"(t,e){var r=le(),n=ye(),i=Aa().defaults;e.exports=function(t,e,a,o){var s,l,c=o.type,u=o.attributes,h=o.handleDefaults,p=o.partition||"x",f=e._subplots[c],d=f.length,m=d&&f[0].replace(/\d+$/,"");function g(t,e){return r.coerce(s,l,u,t,e)}for(var y=0;y=s&&(f.min=0,m.min=0,g.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function d(t,e,r,n){var a=h[e._name];function p(r,n){return i.coerce(t,e,a,r,n)}p("uirevision",n.uirevision),e.type="linear";var f=p("color"),d=f!==a.color.dflt?f:r.font.color,m=e._name.charAt(0).toUpperCase(),g="Component "+m,y=p("title.text",g);e._hovertitle=y===g?y:m,i.coerceFont(p,"title.font",r.font,{overrideDflt:{size:i.bigFont(r.font.size),color:d}}),p("min"),c(t,e,p,"linear"),s(t,e,p,"linear"),o(t,e,p,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),l(t,e,p,{outerTicks:!0}),p("showticklabels")&&(i.coerceFont(p,"tickfont",r.font,{overrideDflt:{color:d}}),p("tickangle"),p("tickformat")),u(t,e,p,{dfltColor:f,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:a}),p("hoverformat"),p("layer")}e.exports=function(t,e,r){a(t,e,r,{type:"ternary",attributes:h,handleDefaults:f,font:e.font,paper_bgcolor:e.paper_bgcolor})}}}),Ws=f({"src/plots/ternary/index.js"(t){var e=Vs(),r=we().getSubplotCalcData,n=le().counterRegex,i="ternary";t.name=i;var a=t.attr="subplot";t.idRoot=i,t.idRegex=t.attrRegex=n(i),(t.attributes={})[a]={valType:"subplotid",dflt:"ternary",editType:"calc"},t.layoutAttributes=qs(),t.supplyLayoutDefaults=Gs(),t.plot=function(t){for(var n=t._fullLayout,a=t.calcdata,o=n._subplots[i],s=0;s0){var _,b,w,T,A,k=t.xa,M=t.ya;"h"===d.orientation?(A=e,_="y",w=M,b="x",T=k):(A=s,_="x",w=k,b="y",T=M);var S=f[t.index];if(A>=S.span[0]&&A<=S.span[1]){var E=n.extendFlat({},t),C=T.c2p(A,!0),I=o.getKdeValue(S,d,A),L=o.getPositionOnKdePath(S,d,C),P=w._offset,z=w._length;E[_+"0"]=L[0],E[_+"1"]=L[1],E[b+"0"]=E[b+"1"]=C,E[b+"Label"]=b+": "+i.hoverLabelText(T,A,d[b+"hoverformat"])+", "+f[0].t.labels.kde+" "+I.toFixed(3);for(var D=0,O=0;O path").each((function(t){if(!t.isBlank){var e=s.marker;r.select(this).call(i.fill,t.mc||e.color).call(i.stroke,t.mlc||e.line.color).call(n.dashLine,e.line.dash,t.mlw||e.line.width).style("opacity",s.selectedpoints&&!t.selected?a:1)}})),l(o,s,t),o.selectAll(".regions").each((function(){r.select(this).selectAll("path").style("stroke-width",0).call(i.fill,s.connector.fillcolor)})),o.selectAll(".lines").each((function(){var t=s.connector.line;n.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}}}),vl=f({"src/traces/funnel/hover.js"(t,e){var r=H().opacity,n=ro().hoverOnBars,i=le().formatPercent;e.exports=function(t,e,a,o,s){var l=n(t,e,a,o,s);if(l){var c=l.cd,u=c[0].trace,h="h"===u.orientation,p=c[l.index];l[(h?"x":"y")+"LabelVal"]=p.s,l.percentInitial=p.begR,l.percentInitialLabel=i(p.begR,1),l.percentPrevious=p.difR,l.percentPreviousLabel=i(p.difR,1),l.percentTotal=p.sumR,l.percentTotalLabel=i(p.sumR,1);var f=p.hi||u.hoverinfo,d=[];if(f&&"none"!==f&&"skip"!==f){var m="all"===f,g=f.split("+"),y=function(t){return m||-1!==g.indexOf(t)};y("percent initial")&&d.push(l.percentInitialLabel+" of initial"),y("percent previous")&&d.push(l.percentPreviousLabel+" of previous"),y("percent total")&&d.push(l.percentTotalLabel+" of total")}return l.extraText=d.join("
"),l.color=function(t,e){var n=t.marker,i=e.mc||n.color,a=e.mlc||n.line.color,o=e.mlw||n.line.width;return r(i)?i:r(a)&&o?a:void 0}(u,p),[l]}}}}),xl=f({"src/traces/funnel/event_data.js"(t,e){e.exports=function(t,e){return t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,"percentInitial"in e&&(t.percentInitial=e.percentInitial),"percentPrevious"in e&&(t.percentPrevious=e.percentPrevious),"percentTotal"in e&&(t.percentTotal=e.percentTotal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}}}),_l=f({"src/traces/funnel/index.js"(t,e){e.exports={attributes:ll(),layoutAttributes:cl(),supplyDefaults:ul().supplyDefaults,crossTraceDefaults:ul().crossTraceDefaults,supplyLayoutDefaults:hl(),calc:fl(),crossTraceCalc:dl(),plot:ml(),style:yl().style,hoverPoints:vl(),eventData:xl(),selectPoints:io(),moduleType:"trace",name:"funnel",basePlotModule:Si(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),bl=f({"lib/funnel.js"(t,e){e.exports=_l()}}),wl=f({"src/traces/waterfall/constants.js"(t,e){e.exports={eventDataKeys:["initial","delta","final"]}}}),Tl=f({"src/traces/waterfall/attributes.js"(t,e){var r=Ga(),n=Tn().line,i=U(),a=Ce().axisHoverFormat,o=Ot().hovertemplateAttrs,s=Ot().texttemplateAttrs,l=wl(),c=R().extendFlat,u=H();function h(t){return{marker:{color:c({},r.marker.color,{arrayOk:!1,editType:"style"}),line:{color:c({},r.marker.line.color,{arrayOk:!1,editType:"style"}),width:c({},r.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:r.x,x0:r.x0,dx:r.dx,y:r.y,y0:r.y0,dy:r.dy,xperiod:r.xperiod,yperiod:r.yperiod,xperiod0:r.xperiod0,yperiod0:r.yperiod0,xperiodalignment:r.xperiodalignment,yperiodalignment:r.yperiodalignment,xhoverformat:a("x"),yhoverformat:a("y"),hovertext:r.hovertext,hovertemplate:o({},{keys:l.eventDataKeys}),hoverinfo:c({},i.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:s({editType:"plot"},{keys:l.eventDataKeys.concat(["label"])}),text:r.text,textposition:r.textposition,insidetextanchor:r.insidetextanchor,textangle:r.textangle,textfont:r.textfont,insidetextfont:r.insidetextfont,outsidetextfont:r.outsidetextfont,constraintext:r.constraintext,cliponaxis:r.cliponaxis,orientation:r.orientation,offset:r.offset,width:r.width,increasing:h(),decreasing:h(),totals:h(),connector:{line:{color:c({},n.color,{dflt:u.defaultLine}),width:c({},n.width,{editType:"plot"}),dash:n.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:r.offsetgroup,alignmentgroup:r.alignmentgroup,zorder:r.zorder}}}),Al=f({"src/traces/waterfall/layout_attributes.js"(t,e){e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),kl=f({"src/constants/delta.js"(t,e){e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"▲"},DECREASING:{COLOR:"#FF4136",SYMBOL:"▼"}}}}),Ml=f({"src/traces/waterfall/defaults.js"(t,e){var r=le(),n=Qn(),i=Ya().handleText,a=Hn(),o=Gn(),s=Tl(),l=H(),c=kl(),u=c.INCREASING.COLOR,h=c.DECREASING.COLOR;function p(t,e,r){t(e+".marker.color",r),t(e+".marker.line.color",l.defaultLine),t(e+".marker.line.width")}e.exports={supplyDefaults:function(t,e,n,l){function c(n,i){return r.coerce(t,e,s,n,i)}if(a(t,e,l,c)){o(t,e,l,c),c("xhoverformat"),c("yhoverformat"),c("measure"),c("orientation",e.x&&!e.y?"h":"v"),c("base"),c("offset"),c("width"),c("text"),c("hovertext"),c("hovertemplate");var f=c("textposition");i(t,e,l,c,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),"none"!==e.textposition&&(c("texttemplate"),e.texttemplate||c("textinfo")),p(c,"increasing",u),p(c,"decreasing",h),p(c,"totals","#4499FF"),c("connector.visible")&&(c("connector.mode"),c("connector.line.width")&&(c("connector.line.color"),c("connector.line.dash"))),c("zorder")}else e.visible=!1},crossTraceDefaults:function(t,e){var i,a;function o(t){return r.coerce(a._input,a,s,t)}if("group"===e.waterfallmode)for(var l=0;l0&&(g+=p?"M"+h[0]+","+d[1]+"V"+d[0]:"M"+h[1]+","+d[0]+"H"+h[0]),"between"!==f&&(o.isSum||s path").each((function(t){if(!t.isBlank){var e=s[t.dir].marker;r.select(this).call(i.fill,e.color).call(i.stroke,e.line.color).call(n.dashLine,e.line.dash,e.line.width).style("opacity",s.selectedpoints&&!t.selected?a:1)}})),l(o,s,t),o.selectAll(".lines").each((function(){var t=s.connector.line;n.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}}}),Pl=f({"src/traces/waterfall/hover.js"(t,e){var r=ir().hoverLabelText,n=H().opacity,i=ro().hoverOnBars,a=kl(),o=a.INCREASING.SYMBOL,s=a.DECREASING.SYMBOL;e.exports=function(t,e,a,l,c){var u=i(t,e,a,l,c);if(u){var h=u.cd,p=h[0].trace,f="h"===p.orientation,d=f?"x":"y",m=f?t.xa:t.ya,g=h[u.index],y=g.isSum?g.b+g.s:g.rawS;u.initial=g.b+g.s-y,u.delta=y,u.final=u.initial+u.delta;var v=A(Math.abs(u.delta));u.deltaLabel=y<0?"("+v+")":v,u.finalLabel=A(u.final),u.initialLabel=A(u.initial);var x=g.hi||p.hoverinfo,_=[];if(x&&"none"!==x&&"skip"!==x){var b="all"===x,w=x.split("+"),T=function(t){return b||-1!==w.indexOf(t)};g.isSum||(T("final")&&(f?!T("x"):!T("y"))&&_.push(u.finalLabel),T("delta")&&(y<0?_.push(u.deltaLabel+" "+s):_.push(u.deltaLabel+" "+o)),T("initial")&&_.push("Initial: "+u.initialLabel))}return _.length&&(u.extraText=_.join("
")),u.color=function(t,e){var r=t[e.dir].marker,i=r.color,a=r.line.color,o=r.line.width;return n(i)?i:n(a)&&o?a:void 0}(p,g),[u]}function A(t){return r(m,t,p[d+"hoverformat"])}}}}),zl=f({"src/traces/waterfall/event_data.js"(t,e){e.exports=function(t,e){return t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,"initial"in e&&(t.initial=e.initial),"delta"in e&&(t.delta=e.delta),"final"in e&&(t.final=e.final),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}}}),Dl=f({"src/traces/waterfall/index.js"(t,e){e.exports={attributes:Tl(),layoutAttributes:Al(),supplyDefaults:Ml().supplyDefaults,crossTraceDefaults:Ml().crossTraceDefaults,supplyLayoutDefaults:Sl(),calc:El(),crossTraceCalc:Cl(),plot:Il(),style:Ll().style,hoverPoints:Pl(),eventData:zl(),selectPoints:io(),moduleType:"trace",name:"waterfall",basePlotModule:Si(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),Ol=f({"lib/waterfall.js"(t,e){e.exports=Dl()}}),Rl=f({"src/traces/image/constants.js"(t,e){e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(t){return t.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(t){var e=t.slice(0,3);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["°","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(t){var e=t.slice(0,4);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["°","%","%",""]}}}}}),Fl=f({"src/traces/image/attributes.js"(t,e){var r,n,i=U(),a=Tn().zorder,o=Ot().hovertemplateAttrs,s=R().extendFlat,l=Rl().colormodel,c=["rgb","rgba","rgba256","hsl","hsla"],u=[],h=[];for(n=0;n0?s-4:s;for(r=0;r>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===l&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,c[u++]=255&e),1===l&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},t.fromByteArray=function(t){for(var e,n=t.length,i=n%3,a=[],o=16383,s=0,c=n-i;sc?c:s+o));return 1===i?(e=t[n-1],a.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],a.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),a.join("")};var e,r=[],n=[],i=typeof Uint8Array<"u"?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(e=0;e<64;++e)r[e]=a[e],n[a.charCodeAt(e)]=e;function o(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function s(t){return r[t>>18&63]+r[t>>12&63]+r[t>>6&63]+r[63&t]}function l(t,e,r){for(var n,i=[],a=e;a>1,u=-7,h=r?i-1:0,p=r?-1:1,f=t[e+h];for(h+=p,a=f&(1<<-u)-1,f>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=p,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=p,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,n),a-=c}return(f?-1:1)*o*Math.pow(2,a-n)},t.write=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(o=o<0;t[r+f]=255&o,f+=d,o/=256,c-=8);t[r+f-d]|=128*m}}}),ql=f({"node_modules/buffer/index.js"(t){var e=Ul(),r=Vl(),n="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=o,t.SlowBuffer=function(t){return+t!=t&&(t=0),o.alloc(+t)},t.INSPECT_MAX_BYTES=50;var i=2147483647;function a(t){if(t>i)throw new RangeError('The value "'+t+'" is invalid for option "size"');let e=new Uint8Array(t);return Object.setPrototypeOf(e,o.prototype),e}function o(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return c(t)}return s(t,e,r)}function s(t,e,r){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);let r=0|f(t,e),n=a(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(Z(t,Uint8Array)){let e=new Uint8Array(t);return h(e.buffer,e.byteOffset,e.byteLength)}return u(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(Z(t,ArrayBuffer)||t&&Z(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Z(t,SharedArrayBuffer)||t&&Z(t.buffer,SharedArrayBuffer)))return h(t,e,r);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');let n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return o.from(n,e,r);let i=function(t){if(o.isBuffer(t)){let e=0|p(t.length),r=a(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||Y(t.length)?a(0):u(t):"Buffer"===t.type&&Array.isArray(t.data)?u(t.data):void 0}(t);if(i)return i;if(typeof Symbol<"u"&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return o.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function l(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function c(t){return l(t),a(t<0?0:0|p(t))}function u(t){let e=t.length<0?0:0|p(t.length),r=a(e);for(let n=0;n=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return 0|t}function f(t,e){if(o.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||Z(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);let r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return G(t).length;default:if(i)return n?-1:H(t).length;e=(""+e).toLowerCase(),i=!0}}function d(t,e,r){let n=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===r||r>this.length)&&(r=this.length),r<=0)||(r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return E(this,e,r);case"utf8":case"utf-8":return A(this,e,r);case"ascii":return M(this,e,r);case"latin1":case"binary":return S(this,e,r);case"base64":return T(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,e,r){let n=t[e];t[e]=t[r],t[r]=n}function g(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Y(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=o.from(e,n)),o.isBuffer(e))return 0===e.length?-1:y(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):y(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function y(t,e,r,n,i){let a,o=1,s=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){let n=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){let r=!0;for(let n=0;ni&&(n=i):n=i;let a,o=e.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(e,t.length-r),t,r,n)}function T(t,r,n){return 0===r&&n===t.length?e.fromByteArray(t):e.fromByteArray(t.slice(r,n))}function A(t,e,r){r=Math.min(t.length,r);let n=[],i=e;for(;i239?4:e>223?3:e>191?2:1;if(i+o<=r){let r,n,s,l;switch(o){case 1:e<128&&(a=e);break;case 2:r=t[i+1],128==(192&r)&&(l=(31&e)<<6|63&r,l>127&&(a=l));break;case 3:r=t[i+1],n=t[i+2],128==(192&r)&&128==(192&n)&&(l=(15&e)<<12|(63&r)<<6|63&n,l>2047&&(l<55296||l>57343)&&(a=l));break;case 4:r=t[i+1],n=t[i+2],s=t[i+3],128==(192&r)&&128==(192&n)&&128==(192&s)&&(l=(15&e)<<18|(63&r)<<12|(63&n)<<6|63&s,l>65535&&l<1114112&&(a=l))}}null===a?(a=65533,o=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),i+=o}return function(t){let e=t.length;if(e<=k)return String.fromCharCode.apply(String,t);let r="",n=0;for(;nn.length?(o.isBuffer(e)||(e=o.from(e)),e.copy(n,i)):Uint8Array.prototype.set.call(n,e,i);else{if(!o.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(n,i)}i+=e.length}return n},o.byteLength=f,o.prototype._isBuffer=!0,o.prototype.swap16=function(){let t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;er&&(e+=" ... "),""},n&&(o.prototype[n]=o.prototype.inspect),o.prototype.compare=function(t,e,r,n,i){if(Z(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;let a=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),l=Math.min(a,s),c=this.slice(n,i),u=t.slice(e,r);for(let t=0;t>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}let i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return v(this,t,e,r);case"utf8":case"utf-8":return x(this,t,e,r);case"ascii":case"latin1":case"binary":return _(this,t,e,r);case"base64":return b(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,t,e,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var k=4096;function M(t,e,r){let n="";r=Math.min(t.length,r);for(let i=e;in)&&(r=n);let i="";for(let n=e;nr)throw new RangeError("Trying to access beyond buffer length")}function L(t,e,r,n,i,a){if(!o.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function P(t,e,r,n,i){N(e,n,i,t,r,7);let a=Number(e&BigInt(4294967295));t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a;let o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,r}function z(t,e,r,n,i){N(e,n,i,t,r,7);let a=Number(e&BigInt(4294967295));t[r+7]=a,a>>=8,t[r+6]=a,a>>=8,t[r+5]=a,a>>=8,t[r+4]=a;let o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=o,o>>=8,t[r+2]=o,o>>=8,t[r+1]=o,o>>=8,t[r]=o,r+8}function D(t,e,r,n,i,a){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(t,e,n,i,a){return e=+e,n>>>=0,a||D(t,0,n,4),r.write(t,e,n,i,23,4),n+4}function R(t,e,n,i,a){return e=+e,n>>>=0,a||D(t,0,n,8),r.write(t,e,n,i,52,8),n+8}o.prototype.slice=function(t,e){let r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||I(t,e,this.length);let n=this[t],i=1,a=0;for(;++a>>=0,e>>>=0,r||I(t,e,this.length);let n=this[t+--e],i=1;for(;e>0&&(i*=256);)n+=this[t+--e]*i;return n},o.prototype.readUint8=o.prototype.readUInt8=function(t,e){return t>>>=0,e||I(t,1,this.length),this[t]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(t,e){return t>>>=0,e||I(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(t,e){return t>>>=0,e||I(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(t,e){return t>>>=0,e||I(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(t,e){return t>>>=0,e||I(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readBigUInt64LE=$((function(t){U(t>>>=0,"offset");let e=this[t],r=this[t+7];(void 0===e||void 0===r)&&V(t,this.length-8);let n=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,i=this[++t]+256*this[++t]+65536*this[++t]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");let e=this[t],r=this[t+7];(void 0===e||void 0===r)&&V(t,this.length-8);let n=e*2**24+65536*this[++t]+256*this[++t]+this[++t],i=this[++t]*2**24+65536*this[++t]+256*this[++t]+r;return(BigInt(n)<>>=0,e>>>=0,r||I(t,e,this.length);let n=this[t],i=1,a=0;for(;++a=i&&(n-=Math.pow(2,8*e)),n},o.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||I(t,e,this.length);let n=e,i=1,a=this[t+--n];for(;n>0&&(i*=256);)a+=this[t+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*e)),a},o.prototype.readInt8=function(t,e){return t>>>=0,e||I(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},o.prototype.readInt16LE=function(t,e){t>>>=0,e||I(t,2,this.length);let r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},o.prototype.readInt16BE=function(t,e){t>>>=0,e||I(t,2,this.length);let r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},o.prototype.readInt32LE=function(t,e){return t>>>=0,e||I(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,e){return t>>>=0,e||I(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readBigInt64LE=$((function(t){U(t>>>=0,"offset");let e=this[t],r=this[t+7];(void 0===e||void 0===r)&&V(t,this.length-8);let n=this[t+4]+256*this[t+5]+65536*this[t+6]+(r<<24);return(BigInt(n)<>>=0,"offset");let e=this[t],r=this[t+7];(void 0===e||void 0===r)&&V(t,this.length-8);let n=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(n)<>>=0,e||I(t,4,this.length),r.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,e){return t>>>=0,e||I(t,4,this.length),r.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,e){return t>>>=0,e||I(t,8,this.length),r.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,e){return t>>>=0,e||I(t,8,this.length),r.read(this,t,!1,52,8)},o.prototype.writeUintLE=o.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||L(this,t,e,r,Math.pow(2,8*r)-1,0);let i=1,a=0;for(this[e]=255&t;++a>>=0,r>>>=0,n||L(this,t,e,r,Math.pow(2,8*r)-1,0);let i=r-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+r},o.prototype.writeUint8=o.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,1,255,0),this[e]=255&t,e+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeBigUInt64LE=$((function(t,e=0){return P(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),o.prototype.writeBigUInt64BE=$((function(t,e=0){return z(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),o.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){let n=Math.pow(2,8*r-1);L(this,t,e,r,n-1,-n)}let i=0,a=1,o=0;for(this[e]=255&t;++i>>=0,!n){let n=Math.pow(2,8*r-1);L(this,t,e,r,n-1,-n)}let i=r-1,a=1,o=0;for(this[e+i]=255&t;--i>=0&&(a*=256);)t<0&&0===o&&0!==this[e+i+1]&&(o=1),this[e+i]=(t/a|0)-o&255;return e+r},o.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},o.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},o.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||L(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeBigInt64LE=$((function(t,e=0){return P(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),o.prototype.writeBigInt64BE=$((function(t,e=0){return z(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),o.prototype.writeFloatLE=function(t,e,r){return O(this,t,e,!0,r)},o.prototype.writeFloatBE=function(t,e,r){return O(this,t,e,!1,r)},o.prototype.writeDoubleLE=function(t,e,r){return R(this,t,e,!0,r)},o.prototype.writeDoubleBE=function(t,e,r){return R(this,t,e,!1,r)},o.prototype.copy=function(t,e,r,n){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&0!==n&&(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(i=e;i=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function N(t,e,r,n,i,a){if(t>r||t3?0===e||e===BigInt(0)?`>= 0${i} and < 2${i} ** ${8*(a+1)}${i}`:`>= -(2${i} ** ${8*(a+1)-1}${i}) and < 2 ** ${8*(a+1)-1}${i}`:`>= ${e}${i} and <= ${r}${i}`,new F.ERR_OUT_OF_RANGE("value",n,t)}!function(t,e,r){U(e,"offset"),(void 0===t[e]||void 0===t[e+r])&&V(e,t.length-(r+1))}(n,i,a)}function U(t,e){if("number"!=typeof t)throw new F.ERR_INVALID_ARG_TYPE(e,"number",t)}function V(t,e,r){throw Math.floor(t)!==t?(U(t,r),new F.ERR_OUT_OF_RANGE(r||"offset","an integer",t)):e<0?new F.ERR_BUFFER_OUT_OF_BOUNDS:new F.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${e}`,t)}B("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),B("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),B("ERR_OUT_OF_RANGE",(function(t,e,r){let n=`The value of "${t}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=j(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=j(i)),i+="n"),n+=` It must be ${e}. Received ${i}`,n}),RangeError);var q=/[^+/0-9A-Za-z-_]/g;function H(t,e){e=e||1/0;let r,n=t.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;a.push(r)}else if(r<2048){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function G(t){return e.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function W(t,e,r,n){let i;for(i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function Z(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function Y(t){return t!=t}var X=function(){let t="0123456789abcdef",e=new Array(256);for(let r=0;r<16;++r){let n=16*r;for(let i=0;i<16;++i)e[n+i]=t[r]+t[i]}return e}();function $(t){return typeof BigInt>"u"?K:t}function K(){throw new Error("BigInt not supported")}}}),Hl=f({"node_modules/has-symbols/shams.js"(t,e){e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),r=Object(e);if("string"==typeof e||"[object Symbol]"!==Object.prototype.toString.call(e)||"[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length||"function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var n=Object.getOwnPropertySymbols(t);if(1!==n.length||n[0]!==e||!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(42!==i.value||!0!==i.enumerable)return!1}return!0}}}),Gl=f({"node_modules/has-tostringtag/shams.js"(t,e){var r=Hl();e.exports=function(){return r()&&!!Symbol.toStringTag}}}),Wl=f({"node_modules/es-errors/index.js"(t,e){e.exports=Error}}),Zl=f({"node_modules/es-errors/eval.js"(t,e){e.exports=EvalError}}),Yl=f({"node_modules/es-errors/range.js"(t,e){e.exports=RangeError}}),Xl=f({"node_modules/es-errors/ref.js"(t,e){e.exports=ReferenceError}}),$l=f({"node_modules/es-errors/syntax.js"(t,e){e.exports=SyntaxError}}),Kl=f({"node_modules/es-errors/type.js"(t,e){e.exports=TypeError}}),Jl=f({"node_modules/es-errors/uri.js"(t,e){e.exports=URIError}}),Ql=f({"node_modules/has-symbols/index.js"(t,e){var r=typeof Symbol<"u"&&Symbol,n=Hl();e.exports=function(){return"function"==typeof r&&"function"==typeof Symbol&&"symbol"==typeof r("foo")&&"symbol"==typeof Symbol("bar")&&n()}}}),tc=f({"node_modules/has-proto/index.js"(t,e){var r={foo:{}},n=Object;e.exports=function(){return{__proto__:r}.foo===r.foo&&!({__proto__:null}instanceof n)}}}),ec=f({"node_modules/function-bind/implementation.js"(t,e){var r=Object.prototype.toString,n=Math.max,i=function(t,e){for(var r=[],n=0;n"u"||!y?r:y(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?r:ArrayBuffer,"%ArrayIteratorPrototype%":m&&y?y([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":v,"%AsyncGenerator%":v,"%AsyncGeneratorFunction%":v,"%AsyncIteratorPrototype%":v,"%Atomics%":typeof Atomics>"u"?r:Atomics,"%BigInt%":typeof BigInt>"u"?r:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?r:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":n,"%eval%":eval,"%EvalError%":i,"%Float32Array%":typeof Float32Array>"u"?r:Float32Array,"%Float64Array%":typeof Float64Array>"u"?r:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?r:FinalizationRegistry,"%Function%":u,"%GeneratorFunction%":v,"%Int8Array%":typeof Int8Array>"u"?r:Int8Array,"%Int16Array%":typeof Int16Array>"u"?r:Int16Array,"%Int32Array%":typeof Int32Array>"u"?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":m&&y?y(y([][Symbol.iterator]())):r,"%JSON%":"object"==typeof JSON?JSON:r,"%Map%":typeof Map>"u"?r:Map,"%MapIteratorPrototype%":typeof Map>"u"||!m||!y?r:y((new Map)[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?r:Promise,"%Proxy%":typeof Proxy>"u"?r:Proxy,"%RangeError%":a,"%ReferenceError%":o,"%Reflect%":typeof Reflect>"u"?r:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?r:Set,"%SetIteratorPrototype%":typeof Set>"u"||!m||!y?r:y((new Set)[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":m&&y?y(""[Symbol.iterator]()):r,"%Symbol%":m?Symbol:r,"%SyntaxError%":s,"%ThrowTypeError%":d,"%TypedArray%":x,"%TypeError%":l,"%Uint8Array%":typeof Uint8Array>"u"?r:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?r:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?r:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?r:Uint32Array,"%URIError%":c,"%WeakMap%":typeof WeakMap>"u"?r:WeakMap,"%WeakRef%":typeof WeakRef>"u"?r:WeakRef,"%WeakSet%":typeof WeakSet>"u"?r:WeakSet};if(y)try{null.error}catch(t){b=y(y(t)),_["%Error.prototype%"]=b}var b,w=function t(e){var r;if("%AsyncFunction%"===e)r=h("async function () {}");else if("%GeneratorFunction%"===e)r=h("function* () {}");else if("%AsyncGeneratorFunction%"===e)r=h("async function* () {}");else if("%AsyncGenerator%"===e){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if("%AsyncIteratorPrototype%"===e){var i=t("%AsyncGenerator%");i&&y&&(r=y(i.prototype))}return _[e]=r,r},T={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},A=rc(),k=nc(),M=A.call(Function.call,Array.prototype.concat),S=A.call(Function.apply,Array.prototype.splice),E=A.call(Function.call,String.prototype.replace),C=A.call(Function.call,String.prototype.slice),I=A.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,P=/\\(\\)?/g,z=function(t,e){var r,n=t;if(k(T,n)&&(n="%"+(r=T[n])[0]+"%"),k(_,n)){var i=_[n];if(i===v&&(i=w(n)),typeof i>"u"&&!e)throw new l("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:r,name:n,value:i}}throw new s("intrinsic "+t+" does not exist!")};e.exports=function(t,e){if("string"!=typeof t||0===t.length)throw new l("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new l('"allowMissing" argument must be a boolean');if(null===I(/^%?[^%]*%?$/,t))throw new s("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(t){var e=C(t,0,1),r=C(t,-1);if("%"===e&&"%"!==r)throw new s("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==e)throw new s("invalid intrinsic syntax, expected opening `%`");var n=[];return E(t,L,(function(t,e,r,i){n[n.length]=r?E(i,P,"$1"):e||t})),n}(t),n=r.length>0?r[0]:"",i=z("%"+n+"%",e),a=i.name,o=i.value,c=!1,u=i.alias;u&&(n=u[0],S(r,M([0,1],u)));for(var h=1,f=!0;h=r.length){var y=p(o,d);o=(f=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:o[d]}else f=k(o,d),o=o[d];f&&!c&&(_[a]=o)}}return o}}}),ac=f({"node_modules/es-define-property/index.js"(t,e){var r=ic()("%Object.defineProperty%",!0)||!1;if(r)try{r({},"a",{value:1})}catch{r=!1}e.exports=r}}),oc=f({"node_modules/gopd/index.js"(t,e){var r=ic()("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch{r=null}e.exports=r}}),sc=f({"node_modules/define-data-property/index.js"(t,e){var r=ac(),n=$l(),i=Kl(),a=oc();e.exports=function(t,e,o){if(!t||"object"!=typeof t&&"function"!=typeof t)throw new i("`obj` must be an object or a function`");if("string"!=typeof e&&"symbol"!=typeof e)throw new i("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new i("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new i("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new i("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new i("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],h=!!a&&a(t,e);if(r)r(t,e,{configurable:null===c&&h?h.configurable:!c,enumerable:null===s&&h?h.enumerable:!s,value:o,writable:null===l&&h?h.writable:!l});else{if(!u&&(s||l||c))throw new n("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");t[e]=o}}}}),lc=f({"node_modules/has-property-descriptors/index.js"(t,e){var r=ac(),n=function(){return!!r};n.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch{return!0}},e.exports=n}}),cc=f({"node_modules/set-function-length/index.js"(t,e){var r=ic(),n=sc(),i=lc()(),a=oc(),o=Kl(),s=r("%Math.floor%");e.exports=function(t,e){if("function"!=typeof t)throw new o("`fn` is not a function");if("number"!=typeof e||e<0||e>4294967295||s(e)!==e)throw new o("`length` must be a positive 32-bit integer");var r=arguments.length>2&&!!arguments[2],l=!0,c=!0;if("length"in t&&a){var u=a(t,"length");u&&!u.configurable&&(l=!1),u&&!u.writable&&(c=!1)}return(l||c||!r)&&(i?n(t,"length",e,!0,!0):n(t,"length",e)),t}}}),uc=f({"node_modules/call-bind/index.js"(t,e){var r=rc(),n=ic(),i=cc(),a=Kl(),o=n("%Function.prototype.apply%"),s=n("%Function.prototype.call%"),l=n("%Reflect.apply%",!0)||r.call(s,o),c=ac(),u=n("%Math.max%");e.exports=function(t){if("function"!=typeof t)throw new a("a function is required");var e=l(r,s,arguments);return i(e,1+u(0,t.length-(arguments.length-1)),!0)};var h=function(){return l(r,o,arguments)};c?c(e.exports,"apply",{value:h}):e.exports.apply=h}}),hc=f({"node_modules/call-bind/callBound.js"(t,e){var r=ic(),n=uc(),i=n(r("String.prototype.indexOf"));e.exports=function(t,e){var a=r(t,!!e);return"function"==typeof a&&i(t,".prototype.")>-1?n(a):a}}}),pc=f({"node_modules/is-arguments/index.js"(t,e){var r=Gl()(),n=hc()("Object.prototype.toString"),i=function(t){return!(r&&t&&"object"==typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===n(t)},a=function(t){return!!i(t)||null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Array]"!==n(t)&&"[object Function]"===n(t.callee)},o=function(){return i(arguments)}();i.isLegacyArguments=a,e.exports=o?i:a}}),fc=f({"node_modules/is-generator-function/index.js"(t,e){var r,n=Object.prototype.toString,i=Function.prototype.toString,a=/^\s*(?:function)?\*/,o=Gl()(),s=Object.getPrototypeOf;e.exports=function(t){if("function"!=typeof t)return!1;if(a.test(i.call(t)))return!0;if(!o)return"[object GeneratorFunction]"===n.call(t);if(!s)return!1;if(typeof r>"u"){var e=function(){if(!o)return!1;try{return Function("return function*() {}")()}catch{}}();r=!!e&&s(e)}return s(t)===r}}}),dc=f({"node_modules/is-callable/index.js"(t,e){var r,n,i=Function.prototype.toString,a="object"==typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"==typeof a&&"function"==typeof Object.defineProperty)try{r=Object.defineProperty({},"length",{get:function(){throw n}}),n={},a((function(){throw 42}),null,r)}catch(t){t!==n&&(a=null)}else a=null;var o,s=/^\s*class\b/,l=function(t){try{var e=i.call(t);return s.test(e)}catch{return!1}},c=function(t){try{return!l(t)&&(i.call(t),!0)}catch{return!1}},u=Object.prototype.toString,h="function"==typeof Symbol&&!!Symbol.toStringTag,p=!(0 in[,]),f=function(){return!1};"object"==typeof document&&(o=document.all,u.call(o)===u.call(document.all)&&(f=function(t){if((p||!t)&&(typeof t>"u"||"object"==typeof t))try{var e=u.call(t);return("[object HTMLAllCollection]"===e||"[object HTML document.all class]"===e||"[object HTMLCollection]"===e||"[object Object]"===e)&&null==t("")}catch{}return!1})),e.exports=a?function(t){if(f(t))return!0;if(!t||"function"!=typeof t&&"object"!=typeof t)return!1;try{a(t,null,r)}catch(t){if(t!==n)return!1}return!l(t)&&c(t)}:function(t){if(f(t))return!0;if(!t||"function"!=typeof t&&"object"!=typeof t)return!1;if(h)return c(t);if(l(t))return!1;var e=u.call(t);return!("[object Function]"!==e&&"[object GeneratorFunction]"!==e&&!/^\[object HTML/.test(e))&&c(t)}}}),mc=f({"node_modules/for-each/index.js"(t,e){var r=dc(),n=Object.prototype.toString,i=Object.prototype.hasOwnProperty;e.exports=function(t,e,a){if(!r(e))throw new TypeError("iterator must be a function");var o;arguments.length>=3&&(o=a),"[object Array]"===n.call(t)?function(t,e,r){for(var n=0,a=t.length;n"u"?window:globalThis;e.exports=function(){for(var t=[],e=0;e"u"?window:globalThis,u=n(),h=a("String.prototype.slice"),p=Object.getPrototypeOf,f=a("Array.prototype.indexOf",!0)||function(t,e){for(var r=0;r-1?e:"Object"===e&&function(t){var e=!1;return r(d,(function(r,n){if(!e)try{r(t),e=h(n,1)}catch{}})),e}(t)}return o?function(t){var e=!1;return r(d,(function(r,n){if(!e)try{"$"+r(t)===n&&(e=h(n,1))}catch{}})),e}(t):null}}}),vc=f({"node_modules/is-typed-array/index.js"(t,e){var r=mc(),n=gc(),i=hc(),a=i("Object.prototype.toString"),o=Gl()(),s=oc(),l=typeof globalThis>"u"?window:globalThis,c=n(),u=i("Array.prototype.indexOf",!0)||function(t,e){for(var r=0;r-1}return!!s&&function(t){var e=!1;return r(p,(function(r,n){if(!e)try{e=r.call(t)===n}catch{}})),e}(t)}}}),xc=f({"node_modules/util/support/types.js"(t){var e=pc(),r=fc(),n=yc(),i=vc();function a(t){return t.call.bind(t)}var o,s,l=typeof BigInt<"u",c=typeof Symbol<"u",u=a(Object.prototype.toString),h=a(Number.prototype.valueOf),p=a(String.prototype.valueOf),f=a(Boolean.prototype.valueOf);function d(t,e){if("object"!=typeof t)return!1;try{return e(t),!0}catch{return!1}}function m(t){return"[object Map]"===u(t)}function g(t){return"[object Set]"===u(t)}function y(t){return"[object WeakMap]"===u(t)}function v(t){return"[object WeakSet]"===u(t)}function x(t){return"[object ArrayBuffer]"===u(t)}function _(t){return!(typeof ArrayBuffer>"u")&&(x.working?x(t):t instanceof ArrayBuffer)}function b(t){return"[object DataView]"===u(t)}function w(t){return!(typeof DataView>"u")&&(b.working?b(t):t instanceof DataView)}l&&(o=a(BigInt.prototype.valueOf)),c&&(s=a(Symbol.prototype.valueOf)),t.isArgumentsObject=e,t.isGeneratorFunction=r,t.isTypedArray=i,t.isPromise=function(t){return typeof Promise<"u"&&t instanceof Promise||null!==t&&"object"==typeof t&&"function"==typeof t.then&&"function"==typeof t.catch},t.isArrayBufferView=function(t){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(t):i(t)||w(t)},t.isUint8Array=function(t){return"Uint8Array"===n(t)},t.isUint8ClampedArray=function(t){return"Uint8ClampedArray"===n(t)},t.isUint16Array=function(t){return"Uint16Array"===n(t)},t.isUint32Array=function(t){return"Uint32Array"===n(t)},t.isInt8Array=function(t){return"Int8Array"===n(t)},t.isInt16Array=function(t){return"Int16Array"===n(t)},t.isInt32Array=function(t){return"Int32Array"===n(t)},t.isFloat32Array=function(t){return"Float32Array"===n(t)},t.isFloat64Array=function(t){return"Float64Array"===n(t)},t.isBigInt64Array=function(t){return"BigInt64Array"===n(t)},t.isBigUint64Array=function(t){return"BigUint64Array"===n(t)},m.working=typeof Map<"u"&&m(new Map),t.isMap=function(t){return!(typeof Map>"u")&&(m.working?m(t):t instanceof Map)},g.working=typeof Set<"u"&&g(new Set),t.isSet=function(t){return!(typeof Set>"u")&&(g.working?g(t):t instanceof Set)},y.working=typeof WeakMap<"u"&&y(new WeakMap),t.isWeakMap=function(t){return!(typeof WeakMap>"u")&&(y.working?y(t):t instanceof WeakMap)},v.working=typeof WeakSet<"u"&&v(new WeakSet),t.isWeakSet=function(t){return v(t)},x.working=typeof ArrayBuffer<"u"&&x(new ArrayBuffer),t.isArrayBuffer=_,b.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&b(new DataView(new ArrayBuffer(1),0,1)),t.isDataView=w;var T=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function A(t){return"[object SharedArrayBuffer]"===u(t)}function k(t){return!(typeof T>"u")&&(typeof A.working>"u"&&(A.working=A(new T)),A.working?A(t):t instanceof T)}function M(t){return d(t,h)}function S(t){return d(t,p)}function E(t){return d(t,f)}function C(t){return l&&d(t,o)}function I(t){return c&&d(t,s)}t.isSharedArrayBuffer=k,t.isAsyncFunction=function(t){return"[object AsyncFunction]"===u(t)},t.isMapIterator=function(t){return"[object Map Iterator]"===u(t)},t.isSetIterator=function(t){return"[object Set Iterator]"===u(t)},t.isGeneratorObject=function(t){return"[object Generator]"===u(t)},t.isWebAssemblyCompiledModule=function(t){return"[object WebAssembly.Module]"===u(t)},t.isNumberObject=M,t.isStringObject=S,t.isBooleanObject=E,t.isBigIntObject=C,t.isSymbolObject=I,t.isBoxedPrimitive=function(t){return M(t)||S(t)||E(t)||C(t)||I(t)},t.isAnyArrayBuffer=function(t){return typeof Uint8Array<"u"&&(_(t)||k(t))},["isProxy","isExternal","isModuleNamespaceObject"].forEach((function(e){Object.defineProperty(t,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})}))}}),_c=f({"node_modules/util/support/isBufferBrowser.js"(t,e){e.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}}}),bc=f({"(disabled):node_modules/util/util.js"(t){var e=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),r={},n=0;n=a)return t;switch(t){case"%s":return String(i[n++]);case"%d":return Number(i[n++]);case"%j":try{return JSON.stringify(i[n++])}catch{return"[Circular]"}default:return t}})),l=i[n];n"u")return function(){return t.deprecate(e,r).apply(this,arguments)};var n=!1;return function(){if(!n){if(c.throwDeprecation)throw new Error(r);c.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}};var n,i={},a=/^$/;function o(e,r){var n={seen:[],stylize:l};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(r)?n.showHidden=r:r&&t._extend(n,r),v(n.showHidden)&&(n.showHidden=!1),v(n.depth)&&(n.depth=2),v(n.colors)&&(n.colors=!1),v(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=s),u(n,e,n.depth)}function s(t,e){var r=o.styles[e];return r?"["+o.colors[r][0]+"m"+t+"["+o.colors[r][1]+"m":t}function l(t,e){return t}function u(e,r,n){if(e.customInspect&&r&&T(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return y(i)||(i=u(e,i,n)),i}var a=function(t,e){if(v(e))return t.stylize("undefined","undefined");if(y(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return g(e)?t.stylize(""+e,"number"):d(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}(e,r);if(a)return a;var o=Object.keys(r),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),w(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(r);if(0===o.length){if(T(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(x(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(b(r))return e.stylize(Date.prototype.toString.call(r),"date");if(w(r))return h(r)}var c,_="",A=!1,k=["{","}"];return f(r)&&(A=!0,k=["[","]"]),T(r)&&(_=" [Function"+(r.name?": "+r.name:"")+"]"),x(r)&&(_=" "+RegExp.prototype.toString.call(r)),b(r)&&(_=" "+Date.prototype.toUTCString.call(r)),w(r)&&(_=" "+h(r)),0!==o.length||A&&0!=r.length?n<0?x(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),c=A?function(t,e,r,n,i){for(var a=[],o=0,s=e.length;o60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}(c,_,k)):k[0]+_+k[1]}function h(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),S(n,i)||(o="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=m(r)?u(t,l.value,null):u(t,l.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),v(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=t.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=t.stylize(o,"string"))}return o+": "+s}function f(t){return Array.isArray(t)}function d(t){return"boolean"==typeof t}function m(t){return null===t}function g(t){return"number"==typeof t}function y(t){return"string"==typeof t}function v(t){return void 0===t}function x(t){return _(t)&&"[object RegExp]"===A(t)}function _(t){return"object"==typeof t&&null!==t}function b(t){return _(t)&&"[object Date]"===A(t)}function w(t){return _(t)&&("[object Error]"===A(t)||t instanceof Error)}function T(t){return"function"==typeof t}function A(t){return Object.prototype.toString.call(t)}function k(t){return t<10?"0"+t.toString(10):t.toString(10)}n=(n="false").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),a=new RegExp("^"+n+"$","i"),t.debuglog=function(e){if(e=e.toUpperCase(),!i[e])if(a.test(e)){var r=c.pid;i[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else i[e]=function(){};return i[e]},t.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.types=xc(),t.isArray=f,t.isBoolean=d,t.isNull=m,t.isNullOrUndefined=function(t){return null==t},t.isNumber=g,t.isString=y,t.isSymbol=function(t){return"symbol"==typeof t},t.isUndefined=v,t.isRegExp=x,t.types.isRegExp=x,t.isObject=_,t.isDate=b,t.types.isDate=b,t.isError=w,t.types.isNativeError=w,t.isFunction=T,t.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||typeof t>"u"},t.isBuffer=_c();var M=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function S(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.log=function(){var e,r;console.log("%s - %s",(r=[k((e=new Date).getHours()),k(e.getMinutes()),k(e.getSeconds())].join(":"),[e.getDate(),M[e.getMonth()],r].join(" ")),t.format.apply(t,arguments))},t.inherits=jl(),t._extend=function(t,e){if(!e||!_(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t};var E=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function C(t,e){if(!t){var r=new Error("Promise was rejected with a falsy value");r.reason=t,t=r}return e(t)}t.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(E&&t[E]){var r;if("function"!=typeof(r=t[E]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,E,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var e,r,n=new Promise((function(t,n){e=t,r=n})),i=[],a=0;a0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r}},{key:"concat",value:function(t){if(0===this.length)return a.alloc(0);for(var e=a.allocUnsafe(t>>>0),r=this.head,n=0;r;)l(r.data,e,n),n+=r.data.length,r=r.next;return e}},{key:"consume",value:function(t,e){var r;return ti.length?i.length:t;if(a===i.length?n+=i:n+=i.slice(0,t),0==(t-=a)){a===i.length?(++r,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(t){var e=a.allocUnsafe(t),r=this.head,n=1;for(r.data.copy(e),t-=r.data.length;r=r.next;){var i=r.data,o=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,o),0==(t-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,e}},{key:s,value:function(t,e){return o(this,function(t){for(var e=1;e2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:2===r?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}n("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(t,e,r){var n,a;if("string"==typeof e&&function(t,e){return t.substr(0,4)===e}(e,"not ")?(n="must not be",e=e.replace(/^not /,"")):n="must be",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-9,r)===e}(t," argument"))a="The ".concat(t," ").concat(n," ").concat(i(e,"type"));else{var o=function(t,e,r){return"number"!=typeof r&&(r=0),!(r+1>t.length)&&-1!==t.indexOf(".",r)}(t)?"property":"argument";a='The "'.concat(t,'" ').concat(o," ").concat(n," ").concat(i(e,"type"))}return a+". Received type ".concat(typeof r)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=r}}),kc=f({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(t,e){var r=Ac().codes.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(t,e,n,i){var a=function(t,e,r){return null!=t.highWaterMark?t.highWaterMark:e?t[r]:null}(e,i,n);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new r(i?n:"highWaterMark",a);return Math.floor(a)}return t.objectMode?16:16384}}}}),Mc=f({"node_modules/util-deprecate/browser.js"(t,e){function r(t){try{if(!window.localStorage)return!1}catch{return!1}var e=window.localStorage[t];return null!=e&&"true"===String(e).toLowerCase()}e.exports=function(t,e){if(r("noDeprecation"))return t;var n=!1;return function(){if(!n){if(r("throwDeprecation"))throw new Error(e);r("traceDeprecation")?console.trace(e):console.warn(e),n=!0}return t.apply(this,arguments)}}}}),Sc=f({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(t,e){function r(t){var e=this;this.next=null,this.entry=null,this.finish=function(){!function(t,e){var r=t.entry;for(t.entry=null;r;){var n=r.callback;e.pendingcb--,n(undefined),r=r.next}e.corkedRequestsFree.next=t}(e,t)}}var n;e.exports=A,A.WritableState=T;var i,a={deprecate:Mc()},o=Nl(),s=ql().Buffer,l=window.Uint8Array||function(){},u=Tc(),h=kc().getHighWaterMark,p=Ac().codes,f=p.ERR_INVALID_ARG_TYPE,d=p.ERR_METHOD_NOT_IMPLEMENTED,m=p.ERR_MULTIPLE_CALLBACK,g=p.ERR_STREAM_CANNOT_PIPE,y=p.ERR_STREAM_DESTROYED,v=p.ERR_STREAM_NULL_VALUES,x=p.ERR_STREAM_WRITE_AFTER_END,_=p.ERR_UNKNOWN_ENCODING,b=u.errorOrDestroy;function w(){}function T(t,e,i){n=n||Ec(),t=t||{},"boolean"!=typeof i&&(i=e instanceof n),this.objectMode=!!t.objectMode,i&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=h(this,t,"writableHighWaterMark",i),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=!1===t.decodeStrings;this.decodeStrings=!a,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new m;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,i){--e.pendingcb,r?(c.nextTick(i,n),c.nextTick(I,t,e),t._writableState.errorEmitted=!0,b(t,n)):(i(n),t._writableState.errorEmitted=!0,b(t,n),I(t,e))}(t,r,n,e,i);else{var a=E(r)||t.destroyed;!a&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&S(t,r),n?c.nextTick(M,t,r,a,i):M(t,r,a,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new r(this)}function A(t){var e=this instanceof(n=n||Ec());if(!e&&!i.call(A,this))return new A(t);this._writableState=new T(t,this,e),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),o.call(this)}function k(t,e,r,n,i,a,o){e.writelen=n,e.writecb=o,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new y("write")):r?t._writev(i,e.onwrite):t._write(i,a,e.onwrite),e.sync=!1}function M(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),I(t,e)}function S(t,e){e.bufferProcessing=!0;var n=e.bufferedRequest;if(t._writev&&n&&n.next){var i=e.bufferedRequestCount,a=new Array(i),o=e.corkedRequestsFree;o.entry=n;for(var s=0,l=!0;n;)a[s]=n,n.isBuf||(l=!1),n=n.next,s+=1;a.allBuffers=l,k(t,e,!0,e.length,a,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new r(e),e.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,u=n.encoding,h=n.callback;if(k(t,e,!1,e.objectMode?1:c.length,c,u,h),n=n.next,e.bufferedRequestCount--,e.writing)break}null===n&&(e.lastBufferedRequest=null)}e.bufferedRequest=n,e.bufferProcessing=!1}function E(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function C(t,e){t._final((function(r){e.pendingcb--,r&&b(t,r),e.prefinished=!0,t.emit("prefinish"),I(t,e)}))}function I(t,e){var r=E(e);if(r&&(function(t,e){!e.prefinished&&!e.finalCalled&&("function"!=typeof t._final||e.destroyed?(e.prefinished=!0,t.emit("prefinish")):(e.pendingcb++,e.finalCalled=!0,c.nextTick(C,t,e)))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"),e.autoDestroy))){var n=t._readableState;(!n||n.autoDestroy&&n.endEmitted)&&t.destroy()}return r}jl()(A,o),T.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(T.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(i=Function.prototype[Symbol.hasInstance],Object.defineProperty(A,Symbol.hasInstance,{value:function(t){return!!i.call(this,t)||this===A&&t&&t._writableState instanceof T}})):i=function(t){return t instanceof this},A.prototype.pipe=function(){b(this,new g)},A.prototype.write=function(t,e,r){var n=this._writableState,i=!1,a=!n.objectMode&&function(t){return s.isBuffer(t)||t instanceof l}(t);return a&&!s.isBuffer(t)&&(t=function(t){return s.from(t)}(t)),"function"==typeof e&&(r=e,e=null),a?e="buffer":e||(e=n.defaultEncoding),"function"!=typeof r&&(r=w),n.ending?function(t,e){var r=new x;b(t,r),c.nextTick(e,r)}(this,r):(a||function(t,e,r,n){var i;return null===r?i=new v:"string"!=typeof r&&!e.objectMode&&(i=new f("chunk",["string","Buffer"],r)),!i||(b(t,i),c.nextTick(n,i),!1)}(this,n,t,r))&&(n.pendingcb++,i=function(t,e,r,n,i,a){if(!r){var o=function(t,e,r){return!t.objectMode&&!1!==t.decodeStrings&&"string"==typeof e&&(e=s.from(e,r)),e}(e,n,i);n!==o&&(r=!0,i="buffer",n=o)}var l=e.objectMode?1:n.length;e.length+=l;var c=e.length-1))throw new _(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(A.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(A.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),A.prototype._write=function(t,e,r){r(new d("_write()"))},A.prototype._writev=null,A.prototype.end=function(t,e,r){var n=this._writableState;return"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||function(t,e,r){e.ending=!0,I(t,e),r&&(e.finished?c.nextTick(r):t.once("finish",r)),e.ended=!0,t.writable=!1}(this,n,r),this},Object.defineProperty(A.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(A.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),A.prototype.destroy=u.destroy,A.prototype._undestroy=u.undestroy,A.prototype._destroy=function(t,e){e(t)}}}),Ec=f({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_duplex.js"(t,e){var r=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};e.exports=l;var n,i,a,o=Dc(),s=Sc();for(jl()(l,o),n=r(s.prototype),a=0;a>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function o(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function s(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function l(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function c(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function u(t){return t.toString(this.encoding)}function h(t){return t&&t.length?this.write(t):""}t.StringDecoder=n,n.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0?(a>0&&(t.lastNeed=a-1),a):--n=0?(a>0&&(t.lastNeed=a-2),a):--n=0?(a>0&&(2===a?a=0:t.lastNeed=a-3),a):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},n.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}}}),Lc=f({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(t,e){var r=Ac().codes.ERR_STREAM_PREMATURE_CLOSE;function n(){}e.exports=function t(e,i,a){if("function"==typeof i)return t(e,null,i);i||(i={}),a=function(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,n=new Array(r),i=0;i0)if("string"!=typeof e&&!c.objectMode&&Object.getPrototypeOf(e)!==o.prototype&&(e=function(t){return o.from(t)}(e)),i)c.endEmitted?b(t,new _):M(t,c,e,!0);else if(c.ended)b(t,new v);else{if(c.destroyed)return!1;c.reading=!1,c.decoder&&!r?(e=c.decoder.write(e),c.objectMode||0!==e.length?M(t,c,e,!1):L(t,c)):M(t,c,e,!1)}else i||(c.reading=!1,L(t,c));return!c.ended&&(c.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=S?t=S:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function C(t){var e=t._readableState;n("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(n("emitReadable",e.flowing),e.emittedReadable=!0,c.nextTick(I,t))}function I(t){var e=t._readableState;n("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,R(t)}function L(t,e){e.readingMore||(e.readingMore=!0,c.nextTick(P,t,e))}function P(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function D(t){n("readable nexttick read 0"),t.read(0)}function O(t,e){n("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),R(t),e.flowing&&!e.reading&&t.read(0)}function R(t){var e=t._readableState;for(n("flow",e.flowing);e.flowing&&null!==t.read(););}function F(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r);var r}function B(t){var e=t._readableState;n("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,c.nextTick(j,e,t))}function j(t,e){if(n("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}function N(t,e){for(var r=0,n=t.length;r=e.highWaterMark:e.length>0)||e.ended))return n("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):C(this),null;if(0===(t=E(t,e))&&e.ended)return 0===e.length&&B(this),null;var i,a=e.needReadable;return n("need readable",a),(0===e.length||e.length-t0?F(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&B(this)),null!==i&&this.emit("data",i),i},A.prototype._read=function(t){b(this,new x("_read()"))},A.prototype.pipe=function(t,e){var r=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=t;break;case 1:a.pipes=[a.pipes,t];break;default:a.pipes.push(t)}a.pipesCount+=1,n("pipe count=%d opts=%j",a.pipesCount,e);var o=e&&!1===e.end||t===c.stdout||t===c.stderr?m:s;function s(){n("onend"),t.end()}a.endEmitted?c.nextTick(o):r.once("end",o),t.on("unpipe",(function e(i,o){n("onunpipe"),i===r&&o&&!1===o.hasUnpiped&&(o.hasUnpiped=!0,n("cleanup"),t.removeListener("close",f),t.removeListener("finish",d),t.removeListener("drain",l),t.removeListener("error",p),t.removeListener("unpipe",e),r.removeListener("end",s),r.removeListener("end",m),r.removeListener("data",h),u=!0,a.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&l())}));var l=function(t){return function(){var e=t._readableState;n("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&i(t,"data")&&(e.flowing=!0,R(t))}}(r);t.on("drain",l);var u=!1;function h(e){n("ondata");var i=t.write(e);n("dest.write",i),!1===i&&((1===a.pipesCount&&a.pipes===t||a.pipesCount>1&&-1!==N(a.pipes,t))&&!u&&(n("false write response, pause",a.awaitDrain),a.awaitDrain++),r.pause())}function p(e){n("onerror",e),m(),t.removeListener("error",p),0===i(t,"error")&&b(t,e)}function f(){t.removeListener("finish",d),m()}function d(){n("onfinish"),t.removeListener("close",f),m()}function m(){n("unpipe"),r.unpipe(t)}return r.on("data",h),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",p),t.once("close",f),t.once("finish",d),t.emit("pipe",r),a.flowing||(n("pipe resume"),r.resume()),t},A.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var a=0;a0,!1!==i.flowing&&this.resume()):"readable"===t&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,n("on readable",i.length,i.reading),i.length?C(this):i.reading||c.nextTick(D,this)),r},A.prototype.addListener=A.prototype.on,A.prototype.removeListener=function(t,e){var r=a.prototype.removeListener.call(this,t,e);return"readable"===t&&c.nextTick(z,this),r},A.prototype.removeAllListeners=function(t){var e=a.prototype.removeAllListeners.apply(this,arguments);return("readable"===t||void 0===t)&&c.nextTick(z,this),e},A.prototype.resume=function(){var t=this._readableState;return t.flowing||(n("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,c.nextTick(O,t,e))}(this,t)),t.paused=!1,this},A.prototype.pause=function(){return n("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(n("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},A.prototype.wrap=function(t){var e=this,r=this._readableState,i=!1;for(var a in t.on("end",(function(){if(n("wrapped end"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(a){n("wrapped data"),r.decoder&&(a=r.decoder.write(a)),r.objectMode&&null==a||!(r.objectMode||a&&a.length)||e.push(a)||(i=!0,t.pause())})),t)void 0===this[a]&&"function"==typeof t[a]&&(this[a]=function(e){return function(){return t[e].apply(t,arguments)}}(a));for(var o=0;o0,(function(t){u||(u=t),t&&h.forEach(s),!i&&(h.forEach(s),c(u))}))}));return e.reduce(l)}}}),Bc=f({"node_modules/stream-browserify/index.js"(t,e){e.exports=n;var r=pe().EventEmitter;function n(){r.call(this)}jl()(n,r),n.Readable=Dc(),n.Writable=Sc(),n.Duplex=Ec(),n.Transform=Oc(),n.PassThrough=Rc(),n.finished=Lc(),n.pipeline=Fc(),n.Stream=n,n.prototype.pipe=function(t,e){var n=this;function i(e){t.writable&&!1===t.write(e)&&n.pause&&n.pause()}function a(){n.readable&&n.resume&&n.resume()}n.on("data",i),t.on("drain",a),!t._isStdio&&(!e||!1!==e.end)&&(n.on("end",s),n.on("close",l));var o=!1;function s(){o||(o=!0,t.end())}function l(){o||(o=!0,"function"==typeof t.destroy&&t.destroy())}function c(t){if(u(),0===r.listenerCount(this,"error"))throw t}function u(){n.removeListener("data",i),t.removeListener("drain",a),n.removeListener("end",s),n.removeListener("close",l),n.removeListener("error",c),t.removeListener("error",c),n.removeListener("end",u),n.removeListener("close",u),t.removeListener("close",u)}return n.on("error",c),t.on("error",c),n.on("end",u),n.on("close",u),t.on("close",u),t.emit("pipe",n),t}}}),jc=f({"node_modules/util/util.js"(t){var e=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),r={},n=0;n=a)return t;switch(t){case"%s":return String(i[n++]);case"%d":return Number(i[n++]);case"%j":try{return JSON.stringify(i[n++])}catch{return"[Circular]"}default:return t}})),l=i[n];n"u")return function(){return t.deprecate(e,r).apply(this,arguments)};var n=!1;return function(){if(!n){if(c.throwDeprecation)throw new Error(r);c.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}};var n,i={},a=/^$/;function o(e,r){var n={seen:[],stylize:l};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(r)?n.showHidden=r:r&&t._extend(n,r),v(n.showHidden)&&(n.showHidden=!1),v(n.depth)&&(n.depth=2),v(n.colors)&&(n.colors=!1),v(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=s),u(n,e,n.depth)}function s(t,e){var r=o.styles[e];return r?"["+o.colors[r][0]+"m"+t+"["+o.colors[r][1]+"m":t}function l(t,e){return t}function u(e,r,n){if(e.customInspect&&r&&T(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return y(i)||(i=u(e,i,n)),i}var a=function(t,e){if(v(e))return t.stylize("undefined","undefined");if(y(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return g(e)?t.stylize(""+e,"number"):d(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}(e,r);if(a)return a;var o=Object.keys(r),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),w(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(r);if(0===o.length){if(T(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(x(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(b(r))return e.stylize(Date.prototype.toString.call(r),"date");if(w(r))return h(r)}var c,_="",A=!1,k=["{","}"];return f(r)&&(A=!0,k=["[","]"]),T(r)&&(_=" [Function"+(r.name?": "+r.name:"")+"]"),x(r)&&(_=" "+RegExp.prototype.toString.call(r)),b(r)&&(_=" "+Date.prototype.toUTCString.call(r)),w(r)&&(_=" "+h(r)),0!==o.length||A&&0!=r.length?n<0?x(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),c=A?function(t,e,r,n,i){for(var a=[],o=0,s=e.length;o60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}(c,_,k)):k[0]+_+k[1]}function h(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),S(n,i)||(o="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=m(r)?u(t,l.value,null):u(t,l.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),v(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=t.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=t.stylize(o,"string"))}return o+": "+s}function f(t){return Array.isArray(t)}function d(t){return"boolean"==typeof t}function m(t){return null===t}function g(t){return"number"==typeof t}function y(t){return"string"==typeof t}function v(t){return void 0===t}function x(t){return _(t)&&"[object RegExp]"===A(t)}function _(t){return"object"==typeof t&&null!==t}function b(t){return _(t)&&"[object Date]"===A(t)}function w(t){return _(t)&&("[object Error]"===A(t)||t instanceof Error)}function T(t){return"function"==typeof t}function A(t){return Object.prototype.toString.call(t)}function k(t){return t<10?"0"+t.toString(10):t.toString(10)}n=(n="false").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),a=new RegExp("^"+n+"$","i"),t.debuglog=function(e){if(e=e.toUpperCase(),!i[e])if(a.test(e)){var r=c.pid;i[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else i[e]=function(){};return i[e]},t.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.types=xc(),t.isArray=f,t.isBoolean=d,t.isNull=m,t.isNullOrUndefined=function(t){return null==t},t.isNumber=g,t.isString=y,t.isSymbol=function(t){return"symbol"==typeof t},t.isUndefined=v,t.isRegExp=x,t.types.isRegExp=x,t.isObject=_,t.isDate=b,t.types.isDate=b,t.isError=w,t.types.isNativeError=w,t.isFunction=T,t.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||typeof t>"u"},t.isBuffer=_c();var M=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function S(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.log=function(){var e,r;console.log("%s - %s",(r=[k((e=new Date).getHours()),k(e.getMinutes()),k(e.getSeconds())].join(":"),[e.getDate(),M[e.getMonth()],r].join(" ")),t.format.apply(t,arguments))},t.inherits=jl(),t._extend=function(t,e){if(!e||!_(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t};var E=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function C(t,e){if(!t){var r=new Error("Promise was rejected with a falsy value");r.reason=t,t=r}return e(t)}t.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(E&&t[E]){var r;if("function"!=typeof(r=t[E]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,E,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var e,r,n=new Promise((function(t,n){e=t,r=n})),i=[],a=0;a"u"||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,a=i(t);if(e){var o=i(this).constructor;n=Reflect.construct(a,arguments,o)}else n=a.apply(this,arguments);return function(t,e){if(e&&("object"===r(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(this,n)}}(s);function s(r,n,i){var a;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),a=o.call(this,function(t,r,n){return"string"==typeof e?e:e(t,r,n)}(r,n,i)),a.code=t,a}return function(t){return Object.defineProperty(t,"prototype",{writable:!1}),t}(s)}(a);s[t]=o}function c(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map((function(t){return String(t)})),r>2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:2===r?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}l("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),l("ERR_INVALID_ARG_TYPE",(function(t,e,n){var i,o;if(void 0===a&&(a=nu()),a("string"==typeof t,"'name' must be a string"),"string"==typeof e&&function(t,e){return t.substr(0,4)===e}(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-9,r)===e}(t," argument"))o="The ".concat(t," ").concat(i," ").concat(c(e,"type"));else{var s=function(t,e,r){return"number"!=typeof r&&(r=0),!(r+1>t.length)&&-1!==t.indexOf(".",r)}(t)?"property":"argument";o='The "'.concat(t,'" ').concat(s," ").concat(i," ").concat(c(e,"type"))}return o+". Received type ".concat(r(n))}),TypeError),l("ERR_INVALID_ARG_VALUE",(function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===o&&(o=jc());var n=o.inspect(e);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(t,"' ").concat(r,". Received ").concat(n)}),TypeError,RangeError),l("ERR_INVALID_RETURN_VALUE",(function(t,e,n){var i;return i=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(r(n)),"Expected ".concat(t,' to be returned from the "').concat(e,'"')+" function but got ".concat(i,".")}),TypeError),l("ERR_MISSING_ARGS",(function(){for(var t=arguments.length,e=new Array(t),r=0;r0,"At least one arg needs to be specified");var n="The ",i=e.length;switch(e=e.map((function(t){return'"'.concat(t,'"')})),i){case 1:n+="".concat(e[0]," argument");break;case 2:n+="".concat(e[0]," and ").concat(e[1]," arguments");break;default:n+=e.slice(0,i-1).join(", "),n+=", and ".concat(e[i-1]," arguments")}return"".concat(n," must be specified")}),TypeError),e.exports.codes=s}}),Uc=f({"node_modules/assert/build/internal/assert/assertion_error.js"(t,e){function r(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function n(t){for(var e=1;e"u"||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}function f(t,e){return(f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t})(t,e)}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t){return(m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var g=jc().inspect,y=Nc().codes.ERR_INVALID_ARG_TYPE;function v(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}var x="",_="",b="",w="",T={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function A(t){var e=Object.keys(t),r=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){r[e]=t[e]})),Object.defineProperty(r,"message",{value:t.message}),r}function k(t){return g(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}var M=function(t,e){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&f(t,e)}(i,t);var r=function(t){var e=p();return function(){var r,n=d(t);if(e){var i=d(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return s(this,r)}}(i);function i(t){var e;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,i),"object"!==m(t)||null===t)throw new y("options","Object",t);var n=t.message,a=t.operator,o=t.stackStartFn,u=t.actual,h=t.expected,p=Error.stackTraceLimit;if(Error.stackTraceLimit=0,null!=n)e=r.call(this,String(n));else if(c.stderr&&c.stderr.isTTY&&(c.stderr&&c.stderr.getColorDepth&&1!==c.stderr.getColorDepth()?(x="",_="",w="",b=""):(x="",_="",w="",b="")),"object"===m(u)&&null!==u&&"object"===m(h)&&null!==h&&"stack"in u&&u instanceof Error&&"stack"in h&&h instanceof Error&&(u=A(u),h=A(h)),"deepStrictEqual"===a||"strictEqual"===a)e=r.call(this,function(t,e,r){var n="",i="",a=0,o="",s=!1,l=k(t),u=l.split("\n"),h=k(e).split("\n"),p=0,f="";if("strictEqual"===r&&"object"===m(t)&&"object"===m(e)&&null!==t&&null!==e&&(r="strictEqualObject"),1===u.length&&1===h.length&&u[0]!==h[0]){var d=u[0].length+h[0].length;if(d<=10){if(!("object"===m(t)&&null!==t||"object"===m(e)&&null!==e||0===t&&0===e))return"".concat(T[r],"\n\n")+"".concat(u[0]," !== ").concat(h[0],"\n")}else if("strictEqualObject"!==r&&d<(c.stderr&&c.stderr.isTTY?c.stderr.columns:80)){for(;u[0][p]===h[0][p];)p++;p>2&&(f="\n ".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return"";var r=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,r-t.length)}(" ",p),"^"),p=0)}}for(var g=u[u.length-1],y=h[h.length-1];g===y&&(p++<2?o="\n ".concat(g).concat(o):n=g,u.pop(),h.pop(),0!==u.length&&0!==h.length);)g=u[u.length-1],y=h[h.length-1];var A=Math.max(u.length,h.length);if(0===A){var M=l.split("\n");if(M.length>30)for(M[26]="".concat(x,"...").concat(w);M.length>27;)M.pop();return"".concat(T.notIdentical,"\n\n").concat(M.join("\n"),"\n")}p>3&&(o="\n".concat(x,"...").concat(w).concat(o),s=!0),""!==n&&(o="\n ".concat(n).concat(o),n="");var S=0,E=T[r]+"\n".concat(_,"+ actual").concat(w," ").concat(b,"- expected").concat(w),C=" ".concat(x,"...").concat(w," Lines skipped");for(p=0;p1&&p>2&&(I>4?(i+="\n".concat(x,"...").concat(w),s=!0):I>3&&(i+="\n ".concat(h[p-2]),S++),i+="\n ".concat(h[p-1]),S++),a=p,n+="\n".concat(b,"-").concat(w," ").concat(h[p]),S++;else if(h.length1&&p>2&&(I>4?(i+="\n".concat(x,"...").concat(w),s=!0):I>3&&(i+="\n ".concat(u[p-2]),S++),i+="\n ".concat(u[p-1]),S++),a=p,i+="\n".concat(_,"+").concat(w," ").concat(u[p]),S++;else{var L=h[p],P=u[p],z=P!==L&&(!v(P,",")||P.slice(0,-1)!==L);z&&v(L,",")&&L.slice(0,-1)===P&&(z=!1,P+=","),z?(I>1&&p>2&&(I>4?(i+="\n".concat(x,"...").concat(w),s=!0):I>3&&(i+="\n ".concat(u[p-2]),S++),i+="\n ".concat(u[p-1]),S++),a=p,i+="\n".concat(_,"+").concat(w," ").concat(P),n+="\n".concat(b,"-").concat(w," ").concat(L),S+=2):(i+=n,n="",(1===I||0===p)&&(i+="\n ".concat(P),S++))}if(S>20&&p30)for(d[26]="".concat(x,"...").concat(w);d.length>27;)d.pop();e=1===d.length?r.call(this,"".concat(f," ").concat(d[0])):r.call(this,"".concat(f,"\n\n").concat(d.join("\n"),"\n"))}else{var g=k(u),M="",S=T[a];"notDeepEqual"===a||"notEqual"===a?(g="".concat(T[a],"\n\n").concat(g)).length>1024&&(g="".concat(g.slice(0,1021),"...")):(M="".concat(k(h)),g.length>512&&(g="".concat(g.slice(0,509),"...")),M.length>512&&(M="".concat(M.slice(0,509),"...")),"deepEqual"===a||"equal"===a?g="".concat(S,"\n\n").concat(g,"\n\nshould equal\n\n"):M=" ".concat(a," ").concat(M)),e=r.call(this,"".concat(g).concat(M))}return Error.stackTraceLimit=p,e.generatedMessage=!n,Object.defineProperty(l(e),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),e.code="ERR_ASSERTION",e.actual=u,e.expected=h,e.operator=a,Error.captureStackTrace&&Error.captureStackTrace(l(e),o),e.stack,e.name="AssertionError",s(e)}return function(t,e){e&&a(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1})}(i,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:e,value:function(t,e){return g(this,n(n({},e),{},{customInspect:!1,depth:0}))}}]),i}(u(Error),g.custom);e.exports=M}}),Vc=f({"node_modules/object-keys/isArguments.js"(t,e){var r=Object.prototype.toString;e.exports=function(t){var e=r.call(t),n="[object Arguments]"===e;return n||(n="[object Array]"!==e&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===r.call(t.callee)),n}}}),qc=f({"node_modules/object-keys/implementation.js"(t,e){var r,n,i,a,o,s,l,c,u,h,p,f;Object.keys||(n=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=Vc(),o=Object.prototype.propertyIsEnumerable,s=!o.call({toString:null},"toString"),l=o.call((function(){}),"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],u=function(t){var e=t.constructor;return e&&e.prototype===t},h={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},p=function(){if(typeof window>"u")return!1;for(var t in window)try{if(!h["$"+t]&&n.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{u(window[t])}catch{return!0}}catch{return!0}return!1}(),f=function(t){if(typeof window>"u"||!p)return u(t);try{return u(t)}catch{return!1}},r=function(t){var e=null!==t&&"object"==typeof t,r="[object Function]"===i.call(t),o=a(t),u=e&&"[object String]"===i.call(t),h=[];if(!e&&!r&&!o)throw new TypeError("Object.keys called on a non-object");var p=l&&r;if(u&&t.length>0&&!n.call(t,0))for(var d=0;d0)for(var m=0;m2?arguments[2]:{},o=r(e);n&&(o=a.call(o,Object.getOwnPropertySymbols(e)));for(var s=0;st.length)&&(e=t.length);for(var r=0,n=new Array(e);r10)return!0;for(var e=0;e57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function P(t){return Object.keys(t).filter(L).concat(c(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function z(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,i=0,a=Math.min(r,n);i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i0)return function(t){if(!((t=String(t)).length>100)){var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(e){var o=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*o;case"days":case"day":case"d":return o*a;case"hours":case"hour":case"hrs":case"hr":case"h":return o*i;case"minutes":case"minute":case"mins":case"min":case"m":return o*n;case"seconds":case"second":case"secs":case"sec":case"s":return o*r;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:return}}}}(t);if("number"===s&&!1===isNaN(t))return e.long?function(t){return o(t,a,"day")||o(t,i,"hour")||o(t,n,"minute")||o(t,r,"second")||t+" ms"}(t):function(t){return t>=a?Math.round(t/a)+"d":t>=i?Math.round(t/i)+"h":t>=n?Math.round(t/n)+"m":t>=r?Math.round(t/r)+"s":t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}}}),au=f({"node_modules/stream-parser/node_modules/debug/src/debug.js"(t,e){var r;function n(e){function n(){if(n.enabled){var e=n,i=+new Date,a=i-(r||i);e.diff=a,e.prev=r,e.curr=i,r=i;for(var o=new Array(arguments.length),s=0;s=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:function(){try{return window.localStorage}catch{}}(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(t){try{return JSON.stringify(t)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}},t.enable(r())}}),su=f({"node_modules/stream-parser/index.js"(t,e){var r=nu(),n=ou()("stream-parser");function i(t){n("initializing parser stream"),t._parserBytesLeft=0,t._parserBuffers=[],t._parserBuffered=0,t._parserState=-1,t._parserCallback=null,"function"==typeof t.push&&(t._parserOutput=t.push.bind(t)),t._parserInit=!0}function a(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(isFinite(t)&&t>0,'can only buffer a finite number of bytes > 0, got "'+t+'"'),this._parserInit||i(this),n("buffering %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=0}function o(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(t>0,'can only skip > 0 bytes, got "'+t+'"'),this._parserInit||i(this),n("skipping %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=1}function s(t,e){r(!this._parserCallback,'There is already a "callback" set!'),r(t>0,'can only pass through > 0 bytes, got "'+t+'"'),this._parserInit||i(this),n("passing through %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=2}function l(t,e,r){this._parserInit||i(this),n("write(%o bytes)",t.length),"function"==typeof e&&(r=e),h(this,t,null,r)}function c(t,e,r){this._parserInit||i(this),n("transform(%o bytes)",t.length),"function"!=typeof e&&(e=this._parserOutput),h(this,t,e,r)}function u(t,e,r,i){if(t._parserBytesLeft-=e.length,n("%o bytes left for stream piece",t._parserBytesLeft),0===t._parserState?(t._parserBuffers.push(e),t._parserBuffered+=e.length):2===t._parserState&&r(e),0!==t._parserBytesLeft)return i;var a=t._parserCallback;if(a&&0===t._parserState&&t._parserBuffers.length>1&&(e=Buffer.concat(t._parserBuffers,t._parserBuffered)),0!==t._parserState&&(e=null),t._parserCallback=null,t._parserBuffered=0,t._parserState=-1,t._parserBuffers.splice(0),a){var o=[];e&&o.push(e),r&&o.push(r);var s=a.length>o.length;s&&o.push(p(i));var l=a.apply(t,o);if(!s||i===l)return i}}e.exports=function(t){var e=t&&"function"==typeof t._transform,r=t&&"function"==typeof t._write;if(!e&&!r)throw new Error("must pass a Writable or Transform stream in");n("extending Parser into stream"),t._bytes=a,t._skipBytes=o,e&&(t._passthrough=s),e?t._transform=c:t._write=l};var h=p((function t(e,r,n,i){return e._parserBytesLeft<=0?i(new Error("got data but not currently parsing anything")):r.length<=e._parserBytesLeft?function(){return u(e,r,n,i)}:function(){var a=r.slice(0,e._parserBytesLeft);return u(e,a,n,(function(o){return o?i(o):r.length>a.length?function(){return t(e,r.slice(a.length),n,i)}:void 0}))}}));function p(t){return function(){for(var e=t.apply(this,arguments);"function"==typeof e;)e=e();return e}}}}),lu=f({"node_modules/probe-image-size/lib/common.js"(t){var e=Bc().Transform,r=su();function n(){e.call(this,{readableObjectMode:!0})}function i(t,e,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||"",this.name=this.constructor.name,this.message=t,e&&(this.code=e),r&&(this.statusCode=r)}n.prototype=Object.create(e.prototype),n.prototype.constructor=n,r(n.prototype),t.ParserStream=n,t.sliceEq=function(t,e,r){for(var n=e,i=0;i>4&15,i=15&t[4],a=t[5]>>4&15,s=r(t,6),l=8,c=0;ce.width||t.width===e.width&&t.height>e.height?t:e})),r=t.reduce((function(t,e){return t.height>e.height||t.height===e.height&&t.width>e.width?t:e}));return e.width>r.height||e.width===r.height&&e.height>r.width?e:r}(e.sizes),n=1;e.transforms.forEach((function(t){var e={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},r={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if("imir"===t.type&&(n=0===t.value?r[n]:e[n=e[n=r[n]]]),"irot"===t.type)for(var i=0;i0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,t)}},i.prototype.read_uint16=function(t){var e=this.input;if(t+2>e.length)throw r("unexpected EOF","EBADDATA");return this.big_endian?256*e[t]+e[t+1]:e[t]+256*e[t+1]},i.prototype.read_uint32=function(t){var e=this.input;if(t+4>e.length)throw r("unexpected EOF","EBADDATA");return this.big_endian?16777216*e[t]+65536*e[t+1]+256*e[t+2]+e[t+3]:e[t]+256*e[t+1]+65536*e[t+2]+16777216*e[t+3]},i.prototype.is_subifd_link=function(t,e){return 0===t&&34665===e||0===t&&34853===e||34665===t&&40965===e},i.prototype.exif_format_length=function(t){switch(t){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},i.prototype.exif_format_read=function(t,e){var r;switch(t){case 1:case 2:return this.input[e];case 6:return(r=this.input[e])|33554430*(128&r);case 3:return this.read_uint16(e);case 8:return(r=this.read_uint16(e))|131070*(32768&r);case 4:return this.read_uint32(e);case 9:return 0|this.read_uint32(e);default:return null}},i.prototype.scan_ifd=function(t,e,i){var a=this.read_uint16(e);e+=2;for(var o=0;othis.input.length)throw r("unexpected EOF","EBADDATA");for(var d=[],m=p,g=0;g0&&(this.ifds_to_read.push({id:s,offset:d[0]}),f=!0),!1===i({is_big_endian:this.big_endian,ifd:t,tag:s,format:l,count:c,entry_offset:e+this.start,data_length:h,data_offset:p+this.start,value:d,is_subifd_link:f}))return void(this.aborted=!0);e+=12}0===t&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},e.exports.ExifParser=i,e.exports.get_orientation=function(t){var e=0;try{return new i(t,0,t.length).each((function(t){if(0===t.ifd&&274===t.tag&&Array.isArray(t.value))return e=t.value[0],!1})),e}catch{return-1}}}}),hu=f({"node_modules/probe-image-size/lib/parse_sync/avif.js"(t,e){var r=lu().str2arr,n=lu().sliceEq,i=lu().readUInt32BE,a=cu(),o=uu(),s=r("ftyp");e.exports=function(t){if(n(t,4,s)){var e=a.unbox(t,0);if(e){var r=a.getMimeType(e.data);if(r){for(var l,c=e.end;;){var u=a.unbox(t,c);if(!u)break;if(c=u.end,"mdat"===u.boxtype)return;if("meta"===u.boxtype){l=u.data;break}}if(l){var h=a.readSizeFromMeta(l);if(h){var p={width:h.width,height:h.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(h.variants.length>1&&(p.variants=h.variants),h.orientation&&(p.orientation=h.orientation),h.exif_location&&h.exif_location.offset+h.exif_location.length<=t.length){var f=i(t,h.exif_location.offset),d=t.slice(h.exif_location.offset+f+4,h.exif_location.offset+h.exif_location.length),m=o.get_orientation(d);m>0&&(p.orientation=m)}return p}}}}}}}}),pu=f({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(t,e){var r=lu().str2arr,n=lu().sliceEq,i=lu().readUInt16LE,a=r("BM");e.exports=function(t){if(!(t.length<26)&&n(t,0,a))return{width:i(t,18),height:i(t,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),fu=f({"node_modules/probe-image-size/lib/parse_sync/gif.js"(t,e){var r=lu().str2arr,n=lu().sliceEq,i=lu().readUInt16LE,a=r("GIF87a"),o=r("GIF89a");e.exports=function(t){if(!(t.length<10)&&(n(t,0,a)||n(t,0,o)))return{width:i(t,6),height:i(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),du=f({"node_modules/probe-image-size/lib/parse_sync/ico.js"(t,e){var r=lu().readUInt16LE;e.exports=function(t){var e=r(t,0),n=r(t,2),i=r(t,4);if(0===e&&1===n&&i){for(var a=[],o={width:0,height:0},s=0;so.width||c>o.height)&&(o=u)}return{width:o.width,height:o.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),mu=f({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(t,e){var r=lu().readUInt16BE,n=lu().str2arr,i=lu().sliceEq,a=uu(),o=n("Exif\0\0");e.exports=function(t){if(!(t.length<2)&&255===t[0]&&216===t[1]&&255===t[2])for(var e=2;;){for(;;){if(t.length-e<2)return;if(255===t[e++])break}for(var n,s=t[e++];255===s;)s=t[e++];if(208<=s&&s<=217||1===s)n=0;else{if(!(192<=s&&s<=254))return;if(t.length-e<2)return;n=r(t,e)-2,e+=2}if(217===s||218===s)return;var l;if(225===s&&n>=10&&i(t,e,o)&&(l=a.get_orientation(t.slice(e+6,e+n))),n>=5&&192<=s&&s<=207&&196!==s&&200!==s&&204!==s){if(t.length-e0&&(c.orientation=l),c}e+=n}}}}),gu=f({"node_modules/probe-image-size/lib/parse_sync/png.js"(t,e){var r=lu().str2arr,n=lu().sliceEq,i=lu().readUInt32BE,a=r("‰PNG\r\n\n"),o=r("IHDR");e.exports=function(t){if(!(t.length<24)&&n(t,0,a)&&n(t,12,o))return{width:i(t,16),height:i(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),yu=f({"node_modules/probe-image-size/lib/parse_sync/psd.js"(t,e){var r=lu().str2arr,n=lu().sliceEq,i=lu().readUInt32BE,a=r("8BPS\0");e.exports=function(t){if(!(t.length<22)&&n(t,0,a))return{width:i(t,18),height:i(t,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),vu=f({"node_modules/probe-image-size/lib/parse_sync/svg.js"(t,e){function r(t){return 32===t||9===t||13===t||10===t}function n(t){return"number"==typeof t&&isFinite(t)&&t>0}var i=/<[-_.:a-zA-Z0-9][^>]*>/,a=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,o=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,s=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,l=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,c=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function u(t){return c.test(t)?t.match(c)[0]:"px"}e.exports=function(t){if(function(t){var e=0,n=t.length;for(239===t[0]&&187===t[1]&&191===t[2]&&(e=3);e>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function h(t,e){return{width:1+(t[e+6]<<16|t[e+5]<<8|t[e+4]),height:1+(t[e+9]<t.length)){for(;e+8=10?r=r||c(t,e+8):"VP8L"===f&&d>=9?r=r||u(t,e+8):"VP8X"===f&&d>=10?r=r||h(t,e+8):"EXIF"===f&&(i=o.get_orientation(t.slice(e+8,e+8+d)),e=1/0),e+=8+d}else e++;if(r)return i>0&&(r.orientation=i),r}}}}}),bu=f({"node_modules/probe-image-size/lib/parsers_sync.js"(t,e){e.exports={avif:hu(),bmp:pu(),gif:fu(),ico:du(),jpeg:mu(),png:gu(),psd:yu(),svg:vu(),tiff:xu(),webp:_u()}}}),wu=f({"node_modules/probe-image-size/sync.js"(t,e){var r=bu();e.exports=function(t){return function(t){for(var e=Object.keys(r),n=0;n0;)g=h.c2p(w+_*M),_--;for(_=0;void 0===v&&_0;)x=p.c2p(T+_*S),_--;if(gz[0];if(D||O){var R=m+E/2,F=v+C/2;L+="transform:"+i(R+"px",F+"px")+"scale("+(D?-1:1)+","+(O?-1:1)+")"+i(-R+"px",-F+"px")+";"}}I.attr("style",L);var B=new Promise((function(t){if(u._hasZ)t();else if(u._hasSource)if(u._canvas&&u._canvas.el.width===A&&u._canvas.el.height===k&&u._canvas.source===u.source)t();else{var e=document.createElement("canvas");e.width=A,e.height=k;var r=e.getContext("2d",{willReadFrequently:!0});u._image=u._image||new Image;var n=u._image;n.onload=function(){r.drawImage(n,0,0),u._canvas={el:e,source:u.source},t()},n.setAttribute("src",u.source)}})).then((function(){var t;if(u._hasZ)t=j((function(t,e){var r=b[e][t];return n.isTypedArray(r)&&(r=Array.from(r)),r})).toDataURL("image/png");else if(u._hasSource)if(d)t=u.source;else{var e=u._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,A,k).data;t=j((function(t,r){var n=4*(r*A+t);return[e[n],e[n+1],e[n+2],e[n+3]]})).toDataURL("image/png")}I.attr({"xlink:href":t,height:C,width:E,x:m,y:v})}));t._promises.push(B)}function j(t){var e=document.createElement("canvas");e.width=E,e.height=C;var r,i=e.getContext("2d",{willReadFrequently:!0}),a=function(t){return n.constrain(Math.round(h.c2p(w+t*M)-m),0,E)},s=function(t){return n.constrain(Math.round(p.c2p(T+t*S)-v),0,C)},l=o.colormodel[u.colormodel],f=l.colormodel||u.colormodel,d=l.fmt;for(_=0;_0||r.inbox(o-s.y0,o-(s.y0+s.h*l.dy),0)>0)){var h,p=Math.floor((e-s.x0)/l.dx),f=Math.floor(Math.abs(o-s.y0)/l.dy);if(l._hasZ?h=s.z[f][p]:l._hasSource&&(h=l._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(p,f,1,1).data),h){var d,m=s.hi||l.hoverinfo;if(m){var g=m.split("+");-1!==g.indexOf("all")&&(g=["color"]),-1!==g.indexOf("color")&&(d=!0)}var y,v=a.colormodel[l.colormodel],x=v.colormodel||l.colormodel,_=x.length,b=l._scaler(h),w=v.suffix,T=[];(l.hovertemplate||d)&&(T.push("["+[b[0]+w[0],b[1]+w[1],b[2]+w[2]].join(", ")),4===_&&T.push(", "+b[3]+w[3]),T.push("]"),T=T.join(""),t.extraText=x.toUpperCase()+": "+T),i(l.hovertext)&&i(l.hovertext[f])?y=l.hovertext[f][p]:i(l.text)&&i(l.text[f])&&(y=l.text[f][p]);var A=u.c2p(s.y0+(f+.5)*l.dy),k=s.x0+(p+.5)*l.dx,M=s.y0+(f+.5)*l.dy,S="["+h.slice(0,l.colormodel.length).join(", ")+"]";return[n.extendFlat(t,{index:[f,p],x0:c.c2p(s.x0+p*l.dx),x1:c.c2p(s.x0+(p+1)*l.dx),y0:A,y1:A,color:b,xVal:k,xLabelVal:k,yVal:M,yLabelVal:M,zLabelVal:S,text:y,hovertemplateLabels:{zLabel:S,colorLabel:T,"color[0]Label":b[0]+w[0],"color[1]Label":b[1]+w[1],"color[2]Label":b[2]+w[2],"color[3]Label":b[3]+w[3]}})]}}}}}),Eu=f({"src/traces/image/event_data.js"(t,e){e.exports=function(t,e){return"xVal"in e&&(t.x=e.xVal),"yVal"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t.color=e.color,t.colormodel=e.trace.colormodel,t.z||(t.z=e.color),t}}}),Cu=f({"src/traces/image/index.js"(t,e){e.exports={attributes:Fl(),supplyDefaults:Bl(),calc:Au(),plot:ku(),style:Mu(),hoverPoints:Su(),eventData:Eu(),moduleType:"trace",name:"image",basePlotModule:Si(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),Iu=f({"lib/image.js"(t,e){e.exports=Cu()}}),Lu=f({"src/traces/pie/attributes.js"(t,e){var r=U(),n=Aa().attributes,i=F(),a=q(),o=Ot().hovertemplateAttrs,s=Ot().texttemplateAttrs,l=R().extendFlat,c=zt().pattern,u=i({editType:"plot",arrayOk:!0,colorEditType:"plot"});e.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:a.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:c,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:l({},r.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:o({},{keys:["label","color","value","percent","text"]}),texttemplate:s({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:l({},u,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:l({},u,{}),outsidetextfont:l({},u,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:l({},u,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:n({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),Pu=f({"src/traces/pie/defaults.js"(t,e){var r=A(),n=le(),i=Lu(),a=Aa().defaults,o=Ya().handleText,s=le().coercePattern;function l(t,e){var i=n.isArrayOrTypedArray(t),a=n.isArrayOrTypedArray(e),o=Math.min(i?t.length:1/0,a?e.length:1/0);if(isFinite(o)||(o=0),o&&a){for(var s,l=0;l0){s=!0;break}}s||(o=0)}return{hasLabels:i,hasValues:a,len:o}}function c(t,e,r,n,i){n("marker.line.width")&&n("marker.line.color",i?void 0:r.paper_bgcolor);var a=n("marker.colors");s(n,"marker.pattern",a),t.marker&&!e.marker.pattern.fgcolor&&(e.marker.pattern.fgcolor=t.marker.colors),e.marker.pattern.bgcolor||(e.marker.pattern.bgcolor=r.paper_bgcolor)}e.exports={handleLabelsAndValues:l,handleMarkerDefaults:c,supplyDefaults:function(t,e,r,s){function u(r,a){return n.coerce(t,e,i,r,a)}var h=l(u("labels"),u("values")),p=h.len;if(e._hasLabels=h.hasLabels,e._hasValues=h.hasValues,!e._hasLabels&&e._hasValues&&(u("label0"),u("dlabel")),p){e._length=p,c(t,e,s,u,!0),u("scalegroup");var f,d=u("text"),m=u("texttemplate");if(m||(f=u("textinfo",n.isArrayOrTypedArray(d)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),m||f&&"none"!==f){var g=u("textposition");o(t,e,s,u,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||"auto"===g||"outside"===g)&&u("automargin"),("inside"===g||"auto"===g||Array.isArray(g))&&u("insidetextorientation")}else"none"===f&&u("textposition","none");a(e,s,u);var y=u("hole");if(u("title.text")){var v=u("title.position",y?"middle center":"top center");!y&&"middle center"===v&&(e.title.position="top center"),n.coerceFont(u,"title.font",s.font)}u("sort"),u("direction"),u("rotation"),u("pull")}else e.visible=!1}}}}),zu=f({"src/traces/pie/layout_attributes.js"(t,e){e.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),Du=f({"src/traces/pie/layout_defaults.js"(t,e){var r=le(),n=zu();e.exports=function(t,e){function i(i,a){return r.coerce(t,e,n,i,a)}i("hiddenlabels"),i("piecolorway",e.colorway),i("extendpiecolors")}}}),Ou=f({"src/traces/pie/calc.js"(t,e){var r=A(),n=O(),i=H(),a={};function o(t){return function(e,r){return!(!e||(e=n(e),!e.isValid()))&&(e=i.addOpacity(e,e.getAlpha()),t[r]||(t[r]=e),e)}}function s(t,e){var r,i=JSON.stringify(t),a=e[i];if(!a){for(a=t.slice(),r=0;r=0})),("funnelarea"===e.type?y:e.sort)&&a.sort((function(t,e){return e.v-t.v})),a[0]&&(a[0].vTotal=g),a},crossTraceCalc:function(t,e){var r=(e||{}).type;r||(r="pie");var n=t._fullLayout,i=t.calcdata,o=n[r+"colorway"],l=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(o=s(o,a));for(var c=0,u=0;u"),name:h.hovertemplate||-1!==p.indexOf("name")?h.name:void 0,idealAlign:t.pxmid[0]<0?"left":"right",color:m.castOption(b.bgcolor,t.pts)||t.color,borderColor:m.castOption(b.bordercolor,t.pts),fontFamily:m.castOption(w.family,t.pts),fontSize:m.castOption(w.size,t.pts),fontColor:m.castOption(w.color,t.pts),nameLength:m.castOption(b.namelength,t.pts),textAlign:m.castOption(b.align,t.pts),hovertemplate:m.castOption(h.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[g(t,h)]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:e,inOut_bbox:T}),t.bbox=T[0],c._hasHoverLabel=!0}c._hasHoverEvent=!0,e.emit("plotly_hover",{points:[g(t,h)],event:r.event})}})),t.on("mouseout",(function(t){var n=e._fullLayout,a=e._fullData[c.index],o=r.select(this).datum();c._hasHoverEvent&&(t.originalEvent=r.event,e.emit("plotly_unhover",{points:[g(o,a)],event:r.event}),c._hasHoverEvent=!1),c._hasHoverLabel&&(i.loneUnhover(n._hoverlayer.node()),c._hasHoverLabel=!1)})),t.on("click",(function(t){var n=e._fullLayout,a=e._fullData[c.index];e._dragging||!1===n.hovermode||(e._hoverdata=[g(t,a)],i.click(e,r.event))}))}function _(t,e,r){var n=m.castOption(t.insidetextfont.color,e.pts);!n&&t._input.textfont&&(n=m.castOption(t._input.textfont.color,e.pts));var i=m.castOption(t.insidetextfont.family,e.pts)||m.castOption(t.textfont.family,e.pts)||r.family,o=m.castOption(t.insidetextfont.size,e.pts)||m.castOption(t.textfont.size,e.pts)||r.size,s=m.castOption(t.insidetextfont.weight,e.pts)||m.castOption(t.textfont.weight,e.pts)||r.weight,l=m.castOption(t.insidetextfont.style,e.pts)||m.castOption(t.textfont.style,e.pts)||r.style,c=m.castOption(t.insidetextfont.variant,e.pts)||m.castOption(t.textfont.variant,e.pts)||r.variant,u=m.castOption(t.insidetextfont.textcase,e.pts)||m.castOption(t.textfont.textcase,e.pts)||r.textcase,h=m.castOption(t.insidetextfont.lineposition,e.pts)||m.castOption(t.textfont.lineposition,e.pts)||r.lineposition,p=m.castOption(t.insidetextfont.shadow,e.pts)||m.castOption(t.textfont.shadow,e.pts)||r.shadow;return{color:n||a.contrast(e.color),family:i,size:o,weight:s,style:l,variant:c,textcase:u,lineposition:h,shadow:p}}function b(t,e){for(var r,n,i=0;ie&&e>n||r=-4;g-=2)y(Math.PI*g,"tan");for(g=4;g>=-4;g-=2)y(Math.PI*(g+1),"tan")}if(h||f){for(g=4;g>=-4;g-=2)y(Math.PI*(g+1.5),"rad");for(g=4;g>=-4;g-=2)y(Math.PI*(g+.5),"rad")}}if(s||d||h){var v=Math.sqrt(t.width*t.width+t.height*t.height);if((a={scale:i*n*2/v,rCenter:1-i,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,a.scale>=1)return a;m.push(a)}(d||f)&&((a=T(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,m.push(a)),(d||p)&&((a=A(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,m.push(a));for(var x=0,_=0,b=0;b=1)break}return m[x]}function T(t,e,r,n,i){e=Math.max(0,e-2*d);var a=t.width/t.height,o=S(a,n,e,r);return{scale:2*o/t.height,rCenter:k(a,o/e),rotate:M(i)}}function A(t,e,r,n,i){e=Math.max(0,e-2*d);var a=t.height/t.width,o=S(a,n,e,r);return{scale:2*o/t.width,rCenter:k(a,o/e),rotate:M(i+Math.PI/2)}}function k(t,e){return Math.cos(e)-t*e}function M(t){return(180/Math.PI*t+720)%180-90}function S(t,e,r,n){var i=t+1/(2*Math.tan(e));return r*Math.min(1/(Math.sqrt(i*i+.5)+i),n/(Math.sqrt(t*t+n/2)+t))}function E(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function C(t,e){var r=e.pxmid[0],n=e.pxmid[1],i=t.width/2,a=t.height/2;return r<0&&(i*=-1),n<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function I(t,e){var r,n,i,a=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=P(a),-1!==a.title.position.indexOf("top")?(o.y-=(1+i)*t.r,s.ty-=t.titleBox.height):-1!==a.title.position.indexOf("bottom")&&(o.y+=(1+i)*t.r);var l=function(t,e){return t/(void 0===e?1:e)}(t.r,t.trace.aspectratio),c=e.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf("left")?(c+=l,o.x-=(1+i)*l,s.tx+=t.titleBox.width/2):-1!==a.title.position.indexOf("center")?c*=2:-1!==a.title.position.indexOf("right")&&(c+=l,o.x+=(1+i)*l,s.tx-=t.titleBox.width/2),r=c/t.titleBox.width,n=L(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function L(t,e){var r=t.trace,n=e.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(t.titleBox.height,n/2)}function P(t){var e,r=t.pull;if(!r)return 0;if(s.isArrayOrTypedArray(r))for(r=0,e=0;er&&(r=t.pull[e]);return r}function z(t,e){for(var r=[],n=0;n1?u=(c=r.r)/i.aspectratio:c=(u=r.r)*i.aspectratio,l=(c*=(1+i.baseratio)/2)*u}o=Math.min(o,l/r.vTotal)}for(n=0;n")}if(o){var _=s.castOption(a,e.i,"texttemplate");if(_){var b={label:(n=e).label,value:n.v,valueLabel:m.formatPieValue(n.v,i.separators),percent:n.v/r.vTotal,percentLabel:m.formatPiePercent(n.v/r.vTotal,i.separators),color:n.color,text:n.text,customdata:s.castOption(a,n.i,"customdata")},w=m.getFirstFilled(a.text,e.pts);(y(w)||""===w)&&(b.text=w),e.text=s.texttemplateString(_,b,t._fullLayout._d3locale,b,a._meta||{})}else e.text=""}}function R(t,e){var r=t.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=a*n-o*i,t.textY=a*i+o*n,t.noCenter=!0}e.exports={plot:function(t,e){var i=t._context.staticPlot,h=t._fullLayout,d=h._size;f("pie",h),b(e,t),z(e,d);var g=s.makeTraceGroups(h._pielayer,e,"trace").each((function(e){var f=r.select(this),g=e[0],y=g.trace;(function(t){var e,r,n,i=t[0],a=i.r,o=i.trace,s=m.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,c="px0",u="px1";if("counterclockwise"===o.direction){for(e=0;ei.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/i.vTotal,.5),r.ring=1-o.hole,r.rInscribed=E(r,i))})(e),f.attr("stroke-linejoin","round"),f.each((function(){var x=r.select(this).selectAll("g.slice").data(e);x.enter().append("g").classed("slice",!0),x.exit().remove();var b=[[[],[]],[[],[]]],T=!1;x.each((function(n,a){if(n.hidden)r.select(this).selectAll("path,g").remove();else{n.pointNumber=n.i,n.curveNumber=y.index,b[n.pxmid[1]<0?0:1][n.pxmid[0]<0?0:1].push(n);var l=g.cx,c=g.cy,f=r.select(this),d=f.selectAll("path.surface").data([n]);if(d.enter().append("path").classed("surface",!0).style({"pointer-events":i?"none":"all"}),f.call(v,t,e),y.pull){var x=+m.castOption(y.pull,n.pts)||0;x>0&&(l+=x*n.pxmid[0],c+=x*n.pxmid[1])}n.cxFinal=l,n.cyFinal=c;var A=y.hole;if(n.v===g.vTotal){var k="M"+(l+n.px0[0])+","+(c+n.px0[1])+L(n.px0,n.pxmid,!0,1)+L(n.pxmid,n.px0,!0,1)+"Z";A?d.attr("d","M"+(l+A*n.px0[0])+","+(c+A*n.px0[1])+L(n.px0,n.pxmid,!1,A)+L(n.pxmid,n.px0,!1,A)+"Z"+k):d.attr("d",k)}else{var M=L(n.px0,n.px1,!0,1);if(A){var S=1-A;d.attr("d","M"+(l+A*n.px1[0])+","+(c+A*n.px1[1])+L(n.px1,n.px0,!1,A)+"l"+S*n.px0[0]+","+S*n.px0[1]+M+"Z")}else d.attr("d","M"+l+","+c+"l"+n.px0[0]+","+n.px0[1]+M+"Z")}O(t,n,g);var E=m.castOption(y.textposition,n.pts),I=f.selectAll("g.slicetext").data(n.text&&"none"!==E?[0]:[]);I.enter().append("g").classed("slicetext",!0),I.exit().remove(),I.each((function(){var i=s.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),f=s.ensureUniformFontSize(t,"outside"===E?function(t,e,r){return{color:m.castOption(t.outsidetextfont.color,e.pts)||m.castOption(t.textfont.color,e.pts)||r.color,family:m.castOption(t.outsidetextfont.family,e.pts)||m.castOption(t.textfont.family,e.pts)||r.family,size:m.castOption(t.outsidetextfont.size,e.pts)||m.castOption(t.textfont.size,e.pts)||r.size,weight:m.castOption(t.outsidetextfont.weight,e.pts)||m.castOption(t.textfont.weight,e.pts)||r.weight,style:m.castOption(t.outsidetextfont.style,e.pts)||m.castOption(t.textfont.style,e.pts)||r.style,variant:m.castOption(t.outsidetextfont.variant,e.pts)||m.castOption(t.textfont.variant,e.pts)||r.variant,textcase:m.castOption(t.outsidetextfont.textcase,e.pts)||m.castOption(t.textfont.textcase,e.pts)||r.textcase,lineposition:m.castOption(t.outsidetextfont.lineposition,e.pts)||m.castOption(t.textfont.lineposition,e.pts)||r.lineposition,shadow:m.castOption(t.outsidetextfont.shadow,e.pts)||m.castOption(t.textfont.shadow,e.pts)||r.shadow}}(y,n,h.font):_(y,n,h.font));i.text(n.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(o.font,f).call(u.convertToTspans,t);var d,v=o.bBox(i.node());if("outside"===E)d=C(v,n);else if(d=w(v,n,g),"auto"===E&&d.scale<1){var x=s.ensureUniformFontSize(t,y.outsidetextfont);i.call(o.font,x),d=C(v=o.bBox(i.node()),n)}var b=d.textPosAngle,A=void 0===b?n.pxmid:D(g.r,b);if(d.targetX=l+A[0]*d.rCenter+(d.x||0),d.targetY=c+A[1]*d.rCenter+(d.y||0),R(d,v),d.outside){var k=d.targetY;n.yLabelMin=k-v.height/2,n.yLabelMid=k,n.yLabelMax=k+v.height/2,n.labelExtraX=0,n.labelExtraY=0,T=!0}d.fontSize=f.size,p(y.type,d,h),e[a].transform=d,s.setTransormAndDisplay(i,d)}))}function L(t,e,r,i){var a=i*(e[0]-t[0]),o=i*(e[1]-t[1]);return"a"+i*g.r+","+i*g.r+" 0 "+n.largeArc+(r?" 1 ":" 0 ")+a+","+o}}));var A=r.select(this).selectAll("g.titletext").data(y.title.text?[0]:[]);if(A.enter().append("g").classed("titletext",!0),A.exit().remove(),A.each((function(){var e,n=s.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),i=y.title.text;y._meta&&(i=s.templateString(i,y._meta)),n.text(i).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(o.font,y.title.font).call(u.convertToTspans,t),e="middle center"===y.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(g):I(g,d),n.attr("transform",c(e.x,e.y)+l(Math.min(1,e.scale))+c(e.tx,e.ty))})),T&&function(t,e){var r,n,i,a,o,l,c,u,h,p,f,d,g;function y(t,e){return t.pxmid[1]-e.pxmid[1]}function v(t,e){return e.pxmid[1]-t.pxmid[1]}function x(t,r){r||(r={});var i,u,h,f,d=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),g=n?t.yLabelMin:t.yLabelMax,y=n?t.yLabelMax:t.yLabelMin,v=t.cyFinal+o(t.px0[1],t.px1[1]),x=d-g;if(x*c>0&&(t.labelExtraY=x),s.isArrayOrTypedArray(e.pull))for(u=0;u=(m.castOption(e.pull,h.pts)||0))&&((t.pxmid[1]-h.pxmid[1])*c>0?(x=h.cyFinal+o(h.px0[1],h.px1[1])-g-t.labelExtraY)*c>0&&(t.labelExtraY+=x):(y+t.labelExtraY-v)*c>0&&(i=3*l*Math.abs(u-p.indexOf(t)),(f=h.cxFinal+a(h.px0[0],h.px1[0])+i-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*l>0&&(t.labelExtraX+=f)))}for(n=0;n<2;n++)for(i=n?y:v,o=n?Math.max:Math.min,c=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,l=r?1:-1,(u=t[n][r]).sort(i),h=t[1-n][r],p=h.concat(u),d=[],f=0;fMath.abs(h)?l+="l"+h*t.pxmid[0]/t.pxmid[1]+","+h+"H"+(o+t.labelExtraX+c):l+="l"+t.labelExtraX+","+u+"v"+(h-u)+"h"+c}else l+="V"+(t.yLabelMid+t.labelExtraY)+"h"+c;s.ensureSingle(n,"path","textline").call(a.stroke,e.outsidetextfont.color).attr({"stroke-width":Math.min(2,e.outsidetextfont.size/8),d:l,fill:"none"})}else n.select("path.textline").remove()}))}(x,y),T&&y.automargin){var k=o.bBox(f.node()),M=y.domain,S=d.w*(M.x[1]-M.x[0]),E=d.h*(M.y[1]-M.y[0]),L=(.5*S-g.r)/d.w,P=(.5*E-g.r)/d.h;n.autoMargin(t,"pie."+y.uid+".automargin",{xl:M.x[0]-L,xr:M.x[1]+L,yb:M.y[0]-P,yt:M.y[1]+P,l:Math.max(g.cx-g.r-k.left,0),r:Math.max(k.right-(g.cx+g.r),0),b:Math.max(k.bottom-(g.cy+g.r),0),t:Math.max(g.cy-g.r-k.top,0),pad:5})}}))}));setTimeout((function(){g.selectAll("tspan").each((function(){var t=r.select(this);t.attr("dy")&&t.attr("dy",t.attr("dy"))}))}),0)},formatSliceLabel:O,transformInsideText:w,determineInsideTextFont:_,positionTitleOutside:I,prerenderTitles:b,layoutAreas:z,attachFxHandlers:v,computeTransform:R}}}),Bu=f({"src/traces/pie/style.js"(t,e){var r=x(),n=Tr(),i=Ja().resizeText;e.exports=function(t){var e=t._fullLayout._pielayer.selectAll(".trace");i(t,e,"pie"),e.each((function(e){var i=e[0].trace,a=r.select(this);a.style({opacity:i.opacity}),a.selectAll("path.surface").each((function(e){r.select(this).call(n,e,i,t)}))}))}}}),ju=f({"src/traces/pie/base_plot.js"(t){var e=Ae();t.name="pie",t.plot=function(r,n,i,a){e.plotBasePlot(t.name,r,n,i,a)},t.clean=function(r,n,i,a){e.cleanBasePlot(t.name,r,n,i,a)}}}),Nu=f({"src/traces/pie/index.js"(t,e){e.exports={attributes:Lu(),supplyDefaults:Pu().supplyDefaults,supplyLayoutDefaults:Du(),layoutAttributes:zu(),calc:Ou().calc,crossTraceCalc:Ou().crossTraceCalc,plot:Fu().plot,style:Bu(),styleOne:Tr(),moduleType:"trace",name:"pie",basePlotModule:ju(),categories:["pie-like","pie","showLegend"],meta:{}}}}),Uu=f({"lib/pie.js"(t,e){e.exports=Nu()}}),Vu=f({"src/traces/sunburst/base_plot.js"(t){var e=Ae();t.name="sunburst",t.plot=function(r,n,i,a){e.plotBasePlot(t.name,r,n,i,a)},t.clean=function(r,n,i,a){e.cleanBasePlot(t.name,r,n,i,a)}}}),qu=f({"src/traces/sunburst/constants.js"(t,e){e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Hu=f({"src/traces/sunburst/attributes.js"(t,e){var r=U(),n=Ot().hovertemplateAttrs,i=Ot().texttemplateAttrs,a=Pe(),o=Aa().attributes,s=Lu(),l=qu(),c=R().extendFlat,u=zt().pattern;e.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:c({colors:{valType:"data_array",editType:"calc"},line:{color:c({},s.marker.line.color,{dflt:null}),width:c({},s.marker.line.width,{dflt:1}),editType:"calc"},pattern:u,editType:"calc"},a("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:s.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:i({editType:"plot"},{keys:l.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:c({},r.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:n({},{keys:l.eventDataKeys}),textfont:s.textfont,insidetextorientation:s.insidetextorientation,insidetextfont:s.insidetextfont,outsidetextfont:c({},s.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:s.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:o({name:"sunburst",trace:!0,editType:"calc"})}}}),Gu=f({"src/traces/sunburst/layout_attributes.js"(t,e){e.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),Wu=f({"src/traces/sunburst/defaults.js"(t,e){var r=le(),n=Hu(),i=Aa().defaults,a=Ya().handleText,o=Pu().handleMarkerDefaults,s=Ze(),l=s.hasColorscale,c=s.handleDefaults;e.exports=function(t,e,s,u){function h(i,a){return r.coerce(t,e,n,i,a)}var p=h("labels"),f=h("parents");if(p&&p.length&&f&&f.length){var d=h("values");d&&d.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),o(t,e,u,h);var m=e._hasColorscale=l(t,"marker","colors")||(t.marker||{}).coloraxis;m&&c(t,e,u,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",m?1:.7);var g=h("text");h("texttemplate"),e.texttemplate||h("textinfo",r.isArrayOrTypedArray(g)?"text+label":"label"),h("hovertext"),h("hovertemplate"),a(t,e,u,h,"auto",{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),i(e,u,h),e._length=null}else e.visible=!1}}}),Zu=f({"src/traces/sunburst/layout_defaults.js"(t,e){var r=le(),n=Gu();e.exports=function(t,e){function i(i,a){return r.coerce(t,e,n,i,a)}i("sunburstcolorway",e.colorway),i("extendsunburstcolors")}}}),Yu=f({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(t,e){var r,n;r=t,n=function(t){function e(t,e){return t.parent===e.parent?1:2}function r(t,e){return t+e.x}function n(t,e){return Math.max(t,e.y)}function i(t){var e=0,r=t.children,n=r&&r.length;if(n)for(;--n>=0;)e+=r[n].value;else e=1;t.value=e}function a(t,e){var r,n,i,a,s,u=new c(t),h=+t.value&&(u.value=t.value),p=[u];for(null==e&&(e=o);r=p.pop();)if(h&&(r.value=+r.data.value),(i=e(r.data))&&(s=i.length))for(r.children=new Array(s),a=s-1;a>=0;--a)p.push(n=r.children[a]=new c(i[a])),n.parent=r,n.depth=r.depth+1;return u.eachBefore(l)}function o(t){return t.children}function s(t){t.data=t.data.data}function l(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function c(t){this.data=t,this.depth=this.height=0,this.parent=null}c.prototype=a.prototype={constructor:c,count:function(){return this.eachAfter(i)},each:function(t){var e,r,n,i,a=this,o=[a];do{for(e=o.reverse(),o=[];a=e.pop();)if(t(a),r=a.children)for(n=0,i=r.length;n=0;--r)i.push(e[r]);return this},sum:function(t){return this.eachAfter((function(e){for(var r=+t(e.data)||0,n=e.children,i=n&&n.length;--i>=0;)r+=n[i].value;e.value=r}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,r=function(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),i=null;for(t=r.pop(),e=n.pop();t===e;)i=t,t=r.pop(),e=n.pop();return i}(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var i=n.length;t!==r;)n.splice(i,0,t),t=t.parent;return n},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(r){r!==t&&e.push({source:r.parent,target:r})})),e},copy:function(){return a(this).eachBefore(s)}};var u=Array.prototype.slice;function h(t){for(var e,r,n=0,i=(t=function(t){for(var e,r,n=t.length;n;)r=Math.random()*n--|0,e=t[n],t[n]=t[r],t[r]=e;return t}(u.call(t))).length,a=[];n0&&r*r>n*n+i*i}function m(t,e){for(var r=0;r(o*=o)?(n=(c+o-i)/(2*c),a=Math.sqrt(Math.max(0,o/c-n*n)),r.x=t.x-n*s-a*l,r.y=t.y-n*l+a*s):(n=(c+i-o)/(2*c),a=Math.sqrt(Math.max(0,i/c-n*n)),r.x=e.x+n*s-a*l,r.y=e.y+n*l+a*s)):(r.x=e.x+r.r,r.y=e.y)}function _(t,e){var r=t.r+e.r-1e-6,n=e.x-t.x,i=e.y-t.y;return r>0&&r*r>n*n+i*i}function b(t){var e=t._,r=t.next._,n=e.r+r.r,i=(e.x*r.r+r.x*e.r)/n,a=(e.y*r.r+r.y*e.r)/n;return i*i+a*a}function w(t){this._=t,this.next=null,this.previous=null}function T(t){if(!(i=t.length))return 0;var e,r,n,i,a,o,s,l,c,u,p;if((e=t[0]).x=0,e.y=0,!(i>1))return e.r;if(r=t[1],e.x=-r.r,r.x=e.r,r.y=0,!(i>2))return e.r+r.r;x(r,e,n=t[2]),e=new w(e),r=new w(r),n=new w(n),e.next=n.previous=r,r.next=e.previous=n,n.next=r.previous=e;t:for(s=3;sp&&(p=s),g=u*u*m,(f=Math.max(p/g,g/h))>d){u-=s;break}d=f}y.push(o={value:u,dice:l1?e:1)},r}(H),Z=function t(e){function r(t,r,n,i,a){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,h=-1,p=o.length,f=t.value;++h1?e:1)},r}(H);t.cluster=function(){var t=e,i=1,a=1,o=!1;function s(e){var s,l=0;e.eachAfter((function(e){var i=e.children;i?(e.x=function(t){return t.reduce(r,0)/t.length}(i),e.y=function(t){return 1+t.reduce(n,0)}(i)):(e.x=s?l+=t(e,s):0,e.y=0,s=e)}));var c=function(t){for(var e;e=t.children;)t=e[0];return t}(e),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(e),h=c.x-t(c,u)/2,p=u.x+t(u,c)/2;return e.eachAfter(o?function(t){t.x=(t.x-e.x)*i,t.y=(e.y-t.y)*a}:function(t){t.x=(t.x-h)/(p-h)*i,t.y=(1-(e.y?t.y/e.y:1))*a})}return s.separation=function(e){return arguments.length?(t=e,s):t},s.size=function(t){return arguments.length?(o=!1,i=+t[0],a=+t[1],s):o?null:[i,a]},s.nodeSize=function(t){return arguments.length?(o=!0,i=+t[0],a=+t[1],s):o?[i,a]:null},s},t.hierarchy=a,t.pack=function(){var t=null,e=1,r=1,n=k;function i(i){return i.x=e/2,i.y=r/2,t?i.eachBefore(E(t)).eachAfter(C(n,.5)).eachBefore(I(1)):i.eachBefore(E(S)).eachAfter(C(k,1)).eachAfter(C(n,i.r/Math.min(e,r))).eachBefore(I(Math.min(e,r)/(2*i.r))),i}return i.radius=function(e){return arguments.length?(t=function(t){return null==t?null:A(t)}(e),i):t},i.size=function(t){return arguments.length?(e=+t[0],r=+t[1],i):[e,r]},i.padding=function(t){return arguments.length?(n="function"==typeof t?t:M(+t),i):n},i},t.packEnclose=h,t.packSiblings=function(t){return T(t),t},t.partition=function(){var t=1,e=1,r=0,n=!1;function i(i){var a=i.height+1;return i.x0=i.y0=r,i.x1=t,i.y1=e/a,i.eachBefore(function(t,e){return function(n){n.children&&P(n,n.x0,t*(n.depth+1)/e,n.x1,t*(n.depth+2)/e);var i=n.x0,a=n.y0,o=n.x1-r,s=n.y1-r;o0)throw new Error("cycle");return a}return r.id=function(e){return arguments.length?(t=A(e),r):t},r.parentId=function(t){return arguments.length?(e=A(t),r):e},r},t.tree=function(){var t=F,e=1,r=1,n=null;function i(i){var l=function(t){for(var e,r,n,i,a,o=new V(t,0),s=[o];e=s.pop();)if(n=e._.children)for(e.children=new Array(a=n.length),i=a-1;i>=0;--i)s.push(r=e.children[i]=new V(n[i],i)),r.parent=e;return(o.parent=new V(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),n)i.eachBefore(s);else{var c=i,u=i,h=i;i.eachBefore((function(t){t.xu.x&&(u=t),t.depth>h.depth&&(h=t)}));var p=c===u?1:t(c,u)/2,f=p-c.x,d=e/(u.x+p+f),m=r/(h.depth||1);i.eachBefore((function(t){t.x=(t.x+f)*d,t.y=t.depth*m}))}return i}function a(e){var r=e.children,n=e.parent.children,i=e.i?n[e.i-1]:null;if(r){!function(t){for(var e,r=0,n=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(e);var a=(r[0].z+r[r.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-a):e.z=a}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,r,n){if(r){for(var i,a=e,o=e,s=r,l=a.parent.children[0],c=a.m,u=o.m,h=s.m,p=l.m;s=j(s),a=B(a),s&&a;)l=B(l),(o=j(o)).a=e,(i=s.z+h-a.z-c+t(s._,a._))>0&&(N(U(s,e,n),e,i),c+=i,u+=i),h+=s.m,c+=a.m,p+=l.m,u+=o.m;s&&!j(o)&&(o.t=s,o.m+=h-u),a&&!B(l)&&(l.t=a,l.m+=c-p,n=e)}return n}(e,i,e.parent.A||n[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*r}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(n=!1,e=+t[0],r=+t[1],i):n?null:[e,r]},i.nodeSize=function(t){return arguments.length?(n=!0,e=+t[0],r=+t[1],i):n?[e,r]:null},i},t.treemap=function(){var t=W,e=!1,r=1,n=1,i=[0],a=k,o=k,s=k,l=k,c=k;function u(t){return t.x0=t.y0=0,t.x1=r,t.y1=n,t.eachBefore(h),i=[0],e&&t.eachBefore(L),t}function h(e){var r=i[e.depth],n=e.x0+r,u=e.y0+r,h=e.x1-r,p=e.y1-r;h=r-1){var u=s[e];return u.x0=i,u.y0=a,u.x1=o,void(u.y1=l)}for(var h=c[e],p=n/2+h,f=e+1,d=r-1;f>>1;c[m]l-a){var v=(i*y+o*g)/n;t(e,f,g,i,a,v,l),t(f,r,y,v,a,o,l)}else{var x=(a*y+l*g)/n;t(e,f,g,i,a,o,x),t(f,r,y,i,x,o,l)}}(0,l,t.value,e,r,n,i)},t.treemapDice=P,t.treemapResquarify=Z,t.treemapSlice=q,t.treemapSliceDice=function(t,e,r,n,i){(1&t.depth?q:P)(t,e,r,n,i)},t.treemapSquarify=W,Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=r||self).d3=r.d3||{})}}),Xu=f({"src/traces/sunburst/calc.js"(t){var e=Yu(),r=A(),n=le(),i=Ze().makeColorScaleFuncFromTrace,a=Ou().makePullColorFn,o=Ou().generateExtendedColors,s=Ze().calc,l=k().ALMOST_EQUAL,c={},u={},h={};function p(t,e,r){var n=0,i=t.children;if(i){for(var a=i.length,o=0;o=0};v?(c=Math.min(y.length,_.length),u=function(t){return M(y[t])&&S(t)},h=function(t){return String(y[t])}):(c=Math.min(x.length,_.length),u=function(t){return M(x[t])&&S(t)},h=function(t){return String(x[t])}),w&&(c=Math.min(c,b.length));for(var E=0;E1){for(var P=n.randstr(),z=0;z>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?oh(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?oh(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=Ch.exec(t))?new ch(e[1],e[2],e[3],1):(e=Ih.exec(t))?new ch(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=Lh.exec(t))?oh(e[1],e[2],e[3],e[4]):(e=Ph.exec(t))?oh(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=zh.exec(t))?gh(e[1],e[2]/100,e[3]/100,1):(e=Dh.exec(t))?gh(e[1],e[2]/100,e[3]/100,e[4]):Oh.hasOwnProperty(t)?ah(Oh[t]):"transparent"===t?new ch(NaN,NaN,NaN,0):null}function ah(t){return new ch(t>>16&255,t>>8&255,255&t,1)}function oh(t,e,r,n){return n<=0&&(t=e=r=NaN),new ch(t,e,r,n)}function sh(t){return t instanceof Qu||(t=ih(t)),t?new ch((t=t.rgb()).r,t.g,t.b,t.opacity):new ch}function lh(t,e,r,n){return 1===arguments.length?sh(t):new ch(t,e,r,n??1)}function ch(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function uh(){return`#${mh(this.r)}${mh(this.g)}${mh(this.b)}`}function hh(){return`#${mh(this.r)}${mh(this.g)}${mh(this.b)}${mh(255*(isNaN(this.opacity)?1:this.opacity))}`}function ph(){let t=fh(this.opacity);return`${1===t?"rgb(":"rgba("}${dh(this.r)}, ${dh(this.g)}, ${dh(this.b)}${1===t?")":`, ${t})`}`}function fh(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function dh(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function mh(t){return((t=dh(t))<16?"0":"")+t.toString(16)}function gh(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new xh(t,e,r,n)}function yh(t){if(t instanceof xh)return new xh(t.h,t.s,t.l,t.opacity);if(t instanceof Qu||(t=ih(t)),!t)return new xh;if(t instanceof xh)return t;var e=(t=t.rgb()).r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(o=e===a?(r-n)/s+6*(r0&&l<1?0:o,new xh(o,s,l,t.opacity)}function vh(t,e,r,n){return 1===arguments.length?yh(t):new xh(t,e,r,n??1)}function xh(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function _h(t){return(t=(t||0)%360)<0?t+360:t}function bh(t){return Math.max(0,Math.min(1,t||0))}function wh(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}var Th,Ah,kh,Mh,Sh,Eh,Ch,Ih,Lh,Ph,zh,Dh,Oh,Rh,Fh,Bh=p({"node_modules/d3-color/src/color.js"(){Ju(),Ah=1/(Th=.7),kh="\\s*([+-]?\\d+)\\s*",Mh="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Sh="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Eh=/^#([0-9a-f]{3,8})$/,Ch=new RegExp(`^rgb\\(${kh},${kh},${kh}\\)$`),Ih=new RegExp(`^rgb\\(${Sh},${Sh},${Sh}\\)$`),Lh=new RegExp(`^rgba\\(${kh},${kh},${kh},${Mh}\\)$`),Ph=new RegExp(`^rgba\\(${Sh},${Sh},${Sh},${Mh}\\)$`),zh=new RegExp(`^hsl\\(${Mh},${Sh},${Sh}\\)$`),Dh=new RegExp(`^hsla\\(${Mh},${Sh},${Sh},${Mh}\\)$`),Oh={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},$u(Qu,ih,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:th,formatHex:th,formatHex8:eh,formatHsl:rh,formatRgb:nh,toString:nh}),$u(ch,lh,Ku(Qu,{brighter(t){return t=null==t?Ah:Math.pow(Ah,t),new ch(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?Th:Math.pow(Th,t),new ch(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new ch(dh(this.r),dh(this.g),dh(this.b),fh(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:uh,formatHex:uh,formatHex8:hh,formatRgb:ph,toString:ph})),$u(xh,vh,Ku(Qu,{brighter(t){return t=null==t?Ah:Math.pow(Ah,t),new xh(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?Th:Math.pow(Th,t),new xh(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new ch(wh(t>=240?t-240:t+120,i,n),wh(t,i,n),wh(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new xh(_h(this.h),bh(this.s),bh(this.l),fh(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=fh(this.opacity);return`${1===t?"hsl(":"hsla("}${_h(this.h)}, ${100*bh(this.s)}%, ${100*bh(this.l)}%${1===t?")":`, ${t})`}`}}))}}),jh=p({"node_modules/d3-color/src/math.js"(){Rh=Math.PI/180,Fh=180/Math.PI}});function Nh(t){if(t instanceof Vh)return new Vh(t.l,t.a,t.b,t.opacity);if(t instanceof Yh)return Xh(t);t instanceof ch||(t=sh(t));var e,r,n=Wh(t.r),i=Wh(t.g),a=Wh(t.b),o=qh((.2225045*n+.7168786*i+.0606169*a)/Kh);return n===i&&i===a?e=r=o:(e=qh((.4360747*n+.3850649*i+.1430804*a)/$h),r=qh((.0139322*n+.0971045*i+.7141733*a)/Jh)),new Vh(116*o-16,500*(e-o),200*(o-r),t.opacity)}function Uh(t,e,r,n){return 1===arguments.length?Nh(t):new Vh(t,e,r,n??1)}function Vh(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function qh(t){return t>rp?Math.pow(t,.3333333333333333):t/ep+Qh}function Hh(t){return t>tp?t*t*t:ep*(t-Qh)}function Gh(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,.4166666666666667)-.055)}function Wh(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Zh(t,e,r,n){return 1===arguments.length?function(t){if(t instanceof Yh)return new Yh(t.h,t.c,t.l,t.opacity);if(t instanceof Vh||(t=Nh(t)),0===t.a&&0===t.b)return new Yh(NaN,0=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],o=n>0?t[n-1]:2*i-a,s=n()=>t}});function wp(t,e){return function(r){return t+r*e}}function Tp(t,e){var r=e-t;return r?wp(t,r>180||r<-180?r-360*Math.round(r/360):r):xp(isNaN(t)?e:t)}function Ap(t,e){var r=e-t;return r?wp(t,r):xp(isNaN(t)?e:t)}var kp=p({"node_modules/d3-interpolate/src/color.js"(){bp()}});function Mp(t){return function(e){var r,n,i=e.length,a=new Array(i),o=new Array(i),s=new Array(i);for(r=0;ra&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:jp(r,n)})),a=Gp.lastIndex;return a180?e+=360:e-t>180&&(t+=360),a.push({i:r.push(i(r)+"rotate(",null,n)-2,x:jp(t,e)})):e&&r.push(i(r)+"rotate("+e+n)}(a.rotate,o.rotate,s,l),function(t,e,r,a){t!==e?a.push({i:r.push(i(r)+"skewX(",null,n)-2,x:jp(t,e)}):e&&r.push(i(r)+"skewX("+e+n)}(a.skewX,o.skewX,s,l),function(t,e,r,n,a,o){if(t!==r||e!==n){var s=a.push(i(a)+"scale(",null,",",null,")");o.push({i:s-4,x:jp(t,r)},{i:s-2,x:jp(e,n)})}else(1!==r||1!==n)&&a.push(i(a)+"scale("+r+","+n+")")}(a.scaleX,a.scaleY,o.scaleX,o.scaleY,s,l),a=o=null,function(t){for(var e,r=-1,n=l.length;++rZp,interpolateArray:()=>Dp,interpolateBasis:()=>gp,interpolateBasisClosed:()=>vp,interpolateCubehelix:()=>Ef,interpolateCubehelixLong:()=>Cf,interpolateDate:()=>Fp,interpolateDiscrete:()=>Xp,interpolateHcl:()=>Af,interpolateHclLong:()=>kf,interpolateHsl:()=>vf,interpolateHslLong:()=>xf,interpolateHue:()=>Kp,interpolateLab:()=>bf,interpolateNumber:()=>jp,interpolateNumberArray:()=>Lp,interpolateObject:()=>Up,interpolateRgb:()=>Sp,interpolateRgbBasis:()=>Ep,interpolateRgbBasisClosed:()=>Cp,interpolateRound:()=>Qp,interpolateString:()=>qp,interpolateTransformCss:()=>hf,interpolateTransformSvg:()=>pf,interpolateZoom:()=>mf,piecewise:()=>Lf,quantize:()=>zf});var Rf=p({"node_modules/d3-interpolate/src/index.js"(){Yp(),Rp(),yp(),_p(),Bp(),$p(),Jp(),Np(),zp(),Vp(),tf(),Wp(),ff(),gf(),Ip(),_f(),wf(),Mf(),If(),Pf(),Df()}}),Ff=f({"src/traces/sunburst/fill_one.js"(t,e){var r=Qe(),n=H();e.exports=function(t,e,i,a,o){var s=e.data.data,l=s.i,c=o||s.color;if(l>=0){e.i=s.i;var u=i.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=c,e.color=c):(u.color=c,e.color=c),r.pointStyle(t,i,a,e)}else n.fill(t,c)}}}),Bf=f({"src/traces/sunburst/style.js"(t,e){var r=x(),n=H(),i=le(),a=Ja().resizeText,o=Ff();function s(t,e,r,a){var s=e.data.data,l=!e.children,c=s.i,u=i.castOption(r,c,"marker.line.color")||n.defaultLine,h=i.castOption(r,c,"marker.line.width")||0;t.call(o,e,r,a).style("stroke-width",h).call(n.stroke,u).style("opacity",l?r.leaf.opacity:null)}e.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(".trace");a(t,e,"sunburst"),e.each((function(e){var n=r.select(this),i=e[0].trace;n.style("opacity",i.opacity),n.selectAll("path.surface").each((function(e){r.select(this).call(s,e,i,t)}))}))},styleOne:s}}}),jf=f({"src/traces/sunburst/helpers.js"(t){var e=le(),r=H(),n=fr(),i=br();function a(t){return t.data.data.pid}t.findEntryWithLevel=function(e,r){var n;return r&&e.eachAfter((function(e){if(t.getPtId(e)===r)return n=e.copy()})),n||e},t.findEntryWithChild=function(e,r){var n;return e.eachAfter((function(e){for(var i=e.children||[],a=0;a0)},t.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},t.isHeader=function(e,r){return!(t.isLeaf(e)||e.depth===r._maxDepth-1)},t.getParent=function(e,r){return t.findEntryWithLevel(e,a(r))},t.listPath=function(e,r){var n=e.parent;if(!n)return[];var i=r?[n.data[r]]:[n];return t.listPath(n,r).concat(i)},t.getPath=function(e){return t.listPath(e,"label").join("/")+"/"},t.formatValue=i.formatPieValue,t.formatPercent=function(t,r){var n=e.formatPercent(t,0);return"0%"===n&&(n=i.formatPiePercent(t,r)),n}}}),Nf=f({"src/traces/sunburst/fx.js"(t,e){var r=x(),n=qt(),i=$e().appendArrayPointValue,a=Dr(),o=le(),s=fe(),l=jf(),c=br().formatPieValue;function u(t,e,r){for(var n=t.data.data,a={curveNumber:e.index,pointNumber:n.i,data:e._input,fullData:e},o=0;o"),name:k||z("name")?v.name:void 0,color:A("hoverlabel.bgcolor")||x.color,borderColor:A("hoverlabel.bordercolor"),fontFamily:A("hoverlabel.font.family"),fontSize:A("hoverlabel.font.size"),fontColor:A("hoverlabel.font.color"),fontWeight:A("hoverlabel.font.weight"),fontStyle:A("hoverlabel.font.style"),fontVariant:A("hoverlabel.font.variant"),nameLength:A("hoverlabel.namelength"),textAlign:A("hoverlabel.align"),hovertemplate:k,hovertemplateLabels:I,eventData:h};g&&(F.x0=E-n.rInscribed*n.rpx1,F.x1=E+n.rInscribed*n.rpx1,F.idealAlign=n.pxmid[0]<0?"left":"right"),y&&(F.x=E,F.idealAlign=E<0?"left":"right");var B=[];a.loneHover(F,{container:s._hoverlayer.node(),outerContainer:s._paper.node(),gd:i,inOut_bbox:B}),h[0].bbox=B[0],d._hasHoverLabel=!0}if(y){var j=t.select("path.surface");p.styleOne(j,n,v,i,{hovered:!0})}d._hasHoverEvent=!0,i.emit("plotly_hover",{points:h||[u(n,v,p.eventDataKeys)],event:r.event})}})),t.on("mouseout",(function(e){var n=i._fullLayout,o=i._fullData[d.index],s=r.select(this).datum();if(d._hasHoverEvent&&(e.originalEvent=r.event,i.emit("plotly_unhover",{points:[u(s,o,p.eventDataKeys)],event:r.event}),d._hasHoverEvent=!1),d._hasHoverLabel&&(a.loneUnhover(n._hoverlayer.node()),d._hasHoverLabel=!1),y){var l=t.select("path.surface");p.styleOne(l,s,o,i,{hovered:!1})}})),t.on("click",(function(t){var e=i._fullLayout,o=i._fullData[d.index],c=g&&(l.isHierarchyRoot(t)||l.isLeaf(t)),h=l.getPtId(t),f=l.isEntry(t)?l.findEntryWithChild(m,h):l.findEntryWithLevel(m,h),y=l.getPtId(f),v={points:[u(t,o,p.eventDataKeys)],event:r.event};c||(v.nextLevel=y);var x=s.triggerHandler(i,"plotly_"+d.type+"click",v);if(!1!==x&&e.hovermode&&(i._hoverdata=[u(t,o,p.eventDataKeys)],a.click(i,r.event)),!c&&!1!==x&&!i._dragging&&!i._transitioning){n.call("_storeDirectGUIEdit",o,e._tracePreGUI[o.uid],{level:o.level});var _={data:[{level:y}],traces:[d.index]},b={frame:{redraw:!1,duration:p.transitionTime},transition:{duration:p.transitionTime,easing:p.transitionEasing},mode:"immediate",fromcurrent:!0};a.loneUnhover(e._hoverlayer.node()),n.call("animate",i,_,b)}}))}}}),Uf=f({"src/traces/sunburst/plot.js"(t){var e=x(),r=Yu(),n=(Rf(),g(Of)).interpolate,i=Qe(),a=le(),o=Se(),s=Ja(),l=s.recordMinTextSize,c=s.clearMinTextSize,u=Fu(),h=br().getRotationAngle,p=u.computeTransform,f=u.transformInsideText,d=Bf().styleOne,m=to().resizeText,y=Nf(),v=qu(),_=jf();function b(s,c,u,m){var g=s._context.staticPlot,x=s._fullLayout,b=!x.uniformtext.mode&&_.hasTransition(m),T=e.select(u).selectAll("g.slice"),A=c[0],k=A.trace,M=A.hierarchy,S=_.findEntryWithLevel(M,k.level),E=_.getMaxDepth(k),C=x._size,I=k.domain,L=C.w*(I.x[1]-I.x[0]),P=C.h*(I.y[1]-I.y[0]),z=.5*Math.min(L,P),D=A.cx=C.l+C.w*(I.x[1]+I.x[0])/2,O=A.cy=C.t+C.h*(1-I.y[0])-P/2;if(!S)return T.remove();var R=null,F={};b&&T.each((function(t){F[_.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!R&&_.isEntry(t)&&(R=t)}));var B=function(t){return r.partition().size([2*Math.PI,t.height+1])(t)}(S).descendants(),j=S.height+1,N=0,U=E;A.hasMultipleRoots&&_.isHierarchyRoot(S)&&(B=B.slice(1),j-=1,N=1,U+=1),B=B.filter((function(t){return t.y1<=U}));var V=h(k.rotation);V&&B.forEach((function(t){t.x0+=V,t.x1+=V}));var q=Math.min(j,E),H=function(t){return(t-N)/q*z},G=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},W=function(t){return a.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,D,O)},Z=function(t){return D+w(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},Y=function(t){return O+w(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(T=T.data(B,_.getPtId)).enter().append("g").classed("slice",!0),b?T.exit().transition().each((function(){var t=e.select(this);t.select("path.surface").transition().attrTween("d",(function(t){var e=function(t){var e,r=_.getPtId(t),i=F[r],a=F[_.getPtId(S)];if(a){var o=(t.x1>a.x1?2*Math.PI:0)+V;e=t.rpx1X?2*Math.PI:0)+V;e={x0:o,x1:o}}else e={rpx0:z,rpx1:z},a.extendFlat(e,J(t));else e={rpx0:0,rpx1:0};else e={x0:V,x1:V};return n(e,i)}(t);return function(t){return W(e(t))}})):h.attr("d",W),u.call(y,S,s,c,{eventDataKeys:v.eventDataKeys,transitionTime:v.CLICK_TRANSITION_TIME,transitionEasing:v.CLICK_TRANSITION_EASING}).call(_.setSliceCursor,s,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:s._transitioning}),h.call(d,r,k,s);var m=a.ensureSingle(u,"g","slicetext"),w=a.ensureSingle(m,"text","",(function(t){t.attr("data-notex",1)})),T=a.ensureUniformFontSize(s,_.determineTextFont(k,r,x.font));w.text(t.formatSliceLabel(r,S,k,c,x)).classed("slicetext",!0).attr("text-anchor","middle").call(i.font,T).call(o.convertToTspans,s);var M=i.bBox(w.node());r.transform=f(M,r,A),r.transform.targetX=Z(r),r.transform.targetY=Y(r);var E=function(t,e){var r=t.transform;return p(r,e),r.fontSize=T.size,l(k.type,r,x),a.getTextTransform(r)};b?w.transition().attrTween("transform",(function(t){var e=function(t){var e,r=F[_.getPtId(t)],i=t.transform;if(r)e=r;else if(e={rpx1:t.rpx1,transform:{textPosAngle:i.textPosAngle,scale:0,rotate:i.rotate,rCenter:i.rCenter,x:i.x,y:i.y}},R)if(t.parent)if(X){var o=t.x1>X?2*Math.PI:0;e.x0=e.x1=o}else a.extendFlat(e,J(t));else e.x0=e.x1=V;else e.x0=e.x1=V;var s=n(e.transform.textPosAngle,t.transform.textPosAngle),c=n(e.rpx1,t.rpx1),u=n(e.x0,t.x0),h=n(e.x1,t.x1),p=n(e.transform.scale,i.scale),f=n(e.transform.rotate,i.rotate),d=0===i.rCenter?3:0===e.transform.rCenter?1/3:1,m=n(e.transform.rCenter,i.rCenter);return function(t){var e=c(t),r=u(t),n=h(t),a=function(t){return m(Math.pow(t,d))}(t),o={pxmid:G(e,(r+n)/2),rpx1:e,transform:{textPosAngle:s(t),rCenter:a,x:i.x,y:i.y}};return l(k.type,i,x),{transform:{targetX:Z(o),targetY:Y(o),scale:p(t),rotate:f(t),rCenter:a}}}}(t);return function(t){return E(e(t),M)}})):w.attr("transform",E(r,M))}))}function w(t){return function(t,e){return[t*Math.sin(e),-t*Math.cos(e)]}(t.rpx1,t.transform.textPosAngle)}t.plot=function(t,r,n,i){var a,o,s=t._fullLayout,l=s._sunburstlayer,u=!n,h=!s.uniformtext.mode&&_.hasTransition(n);c("sunburst",s),(a=l.selectAll("g.trace.sunburst").data(r,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),a.order(),h?(i&&(o=i()),e.transition().duration(n.duration).ease(n.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(e){b(t,e,this,n)}))}))):(a.each((function(e){b(t,e,this,n)})),s.uniformtext.mode&&m(t,s._sunburstlayer.selectAll(".trace"),"sunburst")),u&&a.exit().remove()},t.formatSliceLabel=function(t,e,r,n,i){var o=r.texttemplate,s=r.textinfo;if(!(o||s&&"none"!==s))return"";var l=i.separators,c=n[0],u=t.data.data,h=c.hierarchy,p=_.isHierarchyRoot(t),f=_.getParent(h,t),d=_.getValue(t);if(!o){var m,g=s.split("+"),y=function(t){return-1!==g.indexOf(t)},v=[];if(y("label")&&u.label&&v.push(u.label),u.hasOwnProperty("v")&&y("value")&&v.push(_.formatValue(u.v,l)),!p){y("current path")&&v.push(_.getPath(t.data));var x=0;y("percent parent")&&x++,y("percent entry")&&x++,y("percent root")&&x++;var b=x>1;if(x){var w,T=function(t){m=_.formatPercent(w,l),b&&(m+=" of "+t),v.push(m)};y("percent parent")&&!p&&(w=d/_.getValue(f),T("parent")),y("percent entry")&&(w=d/_.getValue(e),T("entry")),y("percent root")&&(w=d/_.getValue(h),T("root"))}}return y("text")&&(m=a.castOption(r,u.i,"text"),a.isValidTextValue(m)&&v.push(m)),v.join("
")}var A=a.castOption(r,u.i,"texttemplate");if(!A)return"";var k={};u.label&&(k.label=u.label),u.hasOwnProperty("v")&&(k.value=u.v,k.valueLabel=_.formatValue(u.v,l)),k.currentPath=_.getPath(t.data),p||(k.percentParent=d/_.getValue(f),k.percentParentLabel=_.formatPercent(k.percentParent,l),k.parent=_.getPtLabel(f)),k.percentEntry=d/_.getValue(e),k.percentEntryLabel=_.formatPercent(k.percentEntry,l),k.entry=_.getPtLabel(e),k.percentRoot=d/_.getValue(h),k.percentRootLabel=_.formatPercent(k.percentRoot,l),k.root=_.getPtLabel(h),u.hasOwnProperty("color")&&(k.color=u.color);var M=a.castOption(r,u.i,"text");return(a.isValidTextValue(M)||""===M)&&(k.text=M),k.customdata=a.castOption(r,u.i,"customdata"),a.texttemplateString(A,k,i._d3locale,k,r._meta||{})}}}),Vf=f({"src/traces/sunburst/index.js"(t,e){e.exports={moduleType:"trace",name:"sunburst",basePlotModule:Vu(),categories:[],animatable:!0,attributes:Hu(),layoutAttributes:Gu(),supplyDefaults:Wu(),supplyLayoutDefaults:Zu(),calc:Xu().calc,crossTraceCalc:Xu().crossTraceCalc,plot:Uf().plot,style:Bf().style,colorbar:fi(),meta:{}}}}),qf=f({"lib/sunburst.js"(t,e){e.exports=Vf()}}),Hf=f({"src/traces/treemap/base_plot.js"(t){var e=Ae();t.name="treemap",t.plot=function(r,n,i,a){e.plotBasePlot(t.name,r,n,i,a)},t.clean=function(r,n,i,a){e.cleanBasePlot(t.name,r,n,i,a)}}}),Gf=f({"src/traces/treemap/constants.js"(t,e){e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),Wf=f({"src/traces/treemap/attributes.js"(t,e){var r=Ot().hovertemplateAttrs,n=Ot().texttemplateAttrs,i=Pe(),a=Aa().attributes,o=Lu(),s=Hu(),l=Gf(),c=R().extendFlat,u=zt().pattern;e.exports={labels:s.labels,parents:s.parents,values:s.values,branchvalues:s.branchvalues,count:s.count,level:s.level,maxdepth:s.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:c({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:s.marker.colors,pattern:u,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:s.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},i("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:c({},o.textfont,{}),editType:"calc"},text:o.text,textinfo:s.textinfo,texttemplate:n({editType:"plot"},{keys:l.eventDataKeys.concat(["label","value"])}),hovertext:o.hovertext,hoverinfo:s.hoverinfo,hovertemplate:r({},{keys:l.eventDataKeys}),textfont:o.textfont,insidetextfont:o.insidetextfont,outsidetextfont:c({},o.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:o.sort,root:s.root,domain:a({name:"treemap",trace:!0,editType:"calc"})}}}),Zf=f({"src/traces/treemap/layout_attributes.js"(t,e){e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),Yf=f({"src/traces/treemap/defaults.js"(t,e){var r=le(),n=Wf(),i=H(),a=Aa().defaults,o=Ya().handleText,s=Ha().TEXTPAD,l=Pu().handleMarkerDefaults,c=Ze(),u=c.hasColorscale,h=c.handleDefaults;e.exports=function(t,e,c,p){function f(i,a){return r.coerce(t,e,n,i,a)}var d=f("labels"),m=f("parents");if(d&&d.length&&m&&m.length){var g=f("values");g&&g.length?f("branchvalues"):f("count"),f("level"),f("maxdepth"),"squarify"===f("tiling.packing")&&f("tiling.squarifyratio"),f("tiling.flip"),f("tiling.pad");var y=f("text");f("texttemplate"),e.texttemplate||f("textinfo",r.isArrayOrTypedArray(y)?"text+label":"label"),f("hovertext"),f("hovertemplate");var v=f("pathbar.visible");o(t,e,p,f,"auto",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),f("textposition");var x=-1!==e.textposition.indexOf("bottom");l(t,e,p,f),(e._hasColorscale=u(t,"marker","colors")||(t.marker||{}).coloraxis)?h(t,e,p,f,{prefix:"marker.",cLetter:"c"}):f("marker.depthfade",!(e.marker.colors||[]).length);var _=2*e.textfont.size;f("marker.pad.t",x?_/4:_),f("marker.pad.l",_/4),f("marker.pad.r",_/4),f("marker.pad.b",x?_:_/4),f("marker.cornerradius"),e._hovered={marker:{line:{width:2,color:i.contrast(p.paper_bgcolor)}}},v&&(f("pathbar.thickness",e.pathbar.textfont.size+2*s),f("pathbar.side"),f("pathbar.edgeshape")),f("sort"),f("root.color"),a(e,p,f),e._length=null}else e.visible=!1}}}),Xf=f({"src/traces/treemap/layout_defaults.js"(t,e){var r=le(),n=Zf();e.exports=function(t,e){function i(i,a){return r.coerce(t,e,n,i,a)}i("treemapcolorway",e.colorway),i("extendtreemapcolors")}}}),$f=f({"src/traces/treemap/calc.js"(t){var e=Xu();t.calc=function(t,r){return e.calc(t,r)},t.crossTraceCalc=function(t){return e._runCrossTraceCalc("treemap",t)}}}),Kf=f({"src/traces/treemap/flip_tree.js"(t,e){e.exports=function t(e,r,n){var i;n.swapXY&&(i=e.x0,e.x0=e.y0,e.y0=i,i=e.x1,e.x1=e.y1,e.y1=i),n.flipX&&(i=e.x0,e.x0=r[0]-e.x1,e.x1=r[0]-i),n.flipY&&(i=e.y0,e.y0=r[1]-e.y1,e.y1=r[1]-i);var a=e.children;if(a)for(var o=0;o0)for(var b=0;b").join(" ")||"";var m=n.ensureSingle(f,"g","slicetext"),A=n.ensureSingle(m,"text","",(function(t){t.attr("data-notex",1)})),I=n.ensureUniformFontSize(t,c.determineTextFont(L,o,C.font,{onPathbar:!0}));A.text(o._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(i.font,I).call(a.convertToTspans,t),o.textBB=i.bBox(A.node()),o.transform=b(o,{fontSize:I.size,onPathbar:!0}),o.transform.fontSize=I.size,T?A.transition().attrTween("transform",(function(t){var e=M(t,h,S,[g,y]);return function(t){return w(e(t))}})):A.attr("transform",w(o))}))}}}),ed=f({"src/traces/treemap/plot_one.js"(t,e){var r=x(),n=(Rf(),g(Of)).interpolate,i=jf(),a=le(),o=Ha().TEXTPAD,s=eo().toMoveInsideBar,l=Ja().recordMinTextSize,c=Gf(),u=td();function h(t){return i.isHierarchyRoot(t)?"":i.getPtId(t)}e.exports=function(t,e,p,f,d){var m=t._fullLayout,g=e[0],y=g.trace,v="icicle"===y.type,x=g.hierarchy,_=i.findEntryWithLevel(x,y.level),b=r.select(p),w=b.selectAll("g.pathbar"),T=b.selectAll("g.slice");if(!_)return w.remove(),void T.remove();var A=i.isHierarchyRoot(_),k=!m.uniformtext.mode&&i.hasTransition(f),M=i.getMaxDepth(y),S=m._size,E=y.domain,C=S.w*(E.x[1]-E.x[0]),I=S.h*(E.y[1]-E.y[0]),L=C,P=y.pathbar.thickness,z=y.marker.line.width+c.gapWithPathbar,D=y.pathbar.visible?y.pathbar.side.indexOf("bottom")>-1?I+z:-(P+z):0,O={x0:L,x1:L,y0:D,y1:D+P},R=function(t,e,r){var n=y.tiling.pad,i=function(t){return t-n<=e.x0},a=function(t){return t+n>=e.x1},o=function(t){return t-n<=e.y0},s=function(t){return t+n>=e.y1};return t.x0===e.x0&&t.x1===e.x1&&t.y0===e.y0&&t.y1===e.y1?{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1}:{x0:i(t.x0-n)?0:a(t.x0-n)?r[0]:t.x0,x1:i(t.x1+n)?0:a(t.x1+n)?r[0]:t.x1,y0:o(t.y0-n)?0:s(t.y0-n)?r[1]:t.y0,y1:o(t.y1+n)?0:s(t.y1+n)?r[1]:t.y1}},F=null,B={},j={},N=null,U=function(t,e){return e?B[h(t)]:j[h(t)]};g.hasMultipleRoots&&A&&M++,y._maxDepth=M,y._backgroundColor=m.paper_bgcolor,y._entryDepth=_.data.depth,y._atRootLevel=A;var V=-C/2+S.l+S.w*(E.x[1]+E.x[0])/2,q=-I/2+S.t+S.h*(1-(E.y[1]+E.y[0])/2),H=function(t){return V+t},G=function(t){return q+t},W=G(0),Z=H(0),Y=function(t){return Z+t},X=function(t){return W+t};function $(t,e){return t+","+e}var K=Y(0),J=function(t){t.x=Math.max(K,t.x)},Q=y.pathbar.edgeshape,tt=y[v?"tiling":"marker"].pad,et=function(t){return-1!==y.textposition.indexOf(t)},rt=et("top"),nt=et("left"),it=et("right"),at=et("bottom"),ot=function(t,e){var r=t.x0,n=t.x1,i=t.y0,a=t.y1,c=t.textBB,u=rt||e.isHeader&&!at?"start":at?"end":"middle",h=et("right"),p=et("left")||e.onPathbar?-1:h?1:0;if(e.isHeader){if((r+=(v?tt:tt.l)-o)>=(n-=(v?tt:tt.r)-o)){var f=(r+n)/2;r=f,n=f}var d;at?i<(d=a-(v?tt:tt.b))&&d"===Q?(l.x-=a,c.x-=a,u.x-=a,h.x-=a):"/"===Q?(u.x-=a,h.x-=a,o.x-=a/2,s.x-=a/2):"\\"===Q?(l.x-=a,c.x-=a,o.x-=a/2,s.x-=a/2):"<"===Q&&(o.x-=a,s.x-=a),J(l),J(h),J(o),J(c),J(u),J(s),"M"+$(l.x,l.y)+"L"+$(c.x,c.y)+"L"+$(s.x,s.y)+"L"+$(u.x,u.y)+"L"+$(h.x,h.y)+"L"+$(o.x,o.y)+"Z"},toMoveInsideSlice:ot,makeUpdateSliceInterpolator:lt,makeUpdateTextInterpolator:ct,handleSlicesExit:ut,hasTransition:k,strTransform:ht}):w.remove()}}}),rd=f({"src/traces/treemap/draw.js"(t,e){var r=x(),n=jf(),i=Ja().clearMinTextSize,a=to().resizeText,o=ed();e.exports=function(t,e,s,l,c){var u,h,p=c.type,f=c.drawDescendants,d=t._fullLayout,m=d["_"+p+"layer"],g=!s;i(p,d),(u=m.selectAll("g.trace."+p).data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed(p,!0),u.order(),!d.uniformtext.mode&&n.hasTransition(s)?(l&&(h=l()),r.transition().duration(s.duration).ease(s.easing).each("end",(function(){h&&h()})).each("interrupt",(function(){h&&h()})).each((function(){m.selectAll("g.trace").each((function(e){o(t,e,this,s,f)}))}))):(u.each((function(e){o(t,e,this,s,f)})),d.uniformtext.mode&&a(t,m.selectAll(".trace"),p)),g&&u.exit().remove()}}}),nd=f({"src/traces/treemap/draw_descendants.js"(t,e){var r=x(),n=le(),i=Qe(),a=Se(),o=Jf(),s=Qf().styleOne,l=Gf(),c=jf(),u=Nf(),h=Uf().formatSliceLabel,p=!1;e.exports=function(t,e,f,d,m){var g=m.width,y=m.height,v=m.viewX,x=m.viewY,_=m.pathSlice,b=m.toMoveInsideSlice,w=m.strTransform,T=m.hasTransition,A=m.handleSlicesExit,k=m.makeUpdateSliceInterpolator,M=m.makeUpdateTextInterpolator,S=m.prevEntry,E=t._context.staticPlot,C=t._fullLayout,I=e[0].trace,L=-1!==I.textposition.indexOf("left"),P=-1!==I.textposition.indexOf("right"),z=-1!==I.textposition.indexOf("bottom"),D=!z&&!I.marker.pad.t||z&&!I.marker.pad.b,O=o(f,[g,y],{packing:I.tiling.packing,squarifyratio:I.tiling.squarifyratio,flipX:I.tiling.flip.indexOf("x")>-1,flipY:I.tiling.flip.indexOf("y")>-1,pad:{inner:I.tiling.pad,top:I.marker.pad.t,left:I.marker.pad.l,right:I.marker.pad.r,bottom:I.marker.pad.b}}).descendants(),R=1/0,F=-1/0;O.forEach((function(t){var e=t.depth;e>=I._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(R=Math.min(R,e),F=Math.max(F,e))})),d=d.data(O,c.getPtId),I._maxVisibleLayers=isFinite(F)?F-R+1:0,d.enter().append("g").classed("slice",!0),A(d,p,{},[g,y],_),d.order();var B=null;if(T&&S){var j=c.getPtId(S);d.each((function(t){null===B&&c.getPtId(t)===j&&(B={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var N=function(){return B||{x0:0,x1:g,y0:0,y1:y}},U=d;return T&&(U=U.transition().each("end",(function(){var e=r.select(this);c.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(o){var d=c.isHeader(o,I);o._x0=v(o.x0),o._x1=v(o.x1),o._y0=x(o.y0),o._y1=x(o.y1),o._hoverX=v(o.x1-I.marker.pad.r),o._hoverY=x(z?o.y1-I.marker.pad.b/2:o.y0+I.marker.pad.t/2);var m=r.select(this),A=n.ensureSingle(m,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));T?A.transition().attrTween("d",(function(t){var e=k(t,p,N(),[g,y]);return function(t){return _(e(t))}})):A.attr("d",_),m.call(u,f,t,e,{styleOne:s,eventDataKeys:l.eventDataKeys,transitionTime:l.CLICK_TRANSITION_TIME,transitionEasing:l.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,t,{isTransitioning:t._transitioning}),A.call(s,o,I,t,{hovered:!1}),o.x0===o.x1||o.y0===o.y1?o._text="":o._text=d?D?"":c.getPtLabel(o)||"":h(o,f,I,e,C)||"";var S=n.ensureSingle(m,"g","slicetext"),O=n.ensureSingle(S,"text","",(function(t){t.attr("data-notex",1)})),R=n.ensureUniformFontSize(t,c.determineTextFont(I,o,C.font)),F=o._text||" ",B=d&&-1===F.indexOf("
");O.text(F).classed("slicetext",!0).attr("text-anchor",P?"end":L||B?"start":"middle").call(i.font,R).call(a.convertToTspans,t),o.textBB=i.bBox(O.node()),o.transform=b(o,{fontSize:R.size,isHeader:d}),o.transform.fontSize=R.size,T?O.transition().attrTween("transform",(function(t){var e=M(t,p,N(),[g,y]);return function(t){return w(e(t))}})):O.attr("transform",w(o))})),B}}}),id=f({"src/traces/treemap/plot.js"(t,e){var r=rd(),n=nd();e.exports=function(t,e,i,a){return r(t,e,i,a,{type:"treemap",drawDescendants:n})}}}),ad=f({"src/traces/treemap/index.js"(t,e){e.exports={moduleType:"trace",name:"treemap",basePlotModule:Hf(),categories:[],animatable:!0,attributes:Wf(),layoutAttributes:Zf(),supplyDefaults:Yf(),supplyLayoutDefaults:Xf(),calc:$f().calc,crossTraceCalc:$f().crossTraceCalc,plot:id(),style:Qf().style,colorbar:fi(),meta:{}}}}),od=f({"lib/treemap.js"(t,e){e.exports=ad()}}),sd=f({"src/traces/icicle/base_plot.js"(t){var e=Ae();t.name="icicle",t.plot=function(r,n,i,a){e.plotBasePlot(t.name,r,n,i,a)},t.clean=function(r,n,i,a){e.cleanBasePlot(t.name,r,n,i,a)}}}),ld=f({"src/traces/icicle/attributes.js"(t,e){var r=Ot().hovertemplateAttrs,n=Ot().texttemplateAttrs,i=Pe(),a=Aa().attributes,o=Lu(),s=Hu(),l=Wf(),c=Gf(),u=R().extendFlat,h=zt().pattern;e.exports={labels:s.labels,parents:s.parents,values:s.values,branchvalues:s.branchvalues,count:s.count,level:s.level,maxdepth:s.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:l.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:u({colors:s.marker.colors,line:s.marker.line,pattern:h,editType:"calc"},i("marker",{colorAttr:"colors",anim:!1})),leaf:s.leaf,pathbar:l.pathbar,text:o.text,textinfo:s.textinfo,texttemplate:n({editType:"plot"},{keys:c.eventDataKeys.concat(["label","value"])}),hovertext:o.hovertext,hoverinfo:s.hoverinfo,hovertemplate:r({},{keys:c.eventDataKeys}),textfont:o.textfont,insidetextfont:o.insidetextfont,outsidetextfont:l.outsidetextfont,textposition:l.textposition,sort:o.sort,root:s.root,domain:a({name:"icicle",trace:!0,editType:"calc"})}}}),cd=f({"src/traces/icicle/layout_attributes.js"(t,e){e.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),ud=f({"src/traces/icicle/defaults.js"(t,e){var r=le(),n=ld(),i=H(),a=Aa().defaults,o=Ya().handleText,s=Ha().TEXTPAD,l=Pu().handleMarkerDefaults,c=Ze(),u=c.hasColorscale,h=c.handleDefaults;e.exports=function(t,e,c,p){function f(i,a){return r.coerce(t,e,n,i,a)}var d=f("labels"),m=f("parents");if(d&&d.length&&m&&m.length){var g=f("values");g&&g.length?f("branchvalues"):f("count"),f("level"),f("maxdepth"),f("tiling.orientation"),f("tiling.flip"),f("tiling.pad");var y=f("text");f("texttemplate"),e.texttemplate||f("textinfo",r.isArrayOrTypedArray(y)?"text+label":"label"),f("hovertext"),f("hovertemplate");var v=f("pathbar.visible");o(t,e,p,f,"auto",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),f("textposition"),l(t,e,p,f);var x=e._hasColorscale=u(t,"marker","colors")||(t.marker||{}).coloraxis;x&&h(t,e,p,f,{prefix:"marker.",cLetter:"c"}),f("leaf.opacity",x?1:.7),e._hovered={marker:{line:{width:2,color:i.contrast(p.paper_bgcolor)}}},v&&(f("pathbar.thickness",e.pathbar.textfont.size+2*s),f("pathbar.side"),f("pathbar.edgeshape")),f("sort"),f("root.color"),a(e,p,f),e._length=null}else e.visible=!1}}}),hd=f({"src/traces/icicle/layout_defaults.js"(t,e){var r=le(),n=cd();e.exports=function(t,e){function i(i,a){return r.coerce(t,e,n,i,a)}i("iciclecolorway",e.colorway),i("extendiciclecolors")}}}),pd=f({"src/traces/icicle/calc.js"(t){var e=Xu();t.calc=function(t,r){return e.calc(t,r)},t.crossTraceCalc=function(t){return e._runCrossTraceCalc("icicle",t)}}}),fd=f({"src/traces/icicle/partition.js"(t,e){var r=Yu(),n=Kf();e.exports=function(t,e,i){var a=i.flipX,o=i.flipY,s="h"===i.orientation,l=i.maxDepth,c=e[0],u=e[1];l&&(c=(t.height+1)*e[0]/Math.min(t.height+1,l),u=(t.height+1)*e[1]/Math.min(t.height+1,l));var h=r.partition().padding(i.pad.inner).size(s?[e[1],c]:[e[0],u])(t);return(s||a||o)&&n(h,e,{swapXY:s,flipX:a,flipY:o}),h}}}),dd=f({"src/traces/icicle/style.js"(t,e){var r=x(),n=H(),i=le(),a=Ja().resizeText,o=Ff();function s(t,e,r,a){var s=e.data.data,l=!e.children,c=s.i,u=i.castOption(r,c,"marker.line.color")||n.defaultLine,h=i.castOption(r,c,"marker.line.width")||0;t.call(o,e,r,a).style("stroke-width",h).call(n.stroke,u).style("opacity",l?r.leaf.opacity:null)}e.exports={style:function(t){var e=t._fullLayout._iciclelayer.selectAll(".trace");a(t,e,"icicle"),e.each((function(e){var n=r.select(this),i=e[0].trace;n.style("opacity",i.opacity),n.selectAll("path.surface").each((function(e){r.select(this).call(s,e,i,t)}))}))},styleOne:s}}}),md=f({"src/traces/icicle/draw_descendants.js"(t,e){var r=x(),n=le(),i=Qe(),a=Se(),o=fd(),s=dd().styleOne,l=Gf(),c=jf(),u=Nf(),h=Uf().formatSliceLabel,p=!1;e.exports=function(t,e,f,d,m){var g=m.width,y=m.height,v=m.viewX,x=m.viewY,_=m.pathSlice,b=m.toMoveInsideSlice,w=m.strTransform,T=m.hasTransition,A=m.handleSlicesExit,k=m.makeUpdateSliceInterpolator,M=m.makeUpdateTextInterpolator,S=m.prevEntry,E=t._context.staticPlot,C=t._fullLayout,I=e[0].trace,L=-1!==I.textposition.indexOf("left"),P=-1!==I.textposition.indexOf("right"),z=-1!==I.textposition.indexOf("bottom"),D=o(f,[g,y],{flipX:I.tiling.flip.indexOf("x")>-1,flipY:I.tiling.flip.indexOf("y")>-1,orientation:I.tiling.orientation,pad:{inner:I.tiling.pad},maxDepth:I._maxDepth}).descendants(),O=1/0,R=-1/0;D.forEach((function(t){var e=t.depth;e>=I._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(O=Math.min(O,e),R=Math.max(R,e))})),d=d.data(D,c.getPtId),I._maxVisibleLayers=isFinite(R)?R-O+1:0,d.enter().append("g").classed("slice",!0),A(d,p,{},[g,y],_),d.order();var F=null;if(T&&S){var B=c.getPtId(S);d.each((function(t){null===F&&c.getPtId(t)===B&&(F={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var j=function(){return F||{x0:0,x1:g,y0:0,y1:y}},N=d;return T&&(N=N.transition().each("end",(function(){var e=r.select(this);c.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),N.each((function(o){o._x0=v(o.x0),o._x1=v(o.x1),o._y0=x(o.y0),o._y1=x(o.y1),o._hoverX=v(o.x1-I.tiling.pad),o._hoverY=x(z?o.y1-I.tiling.pad/2:o.y0+I.tiling.pad/2);var d=r.select(this),m=n.ensureSingle(d,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));T?m.transition().attrTween("d",(function(t){var e=k(t,p,j(),[g,y],{orientation:I.tiling.orientation,flipX:I.tiling.flip.indexOf("x")>-1,flipY:I.tiling.flip.indexOf("y")>-1});return function(t){return _(e(t))}})):m.attr("d",_),d.call(u,f,t,e,{styleOne:s,eventDataKeys:l.eventDataKeys,transitionTime:l.CLICK_TRANSITION_TIME,transitionEasing:l.CLICK_TRANSITION_EASING}).call(c.setSliceCursor,t,{isTransitioning:t._transitioning}),m.call(s,o,I,t,{hovered:!1}),o.x0===o.x1||o.y0===o.y1?o._text="":o._text=h(o,f,I,e,C)||"";var A=n.ensureSingle(d,"g","slicetext"),S=n.ensureSingle(A,"text","",(function(t){t.attr("data-notex",1)})),D=n.ensureUniformFontSize(t,c.determineTextFont(I,o,C.font));S.text(o._text||" ").classed("slicetext",!0).attr("text-anchor",P?"end":L?"start":"middle").call(i.font,D).call(a.convertToTspans,t),o.textBB=i.bBox(S.node()),o.transform=b(o,{fontSize:D.size}),o.transform.fontSize=D.size,T?S.transition().attrTween("transform",(function(t){var e=M(t,p,j(),[g,y]);return function(t){return w(e(t))}})):S.attr("transform",w(o))})),F}}}),gd=f({"src/traces/icicle/plot.js"(t,e){var r=rd(),n=md();e.exports=function(t,e,i,a){return r(t,e,i,a,{type:"icicle",drawDescendants:n})}}}),yd=f({"src/traces/icicle/index.js"(t,e){e.exports={moduleType:"trace",name:"icicle",basePlotModule:sd(),categories:[],animatable:!0,attributes:ld(),layoutAttributes:cd(),supplyDefaults:ud(),supplyLayoutDefaults:hd(),calc:pd().calc,crossTraceCalc:pd().crossTraceCalc,plot:gd(),style:dd().style,colorbar:fi(),meta:{}}}}),vd=f({"lib/icicle.js"(t,e){e.exports=yd()}}),xd=f({"src/traces/funnelarea/base_plot.js"(t){var e=Ae();t.name="funnelarea",t.plot=function(r,n,i,a){e.plotBasePlot(t.name,r,n,i,a)},t.clean=function(r,n,i,a){e.cleanBasePlot(t.name,r,n,i,a)}}}),_d=f({"src/traces/funnelarea/attributes.js"(t,e){var r=Lu(),n=U(),i=Aa().attributes,a=Ot().hovertemplateAttrs,o=Ot().texttemplateAttrs,s=R().extendFlat;e.exports={labels:r.labels,label0:r.label0,dlabel:r.dlabel,values:r.values,marker:{colors:r.marker.colors,line:{color:s({},r.marker.line.color,{dflt:null}),width:s({},r.marker.line.width,{dflt:1}),editType:"calc"},pattern:r.marker.pattern,editType:"calc"},text:r.text,hovertext:r.hovertext,scalegroup:s({},r.scalegroup,{}),textinfo:s({},r.textinfo,{flags:["label","text","value","percent"]}),texttemplate:o({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:s({},n.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:a({},{keys:["label","color","value","text","percent"]}),textposition:s({},r.textposition,{values:["inside","none"],dflt:"inside"}),textfont:r.textfont,insidetextfont:r.insidetextfont,title:{text:r.title.text,font:r.title.font,position:s({},r.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:i({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}}}),bd=f({"src/traces/funnelarea/layout_attributes.js"(t,e){var r=zu().hiddenlabels;e.exports={hiddenlabels:r,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),wd=f({"src/traces/funnelarea/defaults.js"(t,e){var r=le(),n=_d(),i=Aa().defaults,a=Ya().handleText,o=Pu().handleLabelsAndValues,s=Pu().handleMarkerDefaults;e.exports=function(t,e,l,c){function u(i,a){return r.coerce(t,e,n,i,a)}var h=u("labels"),p=u("values"),f=o(h,p),d=f.len;if(e._hasLabels=f.hasLabels,e._hasValues=f.hasValues,!e._hasLabels&&e._hasValues&&(u("label0"),u("dlabel")),d){e._length=d,s(t,e,c,u),u("scalegroup");var m,g=u("text"),y=u("texttemplate");if(y||(m=u("textinfo",Array.isArray(g)?"text+percent":"percent")),u("hovertext"),u("hovertemplate"),y||m&&"none"!==m){var v=u("textposition");a(t,e,c,u,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else"none"===m&&u("textposition","none");i(e,c,u),u("title.text")&&(u("title.position"),r.coerceFont(u,"title.font",c.font)),u("aspectratio"),u("baseratio")}else e.visible=!1}}}),Td=f({"src/traces/funnelarea/layout_defaults.js"(t,e){var r=le(),n=bd();e.exports=function(t,e){function i(i,a){return r.coerce(t,e,n,i,a)}i("hiddenlabels"),i("funnelareacolorway",e.colorway),i("extendfunnelareacolors")}}}),Ad=f({"src/traces/funnelarea/calc.js"(t,e){var r=Ou();e.exports={calc:function(t,e){return r.calc(t,e)},crossTraceCalc:function(t){r.crossTraceCalc(t,{type:"funnelarea"})}}}}),kd=f({"src/traces/funnelarea/plot.js"(t,e){var r=x(),n=Qe(),i=le(),a=i.strScale,o=i.strTranslate,s=Se(),l=eo().toMoveInsideBar,c=Ja(),u=c.recordMinTextSize,h=c.clearMinTextSize,p=br(),f=Fu(),d=f.attachFxHandlers,m=f.determineInsideTextFont,g=f.layoutAreas,y=f.prerenderTitles,v=f.positionTitleOutside,_=f.formatSliceLabel;function b(t,e){return"l"+(e[0]-t[0])+","+(e[1]-t[1])}function w(t,e){return[.5*(t[0]+e[0]),.5*(t[1]+e[1])]}e.exports=function(t,e){var c=t._context.staticPlot,f=t._fullLayout;h("funnelarea",f),y(e,t),g(e,f._size),i.makeTraceGroups(f._funnelarealayer,e,"trace").each((function(e){var h=r.select(this),g=e[0],y=g.trace;(function(t){if(t.length){var e=t[0],r=e.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),c=e.vTotal,u=c,h=c*l/(1-l)/c,p=[];for(p.push(S()),o=t.length-1;o>-1;o--)if(!(s=t[o]).hidden){var f=s.v/u;h+=f,p.push(S())}var d=1/0,m=-1/0;for(o=0;o-1;o--)if(!(s=t[o]).hidden){var k=p[A+=1][0],M=p[A][1];s.TL=[-k,M],s.TR=[k,M],s.BL=b,s.BR=T,s.pxmid=w(s.TR,s.BR),b=s.TL,T=s.TR}}function S(){var t=function(){var t=Math.sqrt(h);return{x:t,y:-t}}();return[t.x,t.y]}})(e),h.each((function(){var h=r.select(this).selectAll("g.slice").data(e);h.enter().append("g").classed("slice",!0),h.exit().remove(),h.each((function(a,o){if(a.hidden)r.select(this).selectAll("path,g").remove();else{a.pointNumber=a.i,a.curveNumber=y.index;var h=g.cx,v=g.cy,x=r.select(this),w=x.selectAll("path.surface").data([a]);w.enter().append("path").classed("surface",!0).style({"pointer-events":c?"none":"all"}),x.call(d,t,e);var T="M"+(h+a.TR[0])+","+(v+a.TR[1])+b(a.TR,a.BR)+b(a.BR,a.BL)+b(a.BL,a.TL)+"Z";w.attr("d",T),_(t,a,g);var A=p.castOption(y.textposition,a.pts),k=x.selectAll("g.slicetext").data(a.text&&"none"!==A?[0]:[]);k.enter().append("g").classed("slicetext",!0),k.exit().remove(),k.each((function(){var c=i.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),p=i.ensureUniformFontSize(t,m(y,a,f.font));c.text(a.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(n.font,p).call(s.convertToTspans,t);var d,g,x,_=n.bBox(c.node()),b=Math.min(a.BL[1],a.BR[1])+v,w=Math.max(a.TL[1],a.TR[1])+v;g=Math.max(a.TL[0],a.BL[0])+h,x=Math.min(a.TR[0],a.BR[0])+h,(d=l(g,x,b,w,_,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=p.size,u(y.type,d,f),e[o].transform=d,i.setTransormAndDisplay(c,d)}))}}));var x=r.select(this).selectAll("g.titletext").data(y.title.text?[0]:[]);x.enter().append("g").classed("titletext",!0),x.exit().remove(),x.each((function(){var e=i.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),l=y.title.text;y._meta&&(l=i.templateString(l,y._meta)),e.text(l).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(n.font,y.title.font).call(s.convertToTspans,t);var c=v(g,f._size);e.attr("transform",o(c.x,c.y)+a(Math.min(1,c.scale))+o(c.tx,c.ty))}))}))}))}}}),Md=f({"src/traces/funnelarea/style.js"(t,e){var r=x(),n=Tr(),i=Ja().resizeText;e.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(".trace");i(t,e,"funnelarea"),e.each((function(e){var i=e[0].trace,a=r.select(this);a.style({opacity:i.opacity}),a.selectAll("path.surface").each((function(e){r.select(this).call(n,e,i,t)}))}))}}}),Sd=f({"src/traces/funnelarea/index.js"(t,e){e.exports={moduleType:"trace",name:"funnelarea",basePlotModule:xd(),categories:["pie-like","funnelarea","showLegend"],attributes:_d(),layoutAttributes:bd(),supplyDefaults:wd(),supplyLayoutDefaults:Td(),calc:Ad().calc,crossTraceCalc:Ad().crossTraceCalc,plot:kd(),style:Md(),styleOne:Tr(),meta:{}}}}),Ed=f({"lib/funnelarea.js"(t,e){e.exports=Sd()}}),Cd=f({"stackgl_modules/index.js"(t,e){!function(){var t={1964:function(t,e,r){t.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(t,e,r){function n(t,e){for(var r=0;rp)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,d.prototype),e}function d(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return y(t)}return m(t,e,r)}function m(t,e,r){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!d.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=0|b(t,e),n=f(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return x(e.buffer,e.byteOffset,e.byteLength)}return v(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return x(t,e,r);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return d.from(n,e,r);var i=function(t){if(d.isBuffer(t)){var e=0|_(t.length),r=f(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||rt(t.length)?f(0):v(t):"Buffer"===t.type&&Array.isArray(t.data)?v(t.data):void 0}(t);if(i)return i;if(typeof Symbol<"u"&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return d.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t))}function g(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function y(t){return g(t),f(t<0?0:0|_(t))}function v(t){for(var e=t.length<0?0:0|_(t.length),r=f(e),n=0;n=p)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+p.toString(16)+" bytes");return 0|t}function b(t,e){if(d.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Q(t).length;default:if(i)return n?-1:J(t).length;e=(""+e).toLowerCase(),i=!0}}function w(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===r||r>this.length)&&(r=this.length),r<=0)||(r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return R(this,e,r);case"utf8":case"utf-8":return P(this,e,r);case"ascii":return D(this,e,r);case"latin1":case"binary":return O(this,e,r);case"base64":return L(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function T(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function A(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),rt(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=d.from(e,n)),d.isBuffer(e))return 0===e.length?-1:k(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):k(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function k(t,e,r,n,i){var a,o=1,s=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=r;as&&(r=s-l),a=r;a>=0;a--){for(var h=!0,p=0;pi&&(n=i):n=i;var a,o=e.length;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,a.push(i),a.push(n);return a}(e,t.length-r),t,r,n)}function L(t,e,r){return 0===e&&r===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,r))}function P(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,c=void 0,u=void 0,h=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128==(192&(l=t[i+1]))&&(h=(31&a)<<6|63&l)>127&&(o=h);break;case 3:l=t[i+1],c=t[i+2],128==(192&l)&&128==(192&c)&&(h=(15&a)<<12|(63&l)<<6|63&c)>2047&&(h<55296||h>57343)&&(o=h);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128==(192&l)&&128==(192&c)&&128==(192&u)&&(h=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&h<1114112&&(o=h)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(t){var e=t.length;if(e<=z)return String.fromCharCode.apply(String,t);for(var r="",n=0;nn.length?(d.isBuffer(a)||(a=d.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!d.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},d.byteLength=b,d.prototype._isBuffer=!0,d.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;er&&(t+=" ... "),""},h&&(d.prototype[h]=d.prototype.inspect),d.prototype.compare=function(t,e,r,n,i){if(et(t,Uint8Array)&&(t=d.from(t,t.offset,t.byteLength)),!d.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(n,i),u=t.slice(e,r),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return M(this,t,e,r);case"utf8":case"utf-8":return S(this,t,e,r);case"ascii":case"latin1":case"binary":return E(this,t,e,r);case"base64":return C(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,e,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},d.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var z=4096;function D(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",a=e;ar)throw new RangeError("Trying to access beyond buffer length")}function j(t,e,r,n,i,a){if(!d.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function N(t,e,r,n,i){Y(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,r}function U(t,e,r,n,i){Y(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r+7]=a,a>>=8,t[r+6]=a,a>>=8,t[r+5]=a,a>>=8,t[r+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=o,o>>=8,t[r+2]=o,o>>=8,t[r+1]=o,o>>=8,t[r]=o,r+8}function V(t,e,r,n,i,a){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function q(t,e,r,n,i){return e=+e,r>>>=0,i||V(t,0,r,4),u.write(t,e,r,n,23,4),r+4}function H(t,e,r,n,i){return e=+e,r>>>=0,i||V(t,0,r,8),u.write(t,e,r,n,52,8),r+8}d.prototype.slice=function(t,e){var r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},d.prototype.readUint8=d.prototype.readUInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),this[t]},d.prototype.readUint16LE=d.prototype.readUInt16LE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]|this[t+1]<<8},d.prototype.readUint16BE=d.prototype.readUInt16BE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]<<8|this[t+1]},d.prototype.readUint32LE=d.prototype.readUInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},d.prototype.readUint32BE=d.prototype.readUInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},d.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],r=this[t+7];(void 0===e||void 0===r)&&$(t,this.length-8);var n=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<>>=0,"offset");var e=this[t],r=this[t+7];(void 0===e||void 0===r)&&$(t,this.length-8);var n=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+r;return(BigInt(n)<>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*e)),n},d.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||B(t,e,this.length);for(var n=e,i=1,a=this[t+--n];n>0&&(i*=256);)a+=this[t+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},d.prototype.readInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},d.prototype.readInt16LE=function(t,e){t>>>=0,e||B(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},d.prototype.readInt16BE=function(t,e){t>>>=0,e||B(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},d.prototype.readInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},d.prototype.readInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},d.prototype.readBigInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],r=this[t+7];(void 0===e||void 0===r)&&$(t,this.length-8);var n=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<>>=0,"offset");var e=this[t],r=this[t+7];(void 0===e||void 0===r)&&$(t,this.length-8);var n=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(n)<>>=0,e||B(t,4,this.length),u.read(this,t,!0,23,4)},d.prototype.readFloatBE=function(t,e){return t>>>=0,e||B(t,4,this.length),u.read(this,t,!1,23,4)},d.prototype.readDoubleLE=function(t,e){return t>>>=0,e||B(t,8,this.length),u.read(this,t,!0,52,8)},d.prototype.readDoubleBE=function(t,e){return t>>>=0,e||B(t,8,this.length),u.read(this,t,!1,52,8)},d.prototype.writeUintLE=d.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||j(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[e]=255&t;++a>>=0,r>>>=0,n||j(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+r},d.prototype.writeUint8=d.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,1,255,0),this[e]=255&t,e+1},d.prototype.writeUint16LE=d.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},d.prototype.writeUint16BE=d.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},d.prototype.writeUint32LE=d.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},d.prototype.writeUint32BE=d.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},d.prototype.writeBigUInt64LE=it((function(t){return N(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),d.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),d.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);j(this,t,e,r,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a>>=0,!n){var i=Math.pow(2,8*r-1);j(this,t,e,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o|0)-s&255;return e+r},d.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},d.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},d.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},d.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},d.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},d.prototype.writeBigInt64LE=it((function(t){return N(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),d.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),d.prototype.writeFloatLE=function(t,e,r){return q(this,t,e,!0,r)},d.prototype.writeFloatBE=function(t,e,r){return q(this,t,e,!1,r)},d.prototype.writeDoubleLE=function(t,e,r){return H(this,t,e,!0,r)},d.prototype.writeDoubleBE=function(t,e,r){return H(this,t,e,!1,r)},d.prototype.copy=function(t,e,r,n){if(!d.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&0!==n&&(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(a=e;a=n+4;r-=3)e="_".concat(t.slice(r-3,r)).concat(e);return"".concat(t.slice(0,r)).concat(e)}function Y(t,e,r,n,i,a){if(t>r||t3?0===e||e===BigInt(0)?">= 0".concat(s," and < 2").concat(s," ** ").concat(8*(a+1)).concat(s):">= -(2".concat(s," ** ").concat(8*(a+1)-1).concat(s,") and < 2 ** ")+"".concat(8*(a+1)-1).concat(s):">= ".concat(e).concat(s," and <= ").concat(r).concat(s),new G.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,r){X(e,"offset"),(void 0===t[e]||void 0===t[e+r])&&$(e,t.length-(r+1))}(n,i,a)}function X(t,e){if("number"!=typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,"number",t)}function $(t,e,r){throw Math.floor(t)!==t?(X(t,r),new G.ERR_OUT_OF_RANGE(r||"offset","an integer",t)):e<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(r||"offset",">= ".concat(r?1:0," and <= ").concat(e),t)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?"".concat(t," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(t,e){return'The "'.concat(t,'" argument must be of type number. Received type ').concat(l(e))}),TypeError),W("ERR_OUT_OF_RANGE",(function(t,e,r){var n='The value of "'.concat(t,'" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=Z(String(r)):"bigint"==typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=Z(i)),i+="n"),n+" It must be ".concat(e,". Received ").concat(i)}),RangeError);var K=/[^+/0-9A-Za-z-_]/g;function J(t,e){e=e||1/0;for(var r,n=t.length,i=null,a=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;a.push(r)}else if(r<2048){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(K,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function tt(t,e,r,n){var i;for(i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function rt(t){return t!=t}var nt=function(){for(var t="0123456789abcdef",e=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)e[n+i]=t[r]+t[i];return e}();function it(t){return typeof BigInt>"u"?at:t}function at(){throw new Error("BigInt not supported")}},9216:function(t){t.exports=i,t.exports.isMobile=i,t.exports.default=i;var e=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(!i&&typeof navigator<"u"&&(i=navigator.userAgent),i&&i.headers&&"string"==typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),"string"!=typeof i)return!1;var a=e.test(i)&&!r.test(i)||!!t.tablet&&n.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},6296:function(t,e,r){t.exports=function(t){var e=(t=t||{}).eye||[0,0,1],r=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],c=t.mode||"turntable",u=n(),h=i(),p=a();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,r,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,r,s),p.setDistanceLimits(l[0],l[1]),p.lookAt(0,e,r,s),new o({turntable:u,orbit:h,matrix:p},c)};var n=r(7261),i=r(9977),a=r(1811);function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode="turntable",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;s.flush=function(t){for(var e=this._controllerList,r=0;r"u"?r(1538):WeakMap,i=r(2762),a=r(8116),o=new n;t.exports=function(t){var e=o.get(t),r=e&&(e._triangleBuffer.handle||e._triangleBuffer.buffer);if(!r||!t.isBuffer(r)){var n=i(t,new Float32Array([-1,-1,-1,4,4,-1]));(e=a(t,[{buffer:n,type:t.FLOAT,size:2}]))._triangleBuffer=n,o.set(t,e)}e.bind(),t.drawArrays(t.TRIANGLES,0,3),e.unbind()}},1085:function(t,e,r){var n=r(1371);t.exports=function(t,e,r){e="number"==typeof e?e:1,r=r||": ";var i=t.split(/\r?\n/),a=String(i.length+e-1).length;return i.map((function(t,i){var o=i+e,s=String(o).length;return n(o,a-s)+r+t})).join("\n")}},3952:function(t,e,r){t.exports=function(t){var e=t.length;if(0===e)return[];if(1===e)return[0];for(var r=t[0].length,n=[t[0]],a=[0],o=1;o0?o-4:o;for(r=0;r>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===l&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,c[u++]=255&e),1===l&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,a=[],o=16383,s=0,l=n-i;sl?l:s+o));return 1===i?(e=t[n-1],a.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],a.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),a.join("")};for(var r=[],n=[],i=typeof Uint8Array<"u"?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function l(t){return r[t>>18&63]+r[t>>12&63]+r[t>>6&63]+r[63&t]}function c(t,e,r){for(var n,i=[],a=e;a0?c=c.ushln(h):h<0&&(u=u.ushln(-h)),s(c,u)}},6330:function(t,e,r){var n=r(1533);t.exports=function(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}},5716:function(t,e,r){var n=r(6859);t.exports=function(t){return t.cmp(new n(0))}},1369:function(t,e,r){var n=r(5716);t.exports=function(t){var e=t.length,r=t.words,i=0;if(1===e)i=r[0];else if(2===e)i=r[0]+67108864*r[1];else for(var a=0;a20?52:r+32}},1533:function(t,e,r){r(6859),t.exports=function(t){return t&&"object"==typeof t&&!!t.words}},2651:function(t,e,r){var n=r(6859),i=r(2361);t.exports=function(t){var e=i.exponent(t);return e<52?new n(t):new n(t*Math.pow(2,52-e)).ushln(e-52)}},869:function(t,e,r){var n=r(2651),i=r(5716);t.exports=function(t,e){var r=i(t),a=i(e);if(0===r)return[n(0),n(1)];if(0===a)return[n(0),n(0)];a<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);return o.cmpn(1)?[t.div(o),e.div(o)]:[t,e]}},6768:function(t,e,r){var n=r(6859);t.exports=function(t){return new n(t)}},6504:function(t,e,r){var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}},7721:function(t,e,r){var n=r(5716);t.exports=function(t){return n(t[0])*n(t[1])}},5572:function(t,e,r){var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},946:function(t,e,r){var n=r(1369),i=r(4025);t.exports=function(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var a=e.abs().divmod(r.abs()),o=a.div,s=n(o),l=a.mod,c=e.negative!==r.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=i(s)+4;return c*(s+(p=n(l.ushln(u).divRound(r)))*Math.pow(2,-u))}var h=r.bitLength()-l.bitLength()+53,p=n(l.ushln(h).divRound(r));return h<1023?c*p*Math.pow(2,-h):c*(p*=Math.pow(2,-1023))*Math.pow(2,1023-h)}},2478:function(t){function e(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>=0?(a=o,i=o-1):n=o+1}return a}function r(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>0?(a=o,i=o-1):n=o+1}return a}function n(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<0?(a=o,n=o+1):i=o-1}return a}function i(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<=0?(a=o,n=o+1):i=o-1}return a}function a(t,e,r,n,i){for(;n<=i;){var a=n+i>>>1,o=t[a],s=void 0!==r?r(o,e):o-e;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(t,e,r,n,i,a){return"function"==typeof r?a(t,e,r,void 0===n?0:0|n,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===r?0:0|r,void 0===n?t.length-1:0|n)}t.exports={ge:function(t,r,n,i,a){return o(t,r,n,i,a,e)},gt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},lt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},le:function(t,e,r,n,a){return o(t,e,r,n,a,i)},eq:function(t,e,r,n,i){return o(t,e,r,n,i,a)}}},8828:function(t,e){function r(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,1+((t|=t>>>8)|t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var n=new Array(256);(function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<>>8&255]<<16|n[t>>>16&255]<<8|n[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},6859:function(t,e,r){!function(t,e){function n(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function a(t,e,r){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&(("le"===e||"be"===e)&&(r=e,e=10),this._init(t||0,e||10,r||"be"))}var o;"object"==typeof t?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;try{o=typeof window<"u"&&typeof window.Buffer<"u"?window.Buffer:r(7790).Buffer}catch{}function s(t,e){var r=t.charCodeAt(e);return r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function l(t,e,r){var n=s(t,r);return r-1>=e&&(n|=s(t,r-1)<<4),n}function c(t,e,r,n){for(var i=0,a=Math.min(t.length,r),o=e;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"==typeof t&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,e,r){if("number"==typeof t)return this._initNumber(t,e,r);if("object"==typeof t)return this._initArray(t,e,r);"hex"===e&&(e=16),n(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=2)i=l(t,e,n)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(n=(t.length-e)%2==0?e+1:e;n=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var a=t.length-r,o=a%n,s=Math.min(a,a-o)+r,l=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],h=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],a=0|e.words[0],o=i*a,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var c=1;c>>26,h=67108863&l,p=Math.min(c,e.length-1),f=Math.max(0,c-t.length+1);f<=p;f++){var d=c-f|0;u+=(o=(i=0|t.words[d])*(a=0|e.words[f])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,l=0|u}return 0!==l?r.words[c]=0|l:r.length--,r.strip()}a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?u[6-l.length]+l+r:l+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var c=h[t],f=p[t];r="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modn(f).toString(t);r=(d=d.idivn(f)).isZero()?m+r:u[c-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return n(typeof o<"u"),this.toArrayLike(o,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,r){var i=this.byteLength(),a=r||Math.max(1,i);n(i<=a,"byte array longer than desired length"),n(a>0,"Requested array length <= 0"),this.strip();var o,s,l="le"===e,c=new t(a),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 8191&e||(r+=13,e>>>=13),127&e||(r+=7,e>>>=7),15&e||(r+=4,e>>>=4),3&e||(r+=2,e>>>=2),1&e||r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){n("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){n("number"==typeof t&&t>=0);var r=t/26|0,i=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;at.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var a=0,o=0;o>26,this.words[o]=67108863&e;for(;0!==a&&o>26,this.words[o]=67108863&e;if(0===a&&o>>13,f=0|o[1],d=8191&f,m=f>>>13,g=0|o[2],y=8191&g,v=g>>>13,x=0|o[3],_=8191&x,b=x>>>13,w=0|o[4],T=8191&w,A=w>>>13,k=0|o[5],M=8191&k,S=k>>>13,E=0|o[6],C=8191&E,I=E>>>13,L=0|o[7],P=8191&L,z=L>>>13,D=0|o[8],O=8191&D,R=D>>>13,F=0|o[9],B=8191&F,j=F>>>13,N=0|s[0],U=8191&N,V=N>>>13,q=0|s[1],H=8191&q,G=q>>>13,W=0|s[2],Z=8191&W,Y=W>>>13,X=0|s[3],$=8191&X,K=X>>>13,J=0|s[4],Q=8191&J,tt=J>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],at=8191&it,ot=it>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ht=8191&ut,pt=ut>>>13,ft=0|s[9],dt=8191&ft,mt=ft>>>13;r.negative=t.negative^e.negative,r.length=19;var gt=(c+(n=Math.imul(h,U))|0)+((8191&(i=(i=Math.imul(h,V))+Math.imul(p,U)|0))<<13)|0;c=((a=Math.imul(p,V))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(d,U),i=(i=Math.imul(d,V))+Math.imul(m,U)|0,a=Math.imul(m,V);var yt=(c+(n=n+Math.imul(h,H)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(p,H)|0))<<13)|0;c=((a=a+Math.imul(p,G)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(y,U),i=(i=Math.imul(y,V))+Math.imul(v,U)|0,a=Math.imul(v,V),n=n+Math.imul(d,H)|0,i=(i=i+Math.imul(d,G)|0)+Math.imul(m,H)|0,a=a+Math.imul(m,G)|0;var vt=(c+(n=n+Math.imul(h,Z)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(p,Z)|0))<<13)|0;c=((a=a+Math.imul(p,Y)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(_,U),i=(i=Math.imul(_,V))+Math.imul(b,U)|0,a=Math.imul(b,V),n=n+Math.imul(y,H)|0,i=(i=i+Math.imul(y,G)|0)+Math.imul(v,H)|0,a=a+Math.imul(v,G)|0,n=n+Math.imul(d,Z)|0,i=(i=i+Math.imul(d,Y)|0)+Math.imul(m,Z)|0,a=a+Math.imul(m,Y)|0;var xt=(c+(n=n+Math.imul(h,$)|0)|0)+((8191&(i=(i=i+Math.imul(h,K)|0)+Math.imul(p,$)|0))<<13)|0;c=((a=a+Math.imul(p,K)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(T,U),i=(i=Math.imul(T,V))+Math.imul(A,U)|0,a=Math.imul(A,V),n=n+Math.imul(_,H)|0,i=(i=i+Math.imul(_,G)|0)+Math.imul(b,H)|0,a=a+Math.imul(b,G)|0,n=n+Math.imul(y,Z)|0,i=(i=i+Math.imul(y,Y)|0)+Math.imul(v,Z)|0,a=a+Math.imul(v,Y)|0,n=n+Math.imul(d,$)|0,i=(i=i+Math.imul(d,K)|0)+Math.imul(m,$)|0,a=a+Math.imul(m,K)|0;var _t=(c+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(p,Q)|0))<<13)|0;c=((a=a+Math.imul(p,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(M,U),i=(i=Math.imul(M,V))+Math.imul(S,U)|0,a=Math.imul(S,V),n=n+Math.imul(T,H)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(A,H)|0,a=a+Math.imul(A,G)|0,n=n+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Y)|0)+Math.imul(b,Z)|0,a=a+Math.imul(b,Y)|0,n=n+Math.imul(y,$)|0,i=(i=i+Math.imul(y,K)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,K)|0,n=n+Math.imul(d,Q)|0,i=(i=i+Math.imul(d,tt)|0)+Math.imul(m,Q)|0,a=a+Math.imul(m,tt)|0;var bt=(c+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(p,rt)|0))<<13)|0;c=((a=a+Math.imul(p,nt)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(C,U),i=(i=Math.imul(C,V))+Math.imul(I,U)|0,a=Math.imul(I,V),n=n+Math.imul(M,H)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,H)|0,a=a+Math.imul(S,G)|0,n=n+Math.imul(T,Z)|0,i=(i=i+Math.imul(T,Y)|0)+Math.imul(A,Z)|0,a=a+Math.imul(A,Y)|0,n=n+Math.imul(_,$)|0,i=(i=i+Math.imul(_,K)|0)+Math.imul(b,$)|0,a=a+Math.imul(b,K)|0,n=n+Math.imul(y,Q)|0,i=(i=i+Math.imul(y,tt)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,tt)|0,n=n+Math.imul(d,rt)|0,i=(i=i+Math.imul(d,nt)|0)+Math.imul(m,rt)|0,a=a+Math.imul(m,nt)|0;var wt=(c+(n=n+Math.imul(h,at)|0)|0)+((8191&(i=(i=i+Math.imul(h,ot)|0)+Math.imul(p,at)|0))<<13)|0;c=((a=a+Math.imul(p,ot)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(P,U),i=(i=Math.imul(P,V))+Math.imul(z,U)|0,a=Math.imul(z,V),n=n+Math.imul(C,H)|0,i=(i=i+Math.imul(C,G)|0)+Math.imul(I,H)|0,a=a+Math.imul(I,G)|0,n=n+Math.imul(M,Z)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,Z)|0,a=a+Math.imul(S,Y)|0,n=n+Math.imul(T,$)|0,i=(i=i+Math.imul(T,K)|0)+Math.imul(A,$)|0,a=a+Math.imul(A,K)|0,n=n+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,tt)|0,n=n+Math.imul(y,rt)|0,i=(i=i+Math.imul(y,nt)|0)+Math.imul(v,rt)|0,a=a+Math.imul(v,nt)|0,n=n+Math.imul(d,at)|0,i=(i=i+Math.imul(d,ot)|0)+Math.imul(m,at)|0,a=a+Math.imul(m,ot)|0;var Tt=(c+(n=n+Math.imul(h,lt)|0)|0)+((8191&(i=(i=i+Math.imul(h,ct)|0)+Math.imul(p,lt)|0))<<13)|0;c=((a=a+Math.imul(p,ct)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(O,U),i=(i=Math.imul(O,V))+Math.imul(R,U)|0,a=Math.imul(R,V),n=n+Math.imul(P,H)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(z,H)|0,a=a+Math.imul(z,G)|0,n=n+Math.imul(C,Z)|0,i=(i=i+Math.imul(C,Y)|0)+Math.imul(I,Z)|0,a=a+Math.imul(I,Y)|0,n=n+Math.imul(M,$)|0,i=(i=i+Math.imul(M,K)|0)+Math.imul(S,$)|0,a=a+Math.imul(S,K)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,tt)|0)+Math.imul(A,Q)|0,a=a+Math.imul(A,tt)|0,n=n+Math.imul(_,rt)|0,i=(i=i+Math.imul(_,nt)|0)+Math.imul(b,rt)|0,a=a+Math.imul(b,nt)|0,n=n+Math.imul(y,at)|0,i=(i=i+Math.imul(y,ot)|0)+Math.imul(v,at)|0,a=a+Math.imul(v,ot)|0,n=n+Math.imul(d,lt)|0,i=(i=i+Math.imul(d,ct)|0)+Math.imul(m,lt)|0,a=a+Math.imul(m,ct)|0;var At=(c+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,pt)|0)+Math.imul(p,ht)|0))<<13)|0;c=((a=a+Math.imul(p,pt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(B,U),i=(i=Math.imul(B,V))+Math.imul(j,U)|0,a=Math.imul(j,V),n=n+Math.imul(O,H)|0,i=(i=i+Math.imul(O,G)|0)+Math.imul(R,H)|0,a=a+Math.imul(R,G)|0,n=n+Math.imul(P,Z)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(z,Z)|0,a=a+Math.imul(z,Y)|0,n=n+Math.imul(C,$)|0,i=(i=i+Math.imul(C,K)|0)+Math.imul(I,$)|0,a=a+Math.imul(I,K)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,tt)|0,n=n+Math.imul(T,rt)|0,i=(i=i+Math.imul(T,nt)|0)+Math.imul(A,rt)|0,a=a+Math.imul(A,nt)|0,n=n+Math.imul(_,at)|0,i=(i=i+Math.imul(_,ot)|0)+Math.imul(b,at)|0,a=a+Math.imul(b,ot)|0,n=n+Math.imul(y,lt)|0,i=(i=i+Math.imul(y,ct)|0)+Math.imul(v,lt)|0,a=a+Math.imul(v,ct)|0,n=n+Math.imul(d,ht)|0,i=(i=i+Math.imul(d,pt)|0)+Math.imul(m,ht)|0,a=a+Math.imul(m,pt)|0;var kt=(c+(n=n+Math.imul(h,dt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(p,dt)|0))<<13)|0;c=((a=a+Math.imul(p,mt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(B,H),i=(i=Math.imul(B,G))+Math.imul(j,H)|0,a=Math.imul(j,G),n=n+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,Y)|0)+Math.imul(R,Z)|0,a=a+Math.imul(R,Y)|0,n=n+Math.imul(P,$)|0,i=(i=i+Math.imul(P,K)|0)+Math.imul(z,$)|0,a=a+Math.imul(z,K)|0,n=n+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,tt)|0)+Math.imul(I,Q)|0,a=a+Math.imul(I,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,a=a+Math.imul(S,nt)|0,n=n+Math.imul(T,at)|0,i=(i=i+Math.imul(T,ot)|0)+Math.imul(A,at)|0,a=a+Math.imul(A,ot)|0,n=n+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(b,lt)|0,a=a+Math.imul(b,ct)|0,n=n+Math.imul(y,ht)|0,i=(i=i+Math.imul(y,pt)|0)+Math.imul(v,ht)|0,a=a+Math.imul(v,pt)|0;var Mt=(c+(n=n+Math.imul(d,dt)|0)|0)+((8191&(i=(i=i+Math.imul(d,mt)|0)+Math.imul(m,dt)|0))<<13)|0;c=((a=a+Math.imul(m,mt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(B,Z),i=(i=Math.imul(B,Y))+Math.imul(j,Z)|0,a=Math.imul(j,Y),n=n+Math.imul(O,$)|0,i=(i=i+Math.imul(O,K)|0)+Math.imul(R,$)|0,a=a+Math.imul(R,K)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,tt)|0,n=n+Math.imul(C,rt)|0,i=(i=i+Math.imul(C,nt)|0)+Math.imul(I,rt)|0,a=a+Math.imul(I,nt)|0,n=n+Math.imul(M,at)|0,i=(i=i+Math.imul(M,ot)|0)+Math.imul(S,at)|0,a=a+Math.imul(S,ot)|0,n=n+Math.imul(T,lt)|0,i=(i=i+Math.imul(T,ct)|0)+Math.imul(A,lt)|0,a=a+Math.imul(A,ct)|0,n=n+Math.imul(_,ht)|0,i=(i=i+Math.imul(_,pt)|0)+Math.imul(b,ht)|0,a=a+Math.imul(b,pt)|0;var St=(c+(n=n+Math.imul(y,dt)|0)|0)+((8191&(i=(i=i+Math.imul(y,mt)|0)+Math.imul(v,dt)|0))<<13)|0;c=((a=a+Math.imul(v,mt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(B,$),i=(i=Math.imul(B,K))+Math.imul(j,$)|0,a=Math.imul(j,K),n=n+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(R,Q)|0,a=a+Math.imul(R,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(z,rt)|0,a=a+Math.imul(z,nt)|0,n=n+Math.imul(C,at)|0,i=(i=i+Math.imul(C,ot)|0)+Math.imul(I,at)|0,a=a+Math.imul(I,ot)|0,n=n+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(S,lt)|0,a=a+Math.imul(S,ct)|0,n=n+Math.imul(T,ht)|0,i=(i=i+Math.imul(T,pt)|0)+Math.imul(A,ht)|0,a=a+Math.imul(A,pt)|0;var Et=(c+(n=n+Math.imul(_,dt)|0)|0)+((8191&(i=(i=i+Math.imul(_,mt)|0)+Math.imul(b,dt)|0))<<13)|0;c=((a=a+Math.imul(b,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(B,Q),i=(i=Math.imul(B,tt))+Math.imul(j,Q)|0,a=Math.imul(j,tt),n=n+Math.imul(O,rt)|0,i=(i=i+Math.imul(O,nt)|0)+Math.imul(R,rt)|0,a=a+Math.imul(R,nt)|0,n=n+Math.imul(P,at)|0,i=(i=i+Math.imul(P,ot)|0)+Math.imul(z,at)|0,a=a+Math.imul(z,ot)|0,n=n+Math.imul(C,lt)|0,i=(i=i+Math.imul(C,ct)|0)+Math.imul(I,lt)|0,a=a+Math.imul(I,ct)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,pt)|0)+Math.imul(S,ht)|0,a=a+Math.imul(S,pt)|0;var Ct=(c+(n=n+Math.imul(T,dt)|0)|0)+((8191&(i=(i=i+Math.imul(T,mt)|0)+Math.imul(A,dt)|0))<<13)|0;c=((a=a+Math.imul(A,mt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,n=Math.imul(B,rt),i=(i=Math.imul(B,nt))+Math.imul(j,rt)|0,a=Math.imul(j,nt),n=n+Math.imul(O,at)|0,i=(i=i+Math.imul(O,ot)|0)+Math.imul(R,at)|0,a=a+Math.imul(R,ot)|0,n=n+Math.imul(P,lt)|0,i=(i=i+Math.imul(P,ct)|0)+Math.imul(z,lt)|0,a=a+Math.imul(z,ct)|0,n=n+Math.imul(C,ht)|0,i=(i=i+Math.imul(C,pt)|0)+Math.imul(I,ht)|0,a=a+Math.imul(I,pt)|0;var It=(c+(n=n+Math.imul(M,dt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,dt)|0))<<13)|0;c=((a=a+Math.imul(S,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,n=Math.imul(B,at),i=(i=Math.imul(B,ot))+Math.imul(j,at)|0,a=Math.imul(j,ot),n=n+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(R,lt)|0,a=a+Math.imul(R,ct)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,pt)|0)+Math.imul(z,ht)|0,a=a+Math.imul(z,pt)|0;var Lt=(c+(n=n+Math.imul(C,dt)|0)|0)+((8191&(i=(i=i+Math.imul(C,mt)|0)+Math.imul(I,dt)|0))<<13)|0;c=((a=a+Math.imul(I,mt)|0)+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,n=Math.imul(B,lt),i=(i=Math.imul(B,ct))+Math.imul(j,lt)|0,a=Math.imul(j,ct),n=n+Math.imul(O,ht)|0,i=(i=i+Math.imul(O,pt)|0)+Math.imul(R,ht)|0,a=a+Math.imul(R,pt)|0;var Pt=(c+(n=n+Math.imul(P,dt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(z,dt)|0))<<13)|0;c=((a=a+Math.imul(z,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(B,ht),i=(i=Math.imul(B,pt))+Math.imul(j,ht)|0,a=Math.imul(j,pt);var zt=(c+(n=n+Math.imul(O,dt)|0)|0)+((8191&(i=(i=i+Math.imul(O,mt)|0)+Math.imul(R,dt)|0))<<13)|0;c=((a=a+Math.imul(R,mt)|0)+(i>>>13)|0)+(zt>>>26)|0,zt&=67108863;var Dt=(c+(n=Math.imul(B,dt))|0)+((8191&(i=(i=Math.imul(B,mt))+Math.imul(j,dt)|0))<<13)|0;return c=((a=Math.imul(j,mt))+(i>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,l[0]=gt,l[1]=yt,l[2]=vt,l[3]=xt,l[4]=_t,l[5]=bt,l[6]=wt,l[7]=Tt,l[8]=At,l[9]=kt,l[10]=Mt,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=It,l[15]=Lt,l[16]=Pt,l[17]=zt,l[18]=Dt,0!==c&&(l[19]=c,r.length++),r};function m(t,e,r){return(new g).mulp(t,e,r)}function g(t,e){this.x=t,this.y=e}Math.imul||(d=f),a.prototype.mulTo=function(t,e){var r,n=this.length+t.length;return r=10===this.length&&10===t.length?d(this,t,e):n<63?f(this,t,e):n<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,n=o,o=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,t,e):m(this,t,e),r},g.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},g.prototype.permute=function(t,e,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*e;o>=26,e+=i/67108864|0,e+=a>>>26,this.words[r]=67108863&a}return 0!==e&&(this.words[r]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,i=(t-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(e=0;e>>26-r}o&&(this.words[e]=o,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=i);c--){var h=0|this.words[c];this.words[c]=u<<26-a|h>>>a,u=h&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,r){return n(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){n("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,i=1<=0);var e=t%26,r=(t-e)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(n("number"==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(l/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!=(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,l=n.length-i.length;if("mod"!==e){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c=0;h--){var p=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(p=Math.min(p/o|0,67108863),n._ishlnsubmul(i,p,h);0!==n.negative;)p--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=p)}return s&&s.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return n(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(i=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:i,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):this.negative&t.negative?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){n(t<=67108863);for(var e=(1<<26)%t,r=0,i=this.length-1;i>=0;i--)r=(e*r+(0|this.words[i]))%t;return r},a.prototype.idivn=function(t){n(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*e;this.words[r]=i/t|0,e=i%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),c=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=e.clone();!e.isZero();){for(var p=0,f=1;!(e.words[0]&f)&&p<26;++p,f<<=1);if(p>0)for(e.iushrn(p);p-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(u),o.isub(h)),i.iushrn(1),o.iushrn(1);for(var d=0,m=1;!(r.words[0]&m)&&d<26;++d,m<<=1);if(d>0)for(r.iushrn(d);d-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(h)),s.iushrn(1),l.iushrn(1);e.cmp(r)>=0?(e.isub(r),i.isub(s),o.isub(l)):(r.isub(e),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:r.iushln(c)}},a.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var e,r=this,i=t.clone();r=0!==r.negative?r.umod(t):r.clone();for(var o=new a(1),s=new a(0),l=i.clone();r.cmpn(1)>0&&i.cmpn(1)>0;){for(var c=0,u=1;!(r.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(r.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var h=0,p=1;!(i.words[0]&p)&&h<26;++h,p<<=1);if(h>0)for(i.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);r.cmp(i)>=0?(r.isub(i),o.isub(s)):(i.isub(r),s.isub(o))}return(e=0===r.cmpn(1)?o:s).cmpn(0)<0&&e.iadd(t),e},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var a=e;e=r,r=a}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return!(1&this.words[0])},a.prototype.isOdd=function(){return!(1&~this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){n("number"==typeof t);var e=t%26,r=(t-e)/26,i=1<>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),n(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new T(t)},a.prototype.toRed=function(t){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return n(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return n(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var y={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function x(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function _(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function b(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function T(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else n(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function A(t){T.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},i(x,v),x.prototype.split=function(t,e){for(var r=4194303,n=Math.min(t.length,9),i=0;i>>22,a=o}a>>>=22,t.words[i-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},x.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(y[t])return y[t];var e;if("k256"===t)e=new x;else if("p224"===t)e=new _;else if("p192"===t)e=new b;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new w}return y[t]=e,e},T.prototype._verify1=function(t){n(0===t.negative,"red works only with positives"),n(t.red,"red works only with red numbers")},T.prototype._verify2=function(t,e){n(!(t.negative|e.negative),"red works only with positives"),n(t.red&&t.red===e.red,"red works only with red numbers")},T.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},T.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},T.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},T.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},T.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},T.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},T.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},T.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},T.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},T.prototype.isqr=function(t){return this.imul(t,t.clone())},T.prototype.sqr=function(t){return this.mul(t,t)},T.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(n(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);n(!i.isZero());var s=new a(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var h=this.pow(u,i),p=this.pow(t,i.addn(1).iushrn(1)),f=this.pow(t,i),d=o;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var c=e.words[n],u=l-1;u>=0;u--){var h=c>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4==++s||0===n&&0===u)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}l=26}return i},T.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},T.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new A(t)},i(A,T),A.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},A.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},A.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},A.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},A.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t=r.nmd(t),this)},6204:function(t){t.exports=function(t){var e,r,n,i=t.length,a=0;for(e=0;e>>1;if(!(u<=0)){var h,p=i.mallocDouble(2*u*s),f=i.mallocInt32(s);if((s=l(t,u,p,f))>0){if(1===u&&n)a.init(s),h=a.sweepComplete(u,r,0,s,p,f,0,s,p,f);else{var d=i.mallocDouble(2*u*c),m=i.mallocInt32(c);(c=l(e,u,d,m))>0&&(a.init(s+c),h=1===u?a.sweepBipartite(u,r,0,s,p,f,0,c,d,m):o(u,r,n,s,p,f,c,d,m),i.free(d),i.free(m))}i.free(p),i.free(f)}return h}}}function u(t,e){n.push([t,e])}},2455:function(t,e){function r(t){return t?function(t,e,r,n,i,a,o,s,l,c,u){return i-n>l-s?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,p=n,f=h*n;pc-l?n?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,p=n,f=h*n;p0;){var D=(P-=1)*_,O=w[D],R=w[D+1],F=w[D+2],B=w[D+3],j=w[D+4],N=w[D+5],U=P*b,V=T[U],q=T[U+1],H=1&N,G=!!(16&N),W=u,Z=S,Y=C,X=I;if(H&&(W=C,Z=I,Y=u,X=S),!(2&N&&(F=g(t,O,R,F,W,Z,q),R>=F)||4&N&&(R=y(t,O,R,F,W,Z,V),R>=F))){var $=F-R,K=j-B;if(G){if(t*$*($+K)=p0)&&!(p1>=hi)"),m=u("lo===p0"),g=u("lo>>1,p=2*t,f=h,d=s[p*h+e];c=x?(f=v,d=x):y>=b?(f=g,d=y):(f=_,d=b):x>=b?(f=v,d=x):b>=y?(f=g,d=y):(f=_,d=b);for(var w=p*(u-1),T=p*f,A=0;Ar&&i[h+e]>c;--u,h-=o){for(var p=h,f=h+o,d=0;dp;++p,l+=s)if(i[l+h]===o)if(u===p)u+=1,c+=s;else{for(var f=0;s>f;++f){var d=i[l+f];i[l+f]=i[c],i[c++]=d}var m=a[p];a[p]=a[u],a[u++]=m}return u},"lop;++p,l+=s)if(i[l+h]f;++f){var d=i[l+f];i[l+f]=i[c],i[c++]=d}var m=a[p];a[p]=a[u],a[u++]=m}return u},"lo<=p0":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=t+e,p=r;n>p;++p,l+=s)if(i[l+h]<=o)if(u===p)u+=1,c+=s;else{for(var f=0;s>f;++f){var d=i[l+f];i[l+f]=i[c],i[c++]=d}var m=a[p];a[p]=a[u],a[u++]=m}return u},"hi<=p0":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=t+e,p=r;n>p;++p,l+=s)if(i[l+h]<=o)if(u===p)u+=1,c+=s;else{for(var f=0;s>f;++f){var d=i[l+f];i[l+f]=i[c],i[c++]=d}var m=a[p];a[p]=a[u],a[u++]=m}return u},"lof;++f,l+=s){var d=i[l+h],m=i[l+p];if(dg;++g){var y=i[l+g];i[l+g]=i[c],i[c++]=y}var v=a[f];a[f]=a[u],a[u++]=v}}return u},"lo<=p0&&p0<=hi":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=e,p=t+e,f=r;n>f;++f,l+=s){var d=i[l+h],m=i[l+p];if(d<=o&&o<=m)if(u===f)u+=1,c+=s;else{for(var g=0;s>g;++g){var y=i[l+g];i[l+g]=i[c],i[c++]=y}var v=a[f];a[f]=a[u],a[u++]=v}}return u},"!(lo>=p0)&&!(p1>=hi)":function(t,e,r,n,i,a,o,s){for(var l=2*t,c=l*r,u=c,h=r,p=e,f=t+e,d=r;n>d;++d,c+=l){var m=i[c+p],g=i[c+f];if(!(m>=o||s>=g))if(h===d)h+=1,u+=l;else{for(var y=0;l>y;++y){var v=i[c+y];i[c+y]=i[u],i[u++]=v}var x=a[d];a[d]=a[h],a[h++]=x}}return h}}},4192:function(t){t.exports=function(t,n){n<=4*e?r(0,n-1,t):c(0,n-1,t)};var e=32;function r(t,e,r){for(var n=2*(t+1),i=t+1;i<=e;++i){for(var a=r[n++],o=r[n++],s=i,l=n-2;s-- >t;){var c=r[l-2],u=r[l-1];if(cr[e+1])}function l(t,e,r,n){var i=n[t*=2];return i>1,g=m-p,y=m+p,v=f,x=g,_=m,b=y,w=d,T=t+1,A=u-1,k=0;s(v,x,h)&&(k=v,v=x,x=k),s(b,w,h)&&(k=b,b=w,w=k),s(v,_,h)&&(k=v,v=_,_=k),s(x,_,h)&&(k=x,x=_,_=k),s(v,b,h)&&(k=v,v=b,b=k),s(_,b,h)&&(k=_,_=b,b=k),s(x,w,h)&&(k=x,x=w,w=k),s(x,_,h)&&(k=x,x=_,_=k),s(b,w,h)&&(k=b,b=w,w=k);for(var M=h[2*x],S=h[2*x+1],E=h[2*b],C=h[2*b+1],I=2*v,L=2*_,P=2*w,z=2*f,D=2*m,O=2*d,R=0;R<2;++R){var F=h[I+R],B=h[L+R],j=h[P+R];h[z+R]=F,h[D+R]=B,h[O+R]=j}i(g,t,h),i(y,u,h);for(var N=T;N<=A;++N)if(l(N,M,S,h))N!==T&&n(N,T,h),++T;else if(!l(N,E,C,h))for(;;){if(l(A,E,C,h)){l(A,M,S,h)?(a(N,T,A,h),++T,--A):(n(N,A,h),--A);break}if(--A>>1;a(d,S);var E=0,C=0;for(T=0;T=o)m(u,h,C--,I=I-o|0);else if(I>=0)m(l,c,E--,I);else if(I<=-o){I=-I-o|0;for(var L=0;L>>1;a(d,E);var C=0,I=0,L=0;for(A=0;A>1==d[2*A+3]>>1&&(z=2,A+=1),P<0){for(var D=-(P>>1)-1,O=0;O>1)-1,0===z?m(l,c,C--,D):1===z?m(u,h,I--,D):2===z&&m(p,f,L--,D)}},scanBipartite:function(t,e,r,n,i,s,u,h,p,f,y,v){var x=0,_=2*t,b=e,w=e+t,T=1,A=1;n?A=o:T=o;for(var k=i;k>>1;a(d,C);var I=0;for(k=0;k=o?(P=!n,M-=o):(P=!!n,M-=1),P)g(l,c,I++,M);else{var z=v[M],D=_*M,O=y[D+e+1],R=y[D+e+1+t];t:for(var F=0;F>>1;a(d,T);var A=0;for(x=0;x=o)l[A++]=_-o;else{var M=f[_-=1],S=g*_,E=p[S+e+1],C=p[S+e+1+t];t:for(var I=0;I=0;--I)if(l[I]===_){for(D=I+1;D0;){for(var f=r.pop(),d=(u=-1,h=-1,l=o[s=r.pop()],1);d=0||(e.flip(s,f),i(t,e,r,u,s,h),i(t,e,r,s,h,u),i(t,e,r,h,f,u),i(t,e,r,f,u,h))}}},5023:function(t,e,r){var n,i=r(2478);function a(t,e,r,n,i,a,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=i,this.next=a,this.boundary=o}function o(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}t.exports=function(t,e,r){var n=function(t,e){for(var r=t.cells(),n=r.length,i=0;i0||l.length>0;){for(;s.length>0;){var f=s.pop();if(c[f]!==-i){c[f]=i,u[f];for(var d=0;d<3;++d){var m=p[3*f+d];m>=0&&0===c[m]&&(h[3*f+d]?l.push(m):(s.push(m),c[m]=i))}}}var g=l;l=s,s=g,l.length=0,i=-i}var y=function(t,e,r){for(var n=0,i=0;i1&&i(r[p[f-2]],r[p[f-1]],a)>0;)t.push([p[f-1],p[f-2],o]),f-=1;p.length=f,p.push(o);var d=h.upperIds;for(f=d.length;f>1&&i(r[d[f-2]],r[d[f-1]],a)<0;)t.push([d[f-2],d[f-1],o]),f-=1;d.length=f,d.push(o)}}function u(t,e){return(t.a[0]d[0]&&i.push(new o(d,f,2,l),new o(f,d,1,l))}i.sort(s);for(var m=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),g=[new a([m,1],[m,0],-1,[],[],[],[])],y=[],v=(l=0,i.length);l=0}}(),a.removeTriangle=function(t,e,r){var n=this.stars;o(n[t],e,r),o(n[e],r,t),o(n[r],t,e)},a.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},a.opposite=function(t,e){for(var r=this.stars[e],n=1,i=r.length;ne[2]?1:0)}function y(t,e,r){if(0!==t.length){if(e)for(var n=0;n=0;--a){var x=e[u=(S=n[a])[0]],_=x[0],b=x[1],w=t[_],T=t[b];if((w[0]-T[0]||w[1]-T[1])<0){var A=_;_=b,b=A}x[0]=_;var k,M=x[1]=S[1];for(i&&(k=x[2]);a>0&&n[a-1][0]===u;){var S,E=(S=n[--a])[1];i?e.push([M,E,k]):e.push([M,E]),M=E}i?e.push([M,b,k]):e.push([M,b])}return p}(t,e,p,m,r),v=d(t,g);return y(e,v,r),!!v||p.length>0||m.length>0}},3637:function(t,e,r){t.exports=function(t,e,r,n){var a=s(e,t),h=s(n,r),p=u(a,h);if(0===o(p))return null;var f=u(h,s(t,r)),d=i(f,p),m=c(a,d);return l(t,m)};var n=r(6504),i=r(8697),a=r(5572),o=r(7721),s=r(544),l=r(2653),c=r(8987);function u(t,e){return a(n(t[0],e[1]),n(t[1],e[0]))}},3642:function(t){t.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],"rainbow-soft":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],"freesurface-blue":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],"freesurface-red":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],"velocity-blue":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],"velocity-green":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},6729:function(t,e,r){var n=r(3642),i=r(395);function a(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,r="#",n=0;n<3;++n)r+=("00"+(e=(e=t[n]).toString(16))).substr(e.length);return r}function s(t){return"rgba("+t.join(",")+")"}t.exports=function(t){var e,r,l,c,u,h,p,f,d,m;if(t||(t={}),f=(t.nshades||72)-1,p=t.format||"hex",(h=t.colormap)||(h="jet"),"string"==typeof h){if(h=h.toLowerCase(),!n[h])throw Error(h+" not a supported colorscale");u=n[h]}else{if(!Array.isArray(h))throw Error("unsupported colormap option",h);u=h.slice()}if(u.length>f+1)throw new Error(h+" map requires nshades to be at least size "+u.length);d=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():"number"==typeof t.alpha?[t.alpha,t.alpha]:[1,1],e=u.map((function(t){return Math.round(t.index*f)})),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var g=u.map((function(t,e){var r=u[e].index,n=u[e].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=d[0]+(d[1]-d[0])*r),n})),y=[];for(m=0;m0||l(t,e,a)?-1:1:0===s?c>0||l(t,e,r)?1:-1:i(c-s)}var h=n(t,e,r);return h>0?o>0&&n(t,e,a)>0?1:-1:h<0?o>0||n(t,e,a)>0?1:-1:n(t,e,a)>0||l(t,e,r)?1:-1};var n=r(3250),i=r(8572),a=r(9362),o=r(5382),s=r(8210);function l(t,e,r){var n=a(t[0],-e[0]),i=a(t[1],-e[1]),l=a(r[0],-e[0]),c=a(r[1],-e[1]),u=s(o(n,l),o(i,c));return u[u.length-1]>=0}},8572:function(t){t.exports=function(t){return t<0?-1:t>0?1:0}},8507:function(t){t.exports=function(t,n){var i=t.length,a=t.length-n.length;if(a)return a;switch(i){case 0:return 0;case 1:return t[0]-n[0];case 2:return t[0]+t[1]-n[0]-n[1]||e(t[0],t[1])-e(n[0],n[1]);case 3:var o=t[0]+t[1],s=n[0]+n[1];if(a=o+t[2]-(s+n[2]))return a;var l=e(t[0],t[1]),c=e(n[0],n[1]);return e(l,t[2])-e(c,n[2])||e(l+t[2],o)-e(c+n[2],s);case 4:var u=t[0],h=t[1],p=t[2],f=t[3],d=n[0],m=n[1],g=n[2],y=n[3];return u+h+p+f-(d+m+g+y)||e(u,h,p,f)-e(d,m,g,y,d)||e(u+h,u+p,u+f,h+p,h+f,p+f)-e(d+m,d+g,d+y,m+g,m+y,g+y)||e(u+h+p,u+h+f,u+p+f,h+p+f)-e(d+m+g,d+m+y,d+g+y,m+g+y);default:for(var v=t.slice().sort(r),x=n.slice().sort(r),_=0;_t[r][0]&&(r=n);return er?[[r],[e]]:[[e]]}},4750:function(t,e,r){t.exports=function(t){var e=n(t),r=e.length;if(r<=2)return[];for(var i=new Array(r),a=e[r-1],o=0;o=e[l]&&(s+=1);a[o]=s}}return t}(n(a,!0),r)}};var n=r(8954),i=r(3952)},4769:function(t){t.exports=function(t,e,r,n,i,a){var o=i-1,s=i*i,l=o*o,c=(1+2*i)*l,u=i*l,h=s*(3-2*i),p=s*o;if(t.length){a||(a=new Array(t.length));for(var f=t.length-1;f>=0;--f)a[f]=c*t[f]+u*e[f]+h*r[f]+p*n[f];return a}return c*t+u*e+h*r+p*n},t.exports.derivative=function(t,e,r,n,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,c=3*i*i-2*i;if(t.length){a||(a=new Array(t.length));for(var u=t.length-1;u>=0;--u)a[u]=o*t[u]+s*e[u]+l*r[u]+c*n[u];return a}return o*t+s*e+l*r[u]+c*n}},7642:function(t,e,r){var n=r(8954),i=r(1682);function a(t,e){this.point=t,this.index=e}function o(t,e){for(var r=t.point,n=e.point,i=r.length,a=0;a=2)return!1;t[r]=n}return!0})):b.filter((function(t){for(var e=0;e<=s;++e){var r=y[t[e]];if(r<0)return!1;t[e]=r}return!0})),1&s)for(u=0;u>>31},t.exports.exponent=function(e){return(t.exports.hi(e)<<1>>>21)-1023},t.exports.fraction=function(e){var r=t.exports.lo(e),n=t.exports.hi(e),i=1048575&n;return 2146435072&n&&(i+=1048576),[r,i]},t.exports.denormalized=function(e){return!(2146435072&t.exports.hi(e))}},1338:function(t){function e(t,r,n){var i=0|t[n];if(i<=0)return[];var a,o=new Array(i);if(n===t.length-1)for(a=0;a"u"&&(r=0),typeof t){case"number":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n=r-1){p=l.length-1;var d=t-e[r-1];for(f=0;f=r-1)for(var u=s.length-1,h=(e[r-1],0);h=0;--r)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),r=this.dimension;if(!(t0;--h)n.push(a(l[h-1],c[h-1],arguments[h])),i.push(0)}},s.push=function(t){var e=this.lastT(),r=this.dimension;if(!(t1e-6?1/s:0;this._time.push(t);for(var p=r;p>0;--p){var f=a(c[p-1],u[p-1],arguments[p]);n.push(f),i.push((f-n[o++])*h)}}},s.set=function(t){var e=this.dimension;if(!(t0;--l)r.push(a(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(t){var e=this.lastT(),r=this.dimension;if(!(t<=e||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,h=u>1e-6?1/u:0;this._time.push(t);for(var p=r;p>0;--p){var f=arguments[p];n.push(a(l[p-1],c[p-1],n[o++]+f)),i.push(f*h)}}},s.idle=function(t){var e=this.lastT();if(!(t=0;--h)n.push(a(l[h],c[h],n[o]+u*i[o])),i.push(0),o+=1}}},3840:function(t){function e(t,e,r,n,i,a){this._color=t,this.key=e,this.value=r,this.left=n,this.right=i,this._count=a}function r(t){return new e(t._color,t.key,t.value,t.left,t.right,t._count)}function n(t,r){return new e(t,r.key,r.value,r.left,r.right,r._count)}function i(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function a(t,e){this._compare=t,this.root=e}t.exports=function(t){return new a(t||f,null)};var o=a.prototype;function s(t,e){var r;return e.left&&(r=s(t,e.left))?r:(r=t(e.key,e.value))||(e.right?s(t,e.right):void 0)}function l(t,e,r,n){if(e(t,n.key)<=0){var i;if(n.left&&(i=l(t,e,r,n.left)))return i;if(i=r(n.key,n.value))return i}if(n.right)return l(t,e,r,n.right)}function c(t,e,r,n,i){var a,o=r(t,i.key),s=r(e,i.key);return o<=0&&(i.left&&(a=c(t,e,r,n,i.left))||s>0&&(a=n(i.key,i.value)))?a:s>0&&i.right?c(t,e,r,n,i.right):void 0}function u(t,e){this.tree=t,this._stack=e}Object.defineProperty(o,"keys",{get:function(){var t=[];return this.forEach((function(e,r){t.push(e)})),t}}),Object.defineProperty(o,"values",{get:function(){var t=[];return this.forEach((function(e,r){t.push(r)})),t}}),Object.defineProperty(o,"length",{get:function(){return this.root?this.root._count:0}}),o.insert=function(t,r){for(var o=this._compare,s=this.root,l=[],c=[];s;){var u=o(t,s.key);l.push(s),c.push(u),s=u<=0?s.left:s.right}l.push(new e(0,t,r,null,null,1));for(var h=l.length-2;h>=0;--h)s=l[h],c[h]<=0?l[h]=new e(s._color,s.key,s.value,l[h+1],s.right,s._count+1):l[h]=new e(s._color,s.key,s.value,s.left,l[h+1],s._count+1);for(h=l.length-1;h>1;--h){var p=l[h-1];if(s=l[h],1===p._color||1===s._color)break;var f=l[h-2];if(f.left===p)if(p.left===s){if(!(d=f.right)||0!==d._color){f._color=0,f.left=p.right,p._color=1,p.right=f,l[h-2]=p,l[h-1]=s,i(f),i(p),h>=3&&((m=l[h-3]).left===f?m.left=p:m.right=p);break}p._color=1,f.right=n(1,d),f._color=0,h-=1}else{if(!(d=f.right)||0!==d._color){p.right=s.left,f._color=0,f.left=s.right,s._color=1,s.left=p,s.right=f,l[h-2]=s,l[h-1]=p,i(f),i(p),i(s),h>=3&&((m=l[h-3]).left===f?m.left=s:m.right=s);break}p._color=1,f.right=n(1,d),f._color=0,h-=1}else if(p.right===s){if(!(d=f.left)||0!==d._color){f._color=0,f.right=p.left,p._color=1,p.left=f,l[h-2]=p,l[h-1]=s,i(f),i(p),h>=3&&((m=l[h-3]).right===f?m.right=p:m.left=p);break}p._color=1,f.left=n(1,d),f._color=0,h-=1}else{var d;if(!(d=f.left)||0!==d._color){var m;p.left=s.right,f._color=0,f.right=s.left,s._color=1,s.right=p,s.left=f,l[h-2]=s,l[h-1]=p,i(f),i(p),i(s),h>=3&&((m=l[h-3]).right===f?m.right=s:m.left=s);break}p._color=1,f.left=n(1,d),f._color=0,h-=1}}return l[0]._color=1,new a(o,l[0])},o.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return s(t,this.root);case 2:return l(e,this._compare,t,this.root);case 3:return this._compare(e,r)>=0?void 0:c(e,r,this._compare,t,this.root)}},Object.defineProperty(o,"begin",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new u(this,t)}}),Object.defineProperty(o,"end",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new u(this,t)}}),o.at=function(t){if(t<0)return new u(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t=e.right._count)break;e=e.right}return new u(this,[])},o.ge=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a<=0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new u(this,n)},o.gt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a<0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new u(this,n)},o.lt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new u(this,n)},o.le=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>=0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new u(this,n)},o.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var i=e(t,r.key);if(n.push(r),0===i)return new u(this,n);r=i<=0?r.left:r.right}return new u(this,[])},o.remove=function(t){var e=this.find(t);return e?e.remove():this},o.get=function(t){for(var e=this._compare,r=this.root;r;){var n=e(t,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var h=u.prototype;function p(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function f(t,e){return te?1:0}Object.defineProperty(h,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(h,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),h.clone=function(){return new u(this.tree,this._stack.slice())},h.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var o=new Array(t.length),s=t[t.length-1];o[o.length-1]=new e(s._color,s.key,s.value,s.left,s.right,s._count);for(var l=t.length-2;l>=0;--l)(s=t[l]).left===t[l+1]?o[l]=new e(s._color,s.key,s.value,o[l+1],s.right,s._count):o[l]=new e(s._color,s.key,s.value,s.left,o[l+1],s._count);if((s=o[o.length-1]).left&&s.right){var c=o.length;for(s=s.left;s.right;)o.push(s),s=s.right;var u=o[c-1];for(o.push(new e(s._color,u.key,u.value,s.left,s.right,s._count)),o[c-1].key=s.key,o[c-1].value=s.value,l=o.length-2;l>=c;--l)s=o[l],o[l]=new e(s._color,s.key,s.value,s.left,o[l+1],s._count);o[c-1].left=o[c]}if(0===(s=o[o.length-1])._color){var h=o[o.length-2];for(h.left===s?h.left=null:h.right===s&&(h.right=null),o.pop(),l=0;l=0;--l){if(e=t[l],0===l)return void(e._color=1);if((a=t[l-1]).left===e){if((o=a.right).right&&0===o.right._color)return s=(o=a.right=r(o)).right=r(o.right),a.right=o.left,o.left=a,o.right=s,o._color=a._color,e._color=1,a._color=1,s._color=1,i(a),i(o),l>1&&((c=t[l-2]).left===a?c.left=o:c.right=o),void(t[l-1]=o);if(o.left&&0===o.left._color)return s=(o=a.right=r(o)).left=r(o.left),a.right=s.left,o.left=s.right,s.left=a,s.right=o,s._color=a._color,a._color=1,o._color=1,e._color=1,i(a),i(o),i(s),l>1&&((c=t[l-2]).left===a?c.left=s:c.right=s),void(t[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.right=n(0,o));a.right=n(0,o);continue}o=r(o),a.right=o.left,o.left=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((c=t[l-2]).left===a?c.left=o:c.right=o),t[l-1]=o,t[l]=a,l+11&&((c=t[l-2]).right===a?c.right=o:c.left=o),void(t[l-1]=o);if(o.right&&0===o.right._color)return s=(o=a.left=r(o)).right=r(o.right),a.left=s.right,o.right=s.left,s.right=a,s.left=o,s._color=a._color,a._color=1,o._color=1,e._color=1,i(a),i(o),i(s),l>1&&((c=t[l-2]).right===a?c.right=s:c.left=s),void(t[l-1]=s);if(1===o._color){if(0===a._color)return a._color=1,void(a.left=n(0,o));a.left=n(0,o);continue}var c;o=r(o),a.left=o.right,o.right=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((c=t[l-2]).right===a?c.right=o:c.left=o),t[l-1]=o,t[l]=a,l+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(h,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(h,"index",{get:function(){var t=0,e=this._stack;if(0===e.length){var r=this.tree.root;return r?r._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var n=e.length-2;n>=0;--n)e[n+1]===e[n].right&&(++t,e[n].left&&(t+=e[n].left._count));return t},enumerable:!0}),h.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(h,"hasNext",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),h.update=function(t){var r=this._stack;if(0===r.length)throw new Error("Can't update empty node!");var n=new Array(r.length),i=r[r.length-1];n[n.length-1]=new e(i._color,i.key,t,i.left,i.right,i._count);for(var o=r.length-2;o>=0;--o)(i=r[o]).left===r[o+1]?n[o]=new e(i._color,i.key,i.value,n[o+1],i.right,i._count):n[o]=new e(i._color,i.key,i.value,i.left,n[o+1],i._count);return new a(this.tree._compare,n[0])},h.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(h,"hasPrev",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},3837:function(t,e,r){t.exports=function(t,e){var r=new f(t);return r.update(e),r};var n=r(4935),i=r(501),a=r(5304),o=r(6429),s=r(6444),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),c=ArrayBuffer,u=DataView;function h(t){return Array.isArray(t)||function(t){return c.isView(t)&&!(t instanceof u)}(t)}function p(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function f(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=a(t)}var d=f.prototype;function m(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}d.update=function(t){function e(e,r,n){if(n in t){var i,a=t[n],o=this[n];(e?h(a)&&h(a[0]):h(a))?this[n]=i=[r(a[0]),r(a[1]),r(a[2])]:this[n]=i=[r(a),r(a),r(a)];for(var s=0;s<3;++s)if(i[s]!==o[s])return!0}return!1}t=t||{};var r,a=e.bind(this,!1,Number),o=e.bind(this,!1,Boolean),l=e.bind(this,!1,String),c=e.bind(this,!0,(function(t){if(h(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]})),u=!1,p=!1;if("bounds"in t)for(var f=t.bounds,d=0;d<2;++d)for(var m=0;m<3;++m)f[d][m]!==this.bounds[d][m]&&(p=!0),this.bounds[d][m]=f[d][m];if("ticks"in t)for(r=t.ticks,u=!0,this.autoTicks=!1,d=0;d<3;++d)this.tickSpacing[d]=0;else a("tickSpacing")&&(this.autoTicks=!0,p=!0);if(this._firstInit&&("ticks"in t||"tickSpacing"in t||(this.autoTicks=!0),p=!0,u=!0,this._firstInit=!1),p&&this.autoTicks&&(r=s.create(this.bounds,this.tickSpacing),u=!0),u){for(d=0;d<3;++d)r[d].sort((function(t,e){return t.x-e.x}));s.equal(r,this.ticks)?u=!1:this.ticks=r}o("tickEnable"),l("tickFont")&&(u=!0),l("tickFontStyle")&&(u=!0),l("tickFontWeight")&&(u=!0),l("tickFontVariant")&&(u=!0),a("tickSize"),a("tickAngle"),a("tickPad"),c("tickColor");var g=l("labels");l("labelFont")&&(g=!0),l("labelFontStyle")&&(g=!0),l("labelFontWeight")&&(g=!0),l("labelFontVariant")&&(g=!0),o("labelEnable"),a("labelSize"),a("labelPad"),c("labelColor"),o("lineEnable"),o("lineMirror"),a("lineWidth"),c("lineColor"),o("lineTickEnable"),o("lineTickMirror"),a("lineTickLength"),a("lineTickWidth"),c("lineTickColor"),o("gridEnable"),a("gridWidth"),c("gridColor"),o("zeroEnable"),c("zeroLineColor"),a("zeroLineWidth"),o("backgroundEnable"),c("backgroundColor");var y=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],v=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,y,this.ticks,v):this._text=n(this.gl,this.bounds,this.labels,y,this.ticks,v),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var g=[new m,new m,new m];function y(t,e,r,n,i){for(var a=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,c=n[e],u=0;u<3;++u)if(e!==u){var h=a,p=s,f=o,d=l;c&1<0?(f[u]=-1,d[u]=0):(f[u]=0,d[u]=1)}}var v=[0,0,0],x={model:l,view:l,projection:l,_ortho:!1};d.isOpaque=function(){return!0},d.isTransparent=function(){return!1},d.drawTransparent=function(t){};var _=[0,0,0],b=[0,0,0],w=[0,0,0];d.draw=function(t){t=t||x;for(var e=this.gl,r=t.model||l,n=t.view||l,i=t.projection||l,a=this.bounds,s=t._ortho||!1,c=o(r,n,i,a,s),u=c.cubeEdges,h=c.axis,f=n[12],d=n[13],m=n[14],T=n[15],A=(s?2:1)*this.pixelRatio*(i[3]*f+i[7]*d+i[11]*m+i[15]*T)/e.drawingBufferHeight,k=0;k<3;++k)this.lastCubeProps.cubeEdges[k]=u[k],this.lastCubeProps.axis[k]=h[k];var M=g;for(k=0;k<3;++k)y(g[k],k,this.bounds,u,h);e=this.gl;var S,E,C,I,L,P,z,D,O,R,F,B,j=v;for(k=0;k<3;++k)this.backgroundEnable[k]?j[k]=h[k]:j[k]=0;for(this._background.draw(r,n,i,a,j,this.backgroundColor),this._lines.bind(r,n,i,this),k=0;k<3;++k){var N=[0,0,0];h[k]>0?N[k]=a[1][k]:N[k]=a[0][k];for(var U=0;U<2;++U){var V=(k+1+U)%3,q=(k+1+(1^U))%3;this.gridEnable[V]&&this._lines.drawGrid(V,q,this.bounds,N,this.gridColor[V],this.gridWidth[V]*this.pixelRatio)}for(U=0;U<2;++U)V=(k+1+U)%3,q=(k+1+(1^U))%3,this.zeroEnable[q]&&Math.min(a[0][q],a[1][q])<=0&&Math.max(a[0][q],a[1][q])>=0&&this._lines.drawZero(V,q,this.bounds,N,this.zeroLineColor[q],this.zeroLineWidth[q]*this.pixelRatio)}for(k=0;k<3;++k){this.lineEnable[k]&&this._lines.drawAxisLine(k,this.bounds,M[k].primalOffset,this.lineColor[k],this.lineWidth[k]*this.pixelRatio),this.lineMirror[k]&&this._lines.drawAxisLine(k,this.bounds,M[k].mirrorOffset,this.lineColor[k],this.lineWidth[k]*this.pixelRatio);var H=p(_,M[k].primalMinor),G=p(b,M[k].mirrorMinor),W=this.lineTickLength;for(U=0;U<3;++U){var Z=A/r[5*U];H[U]*=W[U]*Z,G[U]*=W[U]*Z}this.lineTickEnable[k]&&this._lines.drawAxisTicks(k,M[k].primalOffset,H,this.lineTickColor[k],this.lineTickWidth[k]*this.pixelRatio),this.lineTickMirror[k]&&this._lines.drawAxisTicks(k,M[k].mirrorOffset,G,this.lineTickColor[k],this.lineTickWidth[k]*this.pixelRatio)}function Y(t){(C=[0,0,0])[t]=1}for(this._lines.unbind(),this._text.bind(r,n,i,this.pixelRatio),k=0;k<3;++k){var X=M[k].primalMinor,$=M[k].mirrorMinor,K=p(w,M[k].primalOffset);for(U=0;U<3;++U)this.lineTickEnable[k]&&(K[U]+=A*X[U]*Math.max(this.lineTickLength[U],0)/r[5*U]);var J=[0,0,0];if(J[k]=1,this.tickEnable[k]){for(-3600===this.tickAngle[k]?(this.tickAngle[k]=0,this.tickAlign[k]="auto"):this.tickAlign[k]=-1,E=1,"auto"===(S=[this.tickAlign[k],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),C=[0,0,0],P=$,void 0,void 0,void 0,void 0,void 0,void 0,D=((I=k)+2)%3,O=(L=X)[z=(I+1)%3],R=L[D],F=P[z],B=P[D],O>0&&B>0||O>0&&B<0||O<0&&B>0||O<0&&B<0?Y(z):(R>0&&F>0||R>0&&F<0||R<0&&F>0||R<0&&F<0)&&Y(D),U=0;U<3;++U)K[U]+=A*X[U]*this.tickPad[U]/r[5*U];this._text.drawTicks(k,this.tickSize[k],this.tickAngle[k],K,this.tickColor[k],J,C,S)}if(this.labelEnable[k]){for(E=0,C=[0,0,0],this.labels[k].length>4&&(Y(k),E=1),"auto"===(S=[this.labelAlign[k],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),U=0;U<3;++U)K[U]+=A*X[U]*this.labelPad[U]/r[5*U];K[k]+=.5*(a[0][k]+a[1][k]),this._text.drawLabel(k,this.labelSize[k],this.labelAngle[k],K,this.labelColor[k],[0,0,0],C,S)}}this._text.unbind()},d.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},5304:function(t,e,r){t.exports=function(t){for(var e=[],r=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,h=[0,0,0],p=[0,0,0],f=-1;f<=1;f+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),h[l]=f,p[l]=f;for(var d=-1;d<=1;d+=2){h[c]=d;for(var m=-1;m<=1;m+=2)h[u]=m,e.push(h[0],h[1],h[2],p[0],p[1],p[2]),s+=1}var g=c;c=u,u=g}var y=n(t,new Float32Array(e)),v=n(t,new Uint16Array(r),t.ELEMENT_ARRAY_BUFFER),x=i(t,[{buffer:y,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:t.FLOAT,size:3,offset:12,stride:24}],v),_=a(t);return _.attributes.position.location=0,_.attributes.normal.location=1,new o(t,y,x,_)};var n=r(2762),i=r(8116),a=r(1879).bg;function o(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(t,e,r,n,i,a){for(var o=!1,s=0;s<3;++s)o=o||i[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:r,bounds:n,enable:i,colors:a},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},6429:function(t,e,r){t.exports=function(t,e,r,a,f){i(s,e,t),i(s,r,s);for(var v=0,x=0;x<2;++x){u[2]=a[x][2];for(var _=0;_<2;++_){u[1]=a[_][1];for(var b=0;b<2;++b)u[0]=a[b][0],p(l[v],u,s),v+=1}}var w=-1;for(x=0;x<8;++x){for(var T=l[x][3],A=0;A<3;++A)c[x][A]=l[x][A]/T;f&&(c[x][2]*=-1),T<0&&(w<0||c[x][2]E&&(w|=1<E&&(w|=1<c[x][1])&&(R=x);var F=-1;for(x=0;x<3;++x)(j=R^1<c[B][0]&&(B=j))}var N=m;N[0]=N[1]=N[2]=0,N[n.log2(F^R)]=R&F,N[n.log2(R^B)]=R&B;var U=7^B;U===w||U===O?(U=7^F,N[n.log2(B^U)]=U&B):N[n.log2(F^U)]=U&F;var V=g,q=w;for(k=0;k<3;++k)V[k]=q&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ?\n b - PI :\n b;\n}\n\nfloat look_horizontal_or_vertical(float a, float ratio) {\n // ratio controls the ratio between being horizontal to (vertical + horizontal)\n // if ratio is set to 0.5 then it is 50%, 50%.\n // when using a higher ratio e.g. 0.75 the result would\n // likely be more horizontal than vertical.\n\n float b = positive_angle(a);\n\n return\n (b < ( ratio) * HALF_PI) ? 0.0 :\n (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :\n (b < (2.0 + ratio) * HALF_PI) ? 0.0 :\n (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :\n 0.0;\n}\n\nfloat roundTo(float a, float b) {\n return float(b * floor((a + 0.5 * b) / b));\n}\n\nfloat look_round_n_directions(float a, int n) {\n float b = positive_angle(a);\n float div = TWO_PI / float(n);\n float c = roundTo(b, div);\n return look_upwards(c);\n}\n\nfloat applyAlignOption(float rawAngle, float delta) {\n return\n (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions\n (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical\n (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis\n (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards\n (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal\n rawAngle; // otherwise return back raw input angle\n}\n\nbool isAxisTitle = (axis.x == 0.0) &&\n (axis.y == 0.0) &&\n (axis.z == 0.0);\n\nvoid main() {\n //Compute world offset\n float axisDistance = position.z;\n vec3 dataPosition = axisDistance * axis + offset;\n\n float beta = angle; // i.e. user defined attributes for each tick\n\n float axisAngle;\n float clipAngle;\n float flip;\n\n if (enableAlign) {\n axisAngle = (isAxisTitle) ? HALF_PI :\n computeViewAngle(dataPosition, dataPosition + axis);\n clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);\n\n axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;\n clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;\n\n flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),\n vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;\n\n beta += applyAlignOption(clipAngle, flip * PI);\n }\n\n //Compute plane offset\n vec2 planeCoord = position.xy * pixelScale;\n\n mat2 planeXform = scale * mat2(\n cos(beta), sin(beta),\n -sin(beta), cos(beta)\n );\n\n vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\n\n //Compute clip position\n vec3 clipPosition = project(dataPosition);\n\n //Apply text offset in clip coordinates\n clipPosition += vec3(viewOffset, 0.0);\n\n //Done\n gl_Position = vec4(clipPosition, 1.0);\n}\n"]),l=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}"]);e.Q=function(t){return i(t,s,l,null,[{name:"position",type:"vec3"}])};var c=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec3 normal;\n\nuniform mat4 model, view, projection;\nuniform vec3 enable;\nuniform vec3 bounds[2];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n\n vec3 signAxis = sign(bounds[1] - bounds[0]);\n\n vec3 realNormal = signAxis * normal;\n\n if(dot(realNormal, enable) > 0.0) {\n vec3 minRange = min(bounds[0], bounds[1]);\n vec3 maxRange = max(bounds[0], bounds[1]);\n vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));\n gl_Position = projection * (view * (model * vec4(nPosition, 1.0)));\n } else {\n gl_Position = vec4(0,0,0,0);\n }\n\n colorChannel = abs(realNormal);\n}\n"]),u=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 colors[3];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n gl_FragColor = colorChannel.x * colors[0] +\n colorChannel.y * colors[1] +\n colorChannel.z * colors[2];\n}"]);e.bg=function(t){return i(t,c,u,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(t,e,r){t.exports=function(t,e,r,a,s,l){var c=n(t),h=i(t,[{buffer:c,size:3}]),p=o(t);p.attributes.position.location=0;var f=new u(t,p,c,h);return f.update(e,r,a,s,l),f};var n=r(2762),i=r(8116),a=r(4359),o=r(1879).Q,s=window||c.global||{},l=s.__TEXT_CACHE||{};function u(t,e,r,n){this.gl=t,this.shader=e,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}s.__TEXT_CACHE={};var h=u.prototype,p=[0,0];h.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=t,i.view=e,i.projection=r,i.pixelScale=n,p[0]=this.gl.drawingBufferWidth,p[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=p},h.unbind=function(){this.vao.unbind()},h.update=function(t,e,r,n,i){var o=[];function s(t,e,r,n,i,s){var c=[r.style,r.weight,r.variant,r.family].join("_"),u=l[c];u||(u=l[c]={});var h=u[e];h||(h=u[e]=function(t,e){try{return a(t,e)}catch(e){return console.warn('error vectorizing text:"'+t+'" error:',e),{cells:[],positions:[]}}}(e,{triangles:!0,font:r.family,fontStyle:r.style,fontWeight:r.weight,fontVariant:r.variant,textAlign:"center",textBaseline:"middle",lineSpacing:i,styletags:s}));for(var p=(n||12)/12,f=h.positions,d=h.cells,m=0,g=d.length;m=0;--v){var x=f[y[v]];o.push(p*x[0],-p*x[1],t)}}for(var c=[0,0,0],u=[0,0,0],h=[0,0,0],p=[0,0,0],f={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},d=0;d<3;++d){h[d]=o.length/3|0,s(.5*(t[0][d]+t[1][d]),e[d],r[d],12,1.25,f),p[d]=(o.length/3|0)-h[d],c[d]=o.length/3|0;for(var m=0;m=0&&(i=r.length-n-1);var a=Math.pow(10,i),o=Math.round(t*e*a),s=o+"";if(s.indexOf("e")>=0)return s;var l=o/a,c=o%a;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=""+l;if(o<0&&(u="-"+u),i){for(var h=""+c;h.length=t[0][i];--o)a.push({x:o*e[i],text:r(e[i],o)});n.push(a)}return n},e.equal=function(t,e){for(var r=0;r<3;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;nr)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return t.bufferSubData(e,a,i),r}function u(t,e){for(var r=n.malloc(t.length,e),i=t.length,a=0;a=0;--n){if(e[n]!==r)return!1;r*=t[n]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=n.malloc(t.size,r),l=a(s,t.shape);i.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),n.free(s)}}else if(Array.isArray(t)){var h;h=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,"uint16"):u(t,"float32"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?h:h.subarray(0,t.length),e),n.free(h)}else if("object"==typeof t&&"number"==typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if("number"!=typeof t&&void 0!==t)throw new Error("gl-buffer: Invalid data type");if(e>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},t.exports=function(t,e,r,n){if(r=r||t.ARRAY_BUFFER,n=n||t.DYNAMIC_DRAW,r!==t.ARRAY_BUFFER&&r!==t.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(n!==t.DYNAMIC_DRAW&&n!==t.STATIC_DRAW&&n!==t.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var i=t.createBuffer(),a=new s(t,r,i,0,n);return a.update(e),a}},6405:function(t,e,r){var n=r(2931);t.exports=function(t,e){var r=t.positions,i=t.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,c=1/0,u=-1/0,h=1/0,p=-1/0,f=null,d=null,m=[],g=1/0,y=!1,v="raw"===t.coneSizemode,x=0;xo&&(o=n.length(b)),x&&!v){var w=2*n.distance(f,_)/(n.length(d)+n.length(b));w?(g=Math.min(g,w),y=!1):y=!0}y||(f=_,d=b),m.push(b)}var T=[s,c,h],A=[l,u,p];e&&(e[0]=T,e[1]=A),0===o&&(o=1);var k=1/o;isFinite(g)||(g=1),a.vectorScale=g;var M=t.coneSize||(v?1:.5);t.absoluteConeSize&&(M=t.absoluteConeSize*k),a.coneScale=M,x=0;for(var S=0;x=1},f.isTransparent=function(){return this.opacity<1},f.pickSlots=1,f.setPickBase=function(t){this.pickId=t},f.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,"lightPosition"in t&&(this.lightPosition=t.lightPosition),"opacity"in t&&(this.opacity=t.opacity),"ambient"in t&&(this.ambientLight=t.ambient),"diffuse"in t&&(this.diffuseLight=t.diffuse),"specular"in t&&(this.specularLight=t.specular),"roughness"in t&&(this.roughness=t.roughness),"fresnel"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:"rgba"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var i=e[n],a=0;a<3;++a)r[4*n+a]=i[a];r[4*n+3]=255*i[3]}return c(r,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var r=t.cells,n=t.positions,i=t.vectors;if(n&&r&&i){var a=[],o=[],s=[],l=[],h=[];this.cells=r,this.positions=n,this.vectors=i;var p=t.meshColor||[1,1,1,1],f=t.vertexIntensity,d=1/0,m=-1/0;if(f)if(t.vertexIntensityBounds)d=+t.vertexIntensityBounds[0],m=+t.vertexIntensityBounds[1];else for(var g=0;g0){var m=this.triShader;m.bind(),m.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},f.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,i=t.projection||h,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:r,view:n,projection:i,clipBounds:a,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},l=this.pickShader;l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},f.pick=function(t){if(!t||t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions[r[1]].slice(0,3),i={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return"cone"===this.traceType?i.index=Math.floor(r[1]/48):"streamtube"===this.traceType&&(i.intensity=this.intensity[r[1]],i.velocity=this.vectors[r[1]].slice(0,3),i.divergence=this.vectors[r[1]][3],i.index=e),i},f.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()},t.exports=function(t,e,r){var s=r.shaders;1===arguments.length&&(t=(e=t).gl);var l=function(t,e){var r=n(t,e.meshShader.vertex,e.meshShader.fragment,null,e.meshShader.attributes);return r.attributes.position.location=0,r.attributes.color.location=2,r.attributes.uv.location=3,r.attributes.vector.location=4,r}(t,s),u=function(t,e){var r=n(t,e.pickShader.vertex,e.pickShader.fragment,null,e.pickShader.attributes);return r.attributes.position.location=0,r.attributes.id.location=1,r.attributes.vector.location=4,r}(t,s),h=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));h.generateMipmap(),h.minFilter=t.LINEAR_MIPMAP_LINEAR,h.magFilter=t.LINEAR;var f=i(t),d=i(t),m=i(t),g=i(t),y=i(t),v=new p(t,h,l,u,f,d,y,m,g,a(t,[{buffer:f,type:t.FLOAT,size:4},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:g,type:t.FLOAT,size:2},{buffer:d,type:t.FLOAT,size:4}]),r.traceType||"cone");return v.update(e),v}},614:function(t,e,r){var n=r(3236),i=n(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec3 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, coneScale, coneOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * conePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(conePosition, 1.0);\n vec4 t_position = view * conePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = conePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=n(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=n(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float vectorScale, coneScale, coneOffset;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n gl_Position = projection * (view * conePosition);\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(t){t.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(t,e,r){var n=r(737);t.exports=function(t){return n[t]}},9165:function(t,e,r){t.exports=function(t){var e=t.gl,r=n(e),o=i(e,[{buffer:r,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:e.FLOAT,size:3,offset:28,stride:40}]),l=a(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,r,o,l);return c.update(t),c};var n=r(2762),i=r(8116),a=r(3436),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.shader=n,this.buffer=e,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var l=s.prototype;function c(t,e){for(var r=0;r<3;++r)t[0][r]=Math.min(t[0][r],e[r]),t[1][r]=Math.max(t[1][r],e[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=t.view||o,i=r.projection=t.projection||o;r.model=t.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var a=n[12],s=n[13],l=n[14],c=n[15],u=(t._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var h=0;h<3;++h)e.lineWidth(this.lineWidth[h]*this.pixelRatio),r.capSize=this.capSize[h]*u,this.lineCount[h]&&e.drawArrays(e.LINES,this.lineOffset[h],this.lineCount[h]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var r=[],n=1;n<=2;++n)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(n+e)%3]=i,r.push(a)}t[e]=r}return t}();function h(t,e,r,n){for(var i=u[n],a=0;a0&&((f=u.slice())[s]+=d[1][s],i.push(u[0],u[1],u[2],m[0],m[1],m[2],m[3],0,0,0,f[0],f[1],f[2],m[0],m[1],m[2],m[3],0,0,0),c(this.bounds,f),o+=2+h(i,f,m,s)))}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(i)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},3436:function(t,e,r){var n=r(3236),i=r(9405),a=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, offset;\nattribute vec4 color;\nuniform mat4 model, view, projection;\nuniform float capSize;\nvarying vec4 fragColor;\nvarying vec3 fragPosition;\n\nvoid main() {\n vec4 worldPosition = model * vec4(position, 1.0);\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\n gl_Position = projection * (view * worldPosition);\n fragColor = color;\n fragPosition = position;\n}"]),o=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float opacity;\nvarying vec3 fragPosition;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n gl_FragColor = opacity * fragColor;\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(t,e,r){var n=r(7766);t.exports=function(t,e,r,n){i||(i=t.FRAMEBUFFER_UNSUPPORTED,a=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension("WEBGL_draw_buffers");if(!l&&c&&function(t,e){var r=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var i=new Array(r),a=0;au||r<0||r>u)throw new Error("gl-fbo: Parameters are too large for FBO");var h=1;if("color"in(n=n||{})){if((h=Math.max(0|n.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(h>1){if(!c)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(h>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+h+" draw buffers")}}var p=t.UNSIGNED_BYTE,f=t.getExtension("OES_texture_float");if(n.float&&h>0){if(!f)throw new Error("gl-fbo: Context does not support floating point textures");p=t.FLOAT}else n.preferFloat&&h>0&&f&&(p=t.FLOAT);var m=!0;"depth"in n&&(m=!!n.depth);var g=!1;return"stencil"in n&&(g=!!n.stencil),new d(t,e,r,p,h,m,g,c)};var i,a,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function h(t){switch(t){case i:throw new Error("gl-fbo: Framebuffer unsupported");case a:throw new Error("gl-fbo: Framebuffer incomplete attachment");case o:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case s:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function p(t,e,r,i,a,o){if(!i)return null;var s=n(t,e,r,a,i);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function f(t,e,r,n,i){var a=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,a),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,i,t.RENDERBUFFER,a),a}function d(t,e,r,n,i,a,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var d=0;d1&&s.drawBuffersWEBGL(l[o]);var v=r.getExtension("WEBGL_depth_texture");v?d?t.depth=p(r,i,a,v.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):m&&(t.depth=p(r,i,a,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):m&&d?t._depth_rb=f(r,i,a,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):m?t._depth_rb=f(r,i,a,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):d&&(t._depth_rb=f(r,i,a,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){for(t._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(r.deleteRenderbuffer(t._depth_rb),t._depth_rb=null),y=0;yi||r<0||r>i)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");t._shape[0]=e,t._shape[1]=r;for(var a=c(n),o=0;o max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D dashTexture;\nuniform float dashScale;\nuniform float opacity;\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\n if(dashWeight < 0.5) {\n discard;\n }\n gl_FragColor = fragColor * opacity;\n}\n"]),s=n(["precision highp float;\n#define GLSLIFY 1\n\n#define FLOAT_MAX 1.70141184e38\n#define FLOAT_MIN 1.17549435e-38\n\n// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl\nvec4 packFloat(float v) {\n float av = abs(v);\n\n //Handle special cases\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\n }\n\n vec4 c = vec4(0,0,0,0);\n\n //Compute exponent and mantissa\n float e = floor(log2(av));\n float m = av * pow(2.0, -e) - 1.0;\n\n //Unpack mantissa\n c[1] = floor(128.0 * m);\n m -= c[1] / 128.0;\n c[2] = floor(32768.0 * m);\n m -= c[2] / 32768.0;\n c[3] = floor(8388608.0 * m);\n\n //Unpack exponent\n float ebias = e + 127.0;\n c[0] = floor(ebias / 2.0);\n ebias -= c[0] * 2.0;\n c[1] += floor(ebias) * 128.0;\n\n //Unpack sign bit\n c[0] += 128.0 * step(0.0, -v);\n\n //Scale back to range\n return c / 255.0;\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform float pickId;\nuniform vec3 clipBounds[2];\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;\n\n gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);\n}"]),l=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];e.createShader=function(t){return i(t,a,o,null,l)},e.createPickShader=function(t){return i(t,a,s,null,l)}},5714:function(t,e,r){t.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,r=h(e);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=p(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=n(e),l=i(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),f=0;f<1024;++f)u.data[f]=255;var d=a(e,u);d.wrap=e.REPEAT;var m=new y(e,r,o,s,l,d);return m.update(t),m};var n=r(2762),i=r(8116),a=r(7766),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=r(2478),c=r(9618),u=r(7319),h=u.createShader,p=u.createPickShader,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(t,e){for(var r=0,n=0;n<3;++n){var i=t[n]-e[n];r+=i*i}return Math.sqrt(r)}function m(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)e[0][r]=Math.max(t[0][r],e[0][r]),e[1][r]=Math.min(t[1][r],e[1][r]);return e}function g(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function y(t,e,r,n,i,a){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var v=y.prototype;v.isTransparent=function(){return this.hasAlpha},v.isOpaque=function(){return!this.hasAlpha},v.pickSlots=1,v.setPickBase=function(t){this.pickId=t},v.drawTransparent=v.draw=function(t){if(this.vertexCount){var e=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:t.model||f,view:t.view||f,projection:t.projection||f,clipBounds:m(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},v.drawPick=function(t){if(this.vertexCount){var e=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:t.model||f,view:t.view||f,projection:t.projection||f,pickId:this.pickId,clipBounds:m(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},v.update=function(t){var e,r;this.dirty=!0;var n=!!t.connectGaps;"dashScale"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,"opacity"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,u=0,h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],p=t.position||t.positions;if(p){var f=t.color||t.colors||[0,0,0,1],m=t.lineWidth||1,g=!1;t:for(e=1;e0){for(var w=0;w<24;++w)i.push(i[i.length-12]);u+=2,g=!0}continue t}h[0][r]=Math.min(h[0][r],_[r],b[r]),h[1][r]=Math.max(h[1][r],_[r],b[r])}Array.isArray(f[0])?(y=f.length>e-1?f[e-1]:f.length>0?f[f.length-1]:[0,0,0,1],v=f.length>e?f[e]:f.length>0?f[f.length-1]:[0,0,0,1]):y=v=f,3===y.length&&(y=[y[0],y[1],y[2],1]),3===v.length&&(v=[v[0],v[1],v[2],1]),!this.hasAlpha&&y[3]<1&&(this.hasAlpha=!0),x=Array.isArray(m)?m.length>e-1?m[e-1]:m.length>0?m[m.length-1]:[0,0,0,1]:m;var T=s;if(s+=d(_,b),g){for(r=0;r<2;++r)i.push(_[0],_[1],_[2],b[0],b[1],b[2],T,x,y[0],y[1],y[2],y[3]);u+=2,g=!1}i.push(_[0],_[1],_[2],b[0],b[1],b[2],T,x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],T,-x,y[0],y[1],y[2],y[3],b[0],b[1],b[2],_[0],_[1],_[2],s,-x,v[0],v[1],v[2],v[3],b[0],b[1],b[2],_[0],_[1],_[2],s,x,v[0],v[1],v[2],v[3]),u+=4}}if(this.buffer.update(i),a.push(s),o.push(p[p.length-1].slice()),this.bounds=h,this.vertexCount=u,this.points=o,this.arcLength=a,"dashes"in t){var A=t.dashes.slice();for(A.unshift(0),e=1;e1.0001)return null;y+=g[h]}return Math.abs(y-1)>.001?null:[p,s(t,g),g]}},840:function(t,e,r){var n=r(3236),i=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, normal;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model\n , view\n , projection\n , inverseModel;\nuniform vec3 eyePosition\n , lightPosition;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvec4 project(vec3 p) {\n return projection * (view * (model * vec4(p, 1.0)));\n}\n\nvoid main() {\n gl_Position = project(position);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * vec4(position , 1.0);\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n f_color = color;\n f_data = position;\n f_uv = uv;\n}\n"]),a=n(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\n//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness\n , fresnel\n , kambient\n , kdiffuse\n , kspecular;\nuniform sampler2D texture;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (f_color.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], f_data)\n ) discard;\n\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d\n\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * f_color.a;\n}\n"]),o=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model, view, projection;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n gl_Position = projection * (view * (model * vec4(position, 1.0)));\n f_color = color;\n f_data = position;\n f_uv = uv;\n}"]),s=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;\n\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),l=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\nattribute float pointSize;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);\n } else {\n gl_Position = projection * (view * (model * vec4(position, 1.0)));\n }\n gl_PointSize = pointSize;\n f_color = color;\n f_uv = uv;\n}"]),c=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);\n if(dot(pointR, pointR) > 0.25) {\n discard;\n }\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),u=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n gl_Position = projection * (view * (model * vec4(position, 1.0)));\n f_id = id;\n f_position = position;\n}"]),h=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]),p=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute float pointSize;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\n } else {\n gl_Position = projection * (view * (model * vec4(position, 1.0)));\n gl_PointSize = pointSize;\n }\n f_id = id;\n f_position = position;\n}"]),f=n(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\n\nuniform mat4 model, view, projection;\n\nvoid main() {\n gl_Position = projection * (view * (model * vec4(position, 1.0)));\n}"]),d=n(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n gl_FragColor = vec4(contourColor, 1.0);\n}\n"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.wireShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.pointShader={vertex:l,fragment:c,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},e.pickShader={vertex:u,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},e.pointPickShader={vertex:p,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},e.contourShader={vertex:f,fragment:d,attributes:[{name:"position",type:"vec3"}]}},7201:function(t,e,r){var n=r(9405),i=r(2762),a=r(8116),o=r(7766),s=r(8406),l=r(6760),c=r(7608),u=r(9618),h=r(6729),p=r(7765),f=r(1888),d=r(840),m=r(7626),g=d.meshShader,y=d.wireShader,v=d.pointShader,x=d.pickShader,_=d.pointPickShader,b=d.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,T,A,k,M,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=p,this.triangleUVs=h,this.triangleIds=c,this.triangleVAO=f,this.triangleCount=0,this.lineWidth=1,this.edgePositions=d,this.edgeColors=g,this.edgeUVs=y,this.edgeIds=m,this.edgeVAO=v,this.edgeCount=0,this.pointPositions=x,this.pointColors=b,this.pointUVs=T,this.pointSizes=A,this.pointIds=_,this.pointVAO=k,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=M,this.contourVAO=S,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=w,this._view=w,this._projection=w,this._resolution=[1,1]}var A=T.prototype;function k(t,e){if(!e||!e.length)return 1;for(var r=0;rt&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}A.isOpaque=function(){return!this.hasAlpha},A.isTransparent=function(){return this.hasAlpha},A.pickSlots=1,A.setPickBase=function(t){this.pickId=t},A.highlight=function(t){if(t&&this.contourEnable){for(var e=p(this.cells,this.intensity,t.intensity),r=e.cells,n=e.vertexIds,i=e.vertexWeights,a=r.length,o=f.mallocFloat32(6*a),s=0,l=0;l0&&((u=this.triShader).bind(),u.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((u=this.lineShader).bind(),u.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((u=this.pointShader).bind(),u.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()),this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((u=this.contourShader).bind(),u.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},A.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,i=t.projection||w,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:r,view:n,projection:i,clipBounds:a,pickId:this.pickId/255};(s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},A.pick=function(t){if(!t||t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions,i=new Array(r.length),a=0;aMath.abs(e))c.rotate(a,0,0,-t*r*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var o=-d.zoomSpeed*i*e/window.innerHeight*(a-c.lastT())/20;c.pan(a,0,0,h*(Math.exp(o)-1))}}}),!0)},d.enableMouseListeners(),d};var n=r(3025),i=r(6296),a=r(351),o=r(8512),s=r(24),l=r(7520)},799:function(t,e,r){var n=r(3236),i=r(9405),a=n(["precision mediump float;\n#define GLSLIFY 1\nattribute vec2 position;\nvarying vec2 uv;\nvoid main() {\n uv = position;\n gl_Position = vec4(position, 0, 1);\n}"]),o=n(["precision mediump float;\n#define GLSLIFY 1\n\nuniform sampler2D accumBuffer;\nvarying vec2 uv;\n\nvoid main() {\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\n gl_FragColor = min(vec4(1,1,1,1), accum);\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec2"}])}},4100:function(t,e,r){var n=r(4437),i=r(3837),a=r(5445),o=r(4449),s=r(3589),l=r(2260),c=r(7169),u=r(351),h=r(4772),p=r(4040),f=r(799),d=r(9216)({tablet:!0,featureDetect:!0});function m(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function g(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var r=Math.round(Math.pow(10,-e));return Math.ceil(t*r)/r}return e>0?(r=Math.round(Math.pow(10,e)),Math.ceil(t/r)*r):Math.ceil(t)}function y(t){return"boolean"!=typeof t||t}t.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;e||(e=document.createElement("canvas"),t.container?t.container.appendChild(e):document.body.appendChild(e));var r=t.gl;if(r||(t.glOptions&&(d=!!t.glOptions.preserveDrawingBuffer),r=function(t,e){var r=null;try{(r=t.getContext("webgl",e))||(r=t.getContext("experimental-webgl",e))}catch{return null}return r}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:d})),!r)throw new Error("webgl not supported");var v=t.bounds||[[-10,-10,-10],[10,10,10]],x=new m,_=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!d}),b=f(r),w=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&"orthographic"===t.camera.projection.type||!1,T={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||"turntable",_ortho:w},A=t.axes||{},k=i(r,A);k.enable=!A.disable;var M=t.spikes||{},S=o(r,M),E=[],C=[],I=[],L=[],P=!0,z=!0,D={view:null,projection:new Array(16),model:new Array(16),_ortho:!1},O=(z=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),R=t.cameraObject||n(e,T),F={gl:r,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:x,camera:R,axes:k,axesPixels:null,spikes:S,bounds:v,objects:E,shape:O,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:y(t.autoResize),autoBounds:y(t.autoBounds),autoScale:!!t.autoScale,autoCenter:y(t.autoCenter),clipToBounds:y(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:D,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,z=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},B=[r.drawingBufferWidth/F.pixelRatio|0,r.drawingBufferHeight/F.pixelRatio|0];function j(){if(!F._stopped&&F.autoResize){var t=e.parentNode,r=1,n=1;t&&t!==document.body?(r=t.clientWidth,n=t.clientHeight):(r=window.innerWidth,n=window.innerHeight);var i=0|Math.ceil(r*F.pixelRatio),a=0|Math.ceil(n*F.pixelRatio);if(i!==e.width||a!==e.height){e.width=i,e.height=a;var o=e.style;o.position=o.position||"absolute",o.left="0px",o.top="0px",o.width=r+"px",o.height=n+"px",P=!0}}}function N(){for(var t=E.length,e=L.length,n=0;n0&&0===I[e-1];)I.pop(),L.pop().dispose()}function U(){if(F.contextLost)return!0;r.isContextLost()&&(F.contextLost=!0,F.mouseListener.enabled=!1,F.selection.object=null,F.oncontextloss&&F.oncontextloss())}F.autoResize&&j(),window.addEventListener("resize",j),F.update=function(t){F._stopped||(t=t||{},P=!0,z=!0)},F.add=function(t){F._stopped||(t.axes=k,E.push(t),C.push(-1),P=!0,z=!0,N())},F.remove=function(t){if(!F._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),P=!0,z=!0,N())}},F.dispose=function(){if(!F._stopped&&(F._stopped=!0,window.removeEventListener("resize",j),e.removeEventListener("webglcontextlost",U),F.mouseListener.enabled=!1,!F.contextLost)){k.dispose(),S.dispose();for(var t=0;tx.distance)continue;for(var c=0;c1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-n)*i)/o,l=Math.sin(n*i)/o):(s=1-n,l=n),t[0]=s*c+l*f,t[1]=s*u+l*d,t[2]=s*h+l*m,t[3]=s*p+l*g,t}},5964:function(t){t.exports=function(t){return t||0===t?t.toString():""}},9366:function(t,e,r){var n=r(4359);t.exports=function(t,e,r){var a=[e.style,e.weight,e.variant,e.family].join("_"),o=i[a];if(o||(o=i[a]={}),t in o)return o[t];var s={textAlign:"center",textBaseline:"middle",lineHeight:1,font:e.family,fontStyle:e.style,fontWeight:e.weight,fontVariant:e.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},l=n(t,s);s.triangles=!1;var c,u,h=n(t,s);if(r&&1!==r){for(c=0;c max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform vec4 highlightId;\nuniform float highlightScale;\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = 1.0;\n if(distance(highlightId, id) < 0.0001) {\n scale = highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1);\n vec4 viewPosition = view * worldPosition;\n viewPosition = viewPosition / viewPosition.w;\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),o=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float highlightScale, pixelRatio;\nuniform vec4 highlightId;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = pixelRatio;\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\n scale *= highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1.0);\n vec4 viewPosition = view * worldPosition;\n vec4 clipPosition = projection * viewPosition;\n clipPosition /= clipPosition.w;\n\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform float highlightScale;\nuniform vec4 highlightId;\nuniform vec3 axes[2];\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float scale, pixelRatio;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float lscale = pixelRatio * scale;\n if(distance(highlightId, id) < 0.0001) {\n lscale *= highlightScale;\n }\n\n vec4 clipCenter = projection * (view * (model * vec4(position, 1)));\n vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\n vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = dataPosition;\n }\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float opacity;\n\nvarying vec4 interpColor;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (\n outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\n interpColor.a * opacity == 0.\n ) discard;\n gl_FragColor = interpColor * opacity;\n}\n"]),c=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float pickGroup;\n\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\n\n gl_FragColor = vec4(pickGroup, pickId.bgr);\n}"]),u=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],h={vertex:a,fragment:l,attributes:u},p={vertex:o,fragment:l,attributes:u},f={vertex:s,fragment:l,attributes:u},d={vertex:a,fragment:c,attributes:u},m={vertex:o,fragment:c,attributes:u},g={vertex:s,fragment:c,attributes:u};function y(t,e){var r=n(t,e),i=r.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,r}e.createPerspective=function(t){return y(t,h)},e.createOrtho=function(t){return y(t,p)},e.createProject=function(t){return y(t,f)},e.createPickPerspective=function(t){return y(t,d)},e.createPickOrtho=function(t){return y(t,m)},e.createPickProject=function(t){return y(t,g)}},8418:function(t,e,r){var n=r(5219),i=r(2762),a=r(8116),o=r(1888),s=r(6760),l=r(1283),c=r(9366),u=r(5964),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],p=ArrayBuffer,f=DataView;function d(t){return Array.isArray(t)||function(t){return p.isView(t)&&!(t instanceof f)}(t)}function m(t,e){var r=t[0],n=t[1],i=t[2],a=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*i+e[12]*a,t[1]=e[1]*r+e[5]*n+e[9]*i+e[13]*a,t[2]=e[2]*r+e[6]*n+e[10]*i+e[14]*a,t[3]=e[3]*r+e[7]*n+e[11]*i+e[15]*a,t}function g(t,e,r,n){return m(n,n),m(n,n),m(n,n)}function y(t,e){this.index=t,this.dataCoordinate=this.position=e}function v(t){return!0===t||t>1?1:t}function x(t,e,r,n,i,a,o,s,l,c,u,h){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=r,this.projectShader=n,this.pointBuffer=i,this.colorBuffer=a,this.glyphBuffer=o,this.idBuffer=s,this.vao=l,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=u,this.pickProjectShader=h,this.points=[],this._selectResult=new y(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}t.exports=function(t){var e=t.gl,r=l.createPerspective(e),n=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),h=i(e),p=i(e),f=i(e),d=i(e),m=new x(e,r,n,o,h,p,f,d,a(e,[{buffer:h,size:3,type:e.FLOAT},{buffer:p,size:4,type:e.FLOAT},{buffer:f,size:2,type:e.FLOAT},{buffer:d,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),s,c,u);return m.update(t),m};var _=x.prototype;_.pickSlots=1,_.setPickBase=function(t){this.pickId=t},_.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},_.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var b=[0,0],w=[0,0,0],T=[0,0,0],A=[0,0,0,1],k=[0,0,0,1],M=h.slice(),S=[0,0,0],E=[[0,0,0],[0,0,0]];function C(t){return t[0]=t[1]=t[2]=0,t}function I(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function L(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}var P=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function z(t,e,r,n,i,a,o){var l=r.gl;if((a===r.projectHasAlpha||o)&&function(t,e,r,n){var i,a=e.axesProject,o=e.gl,l=t.uniforms,c=r.model||h,u=r.view||h,p=r.projection||h,f=e.axesBounds,d=function(t){for(var e=E,r=0;r<2;++r)for(var n=0;n<3;++n)e[r][n]=Math.max(Math.min(t[r][n],1e8),-1e8);return e}(e.clipBounds);i=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],b[0]=2/o.drawingBufferWidth,b[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=p,l.screenSize=b,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=d,l.pickGroup=e.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(a[m]){l.scale=e.projectScale[m],l.opacity=e.projectOpacity[m];for(var y=M,v=0;v<16;++v)y[v]=0;for(v=0;v<4;++v)y[5*v]=1;y[5*m]=0,i[m]<0?y[12+m]=f[0][m]:y[12+m]=f[1][m],s(y,c,y),l.model=y;var x=(m+1)%3,_=(m+2)%3,P=C(w),z=C(T);P[x]=1,z[_]=1;var D=g(0,0,0,I(A,P)),O=g(0,0,0,I(k,z));if(Math.abs(D[1])>Math.abs(O[1])){var R=D;D=O,O=R,R=P,P=z,z=R;var F=x;x=_,_=F}D[0]<0&&(P[x]=-1),O[1]>0&&(z[_]=-1);var B=0,j=0;for(v=0;v<4;++v)B+=Math.pow(c[4*x+v],2),j+=Math.pow(c[4*_+v],2);P[x]/=Math.sqrt(B),z[_]/=Math.sqrt(j),l.axes[0]=P,l.axes[1]=z,l.fragClipBounds[0]=L(S,d[0],m,-1e8),l.fragClipBounds[1]=L(S,d[1],m,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*n),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}(e,r,n,i),a===r.hasAlpha||o){t.bind();var c=t.uniforms;c.model=n.model||h,c.view=n.view||h,c.projection=n.projection||h,b[0]=2/l.drawingBufferWidth,b[1]=2/l.drawingBufferHeight,c.screenSize=b,c.highlightId=r.highlightId,c.highlightScale=r.highlightScale,c.fragClipBounds=P,c.clipBounds=r.axes.bounds,c.opacity=r.opacity,c.pickGroup=r.pickId/255,c.pixelRatio=i,r.vao.bind(),r.vao.draw(l.TRIANGLES,r.vertexCount),r.lineWidth>0&&(l.lineWidth(r.lineWidth*i),r.vao.draw(l.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function D(t,e,r,i){var a;a=d(t)?e=this.pointCount||e<0)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var i=0;i<3;++i)n.position[i]=n.dataCoordinate[i]=r[i];return n},_.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,i=e>>16&255;this.highlightId=[r/255,n/255,i/255,0]}else this.highlightId=[1,1,1,1]},_.update=function(t){if("perspective"in(t=t||{})&&(this.useOrtho=!t.perspective),"orthographic"in t&&(this.useOrtho=!!t.orthographic),"lineWidth"in t&&(this.lineWidth=t.lineWidth),"project"in t)if(d(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if("projectScale"in t)if(d(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,"projectOpacity"in t){d(t.projectOpacity)?this.projectOpacity=t.projectOpacity.slice():(r=+t.projectOpacity,this.projectOpacity=[r,r,r]);for(var n=0;n<3;++n)this.projectOpacity[n]=v(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in t&&(this.opacity=v(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=t.position,l={family:t.font||"normal",style:t.fontStyle||"normal",weight:t.fontWeight||"normal",variant:t.fontVariant||"normal"},c=t.alignment||[0,0];if(2===c.length)i=c[0],a=c[1];else for(i=[],a=[],n=0;n0){var z=0,O=_,R=[0,0,0,1],F=[0,0,0,1],B=d(f)&&d(f[0]),j=d(y)&&d(y[0]);t:for(n=0;n0?1-S[0][0]:Z<0?1+S[1][0]:1,Y*=Y>0?1-S[0][1]:Y<0?1+S[1][1]:1],$=k.cells||[],K=k.positions||[];for(A=0;A<$.length;++A)for(var J=$[A],Q=0;Q<3;++Q){for(var tt=0;tt<3;++tt)C[3*z+tt]=T[tt];for(tt=0;tt<4;++tt)I[4*z+tt]=R[tt];P[z]=x;var et=K[J[Q]];L[2*z]=q*(G*et[0]-W*et[1]+X[0]),L[2*z+1]=q*(W*et[0]+G*et[1]+X[1]),z+=1}for($=M.edges,K=M.positions,A=0;A<$.length;++A)for(J=$[A],Q=0;Q<2;++Q){for(tt=0;tt<3;++tt)C[3*O+tt]=T[tt];for(tt=0;tt<4;++tt)I[4*O+tt]=F[tt];P[O]=x,et=K[J[Q]],L[2*O]=q*(G*et[0]-W*et[1]+X[0]),L[2*O+1]=q*(W*et[0]+G*et[1]+X[1]),O+=1}}}this.bounds=[u,h],this.points=s,this.pointCount=s.length,this.vertexCount=_,this.lineVertexCount=b,this.pointBuffer.update(C),this.colorBuffer.update(I),this.glyphBuffer.update(L),this.idBuffer.update(P),o.free(C),o.free(I),o.free(L),o.free(P)},_.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()}},3589:function(t,e,r){t.exports=function(t,e){var r=e[0],a=e[1];return new l(t,n(t,r,a,{}),i.mallocUint8(r*a*4))};var n=r(2260),i=r(1888),a=r(9618),o=r(8828).nextPow2;function s(t,e,r,n,i){this.coord=[t,e],this.id=r,this.value=n,this.distance=i}function l(t,e,r){this.gl=t,this.fbo=e,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],r=this.fbo.shape[1];if(r*e*4>this.buffer.length){i.free(this.buffer);for(var n=this.buffer=i.mallocUint8(o(r*e*4)),a=0;ar)for(t=r;te)for(t=e;t=0){for(var T=0|w.type.charAt(w.type.length-1),A=new Array(T),k=0;k=0;)M+=1;b[v]=M}var S=new Array(r.length);function E(){p.program=o.program(f,p._vref,p._fref,_,b);for(var t=0;t=0){if((d=p.charCodeAt(p.length-1)-48)<2||d>4)throw new n("","Invalid data type for attribute "+h+": "+p);s(t,e,f[0],i,d,a,h)}else{if(!(p.indexOf("mat")>=0))throw new n("","Unknown data type for attribute "+h+": "+p);var d;if((d=p.charCodeAt(p.length-1)-48)<2||d>4)throw new n("","Invalid data type for attribute "+h+": "+p);l(t,e,f,i,d,a,h)}}}return a};var n=r(8866);function i(t,e,r,n,i,a){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(t,e,r,n){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,t||a.FLOAT,!!e,r||0,n||0),a.enableVertexAttribArray(o)},a.set=function(t,e,r,n){return this._constFunc(this._locations[this._index],t,e,r,n)},Object.defineProperty(a,"location",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}});var o=[function(t,e,r){return void 0===r.length?t.vertexAttrib1f(e,r):t.vertexAttrib1fv(e,r)},function(t,e,r,n){return void 0===r.length?t.vertexAttrib2f(e,r,n):t.vertexAttrib2fv(e,r)},function(t,e,r,n,i){return void 0===r.length?t.vertexAttrib3f(e,r,n,i):t.vertexAttrib3fv(e,r)},function(t,e,r,n,i,a){return void 0===r.length?t.vertexAttrib4f(e,r,n,i,a):t.vertexAttrib4fv(e,r)}];function s(t,e,r,n,a,s,l){var c=o[a],u=new i(t,e,r,n,a,c);Object.defineProperty(s,l,{set:function(e){return t.disableVertexAttribArray(n[r]),c(t,n[r],e),e},get:function(){return u},enumerable:!0})}function l(t,e,r,n,i,a,o){for(var l=new Array(i),c=new Array(i),u=0;u4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+v);t["uniformMatrix"+y+"fv"](s[h],!1,p);break}throw new i("","Unknown uniform data type for "+name+": "+v)}if((y=v.charCodeAt(v.length-1)-48)<2||y>4)throw new i("","Invalid data type");switch(v.charAt(0)){case"b":case"i":t["uniform"+y+"iv"](s[h],p);break;case"v":t["uniform"+y+"fv"](s[h],p);break;default:throw new i("","Unrecognized data type for vector "+name+": "+v)}}}}}}function u(t,e){if("object"!=typeof e)return[[t,e]];var r=[];for(var n in e){var i=e[n],a=t;parseInt(n)+""===n?a+="["+n+"]":a+="."+n,"object"==typeof i?r.push.apply(r,u(a,i)):r.push([a,i])}return r}function h(t,e,n){if("object"==typeof n){var u=p(n);Object.defineProperty(t,e,{get:a(u),set:c(n),enumerable:!0,configurable:!1})}else s[n]?Object.defineProperty(t,e,{get:l(n),set:c(n),enumerable:!0,configurable:!1}):t[e]=function(t){switch(t){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var e=t.indexOf("vec");if(0<=e&&e<=1&&t.length===4+e){if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new i("","Invalid data type");return"b"===t.charAt(0)?o(r,!1):o(r,0)}if(0===t.indexOf("mat")&&4===t.length){var r;if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+t);return o(r*r,0)}throw new i("","Unknown uniform data type for "+name+": "+t)}}(r[n].type)}function p(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r1){s[0]in a||(a[s[0]]=[]),a=a[s[0]];for(var l=1;l1)for(var l=0;l"u"?r(606):WeakMap),o=0;function s(t,e,r,n,i,a,o){this.id=t,this.src=e,this.type=r,this.shader=n,this.count=a,this.programs=[],this.cache=o}function l(t){this.gl=t,this.shaders=[{},{}],this.programs={}}s.prototype.dispose=function(){if(0==--this.count){for(var t=this.cache,e=t.gl,r=this.programs,n=0,i=r.length;n 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, tubeScale;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * tubePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(tubePosition, 1.0);\n vec4 t_position = view * tubePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = tubePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=n(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=n(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float tubeScale;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n gl_Position = projection * (view * tubePosition);\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=n(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(t,e,r){var n=r(2931),i=r(9970),a=["xyz","xzy","yxz","yzx","zxy","zyx"],o=function(t,e){var r,n=t.length;for(r=0;re)return r-1}return r},s=function(t,e,r){return tr?r:t},l=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;nh-1||v>p-1||x>f-1)return n.create();var _,b,w,T,A,k,M=a[0][d],S=a[0][y],E=a[1][m],C=a[1][v],I=a[2][g],L=(l-M)/(S-M),P=(c-E)/(C-E),z=(u-I)/(a[2][x]-I);switch(isFinite(L)||(L=.5),isFinite(P)||(P=.5),isFinite(z)||(z=.5),r.reversedX&&(d=h-1-d,y=h-1-y),r.reversedY&&(m=p-1-m,v=p-1-v),r.reversedZ&&(g=f-1-g,x=f-1-x),r.filled){case 5:A=g,k=x,w=m*f,T=v*f,_=d*f*p,b=y*f*p;break;case 4:A=g,k=x,_=d*f,b=y*f,w=m*f*h,T=v*f*h;break;case 3:w=m,T=v,A=g*p,k=x*p,_=d*p*f,b=y*p*f;break;case 2:w=m,T=v,_=d*p,b=y*p,A=g*p*h,k=x*p*h;break;case 1:_=d,b=y,A=g*h,k=x*h,w=m*h*f,T=v*h*f;break;default:_=d,b=y,w=m*h,T=v*h,A=g*h*p,k=x*h*p}var D=i[_+w+A],O=i[_+w+k],R=i[_+T+A],F=i[_+T+k],B=i[b+w+A],j=i[b+w+k],N=i[b+T+A],U=i[b+T+k],V=n.create(),q=n.create(),H=n.create(),G=n.create();n.lerp(V,D,B,L),n.lerp(q,O,j,L),n.lerp(H,R,N,L),n.lerp(G,F,U,L);var W=n.create(),Z=n.create();n.lerp(W,V,H,P),n.lerp(Z,q,G,P);var Y=n.create();return n.lerp(Y,W,Z,z),Y}(e,t,f)},x=t.getDivergence||function(t,e){var r=n.create(),i=1e-4;n.add(r,t,[i,0,0]);var a=v(r);n.subtract(a,a,e),n.scale(a,a,1/i),n.add(r,t,[0,i,0]);var o=v(r);n.subtract(o,o,e),n.scale(o,o,1/i),n.add(r,t,[0,0,i]);var s=v(r);return n.subtract(s,s,e),n.scale(s,s,1/i),n.add(r,a,o),n.add(r,r,s),r},_=[],b=e[0][0],w=e[0][1],T=e[0][2],A=e[1][0],k=e[1][1],M=e[1][2],S=10*n.distance(e[0],e[1])/c,E=S*S,C=1,I=0,L=r.length;L>1&&(C=function(t){for(var e=[],r=[],n=[],i={},a={},o={},s=t.length,c=0;cI&&(I=N),B.push(N),_.push({points:D,velocities:O,divergences:B});for(var U=0;U<100*c&&D.lengthA||gk||yM));){U++;var V=n.clone(R),q=n.squaredLength(V);if(0===q)break;q>E&&n.scale(V,V,S/Math.sqrt(q)),n.add(V,V,z),R=v(V),n.squaredDistance(F,V)-E>-1e-4*E&&(D.push(V),F=V,O.push(R),j=x(V,R),N=n.length(j),isFinite(N)&&N>I&&(I=N),B.push(N)),z=V}}var H=function(t,e,r,a){for(var o=0,s=0;s0)for(T=0;T<8;T++){var A=(T+1)%8;c.push(p[T],f[T],f[A],f[A],p[A],p[T]),h.push(v,y,y,y,v,v),d.push(m,g,g,g,m,m);var k=c.length;u.push([k-6,k-5,k-4],[k-3,k-2,k-1])}var M=p;p=f,f=M;var S=v;v=y,y=S;var E=m;m=g,g=E}return{positions:c,cells:u,vectors:h,vertexIntensity:d}}(t,r,a,o)})),h=[],p=[],f=[],d=[];for(s=0;s max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 lowerBound, upperBound;\nuniform float contourTint;\nuniform vec4 contourColor;\nuniform sampler2D colormap;\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform float vertexColor;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n if (\n kill > 0.0 ||\n vColor.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\n ) discard;\n\n vec3 N = normalize(surfaceNormal);\n vec3 V = normalize(eyeDirection);\n vec3 L = normalize(lightDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n //decide how to interpolate color — in vertex or in fragment\n vec4 surfaceColor =\n step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\n step(.5, vertexColor) * vColor;\n\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\n}\n"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute float f;\n\nuniform vec3 objectOffset;\nuniform mat3 permutation;\nuniform mat4 model, view, projection;\nuniform float height, zOffset;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\n worldCoordinate = objectOffset + dataCoordinate;\n mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));\n vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);\n\n vec4 clipPosition = projection * (view * worldPosition);\n clipPosition.z += zOffset;\n\n gl_Position = clipPosition;\n value = f + objectOffset.z;\n kill = -1.0;\n planeCoordinate = uv.zw;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Don't do lighting for contours\n surfaceNormal = vec3(1,0,0);\n eyeDirection = vec3(0,1,0);\n lightDirection = vec3(0,0,1);\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec2 shape;\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 surfaceNormal;\n\nvec2 splitFloat(float v) {\n float vh = 255.0 * v;\n float upper = floor(vh);\n float lower = fract(vh);\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\n}\n\nvoid main() {\n if ((kill > 0.0) ||\n (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\n\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\n gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\n}\n"]);e.createShader=function(t){var e=n(t,a,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createPickShader=function(t){var e=n(t,a,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createContourShader=function(t){var e=n(t,s,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},e.createPickContourShader=function(t){var e=n(t,s,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},9499:function(t,e,r){t.exports=function(t){var e=t.gl,r=v(e),n=_(e),s=x(e),l=b(e),c=i(e),u=a(e,[{buffer:c,size:4,stride:w,offset:0},{buffer:c,size:3,stride:w,offset:16},{buffer:c,size:3,stride:w,offset:28}]),h=i(e),p=a(e,[{buffer:h,size:4,stride:20,offset:0},{buffer:h,size:1,stride:20,offset:16}]),f=i(e),d=a(e,[{buffer:f,size:2,type:e.FLOAT}]),m=o(e,1,S,e.RGBA,e.UNSIGNED_BYTE);m.minFilter=e.LINEAR,m.magFilter=e.LINEAR;var g=new E(e,[0,0],[[0,0,0],[0,0,0]],r,n,c,u,m,s,l,h,p,f,d,[0,0,0]),y={levels:[[],[],[]]};for(var T in t)y[T]=t[T];return y.colormap=y.colormap||"jet",g.update(y),g};var n=r(8828),i=r(2762),a=r(8116),o=r(7766),s=r(1888),l=r(6729),c=r(5298),u=r(9994),h=r(9618),p=r(3711),f=r(6760),d=r(7608),m=r(2478),g=r(6199),y=r(990),v=y.createShader,x=y.createContourShader,_=y.createPickShader,b=y.createPickContourShader,w=40,T=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],A=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],k=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];function M(t,e,r,n,i){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=i}!function(){for(var t=0;t<3;++t){var e=k[t],r=(t+2)%3;e[(t+1)%3+0]=1,e[r+3]=1,e[t+6]=1}}();var S=256;function E(t,e,r,n,i,a,o,l,c,u,p,f,d,m,g){this.gl=t,this.shape=e,this.bounds=r,this.objectOffset=g,this.intensityBounds=[],this._shader=n,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=p,this._contourVAO=f,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new M([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=m,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var C=E.prototype;C.genColormap=function(t,e){var r=!1,n=u([l({colormap:t,nshades:S,format:"rgba"}).map((function(t,n){var i=e?function(t,e){if(!e||!e.length)return 1;for(var r=0;rt&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}(n/255,e):t[3];return i<1&&(r=!0),[t[0],t[1],t[2],255*i]}))]);return c.divseq(n,255),this.hasAlphaScale=r,n},C.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},C.isOpaque=function(){return!this.isTransparent()},C.pickSlots=1,C.setPickBase=function(t){this.pickId=t};var I=[0,0,0],L={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function P(t,e){var r,n,i,a=e.axes&&e.axes.lastCubeProps.axis||I,o=e.showSurface,s=e.showContour;for(r=0;r<3;++r)for(o=o||e.surfaceProject[r],n=0;n<3;++n)s=s||e.contourProject[r][n];for(r=0;r<3;++r){var l=L.projections[r];for(n=0;n<16;++n)l[n]=0;for(n=0;n<4;++n)l[5*n]=1;l[5*r]=0,l[12+r]=e.axesBounds[+(a[r]>0)][r],f(l,t.model,l);var c=L.clipBounds[r];for(i=0;i<2;++i)for(n=0;n<3;++n)c[i][n]=t.clipBounds[i][n];c[0][r]=-1e8,c[1][r]=1e8}return L.showSurface=o,L.showContour=s,L}var z={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},D=T.slice(),O=[1,0,0,0,1,0,0,0,1];function R(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=z;n.model=t.model||T,n.view=t.view||T,n.projection=t.projection||T,n.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],n.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],n.objectOffset=this.objectOffset,n.contourColor=this.contourColor[0],n.inverseModel=d(n.inverseModel,n.model);for(var i=0;i<2;++i)for(var a=n.clipBounds[i],o=0;o<3;++o)a[o]=Math.min(Math.max(this.clipBounds[i][o],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=O,n.vertexColor=this.vertexColor;var s=D;for(f(s,n.view,n.model),f(s,n.projection,s),d(s,s),i=0;i<3;++i)n.eyePosition[i]=s[12+i]/s[15];var l=s[15];for(i=0;i<3;++i)l+=this.lightPosition[i]*s[4*i+3];for(i=0;i<3;++i){var c=s[12+i];for(o=0;o<3;++o)c+=s[4*o+i]*this.lightPosition[o];n.lightPosition[i]=c/l}var u=P(n,this);if(u.showSurface){for(this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(r.TRIANGLES,this._vertexCount),i=0;i<3;++i)!this.surfaceProject[i]||!this.vertexCount||(this._shader.uniforms.model=u.projections[i],this._shader.uniforms.clipBounds=u.clipBounds[i],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var h=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,h.bind(),h.uniforms=n;var p=this._contourVAO;for(p.bind(),i=0;i<3;++i)for(h.uniforms.permutation=k[i],r.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o>4)/16)/255,i=Math.floor(n),a=n-i,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var c=r.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var h=u?a:1-a,p=0;p<2;++p)for(var f=i+u,d=s+p,g=h*(p?l:1-l),y=0;y<3;++y)c[y]+=this._field[y].get(f,d)*g;for(var v=this._pickResult.level,x=0;x<3;++x)if(v[x]=m.le(this.contourLevels[x],c[x]),v[x]<0)this.contourLevels[x].length>0&&(v[x]=0);else if(v[x]Math.abs(b-c[x])&&(v[x]+=1)}for(r.index[0]=a<.5?i:i+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1],y=0;y<3;++y)r.dataCoordinate[y]=this._field[y].get(r.index[0],r.index[1]);return r},C.padField=function(t,e){var r=e.shape.slice(),n=t.shape.slice();c.assign(t.lo(1,1).hi(r[0],r[1]),e),c.assign(t.lo(1).hi(r[0],1),e.hi(r[0],1)),c.assign(t.lo(1,n[1]-1).hi(r[0],1),e.lo(0,r[1]-1).hi(r[0],1)),c.assign(t.lo(0,1).hi(1,r[1]),e.hi(1)),c.assign(t.lo(n[0]-1,1).hi(1,r[1]),e.lo(r[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,n[1]-1,e.get(0,r[1]-1)),t.set(n[0]-1,0,e.get(r[0]-1,0)),t.set(n[0]-1,n[1]-1,e.get(r[0]-1,r[1]-1))},C.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in t&&(this.contourWidth=B(t.contourWidth,Number)),"showContour"in t&&(this.showContour=B(t.showContour,Boolean)),"showSurface"in t&&(this.showSurface=!!t.showSurface),"contourTint"in t&&(this.contourTint=B(t.contourTint,Boolean)),"contourColor"in t&&(this.contourColor=N(t.contourColor)),"contourProject"in t&&(this.contourProject=B(t.contourProject,(function(t){return B(t,Boolean)}))),"surfaceProject"in t&&(this.surfaceProject=t.surfaceProject),"dynamicColor"in t&&(this.dynamicColor=N(t.dynamicColor)),"dynamicTint"in t&&(this.dynamicTint=B(t.dynamicTint,Number)),"dynamicWidth"in t&&(this.dynamicWidth=B(t.dynamicWidth,Number)),"opacity"in t&&(this.opacity=t.opacity),"opacityscale"in t&&(this.opacityscale=t.opacityscale),"colorBounds"in t&&(this.colorBounds=t.colorBounds),"vertexColor"in t&&(this.vertexColor=t.vertexColor?1:0),"colormap"in t&&this._colorMap.setPixels(this.genColormap(t.colormap,this.opacityscale));var e=t.field||t.coords&&t.coords[2]||null,r=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),"field"in t||"coords"in t){var i=(e.shape[0]+2)*(e.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(i))),this._field[2]=h(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var a=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=h(this._field[o].data,[a[0]+2,a[1]+2]);if(t.coords){var l=t.coords;if(!Array.isArray(l)||3!==l.length)throw new Error("gl-surface: invalid coordinates for x/y");for(o=0;o<2;++o){var c=l[o];for(y=0;y<2;++y)if(c.shape[y]!==a[y])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],c)}}else if(t.ticks){var u=t.ticks;if(!Array.isArray(u)||2!==u.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var f=u[o];if((Array.isArray(f)||f.length)&&(f=h(f)),f.shape[0]!==a[o])throw new Error("gl-surface: invalid tick length");var d=h(f.data,a);d.stride[o]=f.stride[0],d.stride[1^o]=0,this.padField(this._field[o],d)}}else{for(o=0;o<2;++o){var m=[0,0];m[o]=1,this._field[o]=h(this._field[o].data,[a[0]+2,a[1]+2],m,0)}this._field[0].set(0,0,0);for(var y=0;y0){for(var xt=0;xt<5;++xt)J.pop();U-=1}continue t}J.push(nt[0],nt[1],ot[0],ot[1],nt[2]),U+=1}}rt.push(U)}this._contourOffsets[Q]=et,this._contourCounts[Q]=rt}var _t=s.mallocFloat(J.length);for(o=0;os||o[1]<0||o[1]>s)throw new Error("gl-texture2d: Invalid texture size");var l=d(o,e.stride.slice()),c=0;"float32"===r?c=t.FLOAT:"float64"===r?(c=t.FLOAT,l=!1,r="float32"):"uint8"===r?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,r="uint8");var h=0;if(2===o.length)h=t.LUMINANCE,o=[o[0],o[1],1],e=n(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===o[2])h=t.ALPHA;else if(2===o[2])h=t.LUMINANCE_ALPHA;else if(3===o[2])h=t.RGB;else{if(4!==o[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");h=t.RGBA}}c===t.FLOAT&&!t.getExtension("OES_texture_float")&&(c=t.UNSIGNED_BYTE,l=!1);var f,g,y=e.size;if(l)f=0===e.offset&&e.data.length===y?e.data:e.data.subarray(e.offset,e.offset+y);else{var v=[o[2],o[2]*o[0],1];g=a.malloc(y,r);var x=n(g,o,v,0);"float32"!==r&&"float64"!==r||c!==t.UNSIGNED_BYTE?i.assign(x,e):u(x,e),f=g.subarray(0,y)}var _=m(t);return t.texImage2D(t.TEXTURE_2D,0,h,o[0],o[1],0,h,c,f),l||a.free(g),new p(t,_,o[0],o[1],h,c)}(t,e)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var o=null,s=null,l=null;function c(t){return typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLVideoElement<"u"&&t instanceof HTMLVideoElement||typeof ImageData<"u"&&t instanceof ImageData}var u=function(t,e){i.muls(t,e,255)};function h(t,e,r){var n=t.gl,i=n.getParameter(n.MAX_TEXTURE_SIZE);if(e<0||e>i||r<0||r>i)throw new Error("gl-texture2d: Invalid texture size");return t._shape=[e,r],t.bind(),n.texImage2D(n.TEXTURE_2D,0,t.format,e,r,0,t.format,t.type,null),t._mipLevels=[0],t}function p(t,e,r,n,i,a){this.gl=t,this.handle=e,this.format=i,this.type=a,this._shape=[r,n],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var f=p.prototype;function d(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function m(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function g(t,e,r,n,i){var a=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>a||r<0||r>a)throw new Error("gl-texture2d: Invalid texture shape");if(i===t.FLOAT&&!t.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,n,e,r,0,n,i,null),new p(t,o,e,r,n,i)}Object.defineProperties(f,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var r=this.gl.getExtension("EXT_texture_filter_anisotropic");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,t),this._wrapS=t}},wrapT:{get:function(){return this._wrapT},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);this._wrapS=t[0],this._wrapT=t[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error("gl-texture2d: Invalid texture shape")}else t=[0|t,0|t];return h(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return h(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,h(this,this._shape[0],t),t}}}),f.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},f.dispose=function(){this.gl.deleteTexture(this.handle)},f.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},f.setPixels=function(t,e,r,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=r,r=0|e[1],e=0|e[0]):(e=e||0,r=r||0),o=o||0;var l=c(t)?t:t.raw;if(l)this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,r,this.format,this.type,l);else{if(!(t.shape&&t.stride&&t.data))throw new Error("gl-texture2d: Unsupported data type");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||r+t.shape[0]>this._shape[0]>>>o||e<0||r<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(t,e,r,o,s,l,c,h){var p=h.dtype,f=h.shape.slice();if(f.length<2||f.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var m=0,g=0,y=d(f,h.stride.slice());if("float32"===p?m=t.FLOAT:"float64"===p?(m=t.FLOAT,y=!1,p="float32"):"uint8"===p?m=t.UNSIGNED_BYTE:(m=t.UNSIGNED_BYTE,y=!1,p="uint8"),2===f.length)g=t.LUMINANCE,f=[f[0],f[1],1],h=n(h.data,f,[h.stride[0],h.stride[1],1],h.offset);else{if(3!==f.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===f[2])g=t.ALPHA;else if(2===f[2])g=t.LUMINANCE_ALPHA;else if(3===f[2])g=t.RGB;else{if(4!==f[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");g=t.RGBA}f[2]}if((g===t.LUMINANCE||g===t.ALPHA)&&(s===t.LUMINANCE||s===t.ALPHA)&&(g=s),g!==s)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var v=h.size,x=c.indexOf(o)<0;if(x&&c.push(o),m===l&&y)0===h.offset&&h.data.length===v?x?t.texImage2D(t.TEXTURE_2D,o,s,f[0],f[1],0,s,l,h.data):t.texSubImage2D(t.TEXTURE_2D,o,e,r,f[0],f[1],s,l,h.data):x?t.texImage2D(t.TEXTURE_2D,o,s,f[0],f[1],0,s,l,h.data.subarray(h.offset,h.offset+v)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,f[0],f[1],s,l,h.data.subarray(h.offset,h.offset+v));else{var _;_=l===t.FLOAT?a.mallocFloat32(v):a.mallocUint8(v);var b=n(_,f,[f[2],f[2]*f[0],1]);m===t.FLOAT&&l===t.UNSIGNED_BYTE?u(b,h):i.assign(b,h),x?t.texImage2D(t.TEXTURE_2D,o,s,f[0],f[1],0,s,l,_.subarray(0,v)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,f[0],f[1],s,l,_.subarray(0,v)),l===t.FLOAT?a.freeFloat32(_):a.freeUint8(_)}}(s,e,r,o,this.format,this.type,this._mipLevels,t)}}},1433:function(t){t.exports=function(t,e,r){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var n=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error("gl-vao: Too many vertex attributes");for(var i=0;i1?0:Math.acos(s)};var n=r(2825),i=r(3536),a=r(244)},9226:function(t){t.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},3126:function(t){t.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},3990:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},1091:function(t){t.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},5911:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t}},5455:function(t,e,r){t.exports=r(7056)},7056:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2];return Math.sqrt(r*r+n*n+i*i)}},4008:function(t,e,r){t.exports=r(6690)},6690:function(t){t.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}},244:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},2613:function(t){t.exports=1e-6},9922:function(t,e,r){t.exports=function(t,e){var r=t[0],i=t[1],a=t[2],o=e[0],s=e[1],l=e[2];return Math.abs(r-o)<=n*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(i-s)<=n*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(a-l)<=n*Math.max(1,Math.abs(a),Math.abs(l))};var n=r(2613)},9265:function(t){t.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},2681:function(t){t.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},5137:function(t,e,r){t.exports=function(t,e,r,i,a,o){var s,l;for(e||(e=3),r||(r=0),l=i?Math.min(i*e+r,t.length):t.length,s=r;s0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a),t}},7636:function(t){t.exports=function(t,e){e=e||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,i=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*i,t[1]=Math.sin(r)*i,t[2]=n*e,t}},6894:function(t){t.exports=function(t,e,r,n){var i=r[1],a=r[2],o=e[1]-i,s=e[2]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=e[0],t[1]=i+o*c-s*l,t[2]=a+o*l+s*c,t}},109:function(t){t.exports=function(t,e,r,n){var i=r[0],a=r[2],o=e[0]-i,s=e[2]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=i+s*l+o*c,t[1]=e[1],t[2]=a+s*c-o*l,t}},8692:function(t){t.exports=function(t,e,r,n){var i=r[0],a=r[1],o=e[0]-i,s=e[1]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=i+o*c-s*l,t[1]=a+o*l+s*c,t[2]=e[2],t}},2447:function(t){t.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},6621:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}},8489:function(t){t.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}},1463:function(t){t.exports=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}},6141:function(t,e,r){t.exports=r(2953)},5486:function(t,e,r){t.exports=r(3066)},2953:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2];return r*r+n*n+i*i}},3066:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}},2229:function(t,e,r){t.exports=r(6843)},6843:function(t){t.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}},492:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2];return t[0]=n*r[0]+i*r[3]+a*r[6],t[1]=n*r[1]+i*r[4]+a*r[7],t[2]=n*r[2]+i*r[5]+a*r[8],t}},5673:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[3]*n+r[7]*i+r[11]*a+r[15];return o=o||1,t[0]=(r[0]*n+r[4]*i+r[8]*a+r[12])/o,t[1]=(r[1]*n+r[5]*i+r[9]*a+r[13])/o,t[2]=(r[2]*n+r[6]*i+r[10]*a+r[14])/o,t}},264:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*a-l*i,h=c*i+l*n-o*a,p=c*a+o*i-s*n,f=-o*n-s*i-l*a;return t[0]=u*c+f*-o+h*-l-p*-s,t[1]=h*c+f*-s+p*-o-u*-l,t[2]=p*c+f*-l+u*-s-h*-o,t}},4361:function(t){t.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t}},2335:function(t){t.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},2933:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},7536:function(t){t.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},4691:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return Math.sqrt(r*r+n*n+i*i+a*a)}},1373:function(t){t.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t[3]=e[3]/r[3],t}},3750:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},3390:function(t){t.exports=function(t,e,r,n){var i=new Float32Array(4);return i[0]=t,i[1]=e,i[2]=r,i[3]=n,i}},9970:function(t,e,r){t.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(t){t.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},6808:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3];return Math.sqrt(e*e+r*r+n*n+i*i)}},2573:function(t){t.exports=function(t,e,r,n){var i=e[0],a=e[1],o=e[2],s=e[3];return t[0]=i+n*(r[0]-i),t[1]=a+n*(r[1]-a),t[2]=o+n*(r[2]-o),t[3]=s+n*(r[3]-s),t}},160:function(t){t.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t[3]=Math.max(e[3],r[3]),t}},2334:function(t){t.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t[3]=Math.min(e[3],r[3]),t}},3576:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t}},1498:function(t){t.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},5177:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r*r+n*n+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),t[0]=r*o,t[1]=n*o,t[2]=i*o,t[3]=a*o),t}},9131:function(t,e,r){var n=r(5177),i=r(9288);t.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),n(t,t),i(t,t,e),t}},9288:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}},4844:function(t){t.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t[3]=e[3]+r[3]*n,t}},4578:function(t){t.exports=function(t,e,r,n,i){return t[0]=e,t[1]=r,t[2]=n,t[3]=i,t}},7960:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return r*r+n*n+i*i+a*a}},483:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3];return e*e+r*r+n*n+i*i}},6860:function(t){t.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t}},5352:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}},4041:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*a-l*i,h=c*i+l*n-o*a,p=c*a+o*i-s*n,f=-o*n-s*i-l*a;return t[0]=u*c+f*-o+h*-l-p*-s,t[1]=h*c+f*-s+p*-o-u*-l,t[2]=p*c+f*-l+u*-s-h*-o,t[3]=e[3],t}},1848:function(t,e,r){var n=r(4905),i=r(6468);t.exports=function(t){for(var e=Array.isArray(t)?t:n(t),r=0;r0)continue;r=t.slice(0,1).join("")}return j(r),L+=r.length,(S=S.slice(r.length)).length}}function q(){if(/[^\d\w_]/.test(e)){var t=S.join("");return M=B[t]?v:F[t]?y:g,j(S.join("")),M=l,A}return S.push(e),r=e,A+1}};var n=r(620),i=r(7827),a=r(6852),o=r(7932),s=r(3508),l=999,c=9999,u=0,h=1,p=2,f=3,d=4,m=5,g=6,y=7,v=8,x=9,_=10,b=11,w=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3508:function(t,e,r){var n=r(6852);n=n.slice().filter((function(t){return!/^(gl\_|texture)/.test(t)})),t.exports=n.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(t){t.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(t,e,r){var n=r(620);t.exports=n.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(t){t.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(t){t.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(t,e,r){var n=r(5874);t.exports=function(t,e){var r=n(e),i=[];return(i=i.concat(r(t))).concat(r(null))}},3236:function(t){t.exports=function(t){"string"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n>1,u=-7,h=r?i-1:0,p=r?-1:1,f=t[e+h];for(h+=p,a=f&(1<<-u)-1,f>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=p,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=p,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,n),a-=c}return(f?-1:1)*o*Math.pow(2,a-n)},e.write=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(o=o<0;t[r+f]=255&o,f+=d,o/=256,c-=8);t[r+f-d]|=128*m}},8954:function(t,e,r){t.exports=function(t,e){var r=t.length;if(0===r)throw new Error("Must have at least d+1 points");var i=t[0].length;if(r<=i)throw new Error("Must input at least d+1 points");var o=t.slice(0,i+1),s=n.apply(void 0,o);if(0===s)throw new Error("Input not in general position");for(var l=new Array(i+1),u=0;u<=i;++u)l[u]=u;s<0&&(l[0]=1,l[1]=0);var h=new a(l,new Array(i+1),!1),p=h.adjacent,f=new Array(i+2);for(u=0;u<=i;++u){for(var d=l.slice(),m=0;m<=i;++m)m===u&&(d[m]=-1);var g=d[0];d[0]=d[1],d[1]=g;var y=new a(d,new Array(i+1),!0);p[u]=y,f[u]=y}for(f[i+1]=h,u=0;u<=i;++u){d=p[u].vertices;var v=p[u].adjacent;for(m=0;m<=i;++m){var x=d[m];if(x<0)v[m]=h;else for(var _=0;_<=i;++_)p[_].vertices.indexOf(x)<0&&(v[m]=p[_])}}var b=new c(i,o,f),w=!!e;for(u=i+1;u0;)for(var s=(t=o.pop()).adjacent,l=0;l<=r;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-n)){for(var u=c.vertices,h=0;h<=r;++h){var p=u[h];i[h]=p<0?e:a[p]}var f=this.orient();if(f>0)return c;c.lastVisited=-n,0===f&&o.push(c)}}return null},u.walk=function(t,e){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,a=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=n;++u)a[u]=i[l[u]];for(s.lastVisited=r,u=0;u<=n;++u){var h=c[u];if(!(h.lastVisited>=r)){var p=a[u];a[u]=t;var f=this.orient();if(a[u]=p,f<0){s=h;continue t}h.boundary?h.lastVisited=-r:h.lastVisited=r}}return}return s},u.addPeaks=function(t,e){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,h=[e];e.lastVisited=r,e.vertices[e.vertices.indexOf(-1)]=r,e.boundary=!1,c.push(e);for(var p=[];h.length>0;){var f=(e=h.pop()).vertices,d=e.adjacent,m=f.indexOf(r);if(!(m<0))for(var g=0;g<=n;++g)if(g!==m){var y=d[g];if(y.boundary&&!(y.lastVisited>=r)){var v=y.vertices;if(y.lastVisited!==-r){for(var x=0,_=0;_<=n;++_)v[_]<0?(x=_,l[_]=t):l[_]=i[v[_]];if(this.orient()>0){v[x]=r,y.boundary=!1,c.push(y),h.push(y),y.lastVisited=r;continue}y.lastVisited=-r}var b=y.adjacent,w=f.slice(),T=d.slice(),A=new a(w,T,!0);u.push(A);var k=b.indexOf(e);if(!(k<0))for(b[k]=A,T[m]=y,w[g]=-1,T[g]=e,d[g]=A,A.flip(),_=0;_<=n;++_){var M=w[_];if(!(M<0||M===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var I=w[C];I<0||C===_||(S[E++]=I)}p.push(new o(S,A,_))}}}}}for(p.sort(s),g=0;g+1=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var h=o[0];o[0]=o[1],o[1]=h}e.push(o)}}return e}},3352:function(t,e,r){var n=r(2478);function i(t,e,r,n,i){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=i,this.count=(e?e.count:0)+(r?r.count:0)+n.length}t.exports=function(t){return t&&0!==t.length?new y(g(t)):new y(null)};var a=i.prototype;function o(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function s(t,e){var r=g(e);t.mid=r.mid,t.left=r.left,t.right=r.right,t.leftPoints=r.leftPoints,t.rightPoints=r.rightPoints,t.count=r.count}function l(t,e){var r=t.intervals([]);r.push(e),s(t,r)}function c(t,e){var r=t.intervals([]),n=r.indexOf(e);return n<0?0:(r.splice(n,1),s(t,r),1)}function u(t,e,r){for(var n=0;n=0&&t[n][1]>=e;--n){var i=r(t[n]);if(i)return i}}function p(t,e){for(var r=0;r>1],a=[],o=[],s=[];for(r=0;r3*(e+1)?l(this,t):this.left.insert(t):this.left=g([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?l(this,t):this.right.insert(t):this.right=g([t]);else{var r=n.ge(this.leftPoints,t,d),i=n.ge(this.rightPoints,t,m);this.leftPoints.splice(r,0,t),this.rightPoints.splice(i,0,t)}},a.remove=function(t){var e=this.count-this.leftPoints;if(t[1]3*(e-1)?c(this,t):2===(s=this.left.remove(t))?(this.left=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?c(this,t):2===(s=this.right.remove(t))?(this.right=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(1===this.count)return this.leftPoints[0]===t?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var r=this,i=this.left;i.right;)r=i,i=i.right;if(r===this)i.right=this.right;else{var a=this.left,s=this.right;r.count-=i.count,r.right=i.left,i.left=a,i.right=s}o(this,i),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?o(this,this.left):o(this,this.right);return 1}for(a=n.ge(this.leftPoints,t,d);athis.mid?this.right&&(r=this.right.queryPoint(t,e))?r:h(this.rightPoints,t,e):p(this.leftPoints,e);var r},a.queryInterval=function(t,e,r){var n;return tthis.mid&&this.right&&(n=this.right.queryInterval(t,e,r))?n:ethis.mid?h(this.rightPoints,t,r):p(this.leftPoints,r)};var v=y.prototype;v.insert=function(t){this.root?this.root.insert(t):this.root=new i(t[0],null,null,[t],[t])},v.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},v.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},v.queryInterval=function(t,e,r){if(t<=e&&this.root)return this.root.queryInterval(t,e,r)},Object.defineProperty(v,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(v,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9507:function(t){t.exports=!0},7163:function(t){function e(t){return!!t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}t.exports=function(t){return null!=t&&(e(t)||function(t){return"function"==typeof t.readFloatLE&&"function"==typeof t.slice&&e(t.slice(0,0))}(t)||!!t._isBuffer)}},5219:function(t){t.exports=function(t){for(var e,r=t.length,n=0;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},395:function(t){t.exports=function(t,e,r){return t*(1-r)+e*r}},2652:function(t,e,r){var n=r(4335),i=r(6864),a=r(1903),o=r(9921),s=r(7608),l=r(5665),c={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},u=i(),h=i(),p=[0,0,0,0],f=[[0,0,0],[0,0,0],[0,0,0]],d=[0,0,0];function m(t,e,r,n,i){t[0]=e[0]*n+r[0]*i,t[1]=e[1]*n+r[1]*i,t[2]=e[2]*n+r[2]*i}t.exports=function(t,e,r,i,g,y){if(e||(e=[0,0,0]),r||(r=[0,0,0]),i||(i=[0,0,0]),g||(g=[0,0,0,1]),y||(y=[0,0,0,1]),!n(u,t)||(a(h,u),h[3]=0,h[7]=0,h[11]=0,h[15]=1,Math.abs(o(h)<1e-8)))return!1;var v=u[3],x=u[7],_=u[11],b=u[12],w=u[13],T=u[14],A=u[15];if(0!==v||0!==x||0!==_){if(p[0]=v,p[1]=x,p[2]=_,p[3]=A,!s(h,h))return!1;l(h,h),function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o}(g,p,h)}else g[0]=g[1]=g[2]=0,g[3]=1;if(e[0]=b,e[1]=w,e[2]=T,function(t,e){t[0][0]=e[0],t[0][1]=e[1],t[0][2]=e[2],t[1][0]=e[4],t[1][1]=e[5],t[1][2]=e[6],t[2][0]=e[8],t[2][1]=e[9],t[2][2]=e[10]}(f,u),r[0]=c.length(f[0]),c.normalize(f[0],f[0]),i[0]=c.dot(f[0],f[1]),m(f[1],f[1],f[0],1,-i[0]),r[1]=c.length(f[1]),c.normalize(f[1],f[1]),i[0]/=r[1],i[1]=c.dot(f[0],f[2]),m(f[2],f[2],f[0],1,-i[1]),i[2]=c.dot(f[1],f[2]),m(f[2],f[2],f[1],1,-i[2]),r[2]=c.length(f[2]),c.normalize(f[2],f[2]),i[1]/=r[2],i[2]/=r[2],c.cross(d,f[1],f[2]),c.dot(f[0],d)<0)for(var k=0;k<3;k++)r[k]*=-1,f[k][0]*=-1,f[k][1]*=-1,f[k][2]*=-1;return y[0]=.5*Math.sqrt(Math.max(1+f[0][0]-f[1][1]-f[2][2],0)),y[1]=.5*Math.sqrt(Math.max(1-f[0][0]+f[1][1]-f[2][2],0)),y[2]=.5*Math.sqrt(Math.max(1-f[0][0]-f[1][1]+f[2][2],0)),y[3]=.5*Math.sqrt(Math.max(1+f[0][0]+f[1][1]+f[2][2],0)),f[2][1]>f[1][2]&&(y[0]=-y[0]),f[0][2]>f[2][0]&&(y[1]=-y[1]),f[1][0]>f[0][1]&&(y[2]=-y[2]),!0}},4335:function(t){t.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,i=0;i<16;i++)t[i]=e[i]*n;return!0}},7442:function(t,e,r){var n=r(6658),i=r(7182),a=r(2652),o=r(9921),s=r(8648),l=h(),c=h(),u=h();function h(){return{translate:p(),scale:p(1),skew:p(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function p(t){return[t||0,t||0,t||0]}t.exports=function(t,e,r,h){if(0===o(e)||0===o(r))return!1;var p=a(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),f=a(r,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!p||!f||(n(u.translate,l.translate,c.translate,h),n(u.skew,l.skew,c.skew,h),n(u.scale,l.scale,c.scale,h),n(u.perspective,l.perspective,c.perspective,h),s(u.quaternion,l.quaternion,c.quaternion,h),i(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),0))}},7182:function(t,e,r){var n={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},i=(n.create(),n.create());t.exports=function(t,e,r,a,o,s){return n.identity(t),n.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],n.identity(i),0!==a[2]&&(i[9]=a[2],n.multiply(t,t,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],n.multiply(t,t,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],n.multiply(t,t,i)),n.scale(t,t,r),t}},1811:function(t,e,r){var n=r(2478),i=r(7442),a=r(7608),o=r(5567),s=r(2408),l=r(7089),c=r(6582),u=r(7656),h=(r(2504),r(3536)),p=[0,0,0];function f(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}t.exports=function(t){return new f((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var d=f.prototype;d.recalcMatrix=function(t){var e=this._time,r=n.le(e,t),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===e.length-1)for(var l=16*r,c=0;c<16;++c)o[c]=s[l++];else{var u=e[r+1]-e[r],p=(l=16*r,this.prevMatrix),f=!0;for(c=0;c<16;++c)p[c]=s[l++];var d=this.nextMatrix;for(c=0;c<16;++c)d[c]=s[l++],f=f&&p[c]===d[c];if(u<1e-6||f)for(c=0;c<16;++c)o[c]=p[c];else i(o,p,d,(t-e[r])/u)}var m=this.computedUp;m[0]=o[1],m[1]=o[5],m[2]=o[9],h(m,m);var g=this.computedInverse;a(g,o);var y=this.computedEye,v=g[15];y[0]=g[12]/v,y[1]=g[13]/v,y[2]=g[14]/v;var x=this.computedCenter,_=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)x[c]=y[c]-o[2+4*c]*_}},d.idle=function(t){if(!(t1&&n(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&n(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var h=0,p=(i=0,o.length);i0;--f)r[h++]=s[f];return r};var n=r(3250)[3]},351:function(t,e,r){t.exports=function(t,e){e||(e=t,t=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return"altKey"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),"shiftKey"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),"ctrlKey"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),"metaKey"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=n.x(s),u=n.y(s);"buttons"in s&&(t=0|s.buttons),(t!==r||c!==i||u!==a||l(s))&&(r=0|t,i=c||0,a=u||0,e&&e(r,i,a,o))}function u(t){c(0,t)}function h(){(r||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,r=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function p(t){l(t)&&e&&e(r,i,a,o)}function f(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function m(t){c(r&~n.buttons(t),t)}function g(){s||(s=!0,t.addEventListener("mousemove",f),t.addEventListener("mousedown",d),t.addEventListener("mouseup",m),t.addEventListener("mouseleave",u),t.addEventListener("mouseenter",u),t.addEventListener("mouseout",u),t.addEventListener("mouseover",u),t.addEventListener("blur",h),t.addEventListener("keyup",p),t.addEventListener("keydown",p),t.addEventListener("keypress",p),t!==window&&(window.addEventListener("blur",h),window.addEventListener("keyup",p),window.addEventListener("keydown",p),window.addEventListener("keypress",p)))}g();var y={element:t};return Object.defineProperties(y,{enabled:{get:function(){return s},set:function(e){e?g():s&&(s=!1,t.removeEventListener("mousemove",f),t.removeEventListener("mousedown",d),t.removeEventListener("mouseup",m),t.removeEventListener("mouseleave",u),t.removeEventListener("mouseenter",u),t.removeEventListener("mouseout",u),t.removeEventListener("mouseover",u),t.removeEventListener("blur",h),t.removeEventListener("keyup",p),t.removeEventListener("keydown",p),t.removeEventListener("keypress",p),t!==window&&(window.removeEventListener("blur",h),window.removeEventListener("keyup",p),window.removeEventListener("keydown",p),window.removeEventListener("keypress",p)))},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),y};var n=r(4687)},24:function(t){var e={left:0,top:0};t.exports=function(t,r,n){r=r||t.currentTarget||t.srcElement,Array.isArray(n)||(n=[0,0]);var i=t.clientX||0,a=t.clientY||0,o=function(t){return t===window||t===document||t===document.body?e:t.getBoundingClientRect()}(r);return n[0]=i-o.left,n[1]=a-o.top,n}},4687:function(t,e){function r(t){return t.target||t.srcElement||window}e.buttons=function(t){if("object"==typeof t){if("buttons"in t)return t.buttons;if("which"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1< 0"),"function"!=typeof t.vertex&&e("Must specify vertex creation function"),"function"!=typeof t.cell&&e("Must specify cell creation function"),"function"!=typeof t.phase&&e("Must specify phase function");for(var o=t.getters||[],s=new Array(a),l=0;l=0?s[l]=!0:s[l]=!1;return function(t,e,r,a,o,s){var l=[s,o].join(",");return(0,i[l])(t,e,r,n.mallocUint32,n.freeUint32)}(t.vertex,t.cell,t.phase,0,r,s)};var i={"false,0,1":function(t,e,r,n,i){return function(a,o,s,l){var c,u=0|a.shape[0],h=0|a.shape[1],p=a.data,f=0|a.offset,d=0|a.stride[0],m=0|a.stride[1],g=f,y=0|-d,v=0,x=0|-m,_=0,b=-d-m|0,w=0,T=0|d,A=m-d*u|0,k=0,M=0,S=0,E=2*u|0,C=n(E),I=n(E),L=0,P=0,z=-1,D=-1,O=0,R=0|-u,F=0|u,B=0,j=-u-1|0,N=u-1|0,U=0,V=0,q=0;for(k=0;k0){if(M=1,C[L++]=r(p[g],o,s,l),g+=T,u>0)for(k=1,c=p[g],P=C[L]=r(c,o,s,l),O=C[L+z],B=C[L+R],U=C[L+j],(P!==O||P!==B||P!==U)&&(v=p[g+y],_=p[g+x],w=p[g+b],t(k,M,c,v,_,w,P,O,B,U,o,s,l),V=I[L]=S++),L+=1,g+=T,k=2;k0)for(k=1,c=p[g],P=C[L]=r(c,o,s,l),O=C[L+z],B=C[L+R],U=C[L+j],(P!==O||P!==B||P!==U)&&(v=p[g+y],_=p[g+x],w=p[g+b],t(k,M,c,v,_,w,P,O,B,U,o,s,l),V=I[L]=S++,U!==B&&e(I[L+R],V,_,w,B,U,o,s,l)),L+=1,g+=T,k=2;k0){if(k=1,C[L++]=r(p[g],o,s,l),g+=T,h>0)for(M=1,c=p[g],P=C[L]=r(c,o,s,l),B=C[L+R],O=C[L+z],U=C[L+j],(P!==B||P!==O||P!==U)&&(v=p[g+y],_=p[g+x],w=p[g+b],t(k,M,c,v,_,w,P,B,O,U,o,s,l),V=I[L]=S++),L+=1,g+=T,M=2;M0)for(M=1,c=p[g],P=C[L]=r(c,o,s,l),B=C[L+R],O=C[L+z],U=C[L+j],(P!==B||P!==O||P!==U)&&(v=p[g+y],_=p[g+x],w=p[g+b],t(k,M,c,v,_,w,P,B,O,U,o,s,l),V=I[L]=S++,U!==B&&e(I[L+R],V,w,v,U,B,o,s,l)),L+=1,g+=T,M=2;M2&&a[1]>2&&n(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(r(i.pick(0,-1).lo(1).hi(a[1]-2),t.pick(0,-1,1).lo(1).hi(a[1]-2)),e(t.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(r(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),t.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),e(t.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(r(i.pick(-1,0).lo(1).hi(a[0]-2),t.pick(-1,0,0).lo(1).hi(a[0]-2)),e(t.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(r(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),t.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),e(t.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),t.set(0,0,0,0),t.set(0,0,1,0),t.set(a[0]-1,0,0,0),t.set(a[0]-1,0,1,0),t.set(0,a[1]-1,0,0),t.set(0,a[1]-1,1,0),t.set(a[0]-1,a[1]-1,0,0),t.set(a[0]-1,a[1]-1,1,0),t}}t.exports=function(t,e,r){if(Array.isArray(r)||(r=n(e.dimension,"string"==typeof r?r:"clamp")),0===e.size)return t;if(0===e.dimension)return t.set(0),t;var i=function(t){var e=t.join();if(a=u[e])return a;for(var r=t.length,n=[h,p],i=1;i<=r;++i)n.push(f(i));var a=d.apply(void 0,n);return u[e]=a,a}(r);return i(t,e)}},4317:function(t){function e(t,e){var r=Math.floor(e),n=e-r,i=0<=r&&r0;){x<64?(l=x,x=0):(l=64,x-=64);for(var _=0|t[1];_>0;){_<64?(c=_,_=0):(c=64,_-=64),n=y+x*h+_*p,o=v+x*d+_*m;var b=0,w=0,T=0,A=f,k=h-u*f,M=p-l*h,S=g,E=d-u*g,C=m-l*d;for(T=0;T0;){m<64?(l=m,m=0):(l=64,m-=64);for(var g=0|t[0];g>0;){g<64?(s=g,g=0):(s=64,g-=64),n=f+m*u+g*c,o=d+m*p+g*h;var y=0,v=0,x=u,_=c-l*u,b=p,w=h-l*p;for(v=0;v0;){v<64?(c=v,v=0):(c=64,v-=64);for(var x=0|t[0];x>0;){x<64?(s=x,x=0):(s=64,x-=64);for(var _=0|t[1];_>0;){_<64?(l=_,_=0):(l=64,_-=64),n=g+v*p+x*u+_*h,o=y+v*m+x*f+_*d;var b=0,w=0,T=0,A=p,k=u-c*p,M=h-s*u,S=m,E=f-c*m,C=d-s*f;for(T=0;Tr;){y=0,v=m-o;e:for(g=0;g_)break e;v+=h,y+=p}for(y=m,v=m-o,g=0;g>1,H=q-N,G=q+N,W=U,Z=H,Y=q,X=G,$=V,K=i+1,J=a-1,Q=!0,tt=0,et=0,rt=0,nt=h,it=e(nt),at=e(nt);k=l*W,M=l*Z,j=s;t:for(A=0;A0){g=W,W=Z,Z=g;break t}if(rt<0)break t;j+=f}k=l*X,M=l*$,j=s;t:for(A=0;A0){g=X,X=$,$=g;break t}if(rt<0)break t;j+=f}k=l*W,M=l*Y,j=s;t:for(A=0;A0){g=W,W=Y,Y=g;break t}if(rt<0)break t;j+=f}k=l*Z,M=l*Y,j=s;t:for(A=0;A0){g=Z,Z=Y,Y=g;break t}if(rt<0)break t;j+=f}k=l*W,M=l*X,j=s;t:for(A=0;A0){g=W,W=X,X=g;break t}if(rt<0)break t;j+=f}k=l*Y,M=l*X,j=s;t:for(A=0;A0){g=Y,Y=X,X=g;break t}if(rt<0)break t;j+=f}k=l*Z,M=l*$,j=s;t:for(A=0;A0){g=Z,Z=$,$=g;break t}if(rt<0)break t;j+=f}k=l*Z,M=l*Y,j=s;t:for(A=0;A0){g=Z,Z=Y,Y=g;break t}if(rt<0)break t;j+=f}k=l*X,M=l*$,j=s;t:for(A=0;A0){g=X,X=$,$=g;break t}if(rt<0)break t;j+=f}for(k=l*W,M=l*Z,S=l*Y,E=l*X,C=l*$,I=l*U,L=l*q,P=l*V,B=0,j=s,A=0;A0)){if(rt<0){for(k=l*_,M=l*K,S=l*J,j=s,A=0;A0)for(;;){for(b=s+J*l,B=0,A=0;A0)){for(b=s+J*l,B=0,A=0;AV){t:for(;;){for(b=s+K*l,B=0,j=s,A=0;A1&&n?s(r,n[0],n[1]):s(r)}(t,e,l);return n(l,c)}},446:function(t,e,r){var n=r(7640),i={};t.exports=function(t){var e=t.order,r=t.dtype,a=[e,r].join(":"),o=i[a];return o||(i[a]=o=n(e,r)),o(t),t}},9618:function(t,e,r){var n=r(7163),i=typeof Float64Array<"u";function a(t,e){return t[0]-e[0]}function o(){var t,e=this.stride,r=new Array(e.length);for(t=0;t=0&&(e+=a*(r=0|t),i-=r),new n(this.data,i,a,e)},i.step=function(t){var e=this.shape[0],r=this.stride[0],i=this.offset,a=0,o=Math.ceil;return"number"==typeof t&&((a=0|t)<0?(i+=r*(e-1),e=o(-e/a)):e=o(e/a),r*=a),new n(this.data,e,r,i)},i.transpose=function(t){t=void 0===t?0:0|t;var e=this.shape,r=this.stride;return new n(this.data,e[t],r[t],this.offset)},i.pick=function(t){var r=[],n=[],i=this.offset;return"number"==typeof t&&t>=0?i=i+this.stride[0]*t|0:(r.push(this.shape[0]),n.push(this.stride[0])),(0,e[r.length+1])(this.data,r,n,i)},function(t,e,r,i){return new n(t,e[0],r[0],i)}},2:function(t,e,r){function n(t,e,r,n,i,a){this.data=t,this.shape=[e,r],this.stride=[n,i],this.offset=0|a}var i=n.prototype;return i.dtype=t,i.dimension=2,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(i,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),i.set=function(e,r,n){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r,n):this.data[this.offset+this.stride[0]*e+this.stride[1]*r]=n},i.get=function(e,r){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r):this.data[this.offset+this.stride[0]*e+this.stride[1]*r]},i.index=function(t,e){return this.offset+this.stride[0]*t+this.stride[1]*e},i.hi=function(t,e){return new n(this.data,"number"!=typeof t||t<0?this.shape[0]:0|t,"number"!=typeof e||e<0?this.shape[1]:0|e,this.stride[0],this.stride[1],this.offset)},i.lo=function(t,e){var r=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return"number"==typeof t&&t>=0&&(r+=s*(i=0|t),a-=i),"number"==typeof e&&e>=0&&(r+=l*(i=0|e),o-=i),new n(this.data,a,o,s,l,r)},i.step=function(t,e){var r=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,c=Math.ceil;return"number"==typeof t&&((l=0|t)<0?(s+=a*(r-1),r=c(-r/l)):r=c(r/l),a*=l),"number"==typeof e&&((l=0|e)<0?(s+=o*(i-1),i=c(-i/l)):i=c(i/l),o*=l),new n(this.data,r,i,a,o,s)},i.transpose=function(t,e){t=void 0===t?0:0|t,e=void 0===e?1:0|e;var r=this.shape,i=this.stride;return new n(this.data,r[t],r[e],i[t],i[e],this.offset)},i.pick=function(t,r){var n=[],i=[],a=this.offset;return"number"==typeof t&&t>=0?a=a+this.stride[0]*t|0:(n.push(this.shape[0]),i.push(this.stride[0])),"number"==typeof r&&r>=0?a=a+this.stride[1]*r|0:(n.push(this.shape[1]),i.push(this.stride[1])),(0,e[n.length+1])(this.data,n,i,a)},function(t,e,r,i){return new n(t,e[0],e[1],r[0],r[1],i)}},3:function(t,e,r){function n(t,e,r,n,i,a,o,s){this.data=t,this.shape=[e,r,n],this.stride=[i,a,o],this.offset=0|s}var i=n.prototype;return i.dtype=t,i.dimension=3,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(i,"order",{get:function(){var t=Math.abs(this.stride[0]),e=Math.abs(this.stride[1]),r=Math.abs(this.stride[2]);return t>e?e>r?[2,1,0]:t>r?[1,2,0]:[1,0,2]:t>r?[2,0,1]:r>e?[0,1,2]:[0,2,1]}}),i.set=function(e,r,n,i){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n,i):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n]=i},i.get=function(e,r,n){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n]},i.index=function(t,e,r){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r},i.hi=function(t,e,r){return new n(this.data,"number"!=typeof t||t<0?this.shape[0]:0|t,"number"!=typeof e||e<0?this.shape[1]:0|e,"number"!=typeof r||r<0?this.shape[2]:0|r,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(t,e,r){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.stride[0],u=this.stride[1],h=this.stride[2];return"number"==typeof t&&t>=0&&(i+=c*(a=0|t),o-=a),"number"==typeof e&&e>=0&&(i+=u*(a=0|e),s-=a),"number"==typeof r&&r>=0&&(i+=h*(a=0|r),l-=a),new n(this.data,o,s,l,c,u,h,i)},i.step=function(t,e,r){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],c=this.stride[2],u=this.offset,h=0,p=Math.ceil;return"number"==typeof t&&((h=0|t)<0?(u+=s*(i-1),i=p(-i/h)):i=p(i/h),s*=h),"number"==typeof e&&((h=0|e)<0?(u+=l*(a-1),a=p(-a/h)):a=p(a/h),l*=h),"number"==typeof r&&((h=0|r)<0?(u+=c*(o-1),o=p(-o/h)):o=p(o/h),c*=h),new n(this.data,i,a,o,s,l,c,u)},i.transpose=function(t,e,r){t=void 0===t?0:0|t,e=void 0===e?1:0|e,r=void 0===r?2:0|r;var i=this.shape,a=this.stride;return new n(this.data,i[t],i[e],i[r],a[t],a[e],a[r],this.offset)},i.pick=function(t,r,n){var i=[],a=[],o=this.offset;return"number"==typeof t&&t>=0?o=o+this.stride[0]*t|0:(i.push(this.shape[0]),a.push(this.stride[0])),"number"==typeof r&&r>=0?o=o+this.stride[1]*r|0:(i.push(this.shape[1]),a.push(this.stride[1])),"number"==typeof n&&n>=0?o=o+this.stride[2]*n|0:(i.push(this.shape[2]),a.push(this.stride[2])),(0,e[i.length+1])(this.data,i,a,o)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],r[0],r[1],r[2],i)}},4:function(t,e,r){function n(t,e,r,n,i,a,o,s,l,c){this.data=t,this.shape=[e,r,n,i],this.stride=[a,o,s,l],this.offset=0|c}var i=n.prototype;return i.dtype=t,i.dimension=4,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(i,"order",{get:r}),i.set=function(e,r,n,i,a){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]=a},i.get=function(e,r,n,i){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]},i.index=function(t,e,r,n){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r+this.stride[3]*n},i.hi=function(t,e,r,i){return new n(this.data,"number"!=typeof t||t<0?this.shape[0]:0|t,"number"!=typeof e||e<0?this.shape[1]:0|e,"number"!=typeof r||r<0?this.shape[2]:0|r,"number"!=typeof i||i<0?this.shape[3]:0|i,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},i.lo=function(t,e,r,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],c=this.shape[2],u=this.shape[3],h=this.stride[0],p=this.stride[1],f=this.stride[2],d=this.stride[3];return"number"==typeof t&&t>=0&&(a+=h*(o=0|t),s-=o),"number"==typeof e&&e>=0&&(a+=p*(o=0|e),l-=o),"number"==typeof r&&r>=0&&(a+=f*(o=0|r),c-=o),"number"==typeof i&&i>=0&&(a+=d*(o=0|i),u-=o),new n(this.data,s,l,c,u,h,p,f,d,a)},i.step=function(t,e,r,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],c=this.stride[0],u=this.stride[1],h=this.stride[2],p=this.stride[3],f=this.offset,d=0,m=Math.ceil;return"number"==typeof t&&((d=0|t)<0?(f+=c*(a-1),a=m(-a/d)):a=m(a/d),c*=d),"number"==typeof e&&((d=0|e)<0?(f+=u*(o-1),o=m(-o/d)):o=m(o/d),u*=d),"number"==typeof r&&((d=0|r)<0?(f+=h*(s-1),s=m(-s/d)):s=m(s/d),h*=d),"number"==typeof i&&((d=0|i)<0?(f+=p*(l-1),l=m(-l/d)):l=m(l/d),p*=d),new n(this.data,a,o,s,l,c,u,h,p,f)},i.transpose=function(t,e,r,i){t=void 0===t?0:0|t,e=void 0===e?1:0|e,r=void 0===r?2:0|r,i=void 0===i?3:0|i;var a=this.shape,o=this.stride;return new n(this.data,a[t],a[e],a[r],a[i],o[t],o[e],o[r],o[i],this.offset)},i.pick=function(t,r,n,i){var a=[],o=[],s=this.offset;return"number"==typeof t&&t>=0?s=s+this.stride[0]*t|0:(a.push(this.shape[0]),o.push(this.stride[0])),"number"==typeof r&&r>=0?s=s+this.stride[1]*r|0:(a.push(this.shape[1]),o.push(this.stride[1])),"number"==typeof n&&n>=0?s=s+this.stride[2]*n|0:(a.push(this.shape[2]),o.push(this.stride[2])),"number"==typeof i&&i>=0?s=s+this.stride[3]*i|0:(a.push(this.shape[3]),o.push(this.stride[3])),(0,e[a.length+1])(this.data,a,o,s)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],e[3],r[0],r[1],r[2],r[3],i)}},5:function(t,e,r){function n(t,e,r,n,i,a,o,s,l,c,u,h){this.data=t,this.shape=[e,r,n,i,a],this.stride=[o,s,l,c,u],this.offset=0|h}var i=n.prototype;return i.dtype=t,i.dimension=5,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(i,"order",{get:r}),i.set=function(e,r,n,i,a,o){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(e,r,n,i,a){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]},i.index=function(t,e,r,n,i){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r+this.stride[3]*n+this.stride[4]*i},i.hi=function(t,e,r,i,a){return new n(this.data,"number"!=typeof t||t<0?this.shape[0]:0|t,"number"!=typeof e||e<0?this.shape[1]:0|e,"number"!=typeof r||r<0?this.shape[2]:0|r,"number"!=typeof i||i<0?this.shape[3]:0|i,"number"!=typeof a||a<0?this.shape[4]:0|a,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},i.lo=function(t,e,r,i,a){var o=this.offset,s=0,l=this.shape[0],c=this.shape[1],u=this.shape[2],h=this.shape[3],p=this.shape[4],f=this.stride[0],d=this.stride[1],m=this.stride[2],g=this.stride[3],y=this.stride[4];return"number"==typeof t&&t>=0&&(o+=f*(s=0|t),l-=s),"number"==typeof e&&e>=0&&(o+=d*(s=0|e),c-=s),"number"==typeof r&&r>=0&&(o+=m*(s=0|r),u-=s),"number"==typeof i&&i>=0&&(o+=g*(s=0|i),h-=s),"number"==typeof a&&a>=0&&(o+=y*(s=0|a),p-=s),new n(this.data,l,c,u,h,p,f,d,m,g,y,o)},i.step=function(t,e,r,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.shape[3],u=this.shape[4],h=this.stride[0],p=this.stride[1],f=this.stride[2],d=this.stride[3],m=this.stride[4],g=this.offset,y=0,v=Math.ceil;return"number"==typeof t&&((y=0|t)<0?(g+=h*(o-1),o=v(-o/y)):o=v(o/y),h*=y),"number"==typeof e&&((y=0|e)<0?(g+=p*(s-1),s=v(-s/y)):s=v(s/y),p*=y),"number"==typeof r&&((y=0|r)<0?(g+=f*(l-1),l=v(-l/y)):l=v(l/y),f*=y),"number"==typeof i&&((y=0|i)<0?(g+=d*(c-1),c=v(-c/y)):c=v(c/y),d*=y),"number"==typeof a&&((y=0|a)<0?(g+=m*(u-1),u=v(-u/y)):u=v(u/y),m*=y),new n(this.data,o,s,l,c,u,h,p,f,d,m,g)},i.transpose=function(t,e,r,i,a){t=void 0===t?0:0|t,e=void 0===e?1:0|e,r=void 0===r?2:0|r,i=void 0===i?3:0|i,a=void 0===a?4:0|a;var o=this.shape,s=this.stride;return new n(this.data,o[t],o[e],o[r],o[i],o[a],s[t],s[e],s[r],s[i],s[a],this.offset)},i.pick=function(t,r,n,i,a){var o=[],s=[],l=this.offset;return"number"==typeof t&&t>=0?l=l+this.stride[0]*t|0:(o.push(this.shape[0]),s.push(this.stride[0])),"number"==typeof r&&r>=0?l=l+this.stride[1]*r|0:(o.push(this.shape[1]),s.push(this.stride[1])),"number"==typeof n&&n>=0?l=l+this.stride[2]*n|0:(o.push(this.shape[2]),s.push(this.stride[2])),"number"==typeof i&&i>=0?l=l+this.stride[3]*i|0:(o.push(this.shape[3]),s.push(this.stride[3])),"number"==typeof a&&a>=0?l=l+this.stride[4]*a|0:(o.push(this.shape[4]),s.push(this.stride[4])),(0,e[o.length+1])(this.data,o,s,l)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],e[3],e[4],r[0],r[1],r[2],r[3],r[4],i)}}};function l(t,e){var r=-1===e?"T":String(e),n=s[r];return-1===e?n(t):0===e?n(t,c[t][0]):n(t,c[t],o)}var c={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};t.exports=function(t,e,r,a){if(void 0===t)return(0,c.array[0])([]);"number"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===r){r=new Array(o);for(var s=o-1,u=1;s>=0;--s)r[s]=u,u*=e[s]}if(void 0===a)for(a=0,s=0;s>>0;t.exports=function(t,e){if(isNaN(t)||isNaN(e))return NaN;if(t===e)return t;if(0===t)return e<0?-i:i;var r=n.hi(t),o=n.lo(t);return e>t==t>0?o===a?(r+=1,o=0):o+=1:0===o?(o=a,r-=1):o-=1,n.pack(o,r)}},8406:function(t,e){e.vertexNormals=function(t,e,r){for(var n=e.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa){var _=i[c],b=1/Math.sqrt(g*v);for(x=0;x<3;++x){var w=(x+1)%3,T=(x+2)%3;_[x]+=b*(y[w]*m[T]-y[T]*m[w])}}}for(o=0;oa)for(b=1/Math.sqrt(A),x=0;x<3;++x)_[x]*=b;else for(x=0;x<3;++x)_[x]=0}return i},e.faceNormals=function(t,e,r){for(var n=t.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;oa?1/Math.sqrt(f):0,c=0;c<3;++c)p[c]*=f;i[o]=p}return i}},4081:function(t){t.exports=function(t,e,r,n,i,a,o,s,l,c){var u=e+a+c;if(h>0){var h=Math.sqrt(u+1);t[0]=.5*(o-l)/h,t[1]=.5*(s-n)/h,t[2]=.5*(r-a)/h,t[3]=.5*h}else{var p=Math.max(e,a,c);h=Math.sqrt(2*p-u+1),e>=p?(t[0]=.5*h,t[1]=.5*(i+r)/h,t[2]=.5*(s+n)/h,t[3]=.5*(o-l)/h):a>=p?(t[0]=.5*(r+i)/h,t[1]=.5*h,t[2]=.5*(l+o)/h,t[3]=.5*(s-n)/h):(t[0]=.5*(n+s)/h,t[1]=.5*(o+l)/h,t[2]=.5*h,t[3]=.5*(r-i)/h)}return t}},9977:function(t,e,r){t.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.rotation||[0,0,0,1],n=t.radius||1;e=[].slice.call(e,0,3),u(r=[].slice.call(r,0,4),r);var i=new h(r,e,Math.log(n));return i.setDistanceLimits(t.zoomMin,t.zoomMax),("eye"in t||"up"in t)&&i.lookAt(0,t.eye,t.center,t.up),i};var n=r(9215),i=r(6582),a=r(7399),o=r(7608),s=r(4081);function l(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function c(t,e,r,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2)+Math.pow(n,2))}function u(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=c(r,n,i,a);o>1e-6?(t[0]=r/o,t[1]=n/o,t[2]=i/o,t[3]=a/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function h(t,e,r){this.radius=n([r]),this.center=n(e),this.rotation=n(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var p=h.prototype;p.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},p.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var r=this.computedMatrix;a(r,e);var n=this.computedCenter,i=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);i[0]=n[0]+s*r[2],i[1]=n[1]+s*r[6],i[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;l<3;++l){for(var c=0,h=0;h<3;++h)c+=r[l+4*h]*i[h];r[12+l]=-c}},p.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r},p.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},p.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},p.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],c=l(a,o,s);a/=c,o/=c,s/=c;var u=i[0],h=i[4],p=i[8],f=u*a+h*o+p*s,d=l(u-=a*f,h-=o*f,p-=s*f);u/=d,h/=d,p/=d;var m=i[2],g=i[6],y=i[10],v=m*a+g*o+y*s,x=m*u+g*h+y*p,_=l(m-=v*a+x*u,g-=v*o+x*h,y-=v*s+x*p);m/=_,g/=_,y/=_;var b=u*e+a*r,w=h*e+o*r,T=p*e+s*r;this.center.move(t,b,w,T);var A=Math.exp(this.computedRadius[0]);A=Math.max(1e-4,A+n),this.radius.set(t,Math.log(A))},p.rotate=function(t,e,r,n){this.recalcMatrix(t),e=e||0,r=r||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],u=i[1],h=i[5],p=i[9],f=i[2],d=i[6],m=i[10],g=e*a+r*u,y=e*o+r*h,v=e*s+r*p,x=-(d*v-m*y),_=-(m*g-f*v),b=-(f*y-d*g),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(_,2)-Math.pow(b,2))),T=c(x,_,b,w);T>1e-6?(x/=T,_/=T,b/=T,w/=T):(x=_=b=0,w=1);var A=this.computedRotation,k=A[0],M=A[1],S=A[2],E=A[3],C=k*w+E*x+M*b-S*_,I=M*w+E*_+S*x-k*b,L=S*w+E*b+k*_-M*x,P=E*w-k*x-M*_-S*b;if(n){x=f,_=d,b=m;var z=Math.sin(n)/l(x,_,b);x*=z,_*=z,b*=z,P=P*(w=Math.cos(e))-(C=C*w+P*x+I*b-L*_)*x-(I=I*w+P*_+L*x-C*b)*_-(L=L*w+P*b+C*_-I*x)*b}var D=c(C,I,L,P);D>1e-6?(C/=D,I/=D,L/=D,P/=D):(C=I=L=0,P=1),this.rotation.set(t,C,I,L,P)},p.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var a=this.computedMatrix;i(a,e,r,n);var o=this.computedRotation;s(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(r[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,r[0],r[1],r[2])},p.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},p.setMatrix=function(t,e){var r=this.computedRotation;s(r,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(r,r),this.rotation.set(t,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,e);var i=n[15];if(Math.abs(i)>1e-6){var a=n[12]/i,l=n[13]/i,c=n[14]/i;this.recalcMatrix(t);var h=Math.exp(this.computedRadius[0]);this.center.set(t,a-n[2]*h,l-n[6]*h,c-n[10]*h),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},p.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},p.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},p.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},p.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},p.fromJSON=function(t){var e=this.lastT(),r=t.center;r&&this.center.set(e,r[0],r[1],r[2]);var n=t.rotation;n&&this.rotation.set(e,n[0],n[1],n[2],n[3]);var i=t.distance;i&&i>0&&this.radius.set(e,Math.log(i)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},1371:function(t,e,r){var n=r(3233);t.exports=function(t,e,r){return n(r=typeof r<"u"?r+"":" ",e)+t}},3202:function(t){t.exports=function(t,e){e||(e=[0,""]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",e}},3088:function(t,e,r){t.exports=function(t,e){for(var r=0|e.length,i=t.length,a=[new Array(r),new Array(r)],o=0;o0){o=a[c][r][0],l=c;break}s=o[1^l];for(var h=0;h<2;++h)for(var p=a[h][r],f=0;f0&&(o=d,s=m,l=h)}return i||o&&u(o,l),s}function p(t,r){var i=a[r][t][0],o=[t];u(i,r);for(var s=i[1^r];;){for(;s!==t;)o.push(s),s=h(o[o.length-2],s,!1);if(a[0][t].length+a[1][t].length===0)break;var l=o[o.length-1],c=t,p=o[1],f=h(l,c,!0);if(n(e[l],e[c],e[p],e[f])<0)break;o.push(t),s=h(l,c)}return o}for(o=0;o0;){a[0][o].length;var m=p(o,f);(l=m)[1]===l[l.length-1]?d.push.apply(d,m):(d.length>0&&c.push(d),d=m)}d.length>0&&c.push(d)}return c};var n=r(3140)},5609:function(t,e,r){t.exports=function(t,e){for(var r=n(t,e.length),i=new Array(e.length),a=new Array(e.length),o=[],s=0;s0;){i[f=o.pop()]=!1;var c=r[f];for(s=0;s0}))).length,g=new Array(m),y=new Array(m);for(f=0;f0;){var B=R.pop(),j=E[B];l(j,(function(t,e){return t-e}));var N,U=j.length,V=F[B];for(0===V&&(N=[q=d[B]]),f=0;f=0||(F[H]=1^V,R.push(H),0!==V)||O(q=d[H])||(q.reverse(),N.push(q))}0===V&&r.push(N)}return r};var n=r(3134),i=r(3088),a=r(5085),o=r(5250),s=r(8210),l=r(1682),c=r(5609);function u(t,e){for(var r=new Array(t),n=0;n0&&e[i]===r[0]))return 1;a=t[i-1]}for(var s=1;a;){var l=a.key,c=n(r,l[0],l[1]);if(l[0][0]0))return 0;s=-1,a=a.right}else if(c>0)a=a.left;else{if(!(c<0))return 0;s=1,a=a.right}}return s}}(g.slabs,g.coordinates);return 0===a.length?y:function(t,e){return function(r){return t(r[0],r[1])?0:e(r)}}(l(a),y)};var n=r(3250)[3],i=r(4209),a=r(3352),o=r(2478);function s(){return!0}function l(t){for(var e={},r=0;r=c?(A=1,v=c+2*p+d):v=p*(A=-p/c)+d):(A=0,f>=0?(k=0,v=d):-f>=h?(k=1,v=h+2*f+d):v=f*(k=-f/h)+d);else if(k<0)k=0,p>=0?(A=0,v=d):-p>=c?(A=1,v=c+2*p+d):v=p*(A=-p/c)+d;else{var M=1/T;v=(A*=M)*(c*A+u*(k*=M)+2*p)+k*(u*A+h*k+2*f)+d}else A<0?(_=h+f)>(x=u+p)?(b=_-x)>=(w=c-2*u+h)?(A=1,k=0,v=c+2*p+d):v=(A=b/w)*(c*A+u*(k=1-A)+2*p)+k*(u*A+h*k+2*f)+d:(A=0,_<=0?(k=1,v=h+2*f+d):f>=0?(k=0,v=d):v=f*(k=-f/h)+d):k<0?(_=c+p)>(x=u+f)?(b=_-x)>=(w=c-2*u+h)?(k=1,A=0,v=h+2*f+d):v=(A=1-(k=b/w))*(c*A+u*k+2*p)+k*(u*A+h*k+2*f)+d:(k=0,_<=0?(A=1,v=c+2*p+d):p>=0?(A=0,v=d):v=p*(A=-p/c)+d):(b=h+f-u-p)<=0?(A=0,k=1,v=h+2*f+d):b>=(w=c-2*u+h)?(A=1,k=0,v=c+2*p+d):v=(A=b/w)*(c*A+u*(k=1-A)+2*p)+k*(u*A+h*k+2*f)+d;var S=1-A-k;for(l=0;l0){var c=t[r-1];if(0===n(s,c)&&a(c)!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}},3233:function(t){var e,r="";t.exports=function(t,n){if("string"!=typeof t)throw new TypeError("expected a string");if(1===n)return t;if(2===n)return t+t;var i=t.length*n;if(e!==t||typeof e>"u")e=t,r="";else if(r.length>=i)return r.substr(0,i);for(;i>r.length&&n>1;)1&n&&(r+=t),n>>=1,t+=t;return r=(r+=t).substr(0,i)}},3025:function(t,e,r){t.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(t){t.exports=function(t){for(var e=t.length,r=t[t.length-1],n=e,i=e-2;i>=0;--i){var a=r;(l=(s=t[i])-((r=a+s)-a))&&(t[--n]=r,r=l)}var o=0;for(i=n;i0){if(a<=0)return o;n=i+a}else{if(!(i<0))return o;if(a>=0)return o;n=-(i+a)}var s=l*n;return o>=s||o<=-s?o:d(t,e,r)},function(t,e,r,n){var i=t[0]-n[0],a=e[0]-n[0],o=r[0]-n[0],s=t[1]-n[1],l=e[1]-n[1],u=r[1]-n[1],h=t[2]-n[2],p=e[2]-n[2],f=r[2]-n[2],d=a*u,g=o*l,y=o*s,v=i*u,x=i*l,_=a*s,b=h*(d-g)+p*(y-v)+f*(x-_),w=(Math.abs(d)+Math.abs(g))*Math.abs(h)+(Math.abs(y)+Math.abs(v))*Math.abs(p)+(Math.abs(x)+Math.abs(_))*Math.abs(f),T=c*w;return b>T||-b>T?b:m(t,e,r,n)}];function y(t){var e=g[t.length];return e||(e=g[t.length]=f(t.length)),e.apply(void 0,t)}function v(t,e,r,n,i,a,o){return function(e,r,s,l,c){switch(arguments.length){case 0:case 1:return 0;case 2:return n(e,r);case 3:return i(e,r,s);case 4:return a(e,r,s,l);case 5:return o(e,r,s,l,c)}for(var u=new Array(arguments.length),h=0;h0&&o>0||a<0&&o<0)return!1;var s=n(r,t,e),l=n(i,t,e);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(t,e,r,n){for(var i=0;i<2;++i){var a=t[i],o=e[i],s=Math.min(a,o),l=Math.max(a,o),c=r[i],u=n[i],h=Math.min(c,u);if(Math.max(c,u)=n?(i=h,(l+=1)=n?(i=h,(l+=1)"u"&&(s=function(t){for(var e=t.length,r=0,n=0;n>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,1+((t|=t>>>8)|t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var n=new Array(256);(function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<>>8&255]<<16|n[t>>>16&255]<<8|n[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},2014:function(t,e,r){var n=r(3105),i=r(4623);function a(t,e){var r=t.length,n=t.length-e.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||i(t[0],t[1])-i(e[0],e[1]);case 3:var a=t[0]+t[1],o=e[0]+e[1];if(s=a+t[2]-(o+e[2]))return s;var s,l=i(t[0],t[1]),c=i(e[0],e[1]);return(s=i(l,t[2])-i(c,e[2]))||i(l+t[2],a)-i(c+e[2],o);default:var u=t.slice(0);u.sort();var h=e.slice(0);h.sort();for(var p=0;p>1,s=a(t[o],e);s<=0?(0===s&&(i=o),r=o+1):s>0&&(n=o-1)}return i}function u(t,e){for(var r=new Array(t.length),i=0,o=r.length;i=t.length||0!==a(t[g],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],i=(1<>>u&1&&c.push(i[u]);e.push(c)}return s(e)},e.skeleton=h,e.boundary=function(t){for(var e=[],r=0,n=t.length;r>1:(t>>1)-1}function x(t){for(var e=y(t);;){var r=e,n=2*t+1,i=2*(t+1),a=t;if(n0;){var r=v(t);if(!(r>=0&&e0){var t=A[0];return g(0,M-1),M-=1,x(0),t}return-1}function w(t,e){var r=A[t];return c[r]===e?t:(c[r]=-1/0,_(t),b(),c[r]=e,_((M+=1)-1))}function T(t){if(!u[t]){u[t]=!0;var e=s[t],r=l[t];s[r]>=0&&(s[r]=e),l[e]>=0&&(l[e]=r),k[e]>=0&&w(k[e],m(e)),k[r]>=0&&w(k[r],m(r))}}var A=[],k=new Array(a);for(h=0;h>1;h>=0;--h)x(h);for(;;){var S=b();if(S<0||c[S]>r)break;T(S)}var E=[];for(h=0;h=0&&r>=0&&e!==r){var n=k[e],i=k[r];n!==i&&I.push([n,i])}})),i.unique(i.normalize(I)),{positions:E,edges:I}};var n=r(3250),i=r(2014)},1303:function(t,e,r){t.exports=function(t,e){var r,a,o,s;if(e[0][0]e[1][0]))return i(e,t);r=e[1],a=e[0]}if(t[0][0]t[1][0]))return-i(t,e);o=t[1],s=t[0]}var l=n(r,a,s),c=n(r,a,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;if(l=n(s,o,a),c=n(s,o,r),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;return a[0]-s[0]};var n=r(3250);function i(t,e){var r,i,a,o;if(e[0][0]e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return lu?s-u:l-u}r=e[1],i=e[0]}t[0][1]0)if(e[0]!==o[1][0])r=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return r}function u(t,e,r,n){this.y=t,this.index=e,this.start=r,this.closed=n}function h(t,e,r,n){this.x=t,this.segment=e,this.create=r,this.index=n}s.prototype.castUp=function(t){var e=n.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var r=c(this.slabs[e],t),i=-1;if(r&&(i=r.value),this.coordinates[e]===t[0]){var s=null;if(r&&(s=r.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,i=u.value):(i=u.value,s=u.key))}var h=this.horizontal[e];if(h.length>0){var p=n.ge(h,t[1],l);if(p=h.length)return i;f=h[p]}}if(f.start)if(s){var d=a(s[0],s[1],[t[0],f.y]);s[0][0]>s[1][0]&&(d=-d),d>0&&(i=f.index)}else i=f.index;else f.y!==t[1]&&(i=f.index)}}}return i}},5202:function(t,e,r){var n=r(1944),i=r(8210);function a(t,e){var r=i(n(t,e),[e[e.length-1]]);return r[r.length-1]}function o(t,e,r,n){var i=-e/(n-e);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=t.length,s=new Array(o),l=0;l0||i>0&&u<0){var h=o(s,u,l,i);r.push(h),n.push(h.slice())}u<0?n.push(l.slice()):u>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),i=u}return{positive:r,negative:n}},t.exports.positive=function(t,e){for(var r=[],n=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(i,c,s,n)),c>=0&&r.push(s.slice()),n=c}return r},t.exports.negative=function(t,e){for(var r=[],n=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(i,c,s,n)),c<=0&&r.push(s.slice()),n=c}return r}},3387:function(t,e,r){var n;!function(){var i={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function a(t){return function(t,e){var r,n,o,s,l,c,u,h,p,f=1,d=t.length,m="";for(n=0;n=0),s.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,s.width?parseInt(s.width):0);break;case"e":r=s.precision?parseFloat(r).toExponential(s.precision):parseFloat(r).toExponential();break;case"f":r=s.precision?parseFloat(r).toFixed(s.precision):parseFloat(r);break;case"g":r=s.precision?String(Number(r.toPrecision(s.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=s.precision?r.substring(0,s.precision):r;break;case"t":r=String(!!r),r=s.precision?r.substring(0,s.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=s.precision?r.substring(0,s.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=s.precision?r.substring(0,s.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?m+=r:(!i.number.test(s.type)||h&&!s.sign?p="":(p=h?"+":"-",r=r.toString().replace(i.sign,"")),c=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",u=s.width-(p+r).length,l=s.width&&u>0?c.repeat(u):"",m+=s.align?p+r+l:"0"===c?p+l+r:l+p+r)}return m}(function(t){if(s[t])return s[t];for(var e,r=t,n=[],a=0;r;){if(null!==(e=i.text.exec(r)))n.push(e[0]);else if(null!==(e=i.modulo.exec(r)))n.push("%");else{if(null===(e=i.placeholder.exec(r)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){a|=1;var o=[],l=e[2],c=[];if(null===(c=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(o.push(c[1]);""!==(l=l.substring(c[0].length));)if(null!==(c=i.key_access.exec(l)))o.push(c[1]);else{if(null===(c=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");o.push(c[1])}e[2]=o}else a|=2;if(3===a)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");n.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}r=r.substring(e[0].length)}return s[t]=n}(t),arguments)}function o(t,e){return a.apply(null,[t].concat(e||[]))}var s=Object.create(null);e.sprintf=a,e.vsprintf=o,typeof window<"u"&&(window.sprintf=a,window.vsprintf=o,void 0!==(n=function(){return{sprintf:a,vsprintf:o}}.call(e,r,e,t))&&(t.exports=n))}()},3711:function(t,e,r){t.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var r=i(t,e),n=r.length,a=new Array(n),o=new Array(n),s=0;sn|0},vertex:function(t,e,r,n,i,a,o,s,l,c,u,h,p){var f=(0|o)+(s<<1)+(l<<2)+(c<<3)|0;if(0!==f&&15!==f)switch(f){case 0:case 15:u.push([t-.5,e-.5]);break;case 1:u.push([t-.25-.25*(n+r-2*p)/(r-n),e-.25-.25*(i+r-2*p)/(r-i)]);break;case 2:u.push([t-.75-.25*(-n-r+2*p)/(n-r),e-.25-.25*(a+n-2*p)/(n-a)]);break;case 3:u.push([t-.5,e-.5-.5*(i+r+a+n-4*p)/(r-i+n-a)]);break;case 4:u.push([t-.25-.25*(a+i-2*p)/(i-a),e-.75-.25*(-i-r+2*p)/(i-r)]);break;case 5:u.push([t-.5-.5*(n+r+a+i-4*p)/(r-n+i-a),e-.5]);break;case 6:u.push([t-.5-.25*(-n-r+a+i)/(n-r+i-a),e-.5-.25*(-i-r+a+n)/(i-r+n-a)]);break;case 7:u.push([t-.75-.25*(a+i-2*p)/(i-a),e-.75-.25*(a+n-2*p)/(n-a)]);break;case 8:u.push([t-.75-.25*(-a-i+2*p)/(a-i),e-.75-.25*(-a-n+2*p)/(a-n)]);break;case 9:u.push([t-.5-.25*(n+r+-a-i)/(r-n+a-i),e-.5-.25*(i+r+-a-n)/(r-i+a-n)]);break;case 10:u.push([t-.5-.5*(-n-r-a-i+4*p)/(n-r+a-i),e-.5]);break;case 11:u.push([t-.25-.25*(-a-i+2*p)/(a-i),e-.75-.25*(i+r-2*p)/(r-i)]);break;case 12:u.push([t-.5,e-.5-.5*(-i-r-a-n+4*p)/(i-r+a-n)]);break;case 13:u.push([t-.75-.25*(n+r-2*p)/(r-n),e-.25-.25*(-a-n+2*p)/(a-n)]);break;case 14:u.push([t-.25-.25*(-n-r+2*p)/(n-r),e-.25-.25*(-i-r+2*p)/(i-r)])}},cell:function(t,e,r,n,i,a,o,s,l){i?s.push([t,e]):s.push([e,t])}});return function(t,e){var r=[],i=[];return n(t,r,i,e),{positions:r,cells:i}}}},o={}},665:function(t,e,r){var n=r(3202);t.exports=o;var i=96;function a(t,e){var r=n(getComputedStyle(t).getPropertyValue(e));return r[0]*o(r[1],t)}function o(t,e){switch(e=e||document.body,t=(t||"px").trim().toLowerCase(),(e===window||e===document)&&(e=document.body),t){case"%":return e.clientHeight/100;case"ch":case"ex":return function(t,e){var r=document.createElement("div");r.style["font-size"]="128"+t,e.appendChild(r);var n=a(r,"font-size")/128;return e.removeChild(r),n}(t,e);case"em":return a(e,"font-size");case"rem":return a(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return i;case"cm":return i/2.54;case"mm":return i/25.4;case"pt":return i/72;case"pc":return i/6}return 1}},7261:function(t,e,r){t.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.up||[0,1,0],n=t.right||h(r),i=t.radius||1,a=t.theta||0,u=t.phi||0;if(e=[].slice.call(e,0,3),r=[].slice.call(r,0,3),s(r,r),n=[].slice.call(n,0,3),s(n,n),"eye"in t){var f=t.eye,d=[f[0]-e[0],f[1]-e[1],f[2]-e[2]];o(n,d,r),c(n[0],n[1],n[2])<1e-6?n=h(r):s(n,n),i=c(d[0],d[1],d[2]);var m=l(r,d)/i,g=l(n,d)/i;u=Math.acos(m),a=Math.acos(g)}return i=Math.log(i),new p(t.zoomMin,t.zoomMax,e,r,n,i,a,u)};var n=r(9215),i=r(7608),a=r(6079),o=r(5911),s=r(3536),l=r(244);function c(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function u(t){return Math.min(1,Math.max(-1,t))}function h(t){var e=Math.abs(t[0]),r=Math.abs(t[1]),n=Math.abs(t[2]),i=[0,0,0];e>Math.max(r,n)?i[2]=1:r>Math.max(e,n)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=t[l]*t[l],o+=i[l]*t[l];for(l=0;l<3;++l)i[l]-=o/a*t[l];return s(i,i),i}function p(t,e,r,i,a,o,s,l){this.center=n(r),this.up=n(i),this.right=n(a),this.radius=n([o]),this.angle=n([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var f=p.prototype;f.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},f.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},f.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,r=this.computedRight,n=0,i=0,a=0;a<3;++a)i+=e[a]*r[a],n+=e[a]*e[a];var l=Math.sqrt(n),u=0;for(a=0;a<3;++a)r[a]-=e[a]*i/n,u+=r[a]*r[a],e[a]/=l;var h=Math.sqrt(u);for(a=0;a<3;++a)r[a]/=h;var p=this.computedToward;o(p,e,r),s(p,p);var f=Math.exp(this.computedRadius[0]),d=this.computedAngle[0],m=this.computedAngle[1],g=Math.cos(d),y=Math.sin(d),v=Math.cos(m),x=Math.sin(m),_=this.computedCenter,b=g*v,w=y*v,T=x,A=-g*x,k=-y*x,M=v,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=b*r[a]+w*p[a]+T*e[a];E[4*a+1]=A*r[a]+k*p[a]+M*e[a],E[4*a+2]=C,E[4*a+3]=0}var I=E[1],L=E[5],P=E[9],z=E[2],D=E[6],O=E[10],R=L*O-P*D,F=P*z-I*O,B=I*D-L*z,j=c(R,F,B);for(R/=j,F/=j,B/=j,E[0]=R,E[4]=F,E[8]=B,a=0;a<3;++a)S[a]=_[a]+E[2+4*a]*f;for(a=0;a<3;++a){u=0;for(var N=0;N<3;++N)u+=E[a+4*N]*S[N];E[12+a]=-u}E[15]=1},f.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r};var d=[0,0,0];f.rotate=function(t,e,r,n){if(this.angle.move(t,e,r),n){this.recalcMatrix(t);var i=this.computedMatrix;d[0]=i[2],d[1]=i[6],d[2]=i[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)i[4*c]=o[c],i[4*c+1]=s[c],i[4*c+2]=l[c];for(a(i,i,n,d),c=0;c<3;++c)o[c]=i[4*c],s[c]=i[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},f.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=c(a,o,s);a/=l,o/=l,s/=l;var u=i[0],h=i[4],p=i[8],f=u*a+h*o+p*s,d=c(u-=a*f,h-=o*f,p-=s*f),m=(u/=d)*e+a*r,g=(h/=d)*e+o*r,y=(p/=d)*e+s*r;this.center.move(t,m,g,y);var v=Math.exp(this.computedRadius[0]);v=Math.max(1e-4,v+n),this.radius.set(t,Math.log(v))},f.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},f.setMatrix=function(t,e,r,n){var a=1;"number"==typeof r&&(a=0|r),(a<0||a>3)&&(a=1);var o=(a+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[a],l=e[a+4],h=e[a+8];if(n){var p=Math.abs(s),f=Math.abs(l),d=Math.abs(h),m=Math.max(p,f,d);p===m?(s=s<0?-1:1,l=h=0):d===m?(h=h<0?-1:1,s=l=0):(l=l<0?-1:1,s=h=0)}else{var g=c(s,l,h);s/=g,l/=g,h/=g}var y,v,x=e[o],_=e[o+4],b=e[o+8],w=x*s+_*l+b*h,T=c(x-=s*w,_-=l*w,b-=h*w),A=l*(b/=T)-h*(_/=T),k=h*(x/=T)-s*b,M=s*_-l*x,S=c(A,k,M);if(A/=S,k/=S,M/=S,this.center.jump(t,H,G,W),this.radius.idle(t),this.up.jump(t,s,l,h),this.right.jump(t,x,_,b),2===a){var E=e[1],C=e[5],I=e[9],L=E*x+C*_+I*b,P=E*A+C*k+I*M;y=R<0?-Math.PI/2:Math.PI/2,v=Math.atan2(P,L)}else{var z=e[2],D=e[6],O=e[10],R=z*s+D*l+O*h,F=z*x+D*_+O*b,B=z*A+D*k+O*M;y=Math.asin(u(R)),v=Math.atan2(B,F)}this.angle.jump(t,v,y),this.recalcMatrix(t);var j=e[2],N=e[6],U=e[10],V=this.computedMatrix;i(V,e);var q=V[15],H=V[12]/q,G=V[13]/q,W=V[14]/q,Z=Math.exp(this.computedRadius[0]);this.center.jump(t,H-j*Z,G-N*Z,W-U*Z)},f.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},f.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},f.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},f.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},f.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||this.computedCenter;var i=(n=n||this.computedUp)[0],a=n[1],o=n[2],s=c(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=e[0]-r[0],h=e[1]-r[1],p=e[2]-r[2],f=c(l,h,p);if(!(f<1e-6)){l/=f,h/=f,p/=f;var d=this.computedRight,m=d[0],g=d[1],y=d[2],v=i*m+a*g+o*y,x=c(m-=v*i,g-=v*a,y-=v*o);if(!(x<.01&&(m=a*p-o*h,g=o*l-i*p,y=i*h-a*l,x=c(m,g,y),x<1e-6))){m/=x,g/=x,y/=x,this.up.set(t,i,a,o),this.right.set(t,m,g,y),this.center.set(t,r[0],r[1],r[2]),this.radius.set(t,Math.log(f));var _=a*y-o*g,b=o*m-i*y,w=i*g-a*m,T=c(_,b,w),A=i*l+a*h+o*p,k=m*l+g*h+y*p,M=(_/=T)*l+(b/=T)*h+(w/=T)*p,S=Math.asin(u(A)),E=Math.atan2(M,k),C=this.angle._state,I=C[C.length-1],L=C[C.length-2];I%=2*Math.PI;var P=Math.abs(I+2*Math.PI-E),z=Math.abs(I-E),D=Math.abs(I-2*Math.PI-E);P0?r.pop():new ArrayBuffer(t)}function d(t){return new Uint8Array(f(t),0,t)}function m(t){return new Uint16Array(f(2*t),0,t)}function g(t){return new Uint32Array(f(4*t),0,t)}function y(t){return new Int8Array(f(t),0,t)}function v(t){return new Int16Array(f(2*t),0,t)}function x(t){return new Int32Array(f(4*t),0,t)}function _(t){return new Float32Array(f(4*t),0,t)}function b(t){return new Float64Array(f(8*t),0,t)}function w(t){return o?new Uint8ClampedArray(f(t),0,t):d(t)}function T(t){return s?new BigUint64Array(f(8*t),0,t):null}function A(t){return l?new BigInt64Array(f(8*t),0,t):null}function k(t){return new DataView(f(t),0,t)}function M(t){t=n.nextPow2(t);var e=n.log2(t),r=h[e];return r.length>0?r.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))h[n.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|n.log2(e);u[r].push(t)}},e.freeUint8=e.freeUint16=e.freeUint32=e.freeBigUint64=e.freeInt8=e.freeInt16=e.freeInt32=e.freeBigInt64=e.freeFloat32=e.freeFloat=e.freeFloat64=e.freeDouble=e.freeUint8Clamped=e.freeDataView=function(t){p(t.buffer)},e.freeArrayBuffer=p,e.freeBuffer=function(t){h[n.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return f(t);switch(e){case"uint8":return d(t);case"uint16":return m(t);case"uint32":return g(t);case"int8":return y(t);case"int16":return v(t);case"int32":return x(t);case"float":case"float32":return _(t);case"double":case"float64":return b(t);case"uint8_clamped":return w(t);case"bigint64":return A(t);case"biguint64":return T(t);case"buffer":return M(t);case"data":case"dataview":return k(t);default:return null}return null},e.mallocArrayBuffer=f,e.mallocUint8=d,e.mallocUint16=m,e.mallocUint32=g,e.mallocInt8=y,e.mallocInt16=v,e.mallocInt32=x,e.mallocFloat32=e.mallocFloat=_,e.mallocFloat64=e.mallocDouble=b,e.mallocUint8Clamped=w,e.mallocBigUint64=T,e.mallocBigInt64=A,e.mallocDataView=k,e.mallocBuffer=M,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,h[t].length=0}},1755:function(t){function e(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e0&&(a=n.size),n.lineSpacing&&n.lineSpacing>0&&(o=n.lineSpacing),n.styletags&&n.styletags.breaklines&&(s.breaklines=!!n.styletags.breaklines),n.styletags&&n.styletags.bolds&&(s.bolds=!!n.styletags.bolds),n.styletags&&n.styletags.italics&&(s.italics=!!n.styletags.italics),n.styletags&&n.styletags.subscripts&&(s.subscripts=!!n.styletags.subscripts),n.styletags&&n.styletags.superscripts&&(s.superscripts=!!n.styletags.superscripts)),r.font=[n.fontStyle,n.fontVariant,n.fontWeight,a+"px",n.font].filter((function(t){return t})).join(" "),r.textAlign="start",r.textBaseline="alphabetic",r.direction="ltr",b(function(t,e,r,n,a,o){r=r.replace(/\n/g,""),r=!0===o.breaklines?r.replace(/\/g,"\n"):r.replace(/\/g," ");var s="",l=[];for(I=0;I-1?parseInt(t[1+i]):0,l=a>-1?parseInt(r[1+a]):0;s!==l&&(n=n.replace(F(),"?px "),z*=Math.pow(.75,l-s),n=n.replace("?px ",F())),P+=.25*A*(l-s)}if(!0===o.superscripts){var c=t.indexOf(d),h=r.indexOf(d),f=c>-1?parseInt(t[1+c]):0,m=h>-1?parseInt(r[1+h]):0;f!==m&&(n=n.replace(F(),"?px "),z*=Math.pow(.75,m-f),n=n.replace("?px ",F())),P-=.25*A*(m-f)}if(!0===o.bolds){var g=t.indexOf(u)>-1,v=r.indexOf(u)>-1;!g&&v&&(n=x?n.replace("italic ","italic bold "):"bold "+n),g&&!v&&(n=n.replace("bold ",""))}if(!0===o.italics){var x=t.indexOf(p)>-1,_=r.indexOf(p)>-1;!x&&_&&(n="italic "+n),x&&!_&&(n=n.replace("italic ",""))}e.font=n}for(C=0;C",a="",o=i.length,s=a.length,l=e[0]===d||e[0]===y,c=0,u=-s;c>-1&&!(-1===(c=r.indexOf(i,c))||(u=r.indexOf(a,c+o),-1===u)||u<=c);){for(var h=c;h=u)n[h]=null,r=r.substr(0,h)+" "+r.substr(h+1);else if(null!==n[h]){var p=n[h].indexOf(e[0]);-1===p?n[h]+=e:l&&(n[h]=n[h].substr(0,p+1)+(1+parseInt(n[h][p+1]))+n[h].substr(p+2))}var f=c+o,m=r.substr(f,u-f).indexOf(i);c=-1!==m?m:u+s}return n}function _(t,e,r,i){var c=function(t,e){var r=n(t,128);return e?a(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}(t,i),u=function(t,e,r){for(var n=e.textAlign||"start",i=e.textBaseline||"alphabetic",a=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l=0?e[a]:i}))},has___:{value:x((function(e){var n=v(e);return n?r in n:t.indexOf(e)>=0}))},set___:{value:x((function(n,i){var a,o=v(n);return o?o[r]=i:(a=t.indexOf(n))>=0?e[a]=i:(a=t.length,e[a]=i,t[a]=n),this}))},delete___:{value:x((function(n){var i,a,o=v(n);return o?r in o&&delete o[r]:!((i=t.indexOf(n))<0||(a=t.length-1,t[i]=void 0,e[i]=e[a],t[i]=t[a],t.length=a,e.length=a,0))}))}})};m.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),"function"==typeof r?function(){function n(){this instanceof m||_();var t,n=new r,i=void 0,a=!1;return t=e?function(t,e){return n.set(t,e),n.has(t)||(i||(i=new m),i.set(t,e)),this}:function(t,e){if(a)try{n.set(t,e)}catch{i||(i=new m),i.set___(t,e)}else n.set(t,e);return this},Object.create(m.prototype,{get___:{value:x((function(t,e){return i?n.has(t)?n.get(t):i.get___(t,e):n.get(t,e)}))},has___:{value:x((function(t){return n.has(t)||!!i&&i.has___(t)}))},set___:{value:x(t)},delete___:{value:x((function(t){var e=!!n.delete(t);return i&&i.delete___(t)||e}))},permitHostObjects___:{value:x((function(t){if(t!==g)throw new Error("bogus call to permitHostObjects___");a=!0}))}})}e&&typeof Proxy<"u"&&(Proxy=void 0),n.prototype=m.prototype,t.exports=n,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),t.exports=m)}function g(t){t.permitHostObjects___&&t.permitHostObjects___(g)}function y(t){return!(t.substr(0,8)==l&&"___"===t.substr(t.length-3))}function v(t){if(t!==Object(t))throw new TypeError("Not an object: "+t);var e=t[c];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,c,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch{return}}}function x(t){return t.prototype=null,Object.freeze(t)}function _(){!f&&typeof console<"u"&&(f=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},236:function(t,e,r){var n=r(8284);t.exports=function(){var t={};return function(e){if(("object"!=typeof e||null===e)&&"function"!=typeof e)throw new Error("Weakmap-shim: Key must be object");var r=e.valueOf(t);return r&&r.identity===t?r:n(e,t)}}},8284:function(t){t.exports=function(t,e){var r={identity:e},n=t.valueOf;return Object.defineProperty(t,"valueOf",{value:function(t){return t!==e?n.apply(this,arguments):r},writable:!0}),r}},606:function(t,e,r){var n=r(236);t.exports=function(){var t=n();return{get:function(e,r){var n=t(e);return n.hasOwnProperty("value")?n.value:r},set:function(e,r){return t(e).value=r,this},has:function(e){return"value"in t(e)},delete:function(e){return delete t(e).value}}}},3349:function(t){var e,r,n=function(){return function(t,e,r,n,i,a){var o=t[0],s=r[0],l=[0],c=s;n|=0;var u=0,h=s;for(u=0;u=0!=f>=0&&i.push(l[0]+.5+.5*(p+f)/(p-f)),n+=h,++l[0]}}};t.exports=(e=n.bind(void 0,{funcName:"zeroCrossings"}),r={},function(t,n,i){var a=t.dtype,o=t.order,s=[a,o.join()].join(),l=r[s];return l||(r[s]=l=e([a,o])),l(t.shape.slice(0),t.data,t.stride,0|t.offset,n,i)})},781:function(t,e,r){t.exports=function(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r};var n=r(3349)},7790:function(){}},r={};function n(e){var i=r[e];if(void 0!==i)return i.exports;var a=r[e]={id:e,loaded:!1,exports:{}};return t[e].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch{if("object"==typeof window)return window}}(),n.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t};var i=n(1964);e.exports=i}()}}),Id=f({"node_modules/color-name/index.js"(t,e){e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),Ld=f({"node_modules/color-normalize/node_modules/color-parse/index.js"(t,e){var r=Id();e.exports=function(t){var e,i,a=[],o=1;if("string"==typeof t)if(t=t.toLowerCase(),r[t])a=r[t].slice(),i="rgb";else if("transparent"===t)o=0,i="rgb",a=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var s=t.slice(1);o=1,(u=s.length)<=4?(a=[parseInt(s[0]+s[0],16),parseInt(s[1]+s[1],16),parseInt(s[2]+s[2],16)],4===u&&(o=parseInt(s[3]+s[3],16)/255)):(a=[parseInt(s[0]+s[1],16),parseInt(s[2]+s[3],16),parseInt(s[4]+s[5],16)],8===u&&(o=parseInt(s[6]+s[7],16)/255)),a[0]||(a[0]=0),a[1]||(a[1]=0),a[2]||(a[2]=0),i="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(t)){var l=e[1],c="rgb"===l;i=s=l.replace(/a$/,"");var u="cmyk"===s?4:"gray"===s?1:3;a=e[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(t,e){if(/%$/.test(t))return e===u?parseFloat(t)/100:"rgb"===s?255*parseFloat(t)/100:parseFloat(t);if("h"===s[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==n[t])return n[t]}return parseFloat(t)})),l===s&&a.push(1),o=c||void 0===a[u]?1:a[u],a=a.slice(0,u)}else t.length>10&&/[0-9](?:\s|\/)/.test(t)&&(a=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),i=t.match(/([a-z])/gi).join("").toLowerCase());else isNaN(t)?Array.isArray(t)||t.length?(a=[t[0],t[1],t[2]],i="rgb",o=4===t.length?t[3]:1):t instanceof Object&&(null!=t.r||null!=t.red||null!=t.R?(i="rgb",a=[t.r||t.red||t.R||0,t.g||t.green||t.G||0,t.b||t.blue||t.B||0]):(i="hsl",a=[t.h||t.hue||t.H||0,t.s||t.saturation||t.S||0,t.l||t.lightness||t.L||t.b||t.brightness]),o=t.a||t.alpha||t.opacity||1,null!=t.opacity&&(o/=100)):(i="rgb",a=[t>>>16,(65280&t)>>>8,255&t]);return{space:i,values:a,alpha:o}};var n={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Pd=f({"node_modules/color-normalize/node_modules/color-rgba/index.js"(t,e){var r=Ld();e.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var e,n=r(t);if(!n.space)return[];var i=[0,0,0],a="h"===n.space[0]?[360,100,100]:[255,255,255];return(e=Array(3))[0]=Math.min(Math.max(n.values[0],i[0]),a[0]),e[1]=Math.min(Math.max(n.values[1],i[1]),a[1]),e[2]=Math.min(Math.max(n.values[2],i[2]),a[2]),"h"===n.space[0]&&(e=function(t){var e,r,n,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100,c=0;if(0===s)return[a=255*l,a,a];for(e=2*l-(r=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];c<3;)(n=o+1/3*-(c-1))<0?n++:n>1&&n--,a=6*n<1?e+6*(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,i[c++]=255*a;return i}(e)),e.push(Math.min(Math.max(n.alpha,0),1)),e}}}),zd=f({"node_modules/clamp/index.js"(t,e){e.exports=function(t,e,r){return er?r:t:te?e:t}}}),Dd=f({"node_modules/dtype/index.js"(t,e){e.exports=function(t){switch(t){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}}}),Od=f({"node_modules/color-normalize/index.js"(t,e){var r=Pd(),n=zd(),i=Dd();e.exports=function(t,e){("float"===e||!e)&&(e="array"),"uint"===e&&(e="uint8"),"uint_clamped"===e&&(e="uint8_clamped");var a,o=new(i(e))(4),s="uint8"!==e&&"uint8_clamped"!==e;return(!t.length||"string"==typeof t)&&((t=r(t))[0]/=255,t[1]/=255,t[2]/=255),(a=t)instanceof Uint8Array||a instanceof Uint8ClampedArray||Array.isArray(a)&&(a[0]>1||0===a[0])&&(a[1]>1||0===a[1])&&(a[2]>1||0===a[2])&&(!a[3]||a[3]>1)?(o[0]=t[0],o[1]=t[1],o[2]=t[2],o[3]=null!=t[3]?t[3]:255,s&&(o[0]/=255,o[1]/=255,o[2]/=255,o[3]/=255),o):(s?(o[0]=t[0],o[1]=t[1],o[2]=t[2],o[3]=null!=t[3]?t[3]:1):(o[0]=n(Math.floor(255*t[0]),0,255),o[1]=n(Math.floor(255*t[1]),0,255),o[2]=n(Math.floor(255*t[2]),0,255),o[3]=null==t[3]?255:n(Math.floor(255*t[3]),0,255)),o)}}}),Rd=f({"src/lib/str2rgbarray.js"(t,e){var r=Od();e.exports=function(t){return t?r(t):[0,0,0,1]}}}),Fd=f({"src/lib/gl_format_color.js"(t,e){var r=A(),n=O(),i=Od(),a=Ze(),o=q().defaultLine,s=E().isArrayOrTypedArray,l=i(o);function c(t,e){var r=t;return r[3]*=e,r}function u(t){if(r(t))return l;var e=i(t);return e.length?e:l}function h(t){return r(t)?t:1}e.exports={formatColor:function(t,e,r){var n=t.color;n&&n._inputArray&&(n=n._inputArray);var o,p,f,d,m,g=s(n),y=s(e),v=a.extractOpts(t),x=[];if(o=void 0!==v.colorscale?a.makeColorScaleFuncFromTrace(t):u,p=g?function(t,e){return void 0===t[e]?l:i(o(t[e]))}:u,f=y?function(t,e){return void 0===t[e]?1:h(t[e])}:h,g||y)for(var _=0;_0){var p=i.c2l(u);i._lowerLogErrorBound||(i._lowerLogErrorBound=p),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,p)}}else o[s]=[-l[0]*n,l[1]*n]}return o}e.exports=function(t,e,r){var i=[n(t.x,t.error_x,e[0],r.xaxis),n(t.y,t.error_y,e[1],r.yaxis),n(t.z,t.error_z,e[2],r.zaxis)],a=function(t){for(var e=0;e-1?-1:t.indexOf("right")>-1?1:0}function x(t){return null==t?0:t.indexOf("top")>-1?-1:t.indexOf("bottom")>-1?1:0}function _(t,e){return e(4*t)}function b(t){return p[t]}function w(t,e,r,n,i){var a=null;if(s.isArrayOrTypedArray(t)){a=[];for(var o=0;o=0){var E=function(t,e,r){var n,i=(r+1)%3,a=(r+2)%3,s=[],l=[];for(n=0;n=0&&h("surfacecolor",f||d);for(var m=["x","y","z"],g=0;g<3;++g){var y="projection."+m[g];h(y+".show")&&(h(y+".opacity"),h(y+".scale"))}var v=r.getComponentMethod("errorbars","supplyDefaults");v(t,e,f||d||c,{axis:"z"}),v(t,e,f||d||c,{axis:"y",inherit:"z"}),v(t,e,f||d||c,{axis:"x",inherit:"z"})}else e.visible=!1}}}),Hd=f({"src/traces/scatter3d/calc.js"(t,e){var r=ii(),n=ni();e.exports=function(t,e){var i=[{x:!1,y:!1,trace:e,t:{}}];return r(i,e),n(t,e),i}}}),Gd=f({"node_modules/get-canvas-context/index.js"(t,e){e.exports=function(t,e){if("string"!=typeof t)throw new TypeError("must specify type string");if(e=e||{},typeof document>"u"&&!e.canvas)return null;var r=e.canvas||document.createElement("canvas");"number"==typeof e.width&&(r.width=e.width),"number"==typeof e.height&&(r.height=e.height);var n,i=e;try{var a=[t];0===t.indexOf("webgl")&&a.push("experimental-"+t);for(var o=0;o/g," "));l[c]=f,u.tickmode=h}}for(e.ticks=l,c=0;c<3;++c)for(a[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]),d=0;d<2;++d)e.bounds[d][c]=t.glplot.bounds[d][c];t.contourLevels=function(t){for(var e=new Array(3),r=0;r<3;++r){for(var n=t[r],i=new Array(n.length),a=0;ar.deltaY?1.1:.9090909090909091,a=t.glplot.getAspectratio();t.glplot.setAspectratio({x:n*a.x,y:n*a.y,z:n*a.z})}i(t)}}),!!l&&{passive:!1}),t.glplot.canvas.addEventListener("mousemove",(function(){if(!1!==t.fullSceneLayout.dragmode&&0!==t.camera.mouseListener.buttons){var e=n();t.graphDiv.emit("plotly_relayouting",e)}})),t.staticMode||t.glplot.canvas.addEventListener("webglcontextlost",(function(r){e&&e.emit&&e.emit("plotly_webglcontextlost",{event:r,layer:t.id})}),!1)),t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=function(){t.render()},!0},T.render=function(){var t,e=this,r=e.graphDiv,n=e.svgContainer,i=e.container.getBoundingClientRect();r._fullLayout._calcInverseTransform(r);var a=r._fullLayout._invScaleX,o=r._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),x(e),e.glplot.axes.update(e.axesOptions);for(var c=Object.keys(e.traces),h=null,d=e.glplot.selection,m=0;m")):"isosurface"===t.type||"volume"===t.type?(T.valueLabel=p.hoverLabelText(e._mockAxis,e._mockAxis.d2l(d.traceCoordinate[3]),t.valuehoverformat),E.push("value: "+T.valueLabel),d.textLabel&&E.push(d.textLabel),S=E.join("
")):S=d.textLabel;var C={x:d.traceCoordinate[0],y:d.traceCoordinate[1],z:d.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:w};f.appendArrayPointValue(C,_,w),t._module.eventData&&(C=_._module.eventData(C,d,_,{},w));var I={points:[C]};if(e.fullSceneLayout.hovermode){var L=[];f.loneHover({trace:_,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:T.xLabel,yLabel:T.yLabel,zLabel:T.zLabel,text:S,name:h.name,color:f.castHoverOption(_,w,"bgcolor")||h.color,borderColor:f.castHoverOption(_,w,"bordercolor"),fontFamily:f.castHoverOption(_,w,"font.family"),fontSize:f.castHoverOption(_,w,"font.size"),fontColor:f.castHoverOption(_,w,"font.color"),nameLength:f.castHoverOption(_,w,"namelength"),textAlign:f.castHoverOption(_,w,"align"),hovertemplate:u.castOption(_,w,"hovertemplate"),hovertemplateLabels:u.extendFlat({},C,T),eventData:[C]},{container:n,gd:r,inOut_bbox:L}),C.bbox=L[0]}d.distance<5&&(d.buttons||b)?r.emit("plotly_click",I):r.emit("plotly_hover",I),this.oldEventData=I}else f.loneUnhover(n),this.oldEventData&&r.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)},T.recoverContext=function(){var t=this;t.glplot.dispose();var e=function(){t.glplot.gl.isContextLost()?requestAnimationFrame(e):t.initializeGLPlot()?t.plot.apply(t,t.plotArgs):u.error("Catastrophic and unrecoverable WebGL error. Context lost.")};requestAnimationFrame(e)};var k=["xaxis","yaxis","zaxis"];function M(t,e,r){for(var n=t.fullSceneLayout,i=0;i<3;i++){var a=k[i],o=a.charAt(0),s=n[a],l=e[o],c=e[o+"calendar"],h=e["_"+o+"length"];if(u.isArrayOrTypedArray(l))for(var p,f=0;f<(h||l.length);f++)if(u.isArrayOrTypedArray(l[f]))for(var d=0;dg[1][o])g[0][o]=-1,g[1][o]=1;else{var L=g[1][o]-g[0][o];g[0][o]-=L/32,g[1][o]+=L/32}if(x=[g[0][o],g[1][o]],x=_(x,l),g[0][o]=x[0],g[1][o]=x[1],l.isReversed()){var P=g[0][o];g[0][o]=g[1][o],g[1][o]=P}}else x=l.range,g[0][o]=l.r2l(x[0]),g[1][o]=l.r2l(x[1]);g[0][o]===g[1][o]&&(g[0][o]-=1,g[1][o]+=1),y[o]=g[1][o]-g[0][o],l.range=[g[0][o],g[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*f[o],max:l.range[1]*f[o]})}var z,D=u.aspectmode;if("cube"===D)z=[1,1,1];else if("manual"===D){var O=u.aspectratio;z=[O.x,O.y,O.z]}else{if("auto"!==D&&"data"!==D)throw new Error("scene.js aspectRatio was not one of the enumerated types");var R=[1,1,1];for(o=0;o<3;++o){var F=v[c=(l=u[k[o]]).type];R[o]=Math.pow(F.acc,1/F.count)/f[o]}z="data"===D||Math.max.apply(null,R)/Math.min.apply(null,R)<=4?R:[1,1,1]}u.aspectratio.x=h.aspectratio.x=z[0],u.aspectratio.y=h.aspectratio.y=z[1],u.aspectratio.z=h.aspectratio.z=z[2],n.glplot.setAspectratio(u.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:u.aspectratio.x,y:u.aspectratio.y,z:u.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=u.aspectmode);var B=u.domain||null,j=e._size||null;if(B&&j){var N=n.container.style;N.position="absolute",N.left=j.l+B.x[0]*j.w+"px",N.top=j.t+(1-B.y[1])*j.h+"px",N.width=j.w*(B.x[1]-B.x[0])+"px",N.height=j.h*(B.y[1]-B.y[0])+"px"}n.glplot.redraw()}},T.destroy=function(){var t=this;t.glplot&&(t.camera.mouseListener.enabled=!1,t.container.removeEventListener("wheel",t.camera.wheelListener),t.camera=null,t.glplot.dispose(),t.container.parentNode.removeChild(t.container),t.glplot=null)},T.getCamera=function(){var t=this;return t.camera.view.recalcMatrix(t.camera.view.lastT()),function(t){return{up:{x:t.up[0],y:t.up[1],z:t.up[2]},center:{x:t.center[0],y:t.center[1],z:t.center[2]},eye:{x:t.eye[0],y:t.eye[1],z:t.eye[2]},projection:{type:!0===t._ortho?"orthographic":"perspective"}}}(t.camera)},T.setViewport=function(t){var e=this,r=t.camera;e.camera.lookAt.apply(this,function(t){return[[t.eye.x,t.eye.y,t.eye.z],[t.center.x,t.center.y,t.center.z],[t.up.x,t.up.y,t.up.z]]}(r)),e.glplot.setAspectratio(t.aspectratio),"orthographic"===r.projection.type!==e.camera._ortho&&(e.glplot.redraw(),e.glplot.clearRGBA(),e.glplot.dispose(),e.initializeGLPlot())},T.isCameraChanged=function(t){var e,r,n,i,a,o,s=this.getCamera(),l=u.nestedProperty(t,this.id+".camera").get(),c=!1;if(void 0===l)c=!0;else{for(var h=0;h<3;h++)for(var p=0;p<3;p++)if(e=s,i=p,void 0,void 0,o=["x","y","z"],!(r=l)[(a=["up","center","eye"])[n=h]]||e[a[n]][o[i]]!==r[a[n]][o[i]]){c=!0;break}(!l.projection||s.projection&&s.projection.type!==l.projection.type)&&(c=!0)}return c},T.isAspectChanged=function(t){var e=this.glplot.getAspectratio(),r=u.nestedProperty(t,this.id+".aspectratio").get();return void 0===r||r.x!==e.x||r.y!==e.y||r.z!==e.z},T.saveLayout=function(t){var e,r,n,i,a,o,s=this,l=s.fullLayout,h=s.isCameraChanged(t),p=s.isAspectChanged(t),f=h||p;if(f){var d={};h&&(e=s.getCamera(),n=(r=u.nestedProperty(t,s.id+".camera")).get(),d[s.id+".camera"]=n),p&&(i=s.glplot.getAspectratio(),o=(a=u.nestedProperty(t,s.id+".aspectratio")).get(),d[s.id+".aspectratio"]=o),c.call("_storeDirectGUIEdit",t,l._preGUI,d),h&&(r.set(e),u.nestedProperty(l,s.id+".camera").set(e)),p&&(a.set(i),u.nestedProperty(l,s.id+".aspectratio").set(i),s.glplot.redraw())}return f},T.updateFx=function(t,e){var r=this,n=r.camera;if(n)if("orbit"===t)n.mode="orbit",n.keyBindingMode="rotate";else if("turntable"===t){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,h=o.up.z;if(h/Math.sqrt(s*s+l*l+h*h)<.999){var p=r.id+".camera.up",f={x:0,y:0,z:1},d={};d[p]=f;var m=i.layout;c.call("_storeDirectGUIEdit",m,a._preGUI,d),o.up=f,u.nestedProperty(m,p).set(f)}}else n.keyBindingMode=t;r.fullSceneLayout.hovermode=e},T.toImage=function(t){var e=this;t||(t="png"),e.staticMode&&e.container.appendChild(r),e.glplot.redraw();var n=e.glplot.gl,i=n.drawingBufferWidth,a=n.drawingBufferHeight;n.bindFramebuffer(n.FRAMEBUFFER,null);var o=new Uint8Array(i*a*4);n.readPixels(0,0,i,a,n.RGBA,n.UNSIGNED_BYTE,o),function(t,e,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)t[a+l]=Math.min(s*t[a+l],255)}}(o,i,a);var s=document.createElement("canvas");s.width=i,s.height=a;var l,c=s.getContext("2d",{willReadFrequently:!0}),u=c.createImageData(i,a);switch(u.data.set(o),c.putImageData(u,0,0),t){case"jpeg":l=s.toDataURL("image/jpeg");break;case"webp":l=s.toDataURL("image/webp");break;default:l=s.toDataURL("image/png")}return e.staticMode&&e.container.removeChild(r),l},T.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[k[t]];p.setConvert(e,this.fullLayout),e.setScale=u.noop}},T.make4thDimension=function(){var t=this,e=t.graphDiv._fullLayout;t._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},p.setConvert(t._mockAxis,e)},e.exports=w}}),Jd=f({"src/plots/gl3d/layout/attributes.js"(t,e){e.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),Qd=f({"src/plots/gl3d/layout/axis_attributes.js"(t,e){var r=H(),n=Ie(),i=R().extendFlat,a=Pt().overrideAll;e.exports=a({visible:n.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:r.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:n.color,categoryorder:n.categoryorder,categoryarray:n.categoryarray,title:{text:n.title.text,font:n.title.font},type:i({},n.type,{values:["-","linear","log","date","category"]}),autotypenumbers:n.autotypenumbers,autorange:n.autorange,autorangeoptions:{minallowed:n.autorangeoptions.minallowed,maxallowed:n.autorangeoptions.maxallowed,clipmin:n.autorangeoptions.clipmin,clipmax:n.autorangeoptions.clipmax,include:n.autorangeoptions.include,editType:"plot"},rangemode:n.rangemode,minallowed:n.minallowed,maxallowed:n.maxallowed,range:i({},n.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:n.minor.tickmode,nticks:n.nticks,tick0:n.tick0,dtick:n.dtick,tickvals:n.tickvals,ticktext:n.ticktext,ticks:n.ticks,mirror:n.mirror,ticklen:n.ticklen,tickwidth:n.tickwidth,tickcolor:n.tickcolor,showticklabels:n.showticklabels,labelalias:n.labelalias,tickfont:n.tickfont,tickangle:n.tickangle,tickprefix:n.tickprefix,showtickprefix:n.showtickprefix,ticksuffix:n.ticksuffix,showticksuffix:n.showticksuffix,showexponent:n.showexponent,exponentformat:n.exponentformat,minexponent:n.minexponent,separatethousands:n.separatethousands,tickformat:n.tickformat,tickformatstops:n.tickformatstops,hoverformat:n.hoverformat,showline:n.showline,linecolor:n.linecolor,linewidth:n.linewidth,showgrid:n.showgrid,gridcolor:i({},n.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:n.gridwidth,zeroline:n.zeroline,zerolinecolor:n.zerolinecolor,zerolinewidth:n.zerolinewidth},"plot","from-root")}}),tm=f({"src/plots/gl3d/layout/layout_attributes.js"(t,e){var r=Qd(),n=Aa().attributes,i=R().extendFlat,a=le().counterRegex;function o(t,e,r){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:e,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}e.exports={_arrayAttrRegexps:[a("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:i(o(0,0,1),{}),center:i(o(0,0,0),{}),eye:i(o(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:n({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:r,yaxis:r,zaxis:r,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}}}),em=f({"src/plots/gl3d/layout/axis_defaults.js"(t,e){var r=O().mix,n=le(),i=ye(),a=Qd(),o=_i(),s=Ti(),l=["xaxis","yaxis","zaxis"],c=13600/187;e.exports=function(t,e,u){var h,p;function f(t,e){return n.coerce(h,p,a,t,e)}for(var d=0;d.999)&&(g="turntable")}else g="turntable";r("dragmode",g),r("hovermode",a.getDfltFromLayout("hovermode"))}e.exports=function(t,e,n){var i=e._basePlotModules.length>1;a(t,e,n,{type:c,attributes:s,handleDefaults:u,fullLayout:e,font:e.font,fullData:n,getDfltFromLayout:function(e){if(!i&&r.validate(t[e],s[e]))return t[e]},autotypenumbersDflt:e.autotypenumbers,paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}}}),nm=f({"src/plots/gl3d/index.js"(t){var e=Pt().overrideAll,r=j(),n=Kd(),i=we().getSubplotData,a=le(),o=ke(),s="gl3d",l="scene";t.name=s,t.attr=l,t.idRoot=l,t.idRegex=t.attrRegex=a.counterRegex("scene"),t.attributes=Jd(),t.layoutAttributes=tm(),t.baseLayoutAttrOverrides=e({hoverlabel:r.hoverlabel},"plot","nested"),t.supplyLayoutDefaults=rm(),t.plot=function(t){for(var e=t._fullLayout,r=t._fullData,a=e._subplots[s],o=0;o0){r=f[n];break}return r}function y(t,e){if(!(t<1||e<1)){for(var r=m(t),n=m(e),i=1,a=0;a_;)r--,r/=g(r),++r1?n:1},p.refineCoords=function(t){for(var e=this.dataScaleX,r=this.dataScaleY,i=t[0].shape[0],a=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*r+1),l=1+i+1,c=1+a+1,u=n(new Float32Array(l*c),[l,c]),h=[1/e,0,0,0,1/r,0,0,0,1],p=0;p0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(i[t]=!0,e=this.contourStart[t];ev&&(this.minValues[m]=v),this.maxValues[m]l&&(e.isomin=null,e.isomax=null);var c=o("x"),u=o("y"),h=o("z"),p=o("value");c&&c.length&&u&&u.length&&h&&h.length&&p&&p.length?(n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],i),o("valuehoverformat"),["x","y","z"].forEach((function(t){o(t+"hoverformat");var e="caps."+t;o(e+".show")&&o(e+".fill");var r="slices."+t;o(r+".show")&&(o(r+".fill"),o(r+".locations"))})),o("spaceframe.show")&&o("spaceframe.fill"),o("surface.show")&&(o("surface.count"),o("surface.fill"),o("surface.pattern")),o("contour.show")&&(o("contour.color"),o("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach((function(t){o(t)})),a(t,e,i,o,{prefix:"",cLetter:"c"}),e._length=null):e.visible=!1}e.exports={supplyDefaults:function(t,e,n,a){o(t,e,0,a,(function(n,a){return r.coerce(t,e,i,n,a)}))},supplyIsoDefaults:o}}}),mm=f({"src/traces/streamtube/calc.js"(t,e){var r=le(),n=We();function i(t){var e,n,i,o,s,l,c,u,h,p,f,d,m=t._x,g=t._y,y=t._z,v=t._len,x=-1/0,_=1/0,b=-1/0,w=1/0,T=-1/0,A=1/0,k="";for(v&&(c=m[0],h=g[0],f=y[0]),v>1&&(u=m[v-1],p=g[v-1],d=y[v-1]),e=0;eu?"-":"+")+"x")).replace("y",(h>p?"-":"+")+"y")).replace("z",(f>d?"-":"+")+"z");var C=function(){v=0,M=[],S=[],E=[]};(!v||v0;r--){var n=Math.min(e[r],e[r-1]),i=Math.max(e[r],e[r-1]);if(i>n&&n-1}function F(t,e){return null===t?e:t}function B(t,e,r){I();var n=[e],i=[r];if(s>=1)n=[e],i=[r];else if(s>0){var a=function(t,e){var r=t[0],n=t[1],i=t[2],a=function(t,e,r){for(var n=[],i=0;i-1?r[c]:C(u,h,p);l[c]=d>-1?d:P(u,h,p,F(t,f))}z(l[0],l[1],l[2])}}function j(t,e,r,n){var i=t[3];in&&(i=n);for(var a=(t[3]-i)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*t[s]+a*e[s];return o}function N(t,e,r){return t>=e&&t<=r}function U(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function V(e){for(var r=[],n=0;n<4;n++){var i=e[n];r.push([t._x[i],t._y[i],t._z[i],t._value[i]])}return r}function q(t,e,r,n,i,a){a||(a=1),r=[-1,-1,-1];var o=!1,s=[N(e[0][3],n,i),N(e[1][3],n,i),N(e[2][3],n,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,r){return U(e[0][3])&&U(e[1][3])&&U(e[2][3])?(B(t,e,r),!0):a<3&&q(t,e,r,S,E,++a)};if(s[0]&&s[1]&&s[2])return l(t,e,r)||o;var c=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach((function(a){if(s[a[0]]&&s[a[1]]&&!s[a[2]]){var u=e[a[0]],h=e[a[1]],p=e[a[2]],f=j(p,u,n,i),d=j(p,h,n,i);o=l(t,[d,f,u],[-1,-1,r[a[0]]])||o,o=l(t,[u,h,d],[r[a[0]],r[a[1]],-1])||o,c=!0}})),c||[[0,1,2],[1,2,0],[2,0,1]].forEach((function(a){if(s[a[0]]&&!s[a[1]]&&!s[a[2]]){var u=e[a[0]],h=e[a[1]],p=e[a[2]],f=j(h,u,n,i),d=j(p,u,n,i);o=l(t,[d,f,u],[-1,-1,r[a[0]]])||o,c=!0}})),o}function H(t,e,r,n){var i=!1,a=V(e),o=[N(a[0][3],r,n),N(a[1][3],r,n),N(a[2][3],r,n),N(a[3][3],r,n)];if(!(o[0]||o[1]||o[2]||o[3]))return i;if(o[0]&&o[1]&&o[2]&&o[3])return m&&(i=function(t,e,r){var n=function(n,i,a){B(t,[e[n],e[i],e[a]],[r[n],r[i],r[a]])};n(0,1,2),n(3,0,1),n(2,3,0),n(1,2,3)}(t,a,e)||i),i;var s=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],p=a[l[3]];if(m)i=B(t,[c,u,h],[e[l[0]],e[l[1]],e[l[2]]])||i;else{var f=j(p,c,r,n),d=j(p,u,r,n),g=j(p,h,r,n);i=B(null,[f,d,g],[-1,-1,-1])||i}s=!0}})),s||([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],p=a[l[3]],f=j(h,c,r,n),d=j(h,u,r,n),g=j(p,u,r,n),y=j(p,c,r,n);m?(i=B(t,[c,y,f],[e[l[0]],-1,-1])||i,i=B(t,[u,d,g],[e[l[1]],-1,-1])||i):i=function(t,e,r){var n=function(t,n,i){B(null,[e[t],e[n],e[i]],[r[t],r[n],r[i]])};n(0,1,2),n(2,3,0)}(0,[f,d,g,y],[-1,-1,-1,-1])||i,s=!0}})),s)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach((function(l){if(o[l[0]]&&!o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],p=a[l[3]],f=j(u,c,r,n),d=j(h,c,r,n),g=j(p,c,r,n);m?(i=B(t,[c,f,d],[e[l[0]],-1,-1])||i,i=B(t,[c,d,g],[e[l[0]],-1,-1])||i,i=B(t,[c,g,f],[e[l[0]],-1,-1])||i):i=B(null,[f,d,g],[-1,-1,-1])||i,s=!0}})),i}function G(t,e,r,n,i,a,o,s,l,c,u){var h=!1;return d&&(R(t,"A")&&(h=H(null,[e,r,n,a],c,u)||h),R(t,"B")&&(h=H(null,[r,n,i,l],c,u)||h),R(t,"C")&&(h=H(null,[r,a,o,l],c,u)||h),R(t,"D")&&(h=H(null,[n,a,s,l],c,u)||h),R(t,"E")&&(h=H(null,[r,n,a,l],c,u)||h)),m&&(h=H(t,[r,n,a,l],c,u)||h),h}function W(t,e,r,n,i,a,o,s){return[!0===s[0]||q(t,V([e,r,n]),[e,r,n],a,o),!0===s[1]||q(t,V([n,i,e]),[n,i,e],a,o)]}function Z(t,e,r,n,i,a,o,s,l){return s?W(t,e,r,i,n,a,o,l):W(t,r,i,n,e,a,o,l)}function Y(t,e,r,n,i,a,o){var s,l,c,u,h=!1,p=function(){h=q(t,[s,l,c],[-1,-1,-1],i,a)||h,h=q(t,[c,u,s],[-1,-1,-1],i,a)||h},f=o[0],d=o[1],m=o[2];return f&&(s=D(V([A(e,r-0,n-0)])[0],V([A(e-1,r-0,n-0)])[0],f),l=D(V([A(e,r-0,n-1)])[0],V([A(e-1,r-0,n-1)])[0],f),c=D(V([A(e,r-1,n-1)])[0],V([A(e-1,r-1,n-1)])[0],f),u=D(V([A(e,r-1,n-0)])[0],V([A(e-1,r-1,n-0)])[0],f),p()),d&&(s=D(V([A(e-0,r,n-0)])[0],V([A(e-0,r-1,n-0)])[0],d),l=D(V([A(e-0,r,n-1)])[0],V([A(e-0,r-1,n-1)])[0],d),c=D(V([A(e-1,r,n-1)])[0],V([A(e-1,r-1,n-1)])[0],d),u=D(V([A(e-1,r,n-0)])[0],V([A(e-1,r-1,n-0)])[0],d),p()),m&&(s=D(V([A(e-0,r-0,n)])[0],V([A(e-0,r-0,n-1)])[0],m),l=D(V([A(e-0,r-1,n)])[0],V([A(e-0,r-1,n-1)])[0],m),c=D(V([A(e-1,r-1,n)])[0],V([A(e-1,r-1,n-1)])[0],m),u=D(V([A(e-1,r-0,n)])[0],V([A(e-1,r-0,n-1)])[0],m),p()),h}function X(t,e,r,n,i,a,o,s,l,c,u,h){var p=t;return h?(d&&"even"===t&&(p=null),G(p,e,r,n,i,a,o,s,l,c,u)):(d&&"odd"===t&&(p=null),G(p,l,s,o,a,i,n,r,e,c,u))}function $(t,e,r,n,i){for(var a=[],o=0,s=0;sMath.abs(T-M)?[k,T]:[T,M];tt(r,C[0],C[1])}}var I=[[Math.min(S,M),Math.max(S,M)],[Math.min(k,E),Math.max(k,E)]];["x","y","z"].forEach((function(r){for(var n=[],i=0;i0&&(h.push(d.id),"x"===r?p.push([d.distRatio,0,0]):"y"===r?p.push([0,d.distRatio,0]):p.push([0,0,d.distRatio]))}else u=it(1,"x"===r?_-1:"y"===r?b-1:w-1);h.length>0&&(n[a]="x"===r?et(e,h,o,s,p,n[a]):"y"===r?rt(e,h,o,s,p,n[a]):nt(e,h,o,s,p,n[a]),a++),u.length>0&&(n[a]="x"===r?$(e,u,o,s,n[a]):"y"===r?K(e,u,o,s,n[a]):J(e,u,o,s,n[a]),a++)}var m=t.caps[r];m.show&&m.fill&&(O(m.fill),n[a]="x"===r?$(e,[0,_-1],o,s,n[a]):"y"===r?K(e,[0,b-1],o,s,n[a]):J(e,[0,w-1],o,s,n[a]),a++)}})),0===g&&L(),t._meshX=n,t._meshY=i,t._meshZ=a,t._meshIntensity=o,t._Xs=y,t._Ys=v,t._Zs=x}(),t}e.exports={findNearestOnAxis:l,generateIsoMeshes:p,createIsosurfaceTrace:function(t,e){var n=t.glplot.gl,i=r({gl:n}),a=new c(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}}}}),xm=f({"src/traces/isosurface/index.js"(t,e){e.exports={attributes:fm(),supplyDefaults:dm().supplyDefaults,calc:gm(),colorbar:{min:"cmin",max:"cmax"},plot:vm().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:nm(),categories:["gl3d","showLegend"],meta:{}}}}),_m=f({"lib/isosurface.js"(t,e){e.exports=xm()}}),bm=f({"src/traces/volume/attributes.js"(t,e){var r=Pe(),n=fm(),i=om(),a=U(),o=R().extendFlat,s=Pt().overrideAll,l=e.exports=s(o({x:n.x,y:n.y,z:n.z,value:n.value,isomin:n.isomin,isomax:n.isomax,surface:n.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:n.slices,caps:n.caps,text:n.text,hovertext:n.hovertext,xhoverformat:n.xhoverformat,yhoverformat:n.yhoverformat,zhoverformat:n.zhoverformat,valuehoverformat:n.valuehoverformat,hovertemplate:n.hovertemplate},r("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:n.colorbar,opacity:n.opacity,opacityscale:i.opacityscale,lightposition:n.lightposition,lighting:n.lighting,flatshading:n.flatshading,contour:n.contour,hoverinfo:o({},a.hoverinfo),showlegend:o({},a.showlegend,{dflt:!1})}),"calc","nested");l.x.editType=l.y.editType=l.z.editType=l.value.editType="calc+clearAxisTypes"}}),wm=f({"src/traces/volume/defaults.js"(t,e){var r=le(),n=bm(),i=dm().supplyIsoDefaults,a=sm().opacityscaleDefaults;e.exports=function(t,e,o,s){function l(i,a){return r.coerce(t,e,n,i,a)}i(t,e,o,s,l),a(t,e,s,l)}}}),Tm=f({"src/traces/volume/convert.js"(t,e){var r=Cd().gl_mesh3d,n=Fd().parseColorScale,i=le().isArrayOrTypedArray,a=Rd(),o=Ze().extractOpts,s=ym(),l=vm().findNearestOnAxis,c=vm().generateIsoMeshes;function u(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name="",this.data=null,this.showContour=!1}var h=u.prototype;h.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],a=this.data._meshZ[e],o=this.data._Ys.length,s=this.data._Zs.length,c=l(r,this.data._Xs).id,u=l(n,this.data._Ys).id,h=l(a,this.data._Zs).id,p=t.index=h+s*u+s*o*c;t.traceCoordinate=[this.data._meshX[p],this.data._meshY[p],this.data._meshZ[p],this.data._value[p]];var f=this.data.hovertext||this.data.text;return i(f)&&void 0!==f[p]?t.textLabel=f[p]:f&&(t.textLabel=f),!0}},h.update=function(t){var e=this.scene,r=e.fullSceneLayout;function i(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=c(t);var l={positions:s(i(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),i(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),i(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:s(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,opacityscale:t.opacityscale,contourEnable:t.contour.show,contourColor:a(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},u=o(t);l.vertexIntensity=t._meshIntensity,l.vertexIntensityBounds=[u.min,u.max],l.colormap=n(t),this.mesh.update(l)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var n=t.glplot.gl,i=r({gl:n}),a=new u(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}}}),Am=f({"src/traces/volume/index.js"(t,e){e.exports={attributes:bm(),supplyDefaults:wm(),calc:gm(),colorbar:{min:"cmin",max:"cmax"},plot:Tm(),moduleType:"trace",name:"volume",basePlotModule:nm(),categories:["gl3d","showLegend"],meta:{}}}}),km=f({"lib/volume.js"(t,e){e.exports=Am()}}),Mm=f({"src/traces/mesh3d/defaults.js"(t,e){var r=qt(),n=le(),i=qe(),a=pm();e.exports=function(t,e,o,s){function l(r,i){return n.coerce(t,e,a,r,i)}function c(t){var e=t.map((function(t){var e=l(t);return e&&n.isArrayOrTypedArray(e)?e:null}));return e.every((function(t){return t&&t.length===e[0].length}))&&e}c(["x","y","z"])?(c(["i","j","k"]),(!e.i||e.j&&e.k)&&(!e.j||e.k&&e.i)&&(!e.k||e.i&&e.j)?(r.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],s),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach((function(t){l(t)})),l("contour.show")&&(l("contour.color"),l("contour.width")),"intensity"in t?(l("intensity"),l("intensitymode"),i(t,e,s,l,{prefix:"",cLetter:"c"})):(e.showscale=!1,"facecolor"in t?l("facecolor"):"vertexcolor"in t?l("vertexcolor"):l("color",o)),l("text"),l("hovertext"),l("hovertemplate"),l("xhoverformat"),l("yhoverformat"),l("zhoverformat"),e._length=null):e.visible=!1):e.visible=!1}}}),Sm=f({"src/traces/mesh3d/calc.js"(t,e){var r=We();e.exports=function(t,e){e.intensity&&r(t,e,{vals:e.intensity,containerStr:"",cLetter:"c"})}}}),Em=f({"src/traces/mesh3d/convert.js"(t,e){var r=Cd().gl_mesh3d,n=Cd().delaunay_triangulate,i=Cd().alpha_shape,a=Cd().convex_hull,o=Fd().parseColorScale,s=le().isArrayOrTypedArray,l=Rd(),c=Ze().extractOpts,u=ym();function h(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var p=h.prototype;function f(t){for(var e=[],r=t.length,n=0;n=e-.5)return!1;return!0}p.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var r=this.data.hovertext||this.data.text;return s(r)&&void 0!==r[e]?t.textLabel=r[e]:r&&(t.textLabel=r),!0}},p.update=function(t){var e=this.scene,r=e.fullSceneLayout;this.data=t;var s,h=t.x.length,p=u(d(r.xaxis,t.x,e.dataScale[0],t.xcalendar),d(r.yaxis,t.y,e.dataScale[1],t.ycalendar),d(r.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!g(t.i,h)||!g(t.j,h)||!g(t.k,h))return;s=u(m(t.i),m(t.j),m(t.k))}else s=0===t.alphahull?a(p):t.alphahull>0?i(t.alphahull,p):function(t,e){for(var r=["x","y","z"].indexOf(t),i=[],a=e.length,o=0;o2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function p(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function f(t,e){var n=t.fullSceneLayout,c=t.dataScale,u=e._len,f={};function d(t,e){var r=n[e],a=c[l[e]];return i.simpleMap(t,(function(t){return r.d2l(t)*a}))}if(f.vectors=s(d(e._u,"xaxis"),d(e._v,"yaxis"),d(e._w,"zaxis"),u),!u)return{positions:[],cells:[]};var m=d(e._Xs,"xaxis"),g=d(e._Ys,"yaxis"),y=d(e._Zs,"zaxis");if(f.meshgrid=[m,g,y],f.gridFill=e._gridFill,e._slen)f.startingPositions=s(d(e._startsX,"xaxis"),d(e._startsY,"yaxis"),d(e._startsZ,"zaxis"));else{for(var v=g[0],x=h(m),_=h(y),b=new Array(x.length*_.length),w=0,T=0;To&&(o=t[0]),t[1]s&&(s=t[1])}function c(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(c);break;case"Point":l(t.coordinates);break;case"MultiPoint":t.coordinates.forEach(l)}}for(e in t.arcs.forEach((function(t){for(var e,r=-1,l=t.length;++ro&&(o=e[0]),e[1]s&&(s=e[1])})),t.objects)c(t.objects[e]);return[i,a,o,s]}function i(t,e){var r=e.id,n=e.bbox,i=null==e.properties?{}:e.properties,o=a(t,e);return null==r&&null==n?{type:"Feature",properties:i,geometry:o}:null==n?{type:"Feature",id:r,properties:i,geometry:o}:{type:"Feature",id:r,bbox:n,properties:i,geometry:o}}function a(t,e){var n=r(t.transform),i=t.arcs;function a(t,e){e.length&&e.pop();for(var r=i[t<0?~t:t],a=0,o=r.length;a1)n=function(t,e,r){var n,i=[],a=[];function o(t){var e=t<0?~t:t;(a[e]||(a[e]=[])).push({i:t,g:n})}function s(t){t.forEach(o)}function l(t){t.forEach(s)}return function t(e){switch(n=e,e.type){case"GeometryCollection":e.geometries.forEach(t);break;case"LineString":s(e.arcs);break;case"MultiLineString":case"Polygon":l(e.arcs);break;case"MultiPolygon":!function(t){t.forEach(l)}(e.arcs)}}(e),a.forEach(null==r?function(t){i.push(t[0].i)}:function(t){r(t[0].g,t[t.length-1].g)&&i.push(t[0].i)}),i}(0,e,r);else for(i=0,n=new Array(a=t.arcs.length);i1)for(var a,s,c=1,u=l(i[0]);cu&&(s=i[0],i[0]=i[c],i[c]=s,u=a);return i})).filter((function(t){return t.length>0}))}}function c(t,e){for(var r=0,n=t.length;r>>1;t[i]=2))throw new Error("n must be ≥2");var r,i=(l=t.bbox||n(t))[0],a=l[1],o=l[2],s=l[3];e={scale:[o-i?(o-i)/(r-1):1,s-a?(s-a)/(r-1):1],translate:[i,a]}}var l,c,h=u(e),p=t.objects,f={};function d(t){return h(t)}function m(t){var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(m)};break;case"Point":e={type:"Point",coordinates:d(t.coordinates)};break;case"MultiPoint":e={type:"MultiPoint",coordinates:t.coordinates.map(d)};break;default:return t}return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}for(c in p)f[c]=m(p[c]);return{type:"Topology",bbox:l,transform:e,objects:f,arcs:t.arcs.map((function(t){var e,r=0,n=1,i=t.length,a=new Array(i);for(a[0]=h(t[0],0);++r0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n},t.makeLine=function(t){return 1===t.length?{type:"LineString",coordinates:t[0]}:{type:"MultiLineString",coordinates:t}},t.makePolygon=function(t){if(1===t.length)return{type:"Polygon",coordinates:t};for(var e=new Array(t.length),r=0;r0?t>180?t-360:t:t<-180?t+360:t},t.bearingToAzimuth=function(t){let e=t%360;return e<0&&(e+=360),e},t.convertArea=function(t,e="meters",r="kilometers"){if(!(t>=0))throw new Error("area must be a positive number");let i=n[e];if(!i)throw new Error("invalid original units");let a=n[r];if(!a)throw new Error("invalid final units");return t/i*a},t.convertLength=function(t,e="kilometers",r="kilometers"){if(!(t>=0))throw new Error("length must be a positive number");return p(f(t,e),r)},t.degreesToRadians=function(t){return t%360*Math.PI/180},t.earthRadius=e,t.factors=r,t.feature=i,t.featureCollection=l,t.geometry=function(t,e,r={}){switch(t){case"Point":return a(e).geometry;case"LineString":return s(e).geometry;case"Polygon":return o(e).geometry;case"MultiPoint":return u(e).geometry;case"MultiLineString":return c(e).geometry;case"MultiPolygon":return h(e).geometry;default:throw new Error(t+" is invalid")}},t.geometryCollection=function(t,e,r={}){return i({type:"GeometryCollection",geometries:t},e,r)},t.isNumber=m,t.isObject=function(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)},t.lengthToDegrees=function(t,e){return d(f(t,e))},t.lengthToRadians=f,t.lineString=s,t.lineStrings=function(t,e,r={}){return l(t.map((t=>s(t,e))),r)},t.multiLineString=c,t.multiPoint=u,t.multiPolygon=h,t.point=a,t.points=function(t,e,r={}){return l(t.map((t=>a(t,e))),r)},t.polygon=o,t.polygons=function(t,e,r={}){return l(t.map((t=>o(t,e))),r)},t.radiansToDegrees=d,t.radiansToLength=p,t.round=function(t,e=0){if(e&&!(e>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,e||0);return Math.round(t*r)/r},t.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((t=>{if(!m(t))throw new Error("bbox must only contain numbers")}))},t.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))throw new Error("id must be a number or a string")}}}),Jm=f({"node_modules/@turf/meta/dist/cjs/index.cjs"(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Km();function r(t,e,n){if(null!==t)for(var i,a,o,s,l,c,u,h,p=0,f=0,d=t.type,m="FeatureCollection"===d,g="Feature"===d,y=m?t.features.length:1,v=0;vc||f>u||d>h)return l=r,c=i,u=f,h=d,void(o=0);var m=e.lineString.call(void 0,[l,r],t.properties);if(!1===n(m,i,a,d,o))return!1;o++,l=r})))return!1}}}))}function l(t,r){if(!t)throw new Error("geojson is required");o(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===r(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;st+function(t){let e,r=0;switch(t.type){case"Polygon":return i(t.coordinates);case"MultiPolygon":for(e=0;e0){e+=Math.abs(s(t[0]));for(let r=1;r=e?(n+2)%e:n+2],l=i[0]*o,c=a[1]*o;r+=(s[0]*o-l)*Math.sin(c),n++}return r*a}var l=n;t.area=n,t.default=l}}),tg=f({"node_modules/@turf/centroid/dist/cjs/index.cjs"(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Km(),r=Jm();function n(t,n={}){let i=0,a=0,o=0;return r.coordEach.call(void 0,t,(function(t){i+=t[0],a+=t[1],o++}),!0),e.point.call(void 0,[i/o,a/o],n.properties)}var i=n;t.centroid=n,t.default=i}}),eg=f({"node_modules/@turf/bbox/dist/cjs/index.cjs"(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Jm();function r(t,r={}){if(null!=t.bbox&&!0!==r.recompute)return t.bbox;let n=[1/0,1/0,-1/0,-1/0];return e.coordEach.call(void 0,t,(t=>{n[0]>t[0]&&(n[0]=t[0]),n[1]>t[1]&&(n[1]=t[1]),n[2]0&&t[e+1][0]<0)return e;return null}switch(e="RUS"===s||"FJI"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),i=0;ie?r[n++]=[t[i][0]+360,t[i][1]]:i===e?(r[n++]=t[i],r[n++]=[t[i][0],-90]):r[n++]=t[i];var a=h.tester(r);a.pts.pop(),l.push(a)}:function(t){l.push(h.tester(t))},a.type){case"MultiPolygon":for(r=0;r0?h.properties.ct=function(t){var e,r=t.geometry;if("MultiPolygon"===r.type)for(var n=r.coordinates,o=0,s=0;so&&(o=c,e=l)}else e=r;return a(e).geometry.coordinates}(h):h.properties.ct=[NaN,NaN],n.fIn=t,n.fOut=h,s.push(h)}else l.log(["Location",n.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete o[r]}switch(r.type){case"FeatureCollection":var p=r.features;for(n=0;n100?(clearInterval(a),n("Unexpected error while fetching from "+t)):void i++}),50)}))}for(var o=0;o")}function f(t){return t+"°"}}(c,m,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}}}),og=f({"src/traces/scattergeo/event_data.js"(t,e){e.exports=function(t,e,r,n,i){t.lon=e.lon,t.lat=e.lat,t.location=e.loc?e.loc:null;var a=n[i];return a.fIn&&a.fIn.properties&&(t.properties=a.fIn.properties),t}}}),sg=f({"src/traces/scattergeo/select.js"(t,e){var r=Ye(),n=k().BADNUM;e.exports=function(t,e){var i,a,o,s,l,c=t.cd,u=t.xaxis,h=t.yaxis,p=[],f=c[0].trace;if(!r.hasMarkers(f)&&!r.hasText(f))return[];if(!1===e)for(l=0;le?1:t>=e?0:NaN}function r(t){return 1===t.length&&(t=function(t){return function(r,n){return e(t(r),n)}}(t)),{left:function(e,r,n,i){for(null==n&&(n=0),null==i&&(i=e.length);n>>1;t(e[a],r)<0?n=a+1:i=a}return n},right:function(e,r,n,i){for(null==n&&(n=0),null==i&&(i=e.length);n>>1;t(e[a],r)>0?i=a:n=a+1}return n}}}var n=r(e),i=n.right,a=n.left;function o(t,e){return[t,e]}function s(t){return null===t?NaN:+t}function l(t,e){var r,n,i=t.length,a=0,o=-1,l=0,c=0;if(null==e)for(;++o1)return c/(a-1)}function c(t,e){var r=l(t,e);return r&&Math.sqrt(r)}function u(t,e){var r,n,i,a=t.length,o=-1;if(null==e){for(;++o=r)for(n=i=r;++or&&(n=r),i=r)for(n=i=r;++or&&(n=r),i=0?(a>=y?10:a>=v?5:a>=x?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(a>=y?10:a>=v?5:a>=x?2:1)}function b(t,e,r){var n=Math.abs(e-t)/Math.max(0,r),i=Math.pow(10,Math.floor(Math.log(n)/Math.LN10)),a=n/i;return a>=y?i*=10:a>=v?i*=5:a>=x&&(i*=2),e=1)return+r(t[n-1],n-1,t);var n,i=(n-1)*e,a=Math.floor(i),o=+r(t[a],a,t);return o+(+r(t[a+1],a+1,t)-o)*(i-a)}}function A(t,e){var r,n,i=t.length,a=-1;if(null==e){for(;++a=r)for(n=r;++ar&&(n=r)}else for(;++a=r)for(n=r;++ar&&(n=r);return n}function k(t){if(!(i=t.length))return[];for(var e=-1,r=A(t,M),n=new Array(r);++et?1:e>=t?0:NaN},t.deviation=c,t.extent=u,t.histogram=function(){var t=m,e=u,r=w;function n(n){var a,o,s=n.length,l=new Array(s);for(a=0;ah;)p.pop(),--f;var d,m=new Array(f+1);for(a=0;a<=f;++a)(d=m[a]=[]).x0=a>0?p[a-1]:u,d.x1=a=r)for(n=r;++an&&(n=r)}else for(;++a=r)for(n=r;++an&&(n=r);return n},t.mean=function(t,e){var r,n=t.length,i=n,a=-1,o=0;if(null==e)for(;++a=0;)for(e=(n=t[i]).length;--e>=0;)r[--o]=n[e];return r},t.min=A,t.pairs=function(t,e){null==e&&(e=o);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r0)return[t];if((n=e0)for(t=Math.ceil(t/o),e=Math.floor(e/o),a=new Array(i=Math.ceil(e-t+1));++s0?1:t<0?-1:0},A=Math.sqrt,k=Math.tan;function M(t){return t>1?0:t<-1?l:Math.acos(t)}function S(t){return t>1?c:t<-1?-c:Math.asin(t)}function E(t){return(t=w(t/2))*t}function C(){}function I(t,e){t&&P.hasOwnProperty(t.type)&&P[t.type](t,e)}var L={Feature:function(t,e){I(t.geometry,e)},FeatureCollection:function(t,e){for(var r=t.features,n=-1,i=r.length;++n=0?1:-1,i=n*r,a=y(e=(e*=f)/2+u),o=w(e),s=N*o,l=j*a+s*y(i),c=s*n*w(i);U.add(g(c,l)),B=t,j=a,N=o}function Y(t){return[g(t[1],t[0]),S(t[2])]}function X(t){var e=t[0],r=t[1],n=y(r);return[n*y(e),n*w(e),w(r)]}function $(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function K(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function J(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Q(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function tt(t){var e=A(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var et,rt,nt,it,at,ot,st,lt,ct,ut,ht=r(),pt={point:ft,lineStart:mt,lineEnd:gt,polygonStart:function(){pt.point=yt,pt.lineStart=vt,pt.lineEnd=xt,ht.reset(),q.polygonStart()},polygonEnd:function(){q.polygonEnd(),pt.point=ft,pt.lineStart=mt,pt.lineEnd=gt,U<0?(et=-(nt=180),rt=-(it=90)):ht>o?it=90:ht<-o&&(rt=-90),ut[0]=et,ut[1]=nt},sphere:function(){et=-(nt=180),rt=-(it=90)}};function ft(t,e){ct.push(ut=[et=t,nt=t]),eit&&(it=e)}function dt(t,e){var r=X([t*f,e*f]);if(lt){var n=K(lt,r),i=K([n[1],-n[0],0],n);tt(i),i=Y(i);var a,o=t-at,s=o>0?1:-1,l=i[0]*p*s,c=d(o)>180;c^(s*atit&&(it=a):c^(s*at<(l=(l+360)%360-180)&&lit&&(it=e)),c?t_t(et,nt)&&(nt=t):_t(t,nt)>_t(et,nt)&&(et=t):nt>=et?(tnt&&(nt=t)):t>at?_t(et,t)>_t(et,nt)&&(nt=t):_t(t,nt)>_t(et,nt)&&(et=t)}else ct.push(ut=[et=t,nt=t]);eit&&(it=e),lt=r,at=t}function mt(){pt.point=dt}function gt(){ut[0]=et,ut[1]=nt,pt.point=ft,lt=null}function yt(t,e){if(lt){var r=t-at;ht.add(d(r)>180?r+(r>0?360:-360):r)}else ot=t,st=e;q.point(t,e),dt(t,e)}function vt(){q.lineStart()}function xt(){yt(ot,st),q.lineEnd(),d(ht)>o&&(et=-(nt=180)),ut[0]=et,ut[1]=nt,lt=null}function _t(t,e){return(e-=t)<0?e+360:e}function bt(t,e){return t[0]-e[0]}function wt(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:el?t+Math.round(-t/h)*h:t,e]}function Qt(t,e,r){return(t%=h)?e||r?Kt(ee(t),re(e,r)):ee(t):e||r?re(e,r):Jt}function te(t){return function(e,r){return[(e+=t)>l?e-h:e<-l?e+h:e,r]}}function ee(t){var e=te(t);return e.invert=te(-t),e}function re(t,e){var r=y(t),n=w(t),i=y(e),a=w(e);function o(t,e){var o=y(e),s=y(t)*o,l=w(t)*o,c=w(e),u=c*r+s*n;return[g(l*i-u*a,s*r-c*n),S(u*i+l*a)]}return o.invert=function(t,e){var o=y(e),s=y(t)*o,l=w(t)*o,c=w(e),u=c*i-l*a;return[g(l*i+c*a,s*r+u*n),S(u*r-s*n)]},o}function ne(t){function e(e){return(e=t(e[0]*f,e[1]*f))[0]*=p,e[1]*=p,e}return t=Qt(t[0]*f,t[1]*f,t.length>2?t[2]*f:0),e.invert=function(e){return(e=t.invert(e[0]*f,e[1]*f))[0]*=p,e[1]*=p,e},e}function ie(t,e,r,n,i,a){if(r){var o=y(e),s=w(e),l=n*r;null==i?(i=e+n*h,a=e-l/2):(i=ae(o,i),a=ae(o,a),(n>0?ia)&&(i+=n*h));for(var c,u=i;n>0?u>a:u1&&e.push(e.pop().concat(e.shift()))},result:function(){var r=e;return e=[],t=null,r}}}function se(t,e){return d(t[0]-e[0])=0;--a)i.point((h=u[a])[0],h[1]);else n(f.x,f.p.x,-1,i);f=f.p}u=(f=f.o).z,d=!d}while(!f.v);i.lineEnd()}}}function ue(t){if(e=t.length){for(var e,r,n=0,i=t[0];++n=0?1:-1,D=z*P,O=D>l,R=T*I;if(he.add(g(R*z*w(D),A*L+R*y(D))),s+=O?P+z*h:P,O^_>=r^E>=r){var F=K(X(x),X(M));tt(F);var B=K(a,F);tt(B);var j=(O^P>=0?-1:1)*S(B[2]);(n>j||n===j&&(F[0]||F[1]))&&(p+=O^P>=0?1:-1)}}return(s<-o||s0){for(p||(a.polygonStart(),p=!0),a.lineStart(),t=0;t1&&2&i&&c.push(c.pop().concat(c.shift())),s.push(c.filter(me))}}return f}}function me(t){return t.length>1}function ge(t,e){return((t=t.x)[0]<0?t[1]-c-o:c-t[1])-((e=e.x)[0]<0?e[1]-c-o:c-e[1])}var ye=de((function(){return!0}),(function(t){var e,r=NaN,n=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(a,s){var u=a>0?l:-l,h=d(a-r);d(h-l)0?c:-c),t.point(i,n),t.lineEnd(),t.lineStart(),t.point(u,n),t.point(a,n),e=0):i!==u&&h>=l&&(d(r-i)o?m((w(e)*(a=y(n))*w(r)-w(n)*(i=y(e))*w(t))/(i*a*s)):(e+n)/2}(r,n,a,s),t.point(i,n),t.lineEnd(),t.lineStart(),t.point(u,n),e=0),t.point(r=a,n=s),i=u},lineEnd:function(){t.lineEnd(),r=n=NaN},clean:function(){return 2-e}}}),(function(t,e,r,n){var i;if(null==t)i=r*c,n.point(-l,i),n.point(0,i),n.point(l,i),n.point(l,0),n.point(l,-i),n.point(0,-i),n.point(-l,-i),n.point(-l,0),n.point(-l,i);else if(d(t[0]-e[0])>o){var a=t[0]0,i=d(e)>o;function a(t,r){return y(t)*y(r)>e}function s(t,r,n){var i=[1,0,0],a=K(X(t),X(r)),s=$(a,a),c=a[0],u=s-c*c;if(!u)return!n&&t;var h=e*s/u,p=-e*c/u,f=K(i,a),m=Q(i,h);J(m,Q(a,p));var g=f,y=$(m,g),v=$(g,g),x=y*y-v*($(m,m)-1);if(!(x<0)){var _=A(x),b=Q(g,(-y-_)/v);if(J(b,m),b=Y(b),!n)return b;var w,T=t[0],k=r[0],M=t[1],S=r[1];k0^b[1]<(d(b[0]-T)l^(T<=b[0]&&b[0]<=k)){var I=Q(g,(-y+_)/v);return J(I,m),[b,Y(I)]}}}function c(e,r){var i=n?t:l-t,a=0;return e<-i?a|=1:e>i&&(a|=2),r<-i?a|=4:r>i&&(a|=8),a}return de(a,(function(t){var e,r,o,u,h;return{lineStart:function(){u=o=!1,h=1},point:function(p,f){var d,m=[p,f],g=a(p,f),y=n?g?0:c(p,f):g?c(p+(p<0?l:-l),f):0;if(!e&&(u=o=g)&&t.lineStart(),g!==o&&(!(d=s(e,m))||se(e,d)||se(m,d))&&(m[2]=1),g!==o)h=0,g?(t.lineStart(),d=s(m,e),t.point(d[0],d[1])):(d=s(e,m),t.point(d[0],d[1],2),t.lineEnd()),e=d;else if(i&&e&&n^g){var v;!(y&r)&&(v=s(m,e,!0))&&(h=0,n?(t.lineStart(),t.point(v[0][0],v[0][1]),t.point(v[1][0],v[1][1]),t.lineEnd()):(t.point(v[1][0],v[1][1]),t.lineEnd(),t.lineStart(),t.point(v[0][0],v[0][1],3)))}g&&(!e||!se(e,m))&&t.point(m[0],m[1]),e=m,o=g,r=y},lineEnd:function(){o&&t.lineEnd(),e=null},clean:function(){return h|(u&&o)<<1}}}),(function(e,n,i,a){ie(a,t,r,i,e,n)}),n?[0,-t]:[-l,t-l])}var xe=1e9,_e=-xe;function be(t,r,n,i){function a(e,a){return t<=e&&e<=n&&r<=a&&a<=i}function s(e,a,o,s){var c=0,h=0;if(null==e||(c=l(e,o))!==(h=l(a,o))||u(e,a)<0^o>0)do{s.point(0===c||3===c?t:n,c>1?i:r)}while((c=(c+o+4)%4)!==h);else s.point(a[0],a[1])}function l(e,i){return d(e[0]-t)0?0:3:d(e[0]-n)0?2:1:d(e[1]-r)0?1:0:i>0?3:2}function c(t,e){return u(t.x,e.x)}function u(t,e){var r=l(t,1),n=l(e,1);return r!==n?r-n:0===r?e[1]-t[1]:1===r?t[0]-e[0]:2===r?t[1]-e[1]:e[0]-t[0]}return function(o){var l,u,h,p,f,d,m,g,y,v,x,_=o,b=oe(),w={point:T,lineStart:function(){w.point=A,u&&u.push(h=[]),v=!0,y=!1,m=g=NaN},lineEnd:function(){l&&(A(p,f),d&&y&&b.rejoin(),l.push(b.result())),w.point=T,y&&_.lineEnd()},polygonStart:function(){_=b,l=[],u=[],x=!0},polygonEnd:function(){var r=function(){for(var e=0,r=0,n=u.length;ri&&(p-a)*(i-o)>(f-o)*(t-a)&&++e:f<=i&&(p-a)*(i-o)<(f-o)*(t-a)&&--e;return e}(),n=x&&r,a=(l=e.merge(l)).length;(n||a)&&(o.polygonStart(),n&&(o.lineStart(),s(null,null,1,o),o.lineEnd()),a&&ce(l,c,r,s,o),o.polygonEnd()),_=o,l=u=h=null}};function T(t,e){a(t,e)&&_.point(t,e)}function A(e,o){var s=a(e,o);if(u&&h.push([e,o]),v)p=e,f=o,d=s,v=!1,s&&(_.lineStart(),_.point(e,o));else if(s&&y)_.point(e,o);else{var l=[m=Math.max(_e,Math.min(xe,m)),g=Math.max(_e,Math.min(xe,g))],c=[e=Math.max(_e,Math.min(xe,e)),o=Math.max(_e,Math.min(xe,o))];!function(t,e,r,n,i,a){var o,s=t[0],l=t[1],c=0,u=1,h=e[0]-s,p=e[1]-l;if(o=r-s,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=i-s,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>c&&(c=o)}else if(h>0){if(o0)){if(o/=p,p<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=a-l,p||!(o<0)){if(o/=p,p<0){if(o>u)return;o>c&&(c=o)}else if(p>0){if(o0&&(t[0]=s+c*h,t[1]=l+c*p),u<1&&(e[0]=s+u*h,e[1]=l+u*p),!0}}}}}(l,c,t,r,n,i)?s&&(_.lineStart(),_.point(e,o),x=!1):(y||(_.lineStart(),_.point(l[0],l[1])),_.point(c[0],c[1]),s||_.lineEnd(),x=!1)}m=e,g=o,y=s}return w}}var we,Te,Ae,ke=r(),Me={sphere:C,point:C,lineStart:function(){Me.point=Ee,Me.lineEnd=Se},lineEnd:C,polygonStart:C,polygonEnd:C};function Se(){Me.point=Me.lineEnd=C}function Ee(t,e){we=t*=f,Te=w(e*=f),Ae=y(e),Me.point=Ce}function Ce(t,e){t*=f;var r=w(e*=f),n=y(e),i=d(t-we),a=y(i),o=n*w(i),s=Ae*r-Te*n*a,l=Te*r+Ae*n*a;ke.add(g(A(o*o+s*s),l)),we=t,Te=r,Ae=n}function Ie(t){return ke.reset(),O(t,Me),+ke}var Le=[null,null],Pe={type:"LineString",coordinates:Le};function ze(t,e){return Le[0]=t,Le[1]=e,Ie(Pe)}var De={Feature:function(t,e){return Re(t.geometry,e)},FeatureCollection:function(t,e){for(var r=t.features,n=-1,i=r.length;++n0&&(i=ze(t[a],t[a-1]))>0&&r<=i&&n<=i&&(r+n-i)*(1-Math.pow((r-n)/i,2))o})).map(u)).concat(e.range(v(s/g)*g,a,g).filter((function(t){return d(t%x)>o})).map(h))}return b.lines=function(){return w().map((function(t){return{type:"LineString",coordinates:t}}))},b.outline=function(){return{type:"Polygon",coordinates:[p(i).concat(f(l).slice(1),p(n).reverse().slice(1),f(c).reverse().slice(1))]}},b.extent=function(t){return arguments.length?b.extentMajor(t).extentMinor(t):b.extentMinor()},b.extentMajor=function(t){return arguments.length?(i=+t[0][0],n=+t[1][0],c=+t[0][1],l=+t[1][1],i>n&&(t=i,i=n,n=t),c>l&&(t=c,c=l,l=t),b.precision(_)):[[i,c],[n,l]]},b.extentMinor=function(e){return arguments.length?(r=+e[0][0],t=+e[1][0],s=+e[0][1],a=+e[1][1],r>t&&(e=r,r=t,t=e),s>a&&(e=s,s=a,a=e),b.precision(_)):[[r,s],[t,a]]},b.step=function(t){return arguments.length?b.stepMajor(t).stepMinor(t):b.stepMinor()},b.stepMajor=function(t){return arguments.length?(y=+t[0],x=+t[1],b):[y,x]},b.stepMinor=function(t){return arguments.length?(m=+t[0],g=+t[1],b):[m,g]},b.precision=function(e){return arguments.length?(_=+e,u=Ve(s,a,90),h=qe(r,t,_),p=Ve(c,l,90),f=qe(i,n,_),b):_},b.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ge(t){return t}var We,Ze,Ye,Xe,$e=r(),Ke=r(),Je={point:C,lineStart:C,lineEnd:C,polygonStart:function(){Je.lineStart=Qe,Je.lineEnd=rr},polygonEnd:function(){Je.lineStart=Je.lineEnd=Je.point=C,$e.add(d(Ke)),Ke.reset()},result:function(){var t=$e/2;return $e.reset(),t}};function Qe(){Je.point=tr}function tr(t,e){Je.point=er,We=Ye=t,Ze=Xe=e}function er(t,e){Ke.add(Xe*t-Ye*e),Ye=t,Xe=e}function rr(){er(We,Ze)}var nr,ir,ar,or,sr=1/0,lr=sr,cr=-sr,ur=cr,hr={point:function(t,e){tcr&&(cr=t),eur&&(ur=e)},lineStart:C,lineEnd:C,polygonStart:C,polygonEnd:C,result:function(){var t=[[sr,lr],[cr,ur]];return cr=ur=-(lr=sr=1/0),t}},pr=0,fr=0,dr=0,mr=0,gr=0,yr=0,vr=0,xr=0,_r=0,br={point:wr,lineStart:Tr,lineEnd:Mr,polygonStart:function(){br.lineStart=Sr,br.lineEnd=Er},polygonEnd:function(){br.point=wr,br.lineStart=Tr,br.lineEnd=Mr},result:function(){var t=_r?[vr/_r,xr/_r]:yr?[mr/yr,gr/yr]:dr?[pr/dr,fr/dr]:[NaN,NaN];return pr=fr=dr=mr=gr=yr=vr=xr=_r=0,t}};function wr(t,e){pr+=t,fr+=e,++dr}function Tr(){br.point=Ar}function Ar(t,e){br.point=kr,wr(ar=t,or=e)}function kr(t,e){var r=t-ar,n=e-or,i=A(r*r+n*n);mr+=i*(ar+t)/2,gr+=i*(or+e)/2,yr+=i,wr(ar=t,or=e)}function Mr(){br.point=wr}function Sr(){br.point=Cr}function Er(){Ir(nr,ir)}function Cr(t,e){br.point=Ir,wr(nr=ar=t,ir=or=e)}function Ir(t,e){var r=t-ar,n=e-or,i=A(r*r+n*n);mr+=i*(ar+t)/2,gr+=i*(or+e)/2,yr+=i,vr+=(i=or*t-ar*e)*(ar+t),xr+=i*(or+e),_r+=3*i,wr(ar=t,or=e)}function Lr(t){this._context=t}Lr.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,h)}},result:C};var Pr,zr,Dr,Or,Rr,Fr=r(),Br={point:C,lineStart:function(){Br.point=jr},lineEnd:function(){Pr&&Nr(zr,Dr),Br.point=C},polygonStart:function(){Pr=!0},polygonEnd:function(){Pr=null},result:function(){var t=+Fr;return Fr.reset(),t}};function jr(t,e){Br.point=Nr,zr=Or=t,Dr=Rr=e}function Nr(t,e){Or-=t,Rr-=e,Fr.add(A(Or*Or+Rr*Rr)),Or=t,Rr=e}function Ur(){this._string=[]}function Vr(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function qr(t){return function(e){var r=new Hr;for(var n in t)r[n]=t[n];return r.stream=e,r}}function Hr(){}function Gr(t,e,r){var n=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=n&&t.clipExtent(null),O(r,t.stream(hr)),e(hr.result()),null!=n&&t.clipExtent(n),t}function Wr(t,e,r){return Gr(t,(function(r){var n=e[1][0]-e[0][0],i=e[1][1]-e[0][1],a=Math.min(n/(r[1][0]-r[0][0]),i/(r[1][1]-r[0][1])),o=+e[0][0]+(n-a*(r[1][0]+r[0][0]))/2,s=+e[0][1]+(i-a*(r[1][1]+r[0][1]))/2;t.scale(150*a).translate([o,s])}),r)}function Zr(t,e,r){return Wr(t,[[0,0],e],r)}function Yr(t,e,r){return Gr(t,(function(r){var n=+e,i=n/(r[1][0]-r[0][0]),a=(n-i*(r[1][0]+r[0][0]))/2,o=-i*r[0][1];t.scale(150*i).translate([a,o])}),r)}function Xr(t,e,r){return Gr(t,(function(r){var n=+e,i=n/(r[1][1]-r[0][1]),a=-i*r[0][0],o=(n-i*(r[1][1]+r[0][1]))/2;t.scale(150*i).translate([a,o])}),r)}Ur.prototype={_radius:4.5,_circle:Vr(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=Vr(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}},Hr.prototype={constructor:Hr,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var $r=y(30*f);function Kr(t,e){return+e?function(t,e){function r(n,i,a,s,l,c,u,h,p,f,m,y,v,x){var _=u-n,b=h-i,w=_*_+b*b;if(w>4*e&&v--){var T=s+f,k=l+m,M=c+y,E=A(T*T+k*k+M*M),C=S(M/=E),I=d(d(M)-1)e||d((_*D+b*O)/w-.5)>.3||s*f+l*m+c*y<$r)&&(r(n,i,a,s,l,c,P,z,I,T/=E,k/=E,M,v,x),x.point(P,z),r(P,z,I,T,k,M,u,h,p,f,m,y,v,x))}}return function(e){var n,i,a,o,s,l,c,u,h,p,f,d,m={point:g,lineStart:y,lineEnd:x,polygonStart:function(){e.polygonStart(),m.lineStart=_},polygonEnd:function(){e.polygonEnd(),m.lineStart=y}};function g(r,n){r=t(r,n),e.point(r[0],r[1])}function y(){u=NaN,m.point=v,e.lineStart()}function v(n,i){var a=X([n,i]),o=t(n,i);r(u,h,c,p,f,d,u=o[0],h=o[1],c=n,p=a[0],f=a[1],d=a[2],16,e),e.point(u,h)}function x(){m.point=g,e.lineEnd()}function _(){y(),m.point=b,m.lineEnd=w}function b(t,e){v(n=t,e),i=u,a=h,o=p,s=f,l=d,m.point=v}function w(){r(u,h,c,p,f,d,i,a,n,o,s,l,16,e),m.lineEnd=x,x()}return m}}(t,e):function(t){return qr({point:function(e,r){e=t(e,r),this.stream.point(e[0],e[1])}})}(t)}var Jr=qr({point:function(t,e){this.stream.point(t*f,e*f)}});function Qr(t,e,r,n,i){function a(a,o){return[e+t*(a*=n),r-t*(o*=i)]}return a.invert=function(a,o){return[(a-e)/t*n,(r-o)/t*i]},a}function tn(t,e,r,n,i,a){var o=y(a),s=w(a),l=o*t,c=s*t,u=o/t,h=s/t,p=(s*r-o*e)/t,f=(s*e+o*r)/t;function d(t,a){return[l*(t*=n)-c*(a*=i)+e,r-c*t-l*a]}return d.invert=function(t,e){return[n*(u*t-h*e+p),i*(f-h*t-u*e)]},d}function en(t){return rn((function(){return t}))()}function rn(t){var e,r,n,i,a,o,s,l,c,u,h=150,d=480,m=250,g=0,y=0,v=0,x=0,_=0,b=0,w=1,T=1,k=null,M=ye,S=null,E=Ge,C=.5;function I(t){return l(t[0]*f,t[1]*f)}function L(t){return(t=l.invert(t[0],t[1]))&&[t[0]*p,t[1]*p]}function P(){var t=tn(h,0,0,w,T,b).apply(null,e(g,y)),n=(b?tn:Qr)(h,d-t[0],m-t[1],w,T,b);return r=Qt(v,x,_),s=Kt(e,n),l=Kt(r,s),o=Kr(s,C),z()}function z(){return c=u=null,I}return I.stream=function(t){return c&&u===t?c:c=Jr(function(t){return qr({point:function(e,r){var n=t(e,r);return this.stream.point(n[0],n[1])}})}(r)(M(o(E(u=t)))))},I.preclip=function(t){return arguments.length?(M=t,k=void 0,z()):M},I.postclip=function(t){return arguments.length?(E=t,S=n=i=a=null,z()):E},I.clipAngle=function(t){return arguments.length?(M=+t?ve(k=t*f):(k=null,ye),z()):k*p},I.clipExtent=function(t){return arguments.length?(E=null==t?(S=n=i=a=null,Ge):be(S=+t[0][0],n=+t[0][1],i=+t[1][0],a=+t[1][1]),z()):null==S?null:[[S,n],[i,a]]},I.scale=function(t){return arguments.length?(h=+t,P()):h},I.translate=function(t){return arguments.length?(d=+t[0],m=+t[1],P()):[d,m]},I.center=function(t){return arguments.length?(g=t[0]%360*f,y=t[1]%360*f,P()):[g*p,y*p]},I.rotate=function(t){return arguments.length?(v=t[0]%360*f,x=t[1]%360*f,_=t.length>2?t[2]%360*f:0,P()):[v*p,x*p,_*p]},I.angle=function(t){return arguments.length?(b=t%360*f,P()):b*p},I.reflectX=function(t){return arguments.length?(w=t?-1:1,P()):w<0},I.reflectY=function(t){return arguments.length?(T=t?-1:1,P()):T<0},I.precision=function(t){return arguments.length?(o=Kr(s,C=t*t),z()):A(C)},I.fitExtent=function(t,e){return Wr(I,t,e)},I.fitSize=function(t,e){return Zr(I,t,e)},I.fitWidth=function(t,e){return Yr(I,t,e)},I.fitHeight=function(t,e){return Xr(I,t,e)},function(){return e=t.apply(this,arguments),I.invert=e.invert&&L,P()}}function nn(t){var e=0,r=l/3,n=rn(t),i=n(e,r);return i.parallels=function(t){return arguments.length?n(e=t[0]*f,r=t[1]*f):[e*p,r*p]},i}function an(t,e){var r=w(t),n=(r+w(e))/2;if(d(n)0?e<-c+o&&(e=-c+o):e>c-o&&(e=c-o);var r=i/b(dn(e),n);return[r*w(n*t),i-r*y(n*t)]}return a.invert=function(t,e){var r=i-e,a=T(n)*A(t*t+r*r),o=g(t,d(r))*T(r);return r*n<0&&(o-=l*T(t)*T(r)),[o/n,2*m(b(i/a,1/n))-c]},a}function gn(t,e){return[t,e]}function yn(t,e){var r=y(t),n=t===e?w(t):(r-y(e))/(e-t),i=r/n+t;if(d(n)o&&--i>0);return[t/(.8707+(a=n*n)*(a*(a*a*a*(.003971-.001529*a)-.013791)-.131979)),n]},Mn.invert=cn(S),Sn.invert=cn((function(t){return 2*m(t)})),En.invert=function(t,e){return[-e,2*m(x(t))-c]},t.geoAlbers=sn,t.geoAlbersUsa=function(){var t,e,r,n,i,a,s=sn(),l=on().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=on().rotate([157,0]).center([-3,19.9]).parallels([8,18]),u={point:function(t,e){a=[t,e]}};function h(t){var e=t[0],o=t[1];return a=null,r.point(e,o),a||(n.point(e,o),a)||(i.point(e,o),a)}function p(){return t=e=null,h}return h.invert=function(t){var e=s.scale(),r=s.translate(),n=(t[0]-r[0])/e,i=(t[1]-r[1])/e;return(i>=.12&&i<.234&&n>=-.425&&n<-.214?l:i>=.166&&i<.234&&n>=-.214&&n<-.115?c:s).invert(t)},h.stream=function(r){return t&&e===r?t:t=function(t){var e=t.length;return{point:function(r,n){for(var i=-1;++i_t(n[0],n[1])&&(n[1]=i[1]),_t(i[0],n[1])>_t(n[0],n[1])&&(n[0]=i[0])):a.push(n=i);for(o=-1/0,e=0,n=a[r=a.length-1];e<=r;n=i,++e)i=a[e],(s=_t(n[1],i[0]))>o&&(o=s,et=i[0],nt=n[1])}return ct=ut=null,et===1/0||rt===1/0?[[NaN,NaN],[NaN,NaN]]:[[et,rt],[nt,it]]},t.geoCentroid=function(t){Tt=At=kt=Mt=St=Et=Ct=It=Lt=Pt=zt=0,O(t,jt);var e=Lt,r=Pt,n=zt,i=e*e+r*r+n*n;return i2?t[2]+90:90]):[(t=r())[0],t[1],t[2]-90]},r([0,0,90]).scale(159.155)},t.geoTransverseMercatorRaw=En,Object.defineProperty(t,"__esModule",{value:!0})},"object"==typeof t&&typeof e<"u"?n(t,lg()):n((r=r||self).d3=r.d3||{},r.d3)}}),ug=f({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(t,e){var r,n;r=t,n=function(t,e,r){var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,c=Math.log,u=Math.max,h=Math.min,p=Math.pow,f=Math.round,d=Math.sign||function(t){return t>0?1:t<0?-1:0},m=Math.sin,g=Math.tan,y=1e-6,v=1e-12,x=Math.PI,_=x/2,b=x/4,w=Math.SQRT1_2,T=I(2),A=I(x),k=2*x,M=180/x,S=x/180;function E(t){return t>1?_:t<-1?-_:Math.asin(t)}function C(t){return t>1?0:t<-1?x:Math.acos(t)}function I(t){return t>0?Math.sqrt(t):0}function L(t){return(s(t)-s(-t))/2}function P(t){return(s(t)+s(-t))/2}function z(t){var e=g(t/2),r=2*c(o(t/2))/(e*e);function i(t,e){var n=o(t),i=o(e),a=m(e),s=i*n,l=-((1-s?c((1+s)/2)/(1-s):-.5)+r/(1+s));return[l*i*m(t),l*a]}return i.invert=function(e,i){var s,l=I(e*e+i*i),u=-t/2,h=50;if(!l)return[0,0];do{var p=u/2,f=o(p),d=m(p),g=d/f,v=-c(n(f));u-=s=(2/g*v-r*g-l)/(-v/(d*d)+1-r/(2*f*f))*(f<0?.7:1)}while(n(s)>y&&--h>0);var x=m(u);return[a(e*x,l*o(u)),E(i*x/l)]},i}function D(t,e){var r=o(e),n=function(t){return t?t/Math.sin(t):1}(C(r*o(t/=2)));return[2*r*m(t)*n,m(e)*n]}function O(t){var e=m(t),r=o(t),i=t>=0?1:-1,s=g(i*t),l=(1+e-r)/2;function c(t,n){var c=o(n),u=o(t/=2);return[(1+c)*m(t),(i*n>-a(u,s)-.001?0:10*-i)+l+m(n)*r-(1+c)*e*u]}return c.invert=function(t,c){var u=0,h=0,p=50;do{var f=o(u),d=m(u),g=o(h),v=m(h),x=1+g,_=x*d-t,b=l+v*r-x*e*f-c,w=x*f/2,T=-d*v,A=e*x*d/2,k=r*g+e*f*v,M=T*A-k*w,S=(b*T-_*k)/M/2,E=(_*A-b*w)/M;n(E)>2&&(E/=2),u-=S,h-=E}while((n(S)>y||n(E)>y)&&--p>0);return i*h>-a(o(u),s)-.001?[2*u,h]:null},c}function R(t,e){var r=g(e/2),n=I(1-r*r),i=1+n*o(t/=2),a=m(t)*n/i,s=r/i,l=a*a,c=s*s;return[4/3*a*(3+l-3*c),4/3*s*(3+3*l-c)]}D.invert=function(t,e){if(!(t*t+4*e*e>x*x+y)){var r=t,i=e,a=25;do{var s,l=m(r),c=m(r/2),u=o(r/2),h=m(i),p=o(i),f=m(2*i),d=h*h,g=p*p,v=c*c,_=1-g*u*u,b=_?C(p*u)*I(s=1/_):s=0,w=2*b*p*c-t,T=b*h-e,A=s*(g*v+b*p*u*d),k=s*(.5*l*f-2*b*h*c),M=.25*s*(f*c-b*h*g*l),S=s*(d*u+b*v*p),E=k*M-S*A;if(!E)break;var L=(T*k-w*S)/E,P=(w*M-T*A)/E;r-=L,i-=P}while((n(L)>y||n(P)>y)&&--a>0);return[r,i]}},R.invert=function(t,e){if(e*=3/8,!(t*=3/8)&&n(e)>1)return null;var r=1+t*t+e*e,i=I((r-I(r*r-4*e*e))/2),s=E(i)/3,l=i?function(t){return c(t+I(t*t-1))}(n(e/i))/3:function(t){return c(t+I(t*t+1))}(n(t))/3,u=o(s),h=P(l),p=h*h-u*u;return[2*d(t)*a(L(l)*u,.25-p),2*d(e)*a(h*m(s),.25+p)]};var F=I(8),B=c(1+T);function j(t,e){var r=n(e);return r_){var l=a(s[1],s[0]),c=I(s[0]*s[0]+s[1]*s[1]),u=r*f((l-_)/r)+_,h=a(m(l-=u),2-o(l));l=u+E(x/c*m(h))-h,s[0]=c*o(l),s[1]=c*m(l)}return s}return s.invert=function(t,n){var s=I(t*t+n*n);if(s>_){var l=a(n,t),c=r*f((l-_)/r)+_,u=l>c?-1:1,h=s*o(c-l),p=1/g(u*C((h-x)/I(x*(x-2*h)+s*s)));l=c+2*i((p+u*I(p*p-3))/3),t=s*o(l),n=s*m(l)}return e.geoAzimuthalEquidistantRaw.invert(t,n)},s}function U(t,r){if(arguments.length<2&&(r=t),1===r)return e.geoAzimuthalEqualAreaRaw;if(r===1/0)return V;function n(n,i){var a=e.geoAzimuthalEqualAreaRaw(n/r,i);return a[0]*=t,a}return n.invert=function(n,i){var a=e.geoAzimuthalEqualAreaRaw.invert(n/t,i);return a[0]*=r,a},n}function V(t,e){return[t*o(e)/o(e/=2),2*m(e)]}function q(t,e,r){var i,a,o,s=100;r=void 0===r?0:+r,e=+e;do{(a=t(r))===(o=t(r+y))&&(o=a+y),r-=i=-1*y*(a-e)/(a-o)}while(s-- >0&&n(i)>y);return s<0?NaN:r}function H(t,e,r){return void 0===e&&(e=40),void 0===r&&(r=v),function(i,a,o,s){var l,c,u;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var h=0;hl)o-=c/=2,s-=u/=2;else{l=m;var g=(o>0?-1:1)*r,y=(s>0?-1:1)*r,v=t(o+g,s),x=t(o,s+y),_=(v[0]-p[0])/g,b=(v[1]-p[1])/g,w=(x[0]-p[0])/y,T=(x[1]-p[1])/y,A=T*_-b*w,k=(n(A)<.5?.5:1)/A;if(o+=c=(d*w-f*T)*k,s+=u=(f*b-d*_)*k,n(c)0&&(i[1]*=1+a/1.5*i[0]*i[0]),i}return e.invert=H(e),e}function W(t,e){var r,i=t*m(e),a=30;do{e-=r=(e+m(e)-i)/(1+o(e))}while(n(r)>y&&--a>0);return e/2}function Z(t,e,r){function n(n,i){return[t*n*o(i=W(r,i)),e*m(i)]}return n.invert=function(n,i){return i=E(i/e),[n/(t*o(i)),E((2*i+m(2*i))/r)]},n}j.invert=function(t,e){if((a=n(e))v&&--u>0);return[t/(o(l)*(F-1/m(l))),d(e)*l]},V.invert=function(t,e){var r=2*E(e/2);return[t*o(r/2)/o(r),r]};var Y=Z(T/_,T,x),X=2.00276,$=1.11072;function K(t,e){var r=W(x,e);return[X*t/(1/o(e)+$/o(r)),(e+T*m(r))/X]}function J(t){var r=0,n=e.geoProjectionMutator(t),i=n(r);return i.parallel=function(t){return arguments.length?n(r=t*S):r*M},i}function Q(t,e){return[t*o(e),e]}function tt(t){if(!t)return Q;var e=1/g(t);function r(r,n){var i=e+t-n,a=i&&r*o(n)/i;return[i*m(a),e-i*o(a)]}return r.invert=function(r,n){var i=I(r*r+(n=e-n)*n),s=e+t-i;return[i/o(s)*a(r,n),s]},r}function et(t){function e(e,r){var n=_-r,i=n&&e*t*m(n)/n;return[n*m(i)/t,_-n*o(i)]}return e.invert=function(e,r){var n=e*t,i=_-r,o=I(n*n+i*i),s=a(n,i);return[(o?o/m(o):1)*s/t,_-o]},e}K.invert=function(t,e){var r,i,a=X*e,s=e<0?-b:b,l=25;do{i=a-T*m(s),s-=r=(m(2*s)+2*s-x*m(i))/(2*o(2*s)+2+x*o(i)*T*o(s))}while(n(r)>y&&--l>0);return i=a-T*m(s),[t*(1/o(i)+$/o(s))/X,i]},Q.invert=function(t,e){return[t/o(e),e]};var rt=Z(1,4/x,x);function nt(t,e,r,i,s,l){var c,u=o(l);if(n(t)>1||n(l)>1)c=C(r*s+e*i*u);else{var h=m(t/2),p=m(l/2);c=2*E(I(h*h+e*i*p*p))}return n(c)>y?[c,a(i*m(l),e*s-r*i*u)]:[0,0]}function it(t,e,r){return C((t*t+e*e-r*r)/(2*t*e))}function at(t){return t-2*x*l((t+x)/(2*x))}function ot(t,e,r){for(var n,i=[[t[0],t[1],m(t[1]),o(t[1])],[e[0],e[1],m(e[1]),o(e[1])],[r[0],r[1],m(r[1]),o(r[1])]],a=i[2],s=0;s<3;++s,a=n)n=i[s],a.v=nt(n[1]-a[1],a[3],a[2],n[3],n[2],n[0]-a[0]),a.point=[0,0];var l=it(i[0].v[0],i[2].v[0],i[1].v[0]),c=it(i[0].v[0],i[1].v[0],i[2].v[0]),u=x-l;i[2].point[1]=0,i[0].point[0]=-(i[1].point[0]=i[0].v[0]/2);var h=[i[2].point[0]=i[0].point[0]+i[2].v[0]*o(l),2*(i[0].point[1]=i[1].point[1]=i[2].v[0]*m(l))];return function(t,e){var r,n=m(e),a=o(e),s=new Array(3);for(r=0;r<3;++r){var l=i[r];if(s[r]=nt(e-l[1],l[3],l[2],a,n,t-l[0]),!s[r][0])return l.point;s[r][1]=at(s[r][1]-l.v[1])}var p=h.slice();for(r=0;r<3;++r){var f=2==r?0:r+1,d=it(i[r].v[0],s[r][0],s[f][0]);s[r][1]<0&&(d=-d),r?1==r?(d=c-d,p[0]-=s[r][0]*o(d),p[1]-=s[r][0]*m(d)):(d=u-d,p[0]+=s[r][0]*o(d),p[1]+=s[r][0]*m(d)):(p[0]+=s[r][0]*o(d),p[1]-=s[r][0]*m(d))}return p[0]/=3,p[1]/=3,p}}function st(t){return t[0]*=S,t[1]*=S,t}function lt(t,r,n){var i=e.geoCentroid({type:"MultiPoint",coordinates:[t,r,n]}),a=[-i[0],-i[1]],o=e.geoRotation(a),s=ot(st(o(t)),st(o(r)),st(o(n)));s.invert=H(s);var l=e.geoProjection(s).rotate(a),c=l.center;return delete l.rotate,l.center=function(t){return arguments.length?c(o(t)):o.invert(c())},l.clipAngle(90)}function ct(t,e){var r=I(1-m(e));return[2/A*t*r,A*(1-r)]}function ut(t){var e=g(t);function r(t,r){return[t,(t?t/m(t):1)*(m(r)*o(t)-e*o(r))]}return r.invert=e?function(t,r){t&&(r*=m(t)/t);var n=o(t);return[t,2*a(I(n*n+e*e-r*r)-n,e-r)]}:function(t,e){return[t,E(t?e*g(t)/t:e)]},r}ct.invert=function(t,e){var r=(r=e/A-1)*r;return[r>0?t*I(x/r)/2:0,E(1-r)]};var ht=I(3);function pt(t,e){return[ht*t*(2*o(2*e/3)-1)/A,ht*A*m(e/3)]}function ft(t){var e=o(t);function r(t,r){return[t*e,m(r)/e]}return r.invert=function(t,r){return[t/e,E(r*e)]},r}function dt(t){var e=o(t);function r(t,r){return[t*e,(1+e)*g(r/2)]}return r.invert=function(t,r){return[t/e,2*i(r/(1+e))]},r}function mt(t,e){var r=I(8/(3*x));return[r*t*(1-n(e)/x),r*e]}function gt(t,e){var r=I(4-3*m(n(e)));return[2/I(6*x)*t*r,d(e)*I(2*x/3)*(2-r)]}function yt(t,e){var r=I(x*(4+x));return[2/r*t*(1+I(1-4*e*e/(x*x))),4/r*e]}function vt(t,e){var r=(2+_)*m(e);e/=2;for(var i=0,a=1/0;i<10&&n(a)>y;i++){var s=o(e);e-=a=(e+m(e)*(s+2)-r)/(2*s*(1+s))}return[2/I(x*(4+x))*t*(1+o(e)),2*I(x/(4+x))*m(e)]}function xt(t,e){return[t*(1+o(e))/I(2+x),2*e/I(2+x)]}function _t(t,e){for(var r=(1+_)*m(e),i=0,a=1/0;i<10&&n(a)>y;i++)e-=a=(e+m(e)-r)/(1+o(e));return r=I(2+x),[t*(1+o(e))/r,2*e/r]}pt.invert=function(t,e){var r=3*E(e/(ht*A));return[A*t/(ht*(2*o(2*r/3)-1)),r]},mt.invert=function(t,e){var r=I(8/(3*x)),i=e/r;return[t/(r*(1-n(i)/x)),i]},gt.invert=function(t,e){var r=2-n(e)/I(2*x/3);return[t*I(6*x)/(2*r),d(e)*E((4-r*r)/3)]},yt.invert=function(t,e){var r=I(x*(4+x))/2;return[t*r/(1+I(1-e*e*(4+x)/(4*x))),e*r/2]},vt.invert=function(t,e){var r=e*I((4+x)/x)/2,n=E(r),i=o(n);return[t/(2/I(x*(4+x))*(1+i)),E((n+r*(i+2))/(2+_))]},xt.invert=function(t,e){var r=I(2+x),n=e*r/2;return[r*t/(1+o(n)),n]},_t.invert=function(t,e){var r=1+_,n=I(r/2);return[2*t*n/(1+o(e*=n)),E((e+m(e))/r)]};var bt=3+2*T;function wt(t,e){var r=m(t/=2),n=o(t),a=I(o(e)),s=o(e/=2),l=m(e)/(s+T*n*a),u=I(2/(1+l*l)),h=I((T*s+(n+r)*a)/(T*s+(n-r)*a));return[bt*(u*(h-1/h)-2*c(h)),bt*(u*l*(h+1/h)-2*i(l))]}wt.invert=function(t,e){if(!(r=R.invert(t/1.2,1.065*e)))return null;var r,a=r[0],s=r[1],l=20;t/=bt,e/=bt;do{var p=a/2,f=s/2,d=m(p),g=o(p),v=m(f),x=o(f),b=o(s),A=I(b),k=v/(x+T*g*A),M=k*k,S=I(2/(1+M)),E=(T*x+(g+d)*A)/(T*x+(g-d)*A),C=I(E),L=C-1/C,P=C+1/C,z=S*L-2*c(C)-t,D=S*k*P-2*i(k)-e,O=v&&w*A*d*M/v,F=(T*g*x+A)/(2*(x+T*g*A)*(x+T*g*A)*A),B=-.5*k*S*S*S,j=B*O,N=B*F,U=(U=2*x+T*A*(g-d))*U*C,V=(T*g*x*A+b)/U,q=-T*d*v/(A*U),H=L*j-2*V/C+S*(V+V/E),G=L*N-2*q/C+S*(q+q/E),W=k*P*j-2*O/(1+M)+S*P*O+S*k*(V-V/E),Z=k*P*N-2*F/(1+M)+S*P*F+S*k*(q-q/E),Y=G*W-Z*H;if(!Y)break;var X=(D*G-z*Z)/Y,$=(z*W-D*H)/Y;a-=X,s=u(-_,h(_,s-$))}while((n(X)>y||n($)>y)&&--l>0);return n(n(s)-_)s){var d=I(p),g=a(h,u),v=i*f(g/i),b=g-v,w=t*o(b),T=(t*m(b)-b*m(w))/(_-w),A=It(b,T),k=(x-t)/Lt(A,w,x);u=d;var M,S=50;do{u-=M=(t+Lt(A,w,u)*k-d)/(A(u)*k)}while(n(M)>y&&--S>0);h=b*m(u),u<_&&(h-=T*(u-_));var E=m(v),C=o(v);c[0]=u*C-h*E,c[1]=u*E+h*C}return c}return l.invert=function(r,l){var c=r*r+l*l;if(c>s){var u=I(c),h=a(l,r),p=i*f(h/i),d=h-p;r=u*o(d),l=u*m(d);for(var g=r-_,y=m(r),b=l/y,w=r<_?1/0:0,T=10;;){var A=t*m(b),k=t*o(b),M=m(k),S=_-k,E=(A-b*M)/S,C=It(b,E);if(n(w)y||n(f)>y)&&--v>0);return[d,g]},u}At.invert=function(t,e){var r=e/(1+Tt);return[t&&t/(Tt*I(1-r*r)),2*i(r)]},kt.invert=function(t,e){var r=i(e/A),n=o(r),a=2*r;return[t*A/2/(o(a)*n*n),a]};var zt=Pt(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555),Dt=Pt(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742),Ot=Pt(5/6*x,-.62636,-.0344,0,1.3493,-.05524,0,.045);function Rt(t,e){var r=t*t,n=e*e;return[t*(1-.162388*n)*(.87-952426e-9*r*r),e*(1+n/12)]}Rt.invert=function(t,e){var r,i=t,a=e,o=50;do{var s=a*a;a-=r=(a*(1+s/12)-e)/(1+s/4)}while(n(r)>y&&--o>0);o=50,t/=1-.162388*s;do{var l=(l=i*i)*l;i-=r=(i*(.87-952426e-9*l)-t)/(.87-.00476213*l)}while(n(r)>y&&--o>0);return[i,a]};var Ft=Pt(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Bt(t){var e=t(_,0)[0]-t(-_,0)[0];function r(r,n){var i=r>0?-.5:.5,a=t(r+i*x,n);return a[0]-=i*e,a}return t.invert&&(r.invert=function(r,n){var i=r>0?-.5:.5,a=t.invert(r+i*e,n),o=a[0]-i*x;return o<-x?o+=2*x:o>x&&(o-=2*x),a[0]=o,a}),r}function jt(t,e){var r=d(t),i=d(e),s=o(e),l=o(t)*s,c=m(t)*s,u=m(i*e);t=n(a(c,u)),e=E(l),n(t-_)>y&&(t%=_);var h=function(t,e){if(e===_)return[0,0];var r,i,a=m(e),s=a*a,l=s*s,c=1+l,u=1+3*l,h=1-l,p=E(1/I(c)),f=h+s*c*p,d=(1-a)/f,g=I(d),v=d*c,b=I(v),w=g*h;if(0===t)return[0,-(w+s*b)];var T,A=o(e),k=1/A,M=2*a*A,S=(-f*A-(1-a)*((-3*s+p*u)*M))/(f*f),C=-k*M,L=-k*(s*c*S+d*u*M),P=-2*k*(h*(.5*S/g)-2*s*g*M),z=4*t/x;if(t>.222*x||e.175*x){if(r=(w+s*I(v*(1+l)-w*w))/(1+l),t>x/4)return[r,r];var D=r,O=.5*r;r=.5*(O+D),i=50;do{var R=r*(P+C*I(v-r*r))+L*E(r/b)-z;if(!R)break;R<0?O=r:D=r,r=.5*(O+D)}while(n(D-O)>y&&--i>0)}else{r=y,i=25;do{var F=r*r,B=I(v-F),j=P+C*B,N=r*j+L*E(r/b)-z;r-=T=B?N/(j+(L-C*F)/B):0}while(n(T)>y&&--i>0)}return[r,-w-s*I(v-r*r)]}(t>x/4?_-t:t,e);return t>x/4&&(u=h[0],h[0]=-h[1],h[1]=-u),h[0]*=r,h[1]*=-i,h}function Nt(t,e){var r,a,l,c,u;if(e=1-y)return r=(1-e)/4,a=P(t),c=function(t){return((t=s(2*t))-1)/(t+1)}(t),l=1/a,[c+r*((u=a*L(t))-t)/(a*a),l-r*c*l*(u-t),l+r*c*l*(u+t),2*i(s(t))-_+r*(u-t)/a];var h=[1,0,0,0,0,0,0,0,0],p=[I(e),0,0,0,0,0,0,0,0],f=0;for(a=I(1-e),u=1;n(p[f]/h[f])>y&&f<8;)r=h[f++],p[f]=(r-a)/2,h[f]=(r+a)/2,a=I(r*a),u*=2;l=u*h[f]*t;do{l=(E(c=p[f]*m(a=l)/h[f])+l)/2}while(--f);return[m(l),c=o(l),c/o(l-a),l]}function Ut(t,e){if(!e)return t;if(1===e)return c(g(t/2+b));for(var r=1,a=I(1-e),o=I(e),s=0;n(o)>y;s++){if(t%x){var l=i(a*g(t)/r);l<0&&(l+=x),t+=l+~~(t/x)*x}else t+=t;o=(r+a)/2,a=I(r*a),o=((r=o)-a)/2}return t/(p(2,s)*r)}function Vt(t,e){var r=(T-1)/(T+1),l=I(1-r*r),u=Ut(_,l*l),h=c(g(x/4+n(e)/2)),p=s(-1*h)/I(r),f=function(t,e){var r=t*t,n=e+1,i=1-r-e*e;return[.5*((t>=0?_:-_)-a(i,2*t)),-.25*c(i*i+4*r)+.5*c(n*n+r)]}(p*o(-1*t),p*m(-1*t)),y=function(t,e,r){var a=n(t),o=L(n(e));if(a){var s=1/m(a),l=1/(g(a)*g(a)),c=-(l+r*(o*o*s*s)-1+r),u=(-c+I(c*c-(r-1)*l*4))/2;return[Ut(i(1/I(u)),r)*d(t),Ut(i(I((u/l-1)/r)),1-r)*d(e)]}return[0,Ut(i(o),1-r)*d(e)]}(f[0],f[1],l*l);return[-y[1],(e>=0?1:-1)*(.5*u-y[0])]}function qt(t){var e=m(t),r=o(t),i=Ht(t);function s(t,a){var s=i(t,a);t=s[0],a=s[1];var l=m(a),c=o(a),u=o(t),h=C(e*l+r*c*u),p=m(h),f=n(p)>y?h/p:1;return[f*r*m(t),(n(t)>_?f:-f)*(e*c-r*l*u)]}return i.invert=Ht(-t),s.invert=function(t,r){var n=I(t*t+r*r),s=-m(n),l=o(n),c=n*l,u=-r*s,h=n*e,p=I(c*c+u*u-h*h),f=a(c*h+u*p,u*h-c*p),d=(n>_?-1:1)*a(t*s,n*o(f)*l+r*m(f)*s);return i.invert(d,f)},s}function Ht(t){var e=m(t),r=o(t);return function(t,n){var i=o(n),s=o(t)*i,l=m(t)*i,c=m(n);return[a(l,s*r-c*e),E(c*r+s*e)]}}jt.invert=function(t,e){n(t)>1&&(t=2*d(t)-t),n(e)>1&&(e=2*d(e)-e);var r=d(t),i=d(e),s=-r*t,l=-i*e,c=l/s<1,u=function(t,e){for(var r=0,i=1,a=.5,s=50;;){var l=a*a,c=I(a),u=E(1/I(1+l)),h=1-l+a*(1+l)*u,p=(1-c)/h,f=I(p),d=p*(1+l),m=f*(1-l),g=I(d-t*t),y=e+m+a*g;if(n(i-r)0?r=a:i=a,a=.5*(r+i)}if(!s)return null;var _=E(c),b=o(_),w=1/b,T=2*c*b,A=(-h*b-(1-c)*((-3*a+u*(1+3*l))*T))/(h*h);return[x/4*(t*(-2*w*(.5*A/f*(1-l)-2*a*f*T)+-w*T*g)+-w*(a*(1+l)*A+p*(1+3*l)*T)*E(t/I(d))),_]}(c?l:s,c?s:l),h=u[0],p=u[1],f=o(p);return c&&(h=-_-h),[r*(a(m(h)*f,-m(p))+x),i*E(o(h)*f)]},Vt.invert=function(t,e){var r=(T-1)/(T+1),n=I(1-r*r),o=function(t,e,r){var n,i,a;return t?(n=Nt(t,r),e?(a=(i=Nt(e,1-r))[1]*i[1]+r*n[0]*n[0]*i[0]*i[0],[[n[0]*i[2]/a,n[1]*n[2]*i[0]*i[1]/a],[n[1]*i[1]/a,-n[0]*n[2]*i[0]*i[2]/a],[n[2]*i[1]*i[2]/a,-r*n[0]*n[1]*i[0]/a]]):[[n[0],0],[n[1],0],[n[2],0]]):[[0,(i=Nt(e,1-r))[0]/i[1]],[1/i[1],0],[i[2]/i[1],0]]}(.5*Ut(_,n*n)-e,-t,n*n),l=function(t,e){var r=e[0]*e[0]+e[1]*e[1];return[(t[0]*e[0]+t[1]*e[1])/r,(t[1]*e[0]-t[0]*e[1])/r]}(o[0],o[1]);return[a(l[1],l[0])/-1,2*i(s(-.5*c(r*l[0]*l[0]+r*l[1]*l[1])))-_]};var Gt=E(1-1/3)*M,Wt=ft(0);function Zt(t){var e=Gt*S,r=ct(x,e)[0]-ct(-x,e)[0],i=Wt(0,e)[1],a=ct(0,e)[1],o=A-a,s=k/t,c=4/k,p=i+o*o*4/k;function f(f,d){var m,g=n(d);if(g>e){var y=h(t-1,u(0,l((f+x)/s)));(m=ct(f+=x*(t-1)/t-y*s,g))[0]=m[0]*k/r-k*(t-1)/(2*t)+y*k/t,m[1]=i+4*(m[1]-a)*o/k,d<0&&(m[1]=-m[1])}else m=Wt(f,d);return m[0]*=c,m[1]/=p,m}return f.invert=function(e,f){e/=c;var d=n(f*=p);if(d>i){var m=h(t-1,u(0,l((e+x)/s)));e=(e+x*(t-1)/t-m*s)*r/k;var g=ct.invert(e,.25*(d-i)*k/o+a);return g[0]-=x*(t-1)/t-m*s,f<0&&(g[1]=-g[1]),g}return Wt.invert(e,f)},f}function Yt(t,e){return[t,1&e?90-y:Gt]}function Xt(t,e){return[t,1&e?-90+y:-Gt]}function $t(t){return[t[0]*(1-y),t[1]]}function Kt(t){var e,r=1+t,i=E(m(1/r)),s=2*I(x/(e=x+4*i*r)),l=.5*s*(r+I(t*(2+t))),c=t*t,u=r*r;function h(h,p){var f,d,g=1-m(p);if(g&&g<2){var y,b=_-p,w=25;do{var T=m(b),A=o(b),k=i+a(T,r-A),M=1+u-2*r*A;b-=y=(b-c*i-r*T+M*k-.5*g*e)/(2*r*T*k)}while(n(y)>v&&--w>0);f=s*I(M),d=h*k/x}else f=s*(t+g),d=h*i/x;return[f*m(d),l-f*o(d)]}return h.invert=function(t,n){var o=t*t+(n-=l)*n,h=(1+u-o/(s*s))/(2*r),p=C(h),f=m(p),d=i+a(f,r-h);return[E(t/I(o))*x/d,E(1-2*(p-c*i-r*f+(1+u-2*r*h)*d)/e)]},h}var Jt=.7109889596207567,Qt=.0528035274542;function te(t,e){return e>-Jt?((t=Y(t,e))[1]+=Qt,t):Q(t,e)}function ee(t,e){return n(e)>Jt?((t=Y(t,e))[1]-=e>0?Qt:-Qt,t):Q(t,e)}function re(t,e,r,n){var i=I(4*x/(2*r+(1+t-e/2)*m(2*r)+(t+e)/2*m(4*r)+e/2*m(6*r))),a=I(n*m(r)*I((1+t*o(2*r)+e*o(4*r))/(1+t+e))),s=r*c(1);function l(r){return I(1+t*o(2*r)+e*o(4*r))}function c(n){var i=n*r;return(2*i+(1+t-e/2)*m(2*i)+(t+e)/2*m(4*i)+e/2*m(6*i))/r}function u(t){return l(t)*m(t)}var h=function(t,e){var n=r*q(c,s*m(e)/r,e/x);isNaN(n)&&(n=r*d(e));var u=i*l(n);return[u*a*t/x*o(n),u/a*m(n)]};return h.invert=function(t,e){var n=q(u,e*a/i);return[t*x/(o(n)*i*a*l(n)),E(r*c(n/r)/s)]},0===r&&(i=I(n/x),(h=function(t,e){return[t*i,m(e)/i]}).invert=function(t,e){return[t/i,E(e*i)]}),h}function ne(t,e,r,n,i,a,o,s,l,c,u){if(u.nanEncountered)return NaN;var h,p,f,d,m,g,y,v,x,_;if(p=t(e+.25*(h=r-e)),f=t(r-.25*h),isNaN(p))u.nanEncountered=!0;else{if(!isNaN(f))return _=((g=(d=h*(n+4*p+i)/12)+(m=h*(i+4*f+a)/12))-o)/15,c>l?(u.maxDepthCount++,g+_):Math.abs(_)t?r=n:e=n,n=e+r>>1}while(n>e);var i=c[n+1]-c[n];return i&&(i=(t-c[n+1])/i),(n+1+i)/s}var f=2*h(1)/x*o/r,g=function(t,e){var r=h(n(m(e))),a=i(r)*t;return r/=f,[a,e>=0?r:-r]};return g.invert=function(t,e){var r;return n(e*=f)<1&&(r=d(e)*E(a(n(e))*o)),[t/i(n(e)),r]},g}function oe(t,e){return n(t[0]-e[0])a[o][2][0];++o);var l=t(e-a[o][1][0],r);return l[0]+=t(a[o][1][0],i*r>i*a[o][0][1]?a[o][0][1]:r)[0],l}i?s.invert=i(s):t.invert&&(s.invert=function(e,r){for(var i=o[+(r<0)],a=n[+(r<0)],l=0,c=i.length;l=0;--l)n=(e=t[1][l])[0][0],i=e[0][1],a=e[1][1],o=e[2][0],s=e[2][1],c.push(se([[o-y,s-y],[o-y,a+y],[n+y,a+y],[n+y,i-y]],30));return{type:"Polygon",coordinates:[r.merge(c)]}}(e),n=e.map((function(t){return t.map((function(t){return[[t[0][0]*S,t[0][1]*S],[t[1][0]*S,t[1][1]*S],[t[2][0]*S,t[2][1]*S]]}))})),o=n.map((function(e){return e.map((function(e){var r,n=t(e[0][0],e[0][1])[0],i=t(e[2][0],e[2][1])[0],a=t(e[1][0],e[0][1])[1],o=t(e[1][0],e[1][1])[1];return a>o&&(r=a,a=o,o=r),[[n,a],[i,o]]}))})),l):n.map((function(t){return t.map((function(t){return[[t[0][0]*M,t[0][1]*M],[t[1][0]*M,t[1][1]*M],[t[2][0]*M,t[2][1]*M]]}))}))},null!=n&&l.lobes(n),l}te.invert=function(t,e){return e>-Jt?Y.invert(t,e-Qt):Q.invert(t,e)},ee.invert=function(t,e){return n(e)>Jt?Y.invert(t,e+(e>0?Qt:-Qt)):Q.invert(t,e)};var ce=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],ue=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],he=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],pe=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]],fe=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]],de=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function me(t,e){return[3/k*t*I(x*x/3-e*e),e]}function ge(t){function e(e,r){if(n(n(r)-_)2)return null;var o=(e/=2)*e,s=(r/=2)*r,l=2*r/(1+o+s);return l=p((1+l)/(1-l),1/t),[a(2*e,1-o-s)/t,E((l-1)/(l+1))]},e}me.invert=function(t,e){return[k/3*t/I(x*x/3-e*e),e]};var ye=x/T;function ve(t,e){return[t*(1+I(o(e)))/2,e/(o(e/2)*o(t/6))]}function xe(t,e){var r=t*t,n=e*e;return[t*(.975534+n*(-.0143059*r-.119161+-.0547009*n)),e*(1.00384+r*(.0802894+-.02855*n+199025e-9*r)+n*(.0998909+-.0491032*n))]}function _e(t,e){return[m(t)/o(e),g(e)*o(t)]}function be(t){var e=o(t),r=g(b+t/2);function i(i,a){var o=a-t,s=n(o)=0;)p=(h=t[u])[0]+l*(i=p)-c*f,f=h[1]+l*f+c*i;return[p=l*(i=p)-c*f,f=l*f+c*i]}return r.invert=function(r,s){var l=20,c=r,u=s;do{for(var h,p=e,f=t[p],d=f[0],g=f[1],v=0,x=0;--p>=0;)v=d+c*(h=v)-u*x,x=g+c*x+u*h,d=(f=t[p])[0]+c*(h=d)-u*g,g=f[1]+c*g+u*h;var _,b,w=(v=d+c*(h=v)-u*x)*v+(x=g+c*x+u*h)*x;c-=_=((d=c*(h=d)-u*g-r)*v+(g=c*g+u*h-s)*x)/w,u-=b=(g*v-d*x)/w}while(n(_)+n(b)>y*y&&--l>0);if(l){var T=I(c*c+u*u),A=2*i(.5*T),k=m(A);return[a(c*k,T*o(A)),T?E(u*k/T):0]}},r}ve.invert=function(t,e){var r=n(t),i=n(e),a=y,s=_;iy||n(_)>y)&&--a>0);return a&&[r,i]},_e.invert=function(t,e){var r=t*t,n=e*e+1,i=r+n,a=t?w*I((i-I(i*i-4*r))/r):1/I(n);return[E(t*a),d(e)*C(a)]},we.invert=function(t,e){return[t,2.5*i(s(.8*e))-.625*x]};var Ae=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],ke=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Me=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Se=[[.9245,0],[0,0],[.01943,0]],Ee=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Ce(t,r){var n=e.geoProjection(Te(t)).rotate(r).clipAngle(90),i=e.geoRotation(r),a=n.center;return delete n.rotate,n.center=function(t){return arguments.length?a(i(t)):i.invert(a())},n}var Ie=I(6),Le=I(7);function Pe(t,e){var r=E(7*m(e)/(3*Ie));return[Ie*t*(2*o(2*r/3)-1)/Le,9*m(r/3)/Le]}function ze(t,e){for(var r,i=(1+w)*m(e),a=e,s=0;s<25&&(a-=r=(m(a/2)+m(a)-i)/(.5*o(a/2)+o(a)),!(n(r)v&&--l>0);return[t/(.84719-.13063*(i=s*s)+(o=i*(a=i*i))*o*(.05494*i-.04515-.02326*a+.00331*o)),s]},Re.invert=function(t,e){for(var r=e/2,i=0,a=1/0;i<10&&n(a)>y;++i){var s=o(e/2);e-=a=(e-g(e/2)-r)/(1-.5/(s*s))}return[2*t/(1+o(e)),e]};var Fe=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Be(t,e){var r=m(e),i=o(e),a=d(t);if(0===t||n(e)===_)return[0,e];if(0===e)return[t,0];if(n(t)===_)return[t*i,_*r];var s=x/(2*t)-2*t/x,l=2*e/x,c=(1-l*l)/(r-l),u=s*s,h=c*c,p=1+u/h,f=1+h/u,g=(s*r/c-s/2)/p,y=(h*r/u+c/2)/f,v=y*y-(h*r*r/u+c*r-1)/f;return[_*(g+I(g*g+i*i/p)*a),_*(y+I(v<0?0:v)*d(-e*s)*a)]}Be.invert=function(t,e){var r=(t/=_)*t,n=r+(e/=_)*e,i=x*x;return[t?(n-1+I((1-n)*(1-n)+4*r))/(2*t)*_:0,q((function(t){return n*(x*m(t)-2*t)*x+4*t*t*(e-m(t))+2*x*t-i*e}),0)]};var je=1.0148,Ne=.23185,Ue=-.14499,Ve=.02406,qe=je,He=5*Ne,Ge=7*Ue,We=1.790857183;function Ze(t,e){var r=e*e;return[t,e*(je+r*r*(Ne+r*(Ue+Ve*r)))]}function Ye(t,e){if(n(e)=0;)if(n=e[s],r[0]===n[0]&&r[1]===n[1]){if(a)return[a,r];a=r}}}(e.face,r.face),i=function(t,e){var r=$e(t[1],t[0]),n=$e(e[1],e[0]),i=function(t,e){return a(t[0]*e[1]-t[1]*e[0],t[0]*e[0]+t[1]*e[1])}(r,n),s=Ke(r)/Ke(n);return Xe([1,0,t[0][0],0,1,t[0][1]],Xe([s,0,0,0,s,0],Xe([o(i),m(i),0,-m(i),o(i),0],[1,0,-e[0][0],0,1,-e[0][1]])))}(n.map(r.project),n.map(e.project));e.transform=r.transform?Xe(r.transform,i):i;for(var s=r.edges,l=0,c=s.length;lWe?e=We:e<-We&&(e=-We);var r,i=e;do{var a=i*i;i-=r=(i*(je+a*a*(Ne+a*(Ue+Ve*a)))-e)/(qe+a*a*(He+a*(Ge+.21654*a)))}while(n(r)>y);return[t,i]},Ye.invert=function(t,e){if(n(e)y&&--s>0);return l=g(a),[(n(e)n^f>n&&r<(p-c)*(n-u)/(f-u)+c&&(i=!i)}return i}(t[0],r))return t.push(e),!0}))||t.push([e])})),mr=[],t.length?t.length>1?{type:"MultiPolygon",coordinates:t}:{type:"Polygon",coordinates:t[0]}:null}};function xr(t){var r=t(_,0)[0]-t(-_,0)[0];function i(e,i){var a=n(e)<_,o=t(a?e:e>0?e-x:e+x,i),s=(o[0]-o[1])*w,l=(o[0]+o[1])*w;if(a)return[s,l];var c=r*w,u=s>0^l>0?-1:1;return[u*s-d(l)*c,u*l-d(s)*c]}return t.invert&&(i.invert=function(e,i){var a=(e+i)*w,o=(i-e)*w,s=n(a)<.5*r&&n(o)<.5*r;if(!s){var l=r*w,c=a>0^o>0?-1:1,u=-c*e+(o>0?1:-1)*l,h=-c*i+(a>0?1:-1)*l;a=(-u-h)*w,o=(u-h)*w}var p=t.invert(a,o);return s||(p[0]+=a>0?x:-x),p}),e.geoProjection(i).rotate([-90,-90,45]).clipAngle(179.999)}function _r(){return xr(Vt).scale(111.48)}function br(t){var e=m(t);function r(r,n){var a=e?g(r*e/2)/e:r/2;if(!n)return[2*a,-t];var s=2*i(a*m(n)),l=1/g(n);return[m(s)*l,n+(1-o(s))*l-t]}return r.invert=function(r,a){if(n(a+=t)y&&--u>0);var d=r*(h=g(c)),v=g(n(a)0?_:-_)*(p+o*(d-c)/2+o*o*(d-2*p+c)/2)]}function Ar(t,e){var r=function(t){function e(e,r){var n=o(r),i=(t-1)/(t-n*o(e));return[i*n*m(e),i*m(r)]}return e.invert=function(e,r){var n=e*e+r*r,i=I(n),o=(t-I(1-n*(t+1)/(t-1)))/((t-1)/i+i/(t-1));return[a(e*o,i*I(1-o*o)),i?E(r*o/i):0]},e}(t);if(!e)return r;var n=o(e),i=m(e);function s(e,a){var o=r(e,a),s=o[1],l=s*i/(t-1)+n;return[o[0]*n/l,s/l]}return s.invert=function(e,a){var o=(t-1)/(t-1-a*i);return r.invert(o*e,o*a*n)},s}wr.forEach((function(t){t[1]*=1.0144})),Tr.invert=function(t,e){var r=e/_,i=90*r,a=h(18,n(i/5)),o=u(0,l(a));do{var s=wr[o][1],c=wr[o+1][1],p=wr[h(19,o+2)][1],f=p-s,d=p-2*c+s,m=2*(n(r)-c)/f,g=d/f,y=m*(1-g*m*(1-2*g*m));if(y>=0||1===o){i=(e>=0?5:-5)*(y+a);var x,b=50;do{y=(a=h(18,n(i)/5))-(o=l(a)),s=wr[o][1],c=wr[o+1][1],p=wr[h(19,o+2)][1],i-=(x=(e>=0?_:-_)*(c+y*(p-s)/2+y*y*(p-2*c+s)/2)-e)*M}while(n(x)>v&&--b>0);break}}while(--o>=0);var w=wr[o][0],T=wr[o+1][0],A=wr[h(19,o+2)][0];return[t/(T+y*(A-w)/2+y*y*(A-2*T+w)/2),i*S]};var kr=1e-4,Mr=-180,Sr=Mr+kr,Er=180-kr,Cr=-90+kr,Ir=90-kr;function Lr(t){return t.length>0}function Pr(t){return Math.floor(1e4*t)/1e4}function zr(t){return-90===t||90===t?[0,t]:[Mr,Pr(t)]}function Dr(t){var e=t[0],r=t[1],n=!1;return e<=Sr?(e=Mr,n=!0):e>=Er&&(e=180,n=!0),r<=Cr?(r=-90,n=!0):r>=Ir&&(r=90,n=!0),n?[e,r]:t}function Or(t){return t.map(Dr)}function Rr(t,e,r){for(var n=0,i=t.length;n=Er||u<=Cr||u>=Ir){a[o]=Dr(l);for(var h=o+1;hSr&&fCr&&d=s)break;r.push({index:-1,polygon:e,ring:a=a.slice(h-1)}),a[0]=zr(a[0][1]),o=-1,s=a.length}}}}function Fr(t){var e,r,n,i,a,o,s=t.length,l={},c={};for(e=0;e0?x-l:l)*M],u=e.geoProjection(t(s)).rotate(c),h=e.geoRotation(c),p=u.center;return delete u.rotate,u.center=function(t){return arguments.length?p(h(t)):h.invert(p())},u.clipAngle(90)}function Vr(t){var r=o(t);function n(t,n){var i=e.geoGnomonicRaw(t,n);return i[0]*=r,i}return n.invert=function(t,n){return e.geoGnomonicRaw.invert(t/r,n)},n}function qr(t,e){return Ur(Vr,t,e)}function Hr(t){if(!(t*=2))return e.geoAzimuthalEquidistantRaw;var r=-t/2,n=-r,i=t*t,s=g(n),l=.5/m(n);function c(e,a){var s=C(o(a)*o(e-r)),l=C(o(a)*o(e-n));return[((s*=s)-(l*=l))/(2*t),(a<0?-1:1)*I(4*i*l-(i-s+l)*(i-s+l))/(2*t)]}return c.invert=function(t,e){var i,c,u=e*e,h=o(I(u+(i=t+r)*i)),p=o(I(u+(i=t+n)*i));return[a(c=h-p,i=(h+p)*s),(e<0?-1:1)*C(I(i*i+c*c)*l)]},c}function Gr(t,e){return Ur(Hr,t,e)}function Wr(t,e){if(n(e)y&&--l>0);return[d(t)*(I(a*a+4)+a)*x/4,_*s]};var Jr=4*x+3*I(3),Qr=2*I(2*x*I(3)/Jr),tn=Z(Qr*I(3)/x,Qr,Jr/6);function en(t,e){return[t*I(1-3*e*e/(x*x)),e]}function rn(t,e){var r=o(e),n=o(t)*r,i=1-n,s=o(t=a(m(t)*r,-m(e))),l=m(t);return[l*(r=I(1-n*n))-s*i,-s*r-l*i]}function nn(t,e){var r=D(t,e);return[(r[0]+t/_)/2,(r[1]+e)/2]}en.invert=function(t,e){return[t/I(1-3*e*e/(x*x)),e]},rn.invert=function(t,e){var r=(t*t+e*e)/-2,n=I(-r*(2+r)),i=e*r+t*n,o=t*r-e*n,s=I(o*o+i*i);return[a(n*i,s*(1+r)),s?-E(n*o/s):0]},nn.invert=function(t,e){var r=t,i=e,a=25;do{var s,l=o(i),c=m(i),u=m(2*i),h=c*c,p=l*l,f=m(r),d=o(r/2),g=m(r/2),v=g*g,x=1-p*d*d,b=x?C(l*d)*I(s=1/x):s=0,w=.5*(2*b*l*g+r/_)-t,T=.5*(b*c+i)-e,A=.5*s*(p*v+b*l*d*h)+.5/_,k=s*(f*u/4-b*c*g),M=.125*s*(u*g-b*c*p*f),S=.5*s*(h*d+b*v*l)+.5,E=k*M-S*A,L=(T*k-w*S)/E,P=(w*M-T*A)/E;r-=L,i-=P}while((n(L)>y||n(P)>y)&&--a>0);return[r,i]},t.geoNaturalEarth=e.geoNaturalEarth1,t.geoNaturalEarthRaw=e.geoNaturalEarth1Raw,t.geoAiry=function(){var t=_,r=e.geoProjectionMutator(z),n=r(t);return n.radius=function(e){return arguments.length?r(t=e*S):t*M},n.scale(179.976).clipAngle(147)},t.geoAiryRaw=z,t.geoAitoff=function(){return e.geoProjection(D).scale(152.63)},t.geoAitoffRaw=D,t.geoArmadillo=function(){var t=20*S,r=t>=0?1:-1,n=g(r*t),i=e.geoProjectionMutator(O),s=i(t),l=s.stream;return s.parallel=function(e){return arguments.length?(n=g((r=(t=e*S)>=0?1:-1)*t),i(t)):t*M},s.stream=function(e){var i=s.rotate(),c=l(e),u=(s.rotate([0,0]),l(e)),h=s.precision();return s.rotate(i),c.sphere=function(){u.polygonStart(),u.lineStart();for(var e=-180*r;r*e<180;e+=90*r)u.point(e,90*r);if(t)for(;r*(e-=3*r*h)>=-180;)u.point(e,r*-a(o(e*S/2),n)*M);u.lineEnd(),u.polygonEnd()},c},s.scale(218.695).center([0,28.0974])},t.geoArmadilloRaw=O,t.geoAugust=function(){return e.geoProjection(R).scale(66.1603)},t.geoAugustRaw=R,t.geoBaker=function(){return e.geoProjection(j).scale(112.314)},t.geoBakerRaw=j,t.geoBerghaus=function(){var t=5,r=e.geoProjectionMutator(N),n=r(t),i=n.stream,s=.01,l=-o(s*S),c=m(s*S);return n.lobes=function(e){return arguments.length?r(t=+e):t},n.stream=function(e){var r=n.rotate(),u=i(e),h=(n.rotate([0,0]),i(e));return n.rotate(r),u.sphere=function(){h.polygonStart(),h.lineStart();for(var e=0,r=360/t,n=2*x/t,i=90-180/t,u=_;e=0;)t.point((e=r[i])[0],e[1]);t.lineEnd(),t.polygonEnd()},t},n.scale(79.4187).parallel(45).clipAngle(179.999)},t.geoHammerRetroazimuthalRaw=qt,t.geoHealpix=function(){var t=4,n=e.geoProjectionMutator(Zt),i=n(t),a=i.stream;return i.lobes=function(e){return arguments.length?n(t=+e):t},i.stream=function(n){var o=i.rotate(),s=a(n),l=(i.rotate([0,0]),a(n));return i.rotate(o),s.sphere=function(){e.geoStream(function(t){var e=[].concat(r.range(-180,180+t/2,t).map(Yt),r.range(180,-180-t/2,-t).map(Xt));return{type:"Polygon",coordinates:[180===t?e.map($t):e]}}(180/t),l)},s},i.scale(239.75)},t.geoHealpixRaw=Zt,t.geoHill=function(){var t=1,r=e.geoProjectionMutator(Kt),n=r(t);return n.ratio=function(e){return arguments.length?r(t=+e):t},n.scale(167.774).center([0,18.67])},t.geoHillRaw=Kt,t.geoHomolosine=function(){return e.geoProjection(ee).scale(152.63)},t.geoHomolosineRaw=ee,t.geoHufnagel=function(){var t=1,r=0,n=45*S,i=2,a=e.geoProjectionMutator(re),o=a(t,r,n,i);return o.a=function(e){return arguments.length?a(t=+e,r,n,i):t},o.b=function(e){return arguments.length?a(t,r=+e,n,i):r},o.psiMax=function(e){return arguments.length?a(t,r,n=+e*S,i):n*M},o.ratio=function(e){return arguments.length?a(t,r,n,i=+e):i},o.scale(180.739)},t.geoHufnagelRaw=re,t.geoHyperelliptical=function(){var t=0,r=2.5,n=1.183136,i=e.geoProjectionMutator(ae),a=i(t,r,n);return a.alpha=function(e){return arguments.length?i(t=+e,r,n):t},a.k=function(e){return arguments.length?i(t,r=+e,n):r},a.gamma=function(e){return arguments.length?i(t,r,n=+e):n},a.scale(152.63)},t.geoHyperellipticalRaw=ae,t.geoInterrupt=le,t.geoInterruptedBoggs=function(){return le(K,ce).scale(160.857)},t.geoInterruptedHomolosine=function(){return le(ee,ue).scale(152.63)},t.geoInterruptedMollweide=function(){return le(Y,he).scale(169.529)},t.geoInterruptedMollweideHemispheres=function(){return le(Y,pe).scale(169.529).rotate([20,0])},t.geoInterruptedSinuMollweide=function(){return le(te,fe,H).rotate([-20,-55]).scale(164.263).center([0,-5.4036])},t.geoInterruptedSinusoidal=function(){return le(Q,de).scale(152.63).rotate([-20,0])},t.geoKavrayskiy7=function(){return e.geoProjection(me).scale(158.837)},t.geoKavrayskiy7Raw=me,t.geoLagrange=function(){var t=.5,r=e.geoProjectionMutator(ge),n=r(t);return n.spacing=function(e){return arguments.length?r(t=+e):t},n.scale(124.75)},t.geoLagrangeRaw=ge,t.geoLarrivee=function(){return e.geoProjection(ve).scale(97.2672)},t.geoLarriveeRaw=ve,t.geoLaskowski=function(){return e.geoProjection(xe).scale(139.98)},t.geoLaskowskiRaw=xe,t.geoLittrow=function(){return e.geoProjection(_e).scale(144.049).clipAngle(89.999)},t.geoLittrowRaw=_e,t.geoLoximuthal=function(){return J(be).parallel(40).scale(158.837)},t.geoLoximuthalRaw=be,t.geoMiller=function(){return e.geoProjection(we).scale(108.318)},t.geoMillerRaw=we,t.geoModifiedStereographic=Ce,t.geoModifiedStereographicRaw=Te,t.geoModifiedStereographicAlaska=function(){return Ce(Ae,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)},t.geoModifiedStereographicGs48=function(){return Ce(ke,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])},t.geoModifiedStereographicGs50=function(){return Ce(Me,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])},t.geoModifiedStereographicMiller=function(){return Ce(Se,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)},t.geoModifiedStereographicLee=function(){return Ce(Ee,[165,10]).scale(250).clipAngle(130).center([-165,-10])},t.geoMollweide=function(){return e.geoProjection(Y).scale(169.529)},t.geoMollweideRaw=Y,t.geoMtFlatPolarParabolic=function(){return e.geoProjection(Pe).scale(164.859)},t.geoMtFlatPolarParabolicRaw=Pe,t.geoMtFlatPolarQuartic=function(){return e.geoProjection(ze).scale(188.209)},t.geoMtFlatPolarQuarticRaw=ze,t.geoMtFlatPolarSinusoidal=function(){return e.geoProjection(De).scale(166.518)},t.geoMtFlatPolarSinusoidalRaw=De,t.geoNaturalEarth2=function(){return e.geoProjection(Oe).scale(175.295)},t.geoNaturalEarth2Raw=Oe,t.geoNellHammer=function(){return e.geoProjection(Re).scale(152.63)},t.geoNellHammerRaw=Re,t.geoInterruptedQuarticAuthalic=function(){return le(U(1/0),Fe).rotate([20,0]).scale(152.63)},t.geoNicolosi=function(){return e.geoProjection(Be).scale(127.267)},t.geoNicolosiRaw=Be,t.geoPatterson=function(){return e.geoProjection(Ze).scale(139.319)},t.geoPattersonRaw=Ze,t.geoPolyconic=function(){return e.geoProjection(Ye).scale(103.74)},t.geoPolyconicRaw=Ye,t.geoPolyhedral=Je,t.geoPolyhedralButterfly=function(t){t=t||function(t){var r=e.geoCentroid({type:"MultiPoint",coordinates:t});return e.geoGnomonic().scale(1).translate([0,0]).rotate([-r[0],-r[1]])};var r=nr.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,e){var n=r[t];n&&(n.children||(n.children=[])).push(r[e])})),Je(r[0],(function(t,e){return r[t<-x/2?e<0?6:4:t<0?e<0?2:0:t0?[-r[0],0]:[180-r[0],180])};var r=nr.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,e){var n=r[t];n&&(n.children||(n.children=[])).push(r[e])})),Je(r[0],(function(t,e){return r[t<-x/2?e<0?6:4:t<0?e<0?2:0:t2||a[0]!=e[0]||a[1]!=e[1])&&(n.push(a),e=a)}return 1===n.length&&t.length>1&&n.push(r(t[t.length-1])),n}function a(t){return t.map(i)}function o(t){if(null==t)return t;var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(o)};break;case"Point":e={type:"Point",coordinates:r(t.coordinates)};break;case"MultiPoint":e={type:t.type,coordinates:n(t.coordinates)};break;case"LineString":e={type:t.type,coordinates:i(t.coordinates)};break;case"MultiLineString":case"Polygon":e={type:t.type,coordinates:a(t.coordinates)};break;case"MultiPolygon":e={type:"MultiPolygon",coordinates:t.coordinates.map(a)};break;default:return t}return null!=t.bbox&&(e.bbox=t.bbox),e}function s(t){var e={type:"Feature",properties:t.properties,geometry:o(t.geometry)};return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),e}if(null!=t)switch(t.type){case"Feature":return s(t);case"FeatureCollection":var l={type:"FeatureCollection",features:t.features.map(s)};return null!=t.bbox&&(l.bbox=t.bbox),l;default:return o(t)}return t},t.geoQuincuncial=xr,t.geoRectangularPolyconic=function(){return J(br).scale(131.215)},t.geoRectangularPolyconicRaw=br,t.geoRobinson=function(){return e.geoProjection(Tr).scale(152.63)},t.geoRobinsonRaw=Tr,t.geoSatellite=function(){var t=2,r=0,n=e.geoProjectionMutator(Ar),i=n(t,r);return i.distance=function(e){return arguments.length?n(t=+e,r):t},i.tilt=function(e){return arguments.length?n(t,r=e*S):r*M},i.scale(432.147).clipAngle(C(1/t)*M-1e-6)},t.geoSatelliteRaw=Ar,t.geoSinuMollweide=function(){return e.geoProjection(te).rotate([-20,-55]).scale(164.263).center([0,-5.4036])},t.geoSinuMollweideRaw=te,t.geoSinusoidal=function(){return e.geoProjection(Q).scale(152.63)},t.geoSinusoidalRaw=Q,t.geoStitch=function(t){if(null==t)return t;switch(t.type){case"Feature":return Br(t);case"FeatureCollection":var e={type:"FeatureCollection",features:t.features.map(Br)};return null!=t.bbox&&(e.bbox=t.bbox),e;default:return jr(t)}},t.geoTimes=function(){return e.geoProjection(Nr).scale(146.153)},t.geoTimesRaw=Nr,t.geoTwoPointAzimuthal=qr,t.geoTwoPointAzimuthalRaw=Vr,t.geoTwoPointAzimuthalUsa=function(){return qr([-158,21.5],[-77,39]).clipAngle(60).scale(400)},t.geoTwoPointEquidistant=Gr,t.geoTwoPointEquidistantRaw=Hr,t.geoTwoPointEquidistantUsa=function(){return Gr([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)},t.geoVanDerGrinten=function(){return e.geoProjection(Wr).scale(79.4183)},t.geoVanDerGrintenRaw=Wr,t.geoVanDerGrinten2=function(){return e.geoProjection(Zr).scale(79.4183)},t.geoVanDerGrinten2Raw=Zr,t.geoVanDerGrinten3=function(){return e.geoProjection(Yr).scale(79.4183)},t.geoVanDerGrinten3Raw=Yr,t.geoVanDerGrinten4=function(){return e.geoProjection(Xr).scale(127.16)},t.geoVanDerGrinten4Raw=Xr,t.geoWagner=Kr,t.geoWagner7=function(){return Kr().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)},t.geoWagnerRaw=$r,t.geoWagner4=function(){return e.geoProjection(tn).scale(176.84)},t.geoWagner4Raw=tn,t.geoWagner6=function(){return e.geoProjection(en).scale(152.63)},t.geoWagner6Raw=en,t.geoWiechel=function(){return e.geoProjection(rn).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)},t.geoWiechelRaw=rn,t.geoWinkel3=function(){return e.geoProjection(nn).scale(158.837)},t.geoWinkel3Raw=nn,Object.defineProperty(t,"__esModule",{value:!0})},"object"==typeof t&&typeof e<"u"?n(t,cg(),lg()):n(r.d3=r.d3||{},r.d3,r.d3)}}),hg=f({"src/plots/geo/zoom.js"(t,e){var r=x(),n=le(),i=qt(),a=Math.PI/180,o=180/Math.PI,s={cursor:"pointer"},l={cursor:"auto"};function c(t,e){return r.behavior.zoom().translate(e.translate()).scale(e.scale())}function u(t,e,r){var a=t.id,o=t.graphDiv,s=o.layout,l=s[a],c=o._fullLayout,u=c[a],h={},p={};function f(t,e){h[a+"."+t]=n.nestedProperty(l,t).get(),i.call("_storeDirectGUIEdit",s,c._preGUI,h);var r=n.nestedProperty(u,t);r.get()!==e&&(r.set(e),n.nestedProperty(l,t).set(e),p[a+"."+t]=e)}r(f),f("projection.scale",e.scale()/t.fitScale),f("fitbounds",!1),o.emit("plotly_relayout",p)}function h(t,e){var n=c(0,e);function i(r){var n=e.invert(t.midPt);r("center.lon",n[0]),r("center.lat",n[1])}return n.on("zoomstart",(function(){r.select(this).style(s)})).on("zoom",(function(){e.scale(r.event.scale).translate(r.event.translate),t.render(!0);var n=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":n[0],"geo.center.lat":n[1]})})).on("zoomend",(function(){r.select(this).style(l),u(t,e,i)})),n}function p(t,e){var n,i,a,o,h,p,f,d,m,g=c(0,e);function y(t){return e.invert(t)}function v(r){var n=e.rotate(),i=e.invert(t.midPt);r("projection.rotation.lon",-n[0]),r("center.lon",i[0]),r("center.lat",i[1])}return g.on("zoomstart",(function(){r.select(this).style(s),n=r.mouse(this),i=e.rotate(),a=e.translate(),o=i,h=y(n)})).on("zoom",(function(){if(p=r.mouse(this),function(t){var r=y(t);if(!r)return!0;var n=e(r);return Math.abs(n[0]-t[0])>2||Math.abs(n[1]-t[1])>2}(n))return g.scale(e.scale()),void g.translate(e.translate());e.scale(r.event.scale),e.translate([a[0],r.event.translate[1]]),h?y(p)&&(d=y(p),f=[o[0]+(d[0]-h[0]),i[1],i[2]],e.rotate(f),o=f):h=y(n=p),m=!0,t.render(!0);var s=e.rotate(),l=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":l[0],"geo.center.lat":l[1],"geo.projection.rotation.lon":-s[0]})})).on("zoomend",(function(){r.select(this).style(l),m&&u(t,e,v)})),g}function f(t,e){var n,i={r:e.rotate(),k:e.scale()},h=c(0,e),p=function(t){for(var e=0,n=arguments.length,i=[];++ed?(a=(h>0?90:-90)-f,i=0):(a=Math.asin(h/d)*o-f,i=Math.sqrt(d*d-h*h));var g=180-a-2*f,v=(Math.atan2(p,u)-Math.atan2(c,i))*o,x=(Math.atan2(p,u)-Math.atan2(c,-i))*o;return m(r[0],r[1],a,v)<=m(r[0],r[1],g,x)?[a,v,r[2]]:[g,x,r[2]]}(f,n,c);(!isFinite(g[0])||!isFinite(g[1])||!isFinite(g[2]))&&(g=c),e.rotate(g),c=g}}else n=d(e,t=a);!function(t){t({type:"zoom"})}(p.of(this,arguments))})),function(t){f++||t({type:"zoomstart"})}(p.of(this,arguments))})).on("zoomend",(function(){var n;r.select(this).style(l),g.call(h,"zoom",null),n=p.of(this,arguments),--f||n({type:"zoomend"}),u(t,e,x)})).on("zoom.redraw",(function(){t.render(!0);var r=e.rotate();t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.projection.rotation.lon":-r[0],"geo.projection.rotation.lat":-r[1]})})),r.rebind(h,p,"on")}function d(t,e){var r=t.invert(e);return r&&isFinite(r[0])&&isFinite(r[1])&&function(t){var e=t[0]*a,r=t[1]*a,n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}(r)}function m(t,e,r,n){var i=g(r-t),a=g(n-e);return Math.sqrt(i*i+a*a)}function g(t){return(t%360+540)%360-180}function y(t,e,r){var n=r*a,i=t.slice(),o=0===e?1:0,s=2===e?1:2,l=Math.cos(n),c=Math.sin(n);return i[o]=t[o]*l-t[s]*c,i[s]=t[s]*l+t[o]*c,i}function v(t,e){for(var r=0,n=0,i=t.length;n0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}e.exports=function(t){return new M(t)},S.plot=function(t,e,r,n){var i=this;if(n)return i.update(t,e,!0);i._geoCalcData=t,i._fullLayout=e;var a=e[this.id],o=[],s=!1;for(var l in w.layerNameToAdjective)if("frame"!==l&&a["show"+l]){s=!0;break}for(var c=!1,u=0;u0&&o._module.calcGeoJSON(a,e)}if(!r){if(this.updateProjection(t,e))return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(e,n),this.updateDims(e,n),this.updateFx(e,n),f.generalUpdatePerTraceModule(this.graphDiv,this,t,n);var s=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=s.selectAll(".point"),this.dataPoints.text=s.selectAll("text"),this.dataPaths.line=s.selectAll(".js-line");var l=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=l.selectAll("path"),this._render()},S.updateProjection=function(t,e){var r=this.graphDiv,s=e[this.id],c=e._size,u=s.domain,h=s.projection,p=s.lonaxis,f=s.lataxis,d=p._ax,g=f._ax,y=this.projection=function(t){var e=t.projection,r=e.type,s=w.projNames[r];s="geo"+l.titleCase(s);for(var c=(n[s]||o[s])(),u=t._isSatellite?180*Math.acos(1/e.distance)/Math.PI:t._isClipped?w.lonaxisSpan[r]/2:null,h=["center","rotate","parallels","clipExtent"],p=function(t){return t?c:[]},f=0;fu*Math.PI/180}return!1},c.getPath=function(){return i().projection(c)},c.getBounds=function(t){return c.getPath().bounds(t)},c.precision(w.precision),t._isSatellite&&c.tilt(e.tilt).distance(e.distance),u&&c.clipAngle(u-w.clipPad),c}(s),v=[[c.l+c.w*u.x[0],c.t+c.h*(1-u.y[1])],[c.l+c.w*u.x[1],c.t+c.h*(1-u.y[0])]],x=s.center||{},_=h.rotation||{},b=p.range||[],T=f.range||[];if(s.fitbounds){d._length=v[1][0]-v[0][0],g._length=v[1][1]-v[0][1],d.range=m(r,d),g.range=m(r,g);var A=(d.range[0]+d.range[1])/2,k=(g.range[0]+g.range[1])/2;if(s._isScoped)x={lon:A,lat:k};else if(s._isClipped){x={lon:A,lat:k},_={lon:A,lat:k,roll:_.roll};var M=h.type,S=w.lonaxisSpan[M]/2||180,C=w.lataxisSpan[M]/2||90;b=[A-S,A+S],T=[k-C,k+C]}else x={lon:A,lat:k},_={lon:A,lat:_.lat,roll:_.roll}}y.center([x.lon-_.lon,x.lat-_.lat]).rotate([-_.lon,-_.lat,_.roll]).parallels(h.parallels);var I=E(b,T);y.fitExtent(v,I);var L=this.bounds=y.getBounds(I),P=this.fitScale=y.scale(),z=y.translate();if(s.fitbounds){var D=y.getBounds(E(d.range,g.range)),O=Math.min((L[1][0]-L[0][0])/(D[1][0]-D[0][0]),(L[1][1]-L[0][1])/(D[1][1]-D[0][1]));isFinite(O)?y.scale(O*P):l.warn("Something went wrong during"+this.id+"fitbounds computations.")}else y.scale(h.scale*P);var R=this.midPt=[(L[0][0]+L[1][0])/2,(L[0][1]+L[1][1])/2];if(y.translate([z[0]+(R[0]-z[0]),z[1]+(R[1]-z[1])]).clipExtent(L),s._isAlbersUsa){var F=y([x.lon,x.lat]),B=y.translate();y.translate([B[0]-(F[0]-B[0]),B[1]-(F[1]-B[1])])}},S.updateBaseLayers=function(t,e){var n=this,i=n.topojson,a=n.layers,o=n.basePaths;function s(t){return"lonaxis"===t||"lataxis"===t}function l(t){return!!w.lineLayers[t]}function c(t){return!!w.fillLayers[t]}var p=(this.hasChoropleth?w.layersForChoropleth:w.layers).filter((function(t){return l(t)||c(t)?e["show"+t]:!s(t)||e[t].showgrid})),f=n.framework.selectAll(".layer").data(p,String);f.exit().each((function(t){delete a[t],delete o[t],r.select(this).remove()})),f.enter().append("g").attr("class",(function(t){return"layer "+t})).each((function(t){var e=a[t]=r.select(this);"bg"===t?n.bgRect=e.append("rect").style("pointer-events","all"):s(t)?o[t]=e.append("path").style("fill","none"):"backplot"===t?e.append("g").classed("choroplethlayer",!0):"frontplot"===t?e.append("g").classed("scatterlayer",!0):l(t)?o[t]=e.append("path").style("fill","none").style("stroke-miterlimit",2):c(t)&&(o[t]=e.append("path").style("stroke","none"))})),f.order(),f.each((function(r){var n=o[r],a=w.layerNameToAdjective[r];"frame"===r?n.datum(w.sphereSVG):l(r)||c(r)?n.datum(k(i,i.objects[r])):s(r)&&n.datum(function(t,e,r){var n,i,a,o=e[t],s=w.scopeDefaults[e.scope];"lonaxis"===t?(n=s.lonaxisRange,i=s.lataxisRange,a=function(t,e){return[t,e]}):"lataxis"===t&&(n=s.lataxisRange,i=s.lonaxisRange,a=function(t,e){return[e,t]});var l={type:"linear",range:[n[0],n[1]-1e-6],tick0:o.tick0,dtick:o.dtick};d.setConvert(l,r);var c=d.calcTicks(l);!e.isScoped&&"lonaxis"===t&&c.pop();for(var u=c.length,h=new Array(u),p=0;p-1&&_(r.event,i,[n.xaxis],[n.yaxis],n.id,u),c.indexOf("event")>-1&&p.click(i,r.event))}))}function h(t){return n.projection.invert([t[0]+n.xaxis._offset,t[1]+n.yaxis._offset])}},S.makeFramework=function(){var t=this,e=t.graphDiv,n=e._fullLayout,i="clip"+n._uid+t.id;t.clipDef=n._clips.append("clipPath").attr("id",i),t.clipRect=t.clipDef.append("rect"),t.framework=r.select(t.container).append("g").attr("class","geo "+t.id).call(h.setClipUrl,i,e),t.project=function(e){var r=t.projection(e);return r?[r[0]-t.xaxis._offset,r[1]-t.yaxis._offset]:[null,null]},t.xaxis={_id:"x",c2p:function(e){return t.project(e)[0]}},t.yaxis={_id:"y",c2p:function(e){return t.project(e)[1]}},t.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},d.setConvert(t.mockAxis,n)},S.saveViewInitial=function(t){var e,r=t.center||{},n=t.projection,i=n.rotation||{};this.viewInitial={fitbounds:t.fitbounds,"projection.scale":n.scale},e=t._isScoped?{"center.lon":r.lon,"center.lat":r.lat}:t._isClipped?{"projection.rotation.lon":i.lon,"projection.rotation.lat":i.lat}:{"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":i.lon},l.extendFlat(this.viewInitial,e)},S.render=function(t){this._hasMarkerAngles&&t?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},S._render=function(){var t,e=this.projection,r=e.getPath();function n(t){var r=e(t.lonlat);return r?c(r[0],r[1]):null}function i(t){return e.isLonLatOverEdges(t.lonlat)?"none":null}for(t in this.basePaths)this.basePaths[t].attr("d",r);for(t in this.dataPaths)this.dataPaths[t].attr("d",(function(t){return r(t.geojson)}));for(t in this.dataPoints)this.dataPoints[t].attr("display",i).attr("transform",n)}}}),fg=f({"src/plots/geo/layout_attributes.js"(t,e){var r=q(),n=Aa().attributes,i=zt().dash,a=Wm(),o=Pt().overrideAll,s=Zt(),l={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:r.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:i};(e.exports=o({domain:n({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:s(a.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:s(a.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:r.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:a.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:a.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:a.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:a.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:r.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:r.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:r.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:r.background},lonaxis:l,lataxis:l},"plot","from-root")).uirevision={valType:"any",editType:"none"}}}),dg=f({"src/plots/geo/layout_defaults.js"(t,e){var r=le(),n=Hs(),i=we().getSubplotData,a=Wm(),o=fg(),s=a.axesNames;function l(t,e,n,o){var l=i(o.fullData,"geo",o.id).map((function(t){return t.index})),c=n("resolution"),u=n("scope"),h=a.scopeDefaults[u],p=n("projection.type",h.projType),f=e._isAlbersUsa="albers usa"===p;f&&(u=e.scope="usa");var d=e._isScoped="world"!==u,m=e._isSatellite="satellite"===p,g=e._isConic=-1!==p.indexOf("conic")||"albers"===p,y=e._isClipped=!!a.lonaxisSpan[p];if(!1===t.visible){var v=r.extendDeep({},e._template);v.showcoastlines=!1,v.showcountries=!1,v.showframe=!1,v.showlakes=!1,v.showland=!1,v.showocean=!1,v.showrivers=!1,v.showsubunits=!1,v.lonaxis&&(v.lonaxis.showgrid=!1),v.lataxis&&(v.lataxis.showgrid=!1),e._template=v}for(var x=n("visible"),_=0;_0&&L<0&&(L+=360);var P,z,D,O=(I+L)/2;if(!f){var R=d?h.projRotate:[O,0,0];P=n("projection.rotation.lon",R[0]),n("projection.rotation.lat",R[1]),n("projection.rotation.roll",R[2]),n("showcoastlines",!d&&x)&&(n("coastlinecolor"),n("coastlinewidth")),n("showocean",!!x&&void 0)&&n("oceancolor")}f?(z=-96.6,D=38.7):(z=d?O:P,D=(C[0]+C[1])/2),n("center.lon",z),n("center.lat",D),m&&(n("projection.tilt"),n("projection.distance")),g&&n("projection.parallels",h.projParallels||[0,60]),n("projection.scale"),n("showland",!!x&&void 0)&&n("landcolor"),n("showlakes",!!x&&void 0)&&n("lakecolor"),n("showrivers",!!x&&void 0)&&(n("rivercolor"),n("riverwidth")),n("showcountries",d&&"usa"!==u&&x)&&(n("countrycolor"),n("countrywidth")),("usa"===u||"north america"===u&&50===c)&&(n("showsubunits",x),n("subunitcolor"),n("subunitwidth")),d||n("showframe",x)&&(n("framecolor"),n("framewidth")),n("bgcolor"),n("fitbounds")&&(delete e.projection.scale,d?(delete e.center.lon,delete e.center.lat):y?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}e.exports=function(t,e,r){n(t,e,r,{type:"geo",attributes:o,handleDefaults:l,fullData:r,partition:"y"})}}}),mg=f({"src/plots/geo/index.js"(t,e){var r=we().getSubplotCalcData,n=le().counterRegex,i=pg(),a="geo",o=n(a),s={};s[a]={valType:"subplotid",dflt:a,editType:"calc"},e.exports={attr:a,name:a,idRoot:a,idRegex:o,attrRegex:o,attributes:s,layoutAttributes:fg(),supplyLayoutDefaults:dg(),plot:function(t){for(var e=t._fullLayout,n=t.calcdata,o=e._subplots[a],s=0;s")}}(t,h,o),[t]}}}),Ag=f({"src/traces/choropleth/event_data.js"(t,e){e.exports=function(t,e,r,n,i){t.location=e.location,t.z=e.z;var a=n[i];return a.fIn&&a.fIn.properties&&(t.properties=a.fIn.properties),t.ct=a.ct,t}}}),kg=f({"src/traces/choropleth/select.js"(t,e){e.exports=function(t,e){var r,n,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[];if(!1===e)for(r=0;r=Math.min(P,z)&&f<=Math.max(P,z)?0:1/0}if(k=Math.min(D,O)&&d<=Math.max(D,O)?0:1/0}E=Math.sqrt(k*k+M*M),b=i[A]}}}else for(A=i.length-1;A>-1;A--)w=h[_=i[A]],T=p[_],k=c.c2p(w)-f,M=u.c2p(T)-d,(S=Math.sqrt(k*k+M*M))100},t.isDotSymbol=function(t){return"string"==typeof t?e.DOT_RE.test(t):t>200}}}),Pg=f({"src/traces/scattergl/defaults.js"(t,e){var r=le(),n=qt(),i=Lg(),a=Ig(),o=bn(),s=Ye(),l=Hn(),c=Gn(),u=Zn(),h=Yn(),p=Kn(),f=$n();e.exports=function(t,e,d,m){function g(n,i){return r.coerce(t,e,a,n,i)}var y=!!t.marker&&i.isOpenSymbol(t.marker.symbol),v=s.isBubble(t),x=l(t,e,m,g);if(x){c(t,e,m,g),g("xhoverformat"),g("yhoverformat");var _=x>>1,s=t[o];(void 0!==r?r(s,e):s-e)>=0?(a=o,i=o-1):n=o+1}return a}function n(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>0?(a=o,i=o-1):n=o+1}return a}function i(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<0?(a=o,n=o+1):i=o-1}return a}function a(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<=0?(a=o,n=o+1):i=o-1}return a}function o(t,e,r,n,i){for(;n<=i;){var a=n+i>>>1,o=t[a],s=void 0!==r?r(o,e):o-e;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function s(t,e,r,n,i,a){return"function"==typeof r?a(t,e,r,void 0===n?0:0|n,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===r?0:0|r,void 0===n?t.length-1:0|n)}e.exports={ge:function(t,e,n,i,a){return s(t,e,n,i,a,r)},gt:function(t,e,r,i,a){return s(t,e,r,i,a,n)},lt:function(t,e,r,n,a){return s(t,e,r,n,a,i)},le:function(t,e,r,n,i){return s(t,e,r,n,i,a)},eq:function(t,e,r,n,i){return s(t,e,r,n,i,o)}}}}),Og=f({"node_modules/pick-by-alias/index.js"(t,e){e.exports=function(t,e,r){var i,a,o={};if("string"==typeof e&&(e=n(e)),Array.isArray(e)){var s={};for(a=0;a1&&(t=arguments),"string"==typeof t?t=t.split(/\s/).map(parseFloat):"number"==typeof t&&(t=[t]),t.length&&"number"==typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(e={x:(t=r(t,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"})).left||0,y:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height),e}}}),Fg=f({"node_modules/array-bounds/index.js"(t,e){e.exports=function(t,e){if(!t||null==t.length)throw Error("Argument should be an array");e=null==e?1:Math.floor(e);for(var r=Array(2*e),n=0;ni&&(i=t[o]),t[o]>>1;e.dtype||(e.dtype="array"),"string"==typeof e.dtype?d=new(u(e.dtype))(g):e.dtype&&(d=e.dtype,Array.isArray(d)&&(d.length=g));for(let t=0;tn||s>1073741824){for(let t=0;tr+i||b>n+i||T=k||o===s)return;let c=y[a];void 0===s&&(s=c.length);for(let e=o;e=l&&n<=d&&i>=u&&i<=m&&M.push(r)}let h=v[a],p=h[4*o+0],f=h[4*o+1],x=h[4*o+2],_=h[4*o+3],w=function(t,e){let r=null,n=0;for(;null===r;)if(r=t[4*e+n],n++,n>t.length)return null;return r}(h,o+1),S=.5*i,E=a+1;e(r,n,S,E,p,f||x||_||w),e(r,n+S,S,E,f,x||_||w),e(r+S,n,S,E,x,_||w),e(r+S,n+S,S,E,_,w)}(0,0,1,0,0,1),M},d;function w(t,e,r){let n=1,i=.5,a=.5,o=.5;for(let s=0;s1&&(i=1),i<-1&&(i=-1),(t*n-e*r<0?-1:1)*Math.acos(i)};t.default=function(t){var e=t.px,o=t.py,s=t.cx,l=t.cy,c=t.rx,u=t.ry,h=t.xAxisRotation,p=void 0===h?0:h,f=t.largeArcFlag,d=void 0===f?0:f,m=t.sweepFlag,g=void 0===m?0:m,y=[];if(0===c||0===u)return[];var v=Math.sin(p*r/360),x=Math.cos(p*r/360),_=x*(e-s)/2+v*(o-l)/2,b=-v*(e-s)/2+x*(o-l)/2;if(0===_&&0===b)return[];c=Math.abs(c),u=Math.abs(u);var w=Math.pow(_,2)/Math.pow(c,2)+Math.pow(b,2)/Math.pow(u,2);w>1&&(c*=Math.sqrt(w),u*=Math.sqrt(w));var T=function(t,e,n,i,o,s,l,c,u,h,p,f){var d=Math.pow(o,2),m=Math.pow(s,2),g=Math.pow(p,2),y=Math.pow(f,2),v=d*m-d*y-m*g;v<0&&(v=0),v/=d*y+m*g;var x=(v=Math.sqrt(v)*(l===c?-1:1))*o/s*f,_=v*-s/o*p,b=h*x-u*_+(t+n)/2,w=u*x+h*_+(e+i)/2,T=(p-x)/o,A=(f-_)/s,k=(-p-x)/o,M=(-f-_)/s,S=a(1,0,T,A),E=a(T,A,k,M);return 0===c&&E>0&&(E-=r),1===c&&E<0&&(E+=r),[b,w,S,E]}(e,o,s,l,c,u,d,g,v,x,_,b),A=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var r=[],n=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!e||r.length!==e);n=!0);}catch(t){i=!0,a=t}finally{try{!n&&s.return&&s.return()}finally{if(i)throw a}}return r}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")}(T,4),k=A[0],M=A[1],S=A[2],E=A[3],C=Math.abs(E)/(r/4);Math.abs(1-C)<1e-7&&(C=1);var I=Math.max(Math.ceil(C),1);E/=I;for(var L=0;L4?(o=g[g.length-4],s=g[g.length-3]):(o=p,s=f),a.push(g)}return a};var r=Gg();function n(t,e,r,n){return["C",t,e,r,n,r,n]}function i(t,e,r,n,i,a){return["C",t/3+2/3*r,e/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}}}),Zg=f({"node_modules/is-svg-path/index.js"(t,e){e.exports=function(t){return"string"==typeof t&&(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}}}),Yg=f({"node_modules/svg-path-bounds/index.js"(t,e){var r=Ke(),n=Hg(),i=Wg(),a=Zg(),o=nu();e.exports=function(t){if(Array.isArray(t)&&1===t.length&&"string"==typeof t[0]&&(t=t[0]),"string"==typeof t&&(o(a(t),"String is not an SVG path."),t=r(t)),o(Array.isArray(t),"Argument should be a string or an array of path segments."),t=n(t),!(t=i(t)).length)return[0,0,0,0];for(var e=[1/0,1/0,-1/0,-1/0],s=0,l=t.length;se[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}}}),Xg=f({"node_modules/normalize-svg-path/index.js"(t,e){var r=Math.PI,n=l(120);function i(t,e,r,n){return["C",t,e,r,n,r,n]}function a(t,e,r,n,i,a){return["C",t/3+2/3*r,e/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function o(t,e,i,a,l,c,u,h,p,f){if(f)T=f[0],A=f[1],b=f[2],w=f[3];else{var d=s(t,e,-l);t=d.x,e=d.y;var m=(t-(h=(d=s(h,p,-l)).x))/2,g=(e-(p=d.y))/2,y=m*m/(i*i)+g*g/(a*a);y>1&&(i*=y=Math.sqrt(y),a*=y);var v=i*i,x=a*a,_=(c==u?-1:1)*Math.sqrt(Math.abs((v*x-v*g*g-x*m*m)/(v*g*g+x*m*m)));_==1/0&&(_=1);var b=_*i*g/a+(t+h)/2,w=_*-a*m/i+(e+p)/2,T=Math.asin(((e-w)/a).toFixed(9)),A=Math.asin(((p-w)/a).toFixed(9));(T=tA&&(T-=2*r),!u&&A>T&&(A-=2*r)}if(Math.abs(A-T)>n){var k=A,M=h,S=p;A=T+n*(u&&A>T?1:-1);var E=o(h=b+i*Math.cos(A),p=w+a*Math.sin(A),i,a,l,0,u,M,S,[A,k,b,w])}var C=Math.tan((A-T)/4),I=4/3*i*C,L=4/3*a*C,P=[2*t-(t+I*Math.sin(T)),2*e-(e-L*Math.cos(T)),h+I*Math.sin(A),p-L*Math.cos(A),h,p];if(f)return P;E&&(P=P.concat(E));for(var z=0;z7&&(r.push(y.splice(0,7)),y.unshift("C"));break;case"S":var x=f,_=d;("C"==e||"S"==e)&&(x+=x-n,_+=_-s),y=["C",x,_,y[1],y[2],y[3],y[4]];break;case"T":"Q"==e||"T"==e?(h=2*f-h,p=2*d-p):(h=f,p=d),y=a(f,d,h,p,y[1],y[2]);break;case"Q":h=y[1],p=y[2],y=a(f,d,y[1],y[2],y[3],y[4]);break;case"L":y=i(f,d,y[1],y[2]);break;case"H":y=i(f,d,y[1],d);break;case"V":y=i(f,d,f,y[1]);break;case"Z":y=i(f,d,c,u)}e=v,f=y[y.length-2],d=y[y.length-1],y.length>4?(n=y[y.length-4],s=y[y.length-3]):(n=f,s=d),r.push(y)}return r}}}),$g=f({"node_modules/draw-svg-path/index.js"(t,e){var r=Hg(),n=Xg(),i={M:"moveTo",C:"bezierCurveTo"};e.exports=function(t,e){t.beginPath(),n(r(e)).forEach((function(e){var r=e[0],n=e.slice(1);t[i[r]].apply(t,n)})),t.closePath()}}}),Kg=f({"node_modules/bitmap-sdf/index.js"(t,e){var r=zd();e.exports=function(t,e){e||(e={});var a,o,s,l,c,u,h,p,f,d,m,g=null==e.cutoff?.25:e.cutoff,y=null==e.radius?8:e.radius,v=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error("For raw data width and height should be provided by options");a=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/a/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(h=(p=t).getContext("2d"),a=p.width,o=p.height,l=(f=h.getImageData(0,0,a,o)).data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(h=t,a=(p=t.canvas).width,o=p.height,l=(f=h.getImageData(0,0,a,o)).data,u=4):window.ImageData&&t instanceof window.ImageData&&(f=t,a=t.width,o=t.height,l=f.data,u=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(a*o),d=0,m=c.length;d0?"white":"black",c.lineWidth=Math.abs(f)),c.translate(.5*u,.5*h),c.scale(g,g),function(){if(null!=r)return r;var t=document.createElement("canvas").getContext("2d");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return r=!1;var e=new Path2D("M0,0h1v1h-1v-1Z");t.fillStyle="black",t.fill(e);var n=t.getImageData(0,0,1,1);return r=n&&n.data&&255===n.data[3]}()){var y=new Path2D(t);c.fill(y),f&&c.stroke(y)}else{var v=i(t);a(c,v),c.fill(),f&&c.stroke()}return c.setTransform(1,0,0,1,0,0),s(c,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*p})}}}),Qg=f({"src/traces/scattergl/convert.js"(t,e){var r=A(),n=Jg(),i=Od(),a=qt(),o=le(),s=o.isArrayOrTypedArray,l=Qe(),c=xe(),u=Fd().formatColor,h=Ye(),p=Xe(),f=Lg(),d=Cg(),m=G().DESELECTDIM,g={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},y=$e().appendArrayPointValue;function v(t,e){var n,i=t._fullLayout,a=e._length,l=e.textfont,c=e.textposition,u=s(c)?c:[c],h=l.color,p=l.size,f=l.family,d=l.weight,m=l.style,g=l.variant,v={},_=t._context.plotGlPixelRatio,b=e.texttemplate;if(b){v.text=[];var w=i._d3locale,T=Array.isArray(b),A=T?Math.min(b.length,a):a,k=T?function(t){return b[t]}:function(){return b};for(n=0;n500?"bold":"normal":t}function _(t,e){var r,n,a=e._length,o=e.marker,l={},c=s(o.symbol),h=s(o.angle),d=s(o.color),m=s(o.line.color),g=s(o.opacity),y=s(o.size),v=s(o.line.width);if(c||(n=f.isOpenSymbol(o.symbol)),c||d||m||g||h){l.symbols=new Array(a),l.angles=new Array(a),l.colors=new Array(a),l.borderColors=new Array(a);var x=o.symbol,_=o.angle,b=u(o,o.opacity,a),w=u(o.line,o.opacity,a);if(!s(w[0])){var T=w;for(w=Array(a),r=0;rd.TOO_MANY_POINTS||h.hasMarkers(e)?"rect":"round";if(c&&e.connectgaps){var p=n[0],f=n[1];for(i=0;i1?c[i]:c[0]:c,m=s(u)?u.length>1?u[i]:u[0]:u,y=g[d],v=g[m],x=p?p/.8+1:0,_=-v*x-.5*v;o.offset[i]=[y*x/f,_/f]}}return o}}}}),ty=f({"src/traces/scattergl/scene_update.js"(t,e){var r=le();e.exports=function(t,e){var n=e._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return e._scene||((n=e._scene={}).init=function(){r.extendFlat(n,a,i)},n.init(),n.update=function(t){var e=r.repeat(t,n.count);if(n.fill2d&&n.fill2d.update(e),n.scatter2d&&n.scatter2d.update(e),n.line2d&&n.line2d.update(e),n.error2d&&n.error2d.update(e.concat(e)),n.select2d&&n.select2d.update(e),n.glText)for(var i=0;i=m,w=2*_,T={},A=y.makeCalcdata(e,"x"),k=v.makeCalcdata(e,"y"),M=o(e,y,"x",A),S=o(e,v,"y",k),E=M.vals,C=S.vals;e._x=E,e._y=C,e.xperiodalignment&&(e._origX=A,e._xStarts=M.starts,e._xEnds=M.ends),e.yperiodalignment&&(e._origY=k,e._yStarts=S.starts,e._yEnds=S.ends);var I=new Array(w),L=new Array(_);for(a=0;a<_;a++)I[2*a]=E[a]===d?NaN:E[a],I[2*a+1]=C[a]===d?NaN:C[a],L[a]=a;if("log"===y.type)for(a=0;a1&&n.extendFlat(s.line,p.linePositions(t,r,i)),s.errorX||s.errorY){var l=p.errorBarPositions(t,r,i,a,o);s.errorX&&n.extendFlat(s.errorX,l.x),s.errorY&&n.extendFlat(s.errorY,l.y)}return s.text&&(n.extendFlat(s.text,{positions:i},p.textPosition(t,r,s.text,s.marker)),n.extendFlat(s.textSel,{positions:i},p.textPosition(t,r,s.text,s.markerSel)),n.extendFlat(s.textUnsel,{positions:i},p.textPosition(t,r,s.text,s.markerUnsel))),s}(t,0,e,I,E,C),D=f(t,x);return u(s,e),b?z.marker&&(P=z.marker.sizeAvg||Math.max(z.marker.size,3)):P=l(e,_),c(t,e,y,v,E,C,P),z.errorX&&g(e,y,z.errorX),z.errorY&&g(e,v,z.errorY),z.fill&&!D.fill2d&&(D.fill2d=!0),z.marker&&!D.scatter2d&&(D.scatter2d=!0),z.line&&!D.line2d&&(D.line2d=!0),(z.errorX||z.errorY)&&!D.error2d&&(D.error2d=!0),z.text&&!D.glText&&(D.glText=!0),z.marker&&(z.marker.snap=_),D.lineOptions.push(z.line),D.errorXOptions.push(z.errorX),D.errorYOptions.push(z.errorY),D.fillOptions.push(z.fill),D.markerOptions.push(z.marker),D.markerSelectedOptions.push(z.markerSel),D.markerUnselectedOptions.push(z.markerUnsel),D.textOptions.push(z.text),D.textSelectedOptions.push(z.textSel),D.textUnselectedOptions.push(z.textUnsel),D.selectBatch.push([]),D.unselectBatch.push([]),T._scene=D,T.index=D.count,T.x=E,T.y=C,T.positions=I,D.count++,[{x:!1,y:!1,t:T,trace:e}]}}}),ry=f({"src/traces/scattergl/edit_style.js"(t,e){var r=le(),n=H(),i=G().DESELECTDIM;e.exports={styleTextSelection:function(t){var e,a,o=t[0],s=o.trace,l=o.t,c=l._scene,u=l.index,h=c.selectBatch[u],p=c.unselectBatch[u],f=c.textOptions[u],d=c.textSelectedOptions[u]||{},m=c.textUnselectedOptions[u]||{},g=r.extendFlat({},f);if(h.length||p.length){var y=d.color,v=m.color,x=f.color,_=r.isArrayOrTypedArray(x);for(g.color=new Array(s._length),e=0;e>>24,n=(16711680&t)>>>16,i=(65280&t)>>>8,a=255&t;return!1===e?[r,n,i,a]:[r/255,n/255,i/255,a/255]}}}),oy=f({"node_modules/object-assign/index.js"(t,e){var r=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(t){n[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch{return!1}}()?Object.assign:function(t,e){for(var a,o,s=function(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}(t),l=1;lt.length)&&(e=t.length);for(var r=0,n=new Array(e);r 1.0 + delta) {\n\t\tdiscard;\n\t}\n\n\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\n\n\tfloat borderRadius = fragBorderRadius;\n\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\n\tvec4 color = mix(fragColor, fragBorderColor, ratio);\n\tcolor.a *= alpha * opacity;\n\tgl_FragColor = color;\n}\n"]),c.vert=h(["precision highp float;\n#define GLSLIFY 1\n\nattribute float x, y, xFract, yFract;\nattribute float size, borderSize;\nattribute vec4 colorId, borderColorId;\nattribute float isActive;\n\n// `invariant` effectively turns off optimizations for the position.\n// We need this because -fast-math on M1 Macs is re-ordering\n// floating point operations in a way that causes floating point\n// precision limits to put points in the wrong locations.\ninvariant gl_Position;\n\nuniform bool constPointSize;\nuniform float pixelRatio;\nuniform vec2 paletteSize, scale, scaleFract, translate, translateFract;\nuniform sampler2D paletteTexture;\n\nconst float maxSize = 100.;\n\nvarying vec4 fragColor, fragBorderColor;\nvarying float fragBorderRadius, fragWidth;\n\nfloat pointSizeScale = (constPointSize) ? 2. : pixelRatio;\n\nbool isDirect = (paletteSize.x < 1.);\n\nvec4 getColor(vec4 id) {\n return isDirect ? id / 255. : texture2D(paletteTexture,\n vec2(\n (id.x + .5) / paletteSize.x,\n (id.y + .5) / paletteSize.y\n )\n );\n}\n\nvoid main() {\n // ignore inactive points\n if (isActive == 0.) return;\n\n vec2 position = vec2(x, y);\n vec2 positionFract = vec2(xFract, yFract);\n\n vec4 color = getColor(colorId);\n vec4 borderColor = getColor(borderColorId);\n\n float size = size * maxSize / 255.;\n float borderSize = borderSize * maxSize / 255.;\n\n gl_PointSize = (size + borderSize) * pointSizeScale;\n\n vec2 pos = (position + translate) * scale\n + (positionFract + translateFract) * scale\n + (position + translate) * scaleFract\n + (positionFract + translateFract) * scaleFract;\n\n gl_Position = vec4(pos * 2. - 1., 0., 1.);\n\n fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);\n fragColor = color;\n fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;\n fragWidth = 1. / gl_PointSize;\n}\n"]),m&&(c.frag=c.frag.replace("smoothstep","smoothStep"),l.frag=l.frag.replace("smoothstep","smoothStep")),this.drawCircle=t(c)}x.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},x.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},x.prototype.draw=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;nn)?e.tree=c(t,{bounds:h}):n&&n.length&&(e.tree=n),e.tree){var p={primitive:"points",usage:"static",data:e.tree,type:"uint32"};e.elements?e.elements(p):e.elements=o.elements(p)}var f=g.float32(t);return i({data:f,usage:"dynamic"}),a({data:g.fract32(t,f),usage:"dynamic"}),l({data:new Uint8Array(u),type:"uint8",usage:"stream"}),t}},{marker:function(e,r,n){var i=r.activation;if(i.forEach((function(t){return t&&t.destroy&&t.destroy()})),i.length=0,e&&"number"!=typeof e[0]){for(var a=[],s=0,l=Math.min(e.length,r.count);s=0)return a;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o4*n&&(this.tooManyColors=!0),this.updatePalette(r),1===i.length?i[0]:i},x.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25*t.length/e);if(n>1)for(var i=.25*(t=t.slice()).length%e;i80*r){i=s=t[0],o=l=t[1];for(var x=r;xs&&(s=c),p>l&&(l=p);f=0!==(f=Math.max(s-i,l-o))?32767/f:0}return a(y,v,r,i,o,f,0),v}function n(t,e,r,n,i){var a,o;if(i===S(t,e,r,n)>0)for(a=e;a=e;a-=n)o=A(a,t[a],t[a+1],o);return o&&v(o,o.next)&&(k(o),o=o.next),o}function i(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!v(n,n.next)&&0!==y(n.prev,n,n.next))n=n.next;else{if(k(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function a(t,e,r,n,u,h,p){if(t){!p&&h&&function(t,e,r,n){var i=t;do{0===i.z&&(i.z=f(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,r,n,i,a,o,s,l,c=1;do{for(r=t,t=null,a=null,o=0;r;){for(o++,n=r,s=0,e=0;e0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;r=n}a.nextZ=null,c*=2}while(o>1)}(i)}(t,n,u,h);for(var d,m,g=t;t.prev!==t.next;)if(d=t.prev,m=t.next,h?s(t,n,u,h):o(t))e.push(d.i/r|0),e.push(t.i/r|0),e.push(m.i/r|0),k(t),t=m.next,g=m.next;else if((t=m)===g){p?1===p?a(t=l(i(t),e,r),e,r,n,u,h,2):2===p&&c(t,e,r,n,u,h):a(i(t),e,r,n,u,h,1);break}}}function o(t){var e=t.prev,r=t,n=t.next;if(y(e,r,n)>=0)return!1;for(var i=e.x,a=r.x,o=n.x,s=e.y,l=r.y,c=n.y,u=ia?i>o?i:o:a>o?a:o,f=s>l?s>c?s:c:l>c?l:c,d=n.next;d!==e;){if(d.x>=u&&d.x<=p&&d.y>=h&&d.y<=f&&m(i,s,a,l,o,c,d.x,d.y)&&y(d.prev,d,d.next)>=0)return!1;d=d.next}return!0}function s(t,e,r,n){var i=t.prev,a=t,o=t.next;if(y(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,c=o.x,u=i.y,h=a.y,p=o.y,d=sl?s>c?s:c:l>c?l:c,x=u>h?u>p?u:p:h>p?h:p,_=f(d,g,e,r,n),b=f(v,x,e,r,n),w=t.prevZ,T=t.nextZ;w&&w.z>=_&&T&&T.z<=b;){if(w.x>=d&&w.x<=v&&w.y>=g&&w.y<=x&&w!==i&&w!==o&&m(s,u,l,h,c,p,w.x,w.y)&&y(w.prev,w,w.next)>=0||(w=w.prevZ,T.x>=d&&T.x<=v&&T.y>=g&&T.y<=x&&T!==i&&T!==o&&m(s,u,l,h,c,p,T.x,T.y)&&y(T.prev,T,T.next)>=0))return!1;T=T.nextZ}for(;w&&w.z>=_;){if(w.x>=d&&w.x<=v&&w.y>=g&&w.y<=x&&w!==i&&w!==o&&m(s,u,l,h,c,p,w.x,w.y)&&y(w.prev,w,w.next)>=0)return!1;w=w.prevZ}for(;T&&T.z<=b;){if(T.x>=d&&T.x<=v&&T.y>=g&&T.y<=x&&T!==i&&T!==o&&m(s,u,l,h,c,p,T.x,T.y)&&y(T.prev,T,T.next)>=0)return!1;T=T.nextZ}return!0}function l(t,e,r){var n=t;do{var a=n.prev,o=n.next.next;!v(a,o)&&x(a,n,n.next,o)&&w(a,o)&&w(o,a)&&(e.push(a.i/r|0),e.push(n.i/r|0),e.push(o.i/r|0),k(n),k(n.next),n=t=o),n=n.next}while(n!==t);return i(n)}function c(t,e,r,n,o,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&g(l,c)){var u=T(l,c);return l=i(l,l.next),u=i(u,u.next),a(l,e,r,n,o,s,0),void a(u,e,r,n,o,s,0)}c=c.next}l=l.next}while(l!==t)}function u(t,e){return t.x-e.x}function h(t,e){var r=function(t,e){var r,n=e,i=t.x,a=t.y,o=-1/0;do{if(a<=n.y&&a>=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o&&(o=s,r=n.x=n.x&&n.x>=u&&i!==n.x&&m(ar.x||n.x===r.x&&p(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e);if(!r)return e;var n=T(r,t);return i(n,n.next),i(r,r.next)}function p(t,e){return y(t.prev,t,e.prev)<0&&y(e.next,t,t.next)<0}function f(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function d(t){var e=t,r=t;do{(e.x=(t-o)*(a-s)&&(t-o)*(n-s)>=(r-o)*(e-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function g(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&x(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(w(t,e)&&w(e,t)&&function(t,e){var r=t,n=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(y(t.prev,t,e.prev)||y(t,e.prev,e))||v(t,e)&&y(t.prev,t,t.next)>0&&y(e.prev,e,e.next)>0)}function y(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function v(t,e){return t.x===e.x&&t.y===e.y}function x(t,e,r,n){var i=b(y(t,e,r)),a=b(y(t,e,n)),o=b(y(r,n,t)),s=b(y(r,n,e));return!!(i!==a&&o!==s||0===i&&_(t,r,e)||0===a&&_(t,n,e)||0===o&&_(r,t,n)||0===s&&_(r,e,n))}function _(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function b(t){return t>0?1:t<0?-1:0}function w(t,e){return y(t.prev,t,t.next)<0?y(t,e,t.next)>=0&&y(t,t.prev,e)>=0:y(t,e,t.prev)<0||y(t,t.next,e)<0}function T(t,e){var r=new M(t.i,t.x,t.y),n=new M(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function A(t,e,r,n){var i=new M(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function k(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function M(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function S(t,e,r,n){for(var i=0,a=e,o=r-n;a0&&(n+=t[i-1].length,r.holes.push(n))}return r}}}),fy=f({"node_modules/array-normalize/index.js"(t,e){var r=Fg();e.exports=function(t,e,n){if(!t||null==t.length)throw Error("Argument should be an array");null==e&&(e=1),null==n&&(n=r(t,e));for(var i=0;i-1}}}),jy=f({"node_modules/es5-ext/string/#/contains/index.js"(t,e){e.exports=Fy()()?String.prototype.contains:By()}}),Ny=f({"node_modules/d/index.js"(t,e){var r=ky(),n=Cy(),i=Oy(),a=Ry(),o=jy(),s=e.exports=function(t,e){var n,s,l,c,u;return arguments.length<2||"string"!=typeof t?(c=e,e=t,t=null):c=arguments[2],r(t)?(n=o.call(t,"c"),s=o.call(t,"e"),l=o.call(t,"w")):(n=l=!0,s=!1),u={value:e,configurable:n,enumerable:s,writable:l},c?i(a(c),u):u};s.gs=function(t,e,s){var l,c,u,h;return"string"!=typeof t?(u=s,s=e,e=t,t=null):u=arguments[3],r(e)?n(e)?r(s)?n(s)||(u=s,s=void 0):s=void 0:(u=e,e=s=void 0):e=void 0,r(t)?(l=o.call(t,"c"),c=o.call(t,"e")):(l=!0,c=!1),h={get:e,set:s,configurable:l,enumerable:c},u?i(a(u),h):h}}}),Uy=f({"node_modules/es5-ext/function/is-arguments.js"(t,e){var r=Object.prototype.toString,n=r.call(function(){return arguments}());e.exports=function(t){return r.call(t)===n}}}),Vy=f({"node_modules/es5-ext/string/is-string.js"(t,e){var r=Object.prototype.toString,n=r.call("");e.exports=function(t){return"string"==typeof t||t&&"object"==typeof t&&(t instanceof String||r.call(t)===n)||!1}}}),qy=f({"node_modules/ext/global-this/is-implemented.js"(t,e){e.exports=function(){return!("object"!=typeof globalThis||!globalThis)&&globalThis.Array===Array}}}),Hy=f({"node_modules/ext/global-this/implementation.js"(t,e){var r=function(){if("object"==typeof self&&self)return self;if("object"==typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return r()}try{return __global__||r()}finally{delete Object.prototype.__global__}}()}}),Gy=f({"node_modules/ext/global-this/index.js"(t,e){e.exports=qy()()?globalThis:Hy()}}),Wy=f({"node_modules/es6-symbol/is-implemented.js"(t,e){var r=Gy(),n={object:!0,symbol:!0};e.exports=function(){var t,e=r.Symbol;if("function"!=typeof e)return!1;t=e("test symbol");try{String(t)}catch{return!1}return!(!n[typeof e.iterator]||!n[typeof e.toPrimitive]||!n[typeof e.toStringTag])}}}),Zy=f({"node_modules/es6-symbol/is-symbol.js"(t,e){e.exports=function(t){return!(!t||"symbol"!=typeof t&&(!t.constructor||"Symbol"!==t.constructor.name||"Symbol"!==t[t.constructor.toStringTag]))}}}),Yy=f({"node_modules/es6-symbol/validate-symbol.js"(t,e){var r=Zy();e.exports=function(t){if(!r(t))throw new TypeError(t+" is not a symbol");return t}}}),Xy=f({"node_modules/es6-symbol/lib/private/generate-name.js"(t,e){var r=Ny(),n=Object.create,i=Object.defineProperty,a=Object.prototype,o=n(null);e.exports=function(t){for(var e,n,s=0;o[t+(s||"")];)++s;return o[t+=s||""]=!0,i(a,e="@@"+t,r.gs(null,(function(t){n||(n=!0,i(this,e,r(t)),n=!1)}))),e}}}),$y=f({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(t,e){var r=Ny(),n=Gy().Symbol;e.exports=function(t){return Object.defineProperties(t,{hasInstance:r("",n&&n.hasInstance||t("hasInstance")),isConcatSpreadable:r("",n&&n.isConcatSpreadable||t("isConcatSpreadable")),iterator:r("",n&&n.iterator||t("iterator")),match:r("",n&&n.match||t("match")),replace:r("",n&&n.replace||t("replace")),search:r("",n&&n.search||t("search")),species:r("",n&&n.species||t("species")),split:r("",n&&n.split||t("split")),toPrimitive:r("",n&&n.toPrimitive||t("toPrimitive")),toStringTag:r("",n&&n.toStringTag||t("toStringTag")),unscopables:r("",n&&n.unscopables||t("unscopables"))})}}}),Ky=f({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(t,e){var r=Ny(),n=Yy(),i=Object.create(null);e.exports=function(t){return Object.defineProperties(t,{for:r((function(e){return i[e]?i[e]:i[e]=t(String(e))})),keyFor:r((function(t){var e;for(e in n(t),i)if(i[e]===t)return e}))})}}}),Jy=f({"node_modules/es6-symbol/polyfill.js"(t,e){var r,n,i,a=Ny(),o=Yy(),s=Gy().Symbol,l=Xy(),c=$y(),u=Ky(),h=Object.create,p=Object.defineProperties,f=Object.defineProperty;if("function"==typeof s)try{String(s()),i=!0}catch{}else s=null;n=function(t){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return r(t)},e.exports=r=function t(e){var r;if(this instanceof t)throw new TypeError("Symbol is not a constructor");return i?s(e):(r=h(n.prototype),e=void 0===e?"":String(e),p(r,{__description__:a("",e),__name__:a("",l(e))}))},c(r),u(r),p(n.prototype,{constructor:a(r),toString:a("",(function(){return this.__name__}))}),p(r.prototype,{toString:a((function(){return"Symbol ("+o(this).__description__+")"})),valueOf:a((function(){return o(this)}))}),f(r.prototype,r.toPrimitive,a("",(function(){var t=o(this);return"symbol"==typeof t?t:t.toString()}))),f(r.prototype,r.toStringTag,a("c","Symbol")),f(n.prototype,r.toStringTag,a("c",r.prototype[r.toStringTag])),f(n.prototype,r.toPrimitive,a("c",r.prototype[r.toPrimitive]))}}),Qy=f({"node_modules/es6-symbol/index.js"(t,e){e.exports=Wy()()?Gy().Symbol:Jy()}}),tv=f({"node_modules/es5-ext/array/#/clear.js"(t,e){var r=xy();e.exports=function(){return r(this).length=0,this}}}),ev=f({"node_modules/es5-ext/object/valid-callable.js"(t,e){e.exports=function(t){if("function"!=typeof t)throw new TypeError(t+" is not a function");return t}}}),rv=f({"node_modules/type/string/coerce.js"(t,e){var r=ky(),n=My(),i=Object.prototype.toString;e.exports=function(t){if(!r(t))return null;if(n(t)){var e=t.toString;if("function"!=typeof e||e===i)return null}try{return""+t}catch{return null}}}}),nv=f({"node_modules/type/lib/safe-to-string.js"(t,e){e.exports=function(t){try{return t.toString()}catch{try{return String(t)}catch{return null}}}}}),iv=f({"node_modules/type/lib/to-short-string.js"(t,e){var r=nv(),n=/[\n\r\u2028\u2029]/g;e.exports=function(t){var e=r(t);return null===e?"":(e.length>100&&(e=e.slice(0,99)+"…"),e=e.replace(n,(function(t){switch(t){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}}}),av=f({"node_modules/type/lib/resolve-exception.js"(t,e){var r=ky(),n=My(),i=rv(),a=iv(),o=function(t,e){return t.replace("%v",a(e))};e.exports=function(t,e,a){if(!n(a))throw new TypeError(o(e,t));if(!r(t)){if("default"in a)return a.default;if(a.isOptional)return null}var s=i(a.errorMessage);throw r(s)||(s=e),new TypeError(o(s,t))}}}),ov=f({"node_modules/type/value/ensure.js"(t,e){var r=av(),n=ky();e.exports=function(t){return n(t)?t:r(t,"Cannot use %v",arguments[1])}}}),sv=f({"node_modules/type/plain-function/ensure.js"(t,e){var r=av(),n=Cy();e.exports=function(t){return n(t)?t:r(t,"%v is not a plain function",arguments[1])}}}),lv=f({"node_modules/es5-ext/array/from/is-implemented.js"(t,e){e.exports=function(){var t,e,r=Array.from;return"function"==typeof r&&!(!(e=r(t=["raz","dwa"]))||e===t||"dwa"!==e[1])}}}),cv=f({"node_modules/es5-ext/function/is-function.js"(t,e){var r=Object.prototype.toString,n=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);e.exports=function(t){return"function"==typeof t&&n(r.call(t))}}}),uv=f({"node_modules/es5-ext/math/sign/is-implemented.js"(t,e){e.exports=function(){var t=Math.sign;return"function"==typeof t&&1===t(10)&&-1===t(-20)}}}),hv=f({"node_modules/es5-ext/math/sign/shim.js"(t,e){e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:t>0?1:-1}}}),pv=f({"node_modules/es5-ext/math/sign/index.js"(t,e){e.exports=uv()()?Math.sign:hv()}}),fv=f({"node_modules/es5-ext/number/to-integer.js"(t,e){var r=pv(),n=Math.abs,i=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?r(t)*i(n(t)):t}}}),dv=f({"node_modules/es5-ext/number/to-pos-integer.js"(t,e){var r=fv(),n=Math.max;e.exports=function(t){return n(0,r(t))}}}),mv=f({"node_modules/es5-ext/array/from/shim.js"(t,e){var r=Qy().iterator,n=Uy(),i=cv(),a=dv(),o=ev(),s=xy(),l=gy(),c=Vy(),u=Array.isArray,h=Function.prototype.call,p={configurable:!0,enumerable:!0,writable:!0,value:null},f=Object.defineProperty;e.exports=function(t){var e,d,m,g,y,v,x,_,b,w,T=arguments[1],A=arguments[2];if(t=Object(s(t)),l(T)&&o(T),this&&this!==Array&&i(this))e=this;else{if(!T){if(n(t))return 1!==(y=t.length)?Array.apply(null,t):((g=new Array(1))[0]=t[0],g);if(u(t)){for(g=new Array(y=t.length),d=0;d=55296&&v<=56319&&(w+=t[++d]),w=T?h.call(T,A,w,m):w,e?(p.value=w,f(g,m,p)):g[m]=w,++m;y=m}if(void 0===y)for(y=a(t.length),e&&(g=new e(y)),d=0;d=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__)return void u(this,"__redo__",s("c",[t]));this.__redo__.forEach((function(e,r){e>=t&&(this.__redo__[r]=++e)}),this),this.__redo__.push(t)}})),_onDelete:s((function(t){var e;t>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(e=this.__redo__.indexOf(t))&&this.__redo__.splice(e,1),this.__redo__.forEach((function(e,r){e>t&&(this.__redo__[r]=--e)}),this)))})),_onClear:s((function(){this.__redo__&&n.call(this.__redo__),this.__nextIndex__=0}))}))),u(r.prototype,c.iterator,s((function(){return this})))}}),Tv=f({"node_modules/es6-iterator/array.js"(t,e){var r,n=wy(),i=jy(),a=Ny(),o=Qy(),s=wv(),l=Object.defineProperty;r=e.exports=function(t,e){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");s.call(this,t),e=e?i.call(e,"key+value")?"key+value":i.call(e,"key")?"key":"value":"value",l(this,"__kind__",a("",e))},n&&n(r,s),delete r.prototype.constructor,r.prototype=Object.create(s.prototype,{_resolve:a((function(t){return"value"===this.__kind__?this.__list__[t]:"key+value"===this.__kind__?[t,this.__list__[t]]:t}))}),l(r.prototype,o.toStringTag,a("c","Array Iterator"))}}),Av=f({"node_modules/es6-iterator/string.js"(t,e){var r,n=wy(),i=Ny(),a=Qy(),o=wv(),s=Object.defineProperty;r=e.exports=function(t){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");t=String(t),o.call(this,t),s(this,"__length__",i("",t.length))},n&&n(r,o),delete r.prototype.constructor,r.prototype=Object.create(o.prototype,{_next:i((function(){if(this.__list__){if(this.__nextIndex__=55296&&e<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),s(r.prototype,a.toStringTag,i("c","String Iterator"))}}),kv=f({"node_modules/es6-iterator/is-iterable.js"(t,e){var r=Uy(),n=gy(),i=Vy(),a=Qy().iterator,o=Array.isArray;e.exports=function(t){return!(!n(t)||!(o(t)||i(t)||r(t))&&"function"!=typeof t[a])}}}),Mv=f({"node_modules/es6-iterator/valid-iterable.js"(t,e){var r=kv();e.exports=function(t){if(!r(t))throw new TypeError(t+" is not iterable");return t}}}),Sv=f({"node_modules/es6-iterator/get.js"(t,e){var r=Uy(),n=Vy(),i=Tv(),a=Av(),o=Mv(),s=Qy().iterator;e.exports=function(t){return"function"==typeof o(t)[s]?t[s]():r(t)?new i(t):n(t)?new a(t):new i(t)}}}),Ev=f({"node_modules/es6-iterator/for-of.js"(t,e){var r=Uy(),n=ev(),i=Vy(),a=Sv(),o=Array.isArray,s=Function.prototype.call,l=Array.prototype.some;e.exports=function(t,e){var c,u,h,p,f,d,m,g,y=arguments[2];if(o(t)||r(t)?c="array":i(t)?c="string":t=a(t),n(e),h=function(){p=!0},"array"!==c)if("string"!==c)for(u=t.next();!u.done;){if(s.call(e,y,u.value,h),p)return;u=t.next()}else for(d=t.length,f=0;f=55296&&g<=56319&&(m+=t[++f]),s.call(e,y,m,h),!p);++f);else l.call(t,(function(t){return s.call(e,y,t,h),p}))}}}),Cv=f({"node_modules/es6-weak-map/is-native-implemented.js"(t,e){e.exports="function"==typeof WeakMap&&"[object WeakMap]"===Object.prototype.toString.call(new WeakMap)}}),Iv=f({"node_modules/es6-weak-map/polyfill.js"(t,e){var r,n=gy(),i=wy(),a=Ty(),o=xy(),s=Ay(),l=Ny(),c=Sv(),u=Ev(),h=Qy().toStringTag,p=Cv(),f=Array.isArray,d=Object.defineProperty,m=Object.prototype.hasOwnProperty,g=Object.getPrototypeOf;e.exports=r=function(){var t,e=arguments[0];if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");return t=p&&i&&WeakMap!==r?i(new WeakMap,g(this)):this,n(e)&&(f(e)||(e=c(e))),d(t,"__weakMapData__",l("c","$weakMap$"+s())),e&&u(e,(function(e){o(e),t.set(e[0],e[1])})),t},p&&(i&&i(r,WeakMap),r.prototype=Object.create(WeakMap.prototype,{constructor:l(r)})),Object.defineProperties(r.prototype,{delete:l((function(t){return!!m.call(a(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)})),get:l((function(t){if(m.call(a(t),this.__weakMapData__))return t[this.__weakMapData__]})),has:l((function(t){return m.call(a(t),this.__weakMapData__)})),set:l((function(t,e){return d(a(t),this.__weakMapData__,l("c",e)),this})),toString:l((function(){return"[object WeakMap]"}))}),d(r.prototype,h,l("c","WeakMap"))}}),Lv=f({"node_modules/es6-weak-map/index.js"(t,e){e.exports=dy()()?WeakMap:Iv()}}),Pv=f({"node_modules/array-find-index/index.js"(t,e){e.exports=function(t,e,r){if("function"==typeof Array.prototype.findIndex)return t.findIndex(e,r);if("function"!=typeof e)throw new TypeError("predicate must be a function");var n=Object(t),i=n.length;if(0===i)return-1;for(var a=0;a"round"===e.join?2:1,miterLimit:t.prop("miterLimit"),scale:t.prop("scale"),scaleFract:t.prop("scaleFract"),translateFract:t.prop("translateFract"),translate:t.prop("translate"),thickness:t.prop("thickness"),dashTexture:t.prop("dashTexture"),opacity:t.prop("opacity"),pixelRatio:t.context("pixelRatio"),id:t.prop("id"),dashLength:t.prop("dashLength"),viewport:(t,e)=>[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight],depth:t.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(t,e)=>!e.overlay},stencil:{enable:!1},scissor:{enable:!0,box:t.prop("viewport")},viewport:t.prop("viewport")},a=t(i({vert:"\nprecision highp float;\n\nattribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;\nattribute vec4 color;\nattribute float lineEnd, lineTop;\n\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float thickness, pixelRatio, id, depth;\nuniform vec4 viewport;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\n\nvec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {\n\t// the order is important\n\treturn position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n}\n\nvoid main() {\n\tfloat lineStart = 1. - lineEnd;\n\tfloat lineOffset = lineTop * 2. - 1.;\n\n\tvec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);\n\ttangent = normalize(diff * scale * viewport.zw);\n\tvec2 normal = vec2(-tangent.y, tangent.x);\n\n\tvec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart\n\t\t+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd\n\n\t\t+ thickness * normal * .5 * lineOffset / viewport.zw;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n}\n",frag:"\nprecision highp float;\n\nuniform float dashLength, pixelRatio, thickness, opacity, id;\nuniform sampler2D dashTexture;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\n\nvoid main() {\n\tfloat alpha = 1.;\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;\n\tfloat dash = texture2D(dashTexture, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n",attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:t.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:t.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:t.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},n));try{e=t(i({cull:{enable:!0,face:"back"},vert:"\nprecision highp float;\n\nattribute vec2 aCoord, bCoord, nextCoord, prevCoord;\nattribute vec4 aColor, bColor;\nattribute float lineEnd, lineTop;\n\nuniform vec2 scale, translate;\nuniform float thickness, pixelRatio, id, depth;\nuniform vec4 viewport;\nuniform float miterLimit, miterMode;\n\nvarying vec4 fragColor;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 tangent;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nconst float REVERSE_THRESHOLD = -.875;\nconst float MIN_DIFF = 1e-6;\n\n// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead\n// TODO: precalculate dot products, normalize things beforehead etc.\n// TODO: refactor to rectangular algorithm\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nbool isNaN( float val ){\n return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;\n}\n\nvoid main() {\n\tvec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;\n\n vec2 adjustedScale;\n adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;\n adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;\n\n vec2 scaleRatio = adjustedScale * viewport.zw;\n\tvec2 normalWidth = thickness / scaleRatio;\n\n\tfloat lineStart = 1. - lineEnd;\n\tfloat lineBot = 1. - lineTop;\n\n\tfragColor = (lineStart * aColor + lineEnd * bColor) / 255.;\n\n\tif (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;\n\n\tif (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);\n\tif (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);\n\n\n\tvec2 prevDiff = aCoord - prevCoord;\n\tvec2 currDiff = bCoord - aCoord;\n\tvec2 nextDiff = nextCoord - bCoord;\n\n\tvec2 prevTangent = normalize(prevDiff * scaleRatio);\n\tvec2 currTangent = normalize(currDiff * scaleRatio);\n\tvec2 nextTangent = normalize(nextDiff * scaleRatio);\n\n\tvec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);\n\tvec2 currNormal = vec2(-currTangent.y, currTangent.x);\n\tvec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);\n\n\tvec2 startJoinDirection = normalize(prevTangent - currTangent);\n\tvec2 endJoinDirection = normalize(currTangent - nextTangent);\n\n\t// collapsed/unidirectional segment cases\n\t// FIXME: there should be more elegant solution\n\tvec2 prevTanDiff = abs(prevTangent - currTangent);\n\tvec2 nextTanDiff = abs(nextTangent - currTangent);\n\tif (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {\n\t\tstartJoinDirection = currNormal;\n\t}\n\tif (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {\n\t\tendJoinDirection = currNormal;\n\t}\n\tif (aCoord == bCoord) {\n\t\tendJoinDirection = startJoinDirection;\n\t\tcurrNormal = prevNormal;\n\t\tcurrTangent = prevTangent;\n\t}\n\n\ttangent = currTangent;\n\n\t//calculate join shifts relative to normals\n\tfloat startJoinShift = dot(currNormal, startJoinDirection);\n\tfloat endJoinShift = dot(currNormal, endJoinDirection);\n\n\tfloat startMiterRatio = abs(1. / startJoinShift);\n\tfloat endMiterRatio = abs(1. / endJoinShift);\n\n\tvec2 startJoin = startJoinDirection * startMiterRatio;\n\tvec2 endJoin = endJoinDirection * endMiterRatio;\n\n\tvec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;\n\tstartTopJoin = sign(startJoinShift) * startJoin * .5;\n\tstartBotJoin = -startTopJoin;\n\n\tendTopJoin = sign(endJoinShift) * endJoin * .5;\n\tendBotJoin = -endTopJoin;\n\n\tvec2 aTopCoord = aCoord + normalWidth * startTopJoin;\n\tvec2 bTopCoord = bCoord + normalWidth * endTopJoin;\n\tvec2 aBotCoord = aCoord + normalWidth * startBotJoin;\n\tvec2 bBotCoord = bCoord + normalWidth * endBotJoin;\n\n\t//miter anti-clipping\n\tfloat baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));\n\tfloat abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));\n\n\t//prevent close to reverse direction switch\n\tbool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);\n\tbool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);\n\n\tif (prevReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);\n\t\taBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\taTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {\n\t\t//handle miter clipping\n\t\tbTopCoord -= normalWidth * endTopJoin;\n\t\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\n\t}\n\n\tif (nextReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\n\t\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\n\t\t//handle miter clipping\n\t\taBotCoord -= normalWidth * startBotJoin;\n\t\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\n\t}\n\n\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\n\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\n\n\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\n\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\n\n\t//position is normalized 0..1 coord on the screen\n\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\n\n\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\n\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\n\n\t//bevel miter cutoffs\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n\n\t//round miter cutoffs\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n}\n",frag:"\nprecision highp float;\n\nuniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;\nuniform sampler2D dashTexture;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nvoid main() {\n\tfloat alpha = 1., distToStart, distToEnd;\n\tfloat cutoff = thickness * .5;\n\n\t//bevel miter\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToStart + 1., 0.), 1.);\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToEnd + 1., 0.), 1.);\n\t\t}\n\t}\n\n\t// round miter\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - startCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - endCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\t}\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;\n\tfloat dash = texture2D(dashTexture, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n",attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:t.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},n))}catch{e=a}return{fill:t({primitive:"triangle",elements:(t,e)=>e.triangles,offset:0,vert:"\nprecision highp float;\n\nattribute vec2 position, positionFract;\n\nuniform vec4 color;\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float pixelRatio, id;\nuniform vec4 viewport;\nuniform float opacity;\n\nvarying vec4 fragColor;\n\nconst float MAX_LINES = 256.;\n\nvoid main() {\n\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\n\n\tvec2 position = position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n\tfragColor.a *= opacity;\n}\n",frag:"\nprecision highp float;\nvarying vec4 fragColor;\n\nvoid main() {\n\tgl_FragColor = fragColor;\n}\n",uniforms:{scale:t.prop("scale"),color:t.prop("fill"),scaleFract:t.prop("scaleFract"),translateFract:t.prop("translateFract"),translate:t.prop("translate"),opacity:t.prop("opacity"),pixelRatio:t.context("pixelRatio"),id:t.prop("id"),viewport:(t,e)=>[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]},attributes:{position:{buffer:t.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:t.prop("positionFractBuffer"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:a,miter:e}},d.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},d.prototype.render=function(...t){t.length&&this.update(...t),this.draw()},d.prototype.draw=function(...t){return(t.length?t:this.passes).forEach(((t,e)=>{if(t&&Array.isArray(t))return this.draw(...t);"number"==typeof t&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>d.precisionThreshold||t.scale[1]*t.viewport.height>d.precisionThreshold||"rect"===t.join||!t.join&&(t.thickness<=2||t.count>=d.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))})),this},d.prototype.update=function(t){if(!t)return;null!=t.length?"number"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);let{regl:e,gl:h}=this;if(t.forEach(((t,m)=>{let g=this.passes[m];if(void 0!==t){if(null===t)return void(this.passes[m]=null);if("number"==typeof t[0]&&(t={positions:t}),t=a(t,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),g||(this.passes[m]=g={id:m,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:e.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:e.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:e.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},t=i({},d.defaults,t)),null!=t.thickness&&(g.thickness=parseFloat(t.thickness)),null!=t.opacity&&(g.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(g.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(g.overlay=!!t.overlay,mt-e)),e=[],i=0,a=null!=g.hole?g.hole[0]:null;if(null!=a){let e=f(t,(t=>t>=a));t=t.slice(0,e),t.push(a)}for(let n=0;ne-a+(t[n]-i))),c=s(o,l);c=c.map((e=>e+i+(e+i{t.colorBuffer.destroy(),t.positionBuffer.destroy(),t.dashTexture.destroy()})),this.passes.length=0,this}}}),Dv=f({"node_modules/regl-error2d/index.js"(t,e){var r=Fg(),n=Od(),i=ly(),a=Og(),o=oy(),s=jg(),{float32:l,fract32:c}=uy();e.exports=function(t,e){if("function"==typeof t?(e||(e={}),e.regl=t):e=t,e.length&&(e.positions=e),!(t=e.regl).hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let h,p,f,d,m,g,y=t._gl,v={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},x=[];return d=t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),p=t.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),f=t.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),m=t.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),g=t.buffer({usage:"static",type:"float",data:u}),T(e),h=t({vert:"\n\t\tprecision highp float;\n\n\t\tattribute vec2 position, positionFract;\n\t\tattribute vec4 error;\n\t\tattribute vec4 color;\n\n\t\tattribute vec2 direction, lineOffset, capOffset;\n\n\t\tuniform vec4 viewport;\n\t\tuniform float lineWidth, capSize;\n\t\tuniform vec2 scale, scaleFract, translate, translateFract;\n\n\t\tvarying vec4 fragColor;\n\n\t\tvoid main() {\n\t\t\tfragColor = color / 255.;\n\n\t\t\tvec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;\n\n\t\t\tvec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;\n\n\t\t\tvec2 position = position + dxy;\n\n\t\t\tvec2 pos = (position + translate) * scale\n\t\t\t\t+ (positionFract + translateFract) * scale\n\t\t\t\t+ (position + translate) * scaleFract\n\t\t\t\t+ (positionFract + translateFract) * scaleFract;\n\n\t\t\tpos += pixelOffset / viewport.zw;\n\n\t\t\tgl_Position = vec4(pos * 2. - 1., 0, 1);\n\t\t}\n\t\t",frag:"\n\t\tprecision highp float;\n\n\t\tvarying vec4 fragColor;\n\n\t\tuniform float opacity;\n\n\t\tvoid main() {\n\t\t\tgl_FragColor = fragColor;\n\t\t\tgl_FragColor.a *= opacity;\n\t\t}\n\t\t",uniforms:{range:t.prop("range"),lineWidth:t.prop("lineWidth"),capSize:t.prop("capSize"),opacity:t.prop("opacity"),scale:t.prop("scale"),translate:t.prop("translate"),scaleFract:t.prop("scaleFract"),translateFract:t.prop("translateFract"),viewport:(t,e)=>[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]},attributes:{color:{buffer:d,offset:(t,e)=>4*e.offset,divisor:1},position:{buffer:p,offset:(t,e)=>8*e.offset,divisor:1},positionFract:{buffer:f,offset:(t,e)=>8*e.offset,divisor:1},error:{buffer:m,offset:(t,e)=>16*e.offset,divisor:1},direction:{buffer:g,stride:24,offset:0},lineOffset:{buffer:g,stride:24,offset:8},capOffset:{buffer:g,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:t.prop("viewport")},viewport:t.prop("viewport"),stencil:!1,instances:t.prop("count"),count:u.length}),o(_,{update:T,draw:b,destroy:A,regl:t,gl:y,canvas:y.canvas,groups:x}),_;function _(t){t?T(t):null===t&&A(),b()}function b(e){if("number"==typeof e)return w(e);e&&!Array.isArray(e)&&(e=[e]),t._refresh(),x.forEach(((t,r)=>{if(t){if(e&&(e[r]?t.draw=!0:t.draw=!1),!t.draw)return void(t.draw=!0);w(r)}}))}function w(t){"number"==typeof t&&(t=x[t]),null!=t&&t&&t.count&&t.color&&t.opacity&&t.positions&&t.positions.length>1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],h(t),t.after&&t.after(t))}function T(t){if(!t)return;null!=t.length?"number"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);let e=0,u=0;if(_.groups=x=t.map(((t,l)=>{let h=x[l];return t?("function"==typeof t?t={after:t}:"number"==typeof t[0]&&(t={positions:t}),t=a(t,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),h||(x[l]=h={id:l,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=o({},v,t)),i(h,t,[{lineWidth:t=>.5*+t,capSize:t=>.5*+t,opacity:parseFloat,errors:t=>(t=s(t),u+=t.length,t),positions:(t,n)=>(t=s(t,"float64"),n.count=Math.floor(t.length/2),n.bounds=r(t,2),n.offset=e,e+=n.count,t)},{color:(t,e)=>{let r=e.count;if(t||(t="transparent"),!Array.isArray(t)||"number"==typeof t[0]){let e=t;t=Array(r);for(let n=0;n{let n=e.bounds;return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=c(e.scale),e.translateFract=c(e.translate),t},viewport:t=>{let e;return Array.isArray(t)?e={x:t[0],y:t[1],width:t[2]-t[0],height:t[3]-t[1]}:t?(e={x:t.x||t.left||0,y:t.y||t.top||0},t.right?e.width=t.right-e.x:e.width=t.w||t.width||0,t.bottom?e.height=t.bottom-e.y:e.height=t.h||t.height||0):e={x:0,y:0,width:y.drawingBufferWidth,height:y.drawingBufferHeight},e}}]),h):h})),e||u){let t=x.reduce(((t,e,r)=>t+(e?e.count:0)),0),e=new Float64Array(2*t),r=new Uint8Array(4*t),n=new Float32Array(4*t);x.forEach(((t,i)=>{if(!t)return;let{positions:a,count:o,offset:s,color:l,errors:c}=t;o&&(r.set(l,4*s),n.set(c,4*s),e.set(a,2*s))}));var h=l(e);p(h);var g=c(e,h);f(g),d(r),m(n)}}function A(){p.destroy(),f.destroy(),d.destroy(),m.destroy(),g.destroy()}};var u=[[1,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,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]]}}),Ov=f({"node_modules/unquote/index.js"(t,e){var r=/[\'\"]/;e.exports=function(t){return t?(r.test(t.charAt(0))&&(t=t.substr(1)),r.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}}}),Rv=f({"node_modules/css-global-keywords/index.json"(){}}),Fv=f({"node_modules/css-system-font-keywords/index.json"(){}}),Bv=f({"node_modules/css-font-weight-keywords/index.json"(){}}),jv=f({"node_modules/css-font-style-keywords/index.json"(){}}),Nv=f({"node_modules/css-font-stretch-keywords/index.json"(){}}),Uv=f({"node_modules/parenthesis/index.js"(t,e){function r(t,e){if("string"!=typeof t)return[t];var r=[t];"string"==typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var n=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],i=e.escape||"___",a=!!e.flat;n.forEach((function(t){var e=new RegExp(["\\",t[0],"[^\\",t[0],"\\",t[1],"]*\\",t[1]].join("")),n=[];function a(e,a,o){var s=r.push(e.slice(t[0].length,-t[1].length))-1;return n.push(s),i+s+i}r.forEach((function(t,n){for(var i,o=0;t!=i;)if(i=t,t=t.replace(e,a),o++>1e4)throw Error("References have circular dependency. Please, check them.");r[n]=t})),n=n.reverse(),r=r.map((function(e){return n.forEach((function(r){e=e.replace(new RegExp("(\\"+i+r+"\\"+i+")","g"),t[0]+"$1"+t[1])})),e}))}));var o=new RegExp("\\"+i+"([0-9]+)\\"+i);return a?r:function t(e,r,n){for(var i,a=[],s=0;i=o.exec(e);){if(s++>1e4)throw Error("Circular references in parenthesis");a.push(e.slice(0,i.index)),a.push(t(r[i[1]],r)),e=e.slice(i.index+i[0].length)}return a.push(e),a}(r[0],r)}function n(t,e){if(e&&e.flat){var r,n=e&&e.escape||"___",i=t[0];if(!i)return"";for(var a=new RegExp("\\"+n+"([0-9]+)\\"+n),o=0;i!=r;){if(o++>1e4)throw Error("Circular references in "+t);r=i,i=i.replace(a,s)}return i}return t.reduce((function t(e,r){return Array.isArray(r)&&(r=r.reduce(t,"")),e+r}),"");function s(e,r){if(null==t[r])throw Error("Reference "+r+"is undefined");return t[r]}}function i(t,e){return Array.isArray(t)?n(t,e):r(t,e)}i.parse=r,i.stringify=n,e.exports=i}}),Vv=f({"node_modules/string-split-by/index.js"(t,e){var r=Uv();e.exports=function(t,e,n){if(null==t)throw Error("First argument should be a string");if(null==e)throw Error("Separator should be a string or a RegExp");n?("string"==typeof n||Array.isArray(n))&&(n={ignore:n}):n={},null==n.escape&&(n.escape=!0),null==n.ignore?n.ignore=["[]","()","{}","<>",'""',"''","``","“”","«»"]:("string"==typeof n.ignore&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var i=r.parse(t,{flat:!0,brackets:n.ignore}),a=i[0].split(e);if(n.escape){for(var o=[],s=0;s1&&e===r&&('"'===e||"'"===e))return['"'+n(t.substr(1,t.length-2))+'"'];var a=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(t);if(a)return i(t.substr(0,a.index)).concat(i(a[1])).concat(i(t.substr(a.index+a[0].length)));var o=t.split(".");if(1===o.length)return['"'+n(t)+'"'];for(var s=[],l=0;l65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1}function f(){var t=h(8,(function(){return[]}));function e(e){var r=function(t){for(var e=16;e<=1<<28;e*=16)if(t<=e)return e;return 0}(e),n=t[p(r)>>2];return n.length>0?n.pop():new ArrayBuffer(r)}function r(e){t[p(e.byteLength)>>2].push(e)}return{alloc:e,free:r,allocType:function(t,r){var n=null;switch(t){case 5120:n=new Int8Array(e(r),0,r);break;case 5121:n=new Uint8Array(e(r),0,r);break;case 5122:n=new Int16Array(e(2*r),0,r);break;case 5123:n=new Uint16Array(e(2*r),0,r);break;case 5124:n=new Int32Array(e(4*r),0,r);break;case 5125:n=new Uint32Array(e(4*r),0,r);break;case 5126:n=new Float32Array(e(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(t){r(t.buffer)}}}var d=f();d.zero=f();var m=3553,g=6408,y=5126,v=36160,x=function(t){return t instanceof Uint8Array||t instanceof Uint16Array||t instanceof Uint32Array||t instanceof Int8Array||t instanceof Int16Array||t instanceof Int32Array||t instanceof Float32Array||t instanceof Float64Array||t instanceof Uint8ClampedArray};function _(t){return!!t&&"object"==typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&"number"==typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||x(t.data))}var b=function(t){return Object.keys(t).map((function(e){return t[e]}))},w=function(t){for(var e=[],r=t;r.length;r=r[0])e.push(r.length);return e},T=function(t,e,r,n){var i=1;if(e.length)for(var a=0;a>>31<<15,a=(n<<1>>>24)-127,o=n>>13&1023;if(a<-24)e[r]=i;else if(a<-14){var s=-14-a;e[r]=i+(o+1024>>s)}else e[r]=a>15?i+31744:i+(a+15<<10)+o}return e}function G(t){return Array.isArray(t)||x(t)}var W=3553,Z=34067,Y=34069,X=6408,$=6406,K=6407,J=6409,Q=6410,tt=32855,et=6402,rt=34041,nt=35904,it=35906,at=36193,ot=33776,st=33777,lt=33778,ct=5121,ut=5123,ht=5125,pt=5126,ft=33071,dt=9728,mt=9984,gt=9987,yt=4352,vt=33984,xt=[mt,9986,9985,gt],_t=[0,J,Q,K,X],bt={};function wt(t){return"[object "+t+"]"}bt[J]=bt[$]=bt[et]=1,bt[rt]=bt[Q]=2,bt[K]=bt[nt]=3,bt[X]=bt[it]=4;var Tt=wt("HTMLCanvasElement"),At=wt("OffscreenCanvas"),kt=wt("CanvasRenderingContext2D"),Mt=wt("ImageBitmap"),St=wt("HTMLImageElement"),Et=wt("HTMLVideoElement"),Ct=Object.keys(M).concat([Tt,At,kt,Mt,St,Et]),It=[];It[ct]=1,It[pt]=4,It[at]=2,It[ut]=2,It[ht]=4;var Lt=[];function Pt(t){return Array.isArray(t)&&(0===t.length||"number"==typeof t[0])}function zt(t){return!!Array.isArray(t)&&!(0===t.length||!G(t[0]))}function Dt(t){return Object.prototype.toString.call(t)}function Ot(t){return Dt(t)===Tt}function Rt(t){return Dt(t)===At}function Ft(t){if(!t)return!1;var e=Dt(t);return Ct.indexOf(e)>=0||Pt(t)||zt(t)||_(t)}function Bt(t){return 0|M[Object.prototype.toString.call(t)]}function jt(t,e){return d.allocType(t.type===at?pt:t.type,e)}function Nt(t,e){t.type===at?(t.data=H(e),d.freeType(e)):t.data=e}function Ut(t,e,r,n,i,a){var o;if(o=typeof Lt[t]<"u"?Lt[t]:bt[t]*It[e],a&&(o*=6),i){for(var s=0,l=r;l>=1;)s+=o*l*l,l/=2;return s}return o*r*n}Lt[32854]=2,Lt[tt]=2,Lt[36194]=2,Lt[rt]=4,Lt[ot]=.5,Lt[st]=.5,Lt[lt]=1,Lt[33779]=1,Lt[35986]=.5,Lt[35987]=1,Lt[34798]=1,Lt[35840]=.5,Lt[35841]=.25,Lt[35842]=.5,Lt[35843]=.25,Lt[36196]=.5;var Vt=36161,qt=32854,Ht=[];function Gt(t,e,r){return Ht[t]*e*r}Ht[qt]=2,Ht[32855]=2,Ht[36194]=2,Ht[33189]=2,Ht[36168]=1,Ht[34041]=4,Ht[35907]=4,Ht[34836]=16,Ht[34842]=8,Ht[34843]=6;var Wt=36160,Zt=36161,Yt=3553,Xt=[];Xt[6408]=4,Xt[6407]=3;var $t=[];$t[5121]=1,$t[5126]=4,$t[36193]=2;var Kt=34963;function Jt(){this.state=0,this.x=0,this.y=0,this.z=0,this.w=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=5126,this.offset=0,this.stride=0,this.divisor=0}function Qt(t){return function(t){for(var e,r="0123456789abcdef",n="",i=0;i>>4&15)+r.charAt(15&e);return n}(function(t){return function(t){for(var e="",r=0;r<32*t.length;r+=8)e+=String.fromCharCode(t[r>>5]>>>24-r%32&255);return e}(function(t,e){var r,n,i,a,o,s,l,c,u,h,p,f,d=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),m=new Array(64);for(t[e>>5]|=128<<24-e%32,t[15+(e+64>>9<<4)]=e,u=0;u>2),r=0;r>5]|=(255&t.charCodeAt(r/8))<<24-r%32;return e}(t),8*t.length))}(function(t){for(var e,r,n="",i=-1;++i>>6&31,128|63&e):e<=65535?n+=String.fromCharCode(224|e>>>12&15,128|e>>>6&63,128|63&e):e<=2097151&&(n+=String.fromCharCode(240|e>>>18&7,128|e>>>12&63,128|e>>>6&63,128|63&e));return n}(t)))}function te(t,e){return t>>>e|t<<32-e}function ee(t,e){return t>>>e}function re(t,e,r){return t&e^~t&r}function ne(t,e,r){return t&e^t&r^e&r}function ie(t){return te(t,2)^te(t,13)^te(t,22)}function ae(t){return te(t,6)^te(t,11)^te(t,25)}function oe(t){return te(t,7)^te(t,18)^ee(t,3)}function se(t){return te(t,17)^te(t,19)^ee(t,10)}var le=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function ce(t,e){var r=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(r>>16)<<16|65535&r}function ue(t){return Array.prototype.slice.call(t)}function he(t){return ue(t).join("")}var pe="xyzw".split(""),fe="dither",de="blend.enable",me="blend.color",ge="blend.equation",ye="blend.func",ve="depth.enable",xe="depth.func",_e="depth.range",be="depth.mask",we="colorMask",Te="cull.enable",Ae="cull.face",ke="frontFace",Me="lineWidth",Se="polygonOffset.enable",Ee="polygonOffset.offset",Ce="sample.alpha",Ie="sample.enable",Le="sample.coverage",Pe="stencil.enable",ze="stencil.mask",De="stencil.func",Oe="stencil.opFront",Re="stencil.opBack",Fe="scissor.enable",Be="scissor.box",je="viewport",Ne="profile",Ue="framebuffer",Ve="vert",qe="frag",He="elements",Ge="primitive",We="count",Ze="offset",Ye="instances",Xe="vao",$e="Width",Ke="Height",Je=Ue+$e,Qe=Ue+Ke,tr=je+$e,er=je+Ke,rr="drawingBuffer",nr=rr+$e,ir=rr+Ke,ar=[ye,ge,De,Oe,Re,Le,je,Be,Ee],or=34962,sr=34963,lr=35664,cr=35665,ur=35666,hr=35667,pr=35668,fr=35669,dr=35671,mr=35672,gr=35673,yr=35674,vr=35675,xr=35676,_r=35678,br=35680,wr=1028,Tr=1029,Ar=2305,kr=7680,Mr={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Sr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Er={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Cr={cw:2304,ccw:Ar};function Ir(t){return Array.isArray(t)||x(t)||_(t)}function Lr(t){return t.sort((function(t,e){return t===je?-1:e===je?1:t=1,n>=2,e)}if(4===r){var i=t.data;return new Pr(i.thisDep,i.contextDep,i.propDep,e)}if(5===r)return new Pr(!1,!1,!1,e);if(6===r){for(var a=!1,o=!1,s=!1,l=0;l=1&&(o=!0),u>=2&&(s=!0)}else 4===c.type&&(a=a||c.data.thisDep,o=o||c.data.contextDep,s=s||c.data.propDep)}return new Pr(a,o,s,e)}return new Pr(3===r,2===r,1===r,e)}var Rr=new Pr(!1,!1,!1,(function(){}));function Fr(e,r,n,i,a,s,l,c,u,p,f,d,m,g,y,v){var x=p.Record,_={add:32774,subtract:32778,"reverse subtract":32779};n.ext_blend_minmax&&(_.min=32775,_.max=32776);var b=n.angle_instanced_arrays,w=n.webgl_draw_buffers,T=n.oes_vertex_array_object,A={dirty:!0,profile:v.profile},k={},M=[],E={},C={};function I(t){return t.replace(".","_")}function L(t,e,r){var n=I(t);M.push(t),k[n]=A[n]=!!r,E[n]=e}function P(t,e,r){var n=I(t);M.push(t),Array.isArray(r)?(A[n]=r.slice(),k[n]=r.slice()):A[n]=k[n]=r,C[n]=e}function z(t){return!!isNaN(t)}L(fe,3024),L(de,3042),P(me,"blendColor",[0,0,0,0]),P(ge,"blendEquationSeparate",[32774,32774]),P(ye,"blendFuncSeparate",[1,0,1,0]),L(ve,2929,!0),P(xe,"depthFunc",513),P(_e,"depthRange",[0,1]),P(be,"depthMask",!0),P(we,we,[!0,!0,!0,!0]),L(Te,2884),P(Ae,"cullFace",Tr),P(ke,ke,Ar),P(Me,Me,1),L(Se,32823),P(Ee,"polygonOffset",[0,0]),L(Ce,32926),L(Ie,32928),P(Le,"sampleCoverage",[1,!1]),L(Pe,2960),P(ze,"stencilMask",-1),P(De,"stencilFunc",[519,0,-1]),P(Oe,"stencilOpSeparate",[wr,kr,kr,kr]),P(Re,"stencilOpSeparate",[Tr,kr,kr,kr]),L(Fe,3089),P(Be,"scissor",[0,0,e.drawingBufferWidth,e.drawingBufferHeight]),P(je,je,[0,0,e.drawingBufferWidth,e.drawingBufferHeight]);var D={gl:e,context:m,strings:r,next:k,current:A,draw:d,elements:s,buffer:a,shader:f,attributes:p.state,vao:p,uniforms:u,framebuffer:c,extensions:n,timer:g,isBufferArgs:Ir},O={primTypes:F,compareFuncs:Sr,blendFuncs:Mr,blendEquations:_,stencilOps:Er,glTypes:S,orientationType:Cr};w&&(O.backBuffer=[Tr],O.drawBuffer=h(i.maxDrawbuffers,(function(t){return 0===t?[0]:h(t,(function(t){return 36064+t}))})));var R=0;function B(){var e=function(e){var r=e&&e.cache,n=0,i=[],a=[],o=[];function s(){var e=[],r=[];return t((function(){e.push.apply(e,ue(arguments))}),{def:function(){var t="v"+n++;return r.push(t),arguments.length>0&&(e.push(t,"="),e.push.apply(e,ue(arguments)),e.push(";")),t},toString:function(){return he([r.length>0?"var "+r.join(",")+";":"",he(e)])}})}function l(){var e=s(),r=s(),n=e.toString,i=r.toString;function a(t,n){r(t,n,"=",e.def(t,n),";")}return t((function(){e.apply(e,ue(arguments))}),{def:e.def,entry:e,exit:r,save:a,set:function(t,r,n){a(t,r),e(t,r,"=",n,";")},toString:function(){return n()+i()}})}var c=s(),u={};return{global:c,link:function(t,e){var r=e&&e.stable;if(!r)for(var s=0;s"u"?"Date.now()":"performance.now()"}function d(t){t(a=e.def(),"=",f(),";"),"string"==typeof i?t(c,".count+=",i,";"):t(c,".count++;"),g&&(n?t(o=e.def(),"=",h,".getNumPendingQueries();"):t(h,".beginQuery(",c,");"))}function m(t){t(c,".cpuTime+=",f(),"-",a,";"),g&&(n?t(h,".pushScopeStats(",o,",",h,".getNumPendingQueries(),",c,");"):t(h,".endQuery();"))}function y(t){var r=e.def(u,".profile");e(u,".profile=",t,";"),e.exit(u,".profile=",r,";")}if(p){if(zr(p))return void(p.enable?(d(e),m(e.exit),y("true")):y("false"));y(s=p.append(t,e))}else s=e.def(u,".profile");var v=t.block();d(v),e("if(",s,"){",v,"}");var x=t.block();m(x),e.exit("if(",s,"){",x,"}")}function W(t,e,r,n,i){var a=t.shared;n.forEach((function(n){var o,s=n.name,l=r.attributes[s];if(l){if(!i(l))return;o=l.append(t,e)}else{if(!i(Rr))return;var c=t.scopeAttrib(s);o={},Object.keys(new x).forEach((function(t){o[t]=e.def(c,".",t)}))}!function(r,n,i){var o=a.gl,s=e.def(r,".location"),l=e.def(a.attributes,"[",s,"]"),c=i.state,u=i.buffer,h=[i.x,i.y,i.z,i.w],p=["buffer","normalized","offset","stride"];function f(){e("if(!",l,".buffer){",o,".enableVertexAttribArray(",s,");}");var r,a=i.type;if(r=i.size?e.def(i.size,"||",n):n,e("if(",l,".type!==",a,"||",l,".size!==",r,"||",p.map((function(t){return l+"."+t+"!=="+i[t]})).join("||"),"){",o,".bindBuffer(",or,",",u,".buffer);",o,".vertexAttribPointer(",[s,r,a,i.normalized,i.stride,i.offset],");",l,".type=",a,";",l,".size=",r,";",p.map((function(t){return l+"."+t+"="+i[t]+";"})).join(""),"}"),b){var c=i.divisor;e("if(",l,".divisor!==",c,"){",t.instancing,".vertexAttribDivisorANGLE(",[s,c],");",l,".divisor=",c,";}")}}function d(){e("if(",l,".buffer){",o,".disableVertexAttribArray(",s,");",l,".buffer=null;","}if(",pe.map((function(t,e){return l+"."+t+"!=="+h[e]})).join("||"),"){",o,".vertexAttrib4f(",s,",",h,");",pe.map((function(t,e){return l+"."+t+"="+h[e]+";"})).join(""),"}")}1===c?f():2===c?d():(e("if(",c,"===",1,"){"),f(),e("}else{"),d(),e("}"))}(t.link(n),function(t){switch(t){case lr:case hr:case dr:return 2;case cr:case pr:case mr:return 3;case ur:case fr:case gr:return 4;default:return 1}}(n.info.type),o)}))}function Z(t,e,n,i,a,o){for(var s,l=t.shared,c=l.gl,u=0;u1){for(var M=[],S=[],E=0;E>1)",f],");")}function e(){r(d,".drawArraysInstancedANGLE(",[m,g,y,f],");")}h&&"null"!==h?x?t():(r("if(",h,"){"),t(),r("}else{"),e(),r("}")):e()}function w(){function t(){r(l+".drawElements("+[m,y,v,g+"<<(("+v+"-5121)>>1)"]+");")}function e(){r(l+".drawArrays("+[m,g,y]+");")}h&&"null"!==h?x?t():(r("if(",h,"){"),t(),r("}else{"),e(),r("}")):e()}b&&("number"!=typeof f||f>=0)?"string"==typeof f?(r("if(",f,">0){"),_(),r("}else if(",f,"<0){"),w(),r("}")):_():w()}function X(t,e,r,n,i){var a=B(),o=a.proc("body",i);return b&&(a.instancing=o.def(a.shared.extensions,".angle_instanced_arrays")),t(a,o,r,n),a.compile().body}function $(t,e,r,n){q(t,e),r.useVAO?r.drawVAO?e(t.shared.vao,".setVAO(",r.drawVAO.append(t,e),");"):e(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(e(t.shared.vao,".setVAO(null);"),W(t,e,r,n.attributes,(function(){return!0}))),Z(t,e,r,n.uniforms,(function(){return!0}),!1),Y(t,e,e,r)}function K(t,e,r,n){function i(){return!0}t.batchId="a1",q(t,e),W(t,e,r,n.attributes,i),Z(t,e,r,n.uniforms,i,!1),Y(t,e,e,r)}function J(t,e,r,n){q(t,e);var i=r.contextDep,a=e.def(),o=e.def();t.shared.props=o,t.batchId=a;var s=t.scope(),l=t.scope();function c(t){return t.contextDep&&i||t.propDep}function u(t){return!c(t)}if(e(s.entry,"for(",a,"=0;",a,"<","a1",";++",a,"){",o,"=","a0","[",a,"];",l,"}",s.exit),r.needsContext&&j(t,l,r.context),r.needsFramebuffer&&N(t,l,r.framebuffer),V(t,l,r.state,c),r.profile&&c(r.profile)&&H(t,l,r,!1,!0),n)r.useVAO?r.drawVAO?c(r.drawVAO)?l(t.shared.vao,".setVAO(",r.drawVAO.append(t,l),");"):s(t.shared.vao,".setVAO(",r.drawVAO.append(t,s),");"):s(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(s(t.shared.vao,".setVAO(null);"),W(t,s,r,n.attributes,u),W(t,l,r,n.attributes,c)),Z(t,s,r,n.uniforms,u,!1),Z(t,l,r,n.uniforms,c,!0),Y(t,s,l,r);else{var h=t.global.def("{}"),p=r.shader.progVar.append(t,l),f=l.def(p,".id"),d=l.def(h,"[",f,"]");l(t.shared.gl,".useProgram(",p,".program);","if(!",d,"){",d,"=",h,"[",f,"]=",t.link((function(t){return X(K,0,r,t,2)})),"(",p,");}",d,".call(this,a0[",a,"],",a,");")}}function Q(t,e,r){var n=e.static[r];if(n&&function(t){if("object"==typeof t&&!G(t)){for(var e=Object.keys(t),r=0;r0)return null;var n=e.static,i=Object.keys(n);if(i.length>0&&"number"==typeof n[i[0]]){for(var a=[],o=0;o0,w={framebuffer:u,draw:m,shader:y,state:g,dirty:b,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(w.profile=function(t){var e,r=t.static,n=t.dynamic;if(Ne in r){var i=!!r[Ne];(e=Dr((function(t,e){return i}))).enable=i}else if(Ne in n){var a=n[Ne];e=Or(a,(function(t,e){return t.invoke(e,a)}))}return e}(t),w.uniforms=function(t){var e=t.static,r=t.dynamic,n={};return Object.keys(e).forEach((function(t){var r,i=e[t];if("number"==typeof i||"boolean"==typeof i)r=Dr((function(){return i}));else if("function"==typeof i){var a=i._reglType;"texture2d"===a||"textureCube"===a?r=Dr((function(t){return t.link(i)})):("framebuffer"===a||"framebufferCube"===a)&&(r=Dr((function(t){return t.link(i.color[0])})))}else G(i)&&(r=Dr((function(t){return t.global.def("[",h(i.length,(function(t){return i[t]})),"]")})));r.value=i,n[t]=r})),Object.keys(r).forEach((function(t){var e=r[t];n[t]=Or(e,(function(t,r){return t.invoke(r,e)}))})),n}(i),w.drawVAO=w.scopeVAO=m.vao,!w.drawVAO&&y.program&&!l&&n.angle_instanced_arrays&&m.static.elements){var T=!0,A=y.program.attributes.map((function(t){var r=e.static[t];return T=T&&!!r,r}));if(T&&A.length>0){var k=p.getVAO(p.createVAO({attributes:A,elements:m.static.elements}));w.drawVAO=new Pr(null,null,null,(function(t,e){return t.link(k)})),w.useVAO=!0}}return l?w.useVAO=!0:w.attributes=function(t){var e=t.static,n=t.dynamic,i={};return Object.keys(e).forEach((function(t){var n=e[t],o=r.id(t),s=new x;if(Ir(n))s.state=1,s.buffer=a.getBuffer(a.create(n,or,!1,!0)),s.type=0;else{var l=a.getBuffer(n);if(l)s.state=1,s.buffer=l,s.type=0;else if("constant"in n){var c=n.constant;s.buffer="null",s.state=2,"number"==typeof c?s.x=c:pe.forEach((function(t,e){e"+e+"?"+n+".constant["+e+"]:0;"})).join(""),"}}else{","if(",o,"(",n,".buffer)){",u,"=",s,".createStream(",or,",",n,".buffer);","}else{",u,"=",s,".getBuffer(",n,".buffer);","}",h,'="type" in ',n,"?",a.glTypes,"[",n,".type]:",u,".dtype;",l.normalized,"=!!",n,".normalized;"),p("size"),p("offset"),p("stride"),p("divisor"),r("}}"),r.exit("if(",l.isStream,"){",s,".destroyStream(",u,");","}"),l}))})),i}(e),w.context=function(t){var e=t.static,r=t.dynamic,n={};return Object.keys(e).forEach((function(t){var r=e[t];n[t]=Dr((function(t,e){return"number"==typeof r||"boolean"==typeof r?""+r:t.link(r)}))})),Object.keys(r).forEach((function(t){var e=r[t];n[t]=Or(e,(function(t,r){return t.invoke(r,e)}))})),n}(o),w}(e,i,o,l);return m.shader.program&&(m.shader.program.attributes.sort((function(t,e){return t.name0&&r(t.shared.current,".dirty=true;"),t.shared.vao&&r(t.shared.vao,".setVAO(null);")}(d,m),function(t,e){var n=t.proc("scope",3);t.batchId="a2";var i=t.shared,a=i.current;if(j(t,n,e.context),e.framebuffer&&e.framebuffer.append(t,n),Lr(Object.keys(e.state)).forEach((function(r){var a=e.state[r],o=a.append(t,n);G(o)?o.forEach((function(e,i){z(e)?n.set(t.next[r],"["+i+"]",e):n.set(t.next[r],"["+i+"]",t.link(e,{stable:!0}))})):zr(a)?n.set(i.next,"."+r,t.link(o,{stable:!0})):n.set(i.next,"."+r,o)})),H(t,n,e,!0,!0),[He,Ze,We,Ye,Ge].forEach((function(r){var a=e.draw[r];if(a){var o=a.append(t,n);z(o)?n.set(i.draw,"."+r,o):n.set(i.draw,"."+r,t.link(o),{stable:!0})}})),Object.keys(e.uniforms).forEach((function(a){var o=e.uniforms[a].append(t,n);Array.isArray(o)&&(o="["+o.map((function(e){return z(e)?e:t.link(e,{stable:!0})}))+"]"),n.set(i.uniforms,"["+t.link(r.id(a),{stable:!0})+"]",o)})),Object.keys(e.attributes).forEach((function(r){var i=e.attributes[r].append(t,n),a=t.scopeAttrib(r);Object.keys(new x).forEach((function(t){n.set(a,"."+t,i[t])}))})),e.scopeVAO){var o=e.scopeVAO.append(t,n);z(o)?n.set(i.vao,".targetVAO",o):n.set(i.vao,".targetVAO",t.link(o,{stable:!0}))}function s(r){var a=e.shader[r];if(a){var o=a.append(t,n);z(o)?n.set(i.shader,"."+r,o):n.set(i.shader,"."+r,t.link(o,{stable:!0}))}}s(Ve),s(qe),Object.keys(e.state).length>0&&(n(a,".dirty=true;"),n.exit(a,".dirty=true;")),n("a1(",t.shared.context,",a0,",t.batchId,");")}(d,m),function(t,e){var r=t.proc("batch",2);t.batchId="0",q(t,r);var n=!1,i=!0;Object.keys(e.context).forEach((function(t){n=n||e.context[t].propDep})),n||(j(t,r,e.context),i=!1);var a=e.framebuffer,o=!1;function s(t){return t.contextDep&&n||t.propDep}a?(a.propDep?n=o=!0:a.contextDep&&n&&(o=!0),o||N(t,r,a)):N(t,r,null),e.state.viewport&&e.state.viewport.propDep&&(n=!0),U(t,r,e),V(t,r,e.state,(function(t){return!s(t)})),(!e.profile||!s(e.profile))&&H(t,r,e,!1,"a1"),e.contextDep=n,e.needsContext=i,e.needsFramebuffer=o;var l=e.shader.progVar;if(l.contextDep&&n||l.propDep)J(t,r,e,null);else{var c=l.append(t,r);if(r(t.shared.gl,".useProgram(",c,".program);"),e.shader.program)J(t,r,e,e.shader.program);else{r(t.shared.vao,".setVAO(null);");var u=t.global.def("{}"),h=r.def(c,".id"),p=r.def(u,"[",h,"]");r(t.cond(p).then(p,".call(this,a0,a1);").else(p,"=",u,"[",h,"]=",t.link((function(t){return X(J,0,e,t,2)})),"(",c,");",p,".call(this,a0,a1);"))}}Object.keys(e.state).length>0&&r(t.shared.current,".dirty=true;"),t.shared.vao&&r(t.shared.vao,".setVAO(null);")}(d,m),t(d.compile(),{destroy:function(){m.shader.program.destroy()}})}}}var Br="webglcontextlost",jr="webglcontextrestored";function Nr(t,e){for(var r=0;r"u"?1:window.devicePixelRatio,f=!1,d={},m=function(t){},g=function(){};if("string"==typeof o?r=document.querySelector(o):"object"==typeof o&&(function(t){return"string"==typeof t.nodeName&&"function"==typeof t.appendChild&&"function"==typeof t.getBoundingClientRect}(o)?r=o:function(t){return"function"==typeof t.drawArrays||"function"==typeof t.drawElements}(o)?i=(a=o).canvas:("gl"in o?a=o.gl:"canvas"in o?i=u(o.canvas):"container"in o&&(n=u(o.container)),"attributes"in o&&(s=o.attributes),"extensions"in o&&(l=c(o.extensions)),"optionalExtensions"in o&&(h=c(o.optionalExtensions)),"onDone"in o&&(m=o.onDone),"profile"in o&&(f=!!o.profile),"pixelRatio"in o&&(p=+o.pixelRatio),"cachedCode"in o&&(d=o.cachedCode))),r&&("canvas"===r.nodeName.toLowerCase()?i=r:n=r),!a){if(!i){var y=function(e,r,n){var i,a=document.createElement("canvas");function o(){var t=window.innerWidth,r=window.innerHeight;if(e!==document.body){var i=a.getBoundingClientRect();t=i.right-i.left,r=i.bottom-i.top}a.width=n*t,a.height=n*r}return t(a.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),e.appendChild(a),e===document.body&&(a.style.position="absolute",t(e.style,{margin:0,padding:0})),e!==document.body&&"function"==typeof ResizeObserver?(i=new ResizeObserver((function(){setTimeout(o)}))).observe(e):window.addEventListener("resize",o,!1),o(),{canvas:a,onDestroy:function(){i?i.disconnect():window.removeEventListener("resize",o),e.removeChild(a)}}}(n||document.body,0,p);if(!y)return null;i=y.canvas,g=y.onDestroy}void 0===s.premultipliedAlpha&&(s.premultipliedAlpha=!0),a=function(t,e){function r(r){try{return t.getContext(r,e)}catch{return null}}return r("webgl")||r("experimental-webgl")||r("webgl-experimental")}(i,s)}return a?{gl:a,canvas:i,container:n,extensions:l,optionalExtensions:h,pixelRatio:p,profile:f,cachedCode:d,onDone:m,onDestroy:g}:(g(),m("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}(e);if(!r)return null;var n=r.gl,i=n.getContextAttributes(),a=(n.isContextLost(),function(t,e){var r={};function n(e){var n,i=e.toLowerCase();try{n=r[i]=t.getExtension(i)}catch{}return!!n}for(var i=0;i0)if(Array.isArray(e[0])){o=I(e);for(var c=1,u=1;u0)if("number"==typeof t[0]){var i=d.allocType(h.dtype,t.length);O(i,t),f(i,n),d.freeType(i)}else if(Array.isArray(t[0])||x(t[0])){r=I(t);var a=C(t,r,h.dtype);f(a,n),d.freeType(a)}}else if(_(t)){r=t.shape;var o=t.stride,s=0,l=0,c=0,u=0;1===r.length?(s=r[0],l=1,c=o[0],u=0):2===r.length&&(s=r[0],l=r[1],c=o[0],u=o[1]);var m=Array.isArray(t.data)?h.dtype:D(t.data),g=d.allocType(m,s*l);R(g,t.data,s,l,c,u,t.offset),f(g,n),d.freeType(g)}return p},r.profile&&(p.stats=h.stats),p.destroy=function(){c(h)},p},createStream:function(t,e){var r=o.pop();return r||(r=new a(t)),r.bind(),l(r,e,35040,0,1,!1),r},destroyStream:function(t){o.push(t)},clear:function(){b(i).forEach(c),o.forEach(c)},getBuffer:function(t){return t&&t._buffer instanceof a?t._buffer:null},restore:function(){b(i).forEach((function(e){e.buffer=t.createBuffer(),t.bindBuffer(e.type,e.buffer),t.bufferData(e.type,e.persistentData||e.byteLength,e.usage)}))},_initBuffer:l}}(n,p,r),It=function(t,e,r,n){var i={},a=0,o={uint8:B,uint16:j};function s(t){this.id=a++,i[this.id]=this,this.buffer=t,this.primType=4,this.vertCount=0,this.type=0}e.oes_element_index_uint&&(o.uint32=N),s.prototype.bind=function(){this.buffer.bind()};var l=[];function c(n,i,a,o,s,l,c){var u;if(n.buffer.bind(),i){var h=c;!c&&(!x(i)||_(i)&&!x(i.data))&&(h=e.oes_element_index_uint?N:j),r._initBuffer(n.buffer,i,a,h,3)}else t.bufferData(U,l,a),n.buffer.dtype=u||B,n.buffer.usage=a,n.buffer.dimension=3,n.buffer.byteLength=l;if(u=c,!c){switch(n.buffer.dtype){case B:case 5120:u=B;break;case j:case 5122:u=j;break;case N:case 5124:u=N}n.buffer.dtype=u}n.type=u;var p=s;p<0&&(p=n.buffer.byteLength,u===j?p>>=1:u===N&&(p>>=2)),n.vertCount=p;var f=o;if(o<0){f=4;var d=n.buffer.dimension;1===d&&(f=0),2===d&&(f=1),3===d&&(f=4)}n.primType=f}function u(t){n.elementsCount--,delete i[t.id],t.buffer.destroy(),t.buffer=null}return{create:function(t,e){var i=r.create(null,U,!0),a=new s(i._buffer);function l(t){if(t)if("number"==typeof t)i(t),a.primType=4,a.vertCount=0|t,a.type=B;else{var e=null,r=35044,n=-1,s=-1,u=0,h=0;Array.isArray(t)||x(t)||_(t)?e=t:("data"in t&&(e=t.data),"usage"in t&&(r=E[t.usage]),"primitive"in t&&(n=F[t.primitive]),"count"in t&&(s=0|t.count),"type"in t&&(h=o[t.type]),"length"in t?u=0|t.length:(u=s,h===j||5122===h?u*=2:(h===N||5124===h)&&(u*=4))),c(a,e,r,n,s,u,h)}else i(),a.primType=4,a.vertCount=0,a.type=B;return l}return n.elementsCount++,l(t),l._reglType="elements",l._elements=a,l.subdata=function(t,e){return i.subdata(t,e),l},l.destroy=function(){u(a)},l},createStream:function(t){var e=l.pop();return e||(e=new s(r.create(null,U,!0,!1)._buffer)),c(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){l.push(t)},getElements:function(t){return"function"==typeof t&&t._elements instanceof s?t._elements:null},clear:function(){b(i).forEach(u)}}}(n,A,Ct,p),Lt=function(t,e,r,n,i,a,o){for(var s=r.maxAttributes,l=new Array(s),c=0;c=f.byteLength?u.subdata(f):(u.destroy(),e.buffers[c]=null)),e.buffers[c]||(u=e.buffers[c]=i.create(h,34962,!1,!0)),p.buffer=i.getBuffer(u),p.size=0|p.buffer.dimension,p.normalized=!1,p.type=p.buffer.dtype,p.offset=0,p.stride=0,p.divisor=0,p.state=1,s[c]=1):i.getBuffer(h)?(p.buffer=i.getBuffer(h),p.size=0|p.buffer.dimension,p.normalized=!1,p.type=p.buffer.dtype,p.offset=0,p.stride=0,p.divisor=0,p.state=1):i.getBuffer(h.buffer)?(p.buffer=i.getBuffer(h.buffer),p.size=0|(+h.size||p.buffer.dimension),p.normalized=!!h.normalized||!1,p.type="type"in h?S[h.type]:p.buffer.dtype,p.offset=0|(h.offset||0),p.stride=0|(h.stride||0),p.divisor=0|(h.divisor||0),p.state=1):"x"in h&&(p.x=+h.x||0,p.y=+h.y||0,p.z=+h.z||0,p.w=+h.w||0,p.state=2)}for(var d=0;d1)for(var y=0;yt&&(t=e.stats.uniformsCount)})),t},n.getMaxAttributesCount=function(){var t=0;return h.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var t=e.deleteShader.bind(e);b(a).forEach(t),a={},b(o).forEach(t),o={},h.forEach((function(t){e.deleteProgram(t.program)})),h.length=0,u={},n.shaderCount=0},program:function(r,i,s,l){var c=u[i];c||(c=u[i]={});var p=c[r];if(p&&(p.refCount++,!l))return p;var m=new f(i,r);return n.shaderCount++,d(m,0,l),p||(c[r]=m),h.push(m),t(m,{destroy:function(){if(m.refCount--,m.refCount<=0){e.deleteProgram(m.program);var t=h.indexOf(m);h.splice(t,1),n.shaderCount--}c[m.vertId].refCount<=0&&(e.deleteShader(o[m.vertId]),delete o[m.vertId],delete u[m.fragId][m.vertId]),Object.keys(u[m.fragId]).length||(e.deleteShader(a[m.fragId]),delete a[m.fragId],delete u[m.fragId])}})},restore:function(){a={},o={};for(var t=0;t=0&&(m[t]=e)}));var v=Object.keys(m);n.textureFormats=v;var A=[];Object.keys(m).forEach((function(t){var e=m[t];A[e]=t}));var k=[];Object.keys(f).forEach((function(t){var e=f[t];k[e]=t}));var M=[];Object.keys(u).forEach((function(t){M[u[t]]=t}));var S=[];Object.keys(h).forEach((function(t){var e=h[t];S[e]=t}));var E=[];Object.keys(c).forEach((function(t){E[c[t]]=t}));var C=v.reduce((function(t,e){var n=m[e];return n===J||n===$||n===J||n===Q||n===et||n===rt||r.ext_srgb&&(n===nt||n===it)?t[n]=n:n===tt||e.indexOf("rgba")>=0?t[n]=X:t[n]=K,t}),{});function I(){this.internalformat=X,this.format=X,this.type=ct,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=37444,this.width=0,this.height=0,this.channels=0}function L(t,e){t.internalformat=e.internalformat,t.format=e.format,t.type=e.type,t.compressed=e.compressed,t.premultiplyAlpha=e.premultiplyAlpha,t.flipY=e.flipY,t.unpackAlignment=e.unpackAlignment,t.colorSpace=e.colorSpace,t.width=e.width,t.height=e.height,t.channels=e.channels}function P(t,e){if("object"==typeof e&&e){if("premultiplyAlpha"in e&&(t.premultiplyAlpha=e.premultiplyAlpha),"flipY"in e&&(t.flipY=e.flipY),"alignment"in e&&(t.unpackAlignment=e.alignment),"colorSpace"in e&&(t.colorSpace=p[e.colorSpace]),"type"in e){var r=e.type;t.type=f[r]}var n=t.width,i=t.height,a=t.channels,o=!1;"shape"in e?(n=e.shape[0],i=e.shape[1],3===e.shape.length&&(a=e.shape[2],o=!0)):("radius"in e&&(n=i=e.radius),"width"in e&&(n=e.width),"height"in e&&(i=e.height),"channels"in e&&(a=e.channels,o=!0)),t.width=0|n,t.height=0|i,t.channels=0|a;var s=!1;if("format"in e){var l=e.format,c=t.internalformat=m[l];t.format=C[c],l in f&&("type"in e||(t.type=f[l])),l in g&&(t.compressed=!0),s=!0}!o&&s?t.channels=bt[t.format]:o&&!s&&t.channels!==_t[t.format]&&(t.format=t.internalformat=_t[t.channels])}}function z(t){e.pixelStorei(37440,t.flipY),e.pixelStorei(37441,t.premultiplyAlpha),e.pixelStorei(37443,t.colorSpace),e.pixelStorei(3317,t.unpackAlignment)}function D(){I.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function O(t,e){var r=null;if(Ft(e)?r=e:e&&(P(t,e),"x"in e&&(t.xOffset=0|e.x),"y"in e&&(t.yOffset=0|e.y),Ft(e.data)&&(r=e.data)),e.copy){var n=a.viewportWidth,i=a.viewportHeight;t.width=t.width||n-t.xOffset,t.height=t.height||i-t.yOffset,t.needsCopy=!0}else if(r){if(x(r))t.channels=t.channels||4,t.data=r,!("type"in e)&&t.type===ct&&(t.type=Bt(r));else if(Pt(r))t.channels=t.channels||4,function(t,e){var r=e.length;switch(t.type){case ct:case ut:case ht:case pt:var n=d.allocType(t.type,r);n.set(e),t.data=n;break;case at:t.data=H(e)}}(t,r),t.alignment=1,t.needsFree=!0;else if(_(r)){var o=r.data;!Array.isArray(o)&&t.type===ct&&(t.type=Bt(o));var s,l,c,u,h,p,f=r.shape,m=r.stride;3===f.length?(c=f[2],p=m[2]):(c=1,p=1),s=f[0],l=f[1],u=m[0],h=m[1],t.alignment=1,t.width=s,t.height=l,t.channels=c,t.format=t.internalformat=_t[c],t.needsFree=!0,function(t,e,r,n,i,a){for(var o=t.width,s=t.height,l=t.channels,c=jt(t,o*s*l),u=0,h=0;h>=i,r.height>>=i,O(r,n[i]),t.mipmask|=1<=0&&!("faces"in e)&&(t.genMipmaps=!0)}if("mag"in e){var n=e.mag;t.magFilter=u[n]}var i=t.wrapS,a=t.wrapT;if("wrap"in e){var o=e.wrap;"string"==typeof o?i=a=c[o]:Array.isArray(o)&&(i=c[o[0]],a=c[o[1]])}else{if("wrapS"in e){var s=e.wrapS;i=c[s]}if("wrapT"in e){var p=e.wrapT;a=c[p]}}if(t.wrapS=i,t.wrapT=a,"anisotropic"in e&&(e.anisotropic,t.anisotropic=e.anisotropic),"mipmap"in e){var f=!1;switch(typeof e.mipmap){case"string":t.mipmapHint=l[e.mipmap],t.genMipmaps=!0,f=!0;break;case"boolean":f=t.genMipmaps=e.mipmap;break;case"object":t.genMipmaps=!1,f=!0}f&&!("min"in e)&&(t.minFilter=mt)}}function Vt(t,n){e.texParameteri(n,10241,t.minFilter),e.texParameteri(n,10240,t.magFilter),e.texParameteri(n,10242,t.wrapS),e.texParameteri(n,10243,t.wrapT),r.ext_texture_filter_anisotropic&&e.texParameteri(n,34046,t.anisotropic),t.genMipmaps&&(e.hint(33170,t.mipmapHint),e.generateMipmap(n))}var qt=0,Ht={},Gt=n.maxTextureUnits,Wt=Array(Gt).map((function(){return null}));function Zt(t){I.call(this),this.mipmask=0,this.internalformat=X,this.id=qt++,this.refCount=1,this.target=t,this.texture=e.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new It,s.profile&&(this.stats={size:0})}function Yt(t){e.activeTexture(vt),e.bindTexture(t.target,t.texture)}function Xt(){var t=Wt[0];t?e.bindTexture(t.target,t.texture):e.bindTexture(W,null)}function $t(t){var r=t.texture,n=t.unit,i=t.target;n>=0&&(e.activeTexture(vt+n),e.bindTexture(i,null),Wt[n]=null),e.deleteTexture(r),t.texture=null,t.params=null,t.pixels=null,t.refCount=0,delete Ht[t.id],o.textureCount--}return t(Zt.prototype,{bind:function(){var t=this;t.bindCount+=1;var r=t.unit;if(r<0){for(var n=0;n0)continue;i.unit=-1}Wt[n]=t,r=n;break}s.profile&&o.maxTextureUnits>l)-o,c.height=c.height||(n.height>>l)-s,Yt(n),F(c,W,o,s,l),Xt(),N(c),i},i.resize=function(t,r){var a=0|t,o=0|r||a;if(a===n.width&&o===n.height)return i;i.width=n.width=a,i.height=n.height=o,Yt(n);for(var l=0;n.mipmask>>l;++l){var c=a>>l,u=o>>l;if(!c||!u)break;e.texImage2D(W,l,n.format,c,u,0,n.format,n.type,null)}return Xt(),s.profile&&(n.stats.size=Ut(n.internalformat,n.type,a,o,!1,!1)),i},i._reglType="texture2d",i._texture=n,s.profile&&(i.stats=n.stats),i.destroy=function(){n.decRef()},i},createCube:function(t,r,n,i,a,l){var c=new Zt(Z);Ht[c.id]=c,o.cubeCount++;var u=new Array(6);function h(t,e,r,n,i,a){var o,l=c.texInfo;for(It.call(l),o=0;o<6;++o)u[o]=At();if("number"!=typeof t&&t){if("object"==typeof t)if(e)q(u[0],t),q(u[1],e),q(u[2],r),q(u[3],n),q(u[4],i),q(u[5],a);else if(Lt(l,t),P(c,t),"faces"in t){var p=t.faces;for(o=0;o<6;++o)L(u[o],c),q(u[o],p[o])}else for(o=0;o<6;++o)q(u[o],t)}else{var f=0|t||1;for(o=0;o<6;++o)V(u[o],f,f)}for(L(c,u[0]),l.genMipmaps?c.mipmask=(u[0].width<<1)-1:c.mipmask=u[0].mipmask,c.internalformat=u[0].internalformat,h.width=u[0].width,h.height=u[0].height,Yt(c),o=0;o<6;++o)wt(u[o],Y+o);for(Vt(l,Z),Xt(),s.profile&&(c.stats.size=Ut(c.internalformat,c.type,h.width,h.height,l.genMipmaps,!0)),h.format=A[c.internalformat],h.type=k[c.type],h.mag=M[l.magFilter],h.min=S[l.minFilter],h.wrapS=E[l.wrapS],h.wrapT=E[l.wrapT],o=0;o<6;++o)Ct(u[o]);return h}return h(t,r,n,i,a,l),h.subimage=function(t,e,r,n,i){var a=0|r,o=0|n,s=0|i,l=j();return L(l,c),l.width=0,l.height=0,O(l,e),l.width=l.width||(c.width>>s)-a,l.height=l.height||(c.height>>s)-o,Yt(c),F(l,Y+t,a,o,s),Xt(),N(l),h},h.resize=function(t){var r=0|t;if(r!==c.width){h.width=c.width=r,h.height=c.height=r,Yt(c);for(var n=0;n<6;++n)for(var i=0;c.mipmask>>i;++i)e.texImage2D(Y+n,i,c.format,r>>i,r>>i,0,c.format,c.type,null);return Xt(),s.profile&&(c.stats.size=Ut(c.internalformat,c.type,h.width,h.height,!1,!0)),h}},h._reglType="textureCube",h._texture=c,s.profile&&(h.stats=c.stats),h.destroy=function(){c.decRef()},h},clear:function(){for(var t=0;t>r,t.height>>r,0,t.internalformat,t.type,null);else for(var n=0;n<6;++n)e.texImage2D(Y+n,r,t.internalformat,t.width>>r,t.height>>r,0,t.internalformat,t.type,null);Vt(t.texInfo,t.target)}))},refresh:function(){for(var t=0;t=0?p=!0:c.indexOf(d)>=0&&(p=!1))),("depthTexture"in M||"depthStencilTexture"in M)&&(A=!(!M.depthTexture&&!M.depthStencilTexture)),"depth"in M&&("boolean"==typeof M.depth?s=M.depth:(_=M.depth,u=!1)),"stencil"in M&&("boolean"==typeof M.stencil?u=M.stencil:(b=M.stencil,s=!1)),"depthStencil"in M&&("boolean"==typeof M.depthStencil?s=u=M.depthStencil:(w=M.depthStencil,s=!1,u=!1))}else a=o=1;var E=null,C=null,I=null,L=null;if(Array.isArray(h))E=h.map(m);else if(h)E=[m(h)];else for(E=new Array(x),r=0;r0&&(s.depth=r[0].depth,s.stencil=r[0].stencil,s.depthStencil=r[0].depthStencil),r[a]?r[a](s):r[a]=M(s)}return t(n,{width:l,height:l,color:o})}return n(e),t(n,{faces:r,resize:function(t){var e,i=0|t;if(i===n.width)return n;var a=n.color;for(e=0;e=0;--t){var e=oe[t];e&&e(wt,null,0)}n.flush(),k&&k.update()}function pe(){!ue&&oe.length>0&&(ue=s.next(he))}function fe(){ue&&(s.cancel(he),ue=null)}function de(t){t.preventDefault(),fe(),se.forEach((function(t){t()}))}function me(t){n.getError(),a.restore(),Ht.restore(),Ct.restore(),Qt.restore(),te.restore(),ee.restore(),Lt.restore(),k&&k.restore(),re.procs.refresh(),pe(),le.forEach((function(t){t()}))}function ge(e){function r(t,e){var r={},n={};return Object.keys(t).forEach((function(i){var a=t[i];if(o.isDynamic(a))n[i]=o.unbox(a,i);else{if(e&&Array.isArray(a))for(var s=0;s0)return h.call(this,function(t){for(;f.length=0},read:ne,destroy:function(){oe.length=0,fe(),ae&&(ae.removeEventListener(Br,de),ae.removeEventListener(jr,me)),Ht.clear(),ee.clear(),te.clear(),Lt.clear(),Qt.clear(),It.clear(),Ct.clear(),k&&k.clear(),ce.forEach((function(t){t()}))},_gl:n,_refresh:we,poll:function(){be(),k&&k.update()},now:Te,stats:p,getCachedCode:function(){return f},preloadCachedCode:function(t){Object.entries(t).forEach((function(t){f[t[0]]=t[1]}))}});return r.onDone(null,Ae),Ae}},"object"==typeof t&&typeof e<"u"?e.exports=n():r.createREGL=n()}}),Xv=f({"node_modules/gl-util/context.js"(t,e){var r=Og();function n(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*window.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*window.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function i(t){return"function"==typeof t.getContext&&"width"in t&&"height"in t}function a(){var t=document.createElement("canvas");return t.style.position="absolute",t.style.top=0,t.style.left=0,t}e.exports=function(t){if(t?"string"==typeof t&&(t={container:t}):t={},(t=i(t)||"string"==typeof(e=t).nodeName&&"function"==typeof e.appendChild&&"function"==typeof e.getBoundingClientRect?{container:t}:function(t){return"function"==typeof t.drawArrays||"function"==typeof t.drawElements}(t)?{gl:t}:r(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0)).pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;var e;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if("string"==typeof t.container){var o=document.querySelector(t.container);if(!o)throw Error("Element "+t.container+" is not found");t.container=o}i(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=a(),t.container.appendChild(t.canvas),n(t))}else if(!t.canvas){if(!(typeof document<"u"))throw Error("Not DOM environment. Use headless-gl.");t.container=document.body||document.documentElement,t.canvas=a(),t.container.appendChild(t.canvas),n(t)}return t.gl||["webgl","experimental-webgl","webgl-experimental"].some((function(e){try{t.gl=t.canvas.getContext(e,t.attrs)}catch{}return t.gl})),t.gl}}}),$v=f({"node_modules/font-atlas/index.js"(t,e){var r=Wv(),n=[32,126];e.exports=function(t){var e=(t=t||{}).shape?t.shape:t.canvas?[t.canvas.width,t.canvas.height]:[512,512],i=t.canvas||document.createElement("canvas"),a=t.font,o="number"==typeof t.step?[t.step,t.step]:t.step||[32,32],s=t.chars||n;if(a&&"string"!=typeof a&&(a=r(a)),Array.isArray(s)){if(2===s.length&&"number"==typeof s[0]&&"number"==typeof s[1]){for(var l=[],c=s[0],u=0;c<=s[1];c++)l[u++]=String.fromCharCode(c);s=l}}else s=String(s).split("");e=e.slice(),i.width=e[0],i.height=e[1];var h=i.getContext("2d");h.fillStyle="#000",h.fillRect(0,0,i.width,i.height),h.font=a,h.textAlign="center",h.textBaseline="middle",h.fillStyle="#fff";var p=o[0]/2,f=o[1]/2;for(c=0;ce[0]-o[0]/2&&(p=o[0]/2,f+=o[1]);return i}}}),Kv=f({"node_modules/bit-twiddle/twiddle.js"(t){function e(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}t.INT_BITS=32,t.INT_MAX=2147483647,t.INT_MIN=-1<<31,t.sign=function(t){return(t>0)-(t<0)},t.abs=function(t){var e=t>>31;return(t^e)-e},t.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},t.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},t.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},t.countTrailingZeros=e,t.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,1+((t|=t>>>8)|t>>>16)},t.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},t.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);(function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},t.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},t.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},t.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},t.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},t.nextCombination=function(t){var r=t|t-1;return r+1|(~r&-~r)-1>>>e(t)+1}}}),Jv=f({"node_modules/dup/dup.js"(t,e){function r(t,e,n){var i=0|t[n];if(i<=0)return[];var a,o=new Array(i);if(n===t.length-1)for(a=0;a"u"&&(e=0),typeof t){case"number":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n0?n.pop():new ArrayBuffer(t)}function p(t){return new Uint8Array(h(t),0,t)}function f(t){return new Uint16Array(h(2*t),0,t)}function d(t){return new Uint32Array(h(4*t),0,t)}function m(t){return new Int8Array(h(t),0,t)}function g(t){return new Int16Array(h(2*t),0,t)}function y(t){return new Int32Array(h(4*t),0,t)}function v(t){return new Float32Array(h(4*t),0,t)}function x(t){return new Float64Array(h(8*t),0,t)}function _(t){return i?new Uint8ClampedArray(h(t),0,t):p(t)}function b(t){return a?new BigUint64Array(h(8*t),0,t):null}function w(t){return o?new BigInt64Array(h(8*t),0,t):null}function T(t){return new DataView(h(t),0,t)}function A(t){t=e.nextPow2(t);var r=e.log2(t),i=c[r];return i.length>0?i.pop():new n(t)}t.free=function(t){if(n.isBuffer(t))c[e.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,i=0|e.log2(r);l[i].push(t)}},t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=function(t){u(t.buffer)},t.freeArrayBuffer=u,t.freeBuffer=function(t){c[e.log2(t.length)].push(t)},t.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return h(t);switch(e){case"uint8":return p(t);case"uint16":return f(t);case"uint32":return d(t);case"int8":return m(t);case"int16":return g(t);case"int32":return y(t);case"float":case"float32":return v(t);case"double":case"float64":return x(t);case"uint8_clamped":return _(t);case"bigint64":return w(t);case"biguint64":return b(t);case"buffer":return A(t);case"data":case"dataview":return T(t);default:return null}return null},t.mallocArrayBuffer=h,t.mallocUint8=p,t.mallocUint16=f,t.mallocUint32=d,t.mallocInt8=m,t.mallocInt16=g,t.mallocInt32=y,t.mallocFloat32=t.mallocFloat=v,t.mallocFloat64=t.mallocDouble=x,t.mallocUint8Clamped=_,t.mallocBigUint64=b,t.mallocBigInt64=w,t.mallocDataView=T,t.mallocBuffer=A,t.clearCache=function(){for(var t=0;t<32;++t)s.UINT8[t].length=0,s.UINT16[t].length=0,s.UINT32[t].length=0,s.INT8[t].length=0,s.INT16[t].length=0,s.INT32[t].length=0,s.FLOAT[t].length=0,s.DOUBLE[t].length=0,s.BIGUINT64[t].length=0,s.BIGINT64[t].length=0,s.UINT8C[t].length=0,l[t].length=0,c[t].length=0}}}),tx=f({"node_modules/is-plain-obj/index.js"(t,e){var r=Object.prototype.toString;e.exports=function(t){var e;return"[object Object]"===r.call(t)&&(null===(e=Object.getPrototypeOf(t))||e===Object.getPrototypeOf({}))}}}),ex=f({"node_modules/parse-unit/index.js"(t,e){e.exports=function(t,e){e||(e=[0,""]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",e}}}),rx=f({"node_modules/to-px/topx.js"(t,e){var r=ex();function n(t,e){var n=r(getComputedStyle(t).getPropertyValue(e));return n[0]*i(n[1],t)}function i(t,e){switch(e=e||document.body,t=(t||"px").trim().toLowerCase(),(e===window||e===document)&&(e=document.body),t){case"%":return e.clientHeight/100;case"ch":case"ex":return function(t,e){var r=document.createElement("div");r.style["font-size"]="128"+t,e.appendChild(r);var i=n(r,"font-size")/128;return e.removeChild(r),i}(t,e);case"em":return n(e,"font-size");case"rem":return n(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return 96;case"cm":return 96/2.54;case"mm":return 96/25.4;case"pt":return 96/72;case"pc":return 16}return 1}e.exports=i}}),nx=f({"node_modules/detect-kerning/index.js"(t,e){e.exports=i;var r=(i.canvas=document.createElement("canvas")).getContext("2d"),n=a([32,126]);function i(t,e){Array.isArray(t)&&(t=t.join(", "));var i,o={},s=16,l=.05;e&&(2===e.length&&"number"==typeof e[0]?i=a(e):Array.isArray(e)?i=e:(e.o?i=a(e.o):e.pairs&&(i=e.pairs),e.fontSize&&(s=e.fontSize),null!=e.threshold&&(l=e.threshold))),i||(i=n),r.font=s+"px "+t;for(var c=0;cs*l){var f=(p-h)/s;o[u]=1e3*f}}return o}function a(t){for(var e=[],r=t[0];r<=t[1];r++)for(var n=String.fromCharCode(r),i=t[0];i0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}e.exports=r,r.canvas=document.createElement("canvas"),r.cache={}}}),ax=f({"node_modules/gl-text/dist.js"(t,e){var r=Zv(),n=Og(),i=Yv(),a=Xv(),o=Lv(),s=Od(),l=$v(),c=Qv(),u=Rg(),h=tx(),p=ex(),f=rx(),d=nx(),m=oy(),g=ix(),y=jg(),v=Kv().nextPow2,x=new o,_=!1;document.body&&((b=document.body.appendChild(document.createElement("div"))).style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(b).fontStretch&&(_=!0),document.body.removeChild(b));var b,w=function(t){var e;"function"==typeof(e=t)&&e._gl&&e.prop&&e.texture&&e.buffer?(t={regl:t},this.gl=t.regl._gl):this.gl=a(t),this.shader=x.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||i({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),x.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(h(t)?t:{})};w.prototype.createShader=function(){var t=this.regl,e=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(t,e){return[e.atlas.width,e.atlas.height]},atlasDim:function(t,e){return[e.atlas.cols,e.atlas.rows]},atlas:function(t,e){return e.atlas.texture},charStep:function(t,e){return e.atlas.step},em:function(t,e){return e.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:"\n\t\t\tprecision highp float;\n\t\t\tattribute float width, charOffset, char;\n\t\t\tattribute vec2 position;\n\t\t\tuniform float fontSize, charStep, em, align, baseline;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform vec4 color;\n\t\t\tuniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvoid main () {\n\t\t\t\tvec2 offset = floor(em * (vec2(align + charOffset, baseline)\n\t\t\t\t\t+ vec2(positionOffset.x, -positionOffset.y)))\n\t\t\t\t\t/ (viewport.zw * scale.xy);\n\n\t\t\t\tvec2 position = (position + translate) * scale;\n\t\t\t\tposition += offset * scale;\n\n\t\t\t\tcharCoord = position * viewport.zw + viewport.xy;\n\n\t\t\t\tgl_Position = vec4(position * 2. - 1., 0, 1);\n\n\t\t\t\tgl_PointSize = charStep;\n\n\t\t\t\tcharId.x = mod(char, atlasDim.x);\n\t\t\t\tcharId.y = floor(char / atlasDim.x);\n\n\t\t\t\tcharWidth = width * em;\n\n\t\t\t\tfontColor = color / 255.;\n\t\t\t}",frag:"\n\t\t\tprecision highp float;\n\t\t\tuniform float fontSize, charStep, opacity;\n\t\t\tuniform vec2 atlasSize;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform sampler2D atlas;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\n\t\t\tfloat lightness(vec4 color) {\n\t\t\t\treturn color.r * 0.299 + color.g * 0.587 + color.b * 0.114;\n\t\t\t}\n\n\t\t\tvoid main () {\n\t\t\t\tvec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;\n\t\t\t\tfloat halfCharStep = floor(charStep * .5 + .5);\n\n\t\t\t\t// invert y and shift by 1px (FF expecially needs that)\n\t\t\t\tuv.y = charStep - uv.y;\n\n\t\t\t\t// ignore points outside of character bounding box\n\t\t\t\tfloat halfCharWidth = ceil(charWidth * .5);\n\t\t\t\tif (floor(uv.x) > halfCharStep + halfCharWidth ||\n\t\t\t\t\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\n\n\t\t\t\tuv += charId * charStep;\n\t\t\t\tuv = uv / atlasSize;\n\n\t\t\t\tvec4 color = fontColor;\n\t\t\t\tvec4 mask = texture2D(atlas, uv);\n\n\t\t\t\tfloat maskY = lightness(mask);\n\t\t\t\t// float colorY = lightness(color);\n\t\t\t\tcolor.a *= maskY;\n\t\t\t\tcolor.a *= opacity;\n\n\t\t\t\t// color.a += .1;\n\n\t\t\t\t// antialiasing, see yiq color space y-channel formula\n\t\t\t\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\n\n\t\t\t\tgl_FragColor = color;\n\t\t\t}"});return{regl:t,draw:e,atlas:{}}},w.prototype.update=function(t){var e=this;if("string"==typeof t)t={text:t};else if(!t)return;null!=(t=n(t,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0)).opacity&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=u(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&("number"==typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!t.font&&(t.font=w.baseFontSize+"px sans-serif");var i,a=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,n){if("string"==typeof t)try{t=r.parse(t)}catch{t=r.parse(w.baseFontSize+"px "+t)}else{var i=t.style,s=t.weight,l=t.stretch,c=t.variant;t=r.parse(r.stringify(t)),i&&(t.style=i),s&&(t.weight=s),l&&(t.stretch=l),c&&(t.variant=c)}var u=r.stringify({size:w.baseFontSize,family:t.family,stretch:_?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),h=p(t.size),d=Math.round(h[0]*f(h[1]));if(d!==e.fontSize[n]&&(o=!0,e.fontSize[n]=d),!(e.font[n]&&u==e.font[n].baseString||(a=!0,e.font[n]=w.fonts[u],e.font[n]))){var m=t.family.join(", "),y=[t.style];t.style!=t.variant&&y.push(t.variant),t.variant!=t.weight&&y.push(t.weight),_&&t.weight!=t.stretch&&y.push(t.stretch),e.font[n]={baseString:u,family:m,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:g(m,{origin:"top",fontSize:w.baseFontSize,fontStyle:y.join(" ")})},w.fonts[u]=e.font[n]}})),(a||o)&&this.font.forEach((function(n,i){var a=r.stringify({size:e.fontSize[i],family:n.family,stretch:_?n.stretch:void 0,variant:n.variant,weight:n.weight,style:n.style});if(e.fontAtlas[i]=e.shader.atlas[a],!e.fontAtlas[i]){var o=n.metrics;e.shader.atlas[a]=e.fontAtlas[i]={fontString:a,step:2*Math.ceil(e.fontSize[i]*o.bottom*.5),em:e.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),"string"==typeof t.text&&t.position&&t.position.length>2){for(var h=Array(.5*t.position.length),x=0;x2){for(var T=!t.position[0].length,A=c.mallocFloat(2*this.count),k=0,M=0;k1?e.align[r]:e.align[0]:e.align;if("number"==typeof n)return n;switch(n){case"right":case"end":return-t;case"center":case"centre":case"middle":return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,r){var n=(e.font[r]||e.font[0]).metrics,i=0;return i+=.5*n.bottom,-1*(i+="number"==typeof t?t-n.baseline:-n[t])}))),null!=t.color)if(t.color||(t.color="transparent"),"string"!=typeof t.color&&isNaN(t.color)){var H;if("number"==typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;H=c.mallocUint8(G);for(var W=(t.color.subarray||t.color.slice).bind(t.color),Z=0;Z4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var $=Math.max(.5*this.position.length||0,.25*this.color.length||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,.5*this.positionOffset.length||0);this.batch=Array($);for(var K=0;K1?this.counts[K]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[K]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*K,4*K+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[K]:this.opacity,baseline:null!=this.baselineOffset[K]?this.baselineOffset[K]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[K]?this.alignOffset[K]:this.alignOffset[0]:0,atlas:this.fontAtlas[K]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*K,2*K+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]},w.prototype.destroy=function(){},w.prototype.kerning=!0,w.prototype.position={constant:new Float32Array(2)},w.prototype.translate=null,w.prototype.scale=null,w.prototype.font=null,w.prototype.text="",w.prototype.positionOffset=[0,0],w.prototype.opacity=1,w.prototype.color=new Uint8Array([0,0,0,255]),w.prototype.alignOffset=[0,0],w.maxAtlasSize=1024,w.atlasCanvas=document.createElement("canvas"),w.atlasContext=w.atlasCanvas.getContext("2d",{alpha:!1}),w.baseFontSize=64,w.fonts={},e.exports=w}}),ox=f({"src/lib/prepare_regl.js"(t,e){var r=Zd(),n=Yv();e.exports=function(t,e,i){var a=t._fullLayout,o=!0;return a._glcanvas.each((function(r){if(r.regl)r.regl.preloadCachedCode(i);else if(!r.pick||a._has("parcoords")){try{r.regl=n({canvas:this,attributes:{antialias:!r.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:i||{}})}catch{o=!1}r.regl||(o=!1),o&&this.addEventListener("webglcontextlost",(function(e){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:e,layer:r.key})}),!1)}})),o||r({container:a._glcontainer.node()}),o}}}),sx=f({"src/traces/scattergl/plot.js"(t,e){var r=hy(),n=zv(),i=Dv(),a=ax(),o=le(),s=Or().selectMode,l=ox(),c=Ye(),u=hi(),h=ry().styleTextSelection,p={};function f(t,e,r,n){var i=t._size,a=t.width*n,o=t.height*n,s=i.l*n,l=i.b*n,c=i.r*n,u=i.t*n,h=i.w*n,p=i.h*n;return[s+e.domain[0]*h,l+r.domain[0]*p,a-c-(1-e.domain[1])*h,o-u-(1-r.domain[1])*p]}(e.exports=function(t,e,d){if(d.length){var m,g,y=t._fullLayout,v=e._scene,x=e.xaxis,_=e.yaxis;if(v){if(!l(t,["ANGLE_instanced_arrays","OES_element_index_uint"],p))return void v.init();var b=v.count,w=y._glcanvas.data()[0].regl;if(u(t,e,d),v.dirty){if((v.line2d||v.error2d)&&!(v.scatter2d||v.fill2d||v.glText)&&w.clear({}),!0===v.error2d&&(v.error2d=i(w)),!0===v.line2d&&(v.line2d=n(w)),!0===v.scatter2d&&(v.scatter2d=r(w)),!0===v.fill2d&&(v.fill2d=n(w)),!0===v.glText)for(v.glText=new Array(b),m=0;mv.glText.length){var T=b-v.glText.length;for(m=0;mr&&(isNaN(e[n])||isNaN(e[n+1]));)n-=2;t.positions=e.slice(r,n+2)}return t})),v.line2d.update(v.lineOptions)),v.error2d){var k=(v.errorXOptions||[]).concat(v.errorYOptions||[]);v.error2d.update(k)}v.scatter2d&&v.scatter2d.update(v.markerOptions),v.fillOrder=o.repeat(null,b),v.fill2d&&(v.fillOptions=v.fillOptions.map((function(t,e){var r=d[e];if(t&&r&&r[0]&&r[0].trace){var n,i,a=r[0],o=a.trace,s=a.t,l=v.lineOptions[e],c=[];o._ownfill&&c.push(e),o._nexttrace&&c.push(e+1),c.length&&(v.fillOrder[e]=c);var u,h,p=[],f=l&&l.positions||s.positions;if("tozeroy"===o.fill){for(u=0;uu&&isNaN(f[h+1]);)h-=2;0!==f[u+1]&&(p=[f[u],0]),p=p.concat(f.slice(u,h+2)),0!==f[h+1]&&(p=p.concat([f[h],0]))}else if("tozerox"===o.fill){for(u=0;uu&&isNaN(f[h]);)h-=2;0!==f[u]&&(p=[0,f[u+1]]),p=p.concat(f.slice(u,h+2)),0!==f[h]&&(p=p.concat([0,f[h+1]]))}else if("toself"===o.fill||"tonext"===o.fill){for(p=[],n=0,t.splitNull=!0,i=0;i-1;for(m=0;ma&&l||ih?_.sizeAvg||Math.max(_.size,3):i(e,x),f=0;f2?(n=h[0],a=h[2],i=h[1],o=h[3]):h.length?(n=i=h[0],a=o=h[1]):(n=h.x,i=h.y,a=h.x+h.width,o=h.y+h.height),p.length>2?(s=p[0],c=p[2],l=p[1],u=p[3]):p.length?(s=l=p[0],c=u=p[1]):(s=p.x,l=p.y,c=p.x+p.width,u=p.y+p.height),[s,i,c,o]}function p(t){if("number"==typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];{let e=s(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}}e.exports=c,c.prototype.render=function(...t){return t.length&&this.update(...t),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=a((()=>{this.draw(),this.dirty=!0,this.planned=null}))):(this.draw(),this.dirty=!0,a((()=>{this.dirty=!1}))),this)},c.prototype.update=function(...t){if(!t.length)return;for(let e=0;ee||!c.lower&&t{e[a+r]=n}))}this.scatter.draw(...e)}else this.scatter.draw();return this},c.prototype.destroy=function(){return this.traces.forEach((t=>{t.buffer&&t.buffer.destroy&&t.buffer.destroy()})),this.traces=null,this.passes=null,this.scatter.destroy(),this}}}),xx=f({"src/traces/splom/plot.js"(t,e){var r=vx(),n=le(),i=xe(),a=Or().selectMode;function o(t,e){var o,s,l,c,u,h=t._fullLayout,p=h._size,f=e.trace,d=e.t,m=h._splomScenes[f.uid],g=m.matrixOptions,y=g.cdata,v=h._glcanvas.data()[0].regl,x=h.dragmode;if(0!==y.length){g.lower=f.showupperhalf,g.upper=f.showlowerhalf,g.diagonal=f.diagonal.visible;var _=f._visibleDims,b=y.length,w=m.viewOpts={};for(w.ranges=new Array(b),w.domains=new Array(b),u=0;u<_.length;u++){l=_[u];var T=w.ranges[u]=new Array(4),A=w.domains[u]=new Array(4);(o=i.getFromId(t,f._diag[l][0]))&&(T[0]=o._rl[0],T[2]=o._rl[1],A[0]=o.domain[0],A[2]=o.domain[1]),(s=i.getFromId(t,f._diag[l][1]))&&(T[1]=s._rl[0],T[3]=s._rl[1],A[1]=s.domain[0],A[3]=s.domain[1])}var k=t._context.plotGlPixelRatio,M=p.l*k,S=p.b*k,E=p.w*k,C=p.h*k;w.viewport=[M,S,E+M,C+S],!0===m.matrix&&(m.matrix=r(v));var I=h.clickmode.indexOf("select")>-1,L=!0;if(a(x)||f.selectedpoints||I){var P=f._length;if(f.selectedpoints){m.selectBatch=f.selectedpoints;var z=f.selectedpoints,D={};for(l=0;l=e[r][0]&&t<=e[r][1])return!0;return!1}(r,n))return r;var i=t?-1:1,a=0,o=e.length-1;if(i<0){var s=a;a=o,o=s}for(var l=e[a],u=l,p=a;i*pe){p=n;break}}if(a=u,isNaN(a)&&(a=isNaN(h)||isNaN(p)?isNaN(h)?p:h:e-c[h][1]t[1]+n||e=.9*t[1]+.1*t[0]?"n":e<=.9*t[0]+.1*t[1]?"s":"ns"}(d,e);m&&(o.interval=l[a],o.intervalPix=d,o.region=m)}}if(t.ordinal&&!o.region){var y=t.unitTickvals,v=t.unitToPaddedPx.invert(e);for(n=0;n=x[0]&&v<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function w(t,e){n.event.sourceEvent.stopPropagation();var i=e.height-n.mouse(t)[1]-2*r.verticalPadding,a=e.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[i-a.grabPoint,i+a.barLength-a.grabPoint].map(e.unitToPaddedPx.invert):a.newExtent=[a.startExtent,e.unitToPaddedPx.invert(i)].sort(o),e.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(e),_(t.parentNode)}function T(t,e){var i=b(e,e.height-n.mouse(t)[1]-2*r.verticalPadding),a="crosshair";i.clickableOrdinalRange?a="pointer":i.region&&(a=i.region+"-resize"),n.select(document.body).style("cursor",a)}function A(t){t.on("mousemove",(function(t){n.event.preventDefault(),t.parent.inBrushDrag||T(this,t)})).on("mouseleave",(function(t){t.parent.inBrushDrag||y()})).call(n.behavior.drag().on("dragstart",(function(t){!function(t,e){n.event.sourceEvent.stopPropagation();var i=e.height-n.mouse(t)[1]-2*r.verticalPadding,a=e.unitToPaddedPx.invert(i),o=e.brush,s=b(e,i),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar="ns"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=i-u[0]-r.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l["s"===s.region?1:0]:a,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on("drag",(function(t){w(this,t)})).on("dragend",(function(t){!function(t,e){var r=e.brush,i=r.filter,a=r.svgBrush;a._dragging||(T(t,e),w(t,e),e.brush.svgBrush.wasDragged=!1),a._dragging=!1,n.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,e.parent.inBrushDrag=!1,y(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?r.filterSpecified&&e.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],r.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&M(r)):M(r),a.brushCallback(e),_(t.parentNode),void a.brushEndCallback(r.filterSpecified?i.getConsolidated():[]);var s=function(){i.set(i.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]a.newExtent[0];a.extent=a.stayingIntervals.concat(c?[a.newExtent]:[]),a.extent.length||M(r),a.brushCallback(e),c?_(t.parentNode,s):(s(),_(t.parentNode))}else s();a.brushEndCallback(r.filterSpecified?i.getConsolidated():[])}(this,t)})))}function k(t,e){return t[0]-e[0]}function M(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function S(t){return function(e){var r=e.brush,n=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(r),i=n.slice();r.filter.set(i),t()}}function E(t){for(var e,r=t.slice(),n=[],i=r.shift();i;){for(e=i.slice();(i=r.shift())&&i[0]<=e[1];)e[1]=Math.max(e[1],i[1]);n.push(e)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(t,e,r,n,i,a){var s=function(){var t,e,r=[];return{set:function(n){1===(r=n.map((function(t){return t.slice().sort(o)})).sort(k)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),t=E(r),e=r.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return s.set(r),{filter:s,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:n,brushCallback:S(i),brushEndCallback:a}}},ensureAxisBrush:function(t,e,n){var o=t.selectAll("."+r.cn.axisBrush).data(a,i);o.enter().append("g").classed(r.cn.axisBrush,!0),function(t,e,n){var i=n._context.staticPlot,o=t.selectAll(".background").data(a);o.enter().append("rect").classed("background",!0).call(f).call(d).style("pointer-events",i?"none":"auto").attr("transform",s(0,r.verticalPadding)),o.call(A).attr("height",(function(t){return t.height-r.verticalPadding}));var l=t.selectAll(".highlight-shadow").data(a);l.enter().append("line").classed("highlight-shadow",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width+r.bar.strokeWidth).attr("stroke",e).attr("opacity",r.bar.strokeOpacity).attr("stroke-linecap","butt"),l.attr("y1",(function(t){return t.height})).call(v);var c=t.selectAll(".highlight").data(a);c.enter().append("line").classed("highlight",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width-r.bar.strokeWidth).attr("stroke",r.bar.fillColor).attr("opacity",r.bar.fillOpacity).attr("stroke-linecap","butt"),c.attr("y1",(function(t){return t.height})).call(v)}(o,e,n)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(o)})),t=e.multiselect?E(t.sort(k)):[t[0]]):t=[t.sort(o)],e.tickvals){var r=e.tickvals.slice().sort(o);if(!(t=t.map((function(t){var e=[p(0,r,t[0],[]),p(1,r,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}}}),Px=f({"src/traces/parcoords/defaults.js"(t,e){var r=le(),n=Ee().hasColorscale,i=qe(),a=Aa().defaults,o=je(),s=ir(),l=Ex(),c=Lx(),u=Cx().maxDimensionCount,h=hx();function p(t,e,n,i){function a(n,i){return r.coerce(t,e,l.dimensions,n,i)}var o=a("values"),u=a("visible");if(o&&o.length||(u=e.visible=!1),u){a("label"),a("tickvals"),a("ticktext"),a("tickformat");var h=a("range");e._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:h},s.setConvert(e._ax,i.layout),a("multiselect");var p=a("constraintrange");p&&(e.constraintrange=c.cleanRanges(p,e))}}e.exports=function(t,e,s,c){function f(n,i){return r.coerce(t,e,l,n,i)}var d=t.dimensions;Array.isArray(d)&&d.length>u&&(r.log("parcoords traces support up to "+u+" dimensions at the moment"),d.splice(u));var m=o(t,e,{name:"dimensions",layout:c,handleItemDefaults:p}),g=function(t,e,a,o,s){var l=s("line.color",a);if(n(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),i(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=a}return 1/0}(t,e,s,c,f);a(e,c,f),(!Array.isArray(m)||!m.length)&&(e.visible=!1),h(e,m,"values",g);var y=r.extendFlat({},c.font,{size:Math.round(c.font.size/1.2)});r.coerceFont(f,"labelfont",y),r.coerceFont(f,"tickfont",y,{autoShadowDflt:!0}),r.coerceFont(f,"rangefont",y),f("labelangle"),f("labelside"),f("unselected.line.color"),f("unselected.line.opacity")}}}),zx=f({"src/traces/parcoords/calc.js"(t,e){var r=le().isArrayOrTypedArray,n=Ze(),i=Ix().wrap;e.exports=function(t,e){var a,o;return n.hasColorscale(e,"line")&&r(e.line.color)?(a=e.line.color,o=n.extractOpts(e.line).colorscale,n.calc(t,e,{vals:a,containerStr:"line",cLetter:"c"})):(a=function(t){for(var e=new Array(t),r=0;r>>16,(65280&t)>>>8,255&t],alpha:1};if("number"==typeof t)return{space:"rgb",values:[t>>>16,(65280&t)>>>8,255&t],alpha:1};if(t=String(t).toLowerCase(),Ox.default[t])a=Ox.default[t].slice(),i="rgb";else if("transparent"===t)o=0,i="rgb",a=[0,0,0];else if("#"===t[0]){var s=t.slice(1),l=s.length;o=1,l<=4?(a=[parseInt(s[0]+s[0],16),parseInt(s[1]+s[1],16),parseInt(s[2]+s[2],16)],4===l&&(o=parseInt(s[3]+s[3],16)/255)):(a=[parseInt(s[0]+s[1],16),parseInt(s[2]+s[3],16),parseInt(s[4]+s[5],16)],8===l&&(o=parseInt(s[6]+s[7],16)/255)),a[0]||(a[0]=0),a[1]||(a[1]=0),a[2]||(a[2]=0),i="rgb"}else if(n=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(t)){var c=n[1],u="cmyk"===(i=c.replace(/a$/,""))?4:"gray"===i?1:3;a=n[2].trim().split(/\s*[,\/]\s*|\s+/),"color"===i&&(i=a.shift()),o=(a=a.map((function(t,e){if("%"===t[t.length-1])return t=parseFloat(t)/100,3===e?t:"rgb"===i?255*t:"h"===i[0]||"l"===i[0]&&!e?100*t:"lab"===i?125*t:"lch"===i?e<2?150*t:360*t:"o"!==i[0]||e?"oklab"===i?.4*t:"oklch"===i?e<2?.4*t:360*t:t:t;if("h"===i[e]||2===e&&"h"===i[i.length-1]){if(void 0!==Fx[t])return Fx[t];if(t.endsWith("deg"))return parseFloat(t);if(t.endsWith("turn"))return 360*parseFloat(t);if(t.endsWith("grad"))return 360*parseFloat(t)/400;if(t.endsWith("rad"))return 180*parseFloat(t)/Math.PI}return"none"===t?0:parseFloat(t)}))).length>u?a.pop():1}else/[0-9](?:\s|\/|,)/.test(t)&&(a=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),i=(null==(r=null==(e=t.match(/([a-z])/gi))?void 0:e.join(""))?void 0:r.toLowerCase())||"rgb");return{space:i,values:a,alpha:o}}var Ox,Rx,Fx,Bx,jx,Nx=p({"node_modules/color-parse/index.js"(){var r,n;n=null!=(r=Id())?t(s(r)):{},Ox=m(e(n,"default",{value:r,enumerable:!0}),r),Rx=Dx,Fx={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Ux=p({"node_modules/color-space/rgb.js"(){Bx={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),Vx=p({"node_modules/color-space/hsl.js"(){Ux(),jx={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(t){var e,r,n,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100,c=0;if(0===s)return[a=255*l,a,a];for(e=2*l-(r=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];c<3;)(n=o+1/3*-(c-1))<0?n++:n>1&&n--,a=6*n<1?e+6*(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,i[c++]=255*a;return i}},Bx.hsl=function(t){var e,r,n=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(n,i,a),s=Math.max(n,i,a),l=s-o;return s===o?e=0:n===s?e=(i-a)/l:i===s?e=2+(a-n)/l:a===s&&(e=4+(n-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),r=(o+s)/2,[e,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}}}),qx={};function Hx(t){Array.isArray(t)&&t.raw&&(t=String.raw(...arguments)),t instanceof Number&&(t=+t);var e,r=Rx(t);if(!r.space)return[];let n="h"===r.space[0]?jx.min:Bx.min,i="h"===r.space[0]?jx.max:Bx.max;return(e=Array(3))[0]=Math.min(Math.max(r.values[0],n[0]),i[0]),e[1]=Math.min(Math.max(r.values[1],n[1]),i[1]),e[2]=Math.min(Math.max(r.values[2],n[2]),i[2]),"h"===r.space[0]&&(e=jx.rgb(e)),e.push(Math.min(Math.max(r.alpha,0),1)),e}d(qx,{default:()=>Hx});var Gx=p({"node_modules/color-rgba/index.js"(){Nx(),Ux(),Vx()}}),Wx=f({"src/traces/parcoords/helpers.js"(t){var e=le().isTypedArray;t.convertTypedArray=function(t){return e(t)?Array.prototype.slice.call(t):t},t.isOrdinal=function(t){return!!t.tickvals},t.isVisible=function(t){return t.visible||!("visible"in t)}}}),Zx=f({"src/traces/parcoords/lines.js"(t,e){var r=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join("\n"),n=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join("\n"),i=Cx().maxDimensionCount,a=le(),o=1e-6,s=2048,l=new Uint8Array(4),c=new Uint8Array(4),u={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function h(t,e,r,n,i){var a=t._gl;a.enable(a.SCISSOR_TEST),a.scissor(e,r,n,i),t.clear({color:[0,0,0,0],depth:1})}function p(t,e,r,n,i,a){var o=a.key;r.drawCompleted||(function(t){t.read({x:0,y:0,width:1,height:1,data:l})}(t),r.drawCompleted=!0),function s(l){var c=Math.min(n,i-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(t,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*c,a.offset=2*l*n,e(a),l*n+c>>8*e)%256/255}function g(t,e,r){for(var n=new Array(8*e),i=0,a=0;au&&(u=t[n].dim1.canvasX,a=n);0===l&&h(k,0,0,o.canvasWidth,o.canvasHeight);var f=function(t){var e,r,n,i=[[],[]];for(n=0;n<64;n++){var a=!t&&ns._length&&(M=M.slice(0,s._length));var C,L=s.tickvals;function P(t,e){return{val:t,text:C[e]}}function z(t,e){return t.val-e.val}if(i(L)&&L.length){n.isTypedArray(L)&&(L=Array.from(L)),C=s.ticktext,i(C)&&C.length?C.length>L.length?C=C.slice(0,L.length):L.length>C.length&&(L=L.slice(0,C.length)):C=L.map(a(s.tickformat));for(var D=1;D=n||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],h=u?c[2]+256*(c[1]+256*c[0]):null,p={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:h};h!==C&&(u?a.hover(p):a.unhover&&a.unhover(p),C=h)}})),E.style("opacity",(function(t){return t.pick?0:1})),f.style("background","rgba(255, 255, 255, 0)");var B=f.selectAll("."+_.cn.parcoords).data(S,d);B.exit().remove(),B.enter().append("g").classed(_.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),B.attr("transform",(function(t){return c(t.model.translateX,t.model.translateY)}));var j=B.selectAll("."+_.cn.parcoordsControlView).data(m,d);j.enter().append("g").classed(_.cn.parcoordsControlView,!0),j.attr("transform",(function(t){return c(t.model.pad.l,t.model.pad.t)}));var N=j.selectAll("."+_.cn.yAxis).data((function(t){return t.dimensions}),d);N.enter().append("g").classed(_.cn.yAxis,!0),j.each((function(t){O(N,t,x)})),E.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=w(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),N.attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),N.call(r.behavior.drag().origin((function(t){return t})).on("drag",(function(t){var e=t.parent;k.linePickActive(!1),t.x=Math.max(-_.overdrag,Math.min(t.model.width+_.overdrag,r.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,N.sort((function(t,e){return t.x-e.x})).each((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),O(N,e,x),N.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),r.select(this).attr("transform",c(t.x,0)),N.each((function(r,n,i){i===t.parent.key&&(e.dimensions[n]=r)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!I(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on("dragend",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,O(N,e,x),r.select(this).attr("transform",(function(t){return c(t.x,0)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!I(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),k.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),N.exit().remove();var U=N.selectAll("."+_.cn.axisOverlays).data(m,d);U.enter().append("g").classed(_.cn.axisOverlays,!0),U.selectAll("."+_.cn.axis).remove();var V=U.selectAll("."+_.cn.axis).data(m,d);V.enter().append("g").classed(_.cn.axis,!0),V.each((function(t){var e=t.model.height/t.model.tickDistance,n=t.domainScale,i=n.domain();r.select(this).call(r.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?i:null).tickFormat((function(e){return v.isOrdinal(t)?e:R(t.model.dimensions[t.visibleIndex],e)})).scale(n)),h.font(V.selectAll("text"),t.model.tickFont)})),V.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),V.selectAll("text").style("cursor","default");var q=U.selectAll("."+_.cn.axisHeading).data(m,d);q.enter().append("g").classed(_.cn.axisHeading,!0);var H=q.selectAll("."+_.cn.axisTitle).data(m,d);H.enter().append("text").classed(_.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",o?"none":"auto"),H.text((function(t){return t.label})).each((function(e){var n=r.select(this);h.font(n,e.model.labelFont),u.convertToTspans(n,t)})).attr("transform",(function(t){var e=D(t.model.labelAngle,t.model.labelSide),r=_.axisTitleOffset;return(e.dir>0?"":c(0,2*r+t.model.height))+l(e.degrees)+c(-r*e.dx,-r*e.dy)})).attr("text-anchor",(function(t){var e=D(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?"start":"end":"middle"}));var G=U.selectAll("."+_.cn.axisExtent).data(m,d);G.enter().append("g").classed(_.cn.axisExtent,!0);var W=G.selectAll("."+_.cn.axisExtentTop).data(m,d);W.enter().append("g").classed(_.cn.axisExtentTop,!0),W.attr("transform",c(0,-_.axisExtentOffset));var Z=W.selectAll("."+_.cn.axisExtentTopText).data(m,d);Z.enter().append("text").classed(_.cn.axisExtentTopText,!0).call(z),Z.text((function(t){return F(t,!0)})).each((function(t){h.font(r.select(this),t.model.rangeFont)}));var Y=G.selectAll("."+_.cn.axisExtentBottom).data(m,d);Y.enter().append("g").classed(_.cn.axisExtentBottom,!0),Y.attr("transform",(function(t){return c(0,t.model.height+_.axisExtentOffset)}));var X=Y.selectAll("."+_.cn.axisExtentBottomText).data(m,d);X.enter().append("text").classed(_.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(z),X.text((function(t){return F(t,!1)})).each((function(t){h.font(r.select(this),t.model.rangeFont)})),b.ensureAxisBrush(U,T,t)}}}),Xx=f({"src/traces/parcoords/plot.js"(t,e){var r=Yx(),n=ox(),i=Wx().isVisible,a={};function o(t,e,r){var n=e.indexOf(r),i=t.indexOf(n);return-1===i&&(i+=e.length),i}(e.exports=function(t,e){var s=t._fullLayout;if(n(t,[],a)){var l={},c={},u={},h={},p=s._size;e.forEach((function(e,r){var n=e[0].trace;u[r]=n.index;var i=h[r]=n.index;l[r]=t.data[i].dimensions,c[r]=t.data[i].dimensions.slice()})),r(t,e,{width:p.w,height:p.h,margin:{t:p.t,r:p.r,b:p.b,l:p.l}},{filterChanged:function(e,r,n){var i=c[e][r],a=n.map((function(t){return t.slice()})),o="dimensions["+r+"].constraintrange",l=s._tracePreGUI[t._fullData[u[e]]._fullInput.uid];if(void 0===l[o]){var p=i.constraintrange;l[o]=p||null}var f=t._fullData[u[e]].dimensions[r];a.length?(1===a.length&&(a=a[0]),i.constraintrange=a,f.constraintrange=a.slice(),a=[a]):(delete i.constraintrange,delete f.constraintrange,a=null);var d={};d[o]=a,t.emit("plotly_restyle",[d,[h[e]]])},hover:function(e){t.emit("plotly_hover",e)},unhover:function(e){t.emit("plotly_unhover",e)},axesMoved:function(e,r){var n=function(t,e){return function(r,n){return o(t,e,r)-o(t,e,n)}}(r,c[e].filter(i));l[e].sort(n),c[e].filter((function(t){return!i(t)})).sort((function(t){return c[e].indexOf(t)})).forEach((function(t){l[e].splice(l[e].indexOf(t),1),l[e].splice(c[e].indexOf(t),0,t)})),t.emit("plotly_restyle",[{dimensions:[l[e]]},[h[e]]])}})}}).reglPrecompiled=a}}),$x=f({"src/traces/parcoords/base_plot.js"(t){var e=x(),r=we().getModuleCalcData,n=Xx(),i=ke();t.name="parcoords",t.plot=function(t){var e=r(t.calcdata,"parcoords")[0];e.length&&n(t,e)},t.clean=function(t,e,r,n){var i=n._has&&n._has("parcoords"),a=e._has&&e._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())},t.toSVG=function(t){var r=t._fullLayout._glimages,n=e.select(t).selectAll(".svg-container");n.filter((function(t,e){return e===n.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var t=this,e=t.toDataURL("image/png");r.append("svg:image").attr({xmlns:i.svg,"xlink:href":e,preserveAspectRatio:"none",x:0,y:0,width:t.style.width,height:t.style.height})})),window.setTimeout((function(){e.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}}}),Kx=f({"src/traces/parcoords/base_index.js"(t,e){e.exports={attributes:Ex(),supplyDefaults:Px(),calc:zx(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:$x(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),Jx=f({"src/traces/parcoords/index.js"(t,e){var r=Kx();r.plot=Xx(),e.exports=r}}),Qx=f({"lib/parcoords.js"(t,e){e.exports=Jx()}}),t_=f({"src/traces/parcats/attributes.js"(t,e){var r=R().extendFlat,n=U(),i=F(),a=Pe(),o=Ot().hovertemplateAttrs,s=Aa().attributes,l=r({editType:"calc"},a("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:o({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});e.exports={domain:s({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:r({},n.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:o({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:i({editType:"calc"}),tickfont:i({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:l,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),e_=f({"src/traces/parcats/defaults.js"(t,e){var r=le(),n=Ee().hasColorscale,i=qe(),a=Aa().defaults,o=je(),s=t_(),l=hx(),c=E().isTypedArraySpec;function u(t,e){function n(n,i){return r.coerce(t,e,s.dimensions,n,i)}var i=n("values"),a=n("visible");if(i&&i.length||(a=e.visible=!1),a){n("label"),n("displayindex",e._index);var o,l=t.categoryarray,u=r.isArrayOrTypedArray(l)&&l.length>0||c(l);u&&(o="array");var h=n("categoryorder",o);"array"===h?(n("categoryarray"),n("ticktext")):(delete t.categoryarray,delete t.ticktext),!u&&"array"===h&&(e.categoryorder="trace")}}e.exports=function(t,e,c,h){function p(n,i){return r.coerce(t,e,s,n,i)}var f=o(t,e,{name:"dimensions",handleItemDefaults:u}),d=function(t,e,a,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(n(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),i(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=a}return 1/0}(t,e,c,h,p);a(e,h,p),(!Array.isArray(f)||!f.length)&&(e.visible=!1),l(e,f,"values",d),p("hoveron"),p("hovertemplate"),p("arrangement"),p("bundlecolors"),p("sortpaths"),p("counts");var m=h.font;r.coerceFont(p,"labelfont",m,{overrideDflt:{size:Math.round(m.size)}}),r.coerceFont(p,"tickfont",m,{autoShadowDflt:!0,overrideDflt:{size:Math.round(m.size/1.2)}})}}}),r_=f({"src/traces/parcats/calc.js"(t,e){var r=Ix().wrap,n=Ee().hasColorscale,i=We(),a=ie(),o=Qe(),s=le(),l=A();function c(t,e,r,n){return{dimensionInd:t,categoryInd:e,categoryValue:r,displayInd:e,categoryLabel:n,valueInds:[],count:0,dragY:null}}function u(t,e,r){t.valueInds.push(e),t.count+=r}function h(t,e,r){return{categoryInds:t,color:e,rawColor:r,valueInds:[],count:0}}function p(t,e,r){t.valueInds.push(e),t.count+=r}e.exports=function(t,e){var f=s.filterVisible(e.dimensions);if(0===f.length)return[];var d,m,g,y=f.map((function(t){var e;if("trace"===t.categoryorder)e=null;else if("array"===t.categoryorder)e=t.categoryarray;else{e=a(t.values);for(var r=!0,n=0;n=t.length||void 0!==e[t[r]])return!1;e[t[r]]=!0}return!0}(r))for(e=0;ee.model.rawColor?1:t.model.rawColor"),C=r.mouse(h)[0];a.loneHover({trace:p,x:x-d.left+m.left,y:b-d.top+m.top,text:E,color:t.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:w,idealAlign:C1&&p.displayInd===h.dimensions.length-1?(i=c.left,a="left"):(i=c.left+c.width,a="right");var m=u.model.count,g=u.model.categoryLabel,y=m/u.parcatsViewModel.model.count,v={countLabel:m,categoryLabel:g,probabilityLabel:y.toFixed(3)},x=[];-1!==u.parcatsViewModel.hoverinfoItems.indexOf("count")&&x.push(["Count:",v.countLabel].join(" ")),-1!==u.parcatsViewModel.hoverinfoItems.indexOf("probability")&&x.push(["P("+v.categoryLabel+"):",v.probabilityLabel].join(" "));var _=x.join("
");return{trace:f,x:o*(i-e.left),y:s*(d-e.top),text:_,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:f.hovertemplate,hovertemplateLabels:v,eventData:[{data:f._input,fullData:f,count:m,category:g,probability:y}]}}function I(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(r.mouse(this)[1]<-1)return;var e,n=t.parcatsViewModel.graphDiv,i=n._fullLayout,s=i._paperdiv.node().getBoundingClientRect(),l=t.parcatsViewModel.hoveron,u=this;"color"===l?(function(t){var e=r.select(t).datum(),n=M(e);T(n),n.each((function(){o.raiseToTop(this)})),r.select(t.parentNode).selectAll("rect.bandrect").filter((function(t){return t.color===e.color})).each((function(){o.raiseToTop(this),function(t){t.attr("stroke","black").attr("stroke-width",1.5)}(r.select(this))}))}(u),E(u,"plotly_hover",r.event)):(function(t){r.select(t.parentNode).selectAll("rect.bandrect").each((function(t){var e=M(t);T(e),e.each((function(){o.raiseToTop(this)}))})),function(t){t.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(r.select(t.parentNode))}(u),S(u,"plotly_hover",r.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf("none")&&("category"===l?e=C(n,s,u):"color"===l?e=function(t,e,n){t._fullLayout._calcInverseTransform(t);var i,a,o=t._fullLayout._invScaleX,s=t._fullLayout._invScaleY,l=n.getBoundingClientRect(),u=r.select(n).datum(),h=u.categoryViewModel,p=h.parcatsViewModel,f=p.model.dimensions[h.model.dimensionInd],d=p.trace,m=l.y+l.height/2;p.dimensions.length>1&&f.displayInd===p.dimensions.length-1?(i=l.left,a="left"):(i=l.left+l.width,a="right");var g=h.model.categoryLabel,y=u.parcatsViewModel.model.count,v=0;u.categoryViewModel.bands.forEach((function(t){t.color===u.color&&(v+=t.count)}));var x=h.model.count,_=0;p.pathSelection.each((function(t){t.model.color===u.color&&(_+=t.model.count)}));var b=v/y,w=v/_,T=v/x,A={countLabel:v,categoryLabel:g,probabilityLabel:b.toFixed(3)},k=[];-1!==h.parcatsViewModel.hoverinfoItems.indexOf("count")&&k.push(["Count:",A.countLabel].join(" ")),-1!==h.parcatsViewModel.hoverinfoItems.indexOf("probability")&&(k.push("P(color ∩ "+g+"): "+A.probabilityLabel),k.push("P("+g+" | color): "+w.toFixed(3)),k.push("P(color | "+g+"): "+T.toFixed(3)));var M=k.join("
"),S=c.mostReadable(u.color,["black","white"]);return{trace:d,x:o*(i-e.left),y:s*(m-e.top),text:M,color:u.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:S,fontSize:10,idealAlign:a,hovertemplate:d.hovertemplate,hovertemplateLabels:A,eventData:[{data:d._input,fullData:d,category:g,count:y,probability:b,categorycount:x,colorcount:_,bandcolorcount:v}]}}(n,s,u):"dimension"===l&&(e=function(t,e,n){var i=[];return r.select(n.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){i.push(C(t,e,this))})),i}(n,s,u)),e&&a.loneHover(e,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:n}))}}function L(t){var e=t.parcatsViewModel;e.dragDimension||(w(e.pathSelection),A(e.dimensionSelection.selectAll("g.category")),k(e.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),a.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(d),-1!==e.hoverinfoItems.indexOf("skip"))||("color"===t.parcatsViewModel.hoveron?E(this,"plotly_unhover",r.event):S(this,"plotly_unhover",r.event))}function P(t){"fixed"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,r.select(this).selectAll("g.category").select("rect.catrect").each((function(e){var n=r.mouse(this)[0],i=r.mouse(this)[1];-2<=n&&n<=e.width+2&&-2<=i&&i<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,o.raiseToTop(this.parentNode),r.select(this.parentNode).selectAll("rect.bandrect").each((function(e){e.yh.y+h.height/2&&(o.model.displayInd=h.model.displayInd,h.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||"freeform"===t.parcatsViewModel.arrangement){a.model.dragX=r.event.x;var p=t.parcatsViewModel.dimensions[n],f=t.parcatsViewModel.dimensions[i];void 0!==p&&a.model.dragXf.x&&(a.model.displayInd=f.model.displayInd,f.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=a.model.displayInd}V(t.parcatsViewModel),U(t.parcatsViewModel),B(t.parcatsViewModel),F(t.parcatsViewModel)}}function D(t){if("fixed"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){r.select(this).selectAll("text").attr("font-weight","normal");var e={},n=R(t.parcatsViewModel),a=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==a[e]}));o&&a.forEach((function(r,n){var i=t.parcatsViewModel.model.dimensions[n].containerInd;e["dimensions["+i+"].displayindex"]=r}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),h=c.map((function(t){return t.categoryLabel}));e["dimensions["+t.model.containerInd+"].categoryarray"]=[u],e["dimensions["+t.model.containerInd+"].ticktext"]=[h],e["dimensions["+t.model.containerInd+"].categoryorder"]="array"}}-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!t.dragHasMoved&&t.potentialClickBand&&("color"===t.parcatsViewModel.hoveron?E(t.potentialClickBand,"plotly_click",r.event.sourceEvent):S(t.potentialClickBand,"plotly_click",r.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd&&(t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null),t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,V(t.parcatsViewModel),U(t.parcatsViewModel),r.transition().duration(300).ease("cubic-in-out").each((function(){B(t.parcatsViewModel,!0),F(t.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&i.restyle(t.parcatsViewModel.graphDiv,e,[n])}))}}function R(t){for(var e,r=t.graphDiv._fullData,n=0;n=0;s--)u+="C"+c[s]+","+(e[s+1]+i)+" "+l[s]+","+(e[s]+i)+" "+(t[s]+r[s])+","+(e[s]+i),u+="l-"+r[s]+",0 ";return u+"Z"}function U(t){var e=t.dimensions,r=t.model,n=e.map((function(t){return t.categories.map((function(t){return t.y}))})),i=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),a=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in r.paths)r.paths.hasOwnProperty(u)&&c.push(r.paths[u]);function h(t){var e=t.categoryInds.map((function(t,e){return i[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,r){var n=h(e),i=h(r);return"backward"===t.sortpaths&&(n.reverse(),i.reverse()),n.push(e.valueInds[0]),i.push(r.valueInds[0]),t.bundlecolors&&(n.unshift(e.rawColor),i.unshift(r.rawColor)),ni?1:0}));for(var p=new Array(c.length),f=e[0].model.count,d=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),m=0;m0?d*(v.count/f):0;for(var x=new Array(n.length),_=0;_1?(t.width-80-16)/(n-1):0)*i;var a,o,s,l,c,u=[],h=t.model.maxCats,p=e.categories.length,f=e.count,d=t.height-8*(h-1),m=8*(h-p)/2,g=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(g.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c0?o.count/f*d:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:m,bands:[],parcatsViewModel:t},m=m+a+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:r,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}e.exports=function(t,e,r,n){h(r,t,n,e)}}}),i_=f({"src/traces/parcats/plot.js"(t,e){var r=n_();e.exports=function(t,e,n,i){var a=t._fullLayout,o=a._paper,s=a._size;r(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}}}),a_=f({"src/traces/parcats/base_plot.js"(t){var e=we().getModuleCalcData,r=i_(),n="parcats";t.name=n,t.plot=function(t,i,a,o){var s=e(t.calcdata,n);if(s.length){var l=s[0];r(t,l,a,o)}},t.clean=function(t,e,r,n){var i=n._has&&n._has("parcats"),a=e._has&&e._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}}}),o_=f({"src/traces/parcats/index.js"(t,e){e.exports={attributes:t_(),supplyDefaults:e_(),calc:r_(),plot:i_(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:a_(),categories:["noOpacity"],meta:{}}}}),s_=f({"lib/parcats.js"(t,e){e.exports=o_()}}),l_=f({"src/plots/mapbox/constants.js"(t,e){var r=Zt(),n="1.13.4",i='©
OpenStreetMap contributors',a=['© Carto',i].join(" "),o=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),s={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:i,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:a,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:a,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:o,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:o,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},l=r(s);e.exports={requiredVersion:n,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:s,styleValuesNonMapbox:l,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+n+"."].join("\n"),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join("\n"),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",l.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join("\n"),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join("\n"),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":'content: ""; cursor: pointer; position: absolute; background-image: url(\'data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E\'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;',"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":'display:block; width: 21px; height: 21px; background-image: url(\'data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E\')'}}}}),c_=f({"src/plots/mapbox/layout_attributes.js"(t,e){var r=le(),n=H().defaultLine,i=Aa().attributes,a=F(),o=Tn().textposition,s=Pt().overrideAll,l=ye().templatedArray,c=l_(),u=a({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});u.family.dflt="Open Sans Regular, Arial Unicode MS Regular",(e.exports=s({_arrayAttrRegexps:[r.counterRegex("mapbox",".layers",!0)],domain:i({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:c.styleValuesMapbox.concat(c.styleValuesNonMapbox),dflt:c.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:l("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:n},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:n}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:u,textposition:r.extendFlat({},o,{arrayOk:!1})}})},"plot","from-root")).uirevision={valType:"any",editType:"none"}}}),u_=f({"src/traces/scattermapbox/attributes.js"(t,e){var r=Ot().hovertemplateAttrs,n=Ot().texttemplateAttrs,i=wn(),a=Vm(),o=Tn(),s=c_(),l=U(),c=Pe(),u=R().extendFlat,h=Pt().overrideAll,p=c_(),f=a.line,d=a.marker;e.exports=h({lon:a.lon,lat:a.lat,cluster:{enabled:{valType:"boolean"},maxzoom:u({},p.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:u({},d.opacity,{dflt:1})},mode:u({},o.mode,{dflt:"markers"}),text:u({},o.text,{}),texttemplate:n({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:u({},o.hovertext,{}),line:{color:f.color,width:f.width},connectgaps:o.connectgaps,marker:u({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:d.opacity,size:d.size,sizeref:d.sizeref,sizemin:d.sizemin,sizemode:d.sizemode},c("marker")),fill:a.fill,fillcolor:i(),textfont:s.layers.symbol.textfont,textposition:s.layers.symbol.textposition,below:{valType:"string"},selected:{marker:o.selected.marker},unselected:{marker:o.unselected.marker},hoverinfo:u({},l.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:r()},"calc","nested")}}),h_=f({"src/traces/scattermapbox/constants.js"(t,e){var r=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];e.exports={isSupportedFont:function(t){return-1!==r.indexOf(t)}}}}),p_=f({"src/traces/scattermapbox/defaults.js"(t,e){var r=le(),n=Ye(),i=Zn(),a=Yn(),o=$n(),s=Kn(),l=u_(),c=h_().isSupportedFont;e.exports=function(t,e,u,h){function p(n,i){return r.coerce(t,e,l,n,i)}function f(n,i){return r.coerce2(t,e,l,n,i)}var d=function(t,e,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return e._length=a,a}(0,e,p);if(d){if(p("text"),p("texttemplate"),p("hovertext"),p("hovertemplate"),p("mode"),p("below"),n.hasMarkers(e)){i(t,e,u,h,p,{noLine:!0,noAngle:!0}),p("marker.allowoverlap"),p("marker.angle");var m=e.marker;"circle"!==m.symbol&&(r.isArrayOrTypedArray(m.size)&&(m.size=m.size[0]),r.isArrayOrTypedArray(m.color)&&(m.color=m.color[0]))}n.hasLines(e)&&(a(t,e,u,h,p,{noDash:!0}),p("connectgaps"));var g=f("cluster.maxzoom"),y=f("cluster.step"),v=f("cluster.color",e.marker&&e.marker.color||u),x=f("cluster.size"),_=f("cluster.opacity");if(p("cluster.enabled",!1!==g||!1!==y||!1!==v||!1!==x||!1!==_)||n.hasText(e)){var b=h.font.family;o(t,e,h,p,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:c(b)?b:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}p("fill"),"none"!==e.fill&&s(t,e,u,p),r.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}}}),f_=f({"src/traces/scattermapbox/format_labels.js"(t,e){var r=ir();e.exports=function(t,e,n){var i={},a=n[e.subplot]._subplot.mockAxis,o=t.lonlat;return i.lonLabel=r.tickText(a,a.c2l(o[0]),!0).text,i.latLabel=r.tickText(a,a.c2l(o[1]),!0).text,i}}}),d_=f({"src/plots/mapbox/convert_text_opts.js"(t,e){var r=le();e.exports=function(t,e){var n=t.split(" "),i=n[0],a=n[1],o=r.isArrayOrTypedArray(e)?r.mean(e):e,s=.5+o/100,l=1.5+o/100,c=["",""],u=[0,0];switch(i){case"top":c[0]="top",u[1]=-l;break;case"bottom":c[0]="bottom",u[1]=l}switch(a){case"left":c[1]="right",u[0]=-s;break;case"right":c[1]="left",u[0]=s}return{anchor:c[0]&&c[1]?c.join("-"):c[0]?c[0]:c[1]?c[1]:"center",offset:u}}}}),m_=f({"src/traces/scattermapbox/convert.js"(t,e){var r=A(),n=le(),i=k().BADNUM,a=Xm(),o=Ze(),s=Qe(),l=Xe(),c=Ye(),u=h_().isSupportedFont,h=d_(),p=$e().appendArrayPointValue,f=Se().NEWLINES,d=Se().BR_TAG_ALL;function m(t){return{type:t,geojson:a.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function g(t,e){return n.isArrayOrTypedArray(t)?e?function(e){return r(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:y}function y(){return""}function v(t){return t[0]===i}function x(t,e){var r;if(n.isArrayOrTypedArray(t)&&n.isArrayOrTypedArray(e)){r=["step",["get","point_count"],t[0]];for(var i=1;i850?" Black":i>750?" Extra Bold":i>650?" Bold":i>550?" Semi Bold":i>450?" Medium":i>350?" Regular":i>250?" Light":i>150?" Extra Light":" Thin"):"Open Sans"===a.slice(0,2).join(" ")?(s="Open Sans",s+=i>750?" Extrabold":i>650?" Bold":i>550?" Semibold":i>350?" Regular":" Light"):"Klokantech Noto Sans"===a.slice(0,3).join(" ")&&(s="Klokantech Noto Sans","CJK"===a[3]&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),"Open Sans Regular Italic"===s?s="Open Sans Italic":"Open Sans Regular Bold"===s?s="Open Sans Bold":"Open Sans Regular Bold Italic"===s?s="Open Sans Bold Italic":"Klokantech Noto Sans Regular Italic"===s&&(s="Klokantech Noto Sans Italic"),u(s)||(s=r),s.split(", ")}e.exports=function(t,e){var i,u=e[0].trace,b=!0===u.visible&&0!==u._length,w="none"!==u.fill,T=c.hasLines(u),A=c.hasMarkers(u),k=c.hasText(u),M=A&&"circle"===u.marker.symbol,S=A&&"circle"!==u.marker.symbol,E=u.cluster&&u.cluster.enabled,C=m("fill"),I=m("line"),L=m("circle"),P=m("symbol"),z={fill:C,line:I,circle:L,symbol:P};if(!b)return z;if((w||T)&&(i=a.calcTraceToLineCoords(e)),w&&(C.geojson=a.makePolygon(i),C.layout.visibility="visible",n.extendFlat(C.paint,{"fill-color":u.fillcolor})),T&&(I.geojson=a.makeLine(i),I.layout.visibility="visible",n.extendFlat(I.paint,{"line-width":u.line.width,"line-color":u.line.color,"line-opacity":u.opacity})),M){var D=function(t){var e,i,a,c,u=t[0].trace,h=u.marker,p=u.selectedpoints,f=n.isArrayOrTypedArray(h.color),d=n.isArrayOrTypedArray(h.size),m=n.isArrayOrTypedArray(h.opacity);function g(t){return u.opacity*t}f&&(i=o.hasColorscale(u,"marker")?o.makeColorScaleFuncFromTrace(h):n.identity),d&&(a=l(u)),m&&(c=function(t){return g(r(t)?+n.constrain(t,0,1):0)});var y,x=[];for(e=0;e=0;r--){var n=e[r];i.removeLayer(u.layerIds[n])}t||i.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=a.nonCluster,r=e.length-1;r>=0;r--){var n=e[r];i.removeLayer(u.layerIds[n]),t||i.removeSource(u.sourceIds[n])}}(t)}function p(t){l?function(t){t||u.addSource("circle",o.circle,e.cluster);for(var r=a.cluster,n=0;n=0;r--){var n=e[r];t.removeLayer(this.layerIds[n]),t.removeSource(this.sourceIds[n])}},e.exports=function(t,e){var r,i,s,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,h=new o(t,l.uid,c,u),p=n(t.gd,e),f=h.below=t.belowLookup["trace-"+l.uid];if(c)for(h.addSource("circle",p.circle,l.cluster),r=0;r")}function u(t){return t+"°"}}e.exports={hoverPoints:function(t,e,a){var c=t.cd,u=c[0].trace,h=t.xa,p=t.ya,f=t.subplot,d=[],m=s+u.uid+"-circle",g=u.cluster&&u.cluster.enabled;if(g){var y=f.map.queryRenderedFeatures(null,{layers:[m]});d=y.map((function(t){return t.id}))}var v=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),x=e-v;if(r.getClosest(c,(function(t){var e=t.lonlat;if(e[0]===o||g&&-1===d.indexOf(t.i+1))return 1/0;var r=n.modHalf(e[0],360),i=e[1],s=f.project([r,i]),l=s.x-h.c2p([x,i]),c=s.y-p.c2p([r,a]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var _=c[t.index],b=_.lonlat,w=[n.modHalf(b[0],360)+v,b[1]],T=h.c2p(w),A=p.c2p(w),k=_.mrc||1;t.x0=T-k,t.x1=T+k,t.y0=A-k,t.y1=A+k;var M={};M[u.subplot]={_subplot:f};var S=u._module.formatLabels(_,u,M);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=i(u,_),t.extraText=l(u,_,c[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:l}}}),v_=f({"src/traces/scattermapbox/event_data.js"(t,e){e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}}}),x_=f({"src/traces/scattermapbox/select.js"(t,e){var r=le(),n=Ye(),i=k().BADNUM;e.exports=function(t,e){var a,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!n.hasMarkers(u))return[];if(!1===e)for(a=0;a"u"&&(e=1e-6),i=t,o=0;o<8;o++){if(a=this.sampleCurveX(i)-t,Math.abs(a)(n=1))return n;for(;ra?r=i:n=i,i=.5*(n-r)+r}return i},i.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=o;function o(t,e){this.x=t,this.y=e}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=e*this.x-r*this.y,i=r*this.x+e*this.y;return this.x=n,this.y=i,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.x+r*(this.x-e.x)-n*(this.y-e.y),a=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=i,this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(t){return t instanceof o?t:Array.isArray(t)?new o(t[0],t[1]):t};var s=typeof self<"u"?self:{},l=Math.pow(2,53)-1;function c(t,e,r,i){var a=new n(t,e,r,i);return function(t){return a.solve(t)}}var u=c(.25,.1,.25,1);function h(t,e,r){return Math.min(r,Math.max(e,t))}function p(t,e,r){var n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function f(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function y(t){return!!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function v(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function x(t,e){return-1!==t.indexOf(e,t.length-e.length)}function _(t,e,r){var n={};for(var i in t)n[i]=e.call(r||this,t[i],i,t);return n}function b(t,e,r){var n={};for(var i in t)e.call(r||this,t[i],i,t)&&(n[i]=t[i]);return n}function w(t){return Array.isArray(t)?t.map(w):"object"==typeof t&&t?_(t,w):t}var T={};function A(t){T[t]||(typeof console<"u"&&console.warn(t),T[t]=!0)}function k(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function M(t){for(var e=0,r=0,n=t.length,i=n-1,a=void 0,o=void 0;r@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(function(t,r,n,i){var a=n||i;return e[r]=!a||a.toLowerCase(),""})),e["max-age"]){var r=parseInt(e["max-age"],10);isNaN(r)?delete e["max-age"]:e["max-age"]=r}return e}var C=null;function I(t){if(null==C){var e=t.navigator?t.navigator.userAgent:null;C=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")))}return C}function L(t){try{var e=s[t];return e.setItem("_mapbox_test_",1),e.removeItem("_mapbox_test_"),!0}catch{return!1}}var P,z,D,O,R=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),F=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,B=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,j={now:R,frame:function(t){var e=F(t);return{cancel:function(){return B(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var r=s.document.createElement("canvas"),n=r.getContext("2d");if(!n)throw new Error("failed to create canvas 2d context");return r.width=t.width,r.height=t.height,n.drawImage(t,0,0,t.width,t.height),n.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return P||(P=s.document.createElement("a")),P.href=t,P.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return!!s.matchMedia&&(null==z&&(z=s.matchMedia("(prefers-reduced-motion: reduce)")),z.matches)}},N={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf("https://api.mapbox.cn")?"https://events.mapbox.cn/events/v2":0===this.API_URL.indexOf("https://api.mapbox.com")?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},U={supported:!1,testSupport:function(t){V||!O||(q?H(t):D=t)}},V=!1,q=!1;function H(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,O),t.isContextLost())return;U.supported=!0}catch{}t.deleteTexture(e),V=!0}s.document&&((O=s.document.createElement("img")).onload=function(){D&&H(D),D=null,q=!0},O.onerror=function(){V=!0,D=null},O.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var G="01",W=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function Z(t){return 0===t.indexOf("mapbox:")}W.prototype._createSkuToken=function(){var t=function(){for(var t="",e=0;e<10;e++)t+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[Math.floor(62*Math.random())];return{token:["1",G,t].join(""),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},W.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},W.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},W.prototype.normalizeStyleURL=function(t,e){if(!Z(t))return t;var r=K(t);return r.path="/styles/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},W.prototype.normalizeGlyphsURL=function(t,e){if(!Z(t))return t;var r=K(t);return r.path="/fonts/v1"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},W.prototype.normalizeSourceURL=function(t,e){if(!Z(t))return t;var r=K(t);return r.path="/v4/"+r.authority+".json",r.params.push("secure"),this._makeAPIURL(r,this._customAccessToken||e)},W.prototype.normalizeSpriteURL=function(t,e,r,n){var i=K(t);return Z(t)?(i.path="/styles/v1"+i.path+"/sprite"+e+r,this._makeAPIURL(i,this._customAccessToken||n)):(i.path+=""+e+r,J(i))},W.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!Z(t))return t;var r=K(t),n=j.devicePixelRatio>=2||512===e?"@2x":"",i=U.supported?".webp":"$1";r.path=r.path.replace(/(\.(png|jpg)\d*)(?=$)/,""+n+i),r.path=r.path.replace(/^.+\/v4\//,"/"),r.path="/v4"+r.path;var a=this._customAccessToken||function(t){for(var e=0,r=t;e=0&&t.params.splice(i,1)}if("/"!==n.path&&(t.path=""+n.path+t.path),!N.REQUIRE_ACCESS_TOKEN)return J(t);if(!(e=e||N.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+r);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+r);return t.params=t.params.filter((function(t){return-1===t.indexOf("access_token")})),t.params.push("access_token="+e),J(t)};var Y=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function X(t){return Y.test(t)}var $=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function K(t){var e=t.match($);if(!e)throw new Error("Unable to parse URL object");return{protocol:e[1],authority:e[2],path:e[3]||"/",params:e[4]?e[4].split("&"):[]}}function J(t){var e=t.params.length?"?"+t.params.join("&"):"";return t.protocol+"://"+t.authority+t.path+e}var Q="mapbox.eventData";function tt(t){if(!t)return null;var e=t.split(".");if(!e||3!==e.length)return null;try{var r=JSON.parse(function(t){return decodeURIComponent(s.atob(t).split("").map((function(t){return"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)})).join(""))}(e[1]));return r}catch{return null}}var et=function(t){this.type=t,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};et.prototype.getStorageKey=function(t){var e,r=tt(N.ACCESS_TOKEN),n="";return r&&r.u?(e=r.u,n=s.btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(function(t,e){return String.fromCharCode(+("0x"+e))})))):n=N.ACCESS_TOKEN||"",t?Q+"."+t+":"+n:Q+":"+n},et.prototype.fetchEventData=function(){var t=L("localStorage"),e=this.getStorageKey(),r=this.getStorageKey("uuid");if(t)try{var n=s.localStorage.getItem(e);n&&(this.eventData=JSON.parse(n));var i=s.localStorage.getItem(r);i&&(this.anonId=i)}catch{A("Unable to read from LocalStorage")}},et.prototype.saveEventData=function(){var t=L("localStorage"),e=this.getStorageKey(),r=this.getStorageKey("uuid");if(t)try{s.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(e,JSON.stringify(this.eventData))}catch{A("Unable to write to LocalStorage")}},et.prototype.processRequests=function(t){},et.prototype.postEvent=function(t,e,n,i){var a=this;if(N.EVENTS_URL){var o=K(N.EVENTS_URL);o.params.push("access_token="+(i||N.ACCESS_TOKEN||""));var s={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:G,userId:this.anonId},l=e?f(s,e):s,c={url:J(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([l])};this.pendingRequest=At(c,(function(t){a.pendingRequest=null,n(t),a.saveEventData(),a.processRequests(i)}))}},et.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var rt,nt,it=function(t){function e(){t.call(this,"map.load"),this.success={},this.skuToken=""}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postMapLoadEvent=function(t,e,r,n){this.skuToken=r,(N.EVENTS_URL&&n||N.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return Z(t)||X(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},n)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){var r=this.queue.shift(),n=r.id,i=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),y(this.anonId)||(this.anonId=g()),this.postEvent(i,{skuToken:this.skuToken},(function(t){t||n&&(e.success[n]=!0)}),t))}},e}(et),at=function(t){function e(e){t.call(this,"appUserTurnstile"),this._customAccessToken=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postTurnstileEvent=function(t,e){N.EVENTS_URL&&N.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return Z(t)||X(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var r=tt(N.ACCESS_TOKEN),n=r?r.u:N.ACCESS_TOKEN,i=n!==this.eventData.tokenU;y(this.anonId)||(this.anonId=g(),i=!0);var a=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(a),l=(a-this.eventData.lastSuccess)/864e5;i=i||l>=1||l<-1||o.getDate()!==s.getDate()}else i=!0;if(!i)return this.processRequests();this.postEvent(a,{"enabled.telemetry":!1},(function(t){t||(e.eventData.lastSuccess=a,e.eventData.tokenU=n)}),t)}},e}(et),ot=new at,st=ot.postTurnstileEvent.bind(ot),lt=new it,ct=lt.postMapLoadEvent.bind(lt),ut="mapbox-tiles",ht=500,pt=50;function ft(){s.caches&&!rt&&(rt=s.caches.open(ut))}function dt(t){var e=t.indexOf("?");return e<0?t:t.slice(0,e)}var mt,gt=1/0;function yt(){return null==mt&&(mt=s.OffscreenCanvas&&new s.OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof s.createImageBitmap),mt}var vt={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(vt);var xt=function(t){function e(e,r,n){401===r&&X(n)&&(e+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),t.call(this,e),this.status=r,this.url=n,this.name=this.constructor.name,this.message=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},e}(Error),_t=S()?function(){return self.worker&&self.worker.referrer}:function(){return("blob:"===s.location.protocol?s.parent:s).location.href};function bt(t,e){var r=new s.AbortController,n=new s.Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,referrer:_t(),signal:r.signal}),i=!1,a=!1,o=function(t){return t.indexOf("sku=")>0&&X(t)}(n.url);"json"===t.type&&n.headers.set("Accept","application/json");var l=function(r,i,l){if(!a){if(r&&"SecurityError"!==r.message&&A(r),i&&l)return c(i);var u=Date.now();s.fetch(n).then((function(r){if(r.ok){var n=o?r.clone():null;return c(r,n,u)}return e(new xt(r.statusText,r.status,t.url))})).catch((function(t){20!==t.code&&e(new Error(t.message))}))}},c=function(r,o,l){("arrayBuffer"===t.type?r.arrayBuffer():"json"===t.type?r.json():r.text()).then((function(t){a||(o&&l&&function(t,e,r){if(ft(),rt){var n={status:e.status,statusText:e.statusText,headers:new s.Headers};e.headers.forEach((function(t,e){return n.headers.set(e,t)}));var i=E(e.headers.get("Cache-Control")||"");i["no-store"]||(i["max-age"]&&n.headers.set("Expires",new Date(r+1e3*i["max-age"]).toUTCString()),new Date(n.headers.get("Expires")).getTime()-r<42e4||function(t,e){if(void 0===nt)try{new Response(new ReadableStream),nt=!0}catch{nt=!1}nt?e(t.body):t.blob().then(e)}(e,(function(e){var r=new s.Response(e,n);ft(),rt&&rt.then((function(e){return e.put(dt(t.url),r)})).catch((function(t){return A(t.message)}))})))}}(n,o,l),i=!0,e(null,t,r.headers.get("Cache-Control"),r.headers.get("Expires")))})).catch((function(t){a||e(new Error(t.message))}))};return o?function(t,e){if(ft(),!rt)return e(null);var r=dt(t.url);rt.then((function(t){t.match(r).then((function(n){var i=function(t){if(!t)return!1;var e=new Date(t.headers.get("Expires")||0),r=E(t.headers.get("Cache-Control")||"");return e>Date.now()&&!r["no-cache"]}(n);t.delete(r),i&&t.put(r,n.clone()),e(null,n,i)})).catch(e)})).catch(e)}(n,l):l(null,null),{cancel:function(){a=!0,i||r.abort()}}}var wt=function(t,e){if(!function(t){return/^file:/.test(t)||/^file:/.test(_t())&&!/^\w+:/.test(t)}(t.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return bt(t,e);if(S()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",t,e,void 0,!0)}return function(t,e){var r=new s.XMLHttpRequest;for(var n in r.open(t.method||"GET",t.url,!0),"arrayBuffer"===t.type&&(r.responseType="arraybuffer"),t.headers)r.setRequestHeader(n,t.headers[n]);return"json"===t.type&&(r.responseType="text",r.setRequestHeader("Accept","application/json")),r.withCredentials="include"===t.credentials,r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if("json"===t.type)try{n=JSON.parse(r.response)}catch(t){return e(t)}e(null,n,r.getResponseHeader("Cache-Control"),r.getResponseHeader("Expires"))}else e(new xt(r.statusText,r.status,t.url))},r.send(t.body),{cancel:function(){return r.abort()}}}(t,e)},Tt=function(t,e){return wt(f(t,{type:"arrayBuffer"}),e)},At=function(t,e){return wt(f(t,{method:"POST"}),e)};function kt(t){var e=s.document.createElement("a");return e.href=t,e.protocol===s.document.location.protocol&&e.host===s.document.location.host}var Mt,St,Et="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";Mt=[],St=0;var Ct=function(t,e){if(U.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),St>=N.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:t,callback:e,cancelled:!1,cancel:function(){this.cancelled=!0}};return Mt.push(r),r}St++;var n=!1,i=function(){if(!n)for(n=!0,St--;Mt.length&&St0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},Dt.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var Ot={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}},Rt=function(t,e,r,n){this.message=(t?t+": ":"")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__)};function Ft(t){var e=t.key,r=t.value;return r?[new Rt(e,r,"constants have been deprecated as of v8")]:[]}function Bt(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n":"value"===t.itemType.kind?"array":"array<"+e+">"}return t.kind}var ee=[qt,Ht,Gt,Wt,Zt,Kt,Yt,Qt(Xt),Jt];function re(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!re(t.itemType,e.itemType))&&("number"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if("value"===t.kind)for(var r=0,n=ee;r255?255:t}function i(t){return t<0?0:t>1?1:t}function a(t){return"%"===t[t.length-1]?n(parseFloat(t)/100*255):n(parseInt(t))}function o(t){return"%"===t[t.length-1]?i(parseFloat(t)/100):i(parseFloat(t))}function s(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}try{e.parseCSSColor=function(t){var e,i=t.replace(/ /g,"").toLowerCase();if(i in r)return r[i].slice();if("#"===i[0])return 4===i.length?(e=parseInt(i.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===i.length&&(e=parseInt(i.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=i.indexOf("("),c=i.indexOf(")");if(-1!==l&&c+1===i.length){var u=i.substr(0,l),h=i.substr(l+1,c-(l+1)).split(","),p=1;switch(u){case"rgba":if(4!==h.length)return null;p=o(h.pop());case"rgb":return 3!==h.length?null:[a(h[0]),a(h[1]),a(h[2]),p];case"hsla":if(4!==h.length)return null;p=o(h.pop());case"hsl":if(3!==h.length)return null;var f=(parseFloat(h[0])%360+360)%360/360,d=o(h[1]),m=o(h[2]),g=m<=.5?m*(d+1):m+d-m*d,y=2*m-g;return[n(255*s(y,g,f+1/3)),n(255*s(y,g,f)),n(255*s(y,g,f-1/3)),p];default:return null}}return null}}catch{}})).parseCSSColor,oe=function(t,e,r,n){void 0===n&&(n=1),this.r=t,this.g=e,this.b=r,this.a=n};oe.parse=function(t){if(t){if(t instanceof oe)return t;if("string"==typeof t){var e=ae(t);if(e)return new oe(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},oe.prototype.toString=function(){var t=this.toArray(),e=t[0],r=t[1],n=t[2],i=t[3];return"rgba("+Math.round(e)+","+Math.round(r)+","+Math.round(n)+","+i+")"},oe.prototype.toArray=function(){var t=this,e=t.r,r=t.g,n=t.b,i=t.a;return 0===i?[0,0,0,0]:[255*e/i,255*r/i,255*n/i,i]},oe.black=new oe(0,0,0,1),oe.white=new oe(1,1,1,1),oe.transparent=new oe(0,0,0,0),oe.red=new oe(1,0,0,1);var se=function(t,e,r){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};se.prototype.compare=function(t,e){return this.collator.compare(t,e)},se.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var le=function(t,e,r,n,i){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i},ce=function(t){this.sections=t};ce.fromString=function(t){return new ce([new le(t,null,null,null,null)])},ce.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},ce.factory=function(t){return t instanceof ce?t:ce.fromString(t)},ce.prototype.toString=function(){return 0===this.sections.length?"":this.sections.map((function(t){return t.text})).join("")},ce.prototype.serialize=function(){for(var t=["format"],e=0,r=this.sections;e=0&&t<=255&&"number"==typeof e&&e>=0&&e<=255&&"number"==typeof r&&r>=0&&r<=255?typeof n>"u"||"number"==typeof n&&n>=0&&n<=1?null:"Invalid rgba value ["+[t,e,r,n].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"==typeof n?[t,e,r,n]:[t,e,r]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function pe(t){if(null===t)return!0;if("string"==typeof t)return!0;if("boolean"==typeof t)return!0;if("number"==typeof t)return!0;if(t instanceof oe)return!0;if(t instanceof se)return!0;if(t instanceof ce)return!0;if(t instanceof ue)return!0;if(Array.isArray(t)){for(var e=0,r=t;e2){var s=t[1];if("string"!=typeof s||!(s in ye)||"object"===s)return e.error('The item type argument of "array" must be one of string, number, boolean',1);a=ye[s],n++}else a=Xt;if(t.length>3){if(null!==t[2]&&("number"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);o=t[2],n++}r=Qt(a,o)}else r=ye[i];for(var l=[];n1)&&e.push(n)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var xe=function(t){this.type=Kt,this.sections=t};xe.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var r=t[1];if(!Array.isArray(r)&&"object"==typeof r)return e.error("First argument must be an image or text section.");for(var n=[],i=!1,a=1;a<=t.length-1;++a){var o=t[a];if(i&&"object"==typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o["font-scale"]&&!(s=e.parse(o["font-scale"],1,Ht)))return null;var l=null;if(o["text-font"]&&!(l=e.parse(o["text-font"],1,Qt(Gt))))return null;var c=null;if(o["text-color"]&&!(c=e.parse(o["text-color"],1,Zt)))return null;var u=n[n.length-1];u.scale=s,u.font=l,u.textColor=c}else{var h=e.parse(t[a],1,Xt);if(!h)return null;var p=h.type.kind;if("string"!==p&&"value"!==p&&"null"!==p&&"resolvedImage"!==p)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,n.push({content:h,scale:null,font:null,textColor:null})}}return new xe(n)},xe.prototype.evaluate=function(t){return new ce(this.sections.map((function(e){var r=e.content.evaluate(t);return fe(r)===Jt?new le("",r,null,null,null):new le(de(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)})))},xe.prototype.eachChild=function(t){for(var e=0,r=this.sections;e-1),r},_e.prototype.eachChild=function(t){t(this.input)},_e.prototype.outputDefined=function(){return!1},_e.prototype.serialize=function(){return["image",this.input.serialize()]};var be={"to-boolean":Wt,"to-color":Zt,"to-number":Ht,"to-string":Gt},we=function(t,e){this.type=t,this.args=e};we.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var r=t[0];if(("to-boolean"===r||"to-string"===r)&&2!==t.length)return e.error("Expected one argument.");for(var n=be[r],i=[],a=1;a4?"Invalid rbga value "+JSON.stringify(e)+": expected an array containing either three or four numeric values.":he(e[0],e[1],e[2],e[3])))return new oe(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new ge(r||"Could not parse color from value '"+("string"==typeof e?e:String(JSON.stringify(e)))+"'")}if("number"===this.type.kind){for(var o=null,s=0,l=this.args;s=e[2]||t[1]<=e[1]||t[3]>=e[3])}function Ie(t,e){var r=function(t){return(180+t)/360}(t[0]),n=function(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}(t[1]),i=Math.pow(2,e.z);return[Math.round(r*i*Se),Math.round(n*i*Se)]}function Le(t,e,r){var n=t[0]-e[0],i=t[1]-e[1],a=t[0]-r[0],o=t[1]-r[1];return n*o-a*i==0&&n*a<=0&&i*o<=0}function Pe(t,e,r){return e[1]>t[1]!=r[1]>t[1]&&t[0]<(r[0]-e[0])*(t[1]-e[1])/(r[1]-e[1])+e[0]}function ze(t,e){for(var r=!1,n=0,i=e.length;n0&&h<0||u<0&&h>0}function Re(t,e,r,n){var i=[e[0]-t[0],e[1]-t[1]];return 0!==function(t,e){return t[0]*e[1]-t[1]*e[0]}([n[0]-r[0],n[1]-r[1]],i)&&!(!Oe(t,e,r,n)||!Oe(r,n,t,e))}function Fe(t,e,r){for(var n=0,i=r;nr[2]){var i=.5*n,a=t[0]-r[0]>i?-n:r[0]-t[0]>i?n:0;0===a&&(a=t[0]-r[2]>i?-n:r[2]-t[0]>i?n:0),t[0]+=a}Ee(e,t)}function qe(t,e,r,n){for(var i=Math.pow(2,n.z)*Se,a=[n.x*Se,n.y*Se],o=[],s=0,l=t;s=0)return!1;var r=!0;return t.eachChild((function(t){r&&!Ye(t,e)&&(r=!1)})),r}Ge.parse=function(t,e){if(2!==t.length)return e.error("'within' expression requires exactly one argument, but found "+(t.length-1)+" instead.");if(pe(t[1])){var r=t[1];if("FeatureCollection"===r.type)for(var n=0;ne))throw new ge("Input is not a number.");o=s-1}return 0}$e.prototype.parse=function(t,e,r,n,i){return void 0===i&&(i={}),e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)},$e.prototype._parse=function(t,e){function r(t,e,r){return"assert"===r?new ve(e,[t]):"coerce"===r?new we(e,[t]):t}if((null===t||"string"==typeof t||"boolean"==typeof t||"number"==typeof t)&&(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var n=t[0];if("string"!=typeof n)return this.error("Expression name must be a string, but found "+typeof n+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var i=this.registry[n];if(i){var a=i.parse(t,this);if(!a)return null;if(this.expectedType){var o=this.expectedType,s=a.type;if("string"!==o.kind&&"number"!==o.kind&&"boolean"!==o.kind&&"object"!==o.kind&&"array"!==o.kind||"value"!==s.kind)if("color"!==o.kind&&"formatted"!==o.kind&&"resolvedImage"!==o.kind||"value"!==s.kind&&"string"!==s.kind){if(this.checkSubtype(o,s))return null}else a=r(a,o,e.typeAnnotation||"coerce");else a=r(a,o,e.typeAnnotation||"assert")}if(!(a instanceof me)&&"resolvedImage"!==a.type.kind&&Ke(a)){var l=new Ae;try{a=new me(a.type,a.evaluate(l))}catch(t){return this.error(t.message),null}}return a}return this.error('Unknown expression "'+n+'". If you wanted a literal array, use ["literal", [...]].',0)}return typeof t>"u"?this.error("'undefined' value invalid. Use null instead."):"object"==typeof t?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof t+" instead.")},$e.prototype.concat=function(t,e,r){var n="number"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new $e(this.registry,n,e||null,i,this.errors)},$e.prototype.error=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];var n=""+this.key+e.map((function(t){return"["+t+"]"})).join("");this.errors.push(new Ut(n,t))},$e.prototype.checkSubtype=function(t,e){var r=re(t,e);return r&&this.error(r),r};var Qe=function(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var n=0,i=r;n=o)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',l);var u=e.parse(s,c,i);if(!u)return null;i=i||u.type,n.push([o,u])}return new Qe(i,r,n)},Qe.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[Je(e,n)].evaluate(t)},Qe.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var er=Object.freeze({__proto__:null,number:tr,color:function(t,e,r){return new oe(tr(t.r,e.r,r),tr(t.g,e.g,r),tr(t.b,e.b,r),tr(t.a,e.a,r))},array:function(t,e,r){return t.map((function(t,n){return tr(t,e[n],r)}))}}),rr=.95047,nr=1.08883,ir=4/29,ar=6/29,or=3*ar*ar,sr=ar*ar*ar,lr=Math.PI/180,cr=180/Math.PI;function ur(t){return t>sr?Math.pow(t,1/3):t/or+ir}function hr(t){return t>ar?t*t*t:or*(t-ir)}function pr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function fr(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function dr(t){var e=fr(t.r),r=fr(t.g),n=fr(t.b),i=ur((.4124564*e+.3575761*r+.1804375*n)/rr),a=ur((.2126729*e+.7151522*r+.072175*n)/1);return{l:116*a-16,a:500*(i-a),b:200*(a-ur((.0193339*e+.119192*r+.9503041*n)/nr)),alpha:t.a}}function mr(t){var e=(t.l+16)/116,r=isNaN(t.a)?e:e+t.a/500,n=isNaN(t.b)?e:e-t.b/200;return e=1*hr(e),r=rr*hr(r),n=nr*hr(n),new oe(pr(3.2404542*r-1.5371385*e-.4985314*n),pr(-.969266*r+1.8760108*e+.041556*n),pr(.0556434*r-.2040259*e+1.0572252*n),t.alpha)}function gr(t,e,r){var n=e-t;return t+r*(n>180||n<-180?n-360*Math.round(n/360):n)}var yr={forward:dr,reverse:mr,interpolate:function(t,e,r){return{l:tr(t.l,e.l,r),a:tr(t.a,e.a,r),b:tr(t.b,e.b,r),alpha:tr(t.alpha,e.alpha,r)}}},vr={forward:function(t){var e=dr(t),r=e.l,n=e.a,i=e.b,a=Math.atan2(i,n)*cr;return{h:a<0?a+360:a,c:Math.sqrt(n*n+i*i),l:r,alpha:t.a}},reverse:function(t){var e=t.h*lr,r=t.c;return mr({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return{h:gr(t.h,e.h,r),c:tr(t.c,e.c,r),l:tr(t.l,e.l,r),alpha:tr(t.alpha,e.alpha,r)}}},xr=Object.freeze({__proto__:null,lab:yr,hcl:vr}),_r=function(t,e,r,n,i){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var a=0,o=i;a1})))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:s}}if(t.length-1<4)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");if(!(i=e.parse(i,2,Ht)))return null;var l=[],c=null;"interpolate-hcl"===r||"interpolate-lab"===r?c=Zt:e.expectedType&&"value"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u=h)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',f);var m=e.parse(p,d,c);if(!m)return null;c=c||m.type,l.push([h,m])}return"number"===c.kind||"color"===c.kind||"array"===c.kind&&"number"===c.itemType.kind&&"number"==typeof c.N?new _r(c,r,n,i,l):e.error("Type "+te(c)+" is not interpolatable.")},_r.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);var a=Je(e,n),o=e[a],s=e[a+1],l=_r.interpolationFactor(this.interpolation,n,o,s),c=r[a].evaluate(t),u=r[a+1].evaluate(t);return"interpolate"===this.operator?er[this.type.kind.toLowerCase()](c,u,l):"interpolate-hcl"===this.operator?vr.reverse(vr.interpolate(vr.forward(c),vr.forward(u),l)):yr.reverse(yr.interpolate(yr.forward(c),yr.forward(u),l))},_r.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e=r.length)throw new ge("Array index out of bounds: "+e+" > "+(r.length-1)+".");if(e!==Math.floor(e))throw new ge("Array index must be an integer, but found "+e+" instead.");return r[e]},Ar.prototype.eachChild=function(t){t(this.index),t(this.input)},Ar.prototype.outputDefined=function(){return!1},Ar.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var kr=function(t,e){this.type=Wt,this.needle=t,this.haystack=e};kr.parse=function(t,e){if(3!==t.length)return e.error("Expected 2 arguments, but found "+(t.length-1)+" instead.");var r=e.parse(t[1],1,Xt),n=e.parse(t[2],2,Xt);return r&&n?ne(r.type,[Wt,Gt,Ht,qt,Xt])?new kr(r,n):e.error("Expected first argument to be of type boolean, string, number or null, but found "+te(r.type)+" instead"):null},kr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!ie(e,["boolean","string","number","null"]))throw new ge("Expected first argument to be of type boolean, string, number or null, but found "+te(fe(e))+" instead.");if(!ie(r,["string","array"]))throw new ge("Expected second argument to be of type array or string, but found "+te(fe(r))+" instead.");return r.indexOf(e)>=0},kr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},kr.prototype.outputDefined=function(){return!0},kr.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var Mr=function(t,e,r){this.type=Ht,this.needle=t,this.haystack=e,this.fromIndex=r};Mr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var r=e.parse(t[1],1,Xt),n=e.parse(t[2],2,Xt);if(!r||!n)return null;if(!ne(r.type,[Wt,Gt,Ht,qt,Xt]))return e.error("Expected first argument to be of type boolean, string, number or null, but found "+te(r.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,Ht);return i?new Mr(r,n,i):null}return new Mr(r,n)},Mr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!ie(e,["boolean","string","number","null"]))throw new ge("Expected first argument to be of type boolean, string, number or null, but found "+te(fe(e))+" instead.");if(!ie(r,["string","array"]))throw new ge("Expected second argument to be of type array or string, but found "+te(fe(r))+" instead.");if(this.fromIndex){var n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)},Mr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},Mr.prototype.outputDefined=function(){return!1},Mr.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),t]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var Sr=function(t,e,r,n,i,a){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a};Sr.parse=function(t,e){if(t.length<5)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if(t.length%2!=1)return e.error("Expected an even number of arguments.");var r,n;e.expectedType&&"value"!==e.expectedType.kind&&(n=e.expectedType);for(var i={},a=[],o=2;oNumber.MAX_SAFE_INTEGER)return c.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"==typeof p&&Math.floor(p)!==p)return c.error("Numeric branch labels must be integer values.");if(r){if(c.checkSubtype(r,fe(p)))return null}else r=fe(p);if(typeof i[String(p)]<"u")return c.error("Branch labels must be unique.");i[String(p)]=a.length}var f=e.parse(l,o,n);if(!f)return null;n=n||f.type,a.push(f)}var d=e.parse(t[1],1,Xt);if(!d)return null;var m=e.parse(t[t.length-1],t.length-1,n);return!m||"value"!==d.type.kind&&e.concat(1).checkSubtype(r,d.type)?null:new Sr(r,n,d,i,a,m)},Sr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(fe(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},Sr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},Sr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},Sr.prototype.serialize=function(){for(var t=this,e=["match",this.input.serialize()],r=[],n={},i=0,a=Object.keys(this.cases).sort();i=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var r=e.parse(t[1],1,Xt),n=e.parse(t[2],2,Ht);if(!r||!n)return null;if(!ne(r.type,[Qt(Xt),Gt,Xt]))return e.error("Expected first argument to be of type array or string, but found "+te(r.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,Ht);return i?new Cr(r.type,r,n,i):null}return new Cr(r.type,r,n)},Cr.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!ie(e,["string","array"]))throw new ge("Expected first argument to be of type array or string, but found "+te(fe(e))+" instead.");if(this.endIndex){var n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)},Cr.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},Cr.prototype.outputDefined=function(){return!1},Cr.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),t]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var zr=Pr("==",(function(t,e,r){return e===r}),Lr),Dr=Pr("!=",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!Lr(0,e,r,n)})),Or=Pr("<",(function(t,e,r){return e",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),Fr=Pr("<=",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),Br=Pr(">=",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0})),jr=function(t,e,r,n,i){this.type=Gt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i};jr.parse=function(t,e){if(3!==t.length)return e.error("Expected two arguments.");var r=e.parse(t[1],1,Ht);if(!r)return null;var n=t[2];if("object"!=typeof n||Array.isArray(n))return e.error("NumberFormat options argument must be an object.");var i=null;if(n.locale&&!(i=e.parse(n.locale,1,Gt)))return null;var a=null;if(n.currency&&!(a=e.parse(n.currency,1,Gt)))return null;var o=null;if(n["min-fraction-digits"]&&!(o=e.parse(n["min-fraction-digits"],1,Ht)))return null;var s=null;return n["max-fraction-digits"]&&!(s=e.parse(n["max-fraction-digits"],1,Ht))?null:new jr(r,i,a,o,s)},jr.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},jr.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},jr.prototype.outputDefined=function(){return!1},jr.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),t]};var Nr=function(t){this.type=Ht,this.input=t};Nr.parse=function(t,e){if(2!==t.length)return e.error("Expected 1 argument, but found "+(t.length-1)+" instead.");var r=e.parse(t[1],1);return r?"array"!==r.type.kind&&"string"!==r.type.kind&&"value"!==r.type.kind?e.error("Expected argument of type string or array, but found "+te(r.type)+" instead."):new Nr(r):null},Nr.prototype.evaluate=function(t){var e=this.input.evaluate(t);if("string"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new ge("Expected value to be of type string or array, but found "+te(fe(e))+" instead.")},Nr.prototype.eachChild=function(t){t(this.input)},Nr.prototype.outputDefined=function(){return!1},Nr.prototype.serialize=function(){var t=["length"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Ur={"==":zr,"!=":Dr,">":Rr,"<":Or,">=":Br,"<=":Fr,array:ve,at:Ar,boolean:ve,case:Er,coalesce:wr,collator:Me,format:xe,image:_e,in:kr,"index-of":Mr,interpolate:_r,"interpolate-hcl":_r,"interpolate-lab":_r,length:Nr,let:Tr,literal:me,match:Sr,number:ve,"number-format":jr,object:ve,slice:Cr,step:Qe,string:ve,"to-boolean":we,"to-color":we,"to-number":we,"to-string":we,var:Xe,within:Ge};function Vr(t,e){var r=e[0],n=e[1],i=e[2],a=e[3];r=r.evaluate(t),n=n.evaluate(t),i=i.evaluate(t);var o=a?a.evaluate(t):1,s=he(r,n,i,o);if(s)throw new ge(s);return new oe(r/255*o,n/255*o,i/255*o,o)}function qr(t,e){return t in e}function Hr(t,e){var r=e[t];return typeof r>"u"?null:r}function Gr(t){return{type:t}}function Wr(t){return{result:"success",value:t}}function Zr(t){return{result:"error",value:t}}function Yr(t){return"data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function Xr(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function $r(t){return!!t.expression&&t.expression.interpolated}function Kr(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function Jr(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}function Qr(t){return t}function tn(t,e){var r,n,i,a="color"===e.type,o=t.stops&&"object"==typeof t.stops[0][0],s=o||void 0!==t.property,l=o||!s,c=t.type||($r(e)?"exponential":"interval");if(a&&((t=Bt({},t)).stops&&(t.stops=t.stops.map((function(t){return[t[0],oe.parse(t[1])]}))),t.default?t.default=oe.parse(t.default):t.default=oe.parse(e.default)),t.colorSpace&&"rgb"!==t.colorSpace&&!xr[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);if("exponential"===c)r=an;else if("interval"===c)r=nn;else if("categorical"===c){r=rn,n=Object.create(null);for(var u=0,h=t.stops;u=t.stops[n-1][0])return t.stops[n-1][1];var i=Je(t.stops.map((function(t){return t[0]})),r);return t.stops[i][1]}function an(t,e,r){var n=void 0!==t.base?t.base:1;if("number"!==Kr(r))return en(t.default,e.default);var i=t.stops.length;if(1===i||r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];var a=Je(t.stops.map((function(t){return t[0]})),r),o=function(t,e,r,n){var i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=er[e.type]||Qr;if(t.colorSpace&&"rgb"!==t.colorSpace){var u=xr[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return"function"==typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r=s.evaluate.apply(void 0,t),n=l.evaluate.apply(void 0,t);if(void 0!==r&&void 0!==n)return c(r,n,o)}}:c(s,l,o)}function on(t,e,r){return"color"===e.type?r=oe.parse(r):"formatted"===e.type?r=ce.fromString(r.toString()):"resolvedImage"===e.type?r=ue.fromString(r.toString()):Kr(r)!==e.type&&("enum"!==e.type||!e.values[r])&&(r=void 0),en(r,t.default,e.default)}ke.register(Ur,{error:[{kind:"error"},[Gt],function(t,e){var r=e[0];throw new ge(r.evaluate(t))}],typeof:[Gt,[Xt],function(t,e){return te(fe(e[0].evaluate(t)))}],"to-rgba":[Qt(Ht,4),[Zt],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[Zt,[Ht,Ht,Ht],Vr],rgba:[Zt,[Ht,Ht,Ht,Ht],Vr],has:{type:Wt,overloads:[[[Gt],function(t,e){return qr(e[0].evaluate(t),t.properties())}],[[Gt,Yt],function(t,e){var r=e[0],n=e[1];return qr(r.evaluate(t),n.evaluate(t))}]]},get:{type:Xt,overloads:[[[Gt],function(t,e){return Hr(e[0].evaluate(t),t.properties())}],[[Gt,Yt],function(t,e){var r=e[0],n=e[1];return Hr(r.evaluate(t),n.evaluate(t))}]]},"feature-state":[Xt,[Gt],function(t,e){return Hr(e[0].evaluate(t),t.featureState||{})}],properties:[Yt,[],function(t){return t.properties()}],"geometry-type":[Gt,[],function(t){return t.geometryType()}],id:[Xt,[],function(t){return t.id()}],zoom:[Ht,[],function(t){return t.globals.zoom}],"heatmap-density":[Ht,[],function(t){return t.globals.heatmapDensity||0}],"line-progress":[Ht,[],function(t){return t.globals.lineProgress||0}],accumulated:[Xt,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],"+":[Ht,Gr(Ht),function(t,e){for(var r=0,n=0,i=e;n":[Wt,[Gt,Xt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i>a}],"filter-id->":[Wt,[Xt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n>i}],"filter-<=":[Wt,[Gt,Xt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i<=a}],"filter-id-<=":[Wt,[Xt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n<=i}],"filter->=":[Wt,[Gt,Xt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i>=a}],"filter-id->=":[Wt,[Xt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n>=i}],"filter-has":[Wt,[Xt],function(t,e){return e[0].value in t.properties()}],"filter-has-id":[Wt,[],function(t){return null!==t.id()&&void 0!==t.id()}],"filter-type-in":[Wt,[Qt(Gt)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],"filter-id-in":[Wt,[Qt(Xt)],function(t,e){return e[0].value.indexOf(t.id())>=0}],"filter-in-small":[Wt,[Gt,Qt(Xt)],function(t,e){var r=e[0];return e[1].value.indexOf(t.properties()[r.value])>=0}],"filter-in-large":[Wt,[Gt,Qt(Xt)],function(t,e){var r=e[0],n=e[1];return function(t,e,r,n){for(;r<=n;){var i=r+n>>1;if(e[i]===t)return!0;e[i]>t?n=i-1:r=i+1}return!1}(t.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:Wt,overloads:[[[Wt,Wt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)&&n.evaluate(t)}],[Gr(Wt),function(t,e){for(var r=0,n=e;r0&&"string"==typeof t[0]&&t[0]in Ur}function cn(t,e){var r=new $e(Ur,[],e?function(t){var e={color:Zt,string:Gt,number:Ht,enum:Gt,boolean:Wt,formatted:Kt,resolvedImage:Jt};return"array"===t.type?Qt(e[t.value]||Xt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return n?Wr(new sn(n,e)):Zr(r.errors)}sn.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},sn.prototype.evaluate=function(t,e,r,n,i,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a||null;try{var o=this.expression.evaluate(this._evaluator);if(null==o||"number"==typeof o&&o!=o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new ge("Expected value to be one of "+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(", ")+", but found "+JSON.stringify(o)+" instead.");return o}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,typeof console<"u"&&console.warn(t.message)),this._defaultValue}};var un=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!Ze(e.expression)};un.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)},un.prototype.evaluate=function(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)};var hn=function(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent="camera"!==t&&!Ze(e.expression),this.interpolationType=n};function pn(t,e){if("error"===(t=cn(t,e)).result)return t;var r=t.value.expression,n=We(r);if(!n&&!Yr(e))return Zr([new Ut("","data expressions not supported")]);var i=Ye(r,["zoom"]);if(!i&&!Xr(e))return Zr([new Ut("","zoom expressions not supported")]);var a=dn(r);if(!a&&!i)return Zr([new Ut("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(a instanceof Ut)return Zr([a]);if(a instanceof _r&&!$r(e))return Zr([new Ut("",'"interpolate" expressions cannot be used with this property')]);if(!a)return Wr(new un(n?"constant":"source",t.value));var o=a instanceof _r?a.interpolation:void 0;return Wr(new hn(n?"camera":"composite",t.value,a.labels,o))}hn.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)},hn.prototype.evaluate=function(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)},hn.prototype.interpolationFactor=function(t,e,r){return this.interpolationType?_r.interpolationFactor(this.interpolationType,t,e,r):0};var fn=function(t,e){this._parameters=t,this._specification=e,Bt(this,tn(this._parameters,this._specification))};function dn(t){var e=null;if(t instanceof Tr)e=dn(t.result);else if(t instanceof wr)for(var r=0,n=t.args;rn.maximum?[new Rt(e,r,r+" is greater than the maximum value "+n.maximum)]:[]}function vn(t){var e,r,n,i=t.valueSpec,a=jt(t.value.type),o={},s="categorical"!==a&&void 0===t.value.property,l=!s,c="array"===Kr(t.value.stops)&&"array"===Kr(t.value.stops[0])&&"object"===Kr(t.value.stops[0][0]),u=mn({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if("identity"===a)return[new Rt(t.key,t.value,'identity function may not have a "stops" property')];var e=[],r=t.value;return e=e.concat(gn({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),"array"===Kr(r)&&0===r.length&&e.push(new Rt(t.key,r,"array must have at least one stop")),e},default:function(t){return Vn({key:t.key,value:t.value,valueSpec:i,style:t.style,styleSpec:t.styleSpec})}}});return"identity"===a&&s&&u.push(new Rt(t.key,t.value,'missing required property "property"')),"identity"!==a&&!t.value.stops&&u.push(new Rt(t.key,t.value,'missing required property "stops"')),"exponential"===a&&t.valueSpec.expression&&!$r(t.valueSpec)&&u.push(new Rt(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!Yr(t.valueSpec)?u.push(new Rt(t.key,t.value,"property functions not supported")):s&&!Xr(t.valueSpec)&&u.push(new Rt(t.key,t.value,"zoom functions not supported"))),("categorical"===a||c)&&void 0===t.value.property&&u.push(new Rt(t.key,t.value,'"property" property is required')),u;function h(t){var e=[],a=t.value,s=t.key;if("array"!==Kr(a))return[new Rt(s,a,"array expected, "+Kr(a)+" found")];if(2!==a.length)return[new Rt(s,a,"array length 2 expected, length "+a.length+" found")];if(c){if("object"!==Kr(a[0]))return[new Rt(s,a,"object expected, "+Kr(a[0])+" found")];if(void 0===a[0].zoom)return[new Rt(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new Rt(s,a,"object stop key must have value")];if(n&&n>jt(a[0].zoom))return[new Rt(s,a[0].zoom,"stop zoom values must appear in ascending order")];jt(a[0].zoom)!==n&&(n=jt(a[0].zoom),r=void 0,o={}),e=e.concat(mn({key:s+"[0]",value:a[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:yn,value:p}}))}else e=e.concat(p({key:s+"[0]",value:a[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},a));return ln(Nt(a[1]))?e.concat([new Rt(s+"[1]",a[1],"expressions are not allowed in function stops.")]):e.concat(Vn({key:s+"[1]",value:a[1],valueSpec:i,style:t.style,styleSpec:t.styleSpec}))}function p(t,n){var s=Kr(t.value),l=jt(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new Rt(t.key,c,s+" stop domain type must match previous stop domain type "+e)]}else e=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new Rt(t.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){var u="number expected, "+s+" found";return Yr(i)&&void 0===a&&(u+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Rt(t.key,c,u)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==r&&l=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!=typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(var e=0,r=t.slice(1);ee?1:0}function kn(t){if(!Array.isArray(t))return!1;if("within"===t[0])return!0;for(var e=1;e"===e||"<="===e||">="===e?Sn(t[1],t[2],e):"any"===e?function(t){return["any"].concat(t.map(Mn))}(t.slice(1)):"all"===e?["all"].concat(t.slice(1).map(Mn)):"none"===e?["all"].concat(t.slice(1).map(Mn).map(In)):"in"===e?En(t[1],t.slice(2)):"!in"===e?In(En(t[1],t.slice(2))):"has"===e?Cn(t[1]):"!has"===e?In(Cn(t[1])):"within"!==e||t}function Sn(t,e,r){switch(t){case"$type":return["filter-type-"+r,e];case"$id":return["filter-id-"+r,e];default:return["filter-"+r,t,e]}}function En(t,e){if(0===e.length)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((function(t){return typeof t!=typeof e[0]}))?["filter-in-large",t,["literal",e.sort(An)]]:["filter-in-small",t,["literal",e]]}}function Cn(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t]}}function In(t){return["!",t]}function Ln(t){return bn(Nt(t.value))?xn(Bt({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Pn(t)}function Pn(t){var e=t.value,r=t.key;if("array"!==Kr(e))return[new Rt(r,e,"array expected, "+Kr(e)+" found")];var n,i=t.styleSpec,a=[];if(e.length<1)return[new Rt(r,e,"filter array must have at least 1 element")];switch(a=a.concat(_n({key:r+"[0]",value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),jt(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===jt(e[1])&&a.push(new Rt(r,e,'"$type" cannot be use with operator "'+e[0]+'"'));case"==":case"!=":3!==e.length&&a.push(new Rt(r,e,'filter array for operator "'+e[0]+'" must have 3 elements'));case"in":case"!in":e.length>=2&&"string"!==(n=Kr(e[1]))&&a.push(new Rt(r+"[1]",e[1],"string expected, "+n+" found"));for(var o=2;o=u[f+0]&&n>=u[f+1])?(o[p]=!0,a.push(c[p])):o[p]=!1}}},ti.prototype._forEachCell=function(t,e,r,n,i,a,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(r),h=this._convertToCellCoord(n),p=l;p<=u;p++)for(var f=c;f<=h;f++){var d=this.d*f+p;if((!s||s(this._convertFromCellCoord(p),this._convertFromCellCoord(f),this._convertFromCellCoord(p+1),this._convertFromCellCoord(f+1)))&&i.call(this,t,e,r,n,d,a,o,s))return}},ti.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},ti.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},ti.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=Qn+this.cells.length+1+1,r=0,n=0;n=0)){var h=t[u];c[u]=ni[l].shallow.indexOf(u)>=0?h:li(h,e)}t instanceof Error&&(c.message=t.message)}if(c.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==l&&(c.$name=l),c}throw new Error("can't serialize object of type "+typeof t)}function ci(t){if(null==t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||oi(t)||si(t)||ArrayBuffer.isView(t)||t instanceof ei)return t;if(Array.isArray(t))return t.map(ci);if("object"==typeof t){var e=t.$name||"Object",r=ni[e].klass;if(!r)throw new Error("can't deserialize unregistered class "+e);if(r.deserialize)return r.deserialize(t);for(var n=Object.create(r.prototype),i=0,a=Object.keys(t);i=0?s:ci(s)}}return n}throw new Error("can't deserialize object of type "+typeof t)}var ui=function(){this.first=!0};ui.prototype.update=function(t,e){var r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},"Arabic Supplement":function(t){return t>=1872&&t<=1919},"Arabic Extended-A":function(t){return t>=2208&&t<=2303},"Hangul Jamo":function(t){return t>=4352&&t<=4607},"Unified Canadian Aboriginal Syllabics":function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(t){return t>=6320&&t<=6399},"General Punctuation":function(t){return t>=8192&&t<=8303},"Letterlike Symbols":function(t){return t>=8448&&t<=8527},"Number Forms":function(t){return t>=8528&&t<=8591},"Miscellaneous Technical":function(t){return t>=8960&&t<=9215},"Control Pictures":function(t){return t>=9216&&t<=9279},"Optical Character Recognition":function(t){return t>=9280&&t<=9311},"Enclosed Alphanumerics":function(t){return t>=9312&&t<=9471},"Geometric Shapes":function(t){return t>=9632&&t<=9727},"Miscellaneous Symbols":function(t){return t>=9728&&t<=9983},"Miscellaneous Symbols and Arrows":function(t){return t>=11008&&t<=11263},"CJK Radicals Supplement":function(t){return t>=11904&&t<=12031},"Kangxi Radicals":function(t){return t>=12032&&t<=12255},"Ideographic Description Characters":function(t){return t>=12272&&t<=12287},"CJK Symbols and Punctuation":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},"Hangul Compatibility Jamo":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},"Bopomofo Extended":function(t){return t>=12704&&t<=12735},"CJK Strokes":function(t){return t>=12736&&t<=12783},"Katakana Phonetic Extensions":function(t){return t>=12784&&t<=12799},"Enclosed CJK Letters and Months":function(t){return t>=12800&&t<=13055},"CJK Compatibility":function(t){return t>=13056&&t<=13311},"CJK Unified Ideographs Extension A":function(t){return t>=13312&&t<=19903},"Yijing Hexagram Symbols":function(t){return t>=19904&&t<=19967},"CJK Unified Ideographs":function(t){return t>=19968&&t<=40959},"Yi Syllables":function(t){return t>=40960&&t<=42127},"Yi Radicals":function(t){return t>=42128&&t<=42191},"Hangul Jamo Extended-A":function(t){return t>=43360&&t<=43391},"Hangul Syllables":function(t){return t>=44032&&t<=55215},"Hangul Jamo Extended-B":function(t){return t>=55216&&t<=55295},"Private Use Area":function(t){return t>=57344&&t<=63743},"CJK Compatibility Ideographs":function(t){return t>=63744&&t<=64255},"Arabic Presentation Forms-A":function(t){return t>=64336&&t<=65023},"Vertical Forms":function(t){return t>=65040&&t<=65055},"CJK Compatibility Forms":function(t){return t>=65072&&t<=65103},"Small Form Variants":function(t){return t>=65104&&t<=65135},"Arabic Presentation Forms-B":function(t){return t>=65136&&t<=65279},"Halfwidth and Fullwidth Forms":function(t){return t>=65280&&t<=65519}};function pi(t){for(var e=0,r=t;e=65097&&t<=65103)||hi["CJK Compatibility Ideographs"](t)||hi["CJK Compatibility"](t)||hi["CJK Radicals Supplement"](t)||hi["CJK Strokes"](t)||hi["CJK Symbols and Punctuation"](t)&&!(t>=12296&&t<=12305)&&!(t>=12308&&t<=12319)&&12336!==t||hi["CJK Unified Ideographs Extension A"](t)||hi["CJK Unified Ideographs"](t)||hi["Enclosed CJK Letters and Months"](t)||hi["Hangul Compatibility Jamo"](t)||hi["Hangul Jamo Extended-A"](t)||hi["Hangul Jamo Extended-B"](t)||hi["Hangul Jamo"](t)||hi["Hangul Syllables"](t)||hi.Hiragana(t)||hi["Ideographic Description Characters"](t)||hi.Kanbun(t)||hi["Kangxi Radicals"](t)||hi["Katakana Phonetic Extensions"](t)||hi.Katakana(t)&&12540!==t||!(!hi["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!hi["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||hi["Unified Canadian Aboriginal Syllabics"](t)||hi["Unified Canadian Aboriginal Syllabics Extended"](t)||hi["Vertical Forms"](t)||hi["Yijing Hexagram Symbols"](t)||hi["Yi Syllables"](t)||hi["Yi Radicals"](t))}function gi(t){return!(mi(t)||function(t){return!!(hi["Latin-1 Supplement"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||hi["General Punctuation"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||hi["Letterlike Symbols"](t)||hi["Number Forms"](t)||hi["Miscellaneous Technical"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||hi["Control Pictures"](t)&&9251!==t||hi["Optical Character Recognition"](t)||hi["Enclosed Alphanumerics"](t)||hi["Geometric Shapes"](t)||hi["Miscellaneous Symbols"](t)&&!(t>=9754&&t<=9759)||hi["Miscellaneous Symbols and Arrows"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||hi["CJK Symbols and Punctuation"](t)||hi.Katakana(t)||hi["Private Use Area"](t)||hi["CJK Compatibility Forms"](t)||hi["Small Form Variants"](t)||hi["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function yi(t){return hi.Arabic(t)||hi["Arabic Supplement"](t)||hi["Arabic Extended-A"](t)||hi["Arabic Presentation Forms-A"](t)||hi["Arabic Presentation Forms-B"](t)}function vi(t){return t>=1424&&t<=2303||hi["Arabic Presentation Forms-A"](t)||hi["Arabic Presentation Forms-B"](t)}function xi(t,e){return!(!e&&vi(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||hi.Khmer(t))}function _i(t){for(var e=0,r=t;e-1&&(ki="error"),Ai&&Ai(t)};function Ei(){Ci.fire(new Pt("pluginStateChange",{pluginStatus:ki,pluginURL:Mi}))}var Ci=new Dt,Ii=function(){return ki},Li=function(){if(ki!==bi||!Mi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");ki=wi,Ei(),Mi&&Tt({url:Mi},(function(t){t?Si(t):(ki=Ti,Ei())}))},Pi={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return ki===Ti||null!=Pi.applyArabicShaping},isLoading:function(){return ki===wi},setState:function(t){ki=t.pluginStatus,Mi=t.pluginURL},isParsed:function(){return null!=Pi.applyArabicShaping&&null!=Pi.processBidirectionalText&&null!=Pi.processStyledBidirectionalText},getPluginURL:function(){return Mi}},zi=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new ui,this.transition={})};zi.prototype.isSupportedScript=function(t){return function(t,e){for(var r=0,n=t;rthis.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}};var Di=function(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(Jr(t))return new fn(t,e);if(ln(t)){var r=pn(t,e);if("error"===r.result)throw new Error(r.value.map((function(t){return t.key+": "+t.message})).join(", "));return r.value}var n=t;return"string"==typeof t&&"color"===e.type&&(n=oe.parse(t)),{kind:"constant",evaluate:function(){return n}}}(void 0===e?t.specification.default:e,t.specification)};Di.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind},Di.prototype.possiblyEvaluate=function(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)};var Oi=function(t){this.property=t,this.value=new Di(t,void 0)};Oi.prototype.transitioned=function(t,e){return new Fi(this.property,this.value,e,f({},t.transition,this.transition),t.now)},Oi.prototype.untransitioned=function(){return new Fi(this.property,this.value,null,{},0)};var Ri=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};Ri.prototype.getValue=function(t){return w(this._values[t].value.value)},Ri.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Oi(this._values[t].property)),this._values[t].value=new Di(this._values[t].property,null===e?void 0:w(e))},Ri.prototype.getTransition=function(t){return w(this._values[t].transition)},Ri.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Oi(this._values[t].property)),this._values[t].transition=w(e)||void 0},Ri.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);ethis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}return i};var Bi=function(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)};Bi.prototype.possiblyEvaluate=function(t,e,r){for(var n=new Ui(this._properties),i=0,a=Object.keys(this._values);in.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},e.prototype.interpolate=function(t){return t},e}(qi),Gi=function(t){this.specification=t};Gi.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0!==t.value){if("constant"===t.expression.kind){var i=t.expression.evaluate(e,null,{},r,n);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new zi(Math.floor(e.zoom-1),e)),t.expression.evaluate(new zi(Math.floor(e.zoom),e)),t.expression.evaluate(new zi(Math.floor(e.zoom+1),e)),e)}},Gi.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},Gi.prototype.interpolate=function(t){return t};var Wi=function(t){this.specification=t};Wi.prototype.possiblyEvaluate=function(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)},Wi.prototype.interpolate=function(){return!1};var Zi=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var r=t[e];r.specification.overridable&&this.overridableProperties.push(e);var n=this.defaultPropertyValues[e]=new Di(r,void 0),i=this.defaultTransitionablePropertyValues[e]=new Oi(r);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}};ii("DataDrivenProperty",qi),ii("DataConstantProperty",Vi),ii("CrossFadedDataDrivenProperty",Hi),ii("CrossFadedProperty",Gi),ii("ColorRampProperty",Wi);var Yi="-transition",Xi=function(t){function e(e,r){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),r.layout&&(this._unevaluatedLayout=new ji(r.layout)),r.paint)){for(var n in this._transitionablePaint=new Ri(r.paint),e.paint)this.setPaintProperty(n,e.paint[n],{validate:!1});for(var i in e.layout)this.setLayoutProperty(i,e.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ui(r.paint)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return"visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e){var n="layers."+this.id+".layout."+t;if(this._validate($n,n,t,e,r))return}"visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e},e.prototype.getPaintProperty=function(t){return x(t,Yi)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e){var n="layers."+this.id+".paint."+t;if(this._validate(Xn,n,t,e,r))return!1}if(x(t,Yi))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;var i=this._transitionablePaint._values[t],a="cross-faded-data-driven"===i.property.specification["property-type"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var l=this._transitionablePaint._values[t].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(t,s,l)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,r){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),b(t,(function(t,e){return!(void 0===t||"layout"===e&&!Object.keys(t).length||"paint"===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,r,n,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&Kn(this,t.call(Zn,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:Ot,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof Ni&&Yr(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(Dt),$i={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Ki=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Ji=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function Qi(t,e){void 0===e&&(e=1);var r=0,n=0;return{members:t.map((function(t){var i=function(t){return $i[t].BYTES_PER_ELEMENT}(t.type),a=r=ta(r,Math.max(e,i)),o=t.components||1;return n=Math.max(n,i),r+=i*o,{name:t.name,type:t.type,components:o,offset:a}})),size:ta(r,Math.max(n,e)),alignment:e}}function ta(t,e){return Math.ceil(t/e)*e}Ji.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},Ji.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},Ji.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Ji.prototype.clear=function(){this.length=0},Ji.prototype.resize=function(t){this.reserve(t),this.length=t},Ji.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},Ji.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t},e}(Ji);ea.prototype.bytesPerElement=4,ii("StructArrayLayout2i4",ea);var ra=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=4*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,t},e}(Ji);ra.prototype.bytesPerElement=8,ii("StructArrayLayout4i8",ra);var na=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(Ji);na.prototype.bytesPerElement=12,ii("StructArrayLayout2i4i12",na);var ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,t},e}(Ji);ia.prototype.bytesPerElement=8,ii("StructArrayLayout2i4ub8",ia);var aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t},e}(Ji);aa.prototype.bytesPerElement=8,ii("StructArrayLayout2f8",aa);var oa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,i,a,o,s,l,c)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u){var h=10*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint16[h+8]=c,this.uint16[h+9]=u,t},e}(Ji);oa.prototype.bytesPerElement=20,ii("StructArrayLayout10ui20",oa);var sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h){var p=this.length;return this.resize(p+1),this.emplace(p,t,e,r,n,i,a,o,s,l,c,u,h)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,p){var f=12*t;return this.int16[f+0]=e,this.int16[f+1]=r,this.int16[f+2]=n,this.int16[f+3]=i,this.uint16[f+4]=a,this.uint16[f+5]=o,this.uint16[f+6]=s,this.uint16[f+7]=l,this.int16[f+8]=c,this.int16[f+9]=u,this.int16[f+10]=h,this.int16[f+11]=p,t},e}(Ji);sa.prototype.bytesPerElement=24,ii("StructArrayLayout4i4ui4i24",sa);var la=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t},e}(Ji);la.prototype.bytesPerElement=12,ii("StructArrayLayout3f12",la);var ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.uint32[r+0]=e,t},e}(Ji);ca.prototype.bytesPerElement=4,ii("StructArrayLayout1ul4",ca);var ua=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,i,a,o,s,l)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c){var u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(Ji);ua.prototype.bytesPerElement=20,ii("StructArrayLayout6i1ul2ui20",ua);var ha=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(Ji);ha.prototype.bytesPerElement=12,ii("StructArrayLayout2i2i2i12",ha);var pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i)},e.prototype.emplace=function(t,e,r,n,i,a){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,t},e}(Ji);pa.prototype.bytesPerElement=16,ii("StructArrayLayout2f1f2i16",pa);var fa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=12*t,o=3*t;return this.uint8[a+0]=e,this.uint8[a+1]=r,this.float32[o+1]=n,this.float32[o+2]=i,t},e}(Ji);fa.prototype.bytesPerElement=12,ii("StructArrayLayout2ub2f12",fa);var da=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t},e}(Ji);da.prototype.bytesPerElement=6,ii("StructArrayLayout3ui6",da);var ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g){var y=this.length;return this.resize(y+1),this.emplace(y,t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y){var v=24*t,x=12*t,_=48*t;return this.int16[v+0]=e,this.int16[v+1]=r,this.uint16[v+2]=n,this.uint16[v+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[v+10]=l,this.uint16[v+11]=c,this.uint16[v+12]=u,this.float32[x+7]=h,this.float32[x+8]=p,this.uint8[_+36]=f,this.uint8[_+37]=d,this.uint8[_+38]=m,this.uint32[x+10]=g,this.int16[v+22]=y,t},e}(Ji);ma.prototype.bytesPerElement=48,ii("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",ma);var ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S,E){var C=34*t,I=17*t;return this.int16[C+0]=e,this.int16[C+1]=r,this.int16[C+2]=n,this.int16[C+3]=i,this.int16[C+4]=a,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=p,this.uint16[C+12]=f,this.uint16[C+13]=d,this.uint16[C+14]=m,this.uint16[C+15]=g,this.uint16[C+16]=y,this.uint16[C+17]=v,this.uint16[C+18]=x,this.uint16[C+19]=_,this.uint16[C+20]=b,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[I+12]=A,this.float32[I+13]=k,this.float32[I+14]=M,this.float32[I+15]=S,this.float32[I+16]=E,t},e}(Ji);ga.prototype.bytesPerElement=68,ii("StructArrayLayout8i15ui1ul4f68",ga);var ya=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.float32[r+0]=e,t},e}(Ji);ya.prototype.bytesPerElement=4,ii("StructArrayLayout1f4",ya);var va=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t},e}(Ji);va.prototype.bytesPerElement=6,ii("StructArrayLayout3i6",va);var xa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=2*t,a=4*t;return this.uint32[i+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t},e}(Ji);xa.prototype.bytesPerElement=8,ii("StructArrayLayout1ul2ui8",xa);var _a=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t},e}(Ji);_a.prototype.bytesPerElement=4,ii("StructArrayLayout2ui4",_a);var ba=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.uint16[r+0]=e,t},e}(Ji);ba.prototype.bytesPerElement=2,ii("StructArrayLayout1ui2",ba);var wa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=4*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,t},e}(Ji);wa.prototype.bytesPerElement=16,ii("StructArrayLayout4f16",wa);var Ta=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return r.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},r.x1.get=function(){return this._structArray.int16[this._pos2+2]},r.y1.get=function(){return this._structArray.int16[this._pos2+3]},r.x2.get=function(){return this._structArray.int16[this._pos2+4]},r.y2.get=function(){return this._structArray.int16[this._pos2+5]},r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(e.prototype,r),e}(Ki);Ta.prototype.size=20;var Aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ta(this,t)},e}(ua);ii("CollisionBoxArray",Aa);var ka=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},r.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},r.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},r.segment.get=function(){return this._structArray.uint16[this._pos2+10]},r.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},r.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},r.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},r.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},r.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},r.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},r.placedOrientation.set=function(t){this._structArray.uint8[this._pos1+37]=t},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,r),e}(Ki);ka.prototype.size=48;var Ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new ka(this,t)},e}(ma);ii("PlacedSymbolArray",Ma);var Sa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},r.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},r.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},r.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},r.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},r.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},r.key.get=function(){return this._structArray.uint16[this._pos2+8]},r.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},r.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},r.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},r.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},r.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},r.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},r.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},r.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},r.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},r.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},r.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},r.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},r.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+12]=t},r.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},r.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},r.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},r.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(e.prototype,r),e}(Ki);Sa.prototype.size=68;var Ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Sa(this,t)},e}(ga);ii("SymbolInstanceArray",Ea);var Ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(ya);ii("GlyphOffsetArray",Ca);var Ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3*t+2]},e}(va);ii("SymbolLineVertexArray",Ia);var La=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(e.prototype,r),e}(Ki);La.prototype.size=8;var Pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new La(this,t)},e}(xa);ii("FeatureIndexArray",Pa);var za=Qi([{name:"a_pos",components:2,type:"Int16"}],4).members,Da=function(t){void 0===t&&(t=[]),this.segments=t};function Oa(t,e){return 256*(t=h(Math.floor(t),0,255))+h(Math.floor(e),0,255)}Da.prototype.prepareSegment=function(t,e,r,n){var i=this.segments[this.segments.length-1];return t>Da.MAX_VERTEX_ARRAY_LENGTH&&A("Max vertices per segment is "+Da.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+t),(!i||i.vertexLength+t>Da.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i},Da.prototype.get=function(){return this.segments},Da.prototype.destroy=function(){for(var t=0,e=this.segments;t>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(a>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0}})),Ba=e((function(t){t.exports=function(t,e){for(var r,n=t.length,i=e^n,a=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.charCodeAt(++a))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++a;switch(n){case 3:i^=(255&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}})),ja=Fa,Na=Fa,Ua=Ba;ja.murmur3=Na,ja.murmur2=Ua;var Va=function(){this.ids=[],this.positions=[],this.indexed=!1};Va.prototype.add=function(t,e,r,n){this.ids.push(Ha(t)),this.positions.push(e,r,n)},Va.prototype.getPositions=function(t){for(var e=Ha(t),r=0,n=this.ids.length-1;r>1;this.ids[i]>=e?n=i:r=i+1}for(var a=[];this.ids[r]===e;){var o=this.positions[3*r],s=this.positions[3*r+1],l=this.positions[3*r+2];a.push({index:o,start:s,end:l}),r++}return a},Va.serialize=function(t,e){var r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return Ga(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}},Va.deserialize=function(t){var e=new Va;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e};var qa=Math.pow(2,53)-1;function Ha(t){var e=+t;return!isNaN(e)&&e<=qa?e:ja(String(t))}function Ga(t,e,r,n){for(;r>1],a=r-1,o=n+1;;){do{a++}while(t[a]i);if(a>=o)break;Wa(t,a,o),Wa(e,3*a,3*o),Wa(e,3*a+1,3*o+1),Wa(e,3*a+2,3*o+2)}o-ro.x+1||lo.y+1)&&A("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return r}function yo(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?go(t):[]}}function vo(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2)}var xo=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new ea,this.indexArray=new da,this.segments=new Da,this.programConfigurations=new co(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function _o(t,e){for(var r=0;r1){if(Ao(t,e))return!0;for(var n=0;n1?t.distSqr(r):t.distSqr(r.sub(e)._mult(i)._add(e))}function Eo(t,e){for(var r,n,i,a=!1,o=0;oe.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(a=!a);return a}function Co(t,e){for(var r=!1,n=0,i=t.length-1;ne.y!=o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function Io(t,e,r){var n=r[0],i=r[2];if(t.xi.x&&e.x>i.x||t.yi.y&&e.y>i.y)return!1;var a=k(t,e,r[0]);return a!==k(t,e,r[1])||a!==k(t,e,r[2])||a!==k(t,e,r[3])}function Lo(t,e,r){var n=e.paint.get(t).value;return"constant"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function Po(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function zo(t,e,r,n,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);"viewport"===r&&o._rotate(-n);for(var s=[],l=0;l=po||u<0||u>=po)){var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),p=h.vertexLength;vo(this.layoutVertexArray,c,u,-1,-1),vo(this.layoutVertexArray,c,u,1,-1),vo(this.layoutVertexArray,c,u,1,1),vo(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(p,p+1,p+2),this.indexArray.emplaceBack(p,p+3,p+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)},ii("CircleBucket",xo,{omit:["layers"]});var Do=new Zi({"circle-sort-key":new qi(Ot.layout_circle["circle-sort-key"])}),Oo={paint:new Zi({"circle-radius":new qi(Ot.paint_circle["circle-radius"]),"circle-color":new qi(Ot.paint_circle["circle-color"]),"circle-blur":new qi(Ot.paint_circle["circle-blur"]),"circle-opacity":new qi(Ot.paint_circle["circle-opacity"]),"circle-translate":new Vi(Ot.paint_circle["circle-translate"]),"circle-translate-anchor":new Vi(Ot.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Vi(Ot.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Vi(Ot.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new qi(Ot.paint_circle["circle-stroke-width"]),"circle-stroke-color":new qi(Ot.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new qi(Ot.paint_circle["circle-stroke-opacity"])}),layout:Do},Ro=typeof Float32Array<"u"?Float32Array:Array;function Fo(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Bo(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],p=e[9],f=e[10],d=e[11],m=e[12],g=e[13],y=e[14],v=e[15],x=r[0],_=r[1],b=r[2],w=r[3];return t[0]=x*n+_*s+b*h+w*m,t[1]=x*i+_*l+b*p+w*g,t[2]=x*a+_*c+b*f+w*y,t[3]=x*o+_*u+b*d+w*v,x=r[4],_=r[5],b=r[6],w=r[7],t[4]=x*n+_*s+b*h+w*m,t[5]=x*i+_*l+b*p+w*g,t[6]=x*a+_*c+b*f+w*y,t[7]=x*o+_*u+b*d+w*v,x=r[8],_=r[9],b=r[10],w=r[11],t[8]=x*n+_*s+b*h+w*m,t[9]=x*i+_*l+b*p+w*g,t[10]=x*a+_*c+b*f+w*y,t[11]=x*o+_*u+b*d+w*v,x=r[12],_=r[13],b=r[14],w=r[15],t[12]=x*n+_*s+b*h+w*m,t[13]=x*i+_*l+b*p+w*g,t[14]=x*a+_*c+b*f+w*y,t[15]=x*o+_*u+b*d+w*v,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,r=arguments.length;r--;)e+=t[r]*t[r];return Math.sqrt(e)});var jo,No=Bo;function Uo(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}jo=new Ro(3),Ro!=Float32Array&&(jo[0]=0,jo[1]=0,jo[2]=0),function(){var t=new Ro(4);Ro!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();var Vo=(function(){var t=new Ro(2);Ro!=Float32Array&&(t[0]=0,t[1]=0)}(),function(t){function e(e){t.call(this,e,Oo)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new xo(t)},e.prototype.queryRadius=function(t){var e=t;return Lo("circle-radius",this,e)+Lo("circle-stroke-width",this,e)+Po(this.paint.get("circle-translate"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,a,o,s){for(var l=zo(t,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),c=this.paint.get("circle-radius").evaluate(e,r)+this.paint.get("circle-stroke-width").evaluate(e,r),u="map"===this.paint.get("circle-pitch-alignment"),h=u?l:function(t,e){return t.map((function(t){return qo(t,e)}))}(l,s),p=u?c*o:c,f=0,d=n;ft.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var o=t.data,s=e.data,l=0;l80*r){n=a=t[0],i=o=t[1];for(var d=r;da&&(a=s),l>o&&(o=l);c=0!==(c=Math.max(a-n,o-i))?1/c:0}return ss(p,f,r,n,i,c),f}function as(t,e,r,n,i){var a,o;if(i===Cs(t,e,r,n)>0)for(a=e;a=e;a-=n)o=Ms(a,t[a],t[a+1],o);return o&&_s(o,o.next)&&(Ss(o),o=o.next),o}function os(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!_s(n,n.next)&&0!==xs(n.prev,n,n.next))n=n.next;else{if(Ss(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function ss(t,e,r,n,i,a,o){if(t){!o&&a&&function(t,e,r,n){var i=t;do{null===i.z&&(i.z=ms(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,r,n,i,a,o,s,l,c=1;do{for(r=t,t=null,a=null,o=0;r;){for(o++,n=r,s=0,e=0;e0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;r=n}a.nextZ=null,c*=2}while(o>1)}(i)}(t,n,i,a);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,a?cs(t,n,i,a):ls(t))e.push(s.i/r),e.push(t.i/r),e.push(l.i/r),Ss(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?ss(t=us(os(t),e,r),e,r,n,i,a,2):2===o&&hs(t,e,r,n,i,a):ss(os(t),e,r,n,i,a,1);break}}}function ls(t){var e=t.prev,r=t,n=t.next;if(xs(e,r,n)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(ys(e.x,e.y,r.x,r.y,n.x,n.y,i.x,i.y)&&xs(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function cs(t,e,r,n){var i=t.prev,a=t,o=t.next;if(xs(i,a,o)>=0)return!1;for(var s=i.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,h=ms(s,l,e,r,n),p=ms(c,u,e,r,n),f=t.prevZ,d=t.nextZ;f&&f.z>=h&&d&&d.z<=p;){if(f!==t.prev&&f!==t.next&&ys(i.x,i.y,a.x,a.y,o.x,o.y,f.x,f.y)&&xs(f.prev,f,f.next)>=0||(f=f.prevZ,d!==t.prev&&d!==t.next&&ys(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&xs(d.prev,d,d.next)>=0))return!1;d=d.nextZ}for(;f&&f.z>=h;){if(f!==t.prev&&f!==t.next&&ys(i.x,i.y,a.x,a.y,o.x,o.y,f.x,f.y)&&xs(f.prev,f,f.next)>=0)return!1;f=f.prevZ}for(;d&&d.z<=p;){if(d!==t.prev&&d!==t.next&&ys(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&xs(d.prev,d,d.next)>=0)return!1;d=d.nextZ}return!0}function us(t,e,r){var n=t;do{var i=n.prev,a=n.next.next;!_s(i,a)&&bs(i,n,n.next,a)&&As(i,a)&&As(a,i)&&(e.push(i.i/r),e.push(n.i/r),e.push(a.i/r),Ss(n),Ss(n.next),n=t=a),n=n.next}while(n!==t);return os(n)}function hs(t,e,r,n,i,a){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&vs(o,s)){var l=ks(o,s);return o=os(o,o.next),l=os(l,l.next),ss(o,e,r,n,i,a),void ss(l,e,r,n,i,a)}s=s.next}o=o.next}while(o!==t)}function ps(t,e){return t.x-e.x}function fs(t,e){if(e=function(t,e){var r,n=e,i=t.x,a=t.y,o=-1/0;do{if(a<=n.y&&a>=n.next.y&&n.next.y!==n.y){var s=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>o){if(o=s,s===i){if(a===n.y)return n;if(a===n.next.y)return n.next}r=n.x=n.x&&n.x>=u&&i!==n.x&&ys(ar.x||n.x===r.x&&ds(r,n)))&&(r=n,p=l)),n=n.next}while(n!==c);return r}(t,e),e){var r=ks(e,t);os(e,e.next),os(r,r.next)}}function ds(t,e){return xs(t.prev,t,e.prev)<0&&xs(e.next,t,t.next)<0}function ms(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function gs(t){var e=t,r=t;do{(e.x=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function vs(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&bs(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(As(t,e)&&As(e,t)&&function(t,e){var r=t,n=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(xs(t.prev,t,e.prev)||xs(t,e.prev,e))||_s(t,e)&&xs(t.prev,t,t.next)>0&&xs(e.prev,e,e.next)>0)}function xs(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function _s(t,e){return t.x===e.x&&t.y===e.y}function bs(t,e,r,n){var i=Ts(xs(t,e,r)),a=Ts(xs(t,e,n)),o=Ts(xs(r,n,t)),s=Ts(xs(r,n,e));return!!(i!==a&&o!==s||0===i&&ws(t,r,e)||0===a&&ws(t,n,e)||0===o&&ws(r,t,n)||0===s&&ws(r,e,n))}function ws(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function Ts(t){return t>0?1:t<0?-1:0}function As(t,e){return xs(t.prev,t,t.next)<0?xs(t,e,t.next)>=0&&xs(t,t.prev,e)>=0:xs(t,e,t.prev)<0||xs(t,t.next,e)<0}function ks(t,e){var r=new Es(t.i,t.x,t.y),n=new Es(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function Ms(t,e,r,n){var i=new Es(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function Ss(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Es(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Cs(t,e,r,n){for(var i=0,a=e,o=r-n;ar;){if(n-r>600){var a=n-r+1,o=e-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Ls(t,e,Math.max(r,Math.floor(e-o*l/a+c)),Math.min(n,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],h=r,p=n;for(Ps(t,r,e),i(t[n],u)>0&&Ps(t,r,n);h0;)p--}0===i(t[r],u)?Ps(t,r,p):Ps(t,++p,n),p<=e&&(r=p+1),e<=p&&(n=p-1)}}function Ps(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function zs(t,e){return te?1:0}function Ds(t,e){var r=t.length;if(r<=1)return[t];for(var n,i,a=[],o=0;o1)for(var l=0;l0&&(n+=t[i-1].length,r.holes.push(n))}return r},rs.default=ns;var Bs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ea,this.indexArray=new da,this.indexArray2=new _a,this.programConfigurations=new co(t.layers,t.zoom),this.segments=new Da,this.segments2=new Da,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};Bs.prototype.populate=function(t,e,r){this.hasPattern=Rs("fill",this.layers,e);for(var n=this.layers[0].layout.get("fill-sort-key"),i=[],a=0,o=t;a>3}if(i--,1===n||2===n)o+=t.readSVarint(),s+=t.readSVarint(),1===n&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==n)throw new Error("unknown command "+n);e&&e.push(e[0].clone())}}return e&&l.push(e),l},Hs.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(n--,1===r||2===r)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())c&&(c=a);else if(7!==r)throw new Error("unknown command "+r)}return[o,l,s,c]},Hs.prototype.toGeoJSON=function(t,e,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Hs.types[this.type];function u(t){for(var e=0;e>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}(r))}Ys.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new qs(this._pbf,e,this.extent,this._keys,this._values)};function $s(t,e,r){if(3===t){var n=new Zs(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}var Ks={VectorTile:function(t,e){this.layers=t.readFields($s,{},e)},VectorTileFeature:qs,VectorTileLayer:Zs},Js=Ks.VectorTileFeature.types,Qs=Math.pow(2,13);function tl(t,e,r,n,i,a,o,s){t.emplaceBack(e,r,2*Math.floor(n*Qs)+o,i*Qs*2,a*Qs*2,Math.round(s))}var el=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new na,this.indexArray=new da,this.programConfigurations=new co(t.layers,t.zoom),this.segments=new Da,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function rl(t,e){return t.x===e.x&&(t.x<0||t.x>po)||t.y===e.y&&(t.y<0||t.y>po)}function nl(t){return t.every((function(t){return t.x<0}))||t.every((function(t){return t.x>po}))||t.every((function(t){return t.y<0}))||t.every((function(t){return t.y>po}))}el.prototype.populate=function(t,e,r){this.features=[],this.hasPattern=Rs("fill-extrusion",this.layers,e);for(var n=0,i=t;n=1){var v=d[g-1];if(!rl(y,v)){h.vertexLength+4>Da.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=y.sub(v)._perp()._unit(),_=v.dist(y);m+_>32768&&(m=0),tl(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,m),tl(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,m),m+=_,tl(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,0,m),tl(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,1,m);var b=h.vertexLength;this.indexArray.emplaceBack(b,b+2,b+1),this.indexArray.emplaceBack(b+1,b+2,b+3),h.vertexLength+=4,h.primitiveLength+=2}}}}if(h.vertexLength+l>Da.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),"Polygon"===Js[t.type]){for(var w=[],T=[],A=h.vertexLength,k=0,M=s;k=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c0;if(T&&y>c){var k=u.dist(f);if(k>2*h){var M=u.sub(u.sub(f)._mult(h/k)._round());this.updateDistance(f,M),this.addCurrentVertex(M,m,0,0,p),f=M}}var S=f&&d,E=S?r:s?"butt":n;if(S&&"round"===E&&(bi&&(E="bevel"),"bevel"===E&&(b>2&&(E="flipbevel"),b100)v=g.mult(-1);else{var C=b*m.add(g).mag()/m.sub(g).mag();v._perp()._mult(C*(A?-1:1))}this.addCurrentVertex(u,v,0,0,p),this.addCurrentVertex(u,v.mult(-1),0,0,p)}else if("bevel"===E||"fakeround"===E){var I=-Math.sqrt(b*b-1),L=A?I:0,P=A?0:I;if(f&&this.addCurrentVertex(u,m,L,P,p),"fakeround"===E)for(var z=Math.round(180*w/Math.PI/20),D=1;D2*h){var N=u.add(d.sub(u)._mult(h/j)._round());this.updateDistance(u,N),this.addCurrentVertex(N,g,0,0,p),u=N}}}}},fl.prototype.addCurrentVertex=function(t,e,r,n,i,a){void 0===a&&(a=!1);var o=e.x+e.y*r,s=e.y-e.x*r,l=-e.x+e.y*n,c=-e.y-e.x*n;this.addHalfVertex(t,o,s,a,!1,r,i),this.addHalfVertex(t,l,c,a,!0,-n,i),this.distance>pl/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,r,n,i,a))},fl.prototype.addHalfVertex=function(t,e,r,n,i,a,o){var s=t.x,l=t.y,c=.5*(this.lineClips?this.scaledDistance*(pl-1):this.scaledDistance);if(this.layoutVertexArray.emplaceBack((s<<1)+(n?1:0),(l<<1)+(i?1:0),Math.round(63*e)+128,Math.round(63*r)+128,1+(0===a?0:a<0?-1:1)|(63&c)<<2,c>>6),this.lineClips){var u=(this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start);this.layoutVertexArray2.emplaceBack(u,this.lineClipsArray.length)}var h=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,h),o.primitiveLength++),i?this.e2=h:this.e1=h},fl.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},fl.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},ii("LineBucket",fl,{omit:["layers","patternFeatures"]});var dl=new Zi({"line-cap":new Vi(Ot.layout_line["line-cap"]),"line-join":new qi(Ot.layout_line["line-join"]),"line-miter-limit":new Vi(Ot.layout_line["line-miter-limit"]),"line-round-limit":new Vi(Ot.layout_line["line-round-limit"]),"line-sort-key":new qi(Ot.layout_line["line-sort-key"])}),ml={paint:new Zi({"line-opacity":new qi(Ot.paint_line["line-opacity"]),"line-color":new qi(Ot.paint_line["line-color"]),"line-translate":new Vi(Ot.paint_line["line-translate"]),"line-translate-anchor":new Vi(Ot.paint_line["line-translate-anchor"]),"line-width":new qi(Ot.paint_line["line-width"]),"line-gap-width":new qi(Ot.paint_line["line-gap-width"]),"line-offset":new qi(Ot.paint_line["line-offset"]),"line-blur":new qi(Ot.paint_line["line-blur"]),"line-dasharray":new Gi(Ot.paint_line["line-dasharray"]),"line-pattern":new Hi(Ot.paint_line["line-pattern"]),"line-gradient":new Wi(Ot.paint_line["line-gradient"])}),layout:dl},gl=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.possiblyEvaluate=function(e,r){return r=new zi(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),t.prototype.possiblyEvaluate.call(this,e,r)},e.prototype.evaluate=function(e,r,n,i){return r=f({},r,{zoom:Math.floor(r.zoom)}),t.prototype.evaluate.call(this,e,r,n,i)},e}(qi),yl=new gl(ml.paint.properties["line-width"].specification);yl.useIntegerZoom=!0;var vl=function(t){function e(e){t.call(this,e,ml),this.gradientVersion=0}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){if("line-gradient"===t){var e=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=e._styleExpression.expression instanceof Qe,this.gradientVersion=(this.gradientVersion+1)%l}},e.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r),this.paint._values["line-floorwidth"]=yl.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,e)},e.prototype.createBucket=function(t){return new fl(t)},e.prototype.queryRadius=function(t){var e=t,r=xl(Lo("line-width",this,e),Lo("line-gap-width",this,e)),n=Lo("line-offset",this,e);return r/2+Math.abs(n)+Po(this.paint.get("line-translate"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s){var l=zo(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),o.angle,s),c=s/2*xl(this.paint.get("line-width").evaluate(e,r),this.paint.get("line-gap-width").evaluate(e,r)),u=this.paint.get("line-offset").evaluate(e,r);return u&&(n=function(t,e){for(var r=[],n=new a(0,0),i=0;i=3)for(var a=0;a0?e+2*t:t}var _l=Qi([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),bl=Qi([{name:"a_projected_pos",components:3,type:"Float32"}],4),wl=(Qi([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),Qi([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}])),Tl=(Qi([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]),Qi([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4)),Al=Qi([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function kl(t,e,r){return t.sections.forEach((function(t){t.text=function(t,e,r){var n=e.layout.get("text-transform").evaluate(r,{});return"uppercase"===n?t=t.toLocaleUpperCase():"lowercase"===n&&(t=t.toLocaleLowerCase()),Pi.applyArabicShaping&&(t=Pi.applyArabicShaping(t)),t}(t.text,e,r)})),t}Qi([{name:"triangle",components:3,type:"Uint16"}]),Qi([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),Qi([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),Qi([{type:"Float32",name:"offsetX"}]),Qi([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);var Ml={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"},Sl=24,El=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<>1,u=-7,h=r?i-1:0,p=r?-1:1,f=t[e+h];for(h+=p,a=f&(1<<-u)-1,f>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=p,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=p,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,n),a-=c}return(f?-1:1)*o*Math.pow(2,a-n)},Cl=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(o=o<0;t[r+f]=255&o,f+=d,o/=256,c-=8);t[r+f-d]|=128*m},Il=Ll;function Ll(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}Ll.Varint=0,Ll.Fixed64=1,Ll.Bytes=2,Ll.Fixed32=5;var Pl=4294967296,zl=1/Pl,Dl=typeof TextDecoder>"u"?null:new TextDecoder("utf8");function Ol(t){return t.type===Ll.Bytes?t.readVarint()+t.pos:t.pos+1}function Rl(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function Fl(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function Yl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function Xl(t,e,r){1===t&&r.readMessage($l,e)}function $l(t,e,r){if(3===t){var n=r.readMessage(Kl,{}),i=n.id,a=n.bitmap,o=n.width,s=n.height,l=n.left,c=n.top,u=n.advance;e.push({id:i,bitmap:new Yo({width:o+6,height:s+6},a),metrics:{width:o,height:s,left:l,top:c,advance:u}})}}function Kl(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}function Jl(t){for(var e=0,r=0,n=0,i=t;n=0;p--){var f=o[p];if(!(h.w>f.w||h.h>f.h)){if(h.x=f.x,h.y=f.y,l=Math.max(l,h.y+h.h),s=Math.max(s,h.x+h.w),h.w===f.w&&h.h===f.h){var d=o.pop();p>3,a=this.pos;this.type=7&n,t(i,e,this),this.pos===a&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Wl(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Yl(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Wl(this.buf,this.pos)+Wl(this.buf,this.pos+4)*Pl;return this.pos+=8,t},readSFixed64:function(){var t=Wl(this.buf,this.pos)+Yl(this.buf,this.pos+4)*Pl;return this.pos+=8,t},readFloat:function(){var t=El(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=El(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128||(e|=(127&(r=n[this.pos++]))<<7,r<128)||(e|=(127&(r=n[this.pos++]))<<14,r<128)||(e|=(127&(r=n[this.pos++]))<<21,r<128)?e:function(t,e,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128||(n|=(127&(i=a[r.pos++]))<<3,i<128)||(n|=(127&(i=a[r.pos++]))<<10,i<128)||(n|=(127&(i=a[r.pos++]))<<17,i<128)||(n|=(127&(i=a[r.pos++]))<<24,i<128)||(n|=(1&(i=a[r.pos++]))<<31,i<128))return function(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}(t,n,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(r=n[this.pos]))<<28,t,this)},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Dl?function(t,e,r){return Dl.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n="",i=e;i239?4:l>223?3:l>191?2:1;if(i+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(a=t[i+1],o=t[i+2],128==(192&a)&&128==(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(a=t[i+1],o=t[i+2],s=t[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),i+=u}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==Ll.Bytes)return t.push(this.readVarint(e));var r=Ol(this);for(t=t||[];this.pos127;);else if(e===Ll.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Ll.Fixed32)this.pos+=4;else{if(e!==Ll.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(!!t)},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,a=0;a55295&&n<57344){if(!i){n>56319||a+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&Rl(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),Cl(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),Cl(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r=128&&Rl(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,Ll.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Fl,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Bl,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,Ul,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,jl,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,Nl,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,Vl,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,ql,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,Hl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Gl,e)},writeBytesField:function(t,e){this.writeTag(t,Ll.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,Ll.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,Ll.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,Ll.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,Ll.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,Ll.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,Ll.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,Ll.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,Ll.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,Ll.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,!!e)}};var Ql=function(t,e){var r=e.pixelRatio,n=e.version,i=e.stretchX,a=e.stretchY,o=e.content;this.paddedRect=t,this.pixelRatio=r,this.stretchX=i,this.stretchY=a,this.content=o,this.version=n},tc={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};tc.tl.get=function(){return[this.paddedRect.x+1,this.paddedRect.y+1]},tc.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]},tc.tlbr.get=function(){return this.tl.concat(this.br)},tc.displaySize.get=function(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]},Object.defineProperties(Ql.prototype,tc);var ec=function(t,e){var r={},n={};this.haveRenderCallbacks=[];var i=[];this.addImages(t,r,i),this.addImages(e,n,i);var a=Jl(i),o=a.w,s=a.h,l=new Xo({width:o||1,height:s||1});for(var c in t){var u=t[c],h=r[c].paddedRect;Xo.copy(u.data,l,{x:0,y:0},{x:h.x+1,y:h.y+1},u.data)}for(var p in e){var f=e[p],d=n[p].paddedRect,m=d.x+1,g=d.y+1,y=f.data.width,v=f.data.height;Xo.copy(f.data,l,{x:0,y:0},{x:m,y:g},f.data),Xo.copy(f.data,l,{x:0,y:v-1},{x:m,y:g-1},{width:y,height:1}),Xo.copy(f.data,l,{x:0,y:0},{x:m,y:g+v},{width:y,height:1}),Xo.copy(f.data,l,{x:y-1,y:0},{x:m-1,y:g},{width:1,height:v}),Xo.copy(f.data,l,{x:0,y:0},{x:m+y,y:g},{width:1,height:v})}this.image=l,this.iconPositions=r,this.patternPositions=n};ec.prototype.addImages=function(t,e,r){for(var n in t){var i=t[n],a={x:0,y:0,w:i.data.width+2,h:i.data.height+2};r.push(a),e[n]=new Ql(a,i),i.hasRenderCallback&&this.haveRenderCallbacks.push(n)}},ec.prototype.patchUpdatedImages=function(t,e){for(var r in t.dispatchRenderCallbacks(this.haveRenderCallbacks),t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)},ec.prototype.patchUpdatedImage=function(t,e,r){if(t&&e&&t.version!==e.version){t.version=e.version;var n=t.tl,i=n[0],a=n[1];r.update(e.data,void 0,{x:i,y:a})}},ii("ImagePosition",Ql),ii("ImageAtlas",ec);var rc={horizontal:1,vertical:2,horizontalOnly:3},nc=-17,ic=function(){this.scale=1,this.fontStack="",this.imageName=null};ic.forText=function(t,e){var r=new ic;return r.scale=t||1,r.fontStack=e,r},ic.forImage=function(t){var e=new ic;return e.imageName=t,e};var ac=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function oc(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m){var g=ac.fromFeature(t,i);h===rc.vertical&&g.verticalizePunctuation();var y,v=Pi.processBidirectionalText,x=Pi.processStyledBidirectionalText;if(v&&1===g.sections.length){y=[];for(var _=0,b=v(g.toString(),dc(g,c,a,e,n,f,d));_0&&B>k&&(k=B)}else{var j=r[S.fontStack],N=j&&j[C];if(N&&N.rect)P=N.rect,L=N.metrics;else{var U=e[S.fontStack],V=U&&U[C];if(!V)continue;L=V.metrics}I=(b-S.scale)*Sl}O?(t.verticalizable=!0,A.push({glyph:C,imageName:z,x:p,y:f+I,vertical:O,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:P}),p+=D*S.scale+c):(A.push({glyph:C,imageName:z,x:p,y:f+I,vertical:O,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:P}),p+=L.advance*S.scale+c)}if(0!==A.length){var q=p-c;d=Math.max(q,d),gc(A,0,A.length-1,g,k)}p=0;var H=a*b+k;T.lineOffset=Math.max(k,w),f+=H,m=Math.max(H,m),++y}else f+=a,++y}var G=f-nc,W=mc(o),Z=W.horizontalAlign,Y=W.verticalAlign;(function(t,e,r,n,i,a,o,s,l){var c,u=(e-r)*i;c=a!==o?-s*n-nc:(-n*l+.5)*o;for(var h=0,p=t;h=0&&n>=t&&sc[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(t,r),this.sectionIndex=this.sectionIndex.slice(t,r)},ac.prototype.substring=function(t,e){var r=new ac;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r},ac.prototype.toString=function(){return this.text},ac.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,r){return Math.max(e,t.sections[r].scale)}),0)},ac.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(ic.forText(t.scale,t.fontStack||e));for(var r=this.sections.length-1,n=0;n=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)};var sc={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},lc={};function cc(t,e,r,n,i,a){if(e.imageName){var o=n[e.imageName];return o?o.displaySize[0]*e.scale*Sl/a+i:0}var s=r[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+i:0}function uc(t,e,r,n){var i=Math.pow(t-e,2);return n?t=0,u=0,h=0;h-r/2;){if(--o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;sn;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=h.dist(p)}return!0}function kc(t){for(var e=0,r=0;rc){var d=(c-l)/f,m=tr(h.x,p.x,d),g=tr(h.y,p.y,d),y=new vc(m,g,p.angleTo(h),u);return y._round(),!o||Ac(t,y,s,o,e)?y:void 0}l+=f}}function Cc(t,e,r,n,i,a,o,s,l){var c=Mc(n,a,o),u=Sc(n,i),h=u*o,p=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h=0&&_=0&&b=0&&p+c<=u){var w=new vc(_,b,v,d);w._round(),(!n||Ac(t,w,a,n,i))&&f.push(w)}}h+=y}return!s&&!f.length&&!o&&(f=Ic(t,h/2,r,n,i,a,o,!0,l)),f}function Lc(t,e,r,n,i){for(var o=[],s=0;s=n&&p.x>=n)&&(h.x>=n?h=new a(n,h.y+(p.y-h.y)*((n-h.x)/(p.x-h.x)))._round():p.x>=n&&(p=new a(n,h.y+(p.y-h.y)*((n-h.x)/(p.x-h.x)))._round()),!(h.y>=i&&p.y>=i)&&(h.y>=i?h=new a(h.x+(p.x-h.x)*((i-h.y)/(p.y-h.y)),i)._round():p.y>=i&&(p=new a(h.x+(p.x-h.x)*((i-h.y)/(p.y-h.y)),i)._round()),(!c||!h.equals(c[c.length-1]))&&(c=[h],o.push(c)),c.push(p)))))}return o}function Pc(t,e,r,n){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2,c=o.paddedRect.h-2,u=t.right-t.left,h=t.bottom-t.top,p=o.stretchX||[[0,l]],f=o.stretchY||[[0,c]],d=function(t,e){return t+e[1]-e[0]},m=p.reduce(d,0),g=f.reduce(d,0),y=l-m,v=c-g,x=0,_=m,b=0,w=g,T=0,A=y,k=0,M=v;if(o.content&&n){var S=o.content;x=zc(p,0,S[0]),b=zc(f,0,S[1]),_=zc(p,S[0],S[2]),w=zc(f,S[1],S[3]),T=S[0]-x,k=S[1]-b,A=S[2]-S[0]-_,M=S[3]-S[1]-w}var E=function(n,i,l,c){var p=Oc(n.stretch-x,_,u,t.left),f=Rc(n.fixed-T,A,n.stretch,m),d=Oc(i.stretch-b,w,h,t.top),y=Rc(i.fixed-k,M,i.stretch,g),v=Oc(l.stretch-x,_,u,t.left),S=Rc(l.fixed-T,A,l.stretch,m),E=Oc(c.stretch-b,w,h,t.top),C=Rc(c.fixed-k,M,c.stretch,g),I=new a(p,d),L=new a(v,d),P=new a(v,E),z=new a(p,E),D=new a(f/s,y/s),O=new a(S/s,C/s),R=e*Math.PI/180;if(R){var F=Math.sin(R),B=Math.cos(R),j=[B,-F,F,B];I._matMult(j),L._matMult(j),z._matMult(j),P._matMult(j)}var N=n.stretch+n.fixed,U=l.stretch+l.fixed,V=i.stretch+i.fixed,q=c.stretch+c.fixed;return{tl:I,tr:L,bl:z,br:P,tex:{x:o.paddedRect.x+1+N,y:o.paddedRect.y+1+V,w:U-N,h:q-V},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:O,minFontScaleX:A/s/u,minFontScaleY:M/s/h,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=Dc(p,y,m),I=Dc(f,v,g),L=0;L0&&(d=Math.max(10,d),this.circleDiameter=d)}else{var m=o.top*s-l,g=o.bottom*s+l,y=o.left*s-l,v=o.right*s+l,x=o.collisionPadding;if(x&&(y-=x[0]*s,m-=x[1]*s,v+=x[2]*s,g+=x[3]*s),u){var _=new a(y,m),b=new a(v,m),w=new a(y,g),T=new a(v,g),A=u*Math.PI/180;_._rotate(A),b._rotate(A),w._rotate(A),T._rotate(A),y=Math.min(_.x,b.x,w.x,T.x),v=Math.max(_.x,b.x,w.x,T.x),m=Math.min(_.y,b.y,w.y,T.y),g=Math.max(_.y,b.y,w.y,T.y)}t.emplaceBack(e.x,e.y,y,m,v,g,r,n,i)}this.boxEndIndex=t.length},Bc=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=jc),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function jc(t,e){return te?1:0}function Nc(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;co)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var h=o-n,p=s-i,f=Math.min(h,p),d=f/2,m=new Bc([],Uc);if(0===f)return new a(n,i);for(var g=n;gv.d||!v.d)&&(v=_,r&&console.log("found best %d after %d probes",Math.round(1e4*_.d)/1e4,x)),!(_.max-v.d<=e)&&(d=_.h/2,m.push(new Vc(_.p.x-d,_.p.y-d,d,t)),m.push(new Vc(_.p.x+d,_.p.y-d,d,t)),m.push(new Vc(_.p.x-d,_.p.y+d,d,t)),m.push(new Vc(_.p.x+d,_.p.y+d,d,t)),x+=4)}return r&&(console.log("num probes: "+x),console.log("best distance: "+v.d)),v.p}function Uc(t,e){return e.max-t.max}function Vc(t,e,r,n){this.p=new a(t,e),this.h=r,this.d=function(t,e){for(var r=!1,n=1/0,i=0;it.y!=u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(r=!r),n=Math.min(n,So(t,c,u))}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}Bc.prototype.push=function(t){this.data.push(t),this.length++,this._up(this.length-1)},Bc.prototype.pop=function(){if(0!==this.length){var t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}},Bc.prototype.peek=function(){return this.data[0]},Bc.prototype._up=function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n},Bc.prototype._down=function(t){for(var e=this.data,r=this.compare,n=this.length>>1,i=e[t];t=0)break;e[t]=o,t=a}e[t]=i};var qc=Number.POSITIVE_INFINITY;function Hc(t,e){return e[1]!==qc?function(t,e,r){var n=0,i=0;switch(e=Math.abs(e),r=Math.abs(r),t){case"top-right":case"top-left":case"top":i=r-7;break;case"bottom-right":case"bottom-left":case"bottom":i=7-r}switch(t){case"top-right":case"bottom-right":case"right":n=-e;break;case"top-left":case"bottom-left":case"left":n=e}return[n,i]}(t,e[0],e[1]):function(t,e){var r=0,n=0;e<0&&(e=0);var i=e/Math.sqrt(2);switch(t){case"top-right":case"top-left":n=i-7;break;case"bottom-right":case"bottom-left":n=7-i;break;case"bottom":n=7-e;break;case"top":n=e-7}switch(t){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=e;break;case"right":r=-e}return[r,n]}(t,e[0])}function Gc(t){switch(t){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}var Wc=255,Zc=32640;function Yc(t,e,r,n,i,o,s,l,c,u,h,p,f,d,m){var g=function(t,e,r,n,i,o,s,l){for(var c=n.layout.get("text-rotate").evaluate(o,{})*Math.PI/180,u=[],h=0,p=e.positionedLines;hZc&&A(t.layerIds[0]+': Value for "text-size" is >= '+Wc+'. Reduce your "text-size".'):"composite"===y.kind&&((v=[xc*d.compositeTextSizes[0].evaluate(s,{},m),xc*d.compositeTextSizes[1].evaluate(s,{},m)])[0]>Zc||v[1]>Zc)&&A(t.layerIds[0]+': Value for "text-size" is >= '+Wc+'. Reduce your "text-size".'),t.addSymbols(t.text,g,v,l,o,s,u,e,c.lineStartIndex,c.lineLength,f,m);for(var x=0,_=h;x<_.length;x+=1)p[_[x]]=t.text.placedSymbolArray.length-1;return 4*g.length}function Xc(t){for(var e in t)return t[e];return null}function $c(t,e,r,n){var i=t.compareText;if(e in i){for(var a=i[e],o=a.length-1;o>=0;o--)if(n.dist(a[o])0)&&("constant"!==a.value.kind||a.value.value.length>0),c="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=i.get("symbol-sort-key");if(this.features=[],l||c){for(var h=e.iconDependencies,p=e.glyphDependencies,f=e.availableImages,d=new zi(this.zoom),m=0,g=t;m=0;for(var z=0,D=A.sections;z=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=e[s-1].dist(e[s]));for(var l=0;l0},iu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},iu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},iu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},iu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},iu.prototype.addIndicesForPlacedSymbol=function(t,e){for(var r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs,i=r.vertexStartIndex;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r=0&&n.indexOf(t)===r&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},ii("SymbolBucket",iu,{omit:["layers","collisionBoxArray","features","compareText"]}),iu.MAX_GLYPHS=65535,iu.addDynamicAttributes=tu;var au=new Zi({"symbol-placement":new Vi(Ot.layout_symbol["symbol-placement"]),"symbol-spacing":new Vi(Ot.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Vi(Ot.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new qi(Ot.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Vi(Ot.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Vi(Ot.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Vi(Ot.layout_symbol["icon-ignore-placement"]),"icon-optional":new Vi(Ot.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Vi(Ot.layout_symbol["icon-rotation-alignment"]),"icon-size":new qi(Ot.layout_symbol["icon-size"]),"icon-text-fit":new Vi(Ot.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Vi(Ot.layout_symbol["icon-text-fit-padding"]),"icon-image":new qi(Ot.layout_symbol["icon-image"]),"icon-rotate":new qi(Ot.layout_symbol["icon-rotate"]),"icon-padding":new Vi(Ot.layout_symbol["icon-padding"]),"icon-keep-upright":new Vi(Ot.layout_symbol["icon-keep-upright"]),"icon-offset":new qi(Ot.layout_symbol["icon-offset"]),"icon-anchor":new qi(Ot.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Vi(Ot.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Vi(Ot.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Vi(Ot.layout_symbol["text-rotation-alignment"]),"text-field":new qi(Ot.layout_symbol["text-field"]),"text-font":new qi(Ot.layout_symbol["text-font"]),"text-size":new qi(Ot.layout_symbol["text-size"]),"text-max-width":new qi(Ot.layout_symbol["text-max-width"]),"text-line-height":new Vi(Ot.layout_symbol["text-line-height"]),"text-letter-spacing":new qi(Ot.layout_symbol["text-letter-spacing"]),"text-justify":new qi(Ot.layout_symbol["text-justify"]),"text-radial-offset":new qi(Ot.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Vi(Ot.layout_symbol["text-variable-anchor"]),"text-anchor":new qi(Ot.layout_symbol["text-anchor"]),"text-max-angle":new Vi(Ot.layout_symbol["text-max-angle"]),"text-writing-mode":new Vi(Ot.layout_symbol["text-writing-mode"]),"text-rotate":new qi(Ot.layout_symbol["text-rotate"]),"text-padding":new Vi(Ot.layout_symbol["text-padding"]),"text-keep-upright":new Vi(Ot.layout_symbol["text-keep-upright"]),"text-transform":new qi(Ot.layout_symbol["text-transform"]),"text-offset":new qi(Ot.layout_symbol["text-offset"]),"text-allow-overlap":new Vi(Ot.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Vi(Ot.layout_symbol["text-ignore-placement"]),"text-optional":new Vi(Ot.layout_symbol["text-optional"])}),ou=new Zi({"icon-opacity":new qi(Ot.paint_symbol["icon-opacity"]),"icon-color":new qi(Ot.paint_symbol["icon-color"]),"icon-halo-color":new qi(Ot.paint_symbol["icon-halo-color"]),"icon-halo-width":new qi(Ot.paint_symbol["icon-halo-width"]),"icon-halo-blur":new qi(Ot.paint_symbol["icon-halo-blur"]),"icon-translate":new Vi(Ot.paint_symbol["icon-translate"]),"icon-translate-anchor":new Vi(Ot.paint_symbol["icon-translate-anchor"]),"text-opacity":new qi(Ot.paint_symbol["text-opacity"]),"text-color":new qi(Ot.paint_symbol["text-color"],{runtimeType:Zt,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),"text-halo-color":new qi(Ot.paint_symbol["text-halo-color"]),"text-halo-width":new qi(Ot.paint_symbol["text-halo-width"]),"text-halo-blur":new qi(Ot.paint_symbol["text-halo-blur"]),"text-translate":new Vi(Ot.paint_symbol["text-translate"]),"text-translate-anchor":new Vi(Ot.paint_symbol["text-translate-anchor"])}),su={paint:ou,layout:au},lu=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:qt,this.defaultValue=t};lu.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},lu.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},lu.prototype.outputDefined=function(){return!1},lu.prototype.serialize=function(){return null},ii("FormatSectionOverride",lu,{omit:["defaultValue"]});var cu=function(t){function e(e){t.call(this,e,su)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.recalculate=function(e,r){if(t.prototype.recalculate.call(this,e,r),"auto"===this.layout.get("icon-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){var n=this.layout.get("text-writing-mode");if(n){for(var i=[],a=0,o=n;a",targetMapId:n,sourceMapId:a.mapId})}}},Tu.prototype.receive=function(t){var e=t.data,r=e.id;if(r&&(!e.targetMapId||this.mapId===e.targetMapId))if(""===e.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else S()||e.mustQueue?(this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,e)},Tu.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},Tu.prototype.processTask=function(t,e){var r=this;if(""===e.type){var n=this.callbacks[t];delete this.callbacks[t],n&&(e.error?n(ci(e.error)):n(null,ci(e.data)))}else{var i=!1,a=I(this.globalScope)?void 0:[],o=e.hasCallback?function(e,n){i=!0,delete r.cancelCallbacks[t],r.target.postMessage({id:t,type:"",sourceMapId:r.mapId,error:e?li(e):null,data:li(n,a)},a)}:function(t){i=!0},s=null,l=ci(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(".");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error("Could not find function "+e.type));!i&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},Tu.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var ku=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};ku.prototype.setNorthEast=function(t){return this._ne=t instanceof Su?new Su(t.lng,t.lat):Su.convert(t),this},ku.prototype.setSouthWest=function(t){return this._sw=t instanceof Su?new Su(t.lng,t.lat):Su.convert(t),this},ku.prototype.extend=function(t){var e,r,n=this._sw,i=this._ne;if(t instanceof Su)e=t,r=t;else{if(!(t instanceof ku)){if(Array.isArray(t)){if(4===t.length||t.every(Array.isArray)){var a=t;return this.extend(ku.convert(a))}var o=t;return this.extend(Su.convert(o))}return this}if(e=t._sw,r=t._ne,!e||!r)return this}return n||i?(n.lng=Math.min(e.lng,n.lng),n.lat=Math.min(e.lat,n.lat),i.lng=Math.max(r.lng,i.lng),i.lat=Math.max(r.lat,i.lat)):(this._sw=new Su(e.lng,e.lat),this._ne=new Su(r.lng,r.lat)),this},ku.prototype.getCenter=function(){return new Su((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},ku.prototype.getSouthWest=function(){return this._sw},ku.prototype.getNorthEast=function(){return this._ne},ku.prototype.getNorthWest=function(){return new Su(this.getWest(),this.getNorth())},ku.prototype.getSouthEast=function(){return new Su(this.getEast(),this.getSouth())},ku.prototype.getWest=function(){return this._sw.lng},ku.prototype.getSouth=function(){return this._sw.lat},ku.prototype.getEast=function(){return this._ne.lng},ku.prototype.getNorth=function(){return this._ne.lat},ku.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},ku.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},ku.prototype.isEmpty=function(){return!(this._sw&&this._ne)},ku.prototype.contains=function(t){var e=Su.convert(t),r=e.lng,n=e.lat,i=this._sw.lat<=n&&n<=this._ne.lat,a=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=r&&r>=this._ne.lng),i&&a},ku.convert=function(t){return!t||t instanceof ku?t:new ku(t)};var Mu=6371008.8,Su=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Su.prototype.wrap=function(){return new Su(p(this.lng,-180,180),this.lat)},Su.prototype.toArray=function(){return[this.lng,this.lat]},Su.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Su.prototype.distanceTo=function(t){var e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return Mu*Math.acos(Math.min(i,1))},Su.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,r=e/Math.cos(Math.PI/180*this.lat);return new ku(new Su(this.lng-r,this.lat-e),new Su(this.lng+r,this.lat+e))},Su.convert=function(t){if(t instanceof Su)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Su(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new Su(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var Eu=2*Math.PI*Mu;function Cu(t){return Eu*Math.cos(t*Math.PI/180)}function Iu(t){return(180+t)/360}function Lu(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Pu(t,e){return t/Cu(e)}function zu(t){var e=180-360*t;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90}var Du=function(t,e,r){void 0===r&&(r=0),this.x=+t,this.y=+e,this.z=+r};Du.fromLngLat=function(t,e){void 0===e&&(e=0);var r=Su.convert(t);return new Du(Iu(r.lng),Lu(r.lat),Pu(e,r.lat))},Du.prototype.toLngLat=function(){return new Su(function(t){return 360*t-180}(this.x),zu(this.y))},Du.prototype.toAltitude=function(){return function(t,e){return t*Cu(zu(e))}(this.z,this.y)},Du.prototype.meterInMercatorCoordinateUnits=function(){return 1/Eu*function(t){return 1/Math.cos(t*Math.PI/180)}(zu(this.y))};var Ou=function(t,e,r){this.z=t,this.x=e,this.y=r,this.key=Bu(0,t,t,e,r)};Ou.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},Ou.prototype.url=function(t,e){var r=function(t,e,r){var n=Au(256*t,256*(e=Math.pow(2,r)-e-1),r),i=Au(256*(t+1),256*(e+1),r);return n[0]+","+n[1]+","+i[0]+","+i[1]}(this.x,this.y,this.z),n=function(t,e,r){for(var n,i="",a=t;a>0;a--)i+=(e&(n=1<this.canonical.z?new Fu(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Fu(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},Fu.prototype.calculateScaledKey=function(t,e){var r=this.canonical.z-t;return t>this.canonical.z?Bu(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Bu(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)},Fu.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e},Fu.prototype.children=function(t){if(this.overscaledZ>=t)return[new Fu(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new Fu(e,this.wrap,e,r,n),new Fu(e,this.wrap,e,r+1,n),new Fu(e,this.wrap,e,r,n+1),new Fu(e,this.wrap,e,r+1,n+1)]},Fu.prototype.isLessThan=function(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.y=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)},ju.prototype._unpackMapbox=function(t,e,r){return(256*t*256+256*e+r)/10-1e4},ju.prototype._unpackTerrarium=function(t,e,r){return 256*t+e+r/256-32768},ju.prototype.getPixels=function(){return new Xo({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},ju.prototype.backfillBorder=function(t,e,r){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");var n=e*this.dim,i=e*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=i-1;break;case 1:i=n+1}switch(r){case-1:a=o-1;break;case 1:o=a+1}for(var s=-e*this.dim,l=-r*this.dim,c=a;c=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Hu.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Ks.VectorTile(new Il(this.rawTileData)).layers,this.sourceLayerCoder=new Nu(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Hu.prototype.query=function(t,e,r,n){var i=this;this.loadVTLayers();for(var o=t.params||{},s=po/t.tileSize/t.scale,l=Tn(o.filter),c=t.queryGeometry,u=t.queryPadding*s,h=Wu(c),p=this.grid.query(h.minX-u,h.minY-u,h.maxX+u,h.maxY+u),f=Wu(t.cameraQueryGeometry),d=this.grid3D.query(f.minX-u,f.minY-u,f.maxX+u,f.maxY+u,(function(e,r,n,i){return function(t,e,r,n,i){for(var o=0,s=t;o=l.x&&i>=l.y)return!0}var c=[new a(e,r),new a(e,i),new a(n,i),new a(n,r)];if(t.length>2)for(var u=0,h=c;u=0)return!0;return!1}(a,h)){var p=this.sourceLayerCoder.decode(r),d=this.vtLayers[p].feature(n);if(i.needGeometry){var m=yo(d,!0);if(!i.filter(new zi(this.tileID.overscaledZ),m,this.tileID.canonical))return}else if(!i.filter(new zi(this.tileID.overscaledZ),d))return;for(var g=this.getId(d,p),y=0;yn)i=!1;else if(e)if(this.expirationTimept&&(t.getActor().send("enforceCacheSizeLimit",ht),gt=0)},t.clamp=h,t.clearTileCache=function(t){var e=s.caches.delete(ut);t&&e.catch(t).then((function(){return t()}))},t.clipLine=Lc,t.clone=function(t){var e=new Ro(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.clone$1=w,t.clone$2=function(t){var e=new Ro(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=Al,t.config=N,t.create=function(){var t=new Ro(16);return Ro!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=function(){var t=new Ro(9);return Ro!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},t.create$2=function(){var t=new Ro(4);return Ro!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},t.createCommonjsModule=e,t.createExpression=cn,t.createLayout=Qi,t.createStyleLayer=function(t){return"custom"===t.type?new du(t):new mu[t.type](t)},t.cross=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t},t.deepEqual=function t(e,r){if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(var n=0;n0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t},t.number=tr,t.offscreenCanvasSupported=yt,t.ortho=function(t,e,r,n,i,a,o){var s=1/(e-r),l=1/(n-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(o+a)*c,t[15]=1,t},t.parseGlyphPBF=function(t){return new Il(t).readFields(Xl,[])},t.pbf=Il,t.performSymbolLayout=function(t,e,r,n,i,a,o){t.createArrays();var s=512*t.overscaling;t.tilePixelRatio=po/s,t.compareText={},t.iconsNeedLinear=!1;var l=t.layers[0].layout,c=t.layers[0]._unevaluatedLayout._values,u={};if("composite"===t.textSizeData.kind){var h=t.textSizeData,p=h.minZoom,f=h.maxZoom;u.compositeTextSizes=[c["text-size"].possiblyEvaluate(new zi(p),o),c["text-size"].possiblyEvaluate(new zi(f),o)]}if("composite"===t.iconSizeData.kind){var d=t.iconSizeData,m=d.minZoom,g=d.maxZoom;u.compositeIconSizes=[c["icon-size"].possiblyEvaluate(new zi(m),o),c["icon-size"].possiblyEvaluate(new zi(g),o)]}u.layoutTextSize=c["text-size"].possiblyEvaluate(new zi(t.zoom+1),o),u.layoutIconSize=c["icon-size"].possiblyEvaluate(new zi(t.zoom+1),o),u.textMaxSize=c["text-size"].possiblyEvaluate(new zi(18));for(var y=l.get("text-line-height")*Sl,v="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),x=l.get("text-keep-upright"),_=l.get("text-size"),b=function(){var a=T[w],s=l.get("text-font").evaluate(a,{},o).join(","),c=_.evaluate(a,{},o),h=u.layoutTextSize.evaluate(a,{},o),p=u.layoutIconSize.evaluate(a,{},o),f={horizontal:{},vertical:void 0},d=a.text,m=[0,0];if(d){var g=d.toString(),b=l.get("text-letter-spacing").evaluate(a,{},o)*Sl,k=function(t){for(var e=0,r=t;e=po||h.y<0||h.y>=po||function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,k){var M,S,E,C,I,L=t.addToLineVertexArray(e,r),P=0,z=0,D=0,O=0,R=-1,F=-1,B={},j=ja(""),N=0,U=0;if(void 0===s._unevaluatedLayout.getValue("text-radial-offset")?(N=(M=s.layout.get("text-offset").evaluate(_,{},T).map((function(t){return t*Sl})))[0],U=M[1]):(N=s.layout.get("text-radial-offset").evaluate(_,{},T)*Sl,U=qc),t.allowVerticalPlacement&&n.vertical){var V=s.layout.get("text-rotate").evaluate(_,{},T)+90,q=n.vertical;C=new Fc(l,e,c,u,h,q,p,f,d,V),o&&(I=new Fc(l,e,c,u,h,o,g,y,d,V))}if(i){var H=s.layout.get("icon-rotate").evaluate(_,{}),G="none"!==s.layout.get("icon-text-fit"),W=Pc(i,H,w,G),Z=o?Pc(o,H,w,G):void 0;E=new Fc(l,e,c,u,h,i,g,y,!1,H),P=4*W.length;var Y=t.iconSizeData,X=null;"source"===Y.kind?(X=[xc*s.layout.get("icon-size").evaluate(_,{})])[0]>Zc&&A(t.layerIds[0]+': Value for "icon-size" is >= '+Wc+'. Reduce your "icon-size".'):"composite"===Y.kind&&((X=[xc*b.compositeIconSizes[0].evaluate(_,{},T),xc*b.compositeIconSizes[1].evaluate(_,{},T)])[0]>Zc||X[1]>Zc)&&A(t.layerIds[0]+': Value for "icon-size" is >= '+Wc+'. Reduce your "icon-size".'),t.addSymbols(t.icon,W,X,x,v,_,!1,e,L.lineStartIndex,L.lineLength,-1,T),R=t.icon.placedSymbolArray.length-1,Z&&(z=4*Z.length,t.addSymbols(t.icon,Z,X,x,v,_,rc.vertical,e,L.lineStartIndex,L.lineLength,-1,T),F=t.icon.placedSymbolArray.length-1)}for(var $ in n.horizontal){var K=n.horizontal[$];if(!S){j=ja(K.text);var J=s.layout.get("text-rotate").evaluate(_,{},T);S=new Fc(l,e,c,u,h,K,p,f,d,J)}var Q=1===K.positionedLines.length;if(D+=Yc(t,e,K,a,s,d,_,m,L,n.vertical?rc.horizontal:rc.horizontalOnly,Q?Object.keys(n.horizontal):[$],B,R,b,T),Q)break}n.vertical&&(O+=Yc(t,e,n.vertical,a,s,d,_,m,L,rc.vertical,["vertical"],B,F,b,T));var tt=S?S.boxStartIndex:t.collisionBoxArray.length,et=S?S.boxEndIndex:t.collisionBoxArray.length,rt=C?C.boxStartIndex:t.collisionBoxArray.length,nt=C?C.boxEndIndex:t.collisionBoxArray.length,it=E?E.boxStartIndex:t.collisionBoxArray.length,at=E?E.boxEndIndex:t.collisionBoxArray.length,ot=I?I.boxStartIndex:t.collisionBoxArray.length,st=I?I.boxEndIndex:t.collisionBoxArray.length,lt=-1,ct=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};lt=ct(S,lt),lt=ct(C,lt),lt=ct(E,lt);var ut=(lt=ct(I,lt))>-1?1:0;ut&&(lt*=k/Sl),t.glyphOffsetArray.length>=iu.MAX_GLYPHS&&A("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==_.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,_.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,B.right>=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,j,tt,et,rt,nt,it,at,ot,st,c,D,O,P,z,ut,0,p,N,U,lt)}(t,h,s,r,n,i,p,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,y,b,k,l,x,w,M,d,e,a,c,u,o)};if("line"===S)for(var L=0,P=Lc(e.geometry,0,0,po,po);L1){var N=Ec(j,T,r.vertical||m,n,24,v);N&&I(j,N)}}else if("Polygon"===e.type)for(var U=0,V=Ds(e.geometry,0);U=A.maxzoom||"none"===A.visibility||(o(T,this.zoom,n),(h[A.id]=A.createBucket({index:u.bucketLayerIDs.length,layers:T,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:g,sourceID:this.source})).populate(y,p,this.tileID.canonical),u.bucketLayerIDs.push(T.map((function(t){return t.id}))))}}}var k,M,S,E,C=t.mapObject(p.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?a.send("getGlyphs",{uid:this.uid,stacks:C},(function(t,e){k||(k=t,M=e,P.call(l))})):M={};var I=Object.keys(p.iconDependencies);I.length?a.send("getImages",{icons:I,source:this.source,tileID:this.tileID,type:"icons"},(function(t,e){k||(k=t,S=e,P.call(l))})):S={};var L=Object.keys(p.patternDependencies);function P(){if(k)return s(k);if(M&&S&&E){var e=new i(M),r=new t.ImageAtlas(S,E);for(var a in h){var l=h[a];l instanceof t.SymbolBucket?(o(l.layers,this.zoom,n),t.performSymbolLayout(l,M,e.positions,S,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):l.hasPattern&&(l instanceof t.LineBucket||l instanceof t.FillBucket||l instanceof t.FillExtrusionBucket)&&(o(l.layers,this.zoom,n),l.addFeatures(p,this.tileID.canonical,r.patternPositions))}this.status="done",s(null,{buckets:t.values(h).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:r,glyphMap:this.returnDependencies?M:null,iconMap:this.returnDependencies?S:null,glyphPositions:this.returnDependencies?e.positions:null})}}L.length?a.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"patterns"},(function(t,e){k||(k=t,E=e,P.call(l))})):E={},P.call(this)};var l=function(t,e,r,n){this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=n||s,this.loading={},this.loaded={}};l.prototype.loadTile=function(e,r){var n=this,i=e.uid;this.loading||(this.loading={});var o=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),s=this.loading[i]=new a(e);s.abort=this.loadVectorData(e,(function(e,a){if(delete n.loading[i],e||!a)return s.status="done",n.loaded[i]=s,r(e);var l=a.rawData,c={};a.expires&&(c.expires=a.expires),a.cacheControl&&(c.cacheControl=a.cacheControl);var u={};if(o){var h=o.finish();h&&(u.resourceTiming=JSON.parse(JSON.stringify(h)))}s.vectorTile=a.vectorTile,s.parse(a.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(e,n){if(e||!n)return r(e);r(null,t.extend({rawTileData:l.slice(0)},n,c,u))})),n.loaded=n.loaded||{},n.loaded[i]=s}))},l.prototype.reloadTile=function(t,e){var r=this,n=this.loaded,i=t.uid,a=this;if(n&&n[i]){var o=n[i];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,n){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,r.availableImages,a.actor,i)),e(t,n)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},l.prototype.abortTile=function(t,e){var r=this.loading,n=t.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),e()},l.prototype.removeTile=function(t,e){var r=this.loaded,n=t.uid;r&&r[n]&&delete r[n],e()};var c=t.window.ImageBitmap,u=function(){this.loaded={}};u.prototype.loadTile=function(e,r){var n=e.uid,i=e.encoding,a=e.rawImageData,o=c&&a instanceof c?this.getImageData(a):a,s=new t.DEMData(n,o,i);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},u.prototype.getImageData=function(e){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:r.width,height:r.height},r.data)},u.prototype.removeTile=function(t){var e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]};var h=function t(e,r){var n,i=e&&e.type;if("FeatureCollection"===i)for(n=0;n=0!=!!e&&t.reverse()}var d=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,"id"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};m.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],r=0,n=this._feature.geometry;r"u"&&(n.push(s),l=n.length-1,a[s]=l),e.writeVarint(l);var c=r.properties[s],u=typeof c;"string"!==u&&"boolean"!==u&&"number"!==u&&(c=JSON.stringify(c));var h=u+":"+c,p=o[h];typeof p>"u"&&(i.push(c),p=i.length-1,o[h]=p),e.writeVarint(p)}}function E(t,e){return(e<<3)+(7&t)}function C(t){return t<<1^t>>31}function I(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;s>1;z(t,e,o,n,i,a%2),P(t,e,r,n,o-1,a+1),P(t,e,r,o+1,i,a+1)}}function z(t,e,r,n,i,a){for(;i>n;){if(i-n>600){var o=i-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);z(t,e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(i,Math.floor(r+(o-s)*c/o+u)),a)}var h=e[2*r+a],p=n,f=i;for(D(t,e,n,r),e[2*i+a]>h&&D(t,e,n,i);ph;)f--}e[2*n+a]===h?D(t,e,n,f):D(t,e,++f,i),f<=r&&(n=f+1),r<=f&&(i=f-1)}}function D(t,e,r,n){O(t,r,n),O(e,2*r,2*n),O(e,2*r+1,2*n+1)}function O(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function R(t,e,r,n){var i=t-r,a=e-n;return i*i+a*a}b.fromVectorTileJs=w,b.fromGeojsonVt=function(t,e){e=e||{};var r={};for(var n in t)r[n]=new v(t[n].features,e),r[n].name=n,r[n].version=e.version,r[n].extent=e.extent;return A({layers:r})},b.GeoJSONWrapper=T;var F=function(t){return t[0]},B=function(t){return t[1]},j=function(t,e,r,n,i){void 0===e&&(e=F),void 0===r&&(r=B),void 0===n&&(n=64),void 0===i&&(i=Float64Array),this.nodeSize=n,this.points=t;for(var a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),s=this.coords=new i(2*t.length),l=0;l=r&&s<=i&&l>=n&&l<=a&&u.push(t[d]);else{var m=Math.floor((f+p)/2);s=e[2*m],l=e[2*m+1],s>=r&&s<=i&&l>=n&&l<=a&&u.push(t[m]);var g=(h+1)%2;(0===h?r<=s:n<=l)&&(c.push(f),c.push(m-1),c.push(g)),(0===h?i>=s:a>=l)&&(c.push(m+1),c.push(p),c.push(g))}}return u}(this.ids,this.coords,t,e,r,n,this.nodeSize)},j.prototype.within=function(t,e,r){return function(t,e,r,n,i,a){for(var o=[0,t.length-1,0],s=[],l=i*i;o.length;){var c=o.pop(),u=o.pop(),h=o.pop();if(u-h<=a)for(var p=h;p<=u;p++)R(e[2*p],e[2*p+1],r,n)<=l&&s.push(t[p]);else{var f=Math.floor((h+u)/2),d=e[2*f],m=e[2*f+1];R(d,m,r,n)<=l&&s.push(t[f]);var g=(c+1)%2;(0===c?r-i<=d:n-i<=m)&&(o.push(h),o.push(f-1),o.push(g)),(0===c?r+i>=d:n+i>=m)&&(o.push(f+1),o.push(u),o.push(g))}}return s}(this.ids,this.coords,t,e,r,this.nodeSize)};var N={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},U=function(t){this.options=$(Object.create(N),t),this.trees=new Array(this.options.maxZoom+1)};function V(t,e,r,n,i){return{x:t,y:e,zoom:1/0,id:r,parentId:-1,numPoints:n,properties:i}}function q(t,e){var r=t.geometry.coordinates,n=r[0],i=r[1];return{x:W(n),y:Z(i),zoom:1/0,index:e,parentId:-1}}function H(t){return{type:"Feature",id:t.id,properties:G(t),geometry:{type:"Point",coordinates:[Y(t.x),X(t.y)]}}}function G(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return $($({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function W(t){return t/360+.5}function Z(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function Y(t){return 360*(t-.5)}function X(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function $(t,e){for(var r in e)t[r]=e[r];return t}function K(t){return t.x}function J(t){return t.y}function Q(t,e,r,n){for(var i,a=n,o=r-e>>1,s=r-e,l=t[e],c=t[e+1],u=t[r],h=t[r+1],p=e+3;pa)i=p,a=f;else if(f===a){var d=Math.abs(p-o);dn&&(i-e>3&&Q(t,e,i,n),t[i+2]=a,r-i>3&&Q(t,i,r,n))}function tt(t,e,r,n,i,a){var o=i-r,s=a-n;if(0!==o||0!==s){var l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return(o=t-r)*o+(s=e-n)*s}function et(t,e,r,n){var i={id:typeof t>"u"?null:t,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(t){var e=t.geometry,r=t.type;if("Point"===r||"MultiPoint"===r||"LineString"===r)rt(t,e);else if("Polygon"===r||"MultiLineString"===r)for(var n=0;n0&&(o+=n?(i*c-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(c-a,2))),i=l,a=c}var u=e.length-3;e[2]=1,Q(e,0,u,r),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function ot(t,e,r,n){for(var i=0;i1?1:r}function ct(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o=n)return null;for(var l=[],c=0;c=r&&d=n)){var m=[];if("Point"===p||"MultiPoint"===p)ut(h,m,r,n,i);else if("LineString"===p)ht(h,m,r,n,i,!1,s.lineMetrics);else if("MultiLineString"===p)ft(h,m,r,n,i,!1);else if("Polygon"===p)ft(h,m,r,n,i,!0);else if("MultiPolygon"===p)for(var g=0;g=r&&o<=n&&(e.push(t[a]),e.push(t[a+1]),e.push(t[a+2]))}}function ht(t,e,r,n,i,a,o){for(var s,l,c=pt(t),u=0===i?mt:gt,h=t.start,p=0;pr&&(l=u(c,f,d,g,y,r),o&&(c.start=h+s*l)):v>n?x=r&&(l=u(c,f,d,g,y,r),_=!0),x>n&&v<=n&&(l=u(c,f,d,g,y,n),_=!0),!a&&_&&(o&&(c.end=h+s*l),e.push(c),c=pt(t)),o&&(h+=s)}var b=t.length-3;f=t[b],d=t[b+1],m=t[b+2],(v=0===i?f:d)>=r&&v<=n&&dt(c,f,d,m),b=c.length-3,a&&b>=3&&(c[b]!==c[0]||c[b+1]!==c[1])&&dt(c,c[0],c[1],c[2]),c.length&&e.push(c)}function pt(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function ft(t,e,r,n,i,a){for(var o=0;oo.maxX&&(o.maxX=u),h>o.maxY&&(o.maxY=h)}return o}function wt(t,e,r,n){var i=e.geometry,a=e.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&e.size<(i?o:n))r.numPoints+=e.length/3;else{for(var s=[],l=0;lo)&&(r.numSimplified++,s.push(e[l]),s.push(e[l+1])),r.numPoints++;i&&function(t,e){for(var r=0,n=0,i=t.length,a=i-2;n0===e)for(n=0,i=t.length;n24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");var n=function(t,e){var r=[];if("FeatureCollection"===t.type)for(var n=0;n=n;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new j(s,K,J,a,Float32Array),r&&console.log("z%d: %d clusters in %dms",c,s.length,+Date.now()-u)}return r&&console.timeEnd("total time"),this},U.prototype.getClusters=function(t,e){var r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,i=180;else if(r>i){var o=this.getClusters([r,n,180,a],e),s=this.getClusters([-180,n,i,a],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,h=l.range(W(r),Z(a),W(i),Z(n));ue&&(d+=v.numPoints||1)}if(d>=s){for(var x=u.x*f,_=u.y*f,b=o&&f>1?this._map(u,!0):null,w=(c<<5)+(e+1)+this.points.length,T=0,A=p;T1)for(var E=0,C=p;E>5},U.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},U.prototype._map=function(t,e){if(t.numPoints)return e?$({},t.properties):t.properties;var r=this.points[t.index].properties,n=this.options.map(r);return e&&n===r?$({},n):n},At.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},At.prototype.splitTile=function(t,e,r,n,i,a,o){for(var s=[t,e,r,n],l=this.options,c=l.debug;s.length;){n=s.pop(),r=s.pop(),e=s.pop(),t=s.pop();var u=1<1&&console.time("creation"),p=this.tiles[h]=bt(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,n,p.numFeatures,p.numPoints,p.numSimplified),console.timeEnd("creation"));var f="z"+e;this.stats[f]=(this.stats[f]||0)+1,this.total++}if(p.source=t,i){if(e===l.maxZoom||e===i)continue;var d=1<1&&console.time("clipping");var m,g,y,v,x,_,b=.5*l.buffer/l.extent,w=.5-b,T=.5+b,A=1+b;m=g=y=v=null,x=ct(t,u,r-b,r+T,0,p.minX,p.maxX,l),_=ct(t,u,r+w,r+A,0,p.minX,p.maxX,l),t=null,x&&(m=ct(x,u,n-b,n+T,1,p.minY,p.maxY,l),g=ct(x,u,n+w,n+A,1,p.minY,p.maxY,l),x=null),_&&(y=ct(_,u,n-b,n+T,1,p.minY,p.maxY,l),v=ct(_,u,n+w,n+A,1,p.minY,p.maxY,l),_=null),c>1&&console.timeEnd("clipping"),s.push(m||[],e+1,2*r,2*n),s.push(g||[],e+1,2*r,2*n+1),s.push(y||[],e+1,2*r+1,2*n),s.push(v||[],e+1,2*r+1,2*n+1)}}},At.prototype.getTile=function(t,e,r){var n=this.options,i=n.extent,a=n.debug;if(t<0||t>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",t,e,r);for(var l,c=t,u=e,h=r;!l&&c>0;)c--,u=Math.floor(u/2),h=Math.floor(h/2),l=this.tiles[kt(c,u,h)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",c,u,h),a>1&&console.time("drilling down"),this.splitTile(l.source,c,u,h,t,e,r),a>1&&console.timeEnd("drilling down"),this.tiles[s]?xt(this.tiles[s],i):null):null};var St=function(e){function r(t,r,n,i){e.call(this,t,r,n,Mt),i&&(this.loadGeoJSON=i)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},r.prototype._loadData=function(){var e=this;if(this._pendingCallback&&this._pendingLoadDataParams){var r=this._pendingCallback,n=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var i=!!(n&&n.request&&n.request.collectResourceTiming)&&new t.RequestPerformance(n.request);this.loadGeoJSON(n,(function(a,o){if(a||!o)return r(a);if("object"!=typeof o)return r(new Error("Input data given to '"+n.source+"' is not a valid GeoJSON object."));h(o,!0);try{if(n.filter){var s=t.createExpression(n.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===s.result)throw new Error(s.value.map((function(t){return t.key+": "+t.message})).join(", "));var l=o.features.filter((function(t){return s.value.evaluate({zoom:0},t)}));o={type:"FeatureCollection",features:l}}e._geoJSONIndex=n.cluster?new U(function(e){var r=e.superclusterOptions,n=e.clusterProperties;if(!n||!r)return r;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),c=0,u=l;c=0?0:e.button},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var p=function(e){function r(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,r=this.requestors;e=0?1.2:1))}function y(t,e,r,n,i,a,o){for(var s=0;s65535)e(new Error("glyphs > 65535 not supported"));else if(a.ranges[s])e(null,{stack:r,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],x.loadGlyphRange(r,s,n.url,n.requestManager,(function(t,e){if(e){for(var r in e)n._doesCharSupportLocalGlyph(+r)||(a.glyphs[+r]=e[+r]);a.ranges[s]=!0}for(var i=0,o=l;i1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),p=Math.min(u,h),f=void 0,d=i/r*(n+1);if(l.isDash){var m=n-Math.abs(d);f=Math.sqrt(p*p+m*m)}else f=n-Math.sqrt(p*p+d*d);this.data[o+c]=Math.max(0,Math.min(255,f+128))}},T.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}var i=t[0],a=t[t.length-1];i.isDash===a.isDash&&(i.left=a.left-this.width,a.right=i.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),p=Math.min(u,h),f=l.isDash?p:-p;this.data[o+c]=Math.max(0,Math.min(255,f+128))}},T.prototype.addDash=function(e,r){var n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return t.warnOnce("LineAtlas out of space"),null;for(var a=0,o=0;o=n&&e.x=i&&e.y0&&(l[new t.OverscaledTileID(e.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+10&&(n.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event("data",n))}}))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setData=function(e){var r=this;return this._data=e,this.fire(new t.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(e){if(e)r.fire(new t.ErrorEvent(e));else{var n={dataType:"source",sourceDataType:"content"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new t.Event("data",n))}})),this},r.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:t,source:this.id},e),this},r.prototype.getClusterChildren=function(t,e){return this.actor.send("geojson.getClusterChildren",{clusterId:t,source:this.id},e),this},r.prototype.getClusterLeaves=function(t,e,r,n){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:t,limit:e,offset:r},n),this},r.prototype._updateWorkerData=function(e){var r=this;this._loaded=!1;var n=t.extend({},this.workerOptions),i=this._data;"string"==typeof i?(n.request=this.map._requestManager.transformRequest(t.browser.resolveURL(i),t.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(i),this.actor.send(this.type+".loadData",n,(function(t,i){r._removed||i&&i.abandoned||(r._loaded=!0,i&&i.resourceTiming&&i.resourceTiming[r.id]&&(r._resourceTiming=i.resourceTiming[r.id].slice(0)),r.actor.send(r.type+".coalesce",{source:n.source},null),e(t))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(e,r){var n=this,i=e.actor?"reloadTile":"loadTile";e.actor=this.actor;var a={type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};e.request=this.actor.send(i,a,(function(t,a){return delete e.request,e.unloadVectorData(),e.aborted?r(null):t?r(t):(e.loadVectorData(a,n.map.painter,"reloadTile"===i),r(null))}))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},r.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id})},r.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},r.prototype.serialize=function(){return t.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(t.Evented),L=t.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),P=function(e){function r(t,r,n,i){e.call(this),this.id=t,this.dispatcher=n,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=r}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(e,r){var n=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(i,a){n._loaded=!0,i?n.fire(new t.ErrorEvent(i)):a&&(n.image=a,e&&(n.coordinates=e),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setCoordinates=function(e){var r=this;this.coordinates=e;var n=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=function(e){for(var r=1/0,n=1/0,i=-1/0,a=-1/0,o=0,s=e;or.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+r.start(0)+" and "+r.end(0)+"-second mark."))):this.video.currentTime=e}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},r.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,L.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new t.Texture(e,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[n];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this.video&&!this.video.paused},r}(P),D=function(e){function r(r,n,i,a){e.call(this,r,n,i,a),n.coordinates?(!Array.isArray(n.coordinates)||4!==n.coordinates.length||n.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return"number"!=typeof t}))})))&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'missing required property "coordinates"'))),n.animate&&"boolean"!=typeof n.animate&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'optional "animate" property must be a boolean value'))),n.canvas?"string"!=typeof n.canvas&&!(n.canvas instanceof t.window.HTMLCanvasElement)&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'missing required property "canvas"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,L.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(r,this.canvas,n.RGBA,{premultiply:!0}),this.tiles){var a=this.tiles[i];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},r.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},r.prototype.hasTransition=function(){return this._playing},r.prototype._hasInvalidDimensions=function(){for(var t=0,e=[this.canvas.width,this.canvas.height];tthis.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},j.prototype.has=function(t){return t.wrapped().key in this.data},j.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},j.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},j.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},j.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},j.prototype.remove=function(t,e){if(!this.has(t))return this;var r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),i=this.data[r][n];return this.data[r].splice(n,1),i.timeout&&clearTimeout(i.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(i.value),this.order.splice(this.order.indexOf(r),1),this},j.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},j.prototype.filter=function(t){var e=[];for(var r in this.data)for(var n=0,i=this.data[r];n1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}},r.prototype.getTile=function(t){return this.getTileByID(t.key)},r.prototype.getTileByID=function(t){return this._tiles[t]},r.prototype._retainLoadedChildren=function(t,e,r,n){for(var i in this._tiles){var a=this._tiles[i];if(!(n[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>r)){for(var o=a.tileID;a&&a.tileID.overscaledZ>e+1;){var s=a.tileID.scaledTo(a.tileID.overscaledZ-1);(a=this._tiles[s.key])&&a.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(var n=t.overscaledZ-1;n>=e;n--){var i=t.scaledTo(n),a=this._getLoadedTile(i);if(a)return a}},r.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},r.prototype.updateCacheSize=function(t){var e=(Math.ceil(t.width/this._source.tileSize)+1)*(Math.ceil(t.height/this._source.tileSize)+1),r=Math.floor(5*e),n="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(n)},r.prototype.handleWrapJump=function(t){var e=(t-(void 0===this._prevLng?t:this._prevLng))/360,r=Math.round(e);if(this._prevLng=t,r){var n={};for(var i in this._tiles){var a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+r),n[a.tileID.key]=a}for(var o in this._tiles=n,this._timers)clearTimeout(this._timers[o]),delete this._timers[o];for(var s in this._tiles){var l=this._tiles[s];this._setTileReloadTimer(s,l)}}},r.prototype.update=function(e){var n=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(i=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(i=i.filter((function(t){return n._source.hasTile(t)})))):i=[];var a=e.coveringZoomLevel(this._source),o=Math.max(a-r.maxOverzooming,this._source.minzoom),s=Math.max(a+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,a);if(zt(this._source.type)){for(var c={},u={},h=0,p=Object.keys(l);hthis._source.maxzoom){var g=d.children(this._source.maxzoom)[0],y=this.getTile(g);if(y&&y.hasData()){n[g.key]=g;continue}}else{var v=d.children(this._source.maxzoom);if(n[v[0].key]&&n[v[1].key]&&n[v[2].key]&&n[v[3].key])continue}for(var x=m.wasRequested(),_=d.overscaledZ-1;_>=a;--_){var b=d.scaledTo(_);if(i[b.key]||(i[b.key]=!0,!(m=this.getTile(b))&&x&&(m=this._addTile(b)),m&&(n[b.key]=b,x=m.wasRequested(),m.hasData())))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],r=void 0,n=this._tiles[t].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);var i=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(i))break;n=i}for(var a=0,o=e;a0)&&(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},r.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},r.prototype.tilesIn=function(e,r,n){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=n?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),h=1/0,p=1/0,f=-1/0,d=-1/0,m=0,g=c;m=0&&y[1].y+g>=0){var v=l.map((function(t){return s.getTilePoint(t)})),x=c.map((function(t){return s.getTilePoint(t)}));a.push({tile:n,tileID:s,queryGeometry:v,cameraQueryGeometry:x,scale:m})}}},x=0;x=t.browser.now())return!0}return!1},r.prototype.setFeatureState=function(t,e,r){t=t||"_geojsonTileLayer",this._state.updateState(t,e,r)},r.prototype.removeFeatureState=function(t,e,r){t=t||"_geojsonTileLayer",this._state.removeFeatureState(t,e,r)},r.prototype.getFeatureState=function(t,e){return t=t||"_geojsonTileLayer",this._state.getState(t,e)},r.prototype.setDependencies=function(t,e,r){var n=this._tiles[t];n&&n.setDependencies(e,r)},r.prototype.reloadTilesForDependencies=function(t,e){for(var r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,"reloading");this._cache.filter((function(r){return!r.hasDependency(t,e)}))},r}(t.Evented);function Pt(t,e){var r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function zt(t){return"raster"===t||"image"===t||"video"===t}function Dt(){return new t.window.Worker(na.workerUrl)}Lt.maxOverzooming=10,Lt.maxUnderzooming=3;var Ot="mapboxgl_preloaded_worker_pool",Rt=function(){this.active={}};Rt.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))};var Kt=function(t,e,r){var n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(var a=0;a=-e[0]&&r<=e[0]&&n>=-e[1]&&n<=e[1]}function ne(e,r,n,i,a,o,s,l){var c=i?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,n.transform.zoom),h=[256/n.width*2+1,256/n.height*2+1],p=i?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;p.clear();for(var f=e.lineVertexArray,d=i?e.text.placedSymbolArray:e.icon.placedSymbolArray,m=n.transform.width/n.transform.height,g=!1,y=0;yMath.abs(n.x-r.x)*i?{useVertical:!0}:(e===t.WritingMode.vertical?r.yn.x)?{needsFlipping:!0}:null}function oe(e,r,n,i,a,o,s,l,c,u,h,p,f,d){var m,g=r/24,y=e.lineOffsetX*g,v=e.lineOffsetY*g;if(e.numGlyphs>1){var x=e.glyphStartIndex+e.numGlyphs,_=e.lineStartIndex,b=e.lineStartIndex+e.lineLength,w=ie(g,l,y,v,n,h,p,e,c,o,f);if(!w)return{notEnoughRoom:!0};var T=te(w.first.point,s).point,A=te(w.last.point,s).point;if(i&&!n){var k=ae(e.writingMode,T,A,d);if(k)return k}m=[w.first];for(var M=e.glyphStartIndex+1;M0?I.point:se(p,C,S,1,a),P=ae(e.writingMode,S,L,d);if(P)return P}var z=le(g*l.getoffsetX(e.glyphStartIndex),y,v,n,h,p,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,f);if(!z)return{notEnoughRoom:!0};m=[z]}for(var D=0,O=m;D0?1:-1,m=0;i&&(d*=-1,m=Math.PI),d<0&&(m+=Math.PI);for(var g=d>0?l+s:l+s+1,y=a,v=a,x=0,_=0,b=Math.abs(f),w=[];x+_<=b;){if((g+=d)=c)return null;if(v=y,w.push(y),void 0===(y=p[g])){var T=new t.Point(u.getx(g),u.gety(g)),A=te(T,h);if(A.signedDistanceFromCamera>0)y=p[g]=A.point;else{var k=g-d;y=se(0===x?o:new t.Point(u.getx(k),u.gety(k)),T,v,b-x+1,h)}}x+=_,_=v.dist(y)}var M=(b-x)/_,S=y.sub(v),E=S.mult(M)._add(v);E._add(S._unit()._perp()._mult(n*d));var C=m+Math.atan2(y.y-v.y,y.x-v.x);return w.push(E),{point:E,angle:C,path:w}}Kt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Kt.prototype.insert=function(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},Kt.prototype.insertCircle=function(t,e,r,n){this._forEachCell(e-n,r-n,e+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(r),this.circles.push(n)},Kt.prototype._insertBoxCell=function(t,e,r,n,i,a){this.boxCells[i].push(a)},Kt.prototype._insertCircleCell=function(t,e,r,n,i,a){this.circleCells[i].push(a)},Kt.prototype._query=function(t,e,r,n,i,a){if(r<0||t>this.width||n<0||e>this.height)return!i&&[];var o=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(i)return!0;for(var s=0;s0:o},Kt.prototype._queryCircle=function(t,e,r,n,i){var a=t-r,o=t+r,s=e-r,l=e+r;if(o<0||a>this.width||l<0||s>this.height)return!n&&[];var c=[],u={hitTest:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,c,u,i),n?c.length>0:c},Kt.prototype.query=function(t,e,r,n,i){return this._query(t,e,r,n,!1,i)},Kt.prototype.hitTest=function(t,e,r,n,i){return this._query(t,e,r,n,!0,i)},Kt.prototype.hitTestCircle=function(t,e,r,n){return this._queryCircle(t,e,r,!0,n)},Kt.prototype._queryCell=function(t,e,r,n,i,a,o,s){var l=o.seenUids,c=this.boxCells[i];if(null!==c)for(var u=this.bboxes,h=0,p=c;h=u[d+0]&&n>=u[d+1]&&(!s||s(this.boxKeys[f]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[f],x1:u[d],y1:u[d+1],x2:u[d+2],y2:u[d+3]})}}}var m=this.circleCells[i];if(null!==m)for(var g=this.circles,y=0,v=m;yo*o+s*s},Kt.prototype._circleAndRectCollide=function(t,e,r,n,i,a,o){var s=(a-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;var c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;var h=l-s,p=u-c;return h*h+p*p<=r*r};var ce=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ue(t,e){for(var r=0;r=1;L--)I.push(E.path[L]);for(var P=1;P0){for(var R=I[0].clone(),F=I[0].clone(),B=1;B=k.x&&F.x<=M.x&&R.y>=k.y&&F.y<=M.y?[I]:F.xM.x||F.yM.y?[]:t.clipLine([I],k.x,k.y,M.x,M.y)}for(var j=0,N=O;j=this.screenRightBoundary||nthis.screenBottomBoundary},fe.prototype.isInsideGrid=function(t,e,r,n){return r>=0&&t=0&&e0?(this.prevPlacement&&this.prevPlacement.variableOffsets[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID].text&&(m=this.prevPlacement.variableOffsets[h.crossTileID].anchor),this.variableOffsets[h.crossTileID]={textOffset:g,width:r,height:n,anchor:t,textBoxScale:i,prevAnchor:m},this.markUsedJustification(p,t,h,f),p.allowVerticalPlacement&&(this.markUsedOrientation(p,f,h),this.placedOrientations[h.crossTileID]=f),{shift:y,placedGlyphBoxes:v}):void 0},Te.prototype.placeLayerBucketPart=function(e,r,n){var i=this,a=e.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,c=a.textLabelPlaneMatrix,u=a.labelToScreenMatrix,h=a.textPixelRatio,p=a.holdingForFade,f=a.collisionBoxArray,d=a.partiallyEvaluatedTextSize,m=a.collisionGroup,g=s.get("text-optional"),y=s.get("icon-optional"),v=s.get("text-allow-overlap"),x=s.get("icon-allow-overlap"),_="map"===s.get("text-rotation-alignment"),b="map"===s.get("text-pitch-alignment"),w="none"!==s.get("icon-text-fit"),T="viewport-y"===s.get("symbol-z-order"),A=v&&(x||!o.hasIconData()||y),k=x&&(v||!o.hasTextData()||g);!o.collisionArrays&&f&&o.deserializeCollisionBoxes(f);var M=function(e,a){if(!r[e.crossTileID]){if(p)return void(i.placements[e.crossTileID]=new ye(!1,!1,!1));var f,T=!1,M=!1,S=!0,E=null,C={box:null,offscreen:null},I={box:null,offscreen:null},L=null,P=null,z=0,D=0,O=0;a.textFeatureIndex?z=a.textFeatureIndex:e.useRuntimeCollisionCircles&&(z=e.featureIndex),a.verticalTextFeatureIndex&&(D=a.verticalTextFeatureIndex);var R=a.textBox;if(R){var F=function(r){var n=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[e.crossTileID];a&&(i.placedOrientations[e.crossTileID]=a,n=a,i.markUsedOrientation(o,n,e))}return n},B=function(r,n){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i0&&(j=j.filter((function(t){return t!==N.anchor}))).unshift(N.anchor)}var U=function(t,r,n){for(var a=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=w&&!x?r:null,p={box:[],offscreen:!1},f=v?2*j.length:j.length,d=0;d=j.length,A=i.attemptAnchorPlacement(g,t,a,s,c,_,b,h,l,m,y,e,o,n,u);if(A&&(p=A.placedGlyphBoxes)&&p.box&&p.box.length){T=!0,E=A.shift;break}}return p};B((function(){return U(R,a.iconBox,t.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox,n=C&&C.box&&C.box.length;return o.allowVerticalPlacement&&!n&&e.numVerticalGlyphVertices>0&&r?U(r,a.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(T=C.box,S=C.offscreen);var V=F(C&&C.box);if(!T&&i.prevPlacement){var q=i.prevPlacement.variableOffsets[e.crossTileID];q&&(i.variableOffsets[e.crossTileID]=q,i.markUsedJustification(o,q.anchor,e,V))}}else{var H=function(t,r){var n=i.collisionIndex.placeCollisionBox(t,v,h,l,m.predicate);return n&&n.box&&n.box.length&&(i.markUsedOrientation(o,r,e),i.placedOrientations[e.crossTileID]=r),n};B((function(){return H(R,t.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&r?H(r,t.WritingMode.vertical):{box:null,offscreen:null}})),F(C&&C.box&&C.box.length)}}if(T=(f=C)&&f.box&&f.box.length>0,S=f&&f.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),W=t.evaluateSizeForFeature(o.textSizeData,d,G),Z=s.get("text-padding"),Y=e.collisionCircleDiameter;L=i.collisionIndex.placeCollisionCircles(v,G,o.lineVertexArray,o.glyphOffsetArray,W,l,c,u,n,b,m.predicate,Y,Z),T=v||L.circles.length>0&&!L.collisionDetected,S=S&&L.offscreen}if(a.iconFeatureIndex&&(O=a.iconFeatureIndex),a.iconBox){var X=function(t){var e=w&&E?we(t,E.x,E.y,_,b,i.transform.angle):t;return i.collisionIndex.placeCollisionBox(e,x,h,l,m.predicate)};M=I&&I.box&&I.box.length&&a.verticalIconBox?(P=X(a.verticalIconBox)).box.length>0:(P=X(a.iconBox)).box.length>0,S=S&&P.offscreen}var $=g||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,K=y||0===e.numIconVertices;if($||K?K?$||(M=M&&T):T=M&&T:M=T=M&&T,T&&f&&f.box&&(I&&I.box&&D?i.collisionIndex.insertCollisionBox(f.box,s.get("text-ignore-placement"),o.bucketInstanceId,D,m.ID):i.collisionIndex.insertCollisionBox(f.box,s.get("text-ignore-placement"),o.bucketInstanceId,z,m.ID)),M&&P&&i.collisionIndex.insertCollisionBox(P.box,s.get("icon-ignore-placement"),o.bucketInstanceId,O,m.ID),L&&(T&&i.collisionIndex.insertCollisionCircles(L.circles,s.get("text-ignore-placement"),o.bucketInstanceId,z,m.ID),n)){var J=o.bucketInstanceId,Q=i.collisionCircleArrays[J];void 0===Q&&(Q=i.collisionCircleArrays[J]=new ve);for(var tt=0;tt=0;--E){var C=S[E];M(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var I=e.symbolInstanceStart;I=0&&(e.text.placedSymbolArray.get(c).crossTileID=a>=0&&c!==a?0:n.crossTileID)}},Te.prototype.markUsedOrientation=function(e,r,n){for(var i=r===t.WritingMode.horizontal||r===t.WritingMode.horizontalOnly?r:0,a=r===t.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o0||l>0,x=a.numIconVertices>0,_=i.placedOrientations[a.crossTileID],b=_===t.WritingMode.vertical,w=_===t.WritingMode.horizontal||_===t.WritingMode.horizontalOnly;if(v){var T=Pe(y.text),A=b?ze:T;d(e.text,s,A);var k=w?ze:T;d(e.text,l,k);var M=y.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=M||b?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=M||w?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(e,S.anchor,a,_);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(e,"left",a,E),i.markUsedOrientation(e,E,a))}if(x){var C=Pe(y.icon),I=!(p&&a.verticalPlacedIconSymbolIndex&&b);if(a.placedIconSymbolIndex>=0){var L=I?C:ze;d(e.icon,a.numIconVertices,L),e.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=y.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var P=I?ze:C;d(e.icon,a.numVerticalIconVertices,P),e.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=y.icon.isHidden()}}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var z=e.collisionArrays[n];if(z){var D=new t.Point(0,0);if(z.textBox||z.verticalTextBox){var O=!0;if(c){var R=i.variableOffsets[m];R?(D=be(R.anchor,R.width,R.height,R.textOffset,R.textBoxScale),u&&D._rotate(h?i.transform.angle:-i.transform.angle)):O=!1}z.textBox&&Ae(e.textCollisionBox.collisionVertexArray,y.text.placed,!O||b,D.x,D.y),z.verticalTextBox&&Ae(e.textCollisionBox.collisionVertexArray,y.text.placed,!O||w,D.x,D.y)}var F=!(w||!z.verticalIconBox);z.iconBox&&Ae(e.iconCollisionBox.collisionVertexArray,y.icon.placed,F,p?D.x:0,p?D.y:0),z.verticalIconBox&&Ae(e.iconCollisionBox.collisionVertexArray,y.icon.placed,!F,p?D.x:0,p?D.y:0)}}},g=0;gt},Te.prototype.setStale=function(){this.stale=!0};var ke=Math.pow(2,25),Me=Math.pow(2,24),Se=Math.pow(2,17),Ee=Math.pow(2,16),Ce=Math.pow(2,9),Ie=Math.pow(2,8),Le=Math.pow(2,1);function Pe(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*ke+e*Me+r*Se+e*Ee+r*Ce+e*Ie+r*Le+e}var ze=0,De=function(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&void 0!==t.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};De.prototype.continuePlacement=function(t,e,r,n,i){for(var a=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var s=r[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if("symbol"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new De(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Oe.prototype.commit=function(t){return this.placement.commit(t),this.placement};var Re=512/t.EXTENT/2,Fe=function(t,e,r){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;nt.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,i)}else{var c=o[t.scaledTo(Number(a)).key];c&&c.findMatches(e.symbolInstances,t,i)}}for(var u=0;u1?"@2x":"",l=t.getJSON(r.transformRequest(r.normalizeSpriteURL(e,s,".json"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,i=e,u())})),c=t.getImage(r.transformRequest(r.normalizeSpriteURL(e,s,".png"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,a=e,u())}));function u(){if(o)n(o);else if(i&&a){var e=t.browser.getImageData(a),r={};for(var s in i){var l=i[s],c=l.width,u=l.height,h=l.x,p=l.y,f=l.sdf,d=l.pixelRatio,m=l.stretchX,g=l.stretchY,y=l.content,v=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,v,{x:h,y:p},{x:0,y:0},{width:c,height:u}),r[s]={data:v,pixelRatio:d,sdf:f,stretchX:m,stretchY:g,content:y}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}(e,this.map._requestManager,(function(e,n){if(r._spriteRequest=null,e)r.fire(new t.ErrorEvent(e));else if(n)for(var i in n)r.imageManager.addImage(i,n[i]);r.imageManager.setLoaded(!0),r._availableImages=r.imageManager.listImages(),r.dispatcher.broadcast("setImages",r._availableImages),r.fire(new t.Event("data",{dataType:"style"}))}))},r.prototype._validateLayer=function(e){var r=this.sourceCaches[e.source];if(r){var n=e.sourceLayer;if(n){var i=r.getSource();("geojson"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(n))&&this.fire(new t.ErrorEvent(new Error('Source layer "'+n+'" does not exist on source "'+i.id+'" as specified by style layer "'+e.id+'"')))}}},r.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},r.prototype._serializeLayers=function(t){for(var e=[],r=0,n=t;r0)throw new Error("Unimplemented: "+i.map((function(t){return t.command})).join(", ")+".");return n.forEach((function(t){"setTransition"!==t.command&&r[t.command].apply(r,t.args)})),this.stylesheet=e,!0},r.prototype.addImage=function(e,r){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(e,r),this._afterImageUpdated(e)},r.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},r.prototype.getImage=function(t){return this.imageManager.getImage(t)},r.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(e),this._afterImageUpdated(e)},r.prototype._afterImageUpdated=function(e){this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new t.Event("data",{dataType:"style"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(e,r,n){var i=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!r.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(r).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(r.type)>=0&&this._validate(t.validateStyle.source,"sources."+e,r,null,n))){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var a=this.sourceCaches[e]=new Lt(e,r,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}})),a.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");for(var r in this._layers)if(this._layers[r].source===e)return this.fire(new t.ErrorEvent(new Error('Source "'+e+'" cannot be removed while layer "'+r+'" is using it.')));var n=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],n.fire(new t.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:e})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},r.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},r.prototype.addLayer=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var i=e.id;if(this.getLayer(i))this.fire(new t.ErrorEvent(new Error('Layer with id "'+i+'" already exists on this map')));else{var a;if("custom"===e.type){if(Ue(this,t.validateCustomStyleLayer(e)))return;a=t.createStyleLayer(e)}else{if("object"==typeof e.source&&(this.addSource(i,e.source),e=t.clone$1(e),e=t.extend(e,{source:i})),this._validate(t.validateStyle.layer,"layers."+i,e,{arrayIndex:-1},n))return;a=t.createStyleLayer(e),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}}),this._serializedLayers[a.id]=a.serialize()}var o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new t.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.')));else{if(this._order.splice(o,0,i),this._layerOrderChanged=!0,this._layers[i]=a,this._removedLayers[i]&&a.source&&"custom"!==a.type){var s=this._removedLayers[i];delete this._removedLayers[i],s.type!==a.type?this._updatedSources[a.source]="clear":(this._updatedSources[a.source]="reload",this.sourceCaches[a.source].pause())}this._updateLayer(a),a.onAdd&&a.onAdd(this.map)}}},r.prototype.moveLayer=function(e,r){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==r){var n=this._order.indexOf(e);this._order.splice(n,1);var i=r?this._order.indexOf(r):this._order.length;if(r&&-1===i)return void this.fire(new t.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.')));this._order.splice(i,0,e),this._layerOrderChanged=!0}}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")))},r.prototype.removeLayer=function(e){this._checkLoaded();var r=this._layers[e];if(r){r.setEventedParent(null);var n=this._order.indexOf(e);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=r,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],r.onRemove&&r.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")))},r.prototype.getLayer=function(t){return this._layers[t]},r.prototype.hasLayer=function(t){return t in this._layers},r.prototype.setLayerZoomRange=function(e,r,n){this._checkLoaded();var i=this.getLayer(e);i?i.minzoom===r&&i.maxzoom===n||(null!=r&&(i.minzoom=r),null!=n&&(i.maxzoom=n),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")))},r.prototype.setFilter=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var i=this.getLayer(e);if(i){if(!t.deepEqual(i.filter,r)){if(null==r)return i.filter=void 0,void this._updateLayer(i);this._validate(t.validateStyle.filter,"layers."+i.id+".filter",r,null,n)||(i.filter=t.clone$1(r),this._updateLayer(i))}}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")))},r.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},r.prototype.setLayoutProperty=function(e,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getLayoutProperty=function(e,r){var n=this.getLayer(e);if(n)return n.getLayoutProperty(r);this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style.")))},r.prototype.setPaintProperty=function(e,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},r.prototype.setFeatureState=function(e,r){this._checkLoaded();var n=e.source,i=e.sourceLayer,a=this.sourceCaches[n];if(void 0!==a){var o=a.getSource().type;"geojson"===o&&i?this.fire(new t.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,e.id,r)):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.removeFeatureState=function(e,r){this._checkLoaded();var n=e.source,i=this.sourceCaches[n];if(void 0!==i){var a=i.getSource().type,o="vector"===a?e.sourceLayer:void 0;"vector"!==a||o?r&&"string"!=typeof e.id&&"number"!=typeof e.id?this.fire(new t.ErrorEvent(new Error("A feature id is required to remove its specific state property."))):i.removeFeatureState(o,e.id,r):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.getFeatureState=function(e){this._checkLoaded();var r=e.source,n=e.sourceLayer,i=this.sourceCaches[r];if(void 0!==i){if("vector"!==i.getSource().type||n)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),i.getFeatureState(n,e.id);this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},r.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return t.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},r.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,r=function(t){return"fill-extrusion"===e._layers[t].type},n={},i=[],a=this._order.length-1;a>=0;a--){var o=this._order[a];if(r(o)){n[o]=a;for(var s=0,l=t;s=0;d--){var m=this._order[d];if(r(m))for(var g=i.length-1;g>=0;g--){var y=i[g].feature;if(n[y.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),er=xr("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),rr=xr("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}"),nr=xr("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}"),ir=xr("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),ar=xr("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),or=xr("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}"),sr=xr("varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}"),lr=xr("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\n? a_pos\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}"),cr=xr("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),ur=xr("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\n#define PI 3.141592653589793\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),hr=xr("uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}"),pr=xr("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}"),fr=xr("uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}"),dr=xr("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}"),mr=xr("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),gr=xr("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}"),yr=xr("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}"),vr=xr("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}");function xr(t,e){var r=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n=e.match(/attribute ([\w]+) ([\w]+)/g),i=t.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),a=e.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),o=a?a.concat(i):i,s={};return{fragmentSource:t=t.replace(r,(function(t,e,r,n,i){return s[i]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nvarying "+r+" "+n+" "+i+";\n#else\nuniform "+r+" "+n+" u_"+i+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+i+"\n "+r+" "+n+" "+i+" = u_"+i+";\n#endif\n"})),vertexSource:e=e.replace(r,(function(t,e,r,n,i){var a="float"===n?"vec2":"vec4",o=i.match(/color/)?"color":a;return s[i]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nuniform lowp float u_"+i+"_t;\nattribute "+r+" "+a+" a_"+i+";\nvarying "+r+" "+n+" "+i+";\n#else\nuniform "+r+" "+n+" u_"+i+";\n#endif\n":"vec4"===o?"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+i+" = a_"+i+";\n#else\n "+r+" "+n+" "+i+" = u_"+i+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+i+" = unpack_mix_"+o+"(a_"+i+", u_"+i+"_t);\n#else\n "+r+" "+n+" "+i+" = u_"+i+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nuniform lowp float u_"+i+"_t;\nattribute "+r+" "+a+" a_"+i+";\n#else\nuniform "+r+" "+n+" u_"+i+";\n#endif\n":"vec4"===o?"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+r+" "+n+" "+i+" = a_"+i+";\n#else\n "+r+" "+n+" "+i+" = u_"+i+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+r+" "+n+" "+i+" = unpack_mix_"+o+"(a_"+i+", u_"+i+"_t);\n#else\n "+r+" "+n+" "+i+" = u_"+i+";\n#endif\n"})),staticAttributes:n,staticUniforms:o}}var _r=Object.freeze({__proto__:null,prelude:Ze,background:Ye,backgroundPattern:Xe,circle:$e,clippingMask:Ke,heatmap:Je,heatmapTexture:Qe,collisionBox:tr,collisionCircle:er,debug:rr,fill:nr,fillOutline:ir,fillOutlinePattern:ar,fillPattern:or,fillExtrusion:sr,fillExtrusionPattern:lr,hillshadePrepare:cr,hillshade:ur,line:hr,lineGradient:pr,linePattern:fr,lineSDF:dr,raster:mr,symbolIcon:gr,symbolSDF:yr,symbolTextAndIcon:vr}),br=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};function wr(t){for(var e=[],r=0;r>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}Tr.prototype.draw=function(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m){var g,y=t.gl;if(!this.failedToCreate){for(var v in t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(i),t.setCullFace(a),this.fixedUniforms)this.fixedUniforms[v].set(o[v]);f&&f.setUniforms(t,this.binderUniforms,h,{zoom:p});for(var x=(g={},g[y.LINES]=2,g[y.TRIANGLES]=3,g[y.LINE_STRIP]=1,g)[e],_=0,b=u.get();_0?1/(1-t):1+t}function Zr(t){return t>0?1-1/(1.001-t):-t}var Yr,Xr=function(t,e,r,n,i,a,o,s,l,c){var u=i.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:u.width/u.height,u_fade_change:i.options.fadeDuration?i.symbolFadeChange:1,u_matrix:a,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+n,u_texsize:c,u_texture:0}},$r=function(e,r,n,i,a,o,s,l,c,u,h){var p=a.transform;return t.extend(Xr(e,r,n,i,a,o,s,l,c,u),{u_gamma_scale:i?Math.cos(p._pitch)*p.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+h})},Kr=function(e,r,n,i,a,o,s,l,c,u){return t.extend($r(e,r,n,i,a,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},Jr=function(t,e,r){return{u_matrix:t,u_opacity:e,u_color:r}},Qr=function(e,r,n,i,a,o){return t.extend(function(t,e,r,n){var i=r.imageManager.getPattern(t.from.toString()),a=r.imageManager.getPattern(t.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,n.tileID.overscaledZ),u=n.tileSize*Math.pow(2,r.transform.tileZoom)/c,h=u*(n.tileID.canonical.x+n.tileID.wrap*c),p=u*n.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:i.tl,u_pattern_br_a:i.br,u_pattern_tl_b:a.tl,u_pattern_br_b:a.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/de(n,1,r.transform.tileZoom),u_pixel_coord_upper:[h>>16,p>>16],u_pixel_coord_lower:[65535&h,65535&p]}}(i,o,n,a),{u_matrix:e,u_opacity:r})},tn={fillExtrusion:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fillExtrusionPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,r.u_height_factor),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fill:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},fillPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},fillOutline:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world)}},fillOutlinePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},circle:function(e,r){return{u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,r.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},collisionBox:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,r.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,r.u_overscale_factor)}},collisionCircle:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,r.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,r.u_viewport_size)}},debug:function(e,r){return{u_color:new t.UniformColor(e,r.u_color),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_overlay:new t.Uniform1i(e,r.u_overlay),u_overlay_scale:new t.Uniform1f(e,r.u_overlay_scale)}},clippingMask:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmap:function(e,r){return{u_extrude_scale:new t.Uniform1f(e,r.u_extrude_scale),u_intensity:new t.Uniform1f(e,r.u_intensity),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmapTexture:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_color_ramp:new t.Uniform1i(e,r.u_color_ramp),u_opacity:new t.Uniform1f(e,r.u_opacity)}},hillshade:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_latrange:new t.Uniform2f(e,r.u_latrange),u_light:new t.Uniform2f(e,r.u_light),u_shadow:new t.UniformColor(e,r.u_shadow),u_highlight:new t.UniformColor(e,r.u_highlight),u_accent:new t.UniformColor(e,r.u_accent)}},hillshadePrepare:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_dimension:new t.Uniform2f(e,r.u_dimension),u_zoom:new t.Uniform1f(e,r.u_zoom),u_unpack:new t.Uniform4f(e,r.u_unpack)}},line:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels)}},lineGradient:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_image:new t.Uniform1i(e,r.u_image),u_image_height:new t.Uniform1f(e,r.u_image_height)}},linePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_texsize:new t.Uniform2f(e,r.u_texsize),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_image:new t.Uniform1i(e,r.u_image),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},lineSDF:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,r.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,r.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,r.u_sdfgamma),u_image:new t.Uniform1i(e,r.u_image),u_tex_y_a:new t.Uniform1f(e,r.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,r.u_tex_y_b),u_mix:new t.Uniform1f(e,r.u_mix)}},raster:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_tl_parent:new t.Uniform2f(e,r.u_tl_parent),u_scale_parent:new t.Uniform1f(e,r.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,r.u_buffer_scale),u_fade_t:new t.Uniform1f(e,r.u_fade_t),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image0:new t.Uniform1i(e,r.u_image0),u_image1:new t.Uniform1i(e,r.u_image1),u_brightness_low:new t.Uniform1f(e,r.u_brightness_low),u_brightness_high:new t.Uniform1f(e,r.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,r.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,r.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,r.u_spin_weights)}},symbolIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture)}},symbolSDF:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},symbolTextAndIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texsize_icon:new t.Uniform2f(e,r.u_texsize_icon),u_texture:new t.Uniform1i(e,r.u_texture),u_texture_icon:new t.Uniform1i(e,r.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},background:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_color:new t.UniformColor(e,r.u_color)}},backgroundPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image:new t.Uniform1i(e,r.u_image),u_pattern_tl_a:new t.Uniform2f(e,r.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,r.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,r.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,r.u_pattern_br_b),u_texsize:new t.Uniform2f(e,r.u_texsize),u_mix:new t.Uniform1f(e,r.u_mix),u_pattern_size_a:new t.Uniform2f(e,r.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,r.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,r.u_scale_a),u_scale_b:new t.Uniform1f(e,r.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,r.u_tile_units_to_pixels)}}};function en(e,r,n,i,a,o,s){for(var l=e.context,c=l.gl,u=e.useProgram("collisionBox"),h=[],p=0,f=0,d=0;d0){var b=t.create(),w=v;t.mul(b,y.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(b,b,y.placementViewportMatrix),h.push({circleArray:_,circleOffset:f,transform:w,invTransform:b}),f=p+=_.length/4}x&&u.draw(l,c.LINES,kt.disabled,St.disabled,e.colorModeForRenderPass(),Ct.disabled,Pr(v,e.transform,g),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,e.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&h.length){var T=e.useProgram("collisionCircle"),A=new t.StructArrayLayout2f1f2i16;A.resize(4*p),A._trim();for(var k=0,M=0,S=h;M=0&&(m[y.associatedIconIndex]={shiftedAnchor:S,angle:E})}else ue(y.numGlyphs,f)}if(h){d.clear();for(var I=e.icon.placedSymbolArray,L=0;L0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=r?(s-r.timeAdded)/o:-1,u=n.getSource(),h=a.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),p=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(e.tileID.overscaledZ-h),f=p&&e.refreshedUponExpiration?1:t.clamp(p?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),r?{opacity:1,mix:1-f}:{opacity:f,mix:0}}return{opacity:1,mix:0}}var dn=new t.Color(1,0,0,1),mn=new t.Color(0,1,0,1),gn=new t.Color(0,0,1,1),yn=new t.Color(1,0,1,1),vn=new t.Color(0,1,1,1);function xn(t,e,r,n){bn(t,0,e+r/2,t.transform.width,r,n)}function _n(t,e,r,n){bn(t,e-r/2,0,r,t.transform.height,n)}function bn(e,r,n,i,a,o){var s=e.context,l=s.gl;l.enable(l.SCISSOR_TEST),l.scissor(r*t.browser.devicePixelRatio,n*t.browser.devicePixelRatio,i*t.browser.devicePixelRatio,a*t.browser.devicePixelRatio),s.clear({color:o}),l.disable(l.SCISSOR_TEST)}function wn(e,r,n){var i=e.context,a=i.gl,o=n.posMatrix,s=e.useProgram("debug"),l=kt.disabled,c=St.disabled,u=e.colorModeForRenderPass(),h="$debug";i.activeTexture.set(a.TEXTURE0),e.emptyTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE),s.draw(i,a.LINE_STRIP,l,c,u,Ct.disabled,Dr(o,t.Color.red),h,e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments);var p=r.getTileByID(n.key).latestRawTileData,f=p&&p.byteLength||0,d=Math.floor(f/1024),m=r.getTile(n).tileSize,g=512/Math.min(m,512)*(n.overscaledZ/e.transform.zoom)*.5,y=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(y+=" => "+n.overscaledZ),function(t,e){t.initDebugOverlayCanvas();var r=t.debugOverlayCanvas,n=t.context.gl,i=t.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,r.width,r.height),i.shadowColor="white",i.shadowBlur=2,i.lineWidth=1.5,i.strokeStyle="white",i.textBaseline="top",i.font="bold 36px Open Sans, sans-serif",i.fillText(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(e,y+" "+d+"kb"),s.draw(i,a.TRIANGLES,l,c,Et.alphaBlended,Ct.disabled,Dr(o,t.Color.transparent,g),h,e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}var Tn={symbol:function(e,r,n,i,a){if("translucent"===e.renderPass){var o=St.disabled,s=e.colorModeForRenderPass();n.layout.get("text-variable-anchor")&&function(e,r,n,i,a,o,s){for(var l=r.transform,c="map"===a,u="map"===o,h=0,p=e;h256&&this.clearStencil(),r.setColorMode(Et.disabled),r.setDepthMode(kt.disabled);var i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var a=0,o=e;a256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new St({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},An.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new St({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},An.prototype.stencilConfigForOverlap=function(t){var e,r=this.context.gl,n=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),i=n[n.length-1].overscaledZ,a=n[0].overscaledZ-i+1;if(a>1){this.currentStencilSource=void 0,this.nextStencilID+a>256&&this.clearStencil();for(var o={},s=0;s=0;this.currentLayer--){var w=this.style._layers[i[this.currentLayer]],T=a[w.source],A=u[w.source];this._renderTileClippingMasks(w,A),this.renderLayer(this,T,w,A)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?e.pop():null},An.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r},An.prototype.useProgram=function(t,e){this.cache=this.cache||{};var r=""+t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new Tr(this.context,t,_r[t],e,tn[t],this._showOverdrawInspector)),this.cache[r]},An.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},An.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},An.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=t.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var e=this.context.gl;this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,e.RGBA)}},An.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var kn=function(t,e){this.points=t,this.planes=e};kn.fromInvProjectionMatrix=function(e,r,n){var i=Math.pow(2,n),a=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((function(r){return t.transformMat4([],r,e)})).map((function(e){return t.scale$1([],e,1/e[3]/r*i)})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var r=t.sub([],a[e[0]],a[e[1]]),n=t.sub([],a[e[2]],a[e[1]]),i=t.normalize([],t.cross([],r,n)),o=-t.dot(i,a[e[1]]);return i.concat(o)}));return new kn(a,o)};var Mn=function(e,r){this.min=e,this.max=r,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};Mn.prototype.quadrant=function(e){for(var r=[e%2==0,e<2],n=t.clone$2(this.min),i=t.clone$2(this.max),a=0;a=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,h=0;hthis.max[l]-this.min[l])return 0}return 1};var Sn=function(t,e,r,n){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(t)||t<0||isNaN(e)||e<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=r,this.right=n};Sn.prototype.interpolate=function(e,r,n){return null!=r.top&&null!=e.top&&(this.top=t.number(e.top,r.top,n)),null!=r.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,r.bottom,n)),null!=r.left&&null!=e.left&&(this.left=t.number(e.left,r.left,n)),null!=r.right&&null!=e.right&&(this.right=t.number(e.right,r.right,n)),this},Sn.prototype.getCenter=function(e,r){var n=t.clamp((this.left+e-this.right)/2,0,e),i=t.clamp((this.top+r-this.bottom)/2,0,r);return new t.Point(n,i)},Sn.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},Sn.prototype.clone=function(){return new Sn(this.top,this.bottom,this.left,this.right)},Sn.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var En=function(e,r,n,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=e||0,this._maxZoom=r||22,this._minPitch=n??0,this._maxPitch=i??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Sn,this._posMatrixCache={},this._alignedPosMatrixCache={}},Cn={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};En.prototype.clone=function(){var t=new En(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},Cn.minZoom.get=function(){return this._minZoom},Cn.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},Cn.maxZoom.get=function(){return this._maxZoom},Cn.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},Cn.minPitch.get=function(){return this._minPitch},Cn.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},Cn.maxPitch.get=function(){return this._maxPitch},Cn.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},Cn.renderWorldCopies.get=function(){return this._renderWorldCopies},Cn.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},Cn.worldSize.get=function(){return this.tileSize*this.scale},Cn.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Cn.size.get=function(){return new t.Point(this.width,this.height)},Cn.bearing.get=function(){return-this.angle/Math.PI*180},Cn.bearing.set=function(e){var r=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Cn.pitch.get=function(){return this._pitch/Math.PI*180},Cn.pitch.set=function(e){var r=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},Cn.fov.get=function(){return this._fov/Math.PI*180},Cn.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},Cn.zoom.get=function(){return this._zoom},Cn.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},Cn.center.get=function(){return this._center},Cn.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Cn.padding.get=function(){return this._edgeInsets.toJSON()},Cn.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},Cn.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},En.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},En.prototype.interpolatePadding=function(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()},En.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},En.prototype.getVisibleUnwrappedCoordinates=function(e){var r=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new t.Point(0,0)),i=this.pointCoordinate(new t.Point(this.width,0)),a=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(n.x,i.x,a.x,o.x)),l=Math.floor(Math.max(n.x,i.x,a.x,o.x)),c=s-1;c<=l+1;c++)0!==c&&r.push(new t.UnwrappedTileID(c,e));return r},En.prototype.coveringTiles=function(e){var r=this.coveringZoomLevel(e),n=r;if(void 0!==e.minzoom&&re.maxzoom&&(r=e.maxzoom);var i=t.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,r),o=[a*i.x,a*i.y,0],s=kn.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var c=function(t){return{aabb:new Mn([t*a,0,0],[(t+1)*a,a,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},u=[],h=[],p=r,f=e.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var d=1;d<=3;d++)u.push(c(-d)),u.push(c(d));for(u.push(c(0));u.length>0;){var m=u.pop(),g=m.x,y=m.y,v=m.fullyVisible;if(!v){var x=m.aabb.intersects(s);if(0===x)continue;v=2===x}var _=m.aabb.distanceX(o),b=m.aabb.distanceY(o),w=Math.max(Math.abs(_),Math.abs(b)),T=3+(1<T&&m.zoom>=l)h.push({tileID:new t.OverscaledTileID(m.zoom===p?f:m.zoom,m.wrap,m.zoom,g,y),distanceSq:t.sqrLen([o[0]-.5-g,o[1]-.5-y])});else for(var A=0;A<4;A++){var k=(g<<1)+A%2,M=(y<<1)+(A>>1);u.push({aabb:m.aabb.quadrant(A),zoom:m.zoom+1,x:k,y:M,wrap:m.wrap,fullyVisible:v})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},En.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},Cn.unmodified.get=function(){return this._unmodified},En.prototype.zoomScale=function(t){return Math.pow(2,t)},En.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},En.prototype.project=function(e){var r=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(r)*this.worldSize)},En.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},Cn.point.get=function(){return this.project(this.center)},En.prototype.setLocationAtPoint=function(e,r){var n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(e),o=new t.MercatorCoordinate(a.x-(n.x-i.x),a.y-(n.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},En.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},En.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},En.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},En.prototype.coordinateLocation=function(t){return t.toLngLat()},En.prototype.pointCoordinate=function(e){var r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(n,n,this.pixelMatrixInverse);var i=r[3],a=n[3],o=r[0]/i,s=n[0]/a,l=r[1]/i,c=n[1]/a,u=r[2]/i,h=n[2]/a,p=u===h?0:(0-u)/(h-u);return new t.MercatorCoordinate(t.number(o,s,p)/this.worldSize,t.number(l,c,p)/this.worldSize)},En.prototype.coordinatePoint=function(e){var r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix),new t.Point(r[0]/r[3],r[1]/r[3])},En.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},En.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},En.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},En.prototype.calculatePosMatrix=function(e,r){void 0===r&&(r=!1);var n=e.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];var a=e.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,a.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),i[n]=new Float32Array(l),i[n]},En.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},En.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,r,n,i,a=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var h=this.latRange;a=t.mercatorYfromLat(h[1])*this.worldSize,e=(o=t.mercatorYfromLat(h[0])*this.worldSize)-ao&&(i=o-g)}if(this.lngRange){var y=f.x,v=c.x/2;y-vl&&(n=l-v)}(void 0!==n||void 0!==i)&&(this.center=this.unproject(new t.Point(void 0!==n?n:f.x,void 0!==i?i:f.y))),this._unmodified=u,this._constraining=!1}},En.prototype._calcMatrices=function(){if(this.height){var e=this._fov/2,r=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(e)*this.height;var n=Math.PI/2+this._pitch,i=this._fov*(.5+r.y/this.height),a=Math.sin(i)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-n-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,c=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),u=this.height/50,h=new Float64Array(16);t.perspective(h,this._fov,this.width/this.height,u,c),h[8]=2*-r.x/this.width,h[9]=2*r.y/this.height,t.scale(h,h,[1,-1,1]),t.translate(h,h,[0,0,-this.cameraToCenterDistance]),t.rotateX(h,h,this._pitch),t.rotateZ(h,h,this.angle),t.translate(h,h,[-s,-l,0]),this.mercatorMatrix=t.scale([],h,[this.worldSize,this.worldSize,this.worldSize]),t.scale(h,h,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=h,this.invProjMatrix=t.invert([],this.projMatrix);var p=this.width%2/2,f=this.height%2/2,d=Math.cos(this.angle),m=Math.sin(this.angle),g=s-Math.round(s)+d*p+m*f,y=l-Math.round(l)+d*f+m*p,v=new Float64Array(h);if(t.translate(v,v,[g>.5?g-1:g,y>.5?y-1:y,0]),this.alignedProjMatrix=v,h=t.create(),t.scale(h,h,[this.width/2,-this.height/2,1]),t.translate(h,h,[1,-1,0]),this.labelPlaneMatrix=h,h=t.create(),t.scale(h,h,[1,-1,1]),t.translate(h,h,[-1,-1,0]),t.scale(h,h,[2/this.width,2/this.height,1]),this.glCoordMatrix=h,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(h=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=h,this._posMatrixCache={},this._alignedPosMatrixCache={}}},En.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},En.prototype.getCameraPoint=function(){var e=this._pitch,r=Math.tan(e)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,r))},En.prototype.getCameraQueryGeometry=function(e){var r=this.getCameraPoint();if(1===e.length)return[e[0],r];for(var n=r.x,i=r.y,a=r.x,o=r.y,s=0,l=e;s=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},In.prototype._updateHashUnthrottled=function(){var e=t.window.location.href.replace(/(#.+)?$/,this.getHashString());try{t.window.history.replaceState(t.window.history.state,null,e)}catch{}};var Ln={linearity:.3,easing:t.bezier(0,0,.3,1)},Pn=t.extend({deceleration:2500,maxSpeed:1400},Ln),zn=t.extend({deceleration:20,maxSpeed:1400},Ln),Dn=t.extend({deceleration:1e3,maxSpeed:360},Ln),On=t.extend({deceleration:1e3,maxSpeed:90},Ln),Rn=function(t){this._map=t,this.clear()};function Fn(t,e){(!t.duration||t.duration0&&r-e[0].time>160;)e.shift()},Rn.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},n=0,i=this._inertiaBuffer;n=this._clickTolerance||this._map.fire(new jn(t.type,this._map,t))},Vn.prototype.dblclick=function(t){return this._firePreventable(new jn(t.type,this._map,t))},Vn.prototype.mouseover=function(t){this._map.fire(new jn(t.type,this._map,t))},Vn.prototype.mouseout=function(t){this._map.fire(new jn(t.type,this._map,t))},Vn.prototype.touchstart=function(t){return this._firePreventable(new Nn(t.type,this._map,t))},Vn.prototype.touchmove=function(t){this._map.fire(new Nn(t.type,this._map,t))},Vn.prototype.touchend=function(t){this._map.fire(new Nn(t.type,this._map,t))},Vn.prototype.touchcancel=function(t){this._map.fire(new Nn(t.type,this._map,t))},Vn.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Vn.prototype.isEnabled=function(){return!0},Vn.prototype.isActive=function(){return!1},Vn.prototype.enable=function(){},Vn.prototype.disable=function(){};var qn=function(t){this._map=t};qn.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},qn.prototype.mousemove=function(t){this._map.fire(new jn(t.type,this._map,t))},qn.prototype.mousedown=function(){this._delayContextMenu=!0},qn.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new jn("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},qn.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new jn(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()},qn.prototype.isEnabled=function(){return!0},qn.prototype.isActive=function(){return!1},qn.prototype.enable=function(){},qn.prototype.disable=function(){};var Hn=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Gn(t,e){for(var r={},n=0;nthis.numTouches)&&(this.aborted=!0),!this.aborted&&(void 0===this.startTime&&(this.startTime=e.timeStamp),n.length===this.numTouches&&(this.centroid=function(e){for(var r=new t.Point(0,0),n=0,i=e;n30)&&(this.aborted=!0)}}},Wn.prototype.touchend=function(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var Zn=function(t){this.singleTap=new Wn(t),this.numTaps=t.numTaps,this.reset()};Zn.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Zn.prototype.touchstart=function(t,e,r){this.singleTap.touchstart(t,e,r)},Zn.prototype.touchmove=function(t,e,r){this.singleTap.touchmove(t,e,r)},Zn.prototype.touchend=function(t,e,r){var n=this.singleTap.touchend(t,e,r);if(n){var i=t.timeStamp-this.lastTime<500,a=!this.lastTap||this.lastTap.dist(n)<30;if((!i||!a)&&this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}};var Yn=function(){this._zoomIn=new Zn({numTouches:1,numTaps:2}),this._zoomOut=new Zn({numTouches:2,numTaps:1}),this.reset()};Yn.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Yn.prototype.touchstart=function(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)},Yn.prototype.touchmove=function(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)},Yn.prototype.touchend=function(t,e,r){var n=this,i=this._zoomIn.touchend(t,e,r),a=this._zoomOut.touchend(t,e,r);return i?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()+1,around:e.unproject(i)},{originalEvent:t})}}):a?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()-1,around:e.unproject(a)},{originalEvent:t})}}):void 0},Yn.prototype.touchcancel=function(){this.reset()},Yn.prototype.enable=function(){this._enabled=!0},Yn.prototype.disable=function(){this._enabled=!1,this.reset()},Yn.prototype.isEnabled=function(){return this._enabled},Yn.prototype.isActive=function(){return this._active};var Xn={0:1,2:2},$n=function(t){this.reset(),this._clickTolerance=t.clickTolerance||1};$n.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},$n.prototype._correctButton=function(t,e){return!1},$n.prototype._move=function(t,e){return{}},$n.prototype.mousedown=function(t,e){if(!this._lastPoint){var n=r.mouseButton(t);this._correctButton(t,n)&&(this._lastPoint=e,this._eventButton=n)}},$n.prototype.mousemoveWindow=function(t,e){var r=this._lastPoint;if(r){if(t.preventDefault(),function(t,e){var r=Xn[e];return void 0===t.buttons||(t.buttons&r)!==r}(t,this._eventButton))return void this.reset();if(this._moved||!(e.dist(r)0&&(this._active=!0);var i=Gn(n,r),a=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in i){var c=i[l],u=this._touches[l];u&&(a._add(c),o._add(c.sub(u)),s++,i[l]=c)}if(this._touches=i,!(sMath.abs(t.x)}var li=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,si(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,r){var n=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,r){if(void 0!==this._valid)return this._valid;var n=t.mag()>=2,i=e.mag()>=2;if(n||i){if(!n||!i)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;var a=t.y>0==e.y>0;return si(t)&&si(e)&&a}},e}(ei),ci={panStep:100,bearingStep:15,pitchStep:10},ui=function(){var t=ci;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep,this._rotationDisabled=!1};function hi(t){return t*(2-t)}ui.prototype.reset=function(){this._active=!1},ui.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var r=0,n=0,i=0,a=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:t.shiftKey?n=-1:(t.preventDefault(),a=-1);break;case 39:t.shiftKey?n=1:(t.preventDefault(),a=1);break;case 38:t.shiftKey?i=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?i=-1:(t.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(n=0,i=0),{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:hi,zoom:r?Math.round(l)+r*(t.shiftKey?2:1):l,bearing:s.getBearing()+n*e._bearingStep,pitch:s.getPitch()+i*e._pitchStep,offset:[-a*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},ui.prototype.enable=function(){this._enabled=!0},ui.prototype.disable=function(){this._enabled=!1,this.reset()},ui.prototype.isEnabled=function(){return this._enabled},ui.prototype.isActive=function(){return this._active},ui.prototype.disableRotation=function(){this._rotationDisabled=!0},ui.prototype.enableRotation=function(){this._rotationDisabled=!1};var pi=4.000244140625,fi=1/450,di=function(e,r){this._map=e,this._el=e.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=fi,t.bindAll(["_onTimeout"],this)};di.prototype.setZoomRate=function(t){this._defaultZoomRate=t},di.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},di.prototype.isEnabled=function(){return!!this._enabled},di.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},di.prototype.isZooming=function(){return!!this._zooming},di.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},di.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},di.prototype.wheel=function(e){if(this.isEnabled()){var r=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,n=t.browser.now(),i=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%pi==0?this._type="wheel":0!==r&&Math.abs(r)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(i*r)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),e.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=e,this._delta-=r,this._active||this._start(e)),e.preventDefault()}},di.prototype._onTimeout=function(t){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)},di.prototype._start=function(e){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var n=r.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(n)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},di.prototype.renderFrame=function(){var e=this;if(this._frameId&&(this._frameId=null,this.isActive())){var r=this._map.transform;if(0!==this._delta){var n="wheel"===this._type&&Math.abs(this._delta)>pi?this._wheelZoomRate:this._defaultZoomRate,i=2/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==i&&(i=1/i);var a="number"==typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=r.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"==typeof this._targetZoom?this._targetZoom:r.zoom,l=this._startZoom,c=this._easing,u=!1;if("wheel"===this._type&&l&&c){var h=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),p=c(h);o=t.number(l,s,p),h<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},di.prototype._smoothOutEasing=function(e){var r=t.ease;if(this._prevEase){var n=this._prevEase,i=(t.browser.now()-n.start)/n.duration,a=n.easing(i+.01)-n.easing(i),o=.27/Math.sqrt(a*a+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:r},r},di.prototype.reset=function(){this._active=!1};var mi=function(t,e){this._clickZoom=t,this._tapZoom=e};mi.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},mi.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},mi.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},mi.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var gi=function(){this.reset()};gi.prototype.reset=function(){this._active=!1},gi.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(t.shiftKey?-1:1),around:r.unproject(e)},{originalEvent:t})}}},gi.prototype.enable=function(){this._enabled=!0},gi.prototype.disable=function(){this._enabled=!1,this.reset()},gi.prototype.isEnabled=function(){return this._enabled},gi.prototype.isActive=function(){return this._active};var yi=function(){this._tap=new Zn({numTouches:1,numTaps:1}),this.reset()};yi.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},yi.prototype.touchstart=function(t,e,r){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=e[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(t,e,r))},yi.prototype.touchmove=function(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=e[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,r)},yi.prototype.touchend=function(t,e,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(t,e,r)&&(this._tapTime=t.timeStamp)},yi.prototype.touchcancel=function(){this.reset()},yi.prototype.enable=function(){this._enabled=!0},yi.prototype.disable=function(){this._enabled=!1,this.reset()},yi.prototype.isEnabled=function(){return this._enabled},yi.prototype.isActive=function(){return this._active};var vi=function(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r};vi.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},vi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},vi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},vi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xi=function(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r};xi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var _i=function(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};_i.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},_i.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},_i.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},_i.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},_i.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},_i.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var bi=function(t){return t.zoom||t.drag||t.pitch||t.rotate},wi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(t.Event);function Ti(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var Ai=function(e,n){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Rn(e),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),t.bindAll(["handleEvent","handleWindowEvent"],this);var i=this._el;this._listeners=[[i,"touchstart",{passive:!0}],[i,"touchmove",{passive:!1}],[i,"touchend",void 0],[i,"touchcancel",void 0],[i,"mousedown",void 0],[i,"mousemove",void 0],[i,"mouseup",void 0],[t.window.document,"mousemove",{capture:!0}],[t.window.document,"mouseup",void 0],[i,"mouseover",void 0],[i,"mouseout",void 0],[i,"dblclick",void 0],[i,"click",void 0],[i,"keydown",{capture:!1}],[i,"keyup",void 0],[i,"wheel",{passive:!1}],[i,"contextmenu",void 0],[t.window,"blur",void 0]];for(var a=0,o=this._listeners;aa?Math.min(2,b):Math.max(.5,b),w=Math.pow(g,1-e),T=i.unproject(x.add(_.mult(e*w)).mult(m));i.setLocationAtPoint(i.renderWorldCopies?T.wrap():T,d)}n._fireMoveEvents(r)}),(function(t){n._afterEase(r,t)}),e),this},r.prototype._prepareEase=function(e,r,n){void 0===n&&(n={}),this._moving=!0,!r&&!n.moving&&this.fire(new t.Event("movestart",e)),this._zooming&&!n.zooming&&this.fire(new t.Event("zoomstart",e)),this._rotating&&!n.rotating&&this.fire(new t.Event("rotatestart",e)),this._pitching&&!n.pitching&&this.fire(new t.Event("pitchstart",e))},r.prototype._fireMoveEvents=function(e){this.fire(new t.Event("move",e)),this._zooming&&this.fire(new t.Event("zoom",e)),this._rotating&&this.fire(new t.Event("rotate",e)),this._pitching&&this.fire(new t.Event("pitch",e))},r.prototype._afterEase=function(e,r){if(!this._easeId||!r||this._easeId!==r){delete this._easeId;var n=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new t.Event("zoomend",e)),i&&this.fire(new t.Event("rotateend",e)),a&&this.fire(new t.Event("pitchend",e)),this.fire(new t.Event("moveend",e))}},r.prototype.flyTo=function(e,r){var n=this;if(!e.essential&&t.browser.prefersReducedMotion){var i=t.pick(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,r)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u="zoom"in e?t.clamp(+e.zoom,a.minZoom,a.maxZoom):o,h="bearing"in e?this._normalizeBearing(e.bearing,s):s,p="pitch"in e?+e.pitch:l,f="padding"in e?e.padding:a.padding,d=a.zoomScale(u-o),m=t.Point.convert(e.offset),g=a.centerPoint.add(m),y=a.pointLocation(g),v=t.LngLat.convert(e.center||y);this._normalizeCenter(v);var x=a.project(y),_=a.project(v).sub(x),b=e.curve,w=Math.max(a.width,a.height),T=w/d,A=_.mag();if("minZoom"in e){var k=t.clamp(Math.min(e.minZoom,o,u),a.minZoom,a.maxZoom),M=w/a.zoomScale(k-o);b=Math.sqrt(M/A*2)}var S=b*b;function E(t){var e=(T*T-w*w+(t?-1:1)*S*S*A*A)/(2*(t?T:w)*S*A);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function I(t){return(Math.exp(t)+Math.exp(-t))/2}var L=E(0),P=function(t){return I(L)/I(L+b*t)},z=function(t){return w*((I(L)*function(t){return C(t)/I(t)}(L+b*t)-C(L))/S)/A},D=(E(1)-L)/b;if(Math.abs(A)<1e-6||!isFinite(D)){if(Math.abs(w-T)<1e-6)return this.easeTo(e,r);var O=Te.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==h,this._pitching=p!==l,this._padding=!a.isPaddingEqual(f),this._prepareEase(r,!1),this._ease((function(e){var i=e*D,d=1/P(i);a.zoom=1===e?u:o+a.scaleZoom(d),n._rotating&&(a.bearing=t.number(s,h,e)),n._pitching&&(a.pitch=t.number(l,p,e)),n._padding&&(a.interpolatePadding(c,f,e),g=a.centerPoint.add(m));var y=1===e?v:a.unproject(x.add(_.mult(z(i))).mult(d));a.setLocationAtPoint(a.renderWorldCopies?y.wrap():y,g),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),e),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var r=this._onEaseEnd;delete this._onEaseEnd,r.call(this,e)}if(!t){var n=this.handlers;n&&n.stop(!1)}return this},r.prototype._ease=function(e,r,n){!1===n.animate||0===n.duration?(e(1),r()):(this._easeStart=t.browser.now(),this._easeOptions=n,this._onEaseFrame=e,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(e,r){e=t.wrap(e,-180,180);var n=Math.abs(e-r);return Math.abs(e-360-r)180?-360:r<-180?360:0}},r}(t.Evented),Mi=function(e){void 0===e&&(e={}),this.options=e,t.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};Mi.prototype.getDefaultPosition=function(){return"bottom-right"},Mi.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),e&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},Mi.prototype.onRemove=function(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},Mi.prototype._setElementTitle=function(t,e){var r=this._map._getUIString("AttributionControl."+e);t.title=r,t.setAttribute("aria-label",r)},Mi.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},Mi.prototype._updateEditLink=function(){var e=this._editLink;e||(e=this._editLink=this._container.querySelector(".mapbox-improve-map"));var r=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||t.config.ACCESS_TOKEN}];if(e){var n=r.reduce((function(t,e,n){return e.value&&(t+=e.key+"="+e.value+(n=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},Mi.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Si=function(){t.bindAll(["_updateLogo"],this),t.bindAll(["_updateCompact"],this)};Si.prototype.onAdd=function(t){this._map=t,this._container=r.create("div","mapboxgl-ctrl");var e=r.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://www.mapbox.com/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Si.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Si.prototype.getDefaultPosition=function(){return"bottom-left"},Si.prototype._updateLogo=function(t){(!t||"metadata"===t.sourceDataType)&&(this._container.style.display=this._logoRequired()?"block":"none")},Si.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},Si.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add("mapboxgl-compact"):e.classList.remove("mapboxgl-compact")}};var Ei=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Ei.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},Ei.prototype.remove=function(t){for(var e=this._currentlyRunning,r=0,n=e?this._queue.concat(e):this._queue;re.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=e.maxPitch&&e.maxPitch>60)throw new Error("maxPitch must be less than or equal to 60");var i=new En(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(n.call(this,i,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new Ei,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},Ci,e.locale),this._clickTolerance=e.clickTolerance,this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),"string"==typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else{if(!(e.container instanceof Li))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(function(){return r._update(!1)})),this.on("moveend",(function(){return r._update(!1)})),this.on("zoom",(function(){return r._update(!0)})),typeof t.window<"u"&&(t.window.addEventListener("online",this._onWindowOnline,!1),t.window.addEventListener("resize",this._onWindowResize,!1),t.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Ai(this,e);var a="string"==typeof e.hash&&e.hash||void 0;this._hash=e.hash&&new In(a).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new Mi({customAttribution:e.customAttribution})),this.addControl(new Si,e.logoPosition),this.on("style.load",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on("data",(function(e){r._update("style"===e.dataType),r.fire(new t.Event(e.dataType+"data",e))})),this.on("dataloading",(function(e){r.fire(new t.Event(e.dataType+"dataloading",e))}))}n&&(i.__proto__=n),i.prototype=Object.create(n&&n.prototype),i.prototype.constructor=i;var a={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return i.prototype._getMapId=function(){return this._mapId},i.prototype.addControl=function(e,r){if(void 0===r&&(r=e.getDefaultPosition?e.getDefaultPosition():"top-right"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var n=e.onAdd(this);this._controls.push(e);var i=this._controlPositions[r];return-1!==r.indexOf("bottom")?i.insertBefore(n,i.firstChild):i.appendChild(n),this},i.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var r=this._controls.indexOf(e);return r>-1&&this._controls.splice(r,1),e.onRemove(this),this},i.prototype.hasControl=function(t){return this._controls.indexOf(t)>-1},i.prototype.resize=function(e){var r=this._containerDimensions(),n=r[0],i=r[1];this._resizeCanvas(n,i),this.transform.resize(n,i),this.painter.resize(n,i);var a=!this._moving;return a&&(this.stop(),this.fire(new t.Event("movestart",e)).fire(new t.Event("move",e))),this.fire(new t.Event("resize",e)),a&&this.fire(new t.Event("moveend",e)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},i.prototype.setMinZoom=function(t){if((t=t??-2)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(t){if((t=t??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()60)throw new Error("maxPitch must be less than or equal to 60");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")},i.prototype.getMaxPitch=function(){return this.transform.maxPitch},i.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},i.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},i.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},i.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},i.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},i.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},i.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},i.prototype._createDelegatedListener=function(t,e,r){var n,i=this;if("mouseenter"===t||"mouseover"===t){var a=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){var o=i.getLayer(e)?i.queryRenderedFeatures(n.point,{layers:[e]}):[];o.length?a||(a=!0,r.call(i,new jn(t,i,n.originalEvent,{features:o}))):a=!1},mouseout:function(){a=!1}}}}if("mouseleave"===t||"mouseout"===t){var o=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){(i.getLayer(e)?i.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?o=!0:o&&(o=!1,r.call(i,new jn(t,i,n.originalEvent)))},mouseout:function(e){o&&(o=!1,r.call(i,new jn(t,i,e.originalEvent)))}}}}return{layer:e,listener:r,delegates:(n={},n[t]=function(t){var n=i.getLayer(e)?i.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(i,t),delete t.features)},n)}},i.prototype.on=function(t,e,r){if(void 0===r)return n.prototype.on.call(this,t,e);var i=this._createDelegatedListener(t,e,r);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(t,e,r){if(void 0===r)return n.prototype.once.call(this,t,e);var i=this._createDelegatedListener(t,e,r);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(t,e,r){var i=this;return void 0===r?n.prototype.off.call(this,t,e):(this._delegatedListeners&&this._delegatedListeners[t]&&function(n){for(var a=n[t],o=0;o180;){var s=n.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;e.lng>n.center.lng?e.lng-=360:e.lng+=360}return e}Bi.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),r.disableDrag()},Bi.prototype.move=function(t,e){var r=this.map,n=this.mouseRotate.mousemoveWindow(t,e);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(t,e);i&&i.pitchDelta&&r.setPitch(r.getPitch()+i.pitchDelta)}},Bi.prototype.off=function(){var t=this.element;r.removeEventListener(t,"mousedown",this.mousedown),r.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(t,"touchmove",this.touchmove),r.removeEventListener(t,"touchend",this.touchend),r.removeEventListener(t,"touchcancel",this.reset),this.offTemp()},Bi.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(t.window,"mousemove",this.mousemove),r.removeEventListener(t.window,"mouseup",this.mouseup)},Bi.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),r.mousePos(this.element,e)),r.addEventListener(t.window,"mousemove",this.mousemove),r.addEventListener(t.window,"mouseup",this.mouseup)},Bi.prototype.mousemove=function(t){this.move(t,r.mousePos(this.element,t))},Bi.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Bi.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Bi.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Bi.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)=r}this._isDragging&&(this._pos=e.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none","pending"===this._state&&(this._state="active",this.fire(new t.Event("dragstart"))),this.fire(new t.Event("drag")))},n.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),"active"===this._state&&this.fire(new t.Event("dragend")),this._state="inactive"},n.prototype._addDragHandler=function(t){this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},n.prototype.setDraggable=function(t){return this._draggable=!!t,this._map&&(t?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},n.prototype.isDraggable=function(){return this._draggable},n.prototype.setRotation=function(t){return this._rotation=t||0,this._update(),this},n.prototype.getRotation=function(){return this._rotation},n.prototype.setRotationAlignment=function(t){return this._rotationAlignment=t||"auto",this._update(),this},n.prototype.getRotationAlignment=function(){return this._rotationAlignment},n.prototype.setPitchAlignment=function(t){return this._pitchAlignment=t&&"auto"!==t?t:this._rotationAlignment,this._update(),this},n.prototype.getPitchAlignment=function(){return this._pitchAlignment},n}(t.Evented),Hi={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Gi=0,Wi=!1,Zi=function(e){function n(r){e.call(this),this.options=t.extend({},Hi,r),t.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.onAdd=function(e){return this._map=e,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),function(e){void 0!==Vi?e(Vi):void 0!==t.window.navigator.permissions?t.window.navigator.permissions.query({name:"geolocation"}).then((function(t){Vi="denied"!==t.state,e(Vi)})):(Vi=!!t.window.navigator.geolocation,e(Vi))}(this._setupUI),this._container},n.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Gi=0,Wi=!1},n.prototype._isOutOfMapMaxBounds=function(t){var e=this._map.getMaxBounds(),r=t.coords;return e&&(r.longitudee.getEast()||r.latitudee.getNorth())},n.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}},n.prototype._onSuccess=function(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event("outofmaxbounds",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(e),(!this.options.trackUserLocation||"ACTIVE_LOCK"===this._watchState)&&this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("geolocate",e)),this._finish()}},n.prototype._updateCamera=function(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude),n=e.coords.accuracy,i=this._map.getBearing(),a=t.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),a,{geolocateSource:!0})},n.prototype._updateMarker=function(e){if(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),r=this._map.unproject([1,t]),n=e.distanceTo(r),i=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=i+"px",this._circleElement.style.height=i+"px"},n.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},n.prototype._onError=function(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var r=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=r,this._geolocateButton.setAttribute("aria-label",r),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&Wi)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("error",e)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(e){var n=this;if(this._container.addEventListener("contextmenu",(function(t){return t.preventDefault()})),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===e){t.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var i=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=i,this._geolocateButton.setAttribute("aria-label",i)}else{var a=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=a,this._geolocateButton.setAttribute("aria-label",a)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new qi(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new qi({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",(function(e){var r=e.originalEvent&&"resize"===e.originalEvent.type;!e.geolocateSource&&"ACTIVE_LOCK"===n._watchState&&!r&&(n._watchState="BACKGROUND",n._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),n._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),n.fire(new t.Event("trackuserlocationend")))}))},n.prototype.trigger=function(){if(!this._setup)return t.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Gi--,Wi=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new t.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.Event("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}if("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++Gi>1?(e={maximumAge:6e5,timeout:0},Wi=!0):(e=this.options.positionOptions,Wi=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},n}(t.Evented),Yi={maxWidth:100,unit:"metric"},Xi=function(e){this.options=t.extend({},Yi,e),t.bindAll(["_onMove","setUnit"],this)};function $i(t,e,r){var n=r&&r.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([n,i]),s=a.distanceTo(o);if(r&&"imperial"===r.unit){var l=3.2808*s;l>5280?Ki(e,n,l/5280,t._getUIString("ScaleControl.Miles")):Ki(e,n,l,t._getUIString("ScaleControl.Feet"))}else r&&"nautical"===r.unit?Ki(e,n,s/1852,t._getUIString("ScaleControl.NauticalMiles")):s>=1e3?Ki(e,n,s/1e3,t._getUIString("ScaleControl.Kilometers")):Ki(e,n,s,t._getUIString("ScaleControl.Meters"))}function Ki(t,e,r,n){var i=function(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),r=t/e;return r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:r>=1?1:function(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(r),e*r}(r),a=i/r;t.style.width=e*a+"px",t.innerHTML=i+" "+n}Xi.prototype.getDefaultPosition=function(){return"bottom-left"},Xi.prototype._onMove=function(){$i(this._map,this._container,this.options)},Xi.prototype.onAdd=function(t){return this._map=t,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Xi.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Xi.prototype.setUnit=function(t){this.options.unit=t,$i(this._map,this._container,this.options)};var Ji=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce("Full screen control 'container' must be a DOM element.")),t.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in t.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in t.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in t.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in t.window.document&&(this._fullscreenchange="MSFullscreenChange")};Ji.prototype.onAdd=function(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",t.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Ji.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Ji.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},Ji.prototype._setupUI=function(){var e=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",e).setAttribute("aria-hidden",!0),e.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Ji.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t},Ji.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Ji.prototype._isFullscreen=function(){return this._fullscreen},Ji.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Ji.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Qi={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},ta=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),ea=function(e){function n(r){e.call(this),this.options=t.extend(Object.create(Qi),r),t.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new t.Event("open")),this},n.prototype.isOpen=function(){return!!this._map},n.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new t.Event("close")),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},n.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},n.prototype.getElement=function(){return this._container},n.prototype.setText=function(e){return this.setDOMContent(t.window.document.createTextNode(e))},n.prototype.setHTML=function(e){var r,n=t.window.document.createDocumentFragment(),i=t.window.document.createElement("body");for(i.innerHTML=e;r=i.firstChild;)n.appendChild(r);return this.setDOMContent(n)},n.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},n.prototype.setMaxWidth=function(t){return this.options.maxWidth=t,this._update(),this},n.prototype.setDOMContent=function(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this},n.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},n.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},n.prototype.setOffset=function(t){return this.options.offset=t,this._update(),this},n.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},n.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=r.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},n.prototype._onMouseUp=function(t){this._update(t.point)},n.prototype._onMouseMove=function(t){this._update(t.point)},n.prototype._onDrag=function(t){this._update(t.point)},n.prototype._update=function(t){var e=this,n=this._lngLat||this._trackPointer;if(this._map&&n&&this._content&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((function(t){return e._container.classList.add(t)})),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=ji(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||t)){var i=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat),a=this.options.anchor,o=ra(this.options.offset);if(!a){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=i.y+o.bottom.ythis._map.transform.height-c?["bottom"]:[],i.xthis._map.transform.width-l/2&&s.push("right"),a=0===s.length?"bottom":s.join("-")}var u=i.add(o[a]).round();r.setTransform(this._container,Ni[a]+" translate("+u.x+"px,"+u.y+"px)"),Ui(this._container,a,"popup")}},n.prototype._focusFirstElement=function(){if(this.options.focusAfterOpen&&this._container){var t=this._container.querySelector(ta);t&&t.focus()}},n.prototype._onClose=function(){this.remove()},n}(t.Evented);function ra(e){if(e){if("number"==typeof e){var r=Math.round(Math.sqrt(.5*Math.pow(e,2)));return{center:new t.Point(0,0),top:new t.Point(0,e),"top-left":new t.Point(r,r),"top-right":new t.Point(-r,r),bottom:new t.Point(0,-e),"bottom-left":new t.Point(r,-r),"bottom-right":new t.Point(-r,-r),left:new t.Point(e,0),right:new t.Point(-e,0)}}if(e instanceof t.Point||Array.isArray(e)){var n=t.Point.convert(e);return{center:n,top:n,"top-left":n,"top-right":n,bottom:n,"bottom-left":n,"bottom-right":n,left:n,right:n}}return{center:t.Point.convert(e.center||[0,0]),top:t.Point.convert(e.top||[0,0]),"top-left":t.Point.convert(e["top-left"]||[0,0]),"top-right":t.Point.convert(e["top-right"]||[0,0]),bottom:t.Point.convert(e.bottom||[0,0]),"bottom-left":t.Point.convert(e["bottom-left"]||[0,0]),"bottom-right":t.Point.convert(e["bottom-right"]||[0,0]),left:t.Point.convert(e.left||[0,0]),right:t.Point.convert(e.right||[0,0])}}return ra(new t.Point(0,0))}var na={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Di,NavigationControl:Fi,GeolocateControl:Zi,AttributionControl:Mi,ScaleControl:Xi,FullscreenControl:Ji,Popup:ea,Marker:qi,Style:Ge,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:function(){jt().acquire(Ot)},clearPrewarmedResources:function(){var t=Ft;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(Ot),Ft=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return Rt.workerCount},set workerCount(t){Rt.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:""};return na})),r},"object"==typeof t&&typeof e<"u"?e.exports=n():(r=r||self).mapboxgl=n()}}),b_=f({"src/plots/mapbox/layers.js"(t,e){var r=le(),n=Se().sanitizeHTML,i=d_(),a=l_();function o(t,e){this.subplot=t,this.uid=t.uid+"-"+e,this.index=e,this.idSource="source-"+this.uid,this.idLayer=a.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var s=o.prototype;function l(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var n=0;n0}function c(t){var e={},n={};switch(t.type){case"circle":r.extendFlat(n,{"circle-radius":t.circle.radius,"circle-color":t.color,"circle-opacity":t.opacity});break;case"line":r.extendFlat(n,{"line-width":t.line.width,"line-color":t.color,"line-opacity":t.opacity,"line-dasharray":t.line.dash});break;case"fill":r.extendFlat(n,{"fill-color":t.color,"fill-outline-color":t.fill.outlinecolor,"fill-opacity":t.opacity});break;case"symbol":var a=t.symbol,o=i(a.textposition,a.iconsize);r.extendFlat(e,{"icon-image":a.icon+"-15","icon-size":a.iconsize/10,"text-field":a.text,"text-size":a.textfont.size,"text-anchor":o.anchor,"text-offset":o.offset,"symbol-placement":a.placement}),r.extendFlat(n,{"icon-color":t.color,"text-color":a.textfont.color,"text-opacity":t.opacity});break;case"raster":r.extendFlat(n,{"raster-fade-duration":0,"raster-opacity":t.opacity})}return{layout:e,paint:n}}s.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=l(t)},s.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},s.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},s.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},s.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},s.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapboxLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},s.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,l(t)){var r=function(t){var e,r=t.sourcetype,i=t.source,a={type:r};return"geojson"===r?e="data":"vector"===r?e="string"==typeof i?"url":"tiles":"raster"===r?(e="tiles",a.tileSize=256):"image"===r&&(e="url",a.coordinates=t.coordinates),a[e]=i,t.sourceattribution&&(a.attribution=n(t.sourceattribution)),a}(t);e.addSource(this.idSource,r)}},s.findFollowingMapboxLayerId=function(t){if("traces"===t)for(var e=this.subplot.getMapLayers(),r=0;r1)for(r=0;r-1&&m(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),i.indexOf("event")>-1&&l.click(n,e.originalEvent)}}},x.updateFx=function(t){var e=this,r=e.map,i=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,r){r.isRect?(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]:(t.lassoPoints={})[e.id]=r.map(c)};var l=e.dragOptions;e.dragOptions=n.extendDeep(l||{},{dragmode:t.dragmode,element:e.div,gd:i,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off("click",e.onClickInPanHandler),h(o)||u(o)?(r.dragPan.disable(),r.on("zoomstart",e.clearOutline),e.dragOptions.prepFn=function(t,r,n){p(t,r,n,e.dragOptions,o)},s.init(e.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener("touchstart",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on("click",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},x.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+"px",n.height=r.h*(e.y[1]-e.y[0])+"px",n.left=r.l+e.x[0]*r.w+"px",n.top=r.t+(1-e.y[1])*r.h+"px",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},x.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;e1&&r.warn(p.multipleTokensErrorMsg),i[0]):(a.length&&r.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}(t,o);e.accessToken=s;for(var l=0;lw/2){var T=v.split("|").join("
");_.text(T).attr("data-unformatted",T).call(c.convertToTspans,t),b=l.bBox(_.node())}_.attr("transform",n(-3,8-b.height)),x.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var A=1;b.width+6>w&&(A=w/(b.width+6));var k=[a.l+a.w*d.x[1],a.t+a.h*(1-d.y[0])];x.attr("transform",n(k[0],k[1])+i(A))}},t.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots[h],n=0;n=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var n=e[0].trace,i=new a(t,n.uid),o=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}}}),L_=f({"src/traces/choroplethmapbox/index.js"(t,e){["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" "),e.exports={attributes:S_(),supplyDefaults:E_(),colorbar:Uo(),calc:_g(),plot:I_(),hoverPoints:Tg(),eventData:Ag(),selectPoints:kg(),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if("string"==typeof i&&0===i.indexOf("water"))for(var a=n+1;a0?+f[u]:0),h.push({type:"Feature",geometry:{type:"Point",coordinates:y},properties:v})}}var _=a.extractOpts(e),b=_.reversescale?a.flipScale(_.colorscale):_.colorscale,w=b[0][1],T=["interpolate",["linear"],["heatmap-density"],0,i.opacity(w)<1?w:i.addOpacity(w,0)];for(u=1;u=0;r--)t.removeLayer(e[r][1])},a.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var n=e[0].trace,a=new i(t,n.uid),o=a.sourceId,s=r(e),l=a.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),a._addLayers(s,l),a}}}),B_=f({"src/traces/densitymapbox/hover.js"(t,e){var r=ir(),n=y_().hoverPoints,i=y_().getExtraText;e.exports=function(t,e,a){var o=n(t,e,a);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,"z"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=r.tickText(h,h.c2l(u.z),"hover").text}return s.extraText=i(c,u,l[0].t.labels),[s]}}}}),j_=f({"src/traces/densitymapbox/event_data.js"(t,e){e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}}}),N_=f({"src/traces/densitymapbox/index.js"(t,e){["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" "),e.exports={attributes:z_(),supplyDefaults:D_(),colorbar:Uo(),formatLabels:f_(),calc:O_(),plot:F_(),hoverPoints:B_(),eventData:j_(),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;nESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":"{name:latin}\n{name:nonlatin}","text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":"{name:latin}\n{name:nonlatin}","text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":"{name:latin}\n{name:nonlatin}","text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":"{name:latin}\n{name:nonlatin}","text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":"{name:latin}\n{name:nonlatin}","text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":"{name:latin}\n{name:nonlatin}","text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),q_=f({"src/plots/map/styles/arcgis-sat.js"(t,e){e.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),H_=f({"src/plots/map/constants.js"(t,e){var r=Zt(),n=V_(),i="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",a="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",s={basic:o,streets:o,outdoors:o,light:i,dark:a,satellite:q_(),"satellite-streets":n,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:'© OpenStreetMap contributors',tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":i,"carto-darkmatter":a,"carto-voyager":o,"carto-positron-nolabels":"https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json","carto-darkmatter-nolabels":"https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json","carto-voyager-nolabels":"https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json"},l=r(s);e.exports={styleValueDflt:"basic",stylesMap:s,styleValuesMap:l,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",l.join(", "),"or use a tile service."].join("\n"),mapOnErrorMsg:"Map error."}}}),G_=f({"src/plots/map/layout_attributes.js"(t,e){var r=le(),n=H().defaultLine,i=Aa().attributes,a=F(),o=Tn().textposition,s=Pt().overrideAll,l=ye().templatedArray,c=H_(),u=a({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});u.family.dflt="Open Sans Regular, Arial Unicode MS Regular",(e.exports=s({_arrayAttrRegexps:[r.counterRegex("map",".layers",!0)],domain:i({name:"map"}),style:{valType:"any",values:c.styleValuesMap,dflt:c.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:l("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:n},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:n}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:u,textposition:r.extendFlat({},o,{arrayOk:!1})}})},"plot","from-root")).uirevision={valType:"any",editType:"none"}}}),W_=f({"src/traces/scattermap/attributes.js"(t,e){var r=Ot().hovertemplateAttrs,n=Ot().texttemplateAttrs,i=wn(),a=Vm(),o=Tn(),s=G_(),l=U(),c=Pe(),u=R().extendFlat,h=Pt().overrideAll,p=G_(),f=a.line,d=a.marker;e.exports=h({lon:a.lon,lat:a.lat,cluster:{enabled:{valType:"boolean"},maxzoom:u({},p.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:u({},d.opacity,{dflt:1})},mode:u({},o.mode,{dflt:"markers"}),text:u({},o.text,{}),texttemplate:n({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:u({},o.hovertext,{}),line:{color:f.color,width:f.width},connectgaps:o.connectgaps,marker:u({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:d.opacity,size:d.size,sizeref:d.sizeref,sizemin:d.sizemin,sizemode:d.sizemode},c("marker")),fill:a.fill,fillcolor:i(),textfont:s.layers.symbol.textfont,textposition:s.layers.symbol.textposition,below:{valType:"string"},selected:{marker:o.selected.marker},unselected:{marker:o.unselected.marker},hoverinfo:u({},l.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:r()},"calc","nested")}}),Z_=f({"src/traces/scattermap/constants.js"(t,e){var r=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];e.exports={isSupportedFont:function(t){return-1!==r.indexOf(t)}}}}),Y_=f({"src/traces/scattermap/defaults.js"(t,e){var r=le(),n=Ye(),i=Zn(),a=Yn(),o=$n(),s=Kn(),l=W_(),c=Z_().isSupportedFont;e.exports=function(t,e,u,h){function p(n,i){return r.coerce(t,e,l,n,i)}function f(n,i){return r.coerce2(t,e,l,n,i)}var d=function(t,e,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return e._length=a,a}(0,e,p);if(d){if(p("text"),p("texttemplate"),p("hovertext"),p("hovertemplate"),p("mode"),p("below"),n.hasMarkers(e)){i(t,e,u,h,p,{noLine:!0,noAngle:!0}),p("marker.allowoverlap"),p("marker.angle");var m=e.marker;"circle"!==m.symbol&&(r.isArrayOrTypedArray(m.size)&&(m.size=m.size[0]),r.isArrayOrTypedArray(m.color)&&(m.color=m.color[0]))}n.hasLines(e)&&(a(t,e,u,h,p,{noDash:!0}),p("connectgaps"));var g=f("cluster.maxzoom"),y=f("cluster.step"),v=f("cluster.color",e.marker&&e.marker.color||u),x=f("cluster.size"),_=f("cluster.opacity");if(p("cluster.enabled",!1!==g||!1!==y||!1!==v||!1!==x||!1!==_)||n.hasText(e)){var b=h.font.family;o(t,e,h,p,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:c(b)?b:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}p("fill"),"none"!==e.fill&&s(t,e,u,p),r.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}}}),X_=f({"src/traces/scattermap/format_labels.js"(t,e){var r=ir();e.exports=function(t,e,n){var i={},a=n[e.subplot]._subplot.mockAxis,o=t.lonlat;return i.lonLabel=r.tickText(a,a.c2l(o[0]),!0).text,i.latLabel=r.tickText(a,a.c2l(o[1]),!0).text,i}}}),$_=f({"src/plots/map/convert_text_opts.js"(t,e){var r=le();e.exports=function(t,e){var n=t.split(" "),i=n[0],a=n[1],o=r.isArrayOrTypedArray(e)?r.mean(e):e,s=.5+o/100,l=1.5+o/100,c=["",""],u=[0,0];switch(i){case"top":c[0]="top",u[1]=-l;break;case"bottom":c[0]="bottom",u[1]=l}switch(a){case"left":c[1]="right",u[0]=-s;break;case"right":c[1]="left",u[0]=s}return{anchor:c[0]&&c[1]?c.join("-"):c[0]?c[0]:c[1]?c[1]:"center",offset:u}}}}),K_=f({"src/traces/scattermap/convert.js"(t,e){var r=A(),n=le(),i=k().BADNUM,a=Xm(),o=Ze(),s=Qe(),l=Xe(),c=Ye(),u=Z_().isSupportedFont,h=$_(),p=$e().appendArrayPointValue,f=Se().NEWLINES,d=Se().BR_TAG_ALL;function m(t){return{type:t,geojson:a.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function g(t,e){return n.isArrayOrTypedArray(t)?e?function(e){return r(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:y}function y(){return""}function v(t){return t[0]===i}function x(t,e){var r;if(n.isArrayOrTypedArray(t)&&n.isArrayOrTypedArray(e)){r=["step",["get","point_count"],t[0]];for(var i=1;i850?" Black":i>750?" Extra Bold":i>650?" Bold":i>550?" Semi Bold":i>450?" Medium":i>350?" Regular":i>250?" Light":i>150?" Extra Light":" Thin"):"Open Sans"===a.slice(0,2).join(" ")?(s="Open Sans",s+=i>750?" Extrabold":i>650?" Bold":i>550?" Semibold":i>350?" Regular":" Light"):"Klokantech Noto Sans"===a.slice(0,3).join(" ")&&(s="Klokantech Noto Sans","CJK"===a[3]&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),"Open Sans Regular Italic"===s?s="Open Sans Italic":"Open Sans Regular Bold"===s?s="Open Sans Bold":"Open Sans Regular Bold Italic"===s?s="Open Sans Bold Italic":"Klokantech Noto Sans Regular Italic"===s&&(s="Klokantech Noto Sans Italic"),u(s)||(s=r),s.split(", ")}e.exports=function(t,e){var i,u=e[0].trace,b=!0===u.visible&&0!==u._length,w="none"!==u.fill,T=c.hasLines(u),A=c.hasMarkers(u),k=c.hasText(u),M=A&&"circle"===u.marker.symbol,S=A&&"circle"!==u.marker.symbol,E=u.cluster&&u.cluster.enabled,C=m("fill"),I=m("line"),L=m("circle"),P=m("symbol"),z={fill:C,line:I,circle:L,symbol:P};if(!b)return z;if((w||T)&&(i=a.calcTraceToLineCoords(e)),w&&(C.geojson=a.makePolygon(i),C.layout.visibility="visible",n.extendFlat(C.paint,{"fill-color":u.fillcolor})),T&&(I.geojson=a.makeLine(i),I.layout.visibility="visible",n.extendFlat(I.paint,{"line-width":u.line.width,"line-color":u.line.color,"line-opacity":u.opacity})),M){var D=function(t){var e,i,a,c,u=t[0].trace,h=u.marker,p=u.selectedpoints,f=n.isArrayOrTypedArray(h.color),d=n.isArrayOrTypedArray(h.size),m=n.isArrayOrTypedArray(h.opacity);function g(t){return u.opacity*t}f&&(i=o.hasColorscale(u,"marker")?o.makeColorScaleFuncFromTrace(h):n.identity),d&&(a=l(u)),m&&(c=function(t){return g(r(t)?+n.constrain(t,0,1):0)});var y,x=[];for(e=0;e=0;r--){var n=e[r];i.removeLayer(u.layerIds[n])}t||i.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=a.nonCluster,r=e.length-1;r>=0;r--){var n=e[r];i.removeLayer(u.layerIds[n]),t||i.removeSource(u.sourceIds[n])}}(t)}function p(t){l?function(t){t||u.addSource("circle",o.circle,e.cluster);for(var r=a.cluster,n=0;n=0;r--){var n=e[r];t.removeLayer(this.layerIds[n]),t.removeSource(this.sourceIds[n])}},e.exports=function(t,e){var r,i,s,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,h=new o(t,l.uid,c,u),p=n(t.gd,e),f=h.below=t.belowLookup["trace-"+l.uid];if(c)for(h.addSource("circle",p.circle,l.cluster),r=0;r")}function u(t){return t+"°"}}e.exports={hoverPoints:function(t,e,a){var c=t.cd,u=c[0].trace,h=t.xa,p=t.ya,f=t.subplot,d=[],m=s+u.uid+"-circle",g=u.cluster&&u.cluster.enabled;if(g){var y=f.map.queryRenderedFeatures(null,{layers:[m]});d=y.map((function(t){return t.id}))}var v=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),x=e-v;if(r.getClosest(c,(function(t){var e=t.lonlat;if(e[0]===o||g&&-1===d.indexOf(t.i+1))return 1/0;var r=n.modHalf(e[0],360),i=e[1],s=f.project([r,i]),l=s.x-h.c2p([x,i]),c=s.y-p.c2p([r,a]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var _=c[t.index],b=_.lonlat,w=[n.modHalf(b[0],360)+v,b[1]],T=h.c2p(w),A=p.c2p(w),k=_.mrc||1;t.x0=T-k,t.x1=T+k,t.y0=A-k,t.y1=A+k;var M={};M[u.subplot]={_subplot:f};var S=u._module.formatLabels(_,u,M);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=i(u,_),t.extraText=l(u,_,c[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:l}}}),tb=f({"src/traces/scattermap/event_data.js"(t,e){e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}}}),eb=f({"src/traces/scattermap/select.js"(t,e){var r=le(),n=Ye(),i=k().BADNUM;e.exports=function(t,e){var a,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!n.hasMarkers(u))return[];if(!1===e)for(a=0;a1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)i?o=r:s=r,r=.5*(s-o)+o;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var d=n(p);let m,g;function y(){return null==m&&(m=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof createImageBitmap),m}function v(){if(null==g&&(g=!1,y())){let t=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(t){for(let e=0;e<25;e++){let r=4*e;t.fillStyle=`rgb(${r},${r+1},${r+2})`,t.fillRect(e%5,Math.floor(e/5),1,1)}let e=t.getImageData(0,0,5,5).data;for(let t=0;t<100;t++)if(t%4!=3&&e[t]!==t){g=!0;break}}}return g||!1}function x(t,e,r,n){let i=new d(t,e,r,n);return t=>i.solve(t)}let _=x(.25,.1,.25,1);function b(t,e,r){return Math.min(r,Math.max(e,t))}function w(t,e,r){let n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function T(t,...e){for(let r of e)for(let e in r)t[e]=r[e];return t}let A=1;function k(t,e,r){let n={};for(let r in t)n[r]=e.call(this,t[r],r,t);return n}function M(t,e,r){let n={};for(let r in t)e.call(this,t[r],r,t)&&(n[r]=t[r]);return n}function S(t){return Array.isArray(t)?t.map(S):"object"==typeof t&&t?k(t,S):t}let E={};function C(t){E[t]||(typeof console<"u"&&console.warn(t),E[t]=!0)}function I(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function L(t){return typeof WorkerGlobalScope<"u"&&void 0!==t&&t instanceof WorkerGlobalScope}let P=null;function z(t){return typeof ImageBitmap<"u"&&t instanceof ImageBitmap}let D="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function O(t,r,n,i,a){return e(this,void 0,void 0,(function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let e=new VideoFrame(t,{timestamp:0});try{let o=e?.format;if(!o||!o.startsWith("BGR")&&!o.startsWith("RGB"))throw new Error(`Unrecognized format ${o}`);let s=o.startsWith("BGR"),l=new Uint8ClampedArray(i*a*4);if(yield e.copyTo(l,function(t,e,r,n,i){let a=4*Math.max(-e,0),o=(Math.max(0,r)-r)*n*4+a,s=4*n,l=Math.max(0,e),c=Math.max(0,r);return{rect:{x:l,y:c,width:Math.min(t.width,e+n)-l,height:Math.min(t.height,r+i)-c},layout:[{offset:o,stride:s}]}}(t,r,n,i,a)),s)for(let t=0;tL(self)?self.worker&&self.worker.referrer:("blob:"===window.location.protocol?window.parent:window).location.href,G=function(t,r){if(/:\/\//.test(t.url)&&!/^https?:|^file:/.test(t.url)){let e=U(t.url);if(e)return e(t,r);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:t,targetMapId:V},r)}if(!(/^file:/.test(n=t.url)||/^file:/.test(H())&&!/^\w+:/.test(n))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(t,r){return e(this,void 0,void 0,(function*(){let e=new Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,cache:t.cache,referrer:H(),signal:r.signal});"json"!==t.type||e.headers.has("Accept")||e.headers.set("Accept","application/json");let n,i=yield fetch(e);if(!i.ok){let e=yield i.blob();throw new q(i.status,i.statusText,t.url,e)}n="arrayBuffer"===t.type||"image"===t.type?i.arrayBuffer():"json"===t.type?i.json():i.text();let a=yield n;if(r.signal.aborted)throw j();return{data:a,cacheControl:i.headers.get("Cache-Control"),expires:i.headers.get("Expires")}}))}(t,r);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:t,mustQueue:!0,targetMapId:V},r)}var n,i,a;return i=t,a=r,new Promise(((t,e)=>{var r;let n=new XMLHttpRequest;n.open(i.method||"GET",i.url,!0),"arrayBuffer"!==i.type&&"image"!==i.type||(n.responseType="arraybuffer");for(let t in i.headers)n.setRequestHeader(t,i.headers[t]);"json"===i.type&&(n.responseType="text",!(null===(r=i.headers)||void 0===r)&&r.Accept||n.setRequestHeader("Accept","application/json")),n.withCredentials="include"===i.credentials,n.onerror=()=>{e(new Error(n.statusText))},n.onload=()=>{if(!a.signal.aborted)if((n.status>=200&&n.status<300||0===n.status)&&null!==n.response){let r=n.response;if("json"===i.type)try{r=JSON.parse(n.response)}catch(t){return void e(t)}t({data:r,cacheControl:n.getResponseHeader("Cache-Control"),expires:n.getResponseHeader("Expires")})}else{let t=new Blob([n.response],{type:n.getResponseHeader("Content-Type")});e(new q(n.status,n.statusText,i.url,t))}},a.signal.addEventListener("abort",(()=>{n.abort(),e(j())})),n.send(i.body)}))};function W(t){if(!t||t.indexOf("://")<=0||0===t.indexOf("data:image/")||0===t.indexOf("blob:"))return!0;let e=new URL(t),r=window.location;return e.protocol===r.protocol&&e.host===r.host}function Z(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e))}function Y(t,e,r){if(r&&r[t]){let n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}class X{constructor(t,e={}){T(this,e),this.type=t}}class $ extends X{constructor(t,e={}){super("error",T({error:t},e))}}class K{on(t,e){return this._listeners=this._listeners||{},Z(t,e,this._listeners),this}off(t,e){return Y(t,e,this._listeners),Y(t,e,this._oneTimeListeners),this}once(t,e){return e?(this._oneTimeListeners=this._oneTimeListeners||{},Z(t,e,this._oneTimeListeners),this):new Promise((e=>this.once(t,e)))}fire(t,e){"string"==typeof t&&(t=new X(t,e||{}));let r=t.type;if(this.listens(r)){t.target=this;let e=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];for(let r of e)r.call(this,t);let n=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];for(let e of n)Y(r,e,this._oneTimeListeners),e.call(this,t);let i=this._eventedParent;i&&(T(t,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),i.fire(t))}else t instanceof $&&console.error(t.error);return this}listens(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this}}var J={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Q=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function tt(t,e){let r={};for(let e in t)"ref"!==e&&(r[e]=t[e]);return Q.forEach((t=>{t in e&&(r[t]=e[t])})),r}function et(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let r=0;r`:"value"===t.itemType.kind?"array":`array<${e}>`}return t.kind}let Et=[dt,mt,gt,yt,vt,wt,xt,Mt(_t),Tt,At,kt];function Ct(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!Ct(t.itemType,e.itemType))&&("number"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if("value"===t.kind)for(let t of Et)if(!Ct(t,e))return null}return`Expected ${St(t)} but found ${St(e)} instead.`}function It(t,e){return e.some((e=>e.kind===t.kind))}function Lt(t,e){return e.some((e=>"null"===e?null===t:"array"===e?Array.isArray(t):"object"===e?t&&!Array.isArray(t)&&"object"==typeof t:e===typeof t))}function Pt(t,e){return"array"===t.kind&&"array"===e.kind?t.itemType.kind===e.itemType.kind&&"number"==typeof t.N:t.kind===e.kind}let zt=.96422,Dt=.82521,Ot=4/29,Rt=6/29,Ft=3*Rt*Rt,Bt=Rt*Rt*Rt,jt=Math.PI/180,Nt=180/Math.PI;function Ut(t){return(t%=360)<0&&(t+=360),t}function Vt([t,e,r,n]){let i,a,o=Ht((.2225045*(t=qt(t))+.7168786*(e=qt(e))+.0606169*(r=qt(r)))/1);t===e&&e===r?i=a=o:(i=Ht((.4360747*t+.3850649*e+.1430804*r)/zt),a=Ht((.0139322*t+.0971045*e+.7141733*r)/Dt));let s=116*o-16;return[s<0?0:s,500*(i-o),200*(o-a),n]}function qt(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Ht(t){return t>Bt?Math.pow(t,1/3):t/Ft+Ot}function Gt([t,e,r,n]){let i=(t+16)/116,a=isNaN(e)?i:i+e/500,o=isNaN(r)?i:i-r/200;return i=1*Zt(i),a=zt*Zt(a),o=Dt*Zt(o),[Wt(3.1338561*a-1.6168667*i-.4906146*o),Wt(-.9787684*a+1.9161415*i+.033454*o),Wt(.0719453*a-.2289914*i+1.4052427*o),n]}function Wt(t){return(t=t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055)<0?0:t>1?1:t}function Zt(t){return t>Rt?t*t*t:Ft*(t-Ot)}function Yt(t){return parseInt(t.padEnd(2,t),16)/255}function Xt(t,e){return $t(e?t/100:t,0,1)}function $t(t,e,r){return Math.min(Math.max(e,t),r)}function Kt(t){return!t.some(Number.isNaN)}let Jt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Qt{constructor(t,e,r,n=1,i=!0){this.r=t,this.g=e,this.b=r,this.a=n,i||(this.r*=n,this.g*=n,this.b*=n,n||this.overwriteGetter("rgb",[t,e,r,n]))}static parse(t){if(t instanceof Qt)return t;if("string"!=typeof t)return;let e=function(t){if("transparent"===(t=t.toLowerCase().trim()))return[0,0,0,0];let e=Jt[t];if(e){let[t,r,n]=e;return[t/255,r/255,n/255,1]}if(t.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(t)){let e=t.length<6?1:2,r=1;return[Yt(t.slice(r,r+=e)),Yt(t.slice(r,r+=e)),Yt(t.slice(r,r+=e)),Yt(t.slice(r,r+e)||"ff")]}if(t.startsWith("rgb")){let e=t.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(e){let[t,r,n,i,a,o,s,l,c,u,h,p]=e,f=[i||" ",s||" ",u].join("");if(" "===f||" /"===f||",,"===f||",,,"===f){let t=[n,o,c].join(""),e="%%%"===t?100:""===t?255:0;if(e){let t=[$t(+r/e,0,1),$t(+a/e,0,1),$t(+l/e,0,1),h?Xt(+h,p):1];if(Kt(t))return t}}return}}let r=t.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(r){let[t,e,n,i,a,o,s,l,c]=r,u=[n||" ",a||" ",s].join("");if(" "===u||" /"===u||",,"===u||",,,"===u){let t=[+e,$t(+i,0,100),$t(+o,0,100),l?Xt(+l,c):1];if(Kt(t))return function([t,e,r,n]){function i(n){let i=(n+t/30)%12,a=e*Math.min(r,1-r);return r-a*Math.max(-1,Math.min(i-3,9-i,1))}return t=Ut(t),e/=100,r/=100,[i(0),i(8),i(4),n]}(t)}}}(t);return e?new Qt(...e,!1):void 0}get rgb(){let{r:t,g:e,b:r,a:n}=this,i=n||1/0;return this.overwriteGetter("rgb",[t/i,e/i,r/i,n])}get hcl(){return this.overwriteGetter("hcl",function(t){let[e,r,n,i]=Vt(t),a=Math.sqrt(r*r+n*n);return[Math.round(1e4*a)?Ut(Math.atan2(n,r)*Nt):NaN,a,e,i]}(this.rgb))}get lab(){return this.overwriteGetter("lab",Vt(this.rgb))}overwriteGetter(t,e){return Object.defineProperty(this,t,{value:e}),e}toString(){let[t,e,r,n]=this.rgb;return`rgba(${[t,e,r].map((t=>Math.round(255*t))).join(",")},${n})`}}Qt.black=new Qt(0,0,0,1),Qt.white=new Qt(1,1,1,1),Qt.transparent=new Qt(0,0,0,0),Qt.red=new Qt(1,0,0,1);class te{constructor(t,e,r){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(t,e){return this.collator.compare(t,e)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class ee{constructor(t,e,r,n,i){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i}}class re{constructor(t){this.sections=t}static fromString(t){return new re([new ee(t,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((t=>0!==t.text.length||t.image&&0!==t.image.name.length))}static factory(t){return t instanceof re?t:re.fromString(t)}toString(){return 0===this.sections.length?"":this.sections.map((t=>t.text)).join("")}}class ne{constructor(t){this.values=t.slice()}static parse(t){if(t instanceof ne)return t;if("number"==typeof t)return new ne([t,t,t,t]);if(Array.isArray(t)&&!(t.length<1||t.length>4)){for(let e of t)if("number"!=typeof e)return;switch(t.length){case 1:t=[t[0],t[0],t[0],t[0]];break;case 2:t=[t[0],t[1],t[0],t[1]];break;case 3:t=[t[0],t[1],t[2],t[1]]}return new ne(t)}}toString(){return JSON.stringify(this.values)}}let ie=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class ae{constructor(t){this.values=t.slice()}static parse(t){if(t instanceof ae)return t;if(Array.isArray(t)&&!(t.length<1)&&t.length%2==0){for(let e=0;e=0&&t<=255&&"number"==typeof e&&e>=0&&e<=255&&"number"==typeof r&&r>=0&&r<=255?void 0===n||"number"==typeof n&&n>=0&&n<=1?null:`Invalid rgba value [${[t,e,r,n].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof n?[t,e,r,n]:[t,e,r]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function le(t){if(null===t||"string"==typeof t||"boolean"==typeof t||"number"==typeof t||t instanceof Qt||t instanceof te||t instanceof re||t instanceof ne||t instanceof ae||t instanceof oe)return!0;if(Array.isArray(t)){for(let e of t)if(!le(e))return!1;return!0}if("object"==typeof t){for(let e in t)if(!le(t[e]))return!1;return!0}return!1}function ce(t){if(null===t)return dt;if("string"==typeof t)return gt;if("boolean"==typeof t)return yt;if("number"==typeof t)return mt;if(t instanceof Qt)return vt;if(t instanceof te)return bt;if(t instanceof re)return wt;if(t instanceof ne)return Tt;if(t instanceof ae)return kt;if(t instanceof oe)return At;if(Array.isArray(t)){let e,r=t.length;for(let r of t){let t=ce(r);if(e){if(e===t)continue;e=_t;break}e=t}return Mt(e||_t,r)}return xt}function ue(t){let e=typeof t;return null===t?"":"string"===e||"number"===e||"boolean"===e?String(t):t instanceof Qt||t instanceof re||t instanceof ne||t instanceof ae||t instanceof oe?t.toString():JSON.stringify(t)}class he{constructor(t,e){this.type=t,this.value=e}static parse(t,e){if(2!==t.length)return e.error(`'literal' expression requires exactly one argument, but found ${t.length-1} instead.`);if(!le(t[1]))return e.error("invalid value");let r=t[1],n=ce(r),i=e.expectedType;return"array"!==n.kind||0!==n.N||!i||"array"!==i.kind||"number"==typeof i.N&&0!==i.N||(n=i),new he(n,r)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class pe{constructor(t){this.name="ExpressionEvaluationError",this.message=t}toJSON(){return this.message}}let fe={string:gt,number:mt,boolean:yt,object:xt};class de{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");let r,n=1,i=t[0];if("array"===i){let i,a;if(t.length>2){let r=t[1];if("string"!=typeof r||!(r in fe)||"object"===r)return e.error('The item type argument of "array" must be one of string, number, boolean',1);i=fe[r],n++}else i=_t;if(t.length>3){if(null!==t[2]&&("number"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);a=t[2],n++}r=Mt(i,a)}else{if(!fe[i])throw new Error(`Types doesn't contain name = ${i}`);r=fe[i]}let a=[];for(;nt.outputDefined()))}}let me={"to-boolean":yt,"to-color":vt,"to-number":mt,"to-string":gt};class ge{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");let r=t[0];if(!me[r])throw new Error(`Can't parse ${r} as it is not part of the known types`);if(("to-boolean"===r||"to-string"===r)&&2!==t.length)return e.error("Expected one argument.");let n=me[r],i=[];for(let r=1;r4?`Invalid rbga value ${JSON.stringify(e)}: expected an array containing either three or four numeric values.`:se(e[0],e[1],e[2],e[3]),!r))return new Qt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new pe(r||`Could not parse color from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"padding":{let e;for(let r of this.args){e=r.evaluate(t);let n=ne.parse(e);if(n)return n}throw new pe(`Could not parse padding from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"variableAnchorOffsetCollection":{let e;for(let r of this.args){e=r.evaluate(t);let n=ae.parse(e);if(n)return n}throw new pe(`Could not parse variableAnchorOffsetCollection from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}case"number":{let e=null;for(let r of this.args){if(e=r.evaluate(t),null===e)return 0;let n=Number(e);if(!isNaN(n))return n}throw new pe(`Could not convert ${JSON.stringify(e)} to number.`)}case"formatted":return re.fromString(ue(this.args[0].evaluate(t)));case"resolvedImage":return oe.fromString(ue(this.args[0].evaluate(t)));default:return ue(this.args[0].evaluate(t))}}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}let ye=["Unknown","Point","LineString","Polygon"];class ve{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?ye[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(t){let e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Qt.parse(t)),e}}class xe{constructor(t,e,r=[],n,i=new ft,a=[]){this.registry=t,this.path=r,this.key=r.map((t=>`[${t}]`)).join(""),this.scope=i,this.errors=a,this.expectedType=n,this._isConstant=e}parse(t,e,r,n,i={}){return e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)}_parse(t,e){function r(t,e,r){return"assert"===r?new de(e,[t]):"coerce"===r?new ge(e,[t]):t}if(null!==t&&"string"!=typeof t&&"boolean"!=typeof t&&"number"!=typeof t||(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let n=t[0];if("string"!=typeof n)return this.error(`Expression name must be a string, but found ${typeof n} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let i=this.registry[n];if(i){let n=i.parse(t,this);if(!n)return null;if(this.expectedType){let t=this.expectedType,i=n.type;if("string"!==t.kind&&"number"!==t.kind&&"boolean"!==t.kind&&"object"!==t.kind&&"array"!==t.kind||"value"!==i.kind)if("color"!==t.kind&&"formatted"!==t.kind&&"resolvedImage"!==t.kind||"value"!==i.kind&&"string"!==i.kind)if("padding"!==t.kind||"value"!==i.kind&&"number"!==i.kind&&"array"!==i.kind)if("variableAnchorOffsetCollection"!==t.kind||"value"!==i.kind&&"array"!==i.kind){if(this.checkSubtype(t,i))return null}else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"coerce");else n=r(n,t,e.typeAnnotation||"assert")}if(!(n instanceof he)&&"resolvedImage"!==n.type.kind&&this._isConstant(n)){let t=new ve;try{n=new he(n.type,n.evaluate(t))}catch(t){return this.error(t.message),null}}return n}return this.error(`Unknown expression "${n}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(void 0===t?"'undefined' value invalid. Use null instead.":"object"==typeof t?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof t} instead.`)}concat(t,e,r){let n="number"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new xe(this.registry,this._isConstant,n,e||null,i,this.errors)}error(t,...e){let r=`${this.key}${e.map((t=>`[${t}]`)).join("")}`;this.errors.push(new pt(r,t))}checkSubtype(t,e){let r=Ct(t,e);return r&&this.error(r),r}}class _e{constructor(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e}evaluate(t){return this.result.evaluate(t)}eachChild(t){for(let e of this.bindings)t(e[1]);t(this.result)}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found ${t.length-1} instead.`);let r=[];for(let n=1;n=r.length)throw new pe(`Array index out of bounds: ${e} > ${r.length-1}.`);if(e!==Math.floor(e))throw new pe(`Array index must be an integer, but found ${e} instead.`);return r[e]}eachChild(t){t(this.index),t(this.input)}outputDefined(){return!1}}class Te{constructor(t,e){this.type=yt,this.needle=t,this.haystack=e}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);let r=e.parse(t[1],1,_t),n=e.parse(t[2],2,_t);return r&&n?It(r.type,[yt,gt,mt,dt,_t])?new Te(r,n):e.error(`Expected first argument to be of type boolean, string, number or null, but found ${St(r.type)} instead`):null}evaluate(t){let e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!Lt(e,["boolean","string","number","null"]))throw new pe(`Expected first argument to be of type boolean, string, number or null, but found ${St(ce(e))} instead.`);if(!Lt(r,["string","array"]))throw new pe(`Expected second argument to be of type array or string, but found ${St(ce(r))} instead.`);return r.indexOf(e)>=0}eachChild(t){t(this.needle),t(this.haystack)}outputDefined(){return!0}}class Ae{constructor(t,e,r){this.type=mt,this.needle=t,this.haystack=e,this.fromIndex=r}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);let r=e.parse(t[1],1,_t),n=e.parse(t[2],2,_t);if(!r||!n)return null;if(!It(r.type,[yt,gt,mt,dt,_t]))return e.error(`Expected first argument to be of type boolean, string, number or null, but found ${St(r.type)} instead`);if(4===t.length){let i=e.parse(t[3],3,mt);return i?new Ae(r,n,i):null}return new Ae(r,n)}evaluate(t){let e,r=this.needle.evaluate(t),n=this.haystack.evaluate(t);if(!Lt(r,["boolean","string","number","null"]))throw new pe(`Expected first argument to be of type boolean, string, number or null, but found ${St(ce(r))} instead.`);if(this.fromIndex&&(e=this.fromIndex.evaluate(t)),Lt(n,["string"])){let t=n.indexOf(r,e);return-1===t?-1:[...n.slice(0,t)].length}if(Lt(n,["array"]))return n.indexOf(r,e);throw new pe(`Expected second argument to be of type array or string, but found ${St(ce(n))} instead.`)}eachChild(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)}outputDefined(){return!1}}class ke{constructor(t,e,r,n,i,a){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a}static parse(t,e){if(t.length<5)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if(t.length%2!=1)return e.error("Expected an even number of arguments.");let r,n;e.expectedType&&"value"!==e.expectedType.kind&&(n=e.expectedType);let i={},a=[];for(let o=2;oNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof t&&Math.floor(t)!==t)return c.error("Numeric branch labels must be integer values.");if(r){if(c.checkSubtype(r,ce(t)))return null}else r=ce(t);if(void 0!==i[String(t)])return c.error("Branch labels must be unique.");i[String(t)]=a.length}let u=e.parse(l,o,n);if(!u)return null;n=n||u.type,a.push(u)}let o=e.parse(t[1],1,_t);if(!o)return null;let s=e.parse(t[t.length-1],t.length-1,n);return s?"value"!==o.type.kind&&e.concat(1).checkSubtype(r,o.type)?null:new ke(r,n,o,i,a,s):null}evaluate(t){let e=this.input.evaluate(t);return(ce(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)}eachChild(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))&&this.otherwise.outputDefined()}}class Me{constructor(t,e,r){this.type=t,this.branches=e,this.otherwise=r}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found only ${t.length-1}.`);if(t.length%2!=0)return e.error("Expected an odd number of arguments.");let r;e.expectedType&&"value"!==e.expectedType.kind&&(r=e.expectedType);let n=[];for(let i=1;ie.outputDefined()))&&this.otherwise.outputDefined()}}class Se{constructor(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);let r=e.parse(t[1],1,_t),n=e.parse(t[2],2,mt);if(!r||!n)return null;if(!It(r.type,[Mt(_t),gt,_t]))return e.error(`Expected first argument to be of type array or string, but found ${St(r.type)} instead`);if(4===t.length){let i=e.parse(t[3],3,mt);return i?new Se(r.type,r,n,i):null}return new Se(r.type,r,n)}evaluate(t){let e,r=this.input.evaluate(t),n=this.beginIndex.evaluate(t);if(this.endIndex&&(e=this.endIndex.evaluate(t)),Lt(r,["string"]))return[...r].slice(n,e).join("");if(Lt(r,["array"]))return r.slice(n,e);throw new pe(`Expected first argument to be of type array or string, but found ${St(ce(r))} instead.`)}eachChild(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)}outputDefined(){return!1}}function Ee(t,e){let r,n,i=t.length-1,a=0,o=i,s=0;for(;a<=o;)if(s=Math.floor((a+o)/2),r=t[s],n=t[s+1],r<=e){if(s===i||ee))throw new pe("Input is not a number.");o=s-1}return 0}class Ce{constructor(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(let[t,e]of r)this.labels.push(t),this.outputs.push(e)}static parse(t,e){if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");let r=e.parse(t[1],1,mt);if(!r)return null;let n=[],i=null;e.expectedType&&"value"!==e.expectedType.kind&&(i=e.expectedType);for(let r=1;r=a)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',s);let c=e.parse(o,l,i);if(!c)return null;i=i||c.type,n.push([a,c])}return new Ce(i,r,n)}evaluate(t){let e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);let n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);let i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[Ee(e,n)].evaluate(t)}eachChild(t){t(this.input);for(let e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}var Ie=Le;function Le(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n}Le.prototype={sampleCurveX:function(t){return((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)i?o=r:s=r,r=.5*(s-o)+o;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var Pe,ze=(Pe=Ie)&&Pe.__esModule&&Object.prototype.hasOwnProperty.call(Pe,"default")?Pe.default:Pe;function De(t,e,r){return t+r*(e-t)}function Oe(t,e,r){return t.map(((t,n)=>De(t,e[n],r)))}let Re={number:De,color:function(t,e,r,n="rgb"){switch(n){case"rgb":{let[n,i,a,o]=Oe(t.rgb,e.rgb,r);return new Qt(n,i,a,o,!1)}case"hcl":{let n,i,[a,o,s,l]=t.hcl,[c,u,h,p]=e.hcl;if(isNaN(a)||isNaN(c))isNaN(a)?isNaN(c)?n=NaN:(n=c,1!==s&&0!==s||(i=u)):(n=a,1!==h&&0!==h||(i=o));else{let t=c-a;c>a&&t>180?t-=360:c180&&(t+=360),n=a+r*t}let[f,d,m,g]=function([t,e,r,n]){return t=isNaN(t)?0:t*jt,Gt([r,Math.cos(t)*e,Math.sin(t)*e,n])}([n,i??De(o,u,r),De(s,h,r),De(l,p,r)]);return new Qt(f,d,m,g,!1)}case"lab":{let[n,i,a,o]=Gt(Oe(t.lab,e.lab,r));return new Qt(n,i,a,o,!1)}}},array:Oe,padding:function(t,e,r){return new ne(Oe(t.values,e.values,r))},variableAnchorOffsetCollection:function(t,e,r){let n=t.values,i=e.values;if(n.length!==i.length)throw new pe(`Cannot interpolate values of different length. from: ${t.toString()}, to: ${e.toString()}`);let a=[];for(let t=0;t"number"!=typeof t||t<0||t>1)))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:t}}}if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");if(i=e.parse(i,2,mt),!i)return null;let o=[],s=null;"interpolate-hcl"===r||"interpolate-lab"===r?s=vt:e.expectedType&&"value"!==e.expectedType.kind&&(s=e.expectedType);for(let t=0;t=r)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',i);let c=e.parse(n,l,s);if(!c)return null;s=s||c.type,o.push([r,c])}return Pt(s,mt)||Pt(s,vt)||Pt(s,Tt)||Pt(s,kt)||Pt(s,Mt(mt))?new Fe(s,r,n,i,o):e.error(`Type ${St(s)} is not interpolatable.`)}evaluate(t){let e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);let n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);let i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);let a=Ee(e,n),o=Fe.interpolationFactor(this.interpolation,n,e[a],e[a+1]),s=r[a].evaluate(t),l=r[a+1].evaluate(t);switch(this.operator){case"interpolate":return Re[this.type.kind](s,l,o);case"interpolate-hcl":return Re.color(s,l,o,"hcl");case"interpolate-lab":return Re.color(s,l,o,"lab")}}eachChild(t){t(this.input);for(let e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Be(t,e,r,n){let i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}class je{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expectected at least one argument.");let r=null,n=e.expectedType;n&&"value"!==n.kind&&(r=n);let i=[];for(let n of t.slice(1)){let t=e.parse(n,1+i.length,r,void 0,{typeAnnotation:"omit"});if(!t)return null;r=r||t.type,i.push(t)}if(!r)throw new Error("No output type");let a=n&&i.some((t=>Ct(n,t.type)));return new je(a?_t:r,i)}evaluate(t){let e,r=null,n=0;for(let i of this.args)if(n++,r=i.evaluate(t),r&&r instanceof oe&&!r.available&&(e||(e=r.name),r=null,n===this.args.length&&(r=e)),null!==r)break;return r}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}function Ne(t,e){return"=="===t||"!="===t?"boolean"===e.kind||"string"===e.kind||"number"===e.kind||"null"===e.kind||"value"===e.kind:"string"===e.kind||"number"===e.kind||"value"===e.kind}function Ue(t,e,r,n){return 0===n.compare(e,r)}function Ve(t,e,r){let n="=="!==t&&"!="!==t;return class i{constructor(t,e,r){this.type=yt,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument="value"===t.type.kind||"value"===e.type.kind}static parse(t,e){if(3!==t.length&&4!==t.length)return e.error("Expected two or three arguments.");let r=t[0],a=e.parse(t[1],1,_t);if(!a)return null;if(!Ne(r,a.type))return e.concat(1).error(`"${r}" comparisons are not supported for type '${St(a.type)}'.`);let o=e.parse(t[2],2,_t);if(!o)return null;if(!Ne(r,o.type))return e.concat(2).error(`"${r}" comparisons are not supported for type '${St(o.type)}'.`);if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error(`Cannot compare types '${St(a.type)}' and '${St(o.type)}'.`);n&&("value"===a.type.kind&&"value"!==o.type.kind?a=new de(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new de(a.type,[o])));let s=null;if(4===t.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot use collator to compare non-string types.");if(s=e.parse(t[3],3,bt),!s)return null}return new i(a,o,s)}evaluate(i){let a=this.lhs.evaluate(i),o=this.rhs.evaluate(i);if(n&&this.hasUntypedArgument){let e=ce(a),r=ce(o);if(e.kind!==r.kind||"string"!==e.kind&&"number"!==e.kind)throw new pe(`Expected arguments for "${t}" to be (string, string) or (number, number), but found (${e.kind}, ${r.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){let t=ce(a),r=ce(o);if("string"!==t.kind||"string"!==r.kind)return e(i,a,o)}return this.collator?r(i,a,o,this.collator.evaluate(i)):e(i,a,o)}eachChild(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)}outputDefined(){return!0}}}let qe=Ve("==",(function(t,e,r){return e===r}),Ue),He=Ve("!=",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!Ue(0,e,r,n)})),Ge=Ve("<",(function(t,e,r){return e",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),Ze=Ve("<=",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),Ye=Ve(">=",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0}));class Xe{constructor(t,e,r){this.type=bt,this.locale=r,this.caseSensitive=t,this.diacriticSensitive=e}static parse(t,e){if(2!==t.length)return e.error("Expected one argument.");let r=t[1];if("object"!=typeof r||Array.isArray(r))return e.error("Collator options argument must be an object.");let n=e.parse(void 0!==r["case-sensitive"]&&r["case-sensitive"],1,yt);if(!n)return null;let i=e.parse(void 0!==r["diacritic-sensitive"]&&r["diacritic-sensitive"],1,yt);if(!i)return null;let a=null;return r.locale&&(a=e.parse(r.locale,1,gt),!a)?null:new Xe(n,i,a)}evaluate(t){return new te(this.caseSensitive.evaluate(t),this.diacriticSensitive.evaluate(t),this.locale?this.locale.evaluate(t):null)}eachChild(t){t(this.caseSensitive),t(this.diacriticSensitive),this.locale&&t(this.locale)}outputDefined(){return!1}}class $e{constructor(t,e,r,n,i){this.type=gt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i}static parse(t,e){if(3!==t.length)return e.error("Expected two arguments.");let r=e.parse(t[1],1,mt);if(!r)return null;let n=t[2];if("object"!=typeof n||Array.isArray(n))return e.error("NumberFormat options argument must be an object.");let i=null;if(n.locale&&(i=e.parse(n.locale,1,gt),!i))return null;let a=null;if(n.currency&&(a=e.parse(n.currency,1,gt),!a))return null;let o=null;if(n["min-fraction-digits"]&&(o=e.parse(n["min-fraction-digits"],1,mt),!o))return null;let s=null;return n["max-fraction-digits"]&&(s=e.parse(n["max-fraction-digits"],1,mt),!s)?null:new $e(r,i,a,o,s)}evaluate(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))}eachChild(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)}outputDefined(){return!1}}class Ke{constructor(t){this.type=wt,this.sections=t}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");let r=t[1];if(!Array.isArray(r)&&"object"==typeof r)return e.error("First argument must be an image or text section.");let n=[],i=!1;for(let r=1;r<=t.length-1;++r){let a=t[r];if(i&&"object"==typeof a&&!Array.isArray(a)){i=!1;let t=null;if(a["font-scale"]&&(t=e.parse(a["font-scale"],1,mt),!t))return null;let r=null;if(a["text-font"]&&(r=e.parse(a["text-font"],1,Mt(gt)),!r))return null;let o=null;if(a["text-color"]&&(o=e.parse(a["text-color"],1,vt),!o))return null;let s=n[n.length-1];s.scale=t,s.font=r,s.textColor=o}else{let a=e.parse(t[r],1,_t);if(!a)return null;let o=a.type.kind;if("string"!==o&&"value"!==o&&"null"!==o&&"resolvedImage"!==o)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,n.push({content:a,scale:null,font:null,textColor:null})}}return new Ke(n)}evaluate(t){return new re(this.sections.map((e=>{let r=e.content.evaluate(t);return ce(r)===At?new ee("",r,null,null,null):new ee(ue(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)})))}eachChild(t){for(let e of this.sections)t(e.content),e.scale&&t(e.scale),e.font&&t(e.font),e.textColor&&t(e.textColor)}outputDefined(){return!1}}class Je{constructor(t){this.type=At,this.input=t}static parse(t,e){if(2!==t.length)return e.error("Expected two arguments.");let r=e.parse(t[1],1,gt);return r?new Je(r):e.error("No image name provided.")}evaluate(t){let e=this.input.evaluate(t),r=oe.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r}eachChild(t){t(this.input)}outputDefined(){return!1}}class Qe{constructor(t){this.type=mt,this.input=t}static parse(t,e){if(2!==t.length)return e.error(`Expected 1 argument, but found ${t.length-1} instead.`);let r=e.parse(t[1],1);return r?"array"!==r.type.kind&&"string"!==r.type.kind&&"value"!==r.type.kind?e.error(`Expected argument of type string or array, but found ${St(r.type)} instead.`):new Qe(r):null}evaluate(t){let e=this.input.evaluate(t);if("string"==typeof e)return[...e].length;if(Array.isArray(e))return e.length;throw new pe(`Expected value to be of type string or array, but found ${St(ce(e))} instead.`)}eachChild(t){t(this.input)}outputDefined(){return!1}}let tr=8192;function er(t,e){let r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,i=Math.pow(2,e.z);return[Math.round(r*i*tr),Math.round(n*i*tr)]}function rr(t,e){let r=Math.pow(2,e.z);return[(i=(t[0]/tr+e.x)/r,360*i-180),(n=(t[1]/tr+e.y)/r,360/Math.PI*Math.atan(Math.exp((180-360*n)*Math.PI/180))-90)];var n,i}function nr(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1])}function ir(t,e){return!(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3])}function ar(t,e,r){let n=t[0]-e[0],i=t[1]-e[1],a=t[0]-r[0],o=t[1]-r[1];return n*o-a*i==0&&n*a<=0&&i*o<=0}function or(t,e,r,n){return(i=[n[0]-r[0],n[1]-r[1]])[0]*(a=[e[0]-t[0],e[1]-t[1]])[1]-i[1]*a[0]!=0&&!(!pr(t,e,r,n)||!pr(r,n,t,e));var i,a}function sr(t,e,r){for(let n of r)for(let r=0;r(i=t)[1]!=(o=s[e+1])[1]>i[1]&&i[0]<(o[0]-a[0])*(i[1]-a[1])/(o[1]-a[1])+a[0]&&(n=!n)}var i,a,o;return n}function cr(t,e){for(let r of e)if(lr(t,r))return!0;return!1}function ur(t,e){for(let r of t)if(!lr(r,e))return!1;for(let r=0;r0&&s<0||o<0&&s>0}function fr(t,e,r){let n=[];for(let i=0;ir[2]){let e=.5*n,i=t[0]-r[0]>e?-n:r[0]-t[0]>e?n:0;0===i&&(i=t[0]-r[2]>e?-n:r[2]-t[0]>e?n:0),t[0]+=i}nr(e,t)}function gr(t,e,r,n){let i=Math.pow(2,n.z)*tr,a=[n.x*tr,n.y*tr],o=[];for(let n of t)for(let t of n){let n=[t.x+a[0],t.y+a[1]];mr(n,e,r,i),o.push(n)}return o}function yr(t,e,r,n){let i=Math.pow(2,n.z)*tr,a=[n.x*tr,n.y*tr],o=[];for(let r of t){let t=[];for(let n of r){let r=[n.x+a[0],n.y+a[1]];nr(e,r),t.push(r)}o.push(t)}if(e[2]-e[0]<=i/2){(s=e)[0]=s[1]=1/0,s[2]=s[3]=-1/0;for(let t of o)for(let n of t)mr(n,e,r,i)}var s;return o}class vr{constructor(t,e){this.type=yt,this.geojson=t,this.geometries=e}static parse(t,e){if(2!==t.length)return e.error(`'within' expression requires exactly one argument, but found ${t.length-1} instead.`);if(le(t[1])){let e=t[1];if("FeatureCollection"===e.type){let t=[];for(let r of e.features){let{type:e,coordinates:n}=r.geometry;"Polygon"===e&&t.push(n),"MultiPolygon"===e&&t.push(...n)}if(t.length)return new vr(e,{type:"MultiPolygon",coordinates:t})}else if("Feature"===e.type){let t=e.geometry.type;if("Polygon"===t||"MultiPolygon"===t)return new vr(e,e.geometry)}else if("Polygon"===e.type||"MultiPolygon"===e.type)return new vr(e,e)}return e.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if("Point"===t.geometryType())return function(t,e){let r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if("Polygon"===e.type){let a=fr(e.coordinates,n,i),o=gr(t.geometry(),r,n,i);if(!ir(r,n))return!1;for(let t of o)if(!lr(t,a))return!1}if("MultiPolygon"===e.type){let a=dr(e.coordinates,n,i),o=gr(t.geometry(),r,n,i);if(!ir(r,n))return!1;for(let t of o)if(!cr(t,a))return!1}return!0}(t,this.geometries);if("LineString"===t.geometryType())return function(t,e){let r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if("Polygon"===e.type){let a=fr(e.coordinates,n,i),o=yr(t.geometry(),r,n,i);if(!ir(r,n))return!1;for(let t of o)if(!ur(t,a))return!1}if("MultiPolygon"===e.type){let a=dr(e.coordinates,n,i),o=yr(t.geometry(),r,n,i);if(!ir(r,n))return!1;for(let t of o)if(!hr(t,a))return!1}return!0}(t,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let xr=class{constructor(t=[],e=(t,e)=>te?1:0){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t)}push(t){this.data.push(t),this._up(this.length++)}pop(){if(0===this.length)return;let t=this.data[0],e=this.data.pop();return--this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){let{data:e,compare:r}=this,n=e[t];for(;t>0;){let i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n}_down(t){let{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t=0)break;e[t]=e[n],t=n}e[t]=i}};function _r(t,e,r,n,i){br(t,e,r,n||t.length-1,i||Tr)}function br(t,e,r,n,i){for(;n>r;){if(n-r>600){var a=n-r+1,o=e-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);br(t,e,Math.max(r,Math.floor(e-o*l/a+c)),Math.min(n,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],h=r,p=n;for(wr(t,r,e),i(t[n],u)>0&&wr(t,r,n);h0;)p--}0===i(t[r],u)?wr(t,r,p):wr(t,++p,n),p<=e&&(r=p+1),e<=p&&(n=p-1)}}function wr(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function Tr(t,e){return te?1:0}function Ar(t,e){if(t.length<=1)return[t];let r,n,i=[];for(let e of t){let t=Mr(e);0!==t&&(e.area=Math.abs(t),void 0===n&&(n=t<0),n===t<0?(r&&i.push(r),r=[e]):r.push(e))}if(r&&i.push(r),e>1)for(let t=0;t1?(l=t[s+1][0],c=t[s+1][1]):p>0&&(l+=u/this.kx*p,c+=h/this.ky*p)),u=this.wrap(e[0]-l)*this.kx,h=(e[1]-c)*this.ky;let f=u*u+h*h;f180;)t-=360;return t}}function Lr(t,e){return e[0]-t[0]}function Pr(t){return t[1]-t[0]+1}function zr(t,e){return t[1]>=t[0]&&t[1]t[1])return[null,null];let r=Pr(t);if(e){if(2===r)return[t,null];let e=Math.floor(r/2);return[[t[0],t[0]+e],[t[0]+e,t[1]]]}if(1===r)return[t,null];let n=Math.floor(r/2)-1;return[[t[0],t[0]+n],[t[0]+n+1,t[1]]]}function Or(t,e){if(!zr(e,t.length))return[1/0,1/0,-1/0,-1/0];let r=[1/0,1/0,-1/0,-1/0];for(let n=e[0];n<=e[1];++n)nr(r,t[n]);return r}function Rr(t){let e=[1/0,1/0,-1/0,-1/0];for(let r of t)for(let t of r)nr(e,t);return e}function Fr(t){return t[0]!==-1/0&&t[1]!==-1/0&&t[2]!==1/0&&t[3]!==1/0}function Br(t,e,r){if(!Fr(t)||!Fr(e))return NaN;let n=0,i=0;return t[2]e[2]&&(n=t[0]-e[2]),t[1]>e[3]&&(i=t[1]-e[3]),t[3]=n)return n;if(ir(i,a)){if(Gr(t,e))return 0}else if(Gr(e,t))return 0;let o=1/0;for(let n of t)for(let t=0,i=n.length,a=i-1;t0;){let i=o.pop();if(i[0]>=a)continue;let l=i[1],c=e?50:100;if(Pr(l)<=c){if(!zr(l,t.length))return NaN;if(e){let e=Hr(t,l,r,n);if(isNaN(e)||0===e)return e;a=Math.min(a,e)}else for(let e=l[0];e<=l[1];++e){let i=qr(t[e],r,n);if(a=Math.min(a,i),0===a)return 0}}else{let r=Dr(l,e);Zr(o,a,n,t,s,r[0]),Zr(o,a,n,t,s,r[1])}}return a}function $r(t,e,r,n,i,a=1/0){let o=Math.min(a,i.distance(t[0],r[0]));if(0===o)return o;let s=new xr([[0,[0,t.length-1],[0,r.length-1]]],Lr);for(;s.length>0;){let a=s.pop();if(a[0]>=o)continue;let l=a[1],c=a[2],u=e?50:100,h=n?50:100;if(Pr(l)<=u&&Pr(c)<=h){if(!zr(l,t.length)&&zr(c,r.length))return NaN;let a;if(e&&n)a=Ur(t,l,r,c,i),o=Math.min(o,a);else if(e&&!n){let e=t.slice(l[0],l[1]+1);for(let t=c[0];t<=c[1];++t)if(a=jr(r[t],e,i),o=Math.min(o,a),0===o)return o}else if(!e&&n){let e=r.slice(c[0],c[1]+1);for(let r=l[0];r<=l[1];++r)if(a=jr(t[r],e,i),o=Math.min(o,a),0===o)return o}else a=Vr(t,l,r,c,i),o=Math.min(o,a)}else{let a=Dr(l,e),u=Dr(c,n);Yr(s,o,i,t,r,a[0],u[0]),Yr(s,o,i,t,r,a[0],u[1]),Yr(s,o,i,t,r,a[1],u[0]),Yr(s,o,i,t,r,a[1],u[1])}}return o}function Kr(t){return"MultiPolygon"===t.type?t.coordinates.map((t=>({type:"Polygon",coordinates:t}))):"MultiLineString"===t.type?t.coordinates.map((t=>({type:"LineString",coordinates:t}))):"MultiPoint"===t.type?t.coordinates.map((t=>({type:"Point",coordinates:t}))):[t]}class Jr{constructor(t,e){this.type=mt,this.geojson=t,this.geometries=e}static parse(t,e){if(2!==t.length)return e.error(`'distance' expression requires exactly one argument, but found ${t.length-1} instead.`);if(le(t[1])){let e=t[1];if("FeatureCollection"===e.type)return new Jr(e,e.features.map((t=>Kr(t.geometry))).flat());if("Feature"===e.type)return new Jr(e,Kr(e.geometry));if("type"in e&&"coordinates"in e)return new Jr(e,Kr(e))}return e.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if("Point"===t.geometryType())return function(t,e){let r=t.geometry(),n=r.flat().map((e=>rr([e.x,e.y],t.canonical)));if(0===r.length)return NaN;let i=new Ir(n[0][1]),a=1/0;for(let t of e){switch(t.type){case"Point":a=Math.min(a,$r(n,!1,[t.coordinates],!1,i,a));break;case"LineString":a=Math.min(a,$r(n,!1,t.coordinates,!0,i,a));break;case"Polygon":a=Math.min(a,Xr(n,!1,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries);if("LineString"===t.geometryType())return function(t,e){let r=t.geometry(),n=r.flat().map((e=>rr([e.x,e.y],t.canonical)));if(0===r.length)return NaN;let i=new Ir(n[0][1]),a=1/0;for(let t of e){switch(t.type){case"Point":a=Math.min(a,$r(n,!0,[t.coordinates],!1,i,a));break;case"LineString":a=Math.min(a,$r(n,!0,t.coordinates,!0,i,a));break;case"Polygon":a=Math.min(a,Xr(n,!0,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries);if("Polygon"===t.geometryType())return function(t,e){let r=t.geometry();if(0===r.length||0===r[0].length)return NaN;let n=Ar(r,0).map((e=>e.map((e=>e.map((e=>rr([e.x,e.y],t.canonical))))))),i=new Ir(n[0][0][0][1]),a=1/0;for(let t of e)for(let e of n){switch(t.type){case"Point":a=Math.min(a,Xr([t.coordinates],!1,e,i,a));break;case"LineString":a=Math.min(a,Xr(t.coordinates,!0,e,i,a));break;case"Polygon":a=Math.min(a,Wr(e,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let Qr={"==":qe,"!=":He,">":We,"<":Ge,">=":Ye,"<=":Ze,array:de,at:we,boolean:de,case:Me,coalesce:je,collator:Xe,format:Ke,image:Je,in:Te,"index-of":Ae,interpolate:Fe,"interpolate-hcl":Fe,"interpolate-lab":Fe,length:Qe,let:_e,literal:he,match:ke,number:de,"number-format":$e,object:de,slice:Se,step:Ce,string:de,"to-boolean":ge,"to-color":ge,"to-number":ge,"to-string":ge,var:be,within:vr,distance:Jr};class tn{constructor(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n}evaluate(t){return this._evaluate(t,this.args)}eachChild(t){this.args.forEach(t)}outputDefined(){return!1}static parse(t,e){let r=t[0],n=tn.definitions[r];if(!n)return e.error(`Unknown expression "${r}". If you wanted a literal array, use ["literal", [...]].`,0);let i=Array.isArray(n)?n[0]:n.type,a=Array.isArray(n)?[[n[1],n[2]]]:n.overloads,o=a.filter((([e])=>!Array.isArray(e)||e.length===t.length-1)),s=null;for(let[n,a]of o){s=new xe(e.registry,on,e.path,null,e.scope);let o=[],l=!1;for(let e=1;e{return e=t,Array.isArray(e)?`(${e.map(St).join(", ")})`:`(${St(e.type)}...)`;var e})).join(" | "),n=[];for(let r=1;r{r=e?r&&on(t):r&&t instanceof he})),!!r&&sn(t)&&cn(t,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function sn(t){if(t instanceof tn&&("get"===t.name&&1===t.args.length||"feature-state"===t.name||"has"===t.name&&1===t.args.length||"properties"===t.name||"geometry-type"===t.name||"id"===t.name||/^filter-/.test(t.name))||t instanceof vr||t instanceof Jr)return!1;let e=!0;return t.eachChild((t=>{e&&!sn(t)&&(e=!1)})),e}function ln(t){if(t instanceof tn&&"feature-state"===t.name)return!1;let e=!0;return t.eachChild((t=>{e&&!ln(t)&&(e=!1)})),e}function cn(t,e){if(t instanceof tn&&e.indexOf(t.name)>=0)return!1;let r=!0;return t.eachChild((t=>{r&&!cn(t,e)&&(r=!1)})),r}function un(t){return{result:"success",value:t}}function hn(t){return{result:"error",value:t}}function pn(t){return"data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function fn(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function dn(t){return!!t.expression&&t.expression.interpolated}function mn(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function gn(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}function yn(t){return t}function vn(t,e){let r="color"===e.type,n=t.stops&&"object"==typeof t.stops[0][0],i=n||!(n||void 0!==t.property),a=t.type||(dn(e)?"exponential":"interval");if(r||"padding"===e.type){let n=r?Qt.parse:ne.parse;(t=ht({},t)).stops&&(t.stops=t.stops.map((t=>[t[0],n(t[1])]))),t.default=n(t.default?t.default:e.default)}if(t.colorSpace&&"rgb"!==(o=t.colorSpace)&&"hcl"!==o&&"lab"!==o)throw new Error(`Unknown color space: "${t.colorSpace}"`);var o;let s,l,c;if("exponential"===a)s=wn;else if("interval"===a)s=bn;else if("categorical"===a){s=_n,l=Object.create(null);for(let e of t.stops)l[e[0]]=e[1];c=typeof t.stops[0][0]}else{if("identity"!==a)throw new Error(`Unknown function type "${a}"`);s=Tn}if(n){let r={},n=[];for(let e=0;et[0])),evaluate:({zoom:r},n)=>wn({stops:i,base:t.base},e,r).evaluate(r,n)}}if(i){let r="exponential"===a?{name:"exponential",base:void 0!==t.base?t.base:1}:null;return{kind:"camera",interpolationType:r,interpolationFactor:Fe.interpolationFactor.bind(void 0,r),zoomStops:t.stops.map((t=>t[0])),evaluate:({zoom:r})=>s(t,e,r,l,c)}}return{kind:"source",evaluate(r,n){let i=n&&n.properties?n.properties[t.property]:void 0;return void 0===i?xn(t.default,e.default):s(t,e,i,l,c)}}}function xn(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function _n(t,e,r,n,i){return xn(typeof r===i?n[r]:void 0,t.default,e.default)}function bn(t,e,r){if("number"!==mn(r))return xn(t.default,e.default);let n=t.stops.length;if(1===n||r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];let i=Ee(t.stops.map((t=>t[0])),r);return t.stops[i][1]}function wn(t,e,r){let n=void 0!==t.base?t.base:1;if("number"!==mn(r))return xn(t.default,e.default);let i=t.stops.length;if(1===i||r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];let a=Ee(t.stops.map((t=>t[0])),r),o=function(t,e,r,n){let i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=Re[e.type]||yn;return"function"==typeof s.evaluate?{evaluate(...e){let r=s.evaluate.apply(void 0,e),n=l.evaluate.apply(void 0,e);if(void 0!==r&&void 0!==n)return c(r,n,o,t.colorSpace)}}:c(s,l,o,t.colorSpace)}function Tn(t,e,r){switch(e.type){case"color":r=Qt.parse(r);break;case"formatted":r=re.fromString(r.toString());break;case"resolvedImage":r=oe.fromString(r.toString());break;case"padding":r=ne.parse(r);break;default:mn(r)===e.type||"enum"===e.type&&e.values[r]||(r=void 0)}return xn(r,t.default,e.default)}tn.register(Qr,{error:[{kind:"error"},[gt],(t,[e])=>{throw new pe(e.evaluate(t))}],typeof:[gt,[_t],(t,[e])=>St(ce(e.evaluate(t)))],"to-rgba":[Mt(mt,4),[vt],(t,[e])=>{let[r,n,i,a]=e.evaluate(t).rgb;return[255*r,255*n,255*i,a]}],rgb:[vt,[mt,mt,mt],en],rgba:[vt,[mt,mt,mt,mt],en],has:{type:yt,overloads:[[[gt],(t,[e])=>rn(e.evaluate(t),t.properties())],[[gt,xt],(t,[e,r])=>rn(e.evaluate(t),r.evaluate(t))]]},get:{type:_t,overloads:[[[gt],(t,[e])=>nn(e.evaluate(t),t.properties())],[[gt,xt],(t,[e,r])=>nn(e.evaluate(t),r.evaluate(t))]]},"feature-state":[_t,[gt],(t,[e])=>nn(e.evaluate(t),t.featureState||{})],properties:[xt,[],t=>t.properties()],"geometry-type":[gt,[],t=>t.geometryType()],id:[_t,[],t=>t.id()],zoom:[mt,[],t=>t.globals.zoom],"heatmap-density":[mt,[],t=>t.globals.heatmapDensity||0],"line-progress":[mt,[],t=>t.globals.lineProgress||0],accumulated:[_t,[],t=>void 0===t.globals.accumulated?null:t.globals.accumulated],"+":[mt,an(mt),(t,e)=>{let r=0;for(let n of e)r+=n.evaluate(t);return r}],"*":[mt,an(mt),(t,e)=>{let r=1;for(let n of e)r*=n.evaluate(t);return r}],"-":{type:mt,overloads:[[[mt,mt],(t,[e,r])=>e.evaluate(t)-r.evaluate(t)],[[mt],(t,[e])=>-e.evaluate(t)]]},"/":[mt,[mt,mt],(t,[e,r])=>e.evaluate(t)/r.evaluate(t)],"%":[mt,[mt,mt],(t,[e,r])=>e.evaluate(t)%r.evaluate(t)],ln2:[mt,[],()=>Math.LN2],pi:[mt,[],()=>Math.PI],e:[mt,[],()=>Math.E],"^":[mt,[mt,mt],(t,[e,r])=>Math.pow(e.evaluate(t),r.evaluate(t))],sqrt:[mt,[mt],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[mt,[mt],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[mt,[mt],(t,[e])=>Math.log(e.evaluate(t))],log2:[mt,[mt],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[mt,[mt],(t,[e])=>Math.sin(e.evaluate(t))],cos:[mt,[mt],(t,[e])=>Math.cos(e.evaluate(t))],tan:[mt,[mt],(t,[e])=>Math.tan(e.evaluate(t))],asin:[mt,[mt],(t,[e])=>Math.asin(e.evaluate(t))],acos:[mt,[mt],(t,[e])=>Math.acos(e.evaluate(t))],atan:[mt,[mt],(t,[e])=>Math.atan(e.evaluate(t))],min:[mt,an(mt),(t,e)=>Math.min(...e.map((e=>e.evaluate(t))))],max:[mt,an(mt),(t,e)=>Math.max(...e.map((e=>e.evaluate(t))))],abs:[mt,[mt],(t,[e])=>Math.abs(e.evaluate(t))],round:[mt,[mt],(t,[e])=>{let r=e.evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[mt,[mt],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[mt,[mt],(t,[e])=>Math.ceil(e.evaluate(t))],"filter-==":[yt,[gt,_t],(t,[e,r])=>t.properties()[e.value]===r.value],"filter-id-==":[yt,[_t],(t,[e])=>t.id()===e.value],"filter-type-==":[yt,[gt],(t,[e])=>t.geometryType()===e.value],"filter-<":[yt,[gt,_t],(t,[e,r])=>{let n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n{let r=t.id(),n=e.value;return typeof r==typeof n&&r":[yt,[gt,_t],(t,[e,r])=>{let n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>i}],"filter-id->":[yt,[_t],(t,[e])=>{let r=t.id(),n=e.value;return typeof r==typeof n&&r>n}],"filter-<=":[yt,[gt,_t],(t,[e,r])=>{let n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n<=i}],"filter-id-<=":[yt,[_t],(t,[e])=>{let r=t.id(),n=e.value;return typeof r==typeof n&&r<=n}],"filter->=":[yt,[gt,_t],(t,[e,r])=>{let n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>=i}],"filter-id->=":[yt,[_t],(t,[e])=>{let r=t.id(),n=e.value;return typeof r==typeof n&&r>=n}],"filter-has":[yt,[_t],(t,[e])=>e.value in t.properties()],"filter-has-id":[yt,[],t=>null!==t.id()&&void 0!==t.id()],"filter-type-in":[yt,[Mt(gt)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],"filter-id-in":[yt,[Mt(_t)],(t,[e])=>e.value.indexOf(t.id())>=0],"filter-in-small":[yt,[gt,Mt(_t)],(t,[e,r])=>r.value.indexOf(t.properties()[e.value])>=0],"filter-in-large":[yt,[gt,Mt(_t)],(t,[e,r])=>function(t,e,r,n){for(;r<=n;){let i=r+n>>1;if(e[i]===t)return!0;e[i]>t?n=i-1:r=i+1}return!1}(t.properties()[e.value],r.value,0,r.value.length-1)],all:{type:yt,overloads:[[[yt,yt],(t,[e,r])=>e.evaluate(t)&&r.evaluate(t)],[an(yt),(t,e)=>{for(let r of e)if(!r.evaluate(t))return!1;return!0}]]},any:{type:yt,overloads:[[[yt,yt],(t,[e,r])=>e.evaluate(t)||r.evaluate(t)],[an(yt),(t,e)=>{for(let r of e)if(r.evaluate(t))return!0;return!1}]]},"!":[yt,[yt],(t,[e])=>!e.evaluate(t)],"is-supported-script":[yt,[gt],(t,[e])=>{let r=t.globals&&t.globals.isSupportedScript;return!r||r(e.evaluate(t))}],upcase:[gt,[gt],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[gt,[gt],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[gt,an(_t),(t,e)=>e.map((e=>ue(e.evaluate(t)))).join("")],"resolved-locale":[gt,[bt],(t,[e])=>e.evaluate(t).resolvedLocale()]});class An{constructor(t,e){var r;this.expression=t,this._warningHistory={},this._evaluator=new ve,this._defaultValue=e?"color"===(r=e).type&&gn(r.default)?new Qt(0,0,0,0):"color"===r.type?Qt.parse(r.default)||null:"padding"===r.type?ne.parse(r.default)||null:"variableAnchorOffsetCollection"===r.type?ae.parse(r.default)||null:void 0===r.default?null:r.default:null,this._enumValues=e&&"enum"===e.type?e.values:null}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)}evaluate(t,e,r,n,i,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a||null;try{let t=this.expression.evaluate(this._evaluator);if(null==t||"number"==typeof t&&t!=t)return this._defaultValue;if(this._enumValues&&!(t in this._enumValues))throw new pe(`Expected value to be one of ${Object.keys(this._enumValues).map((t=>JSON.stringify(t))).join(", ")}, but found ${JSON.stringify(t)} instead.`);return t}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,typeof console<"u"&&console.warn(t.message)),this._defaultValue}}}function kn(t){return Array.isArray(t)&&t.length>0&&"string"==typeof t[0]&&t[0]in Qr}function Mn(t,e){let r=new xe(Qr,on,[],e?function(t){let e={color:vt,string:gt,number:mt,enum:gt,boolean:yt,formatted:wt,padding:Tt,resolvedImage:At,variableAnchorOffsetCollection:kt};return"array"===t.type?Mt(e[t.value]||_t,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return n?un(new An(n,e)):hn(r.errors)}class Sn{constructor(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!ln(e.expression)}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)}evaluate(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)}}class En{constructor(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent="camera"!==t&&!ln(e.expression),this.interpolationType=n}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)}evaluate(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)}interpolationFactor(t,e,r){return this.interpolationType?Fe.interpolationFactor(this.interpolationType,t,e,r):0}}function Cn(t,e){let r=Mn(t,e);if("error"===r.result)return r;let n=r.value.expression,i=sn(n);if(!i&&!pn(e))return hn([new pt("","data expressions not supported")]);let a=cn(n,["zoom"]);if(!a&&!fn(e))return hn([new pt("","zoom expressions not supported")]);let o=Ln(n);return o||a?o instanceof pt?hn([o]):o instanceof Fe&&!dn(e)?hn([new pt("",'"interpolate" expressions cannot be used with this property')]):un(o?new En(i?"camera":"composite",r.value,o.labels,o instanceof Fe?o.interpolation:void 0):new Sn(i?"constant":"source",r.value)):hn([new pt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class In{constructor(t,e){this._parameters=t,this._specification=e,ht(this,vn(this._parameters,this._specification))}static deserialize(t){return new In(t._parameters,t._specification)}static serialize(t){return{_parameters:t._parameters,_specification:t._specification}}}function Ln(t){let e=null;if(t instanceof _e)e=Ln(t.result);else if(t instanceof je){for(let r of t.args)if(e=Ln(r),e)break}else(t instanceof Ce||t instanceof Fe)&&t.input instanceof tn&&"zoom"===t.input.name&&(e=t);return e instanceof pt||t.eachChild((t=>{let r=Ln(t);r instanceof pt?e=r:!e&&r?e=new pt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):e&&r&&e!==r&&(e=new pt("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))})),e}function Pn(t){if(!0===t||!1===t)return!0;if(!Array.isArray(t)||0===t.length)return!1;switch(t[0]){case"has":return t.length>=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!=typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(let e of t.slice(1))if(!Pn(e)&&"boolean"!=typeof e)return!1;return!0;default:return!0}}let zn={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Dn(t){if(null==t)return{filter:()=>!0,needGeometry:!1};Pn(t)||(t=Fn(t));let e=Mn(t,zn);if("error"===e.result)throw new Error(e.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return{filter:(t,r,n)=>e.value.evaluate(t,r,{},n),needGeometry:Rn(t)}}function On(t,e){return te?1:0}function Rn(t){if(!Array.isArray(t))return!1;if("within"===t[0]||"distance"===t[0])return!0;for(let e=1;e"===e||"<="===e||">="===e?Bn(t[1],t[2],e):"any"===e?(r=t.slice(1),["any"].concat(r.map(Fn))):"all"===e?["all"].concat(t.slice(1).map(Fn)):"none"===e?["all"].concat(t.slice(1).map(Fn).map(Un)):"in"===e?jn(t[1],t.slice(2)):"!in"===e?Un(jn(t[1],t.slice(2))):"has"===e?Nn(t[1]):"!has"!==e||Un(Nn(t[1]));var r}function Bn(t,e,r){switch(t){case"$type":return[`filter-type-${r}`,e];case"$id":return[`filter-id-${r}`,e];default:return[`filter-${r}`,t,e]}}function jn(t,e){if(0===e.length)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((t=>typeof t!=typeof e[0]))?["filter-in-large",t,["literal",e.sort(On)]]:["filter-in-small",t,["literal",e]]}}function Nn(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t]}}function Un(t){return["!",t]}function Vn(t){let e=typeof t;if("number"===e||"boolean"===e||"string"===e||null==t)return JSON.stringify(t);if(Array.isArray(t)){let e="[";for(let r of t)e+=`${Vn(r)},`;return`${e}]`}let r=Object.keys(t).sort(),n="{";for(let e=0;en.maximum?[new ut(e,r,`${r} is greater than the maximum value ${n.maximum}`)]:[]}function $n(t){let e,r,n,i=t.valueSpec,a=Gn(t.value.type),o={},s="categorical"!==a&&void 0===t.value.property,l=!s,c="array"===mn(t.value.stops)&&"array"===mn(t.value.stops[0])&&"object"===mn(t.value.stops[0][0]),u=Zn({key:t.key,value:t.value,valueSpec:t.styleSpec.function,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if("identity"===a)return[new ut(t.key,t.value,'identity function may not have a "stops" property')];let e=[],r=t.value;return e=e.concat(Yn({key:t.key,value:r,valueSpec:t.valueSpec,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),"array"===mn(r)&&0===r.length&&e.push(new ut(t.key,r,"array must have at least one stop")),e},default:function(t){return t.validateSpec({key:t.key,value:t.value,valueSpec:i,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec})}}});return"identity"===a&&s&&u.push(new ut(t.key,t.value,'missing required property "property"')),"identity"===a||t.value.stops||u.push(new ut(t.key,t.value,'missing required property "stops"')),"exponential"===a&&t.valueSpec.expression&&!dn(t.valueSpec)&&u.push(new ut(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!pn(t.valueSpec)?u.push(new ut(t.key,t.value,"property functions not supported")):s&&!fn(t.valueSpec)&&u.push(new ut(t.key,t.value,"zoom functions not supported"))),"categorical"!==a&&!c||void 0!==t.value.property||u.push(new ut(t.key,t.value,'"property" property is required')),u;function h(t){let e=[],a=t.value,s=t.key;if("array"!==mn(a))return[new ut(s,a,`array expected, ${mn(a)} found`)];if(2!==a.length)return[new ut(s,a,`array length 2 expected, length ${a.length} found`)];if(c){if("object"!==mn(a[0]))return[new ut(s,a,`object expected, ${mn(a[0])} found`)];if(void 0===a[0].zoom)return[new ut(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new ut(s,a,"object stop key must have value")];if(n&&n>Gn(a[0].zoom))return[new ut(s,a[0].zoom,"stop zoom values must appear in ascending order")];Gn(a[0].zoom)!==n&&(n=Gn(a[0].zoom),r=void 0,o={}),e=e.concat(Zn({key:`${s}[0]`,value:a[0],valueSpec:{zoom:{}},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:Xn,value:p}}))}else e=e.concat(p({key:`${s}[0]`,value:a[0],valueSpec:{},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec},a));return kn(Wn(a[1]))?e.concat([new ut(`${s}[1]`,a[1],"expressions are not allowed in function stops.")]):e.concat(t.validateSpec({key:`${s}[1]`,value:a[1],valueSpec:i,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec}))}function p(t,n){let s=mn(t.value),l=Gn(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new ut(t.key,c,`${s} stop domain type must match previous stop domain type ${e}`)]}else e=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new ut(t.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){let e=`number expected, ${s} found`;return pn(i)&&void 0===a&&(e+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ut(t.key,c,e)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==r&&lnew ut(`${t.key}${e.key}`,t.value,e.message)));let r=e.value.expression||e.value._styleExpression.expression;if("property"===t.expressionContext&&"text-font"===t.propertyKey&&!r.outputDefined())return[new ut(t.key,t.value,`Invalid data expression for "${t.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===t.expressionContext&&"layout"===t.propertyType&&!ln(r))return[new ut(t.key,t.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===t.expressionContext&&!ln(r))return[new ut(t.key,t.value,'"feature-state" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf("cluster")){if(!cn(r,["zoom","feature-state"]))return[new ut(t.key,t.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===t.expressionContext&&!sn(r))return[new ut(t.key,t.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Jn(t){let e=t.key,r=t.value,n=t.valueSpec,i=[];return Array.isArray(n.values)?-1===n.values.indexOf(Gn(r))&&i.push(new ut(e,r,`expected one of [${n.values.join(", ")}], ${JSON.stringify(r)} found`)):-1===Object.keys(n.values).indexOf(Gn(r))&&i.push(new ut(e,r,`expected one of [${Object.keys(n.values).join(", ")}], ${JSON.stringify(r)} found`)),i}function Qn(t){return Pn(Wn(t.value))?Kn(ht({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):ti(t)}function ti(t){let e=t.value,r=t.key;if("array"!==mn(e))return[new ut(r,e,`array expected, ${mn(e)} found`)];let n,i=t.styleSpec,a=[];if(e.length<1)return[new ut(r,e,"filter array must have at least 1 element")];switch(a=a.concat(Jn({key:`${r}[0]`,value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),Gn(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===Gn(e[1])&&a.push(new ut(r,e,`"$type" cannot be use with operator "${e[0]}"`));case"==":case"!=":3!==e.length&&a.push(new ut(r,e,`filter array for operator "${e[0]}" must have 3 elements`));case"in":case"!in":e.length>=2&&(n=mn(e[1]),"string"!==n&&a.push(new ut(`${r}[1]`,e[1],`string expected, ${n} found`)));for(let o=2;o{t in r&&e.push(new ut(n,r[t],`"${t}" is prohibited for ref layers`))})),i.layers.forEach((e=>{Gn(e.id)===s&&(t=e)})),t?t.ref?e.push(new ut(n,r.ref,"ref cannot reference another ref layer")):o=Gn(t.type):e.push(new ut(n,r.ref,`ref layer "${s}" not found`))}else if("background"!==o)if(r.source){let t=i.sources&&i.sources[r.source],a=t&&Gn(t.type);t?"vector"===a&&"raster"===o?e.push(new ut(n,r.source,`layer "${r.id}" requires a raster source`)):"raster-dem"!==a&&"hillshade"===o?e.push(new ut(n,r.source,`layer "${r.id}" requires a raster-dem source`)):"raster"===a&&"raster"!==o?e.push(new ut(n,r.source,`layer "${r.id}" requires a vector source`)):"vector"!==a||r["source-layer"]?"raster-dem"===a&&"hillshade"!==o?e.push(new ut(n,r.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==o||!r.paint||!r.paint["line-gradient"]||"geojson"===a&&t.lineMetrics||e.push(new ut(n,r,`layer "${r.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):e.push(new ut(n,r,`layer "${r.id}" must specify a "source-layer"`)):e.push(new ut(n,r.source,`source "${r.source}" not found`))}else e.push(new ut(n,r,'missing required property "source"'));return e=e.concat(Zn({key:n,value:r,valueSpec:a.layer,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":()=>[],type:()=>t.validateSpec({key:`${n}.type`,value:r.type,valueSpec:a.layer.type,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,object:r,objectKey:"type"}),filter:Qn,layout:t=>Zn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":t=>ni(ht({layerType:o},t))}}),paint:t=>Zn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*":t=>ri(ht({layerType:o},t))}})}})),e}function ai(t){let e=t.value,r=t.key,n=mn(e);return"string"!==n?[new ut(r,e,`string expected, ${n} found`)]:[]}let oi={promoteId:function({key:t,value:e}){if("string"===mn(e))return ai({key:t,value:e});{let r=[];for(let n in e)r.push(...ai({key:`${t}.${n}`,value:e[n]}));return r}}};function si(t){let e=t.value,r=t.key,n=t.styleSpec,i=t.style,a=t.validateSpec;if(!e.type)return[new ut(r,e,'"type" is required')];let o,s=Gn(e.type);switch(s){case"vector":case"raster":return o=Zn({key:r,value:e,valueSpec:n[`source_${s.replace("-","_")}`],style:t.style,styleSpec:n,objectElementValidators:oi,validateSpec:a}),o;case"raster-dem":return o=function(t){var e;let r=null!==(e=t.sourceName)&&void 0!==e?e:"",n=t.value,i=t.styleSpec,a=i.source_raster_dem,o=t.style,s=[],l=mn(n);if(void 0===n)return s;if("object"!==l)return s.push(new ut("source_raster_dem",n,`object expected, ${l} found`)),s;let c="custom"===Gn(n.encoding),u=["redFactor","greenFactor","blueFactor","baseShift"],h=t.value.encoding?`"${t.value.encoding}"`:"Default";for(let e in n)!c&&u.includes(e)?s.push(new ut(e,n[e],`In "${r}": "${e}" is only valid when "encoding" is set to "custom". ${h} encoding found`)):a[e]?s=s.concat(t.validateSpec({key:e,value:n[e],valueSpec:a[e],validateSpec:t.validateSpec,style:o,styleSpec:i})):s.push(new ut(e,n[e],`unknown property "${e}"`));return s}({sourceName:r,value:e,style:t.style,styleSpec:n,validateSpec:a}),o;case"geojson":if(o=Zn({key:r,value:e,valueSpec:n.source_geojson,style:i,styleSpec:n,validateSpec:a,objectElementValidators:oi}),e.cluster)for(let t in e.clusterProperties){let[n,i]=e.clusterProperties[t],s="string"==typeof n?[n,["accumulated"],["get",t]]:n;o.push(...Kn({key:`${r}.${t}.map`,value:i,validateSpec:a,expressionContext:"cluster-map"})),o.push(...Kn({key:`${r}.${t}.reduce`,value:s,validateSpec:a,expressionContext:"cluster-reduce"}))}return o;case"video":return Zn({key:r,value:e,valueSpec:n.source_video,style:i,validateSpec:a,styleSpec:n});case"image":return Zn({key:r,value:e,valueSpec:n.source_image,style:i,validateSpec:a,styleSpec:n});case"canvas":return[new ut(r,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Jn({key:`${r}.type`,value:e.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:i,validateSpec:a,styleSpec:n})}}function li(t){let e=t.value,r=t.styleSpec,n=r.light,i=t.style,a=[],o=mn(e);if(void 0===e)return a;if("object"!==o)return a=a.concat([new ut("light",e,`object expected, ${o} found`)]),a;for(let o in e){let s=o.match(/^(.*)-transition$/);a=a.concat(s&&n[s[1]]&&n[s[1]].transition?t.validateSpec({key:o,value:e[o],valueSpec:r.transition,validateSpec:t.validateSpec,style:i,styleSpec:r}):n[o]?t.validateSpec({key:o,value:e[o],valueSpec:n[o],validateSpec:t.validateSpec,style:i,styleSpec:r}):[new ut(o,e[o],`unknown property "${o}"`)])}return a}function ci(t){let e=t.value,r=t.styleSpec,n=r.sky,i=t.style,a=mn(e);if(void 0===e)return[];if("object"!==a)return[new ut("sky",e,`object expected, ${a} found`)];let o=[];for(let a in e)o=o.concat(n[a]?t.validateSpec({key:a,value:e[a],valueSpec:n[a],style:i,styleSpec:r}):[new ut(a,e[a],`unknown property "${a}"`)]);return o}function ui(t){let e=t.value,r=t.styleSpec,n=r.terrain,i=t.style,a=[],o=mn(e);if(void 0===e)return a;if("object"!==o)return a=a.concat([new ut("terrain",e,`object expected, ${o} found`)]),a;for(let o in e)a=a.concat(n[o]?t.validateSpec({key:o,value:e[o],valueSpec:n[o],validateSpec:t.validateSpec,style:i,styleSpec:r}):[new ut(o,e[o],`unknown property "${o}"`)]);return a}function hi(t){let e=[],r=t.value,n=t.key;if(Array.isArray(r)){let i=[],a=[];for(let o in r)r[o].id&&i.includes(r[o].id)&&e.push(new ut(n,r,`all the sprites' ids must be unique, but ${r[o].id} is duplicated`)),i.push(r[o].id),r[o].url&&a.includes(r[o].url)&&e.push(new ut(n,r,`all the sprites' URLs must be unique, but ${r[o].url} is duplicated`)),a.push(r[o].url),e=e.concat(Zn({key:`${n}[${o}]`,value:r[o],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:t.validateSpec}));return e}return ai({key:n,value:r})}let pi={"*":()=>[],array:Yn,boolean:function(t){let e=t.value,r=t.key,n=mn(e);return"boolean"!==n?[new ut(r,e,`boolean expected, ${n} found`)]:[]},number:Xn,color:function(t){let e=t.key,r=t.value,n=mn(r);return"string"!==n?[new ut(e,r,`color expected, ${n} found`)]:Qt.parse(String(r))?[]:[new ut(e,r,`color expected, "${r}" found`)]},constants:Hn,enum:Jn,filter:Qn,function:$n,layer:ii,object:Zn,source:si,light:li,sky:ci,terrain:ui,projection:function(t){let e=t.value,r=t.styleSpec,n=r.projection,i=t.style,a=mn(e);if(void 0===e)return[];if("object"!==a)return[new ut("projection",e,`object expected, ${a} found`)];let o=[];for(let a in e)o=o.concat(n[a]?t.validateSpec({key:a,value:e[a],valueSpec:n[a],style:i,styleSpec:r}):[new ut(a,e[a],`unknown property "${a}"`)]);return o},string:ai,formatted:function(t){return 0===ai(t).length?[]:Kn(t)},resolvedImage:function(t){return 0===ai(t).length?[]:Kn(t)},padding:function(t){let e=t.key,r=t.value;if("array"===mn(r)){if(r.length<1||r.length>4)return[new ut(e,r,`padding requires 1 to 4 values; ${r.length} values found`)];let n={type:"number"},i=[];for(let a=0;a[]}})),t.constants&&(r=r.concat(Hn({key:"constants",value:t.constants,style:t,styleSpec:e,validateSpec:fi}))),yi(r)}function gi(t){return function(e){return t(((t,e)=>r(t,i(e)))(((t,e)=>{for(var r in e||(e={}))l.call(e,r)&&h(t,r,e[r]);if(o)for(var r of o(e))u.call(e,r)&&h(t,r,e[r]);return t})({},e),{validateSpec:fi}))}}function yi(t){return[].concat(t).sort(((t,e)=>t.line-e.line))}function vi(t){return function(...e){return yi(t.apply(this,e))}}mi.source=vi(gi(si)),mi.sprite=vi(gi(hi)),mi.glyphs=vi(gi(di)),mi.light=vi(gi(li)),mi.sky=vi(gi(ci)),mi.terrain=vi(gi(ui)),mi.layer=vi(gi(ii)),mi.filter=vi(gi(Qn)),mi.paintProperty=vi(gi(ri)),mi.layoutProperty=vi(gi(ni));let xi=mi,_i=xi.light,bi=xi.sky,wi=xi.paintProperty,Ti=xi.layoutProperty;function Ai(t,e){let r=!1;if(e&&e.length)for(let n of e)t.fire(new $(new Error(n.message))),r=!0;return r}class ki{constructor(t,e,r){let n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;let i=new Int32Array(this.arrayBuffer);t=i[0],this.d=(e=i[1])+2*(r=i[2]);for(let t=0;t=c[l+0]&&n>=c[l+1])?(o[h]=!0,a.push(i[h])):o[h]=!1}}}}_forEachCell(t,e,r,n,i,a,o,s){let l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(r),h=this._convertToCellCoord(n);for(let p=l;p<=u;p++)for(let l=c;l<=h;l++){let c=this.d*l+p;if((!s||s(this._convertFromCellCoord(p),this._convertFromCellCoord(l),this._convertFromCellCoord(p+1),this._convertFromCellCoord(l+1)))&&i.call(this,t,e,r,n,c,a,o,s))return}}_convertFromCellCoord(t){return(t-this.padding)/this.scale}_convertToCellCoord(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let t=this.cells,e=3+this.cells.length+1+1,r=0;for(let t=0;t=0)continue;let a=t[n];i[n]=Mi[r].shallow.indexOf(n)>=0?a:Li(a,e)}t instanceof Error&&(i.message=t.message)}if(i.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==r&&(i.$name=r),i}function Pi(t){if(Ii(t))return t;if(Array.isArray(t))return t.map(Pi);if("object"!=typeof t)throw new Error("can't deserialize object of type "+typeof t);let e=Ci(t)||"Object";if(!Mi[e])throw new Error(`can't deserialize unregistered class ${e}`);let{klass:r}=Mi[e];if(!r)throw new Error(`can't deserialize unregistered class ${e}`);if(r.deserialize)return r.deserialize(t);let n=Object.create(r.prototype);for(let r of Object.keys(t)){if("$name"===r)continue;let i=t[r];n[r]=Mi[e].shallow.indexOf(r)>=0?i:Pi(i)}return n}class zi{constructor(){this.first=!0}update(t,e){let r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoomt>=12272&&t<=12287,Oi=t=>t>=12288&&t<=12351,Ri=t=>t>=12448&&t<=12543,Fi=t=>t>=12736&&t<=12783,Bi=t=>t>=12800&&t<=13055,ji=t=>t>=13056&&t<=13311,Ni=t=>t>=65040&&t<=65055,Ui=t=>t>=65072&&t<=65103,Vi=t=>t>=65104&&t<=65135,qi=t=>t>=65280&&t<=65519;function Hi(t){for(let e of t)if($i(e.charCodeAt(0)))return!0;return!1}function Gi(t){for(let e of t)if(!Yi(e.charCodeAt(0)))return!1;return!0}function Wi(t){let e=t.map((t=>{try{return new RegExp(`\\p{sc=${t}}`,"u").source}catch{return null}})).filter((t=>t));return new RegExp(e.join("|"),"u")}let Zi=Wi(["Arab","Dupl","Mong","Ougr","Syrc"]);function Yi(t){return!Zi.test(String.fromCodePoint(t))}let Xi=Wi(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function $i(t){return!(746!==t&&747!==t&&(t<4352||!(Ui(t)&&!(t>=65097&&t<=65103)||ji(t)||Fi(t)||!(!Oi(t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||Bi(t)||Di(t)||(t=>t>=12688&&t<=12703)(t)||Ri(t)&&12540!==t||!(!qi(t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!Vi(t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||Ni(t)||(t=>t>=19904&&t<=19967)(t)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(t))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(t))||Xi.test(String.fromCodePoint(t)))))}function Ki(t){return!($i(t)||(e=t,(t=>t>=128&&t<=255)(e)&&(167===e||169===e||174===e||177===e||188===e||189===e||190===e||215===e||247===e)||(t=>t>=8192&&t<=8303)(e)&&(8214===e||8224===e||8225===e||8240===e||8241===e||8251===e||8252===e||8258===e||8263===e||8264===e||8265===e||8273===e)||(t=>t>=8448&&t<=8527)(e)||(t=>t>=8528&&t<=8591)(e)||(t=>t>=8960&&t<=9215)(e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215)||(t=>t>=9216&&t<=9279)(e)&&9251!==e||(t=>t>=9280&&t<=9311)(e)||(t=>t>=9312&&t<=9471)(e)||(t=>t>=9632&&t<=9727)(e)||(t=>t>=9728&&t<=9983)(e)&&!(e>=9754&&e<=9759)||(t=>t>=11008&&t<=11263)(e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||Oi(e)||Ri(e)||(t=>t>=57344&&t<=63743)(e)||Ui(e)||Vi(e)||qi(e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e));var e}let Ji=Wi(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Qi(t){return Ji.test(String.fromCodePoint(t))}function ta(t,e){return!(!e&&Qi(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||(t=>t>=6016&&t<=6143)(t))}function ea(t){for(let e of t)if(Qi(e.charCodeAt(0)))return!0;return!1}let ra=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(t){this.pluginStatus=t.pluginStatus,this.pluginURL=t.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(t){this.applyArabicShaping=t.applyArabicShaping,this.processBidirectionalText=t.processBidirectionalText,this.processStyledBidirectionalText=t.processStyledBidirectionalText}isParsed(){return null!=this.applyArabicShaping&&null!=this.processBidirectionalText&&null!=this.processStyledBidirectionalText}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class na{constructor(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new zi,this.transition={})}isSupportedScript(t){return function(t,e){for(let r of t)if(!ta(r.charCodeAt(0),e))return!1;return!0}(t,"loaded"===ra.getRTLTextPluginStatus())}crossFadingFactor(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}}}class ia{constructor(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(gn(t))return new In(t,e);if(kn(t)){let r=Cn(t,e);if("error"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return r.value}{let r=t;return"color"===e.type&&"string"==typeof t?r=Qt.parse(t):"padding"!==e.type||"number"!=typeof t&&!Array.isArray(t)?"variableAnchorOffsetCollection"===e.type&&Array.isArray(t)&&(r=ae.parse(t)):r=ne.parse(t),{kind:"constant",evaluate:()=>r}}}(void 0===e?t.specification.default:e,t.specification)}isDataDriven(){return"source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)}}class aa{constructor(t){this.property=t,this.value=new ia(t,void 0)}transitioned(t,e){return new sa(this.property,this.value,e,T({},t.transition,this.transition),t.now)}untransitioned(){return new sa(this.property,this.value,null,{},0)}}class oa{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)}getValue(t){return S(this._values[t].value.value)}setValue(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new aa(this._values[t].property)),this._values[t].value=new ia(this._values[t].property,null===e?void 0:S(e))}getTransition(t){return S(this._values[t].transition)}setTransition(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new aa(this._values[t].property)),this._values[t].transition=S(e)||void 0}serialize(){let t={};for(let e of Object.keys(this._values)){let r=this.getValue(e);void 0!==r&&(t[e]=r);let n=this.getTransition(e);void 0!==n&&(t[`${e}-transition`]=n)}return t}transitioned(t,e){let r=new la(this._properties);for(let n of Object.keys(this._values))r._values[n]=this._values[n].transitioned(t,e._values[n]);return r}untransitioned(){let t=new la(this._properties);for(let e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t}}class sa{constructor(t,e,r,n,i){this.property=t,this.value=e,this.begin=i+n.delay||0,this.end=this.begin+n.duration||0,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r)}possiblyEvaluate(t,e,r){let n=t.now||0,i=this.value.possiblyEvaluate(t,e,r),a=this.prior;if(a){if(n>this.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n=1)return 1;let e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}}return i}}class la{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)}possiblyEvaluate(t,e,r){let n=new ha(this._properties);for(let i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}hasTransition(){for(let t of Object.keys(this._values))if(this._values[t].prior)return!0;return!1}}class ca{constructor(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues)}hasValue(t){return void 0!==this._values[t].value}getValue(t){return S(this._values[t].value)}setValue(t,e){this._values[t]=new ia(this._values[t].property,null===e?void 0:S(e))}serialize(){let t={};for(let e of Object.keys(this._values)){let r=this.getValue(e);void 0!==r&&(t[e]=r)}return t}possiblyEvaluate(t,e,r){let n=new ha(this._properties);for(let i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}}class ua{constructor(t,e,r){this.property=t,this.value=e,this.parameters=r}isConstant(){return"constant"===this.value.kind}constantOr(t){return"constant"===this.value.kind?this.value.value:t}evaluate(t,e,r,n){return this.property.evaluate(this.value,this.parameters,t,e,r,n)}}class ha{constructor(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues)}get(t){return this._values[t]}}class pa{constructor(t){this.specification=t}possiblyEvaluate(t,e){if(t.isDataDriven())throw new Error("Value should not be data driven");return t.expression.evaluate(e)}interpolate(t,e,r){let n=Re[this.specification.type];return n?n(t,e,r):t}}class fa{constructor(t,e){this.specification=t,this.overrides=e}possiblyEvaluate(t,e,r,n){return new ua(this,"constant"===t.expression.kind||"camera"===t.expression.kind?{kind:"constant",value:t.expression.evaluate(e,null,{},r,n)}:t.expression,e)}interpolate(t,e,r){if("constant"!==t.value.kind||"constant"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new ua(this,{kind:"constant",value:void 0},t.parameters);let n=Re[this.specification.type];if(n){let i=n(t.value.value,e.value.value,r);return new ua(this,{kind:"constant",value:i},t.parameters)}return t}evaluate(t,e,r,n,i,a){return"constant"===t.kind?t.value:t.evaluate(e,r,n,i,a)}}class da extends fa{possiblyEvaluate(t,e,r,n){if(void 0===t.value)return new ua(this,{kind:"constant",value:void 0},e);if("constant"===t.expression.kind){let i=t.expression.evaluate(e,null,{},r,n),a="resolvedImage"===t.property.specification.type&&"string"!=typeof i?i.name:i,o=this._calculate(a,a,a,e);return new ua(this,{kind:"constant",value:o},e)}if("camera"===t.expression.kind){let r=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new ua(this,{kind:"constant",value:r},e)}return new ua(this,t.expression,e)}evaluate(t,e,r,n,i,a){if("source"===t.kind){let o=t.evaluate(e,r,n,i,a);return this._calculate(o,o,o,e)}return"composite"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,n),t.evaluate({zoom:Math.floor(e.zoom)},r,n),t.evaluate({zoom:Math.floor(e.zoom)+1},r,n),e):t.value}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class ma{constructor(t){this.specification=t}possiblyEvaluate(t,e,r,n){if(void 0!==t.value){if("constant"===t.expression.kind){let i=t.expression.evaluate(e,null,{},r,n);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new na(Math.floor(e.zoom-1),e)),t.expression.evaluate(new na(Math.floor(e.zoom),e)),t.expression.evaluate(new na(Math.floor(e.zoom+1),e)),e)}}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class ga{constructor(t){this.specification=t}possiblyEvaluate(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)}interpolate(){return!1}}class ya{constructor(t){this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let e in t){let r=t[e];r.specification.overridable&&this.overridableProperties.push(e);let n=this.defaultPropertyValues[e]=new ia(r,void 0),i=this.defaultTransitionablePropertyValues[e]=new aa(r);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}}}Si("DataDrivenProperty",fa),Si("DataConstantProperty",pa),Si("CrossFadedDataDrivenProperty",da),Si("CrossFadedProperty",ma),Si("ColorRampProperty",ga);let va="-transition";class xa extends K{constructor(t,e){if(super(),this.id=t.id,this.type=t.type,this._featureFilter={filter:()=>!0,needGeometry:!1},"custom"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,"background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),e.layout&&(this._unevaluatedLayout=new ca(e.layout)),e.paint)){this._transitionablePaint=new oa(e.paint);for(let e in t.paint)this.setPaintProperty(e,t.paint[e],{validate:!1});for(let e in t.layout)this.setLayoutProperty(e,t.layout[e],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new ha(e.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(t){return"visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)}setLayoutProperty(t,e,r={}){null!=e&&this._validate(Ti,`layers.${this.id}.layout.${t}`,t,e,r)||("visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e)}getPaintProperty(t){return t.endsWith(va)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)}setPaintProperty(t,e,r={}){if(null!=e&&this._validate(wi,`layers.${this.id}.paint.${t}`,t,e,r))return!1;if(t.endsWith(va))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;{let r=this._transitionablePaint._values[t],n="cross-faded-data-driven"===r.property.specification["property-type"],i=r.value.isDataDriven(),a=r.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);let o=this._transitionablePaint._values[t].value;return o.isDataDriven()||i||n||this._handleOverridablePaintPropertyUpdate(t,a,o)}}_handleSpecialPaintPropertyUpdate(t){}_handleOverridablePaintPropertyUpdate(t,e,r){return!1}isHidden(t){return!!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)}serialize(){let t={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),M(t,((t,e)=>!(void 0===t||"layout"===e&&!Object.keys(t).length||"paint"===e&&!Object.keys(t).length)))}_validate(t,e,r,n,i={}){return(!i||!1!==i.validate)&&Ai(this,t.call(xi,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:J,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let t in this.paint._values){let e=this.paint.get(t);if(e instanceof ua&&pn(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return!0}return!1}}let _a={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ba{constructor(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class wa{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}}static deserialize(t){let e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(t){this.reserve(t),this.length=t}reserve(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function Ta(t,e=1){let r=0,n=0;return{members:t.map((t=>{let i=_a[t.type].BYTES_PER_ELEMENT,a=r=Aa(r,Math.max(e,i)),o=t.components||1;return n=Math.max(n,i),r+=i*o,{name:t.name,type:t.type,components:o,offset:a}})),size:Aa(r,Math.max(n,e)),alignment:e}}function Aa(t,e){return Math.ceil(t/e)*e}class ka extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){let n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t}}ka.prototype.bytesPerElement=4,Si("StructArrayLayout2i4",ka);class Ma extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){let i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t}}Ma.prototype.bytesPerElement=6,Si("StructArrayLayout3i6",Ma);class Sa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){let a=4*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,t}}Sa.prototype.bytesPerElement=8,Si("StructArrayLayout4i8",Sa);class Ea extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){let o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){let s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t}}Ea.prototype.bytesPerElement=12,Si("StructArrayLayout2i4i12",Ea);class Ca extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){let o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){let s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,t}}Ca.prototype.bytesPerElement=8,Si("StructArrayLayout2i4ub8",Ca);class Ia extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){let n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t}}Ia.prototype.bytesPerElement=8,Si("StructArrayLayout2f8",Ia);class La extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c){let u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,i,a,o,s,l,c)}emplace(t,e,r,n,i,a,o,s,l,c,u){let h=10*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint16[h+8]=c,this.uint16[h+9]=u,t}}La.prototype.bytesPerElement=20,Si("StructArrayLayout10ui20",La);class Pa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h){let p=this.length;return this.resize(p+1),this.emplace(p,t,e,r,n,i,a,o,s,l,c,u,h)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,p){let f=12*t;return this.int16[f+0]=e,this.int16[f+1]=r,this.int16[f+2]=n,this.int16[f+3]=i,this.uint16[f+4]=a,this.uint16[f+5]=o,this.uint16[f+6]=s,this.uint16[f+7]=l,this.int16[f+8]=c,this.int16[f+9]=u,this.int16[f+10]=h,this.int16[f+11]=p,t}}Pa.prototype.bytesPerElement=24,Si("StructArrayLayout4i4ui4i24",Pa);class za extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){let i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}za.prototype.bytesPerElement=12,Si("StructArrayLayout3f12",za);class Da extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint32[1*t+0]=e,t}}Da.prototype.bytesPerElement=4,Si("StructArrayLayout1ul4",Da);class Oa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l){let c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,i,a,o,s,l)}emplace(t,e,r,n,i,a,o,s,l,c){let u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t}}Oa.prototype.bytesPerElement=20,Si("StructArrayLayout6i1ul2ui20",Oa);class Ra extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){let o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){let s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t}}Ra.prototype.bytesPerElement=12,Si("StructArrayLayout2i2i2i12",Ra);class Fa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i){let a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i)}emplace(t,e,r,n,i,a){let o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,t}}Fa.prototype.bytesPerElement=16,Si("StructArrayLayout2f1f2i16",Fa);class Ba extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){let o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){let s=16*t,l=4*t,c=8*t;return this.uint8[s+0]=e,this.uint8[s+1]=r,this.float32[l+1]=n,this.float32[l+2]=i,this.int16[c+6]=a,this.int16[c+7]=o,t}}Ba.prototype.bytesPerElement=16,Si("StructArrayLayout2ub2f2i16",Ba);class ja extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){let i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t}}ja.prototype.bytesPerElement=6,Si("StructArrayLayout3ui6",ja);class Na extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g){let y=this.length;return this.resize(y+1),this.emplace(y,t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y){let v=24*t,x=12*t,_=48*t;return this.int16[v+0]=e,this.int16[v+1]=r,this.uint16[v+2]=n,this.uint16[v+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[v+10]=l,this.uint16[v+11]=c,this.uint16[v+12]=u,this.float32[x+7]=h,this.float32[x+8]=p,this.uint8[_+36]=f,this.uint8[_+37]=d,this.uint8[_+38]=m,this.uint32[x+10]=g,this.int16[v+22]=y,t}}Na.prototype.bytesPerElement=48,Si("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Na);class Ua extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S){let E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k,M,S,E){let C=32*t,I=16*t;return this.int16[C+0]=e,this.int16[C+1]=r,this.int16[C+2]=n,this.int16[C+3]=i,this.int16[C+4]=a,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=p,this.uint16[C+12]=f,this.uint16[C+13]=d,this.uint16[C+14]=m,this.uint16[C+15]=g,this.uint16[C+16]=y,this.uint16[C+17]=v,this.uint16[C+18]=x,this.uint16[C+19]=_,this.uint16[C+20]=b,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[I+12]=A,this.float32[I+13]=k,this.float32[I+14]=M,this.uint16[C+30]=S,this.uint16[C+31]=E,t}}Ua.prototype.bytesPerElement=64,Si("StructArrayLayout8i15ui1ul2f2ui64",Ua);class Va extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.float32[1*t+0]=e,t}}Va.prototype.bytesPerElement=4,Si("StructArrayLayout1f4",Va);class qa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){let i=3*t;return this.uint16[6*t+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}qa.prototype.bytesPerElement=12,Si("StructArrayLayout1ui2f12",qa);class Ha extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){let i=4*t;return this.uint32[2*t+0]=e,this.uint16[i+2]=r,this.uint16[i+3]=n,t}}Ha.prototype.bytesPerElement=8,Si("StructArrayLayout1ul2ui8",Ha);class Ga extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){let n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t}}Ga.prototype.bytesPerElement=4,Si("StructArrayLayout2ui4",Ga);class Wa extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint16[1*t+0]=e,t}}Wa.prototype.bytesPerElement=2,Si("StructArrayLayout1ui2",Wa);class Za extends wa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r,n){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){let a=4*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,t}}Za.prototype.bytesPerElement=16,Si("StructArrayLayout4f16",Za);class Ya extends ba{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new c(this.anchorPointX,this.anchorPointY)}}Ya.prototype.size=20;class Xa extends Oa{get(t){return new Ya(this,t)}}Si("CollisionBoxArray",Xa);class $a extends ba{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(t){this._structArray.uint8[this._pos1+37]=t}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(t){this._structArray.uint8[this._pos1+38]=t}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(t){this._structArray.uint32[this._pos4+10]=t}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}$a.prototype.size=48;class Ka extends Na{get(t){return new $a(this,t)}}Si("PlacedSymbolArray",Ka);class Ja extends ba{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(t){this._structArray.uint32[this._pos4+12]=t}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Ja.prototype.size=64;class Qa extends Ua{get(t){return new Ja(this,t)}}Si("SymbolInstanceArray",Qa);class to extends Va{getoffsetX(t){return this.float32[1*t+0]}}Si("GlyphOffsetArray",to);class eo extends Ma{getx(t){return this.int16[3*t+0]}gety(t){return this.int16[3*t+1]}gettileUnitDistanceFromAnchor(t){return this.int16[3*t+2]}}Si("SymbolLineVertexArray",eo);class ro extends ba{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}ro.prototype.size=12;class no extends qa{get(t){return new ro(this,t)}}Si("TextAnchorOffsetArray",no);class io extends ba{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}io.prototype.size=8;class ao extends Ha{get(t){return new io(this,t)}}Si("FeatureIndexArray",ao);class oo extends ka{}class so extends ka{}class lo extends ka{}class co extends Ea{}class uo extends Ca{}class ho extends Ia{}class po extends La{}class fo extends Pa{}class mo extends za{}class go extends Da{}class yo extends Ra{}class vo extends Ba{}class xo extends ja{}class _o extends Ga{}let bo=Ta([{name:"a_pos",components:2,type:"Int16"}],4),{members:wo}=bo;class To{constructor(t=[]){this.segments=t}prepareSegment(t,e,r,n){let i=this.segments[this.segments.length-1];return t>To.MAX_VERTEX_ARRAY_LENGTH&&C(`Max vertices per segment is ${To.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${t}`),(!i||i.vertexLength+t>To.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i}get(){return this.segments}destroy(){for(let t of this.segments)for(let e in t.vaos)t.vaos[e].destroy()}static simpleSegment(t,e,r,n){return new To([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])}}function Ao(t,e){return 256*(t=b(Math.floor(t),0,255))+b(Math.floor(e),0,255)}To.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Si("SegmentVector",To);let ko=Ta([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var Mo={exports:{}},So=function(t,e){var r,n,i,a,o,s,l,c;for(n=t.length-(r=3&t.length),i=e,o=3432918353,s=461845907,c=0;c>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(a>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0},Eo=function(t,e){for(var r,n=t.length,i=e^n,a=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.charCodeAt(++a))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++a;switch(n){case 3:i^=(255&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0};Mo.exports=So,Mo.exports.murmur3=So,Mo.exports.murmur2=Eo;var Co=n(Mo.exports);class Io{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(t,e,r,n){this.ids.push(Lo(t)),this.positions.push(e,r,n)}getPositions(t){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let e=Lo(t),r=0,n=this.ids.length-1;for(;r>1;this.ids[t]>=e?n=t:r=t+1}let i=[];for(;this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i}static serialize(t,e){let r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return Po(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}}static deserialize(t){let e=new Io;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e}}function Lo(t){let e=+t;return!isNaN(e)&&e<=Number.MAX_SAFE_INTEGER?e:Co(String(t))}function Po(t,e,r,n){for(;r>1],a=r-1,o=n+1;for(;;){do{a++}while(t[a]i);if(a>=o)break;zo(t,a,o),zo(e,3*a,3*o),zo(e,3*a+1,3*o+1),zo(e,3*a+2,3*o+2)}o-r`u_${t}`)),this.type=r}setUniform(t,e,r){t.set(r.constantOr(this.value))}getBinding(t,e,r){return"color"===this.type?new Fo(t,e):new Oo(t,e)}}class Uo{constructor(t,e){this.uniformNames=e.map((t=>`u_${t}`)),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr}setUniform(t,e,r,n){let i="u_pattern_to"===n?this.patternTo:"u_pattern_from"===n?this.patternFrom:"u_pixel_ratio_to"===n?this.pixelRatioTo:"u_pixel_ratio_from"===n?this.pixelRatioFrom:null;i&&t.set(i)}getBinding(t,e,r){return"u_pattern"===r.substr(0,9)?new Ro(t,e):new Oo(t,e)}}class Vo{constructor(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===r?2:1,offset:0}))),this.paintVertexArray=new n}populatePaintArray(t,e,r,n,i){let a=this.paintVertexArray.length,o=this.expression.evaluate(new na(0),e,{},n,[],i);this.paintVertexArray.resize(t),this._setPaintValue(a,t,o)}updatePaintArray(t,e,r,n){let i=this.expression.evaluate({zoom:0},r,n);this._setPaintValue(t,e,i)}_setPaintValue(t,e,r){if("color"===this.type){let n=jo(r);for(let r=t;r`u_${t}_t`)),this.type=r,this.useIntegerZoom=n,this.zoom=i,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===r?4:2,offset:0}))),this.paintVertexArray=new a}populatePaintArray(t,e,r,n,i){let a=this.expression.evaluate(new na(this.zoom),e,{},n,[],i),o=this.expression.evaluate(new na(this.zoom+1),e,{},n,[],i),s=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(s,t,a,o)}updatePaintArray(t,e,r,n){let i=this.expression.evaluate({zoom:this.zoom},r,n),a=this.expression.evaluate({zoom:this.zoom+1},r,n);this._setPaintValue(t,e,i,a)}_setPaintValue(t,e,r,n){if("color"===this.type){let i=jo(r),a=jo(n);for(let r=t;r`#define HAS_UNIFORM_${t}`)))}return t}getBinderAttributes(){let t=[];for(let e in this.binders){let r=this.binders[e];if(r instanceof Vo||r instanceof qo)for(let e=0;e!0){this.programConfigurations={};for(let n of t)this.programConfigurations[n.id]=new Go(n,e,r);this.needsUpload=!1,this._featureMap=new Io,this._bufferOffset=0}populatePaintArrays(t,e,r,n,i,a){for(let r in this.programConfigurations)this.programConfigurations[r].populatePaintArrays(t,e,n,i,a);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0}updatePaintArrays(t,e,r,n){for(let i of r)this.needsUpload=this.programConfigurations[i.id].updatePaintArrays(t,this._featureMap,e,i,n)||this.needsUpload}get(t){return this.programConfigurations[t]}upload(t){if(this.needsUpload){for(let e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1}}destroy(){for(let t in this.programConfigurations)this.programConfigurations[t].destroy()}}function Zo(t,e){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[t]||[t.replace(`${e}-`,"").replace(/-/g,"_")]}function Yo(t,e,r){let n={color:{source:Ia,composite:Za},number:{source:Va,composite:Ia}},i={"line-pattern":{source:po,composite:po},"fill-pattern":{source:po,composite:po},"fill-extrusion-pattern":{source:po,composite:po}}[t];return i&&i[r]||n[e][r]}Si("ConstantBinder",No),Si("CrossFadedConstantBinder",Uo),Si("SourceExpressionBinder",Vo),Si("CrossFadedCompositeBinder",Ho),Si("CompositeExpressionBinder",qo),Si("ProgramConfiguration",Go,{omit:["_buffers"]}),Si("ProgramConfigurationSet",Wo);let Xo,$o,Ko=8192,Jo=Math.pow(2,14)-1,Qo=-Jo-1;function ts(t){let e=Ko/t.extent,r=t.loadGeometry();for(let t=0;tr.x+1||ar.y+1)&&C("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return r}function es(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?ts(t):[]}}function rs(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2)}class ns{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new so,this.indexArray=new xo,this.segments=new To,this.programConfigurations=new Wo(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){let n=this.layers[0],i=[],a=null,o=!1;"circle"===n.type&&(a=n.layout.get("circle-sort-key"),o=!a.isConstant());for(let{feature:e,id:n,index:s,sourceLayerIndex:l}of t){let t=this.layers[0]._featureFilter.needGeometry,c=es(e,t);if(!this.layers[0]._featureFilter.filter(new na(this.zoom),c,r))continue;let u=o?a.evaluate(c,{},r):void 0,h={id:n,properties:e.properties,type:e.type,sourceLayerIndex:l,index:s,geometry:t?c.geometry:ts(e),patterns:{},sortKey:u};i.push(h)}o&&i.sort(((t,e)=>t.sortKey-e.sortKey));for(let n of i){let{geometry:i,index:a,sourceLayerIndex:o}=n,s=t[a].feature;this.addFeature(n,i,a,r),e.featureIndex.insert(s,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,wo),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(t,e,r,n){for(let r of e)for(let e of r){let r=e.x,n=e.y;if(r<0||r>=Ko||n<0||n>=Ko)continue;let i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),a=i.vertexLength;rs(this.layoutVertexArray,r,n,-1,-1),rs(this.layoutVertexArray,r,n,1,-1),rs(this.layoutVertexArray,r,n,1,1),rs(this.layoutVertexArray,r,n,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+3,a+2),i.vertexLength+=4,i.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)}}function is(t,e){for(let r=0;r1){if(ls(t,e))return!0;for(let n=0;n1?r:r.sub(e)._mult(i)._add(e))}function ps(t,e){let r,n,i,a=!1;for(let o=0;oe.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(a=!a)}return a}function fs(t,e){let r=!1;for(let n=0,i=t.length-1;ne.y!=o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function ds(t,e,r){let n=r[0],i=r[2];if(t.xi.x&&e.x>i.x||t.yi.y&&e.y>i.y)return!1;let a=I(t,e,r[0]);return a!==I(t,e,r[1])||a!==I(t,e,r[2])||a!==I(t,e,r[3])}function ms(t,e,r){let n=e.paint.get(t).value;return"constant"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function gs(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function ys(t,e,r,n,i){if(!e[0]&&!e[1])return t;let a=c.convert(e)._mult(i);"viewport"===r&&a._rotate(-n);let o=[];for(let e=0;eSs(t,f)))),p=u?c*o:c;var f;for(let t of n)for(let e of t){let t=u?e:Ss(e,s),r=p,n=ks([],[e.x,e.y,0,1],s);if("viewport"===this.paint.get("circle-pitch-scale")&&"map"===this.paint.get("circle-pitch-alignment")?r*=n[3]/a.cameraToCenterDistance:"map"===this.paint.get("circle-pitch-scale")&&"viewport"===this.paint.get("circle-pitch-alignment")&&(r*=a.cameraToCenterDistance/n[3]),as(h,t,r))return!0}return!1}}function Ss(t,e){let r=ks([],[t.x,t.y,0,1],e);return new c(r[0]/r[3],r[1]/r[3])}class Es extends ns{}let Cs;Si("HeatmapBucket",Es,{omit:["layers"]});var Is={get paint(){return Cs=Cs||new ya({"heatmap-radius":new fa(J.paint_heatmap["heatmap-radius"]),"heatmap-weight":new fa(J.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new pa(J.paint_heatmap["heatmap-intensity"]),"heatmap-color":new ga(J.paint_heatmap["heatmap-color"]),"heatmap-opacity":new pa(J.paint_heatmap["heatmap-opacity"])})}};function Ls(t,{width:e,height:r},n,i){if(i){if(i instanceof Uint8ClampedArray)i=new Uint8Array(i.buffer);else if(i.length!==e*r*n)throw new RangeError(`mismatched image size. expected: ${i.length} but got: ${e*r*n}`)}else i=new Uint8Array(e*r*n);return t.width=e,t.height=r,t.data=i,t}function Ps(t,{width:e,height:r},n){if(e===t.width&&r===t.height)return;let i=Ls({},{width:e,height:r},n);zs(t,i,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,e),height:Math.min(t.height,r)},n),t.width=e,t.height=r,t.data=i.data}function zs(t,e,r,n,i,a){if(0===i.width||0===i.height)return e;if(i.width>t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");let o=t.data,s=e.data;if(o===s)throw new Error("srcData equals dstData, so image is already copied");for(let l=0;l{e[t.evaluationKey]=a;let o=t.expression.evaluate(e);i.data[r+n+0]=Math.floor(255*o.r/o.a),i.data[r+n+1]=Math.floor(255*o.g/o.a),i.data[r+n+2]=Math.floor(255*o.b/o.a),i.data[r+n+3]=Math.floor(255*o.a)};if(t.clips)for(let e=0,i=0;e80*r){n=1/0,i=1/0;let e=-1/0,o=-1/0;for(let a=r;ae&&(e=r),s>o&&(o=s)}a=Math.max(e-n,o-i),a=0!==a?32767/a:0}return Xs(l,c,r,n,i,a,0),c}function Zs(t,e,r,n,i){let a;if(i===function(t,e,r,n){let i=0;for(let a=e,o=r-n;a0)for(let i=e;i=e;i-=n)a=dl(i/n|0,t[i],t[i+1],a);return a&&ll(a,a.next)&&(ml(a),a=a.next),a}function Ys(t,e){if(!t)return t;e||(e=t);let r,n=t;do{if(r=!1,n.steiner||!ll(n,n.next)&&0!==sl(n.prev,n,n.next))n=n.next;else{if(ml(n),n=e=n.prev,n===n.next)break;r=!0}}while(r||n!==e);return e}function Xs(t,e,r,n,i,a,o){if(!t)return;!o&&a&&function(t,e,r,n){let i=t;do{0===i.z&&(i.z=nl(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){let e,r=1;do{let n,i=t;t=null;let a=null;for(e=0;i;){e++;let o=i,s=0;for(let t=0;t0||l>0&&o;)0!==s&&(0===l||!o||i.z<=o.z)?(n=i,i=i.nextZ,s--):(n=o,o=o.nextZ,l--),a?a.nextZ=n:t=n,n.prevZ=a,a=n;i=o}a.nextZ=null,r*=2}while(e>1)}(i)}(t,n,i,a);let s=t;for(;t.prev!==t.next;){let l=t.prev,c=t.next;if(a?Ks(t,n,i,a):$s(t))e.push(l.i,t.i,c.i),ml(t),t=c.next,s=c.next;else if((t=c)===s){o?1===o?Xs(t=Js(Ys(t),e),e,r,n,i,a,2):2===o&&Qs(t,e,r,n,i,a):Xs(Ys(t),e,r,n,i,a,1);break}}}function $s(t){let e=t.prev,r=t,n=t.next;if(sl(e,r,n)>=0)return!1;let i=e.x,a=r.x,o=n.x,s=e.y,l=r.y,c=n.y,u=ia?i>o?i:o:a>o?a:o,f=s>l?s>c?s:c:l>c?l:c,d=n.next;for(;d!==e;){if(d.x>=u&&d.x<=p&&d.y>=h&&d.y<=f&&al(i,s,a,l,o,c,d.x,d.y)&&sl(d.prev,d,d.next)>=0)return!1;d=d.next}return!0}function Ks(t,e,r,n){let i=t.prev,a=t,o=t.next;if(sl(i,a,o)>=0)return!1;let s=i.x,l=a.x,c=o.x,u=i.y,h=a.y,p=o.y,f=sl?s>c?s:c:l>c?l:c,g=u>h?u>p?u:p:h>p?h:p,y=nl(f,d,e,r,n),v=nl(m,g,e,r,n),x=t.prevZ,_=t.nextZ;for(;x&&x.z>=y&&_&&_.z<=v;){if(x.x>=f&&x.x<=m&&x.y>=d&&x.y<=g&&x!==i&&x!==o&&al(s,u,l,h,c,p,x.x,x.y)&&sl(x.prev,x,x.next)>=0||(x=x.prevZ,_.x>=f&&_.x<=m&&_.y>=d&&_.y<=g&&_!==i&&_!==o&&al(s,u,l,h,c,p,_.x,_.y)&&sl(_.prev,_,_.next)>=0))return!1;_=_.nextZ}for(;x&&x.z>=y;){if(x.x>=f&&x.x<=m&&x.y>=d&&x.y<=g&&x!==i&&x!==o&&al(s,u,l,h,c,p,x.x,x.y)&&sl(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;_&&_.z<=v;){if(_.x>=f&&_.x<=m&&_.y>=d&&_.y<=g&&_!==i&&_!==o&&al(s,u,l,h,c,p,_.x,_.y)&&sl(_.prev,_,_.next)>=0)return!1;_=_.nextZ}return!0}function Js(t,e){let r=t;do{let n=r.prev,i=r.next.next;!ll(n,i)&&cl(n,r,r.next,i)&&pl(n,i)&&pl(i,n)&&(e.push(n.i,r.i,i.i),ml(r),ml(r.next),r=t=i),r=r.next}while(r!==t);return Ys(r)}function Qs(t,e,r,n,i,a){let o=t;do{let t=o.next.next;for(;t!==o.prev;){if(o.i!==t.i&&ol(o,t)){let s=fl(o,t);return o=Ys(o,o.next),s=Ys(s,s.next),Xs(o,e,r,n,i,a,0),void Xs(s,e,r,n,i,a,0)}t=t.next}o=o.next}while(o!==t)}function tl(t,e){return t.x-e.x}function el(t,e){let r=function(t,e){let r,n=e,i=t.x,a=t.y,o=-1/0;do{if(a<=n.y&&a>=n.next.y&&n.next.y!==n.y){let t=n.x+(a-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t<=i&&t>o&&(o=t,r=n.x=n.x&&n.x>=l&&i!==n.x&&al(ar.x||n.x===r.x&&rl(r,n)))&&(r=n,u=e)}n=n.next}while(n!==s);return r}(t,e);if(!r)return e;let n=fl(r,t);return Ys(n,n.next),Ys(r,r.next)}function rl(t,e){return sl(t.prev,t,e.prev)<0&&sl(e.next,t,t.next)<0}function nl(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function il(t){let e=t,r=t;do{(e.x=(t-o)*(a-s)&&(t-o)*(n-s)>=(r-o)*(e-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function ol(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&cl(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(pl(t,e)&&pl(e,t)&&function(t,e){let r=t,n=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(sl(t.prev,t,e.prev)||sl(t,e.prev,e))||ll(t,e)&&sl(t.prev,t,t.next)>0&&sl(e.prev,e,e.next)>0)}function sl(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function ll(t,e){return t.x===e.x&&t.y===e.y}function cl(t,e,r,n){let i=hl(sl(t,e,r)),a=hl(sl(t,e,n)),o=hl(sl(r,n,t)),s=hl(sl(r,n,e));return i!==a&&o!==s||!(0!==i||!ul(t,r,e))||!(0!==a||!ul(t,n,e))||!(0!==o||!ul(r,t,n))||!(0!==s||!ul(r,e,n))}function ul(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function hl(t){return t>0?1:t<0?-1:0}function pl(t,e){return sl(t.prev,t,t.next)<0?sl(t,e,t.next)>=0&&sl(t,t.prev,e)>=0:sl(t,e,t.prev)<0||sl(t,t.next,e)<0}function fl(t,e){let r=gl(t.i,t.x,t.y),n=gl(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function dl(t,e,r,n){let i=gl(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function ml(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function gl(t,e,r){return{i:t,x:e,y:r,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function yl(t,e,r){let n=r.patternDependencies,i=!1;for(let r of e){let e=r.paint.get(`${t}-pattern`);e.isConstant()||(i=!0);let a=e.constantOr(null);a&&(i=!0,n[a.to]=!0,n[a.from]=!0)}return i}function vl(t,e,r,n,i){let a=i.patternDependencies;for(let o of e){let e=o.paint.get(`${t}-pattern`).value;if("constant"!==e.kind){let t=e.evaluate({zoom:n-1},r,{},i.availableImages),s=e.evaluate({zoom:n},r,{},i.availableImages),l=e.evaluate({zoom:n+1},r,{},i.availableImages);t=t&&t.name?t.name:t,s=s&&s.name?s.name:s,l=l&&l.name?l.name:l,a[t]=!0,a[s]=!0,a[l]=!0,r.patterns[o.id]={min:t,mid:s,max:l}}}return r}class xl{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new lo,this.indexArray=new xo,this.indexArray2=new _o,this.programConfigurations=new Wo(t.layers,t.zoom),this.segments=new To,this.segments2=new To,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.hasPattern=yl("fill",this.layers,e);let n=this.layers[0].layout.get("fill-sort-key"),i=!n.isConstant(),a=[];for(let{feature:o,id:s,index:l,sourceLayerIndex:c}of t){let t=this.layers[0]._featureFilter.needGeometry,u=es(o,t);if(!this.layers[0]._featureFilter.filter(new na(this.zoom),u,r))continue;let h=i?n.evaluate(u,{},r,e.availableImages):void 0,p={id:s,properties:o.properties,type:o.type,sourceLayerIndex:c,index:l,geometry:t?u.geometry:ts(o),patterns:{},sortKey:h};a.push(p)}i&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(let n of a){let{geometry:i,index:a,sourceLayerIndex:o}=n;if(this.hasPattern){let t=vl("fill",this.layers,n,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(n,i,a,r,{});e.featureIndex.insert(t[a].feature,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}addFeatures(t,e,r){for(let t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Gs),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(t,e,r,n,i){for(let t of Ar(e,500)){let e=0;for(let r of t)e+=r.length;let r=this.segments.prepareSegment(e,this.layoutVertexArray,this.indexArray),n=r.vertexLength,i=[],a=[];for(let e of t){if(0===e.length)continue;e!==t[0]&&a.push(i.length/2);let r=this.segments2.prepareSegment(e.length,this.layoutVertexArray,this.indexArray2),n=r.vertexLength;this.layoutVertexArray.emplaceBack(e[0].x,e[0].y),this.indexArray2.emplaceBack(n+e.length-1,n),i.push(e[0].x),i.push(e[0].y);for(let t=1;t>3}if(i--,1===n||2===n)a+=t.readSVarint(),o+=t.readSVarint(),1===n&&(e&&s.push(e),e=[]),e.push(new Ml(a,o));else{if(7!==n)throw new Error("unknown command "+n);e&&e.push(e[0].clone())}}return e&&s.push(e),s},El.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(n--,1===r||2===r)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())c&&(c=a);else if(7!==r)throw new Error("unknown command "+r)}return[o,l,s,c]},El.prototype.toGeoJSON=function(t,e,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=El.types[this.type];function u(t){for(var e=0;e>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}(r))}zl.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Ll(this._pbf,e,this.extent,this._keys,this._values)};var Ol=Pl;function Rl(t,e,r){if(3===t){var n=new Ol(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}kl.VectorTile=function(t,e){this.layers=t.readFields(Rl,{},e)},kl.VectorTileFeature=Sl,kl.VectorTileLayer=Pl;let Fl,Bl=kl.VectorTileFeature.types,jl=Math.pow(2,13);function Nl(t,e,r,n,i,a,o,s){t.emplaceBack(e,r,2*Math.floor(n*jl)+o,i*jl*2,a*jl*2,Math.round(s))}class Ul{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new co,this.centroidVertexArray=new oo,this.indexArray=new xo,this.programConfigurations=new Wo(t.layers,t.zoom),this.segments=new To,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.features=[],this.hasPattern=yl("fill-extrusion",this.layers,e);for(let{feature:n,id:i,index:a,sourceLayerIndex:o}of t){let t=this.layers[0]._featureFilter.needGeometry,s=es(n,t);if(!this.layers[0]._featureFilter.filter(new na(this.zoom),s,r))continue;let l={id:i,sourceLayerIndex:o,index:a,geometry:t?s.geometry:ts(n),properties:n.properties,type:n.type,patterns:{}};this.hasPattern?this.features.push(vl("fill-extrusion",this.layers,l,this.zoom,e)):this.addFeature(l,l.geometry,a,r,{}),e.featureIndex.insert(n,l.geometry,a,o,this.index,!0)}}addFeatures(t,e,r){for(let t of this.features){let{geometry:n}=t;this.addFeature(t,n,t.index,e,r)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.centroidVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Al),this.centroidVertexBuffer=t.createVertexBuffer(this.centroidVertexArray,Tl.members,!0),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(t,e,r,n,i){for(let r of Ar(e,500)){let e={x:0,y:0,vertexCount:0},n=0;for(let t of r)n+=t.length;let i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let t of r){if(0===t.length||ql(t))continue;let r=0;for(let n=0;n=1){let o=t[n-1];if(!Vl(a,o)){i.vertexLength+4>To.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let t=a.sub(o)._perp()._unit(),n=o.dist(a);r+n>32768&&(r=0),Nl(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,0,r),Nl(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,1,r),e.x+=2*a.x,e.y+=2*a.y,e.vertexCount+=2,r+=n,Nl(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,0,r),Nl(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,1,r),e.x+=2*o.x,e.y+=2*o.y,e.vertexCount+=2;let s=i.vertexLength;this.indexArray.emplaceBack(s,s+2,s+1),this.indexArray.emplaceBack(s+1,s+2,s+3),i.vertexLength+=4,i.primitiveLength+=2}}}}if(i.vertexLength+n>To.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(n,this.layoutVertexArray,this.indexArray)),"Polygon"!==Bl[t.type])continue;let a=[],o=[],s=i.vertexLength;for(let t of r)if(0!==t.length){t!==r[0]&&o.push(a.length/2);for(let r=0;rKo)||t.y===e.y&&(t.y<0||t.y>Ko)}function ql(t){return t.every((t=>t.x<0))||t.every((t=>t.x>Ko))||t.every((t=>t.y<0))||t.every((t=>t.y>Ko))}Si("FillExtrusionBucket",Ul,{omit:["layers","features"]});var Hl={get paint(){return Fl=Fl||new ya({"fill-extrusion-opacity":new pa(J["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new fa(J["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new pa(J["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new pa(J["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new da(J["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new fa(J["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new fa(J["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new pa(J["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Gl extends xa{constructor(t){super(t,Hl)}createBucket(t){return new Ul(t)}queryRadius(){return gs(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(t,e,r,n,i,a,o,s){let l=ys(t,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),a.angle,o),u=this.paint.get("fill-extrusion-height").evaluate(e,r),h=this.paint.get("fill-extrusion-base").evaluate(e,r),p=function(t,e){let r=[];for(let n of t){let t=[n.x,n.y,0,1];ks(t,t,e),r.push(new c(t[0]/t[3],t[1]/t[3]))}return r}(l,s),f=function(t,e,r,n){let i=[],a=[],o=n[8]*e,s=n[9]*e,l=n[10]*e,u=n[11]*e,h=n[8]*r,p=n[9]*r,f=n[10]*r,d=n[11]*r;for(let e of t){let t=[],r=[];for(let i of e){let e=i.x,a=i.y,m=n[0]*e+n[4]*a+n[12],g=n[1]*e+n[5]*a+n[13],y=n[2]*e+n[6]*a+n[14],v=n[3]*e+n[7]*a+n[15],x=y+l,_=v+u,b=m+h,w=g+p,T=y+f,A=v+d,k=new c((m+o)/_,(g+s)/_);k.z=x/_,t.push(k);let M=new c(b/A,w/A);M.z=T/A,r.push(M)}i.push(t),a.push(r)}return[i,a]}(n,h,u,s);return function(t,e,r){let n=1/0;os(r,e)&&(n=Zl(r,e[0]));for(let i=0;it.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((t=>{this.gradients[t.id]={}})),this.layoutVertexArray=new uo,this.layoutVertexArray2=new ho,this.indexArray=new xo,this.programConfigurations=new Wo(t.layers,t.zoom),this.segments=new To,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.hasPattern=yl("line",this.layers,e);let n=this.layers[0].layout.get("line-sort-key"),i=!n.isConstant(),a=[];for(let{feature:e,id:o,index:s,sourceLayerIndex:l}of t){let t=this.layers[0]._featureFilter.needGeometry,c=es(e,t);if(!this.layers[0]._featureFilter.filter(new na(this.zoom),c,r))continue;let u=i?n.evaluate(c,{},r):void 0,h={id:o,properties:e.properties,type:e.type,sourceLayerIndex:l,index:s,geometry:t?c.geometry:ts(e),patterns:{},sortKey:u};a.push(h)}i&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(let n of a){let{geometry:i,index:a,sourceLayerIndex:o}=n;if(this.hasPattern){let t=vl("line",this.layers,n,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(n,i,a,r,{});e.featureIndex.insert(t[a].feature,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}addFeatures(t,e,r){for(let t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,Ql)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Kl),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(t){if(t.properties&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_end"))return{start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}}addFeature(t,e,r,n,i){let a=this.layers[0].layout,o=a.get("line-join").evaluate(t,{}),s=a.get("line-cap"),l=a.get("line-miter-limit"),c=a.get("line-round-limit");this.lineClips=this.lineFeatureClips(t);for(let r of e)this.addLine(r,t,o,s,l,c);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)}addLine(t,e,r,n,i,a){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let e=0;e=2&&t[s-1].equals(t[s-2]);)s--;let l=0;for(;l0;if(b&&e>l){let t=c.dist(u);if(t>2*d){let e=c.sub(c.sub(u)._mult(d/t)._round());this.updateDistance(u,e),this.addCurrentVertex(e,p,0,0,m),u=e}}let T=u&&h,A=T?r:o?"butt":n;if(T&&"round"===A&&(xi&&(A="bevel"),"bevel"===A&&(x>2&&(A="flipbevel"),x100)g=f.mult(-1);else{let t=x*p.add(f).mag()/p.sub(f).mag();g._perp()._mult(t*(w?-1:1))}this.addCurrentVertex(c,g,0,0,m),this.addCurrentVertex(c,g.mult(-1),0,0,m)}else if("bevel"===A||"fakeround"===A){let t=-Math.sqrt(x*x-1),e=w?t:0,r=w?0:t;if(u&&this.addCurrentVertex(c,p,e,r,m),"fakeround"===A){let t=Math.round(180*_/Math.PI/20);for(let e=1;e2*d){let e=c.add(h.sub(c)._mult(d/t)._round());this.updateDistance(c,e),this.addCurrentVertex(e,f,0,0,m),c=e}}}}addCurrentVertex(t,e,r,n,i,a=!1){let o=e.y*n-e.x,s=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,a,!1,r,i),this.addHalfVertex(t,o,s,a,!0,-n,i),this.distance>rc/2&&0===this.totalDistance&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(t,e,r,n,i,a))}addHalfVertex({x:t,y:e},r,n,i,a,o,s){let l=.5*(this.lineClips?this.scaledDistance*(rc-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((t<<1)+(i?1:0),(e<<1)+(a?1:0),Math.round(63*r)+128,Math.round(63*n)+128,1+(0===o?0:o<0?-1:1)|(63&l)<<2,l>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let c=s.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,c),s.primitiveLength++),a?this.e2=c:this.e1=c}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance()}}Si("LineBucket",nc,{omit:["layers","patternFeatures"]});var ic={get paint(){return Xl=Xl||new ya({"line-opacity":new fa(J.paint_line["line-opacity"]),"line-color":new fa(J.paint_line["line-color"]),"line-translate":new pa(J.paint_line["line-translate"]),"line-translate-anchor":new pa(J.paint_line["line-translate-anchor"]),"line-width":new fa(J.paint_line["line-width"]),"line-gap-width":new fa(J.paint_line["line-gap-width"]),"line-offset":new fa(J.paint_line["line-offset"]),"line-blur":new fa(J.paint_line["line-blur"]),"line-dasharray":new ma(J.paint_line["line-dasharray"]),"line-pattern":new da(J.paint_line["line-pattern"]),"line-gradient":new ga(J.paint_line["line-gradient"])})},get layout(){return Yl=Yl||new ya({"line-cap":new pa(J.layout_line["line-cap"]),"line-join":new fa(J.layout_line["line-join"]),"line-miter-limit":new pa(J.layout_line["line-miter-limit"]),"line-round-limit":new pa(J.layout_line["line-round-limit"]),"line-sort-key":new fa(J.layout_line["line-sort-key"])})}};class ac extends fa{possiblyEvaluate(t,e){return e=new na(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,zoomHistory:e.zoomHistory,transition:e.transition}),super.possiblyEvaluate(t,e)}evaluate(t,e,r,n){return e=T({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,r,n)}}let oc;class sc extends xa{constructor(t){super(t,ic),this.gradientVersion=0,oc||(oc=new ac(ic.paint.properties["line-width"].specification),oc.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(t){if("line-gradient"===t){let t=this.gradientExpression();this.stepInterpolant=!(void 0===t._styleExpression)&&t._styleExpression.expression instanceof Ce,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(t,e){super.recalculate(t,e),this.paint._values["line-floorwidth"]=oc.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t)}createBucket(t){return new nc(t)}queryRadius(t){let e=t,r=lc(ms("line-width",this,e),ms("line-gap-width",this,e)),n=ms("line-offset",this,e);return r/2+Math.abs(n)+gs(this.paint.get("line-translate"))}queryIntersectsFeature(t,e,r,n,i,a,o){let s=ys(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),l=o/2*lc(this.paint.get("line-width").evaluate(e,r),this.paint.get("line-gap-width").evaluate(e,r)),u=this.paint.get("line-offset").evaluate(e,r);return u&&(n=function(t,e){let r=[];for(let n=0;n=3)for(let e=0;e0?e+2*t:t}let cc=Ta([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),uc=Ta([{name:"a_projected_pos",components:3,type:"Float32"}],4);Ta([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let hc=Ta([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);Ta([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let pc=Ta([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),fc=Ta([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function dc(t,e,r){return t.sections.forEach((t=>{t.text=function(t,e,r){let n=e.layout.get("text-transform").evaluate(r,{});return"uppercase"===n?t=t.toLocaleUpperCase():"lowercase"===n&&(t=t.toLocaleLowerCase()),ra.applyArabicShaping&&(t=ra.applyArabicShaping(t)),t}(t.text,e,r)})),t}Ta([{name:"triangle",components:3,type:"Uint16"}]),Ta([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),Ta([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),Ta([{type:"Float32",name:"offsetX"}]),Ta([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),Ta([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let mc={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"};var gc=24,yc=_c,vc=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<>1,u=-7,h=r?i-1:0,p=r?-1:1,f=t[e+h];for(h+=p,a=f&(1<<-u)-1,f>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=p,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=p,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,n),a-=c}return(f?-1:1)*o*Math.pow(2,a-n)},xc=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(o=o<0;t[r+f]=255&o,f+=d,o/=256,c-=8);t[r+f-d]|=128*m};function _c(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}_c.Varint=0,_c.Fixed64=1,_c.Bytes=2,_c.Fixed32=5;var bc=4294967296,wc=1/bc,Tc=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function Ac(t){return t.type===_c.Bytes?t.readVarint()+t.pos:t.pos+1}function kc(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function Mc(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function Fc(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}_c.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos>3,a=this.pos;this.type=7&n,t(i,e,this),this.pos===a&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Oc(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Fc(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Oc(this.buf,this.pos)+Oc(this.buf,this.pos+4)*bc;return this.pos+=8,t},readSFixed64:function(){var t=Oc(this.buf,this.pos)+Fc(this.buf,this.pos+4)*bc;return this.pos+=8,t},readFloat:function(){var t=vc(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=vc(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128||(n|=(127&(i=a[r.pos++]))<<3,i<128)||(n|=(127&(i=a[r.pos++]))<<10,i<128)||(n|=(127&(i=a[r.pos++]))<<17,i<128)||(n|=(127&(i=a[r.pos++]))<<24,i<128)||(n|=(1&(i=a[r.pos++]))<<31,i<128))return function(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}(t,n,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var t,e,r,n=this.readVarint()+this.pos,i=this.pos;return this.pos=n,n-i>=12&&Tc?(t=this.buf,e=i,r=n,Tc.decode(t.subarray(e,r))):function(t,e,r){for(var n="",i=e;i239?4:l>223?3:l>191?2:1;if(i+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(o=t[i+2],128==(192&(a=t[i+1]))&&128==(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(o=t[i+2],s=t[i+3],128==(192&(a=t[i+1]))&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),i+=u}return n}(this.buf,i,n)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==_c.Bytes)return t.push(this.readVarint(e));var r=Ac(this);for(t=t||[];this.pos127;);else if(e===_c.Bytes)this.pos=this.readVarint()+this.pos;else if(e===_c.Fixed32)this.pos+=4;else{if(e!==_c.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var r,n,i,a;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),i=r,(a=e).buf[a.pos++]=127&i|128,i>>>=7,a.buf[a.pos++]=127&i|128,i>>>=7,a.buf[a.pos++]=127&i|128,i>>>=7,a.buf[a.pos++]=127&i|128,a.buf[a.pos]=127&(i>>>=7),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(!!t)},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,a=0;a55295&&n<57344){if(!i){n>56319||a+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&kc(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),xc(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),xc(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r=128&&kc(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,_c.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Mc,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Sc,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,Ic,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Ec,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,Cc,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,Lc,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,Pc,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,zc,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Dc,e)},writeBytesField:function(t,e){this.writeTag(t,_c.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,_c.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,_c.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,_c.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,_c.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,_c.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,_c.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,_c.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,_c.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,_c.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,!!e)}};var Bc,jc=n(yc);function Nc(t,e,r){1===t&&r.readMessage(Uc,e)}function Uc(t,e,r){if(3===t){let{id:t,bitmap:n,width:i,height:a,left:o,top:s,advance:l}=r.readMessage(Vc,{});e.push({id:t,bitmap:new Ds({width:i+6,height:a+6},n),metrics:{width:i,height:a,left:o,top:s,advance:l}})}}function Vc(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}function qc(t){let e=0,r=0;for(let n of t)e+=n.w*n.h,r=Math.max(r,n.w);t.sort(((t,e)=>e.h-t.h));let n=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}],i=0,a=0;for(let e of t)for(let t=n.length-1;t>=0;t--){let r=n[t];if(!(e.w>r.w||e.h>r.h)){if(e.x=r.x,e.y=r.y,a=Math.max(a,e.y+e.h),i=Math.max(i,e.x+e.w),e.w===r.w&&e.h===r.h){let e=n.pop();t=0&&r>=t&&$c[this.text.charCodeAt(r)];r--)e--;this.text=this.text.substring(t,e),this.sectionIndex=this.sectionIndex.slice(t,e)}substring(t,e){let r=new Yc;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((t,e)=>Math.max(t,this.sections[e].scale)),0)}addTextSection(t,e){this.text+=t.text,this.sections.push(Zc.forText(t.scale,t.fontStack||e));let r=this.sections.length-1;for(let e=0;e=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Xc(e,r,n,i,a,o,s,l,c,u,h,p,f,d,m){let g,y=Yc.fromFeature(e,a);p===t.ah.vertical&&y.verticalizePunctuation();let{processBidirectionalText:v,processStyledBidirectionalText:x}=ra;if(v&&1===y.sections.length){g=[];let t=v(y.toString(),iu(y,u,o,r,i,d));for(let e of t){let t=new Yc;t.text=e,t.sections=y.sections;for(let r=0;r0&&n>w&&(w=n)}else{let t=n[m.fontStack],e=t&&t[y];if(e&&e.rect)T=e.rect,_=e.metrics;else{let t=r[m.fontStack],e=t&&t[y];if(!e)continue;_=e.metrics}v=(a-m.scale)*gc}M?(e.verticalizable=!0,b.push({glyph:y,imageName:A,x:f,y:d+v,vertical:M,scale:m.scale,fontStack:m.fontStack,sectionIndex:g,metrics:_,rect:T}),f+=k*m.scale+u):(b.push({glyph:y,imageName:A,x:f,y:d+v,vertical:M,scale:m.scale,fontStack:m.fontStack,sectionIndex:g,metrics:_,rect:T}),f+=_.advance*m.scale+u)}0!==b.length&&(m=Math.max(f-u,m),ou(b,0,b.length-1,y,w)),f=0;let T=o*a+w;_.lineOffset=Math.max(w,l),d+=T,g=Math.max(T,g),++v}var x;let _=d-Wc,{horizontalAlign:b,verticalAlign:w}=au(s);(function(t,e,r,n,i,a,o,s,l){let c=(e-r)*i,u=0;u=a!==o?-s*n-Wc:(-n*l+.5)*o;for(let e of t)for(let t of e.positionedGlyphs)t.x+=c,t.y+=u})(e.positionedLines,y,b,w,m,g,o,_,a.length),e.top+=-w*_,e.bottom=e.top+_,e.left+=-b*m,e.right=e.left+m}(b,r,n,i,g,s,l,c,p,u,f,m),!function(t){for(let e of t)if(0!==e.positionedGlyphs.length)return!1;return!0}(_)&&b}let $c={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Kc={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},Jc={40:!0};function Qc(t,e,r,n,i,a){if(e.imageName){let t=n[e.imageName];return t?t.displaySize[0]*e.scale*gc/a+i:0}{let n=r[e.fontStack],a=n&&n[t];return a?a.metrics.advance*e.scale+i:0}}function tu(t,e,r,n){let i=Math.pow(t-e,2);return n?t=0,c=0;for(let r=0;rc){let t=Math.ceil(a/c);i*=t/o,o=t}return{x1:n,y1:i,x2:n+a,y2:i+o}}function cu(t,e,r,n,i,a){let o,s=t.image;if(s.content){let t=s.content,e=s.pixelRatio||1;o=[t[0]/e,t[1]/e,s.displaySize[0]-t[2]/e,s.displaySize[1]-t[3]/e]}let l,c,u,h,p=e.left*a,f=e.right*a;"width"===r||"both"===r?(h=i[0]+p-n[3],c=i[0]+f+n[1]):(h=i[0]+(p+f-s.displaySize[0])/2,c=h+s.displaySize[0]);let d=e.top*a,m=e.bottom*a;return"height"===r||"both"===r?(l=i[1]+d-n[0],u=i[1]+m+n[2]):(l=i[1]+(d+m-s.displaySize[1])/2,u=l+s.displaySize[1]),{image:s,top:l,right:c,bottom:u,left:h,collisionPadding:o}}let uu=128,hu=32640;function pu(t,e){let{expression:r}=e;if("constant"===r.kind)return{kind:"constant",layoutSize:r.evaluate(new na(t+1))};if("source"===r.kind)return{kind:"source"};{let{zoomStops:e,interpolationType:n}=r,i=0;for(;it.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=bs([]),this.placementViewportMatrix=bs([]);let r=this.layers[0]._unevaluatedLayout._values;this.textSizeData=pu(this.zoom,r["text-size"]),this.iconSizeData=pu(this.zoom,r["icon-size"]);let n=this.layers[0].layout,i=n.get("symbol-sort-key"),a=n.get("symbol-z-order");this.canOverlap="never"!==fu(n,"text-overlap","text-allow-overlap")||"never"!==fu(n,"icon-overlap","icon-allow-overlap")||n.get("text-ignore-placement")||n.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==a&&!i.isConstant(),this.sortFeaturesByY=("viewport-y"===a||"auto"===a&&!this.sortFeaturesByKey)&&this.canOverlap,"point"===n.get("symbol-placement")&&(this.writingModes=n.get("text-writing-mode").map((e=>t.ah[e]))),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.sourceID=e.sourceID}createArrays(){this.text=new bu(new Wo(this.layers,this.zoom,(t=>/^text/.test(t)))),this.icon=new bu(new Wo(this.layers,this.zoom,(t=>/^icon/.test(t)))),this.glyphOffsetArray=new to,this.lineVertexArray=new eo,this.symbolInstances=new Qa,this.textAnchorOffsets=new no}calculateGlyphDependencies(t,e,r,n,i){for(let a=0;a0)&&("constant"!==o.value.kind||o.value.value.length>0),u="constant"!==l.value.kind||!!l.value.value||Object.keys(l.parameters).length>0,h=a.get("symbol-sort-key");if(this.features=[],!c&&!u)return;let p=r.iconDependencies,f=r.glyphDependencies,d=r.availableImages,m=new na(this.zoom);for(let{feature:r,id:s,index:l,sourceLayerIndex:g}of e){let e,y,v=i._featureFilter.needGeometry,x=es(r,v);if(!i._featureFilter.filter(m,x,n))continue;if(v||(x.geometry=ts(r)),c){let t=i.getValueAndResolveTokens("text-field",x,n,d),r=re.factory(t),a=this.hasRTLText=this.hasRTLText||_u(r);(!a||"unavailable"===ra.getRTLTextPluginStatus()||a&&ra.isParsed())&&(e=dc(r,i,x))}if(u){let t=i.getValueAndResolveTokens("icon-image",x,n,d);y=t instanceof oe?t:oe.fromString(t)}if(!e&&!y)continue;let _=this.sortFeaturesByKey?h.evaluate(x,{},n):void 0;if(this.features.push({id:s,text:e,icon:y,index:l,sourceLayerIndex:g,geometry:x.geometry,properties:r.properties,type:gu[r.type],sortKey:_}),y&&(p[y.name]=!0),e){let r=o.evaluate(x,{},n).join(","),i="viewport"!==a.get("text-rotation-alignment")&&"point"!==a.get("symbol-placement");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(t.ah.vertical)>=0;for(let t of e.sections)if(t.image)p[t.image.name]=!0;else{let n=Hi(e.toString()),a=t.fontStack||r,o=f[a]=f[a]||{};this.calculateGlyphDependencies(t.text,o,i,this.allowVerticalPlacement,n)}}}"line"===a.get("symbol-placement")&&(this.features=function(t){let e={},r={},n=[],i=0;function a(e){n.push(t[e]),i++}function o(t,e,i){let a=r[t];return delete r[t],r[e]=a,n[a].geometry[0].pop(),n[a].geometry[0]=n[a].geometry[0].concat(i[0]),a}function s(t,r,i){let a=e[r];return delete e[r],e[t]=a,n[a].geometry[0].shift(),n[a].geometry[0]=i[0].concat(n[a].geometry[0]),a}function l(t,e,r){let n=r?e[0][e[0].length-1]:e[0][0];return`${t}:${n.x}:${n.y}`}for(let c=0;ct.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((t,e)=>t.sortKey-e.sortKey))}update(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r))}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(t,e){let r=this.lineVertexArray.length;if(void 0!==t.segment){let r=t.dist(e[t.segment+1]),n=t.dist(e[t.segment]),i={};for(let n=t.segment+1;n=0;r--)i[r]={x:e[r].x,y:e[r].y,tileUnitDistanceFromAnchor:n},r>0&&(n+=e[r-1].dist(e[r]));for(let t=0;t0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(t,e){let r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs;for(let e=r.vertexStartIndex;en[t]-n[e]||i[e]-i[t])),a}addToSortKeyRanges(t,e){let r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let t of this.symbolInstanceIndexes){let e=this.symbolInstances.get(t);this.featureSortOrder.push(e.featureIndex),[e.rightJustifiedTextSymbolIndex,e.centerJustifiedTextSymbolIndex,e.leftJustifiedTextSymbolIndex].forEach(((t,e,r)=>{t>=0&&r.indexOf(t)===e&&this.addIndicesForPlacedSymbol(this.text,t)})),e.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,e.verticalPlacedTextSymbolIndex),e.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.placedIconSymbolIndex),e.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}Si("SymbolBucket",Tu,{omit:["layers","collisionBoxArray","features","compareText"]}),Tu.MAX_GLYPHS=65535,Tu.addDynamicAttributes=xu;var Au={get paint(){return mu=mu||new ya({"icon-opacity":new fa(J.paint_symbol["icon-opacity"]),"icon-color":new fa(J.paint_symbol["icon-color"]),"icon-halo-color":new fa(J.paint_symbol["icon-halo-color"]),"icon-halo-width":new fa(J.paint_symbol["icon-halo-width"]),"icon-halo-blur":new fa(J.paint_symbol["icon-halo-blur"]),"icon-translate":new pa(J.paint_symbol["icon-translate"]),"icon-translate-anchor":new pa(J.paint_symbol["icon-translate-anchor"]),"text-opacity":new fa(J.paint_symbol["text-opacity"]),"text-color":new fa(J.paint_symbol["text-color"],{runtimeType:vt,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),"text-halo-color":new fa(J.paint_symbol["text-halo-color"]),"text-halo-width":new fa(J.paint_symbol["text-halo-width"]),"text-halo-blur":new fa(J.paint_symbol["text-halo-blur"]),"text-translate":new pa(J.paint_symbol["text-translate"]),"text-translate-anchor":new pa(J.paint_symbol["text-translate-anchor"])})},get layout(){return du=du||new ya({"symbol-placement":new pa(J.layout_symbol["symbol-placement"]),"symbol-spacing":new pa(J.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new pa(J.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new fa(J.layout_symbol["symbol-sort-key"]),"symbol-z-order":new pa(J.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new pa(J.layout_symbol["icon-allow-overlap"]),"icon-overlap":new pa(J.layout_symbol["icon-overlap"]),"icon-ignore-placement":new pa(J.layout_symbol["icon-ignore-placement"]),"icon-optional":new pa(J.layout_symbol["icon-optional"]),"icon-rotation-alignment":new pa(J.layout_symbol["icon-rotation-alignment"]),"icon-size":new fa(J.layout_symbol["icon-size"]),"icon-text-fit":new pa(J.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new pa(J.layout_symbol["icon-text-fit-padding"]),"icon-image":new fa(J.layout_symbol["icon-image"]),"icon-rotate":new fa(J.layout_symbol["icon-rotate"]),"icon-padding":new fa(J.layout_symbol["icon-padding"]),"icon-keep-upright":new pa(J.layout_symbol["icon-keep-upright"]),"icon-offset":new fa(J.layout_symbol["icon-offset"]),"icon-anchor":new fa(J.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new pa(J.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new pa(J.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new pa(J.layout_symbol["text-rotation-alignment"]),"text-field":new fa(J.layout_symbol["text-field"]),"text-font":new fa(J.layout_symbol["text-font"]),"text-size":new fa(J.layout_symbol["text-size"]),"text-max-width":new fa(J.layout_symbol["text-max-width"]),"text-line-height":new pa(J.layout_symbol["text-line-height"]),"text-letter-spacing":new fa(J.layout_symbol["text-letter-spacing"]),"text-justify":new fa(J.layout_symbol["text-justify"]),"text-radial-offset":new fa(J.layout_symbol["text-radial-offset"]),"text-variable-anchor":new pa(J.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new fa(J.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new fa(J.layout_symbol["text-anchor"]),"text-max-angle":new pa(J.layout_symbol["text-max-angle"]),"text-writing-mode":new pa(J.layout_symbol["text-writing-mode"]),"text-rotate":new fa(J.layout_symbol["text-rotate"]),"text-padding":new pa(J.layout_symbol["text-padding"]),"text-keep-upright":new pa(J.layout_symbol["text-keep-upright"]),"text-transform":new fa(J.layout_symbol["text-transform"]),"text-offset":new fa(J.layout_symbol["text-offset"]),"text-allow-overlap":new pa(J.layout_symbol["text-allow-overlap"]),"text-overlap":new pa(J.layout_symbol["text-overlap"]),"text-ignore-placement":new pa(J.layout_symbol["text-ignore-placement"]),"text-optional":new pa(J.layout_symbol["text-optional"])})}};class ku{constructor(t){if(void 0===t.property.overrides)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=t.property.overrides?t.property.overrides.runtimeType:dt,this.defaultValue=t}evaluate(t){if(t.formattedSection){let e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default}eachChild(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Si("FormatSectionOverride",ku,{omit:["defaultValue"]});class Mu extends xa{constructor(t){super(t,Au)}recalculate(t,e){if(super.recalculate(t,e),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]="map"===this.layout.get("text-rotation-alignment")?"map":"viewport"),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){let t=this.layout.get("text-writing-mode");if(t){let e=[];for(let r of t)e.indexOf(r)<0&&e.push(r);this.layout._values["text-writing-mode"]=e}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(t,e,r,n){let i=this.layout.get(t).evaluate(e,{},r,n),a=this._unevaluatedLayout._values[t];return a.isDataDriven()||kn(a.value)||!i?i:(o=e.properties,i.replace(/{([^{}]+)}/g,((t,e)=>o&&e in o?String(o[e]):"")));var o}createBucket(t){return new Tu(t)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let t of Au.paint.overridableProperties){if(!Mu.hasPaintOverride(this.layout,t))continue;let e=this.paint.get(t),r=new ku(e),n=new An(r,e.property.specification),i=null;i="constant"===e.value.kind||"source"===e.value.kind?new Sn("source",n):new En("composite",n,e.value.zoomStops),this.paint._values[t]=new ua(e.property,i,e.parameters)}}_handleOverridablePaintPropertyUpdate(t,e,r){return!(!this.layout||e.isDataDriven()||r.isDataDriven())&&Mu.hasPaintOverride(this.layout,t)}static hasPaintOverride(t,e){let r=t.get("text-field"),n=Au.paint.properties[e],i=!1,a=t=>{for(let e of t)if(n.overrides&&n.overrides.hasOverride(e))return void(i=!0)};if("constant"===r.value.kind&&r.value.value instanceof re)a(r.value.value.sections);else if("source"===r.value.kind){let t=e=>{i||(e instanceof he&&ce(e.value)===wt?a(e.value.sections):e instanceof Ke?a(e.sections):e.eachChild(t))},e=r.value;e._styleExpression&&t(e._styleExpression.expression)}return i}}let Su;var Eu={get paint(){return Su=Su||new ya({"background-color":new pa(J.paint_background["background-color"]),"background-pattern":new ma(J.paint_background["background-pattern"]),"background-opacity":new pa(J.paint_background["background-opacity"])})}};class Cu extends xa{constructor(t){super(t,Eu)}}let Iu;var Lu={get paint(){return Iu=Iu||new ya({"raster-opacity":new pa(J.paint_raster["raster-opacity"]),"raster-hue-rotate":new pa(J.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new pa(J.paint_raster["raster-brightness-min"]),"raster-brightness-max":new pa(J.paint_raster["raster-brightness-max"]),"raster-saturation":new pa(J.paint_raster["raster-saturation"]),"raster-contrast":new pa(J.paint_raster["raster-contrast"]),"raster-resampling":new pa(J.paint_raster["raster-resampling"]),"raster-fade-duration":new pa(J.paint_raster["raster-fade-duration"])})}};class Pu extends xa{constructor(t){super(t,Lu)}}class zu extends xa{constructor(t){super(t,{}),this.onAdd=t=>{this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},this.onRemove=t=>{this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},this.implementation=t}is3D(){return"3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class Du{constructor(t){this._methodToThrottle=t,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._methodToThrottle()}),0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let Ou=6371008.8;class Ru{constructor(t,e){if(isNaN(t)||isNaN(e))throw new Error(`Invalid LngLat object: (${t}, ${e})`);if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Ru(w(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(t){let e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return Ou*Math.acos(Math.min(i,1))}static convert(t){if(t instanceof Ru)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Ru(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new Ru(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let Fu=2*Math.PI*Ou;function Bu(t){return Fu*Math.cos(t*Math.PI/180)}function ju(t){return(180+t)/360}function Nu(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Uu(t,e){return t/Bu(e)}function Vu(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}class qu{constructor(t,e,r=0){this.x=+t,this.y=+e,this.z=+r}static fromLngLat(t,e=0){let r=Ru.convert(t);return new qu(ju(r.lng),Nu(r.lat),Uu(e,r.lat))}toLngLat(){return new Ru(360*this.x-180,Vu(this.y))}toAltitude(){return this.z*Bu(Vu(this.y))}meterInMercatorCoordinateUnits(){return 1/Fu*(t=Vu(this.y),1/Math.cos(t*Math.PI/180));var t}}function Hu(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}class Gu{constructor(t,e,r){if(i=e,a=r,(n=t)<0||n>25||a<0||a>=Math.pow(2,n)||i<0||i>=Math.pow(2,n))throw new Error(`x=${e}, y=${r}, z=${t} outside of bounds. 0<=x<${Math.pow(2,t)}, 0<=y<${Math.pow(2,t)} 0<=z<=25 `);var n,i,a;this.z=t,this.x=e,this.y=r,this.key=Yu(0,t,t,e,r)}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y}url(t,e,r){let n=(a=this.y,o=this.z,s=Hu(256*(i=this.x),256*(a=Math.pow(2,o)-a-1),o),l=Hu(256*(i+1),256*(a+1),o),s[0]+","+s[1]+","+l[0]+","+l[1]);var i,a,o,s,l;let c=function(t,e,r){let n,i="";for(let a=t;a>0;a--)n=1<1?"@2x":"").replace(/{quadkey}/g,c).replace(/{bbox-epsg-3857}/g,n)}isChildOf(t){let e=this.z-t.z;return e>0&&t.x===this.x>>e&&t.y===this.y>>e}getTilePoint(t){let e=Math.pow(2,this.z);return new c((t.x*e-this.x)*Ko,(t.y*e-this.y)*Ko)}toString(){return`${this.z}/${this.x}/${this.y}`}}class Wu{constructor(t,e){this.wrap=t,this.canonical=e,this.key=Yu(t,e.z,e.z,e.x,e.y)}}class Zu{constructor(t,e,r,n,i){if(t= z; overscaledZ = ${t}; z = ${r}`);this.overscaledZ=t,this.wrap=e,this.canonical=new Gu(r,+n,+i),this.key=Yu(e,t,r,n,i)}clone(){return new Zu(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)}scaledTo(t){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);let e=this.canonical.z-t;return t>this.canonical.z?new Zu(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Zu(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)}calculateScaledKey(t,e){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);let r=this.canonical.z-t;return t>this.canonical.z?Yu(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Yu(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)}isChildOf(t){if(t.wrap!==this.wrap)return!1;let e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e}children(t){if(this.overscaledZ>=t)return[new Zu(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new Zu(e,this.wrap,e,r,n),new Zu(e,this.wrap,e,r+1,n),new Zu(e,this.wrap,e,r,n+1),new Zu(e,this.wrap,e,r+1,n+1)]}isLessThan(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.ythis.max&&(this.max=r),r=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)}unpack(t,e,r){return t*this.redFactor+e*this.greenFactor+r*this.blueFactor-this.baseShift}getPixels(){return new Os({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(t,e,r){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");let n=e*this.dim,i=e*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=i-1;break;case 1:i=n+1}switch(r){case-1:a=o-1;break;case 1:o=a+1}let s=-e*this.dim,l=-r*this.dim;for(let e=a;e=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${t} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[t]}}class Ku{constructor(t,e,r,n,i){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=i}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(t){this._geometry=t}toJSON(){let t={geometry:this.geometry};for(let e in this)"_geometry"!==e&&"_vectorTileFeature"!==e&&(t[e]=this[e]);return t}}class Ju{constructor(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new ki(Ko,16,0),this.grid3D=new ki(Ko,16,0),this.featureIndexArray=new ao,this.promoteId=e}insert(t,e,r,n,i,a){let o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,i);let s=a?this.grid3D:this.grid;for(let t=0;t=0&&n[3]>=0&&s.insert(o,n[0],n[1],n[2],n[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new kl.VectorTile(new jc(this.rawTileData)).layers,this.sourceLayerCoder=new $u(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(t,e,r,n){this.loadVTLayers();let i=t.params||{},a=Ko/t.tileSize/t.scale,o=Dn(i.filter),s=t.queryGeometry,l=t.queryPadding*a,u=th(s),h=this.grid.query(u.minX-l,u.minY-l,u.maxX+l,u.maxY+l),p=th(t.cameraQueryGeometry),f=this.grid3D.query(p.minX-l,p.minY-l,p.maxX+l,p.maxY+l,((e,r,n,i)=>function(t,e,r,n,i){for(let a of t)if(e<=a.x&&r<=a.y&&n>=a.x&&i>=a.y)return!0;let a=[new c(e,r),new c(e,i),new c(n,i),new c(n,r)];if(t.length>2)for(let e of a)if(fs(t,e))return!0;for(let e=0;e(p||(p=ts(e)),r.queryIntersectsFeature(s,e,n,p,this.z,t.transform,a,t.pixelPosMatrix))))}return m}loadMatchingFeature(t,e,r,n,i,a,o,s,l,c,u){let h=this.bucketLayerIDs[e];if(a&&!function(t,e){for(let r=0;r=0)return!0;return!1}(a,h))return;let p=this.sourceLayerCoder.decode(r),f=this.vtLayers[p].feature(n);if(i.needGeometry){let t=es(f,!0);if(!i.filter(new na(this.tileID.overscaledZ),t,this.tileID.canonical))return}else if(!i.filter(new na(this.tileID.overscaledZ),f))return;let d=this.getId(f,p);for(let e=0;e{let o=e instanceof ha?e.get(a):null;return o&&o.evaluate?o.evaluate(r,n,i):o}))}function th(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(let a of t)e=Math.min(e,a.x),r=Math.min(r,a.y),n=Math.max(n,a.x),i=Math.max(i,a.y);return{minX:e,minY:r,maxX:n,maxY:i}}function eh(t,e){return e-t}function rh(t,e,r,n,i){let a=[];for(let o=0;o=n&&u.x>=n||(o.x>=n?o=new c(n,o.y+(n-o.x)/(u.x-o.x)*(u.y-o.y))._round():u.x>=n&&(u=new c(n,o.y+(n-o.x)/(u.x-o.x)*(u.y-o.y))._round()),o.y>=i&&u.y>=i||(o.y>=i?o=new c(o.x+(i-o.y)/(u.y-o.y)*(u.x-o.x),i)._round():u.y>=i&&(u=new c(o.x+(i-o.y)/(u.y-o.y)*(u.x-o.x),i)._round()),s&&o.equals(s[s.length-1])||(s=[o],a.push(s)),s.push(u)))))}}return a}Si("FeatureIndex",Ju,{omit:["rawTileData","sourceLayerCoder"]});class nh extends c{constructor(t,e,r,n){super(t,e),this.angle=r,void 0!==n&&(this.segment=n)}clone(){return new nh(this.x,this.y,this.angle,this.segment)}}function ih(t,e,r,n,i){if(void 0===e.segment||0===r)return!0;let a=e,o=e.segment+1,s=0;for(;s>-r/2;){if(o--,o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;let l=[],c=0;for(;sn;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=e.dist(r)}return!0}function ah(t){let e=0;for(let r=0;rc){let u=(c-l)/a,h=Re.number(n.x,i.x,u),p=Re.number(n.y,i.y,u),f=new nh(h,p,i.angleTo(n),r);return f._round(),!o||ih(t,f,s,o,e)?f:void 0}l+=a}}function ch(t,e,r,n,i,a,o,s,l){let c=oh(n,a,o),u=sh(n,i),h=u*o,p=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h=0&&y=0&&v=0&&p+c<=u){let r=new nh(y,v,m,e);r._round(),n&&!ih(t,r,a,n,i)||f.push(r)}}h+=d}return s||f.length||o||(f=uh(t,h/2,r,n,i,a,o,!0,l)),f}function hh(t,e,r,n){let i=[],a=t.image,o=a.pixelRatio,s=a.paddedRect.w-2,l=a.paddedRect.h-2,u={x1:t.left,y1:t.top,x2:t.right,y2:t.bottom},h=a.stretchX||[[0,s]],p=a.stretchY||[[0,l]],f=(t,e)=>t+e[1]-e[0],d=h.reduce(f,0),m=p.reduce(f,0),g=s-d,y=l-m,v=0,x=d,_=0,b=m,w=0,T=g,A=0,k=y;if(a.content&&n){let e=a.content,r=e[2]-e[0],n=e[3]-e[1];(a.textFitWidth||a.textFitHeight)&&(u=lu(t)),v=ph(h,0,e[0]),_=ph(p,0,e[1]),x=ph(h,e[0],e[2]),b=ph(p,e[1],e[3]),w=e[0]-v,A=e[1]-_,T=r-x,k=n-b}let M=u.x1,S=u.y1,E=u.x2-M,C=u.y2-S,I=(t,n,i,s)=>{let l=dh(t.stretch-v,x,E,M),u=mh(t.fixed-w,T,t.stretch,d),h=dh(n.stretch-_,b,C,S),p=mh(n.fixed-A,k,n.stretch,m),f=dh(i.stretch-v,x,E,M),g=mh(i.fixed-w,T,i.stretch,d),y=dh(s.stretch-_,b,C,S),I=mh(s.fixed-A,k,s.stretch,m),L=new c(l,h),P=new c(f,h),z=new c(f,y),D=new c(l,y),O=new c(u/o,p/o),R=new c(g/o,I/o),F=e*Math.PI/180;if(F){let t=Math.sin(F),e=Math.cos(F),r=[e,-t,t,e];L._matMult(r),P._matMult(r),D._matMult(r),z._matMult(r)}let B=t.stretch+t.fixed,j=n.stretch+n.fixed;return{tl:L,tr:P,bl:D,br:z,tex:{x:a.paddedRect.x+1+B,y:a.paddedRect.y+1+j,w:i.stretch+i.fixed-B,h:s.stretch+s.fixed-j},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:O,pixelOffsetBR:R,minFontScaleX:T/o/E,minFontScaleY:k/o/C,isSDF:r}};if(n&&(a.stretchX||a.stretchY)){let t=fh(h,g,d),e=fh(p,y,m);for(let r=0;r0&&(n=Math.max(10,n),this.circleDiameter=n)}else{let l=null!==(h=a.image)&&void 0!==h&&h.content&&(a.image.textFitWidth||a.image.textFitHeight)?lu(a):{x1:a.left,y1:a.top,x2:a.right,y2:a.bottom};l.y1=l.y1*o-s[0],l.y2=l.y2*o+s[2],l.x1=l.x1*o-s[3],l.x2=l.x2*o+s[1];let p=a.collisionPadding;if(p&&(l.x1-=p[0]*o,l.y1-=p[1]*o,l.x2+=p[2]*o,l.y2+=p[3]*o),u){let t=new c(l.x1,l.y1),e=new c(l.x2,l.y1),r=new c(l.x1,l.y2),n=new c(l.x2,l.y2),i=u*Math.PI/180;t._rotate(i),e._rotate(i),r._rotate(i),n._rotate(i),l.x1=Math.min(t.x,e.x,r.x,n.x),l.x2=Math.max(t.x,e.x,r.x,n.x),l.y1=Math.min(t.y,e.y,r.y,n.y),l.y2=Math.max(t.y,e.y,r.y,n.y)}t.emplaceBack(e.x,e.y,l.x1,l.y1,l.x2,l.y2,r,n,i)}this.boxEndIndex=t.length}}class yh{constructor(t=[],e=(t,e)=>te?1:0){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t)}push(t){this.data.push(t),this._up(this.length++)}pop(){if(0===this.length)return;let t=this.data[0],e=this.data.pop();return--this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){let{data:e,compare:r}=this,n=e[t];for(;t>0;){let i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n}_down(t){let{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t=0)break;e[t]=e[n],t=n}e[t]=i}}function vh(t,e=1,r=!1){let n=1/0,i=1/0,a=-1/0,o=-1/0,s=t[0];for(let t=0;ta)&&(a=e.x),(!t||e.y>o)&&(o=e.y)}let l=Math.min(a-n,o-i),u=l/2,h=new yh([],xh);if(0===l)return new c(n,i);for(let e=n;ep.d||!p.d)&&(p=n,r&&console.log("found best %d after %d probes",Math.round(1e4*n.d)/1e4,f)),n.max-p.d<=e||(u=n.h/2,h.push(new _h(n.p.x-u,n.p.y-u,u,t)),h.push(new _h(n.p.x+u,n.p.y-u,u,t)),h.push(new _h(n.p.x-u,n.p.y+u,u,t)),h.push(new _h(n.p.x+u,n.p.y+u,u,t)),f+=4)}return r&&(console.log(`num probes: ${f}`),console.log(`best distance: ${p.d}`)),p.p}function xh(t,e){return e.max-t.max}function _h(t,e,r,n){this.p=new c(t,e),this.h=r,this.d=function(t,e){let r=!1,n=1/0;for(let i=0;it.y!=s.y>t.y&&t.x<(s.x-i.x)*(t.y-i.y)/(s.y-i.y)+i.x&&(r=!r),n=Math.min(n,hs(t,i,s))}}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}var bh;t.aq=void 0,(bh=t.aq||(t.aq={}))[bh.center=1]="center",bh[bh.left=2]="left",bh[bh.right=3]="right",bh[bh.top=4]="top",bh[bh.bottom=5]="bottom",bh[bh["top-left"]=6]="top-left",bh[bh["top-right"]=7]="top-right",bh[bh["bottom-left"]=8]="bottom-left",bh[bh["bottom-right"]=9]="bottom-right";let wh=Number.POSITIVE_INFINITY;function Th(t,e){return e[1]!==wh?function(t,e,r){let n=0,i=0;switch(e=Math.abs(e),r=Math.abs(r),t){case"top-right":case"top-left":case"top":i=r-7;break;case"bottom-right":case"bottom-left":case"bottom":i=7-r}switch(t){case"top-right":case"bottom-right":case"right":n=-e;break;case"top-left":case"bottom-left":case"left":n=e}return[n,i]}(t,e[0],e[1]):function(t,e){let r=0,n=0;e<0&&(e=0);let i=e/Math.SQRT2;switch(t){case"top-right":case"top-left":n=i-7;break;case"bottom-right":case"bottom-left":n=7-i;break;case"bottom":n=7-e;break;case"top":n=e-7}switch(t){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=e;break;case"right":r=-e}return[r,n]}(t,e[0])}function Ah(t,e,r){var n;let i=t.layout,a=null===(n=i.get("text-variable-anchor-offset"))||void 0===n?void 0:n.evaluate(e,{},r);if(a){let t=a.values,e=[];for(let r=0;rt*gc));n.startsWith("top")?i[1]-=7:n.startsWith("bottom")&&(i[1]+=7),e[r+1]=i}return new ae(e)}let o=i.get("text-variable-anchor");if(o){let n;n=void 0!==t._unevaluatedLayout.getValue("text-radial-offset")?[i.get("text-radial-offset").evaluate(e,{},r)*gc,wh]:i.get("text-offset").evaluate(e,{},r).map((t=>t*gc));let a=[];for(let t of o)a.push(t,Th(t,n));return new ae(a)}return null}function kh(t){switch(t){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function Mh(e,r,n,i,a,o,s,l,c,u,h){let p=o.textMaxSize.evaluate(r,{});void 0===p&&(p=s);let f,d=e.layers[0].layout,m=d.get("icon-offset").evaluate(r,{},h),g=Eh(n.horizontal),y=s/24,v=e.tilePixelRatio*y,x=e.tilePixelRatio*p/24,_=e.tilePixelRatio*l,b=e.tilePixelRatio*d.get("symbol-spacing"),w=d.get("text-padding")*e.tilePixelRatio,T=function(t,e,r,n=1){let i=t.get("icon-padding").evaluate(e,{},r),a=i&&i.values;return[a[0]*n,a[1]*n,a[2]*n,a[3]*n]}(d,r,h,e.tilePixelRatio),A=d.get("text-max-angle")/180*Math.PI,k="viewport"!==d.get("text-rotation-alignment")&&"point"!==d.get("symbol-placement"),M="map"===d.get("icon-rotation-alignment")&&"point"!==d.get("symbol-placement"),S=d.get("symbol-placement"),E=b/2,I=d.get("icon-text-fit");i&&"none"!==I&&(e.allowVerticalPlacement&&n.vertical&&(f=cu(i,n.vertical,I,d.get("icon-text-fit-padding"),m,y)),g&&(i=cu(i,g,I,d.get("icon-text-fit-padding"),m,y)));let L=(l,p)=>{p.x<0||p.x>=Ko||p.y<0||p.y>=Ko||function(e,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x,_,b,w,T,A,k){let M,S,E,I,L=e.addToLineVertexArray(r,n),P=0,z=0,D=0,O=0,R=-1,F=-1,B={},j=Co("");if(e.allowVerticalPlacement&&i.vertical){let t=l.layout.get("text-rotate").evaluate(b,{},A)+90;E=new gh(c,r,u,h,p,i.vertical,f,d,m,t),s&&(I=new gh(c,r,u,h,p,s,y,v,m,t))}if(a){let n=l.layout.get("icon-rotate").evaluate(b,{}),i="none"!==l.layout.get("icon-text-fit"),o=hh(a,n,T,i),f=s?hh(s,n,T,i):void 0;S=new gh(c,r,u,h,p,a,y,v,!1,n),P=4*o.length;let d=e.iconSizeData,m=null;"source"===d.kind?(m=[uu*l.layout.get("icon-size").evaluate(b,{})],m[0]>hu&&C(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)):"composite"===d.kind&&(m=[uu*w.compositeIconSizes[0].evaluate(b,{},A),uu*w.compositeIconSizes[1].evaluate(b,{},A)],(m[0]>hu||m[1]>hu)&&C(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)),e.addSymbols(e.icon,o,m,_,x,b,t.ah.none,r,L.lineStartIndex,L.lineLength,-1,A),R=e.icon.placedSymbolArray.length-1,f&&(z=4*f.length,e.addSymbols(e.icon,f,m,_,x,b,t.ah.vertical,r,L.lineStartIndex,L.lineLength,-1,A),F=e.icon.placedSymbolArray.length-1)}let N=Object.keys(i.horizontal);for(let n of N){let a=i.horizontal[n];if(!M){j=Co(a.text);let t=l.layout.get("text-rotate").evaluate(b,{},A);M=new gh(c,r,u,h,p,a,f,d,m,t)}let s=1===a.positionedLines.length;if(D+=Sh(e,r,a,o,l,m,b,g,L,i.vertical?t.ah.horizontal:t.ah.horizontalOnly,s?N:[n],B,R,w,A),s)break}i.vertical&&(O+=Sh(e,r,i.vertical,o,l,m,b,g,L,t.ah.vertical,["vertical"],B,F,w,A));let U=M?M.boxStartIndex:e.collisionBoxArray.length,V=M?M.boxEndIndex:e.collisionBoxArray.length,q=E?E.boxStartIndex:e.collisionBoxArray.length,H=E?E.boxEndIndex:e.collisionBoxArray.length,G=S?S.boxStartIndex:e.collisionBoxArray.length,W=S?S.boxEndIndex:e.collisionBoxArray.length,Z=I?I.boxStartIndex:e.collisionBoxArray.length,Y=I?I.boxEndIndex:e.collisionBoxArray.length,X=-1,$=(t,e)=>t&&t.circleDiameter?Math.max(t.circleDiameter,e):e;X=$(M,X),X=$(E,X),X=$(S,X),X=$(I,X);let K=X>-1?1:0;K&&(X*=k/gc),e.glyphOffsetArray.length>=Tu.MAX_GLYPHS&&C("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==b.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,b.sortKey);let J=Ah(l,b,A),[Q,tt]=function(e,r){let n=e.length,i=r?.values;if(i?.length>0)for(let r=0;r=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,j,U,V,q,H,G,W,Z,Y,u,D,O,P,z,K,0,f,X,Q,tt)}(e,p,l,n,i,a,f,e.layers[0],e.collisionBoxArray,r.index,r.sourceLayerIndex,e.index,v,[w,w,w,w],k,c,_,T,M,m,r,o,u,h,s)};if("line"===S)for(let t of rh(r.geometry,0,0,Ko,Ko)){let r=ch(t,b,A,n.vertical||g,i,24,x,e.overscaling,Ko);for(let n of r)g&&Ch(e,g.text,E,n)||L(t,n)}else if("line-center"===S){for(let t of r.geometry)if(t.length>1){let e=lh(t,A,n.vertical||g,i,24,x);e&&L(t,e)}}else if("Polygon"===r.type)for(let t of Ar(r.geometry,0)){let e=vh(t,16);L(t[0],new nh(e.x,e.y,0))}else if("LineString"===r.type)for(let t of r.geometry)L(t,new nh(t[0].x,t[0].y,0));else if("Point"===r.type)for(let t of r.geometry)for(let e of t)L([e],new nh(e.x,e.y,0))}function Sh(t,e,r,n,i,a,o,s,l,u,h,p,f,d,m){let g=function(t,e,r,n,i,a,o,s){let l=n.layout.get("text-rotate").evaluate(a,{})*Math.PI/180,u=[];for(let t of e.positionedLines)for(let n of t.positionedGlyphs){if(!n.rect)continue;let a=n.rect||{},h=4,p=!0,f=1,d=0,m=(i||s)&&n.vertical,g=n.metrics.advance*n.scale/2;if(s&&e.verticalizable&&(d=t.lineOffset/2-(n.imageName?-(gc-n.metrics.width*n.scale)/2:(n.scale-1)*gc)),n.imageName){let t=o[n.imageName];p=t.sdf,f=t.pixelRatio,h=1/f}let y=i?[n.x+g,n.y]:[0,0],v=i?[0,0]:[n.x+g+r[0],n.y+r[1]-d],x=[0,0];m&&(x=v,v=[0,0]);let _=n.metrics.isDoubleResolution?2:1,b=(n.metrics.left-h)*n.scale-g+v[0],w=(-n.metrics.top-h)*n.scale+v[1],T=b+a.w/_*n.scale/f,A=w+a.h/_*n.scale/f,k=new c(b,w),M=new c(T,w),S=new c(b,A),E=new c(T,A);if(m){let t=new c(-g,g-Wc),e=-Math.PI/2,r=12-g,i=new c(22-r,-(n.imageName?r:0)),a=new c(...x);k._rotateAround(e,t)._add(i)._add(a),M._rotateAround(e,t)._add(i)._add(a),S._rotateAround(e,t)._add(i)._add(a),E._rotateAround(e,t)._add(i)._add(a)}if(l){let t=Math.sin(l),e=Math.cos(l),r=[e,-t,t,e];k._matMult(r),M._matMult(r),S._matMult(r),E._matMult(r)}let C=new c(0,0),I=new c(0,0);u.push({tl:k,tr:M,bl:S,br:E,tex:a,writingMode:e.writingMode,glyphOffset:y,sectionIndex:n.sectionIndex,isSDF:p,pixelOffsetTL:C,pixelOffsetBR:I,minFontScaleX:0,minFontScaleY:0})}return u}(0,r,s,i,a,o,n,t.allowVerticalPlacement),y=t.textSizeData,v=null;"source"===y.kind?(v=[uu*i.layout.get("text-size").evaluate(o,{})],v[0]>hu&&C(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)):"composite"===y.kind&&(v=[uu*d.compositeTextSizes[0].evaluate(o,{},m),uu*d.compositeTextSizes[1].evaluate(o,{},m)],(v[0]>hu||v[1]>hu)&&C(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)),t.addSymbols(t.text,g,v,s,a,o,u,e,l.lineStartIndex,l.lineLength,f,m);for(let e of h)p[e]=t.text.placedSymbolArray.length-1;return 4*g.length}function Eh(t){for(let e in t)return t[e];return null}function Ch(t,e,r,n){let i=t.compareText;if(e in i){let t=i[e];for(let e=t.length-1;e>=0;e--)if(n.dist(t[e])>4;if(1!==n)throw new Error(`Got v${n} data when expected v1.`);let i=Ih[15&r];if(!i)throw new Error("Unrecognized array type.");let[a]=new Uint16Array(t,2,1),[o]=new Uint32Array(t,4,1);return new Lh(o,a,i,t)}constructor(t,e=64,r=Float64Array,n){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+e,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;let i=Ih.indexOf(this.ArrayType),a=2*t*this.ArrayType.BYTES_PER_ELEMENT,o=t*this.IndexArrayType.BYTES_PER_ELEMENT,s=(8-o%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);n&&n instanceof ArrayBuffer?(this.data=n,this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+o+s,2*t),this._pos=2*t,this._finished=!0):(this.data=new ArrayBuffer(8+a+o+s),this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+o+s,2*t),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+i]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)}add(t,e){let r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=e,r}finish(){let t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return Ph(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,e,r,n){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:i,coords:a,nodeSize:o}=this,s=[0,i.length-1,0],l=[];for(;s.length;){let c=s.pop()||0,u=s.pop()||0,h=s.pop()||0;if(u-h<=o){for(let o=h;o<=u;o++){let s=a[2*o],c=a[2*o+1];s>=t&&s<=r&&c>=e&&c<=n&&l.push(i[o])}continue}let p=h+u>>1,f=a[2*p],d=a[2*p+1];f>=t&&f<=r&&d>=e&&d<=n&&l.push(i[p]),(0===c?t<=f:e<=d)&&(s.push(h),s.push(p-1),s.push(1-c)),(0===c?r>=f:n>=d)&&(s.push(p+1),s.push(u),s.push(1-c))}return l}within(t,e,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:n,coords:i,nodeSize:a}=this,o=[0,n.length-1,0],s=[],l=r*r;for(;o.length;){let c=o.pop()||0,u=o.pop()||0,h=o.pop()||0;if(u-h<=a){for(let r=h;r<=u;r++)Rh(i[2*r],i[2*r+1],t,e)<=l&&s.push(n[r]);continue}let p=h+u>>1,f=i[2*p],d=i[2*p+1];Rh(f,d,t,e)<=l&&s.push(n[p]),(0===c?t-r<=f:e-r<=d)&&(o.push(h),o.push(p-1),o.push(1-c)),(0===c?t+r>=f:e+r>=d)&&(o.push(p+1),o.push(u),o.push(1-c))}return s}}function Ph(t,e,r,n,i,a){if(i-n<=r)return;let o=n+i>>1;zh(t,e,o,n,i,a),Ph(t,e,r,n,o-1,1-a),Ph(t,e,r,o+1,i,1-a)}function zh(t,e,r,n,i,a){for(;i>n;){if(i-n>600){let o=i-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);zh(t,e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(i,Math.floor(r+(o-s)*c/o+u)),a)}let o=e[2*r+a],s=n,l=i;for(Dh(t,e,n,r),e[2*i+a]>o&&Dh(t,e,n,i);so;)l--}e[2*n+a]===o?Dh(t,e,n,l):(l++,Dh(t,e,l,i)),l<=r&&(n=l+1),r<=l&&(i=l-1)}}function Dh(t,e,r,n){Oh(t,r,n),Oh(e,2*r,2*n),Oh(e,2*r+1,2*n+1)}function Oh(t,e,r){let n=t[e];t[e]=t[r],t[r]=n}function Rh(t,e,r,n){let i=t-r,a=e-n;return i*i+a*a}var Fh;t.bg=void 0,(Fh=t.bg||(t.bg={})).create="create",Fh.load="load",Fh.fullLoad="fullLoad";let Bh=null,jh=[],Nh=1e3/60,Uh="loadTime",Vh="fullLoadTime",qh={mark(t){performance.mark(t)},frame(t){let e=t;null!=Bh&&jh.push(e-Bh),Bh=e},clearMetrics(){Bh=null,jh=[],performance.clearMeasures(Uh),performance.clearMeasures(Vh);for(let e in t.bg)performance.clearMarks(t.bg[e])},getPerformanceMetrics(){performance.measure(Uh,t.bg.create,t.bg.load),performance.measure(Vh,t.bg.create,t.bg.fullLoad);let e=performance.getEntriesByName(Uh)[0].duration,r=performance.getEntriesByName(Vh)[0].duration,n=jh.length,i=1/(jh.reduce(((t,e)=>t+e),0)/n/1e3),a=jh.filter((t=>t>Nh)).reduce(((t,e)=>t+(e-Nh)/Nh),0);return{loadTime:e,fullLoadTime:r,fps:i,percentDroppedFrames:a/(n+a)*100,totalFrames:n}}};t.$=class extends Sa{},t.A=_s,t.B=bi,t.C=function(t){if(null==P){let e=t.navigator?t.navigator.userAgent:null;P=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")))}return P},t.D=pa,t.E=K,t.F=class{constructor(t,e){var r,n,i;this.target=t,this.mapId=e,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new Du((()=>this.process())),this.subscription=(r=this.target,n="message",i=t=>this.receive(t),r.addEventListener(n,i,!1),{unsubscribe:()=>{r.removeEventListener(n,i,!1)}}),this.globalScope=L(self)?t:window}registerMessageHandler(t,e){this.messageHandlers[t]=e}sendAsync(t,e){return new Promise(((r,n)=>{let i=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[i]={resolve:r,reject:n},e&&e.signal.addEventListener("abort",(()=>{delete this.resolveRejects[i];let e={id:i,type:"",origin:location.origin,targetMapId:t.targetMapId,sourceMapId:this.mapId};this.target.postMessage(e)}),{once:!0});let a=[],o=Object.assign(Object.assign({},t),{id:i,sourceMapId:this.mapId,origin:location.origin,data:Li(t.data,a)});this.target.postMessage(o,{transfer:a})}))}receive(t){let e=t.data,r=e.id;if(!("file://"!==e.origin&&"file://"!==location.origin&&"resource://android"!==e.origin&&"resource://android"!==location.origin&&e.origin!==location.origin||e.targetMapId&&this.mapId!==e.targetMapId)){if(""===e.type){delete this.tasks[r];let t=this.abortControllers[r];return delete this.abortControllers[r],void(t&&t.abort())}if(L(self)||e.mustQueue)return this.tasks[r]=e,this.taskQueue.push(r),void this.invoker.trigger();this.processTask(r,e)}}process(){if(0===this.taskQueue.length)return;let t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length>0&&this.invoker.trigger(),e&&this.processTask(t,e)}processTask(t,r){return e(this,void 0,void 0,(function*(){if(""===r.type){let e=this.resolveRejects[t];return delete this.resolveRejects[t],e?void(r.error?e.reject(Pi(r.error)):e.resolve(Pi(r.data))):void 0}if(!this.messageHandlers[r.type])return void this.completeTask(t,new Error(`Could not find a registered handler for ${r.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let e=Pi(r.data),n=new AbortController;this.abortControllers[t]=n;try{let i=yield this.messageHandlers[r.type](r.sourceMapId,e,n);this.completeTask(t,null,i)}catch(e){this.completeTask(t,e)}}))}completeTask(t,e,r){let n=[];delete this.abortControllers[t];let i={id:t,type:"",sourceMapId:this.mapId,origin:location.origin,error:e?Li(e):null,data:Li(r,n)};this.target.postMessage(i,{transfer:n})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},t.G=V,t.H=function(){var t=new _s(16);return _s!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.I=Hc,t.J=function(t,e,r){var n,i,a,o,s,l,c,u,h,p,f,d,m=r[0],g=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],p=e[9],f=e[10],d=e[11],t[0]=n=e[0],t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=p,t[10]=f,t[11]=d,t[12]=n*m+s*g+h*y+e[12],t[13]=i*m+l*g+p*y+e[13],t[14]=a*m+c*g+f*y+e[14],t[15]=o*m+u*g+d*y+e[15]),t},t.K=function(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.L=ws,t.M=function(t,e){let r={};for(let n=0;n{let e=window.document.createElement("video");return e.muted=!0,new Promise((r=>{e.onloadstart=()=>{r(e)};for(let r of t){let t=window.document.createElement("source");W(r)||(e.crossOrigin="Anonymous"),t.src=r,e.appendChild(t)}}))},t.a4=function(){return A++},t.a5=Xa,t.a6=Tu,t.a7=Dn,t.a8=es,t.a9=Ku,t.aA=function(t){if("custom"===t.type)return new zu(t);switch(t.type){case"background":return new Cu(t);case"circle":return new Ms(t);case"fill":return new bl(t);case"fill-extrusion":return new Gl(t);case"heatmap":return new js(t);case"hillshade":return new Us(t);case"line":return new sc(t);case"raster":return new Pu(t);case"symbol":return new Mu(t)}},t.aB=S,t.aC=function(t,e){if(!t)return[{command:"setStyle",args:[e]}];let r=[];try{if(!et(t.version,e.version))return[{command:"setStyle",args:[e]}];et(t.center,e.center)||r.push({command:"setCenter",args:[e.center]}),et(t.zoom,e.zoom)||r.push({command:"setZoom",args:[e.zoom]}),et(t.bearing,e.bearing)||r.push({command:"setBearing",args:[e.bearing]}),et(t.pitch,e.pitch)||r.push({command:"setPitch",args:[e.pitch]}),et(t.sprite,e.sprite)||r.push({command:"setSprite",args:[e.sprite]}),et(t.glyphs,e.glyphs)||r.push({command:"setGlyphs",args:[e.glyphs]}),et(t.transition,e.transition)||r.push({command:"setTransition",args:[e.transition]}),et(t.light,e.light)||r.push({command:"setLight",args:[e.light]}),et(t.terrain,e.terrain)||r.push({command:"setTerrain",args:[e.terrain]}),et(t.sky,e.sky)||r.push({command:"setSky",args:[e.sky]}),et(t.projection,e.projection)||r.push({command:"setProjection",args:[e.projection]});let n={},i=[];!function(t,e,r,n){let i;for(i in e=e||{},t=t||{})Object.prototype.hasOwnProperty.call(t,i)&&(Object.prototype.hasOwnProperty.call(e,i)||it(i,r,n));for(i in e)Object.prototype.hasOwnProperty.call(e,i)&&(Object.prototype.hasOwnProperty.call(t,i)?et(t[i],e[i])||("geojson"===t[i].type&&"geojson"===e[i].type&&ot(t,e,i)?rt(r,{command:"setGeoJSONSourceData",args:[i,e[i].data]}):at(i,e,r,n)):nt(i,e,r))}(t.sources,e.sources,i,n);let a=[];t.layers&&t.layers.forEach((t=>{"source"in t&&n[t.source]?r.push({command:"removeLayer",args:[t.id]}):a.push(t)})),r=r.concat(i),function(t,e,r){e=e||[];let n,i,a,o,s,l=(t=t||[]).map(lt),c=e.map(lt),u=t.reduce(ct,{}),h=e.reduce(ct,{}),p=l.slice(),f=Object.create(null);for(let t=0,e=0;t@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((t,r,n,i)=>{let a=n||i;return e[r]=!a||a.toLowerCase(),""})),e["max-age"]){let t=parseInt(e["max-age"],10);isNaN(t)?delete e["max-age"]:e["max-age"]=t}return e},t.ab=function(t,e){let r=[];for(let n in t)n in e||r.push(n);return r},t.ac=b,t.ad=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*n,t[1]=o*i+u*n,t[2]=s*i+h*n,t[3]=l*i+p*n,t[4]=c*i-a*n,t[5]=u*i-o*n,t[6]=h*i-s*n,t[7]=p*i-l*n,t},t.ae=function(t){var e=new _s(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.af=ks,t.ag=function(t,e){let r=0,n=0;if("constant"===t.kind)n=t.layoutSize;else if("source"!==t.kind){let{interpolationType:i,minZoom:a,maxZoom:o}=t,s=i?b(Fe.interpolationFactor(i,e,a,o),0,1):0;"camera"===t.kind?n=Re.number(t.minSize,t.maxSize,s):r=s}return{uSizeT:r,uSize:n}},t.ai=function(t,{uSize:e,uSizeT:r},{lowerSize:n,upperSize:i}){return"source"===t.kind?n/uu:"composite"===t.kind?Re.number(n/uu,i/uu,r):e},t.aj=xu,t.ak=function(t,e,r,n){let i=e.y-t.y,a=e.x-t.x,o=n.y-r.y,s=n.x-r.x,l=o*a-s*i;if(0===l)return null;let u=(s*(t.y-r.y)-o*(t.x-r.x))/l;return new c(t.x+u*a,t.y+u*i)},t.al=rh,t.am=is,t.an=bs,t.ao=function(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(let a of t)e=Math.min(e,a.x),r=Math.min(r,a.y),n=Math.max(n,a.x),i=Math.max(i,a.y);return[e,r,n,i]},t.ap=gc,t.ar=fu,t.as=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],p=e[10],f=e[11],d=e[12],m=e[13],g=e[14],y=e[15],v=r*s-n*o,x=r*l-i*o,_=r*c-a*o,b=n*l-i*s,w=n*c-a*s,T=i*c-a*l,A=u*m-h*d,k=u*g-p*d,M=u*y-f*d,S=h*g-p*m,E=h*y-f*m,C=p*y-f*g,I=v*C-x*E+_*S+b*M-w*k+T*A;return I?(t[0]=(s*C-l*E+c*S)*(I=1/I),t[1]=(i*E-n*C-a*S)*I,t[2]=(m*T-g*w+y*b)*I,t[3]=(p*w-h*T-f*b)*I,t[4]=(l*M-o*C-c*k)*I,t[5]=(r*C-i*M+a*k)*I,t[6]=(g*_-d*T-y*x)*I,t[7]=(u*T-p*_+f*x)*I,t[8]=(o*E-s*M+c*A)*I,t[9]=(n*M-r*E-a*A)*I,t[10]=(d*w-m*_+y*v)*I,t[11]=(h*_-u*w-f*v)*I,t[12]=(s*k-o*S-l*A)*I,t[13]=(r*S-n*k+i*A)*I,t[14]=(m*x-d*b-g*v)*I,t[15]=(u*b-h*x+p*v)*I,t):null},t.at=kh,t.au=au,t.av=Lh,t.aw=function(){let t={},e=J.$version;for(let r in J.$root){let n=J.$root[r];if(n.required){let i=null;i="version"===r?e:"array"===n.type?[]:{},null!=i&&(t[r]=i)}}return t},t.ax=zi,t.ay=H,t.az=function(t){t=t.slice();let e=Object.create(null);for(let r=0;r25||n<0||n>=1||r<0||r>=1)},t.bc=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},t.bd=class extends Ma{},t.be=Ou,t.bf=qh,t.bh=q,t.bi=function(t,e){N.REGISTERED_PROTOCOLS[t]=e},t.bj=function(t){delete N.REGISTERED_PROTOCOLS[t]},t.bk=function(t,e){let r={};for(let n=0;nt*gc))}let x=s?"center":n.get("text-justify").evaluate(i,{},e.canonical),_="point"===n.get("symbol-placement")?n.get("text-max-width").evaluate(i,{},e.canonical)*gc:1/0,b=()=>{e.bucket.allowVerticalPlacement&&Hi(a)&&(m.vertical=Xc(g,e.glyphMap,e.glyphPositions,e.imagePositions,h,_,o,d,"left",u,y,t.ah.vertical,!0,f,p))};if(!s&&v){let r=new Set;if("auto"===x)for(let t=0;te(void 0,void 0,void 0,(function*(){if(0===t.byteLength)return createImageBitmap(new ImageData(1,1));let e=new Blob([new Uint8Array(t)],{type:"image/png"});try{return createImageBitmap(e)}catch(t){throw new Error(`Could not load image because of ${t.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}})),t.e=T,t.f=t=>new Promise(((e,r)=>{let n=new Image;n.onload=()=>{e(n),URL.revokeObjectURL(n.src),n.onload=null,window.requestAnimationFrame((()=>{n.src=D}))},n.onerror=()=>r(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let i=new Blob([new Uint8Array(t)],{type:"image/png"});n.src=t.byteLength?URL.createObjectURL(i):D})),t.g=U,t.h=(t,e)=>G(T(t,{type:"json"}),e),t.i=L,t.j=$,t.k=X,t.l=(t,e)=>G(T(t,{type:"arrayBuffer"}),e),t.m=G,t.n=function(t){return new jc(t).readFields(Nc,[])},t.o=Ds,t.p=qc,t.q=ya,t.r=_i,t.s=W,t.t=Ai,t.u=xi,t.v=J,t.w=C,t.x=function([t,e,r]){return e+=90,e*=Math.PI/180,r*=Math.PI/180,{x:t*Math.cos(e)*Math.sin(r),y:t*Math.sin(e)*Math.sin(r),z:t*Math.cos(r)}},t.y=Re,t.z=na})),n("worker",0,(function(t){class e{constructor(t){this.keyCache={},t&&this.replace(t)}replace(t){this._layerConfigs={},this._layers={},this.update(t,[])}update(e,r){for(let r of e){this._layerConfigs[r.id]=r;let e=this._layers[r.id]=t.aA(r);e._featureFilter=t.a7(e.filter),this.keyCache[r.id]&&delete this.keyCache[r.id]}for(let t of r)delete this.keyCache[t],delete this._layerConfigs[t],delete this._layers[t];this.familiesBySource={};let n=t.bk(Object.values(this._layerConfigs),this.keyCache);for(let t of n){let e=t.map((t=>this._layers[t.id])),r=e[0];if("none"===r.visibility)continue;let n=r.source||"",i=this.familiesBySource[n];i||(i=this.familiesBySource[n]={});let a=r.sourceLayer||"_geojsonTileLayer",o=i[a];o||(o=i[a]=[]),o.push(e)}}}class r{constructor(e){let r={},n=[];for(let t in e){let i=e[t],a=r[t]={};for(let t in i){let e=i[+t];if(!e||0===e.bitmap.width||0===e.bitmap.height)continue;let r={x:0,y:0,w:e.bitmap.width+2,h:e.bitmap.height+2};n.push(r),a[t]={rect:r,metrics:e.metrics}}}let{w:i,h:a}=t.p(n),o=new t.o({width:i||1,height:a||1});for(let n in e){let i=e[n];for(let e in i){let a=i[+e];if(!a||0===a.bitmap.width||0===a.bitmap.height)continue;let s=r[n][e].rect;t.o.copy(a.bitmap,o,{x:0,y:0},{x:s.x+1,y:s.y+1},a.bitmap)}}this.image=o,this.positions=r}}t.bl("GlyphAtlas",r);class n{constructor(e){this.tileID=new t.S(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId,this.inFlightDependencies=[]}parse(e,n,a,o){return t._(this,void 0,void 0,(function*(){this.status="parsing",this.data=e,this.collisionBoxArray=new t.a5;let s=new t.bm(Object.keys(e.layers).sort()),l=new t.bn(this.tileID,this.promoteId);l.bucketLayerIDs=[];let c={},u={featureIndex:l,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:a},h=n.familiesBySource[this.source];for(let r in h){let n=e.layers[r];if(!n)continue;1===n.version&&t.w(`Vector tile source "${this.source}" layer "${r}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let o=s.encode(r),p=[];for(let t=0;t=r.maxzoom||"none"!==r.visibility&&(i(e,this.zoom,a),(c[r.id]=r.createBucket({index:l.bucketLayerIDs.length,layers:e,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:o,sourceID:this.source})).populate(p,u,this.tileID.canonical),l.bucketLayerIDs.push(e.map((t=>t.id))))}}let p=t.aF(u.glyphDependencies,(t=>Object.keys(t).map(Number)));this.inFlightDependencies.forEach((t=>t?.abort())),this.inFlightDependencies=[];let f=Promise.resolve({});if(Object.keys(p).length){let t=new AbortController;this.inFlightDependencies.push(t),f=o.sendAsync({type:"GG",data:{stacks:p,source:this.source,tileID:this.tileID,type:"glyphs"}},t)}let d=Object.keys(u.iconDependencies),m=Promise.resolve({});if(d.length){let t=new AbortController;this.inFlightDependencies.push(t),m=o.sendAsync({type:"GI",data:{icons:d,source:this.source,tileID:this.tileID,type:"icons"}},t)}let g=Object.keys(u.patternDependencies),y=Promise.resolve({});if(g.length){let t=new AbortController;this.inFlightDependencies.push(t),y=o.sendAsync({type:"GI",data:{icons:g,source:this.source,tileID:this.tileID,type:"patterns"}},t)}let[v,x,_]=yield Promise.all([f,m,y]),b=new r(v),w=new t.bo(x,_);for(let e in c){let r=c[e];r instanceof t.a6?(i(r.layers,this.zoom,a),t.bp({bucket:r,glyphMap:v,glyphPositions:b.positions,imageMap:x,imagePositions:w.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):r.hasPattern&&(r instanceof t.bq||r instanceof t.br||r instanceof t.bs)&&(i(r.layers,this.zoom,a),r.addFeatures(u,this.tileID.canonical,w.patternPositions))}return this.status="done",{buckets:Object.values(c).filter((t=>!t.isEmpty())),featureIndex:l,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:b.image,imageAtlas:w,glyphMap:this.returnDependencies?v:null,iconMap:this.returnDependencies?x:null,glyphPositions:this.returnDependencies?b.positions:null}}))}}function i(e,r,n){let i=new t.z(r);for(let t of e)t.recalculate(i,n)}class a{constructor(t,e,r){this.actor=t,this.layerIndex=e,this.availableImages=r,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(e,r){return t._(this,void 0,void 0,(function*(){let n=yield t.l(e.request,r);try{return{vectorTile:new t.bt.VectorTile(new t.bu(n.data)),rawData:n.data,cacheControl:n.cacheControl,expires:n.expires}}catch(t){let r=new Uint8Array(n.data),i=`Unable to parse the tile at ${e.request.url}, `;throw i+=31===r[0]&&139===r[1]?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${t.message}`,new Error(i)}}))}loadTile(e){return t._(this,void 0,void 0,(function*(){let r=e.uid,i=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.bv(e.request),a=new n(e);this.loading[r]=a;let o=new AbortController;a.abort=o;try{let n=yield this.loadVectorTile(e,o);if(delete this.loading[r],!n)return null;let s=n.rawData,l={};n.expires&&(l.expires=n.expires),n.cacheControl&&(l.cacheControl=n.cacheControl);let c={};if(i){let t=i.finish();t&&(c.resourceTiming=JSON.parse(JSON.stringify(t)))}a.vectorTile=n.vectorTile;let u=a.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[r]=a,this.fetching[r]={rawTileData:s,cacheControl:l,resourceTiming:c};try{let e=yield u;return t.e({rawTileData:s.slice(0)},e,l,c)}finally{delete this.fetching[r]}}catch(t){throw delete this.loading[r],a.status="done",this.loaded[r]=a,t}}))}reloadTile(e){return t._(this,void 0,void 0,(function*(){let r=e.uid;if(!this.loaded||!this.loaded[r])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let n=this.loaded[r];if(n.showCollisionBoxes=e.showCollisionBoxes,"parsing"===n.status){let e,i=yield n.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor);if(this.fetching[r]){let{rawTileData:n,cacheControl:a,resourceTiming:o}=this.fetching[r];delete this.fetching[r],e=t.e({rawTileData:n.slice(0)},i,a,o)}else e=i;return e}if("done"===n.status&&n.vectorTile)return n.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor)}))}abortTile(e){return t._(this,void 0,void 0,(function*(){let t=this.loading,r=e.uid;t&&t[r]&&t[r].abort&&(t[r].abort.abort(),delete t[r])}))}removeTile(e){return t._(this,void 0,void 0,(function*(){this.loaded&&this.loaded[e.uid]&&delete this.loaded[e.uid]}))}}class o{constructor(){this.loaded={}}loadTile(e){return t._(this,void 0,void 0,(function*(){let{uid:r,encoding:n,rawImageData:i,redFactor:a,greenFactor:o,blueFactor:s,baseShift:l}=e,c=i.width+2,u=i.height+2,h=t.b(i)?new t.R({width:c,height:u},yield t.bw(i,-1,-1,c,u)):i,p=new t.bx(r,h,n,a,o,s,l);return this.loaded=this.loaded||{},this.loaded[r]=p,p}))}removeTile(t){let e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]}}function s(t,e){if(0!==t.length){l(t[0],e);for(var r=1;r=Math.abs(s)?r-l+s:s-l+r,r=l}r+n>=0!=!!e&&t.reverse()}var c=t.by((function t(e,r){var n,i=e&&e.type;if("FeatureCollection"===i)for(n=0;n>31}function k(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;st},C=Math.fround||(I=new Float32Array(1),t=>(I[0]=+t,I[0]));var I;class L{constructor(t){this.options=Object.assign(Object.create(E),t),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(t){let{log:e,minZoom:r,maxZoom:n}=this.options;e&&console.time("total time");let i=`prepare ${t.length} points`;e&&console.time(i),this.points=t;let a=[];for(let e=0;e=r;t--){let r=+Date.now();o=this.trees[t]=this._createTree(this._cluster(o,t)),e&&console.log("z%d: %d clusters in %dms",t,o.numItems,+Date.now()-r)}return e&&console.timeEnd("total time"),this}getClusters(t,e){let r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,i=180;else if(r>i){let t=this.getClusters([r,n,180,a],e),o=this.getClusters([-180,n,i,a],e);return t.concat(o)}let o=this.trees[this._limitZoom(e)],s=o.range(D(r),O(a),D(i),O(n)),l=o.data,c=[];for(let t of s){let e=this.stride*t;c.push(l[e+5]>1?P(l,e,this.clusterProps):this.points[l[e+3]])}return c}getChildren(t){let e=this._getOriginId(t),r=this._getOriginZoom(t),n="No cluster with the specified id.",i=this.trees[r];if(!i)throw new Error(n);let a=i.data;if(e*this.stride>=a.length)throw new Error(n);let o=this.options.radius/(this.options.extent*Math.pow(2,r-1)),s=i.within(a[e*this.stride],a[e*this.stride+1],o),l=[];for(let e of s){let r=e*this.stride;a[r+4]===t&&l.push(a[r+5]>1?P(a,r,this.clusterProps):this.points[a[r+3]])}if(0===l.length)throw new Error(n);return l}getLeaves(t,e,r){let n=[];return this._appendLeaves(n,t,e=e||10,r=r||0,0),n}getTile(t,e,r){let n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),{extent:a,radius:o}=this.options,s=o/a,l=(r-s)/i,c=(r+1+s)/i,u={features:[]};return this._addTileFeatures(n.range((e-s)/i,l,(e+1+s)/i,c),n.data,e,r,i,u),0===e&&this._addTileFeatures(n.range(1-s/i,l,1,c),n.data,i,r,i,u),e===i-1&&this._addTileFeatures(n.range(0,l,s/i,c),n.data,-1,r,i,u),u.features.length?u:null}getClusterExpansionZoom(t){let e=this._getOriginZoom(t)-1;for(;e<=this.options.maxZoom;){let r=this.getChildren(t);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e}_appendLeaves(t,e,r,n,i){let a=this.getChildren(e);for(let e of a){let a=e.properties;if(a&&a.cluster?i+a.point_count<=n?i+=a.point_count:i=this._appendLeaves(t,a.cluster_id,r,n,i):i1;if(u)t=z(e,c,this.clusterProps),s=e[c],l=e[c+1];else{let r=this.points[e[c+3]];t=r.properties;let[n,i]=r.geometry.coordinates;s=D(n),l=O(i)}let h,p={type:1,geometry:[[Math.round(this.options.extent*(s*i-r)),Math.round(this.options.extent*(l*i-n))]],tags:t};h=u||this.options.generateId?e[c+3]:this.points[e[c+3]].id,void 0!==h&&(p.id=h),a.features.push(p)}}_limitZoom(t){return Math.max(this.options.minZoom,Math.min(Math.floor(+t),this.options.maxZoom+1))}_cluster(t,e){let{radius:r,extent:n,reduce:i,minPoints:a}=this.options,o=r/(n*Math.pow(2,e)),s=t.data,l=[],c=this.stride;for(let r=0;re&&(f+=s[r+5])}if(f>p&&f>=a){let t,a=n*p,o=u*p,d=-1,m=(r/c<<5)+(e+1)+this.points.length;for(let n of h){let l=n*c;if(s[l+2]<=e)continue;s[l+2]=e;let u=s[l+5];a+=s[l]*u,o+=s[l+1]*u,s[l+4]=m,i&&(t||(t=this._map(s,r,!0),d=this.clusterProps.length,this.clusterProps.push(t)),i(t,this._map(s,l)))}s[r+4]=m,l.push(a/f,o/f,1/0,m,-1,f),i&&l.push(d)}else{for(let t=0;t1)for(let t of h){let r=t*c;if(!(s[r+2]<=e)){s[r+2]=e;for(let t=0;t>5}_getOriginZoom(t){return(t-this.points.length)%32}_map(t,e,r){if(t[e+5]>1){let n=this.clusterProps[t[e+6]];return r?Object.assign({},n):n}let n=this.points[t[e+3]].properties,i=this.options.map(n);return r&&i===n?Object.assign({},i):i}}function P(t,e,r){return{type:"Feature",id:t[e+3],properties:z(t,e,r),geometry:{type:"Point",coordinates:[(n=t[e],360*(n-.5)),R(t[e+1])]}};var n}function z(t,e,r){let n=t[e+5],i=n>=1e4?`${Math.round(n/1e3)}k`:n>=1e3?Math.round(n/100)/10+"k":n,a=t[e+6],o=-1===a?{}:Object.assign({},r[a]);return Object.assign(o,{cluster:!0,cluster_id:t[e+3],point_count:n,point_count_abbreviated:i})}function D(t){return t/360+.5}function O(t){let e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function R(t){let e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function F(t,e,r,n){let i,a=n,o=e+(r-e>>1),s=r-e,l=t[e],c=t[e+1],u=t[r],h=t[r+1];for(let n=e+3;na)i=n,a=e;else if(e===a){let t=Math.abs(n-o);tn&&(i-e>3&&F(t,e,i,n),t[i+2]=a,r-i>3&&F(t,i,r,n))}function B(t,e,r,n,i,a){let o=i-r,s=a-n;if(0!==o||0!==s){let l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return o=t-r,s=e-n,o*o+s*s}function j(t,e,r,n){let i={id:t??null,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if("Point"===e||"MultiPoint"===e||"LineString"===e)N(i,r);else if("Polygon"===e)N(i,r[0]);else if("MultiLineString"===e)for(let t of r)N(i,t);else if("MultiPolygon"===e)for(let t of r)N(i,t[0]);return i}function N(t,e){for(let r=0;r0&&(o+=n?(i*l-s*a)/2:Math.sqrt(Math.pow(s-i,2)+Math.pow(l-a,2))),i=s,a=l}let s=e.length-3;e[2]=1,F(e,0,s,r),e[s+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function H(t,e,r,n){for(let i=0;i1?1:r}function Z(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o=n)return null;let l=[];for(let e of t){let t=e.geometry,a=e.type,o=0===i?e.minX:e.minY,c=0===i?e.maxX:e.maxY;if(o>=r&&c=n)continue;let u=[];if("Point"===a||"MultiPoint"===a)Y(t,u,r,n,i);else if("LineString"===a)X(t,u,r,n,i,!1,s.lineMetrics);else if("MultiLineString"===a)K(t,u,r,n,i,!1);else if("Polygon"===a)K(t,u,r,n,i,!0);else if("MultiPolygon"===a)for(let e of t){let t=[];K(e,t,r,n,i,!0),t.length&&u.push(t)}if(u.length){if(s.lineMetrics&&"LineString"===a){for(let t of u)l.push(j(e.id,a,t,e.tags));continue}"LineString"!==a&&"MultiLineString"!==a||(1===u.length?(a="LineString",u=u[0]):a="MultiLineString"),"Point"!==a&&"MultiPoint"!==a||(a=3===u.length?"Point":"MultiPoint"),l.push(j(e.id,a,u,e.tags))}}return l.length?l:null}function Y(t,e,r,n,i){for(let a=0;a=r&&o<=n&&J(e,t[a],t[a+1],t[a+2])}}function X(t,e,r,n,i,a,o){let s,l,c=$(t),u=0===i?Q:tt,h=t.start;for(let p=0;pr&&(l=u(c,f,d,g,y,r),o&&(c.start=h+s*l)):v>n?x=r&&(l=u(c,f,d,g,y,r),_=!0),x>n&&v<=n&&(l=u(c,f,d,g,y,n),_=!0),!a&&_&&(o&&(c.end=h+s*l),e.push(c),c=$(t)),o&&(h+=s)}let p=t.length-3,f=t[p],d=t[p+1],m=0===i?f:d;m>=r&&m<=n&&J(c,f,d,t[p+2]),p=c.length-3,a&&p>=3&&(c[p]!==c[0]||c[p+1]!==c[1])&&J(c,c[0],c[1],c[2]),c.length&&e.push(c)}function $(t){let e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function K(t,e,r,n,i,a){for(let o of t)X(o,e,r,n,i,a,!1)}function J(t,e,r,n){t.push(e,r,n)}function Q(t,e,r,n,i,a){let o=(a-e)/(n-e);return J(t,a,r+(i-r)*o,1),o}function tt(t,e,r,n,i,a){let o=(a-r)/(i-r);return J(t,e+(n-e)*o,a,1),o}function et(t,e){let r=[];for(let n=0;n0&&e.size<(i?o:n))return void(r.numPoints+=e.length/3);let s=[];for(let t=0;to)&&(r.numSimplified++,s.push(e[t],e[t+1])),r.numPoints++;i&&function(t,e){let r=0;for(let e=0,n=t.length,i=n-2;e0===e)for(let e=0,r=t.length;e24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");let n=function(t,e){let r=[];if("FeatureCollection"===t.type)for(let n=0;n1&&console.time("creation"),p=this.tiles[h]=at(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,n,p.numFeatures,p.numPoints,p.numSimplified),console.timeEnd("creation"));let t=`z${e}`;this.stats[t]=(this.stats[t]||0)+1,this.total++}if(p.source=t,null==i){if(e===l.indexMaxZoom||p.numPoints<=l.indexMaxPoints)continue}else{if(e===l.maxZoom||e===i)continue;if(null!=i){let t=i-e;if(r!==a>>t||n!==o>>t)continue}}if(p.source=null,0===t.length)continue;c>1&&console.time("clipping");let f=.5*l.buffer/l.extent,d=.5-f,m=.5+f,g=1+f,y=null,v=null,x=null,_=null,b=Z(t,u,r-f,r+m,0,p.minX,p.maxX,l),w=Z(t,u,r+d,r+g,0,p.minX,p.maxX,l);t=null,b&&(y=Z(b,u,n-f,n+m,1,p.minY,p.maxY,l),v=Z(b,u,n+d,n+g,1,p.minY,p.maxY,l),b=null),w&&(x=Z(w,u,n-f,n+m,1,p.minY,p.maxY,l),_=Z(w,u,n+d,n+g,1,p.minY,p.maxY,l),w=null),c>1&&console.timeEnd("clipping"),s.push(y||[],e+1,2*r,2*n),s.push(v||[],e+1,2*r,2*n+1),s.push(x||[],e+1,2*r+1,2*n),s.push(_||[],e+1,2*r+1,2*n+1)}}getTile(t,e,r){t=+t,e=+e,r=+r;let n=this.options,{extent:i,debug:a}=n;if(t<0||t>24)return null;let o=1<1&&console.log("drilling down to z%d-%d-%d",t,e,r);let l,c=t,u=e,h=r;for(;!l&&c>0;)c--,u>>=1,h>>=1,l=this.tiles[ut(c,u,h)];return l&&l.source?(a>1&&(console.log("found parent tile z%d-%d-%d",c,u,h),console.time("drilling down")),this.splitTile(l.source,c,u,h,t,e,r),a>1&&console.timeEnd("drilling down"),this.tiles[s]?nt(this.tiles[s],i):null):null}}function ut(t,e,r){return 32*((1<{o.properties=t;let e={};for(let t of s)e[t]=n[t].evaluate(a,o);return e},e.reduce=(t,e)=>{o.properties=e;for(let e of s)a.accumulated=t[e],t[e]=i[e].evaluate(a,o)},e}(e)).load((yield this._pendingData).features):(i=yield this._pendingData,new ct(i,e.geojsonVtOptions)),this.loaded={};let r={};if(n){let t=n.finish();t&&(r.resourceTiming={},r.resourceTiming[e.source]=JSON.parse(JSON.stringify(t)))}return r}catch(e){if(delete this._pendingRequest,t.bB(e))return{abandoned:!0};throw e}var i}))}getData(){return t._(this,void 0,void 0,(function*(){return this._pendingData}))}reloadTile(t){let e=this.loaded;return e&&e[t.uid]?super.reloadTile(t):this.loadTile(t)}loadAndProcessGeoJSON(e,r){return t._(this,void 0,void 0,(function*(){let n=yield this.loadGeoJSON(e,r);if(delete this._pendingRequest,"object"!=typeof n)throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`);if(c(n,!0),e.filter){let r=t.bC(e.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(", "));n={type:"FeatureCollection",features:n.features.filter((t=>r.value.evaluate({zoom:0},t)))}}return n}))}loadGeoJSON(e,r){return t._(this,void 0,void 0,(function*(){let{promoteId:n}=e;if(e.request){let i=yield t.h(e.request,r);return this._dataUpdateable=pt(i.data,n)?ft(i.data,n):void 0,i.data}if("string"==typeof e.data)try{let t=JSON.parse(e.data);return this._dataUpdateable=pt(t,n)?ft(t,n):void 0,t}catch{throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`)}if(!e.dataDiff)throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${e.source}`);return function(t,e,r){var n,i,a,o;if(e.removeAll&&t.clear(),e.remove)for(let r of e.remove)t.delete(r);if(e.add)for(let n of e.add){let e=ht(n,r);null!=e&&t.set(e,n)}if(e.update)for(let r of e.update){let e=t.get(r.id);if(null==e)continue;let s=!r.removeAllProperties&&((null===(n=r.removeProperties)||void 0===n?void 0:n.length)>0||(null===(i=r.addOrUpdateProperties)||void 0===i?void 0:i.length)>0);if((r.newGeometry||r.removeAllProperties||s)&&(e=Object.assign({},e),t.set(r.id,e),s&&(e.properties=Object.assign({},e.properties))),r.newGeometry&&(e.geometry=r.newGeometry),r.removeAllProperties)e.properties={};else if((null===(a=r.removeProperties)||void 0===a?void 0:a.length)>0)for(let t of r.removeProperties)Object.prototype.hasOwnProperty.call(e.properties,t)&&delete e.properties[t];if((null===(o=r.addOrUpdateProperties)||void 0===o?void 0:o.length)>0)for(let{key:t,value:n}of r.addOrUpdateProperties)e.properties[t]=n}}(this._dataUpdateable,e.dataDiff,n),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}}))}removeSource(e){return t._(this,void 0,void 0,(function*(){this._pendingRequest&&this._pendingRequest.abort()}))}getClusterExpansionZoom(t){return this._geoJSONIndex.getClusterExpansionZoom(t.clusterId)}getClusterChildren(t){return this._geoJSONIndex.getChildren(t.clusterId)}getClusterLeaves(t){return this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset)}}class mt{constructor(e){this.self=e,this.actor=new t.F(e),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(t,e)=>{if(this.externalWorkerSourceTypes[t])throw new Error(`Worker source with name "${t}" already registered.`);this.externalWorkerSourceTypes[t]=e},this.self.addProtocol=t.bi,this.self.removeProtocol=t.bj,this.self.registerRTLTextPlugin=e=>{if(t.bD.isParsed())throw new Error("RTL text plugin already registered.");t.bD.setMethods(e)},this.actor.registerMessageHandler("LDT",((t,e)=>this._getDEMWorkerSource(t,e.source).loadTile(e))),this.actor.registerMessageHandler("RDT",((e,r)=>t._(this,void 0,void 0,(function*(){this._getDEMWorkerSource(e,r.source).removeTile(r)})))),this.actor.registerMessageHandler("GCEZ",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterExpansionZoom(r)})))),this.actor.registerMessageHandler("GCC",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterChildren(r)})))),this.actor.registerMessageHandler("GCL",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterLeaves(r)})))),this.actor.registerMessageHandler("LD",((t,e)=>this._getWorkerSource(t,e.type,e.source).loadData(e))),this.actor.registerMessageHandler("GD",((t,e)=>this._getWorkerSource(t,e.type,e.source).getData())),this.actor.registerMessageHandler("LT",((t,e)=>this._getWorkerSource(t,e.type,e.source).loadTile(e))),this.actor.registerMessageHandler("RT",((t,e)=>this._getWorkerSource(t,e.type,e.source).reloadTile(e))),this.actor.registerMessageHandler("AT",((t,e)=>this._getWorkerSource(t,e.type,e.source).abortTile(e))),this.actor.registerMessageHandler("RMT",((t,e)=>this._getWorkerSource(t,e.type,e.source).removeTile(e))),this.actor.registerMessageHandler("RS",((e,r)=>t._(this,void 0,void 0,(function*(){if(!this.workerSources[e]||!this.workerSources[e][r.type]||!this.workerSources[e][r.type][r.source])return;let t=this.workerSources[e][r.type][r.source];delete this.workerSources[e][r.type][r.source],void 0!==t.removeSource&&t.removeSource(r)})))),this.actor.registerMessageHandler("RM",(e=>t._(this,void 0,void 0,(function*(){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e]})))),this.actor.registerMessageHandler("SR",((e,r)=>t._(this,void 0,void 0,(function*(){this.referrer=r})))),this.actor.registerMessageHandler("SRPS",((t,e)=>this._syncRTLPluginState(t,e))),this.actor.registerMessageHandler("IS",((e,r)=>t._(this,void 0,void 0,(function*(){this.self.importScripts(r)})))),this.actor.registerMessageHandler("SI",((t,e)=>this._setImages(t,e))),this.actor.registerMessageHandler("UL",((e,r)=>t._(this,void 0,void 0,(function*(){this._getLayerIndex(e).update(r.layers,r.removedIds)})))),this.actor.registerMessageHandler("SL",((e,r)=>t._(this,void 0,void 0,(function*(){this._getLayerIndex(e).replace(r)}))))}_setImages(e,r){return t._(this,void 0,void 0,(function*(){this.availableImages[e]=r;for(let t in this.workerSources[e]){let n=this.workerSources[e][t];for(let t in n)n[t].availableImages=r}}))}_syncRTLPluginState(e,r){return t._(this,void 0,void 0,(function*(){if(t.bD.isParsed())return t.bD.getState();if("loading"!==r.pluginStatus)return t.bD.setState(r),r;let e=r.pluginURL;if(this.self.importScripts(e),t.bD.isParsed()){let r={pluginStatus:"loaded",pluginURL:e};return t.bD.setState(r),r}throw t.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${e}`)}))}_getAvailableImages(t){let e=this.availableImages[t];return e||(e=[]),e}_getLayerIndex(t){let r=this.layerIndexes[t];return r||(r=this.layerIndexes[t]=new e),r}_getWorkerSource(t,e,r){if(this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),!this.workerSources[t][e][r]){let n={sendAsync:(e,r)=>(e.targetMapId=t,this.actor.sendAsync(e,r))};switch(e){case"vector":this.workerSources[t][e][r]=new a(n,this._getLayerIndex(t),this._getAvailableImages(t));break;case"geojson":this.workerSources[t][e][r]=new dt(n,this._getLayerIndex(t),this._getAvailableImages(t));break;default:this.workerSources[t][e][r]=new this.externalWorkerSourceTypes[e](n,this._getLayerIndex(t),this._getAvailableImages(t))}}return this.workerSources[t][e][r]}_getDEMWorkerSource(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new o),this.demWorkerSources[t][e]}}return t.i(self)&&(self.worker=new mt(self)),mt})),n("index",0,(function(t,e){var r="4.7.1";let n,i,a={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:t=>new Promise(((r,n)=>{let i=requestAnimationFrame(r);t.signal.addEventListener("abort",(()=>{cancelAnimationFrame(i),n(e.c())}))})),getImageData(t,e=0){return this.getImageCanvasContext(t).getImageData(-e,-e,t.width+2*e,t.height+2*e)},getImageCanvasContext(t){let e=window.document.createElement("canvas"),r=e.getContext("2d",{willReadFrequently:!0});if(!r)throw new Error("failed to create canvas 2d context");return e.width=t.width,e.height=t.height,r.drawImage(t,0,0,t.width,t.height),r},resolveURL:t=>(n||(n=document.createElement("a")),n.href=t,n.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(null==i&&(i=matchMedia("(prefers-reduced-motion: reduce)")),i.matches)}};class o{static testProp(t){if(!o.docStyle)return t[0];for(let e=0;e{window.removeEventListener("click",o.suppressClickInternal,!0)}),0)}static getScale(t){let e=t.getBoundingClientRect();return{x:e.width/t.offsetWidth||1,y:e.height/t.offsetHeight||1,boundingClientRect:e}}static getPoint(t,r,n){let i=r.boundingClientRect;return new e.P((n.clientX-i.left)/r.x-t.clientLeft,(n.clientY-i.top)/r.y-t.clientTop)}static mousePos(t,e){let r=o.getScale(t);return o.getPoint(t,r,e)}static touchPos(t,e){let r=[],n=o.getScale(t);for(let i=0;i{s&&p(s),s=null,h=!0},l.onerror=()=>{u=!0,s=null},l.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(t){let r,n,i,a;t.resetRequestQueue=()=>{r=[],n=0,i=0,a={}},t.addThrottleControl=t=>{let e=i++;return a[e]=t,e},t.removeThrottleControl=t=>{delete a[t],s()},t.getImage=(t,n,i=!0)=>new Promise(((a,o)=>{c.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),e.e(t,{type:"image"}),r.push({abortController:n,requestParameters:t,supportImageRefresh:i,state:"queued",onError:t=>{o(t)},onSuccess:t=>{a(t)}}),s()}));let o=t=>e._(this,void 0,void 0,(function*(){t.state="running";let{requestParameters:r,supportImageRefresh:i,onError:a,onSuccess:o,abortController:c}=t,u=!1===i&&!e.i(self)&&!e.g(r.url)&&(!r.headers||Object.keys(r.headers).reduce(((t,e)=>t&&"accept"===e),!0));n++;let h=u?l(r,c):e.m(r,c);try{let r=yield h;delete t.abortController,t.state="completed",r.data instanceof HTMLImageElement||e.b(r.data)?o(r):r.data&&o({data:yield(p=r.data,"function"==typeof createImageBitmap?e.d(p):e.f(p)),cacheControl:r.cacheControl,expires:r.expires})}catch(e){delete t.abortController,a(e)}finally{n--,s()}var p})),s=()=>{let t=(()=>{for(let t of Object.keys(a))if(a[t]())return!0;return!1})()?e.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:e.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let e=n;e0;e++){let t=r.shift();t.abortController.signal.aborted?e--:o(t)}},l=(t,r)=>new Promise(((n,i)=>{let a=new Image,o=t.url,s=t.credentials;s&&"include"===s?a.crossOrigin="use-credentials":(s&&"same-origin"===s||!e.s(o))&&(a.crossOrigin="anonymous"),r.signal.addEventListener("abort",(()=>{a.src="",i(e.c())})),a.fetchPriority="high",a.onload=()=>{a.onerror=a.onload=null,n({data:a})},a.onerror=()=>{a.onerror=a.onload=null,r.signal.aborted||i(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},a.src=o}))}(f||(f={})),f.resetRequestQueue();class d{constructor(t){this._transformRequestFn=t}transformRequest(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}}setTransformRequest(t){this._transformRequestFn=t}}function m(t){var r=new e.A(3);return r[0]=t[0],r[1]=t[1],r[2]=t[2],r}var g,y=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t};g=new e.A(3),e.A!=Float32Array&&(g[0]=0,g[1]=0,g[2]=0);var v,x=function(t){var e=t[0],r=t[1];return e*e+r*r};function _(t){let e=[];if("string"==typeof t)e.push({id:"default",url:t});else if(t&&t.length>0){let r=[];for(let{id:n,url:i}of t){let t=`${n}${i}`;-1===r.indexOf(t)&&(r.push(t),e.push({id:n,url:i}))}}return e}function b(t,e,r){let n=t.split("?");return n[0]+=`${e}${r}`,n.join("?")}v=new e.A(2),e.A!=Float32Array&&(v[0]=0,v[1]=0);class w{constructor(t,e,r,n){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this.update(e,n)}update(t,r,n){let{width:i,height:a}=t,o=!(this.size&&this.size[0]===i&&this.size[1]===a||n),{context:s}=this,{gl:l}=s;if(this.useMipmap=!(!r||!r.useMipmap),l.bindTexture(l.TEXTURE_2D,this.texture),s.pixelStoreUnpackFlipY.set(!1),s.pixelStoreUnpack.set(1),s.pixelStoreUnpackPremultiplyAlpha.set(this.format===l.RGBA&&(!r||!1!==r.premultiply)),o)this.size=[i,a],t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texImage2D(l.TEXTURE_2D,0,this.format,this.format,l.UNSIGNED_BYTE,t):l.texImage2D(l.TEXTURE_2D,0,this.format,i,a,0,this.format,l.UNSIGNED_BYTE,t.data);else{let{x:r,y:o}=n||{x:0,y:0};t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texSubImage2D(l.TEXTURE_2D,0,r,o,l.RGBA,l.UNSIGNED_BYTE,t):l.texSubImage2D(l.TEXTURE_2D,0,r,o,i,a,l.RGBA,l.UNSIGNED_BYTE,t.data)}this.useMipmap&&this.isSizePowerOfTwo()&&l.generateMipmap(l.TEXTURE_2D)}bind(t,e,r){let{context:n}=this,{gl:i}=n;i.bindTexture(i.TEXTURE_2D,this.texture),r!==i.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(r=i.LINEAR),t!==this.filter&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,t),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,r||t),this.filter=t),e!==this.wrap&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,e),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,e),this.wrap=e)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:t}=this.context;t.deleteTexture(this.texture),this.texture=null}}function T(t){let{userImage:e}=t;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}class A extends e.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(t){if(this.loaded!==t&&(this.loaded=t,t)){for(let{ids:t,promiseResolve:e}of this.requestors)e(this._getImagesForIds(t));this.requestors=[]}}getImage(t){let r=this.images[t];if(r&&!r.data&&r.spriteData){let t=r.spriteData;r.data=new e.R({width:t.width,height:t.height},t.context.getImageData(t.x,t.y,t.width,t.height).data),r.spriteData=null}return r}addImage(t,e){if(this.images[t])throw new Error(`Image id ${t} already exist, use updateImage instead`);this._validate(t,e)&&(this.images[t]=e)}_validate(t,r){let n=!0,i=r.data||r.spriteData;return this._validateStretch(r.stretchX,i&&i.width)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "stretchX" value`))),n=!1),this._validateStretch(r.stretchY,i&&i.height)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "stretchY" value`))),n=!1),this._validateContent(r.content,r)||(this.fire(new e.j(new Error(`Image "${t}" has invalid "content" value`))),n=!1),n}_validateStretch(t,e){if(!t)return!0;let r=0;for(let n of t){if(n[0]{let n=!0;if(!this.isLoaded())for(let e of t)this.images[e]||(n=!1);this.isLoaded()||n?e(this._getImagesForIds(t)):this.requestors.push({ids:t,promiseResolve:e})}))}_getImagesForIds(t){let r={};for(let n of t){let t=this.getImage(n);t||(this.fire(new e.k("styleimagemissing",{id:n})),t=this.getImage(n)),t?r[n]={data:t.data.clone(),pixelRatio:t.pixelRatio,sdf:t.sdf,version:t.version,stretchX:t.stretchX,stretchY:t.stretchY,content:t.content,textFitWidth:t.textFitWidth,textFitHeight:t.textFitHeight,hasRenderCallback:!(!t.userImage||!t.userImage.render)}:e.w(`Image "${n}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return r}getPixelSize(){let{width:t,height:e}=this.atlasImage;return{width:t,height:e}}getPattern(t){let r=this.patterns[t],n=this.getImage(t);if(!n)return null;if(r&&r.position.version===n.version)return r.position;if(r)r.position.version=n.version;else{let r={w:n.data.width+2,h:n.data.height+2,x:0,y:0},i=new e.I(r,n);this.patterns[t]={bin:r,position:i}}return this._updatePatternAtlas(),this.patterns[t].position}bind(t){let e=t.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new w(t,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)}_updatePatternAtlas(){let t=[];for(let e in this.patterns)t.push(this.patterns[e].bin);let{w:r,h:n}=e.p(t),i=this.atlasImage;i.resize({width:r||1,height:n||1});for(let t in this.patterns){let{bin:r}=this.patterns[t],n=r.x+1,a=r.y+1,o=this.getImage(t).data,s=o.width,l=o.height;e.R.copy(o,i,{x:0,y:0},{x:n,y:a},{width:s,height:l}),e.R.copy(o,i,{x:0,y:l-1},{x:n,y:a-1},{width:s,height:1}),e.R.copy(o,i,{x:0,y:0},{x:n,y:a+l},{width:s,height:1}),e.R.copy(o,i,{x:s-1,y:0},{x:n-1,y:a},{width:1,height:l}),e.R.copy(o,i,{x:0,y:0},{x:n+s,y:a},{width:1,height:l})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(t){for(let r of t){if(this.callbackDispatchedThisFrame[r])continue;this.callbackDispatchedThisFrame[r]=!0;let t=this.getImage(r);t||e.w(`Image with ID: "${r}" was not found`),T(t)&&this.updateImage(r,t)}}}let k,M=1e20;function S(t,e,r,n,i,a,o,s,l){for(let c=e;c-1);l++,a[l]=s,o[l]=c,o[l+1]=M}for(let s=0,l=0;s65535)throw new Error("glyphs > 65535 not supported");if(e.ranges[i])return{stack:t,id:r,glyph:n};if(!this.url)throw new Error("glyphsUrl is not set");if(!e.requests[i]){let r=C.loadGlyphRange(t,i,this.url,this.requestManager);e.requests[i]=r}let a=yield e.requests[i];for(let t in a)this._doesCharSupportLocalGlyph(+t)||(e.glyphs[+t]=a[+t]);return e.ranges[i]=!0,{stack:t,id:r,glyph:a[r]||null}}))}_doesCharSupportLocalGlyph(t){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(t))}_tinySDF(t,r,n){let i=this.localIdeographFontFamily;if(!i||!this._doesCharSupportLocalGlyph(n))return;let a=t.tinySDF;if(!a){let e="400";/bold/i.test(r)?e="900":/medium/i.test(r)?e="500":/light/i.test(r)&&(e="200"),a=t.tinySDF=new C.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:i,fontWeight:e})}let o=a.draw(String.fromCharCode(n));return{id:n,bitmap:new e.o({width:o.width||60,height:o.height||60},o.data),metrics:{width:o.glyphWidth/2||24,height:o.glyphHeight/2||24,left:o.glyphLeft/2+.5||0,top:o.glyphTop/2-27.5||-8,advance:o.glyphAdvance/2||24,isDoubleResolution:!0}}}}C.loadGlyphRange=function(t,r,n,i){return e._(this,void 0,void 0,(function*(){let a=256*r,o=a+255,s=i.transformRequest(n.replace("{fontstack}",t).replace("{range}",`${a}-${o}`),"Glyphs"),l=yield e.l(s,new AbortController);if(!l||!l.data)throw new Error(`Could not load glyph range. range: ${r}, ${a}-${o}`);let c={};for(let t of e.n(l.data))c[t.id]=t;return c}))},C.TinySDF=class{constructor({fontSize:t=24,buffer:e=3,radius:r=8,cutoff:n=.25,fontFamily:i="sans-serif",fontWeight:a="normal",fontStyle:o="normal"}={}){this.buffer=e,this.cutoff=n,this.radius=r;let s=this.size=t+4*e,l=this._createCanvas(s),c=this.ctx=l.getContext("2d",{willReadFrequently:!0});c.font=`${o} ${a} ${t}px ${i}`,c.textBaseline="alphabetic",c.textAlign="left",c.fillStyle="black",this.gridOuter=new Float64Array(s*s),this.gridInner=new Float64Array(s*s),this.f=new Float64Array(s),this.z=new Float64Array(s+1),this.v=new Uint16Array(s)}_createCanvas(t){let e=document.createElement("canvas");return e.width=e.height=t,e}draw(t){let{width:e,actualBoundingBoxAscent:r,actualBoundingBoxDescent:n,actualBoundingBoxLeft:i,actualBoundingBoxRight:a}=this.ctx.measureText(t),o=Math.ceil(r),s=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(a-i))),l=Math.min(this.size-this.buffer,o+Math.ceil(n)),c=s+2*this.buffer,u=l+2*this.buffer,h=Math.max(c*u,0),p=new Uint8ClampedArray(h),f={data:p,width:c,height:u,glyphWidth:s,glyphHeight:l,glyphTop:o,glyphLeft:0,glyphAdvance:e};if(0===s||0===l)return f;let{ctx:d,buffer:m,gridInner:g,gridOuter:y}=this;d.clearRect(m,m,s,l),d.fillText(t,m,m+o);let v=d.getImageData(m,m,s,l);y.fill(M,0,h),g.fill(0,0,h);for(let t=0;t0?t*t:0,g[n]=t<0?t*t:0}}S(y,0,0,c,u,c,this.f,this.v,this.z),S(g,m,m,s,l,c,this.f,this.v,this.z);for(let t=0;t1&&(o=t[++a]);let l,c=Math.abs(s-o.left),u=Math.abs(s-o.right),h=Math.min(c,u),p=e/r*(n+1);if(o.isDash){let t=n-Math.abs(p);l=Math.sqrt(h*h+t*t)}else l=n-Math.sqrt(h*h+p*p);this.data[i+s]=Math.max(0,Math.min(255,l+128))}}}addRegularDash(t){for(let e=t.length-1;e>=0;--e){let r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}let e=t[0],r=t[t.length-1];e.isDash===r.isDash&&(e.left=r.left-this.width,r.right=e.right+this.width);let n=this.width*this.nextRow,i=0,a=t[i];for(let e=0;e1&&(a=t[++i]);let r=Math.abs(e-a.left),o=Math.abs(e-a.right),s=Math.min(r,o);this.data[n+e]=Math.max(0,Math.min(255,(a.isDash?s:-s)+128))}}addDash(t,r){let n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return e.w("LineAtlas out of space"),null;let a=0;for(let e=0;e{t.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[O]}numActive(){return Object.keys(this.active).length}}let F,B,j=Math.floor(a.hardwareConcurrency/2);function N(){return F||(F=new R),F}R.workerCount=e.C(globalThis)?Math.max(Math.min(j,3),1):1;class U{constructor(t,r){this.workerPool=t,this.actors=[],this.currentActor=0,this.id=r;let n=this.workerPool.acquire(r);for(let t=0;t{t.remove()})),this.actors=[],t&&this.workerPool.release(this.id)}registerMessageHandler(t,e){for(let r of this.actors)r.registerMessageHandler(t,e)}}function V(){return B||(B=new U(N(),e.G),B.registerMessageHandler("GR",((t,r,n)=>e.m(r,n)))),B}function q(t,r){let n=e.H();return e.J(n,n,[1,1,0]),e.K(n,n,[.5*t.width,.5*t.height,1]),e.L(n,n,t.calculatePosMatrix(r.toUnwrapped()))}function H(t,e,r,n,i,a){let o=function(t,e,r){if(t)for(let n of t){let t=e[n];if(t&&t.source===r&&"fill-extrusion"===t.type)return!0}else for(let t in e){let n=e[t];if(n.source===r&&"fill-extrusion"===n.type)return!0}return!1}(i&&i.layers,e,t.id),s=a.maxPitchScaleFactor(),l=t.tilesIn(n,s,o);l.sort(G);let c=[];for(let n of l)c.push({wrappedTileID:n.tileID.wrapped().key,queryResults:n.tile.queryRenderedFeatures(e,r,t._state,n.queryGeometry,n.cameraQueryGeometry,n.scale,i,a,s,q(t.transform,n.tileID))});let u=function(t){let e={},r={};for(let n of t){let t=n.queryResults,i=n.wrappedTileID,a=r[i]=r[i]||{};for(let r in t){let n=t[r],i=a[r]=a[r]||{},o=e[r]=e[r]||[];for(let t of n)i[t.featureIndex]||(i[t.featureIndex]=!0,o.push(t))}}return e}(c);for(let e in u)u[e].forEach((e=>{let r=e.feature,n=t.getFeatureState(r.layer["source-layer"],r.id);r.source=r.layer.source,r.layer["source-layer"]&&(r.sourceLayer=r.layer["source-layer"]),r.state=n}));return u}function G(t,e){let r=t.tileID,n=e.tileID;return r.overscaledZ-n.overscaledZ||r.canonical.y-n.canonical.y||r.wrap-n.wrap||r.canonical.x-n.canonical.x}function W(t,r,n){return e._(this,void 0,void 0,(function*(){let i=t;if(t.url?i=(yield e.h(r.transformRequest(t.url,"Source"),n)).data:yield a.frameAsync(n),!i)return null;let o=e.M(e.e(i,t),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in i&&i.vector_layers&&(o.vectorLayerIds=i.vector_layers.map((t=>t.id))),o}))}class Z{constructor(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):Array.isArray(t)&&(4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1])))}setNorthEast(t){return this._ne=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}setSouthWest(t){return this._sw=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}extend(t){let r,n,i=this._sw,a=this._ne;if(t instanceof e.N)r=t,n=t;else{if(!(t instanceof Z))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(Z.convert(t)):this.extend(e.N.convert(t)):t&&("lng"in t||"lon"in t)&&"lat"in t?this.extend(e.N.convert(t)):this;if(r=t._sw,n=t._ne,!r||!n)return this}return i||a?(i.lng=Math.min(r.lng,i.lng),i.lat=Math.min(r.lat,i.lat),a.lng=Math.max(n.lng,a.lng),a.lat=Math.max(n.lat,a.lat)):(this._sw=new e.N(r.lng,r.lat),this._ne=new e.N(n.lng,n.lat)),this}getCenter(){return new e.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new e.N(this.getWest(),this.getNorth())}getSouthEast(){return new e.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(t){let{lng:r,lat:n}=e.N.convert(t),i=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(i=this._sw.lng>=r&&r>=this._ne.lng),this._sw.lat<=n&&n<=this._ne.lat&&i}static convert(t){return t instanceof Z?t:t&&new Z(t)}static fromLngLat(t,r=0){let n=360*r/40075017,i=n/Math.cos(Math.PI/180*t.lat);return new Z(new e.N(t.lng-i,t.lat-n),new e.N(t.lng+i,t.lat+n))}adjustAntiMeridian(){let t=new e.N(this._sw.lng,this._sw.lat),r=new e.N(this._ne.lng,this._ne.lat);return new Z(t,t.lng>r.lng?new e.N(r.lng+360,r.lat):r)}}class Y{constructor(t,e,r){this.bounds=Z.convert(this.validateBounds(t)),this.minzoom=e||0,this.maxzoom=r||24}validateBounds(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]}contains(t){let r=Math.pow(2,t.z),n=Math.floor(e.O(this.bounds.getWest())*r),i=Math.floor(e.Q(this.bounds.getNorth())*r),a=Math.ceil(e.O(this.bounds.getEast())*r),o=Math.ceil(e.Q(this.bounds.getSouth())*r);return t.x>=n&&t.x=i&&t.y{this._options.tiles=t})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t})),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return e.e({},this._options)}loadTile(t){return e._(this,void 0,void 0,(function*(){let e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),r={request:this.map._requestManager.transformRequest(e,"Tile"),uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};r.request.collectResourceTiming=this._collectResourceTiming;let n="RT";if(t.actor&&"expired"!==t.state){if("loading"===t.state)return new Promise(((e,r)=>{t.reloadPromise={resolve:e,reject:r}}))}else t.actor=this.dispatcher.getActor(),n="LT";t.abortController=new AbortController;try{let e=yield t.actor.sendAsync({type:n,data:r},t.abortController);if(delete t.abortController,t.aborted)return;this._afterTileLoadWorkerResponse(t,e)}catch(e){if(delete t.abortController,t.aborted)return;if(e&&404!==e.status)throw e;this._afterTileLoadWorkerResponse(t,null)}}))}_afterTileLoadWorkerResponse(t,e){if(e&&e.resourceTiming&&(t.resourceTiming=e.resourceTiming),e&&this.map._refreshExpiredTiles&&t.setExpiryData(e),t.loadVectorData(e,this.map.painter),t.reloadPromise){let e=t.reloadPromise;t.reloadPromise=null,this.loadTile(t).then(e.resolve).catch(e.reject)}}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.actor&&(yield t.actor.sendAsync({type:"AT",data:{uid:t.uid,type:this.type,source:this.id}}))}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),t.actor&&(yield t.actor.sendAsync({type:"RMT",data:{uid:t.uid,type:this.type,source:this.id}}))}))}hasTransition(){return!1}}class $ extends e.E{constructor(t,r,n,i){super(),this.id=t,this.dispatcher=n,this.setEventedParent(i),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.e({type:"raster"},r),e.e(this,e.M(r,["url","scheme","tileSize"]))}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let t=yield W(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,t&&(e.e(this,t),t.bounds&&(this.tileBounds=new Y(t.bounds,this.minzoom,this.maxzoom)),this.fire(new e.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.k("data",{dataType:"source",sourceDataType:"content"})))}catch(t){this._tileJSONRequest=null,this.fire(new e.j(t))}}))}loaded(){return this._loaded}onAdd(t){this.map=t,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(t){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),t(),this.load()}setTiles(t){return this.setSourceProperty((()=>{this._options.tiles=t})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t})),this}serialize(){return e.e({},this._options)}hasTile(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)}loadTile(t){return e._(this,void 0,void 0,(function*(){let e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);t.abortController=new AbortController;try{let r=yield f.getImage(this.map._requestManager.transformRequest(e,"Tile"),t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state="unloaded");if(r&&r.data){this.map._refreshExpiredTiles&&r.cacheControl&&r.expires&&t.setExpiryData({cacheControl:r.cacheControl,expires:r.expires});let e=this.map.painter.context,n=e.gl,i=r.data;t.texture=this.map.painter.getTileTexture(i.width),t.texture?t.texture.update(i,{useMipmap:!0}):(t.texture=new w(e,i,n.RGBA,{useMipmap:!0}),t.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE,n.LINEAR_MIPMAP_NEAREST)),t.state="loaded"}}catch(e){if(delete t.abortController,t.aborted)t.state="unloaded";else if(e)throw t.state="errored",e}}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController)}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.texture&&this.map.painter.saveTileTexture(t.texture)}))}hasTransition(){return!1}}class K extends ${constructor(t,r,n,i){super(t,r,n,i),this.type="raster-dem",this.maxzoom=22,this._options=e.e({type:"raster-dem"},r),this.encoding=r.encoding||"mapbox",this.redFactor=r.redFactor,this.greenFactor=r.greenFactor,this.blueFactor=r.blueFactor,this.baseShift=r.baseShift}loadTile(t){return e._(this,void 0,void 0,(function*(){let r=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),n=this.map._requestManager.transformRequest(r,"Tile");t.neighboringTiles=this._getNeighboringTiles(t.tileID),t.abortController=new AbortController;try{let r=yield f.getImage(n,t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state="unloaded");if(r&&r.data){let n=r.data;this.map._refreshExpiredTiles&&r.cacheControl&&r.expires&&t.setExpiryData({cacheControl:r.cacheControl,expires:r.expires});let i=e.b(n)&&e.U()?n:yield this.readImageNow(n),a={type:this.type,uid:t.uid,source:this.id,rawImageData:i,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!t.actor||"expired"===t.state){t.actor=this.dispatcher.getActor();let e=yield t.actor.sendAsync({type:"LDT",data:a});t.dem=e,t.needsHillshadePrepare=!0,t.needsTerrainPrepare=!0,t.state="loaded"}}}catch(e){if(delete t.abortController,t.aborted)t.state="unloaded";else if(e)throw t.state="errored",e}}))}readImageNow(t){return e._(this,void 0,void 0,(function*(){if(typeof VideoFrame<"u"&&e.V()){let r=t.width+2,n=t.height+2;try{return new e.R({width:r,height:n},yield e.W(t,-1,-1,r,n))}catch{}}return a.getImageData(t,1)}))}_getNeighboringTiles(t){let r=t.canonical,n=Math.pow(2,r.z),i=(r.x-1+n)%n,a=0===r.x?t.wrap-1:t.wrap,o=(r.x+1+n)%n,s=r.x+1===n?t.wrap+1:t.wrap,l={};return l[new e.S(t.overscaledZ,a,r.z,i,r.y).key]={backfilled:!1},l[new e.S(t.overscaledZ,s,r.z,o,r.y).key]={backfilled:!1},r.y>0&&(l[new e.S(t.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,t.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+10&&e.e(i,{resourceTiming:n}),this.fire(new e.k("data",Object.assign(Object.assign({},i),{sourceDataType:"metadata"}))),this.fire(new e.k("data",Object.assign(Object.assign({},i),{sourceDataType:"content"})))}catch(t){if(this._pendingLoads--,this._removed)return void this.fire(new e.k("dataabort",{dataType:"source"}));this.fire(new e.j(t))}}))}loaded(){return 0===this._pendingLoads}loadTile(t){return e._(this,void 0,void 0,(function*(){let e=t.actor?"RT":"LT";t.actor=this.actor;let r={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.abortController=new AbortController;let n=yield this.actor.sendAsync({type:e,data:r},t.abortController);delete t.abortController,t.unloadVectorData(),t.aborted||t.loadVectorData(n,this.map.painter,"RT"===e)}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.aborted=!0}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:t.uid,type:this.type,source:this.id}})}))}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return e.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Q=e.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class tt extends e.E{constructor(t,e,r,n){super(),this.id=t,this.dispatcher=r,this.coordinates=e.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(n),this.options=e}load(t){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let e=yield f.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,e&&e.data&&(this.image=e.data,t&&(this.coordinates=t),this._finishLoading())}catch(t){this._request=null,this._loaded=!0,this.fire(new e.j(t))}}))}loaded(){return this._loaded}updateImage(t){return t.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=t.url,this.load(t.coordinates).finally((()=>{this.texture=null})),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(t){this.map=t,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(t){this.coordinates=t;let r=t.map(e.Z.fromLngLat);this.tileID=function(t){let r=1/0,n=1/0,i=-1/0,a=-1/0;for(let e of t)r=Math.min(r,e.x),n=Math.min(n,e.y),i=Math.max(i,e.x),a=Math.max(a,e.y);let o=Math.max(i-r,a-n),s=Math.max(0,Math.floor(-Math.log(o)/Math.LN2)),l=Math.pow(2,s);return new e.a1(s,Math.floor((r+i)/2*l),Math.floor((n+a)/2*l))}(r),this.minzoom=this.maxzoom=this.tileID.z;let n=r.map((t=>this.tileID.getTilePoint(t)._round()));return this._boundsArray=new e.$,this._boundsArray.emplaceBack(n[0].x,n[0].y,0,0),this._boundsArray.emplaceBack(n[1].x,n[1].y,e.X,0),this._boundsArray.emplaceBack(n[3].x,n[3].y,0,e.X),this._boundsArray.emplaceBack(n[2].x,n[2].y,e.X,e.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;let t=this.map.painter.context,r=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,Q.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new w(t,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE));let n=!1;for(let t in this.tiles){let e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,n=!0)}n&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(t){return e._(this,void 0,void 0,(function*(){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={}):t.state="errored"}))}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class et extends tt{constructor(t,e,r,n){super(t,e,r,n),this.roundZoom=!0,this.type="video",this.options=e}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1;let t=this.options;this.urls=[];for(let e of t.urls)this.urls.push(this.map._requestManager.transformRequest(e,"Source").url);try{let t=yield e.a3(this.urls);if(this._loaded=!0,!t)return;this.video=t,this.video.loop=!0,this.video.addEventListener("playing",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading()}catch(t){this.fire(new e.j(t))}}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(t){if(this.video){let r=this.video.seekable;tr.end(0)?this.fire(new e.j(new e.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${r.start(0)} and ${r.end(0)}-second mark.`))):this.video.currentTime=t}}getVideo(){return this.video}onAdd(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;let t=this.map.painter.context,r=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,Q.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new w(t,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE));let n=!1;for(let t in this.tiles){let e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,n=!0)}n&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class rt extends tt{constructor(t,r,n,i){super(t,r,n,i),r.coordinates?Array.isArray(r.coordinates)&&4===r.coordinates.length&&!r.coordinates.some((t=>!Array.isArray(t)||2!==t.length||t.some((t=>"number"!=typeof t))))||this.fire(new e.j(new e.a2(`sources.${t}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.j(new e.a2(`sources.${t}`,null,'missing required property "coordinates"'))),r.animate&&"boolean"!=typeof r.animate&&this.fire(new e.j(new e.a2(`sources.${t}`,null,'optional "animate" property must be a boolean value'))),r.canvas?"string"==typeof r.canvas||r.canvas instanceof HTMLCanvasElement||this.fire(new e.j(new e.a2(`sources.${t}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.j(new e.a2(`sources.${t}`,null,'missing required property "canvas"'))),this.options=r,this.animate=void 0===r.animate||r.animate}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())}))}getCanvas(){return this.canvas}onAdd(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),this._hasInvalidDimensions()||0===Object.keys(this.tiles).length)return;let r=this.map.painter.context,n=r.gl;this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,Q.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new w(r,this.canvas,n.RGBA,{premultiply:!0});let i=!1;for(let t in this.tiles){let e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture,i=!0)}i&&this.fire(new e.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let t of[this.canvas.width,this.canvas.height])if(isNaN(t)||t<=0)return!0;return!1}}let nt={},it=t=>{switch(t){case"geojson":return J;case"image":return tt;case"raster":return $;case"raster-dem":return K;case"vector":return X;case"video":return et;case"canvas":return rt}return nt[t]},at="RTLPluginLoaded";class ot extends e.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=V()}_syncState(t){return this.status=t,this.dispatcher.broadcast("SRPS",{pluginStatus:t,pluginURL:this.url}).catch((t=>{throw this.status="error",t}))}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(t){return e._(this,arguments,void 0,(function*(t,e=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=a.resolveURL(t),!this.url)throw new Error(`requested url ${t} is invalid`);if("unavailable"===this.status){if(!e)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if("requested"===this.status)return this._requestImport()}))}_requestImport(){return e._(this,void 0,void 0,(function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new e.k(at))}))}lazyLoad(){"unavailable"===this.status?this.status="requested":"deferred"===this.status&&this._requestImport()}}let st=null;function lt(){return st||(st=new ot),st}class ct{constructor(t,r){this.timeAdded=0,this.fadeEndTime=0,this.tileID=t,this.uid=e.a4(),this.uses=0,this.tileSize=r,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(t){let e=t+this.timeAdded;ee.getLayer(t))).filter(Boolean);if(0!==t.length){n.layers=t,n.stateDependentLayerIds&&(n.stateDependentLayers=n.stateDependentLayerIds.map((e=>t.filter((t=>t.id===e))[0])));for(let e of t)r[e.id]=n}}return r}(t.buckets,r.style),this.hasSymbolBuckets=!1;for(let t in this.buckets){let r=this.buckets[t];if(r instanceof e.a6){if(this.hasSymbolBuckets=!0,!n)break;r.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let t in this.buckets){let r=this.buckets[t];if(r instanceof e.a6&&r.hasRTLText){this.hasRTLText=!0,lt().lazyLoad();break}}this.queryPadding=0;for(let t in this.buckets){let e=this.buckets[t];this.queryPadding=Math.max(this.queryPadding,r.style.getLayer(t).queryRadius(e))}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}else this.collisionBoxArray=new e.a5}unloadVectorData(){for(let t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(t){return this.buckets[t.id]}upload(t){for(let e in this.buckets){let r=this.buckets[e];r.uploadPending()&&r.upload(t)}let e=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new w(t,this.imageAtlas.image,e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new w(t,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)}prepare(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)}queryRenderedFeatures(t,e,r,n,i,a,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:n,cameraQueryGeometry:i,scale:a,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,r):{}}querySourceFeatures(t,r){let n=this.latestFeatureIndex;if(!n||!n.rawTileData)return;let i=n.loadVTLayers(),a=r&&r.sourceLayer?r.sourceLayer:"",o=i._geojsonTileLayer||i[a];if(!o)return;let s=e.a7(r&&r.filter),{z:l,x:c,y:u}=this.tileID.canonical,h={z:l,x:c,y:u};for(let r=0;rt)e=!1;else if(r)if(this.expirationTime{this.remove(t,i)}),r)),this.data[n].push(i),this.order.push(n),this.order.length>this.max){let t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}has(t){return t.wrapped().key in this.data}getAndRemove(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null}_getAndRemoveByKey(t){let e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value}getByKey(t){let e=this.data[t];return e?e[0].value:null}get(t){return this.has(t)?this.data[t.wrapped().key][0].value:null}remove(t,e){if(!this.has(t))return this;let r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),i=this.data[r][n];return this.data[r].splice(n,1),i.timeout&&clearTimeout(i.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(i.value),this.order.splice(this.order.indexOf(r),1),this}setMaxSize(t){for(this.max=t;this.order.length>this.max;){let t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}filter(t){let e=[];for(let r in this.data)for(let n of this.data[r])t(n.value)||e.push(n);for(let t of e)this.remove(t.value.tileID,t)}}class ht{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(t,r,n){let i=String(r);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][i]=this.stateChanges[t][i]||{},e.e(this.stateChanges[t][i],n),null===this.deletedStates[t]){this.deletedStates[t]={};for(let e in this.state[t])e!==i&&(this.deletedStates[t][e]=null)}else if(this.deletedStates[t]&&null===this.deletedStates[t][i]){this.deletedStates[t][i]={};for(let e in this.state[t][i])n[e]||(this.deletedStates[t][i][e]=null)}else for(let e in n)this.deletedStates[t]&&this.deletedStates[t][i]&&null===this.deletedStates[t][i][e]&&delete this.deletedStates[t][i][e]}removeFeatureState(t,e,r){if(null===this.deletedStates[t])return;let n=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},r&&void 0!==e)null!==this.deletedStates[t][n]&&(this.deletedStates[t][n]=this.deletedStates[t][n]||{},this.deletedStates[t][n][r]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][n])for(r in this.deletedStates[t][n]={},this.stateChanges[t][n])this.deletedStates[t][n][r]=null;else this.deletedStates[t][n]=null;else this.deletedStates[t]=null}getState(t,r){let n=String(r),i=e.e({},(this.state[t]||{})[n],(this.stateChanges[t]||{})[n]);if(null===this.deletedStates[t])return{};if(this.deletedStates[t]){let e=this.deletedStates[t][r];if(null===e)return{};for(let t in e)delete i[t]}return i}initializeTileState(t,e){t.setFeatureState(this.state,e)}coalesceChanges(t,r){let n={};for(let t in this.stateChanges){this.state[t]=this.state[t]||{};let r={};for(let n in this.stateChanges[t])this.state[t][n]||(this.state[t][n]={}),e.e(this.state[t][n],this.stateChanges[t][n]),r[n]=this.state[t][n];n[t]=r}for(let t in this.deletedStates){this.state[t]=this.state[t]||{};let r={};if(null===this.deletedStates[t])for(let e in this.state[t])r[e]={},this.state[t][e]={};else for(let e in this.deletedStates[t]){if(null===this.deletedStates[t][e])this.state[t][e]={};else for(let r of Object.keys(this.deletedStates[t][e]))delete this.state[t][e][r];r[e]=this.state[t][e]}n[t]=n[t]||{},e.e(n[t],r)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(n).length)for(let e in t)t[e].setFeatureState(n,r)}}class pt extends e.E{constructor(t,e,r){super(),this.id=t,this.dispatcher=r,this.on("data",(t=>this._dataHandler(t))),this.on("dataloading",(()=>{this._sourceErrored=!1})),this.on("error",(()=>{this._sourceErrored=this._source.loaded()})),this._source=((t,e,r,n)=>{let i=new(it(e.type))(t,e,r,n);if(i.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${i.id}`);return i})(t,e,r,this),this._tiles={},this._cache=new ut(0,(t=>this._unloadTile(t))),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new ht,this._didEmitContent=!1,this._updated=!1}onAdd(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._maxTileCacheZoomLevels=t?t._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(t)}onRemove(t){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(t)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(void 0===this.used&&void 0===this.usedForTerrain||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let t in this._tiles){let e=this._tiles[t];if("loaded"!==e.state&&"errored"!==e.state)return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(t,r,n){return e._(this,void 0,void 0,(function*(){try{yield this._source.loadTile(t),this._tileLoaded(t,r,n)}catch(r){t.state="errored",404!==r.status?this._source.fire(new e.j(r,{tile:t})):this.update(this.transform,this.terrain)}}))}_unloadTile(t){this._source.unloadTile&&this._source.unloadTile(t)}_abortTile(t){this._source.abortTile&&this._source.abortTile(t),this._source.fire(new e.k("dataabort",{tile:t,coord:t.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(t){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let e in this._tiles){let r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map((t=>t.tileID)).sort(ft).map((t=>t.key))}getRenderableIds(t){let r=[];for(let e in this._tiles)this._isIdRenderable(e,t)&&r.push(this._tiles[e]);return t?r.sort(((t,r)=>{let n=t.tileID,i=r.tileID,a=new e.P(n.canonical.x,n.canonical.y)._rotate(this.transform.angle),o=new e.P(i.canonical.x,i.canonical.y)._rotate(this.transform.angle);return n.overscaledZ-i.overscaledZ||o.y-a.y||o.x-a.x})).map((t=>t.tileID.key)):r.map((t=>t.tileID)).sort(ft).map((t=>t.key))}hasRenderableParent(t){let e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)}_isIdRenderable(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let t in this._tiles)"errored"!==this._tiles[t].state&&this._reloadTile(t,"reloading")}}_reloadTile(t,r){return e._(this,void 0,void 0,(function*(){let e=this._tiles[t];e&&("loading"!==e.state&&(e.state=r),yield this._loadTile(e,t,r))}))}_tileLoaded(t,r,n){t.timeAdded=a.now(),"expired"===n&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(r,t),"raster-dem"===this.getSource().type&&t.dem&&this._backfillDEM(t),this._state.initializeTileState(t,this.map?this.map.painter:null),t.aborted||this._source.fire(new e.k("data",{dataType:"source",tile:t,coord:t.tileID}))}_backfillDEM(t){let e=this.getRenderableIds();for(let n=0;n1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}}getTile(t){return this.getTileByID(t.key)}getTileByID(t){return this._tiles[t]}_retainLoadedChildren(t,e,r,n){for(let i in this._tiles){let a=this._tiles[i];if(n[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>r)continue;let o=a.tileID;for(;a&&a.tileID.overscaledZ>e+1;){let t=a.tileID.scaledTo(a.tileID.overscaledZ-1);a=this._tiles[t.key],a&&a.hasData()&&(o=t)}let s=o;for(;s.overscaledZ>e;)if(s=s.scaledTo(s.overscaledZ-1),t[s.key]){n[o.key]=o;break}}}findLoadedParent(t,e){if(t.key in this._loadedParentTiles){let r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(let r=t.overscaledZ-1;r>=e;r--){let e=t.scaledTo(r),n=this._getLoadedTile(e);if(n)return n}}findLoadedSibling(t){return this._getLoadedTile(t)}_getLoadedTile(t){let e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)}updateCacheSize(t){let r=Math.ceil(t.width/this._source.tileSize)+1,n=Math.ceil(t.height/this._source.tileSize)+1,i=Math.floor(r*n*(null===this._maxTileCacheZoomLevels?e.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),a="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,i):i;this._cache.setMaxSize(a)}handleWrapJump(t){let e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){let t={};for(let r in this._tiles){let n=this._tiles[r];n.tileID=n.tileID.unwrapTo(n.tileID.wrap+e),t[n.tileID.key]=n}this._tiles=t;for(let t in this._timers)clearTimeout(this._timers[t]),delete this._timers[t];for(let t in this._tiles)this._setTileReloadTimer(t,this._tiles[t])}}_updateCoveredAndRetainedTiles(t,e,r,n,i,o){let s={},l={},c=Object.keys(t),u=a.now();for(let r of c){let n=t[r],i=this._tiles[r];if(!i||0!==i.fadeEndTime&&i.fadeEndTime<=u)continue;let a=this.findLoadedParent(n,e),o=this.findLoadedSibling(n),c=a||o||null;c&&(this._addTile(c.tileID),s[c.tileID.key]=c.tileID),l[r]=n}this._retainLoadedChildren(l,n,r,t);for(let e in s)t[e]||(this._coveredTiles[e]=!0,t[e]=s[e]);if(o){let e={},r={};for(let t of i)this._tiles[t.key].hasData()?e[t.key]=t:r[t.key]=t;for(let n in r){let i=r[n].children(this._source.maxzoom);this._tiles[i[0].key]&&this._tiles[i[1].key]&&this._tiles[i[2].key]&&this._tiles[i[3].key]&&(e[i[0].key]=t[i[0].key]=i[0],e[i[1].key]=t[i[1].key]=i[1],e[i[2].key]=t[i[2].key]=i[2],e[i[3].key]=t[i[3].key]=i[3],delete r[n])}for(let n in r){let i=r[n],a=this.findLoadedParent(i,this._source.minzoom),o=this.findLoadedSibling(i),s=a||o||null;if(s){e[s.tileID.key]=t[s.tileID.key]=s.tileID;for(let t in e)e[t].isChildOf(s.tileID)&&delete e[t]}}for(let t in this._tiles)e[t]||(this._coveredTiles[t]=!0)}}update(t,r){if(!this._sourceLoaded||this._paused)return;let n;this.transform=t,this.terrain=r,this.updateCacheSize(t),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?n=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((t=>new e.S(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y))):(n=t.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:r}),this._source.hasTile&&(n=n.filter((t=>this._source.hasTile(t))))):n=[];let i=t.coveringZoomLevel(this._source),a=Math.max(i-pt.maxOverzooming,this._source.minzoom),o=Math.max(i+pt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let t={};for(let e of n)if(e.canonical.z>this._source.minzoom){let r=e.scaledTo(e.canonical.z-1);t[r.key]=r;let n=e.scaledTo(Math.max(this._source.minzoom,Math.min(e.canonical.z,5)));t[n.key]=n}n=n.concat(Object.values(t))}let s=0===n.length&&!this._updated&&this._didEmitContent;this._updated=!0,s&&this.fire(new e.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let l=this._updateRetainedTiles(n,i);dt(this._source.type)&&this._updateCoveredAndRetainedTiles(l,a,o,i,n,r);for(let t in l)this._tiles[t].clearFadeHold();let c=e.ab(this._tiles,l);for(let t of c){let e=this._tiles[t];e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(this.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||this._removeTile(t)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)}_updateRetainedTiles(t,e){var r;let n={},i={},a=Math.max(e-pt.maxOverzooming,this._source.minzoom),o=Math.max(e+pt.maxUnderzooming,this._source.minzoom),s={};for(let r of t){let t=this._addTile(r);n[r.key]=r,t.hasData()||ethis._source.maxzoom){let t=o.children(this._source.maxzoom)[0],e=this.getTile(t);if(e&&e.hasData()){n[t.key]=t;continue}}else{let t=o.children(this._source.maxzoom);if(n[t[0].key]&&n[t[1].key]&&n[t[2].key]&&n[t[3].key])continue}let s=t.wasRequested();for(let e=o.overscaledZ-1;e>=a;--e){let a=o.scaledTo(e);if(i[a.key])break;if(i[a.key]=!0,t=this.getTile(a),!t&&s&&(t=this._addTile(a)),t){let e=t.hasData();if((e||!(null!==(r=this.map)&&void 0!==r&&r.cancelPendingTileRequestsWhileZooming)||s)&&(n[a.key]=a),s=t.wasRequested(),e)break}}}return n}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let t in this._tiles){let e,r=[],n=this._tiles[t].tileID;for(;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){e=this._loadedParentTiles[n.key];break}r.push(n.key);let t=n.scaledTo(n.overscaledZ-1);if(e=this._getLoadedTile(t),e)break;n=t}for(let t of r)this._loadedParentTiles[t]=e}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let t in this._tiles){let e=this._tiles[t].tileID,r=this._getLoadedTile(e);this._loadedSiblingTiles[e.key]=r}}_addTile(t){let r=this._tiles[t.key];if(r)return r;r=this._cache.getAndRemove(t),r&&(this._setTileReloadTimer(t.key,r),r.tileID=t,this._state.initializeTileState(r,this.map?this.map.painter:null),this._cacheTimers[t.key]&&(clearTimeout(this._cacheTimers[t.key]),delete this._cacheTimers[t.key],this._setTileReloadTimer(t.key,r)));let n=r;return r||(r=new ct(t,this._source.tileSize*t.overscaleFactor()),this._loadTile(r,t.key,r.state)),r.uses++,this._tiles[t.key]=r,n||this._source.fire(new e.k("dataloading",{tile:r,coord:r.tileID,dataType:"source"})),r}_setTileReloadTimer(t,e){t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);let r=e.getExpiryTimeout();r&&(this._timers[t]=setTimeout((()=>{this._reloadTile(t,"expired"),delete this._timers[t]}),r))}_removeTile(t){let e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))}_dataHandler(t){let e=t.sourceDataType;"source"===t.dataType&&"metadata"===e&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===t.dataType&&"content"===e&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let t in this._tiles)this._removeTile(t);this._cache.reset()}tilesIn(t,r,n){let i=[],a=this.transform;if(!a)return i;let o=n?a.getCameraQueryGeometry(t):t,s=t.map((t=>a.pointCoordinate(t,this.terrain))),l=o.map((t=>a.pointCoordinate(t,this.terrain))),c=this.getIds(),u=1/0,h=1/0,p=-1/0,f=-1/0;for(let t of l)u=Math.min(u,t.x),h=Math.min(h,t.y),p=Math.max(p,t.x),f=Math.max(f,t.y);for(let t=0;t=0&&g[1].y+m>=0){let t=s.map((t=>o.getTilePoint(t))),e=l.map((t=>o.getTilePoint(t)));i.push({tile:n,tileID:o,queryGeometry:t,cameraQueryGeometry:e,scale:d})}}return i}getVisibleCoordinates(t){let e=this.getRenderableIds(t).map((t=>this._tiles[t].tileID));for(let t of e)t.posMatrix=this.transform.calculatePosMatrix(t.toUnwrapped());return e}hasTransition(){if(this._source.hasTransition())return!0;if(dt(this._source.type)){let t=a.now();for(let e in this._tiles)if(this._tiles[e].fadeEndTime>=t)return!0}return!1}setFeatureState(t,e,r){this._state.updateState(t=t||"_geojsonTileLayer",e,r)}removeFeatureState(t,e,r){this._state.removeFeatureState(t=t||"_geojsonTileLayer",e,r)}getFeatureState(t,e){return this._state.getState(t=t||"_geojsonTileLayer",e)}setDependencies(t,e,r){let n=this._tiles[t];n&&n.setDependencies(e,r)}reloadTilesForDependencies(t,e){for(let r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,"reloading");this._cache.filter((r=>!r.hasDependency(t,e)))}}function ft(t,e){let r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function dt(t){return"raster"===t||"image"===t||"video"===t}pt.maxOverzooming=10,pt.maxUnderzooming=3;class mt{constructor(t,e){this.reset(t,e)}reset(t,e){this.points=t||[],this._distances=[0];for(let t=1;t0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))}}function gt(t,e){let r=!0;return"always"===t||"never"!==t&&"never"!==e||(r=!1),r}class yt{constructor(t,e,r){let n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(let t=0;tthis.width||n<0||e>this.height)return[];let s=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(i)return[{key:null,x1:t,y1:e,x2:r,y2:n}];for(let t=0;t0}hitTestCircle(t,e,r,n,i){let a=t-r,o=t+r,s=e-r,l=e+r;if(o<0||a>this.width||l<0||s>this.height)return!1;let c=[];return this._forEachCell(a,s,o,l,this._queryCellCircle,c,{hitTest:!0,overlapMode:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}},i),c.length>0}_queryCell(t,e,r,n,i,a,o,s){let{seenUids:l,hitTest:c,overlapMode:u}=o,h=this.boxCells[i];if(null!==h){let i=this.bboxes;for(let o of h)if(!l.box[o]){l.box[o]=!0;let h=4*o,p=this.boxKeys[o];if(t<=i[h+2]&&e<=i[h+3]&&r>=i[h+0]&&n>=i[h+1]&&(!s||s(p))&&(!c||!gt(u,p.overlapMode))&&(a.push({key:p,x1:i[h],y1:i[h+1],x2:i[h+2],y2:i[h+3]}),c))return!0}}let p=this.circleCells[i];if(null!==p){let i=this.circles;for(let o of p)if(!l.circle[o]){l.circle[o]=!0;let h=3*o,p=this.circleKeys[o];if(this._circleAndRectCollide(i[h],i[h+1],i[h+2],t,e,r,n)&&(!s||s(p))&&(!c||!gt(u,p.overlapMode))){let t=i[h],e=i[h+1],r=i[h+2];if(a.push({key:p,x1:t-r,y1:e-r,x2:t+r,y2:e+r}),c)return!0}}}return!1}_queryCellCircle(t,e,r,n,i,a,o,s){let{circle:l,seenUids:c,overlapMode:u}=o,h=this.boxCells[i];if(null!==h){let t=this.bboxes;for(let e of h)if(!c.box[e]){c.box[e]=!0;let r=4*e,n=this.boxKeys[e];if(this._circleAndRectCollide(l.x,l.y,l.radius,t[r+0],t[r+1],t[r+2],t[r+3])&&(!s||s(n))&&!gt(u,n.overlapMode))return a.push(!0),!0}}let p=this.circleCells[i];if(null!==p){let t=this.circles;for(let e of p)if(!c.circle[e]){c.circle[e]=!0;let r=3*e,n=this.circleKeys[e];if(this._circlesCollide(t[r],t[r+1],t[r+2],l.x,l.y,l.radius)&&(!s||s(n))&&!gt(u,n.overlapMode))return a.push(!0),!0}}}_forEachCell(t,e,r,n,i,a,o,s){let l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),u=this._convertToXCellCoord(r),h=this._convertToYCellCoord(n);for(let p=l;p<=u;p++)for(let l=c;l<=h;l++)if(i.call(this,t,e,r,n,this.xCellCount*l+p,a,o,s))return}_convertToXCellCoord(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))}_convertToYCellCoord(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))}_circlesCollide(t,e,r,n,i,a){let o=n-t,s=i-e,l=r+a;return l*l>o*o+s*s}_circleAndRectCollide(t,e,r,n,i,a,o){let s=(a-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;let c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;let h=l-s,p=u-c;return h*h+p*p<=r*r}}function vt(t,r,n,i,a){let o=e.H();return r?(e.K(o,o,[1/a,1/a,1]),n||e.ad(o,o,i.angle)):e.L(o,i.labelPlaneMatrix,t),o}function xt(t,r,n,i,a){if(r){let r=e.ae(t);return e.K(r,r,[a,a,1]),n||e.ad(r,r,-i.angle),r}return i.glCoordMatrix}function _t(t,r,n,i){let a;i?(a=[t,r,i(t,r),1],e.af(a,a,n)):(a=[t,r,0,1],Ot(a,a,n));let o=a[3];return{point:new e.P(a[0]/o,a[1]/o),signedDistanceFromCamera:o,isOccluded:!1}}function bt(t,e){return.5+t/e*.5}function wt(t,e){return t.x>=-e[0]&&t.x<=e[0]&&t.y>=-e[1]&&t.y<=e[1]}function Tt(t,r,n,i,a,o,s,l,c,u,h,p,f,d,m){let g=i?t.textSizeData:t.iconSizeData,y=e.ag(g,n.transform.zoom),v=[256/n.width*2+1,256/n.height*2+1],x=i?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;x.clear();let _=t.lineVertexArray,b=i?t.text.placedSymbolArray:t.icon.placedSymbolArray,w=n.transform.width/n.transform.height,T=!1;for(let i=0;iMath.abs(n.x-r.x)*i?{useVertical:!0}:(t===e.ah.vertical?r.yn.x)?{needsFlipping:!0}:null}function Mt(t,r,n,i,a,o,s,l,c,u,h){let p,f=n/24,d=r.lineOffsetX*f,m=r.lineOffsetY*f;if(r.numGlyphs>1){let e=r.glyphStartIndex+r.numGlyphs,n=r.lineStartIndex,o=r.lineStartIndex+r.lineLength,c=At(f,l,d,m,i,r,h,t);if(!c)return{notEnoughRoom:!0};let g=_t(c.first.point.x,c.first.point.y,s,t.getElevation).point,y=_t(c.last.point.x,c.last.point.y,s,t.getElevation).point;if(a&&!i){let t=kt(r.writingMode,g,y,u);if(t)return t}p=[c.first];for(let a=r.glyphStartIndex+1;a0?s.point:St(t.tileAnchorPoint,a,n,1,o,t),c=kt(r.writingMode,n,l,u);if(c)return c}let n=Pt(f*l.getoffsetX(r.glyphStartIndex),d,m,i,r.segment,r.lineStartIndex,r.lineStartIndex+r.lineLength,t,h);if(!n||t.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};p=[n]}for(let t of p)e.aj(c,t.point,t.angle);return{}}function St(t,e,r,n,i,a){let o=t.add(t.sub(e)._unit()),s=void 0!==i?_t(o.x,o.y,i,a.getElevation).point:Ct(o.x,o.y,a).point,l=r.sub(s);return r.add(l._mult(n/l.mag()))}function Et(t,r,n){let i=r.projectionCache;if(i.projections[t])return i.projections[t];let a=new e.P(r.lineVertexArray.getx(t),r.lineVertexArray.gety(t)),o=Ct(a.x,a.y,r);if(o.signedDistanceFromCamera>0)return i.projections[t]=o.point,i.anyProjectionOccluded=i.anyProjectionOccluded||o.isOccluded,o.point;let s=t-n.direction;return St(0===n.distanceFromAnchor?r.tileAnchorPoint:new e.P(r.lineVertexArray.getx(s),r.lineVertexArray.gety(s)),a,n.previousVertex,n.absOffsetX-n.distanceFromAnchor+1,void 0,r)}function Ct(t,e,r){let n,i=t+r.translation[0],a=e+r.translation[1];return!r.pitchWithMap&&r.projection.useSpecialProjectionForSymbols?(n=r.projection.projectTileCoordinates(i,a,r.unwrappedTileID,r.getElevation),n.point.x=(.5*n.point.x+.5)*r.width,n.point.y=(.5*-n.point.y+.5)*r.height):(n=_t(i,a,r.labelPlaneMatrix,r.getElevation),n.isOccluded=!1),n}function It(t,e,r){return t._unit()._perp()._mult(e*r)}function Lt(t,r,n,i,a,o,s,l,c){if(l.projectionCache.offsets[t])return l.projectionCache.offsets[t];let u=n.add(r);if(t+c.direction=a)return l.projectionCache.offsets[t]=u,u;let h=Et(t+c.direction,l,c),p=It(h.sub(n),s,c.direction),f=n.add(p),d=h.add(p);return l.projectionCache.offsets[t]=e.ak(o,u,f,d)||u,l.projectionCache.offsets[t]}function Pt(t,e,r,n,i,a,o,s,l){let c=n?t-e:t+e,u=c>0?1:-1,h=0;n&&(u*=-1,h=Math.PI),u<0&&(h+=Math.PI);let p,f=u>0?a+i:a+i+1;s.projectionCache.cachedAnchorPoint?p=s.projectionCache.cachedAnchorPoint:(p=Ct(s.tileAnchorPoint.x,s.tileAnchorPoint.y,s).point,s.projectionCache.cachedAnchorPoint=p);let d,m,g,y=p,v=p,x=0,_=0,b=Math.abs(c),w=[];for(;x+_<=b;){if(f+=u,f=o)return null;x+=_,v=y,m=d;let t={absOffsetX:b,direction:u,distanceFromAnchor:x,previousVertex:v};if(y=Et(f,s,t),0===r)w.push(v),g=y.sub(v);else{let e,n=y.sub(v);e=0===n.mag()?It(Et(f+u,s,t).sub(y),r,u):It(n,r,u),m||(m=v.add(e)),d=Lt(f,e,y,a,o,m,r,s,t),w.push(m),g=d.sub(m)}_=g.mag()}let T=g._mult((b-x)/_)._add(m||v),A=h+Math.atan2(y.y-v.y,y.x-v.x);return w.push(T),{point:T,angle:l?A:0,path:w}}let zt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Dt(t,e){for(let r=0;r=1;t--)l.push(o.path[t]);for(let t=1;tt.signedDistanceFromCamera<=0))?[]:t.map((t=>t.point))}let m=[];if(l.length>0){let t=l[0].clone(),r=l[0].clone();for(let e=1;e=n.x&&r.x<=i.x&&t.y>=n.y&&r.y<=i.y?[l]:r.xi.x||r.yi.y?[]:e.al([l],n.x,n.y,i.x,i.y)}for(let e of m){a.reset(e,.25*r);let n=0;n=a.length<=.5*r?1:Math.ceil(a.paddedLength/h)+1;for(let e=0;e_t(t.x,t.y,r,e.getElevation)))}queryRenderedSymbols(t){if(0===t.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};let r=[],n=1/0,i=1/0,a=-1/0,o=-1/0;for(let s of t){let t=new e.P(s.x+Rt,s.y+Rt);n=Math.min(n,t.x),i=Math.min(i,t.y),a=Math.max(a,t.x),o=Math.max(o,t.y),r.push(t)}let s=this.grid.query(n,i,a,o).concat(this.ignoredGrid.query(n,i,a,o)),l={},c={};for(let t of s){let n=t.key;if(void 0===l[n.bucketInstanceId]&&(l[n.bucketInstanceId]={}),l[n.bucketInstanceId][n.featureIndex])continue;let i=[new e.P(t.x1,t.y1),new e.P(t.x2,t.y1),new e.P(t.x2,t.y2),new e.P(t.x1,t.y2)];e.am(r,i)&&(l[n.bucketInstanceId][n.featureIndex]=!0,void 0===c[n.bucketInstanceId]&&(c[n.bucketInstanceId]=[]),c[n.bucketInstanceId].push(n.featureIndex))}return c}insertCollisionBox(t,e,r,n,i,a){(r?this.ignoredGrid:this.grid).insert({bucketInstanceId:n,featureIndex:i,collisionGroupID:a,overlapMode:e},t[0],t[1],t[2],t[3])}insertCollisionCircles(t,e,r,n,i,a){let o=r?this.ignoredGrid:this.grid,s={bucketInstanceId:n,featureIndex:i,collisionGroupID:a,overlapMode:e};for(let e=0;e=this.screenRightBoundary||nthis.screenBottomBoundary}isInsideGrid(t,e,r,n){return r>=0&&t=0&&ethis.projectAndGetPerspectiveRatio(n,t.x,t.y,i,c)));A=t.some((t=>!t.isOccluded)),T=t.map((t=>t.point))}else A=!0;return{box:e.ao(T),allPointsOccluded:!A}}}function Bt(t,r,n){return r*(e.X/(t.tileSize*Math.pow(2,n-t.tileID.overscaledZ)))}class jt{constructor(t,e,r,n){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):n&&r?1:0,this.placed=r}isHidden(){return 0===this.opacity&&!this.placed}}class Nt{constructor(t,e,r,n,i){this.text=new jt(t?t.text:null,e,r,i),this.icon=new jt(t?t.icon:null,e,n,i)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ut{constructor(t,e,r){this.text=t,this.icon=e,this.skipFade=r}}class Vt{constructor(){this.invProjMatrix=e.H(),this.viewportMatrix=e.H(),this.circles=[]}}class qt{constructor(t,e,r,n,i){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=r,this.bucketIndex=n,this.tileID=i}}class Ht{constructor(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={}}get(t){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[t]){let e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:t=>t.collisionGroupID===e}}return this.collisionGroups[t]}}function Gt(t,r,n,i,a){let{horizontalAlign:o,verticalAlign:s}=e.au(t);return new e.P(-(o-.5)*r+i[0]*a,-(s-.5)*n+i[1]*a)}class Wt{constructor(t,e,r,n,i,a){this.transform=t.clone(),this.terrain=r,this.collisionIndex=new Ft(this.transform,e),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=n,this.retainedQueryData={},this.collisionGroups=new Ht(i),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=a,a&&(a.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(t){let e=this.terrain;return e?(r,n)=>e.getElevation(t,r,n):null}getBucketParts(t,r,n,i){let a=n.getBucket(r),o=n.latestFeatureIndex;if(!a||!o||r.id!==a.layerIds[0])return;let s=n.collisionBoxArray,l=a.layers[0].layout,c=a.layers[0].paint,u=Math.pow(2,this.transform.zoom-n.tileID.overscaledZ),h=n.tileSize/e.X,p=n.tileID.toUnwrapped(),f=this.transform.calculatePosMatrix(p),d="map"===l.get("text-pitch-alignment"),m="map"===l.get("text-rotation-alignment"),g=Bt(n,1,this.transform.zoom),y=this.collisionIndex.mapProjection.translatePosition(this.transform,n,c.get("text-translate"),c.get("text-translate-anchor")),v=this.collisionIndex.mapProjection.translatePosition(this.transform,n,c.get("icon-translate"),c.get("icon-translate-anchor")),x=vt(f,d,m,this.transform,g),_=null;if(d){let t=xt(f,d,m,this.transform,g);_=e.L([],this.transform.labelPlaneMatrix,t)}this.retainedQueryData[a.bucketInstanceId]=new qt(a.bucketInstanceId,o,a.sourceLayerIndex,a.index,n.tileID);let b={bucket:a,layout:l,translationText:y,translationIcon:v,posMatrix:f,unwrappedTileID:p,textLabelPlaneMatrix:x,labelToScreenMatrix:_,scale:u,textPixelRatio:h,holdingForFade:n.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:e.ag(a.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(a.sourceID)};if(i)for(let e of a.sortKeyRanges){let{sortKey:r,symbolInstanceStart:n,symbolInstanceEnd:i}=e;t.push({sortKey:r,symbolInstanceStart:n,symbolInstanceEnd:i,parameters:b})}else t.push({symbolInstanceStart:0,symbolInstanceEnd:a.symbolInstances.length,parameters:b})}attemptAnchorPlacement(t,r,n,i,a,o,s,l,c,u,h,p,f,d,m,g,y,v,x){let _=e.aq[t.textAnchor],b=[t.textOffset0,t.textOffset1],w=Gt(_,n,i,b,a),T=this.collisionIndex.placeCollisionBox(r,p,l,c,u,s,o,g,h.predicate,x,w);if((!v||this.collisionIndex.placeCollisionBox(v,p,l,c,u,s,o,y,h.predicate,x,w).placeable)&&T.placeable){let t;if(this.prevPlacement&&this.prevPlacement.variableOffsets[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID].text&&(t=this.prevPlacement.variableOffsets[f.crossTileID].anchor),0===f.crossTileID)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[f.crossTileID]={textOffset:b,width:n,height:i,anchor:_,textBoxScale:a,prevAnchor:t},this.markUsedJustification(d,_,f,m),d.allowVerticalPlacement&&(this.markUsedOrientation(d,m,f),this.placedOrientations[f.crossTileID]=m),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(t,r,n){let{bucket:i,layout:a,translationText:o,translationIcon:s,posMatrix:l,unwrappedTileID:c,textLabelPlaneMatrix:u,labelToScreenMatrix:h,textPixelRatio:p,holdingForFade:f,collisionBoxArray:d,partiallyEvaluatedTextSize:m,collisionGroup:g}=t.parameters,y=a.get("text-optional"),v=a.get("icon-optional"),x=e.ar(a,"text-overlap","text-allow-overlap"),_="always"===x,b=e.ar(a,"icon-overlap","icon-allow-overlap"),w="always"===b,T="map"===a.get("text-rotation-alignment"),A="map"===a.get("text-pitch-alignment"),k="none"!==a.get("icon-text-fit"),M="viewport-y"===a.get("symbol-z-order"),S=_&&(w||!i.hasIconData()||v),E=w&&(_||!i.hasTextData()||y);!i.collisionArrays&&d&&i.deserializeCollisionBoxes(d);let C=this._getTerrainElevationFunc(this.retainedQueryData[i.bucketInstanceId].tileID),I=(t,d,w)=>{var M,I;if(r[t.crossTileID])return;if(f)return void(this.placements[t.crossTileID]=new Ut(!1,!1,!1));let L=!1,P=!1,z=!0,D=null,O={box:null,placeable:!1,offscreen:null},R={box:null,placeable:!1,offscreen:null},F=null,B=null,j=null,N=0,U=0,V=0;d.textFeatureIndex?N=d.textFeatureIndex:t.useRuntimeCollisionCircles&&(N=t.featureIndex),d.verticalTextFeatureIndex&&(U=d.verticalTextFeatureIndex);let q=d.textBox;if(q){let r=r=>{let n=e.ah.horizontal;if(i.allowVerticalPlacement&&!r&&this.prevPlacement){let e=this.prevPlacement.placedOrientations[t.crossTileID];e&&(this.placedOrientations[t.crossTileID]=e,n=e,this.markUsedOrientation(i,n,t))}return n},a=(r,n)=>{if(i.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&d.verticalTextBox){for(let t of i.writingModes)if(t===e.ah.vertical?(O=n(),R=O):O=r(),O&&O.placeable)break}else O=r()},u=t.textAnchorOffsetStartIndex,h=t.textAnchorOffsetEndIndex;if(h===u){let n=(e,r)=>{let n=this.collisionIndex.placeCollisionBox(e,x,p,l,c,A,T,o,g.predicate,C);return n&&n.placeable&&(this.markUsedOrientation(i,r,t),this.placedOrientations[t.crossTileID]=r),n};a((()=>n(q,e.ah.horizontal)),(()=>{let r=d.verticalTextBox;return i.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&r?n(r,e.ah.vertical):{box:null,offscreen:null}})),r(O&&O.placeable)}else{let f=e.aq[null===(I=null===(M=this.prevPlacement)||void 0===M?void 0:M.variableOffsets[t.crossTileID])||void 0===I?void 0:I.anchor],m=(r,a,d)=>{let m=r.x2-r.x1,y=r.y2-r.y1,v=t.textBoxScale,_=k&&"never"===b?a:null,w=null,M="never"===x?1:2,S="never";f&&M++;for(let e=0;em(q,d.iconBox,e.ah.horizontal)),(()=>{let r=d.verticalTextBox;return i.allowVerticalPlacement&&(!O||!O.placeable)&&t.numVerticalGlyphVertices>0&&r?m(r,d.verticalIconBox,e.ah.vertical):{box:null,occluded:!0,offscreen:null}})),O&&(L=O.placeable,z=O.offscreen);let y=r(O&&O.placeable);if(!L&&this.prevPlacement){let e=this.prevPlacement.variableOffsets[t.crossTileID];e&&(this.variableOffsets[t.crossTileID]=e,this.markUsedJustification(i,e.anchor,t,y))}}}if(F=O,L=F&&F.placeable,z=F&&F.offscreen,t.useRuntimeCollisionCircles){let r=i.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex),s=e.ai(i.textSizeData,m,r),p=a.get("text-padding");B=this.collisionIndex.placeCollisionCircles(x,r,i.lineVertexArray,i.glyphOffsetArray,s,l,c,u,h,n,A,g.predicate,t.collisionCircleDiameter,p,o,C),B.circles.length&&B.collisionDetected&&!n&&e.w("Collisions detected, but collision boxes are not shown"),L=_||B.circles.length>0&&!B.collisionDetected,z=z&&B.offscreen}if(d.iconFeatureIndex&&(V=d.iconFeatureIndex),d.iconBox){let t=t=>this.collisionIndex.placeCollisionBox(t,b,p,l,c,A,T,s,g.predicate,C,k&&D?D:void 0);R&&R.placeable&&d.verticalIconBox?(j=t(d.verticalIconBox),P=j.placeable):(j=t(d.iconBox),P=j.placeable),z=z&&j.offscreen}let H=y||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,G=v||0===t.numIconVertices;H||G?G?H||(P=P&&L):L=P&&L:P=L=P&&L;let W=P&&j.placeable;if(L&&F.placeable&&this.collisionIndex.insertCollisionBox(F.box,x,a.get("text-ignore-placement"),i.bucketInstanceId,R&&R.placeable&&U?U:N,g.ID),W&&this.collisionIndex.insertCollisionBox(j.box,b,a.get("icon-ignore-placement"),i.bucketInstanceId,V,g.ID),B&&L&&this.collisionIndex.insertCollisionCircles(B.circles,x,a.get("text-ignore-placement"),i.bucketInstanceId,N,g.ID),n&&this.storeCollisionData(i.bucketInstanceId,w,d,F,j,B),0===t.crossTileID)throw new Error("symbolInstance.crossTileID can't be 0");if(0===i.bucketInstanceId)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[t.crossTileID]=new Ut(L||S,P||E,z||i.justReloaded),r[t.crossTileID]=!0};if(M){if(0!==t.symbolInstanceStart)throw new Error("bucket.bucketInstanceId should be 0");let e=i.getSortedSymbolIndexes(this.transform.angle);for(let t=e.length-1;t>=0;--t){let r=e[t];I(i.symbolInstances.get(r),i.collisionArrays[r],r)}}else for(let e=t.symbolInstanceStart;e=0&&(t.text.placedSymbolArray.get(e).crossTileID=a>=0&&e!==a?0:n.crossTileID)}markUsedOrientation(t,r,n){let i=r===e.ah.horizontal||r===e.ah.horizontalOnly?r:0,a=r===e.ah.vertical?r:0,o=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];for(let e of o)t.text.placedSymbolArray.get(e).placedOrientation=i;n.verticalPlacedTextSymbolIndex&&(t.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).placedOrientation=a)}commit(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;let e=this.prevPlacement,r=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;let n=e?e.symbolFadeChange(t):1,i=e?e.opacities:{},a=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(let t in this.placements){let e=this.placements[t],a=i[t];a?(this.opacities[t]=new Nt(a,n,e.text,e.icon),r=r||e.text!==a.text.placed||e.icon!==a.icon.placed):(this.opacities[t]=new Nt(null,n,e.text,e.icon,e.skipFade),r=r||e.text||e.icon)}for(let t in i){let e=i[t];if(!this.opacities[t]){let i=new Nt(e,n,!1,!1);i.isHidden()||(this.opacities[t]=i,r=r||e.text.placed||e.icon.placed)}}for(let t in a)this.variableOffsets[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.variableOffsets[t]=a[t]);for(let t in o)this.placedOrientations[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.placedOrientations[t]=o[t]);if(e&&void 0===e.lastPlacementChangeTime)throw new Error("Last placement time for previous placement is not defined");r?this.lastPlacementChangeTime=t:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)}updateLayerOpacities(t,e){let r={};for(let n of e){let e=n.getBucket(t);e&&n.latestFeatureIndex&&t.id===e.layerIds[0]&&this.updateBucketOpacities(e,n.tileID,r,n.collisionBoxArray)}}updateBucketOpacities(t,r,n,i){t.hasTextData()&&(t.text.opacityVertexArray.clear(),t.text.hasVisibleVertices=!1),t.hasIconData()&&(t.icon.opacityVertexArray.clear(),t.icon.hasVisibleVertices=!1),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();let a=t.layers[0],o=a.layout,s=new Nt(null,0,!1,!1,!0),l=o.get("text-allow-overlap"),c=o.get("icon-allow-overlap"),u=a._unevaluatedLayout.hasValue("text-variable-anchor")||a._unevaluatedLayout.hasValue("text-variable-anchor-offset"),h="map"===o.get("text-rotation-alignment"),p="map"===o.get("text-pitch-alignment"),f="none"!==o.get("icon-text-fit"),d=new Nt(null,0,l&&(c||!t.hasIconData()||o.get("icon-optional")),c&&(l||!t.hasTextData()||o.get("text-optional")),!0);!t.collisionArrays&&i&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(i);let m=(t,e,r)=>{for(let n=0;n0,v=this.placedOrientations[i.crossTileID],x=v===e.ah.vertical,_=v===e.ah.horizontal||v===e.ah.horizontalOnly;if(a>0||o>0){let e=ee(c.text);m(t.text,a,x?re:e),m(t.text,o,_?re:e);let r=c.text.isHidden();[i.rightJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.leftJustifiedTextSymbolIndex].forEach((e=>{e>=0&&(t.text.placedSymbolArray.get(e).hidden=r||x?1:0)})),i.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).hidden=r||_?1:0);let n=this.variableOffsets[i.crossTileID];n&&this.markUsedJustification(t,n.anchor,i,v);let s=this.placedOrientations[i.crossTileID];s&&(this.markUsedJustification(t,"left",i,s),this.markUsedOrientation(t,s,i))}if(y){let e=ee(c.icon),r=!(f&&i.verticalPlacedIconSymbolIndex&&x);i.placedIconSymbolIndex>=0&&(m(t.icon,i.numIconVertices,r?e:re),t.icon.placedSymbolArray.get(i.placedIconSymbolIndex).hidden=c.icon.isHidden()),i.verticalPlacedIconSymbolIndex>=0&&(m(t.icon,i.numVerticalIconVertices,r?re:e),t.icon.placedSymbolArray.get(i.verticalPlacedIconSymbolIndex).hidden=c.icon.isHidden())}let b=g&&g.has(r)?g.get(r):{text:null,icon:null};if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){let n=t.collisionArrays[r];if(n){let r=new e.P(0,0);if(n.textBox||n.verticalTextBox){let e=!0;if(u){let t=this.variableOffsets[l];t?(r=Gt(t.anchor,t.width,t.height,t.textOffset,t.textBoxScale),h&&r._rotate(p?this.transform.angle:-this.transform.angle)):e=!1}if(n.textBox||n.verticalTextBox){let i;n.textBox&&(i=x),n.verticalTextBox&&(i=_),Zt(t.textCollisionBox.collisionVertexArray,c.text.placed,!e||i,b.text,r.x,r.y)}}if(n.iconBox||n.verticalIconBox){let e,i=!(_||!n.verticalIconBox);n.iconBox&&(e=i),n.verticalIconBox&&(e=!i),Zt(t.iconCollisionBox.collisionVertexArray,c.icon.placed,e,b.icon,f?r.x:0,f?r.y:0)}}}}if(t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.text.opacityVertexArray.length!==t.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${t.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${t.text.layoutVertexArray.length}) / 4`);if(t.icon.opacityVertexArray.length!==t.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${t.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${t.icon.layoutVertexArray.length}) / 4`);if(t.bucketInstanceId in this.collisionCircleArrays){let e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId]}}symbolFadeChange(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(t){return Math.max(0,(this.transform.zoom-t)/1.5)}hasTransitions(t){return this.stale||t-this.lastPlacementChangeTimet}setStale(){this.stale=!0}}function Zt(t,e,r,n,i,a){n&&0!==n.length||(n=[0,0,0,0]);let o=n[0]-Rt,s=n[1]-Rt,l=n[2]-Rt,c=n[3]-Rt;t.emplaceBack(e?1:0,r?1:0,i||0,a||0,o,s),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,l,s),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,l,c),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,o,c)}let Yt=Math.pow(2,25),Xt=Math.pow(2,24),$t=Math.pow(2,17),Kt=Math.pow(2,16),Jt=Math.pow(2,9),Qt=Math.pow(2,8),te=Math.pow(2,1);function ee(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;let e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*Yt+e*Xt+r*$t+e*Kt+r*Jt+e*Qt+r*te+e}let re=0;function ne(){return{isOccluded:(t,e,r)=>!1,getPitchedTextCorrection:(t,e,r)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(t,e,r,n){throw new Error("Not implemented.")},translatePosition:(t,e,r,n)=>function(t,e,r,n,i=!1){if(!r[0]&&!r[1])return[0,0];let a=i?"map"===n?t.angle:0:"viewport"===n?-t.angle:0;if(a){let t=Math.sin(a),e=Math.cos(a);r=[r[0]*e-r[1]*t,r[0]*t+r[1]*e]}return[i?r[0]:Bt(e,r[0],t.zoom),i?r[1]:Bt(e,r[1],t.zoom)]}(t,e,r,n),getCircleRadiusCorrection:t=>1}}class ie{constructor(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&!t.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(t,e,r,n,i){let a=this._bucketParts;for(;this._currentTileIndext.sortKey-e.sortKey)));this._currentPartIndex!this._forceFullPlacement&&a.now()-n>2;for(;this._currentPlacementIndex>=0;){let n=e[t[this._currentPlacementIndex]],a=this.placement.collisionIndex.transform.zoom;if("symbol"===n.type&&(!n.minzoom||n.minzoom<=a)&&(!n.maxzoom||n.maxzoom>a)){if(this._inProgressLayer||(this._inProgressLayer=new ie(n)),this._inProgressLayer.continuePlacement(r[n.source],this.placement,this._showCollisionBoxes,n,i))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(t){return this.placement.commit(t),this.placement}}let oe=512/e.X/2;class se{constructor(t,r,n){this.tileID=t,this.bucketInstanceId=n,this._symbolsByKey={};let i=new Map;for(let t=0;t({x:Math.floor(t.anchorX*oe),y:Math.floor(t.anchorY*oe)}))),crossTileIDs:r.map((t=>t.crossTileID))};if(n.positions.length>128){let t=new e.av(n.positions.length,16,Uint16Array);for(let{x:e,y:r}of n.positions)t.add(e,r);t.finish(),delete n.positions,n.index=t}this._symbolsByKey[t]=n}}getScaledCoordinates(t,r){let{x:n,y:i,z:a}=this.tileID.canonical,{x:o,y:s,z:l}=r.canonical,c=oe/Math.pow(2,l-a),u=(s*e.X+t.anchorY)*c,h=i*e.X*oe;return{x:Math.floor((o*e.X+t.anchorX)*c-n*e.X*oe),y:Math.floor(u-h)}}findMatches(t,e,r){let n=this.tileID.canonical.zt))}}class le{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class ce{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(t){let e=Math.round((t-this.lng)/360);if(0!==e)for(let t in this.indexes){let r=this.indexes[t],n={};for(let t in r){let i=r[t];i.tileID=i.tileID.unwrapTo(i.tileID.wrap+e),n[i.tileID.key]=i}this.indexes[t]=n}this.lng=t}addBucket(t,e,r){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key])}for(let t=0;tt.overscaledZ)for(let r in i){let a=i[r];a.tileID.isChildOf(t)&&a.findMatches(e.symbolInstances,t,n)}else{let a=i[t.scaledTo(Number(r)).key];a&&a.findMatches(e.symbolInstances,t,n)}}for(let t=0;t{e[t]=!0}));for(let t in this.layerIndexes)e[t]||delete this.layerIndexes[t]}}let he=(t,r)=>e.t(t,r&&r.filter((t=>"source.canvas"!==t.identifier))),pe=e.aw();class fe extends e.E{constructor(t,r={}){super(),this._rtlPluginLoaded=()=>{for(let t in this.sourceCaches){let e=this.sourceCaches[t].getSource().type;"vector"!==e&&"geojson"!==e||this.sourceCaches[t].reload()}},this.map=t,this.dispatcher=new U(N(),t._getMapId()),this.dispatcher.registerMessageHandler("GG",((t,e)=>this.getGlyphs(t,e))),this.dispatcher.registerMessageHandler("GI",((t,e)=>this.getImages(t,e))),this.imageManager=new A,this.imageManager.setEventedParent(this),this.glyphManager=new C(t._requestManager,r.localIdeographFontFamily),this.lineAtlas=new D(256,512),this.crossTileSymbolIndex=new ue,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",e.ay()),lt().on(at,this._rtlPluginLoaded),this.on("data",(t=>{if("source"!==t.dataType||"metadata"!==t.sourceDataType)return;let e=this.sourceCaches[t.sourceId];if(!e)return;let r=e.getSource();if(r&&r.vectorLayerIds)for(let t in this._layers){let e=this._layers[t];e.source===r.id&&this._validateLayer(e)}}))}loadURL(t,r={},n){this.fire(new e.k("dataloading",{dataType:"style"})),r.validate="boolean"!=typeof r.validate||r.validate;let i=this.map._requestManager.transformRequest(t,"Style");this._loadStyleRequest=new AbortController;let a=this._loadStyleRequest;e.h(i,this._loadStyleRequest).then((t=>{this._loadStyleRequest=null,this._load(t.data,r,n)})).catch((t=>{this._loadStyleRequest=null,t&&!a.signal.aborted&&this.fire(new e.j(t))}))}loadJSON(t,r={},n){this.fire(new e.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,a.frameAsync(this._frameRequest).then((()=>{this._frameRequest=null,r.validate=!1!==r.validate,this._load(t,r,n)})).catch((()=>{}))}loadEmpty(){this.fire(new e.k("dataloading",{dataType:"style"})),this._load(pe,{validate:!1})}_load(t,r,n){var i;let a=r.transformStyle?r.transformStyle(n,t):t;if(!r.validate||!he(this,e.u(a))){this._loaded=!0,this.stylesheet=a;for(let t in a.sources)this.addSource(t,a.sources[t],{validate:!1});a.sprite?this._loadSprite(a.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(a.glyphs),this._createLayers(),this.light=new L(this.stylesheet.light),this.sky=new z(this.stylesheet.sky),this.map.setTerrain(null!==(i=this.stylesheet.terrain)&&void 0!==i?i:null),this.fire(new e.k("data",{dataType:"style"})),this.fire(new e.k("style.load"))}}_createLayers(){let t=e.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",t),this._order=t.map((t=>t.id)),this._layers={},this._serializedLayers=null;for(let r of t){let t=e.aA(r);t.setEventedParent(this,{layer:{id:r.id}}),this._layers[r.id]=t}}_loadSprite(t,r=!1,n=void 0){let i;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(t,r,n,i){return e._(this,void 0,void 0,(function*(){let o=_(t),s=n>1?"@2x":"",l={},c={};for(let{id:t,url:n}of o){let a=r.transformRequest(b(n,s,".json"),"SpriteJSON");l[t]=e.h(a,i);let o=r.transformRequest(b(n,s,".png"),"SpriteImage");c[t]=f.getImage(o,i)}return yield Promise.all([...Object.values(l),...Object.values(c)]),function(t,r){return e._(this,void 0,void 0,(function*(){let e={};for(let n in t){e[n]={};let i=a.getImageCanvasContext((yield r[n]).data),o=(yield t[n]).data;for(let t in o){let{width:r,height:a,x:s,y:l,sdf:c,pixelRatio:u,stretchX:h,stretchY:p,content:f,textFitWidth:d,textFitHeight:m}=o[t];e[n][t]={data:null,pixelRatio:u,sdf:c,stretchX:h,stretchY:p,content:f,textFitWidth:d,textFitHeight:m,spriteData:{width:r,height:a,x:s,y:l,context:i}}}}return e}))}(l,c)}))}(t,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then((t=>{if(this._spriteRequest=null,t)for(let e in t){this._spritesImagesIds[e]=[];let n=this._spritesImagesIds[e]?this._spritesImagesIds[e].filter((e=>!(e in t))):[];for(let t of n)this.imageManager.removeImage(t),this._changedImages[t]=!0;for(let n in t[e]){let i="default"===e?n:`${e}:${n}`;this._spritesImagesIds[e].push(i),i in this.imageManager.images?this.imageManager.updateImage(i,t[e][n],!1):this.imageManager.addImage(i,t[e][n]),r&&(this._changedImages[i]=!0)}}})).catch((t=>{this._spriteRequest=null,i=t,this.fire(new e.j(i))})).finally((()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),r&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"})),n&&n(i)}))}_unloadSprite(){for(let t of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(t),this._changedImages[t]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}))}_validateLayer(t){let r=this.sourceCaches[t.source];if(!r)return;let n=t.sourceLayer;if(!n)return;let i=r.getSource();("geojson"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(n))&&this.fire(new e.j(new Error(`Source layer "${n}" does not exist on source "${i.id}" as specified by style layer "${t.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(t,r=!1){let n=this._serializedAllLayers();if(!t||0===t.length)return Object.values(r?e.aB(n):n);let i=[];for(let a of t)if(n[a]){let t=r?e.aB(n[a]):n[a];i.push(t)}return i}_serializedAllLayers(){let t=this._serializedLayers;if(t)return t;t=this._serializedLayers={};let e=Object.keys(this._layers);for(let r of e){let e=this._layers[r];"custom"!==e.type&&(t[r]=e.serialize())}return t}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(let t in this._layers)if(this._layers[t].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(t){if(!this._loaded)return;let r=this._changed;if(r){let e=Object.keys(this._updatedLayers),r=Object.keys(this._removedLayers);(e.length||r.length)&&this._updateWorkerLayers(e,r);for(let t in this._updatedSources){let e=this._updatedSources[t];if("reload"===e)this._reloadSource(t);else{if("clear"!==e)throw new Error(`Invalid action ${e}`);this._clearSource(t)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.sky.updateTransitions(t),this._resetUpdates()}let n={};for(let t in this.sourceCaches){let e=this.sourceCaches[t];n[t]=e.used,e.used=!1}for(let e of this._order){let r=this._layers[e];r.recalculate(t,this._availableImages),!r.isHidden(t.zoom)&&r.source&&(this.sourceCaches[r.source].used=!0)}for(let t in n){let r=this.sourceCaches[t];!!n[t]!=!!r.used&&r.fire(new e.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:t}))}this.light.recalculate(t),this.sky.recalculate(t),this.z=t.zoom,r&&this.fire(new e.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let t=Object.keys(this._changedImages);if(t.length){for(let e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies(["icons","patterns"],t);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let t in this.sourceCaches)this.sourceCaches[t].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(t,e){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(t,!1),removedIds:e})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(t,r={}){var n;this._checkLoaded();let i=this.serialize();if(t=r.transformStyle?r.transformStyle(i,t):t,(null===(n=r.validate)||void 0===n||n)&&he(this,e.u(t)))return!1;(t=e.aB(t)).layers=e.az(t.layers);let a=e.aC(i,t),o=this._getOperationsToPerform(a);if(o.unimplemented.length>0)throw new Error(`Unimplemented: ${o.unimplemented.join(", ")}.`);if(0===o.operations.length)return!1;for(let t of o.operations)t();return this.stylesheet=t,this._serializedLayers=null,!0}_getOperationsToPerform(t){let e=[],r=[];for(let n of t)switch(n.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":e.push((()=>this.addLayer.apply(this,n.args)));break;case"removeLayer":e.push((()=>this.removeLayer.apply(this,n.args)));break;case"setPaintProperty":e.push((()=>this.setPaintProperty.apply(this,n.args)));break;case"setLayoutProperty":e.push((()=>this.setLayoutProperty.apply(this,n.args)));break;case"setFilter":e.push((()=>this.setFilter.apply(this,n.args)));break;case"addSource":e.push((()=>this.addSource.apply(this,n.args)));break;case"removeSource":e.push((()=>this.removeSource.apply(this,n.args)));break;case"setLayerZoomRange":e.push((()=>this.setLayerZoomRange.apply(this,n.args)));break;case"setLight":e.push((()=>this.setLight.apply(this,n.args)));break;case"setGeoJSONSourceData":e.push((()=>this.setGeoJSONSourceData.apply(this,n.args)));break;case"setGlyphs":e.push((()=>this.setGlyphs.apply(this,n.args)));break;case"setSprite":e.push((()=>this.setSprite.apply(this,n.args)));break;case"setSky":e.push((()=>this.setSky.apply(this,n.args)));break;case"setTerrain":e.push((()=>this.map.setTerrain.apply(this,n.args)));break;case"setTransition":e.push((()=>{}));break;default:r.push(n.command)}return{operations:e,unimplemented:r}}addImage(t,r){if(this.getImage(t))return this.fire(new e.j(new Error(`An image named "${t}" already exists.`)));this.imageManager.addImage(t,r),this._afterImageUpdated(t)}updateImage(t,e){this.imageManager.updateImage(t,e)}getImage(t){return this.imageManager.getImage(t)}removeImage(t){if(!this.getImage(t))return this.fire(new e.j(new Error(`An image named "${t}" does not exist.`)));this.imageManager.removeImage(t),this._afterImageUpdated(t)}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(t,r,n={}){if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error(`Source "${t}" already exists.`);if(!r.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(r).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(r.type)>=0&&this._validate(e.u.source,`sources.${t}`,r,null,n))return;this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);let i=this.sourceCaches[t]=new pt(t,r,this.dispatcher);i.style=this,i.setEventedParent(this,(()=>({isSourceLoaded:i.loaded(),source:i.serialize(),sourceId:t}))),i.onAdd(this.map),this._changed=!0}removeSource(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");for(let r in this._layers)if(this._layers[r].source===t)return this.fire(new e.j(new Error(`Source "${t}" cannot be removed while layer "${r}" is using it.`)));let r=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],r.fire(new e.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:t})),r.setEventedParent(null),r.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(t,e){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error(`There is no source with this ID=${t}`);let r=this.sourceCaches[t].getSource();if("geojson"!==r.type)throw new Error(`geojsonSource.type is ${r.type}, which is !== 'geojson`);r.setData(e),this._changed=!0}getSource(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()}addLayer(t,r,n={}){this._checkLoaded();let i,a=t.id;if(this.getLayer(a))return void this.fire(new e.j(new Error(`Layer "${a}" already exists on this map.`)));if("custom"===t.type){if(he(this,e.aD(t)))return;i=e.aA(t)}else{if("source"in t&&"object"==typeof t.source&&(this.addSource(a,t.source),t=e.aB(t),t=e.e(t,{source:a})),this._validate(e.u.layer,`layers.${a}`,t,{arrayIndex:-1},n))return;i=e.aA(t),this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}})}let o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new e.j(new Error(`Cannot add layer "${a}" before non-existing layer "${r}".`)));else{if(this._order.splice(o,0,a),this._layerOrderChanged=!0,this._layers[a]=i,this._removedLayers[a]&&i.source&&"custom"!==i.type){let t=this._removedLayers[a];delete this._removedLayers[a],t.type!==i.type?this._updatedSources[i.source]="clear":(this._updatedSources[i.source]="reload",this.sourceCaches[i.source].pause())}this._updateLayer(i),i.onAdd&&i.onAdd(this.map)}}moveLayer(t,r){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.j(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===r)return;let n=this._order.indexOf(t);this._order.splice(n,1);let i=r?this._order.indexOf(r):this._order.length;r&&-1===i?this.fire(new e.j(new Error(`Cannot move layer "${t}" before non-existing layer "${r}".`))):(this._order.splice(i,0,t),this._layerOrderChanged=!0)}removeLayer(t){this._checkLoaded();let r=this._layers[t];if(!r)return void this.fire(new e.j(new Error(`Cannot remove non-existing layer "${t}".`)));r.setEventedParent(null);let n=this._order.indexOf(t);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=r,delete this._layers[t],this._serializedLayers&&delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],r.onRemove&&r.onRemove(this.map)}getLayer(t){return this._layers[t]}getLayersOrder(){return[...this._order]}hasLayer(t){return t in this._layers}setLayerZoomRange(t,r,n){this._checkLoaded();let i=this.getLayer(t);i?i.minzoom===r&&i.maxzoom===n||(null!=r&&(i.minzoom=r),null!=n&&(i.maxzoom=n),this._updateLayer(i)):this.fire(new e.j(new Error(`Cannot set the zoom range of non-existing layer "${t}".`)))}setFilter(t,r,n={}){this._checkLoaded();let i=this.getLayer(t);if(i){if(!e.aE(i.filter,r))return null==r?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(e.u.filter,`layers.${i.id}.filter`,r,null,n)||(i.filter=e.aB(r),this._updateLayer(i)))}else this.fire(new e.j(new Error(`Cannot filter non-existing layer "${t}".`)))}getFilter(t){return e.aB(this.getLayer(t).filter)}setLayoutProperty(t,r,n,i={}){this._checkLoaded();let a=this.getLayer(t);a?e.aE(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new e.j(new Error(`Cannot style non-existing layer "${t}".`)))}getLayoutProperty(t,r){let n=this.getLayer(t);if(n)return n.getLayoutProperty(r);this.fire(new e.j(new Error(`Cannot get style of non-existing layer "${t}".`)))}setPaintProperty(t,r,n,i={}){this._checkLoaded();let a=this.getLayer(t);a?e.aE(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[t]=!0,this._serializedLayers=null):this.fire(new e.j(new Error(`Cannot style non-existing layer "${t}".`)))}getPaintProperty(t,e){return this.getLayer(t).getPaintProperty(e)}setFeatureState(t,r){this._checkLoaded();let n=t.source,i=t.sourceLayer,a=this.sourceCaches[n];if(void 0===a)return void this.fire(new e.j(new Error(`The source '${n}' does not exist in the map's style.`)));let o=a.getSource().type;"geojson"===o&&i?this.fire(new e.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===t.id&&this.fire(new e.j(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,t.id,r)):this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(t,r){this._checkLoaded();let n=t.source,i=this.sourceCaches[n];if(void 0===i)return void this.fire(new e.j(new Error(`The source '${n}' does not exist in the map's style.`)));let a=i.getSource().type,o="vector"===a?t.sourceLayer:void 0;"vector"!==a||o?r&&"string"!=typeof t.id&&"number"!=typeof t.id?this.fire(new e.j(new Error("A feature id is required to remove its specific state property."))):i.removeFeatureState(o,t.id,r):this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(t){this._checkLoaded();let r=t.source,n=t.sourceLayer,i=this.sourceCaches[r];if(void 0!==i)return"vector"!==i.getSource().type||n?(void 0===t.id&&this.fire(new e.j(new Error("The feature id parameter must be provided."))),i.getFeatureState(n,t.id)):void this.fire(new e.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new e.j(new Error(`The source '${r}' does not exist in the map's style.`)))}getTransition(){return e.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let t=e.aF(this.sourceCaches,(t=>t.serialize())),r=this._serializeByIds(this._order,!0),n=this.map.getTerrain()||void 0,i=this.stylesheet;return e.aG({version:i.version,name:i.name,metadata:i.metadata,light:i.light,sky:i.sky,center:i.center,zoom:i.zoom,bearing:i.bearing,pitch:i.pitch,sprite:i.sprite,glyphs:i.glyphs,transition:i.transition,sources:t,layers:r,terrain:n},(t=>void 0!==t))}_updateLayer(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(t){let e=t=>"fill-extrusion"===this._layers[t].type,r={},n=[];for(let i=this._order.length-1;i>=0;i--){let a=this._order[i];if(e(a)){r[a]=i;for(let e of t){let t=e[a];if(t)for(let e of t)n.push(e)}}}n.sort(((t,e)=>e.intersectionZ-t.intersectionZ));let i=[];for(let a=this._order.length-1;a>=0;a--){let o=this._order[a];if(e(o))for(let t=n.length-1;t>=0;t--){let e=n[t].feature;if(r[e.layer.id]{let n=r.featureSortOrder;if(n){let r=n.indexOf(t.featureIndex);return n.indexOf(e.featureIndex)-r}return e.featureIndex-t.featureIndex}));for(let t of i)e.push(t)}}for(let e in s)s[e].forEach((n=>{let i=n.feature,a=r[t[e].source].getFeatureState(i.layer["source-layer"],i.id);i.source=i.layer.source,i.layer["source-layer"]&&(i.sourceLayer=i.layer["source-layer"]),i.state=a}));return s}(this._layers,o,this.sourceCaches,t,r,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(a)}querySourceFeatures(t,r){r&&r.filter&&this._validate(e.u.filter,"querySourceFeatures.filter",r.filter,null,r);let n=this.sourceCaches[t];return n?function(t,e){let r=t.getRenderableIds().map((e=>t.getTileByID(e))),n=[],i={};for(let t=0;tt.getTileByID(e))).sort(((t,e)=>e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)))}let n=this.crossTileSymbolIndex.addLayer(r,l[r.source],t.center.lng);o=o||n}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((i=i||this._layerOrderChanged||0===r)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(a.now(),t.zoom))&&(this.pauseablePlacement=new ae(t,this.map.terrain,this._order,i,e,r,n,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(a.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(let t of this._order){let e=this._layers[t];"symbol"===e.type&&this.placement.updateLayerOpacities(e,l[e.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(a.now())}_releaseSymbolFadeTiles(){for(let t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()}getImages(t,r){return e._(this,void 0,void 0,(function*(){let t=yield this.imageManager.getImages(r.icons);this._updateTilesForChangedImages();let e=this.sourceCaches[r.source];return e&&e.setDependencies(r.tileID.key,r.type,r.icons),t}))}getGlyphs(t,r){return e._(this,void 0,void 0,(function*(){let t=yield this.glyphManager.getGlyphs(r.stacks),e=this.sourceCaches[r.source];return e&&e.setDependencies(r.tileID.key,r.type,[""]),t}))}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(t,r={}){this._checkLoaded(),t&&this._validate(e.u.glyphs,"glyphs",t,null,r)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=t,this.glyphManager.entries={},this.glyphManager.setURL(t))}addSprite(t,r,n={},i){this._checkLoaded();let a=[{id:t,url:r}],o=[..._(this.stylesheet.sprite),...a];this._validate(e.u.sprite,"sprite",o,null,n)||(this.stylesheet.sprite=o,this._loadSprite(a,!0,i))}removeSprite(t){this._checkLoaded();let r=_(this.stylesheet.sprite);if(r.find((e=>e.id===t))){if(this._spritesImagesIds[t])for(let e of this._spritesImagesIds[t])this.imageManager.removeImage(e),this._changedImages[e]=!0;r.splice(r.findIndex((e=>e.id===t)),1),this.stylesheet.sprite=r.length>0?r:void 0,delete this._spritesImagesIds[t],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new e.k("data",{dataType:"style"}))}else this.fire(new e.j(new Error(`Sprite "${t}" doesn't exists on this map.`)))}getSprite(){return _(this.stylesheet.sprite)}setSprite(t,r={},n){this._checkLoaded(),t&&this._validate(e.u.sprite,"sprite",t,null,r)||(this.stylesheet.sprite=t,t?this._loadSprite(t,!0,n):(this._unloadSprite(),n&&n(null)))}}var de=e.Y([{name:"a_pos",type:"Int16",components:2}]);let me={prelude:ge("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\n","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}\n#ifdef TERRAIN3D\nuniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;\n#endif\nconst highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {\n#ifdef TERRAIN3D\nhighp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));\n#else\nreturn 1.0;\n#endif\n}float calculate_visibility(vec4 pos) {\n#ifdef TERRAIN3D\nvec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;\n#else\nreturn 1.0;\n#endif\n}float ele(vec2 pos) {\n#ifdef TERRAIN3D\nvec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;\n#else\nreturn 0.0;\n#endif\n}float get_elevation(vec2 pos) {\n#ifdef TERRAIN3D\nvec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;\n#else\nreturn 0.0;\n#endif\n}"),background:ge("uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:ge("uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:ge("varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}"),clippingMask:ge("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:ge("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}"),heatmapTexture:ge("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:ge("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:ge("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:ge("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:ge("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}"),fillOutline:ge("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillOutlinePattern:ge("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillPattern:ge("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}"),fillExtrusion:ge("varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 normal=a_normal_ed.xyz;\n#ifdef TERRAIN3D\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\n#else\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\n#endif\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}"),fillExtrusionPattern:ge("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;\n#ifdef TERRAIN3D\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\n#else\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\n#endif\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\n? a_pos\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}"),hillshadePrepare:ge("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:ge("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\n#define PI 3.141592653589793\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:ge("uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),lineGradient:ge("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),linePattern:ge("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}"),lineSDF:ge("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}"),raster:ge("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:ge("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}"),symbolSDF:ge("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}"),symbolTextAndIcon:ge("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}"),terrain:ge("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:ge("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:ge("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:ge("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function ge(t,e){let r=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n=e.match(/attribute ([\w]+) ([\w]+)/g),i=t.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),a=e.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),o=a?a.concat(i):i,s={};return{fragmentSource:t=t.replace(r,((t,e,r,n,i)=>(s[i]=!0,"define"===e?`\n#ifndef HAS_UNIFORM_u_${i}\nvarying ${r} ${n} ${i};\n#else\nuniform ${r} ${n} u_${i};\n#endif\n`:`\n#ifdef HAS_UNIFORM_u_${i}\n ${r} ${n} ${i} = u_${i};\n#endif\n`))),vertexSource:e=e.replace(r,((t,e,r,n,i)=>{let a="float"===n?"vec2":"vec4",o=i.match(/color/)?"color":a;return s[i]?"define"===e?`\n#ifndef HAS_UNIFORM_u_${i}\nuniform lowp float u_${i}_t;\nattribute ${r} ${a} a_${i};\nvarying ${r} ${n} ${i};\n#else\nuniform ${r} ${n} u_${i};\n#endif\n`:"vec4"===o?`\n#ifndef HAS_UNIFORM_u_${i}\n ${i} = a_${i};\n#else\n ${r} ${n} ${i} = u_${i};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${i}\n ${i} = unpack_mix_${o}(a_${i}, u_${i}_t);\n#else\n ${r} ${n} ${i} = u_${i};\n#endif\n`:"define"===e?`\n#ifndef HAS_UNIFORM_u_${i}\nuniform lowp float u_${i}_t;\nattribute ${r} ${a} a_${i};\n#else\nuniform ${r} ${n} u_${i};\n#endif\n`:"vec4"===o?`\n#ifndef HAS_UNIFORM_u_${i}\n ${r} ${n} ${i} = a_${i};\n#else\n ${r} ${n} ${i} = u_${i};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${i}\n ${r} ${n} ${i} = unpack_mix_${o}(a_${i}, u_${i}_t);\n#else\n ${r} ${n} ${i} = u_${i};\n#endif\n`})),staticAttributes:n,staticUniforms:o}}class ye{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(t,e,r,n,i,a,o,s,l){this.context=t;let c=this.boundPaintVertexBuffers.length!==n.length;for(let t=0;!c&&t({u_matrix:t,u_texture:0,u_ele_delta:r,u_fog_matrix:n,u_fog_color:i?i.properties.get("fog-color"):e.aM.white,u_fog_ground_blend:i?i.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:i?i.calculateFogBlendOpacity(a):0,u_horizon_color:i?i.properties.get("horizon-color"):e.aM.white,u_horizon_fog_blend:i?i.properties.get("horizon-fog-blend"):1});function xe(t){let e=[];for(let r=0;r>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}let we=(t,r,n,i)=>{let a=r.style.light,o=a.properties.get("position"),s=[o.x,o.y,o.z],l=(c=new e.A(9),e.A!=Float32Array&&(c[1]=0,c[2]=0,c[3]=0,c[5]=0,c[6]=0,c[7]=0),c[0]=1,c[4]=1,c[8]=1,c);var c;"viewport"===a.properties.get("anchor")&&function(t,e){var r=Math.sin(e),n=Math.cos(e);t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1}(l,-r.transform.angle),function(t,e,r){var n=e[0],i=e[1],a=e[2];t[0]=n*r[0]+i*r[3]+a*r[6],t[1]=n*r[1]+i*r[4]+a*r[7],t[2]=n*r[2]+i*r[5]+a*r[8]}(s,s,l);let u=a.properties.get("color");return{u_matrix:t,u_lightpos:s,u_lightintensity:a.properties.get("intensity"),u_lightcolor:[u.r,u.g,u.b],u_vertical_gradient:+n,u_opacity:i}},Te=(t,r,n,i,a,o,s)=>e.e(we(t,r,n,i),be(o,r,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8}),Ae=t=>({u_matrix:t}),ke=(t,r,n,i)=>e.e(Ae(t),be(n,r,i)),Me=(t,e)=>({u_matrix:t,u_world:e}),Se=(t,r,n,i,a)=>e.e(ke(t,r,n,i),{u_world:a}),Ee=(t,e,r,n)=>{let i,a,o=t.transform;if("map"===n.paint.get("circle-pitch-alignment")){let t=Bt(r,1,o.zoom);i=!0,a=[t,t]}else i=!1,a=o.pixelsToGLUnits;return{u_camera_to_center_distance:o.cameraToCenterDistance,u_scale_with_map:+("map"===n.paint.get("circle-pitch-scale")),u_matrix:t.translatePosMatrix(e.posMatrix,r,n.paint.get("circle-translate"),n.paint.get("circle-translate-anchor")),u_pitch_with_map:+i,u_device_pixel_ratio:t.pixelRatio,u_extrude_scale:a}},Ce=(t,e,r)=>({u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}),Ie=(t,e,r=1)=>({u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}),Le=t=>({u_matrix:t}),Pe=(t,e,r,n)=>({u_matrix:t,u_extrude_scale:Bt(e,1,r),u_intensity:n}),ze=(t,r,n,i)=>{let a=e.H();e.aP(a,0,t.width,t.height,0,0,1);let o=t.context.gl;return{u_matrix:a,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:n,u_color_ramp:i,u_opacity:r.paint.get("heatmap-opacity")}};function De(t,r){let n=Math.pow(2,r.canonical.z),i=r.canonical.y;return[new e.Z(0,i/n).toLngLat().lat,new e.Z(0,(i+1)/n).toLngLat().lat]}let Oe=(t,e,r,n)=>{let i=t.transform;return{u_matrix:Ne(t,e,r,n),u_ratio:1/Bt(e,1,i.zoom),u_device_pixel_ratio:t.pixelRatio,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},Re=(t,r,n,i,a)=>e.e(Oe(t,r,n,a),{u_image:0,u_image_height:i}),Fe=(t,e,r,n,i)=>{let a=t.transform,o=je(e,a);return{u_matrix:Ne(t,e,r,i),u_texsize:e.imageAtlasTexture.size,u_ratio:1/Bt(e,1,a.zoom),u_device_pixel_ratio:t.pixelRatio,u_image:0,u_scale:[o,n.fromScale,n.toScale],u_fade:n.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Be=(t,r,n,i,a,o)=>{let s=t.lineAtlas,l=je(r,t.transform),c="round"===n.layout.get("line-cap"),u=s.getDash(i.from,c),h=s.getDash(i.to,c),p=u.width*a.fromScale,f=h.width*a.toScale;return e.e(Oe(t,r,n,o),{u_patternscale_a:[l/p,-u.height/2],u_patternscale_b:[l/f,-h.height/2],u_sdfgamma:s.width/(256*Math.min(p,f)*t.pixelRatio)/2,u_image:0,u_tex_y_a:u.y,u_tex_y_b:h.y,u_mix:a.t})};function je(t,e){return 1/Bt(t,1,e.tileZoom)}function Ne(t,e,r,n){return t.translatePosMatrix(n?n.posMatrix:e.tileID.posMatrix,e,r.paint.get("line-translate"),r.paint.get("line-translate-anchor"))}let Ue=(t,e,r,n,i)=>{return{u_matrix:t,u_tl_parent:e,u_scale_parent:r,u_buffer_scale:1,u_fade_t:n.mix,u_opacity:n.opacity*i.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:i.paint.get("raster-brightness-min"),u_brightness_high:i.paint.get("raster-brightness-max"),u_saturation_factor:(o=i.paint.get("raster-saturation"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(a=i.paint.get("raster-contrast"),a>0?1/(1-a):1+a),u_spin_weights:Ve(i.paint.get("raster-hue-rotate"))};var a,o};function Ve(t){t*=Math.PI/180;let e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}let qe=(t,e,r,n,i,a,o,s,l,c,u,h,p,f)=>{let d=o.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:d.cameraToCenterDistance,u_pitch:d.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:d.width/d.height,u_fade_change:o.options.fadeDuration?o.symbolFadeChange:1,u_matrix:s,u_label_plane_matrix:l,u_coord_matrix:c,u_is_text:+h,u_pitch_with_map:+n,u_is_along_line:i,u_is_variable_anchor:a,u_texsize:p,u_texture:0,u_translation:u,u_pitched_scale:f}},He=(t,r,n,i,a,o,s,l,c,u,h,p,f,d,m)=>{let g=s.transform;return e.e(qe(t,r,n,i,a,o,s,l,c,u,h,p,f,m),{u_gamma_scale:i?Math.cos(g._pitch)*g.cameraToCenterDistance:1,u_device_pixel_ratio:s.pixelRatio,u_is_halo:+d})},Ge=(t,r,n,i,a,o,s,l,c,u,h,p,f,d)=>e.e(He(t,r,n,i,a,o,s,l,c,u,h,!0,p,!0,d),{u_texsize_icon:f,u_texture_icon:1}),We=(t,e,r)=>({u_matrix:t,u_opacity:e,u_color:r}),Ze=(t,r,n,i,a,o)=>e.e(function(t,e,r,n){let i=r.imageManager.getPattern(t.from.toString()),a=r.imageManager.getPattern(t.to.toString()),{width:o,height:s}=r.imageManager.getPixelSize(),l=Math.pow(2,n.tileID.overscaledZ),c=n.tileSize*Math.pow(2,r.transform.tileZoom)/l,u=c*(n.tileID.canonical.x+n.tileID.wrap*l),h=c*n.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:i.tl,u_pattern_br_a:i.br,u_pattern_tl_b:a.tl,u_pattern_br_b:a.br,u_texsize:[o,s],u_mix:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/Bt(n,1,r.transform.tileZoom),u_pixel_coord_upper:[u>>16,h>>16],u_pixel_coord_lower:[65535&u,65535&h]}}(i,o,n,a),{u_matrix:t,u_opacity:r}),Ye={fillExtrusion:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_lightpos:new e.aN(t,r.u_lightpos),u_lightintensity:new e.aI(t,r.u_lightintensity),u_lightcolor:new e.aN(t,r.u_lightcolor),u_vertical_gradient:new e.aI(t,r.u_vertical_gradient),u_opacity:new e.aI(t,r.u_opacity)}),fillExtrusionPattern:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_lightpos:new e.aN(t,r.u_lightpos),u_lightintensity:new e.aI(t,r.u_lightintensity),u_lightcolor:new e.aN(t,r.u_lightcolor),u_vertical_gradient:new e.aI(t,r.u_vertical_gradient),u_height_factor:new e.aI(t,r.u_height_factor),u_image:new e.aH(t,r.u_image),u_texsize:new e.aO(t,r.u_texsize),u_pixel_coord_upper:new e.aO(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,r.u_pixel_coord_lower),u_scale:new e.aN(t,r.u_scale),u_fade:new e.aI(t,r.u_fade),u_opacity:new e.aI(t,r.u_opacity)}),fill:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix)}),fillPattern:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_image:new e.aH(t,r.u_image),u_texsize:new e.aO(t,r.u_texsize),u_pixel_coord_upper:new e.aO(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,r.u_pixel_coord_lower),u_scale:new e.aN(t,r.u_scale),u_fade:new e.aI(t,r.u_fade)}),fillOutline:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_world:new e.aO(t,r.u_world)}),fillOutlinePattern:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_world:new e.aO(t,r.u_world),u_image:new e.aH(t,r.u_image),u_texsize:new e.aO(t,r.u_texsize),u_pixel_coord_upper:new e.aO(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,r.u_pixel_coord_lower),u_scale:new e.aN(t,r.u_scale),u_fade:new e.aI(t,r.u_fade)}),circle:(t,r)=>({u_camera_to_center_distance:new e.aI(t,r.u_camera_to_center_distance),u_scale_with_map:new e.aH(t,r.u_scale_with_map),u_pitch_with_map:new e.aH(t,r.u_pitch_with_map),u_extrude_scale:new e.aO(t,r.u_extrude_scale),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_matrix:new e.aJ(t,r.u_matrix)}),collisionBox:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_pixel_extrude_scale:new e.aO(t,r.u_pixel_extrude_scale)}),collisionCircle:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_inv_matrix:new e.aJ(t,r.u_inv_matrix),u_camera_to_center_distance:new e.aI(t,r.u_camera_to_center_distance),u_viewport_size:new e.aO(t,r.u_viewport_size)}),debug:(t,r)=>({u_color:new e.aL(t,r.u_color),u_matrix:new e.aJ(t,r.u_matrix),u_overlay:new e.aH(t,r.u_overlay),u_overlay_scale:new e.aI(t,r.u_overlay_scale)}),clippingMask:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix)}),heatmap:(t,r)=>({u_extrude_scale:new e.aI(t,r.u_extrude_scale),u_intensity:new e.aI(t,r.u_intensity),u_matrix:new e.aJ(t,r.u_matrix)}),heatmapTexture:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_world:new e.aO(t,r.u_world),u_image:new e.aH(t,r.u_image),u_color_ramp:new e.aH(t,r.u_color_ramp),u_opacity:new e.aI(t,r.u_opacity)}),hillshade:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_image:new e.aH(t,r.u_image),u_latrange:new e.aO(t,r.u_latrange),u_light:new e.aO(t,r.u_light),u_shadow:new e.aL(t,r.u_shadow),u_highlight:new e.aL(t,r.u_highlight),u_accent:new e.aL(t,r.u_accent)}),hillshadePrepare:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_image:new e.aH(t,r.u_image),u_dimension:new e.aO(t,r.u_dimension),u_zoom:new e.aI(t,r.u_zoom),u_unpack:new e.aK(t,r.u_unpack)}),line:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_ratio:new e.aI(t,r.u_ratio),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,r.u_units_to_pixels)}),lineGradient:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_ratio:new e.aI(t,r.u_ratio),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,r.u_units_to_pixels),u_image:new e.aH(t,r.u_image),u_image_height:new e.aI(t,r.u_image_height)}),linePattern:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_texsize:new e.aO(t,r.u_texsize),u_ratio:new e.aI(t,r.u_ratio),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_image:new e.aH(t,r.u_image),u_units_to_pixels:new e.aO(t,r.u_units_to_pixels),u_scale:new e.aN(t,r.u_scale),u_fade:new e.aI(t,r.u_fade)}),lineSDF:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_ratio:new e.aI(t,r.u_ratio),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aO(t,r.u_units_to_pixels),u_patternscale_a:new e.aO(t,r.u_patternscale_a),u_patternscale_b:new e.aO(t,r.u_patternscale_b),u_sdfgamma:new e.aI(t,r.u_sdfgamma),u_image:new e.aH(t,r.u_image),u_tex_y_a:new e.aI(t,r.u_tex_y_a),u_tex_y_b:new e.aI(t,r.u_tex_y_b),u_mix:new e.aI(t,r.u_mix)}),raster:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_tl_parent:new e.aO(t,r.u_tl_parent),u_scale_parent:new e.aI(t,r.u_scale_parent),u_buffer_scale:new e.aI(t,r.u_buffer_scale),u_fade_t:new e.aI(t,r.u_fade_t),u_opacity:new e.aI(t,r.u_opacity),u_image0:new e.aH(t,r.u_image0),u_image1:new e.aH(t,r.u_image1),u_brightness_low:new e.aI(t,r.u_brightness_low),u_brightness_high:new e.aI(t,r.u_brightness_high),u_saturation_factor:new e.aI(t,r.u_saturation_factor),u_contrast_factor:new e.aI(t,r.u_contrast_factor),u_spin_weights:new e.aN(t,r.u_spin_weights)}),symbolIcon:(t,r)=>({u_is_size_zoom_constant:new e.aH(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,r.u_is_size_feature_constant),u_size_t:new e.aI(t,r.u_size_t),u_size:new e.aI(t,r.u_size),u_camera_to_center_distance:new e.aI(t,r.u_camera_to_center_distance),u_pitch:new e.aI(t,r.u_pitch),u_rotate_symbol:new e.aH(t,r.u_rotate_symbol),u_aspect_ratio:new e.aI(t,r.u_aspect_ratio),u_fade_change:new e.aI(t,r.u_fade_change),u_matrix:new e.aJ(t,r.u_matrix),u_label_plane_matrix:new e.aJ(t,r.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,r.u_coord_matrix),u_is_text:new e.aH(t,r.u_is_text),u_pitch_with_map:new e.aH(t,r.u_pitch_with_map),u_is_along_line:new e.aH(t,r.u_is_along_line),u_is_variable_anchor:new e.aH(t,r.u_is_variable_anchor),u_texsize:new e.aO(t,r.u_texsize),u_texture:new e.aH(t,r.u_texture),u_translation:new e.aO(t,r.u_translation),u_pitched_scale:new e.aI(t,r.u_pitched_scale)}),symbolSDF:(t,r)=>({u_is_size_zoom_constant:new e.aH(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,r.u_is_size_feature_constant),u_size_t:new e.aI(t,r.u_size_t),u_size:new e.aI(t,r.u_size),u_camera_to_center_distance:new e.aI(t,r.u_camera_to_center_distance),u_pitch:new e.aI(t,r.u_pitch),u_rotate_symbol:new e.aH(t,r.u_rotate_symbol),u_aspect_ratio:new e.aI(t,r.u_aspect_ratio),u_fade_change:new e.aI(t,r.u_fade_change),u_matrix:new e.aJ(t,r.u_matrix),u_label_plane_matrix:new e.aJ(t,r.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,r.u_coord_matrix),u_is_text:new e.aH(t,r.u_is_text),u_pitch_with_map:new e.aH(t,r.u_pitch_with_map),u_is_along_line:new e.aH(t,r.u_is_along_line),u_is_variable_anchor:new e.aH(t,r.u_is_variable_anchor),u_texsize:new e.aO(t,r.u_texsize),u_texture:new e.aH(t,r.u_texture),u_gamma_scale:new e.aI(t,r.u_gamma_scale),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_is_halo:new e.aH(t,r.u_is_halo),u_translation:new e.aO(t,r.u_translation),u_pitched_scale:new e.aI(t,r.u_pitched_scale)}),symbolTextAndIcon:(t,r)=>({u_is_size_zoom_constant:new e.aH(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aH(t,r.u_is_size_feature_constant),u_size_t:new e.aI(t,r.u_size_t),u_size:new e.aI(t,r.u_size),u_camera_to_center_distance:new e.aI(t,r.u_camera_to_center_distance),u_pitch:new e.aI(t,r.u_pitch),u_rotate_symbol:new e.aH(t,r.u_rotate_symbol),u_aspect_ratio:new e.aI(t,r.u_aspect_ratio),u_fade_change:new e.aI(t,r.u_fade_change),u_matrix:new e.aJ(t,r.u_matrix),u_label_plane_matrix:new e.aJ(t,r.u_label_plane_matrix),u_coord_matrix:new e.aJ(t,r.u_coord_matrix),u_is_text:new e.aH(t,r.u_is_text),u_pitch_with_map:new e.aH(t,r.u_pitch_with_map),u_is_along_line:new e.aH(t,r.u_is_along_line),u_is_variable_anchor:new e.aH(t,r.u_is_variable_anchor),u_texsize:new e.aO(t,r.u_texsize),u_texsize_icon:new e.aO(t,r.u_texsize_icon),u_texture:new e.aH(t,r.u_texture),u_texture_icon:new e.aH(t,r.u_texture_icon),u_gamma_scale:new e.aI(t,r.u_gamma_scale),u_device_pixel_ratio:new e.aI(t,r.u_device_pixel_ratio),u_is_halo:new e.aH(t,r.u_is_halo),u_translation:new e.aO(t,r.u_translation),u_pitched_scale:new e.aI(t,r.u_pitched_scale)}),background:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_opacity:new e.aI(t,r.u_opacity),u_color:new e.aL(t,r.u_color)}),backgroundPattern:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_opacity:new e.aI(t,r.u_opacity),u_image:new e.aH(t,r.u_image),u_pattern_tl_a:new e.aO(t,r.u_pattern_tl_a),u_pattern_br_a:new e.aO(t,r.u_pattern_br_a),u_pattern_tl_b:new e.aO(t,r.u_pattern_tl_b),u_pattern_br_b:new e.aO(t,r.u_pattern_br_b),u_texsize:new e.aO(t,r.u_texsize),u_mix:new e.aI(t,r.u_mix),u_pattern_size_a:new e.aO(t,r.u_pattern_size_a),u_pattern_size_b:new e.aO(t,r.u_pattern_size_b),u_scale_a:new e.aI(t,r.u_scale_a),u_scale_b:new e.aI(t,r.u_scale_b),u_pixel_coord_upper:new e.aO(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aO(t,r.u_pixel_coord_lower),u_tile_units_to_pixels:new e.aI(t,r.u_tile_units_to_pixels)}),terrain:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_texture:new e.aH(t,r.u_texture),u_ele_delta:new e.aI(t,r.u_ele_delta),u_fog_matrix:new e.aJ(t,r.u_fog_matrix),u_fog_color:new e.aL(t,r.u_fog_color),u_fog_ground_blend:new e.aI(t,r.u_fog_ground_blend),u_fog_ground_blend_opacity:new e.aI(t,r.u_fog_ground_blend_opacity),u_horizon_color:new e.aL(t,r.u_horizon_color),u_horizon_fog_blend:new e.aI(t,r.u_horizon_fog_blend)}),terrainDepth:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_ele_delta:new e.aI(t,r.u_ele_delta)}),terrainCoords:(t,r)=>({u_matrix:new e.aJ(t,r.u_matrix),u_texture:new e.aH(t,r.u_texture),u_terrain_coords_id:new e.aI(t,r.u_terrain_coords_id),u_ele_delta:new e.aI(t,r.u_ele_delta)}),sky:(t,r)=>({u_sky_color:new e.aL(t,r.u_sky_color),u_horizon_color:new e.aL(t,r.u_horizon_color),u_horizon:new e.aI(t,r.u_horizon),u_sky_horizon_blend:new e.aI(t,r.u_sky_horizon_blend)})};class Xe{constructor(t,e,r){this.context=t;let n=t.gl;this.buffer=n.createBuffer(),this.dynamicDraw=!!r,this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(t){let e=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let $e={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Ke{constructor(t,e,r,n){this.length=e.length,this.attributes=r,this.itemSize=e.bytesPerElement,this.dynamicDraw=n,this.context=t;let i=t.gl;this.buffer=i.createBuffer(),t.bindVertexBuffer.set(this.buffer),i.bufferData(i.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?i.DYNAMIC_DRAW:i.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(t){if(t.length!==this.length)throw new Error(`Length of new data is ${t.length}, which doesn't match current length of ${this.length}`);let e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)}enableAttributes(t,e){for(let r=0;r0){let r=e.H();e.aQ(r,m.placementInvProjMatrix,t.transform.glCoordMatrix),e.aQ(r,r,m.placementViewportMatrix),c.push({circleArray:y,circleOffset:h,transform:d.posMatrix,invTransform:r,coord:d}),u+=y.length/4,h=u}g&&l.draw(o,s.LINES,jr.disabled,Vr.disabled,t.colorModeForRenderPass(),qr.disabled,{u_matrix:d.posMatrix,u_pixel_extrude_scale:[1/(p=t.transform).width,1/p.height]},t.style.map.terrain&&t.style.map.terrain.getTerrainData(d),n.id,g.layoutVertexBuffer,g.indexBuffer,g.segments,null,t.transform.zoom,null,null,g.collisionVertexBuffer)}var p;if(!a||!c.length)return;let f=t.useProgram("collisionCircle"),d=new e.aR;d.resize(4*u),d._trim();let m=0;for(let t of c)for(let e=0;e=0&&(v[x.associatedIconIndex]={shiftedAnchor:I,angle:L})}else Dt(x.numGlyphs,g)}if(u){y.clear();let r=t.icon.placedSymbolArray;for(let t=0;tt.style.map.terrain.getElevation(l,e,r):null,r="map"===n.layout.get("text-rotation-alignment");Tt(c,l.posMatrix,t,a,N,V,v,u,r,g,l.toUnwrapped(),m.width,m.height,q,e)}let W,Z=l.posMatrix,Y=a&&k||G,X=x||Y?Gr:N,$=U,K=I&&0!==n.paint.get(a?"text-halo-width":"icon-halo-width").constantOr(1);W=I?c.iconsInText?Ge(L.kind,D,_,v,x,Y,t,Z,X,$,q,p,R,S):He(L.kind,D,_,v,x,Y,t,Z,X,$,q,a,p,!0,S):qe(L.kind,D,_,v,x,Y,t,Z,X,$,q,a,p,S);let J={program:z,buffers:h,uniformValues:W,atlasTexture:f,atlasTextureIcon:F,atlasInterpolation:A,atlasInterpolationIcon:E,isSDF:I,hasHalo:K};if(w&&c.canOverlap){T=!0;let t=h.segments.get();for(let r of t)M.push({segments:new e.a0([r]),sortKey:r.sortKey,state:J,terrainData:O})}else M.push({segments:h.segments,sortKey:0,state:J,terrainData:O})}T&&M.sort(((t,e)=>t.sortKey-e.sortKey));for(let e of M){let r=e.state;if(f.activeTexture.set(d.TEXTURE0),r.atlasTexture.bind(r.atlasInterpolation,d.CLAMP_TO_EDGE),r.atlasTextureIcon&&(f.activeTexture.set(d.TEXTURE1),r.atlasTextureIcon&&r.atlasTextureIcon.bind(r.atlasInterpolationIcon,d.CLAMP_TO_EDGE)),r.isSDF){let i=r.uniformValues;r.hasHalo&&(i.u_is_halo=1,Kr(r.buffers,e.segments,n,t,r.program,A,h,p,i,e.terrainData)),i.u_is_halo=0}Kr(r.buffers,e.segments,n,t,r.program,A,h,p,r.uniformValues,e.terrainData)}}function Kr(t,e,r,n,i,a,o,s,l,c){let u=n.context;i.draw(u,u.gl.TRIANGLES,a,o,s,qr.disabled,l,c,r.id,t.layoutVertexBuffer,t.indexBuffer,e,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function Jr(t,r,n,i){let a=t.context,o=a.gl,s=Vr.disabled,l=new Fr([o.ONE,o.ONE],e.aM.transparent,[!0,!0,!0,!0]),c=r.getBucket(n);if(!c)return;let u=i.key,h=n.heatmapFbos.get(u);h||(h=tn(a,r.tileSize,r.tileSize),n.heatmapFbos.set(u,h)),a.bindFramebuffer.set(h.framebuffer),a.viewport.set([0,0,r.tileSize,r.tileSize]),a.clear({color:e.aM.transparent});let p=c.programConfigurations.get(n.id),f=t.useProgram("heatmap",p),d=t.style.map.terrain.getTerrainData(i);f.draw(a,o.TRIANGLES,jr.disabled,s,l,qr.disabled,Pe(i.posMatrix,r,t.transform.zoom,n.paint.get("heatmap-intensity")),d,n.id,c.layoutVertexBuffer,c.indexBuffer,c.segments,n.paint,t.transform.zoom,p)}function Qr(t,e,r){let n=t.context,i=n.gl;n.setColorMode(t.colorModeForRenderPass());let a=en(n,e),o=r.key,s=e.heatmapFbos.get(o);s&&(n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,s.colorAttachment.get()),n.activeTexture.set(i.TEXTURE1),a.bind(i.LINEAR,i.CLAMP_TO_EDGE),t.useProgram("heatmapTexture").draw(n,i.TRIANGLES,jr.disabled,Vr.disabled,t.colorModeForRenderPass(),qr.disabled,ze(t,e,0,1),null,e.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments,e.paint,t.transform.zoom),s.destroy(),e.heatmapFbos.delete(o))}function tn(t,e,r){var n,i;let a=t.gl,o=a.createTexture();a.bindTexture(a.TEXTURE_2D,o),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR);let s=null!==(n=t.HALF_FLOAT)&&void 0!==n?n:a.UNSIGNED_BYTE,l=null!==(i=t.RGBA16F)&&void 0!==i?i:a.RGBA;a.texImage2D(a.TEXTURE_2D,0,l,e,r,0,a.RGBA,s,null);let c=t.createFramebuffer(e,r,!1,!1);return c.colorAttachment.set(o),c}function en(t,e){return e.colorRampTexture||(e.colorRampTexture=new w(t,e.colorRamp,t.gl.RGBA)),e.colorRampTexture}function rn(t,e,r,n,i){if(!r||!n||!n.imageAtlas)return;let a=n.imageAtlas.patternPositions,o=a[r.to.toString()],s=a[r.from.toString()];if(!o&&s&&(o=s),!s&&o&&(s=o),!o||!s){let t=i.getPaintProperty(e);o=a[t],s=a[t]}o&&s&&t.setConstantPatternPositions(o,s)}function nn(t,e,r,n,i,a,o){let s,l,c,u,h,p=t.context.gl,f="fill-pattern",d=r.paint.get(f),m=d&&d.constantOr(1),g=r.getCrossfadeParameters();o?(l=m&&!r.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",s=p.LINES):(l=m?"fillPattern":"fill",s=p.TRIANGLES);let y=d.constantOr(null);for(let d of n){let n=e.getTile(d);if(m&&!n.patternsLoaded())continue;let v=n.getBucket(r);if(!v)continue;let x=v.programConfigurations.get(r.id),_=t.useProgram(l,x),b=t.style.map.terrain&&t.style.map.terrain.getTerrainData(d);m&&(t.context.activeTexture.set(p.TEXTURE0),n.imageAtlasTexture.bind(p.LINEAR,p.CLAMP_TO_EDGE),x.updatePaintBuffers(g)),rn(x,f,y,n,r);let w=b?d:null,T=t.translatePosMatrix(w?w.posMatrix:d.posMatrix,n,r.paint.get("fill-translate"),r.paint.get("fill-translate-anchor"));if(o){u=v.indexBuffer2,h=v.segments2;let e=[p.drawingBufferWidth,p.drawingBufferHeight];c="fillOutlinePattern"===l&&m?Se(T,t,g,n,e):Me(T,e)}else u=v.indexBuffer,h=v.segments,c=m?ke(T,t,g,n):Ae(T);_.draw(t.context,s,i,t.stencilModeForClipping(d),a,qr.disabled,c,b,r.id,v.layoutVertexBuffer,u,h,r.paint,t.transform.zoom,x)}}function an(t,e,r,n,i,a,o){let s=t.context,l=s.gl,c="fill-extrusion-pattern",u=r.paint.get(c),h=u.constantOr(1),p=r.getCrossfadeParameters(),f=r.paint.get("fill-extrusion-opacity"),d=u.constantOr(null);for(let u of n){let n=e.getTile(u),m=n.getBucket(r);if(!m)continue;let g=t.style.map.terrain&&t.style.map.terrain.getTerrainData(u),y=m.programConfigurations.get(r.id),v=t.useProgram(h?"fillExtrusionPattern":"fillExtrusion",y);h&&(t.context.activeTexture.set(l.TEXTURE0),n.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),y.updatePaintBuffers(p)),rn(y,c,d,n,r);let x=t.translatePosMatrix(u.posMatrix,n,r.paint.get("fill-extrusion-translate"),r.paint.get("fill-extrusion-translate-anchor")),_=r.paint.get("fill-extrusion-vertical-gradient"),b=h?Te(x,t,_,f,u,p,n):we(x,t,_,f);v.draw(s,s.gl.TRIANGLES,i,a,o,qr.backCCW,b,g,r.id,m.layoutVertexBuffer,m.indexBuffer,m.segments,r.paint,t.transform.zoom,y,t.style.map.terrain&&m.centroidVertexBuffer)}}function on(t,e,r,n,i,a,o){let s=t.context,l=s.gl,c=r.fbo;if(!c)return;let u=t.useProgram("hillshade"),h=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);s.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,c.colorAttachment.get()),u.draw(s,l.TRIANGLES,i,a,o,qr.disabled,((t,e,r,n)=>{let i=r.paint.get("hillshade-shadow-color"),a=r.paint.get("hillshade-highlight-color"),o=r.paint.get("hillshade-accent-color"),s=r.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===r.paint.get("hillshade-illumination-anchor")&&(s-=t.transform.angle);let l=!t.options.moving;return{u_matrix:n?n.posMatrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped(),l),u_image:0,u_latrange:De(0,e.tileID),u_light:[r.paint.get("hillshade-exaggeration"),s],u_shadow:i,u_highlight:a,u_accent:o}})(t,r,n,h?e:null),h,n.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}function sn(t,r,n,i,a,o){let s=t.context,l=s.gl,c=r.dem;if(c&&c.data){let u=c.dim,h=c.stride,p=c.getPixels();if(s.activeTexture.set(l.TEXTURE1),s.pixelStoreUnpackPremultiplyAlpha.set(!1),r.demTexture=r.demTexture||t.getTileTexture(h),r.demTexture){let t=r.demTexture;t.update(p,{premultiply:!1}),t.bind(l.NEAREST,l.CLAMP_TO_EDGE)}else r.demTexture=new w(s,p,l.RGBA,{premultiply:!1}),r.demTexture.bind(l.NEAREST,l.CLAMP_TO_EDGE);s.activeTexture.set(l.TEXTURE0);let f=r.fbo;if(!f){let t=new w(s,{width:u,height:u,data:null},l.RGBA);t.bind(l.LINEAR,l.CLAMP_TO_EDGE),f=r.fbo=s.createFramebuffer(u,u,!0,!1),f.colorAttachment.set(t.texture)}s.bindFramebuffer.set(f.framebuffer),s.viewport.set([0,0,u,u]),t.useProgram("hillshadePrepare").draw(s,l.TRIANGLES,i,a,o,qr.disabled,((t,r)=>{let n=r.stride,i=e.H();return e.aP(i,0,e.X,-e.X,0,0,1),e.J(i,i,[0,-e.X,0]),{u_matrix:i,u_image:1,u_dimension:[n,n],u_zoom:t.overscaledZ,u_unpack:r.getUnpackVector()}})(r.tileID,c),null,n.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments),r.needsHillshadePrepare=!1}}function ln(t,r,n,i,o,s){let l=i.paint.get("raster-fade-duration");if(!s&&l>0){let i=a.now(),s=(i-t.timeAdded)/l,c=r?(i-r.timeAdded)/l:-1,u=n.getSource(),h=o.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),p=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(t.tileID.overscaledZ-h),f=p&&t.refreshedUponExpiration?1:e.ac(p?s:1-c,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),r?{opacity:1,mix:1-f}:{opacity:f,mix:0}}return{opacity:1,mix:0}}let cn=new e.aM(1,0,0,1),un=new e.aM(0,1,0,1),hn=new e.aM(0,0,1,1),pn=new e.aM(1,0,1,1),fn=new e.aM(0,1,1,1);function dn(t,e,r,n){gn(t,0,e+r/2,t.transform.width,r,n)}function mn(t,e,r,n){gn(t,e-r/2,0,r,t.transform.height,n)}function gn(t,e,r,n,i,a){let o=t.context,s=o.gl;s.enable(s.SCISSOR_TEST),s.scissor(e*t.pixelRatio,r*t.pixelRatio,n*t.pixelRatio,i*t.pixelRatio),o.clear({color:a}),s.disable(s.SCISSOR_TEST)}function yn(t,r,n){let i=t.context,a=i.gl,o=n.posMatrix,s=t.useProgram("debug"),l=jr.disabled,c=Vr.disabled,u=t.colorModeForRenderPass(),h="$debug",p=t.style.map.terrain&&t.style.map.terrain.getTerrainData(n);i.activeTexture.set(a.TEXTURE0);let f=r.getTileByID(n.key).latestRawTileData,d=Math.floor((f&&f.byteLength||0)/1024),m=r.getTile(n).tileSize,g=512/Math.min(m,512)*(n.overscaledZ/t.transform.zoom)*.5,y=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(y+=` => ${n.overscaledZ}`),function(t,e){t.initDebugOverlayCanvas();let r=t.debugOverlayCanvas,n=t.context.gl,i=t.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,r.width,r.height),i.shadowColor="white",i.shadowBlur=2,i.lineWidth=1.5,i.strokeStyle="white",i.textBaseline="top",i.font="bold 36px Open Sans, sans-serif",i.fillText(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(t,`${y} ${d}kB`),s.draw(i,a.TRIANGLES,l,c,Fr.alphaBlended,qr.disabled,Ie(o,e.aM.transparent,g),null,h,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments),s.draw(i,a.LINE_STRIP,l,c,u,qr.disabled,Ie(o,e.aM.red),p,h,t.debugBuffer,t.tileBorderIndexBuffer,t.debugSegments)}function vn(t,e,r){let n=t.context,i=n.gl,a=t.colorModeForRenderPass(),o=new jr(i.LEQUAL,jr.ReadWrite,t.depthRangeFor3D),s=t.useProgram("terrain"),l=e.getTerrainMesh();n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height]);for(let c of r){let r=t.renderToTexture.getTexture(c),u=e.getTerrainData(c.tileID);n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,r.texture);let h=t.transform.calculatePosMatrix(c.tileID.toUnwrapped()),p=e.getMeshFrameDelta(t.transform.zoom),f=t.transform.calculateFogMatrix(c.tileID.toUnwrapped()),d=ve(h,p,f,t.style.sky,t.transform.pitch);s.draw(n,i.TRIANGLES,o,Vr.disabled,a,qr.backCCW,d,u,"terrain",l.vertexBuffer,l.indexBuffer,l.segments)}}class xn{constructor(t,e,r){this.vertexBuffer=t,this.indexBuffer=e,this.segments=r}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class _n{constructor(t,r){this.context=new Br(t),this.transform=r,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:e.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=pt.maxUnderzooming+pt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new ue}resize(t,e,r){if(this.width=Math.floor(t*r),this.height=Math.floor(e*r),this.pixelRatio=r,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let t of this.style._order)this.style._layers[t].resize()}setup(){let t=this.context,r=new e.aX;r.emplaceBack(0,0),r.emplaceBack(e.X,0),r.emplaceBack(0,e.X),r.emplaceBack(e.X,e.X),this.tileExtentBuffer=t.createVertexBuffer(r,de.members),this.tileExtentSegments=e.a0.simpleSegment(0,0,4,2);let n=new e.aX;n.emplaceBack(0,0),n.emplaceBack(e.X,0),n.emplaceBack(0,e.X),n.emplaceBack(e.X,e.X),this.debugBuffer=t.createVertexBuffer(n,de.members),this.debugSegments=e.a0.simpleSegment(0,0,4,5);let i=new e.$;i.emplaceBack(0,0,0,0),i.emplaceBack(e.X,0,e.X,0),i.emplaceBack(0,e.X,0,e.X),i.emplaceBack(e.X,e.X,e.X,e.X),this.rasterBoundsBuffer=t.createVertexBuffer(i,Q.members),this.rasterBoundsSegments=e.a0.simpleSegment(0,0,4,2);let a=new e.aX;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(a,de.members),this.viewportSegments=e.a0.simpleSegment(0,0,4,2);let o=new e.aZ;o.emplaceBack(0),o.emplaceBack(1),o.emplaceBack(3),o.emplaceBack(2),o.emplaceBack(0),this.tileBorderIndexBuffer=t.createIndexBuffer(o);let s=new e.aY;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(s);let l=this.context.gl;this.stencilClearMode=new Vr({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO)}clearStencil(){let t=this.context,r=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let n=e.H();e.aP(n,0,this.width,this.height,0,0,1),e.K(n,n,[r.drawingBufferWidth,r.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(t,r.TRIANGLES,jr.disabled,this.stencilClearMode,Fr.disabled,qr.disabled,Le(n),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(t,e){if(this.currentStencilSource===t.source||!t.isTileClipped()||!e||!e.length)return;this.currentStencilSource=t.source;let r=this.context,n=r.gl;this.nextStencilID+e.length>256&&this.clearStencil(),r.setColorMode(Fr.disabled),r.setDepthMode(jr.disabled);let i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let t of e){let e=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,a=this.style.map.terrain&&this.style.map.terrain.getTerrainData(t);i.draw(r,n.TRIANGLES,jr.disabled,new Vr({func:n.ALWAYS,mask:0},e,255,n.KEEP,n.KEEP,n.REPLACE),Fr.disabled,qr.disabled,Le(t.posMatrix),a,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let t=this.nextStencilID++,e=this.context.gl;return new Vr({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)}stencilModeForClipping(t){let e=this.context.gl;return new Vr({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)}stencilConfigForOverlap(t){let e=this.context.gl,r=t.sort(((t,e)=>e.overscaledZ-t.overscaledZ)),n=r[r.length-1].overscaledZ,i=r[0].overscaledZ-n+1;if(i>1){this.currentStencilSource=void 0,this.nextStencilID+i>256&&this.clearStencil();let t={};for(let r=0;r=0;this.currentLayer--){let t=this.style._layers[n[this.currentLayer]],e=i[t.source],r=o[t.source];this._renderTileClippingMasks(t,r),this.renderLayer(this,e,t,r)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerr.source&&!r.isHidden(e)?[t.sourceCaches[r.source]]:[])),i=n.filter((t=>"vector"===t.getSource().type)),a=n.filter((t=>"vector"!==t.getSource().type)),o=t=>{(!r||r.getSource().maxzoomo(t))),r||a.forEach((t=>o(t))),r}(this.style,this.transform.zoom);t&&function(t,e,r){for(let n=0;n0),i&&(e.b0(r,n),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(t,r){let n=t.context,i=n.gl,a=Fr.unblended,o=new jr(i.LEQUAL,jr.ReadWrite,[0,1]),s=r.getTerrainMesh(),l=r.sourceCache.getRenderableTiles(),c=t.useProgram("terrainDepth");n.bindFramebuffer.set(r.getFramebuffer("depth").framebuffer),n.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),n.clear({color:e.aM.transparent,depth:1});for(let e of l){let l=r.getTerrainData(e.tileID),u={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_ele_delta:r.getMeshFrameDelta(t.transform.zoom)};c.draw(n,i.TRIANGLES,o,Vr.disabled,a,qr.backCCW,u,l,"terrain",s.vertexBuffer,s.indexBuffer,s.segments)}n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height])}(this,this.style.map.terrain),function(t,r){let n=t.context,i=n.gl,a=Fr.unblended,o=new jr(i.LEQUAL,jr.ReadWrite,[0,1]),s=r.getTerrainMesh(),l=r.getCoordsTexture(),c=r.sourceCache.getRenderableTiles(),u=t.useProgram("terrainCoords");n.bindFramebuffer.set(r.getFramebuffer("coords").framebuffer),n.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),n.clear({color:e.aM.transparent,depth:1}),r.coordsIndex=[];for(let e of c){let c=r.getTerrainData(e.tileID);n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,l.texture);let h={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_terrain_coords_id:(255-r.coordsIndex.length)/255,u_texture:0,u_ele_delta:r.getMeshFrameDelta(t.transform.zoom)};u.draw(n,i.TRIANGLES,o,Vr.disabled,a,qr.backCCW,h,c,"terrain",s.vertexBuffer,s.indexBuffer,s.segments),r.coordsIndex.push(e.tileID.key)}n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height])}(this,this.style.map.terrain))}renderLayer(t,r,n,i){if(!n.isHidden(this.transform.zoom)&&("background"===n.type||"custom"===n.type||(i||[]).length))switch(this.id=n.id,n.type){case"symbol":!function(t,r,n,i,a){if("translucent"!==t.renderPass)return;let o=Vr.disabled,s=t.colorModeForRenderPass();(n._unevaluatedLayout.hasValue("text-variable-anchor")||n._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(t,r,n,i,a,o,s,l,c){let u=r.transform,h=ne(),p="map"===a,f="map"===o;for(let a of t){let t=i.getTile(a),o=t.getBucket(n);if(!o||!o.text||!o.text.segments.get().length)continue;let d=e.ag(o.textSizeData,u.zoom),m=Bt(t,1,r.transform.zoom),g=vt(a.posMatrix,f,p,r.transform,m),y="none"!==n.layout.get("icon-text-fit")&&o.hasIconData();if(d){let e=Math.pow(2,u.zoom-t.tileID.overscaledZ),n=r.style.map.terrain?(t,e)=>r.style.map.terrain.getElevation(a,t,e):null,i=h.translatePosition(u,t,s,l);Yr(o,p,f,c,u,g,a.posMatrix,e,d,y,h,i,a.toUnwrapped(),n)}}}(i,t,n,r,n.layout.get("text-rotation-alignment"),n.layout.get("text-pitch-alignment"),n.paint.get("text-translate"),n.paint.get("text-translate-anchor"),a),0!==n.paint.get("icon-opacity").constantOr(1)&&$r(t,r,n,i,!1,n.paint.get("icon-translate"),n.paint.get("icon-translate-anchor"),n.layout.get("icon-rotation-alignment"),n.layout.get("icon-pitch-alignment"),n.layout.get("icon-keep-upright"),o,s),0!==n.paint.get("text-opacity").constantOr(1)&&$r(t,r,n,i,!0,n.paint.get("text-translate"),n.paint.get("text-translate-anchor"),n.layout.get("text-rotation-alignment"),n.layout.get("text-pitch-alignment"),n.layout.get("text-keep-upright"),o,s),r.map.showCollisionBoxes&&(Hr(t,r,n,i,!0),Hr(t,r,n,i,!1))}(t,r,n,i,this.style.placement.variableOffsets);break;case"circle":!function(t,r,n,i){if("translucent"!==t.renderPass)return;let a=n.paint.get("circle-opacity"),o=n.paint.get("circle-stroke-width"),s=n.paint.get("circle-stroke-opacity"),l=!n.layout.get("circle-sort-key").isConstant();if(0===a.constantOr(1)&&(0===o.constantOr(1)||0===s.constantOr(1)))return;let c=t.context,u=c.gl,h=t.depthModeForSublayer(0,jr.ReadOnly),p=Vr.disabled,f=t.colorModeForRenderPass(),d=[];for(let a=0;at.sortKey-e.sortKey));for(let e of d){let{programConfiguration:r,program:i,layoutVertexBuffer:a,indexBuffer:o,uniformValues:s,terrainData:l}=e.state;i.draw(c,u.TRIANGLES,h,p,f,qr.disabled,s,l,n.id,a,o,e.segments,n.paint,t.transform.zoom,r)}}(t,r,n,i);break;case"heatmap":!function(t,r,n,i){if(0===n.paint.get("heatmap-opacity"))return;let a=t.context;if(t.style.map.terrain){for(let e of i){let i=r.getTile(e);r.hasRenderableParent(e)||("offscreen"===t.renderPass?Jr(t,i,n,e):"translucent"===t.renderPass&&Qr(t,n,e))}a.viewport.set([0,0,t.width,t.height])}else"offscreen"===t.renderPass?function(t,r,n,i){let a=t.context,o=a.gl,s=Vr.disabled,l=new Fr([o.ONE,o.ONE],e.aM.transparent,[!0,!0,!0,!0]);(function(t,r,n){let i=t.gl;t.activeTexture.set(i.TEXTURE1),t.viewport.set([0,0,r.width/4,r.height/4]);let a=n.heatmapFbos.get(e.aU);a?(i.bindTexture(i.TEXTURE_2D,a.colorAttachment.get()),t.bindFramebuffer.set(a.framebuffer)):(a=tn(t,r.width/4,r.height/4),n.heatmapFbos.set(e.aU,a))})(a,t,n),a.clear({color:e.aM.transparent});for(let e=0;e20&&a.texParameterf(a.TEXTURE_2D,i.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.extTextureFilterAnisotropicMax);let _=t.style.map.terrain&&t.style.map.terrain.getTerrainData(n),b=_?n:null,w=b?b.posMatrix:t.transform.calculatePosMatrix(n.toUnwrapped(),p),T=Ue(w,m||[0,0],d||1,v,r);o instanceof tt?s.draw(i,a.TRIANGLES,u,Vr.disabled,l,qr.disabled,T,_,r.id,o.boundsBuffer,t.quadTriangleIndexBuffer,o.boundsSegments):s.draw(i,a.TRIANGLES,u,c[n.overscaledZ],l,qr.disabled,T,_,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}}(t,r,n,i);break;case"background":!function(t,e,r,n){let i=r.paint.get("background-color"),a=r.paint.get("background-opacity");if(0===a)return;let o=t.context,s=o.gl,l=t.transform,c=l.tileSize,u=r.paint.get("background-pattern");if(t.isPatternMissing(u))return;let h=!u&&1===i.a&&1===a&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass!==h)return;let p=Vr.disabled,f=t.depthModeForSublayer(0,"opaque"===h?jr.ReadWrite:jr.ReadOnly),d=t.colorModeForRenderPass(),m=t.useProgram(u?"backgroundPattern":"background"),g=n||l.coveringTiles({tileSize:c,terrain:t.style.map.terrain});u&&(o.activeTexture.set(s.TEXTURE0),t.imageManager.bind(t.context));let y=r.getCrossfadeParameters();for(let e of g){let l=n?e.posMatrix:t.transform.calculatePosMatrix(e.toUnwrapped()),h=u?Ze(l,a,t,u,{tileID:e,tileSize:c},y):We(l,a,i),g=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);m.draw(o,s.TRIANGLES,f,p,d,qr.disabled,h,g,r.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments)}}(t,0,n,i);break;case"custom":!function(t,e,r){let n=t.context,i=r.implementation;if("offscreen"===t.renderPass){let e=i.prerender;e&&(t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),e.call(i,n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState())}else if("translucent"===t.renderPass){t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),n.setStencilMode(Vr.disabled);let e="3d"===i.renderingMode?new jr(t.context.gl.LEQUAL,jr.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,jr.ReadOnly);n.setDepthMode(e),i.render(n.gl,t.transform.customLayerMatrix(),{farZ:t.transform.farZ,nearZ:t.transform.nearZ,fov:t.transform._fov,modelViewProjectionMatrix:t.transform.modelViewProjectionMatrix,projectionMatrix:t.transform.projectionMatrix}),n.setDirty(),t.setBaseState(),n.bindFramebuffer.set(null)}}(t,0,n)}}translatePosMatrix(t,r,n,i,a){if(!n[0]&&!n[1])return t;let o=a?"map"===i?this.transform.angle:0:"viewport"===i?-this.transform.angle:0;if(o){let t=Math.sin(o),e=Math.cos(o);n=[n[0]*e-n[1]*t,n[0]*t+n[1]*e]}let s=[a?n[0]:Bt(r,n[0],this.transform.zoom),a?n[1]:Bt(r,n[1],this.transform.zoom),0],l=new Float32Array(16);return e.J(l,t,s),l}saveTileTexture(t){let e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t]}getTileTexture(t){let e=this._tileTextures[t];return e&&e.length>0?e.pop():null}isPatternMissing(t){if(!t)return!1;if(!t.from||!t.to)return!0;let e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r}useProgram(t,e){this.cache=this.cache||{};let r=t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[r]||(this.cache[r]=new _e(this.context,me[t],e,Ye[t],this._showOverdrawInspector,this.style.map.terrain)),this.cache[r]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new w(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:t,drawingBufferHeight:e}=this.context.gl;return this.width!==t||this.height!==e}}class bn{constructor(t,e){this.points=t,this.planes=e}static fromInvProjectionMatrix(t,r,n){let i=Math.pow(2,n),a=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((n=>{let a=1/(n=e.af([],n,t))[3]/r*i;return e.b1(n,n,[a,a,1/n[3],a])})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((t=>{let e=function(t,e){var r=e[0],n=e[1],i=e[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t}([],(n=[],i=y([],a[t[0]],a[t[1]]),o=y([],a[t[2]],a[t[1]]),s=i[0],l=i[1],c=i[2],u=o[0],h=o[1],p=o[2],n[0]=l*p-c*h,n[1]=c*u-s*p,n[2]=s*h-l*u,n)),r=-((f=e)[0]*(d=a[t[1]])[0]+f[1]*d[1]+f[2]*d[2]);var n,i,o,s,l,c,u,h,p,f,d;return e.concat(r)}));return new bn(a,o)}}class wn{constructor(t,e){var r,n,i;this.min=t,this.max=e,this.center=function(t,e){return t[0]=.5*e[0],t[1]=.5*e[1],t[2]=.5*e[2],t}([],(r=[],n=this.min,i=this.max,r[0]=n[0]+i[0],r[1]=n[1]+i[1],r[2]=n[2]+i[2],r))}quadrant(t){let e=[t%2==0,t<2],r=m(this.min),n=m(this.max);for(let t=0;t=0&&o++;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(let e=0;e<3;e++){let r=Number.MAX_VALUE,n=-Number.MAX_VALUE;for(let i=0;ithis.max[e]-this.min[e])return 0}return 1}}class Tn{constructor(t=0,e=0,r=0,n=0){if(isNaN(t)||t<0||isNaN(e)||e<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=r,this.right=n}interpolate(t,r,n){return null!=r.top&&null!=t.top&&(this.top=e.y.number(t.top,r.top,n)),null!=r.bottom&&null!=t.bottom&&(this.bottom=e.y.number(t.bottom,r.bottom,n)),null!=r.left&&null!=t.left&&(this.left=e.y.number(t.left,r.left,n)),null!=r.right&&null!=t.right&&(this.right=e.y.number(t.right,r.right,n)),this}getCenter(t,r){let n=e.ac((this.left+t-this.right)/2,0,t),i=e.ac((this.top+r-this.bottom)/2,0,r);return new e.P(n,i)}equals(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right}clone(){return new Tn(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let An=85.051129;class kn{constructor(t,r,n,i,a){this.tileSize=512,this._renderWorldCopies=void 0===a||!!a,this._minZoom=t||0,this._maxZoom=r||22,this._minPitch=n??0,this._maxPitch=i??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Tn,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let t=new kn(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.apply(this),t}apply(t){this.tileSize=t.tileSize,this.latRange=t.latRange,this.lngRange=t.lngRange,this.width=t.width,this.height=t.height,this._center=t._center,this._elevation=t._elevation,this.minElevationForCurrentTile=t.minElevationForCurrentTile,this.zoom=t.zoom,this.angle=t.angle,this._fov=t._fov,this._pitch=t._pitch,this._unmodified=t._unmodified,this._edgeInsets=t._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))}get maxZoom(){return this._maxZoom}set maxZoom(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))}get minPitch(){return this._minPitch}set minPitch(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))}get maxPitch(){return this._maxPitch}set maxPitch(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(t){let r=-e.b3(t,-180,180)*Math.PI/180;var n;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=(n=new e.A(4),e.A!=Float32Array&&(n[1]=0,n[2]=0),n[0]=1,n[3]=1,n),function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=Math.sin(r),l=Math.cos(r);t[0]=n*l+a*s,t[1]=i*l+o*s,t[2]=n*-s+a*l,t[3]=i*-s+o*l}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(t){let r=e.ac(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(t){let e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.tileZoom=Math.max(0,Math.floor(e)),this.scale=this.zoomScale(e),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(t){t!==this._elevation&&(this._elevation=t,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(t){return this._edgeInsets.equals(t)}interpolatePadding(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()}coveringZoomLevel(t){let e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)}getVisibleUnwrappedCoordinates(t){let r=[new e.b4(0,t)];if(this._renderWorldCopies){let n=this.pointCoordinate(new e.P(0,0)),i=this.pointCoordinate(new e.P(this.width,0)),a=this.pointCoordinate(new e.P(this.width,this.height)),o=this.pointCoordinate(new e.P(0,this.height)),s=Math.floor(Math.min(n.x,i.x,a.x,o.x)),l=Math.floor(Math.max(n.x,i.x,a.x,o.x)),c=1;for(let n=s-c;n<=l+c;n++)0!==n&&r.push(new e.b4(n,t))}return r}coveringTiles(t){var r,n;let i=this.coveringZoomLevel(t),a=i;if(void 0!==t.minzoom&&it.maxzoom&&(i=t.maxzoom);let o=this.pointCoordinate(this.getCameraPoint()),s=e.Z.fromLngLat(this.center),l=Math.pow(2,i),c=[l*o.x,l*o.y,0],u=[l*s.x,l*s.y,0],h=bn.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,i),p=t.minzoom||0;!t.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(p=i);let f=t.terrain?2/Math.min(this.tileSize,t.tileSize)*this.tileSize:3,d=t=>({aabb:new wn([t*l,0,0],[(t+1)*l,l,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}),m=[],g=[],y=i,v=t.reparseOverscaled?a:i;if(this._renderWorldCopies)for(let t=1;t<=3;t++)m.push(d(-t)),m.push(d(t));for(m.push(d(0));m.length>0;){let i=m.pop(),a=i.x,o=i.y,s=i.fullyVisible;if(!s){let t=i.aabb.intersects(h);if(0===t)continue;s=2===t}let l=t.terrain?c:u,d=i.aabb.distanceX(l),_=i.aabb.distanceY(l),b=Math.max(Math.abs(d),Math.abs(_));if(i.zoom===y||b>f+(1<=p){let t=y-i.zoom,r=c[0]-.5-(a<>1),h=i.zoom+1,p=i.aabb.quadrant(l);if(t.terrain){let a=new e.S(h,i.wrap,h,c,u),o=t.terrain.getMinMaxElevation(a),s=null!==(r=o.minElevation)&&void 0!==r?r:this.elevation,l=null!==(n=o.maxElevation)&&void 0!==n?n:this.elevation;p=new wn([p.min[0],p.min[1],s],[p.max[0],p.max[1],l])}m.push({aabb:p,zoom:h,x:c,y:u,wrap:i.wrap,fullyVisible:s})}}return g.sort(((t,e)=>t.distanceSq-e.distanceSq)).map((t=>t.tileID))}resize(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(t){return Math.pow(2,t)}scaleZoom(t){return Math.log(t)/Math.LN2}project(t){let r=e.ac(t.lat,-85.051129,An);return new e.P(e.O(t.lng)*this.worldSize,e.Q(r)*this.worldSize)}unproject(t){return new e.Z(t.x/this.worldSize,t.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(t){let r=this.elevation,n=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,i=this.pointLocation(this.centerPoint,t),a=t.getElevationForLngLatZoom(i,this.tileZoom);if(!(this.elevation-a))return;let o=n+r-a,s=Math.cos(this._pitch)*this.cameraToCenterDistance/o/e.b5(1,i.lat),l=this.scaleZoom(s/this.tileSize);this._elevation=a,this._center=i,this.zoom=l}setLocationAtPoint(t,r){let n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(t),o=new e.Z(a.x-(n.x-i.x),a.y-(n.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(t,e){return e?this.coordinatePoint(this.locationCoordinate(t),e.getElevationForLngLatZoom(t,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(t))}pointLocation(t,e){return this.coordinateLocation(this.pointCoordinate(t,e))}locationCoordinate(t){return e.Z.fromLngLat(t)}coordinateLocation(t){return t&&t.toLngLat()}pointCoordinate(t,r){if(r){let e=r.pointCoordinate(t);if(null!=e)return e}let n=[t.x,t.y,0,1],i=[t.x,t.y,1,1];e.af(n,n,this.pixelMatrixInverse),e.af(i,i,this.pixelMatrixInverse);let a=n[3],o=i[3],s=n[1]/a,l=i[1]/o,c=n[2]/a,u=i[2]/o,h=c===u?0:(0-c)/(u-c);return new e.Z(e.y.number(n[0]/a,i[0]/o,h)/this.worldSize,e.y.number(s,l,h)/this.worldSize)}coordinatePoint(t,r=0,n=this.pixelMatrix){let i=[t.x*this.worldSize,t.y*this.worldSize,r,1];return e.af(i,i,n),new e.P(i[0]/i[3],i[1]/i[3])}getBounds(){let t=Math.max(0,this.height/2-this.getHorizon());return(new Z).extend(this.pointLocation(new e.P(0,t))).extend(this.pointLocation(new e.P(this.width,t))).extend(this.pointLocation(new e.P(this.width,this.height))).extend(this.pointLocation(new e.P(0,this.height)))}getMaxBounds(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new Z([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,An])}calculateTileMatrix(t){let r=t.canonical,n=this.worldSize/this.zoomScale(r.z),i=r.x+Math.pow(2,r.z)*t.wrap,a=e.an(new Float64Array(16));return e.J(a,a,[i*n,r.y*n,0]),e.K(a,a,[n/e.X,n/e.X,1]),a}calculatePosMatrix(t,r=!1){let n=t.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];let a=this.calculateTileMatrix(t);return e.L(a,r?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,a),i[n]=new Float32Array(a),i[n]}calculateFogMatrix(t){let r=t.key,n=this._fogMatrixCache;if(n[r])return n[r];let i=this.calculateTileMatrix(t);return e.L(i,this.fogMatrix,i),n[r]=new Float32Array(i),n[r]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(t,r){r=e.ac(+r,this.minZoom,this.maxZoom);let n={center:new e.N(t.lng,t.lat),zoom:r},i=this.lngRange;if(!this._renderWorldCopies&&null===i){let t=179.9999999999;i=[-t,t]}let a=this.tileSize*this.zoomScale(n.zoom),o=0,s=a,l=0,c=a,u=0,h=0,{x:p,y:f}=this.size;if(this.latRange){let t=this.latRange;o=e.Q(t[1])*a,s=e.Q(t[0])*a,s-os&&(m=s-t)}if(i){let t=(l+c)/2,r=g;this._renderWorldCopies&&(r=e.b3(g,t-a/2,t+a/2));let n=p/2;r-nc&&(d=c-n)}if(void 0!==d||void 0!==m){let t=new e.P(d??g,m??y);n.center=this.unproject.call({worldSize:a},t).wrap()}return n}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let t=this._unmodified,{center:e,zoom:r}=this.getConstrained(this.center,this.zoom);this.center=e,this.zoom=r,this._unmodified=t,this._constraining=!1}_calcMatrices(){if(!this.height)return;let t=this.centerOffset,r=this.point.x,n=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=e.b5(1,this.center.lat)*this.worldSize;let i=e.an(new Float64Array(16));e.K(i,i,[this.width/2,-this.height/2,1]),e.J(i,i,[1,-1,0]),this.labelPlaneMatrix=i,i=e.an(new Float64Array(16)),e.K(i,i,[1,-1,1]),e.J(i,i,[-1,-1,0]),e.K(i,i,[2/this.width,2/this.height,1]),this.glCoordMatrix=i;let a=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),o=Math.min(this.elevation,this.minElevationForCurrentTile),s=a-o*this._pixelPerMeter/Math.cos(this._pitch),l=o<0?s:a,c=Math.PI/2+this._pitch,u=this._fov*(.5+t.y/this.height),h=Math.sin(u)*l/Math.sin(e.ac(Math.PI-c-u,.01,Math.PI-.01)),p=this.getHorizon(),f=2*Math.atan(p/this.cameraToCenterDistance)*(.5+t.y/(2*p)),d=Math.sin(f)*l/Math.sin(e.ac(Math.PI-c-f,.01,Math.PI-.01)),m=Math.min(h,d);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*m+l),this.nearZ=this.height/50,i=new Float64Array(16),e.b6(i,this._fov,this.width/this.height,this.nearZ,this.farZ),i[8]=2*-t.x/this.width,i[9]=2*t.y/this.height,this.projectionMatrix=e.ae(i),e.K(i,i,[1,-1,1]),e.J(i,i,[0,0,-this.cameraToCenterDistance]),e.b7(i,i,this._pitch),e.ad(i,i,this.angle),e.J(i,i,[-r,-n,0]),this.mercatorMatrix=e.K([],i,[this.worldSize,this.worldSize,this.worldSize]),e.K(i,i,[1,1,this._pixelPerMeter]),this.pixelMatrix=e.L(new Float64Array(16),this.labelPlaneMatrix,i),e.J(i,i,[0,0,-this.elevation]),this.modelViewProjectionMatrix=i,this.invModelViewProjectionMatrix=e.as([],i),this.fogMatrix=new Float64Array(16),e.b6(this.fogMatrix,this._fov,this.width/this.height,a,this.farZ),this.fogMatrix[8]=2*-t.x/this.width,this.fogMatrix[9]=2*t.y/this.height,e.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),e.b7(this.fogMatrix,this.fogMatrix,this._pitch),e.ad(this.fogMatrix,this.fogMatrix,this.angle),e.J(this.fogMatrix,this.fogMatrix,[-r,-n,0]),e.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=e.L(new Float64Array(16),this.labelPlaneMatrix,i);let g=this.width%2/2,y=this.height%2/2,v=Math.cos(this.angle),x=Math.sin(this.angle),_=r-Math.round(r)+v*g+x*y,b=n-Math.round(n)+v*y+x*g,w=new Float64Array(i);if(e.J(w,w,[_>.5?_-1:_,b>.5?b-1:b,0]),this.alignedModelViewProjectionMatrix=w,i=e.as(new Float64Array(16),this.pixelMatrix),!i)throw new Error("failed to invert matrix");this.pixelMatrixInverse=i,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let t=this.pointCoordinate(new e.P(0,0)),r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.af(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let t=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.P(0,t))}getCameraQueryGeometry(t){let r=this.getCameraPoint();if(1===t.length)return[t[0],r];{let n=r.x,i=r.y,a=r.x,o=r.y;for(let e of t)n=Math.min(n,e.x),i=Math.min(i,e.y),a=Math.max(a,e.x),o=Math.max(o,e.y);return[new e.P(n,i),new e.P(a,i),new e.P(a,o),new e.P(n,o),new e.P(n,i)]}}lngLatToCameraDepth(t,r){let n=this.locationCoordinate(t),i=[n.x*this.worldSize,n.y*this.worldSize,r,1];return e.af(i,i,this.modelViewProjectionMatrix),i[2]/i[3]}}function Mn(t,e){let r,n=!1,i=null,a=null,o=()=>{i=null,n&&(t.apply(a,r),i=setTimeout(o,e),n=!1)};return(...t)=>(n=!0,a=this,r=t,i||o(),i)}class Sn{constructor(t){this._getCurrentHash=()=>{let t=window.location.hash.replace("#","");if(this._hashName){let e;return t.split("&").map((t=>t.split("="))).forEach((t=>{t[0]===this._hashName&&(e=t)})),(e&&e[1]||"").split("/")}return t.split("/")},this._onHashChange=()=>{let t=this._getCurrentHash();if(t.length>=3&&!t.some((t=>isNaN(t)))){let e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let t=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,t)},this._removeHash=()=>{let t=this._getCurrentHash();if(0===t.length)return;let e=t.join("/"),r=e;r.split("&").length>0&&(r=r.split("&")[0]),this._hashName&&(r=`${this._hashName}=${e}`);let n=window.location.hash.replace(r,"");n.startsWith("#&")?n=n.slice(0,1)+n.slice(2):"#"===n&&(n="");let i=window.location.href.replace(/(#.+)?$/,n);i=i.replace("&&","&"),window.history.replaceState(window.history.state,null,i)},this._updateHash=Mn(this._updateHashUnthrottled,300),this._hashName=t&&encodeURIComponent(t)}addTo(t){return this._map=t,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(t){let e=this._map.getCenter(),r=Math.round(100*this._map.getZoom())/100,n=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),i=Math.pow(10,n),a=Math.round(e.lng*i)/i,o=Math.round(e.lat*i)/i,s=this._map.getBearing(),l=this._map.getPitch(),c="";if(c+=t?`/${a}/${o}/${r}`:`${r}/${o}/${a}`,(s||l)&&(c+="/"+Math.round(10*s)/10),l&&(c+=`/${Math.round(l)}`),this._hashName){let t=this._hashName,e=!1,r=window.location.hash.slice(1).split("&").map((r=>{let n=r.split("=")[0];return n===t?(e=!0,`${n}=${c}`):r})).filter((t=>t));return e||r.push(`${t}=${c}`),`#${r.join("&")}`}return`#${c}`}}let En={linearity:.3,easing:e.b8(0,0,.3,1)},Cn=e.e({deceleration:2500,maxSpeed:1400},En),In=e.e({deceleration:20,maxSpeed:1400},En),Ln=e.e({deceleration:1e3,maxSpeed:360},En),Pn=e.e({deceleration:1e3,maxSpeed:90},En);class zn{constructor(t){this._map=t,this.clear()}clear(){this._inertiaBuffer=[]}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:a.now(),settings:t})}_drainInertiaBuffer(){let t=this._inertiaBuffer,e=a.now();for(;t.length>0&&e-t[0].time>160;)t.shift()}_onMoveEnd(t){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let r={zoom:0,bearing:0,pitch:0,pan:new e.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:t}of this._inertiaBuffer)r.zoom+=t.zoomDelta||0,r.bearing+=t.bearingDelta||0,r.pitch+=t.pitchDelta||0,t.panDelta&&r.pan._add(t.panDelta),t.around&&(r.around=t.around),t.pinchAround&&(r.pinchAround=t.pinchAround);let n=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,i={};if(r.pan.mag()){let a=On(r.pan.mag(),n,e.e({},Cn,t||{}));i.offset=r.pan.mult(a.amount/r.pan.mag()),i.center=this._map.transform.center,Dn(i,a)}if(r.zoom){let t=On(r.zoom,n,In);i.zoom=this._map.transform.zoom+t.amount,Dn(i,t)}if(r.bearing){let t=On(r.bearing,n,Ln);i.bearing=this._map.transform.bearing+e.ac(t.amount,-179,179),Dn(i,t)}if(r.pitch){let t=On(r.pitch,n,Pn);i.pitch=this._map.transform.pitch+t.amount,Dn(i,t)}if(i.zoom||i.bearing){let t=void 0===r.pinchAround?r.around:r.pinchAround;i.around=t?this._map.unproject(t):this._map.getCenter()}return this.clear(),e.e(i,{noMoveStart:!0})}}function Dn(t,e){(!t.duration||t.durationr.unproject(t))),l=a.reduce(((t,e,r,n)=>t.add(e.div(n.length))),new e.P(0,0));super(t,{points:a,point:l,lngLats:s,lngLat:r.unproject(l),originalEvent:n}),this._defaultPrevented=!1}}class Bn extends e.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(t,e,r){super(t,{originalEvent:r}),this._defaultPrevented=!1}}class jn{constructor(t,e){this._map=t,this._clickTolerance=e.clickTolerance}reset(){delete this._mousedownPos}wheel(t){return this._firePreventable(new Bn(t.type,this._map,t))}mousedown(t,e){return this._mousedownPos=e,this._firePreventable(new Rn(t.type,this._map,t))}mouseup(t){this._map.fire(new Rn(t.type,this._map,t))}click(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new Rn(t.type,this._map,t))}dblclick(t){return this._firePreventable(new Rn(t.type,this._map,t))}mouseover(t){this._map.fire(new Rn(t.type,this._map,t))}mouseout(t){this._map.fire(new Rn(t.type,this._map,t))}touchstart(t){return this._firePreventable(new Fn(t.type,this._map,t))}touchmove(t){this._map.fire(new Fn(t.type,this._map,t))}touchend(t){this._map.fire(new Fn(t.type,this._map,t))}touchcancel(t){this._map.fire(new Fn(t.type,this._map,t))}_firePreventable(t){if(this._map.fire(t),t.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Nn{constructor(t){this._map=t}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(t){this._map.fire(new Rn(t.type,this._map,t))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Rn("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(t){this._delayContextMenu?this._contextMenuEvent=t:this._ignoreContextMenu||this._map.fire(new Rn(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Un{constructor(t){this._map=t}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(t){return this.transform.pointLocation(e.P.convert(t),this._map.terrain)}}class Vn{constructor(t,e){this._map=t,this._tr=new Un(t),this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(o.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)}mousemoveWindow(t,e){if(!this._active)return;let r=e;if(this._lastPos.equals(r)||!this._box&&r.dist(this._startPos)t.fitScreenCoordinates(n,i,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",t)}keydown(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",t))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(o.remove(this._box),this._box=null),o.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(t,r){return this._map.fire(new e.k(t,{originalEvent:r}))}}function qn(t,e){if(t.length!==e.length)throw new Error(`The number of touches and points are not equal - touches ${t.length}, points ${e.length}`);let r={};for(let n=0;nthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),n.length===this.numTouches&&(this.centroid=function(t){let r=new e.P(0,0);for(let e of t)r._add(e);return r.div(t.length)}(r),this.touches=qn(n,r)))}touchmove(t,e,r){if(this.aborted||!this.centroid)return;let n=qn(r,e);for(let t in this.touches){let e=n[t];(!e||e.dist(this.touches[t])>30)&&(this.aborted=!0)}}touchend(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){let t=!this.aborted&&this.centroid;if(this.reset(),t)return t}}}class Gn{constructor(t){this.singleTap=new Hn(t),this.numTaps=t.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(t,e,r){this.singleTap.touchstart(t,e,r)}touchmove(t,e,r){this.singleTap.touchmove(t,e,r)}touchend(t,e,r){let n=this.singleTap.touchend(t,e,r);if(n){let e=t.timeStamp-this.lastTime<500,r=!this.lastTap||this.lastTap.dist(n)<30;if(e&&r||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}}}class Wn{constructor(t){this._tr=new Un(t),this._zoomIn=new Gn({numTouches:1,numTaps:2}),this._zoomOut=new Gn({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)}touchmove(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)}touchend(t,e,r){let n=this._zoomIn.touchend(t,e,r),i=this._zoomOut.touchend(t,e,r),a=this._tr;return n?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:a.zoom+1,around:a.unproject(n)},{originalEvent:t})}):i?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:a.zoom-1,around:a.unproject(i)},{originalEvent:t})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Zn{constructor(t){this._enabled=!!t.enable,this._moveStateManager=t.moveStateManager,this._clickTolerance=t.clickTolerance||1,this._moveFunction=t.move,this._activateOnStart=!!t.activateOnStart,t.assignEvents(this),this.reset()}reset(t){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(t)}_move(...t){let e=this._moveFunction(...t);if(e.bearingDelta||e.pitchDelta||e.around||e.panDelta)return this._active=!0,e}dragStart(t,e){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(t)&&(this._moveStateManager.startMove(t),this._lastPoint=e.length?e[0]:e,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(t,e){if(!this.isEnabled())return;let r=this._lastPoint;if(!r)return;if(t.preventDefault(),!this._moveStateManager.isValidMoveEvent(t))return void this.reset(t);let n=e.length?e[0]:e;return!this._moved&&n.dist(r){t.mousedown=t.dragStart,t.mousemoveWindow=t.dragMove,t.mouseup=t.dragEnd,t.contextmenu=t=>{t.preventDefault()}},Jn=({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:r=.8})=>{let n=new Xn({checkCorrectEvent:t=>0===o.mouseButton(t)&&t.ctrlKey||2===o.mouseButton(t)});return new Zn({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*r}),moveStateManager:n,enable:t,assignEvents:Kn})},Qn=({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:r=-.5})=>{let n=new Xn({checkCorrectEvent:t=>0===o.mouseButton(t)&&t.ctrlKey||2===o.mouseButton(t)});return new Zn({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*r}),moveStateManager:n,enable:t,assignEvents:Kn})};class ti{constructor(t,e){this._clickTolerance=t.clickTolerance||1,this._map=e,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new e.P(0,0)}_shouldBePrevented(t){return t<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(t,e,r){return this._calculateTransform(t,e,r)}touchmove(t,e,r){if(this._active){if(!this._shouldBePrevented(r.length))return t.preventDefault(),this._calculateTransform(t,e,r);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",t)}}touchend(t,e,r){this._calculateTransform(t,e,r),this._active&&this._shouldBePrevented(r.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(t,r,n){n.length>0&&(this._active=!0);let i=qn(n,r),a=new e.P(0,0),o=new e.P(0,0),s=0;for(let t in i){let e=i[t],r=this._touches[t];r&&(a._add(e),o._add(e.sub(r)),s++,i[t]=e)}if(this._touches=i,this._shouldBePrevented(s)||!o.mag())return;let l=o.div(s);return this._sum._add(l),this._sum.mag()Math.abs(t.x)}class li extends ei{constructor(t){super(),this._currentTouchCount=0,this._map=t}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(t,e,r){super.touchstart(t,e,r),this._currentTouchCount=r.length}_start(t){this._lastPoints=t,si(t[0].sub(t[1]))&&(this._valid=!1)}_move(t,e,r){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let n=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid?(this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}):void 0}gestureBeginsVertically(t,e,r){if(void 0!==this._valid)return this._valid;let n=t.mag()>=2,i=e.mag()>=2;if(!n&&!i)return;if(!n||!i)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;let a=t.y>0==e.y>0;return si(t)&&si(e)&&a}}let ci={panStep:100,bearingStep:15,pitchStep:10};class ui{constructor(t){this._tr=new Un(t);let e=ci;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(t){if(t.altKey||t.ctrlKey||t.metaKey)return;let e=0,r=0,n=0,i=0,a=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),i=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),i=1);break;case 38:t.shiftKey?n=1:(t.preventDefault(),a=-1);break;case 40:t.shiftKey?n=-1:(t.preventDefault(),a=1);break;default:return}return this._rotationDisabled&&(r=0,n=0),{cameraAnimation:o=>{let s=this._tr;o.easeTo({duration:300,easeId:"keyboardHandler",easing:hi,zoom:e?Math.round(s.zoom)+e*(t.shiftKey?2:1):s.zoom,bearing:s.bearing+r*this._bearingStep,pitch:s.pitch+n*this._pitchStep,offset:[-i*this._panStep,-a*this._panStep],center:s.center},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function hi(t){return t*(2-t)}let pi=4.000244140625;class fi{constructor(t,e){this._onTimeout=t=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)},this._map=t,this._tr=new Un(t),this._triggerRenderFrame=e,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(t){this._defaultZoomRate=t}setWheelZoomRate(t){this._wheelZoomRate=t}isEnabled(){return!!this._enabled}isActive(){return!!this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!t&&"center"===t.around)}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(t){return!!this._map.cooperativeGestures.isEnabled()&&!(t.ctrlKey||this._map.cooperativeGestures.isBypassed(t))}wheel(t){if(!this.isEnabled())return;if(this._shouldBePrevented(t))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",t);let e=t.deltaMode===WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY,r=a.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==e&&e%pi==0?this._type="wheel":0!==e&&Math.abs(e)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=e,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(n*e)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,e+=this._lastValue)),t.shiftKey&&e&&(e/=4),this._type&&(this._lastWheelEvent=t,this._delta-=e,this._active||this._start(t)),t.preventDefault()}_start(t){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let r=o.mousePos(this._map.getCanvas(),t),n=this._tr;this._around=r.y>n.transform.height/2-n.transform.getHorizon()?e.N.convert(this._aroundCenter?n.center:n.unproject(r)):e.N.convert(n.center),this._aroundPoint=n.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let t=this._tr.transform;if(0!==this._delta){let e="wheel"===this._type&&Math.abs(this._delta)>pi?this._wheelZoomRate:this._defaultZoomRate,r=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==r&&(r=1/r);let n="number"==typeof this._targetZoom?t.zoomScale(this._targetZoom):t.scale;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(n*r))),"wheel"===this._type&&(this._startZoom=t.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let r,n="number"==typeof this._targetZoom?this._targetZoom:t.zoom,i=this._startZoom,o=this._easing,s=!1,l=a.now()-this._lastWheelEventTime;if("wheel"===this._type&&i&&o&&l){let t=Math.min(l/200,1),a=o(t);r=e.y.number(i,n,a),t<1?this._frameId||(this._frameId=!0):s=!0}else r=n,s=!0;return this._active=!0,s&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!s,zoomDelta:r-t.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let r=e.b9;if(this._prevEase){let t=this._prevEase,n=(a.now()-t.start)/t.duration,i=t.easing(n+.01)-t.easing(n),o=.27/Math.sqrt(i*i+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=e.b8(o,s,.25,1)}return this._prevEase={start:a.now(),duration:t,easing:r},r}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class di{constructor(t,e){this._clickZoom=t,this._tapZoom=e}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class mi{constructor(t){this._tr=new Un(t),this.reset()}reset(){this._active=!1}dblclick(t,e){return t.preventDefault(),{cameraAnimation:r=>{r.easeTo({duration:300,zoom:this._tr.zoom+(t.shiftKey?-1:1),around:this._tr.unproject(e)},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class gi{constructor(){this._tap=new Gn({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(t,e,r){if(!this._swipePoint)if(this._tapTime){let n=e[0],i=t.timeStamp-this._tapTime<500,a=this._tapPoint.dist(n)<30;i&&a?r.length>0&&(this._swipePoint=n,this._swipeTouch=r[0].identifier):this.reset()}else this._tap.touchstart(t,e,r)}touchmove(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;let n=e[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,r)}touchend(t,e,r){if(this._tapTime)this._swipePoint&&0===r.length&&this.reset();else{let n=this._tap.touchend(t,e,r);n&&(this._tapTime=t.timeStamp,this._tapPoint=n)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class yi{constructor(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r}enable(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class vi{constructor(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class xi{constructor(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0}enable(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class _i{constructor(t,e){this._bypassKey=-1!==navigator.userAgent.indexOf("Mac")?"metaKey":"ctrlKey",this._map=t,this._options=e,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let t=this._map.getCanvasContainer();t.classList.add("maplibregl-cooperative-gestures"),this._container=o.create("div","maplibregl-cooperative-gesture-screen",t);let e=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");"metaKey"===this._bypassKey&&(e=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let r=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),n=document.createElement("div");n.className="maplibregl-desktop-message",n.textContent=e,this._container.appendChild(n);let i=document.createElement("div");i.className="maplibregl-mobile-message",i.textContent=r,this._container.appendChild(i),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(o.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(t){return t[this._bypassKey]}notifyGestureBlocked(t,r){this._enabled&&(this._map.fire(new e.k("cooperativegestureprevented",{gestureType:t,originalEvent:r})),this._container.classList.add("maplibregl-show"),setTimeout((()=>{this._container.classList.remove("maplibregl-show")}),100))}}let bi=t=>t.zoom||t.drag||t.pitch||t.rotate;class wi extends e.k{}function Ti(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}class Ai{constructor(t,e){this.handleWindowEvent=t=>{this.handleEvent(t,`${t.type}Window`)},this.handleEvent=(t,e)=>{if("blur"===t.type)return void this.stop(!0);this._updatingCamera=!0;let r="renderFrame"===t.type?void 0:t,n={needsRenderFrame:!1},i={},a={},s=t.touches,l=s?this._getMapTouches(s):void 0,c=l?o.touchPos(this._map.getCanvas(),l):o.mousePos(this._map.getCanvas(),t);for(let{handlerName:o,handler:s,allowed:u}of this._handlers){if(!s.isEnabled())continue;let h;this._blockedByActive(a,u,o)?s.reset():s[e||t.type]&&(h=s[e||t.type](t,c,l),this.mergeHandlerResult(n,i,h,o,r),h&&h.needsRenderFrame&&this._triggerRenderFrame()),(h||s.isActive())&&(a[o]=s)}let u={};for(let t in this._previousActiveHandlers)a[t]||(u[t]=r);this._previousActiveHandlers=a,(Object.keys(u).length||Ti(n))&&(this._changes.push([n,i,u]),this._triggerRenderFrame()),(Object.keys(a).length||Ti(n))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:h}=n;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map))},this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new zn(t),this._bearingSnap=e.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(e);let r=this._el;this._listeners=[[r,"touchstart",{passive:!0}],[r,"touchmove",{passive:!1}],[r,"touchend",void 0],[r,"touchcancel",void 0],[r,"mousedown",void 0],[r,"mousemove",void 0],[r,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[r,"mouseover",void 0],[r,"mouseout",void 0],[r,"dblclick",void 0],[r,"click",void 0],[r,"keydown",{capture:!1}],[r,"keyup",void 0],[r,"wheel",{passive:!1}],[r,"contextmenu",void 0],[window,"blur",void 0]];for(let[t,e,r]of this._listeners)o.addEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,r)}destroy(){for(let[t,e,r]of this._listeners)o.removeEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,r)}_addDefaultHandlers(t){let e=this._map,r=e.getCanvasContainer();this._add("mapEvent",new jn(e,t));let n=e.boxZoom=new Vn(e,t);this._add("boxZoom",n),t.interactive&&t.boxZoom&&n.enable();let i=e.cooperativeGestures=new _i(e,t.cooperativeGestures);this._add("cooperativeGestures",i),t.cooperativeGestures&&i.enable();let a=new Wn(e),s=new mi(e);e.doubleClickZoom=new di(s,a),this._add("tapZoom",a),this._add("clickZoom",s),t.interactive&&t.doubleClickZoom&&e.doubleClickZoom.enable();let l=new gi;this._add("tapDragZoom",l);let c=e.touchPitch=new li(e);this._add("touchPitch",c),t.interactive&&t.touchPitch&&e.touchPitch.enable(t.touchPitch);let u=Jn(t),h=Qn(t);e.dragRotate=new vi(t,u,h),this._add("mouseRotate",u,["mousePitch"]),this._add("mousePitch",h,["mouseRotate"]),t.interactive&&t.dragRotate&&e.dragRotate.enable();let p=(({enable:t,clickTolerance:e})=>{let r=new Xn({checkCorrectEvent:t=>0===o.mouseButton(t)&&!t.ctrlKey});return new Zn({clickTolerance:e,move:(t,e)=>({around:e,panDelta:e.sub(t)}),activateOnStart:!0,moveStateManager:r,enable:t,assignEvents:Kn})})(t),f=new ti(t,e);e.dragPan=new yi(r,p,f),this._add("mousePan",p),this._add("touchPan",f,["touchZoom","touchRotate"]),t.interactive&&t.dragPan&&e.dragPan.enable(t.dragPan);let d=new oi,m=new ii;e.touchZoomRotate=new xi(r,m,d,l),this._add("touchRotate",d,["touchPan","touchZoom"]),this._add("touchZoom",m,["touchPan","touchRotate"]),t.interactive&&t.touchZoomRotate&&e.touchZoomRotate.enable(t.touchZoomRotate);let g=e.scrollZoom=new fi(e,(()=>this._triggerRenderFrame()));this._add("scrollZoom",g,["mousePan"]),t.interactive&&t.scrollZoom&&e.scrollZoom.enable(t.scrollZoom);let y=e.keyboard=new ui(e);this._add("keyboard",y),t.interactive&&t.keyboard&&e.keyboard.enable(),this._add("blockableMapEvent",new Nn(e))}_add(t,e,r){this._handlers.push({handlerName:t,handler:e,allowed:r}),this._handlersById[t]=e}stop(t){if(!this._updatingCamera){for(let{handler:t}of this._handlers)t.reset();this._inertia.clear(),this._fireEvents({},{},t),this._changes=[]}}isActive(){for(let{handler:t}of this._handlers)if(t.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!bi(this._eventsInProgress)||this.isZooming()}_blockedByActive(t,e,r){for(let n in t)if(n!==r&&(!e||e.indexOf(n)<0))return!0;return!1}_getMapTouches(t){let e=[];for(let r of t)this._el.contains(r.target)&&e.push(r);return e}mergeHandlerResult(t,r,n,i,a){if(!n)return;e.e(t,n);let o={handlerName:i,originalEvent:n.originalEvent||a};void 0!==n.zoomDelta&&(r.zoom=o),void 0!==n.panDelta&&(r.drag=o),void 0!==n.pitchDelta&&(r.pitch=o),void 0!==n.bearingDelta&&(r.rotate=o)}_applyChanges(){let t={},r={},n={};for(let[i,a,o]of this._changes)i.panDelta&&(t.panDelta=(t.panDelta||new e.P(0,0))._add(i.panDelta)),i.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+i.zoomDelta),i.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+i.bearingDelta),i.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+i.pitchDelta),void 0!==i.around&&(t.around=i.around),void 0!==i.pinchAround&&(t.pinchAround=i.pinchAround),i.noInertia&&(t.noInertia=i.noInertia),e.e(r,a),e.e(n,o);this._updateMapTransform(t,r,n),this._changes=[]}_updateMapTransform(t,e,r){let n=this._map,i=n._getTransformForUpdate(),a=n.terrain;if(!(Ti(t)||a&&this._terrainMovement))return this._fireEvents(e,r,!0);let{panDelta:o,zoomDelta:s,bearingDelta:l,pitchDelta:c,around:u,pinchAround:h}=t;void 0!==h&&(u=h),n._stop(!0),u=u||n.transform.centerPoint;let p=i.pointLocation(o?u.sub(o):u);l&&(i.bearing+=l),c&&(i.pitch+=c),s&&(i.zoom+=s),a?this._terrainMovement||!e.drag&&!e.zoom?e.drag&&this._terrainMovement?i.center=i.pointLocation(i.centerPoint.sub(o)):i.setLocationAtPoint(p,u):(this._terrainMovement=!0,this._map._elevationFreeze=!0,i.setLocationAtPoint(p,u)):i.setLocationAtPoint(p,u),n._applyUpdatedTransform(i),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,r,!0)}_fireEvents(t,r,n){let i=bi(this._eventsInProgress),o=bi(t),s={};for(let e in t){let{originalEvent:r}=t[e];this._eventsInProgress[e]||(s[`${e}start`]=r),this._eventsInProgress[e]=t[e]}!i&&o&&this._fireEvent("movestart",o.originalEvent);for(let t in s)this._fireEvent(t,s[t]);o&&this._fireEvent("move",o.originalEvent);for(let e in t){let{originalEvent:r}=t[e];this._fireEvent(e,r)}let l,c={};for(let t in this._eventsInProgress){let{handlerName:e,originalEvent:n}=this._eventsInProgress[t];this._handlersById[e].isActive()||(delete this._eventsInProgress[t],l=r[e]||n,c[`${t}end`]=l)}for(let t in c)this._fireEvent(t,c[t]);let u=bi(this._eventsInProgress),h=(i||o)&&!u;if(h&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let t=this._map._getTransformForUpdate();t.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(t)}if(n&&h){this._updatingCamera=!0;let t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),r=t=>0!==t&&-this._bearingSnap{delete this._frameId,this.handleEvent(new wi("renderFrame",{timeStamp:t})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}class ki extends e.E{constructor(t,e){super(),this._renderFrameCallback=()=>{let t=Math.min((a.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=e.bearingSnap,this.on("moveend",(()=>{delete this._requestedCameraState}))}getCenter(){return new e.N(this.transform.center.lng,this.transform.center.lat)}setCenter(t,e){return this.jumpTo({center:t},e)}panBy(t,r,n){return t=e.P.convert(t).mult(-1),this.panTo(this.transform.center,e.e({offset:t},r),n)}panTo(t,r,n){return this.easeTo(e.e({center:t},r),n)}getZoom(){return this.transform.zoom}setZoom(t,e){return this.jumpTo({zoom:t},e),this}zoomTo(t,r,n){return this.easeTo(e.e({zoom:t},r),n)}zoomIn(t,e){return this.zoomTo(this.getZoom()+1,t,e),this}zoomOut(t,e){return this.zoomTo(this.getZoom()-1,t,e),this}getBearing(){return this.transform.bearing}setBearing(t,e){return this.jumpTo({bearing:t},e),this}getPadding(){return this.transform.padding}setPadding(t,e){return this.jumpTo({padding:t},e),this}rotateTo(t,r,n){return this.easeTo(e.e({bearing:t},r),n)}resetNorth(t,r){return this.rotateTo(0,e.e({duration:1e3},t),r),this}resetNorthPitch(t,r){return this.easeTo(e.e({bearing:0,pitch:0,duration:1e3},t),r),this}snapToNorth(t,e){return Math.abs(this.getBearing()){if(this._zooming&&(i.zoom=e.y.number(o,y,n)),this._rotating&&(i.bearing=e.y.number(s,u,n)),this._pitching&&(i.pitch=e.y.number(l,h,n)),this._padding&&(i.interpolatePadding(c,p,n),d=i.centerPoint.add(f)),this.terrain&&!t.freezeElevation&&this._updateElevation(n),v)i.setLocationAtPoint(v,x);else{let t=i.zoomScale(i.zoom-o),e=y>o?Math.min(2,w):Math.max(.5,w),r=Math.pow(e,1-n),a=i.unproject(_.add(b.mult(n*r)).mult(t));i.setLocationAtPoint(i.renderWorldCopies?a.wrap():a,d)}this._applyUpdatedTransform(i),this._fireMoveEvents(r)}),(e=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(r,e)}),t),this}_prepareEase(t,r,n={}){this._moving=!0,r||n.moving||this.fire(new e.k("movestart",t)),this._zooming&&!n.zooming&&this.fire(new e.k("zoomstart",t)),this._rotating&&!n.rotating&&this.fire(new e.k("rotatestart",t)),this._pitching&&!n.pitching&&this.fire(new e.k("pitchstart",t))}_prepareElevation(t){this._elevationCenter=t,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(t,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(t){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let r=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(t<1&&r!==this._elevationTarget){let e=this._elevationTarget-this._elevationStart;this._elevationStart+=t*(e-(r-(e*t+this._elevationStart))/(1-t)),this._elevationTarget=r}this.transform.elevation=e.y.number(this._elevationStart,this._elevationTarget,t)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(t){let e=t.getCameraPosition(),r=this.terrain.getElevationForLngLatZoom(e.lngLat,t.zoom);if(e.altitudethis._elevateCameraIfInsideTerrain(t))),this.transformCameraUpdate&&e.push((t=>this.transformCameraUpdate(t))),!e.length)return;let r=t.clone();for(let t of e){let e=r.clone(),{center:n,zoom:i,pitch:a,bearing:o,elevation:s}=t(e);n&&(e.center=n),void 0!==i&&(e.zoom=i),void 0!==a&&(e.pitch=a),void 0!==o&&(e.bearing=o),void 0!==s&&(e.elevation=s),r.apply(e)}this.transform.apply(r)}_fireMoveEvents(t){this.fire(new e.k("move",t)),this._zooming&&this.fire(new e.k("zoom",t)),this._rotating&&this.fire(new e.k("rotate",t)),this._pitching&&this.fire(new e.k("pitch",t))}_afterEase(t,r){if(this._easeId&&r&&this._easeId===r)return;delete this._easeId;let n=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new e.k("zoomend",t)),i&&this.fire(new e.k("rotateend",t)),a&&this.fire(new e.k("pitchend",t)),this.fire(new e.k("moveend",t))}flyTo(t,r){var n;if(!t.essential&&a.prefersReducedMotion){let n=e.M(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(n,r)}this.stop(),t=e.e({offset:[0,0],speed:1.2,curve:1.42,easing:e.b9},t);let i=this._getTransformForUpdate(),o=i.zoom,s=i.bearing,l=i.pitch,c=i.padding,u="bearing"in t?this._normalizeBearing(t.bearing,s):s,h="pitch"in t?+t.pitch:l,p="padding"in t?t.padding:i.padding,f=e.P.convert(t.offset),d=i.centerPoint.add(f),m=i.pointLocation(d),{center:g,zoom:y}=i.getConstrained(e.N.convert(t.center||m),null!==(n=t.zoom)&&void 0!==n?n:o);this._normalizeCenter(g,i);let v=i.zoomScale(y-o),x=i.project(m),_=i.project(g).sub(x),b=t.curve,w=Math.max(i.width,i.height),T=w/v,A=_.mag();if("minZoom"in t){let r=e.ac(Math.min(t.minZoom,o,y),i.minZoom,i.maxZoom),n=w/i.zoomScale(r-o);b=Math.sqrt(n/A*2)}let k=b*b;function M(t){let e=(T*T-w*w+(t?-1:1)*k*k*A*A)/(2*(t?T:w)*k*A);return Math.log(Math.sqrt(e*e+1)-e)}function S(t){return(Math.exp(t)-Math.exp(-t))/2}function E(t){return(Math.exp(t)+Math.exp(-t))/2}let C=M(!1),I=function(t){return E(C)/E(C+b*t)},L=function(t){return w*((E(C)*(S(e=C+b*t)/E(e))-S(C))/k)/A;var e},P=(M(!0)-C)/b;if(Math.abs(A)<1e-6||!isFinite(P)){if(Math.abs(w-T)<1e-6)return this.easeTo(t,r);let e=T0,I=t=>Math.exp(e*b*t)}return t.duration="duration"in t?+t.duration:1e3*P/("screenSpeed"in t?+t.screenSpeed/b:+t.speed),t.maxDuration&&t.duration>t.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=s!==u,this._pitching=h!==l,this._padding=!i.isPaddingEqual(p),this._prepareEase(r,!1),this.terrain&&this._prepareElevation(g),this._ease((n=>{let a=n*P,m=1/I(a);i.zoom=1===n?y:o+i.scaleZoom(m),this._rotating&&(i.bearing=e.y.number(s,u,n)),this._pitching&&(i.pitch=e.y.number(l,h,n)),this._padding&&(i.interpolatePadding(c,p,n),d=i.centerPoint.add(f)),this.terrain&&!t.freezeElevation&&this._updateElevation(n);let v=1===n?g:i.unproject(x.add(_.mult(L(a))).mult(m));i.setLocationAtPoint(i.renderWorldCopies?v.wrap():v,d),this._applyUpdatedTransform(i),this._fireMoveEvents(r)}),(()=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(r)}),t),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(t,e){var r;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let t=this._onEaseEnd;delete this._onEaseEnd,t.call(this,e)}return t||null===(r=this.handlers)||void 0===r||r.stop(!1),this}_ease(t,e,r){!1===r.animate||0===r.duration?(t(1),e()):(this._easeStart=a.now(),this._easeOptions=r,this._onEaseFrame=t,this._onEaseEnd=e,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(t,r){t=e.b3(t,-180,180);let n=Math.abs(t-r);return Math.abs(t-360-r)180?-360:r<-180?360:0}queryTerrainElevation(t){return this.terrain?this.terrain.getElevationForLngLatZoom(e.N.convert(t),this.transform.tileZoom)-this.transform.elevation:null}}let Mi={compact:!0,customAttribution:'MapLibre'};class Si{constructor(t=Mi){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=t=>{!t||"metadata"!==t.sourceDataType&&"visibility"!==t.sourceDataType&&"style"!==t.dataType&&"terrain"!==t.type||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1===this._compact?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=t}getDefaultPosition(){return"bottom-right"}onAdd(t){return this._map=t,this._compact=this.options.compact,this._container=o.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=o.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(t,e){let r=this._map._getUIString(`AttributionControl.${e}`);t.title=r,t.setAttribute("aria-label",r)}_updateAttributions(){if(!this._map.style)return;let t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((t=>"string"!=typeof t?"":t))):"string"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){let t=this._map.style.stylesheet;this.styleOwner=t.owner,this.styleId=t.id}let e=this._map.style.sourceCaches;for(let r in e){let n=e[r];if(n.used||n.usedForTerrain){let e=n.getSource();e.attribution&&t.indexOf(e.attribution)<0&&t.push(e.attribution)}}t=t.filter((t=>String(t).trim())),t.sort(((t,e)=>t.length-e.length)),t=t.filter(((e,r)=>{for(let n=r+1;n=0)return!1;return!0}));let r=t.join(" | ");r!==this._attribHTML&&(this._attribHTML=r,t.length?(this._innerContainer.innerHTML=r,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Ei{constructor(t={}){this._updateCompact=()=>{let t=this._container.children;if(t.length){let e=t[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1!==this._compact&&e.classList.add("maplibregl-compact"):e.classList.remove("maplibregl-compact")}},this.options=t}getDefaultPosition(){return"bottom-left"}onAdd(t){this._map=t,this._compact=this.options&&this.options.compact,this._container=o.create("div","maplibregl-ctrl");let e=o.create("a","maplibregl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://maplibre.org/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){o.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Ci{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(t){let e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e}remove(t){let e=this._currentlyRunning,r=e?this._queue.concat(e):this._queue;for(let e of r)if(e.id===t)return void(e.cancelled=!0)}run(t=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let e=this._currentlyRunning=this._queue;this._queue=[];for(let r of e)if(!r.cancelled&&(r.callback(t),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ii=e.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Li extends e.E{constructor(t){super(),this.sourceCache=t,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,t.usedForTerrain=!0,t.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(t,r){this.sourceCache.update(t,r),this._renderableTilesKeys=[];let n={};for(let i of t.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:r}))n[i.key]=!0,this._renderableTilesKeys.push(i.key),this._tiles[i.key]||(i.posMatrix=new Float64Array(16),e.aP(i.posMatrix,0,e.X,0,e.X,0,1),this._tiles[i.key]=new ct(i,this.tileSize));for(let t in this._tiles)n[t]||delete this._tiles[t]}freeRtt(t){for(let e in this._tiles){let r=this._tiles[e];(!t||r.tileID.equals(t)||r.tileID.isChildOf(t)||t.isChildOf(r.tileID))&&(r.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map((t=>this.getTileByID(t)))}getTileByID(t){return this._tiles[t]}getTerrainCoords(t){let r={};for(let n of this._renderableTilesKeys){let i=this._tiles[n].tileID;if(i.canonical.equals(t.canonical)){let i=t.clone();i.posMatrix=new Float64Array(16),e.aP(i.posMatrix,0,e.X,0,e.X,0,1),r[n]=i}else if(i.canonical.isChildOf(t.canonical)){let a=t.clone();a.posMatrix=new Float64Array(16);let o=i.canonical.z-t.canonical.z,s=i.canonical.x-(i.canonical.x>>o<>o<>o;e.aP(a.posMatrix,0,c,0,c,0,1),e.J(a.posMatrix,a.posMatrix,[-s*c,-l*c,0]),r[n]=a}else if(t.canonical.isChildOf(i.canonical)){let a=t.clone();a.posMatrix=new Float64Array(16);let o=t.canonical.z-i.canonical.z,s=t.canonical.x-(t.canonical.x>>o<>o<>o;e.aP(a.posMatrix,0,e.X,0,e.X,0,1),e.J(a.posMatrix,a.posMatrix,[s*c,l*c,0]),e.K(a.posMatrix,a.posMatrix,[1/2**o,1/2**o,0]),r[n]=a}}return r}getSourceTile(t,e){let r=this.sourceCache._source,n=t.overscaledZ-this.deltaZoom;if(n>r.maxzoom&&(n=r.maxzoom),n=r.minzoom&&(!i||!i.dem);)i=this.sourceCache.getTileByID(t.scaledTo(n--).key);return i}tilesAfterTime(t=Date.now()){return Object.values(this._tiles).filter((e=>e.timeAdded>=t))}}class Pi{constructor(t,e,r){this.painter=t,this.sourceCache=new Li(e),this.options=r,this.exaggeration="number"==typeof r.exaggeration?r.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(t,r,n,i=e.X){var a;if(!(r>=0&&r=0&&nt.canonical.z&&(t.canonical.z>=n?i=t.canonical.z-n:e.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let a=t.canonical.x-(t.canonical.x>>i<>i<>8<<4|t>>8,r[e+3]=0;let n=new e.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(r.buffer)),i=new w(t,n,t.gl.RGBA,{premultiply:!1});return i.bind(t.gl.NEAREST,t.gl.CLAMP_TO_EDGE),this._coordsTexture=i,i}pointCoordinate(t){this.painter.maybeDrawDepthAndCoords(!0);let r=new Uint8Array(4),n=this.painter.context,i=n.gl,a=Math.round(t.x*this.painter.pixelRatio/devicePixelRatio),o=Math.round(t.y*this.painter.pixelRatio/devicePixelRatio),s=Math.round(this.painter.height/devicePixelRatio);n.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),i.readPixels(a,s-o-1,1,1,i.RGBA,i.UNSIGNED_BYTE,r),n.bindFramebuffer.set(null);let l=r[0]+(r[2]>>4<<8),c=r[1]+((15&r[2])<<8),u=this.coordsIndex[255-r[3]],h=u&&this.sourceCache.getTileByID(u);if(!h)return null;let p=this._coordsTextureSize,f=(1<t.id!==e)),this._recentlyUsed.push(t.id)}stampObject(t){t.stamp=++this._stamp}getOrCreateFreeObject(){for(let t of this._recentlyUsed)if(!this._objects[t].inUse)return this._objects[t];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let t=this._createObject(this._objects.length);return this._objects.push(t),t}freeObject(t){t.inUse=!1}freeAllObjects(){for(let t of this._objects)this.freeObject(t)}isFull(){return!(this._objects.length!t.inUse))}}let Di={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Oi{constructor(t,e){this.painter=t,this.terrain=e,this.pool=new zi(t.context,30,e.sourceCache.tileSize*e.qualityFactor)}destruct(){this.pool.destruct()}getTexture(t){return this.pool.getObjectForId(t.rtt[this._stacks.length-1].id).texture}prepareForRender(t,e){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=t._order.filter((r=>!t._layers[r].isHidden(e))),this._coordsDescendingInv={};for(let e in t.sourceCaches){this._coordsDescendingInv[e]={};let r=t.sourceCaches[e].getVisibleCoordinates();for(let t of r){let r=this.terrain.sourceCache.getTerrainCoords(t);for(let t in r)this._coordsDescendingInv[e][t]||(this._coordsDescendingInv[e][t]=[]),this._coordsDescendingInv[e][t].push(r[t])}}this._coordsDescendingInvStr={};for(let e of t._order){let r=t._layers[e],n=r.source;if(Di[r.type]&&!this._coordsDescendingInvStr[n]){this._coordsDescendingInvStr[n]={};for(let t in this._coordsDescendingInv[n])this._coordsDescendingInvStr[n][t]=this._coordsDescendingInv[n][t].map((t=>t.key)).sort().join()}}for(let t of this._renderableTiles)for(let e in this._coordsDescendingInvStr){let r=this._coordsDescendingInvStr[e][t.tileID.key];r&&r!==t.rttCoords[e]&&(t.rtt=[])}}renderLayer(t){if(t.isHidden(this.painter.transform.zoom))return!1;let r=t.type,n=this.painter,i=this._renderableLayerIds[this._renderableLayerIds.length-1]===t.id;if(Di[r]&&(this._prevType&&Di[this._prevType]||this._stacks.push([]),this._prevType=r,this._stacks[this._stacks.length-1].push(t.id),!i))return!0;if(Di[this._prevType]||Di[r]&&i){this._prevType=r;let t=this._stacks.length-1,i=this._stacks[t]||[];for(let r of this._renderableTiles){if(this.pool.isFull()&&(vn(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(r),r.rtt[t]){let e=this.pool.getObjectForId(r.rtt[t].id);if(e.stamp===r.rtt[t].stamp){this.pool.useObject(e);continue}}let a=this.pool.getOrCreateFreeObject();this.pool.useObject(a),this.pool.stampObject(a),r.rtt[t]={id:a.id,stamp:a.stamp},n.context.bindFramebuffer.set(a.fbo.framebuffer),n.context.clear({color:e.aM.transparent,stencil:0}),n.currentStencilSource=void 0;for(let t=0;t{t.touchstart=t.dragStart,t.touchmoveWindow=t.dragMove,t.touchend=t.dragEnd},Ui={showCompass:!0,showZoom:!0,visualizePitch:!1};class Vi{constructor(t,r,n=!1){this.mousedown=t=>{this.startMouse(e.e({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),o.mousePos(this.element,t)),o.addEventListener(window,"mousemove",this.mousemove),o.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=t=>{this.moveMouse(t,o.mousePos(this.element,t))},this.mouseup=t=>{this.mouseRotate.dragEnd(t),this.mousePitch&&this.mousePitch.dragEnd(t),this.offTemp()},this.touchstart=t=>{1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=o.touchPos(this.element,t.targetTouches)[0],this.startTouch(t,this._startPos),o.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),o.addEventListener(window,"touchend",this.touchend))},this.touchmove=t=>{1!==t.targetTouches.length?this.reset():(this._lastPos=o.touchPos(this.element,t.targetTouches)[0],this.moveTouch(t,this._lastPos))},this.touchend=t=>{0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let i=t.dragRotate._mouseRotate.getClickTolerance(),a=t.dragRotate._mousePitch.getClickTolerance();this.element=r,this.mouseRotate=Jn({clickTolerance:i,enable:!0}),this.touchRotate=(({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:r=.8})=>{let n=new $n;return new Zn({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*r}),moveStateManager:n,enable:t,assignEvents:Ni})})({clickTolerance:i,enable:!0}),this.map=t,n&&(this.mousePitch=Qn({clickTolerance:a,enable:!0}),this.touchPitch=(({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:r=-.5})=>{let n=new $n;return new Zn({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*r}),moveStateManager:n,enable:t,assignEvents:Ni})})({clickTolerance:a,enable:!0})),o.addEventListener(r,"mousedown",this.mousedown),o.addEventListener(r,"touchstart",this.touchstart,{passive:!1}),o.addEventListener(r,"touchcancel",this.reset)}startMouse(t,e){this.mouseRotate.dragStart(t,e),this.mousePitch&&this.mousePitch.dragStart(t,e),o.disableDrag()}startTouch(t,e){this.touchRotate.dragStart(t,e),this.touchPitch&&this.touchPitch.dragStart(t,e),o.disableDrag()}moveMouse(t,e){let r=this.map,{bearingDelta:n}=this.mouseRotate.dragMove(t,e)||{};if(n&&r.setBearing(r.getBearing()+n),this.mousePitch){let{pitchDelta:n}=this.mousePitch.dragMove(t,e)||{};n&&r.setPitch(r.getPitch()+n)}}moveTouch(t,e){let r=this.map,{bearingDelta:n}=this.touchRotate.dragMove(t,e)||{};if(n&&r.setBearing(r.getBearing()+n),this.touchPitch){let{pitchDelta:n}=this.touchPitch.dragMove(t,e)||{};n&&r.setPitch(r.getPitch()+n)}}off(){let t=this.element;o.removeEventListener(t,"mousedown",this.mousedown),o.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),o.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),o.removeEventListener(window,"touchend",this.touchend),o.removeEventListener(t,"touchcancel",this.reset),this.offTemp()}offTemp(){o.enableDrag(),o.removeEventListener(window,"mousemove",this.mousemove),o.removeEventListener(window,"mouseup",this.mouseup),o.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),o.removeEventListener(window,"touchend",this.touchend)}}function qi(t,r,n){let i=new e.N(t.lng,t.lat);if(t=new e.N(t.lng,t.lat),r){let i=new e.N(t.lng-360,t.lat),a=new e.N(t.lng+360,t.lat),o=n.locationPoint(t).distSqr(r);n.locationPoint(i).distSqr(r)180;){let e=n.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=n.width&&e.y<=n.height)break;t.lng>n.center.lng?t.lng-=360:t.lng+=360}return t.lng!==i.lng&&n.locationPoint(t).y>n.height/2-n.getHorizon()?t:i}let Hi={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Gi(t,e,r){let n=t.classList;for(let t in Hi)n.remove(`maplibregl-${r}-anchor-${t}`);n.add(`maplibregl-${r}-anchor-${e}`)}class Wi extends e.E{constructor(t){if(super(),this._onKeyPress=t=>{let e=t.code,r=t.charCode||t.keyCode;"Space"!==e&&"Enter"!==e&&32!==r&&13!==r||this.togglePopup()},this._onMapClick=t=>{let e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},this._update=t=>{var e;if(!this._map)return;let r=this._map.loaded()&&!this._map.isMoving();("terrain"===t?.type||"render"===t?.type&&!r)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?qi(this._lngLat,this._flatPos,this._map.transform):null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let n="";"viewport"===this._rotationAlignment||"auto"===this._rotationAlignment?n=`rotateZ(${this._rotation}deg)`:"map"===this._rotationAlignment&&(n=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let i="";"viewport"===this._pitchAlignment||"auto"===this._pitchAlignment?i="rotateX(0deg)":"map"===this._pitchAlignment&&(i=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||t&&"moveend"!==t.type||(this._pos=this._pos.round()),o.setTransform(this._element,`${Hi[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${i} ${n}`),a.frameAsync(new AbortController).then((()=>{this._updateOpacity(t&&"moveend"===t.type)})).catch((()=>{}))},this._onMove=t=>{if(!this._isDragging){let e=this._clickTolerance||this._map._clickTolerance;this._isDragging=t.point.dist(this._pointerdownPos)>=e}this._isDragging&&(this._pos=t.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none","pending"===this._state&&(this._state="active",this.fire(new e.k("dragstart"))),this.fire(new e.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),"active"===this._state&&this.fire(new e.k("dragend")),this._state="inactive"},this._addDragHandler=t=>{this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=t&&t.anchor||"center",this._color=t&&t.color||"#3FB1CE",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._subpixelPositioning=t&&t.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||"auto",this._pitchAlignment=t&&t.pitchAlignment&&"auto"!==t.pitchAlignment?t.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(t?.opacity,t?.opacityWhenCovered),t&&t.element)this._element=t.element,this._offset=e.P.convert(t&&t.offset||[0,0]);else{this._defaultMarker=!0,this._element=o.create("div");let r=o.createNS("http://www.w3.org/2000/svg","svg"),n=41,i=27;r.setAttributeNS(null,"display","block"),r.setAttributeNS(null,"height",`${n}px`),r.setAttributeNS(null,"width",`${i}px`),r.setAttributeNS(null,"viewBox",`0 0 ${i} ${n}`);let a=o.createNS("http://www.w3.org/2000/svg","g");a.setAttributeNS(null,"stroke","none"),a.setAttributeNS(null,"stroke-width","1"),a.setAttributeNS(null,"fill","none"),a.setAttributeNS(null,"fill-rule","evenodd");let s=o.createNS("http://www.w3.org/2000/svg","g");s.setAttributeNS(null,"fill-rule","nonzero");let l=o.createNS("http://www.w3.org/2000/svg","g");l.setAttributeNS(null,"transform","translate(3.0, 29.0)"),l.setAttributeNS(null,"fill","#000000");let c=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let t of c){let e=o.createNS("http://www.w3.org/2000/svg","ellipse");e.setAttributeNS(null,"opacity","0.04"),e.setAttributeNS(null,"cx","10.5"),e.setAttributeNS(null,"cy","5.80029008"),e.setAttributeNS(null,"rx",t.rx),e.setAttributeNS(null,"ry",t.ry),l.appendChild(e)}let u=o.createNS("http://www.w3.org/2000/svg","g");u.setAttributeNS(null,"fill",this._color);let h=o.createNS("http://www.w3.org/2000/svg","path");h.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),u.appendChild(h);let p=o.createNS("http://www.w3.org/2000/svg","g");p.setAttributeNS(null,"opacity","0.25"),p.setAttributeNS(null,"fill","#000000");let f=o.createNS("http://www.w3.org/2000/svg","path");f.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),p.appendChild(f);let d=o.createNS("http://www.w3.org/2000/svg","g");d.setAttributeNS(null,"transform","translate(6.0, 7.0)"),d.setAttributeNS(null,"fill","#FFFFFF");let m=o.createNS("http://www.w3.org/2000/svg","g");m.setAttributeNS(null,"transform","translate(8.0, 8.0)");let g=o.createNS("http://www.w3.org/2000/svg","circle");g.setAttributeNS(null,"fill","#000000"),g.setAttributeNS(null,"opacity","0.25"),g.setAttributeNS(null,"cx","5.5"),g.setAttributeNS(null,"cy","5.5"),g.setAttributeNS(null,"r","5.4999962");let y=o.createNS("http://www.w3.org/2000/svg","circle");y.setAttributeNS(null,"fill","#FFFFFF"),y.setAttributeNS(null,"cx","5.5"),y.setAttributeNS(null,"cy","5.5"),y.setAttributeNS(null,"r","5.4999962"),m.appendChild(g),m.appendChild(y),s.appendChild(l),s.appendChild(u),s.appendChild(p),s.appendChild(d),s.appendChild(m),r.appendChild(s),r.setAttributeNS(null,"height",n*this._scale+"px"),r.setAttributeNS(null,"width",i*this._scale+"px"),this._element.appendChild(r),this._offset=e.P.convert(t&&t.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",(t=>{t.preventDefault()})),this._element.addEventListener("mousedown",(t=>{t.preventDefault()})),Gi(this._element,this._anchor,"marker"),t&&t.className)for(let e of t.className.split(" "))this._element.classList.add(e);this._popup=null}addTo(t){return this.remove(),this._map=t,this._element.setAttribute("aria-label",t._getUIString("Marker.Title")),t.getCanvasContainer().appendChild(this._element),t.on("move",this._update),t.on("moveend",this._update),t.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),o.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),t){if(!("offset"in t.options)){let e=Math.abs(13.5)/Math.SQRT2;t.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[e,-1*(24.6+e)],"bottom-right":[-e,-1*(24.6+e)],left:[13.5,-24.6],right:[-13.5,-24.6]}:this._offset}this._popup=t,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(t){return this._subpixelPositioning=t,this}getPopup(){return this._popup}togglePopup(){let t=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:t?(t.isOpen()?t.remove():(t.setLngLat(this._lngLat),t.addTo(this._map)),this):this}_updateOpacity(t=!1){var r,n;if(null===(r=this._map)||void 0===r||!r.terrain)return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(t)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout((()=>{this._opacityTimeout=null}),100)}let i=this._map,a=i.terrain.depthAtPoint(this._pos),o=i.terrain.getElevationForLngLatZoom(this._lngLat,i.transform.tileZoom);if(i.transform.lngLatToCameraDepth(this._lngLat,o)-a<.006)return void(this._element.style.opacity=this._opacity);let s=-this._offset.y/i.transform._pixelPerMeter,l=Math.sin(i.getPitch()*Math.PI/180)*s,c=i.terrain.depthAtPoint(new e.P(this._pos.x,this._pos.y-this._offset.y)),u=i.transform.lngLatToCameraDepth(this._lngLat,o+l)-c>.006;!(null===(n=this._popup)||void 0===n)&&n.isOpen()&&u&&this._popup.remove(),this._element.style.opacity=u?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(t){return this._offset=e.P.convert(t),this._update(),this}addClassName(t){this._element.classList.add(t)}removeClassName(t){this._element.classList.remove(t)}toggleClassName(t){return this._element.classList.toggle(t)}setDraggable(t){return this._draggable=!!t,this._map&&(t?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(t){return this._rotation=t||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(t){return this._rotationAlignment=t||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(t){return this._pitchAlignment=t&&"auto"!==t?t:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(t,e){return void 0===t&&void 0===e&&(this._opacity="1",this._opacityWhenCovered="0.2"),void 0!==t&&(this._opacity=t),void 0!==e&&(this._opacityWhenCovered=e),this._map&&this._updateOpacity(!0),this}}let Zi={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Yi=0,Xi=!1,$i={maxWidth:100,unit:"metric"};function Ki(t,e,r){let n=r&&r.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([n,i]),s=a.distanceTo(o);if(r&&"imperial"===r.unit){let r=3.2808*s;r>5280?Ji(e,n,r/5280,t._getUIString("ScaleControl.Miles")):Ji(e,n,r,t._getUIString("ScaleControl.Feet"))}else r&&"nautical"===r.unit?Ji(e,n,s/1852,t._getUIString("ScaleControl.NauticalMiles")):s>=1e3?Ji(e,n,s/1e3,t._getUIString("ScaleControl.Kilometers")):Ji(e,n,s,t._getUIString("ScaleControl.Meters"))}function Ji(t,e,r,n){let i=function(t){let e=Math.pow(10,`${Math.floor(t)}`.length-1),r=t/e;return r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:r>=1?1:function(t){let e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(r),e*r}(r);t.style.width=e*(i/r)+"px",t.innerHTML=`${i} ${n}`}let Qi={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},ta=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function ea(t){if(t){if("number"==typeof t){let r=Math.round(Math.abs(t)/Math.SQRT2);return{center:new e.P(0,0),top:new e.P(0,t),"top-left":new e.P(r,r),"top-right":new e.P(-r,r),bottom:new e.P(0,-t),"bottom-left":new e.P(r,-r),"bottom-right":new e.P(-r,-r),left:new e.P(t,0),right:new e.P(-t,0)}}if(t instanceof e.P||Array.isArray(t)){let r=e.P.convert(t);return{center:r,top:r,"top-left":r,"top-right":r,bottom:r,"bottom-left":r,"bottom-right":r,left:r,right:r}}return{center:e.P.convert(t.center||[0,0]),top:e.P.convert(t.top||[0,0]),"top-left":e.P.convert(t["top-left"]||[0,0]),"top-right":e.P.convert(t["top-right"]||[0,0]),bottom:e.P.convert(t.bottom||[0,0]),"bottom-left":e.P.convert(t["bottom-left"]||[0,0]),"bottom-right":e.P.convert(t["bottom-right"]||[0,0]),left:e.P.convert(t.left||[0,0]),right:e.P.convert(t.right||[0,0])}}return ea(new e.P(0,0))}let ra=r;t.AJAXError=e.bh,t.Evented=e.E,t.LngLat=e.N,t.MercatorCoordinate=e.Z,t.Point=e.P,t.addProtocol=e.bi,t.config=e.a,t.removeProtocol=e.bj,t.AttributionControl=Si,t.BoxZoomHandler=Vn,t.CanvasSource=rt,t.CooperativeGesturesHandler=_i,t.DoubleClickZoomHandler=di,t.DragPanHandler=yi,t.DragRotateHandler=vi,t.EdgeInsets=Tn,t.FullscreenControl=class extends e.E{constructor(t={}){super(),this._onFullscreenChange=()=>{var t;let e=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;null!==(t=e?.shadowRoot)&&void 0!==t&&t.fullscreenElement;)e=e.shadowRoot.fullscreenElement;e===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,t&&t.container&&(t.container instanceof HTMLElement?this._container=t.container:e.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){o.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let t=this._fullscreenButton=o.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);o.create("span","maplibregl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new e.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new e.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},t.GeoJSONSource=J,t.GeolocateControl=class extends e.E{constructor(t){super(),this._onSuccess=t=>{if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.k("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new e.k("geolocate",t)),this._finish()}},this._updateCamera=t=>{let r=new e.N(t.coords.longitude,t.coords.latitude),n=t.coords.accuracy,i=this._map.getBearing(),a=e.e({bearing:i},this.options.fitBoundsOptions),o=Z.fromLngLat(r,n);this._map.fitBounds(o,a,{geolocateSource:!0})},this._updateMarker=t=>{if(t){let r=new e.N(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=t=>{if(this._map){if(this.options.trackUserLocation)if(1===t.code){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&Xi)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new e.k("error",t)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this._geolocateButton=o.create("button","maplibregl-ctrl-geolocate",this._container),o.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=t=>{if(this._map){if(!1===t){e.w("Geolocation support is not available so the GeolocateControl will be disabled.");let t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t)}else{let t=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Wi({element:this._dotElement}),this._circleElement=o.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Wi({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",(()=>this.trigger())),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",(t=>{t.geolocateSource||"ACTIVE_LOCK"!==this._watchState||t.originalEvent&&"resize"===t.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new e.k("trackuserlocationend")),this.fire(new e.k("userlocationlostfocus")))}))}},this.options=e.e({},Zi,t)}onAdd(t){return this._map=t,this._container=o.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return e._(this,arguments,void 0,(function*(t=!1){if(void 0!==Ri&&!t)return Ri;if(void 0===window.navigator.permissions)return Ri=!!window.navigator.geolocation,Ri;try{Ri="denied"!==(yield window.navigator.permissions.query({name:"geolocation"})).state}catch{Ri=!!window.navigator.geolocation}return Ri}))}().then((t=>this._finishSetupUI(t))),this._container}onRemove(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Yi=0,Xi=!1}_isOutOfMapMaxBounds(t){let e=this._map.getMaxBounds(),r=t.coords;return e&&(r.longitudee.getEast()||r.latitudee.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let t=this._map.getBounds(),e=t.getSouthEast(),r=t.getNorthEast(),n=e.distanceTo(r),i=Math.ceil(this._accuracy/(n/this._map._container.clientHeight)*2);this._circleElement.style.width=`${i}px`,this._circleElement.style.height=`${i}px`}trigger(){if(!this._setup)return e.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Yi--,Xi=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new e.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.k("trackuserlocationstart")),this.fire(new e.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let t;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Yi++,Yi>1?(t={maximumAge:6e5,timeout:0},Xi=!0):(t=this.options.positionOptions,Xi=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},t.Hash=Sn,t.ImageSource=tt,t.KeyboardHandler=ui,t.LngLatBounds=Z,t.LogoControl=Ei,t.Map=class extends ki{constructor(t){e.bf.mark(e.bg.create);let r=Object.assign(Object.assign({},ji),t);if(null!=r.minZoom&&null!=r.maxZoom&&r.minZoom>r.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=r.minPitch&&null!=r.maxPitch&&r.minPitch>r.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=r.minPitch&&r.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=r.maxPitch&&r.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new kn(r.minZoom,r.maxZoom,r.minPitch,r.maxPitch,r.renderWorldCopies),{bearingSnap:r.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Ci,this._controls=[],this._mapId=e.a4(),this._contextLost=t=>{t.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new e.k("webglcontextlost",{originalEvent:t}))},this._contextRestored=t=>{this._setupPainter(),this.resize(),this._update(),this.fire(new e.k("webglcontextrestored",{originalEvent:t}))},this._onMapScroll=t=>{if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=r.interactive,this._maxTileCacheSize=r.maxTileCacheSize,this._maxTileCacheZoomLevels=r.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=!0===r.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=!0===r.preserveDrawingBuffer,this._antialias=!0===r.antialias,this._trackResize=!0===r.trackResize,this._bearingSnap=r.bearingSnap,this._refreshExpiredTiles=!0===r.refreshExpiredTiles,this._fadeDuration=r.fadeDuration,this._crossSourceCollisions=!0===r.crossSourceCollisions,this._collectResourceTiming=!0===r.collectResourceTiming,this._locale=Object.assign(Object.assign({},Fi),r.locale),this._clickTolerance=r.clickTolerance,this._overridePixelRatio=r.pixelRatio,this._maxCanvasSize=r.maxCanvasSize,this.transformCameraUpdate=r.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=!0===r.cancelPendingTileRequestsWhileZooming,this._imageQueueHandle=f.addThrottleControl((()=>this.isMoving())),this._requestManager=new d(r.transformRequest),"string"==typeof r.container){if(this._container=document.getElementById(r.container),!this._container)throw new Error(`Container '${r.container}' not found.`)}else{if(!(r.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=r.container}if(r.maxBounds&&this.setMaxBounds(r.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",(()=>this._update(!1))).on("moveend",(()=>this._update(!1))).on("zoom",(()=>this._update(!0))).on("terrain",(()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)})).once("idle",(()=>{this._idleTriggered=!0})),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let t=!1,e=Mn((t=>{this._trackResize&&!this._removed&&(this.resize(t),this.redraw())}),50);this._resizeObserver=new ResizeObserver((r=>{t?e(r):t=!0})),this._resizeObserver.observe(this._container)}this.handlers=new Ai(this,r),this._hash=r.hash&&new Sn("string"==typeof r.hash&&r.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:r.center,zoom:r.zoom,bearing:r.bearing,pitch:r.pitch}),r.bounds&&(this.resize(),this.fitBounds(r.bounds,e.e({},r.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=r.localIdeographFontFamily,this._validateStyle=r.validateStyle,r.style&&this.setStyle(r.style,{localIdeographFontFamily:r.localIdeographFontFamily}),r.attributionControl&&this.addControl(new Si("boolean"==typeof r.attributionControl?void 0:r.attributionControl)),r.maplibreLogo&&this.addControl(new Ei,r.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on("data",(t=>{this._update("style"===t.dataType),this.fire(new e.k(`${t.dataType}data`,t))})),this.on("dataloading",(t=>{this.fire(new e.k(`${t.dataType}dataloading`,t))})),this.on("dataabort",(t=>{this.fire(new e.k("sourcedataabort",t))}))}_getMapId(){return this._mapId}addControl(t,r){if(void 0===r&&(r=t.getDefaultPosition?t.getDefaultPosition():"top-right"),!t||!t.onAdd)return this.fire(new e.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let n=t.onAdd(this);this._controls.push(t);let i=this._controlPositions[r];return-1!==r.indexOf("bottom")?i.insertBefore(n,i.firstChild):i.appendChild(n),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let r=this._controls.indexOf(t);return r>-1&&this._controls.splice(r,1),t.onRemove(this),this}hasControl(t){return this._controls.indexOf(t)>-1}calculateCameraOptionsFromTo(t,e,r,n){return null==n&&this.terrain&&(n=this.terrain.getElevationForLngLatZoom(r,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(t,e,r,n)}resize(t){var r;let n=this._containerDimensions(),i=n[0],a=n[1],o=this._getClampedPixelRatio(i,a);if(this._resizeCanvas(i,a,o),this.painter.resize(i,a,o),this.painter.overLimit()){let t=this.painter.context.gl;this._maxCanvasSize=[t.drawingBufferWidth,t.drawingBufferHeight];let e=this._getClampedPixelRatio(i,a);this._resizeCanvas(i,a,e),this.painter.resize(i,a,e)}this.transform.resize(i,a),null===(r=this._requestedCameraState)||void 0===r||r.resize(i,a);let s=!this._moving;return s&&(this.stop(),this.fire(new e.k("movestart",t)).fire(new e.k("move",t))),this.fire(new e.k("resize",t)),s&&this.fire(new e.k("moveend",t)),this}_getClampedPixelRatio(t,e){let{0:r,1:n}=this._maxCanvasSize,i=this.getPixelRatio(),a=t*i,o=e*i;return Math.min(a>r?r/a:1,o>n?n/o:1)*i}getPixelRatio(){var t;return null!==(t=this._overridePixelRatio)&&void 0!==t?t:devicePixelRatio}setPixelRatio(t){this._overridePixelRatio=t,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(t){return this.transform.setMaxBounds(Z.convert(t)),this._update()}setMinZoom(t){if((t=t??-2)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=t??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(t){return this.transform.renderWorldCopies=t,this._update()}project(t){return this.transform.locationPoint(e.N.convert(t),this.style&&this.terrain)}unproject(t){return this.transform.pointLocation(e.P.convert(t),this.terrain)}isMoving(){var t;return this._moving||(null===(t=this.handlers)||void 0===t?void 0:t.isMoving())}isZooming(){var t;return this._zooming||(null===(t=this.handlers)||void 0===t?void 0:t.isZooming())}isRotating(){var t;return this._rotating||(null===(t=this.handlers)||void 0===t?void 0:t.isRotating())}_createDelegatedListener(t,e,r){if("mouseenter"===t||"mouseover"===t){let n=!1;return{layers:e,listener:r,delegates:{mousemove:i=>{let a=e.filter((t=>this.getLayer(t))),o=0!==a.length?this.queryRenderedFeatures(i.point,{layers:a}):[];o.length?n||(n=!0,r.call(this,new Rn(t,this,i.originalEvent,{features:o}))):n=!1},mouseout:()=>{n=!1}}}}if("mouseleave"===t||"mouseout"===t){let n=!1;return{layers:e,listener:r,delegates:{mousemove:i=>{let a=e.filter((t=>this.getLayer(t)));(0!==a.length?this.queryRenderedFeatures(i.point,{layers:a}):[]).length?n=!0:n&&(n=!1,r.call(this,new Rn(t,this,i.originalEvent)))},mouseout:e=>{n&&(n=!1,r.call(this,new Rn(t,this,e.originalEvent)))}}}}{let n=t=>{let n=e.filter((t=>this.getLayer(t))),i=0!==n.length?this.queryRenderedFeatures(t.point,{layers:n}):[];i.length&&(t.features=i,r.call(this,t),delete t.features)};return{layers:e,listener:r,delegates:{[t]:n}}}}_saveDelegatedListener(t,e){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(e)}_removeDelegatedListener(t,e,r){if(!this._delegatedListeners||!this._delegatedListeners[t])return;let n=this._delegatedListeners[t];for(let t=0;te.includes(t)))){for(let t in i.delegates)this.off(t,i.delegates[t]);return void n.splice(t,1)}}}on(t,e,r){if(void 0===r)return super.on(t,e);let n=this._createDelegatedListener(t,"string"==typeof e?[e]:e,r);this._saveDelegatedListener(t,n);for(let t in n.delegates)this.on(t,n.delegates[t]);return this}once(t,e,r){if(void 0===r)return super.once(t,e);let n="string"==typeof e?[e]:e,i=this._createDelegatedListener(t,n,r);for(let e in i.delegates){let a=i.delegates[e];i.delegates[e]=(...e)=>{this._removeDelegatedListener(t,n,r),a(...e)}}this._saveDelegatedListener(t,i);for(let t in i.delegates)this.once(t,i.delegates[t]);return this}off(t,e,r){return void 0===r?super.off(t,e):(this._removeDelegatedListener(t,"string"==typeof e?[e]:e,r),this)}queryRenderedFeatures(t,r){if(!this.style)return[];let n,i=t instanceof e.P||Array.isArray(t),a=i?t:[[0,0],[this.transform.width,this.transform.height]];if(r=r||(i?{}:t)||{},a instanceof e.P||"number"==typeof a[0])n=[e.P.convert(a)];else{let t=e.P.convert(a[0]),r=e.P.convert(a[1]);n=[t,new e.P(r.x,t.y),r,new e.P(t.x,r.y),t]}return this.style.queryRenderedFeatures(n,r,this.transform)}querySourceFeatures(t,e){return this.style.querySourceFeatures(t,e)}setStyle(t,r){return!1!==(r=e.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},r)).diff&&r.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&t?(this._diffStyle(t,r),this):(this._localIdeographFontFamily=r.localIdeographFontFamily,this._updateStyle(t,r))}setTransformRequest(t){return this._requestManager.setTransformRequest(t),this}_getUIString(t){let e=this._locale[t];if(null==e)throw new Error(`Missing UI string '${t}'`);return e}_updateStyle(t,e){if(e.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",(()=>this._updateStyle(t,e)));let r=this.style&&e.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!t)),t?(this.style=new fe(this,e||{}),this.style.setEventedParent(this,{style:this.style}),"string"==typeof t?this.style.loadURL(t,e,r):this.style.loadJSON(t,e,r),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new fe(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(t,r){if("string"==typeof t){let n=this._requestManager.transformRequest(t,"Style");e.h(n,new AbortController).then((t=>{this._updateDiff(t.data,r)})).catch((t=>{t&&this.fire(new e.j(t))}))}else"object"==typeof t&&this._updateDiff(t,r)}_updateDiff(t,r){try{this.style.setState(t,r)&&this._update(!0)}catch(n){e.w(`Unable to perform style diff: ${n.message||n.error||n}. Rebuilding the style from scratch.`),this._updateStyle(t,r)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():e.w("There is no style added to the map.")}addSource(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)}isSourceLoaded(t){let r=this.style&&this.style.sourceCaches[t];if(void 0!==r)return r.loaded();this.fire(new e.j(new Error(`There is no source with ID '${t}'`)))}setTerrain(t){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),t){let r=this.style.sourceCaches[t.source];if(!r)throw new Error(`cannot load terrain, because there exists no source with ID: ${t.source}`);null===this.terrain&&r.reload();for(let r in this.style._layers){let n=this.style._layers[r];"hillshade"===n.type&&n.source===t.source&&e.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Pi(this.painter,r,t),this.painter.renderToTexture=new Oi(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=e=>{"style"===e.dataType?this.terrain.sourceCache.freeRtt():"source"===e.dataType&&e.tile&&(e.sourceId!==t.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(e.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new e.k("terrain",{terrain:t})),this}getTerrain(){var t,e;return null!==(e=null===(t=this.terrain)||void 0===t?void 0:t.options)&&void 0!==e?e:null}areTilesLoaded(){let t=this.style&&this.style.sourceCaches;for(let e in t){let r=t[e]._tiles;for(let t in r){let e=r[t];if("loaded"!==e.state&&"errored"!==e.state)return!1}}return!0}removeSource(t){return this.style.removeSource(t),this._update(!0)}getSource(t){return this.style.getSource(t)}addImage(t,r,n={}){let{pixelRatio:i=1,sdf:o=!1,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h}=n;if(this._lazyInitEmptyStyle(),!(r instanceof HTMLImageElement||e.b(r))){if(void 0===r.width||void 0===r.height)return this.fire(new e.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:n,height:a,data:p}=r,f=r;return this.style.addImage(t,{data:new e.R({width:n,height:a},new Uint8Array(p)),pixelRatio:i,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h,sdf:o,version:0,userImage:f}),f.onAdd&&f.onAdd(this,t),this}}{let{width:n,height:p,data:f}=a.getImageData(r);this.style.addImage(t,{data:new e.R({width:n,height:p},f),pixelRatio:i,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h,sdf:o,version:0})}}updateImage(t,r){let n=this.style.getImage(t);if(!n)return this.fire(new e.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let i=r instanceof HTMLImageElement||e.b(r)?a.getImageData(r):r,{width:o,height:s,data:l}=i;if(void 0===o||void 0===s)return this.fire(new e.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(o!==n.data.width||s!==n.data.height)return this.fire(new e.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let c=!(r instanceof HTMLImageElement||e.b(r));return n.data.replace(l,c),this.style.updateImage(t,n),this}getImage(t){return this.style.getImage(t)}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.j(new Error("Missing required image id"))),!1)}removeImage(t){this.style.removeImage(t)}loadImage(t){return f.getImage(this._requestManager.transformRequest(t,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)}moveLayer(t,e){return this.style.moveLayer(t,e),this._update(!0)}removeLayer(t){return this.style.removeLayer(t),this._update(!0)}getLayer(t){return this.style.getLayer(t)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(t,e,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0)}setFilter(t,e,r={}){return this.style.setFilter(t,e,r),this._update(!0)}getFilter(t){return this.style.getFilter(t)}setPaintProperty(t,e,r,n={}){return this.style.setPaintProperty(t,e,r,n),this._update(!0)}getPaintProperty(t,e){return this.style.getPaintProperty(t,e)}setLayoutProperty(t,e,r,n={}){return this.style.setLayoutProperty(t,e,r,n),this._update(!0)}getLayoutProperty(t,e){return this.style.getLayoutProperty(t,e)}setGlyphs(t,e={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(t,e),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(t,e,r={}){return this._lazyInitEmptyStyle(),this.style.addSprite(t,e,r,(t=>{t||this._update(!0)})),this}removeSprite(t){return this._lazyInitEmptyStyle(),this.style.removeSprite(t),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(t,e={}){return this._lazyInitEmptyStyle(),this.style.setSprite(t,e,(t=>{t||this._update(!0)})),this}setLight(t,e={}){return this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)}getLight(){return this.style.getLight()}setSky(t){return this._lazyInitEmptyStyle(),this.style.setSky(t),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(t,e){return this.style.setFeatureState(t,e),this._update()}removeFeatureState(t,e){return this.style.removeFeatureState(t,e),this._update()}getFeatureState(t){return this.style.getFeatureState(t)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]}_setupContainer(){let t=this._container;t.classList.add("maplibregl-map");let e=this._canvasContainer=o.create("div","maplibregl-canvas-container",t);this._interactive&&e.classList.add("maplibregl-interactive"),this._canvas=o.create("canvas","maplibregl-canvas",e),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let r=this._containerDimensions(),n=this._getClampedPixelRatio(r[0],r[1]);this._resizeCanvas(r[0],r[1],n);let i=this._controlContainer=o.create("div","maplibregl-control-container",t),a=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((t=>{a[t]=o.create("div",`maplibregl-ctrl-${t} `,i)})),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(t,e,r){this._canvas.width=Math.floor(r*t),this._canvas.height=Math.floor(r*e),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`}_setupPainter(){let t={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},e=null;this._canvas.addEventListener("webglcontextcreationerror",(r=>{e={requestedAttributes:t},r&&(e.statusMessage=r.statusMessage,e.type=r.type)}),{once:!0});let r=this._canvas.getContext("webgl2",t)||this._canvas.getContext("webgl",t);if(!r){let t="Failed to initialize WebGL";throw e?(e.message=t,new Error(JSON.stringify(e))):new Error(t)}this.painter=new _n(r,this.transform),c.testSupport(r)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t)}_render(t){let r=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(t),this._removed)return;let n=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let t=this.transform.zoom,i=a.now();this.style.zoomHistory.update(t,i);let o=new e.z(t,{now:i,fadeDuration:r,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),s=o.crossFadingFactor();1===s&&s===this._crossFadingFactor||(n=!0,this._crossFadingFactor=s),this.style.update(o)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,r,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:r,showPadding:this.showPadding}),this.fire(new e.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,e.bf.mark(e.bg.load),this.fire(new e.k("load"))),this.style&&(this.style.hasTransitions()||n)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let i=this._sourcesDirty||this._styleDirty||this._placementDirty;return i||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.k("idle")),!this._loaded||this._fullyLoaded||i||(this._fullyLoaded=!0,e.bf.mark(e.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var t;this._hash&&this._hash.remove();for(let t of this._controls)t.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),f.removeThrottleControl(this._imageQueueHandle),null===(t=this._resizeObserver)||void 0===t||t.disconnect();let r=this.painter.context.gl.getExtension("WEBGL_lose_context");r?.loseContext&&r.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),o.remove(this._canvasContainer),o.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),e.bf.clearMetrics(),this._removed=!0,this.fire(new e.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,a.frameAsync(this._frameRequest).then((t=>{e.bf.frame(t),this._frameRequest=null,this._render(t)})).catch((()=>{})))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())}get showPadding(){return!!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())}get repaint(){return!!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(t){this._vertices=t,this._update()}get version(){return Bi}getCameraTargetElevation(){return this.transform.elevation}},t.MapMouseEvent=Rn,t.MapTouchEvent=Fn,t.MapWheelEvent=Bn,t.Marker=Wi,t.NavigationControl=class{constructor(t){this._updateZoomButtons=()=>{let t=this._map.getZoom(),e=t===this._map.getMaxZoom(),r=t===this._map.getMinZoom();this._zoomInButton.disabled=e,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute("aria-disabled",e.toString()),this._zoomOutButton.setAttribute("aria-disabled",r.toString())},this._rotateCompassArrow=()=>{let t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=t},this._setButtonTitle=(t,e)=>{let r=this._map._getUIString(`NavigationControl.${e}`);t.title=r,t.setAttribute("aria-label",r)},this.options=e.e({},Ui,t),this._container=o.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",(t=>this._map.zoomIn({},{originalEvent:t}))),o.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",(t=>this._map.zoomOut({},{originalEvent:t}))),o.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",(t=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:t}):this._map.resetNorth({},{originalEvent:t})})),this._compassIcon=o.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Vi(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){o.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(t,e){let r=o.create("button",t,this._container);return r.type="button",r.addEventListener("click",e),r}},t.Popup=class extends e.E{constructor(t){super(),this.remove=()=>(this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new e.k("close"))),this),this._onMouseUp=t=>{this._update(t.point)},this._onMouseMove=t=>{this._update(t.point)},this._onDrag=t=>{this._update(t.point)},this._update=t=>{var e;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=o.create("div","maplibregl-popup",this._map.getContainer()),this._tip=o.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let t of this.options.className.split(" "))this._container.classList.add(t);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?qi(this._lngLat,this._flatPos,this._map.transform):null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._trackPointer&&!t)return;let r=this._flatPos=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&t?t:this._map.transform.locationPoint(this._lngLat));let n=this.options.anchor,i=ea(this.options.offset);if(!n){let t,e=this._container.offsetWidth,a=this._container.offsetHeight;t=r.y+i.bottom.ythis._map.transform.height-a?["bottom"]:[],r.xthis._map.transform.width-e/2&&t.push("right"),n=0===t.length?"bottom":t.join("-")}let a=r.add(i[n]);this.options.subpixelPositioning||(a=a.round()),o.setTransform(this._container,`${Hi[n]} translate(${a.x}px,${a.y}px)`),Gi(this._container,n,"popup")},this._onClose=()=>{this.remove()},this.options=e.e(Object.create(Qi),t)}addTo(t){return this._map&&this.remove(),this._map=t,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new e.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(document.createTextNode(t))}setHTML(t){let e,r=document.createDocumentFragment(),n=document.createElement("body");for(n.innerHTML=t;e=n.firstChild,e;)r.appendChild(e);return this.setDOMContent(r)}getMaxWidth(){var t;return null===(t=this._container)||void 0===t?void 0:t.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(t){return this._container&&this._container.classList.add(t),this}removeClassName(t){return this._container&&this._container.classList.remove(t),this}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){if(this._container)return this._container.classList.toggle(t)}setSubpixelPositioning(t){this.options.subpixelPositioning=t}_createCloseButton(){this.options.closeButton&&(this._closeButton=o.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let t=this._container.querySelector(ta);t&&t.focus()}},t.RasterDEMTileSource=K,t.RasterTileSource=$,t.ScaleControl=class{constructor(t){this._onMove=()=>{Ki(this._map,this._container,this.options)},this.setUnit=t=>{this.options.unit=t,Ki(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},$i),t)}getDefaultPosition(){return"bottom-left"}onAdd(t){return this._map=t,this._container=o.create("div","maplibregl-ctrl maplibregl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},t.ScrollZoomHandler=fi,t.Style=fe,t.TerrainControl=class{constructor(t){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=t}onAdd(t){return this._map=t,this._container=o.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=o.create("button","maplibregl-ctrl-terrain",this._container),o.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){o.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},t.TwoFingersTouchPitchHandler=li,t.TwoFingersTouchRotateHandler=oi,t.TwoFingersTouchZoomHandler=ii,t.TwoFingersTouchZoomRotateHandler=xi,t.VectorTileSource=X,t.VideoSource=et,t.addSourceType=(t,r)=>e._(void 0,void 0,void 0,(function*(){if(it(t))throw new Error(`A source type called "${t}" already exists.`);var e;e=r,nt[t]=e})),t.clearPrewarmedResources=function(){let t=F;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(O),F=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},t.getMaxParallelImageRequests=function(){return e.a.MAX_PARALLEL_IMAGE_REQUESTS},t.getRTLTextPluginStatus=function(){return lt().getRTLTextPluginStatus()},t.getVersion=function(){return ra},t.getWorkerCount=function(){return R.workerCount},t.getWorkerUrl=function(){return e.a.WORKER_URL},t.importScriptInWorkers=function(t){return V().broadcast("IS",t)},t.prewarm=function(){N().acquire(O)},t.setMaxParallelImageRequests=function(t){e.a.MAX_PARALLEL_IMAGE_REQUESTS=t},t.setRTLTextPlugin=function(t,e){return lt().setRTLTextPlugin(t,e)},t.setWorkerCount=function(t){R.workerCount=t},t.setWorkerUrl=function(t){e.a.WORKER_URL=t}})),t},"object"==typeof t&&typeof e<"u"?e.exports=a():(n=typeof globalThis<"u"?globalThis:n||self).maplibregl=a()}}),nb=f({"src/plots/map/layers.js"(t,e){var r=le(),n=Se().sanitizeHTML,i=$_(),a=H_();function o(t,e){this.subplot=t,this.uid=t.uid+"-"+e,this.index=e,this.idSource="source-"+this.uid,this.idLayer=a.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var s=o.prototype;function l(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var n=0;n0}function c(t){var e={},n={};switch(t.type){case"circle":r.extendFlat(n,{"circle-radius":t.circle.radius,"circle-color":t.color,"circle-opacity":t.opacity});break;case"line":r.extendFlat(n,{"line-width":t.line.width,"line-color":t.color,"line-opacity":t.opacity,"line-dasharray":t.line.dash});break;case"fill":r.extendFlat(n,{"fill-color":t.color,"fill-outline-color":t.fill.outlinecolor,"fill-opacity":t.opacity});break;case"symbol":var a=t.symbol,o=i(a.textposition,a.iconsize);r.extendFlat(e,{"icon-image":a.icon+"-15","icon-size":a.iconsize/10,"text-field":a.text,"text-size":a.textfont.size,"text-anchor":o.anchor,"text-offset":o.offset,"symbol-placement":a.placement}),r.extendFlat(n,{"icon-color":t.color,"text-color":a.textfont.color,"text-opacity":t.opacity});break;case"raster":r.extendFlat(n,{"raster-fade-duration":0,"raster-opacity":t.opacity})}return{layout:e,paint:n}}s.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=l(t)},s.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},s.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},s.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},s.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},s.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},s.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,l(t)){var r=function(t){var e,r=t.sourcetype,i=t.source,a={type:r};return"geojson"===r?e="data":"vector"===r?e="string"==typeof i?"url":"tiles":"raster"===r?(e="tiles",a.tileSize=256):"image"===r&&(e="url",a.coordinates=t.coordinates),a[e]=i,t.sourceattribution&&(a.attribution=n(t.sourceattribution)),a}(t);e.addSource(this.idSource,r)}},s.findFollowingMapLayerId=function(t){if("traces"===t)for(var e=this.subplot.getMapLayers(),r=0;r1)for(r=0;r-1&&m(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),i.indexOf("event")>-1&&l.click(n,e.originalEvent)}}},x.updateFx=function(t){var e=this,r=e.map,i=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,r){r.isRect?(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]:(t.lassoPoints={})[e.id]=r.map(c)};var l=e.dragOptions;e.dragOptions=n.extendDeep(l||{},{dragmode:t.dragmode,element:e.div,gd:i,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off("click",e.onClickInPanHandler),h(o)||u(o)?(r.dragPan.disable(),r.on("zoomstart",e.clearOutline),e.dragOptions.prepFn=function(t,r,n){p(t,r,n,e.dragOptions,o)},s.init(e.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener("touchstart",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on("click",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},x.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+"px",n.height=r.h*(e.y[1]-e.y[0])+"px",n.left=r.l+e.x[0]*r.w+"px",n.top=r.t+(1-e.y[1])*r.h+"px",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},x.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;ex/2){var _=m.split("|").join("
");y.text(_).attr("data-unformatted",_).call(l.convertToTspans,t),v=s.bBox(y.node())}y.attr("transform",r(-3,8-v.height)),g.insert("rect",".static-attribution").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:"rgba(255, 255, 255, 0.75)"});var b=1;v.width+6>x&&(b=x/(v.width+6));var w=[c.l+c.w*f.x[1],c.t+c.h*(1-f.y[0])];g.attr("transform",r(w[0],w[1])+n(b))}},t.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots[u],n=0;n=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var n=e[0].trace,i=new a(t,n.uid),o=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}}}),fb=f({"src/traces/choroplethmap/index.js"(t,e){e.exports={attributes:cb(),supplyDefaults:ub(),colorbar:Uo(),calc:_g(),plot:pb(),hoverPoints:Tg(),eventData:Ag(),selectPoints:kg(),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if("string"==typeof i&&0===i.indexOf("water"))for(var a=n+1;a0?+f[u]:0),h.push({type:"Feature",geometry:{type:"Point",coordinates:y},properties:v})}}var _=a.extractOpts(e),b=_.reversescale?a.flipScale(_.colorscale):_.colorscale,w=b[0][1],T=["interpolate",["linear"],["heatmap-density"],0,i.opacity(w)<1?w:i.addOpacity(w,0)];for(u=1;u=0;r--)t.removeLayer(e[r][1])},a.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var n=e[0].trace,a=new i(t,n.uid),o=a.sourceId,s=r(e),l=a.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),a._addLayers(s,l),a}}}),_b=f({"src/traces/densitymap/hover.js"(t,e){var r=ir(),n=Q_().hoverPoints,i=Q_().getExtraText;e.exports=function(t,e,a){var o=n(t,e,a);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,"z"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=r.tickText(h,h.c2l(u.z),"hover").text}return s.extraText=i(c,u,l[0].t.labels),[s]}}}}),bb=f({"src/traces/densitymap/event_data.js"(t,e){e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}}}),wb=f({"src/traces/densitymap/index.js"(t,e){e.exports={attributes:mb(),supplyDefaults:gb(),colorbar:Uo(),formatLabels:X_(),calc:yb(),plot:xb(),hoverPoints:_b(),eventData:bb(),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n0;){e=c[c.length-1];var f=t[e];if(a[e]=0&&s[e].push(o[m])}a[e]=d}else{if(n[e]===r[e]){var g=[],y=[],v=0;for(d=l.length-1;d>=0;--d){var x=l[d];if(i[x]=!1,g.push(x),y.push(s[x]),v+=s[x].length,o[x]=h.length,x===e){l.length=d;break}}h.push(g);var _=new Array(v);for(d=0;dx&&(x=l.source[e]),l.target[e]>x&&(x=l.target[e]);var _=x+1;t.node._count=_;var b,w=t.node.groups,T={};for(e=0;e0&&o(C,_)&&o(I,_)&&(!T.hasOwnProperty(C)||!T.hasOwnProperty(I)||T[C]!==T[I])){T.hasOwnProperty(I)&&(I=T[I]),T.hasOwnProperty(C)&&(C=T[C]),I=+I,f[C=+C]=f[I]=!0;var L="";l.label&&l.label[e]&&(L=l.label[e]);var P=null;L&&d.hasOwnProperty(L)&&(P=d[L]),c.push({pointNumber:e,label:L,color:u?l.color[e]:l.color,hovercolor:h?l.hovercolor[e]:l.hovercolor,customdata:p?l.customdata[e]:l.customdata,concentrationscale:P,source:C,target:I,value:+E}),S.source.push(C),S.target.push(I)}}var z=_+w.length,D=a(i.color),O=a(i.customdata),R=[];for(e=0;e_-1,childrenNodes:[],pointNumber:e,label:F,color:D?i.color[e]:i.color,customdata:O?i.customdata[e]:i.customdata})}var B=!1;return function(t,e,i){for(var a=n.init2dArray(t,0),o=0;o1}))}(z,S.source,S.target)&&(B=!0),{circular:B,links:c,nodes:R,groups:w,groupLookup:T}}(e);return i({circular:l.circular,_nodes:l.nodes,_links:l.links,_groups:l.groups,_groupLookup:l.groupLookup})}}}),Eb=f({"node_modules/d3-quadtree/dist/d3-quadtree.js"(t,e){var r,n;r=t,n=function(t){function e(t,e,r,n){if(isNaN(e)||isNaN(r))return t;var i,a,o,s,l,c,u,h,p,f=t._root,d={data:n},m=t._x0,g=t._y0,y=t._x1,v=t._y1;if(!f)return t._root=d,t;for(;f.length;)if((c=e>=(a=(m+y)/2))?m=a:y=a,(u=r>=(o=(g+v)/2))?g=o:v=o,i=f,!(f=f[h=u<<1|c]))return i[h]=d,t;if(s=+t._x.call(null,f.data),l=+t._y.call(null,f.data),e===s&&r===l)return d.next=f,i?i[h]=d:t._root=d,t;do{i=i?i[h]=new Array(4):t._root=new Array(4),(c=e>=(a=(m+y)/2))?m=a:y=a,(u=r>=(o=(g+v)/2))?g=o:v=o}while((h=u<<1|c)==(p=(l>=o)<<1|s>=a));return i[p]=f,i[h]=d,t}function r(t,e,r,n,i){this.node=t,this.x0=e,this.y0=r,this.x1=n,this.y1=i}function n(t){return t[0]}function i(t){return t[1]}function a(t,e,r){var a=new o(e??n,r??i,NaN,NaN,NaN,NaN);return null==t?a:a.addAll(t)}function o(t,e,r,n,i,a){this._x=t,this._y=e,this._x0=r,this._y0=n,this._x1=i,this._y1=a,this._root=void 0}function s(t){for(var e={data:t.data},r=e;t=t.next;)r=r.next={data:t.data};return e}var l=a.prototype=o.prototype;l.copy=function(){var t,e,r=new o(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root;if(!n)return r;if(!n.length)return r._root=s(n),r;for(t=[{source:n,target:r._root=new Array(4)}];n=t.pop();)for(var i=0;i<4;++i)(e=n.source[i])&&(e.length?t.push({source:e,target:n.target[i]=new Array(4)}):n.target[i]=s(e));return r},l.add=function(t){var r=+this._x.call(null,t),n=+this._y.call(null,t);return e(this.cover(r,n),r,n,t)},l.addAll=function(t){var r,n,i,a,o=t.length,s=new Array(o),l=new Array(o),c=1/0,u=1/0,h=-1/0,p=-1/0;for(n=0;nh&&(h=i),ap&&(p=a));if(c>h||u>p)return this;for(this.cover(c,u).cover(h,p),n=0;nt||t>=i||n>e||e>=a;)switch(s=(ef||(o=c.y0)>d||(s=c.x1)=v)<<1|t>=y)&&(c=m[m.length-1],m[m.length-1]=m[m.length-1-u],m[m.length-1-u]=c)}else{var x=t-+this._x.call(null,g.data),_=e-+this._y.call(null,g.data),b=x*x+_*_;if(b=(s=(d+g)/2))?d=s:g=s,(u=o>=(l=(m+y)/2))?m=l:y=l,e=f,!(f=f[h=u<<1|c]))return this;if(!f.length)break;(e[h+1&3]||e[h+2&3]||e[h+3&3])&&(r=e,p=h)}for(;f.data!==t;)if(n=f,!(f=f.next))return this;return(i=f.next)&&delete f.next,n?(i?n.next=i:delete n.next,this):e?(i?e[h]=i:delete e[h],(f=e[0]||e[1]||e[2]||e[3])&&f===(e[3]||e[2]||e[1]||e[0])&&!f.length&&(r?r[p]=f:this._root=f),this):(this._root=i,this)},l.removeAll=function(t){for(var e=0,r=t.length;e=l.length)return null!=t&&r.sort(t),null!=e?e(r):r;for(var s,c,h,p=-1,f=r.length,d=l[i++],m=n(),g=a();++pl.length)return t;var n,i=c[r-1];return null!=e&&r>=l.length?n=t.entries():(n=[],t.each((function(t,e){n.push({key:e,values:h(t,r)})}))),null!=i?n.sort((function(t,e){return i(t.key,e.key)})):n}return r={object:function(t){return u(t,0,i,a)},map:function(t){return u(t,0,o,s)},entries:function(t){return h(u(t,0,o,s),0)},key:function(t){return l.push(t),r},sortKeys:function(t){return c[l.length-1]=t,r},sortValues:function(e){return t=e,r},rollup:function(t){return e=t,r}}},t.set=u,t.map=n,t.keys=function(t){var e=[];for(var r in t)e.push(r);return e},t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},Object.defineProperty(t,"__esModule",{value:!0})}("object"==typeof t&&typeof e<"u"?t:r.d3=r.d3||{})}}),Ib=f({"node_modules/d3-dispatch/dist/d3-dispatch.js"(t,e){var r,n;r=t,n=function(t){var e={value:function(){}};function r(){for(var t,e=0,r=arguments.length,i={};e=0&&(r=t.slice(n+1),t=t.slice(0,n)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:r}}))}(t+"",n),s=-1,l=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++s0)for(var r,n,i=new Array(r),a=0;a=0&&r._call.call(null,t),r=r._next;--n}function g(){s=(o=c.now())+l,n=i=0;try{m()}finally{n=0,function(){for(var t,n,i=e,a=1/0;i;)i._call?(a>i._time&&(a=i._time),t=i,i=i._next):(n=i._next,i._next=null,i=t?t._next=n:e=n);r=t,v(a)}(),s=0}}function y(){var t=c.now(),e=t-o;e>1e3&&(l-=e,o=t)}function v(t){n||(i&&(i=clearTimeout(i)),t-s>24?(t<1/0&&(i=setTimeout(g,t-c.now()-l)),a&&(a=clearInterval(a))):(a||(o=c.now(),a=setInterval(y,1e3)),n=1,u(g)))}f.prototype=d.prototype={constructor:f,restart:function(t,n,i){if("function"!=typeof t)throw new TypeError("callback is not a function");i=(null==i?h():+i)+(null==n?0:+n),!this._next&&r!==this&&(r?r._next=this:e=this,r=this),this._call=t,this._time=i,v()},stop:function(){this._call&&(this._call=null,this._time=1/0,v())}},t.interval=function(t,e,r){var n=new f,i=e;return null==e?(n.restart(t,e,r),n):(e=+e,r=null==r?h():+r,n.restart((function a(o){o+=i,n.restart(a,i+=e,r),t(o)}),e,r),n)},t.now=h,t.timeout=function(t,e,r){var n=new f;return e=null==e?0:+e,n.restart((function(r){n.stop(),t(r+e)}),e,r),n},t.timer=d,t.timerFlush=m,Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=r||self).d3=r.d3||{})}}),Pb=f({"node_modules/d3-force/dist/d3-force.js"(t,e){var r,n;r=t,n=function(t,e,r,n,i){function a(t){return function(){return t}}function o(){return 1e-6*(Math.random()-.5)}function s(t){return t.x+t.vx}function l(t){return t.y+t.vy}function c(t){return t.index}function u(t,e){var r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function h(t){return t.x}function p(t){return t.y}var f=Math.PI*(3-Math.sqrt(5));t.forceCenter=function(t,e){var r;function n(){var n,i,a=r.length,o=0,s=0;for(n=0;np+c||nf+c||au.index){var h=p-s.x-s.vx,g=f-s.y-s.vy,y=h*h+g*g;yt.r&&(t.r=t[e].r)}function p(){if(r){var e,i,a=r.length;for(n=new Array(a),e=0;e=c)){(t.data!==r||t.next)&&(0===h&&(d+=(h=o())*h),0===p&&(d+=(p=o())*p),d1?(null==r?u.remove(t):u.set(t,y(r)),e):u.get(t)},find:function(e,r,n){var i,a,o,s,l,c=0,u=t.length;for(null==n?n=1/0:n*=n,c=0;c1?(p.on(t,r),e):p.on(t)}}},t.forceX=function(t){var e,r,n,i=a(.1);function o(t){for(var i,a=0,o=e.length;an)if(Math.abs(p*c-u*h)>n&&o){var d=i-s,m=a-l,g=c*c+u*u,y=d*d+m*m,v=Math.sqrt(g),x=Math.sqrt(f),_=o*Math.tan((e-Math.acos((g+f-y)/(2*v*x)))/2),b=_/x,w=_/v;Math.abs(b-1)>n&&(this._+="L"+(t+b*h)+","+(r+b*p)),this._+="A"+o+","+o+",0,0,"+ +(p*d>h*m)+","+(this._x1=t+w*c)+","+(this._y1=r+w*u)}else this._+="L"+(this._x1=t)+","+(this._y1=r)},arc:function(t,a,o,s,l,c){t=+t,a=+a,c=!!c;var u=(o=+o)*Math.cos(s),h=o*Math.sin(s),p=t+u,f=a+h,d=1^c,m=c?s-l:l-s;if(o<0)throw new Error("negative radius: "+o);null===this._x1?this._+="M"+p+","+f:(Math.abs(this._x1-p)>n||Math.abs(this._y1-f)>n)&&(this._+="L"+p+","+f),o&&(m<0&&(m=m%r+r),m>i?this._+="A"+o+","+o+",0,1,"+d+","+(t-u)+","+(a-h)+"A"+o+","+o+",0,1,"+d+","+(this._x1=p)+","+(this._y1=f):m>n&&(this._+="A"+o+","+o+",0,"+ +(m>=e)+","+d+","+(this._x1=t+o*Math.cos(l))+","+(this._y1=a+o*Math.sin(l))))},rect:function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},toString:function(){return this._}},t.path=o,Object.defineProperty(t,"__esModule",{value:!0})},n("object"==typeof t&&typeof e<"u"?t:(r=r||self).d3=r.d3||{})}}),Db=f({"node_modules/d3-shape/dist/d3-shape.js"(t,e){var r,n;r=t,n=function(t,e){function r(t){return function(){return t}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,c=Math.sqrt,u=1e-12,h=Math.PI,p=h/2,f=2*h;function d(t){return t>=1?p:t<=-1?-p:Math.asin(t)}function m(t){return t.innerRadius}function g(t){return t.outerRadius}function y(t){return t.startAngle}function v(t){return t.endAngle}function x(t){return t&&t.padAngle}function _(t,e,r,n,i,a,s){var l=t-r,u=e-n,h=(s?a:-a)/c(l*l+u*u),p=h*u,f=-h*l,d=t+p,m=e+f,g=r+p,y=n+f,v=(d+g)/2,x=(m+y)/2,_=g-d,b=y-m,w=_*_+b*b,T=i-a,A=d*y-g*m,k=(b<0?-1:1)*c(o(0,T*T*w-A*A)),M=(A*b-_*k)/w,S=(-A*_-b*k)/w,E=(A*b+_*k)/w,C=(-A*_+b*k)/w,I=M-v,L=S-x,P=E-v,z=C-x;return I*I+L*L>P*P+z*z&&(M=E,S=C),{cx:M,cy:S,x01:-p,y01:-f,x11:M*(i/T-1),y11:S*(i/T-1)}}function b(t){this._context=t}function w(t){return new b(t)}function T(t){return t[0]}function A(t){return t[1]}function k(){var t=T,n=A,i=r(!0),a=null,o=w,s=null;function l(r){var l,c,u,h=r.length,p=!1;for(null==a&&(s=o(u=e.path())),l=0;l<=h;++l)!(l=h;--p)c.point(y[p],v[p]);c.lineEnd(),c.areaEnd()}g&&(y[u]=+t(f,u,r),v[u]=+i(f,u,r),c.point(n?+n(f,u,r):y[u],a?+a(f,u,r):v[u]))}if(d)return c=null,d+""||null}function h(){return k().defined(o).curve(l).context(s)}return u.x=function(e){return arguments.length?(t="function"==typeof e?e:r(+e),n=null,u):t},u.x0=function(e){return arguments.length?(t="function"==typeof e?e:r(+e),u):t},u.x1=function(t){return arguments.length?(n=null==t?null:"function"==typeof t?t:r(+t),u):n},u.y=function(t){return arguments.length?(i="function"==typeof t?t:r(+t),a=null,u):i},u.y0=function(t){return arguments.length?(i="function"==typeof t?t:r(+t),u):i},u.y1=function(t){return arguments.length?(a=null==t?null:"function"==typeof t?t:r(+t),u):a},u.lineX0=u.lineY0=function(){return h().x(t).y(i)},u.lineY1=function(){return h().x(t).y(a)},u.lineX1=function(){return h().x(n).y(i)},u.defined=function(t){return arguments.length?(o="function"==typeof t?t:r(!!t),u):o},u.curve=function(t){return arguments.length?(l=t,null!=s&&(c=l(s)),u):l},u.context=function(t){return arguments.length?(null==t?s=c=null:c=l(s=t),u):s},u}function S(t,e){return et?1:e>=t?0:NaN}function E(t){return t}b.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var C=L(w);function I(t){this._curve=t}function L(t){function e(e){return new I(t(e))}return e._curve=t,e}function P(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(L(t)):e()._curve},t}function z(){return P(k().curve(C))}function D(){var t=M().curve(C),e=t.curve,r=t.lineX0,n=t.lineX1,i=t.lineY0,a=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return P(r())},delete t.lineX0,t.lineEndAngle=function(){return P(n())},delete t.lineX1,t.lineInnerRadius=function(){return P(i())},delete t.lineY0,t.lineOuterRadius=function(){return P(a())},delete t.lineY1,t.curve=function(t){return arguments.length?e(L(t)):e()._curve},t}function O(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};var R=Array.prototype.slice;function F(t){return t.source}function B(t){return t.target}function j(t){var n=F,i=B,a=T,o=A,s=null;function l(){var r,l=R.call(arguments),c=n.apply(this,l),u=i.apply(this,l);if(s||(s=r=e.path()),t(s,+a.apply(this,(l[0]=c,l)),+o.apply(this,l),+a.apply(this,(l[0]=u,l)),+o.apply(this,l)),r)return s=null,r+""||null}return l.source=function(t){return arguments.length?(n=t,l):n},l.target=function(t){return arguments.length?(i=t,l):i},l.x=function(t){return arguments.length?(a="function"==typeof t?t:r(+t),l):a},l.y=function(t){return arguments.length?(o="function"==typeof t?t:r(+t),l):o},l.context=function(t){return arguments.length?(s=t??null,l):s},l}function N(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function U(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e,r=(r+i)/2,n,r,n,i)}function V(t,e,r,n,i){var a=O(e,r),o=O(e,r=(r+i)/2),s=O(n,r),l=O(n,i);t.moveTo(a[0],a[1]),t.bezierCurveTo(o[0],o[1],s[0],s[1],l[0],l[1])}var q={draw:function(t,e){var r=Math.sqrt(e/h);t.moveTo(r,0),t.arc(0,0,r,0,f)}},H={draw:function(t,e){var r=Math.sqrt(e/5)/2;t.moveTo(-3*r,-r),t.lineTo(-r,-r),t.lineTo(-r,-3*r),t.lineTo(r,-3*r),t.lineTo(r,-r),t.lineTo(3*r,-r),t.lineTo(3*r,r),t.lineTo(r,r),t.lineTo(r,3*r),t.lineTo(-r,3*r),t.lineTo(-r,r),t.lineTo(-3*r,r),t.closePath()}},G=Math.sqrt(1/3),W=2*G,Z={draw:function(t,e){var r=Math.sqrt(e/W),n=r*G;t.moveTo(0,-r),t.lineTo(n,0),t.lineTo(0,r),t.lineTo(-n,0),t.closePath()}},Y=Math.sin(h/10)/Math.sin(7*h/10),X=Math.sin(f/10)*Y,$=-Math.cos(f/10)*Y,K={draw:function(t,e){var r=Math.sqrt(.8908130915292852*e),n=X*r,i=$*r;t.moveTo(0,-r),t.lineTo(n,i);for(var a=1;a<5;++a){var o=f*a/5,s=Math.cos(o),l=Math.sin(o);t.lineTo(l*r,-s*r),t.lineTo(s*n-l*i,l*n+s*i)}t.closePath()}},J={draw:function(t,e){var r=Math.sqrt(e),n=-r/2;t.rect(n,n,r,r)}},Q=Math.sqrt(3),tt={draw:function(t,e){var r=-Math.sqrt(e/(3*Q));t.moveTo(0,2*r),t.lineTo(-Q*r,-r),t.lineTo(Q*r,-r),t.closePath()}},et=-.5,rt=Math.sqrt(3)/2,nt=1/Math.sqrt(12),it=3*(nt/2+1),at={draw:function(t,e){var r=Math.sqrt(e/it),n=r/2,i=r*nt,a=n,o=r*nt+r,s=-a,l=o;t.moveTo(n,i),t.lineTo(a,o),t.lineTo(s,l),t.lineTo(et*n-rt*i,rt*n+et*i),t.lineTo(et*a-rt*o,rt*a+et*o),t.lineTo(et*s-rt*l,rt*s+et*l),t.lineTo(et*n+rt*i,et*i-rt*n),t.lineTo(et*a+rt*o,et*o-rt*a),t.lineTo(et*s+rt*l,et*l-rt*s),t.closePath()}},ot=[q,H,Z,J,K,tt,at];function st(){}function lt(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function ct(t){this._context=t}function ut(t){this._context=t}function ht(t){this._context=t}function pt(t,e){this._basis=new ct(t),this._beta=e}ct.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lt(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ut.prototype={areaStart:st,areaEnd:st,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:lt(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ht.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:lt(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},pt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n,i=t[0],a=e[0],o=t[r]-i,s=e[r]-a,l=-1;++l<=r;)n=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(i+n*o),this._beta*e[l]+(1-this._beta)*(a+n*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var ft=function t(e){function r(t){return 1===e?new ct(t):new pt(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function dt(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function mt(t,e){this._context=t,this._k=(1-e)/6}mt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:dt(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:dt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var gt=function t(e){function r(t){return new mt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function yt(t,e){this._context=t,this._k=(1-e)/6}yt.prototype={areaStart:st,areaEnd:st,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:dt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var vt=function t(e){function r(t){return new yt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function xt(t,e){this._context=t,this._k=(1-e)/6}xt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:dt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var _t=function t(e){function r(t){return new xt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bt(t,e,r){var n=t._x1,i=t._y1,a=t._x2,o=t._y2;if(t._l01_a>u){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,i=(i*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>u){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,h=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*c+t._x1*t._l23_2a-e*t._l12_2a)/h,o=(o*c+t._y1*t._l23_2a-r*t._l12_2a)/h}t._context.bezierCurveTo(n,i,a,o,t._x2,t._y2)}function wt(t,e){this._context=t,this._alpha=e}wt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:bt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Tt=function t(e){function r(t){return e?new wt(t,e):new mt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function At(t,e){this._context=t,this._alpha=e}At.prototype={areaStart:st,areaEnd:st,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:bt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var kt=function t(e){function r(t){return e?new At(t,e):new yt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Mt(t,e){this._context=t,this._alpha=e}Mt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var St=function t(e){function r(t){return e?new Mt(t,e):new xt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Et(t){this._context=t}function Ct(t){return t<0?-1:1}function It(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),o=(r-t._y1)/(i||n<0&&-0),s=(a*i+o*n)/(n+i);return(Ct(a)+Ct(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function Lt(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function Pt(t,e,r){var n=t._x0,i=t._y0,a=t._x1,o=t._y1,s=(a-n)/3;t._context.bezierCurveTo(n+s,i+s*e,a-s,o-s*r,a,o)}function zt(t){this._context=t}function Dt(t){this._context=new Ot(t)}function Ot(t){this._context=t}function Rt(t){this._context=t}function Ft(t){var e,r,n=t.length-1,i=new Array(n),a=new Array(n),o=new Array(n);for(i[0]=0,a[0]=2,o[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(o[e]-i[e+1])/a[e];for(a[n-1]=(t[n]+i[n-1])/2,e=0;e1)for(var r,n,i,a=1,o=t[e[0]],s=o.length;a=0;)r[e]=e;return r}function Ut(t,e){return t[e]}function Vt(t){var e=t.map(qt);return Nt(t).sort((function(t,r){return e[t]-e[r]}))}function qt(t){for(var e,r=-1,n=0,i=t.length,a=-1/0;++ra&&(a=e,n=r);return n}function Ht(t){var e=t.map(Gt);return Nt(t).sort((function(t,r){return e[t]-e[r]}))}function Gt(t){for(var e,r=0,n=-1,i=t.length;++n=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},t.arc=function(){var t=m,o=g,b=r(0),w=null,T=y,A=v,k=x,M=null;function S(){var r,m,g=+t.apply(this,arguments),y=+o.apply(this,arguments),v=T.apply(this,arguments)-p,x=A.apply(this,arguments)-p,S=n(x-v),E=x>v;if(M||(M=r=e.path()),yu)if(S>f-u)M.moveTo(y*a(v),y*l(v)),M.arc(0,0,y,v,x,!E),g>u&&(M.moveTo(g*a(x),g*l(x)),M.arc(0,0,g,x,v,E));else{var C,I,L=v,P=x,z=v,D=x,O=S,R=S,F=k.apply(this,arguments)/2,B=F>u&&(w?+w.apply(this,arguments):c(g*g+y*y)),j=s(n(y-g)/2,+b.apply(this,arguments)),N=j,U=j;if(B>u){var V=d(B/g*l(F)),q=d(B/y*l(F));(O-=2*V)>u?(z+=V*=E?1:-1,D-=V):(O=0,z=D=(v+x)/2),(R-=2*q)>u?(L+=q*=E?1:-1,P-=q):(R=0,L=P=(v+x)/2)}var H=y*a(L),G=y*l(L),W=g*a(D),Z=g*l(D);if(j>u){var Y,X=y*a(P),$=y*l(P),K=g*a(z),J=g*l(z);if(S1?0:t<-1?h:Math.acos(t)}((Q*et+tt*rt)/(c(Q*Q+tt*tt)*c(et*et+rt*rt)))/2),it=c(Y[0]*Y[0]+Y[1]*Y[1]);N=s(j,(g-it)/(nt-1)),U=s(j,(y-it)/(nt+1))}}R>u?U>u?(C=_(K,J,H,G,y,U,E),I=_(X,$,W,Z,y,U,E),M.moveTo(C.cx+C.x01,C.cy+C.y01),Uu&&O>u?N>u?(C=_(W,Z,X,$,g,-N,E),I=_(H,G,K,J,g,-N,E),M.lineTo(C.cx+C.x01,C.cy+C.y01),N0&&(d+=h);for(null!=e?m.sort((function(t,r){return e(g[t],g[r])})):null!=n&&m.sort((function(t,e){return n(r[t],r[e])})),s=0,c=d?(v-p*_)/d:0;s0?h*c:0)+_,g[l]={data:r[l],index:s,value:h,startAngle:y,endAngle:u,padAngle:x};return g}return s.value=function(e){return arguments.length?(t="function"==typeof e?e:r(+e),s):t},s.sortValues=function(t){return arguments.length?(e=t,n=null,s):e},s.sort=function(t){return arguments.length?(n=t,e=null,s):n},s.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:r(+t),s):i},s.endAngle=function(t){return arguments.length?(a="function"==typeof t?t:r(+t),s):a},s.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:r(+t),s):o},s},t.pointRadial=O,t.radialArea=D,t.radialLine=z,t.stack=function(){var t=r([]),e=Nt,n=jt,i=Ut;function a(r){var a,o,s=t.apply(this,arguments),l=r.length,c=s.length,u=new Array(c);for(a=0;a0)for(var r,n,i,a,o,s,l=0,c=t[e[0]].length;l0?(n[0]=a,n[1]=a+=i):i<0?(n[1]=o,n[0]=o+=i):(n[0]=0,n[1]=i)},t.stackOffsetExpand=function(t,e){if((n=t.length)>0){for(var r,n,i,a=0,o=t[0].length;a0){for(var r,n=0,i=t[e[0]],a=i.length;n0&&(n=(r=t[e[0]]).length)>0){for(var r,n,i,a=0,o=1;oa&&(_=a);var o=e.min(i,(function(t){return(v-n-(t.length-1)*_)/e.sum(t,u)}));i.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*o}))})),t.links.forEach((function(t){t.width=t.value*o}))})(),d();for(var a=1,o=k;o>0;--o)l(a*=.99),d(),s(a),d();function s(t){i.forEach((function(r){r.forEach((function(r){if(r.targetLinks.length){var n=(e.sum(r.targetLinks,p)/e.sum(r.targetLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function l(t){i.slice().reverse().forEach((function(r){r.forEach((function(r){if(r.sourceLinks.length){var n=(e.sum(r.sourceLinks,f)/e.sum(r.sourceLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function d(){i.forEach((function(t){var e,r,i,a=n,o=t.length;for(t.sort(c),i=0;i0&&(e.y0+=r,e.y1+=r),a=e.y1+_;if((r=a-_-v)>0)for(a=e.y0-=r,e.y1-=r,i=o-2;i>=0;--i)(r=(e=t[i]).y1+_-a)>0&&(e.y0-=r,e.y1-=r),a=e.y0}))}}(a),E(a),a}function E(t){t.nodes.forEach((function(t){t.sourceLinks.sort(l),t.targetLinks.sort(s)})),t.nodes.forEach((function(t){var e=t.y0,r=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=r+t.width/2,r+=t.width}))}))}return S.update=function(t){return E(t),t},S.nodeId=function(t){return arguments.length?(b="function"==typeof t?t:o(t),S):b},S.nodeAlign=function(t){return arguments.length?(w="function"==typeof t?t:o(t),S):w},S.nodeWidth=function(t){return arguments.length?(x=+t,S):x},S.nodePadding=function(t){return arguments.length?(_=+t,S):_},S.nodes=function(t){return arguments.length?(T="function"==typeof t?t:o(t),S):T},S.links=function(t){return arguments.length?(A="function"==typeof t?t:o(t),S):A},S.size=function(e){return arguments.length?(t=n=0,i=+e[0],v=+e[1],S):[i-t,v-n]},S.extent=function(e){return arguments.length?(t=+e[0][0],i=+e[1][0],n=+e[0][1],v=+e[1][1],S):[[t,n],[i,v]]},S.iterations=function(t){return arguments.length?(k=+t,S):k},S},t.sankeyCenter=function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?e.min(t.sourceLinks,i)-1:0},t.sankeyLeft=function(t){return t.depth},t.sankeyRight=function(t,e){return e-1-t.height},t.sankeyJustify=a,t.sankeyLinkHorizontal=function(){return n.linkHorizontal().source(v).target(x)},Object.defineProperty(t,"__esModule",{value:!0})},"object"==typeof t&&typeof e<"u"?n(t,lg(),Cb(),Db()):n(r.d3=r.d3||{},r.d3,r.d3,r.d3)}}),Rb=f({"node_modules/elementary-circuits-directed-graph/johnson.js"(t,e){var r=Mb();e.exports=function(t,e){var n,i=[],a=[],o=[],s={},l=[];function c(t){o[t]=!1,s.hasOwnProperty(t)&&Object.keys(s[t]).forEach((function(e){delete s[t][e],o[e]&&c(e)}))}function u(t){var e,r,i=!1;for(a.push(t),o[t]=!0,e=0;e=e}))}(e);for(var n,i=r(t).components.filter((function(t){return t.length>1})),a=1/0,o=0;oe.source.column)}function M(t,e){var r=0;t.sourceLinks.forEach((function(t){r=t.circular&&!W(t,e)?r+1:r}));var n=0;return t.targetLinks.forEach((function(t){n=t.circular&&!W(t,e)?n+1:n})),r+n}function S(t){var e=t.source.sourceLinks,r=0;e.forEach((function(t){r=t.circular?r+1:r}));var n=t.target.targetLinks,i=0;return n.forEach((function(t){i=t.circular?i+1:i})),!(r>1||i>1)}function E(t,e,r){return t.sort(I),t.forEach((function(n,i){var a=0;if(W(n,r)&&S(n))n.circularPathData.verticalBuffer=a+n.width/2;else{for(var o=0;oa?s:a}n.circularPathData.verticalBuffer=a+n.width/2}})),t}function C(t,r,i,a){var o=e.min(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),E(t.links.filter((function(t){return"top"==t.circularLinkType})),r,a),E(t.links.filter((function(t){return"bottom"==t.circularLinkType})),r,a),t.links.forEach((function(e){if(e.circular){if(e.circularPathData.arcRadius=e.width+w,e.circularPathData.leftNodeBuffer=5,e.circularPathData.rightNodeBuffer=5,e.circularPathData.sourceWidth=e.source.x1-e.source.x0,e.circularPathData.sourceX=e.source.x0+e.circularPathData.sourceWidth,e.circularPathData.targetX=e.target.x0,e.circularPathData.sourceY=e.y0,e.circularPathData.targetY=e.y1,W(e,a)&&S(e))e.circularPathData.leftSmallArcRadius=w+e.width/2,e.circularPathData.leftLargeArcRadius=w+e.width/2,e.circularPathData.rightSmallArcRadius=w+e.width/2,e.circularPathData.rightLargeArcRadius=w+e.width/2,"bottom"==e.circularLinkType?(e.circularPathData.verticalFullExtent=e.source.y1+b+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=e.source.y0-b-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius);else{var s=e.source.column,l=e.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));"bottom"==e.circularLinkType?c.sort(P):c.sort(L);var u=0;c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.leftSmallArcRadius=w+e.width/2+u,e.circularPathData.leftLargeArcRadius=w+e.width/2+n*r+u),u+=t.width})),s=e.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),"bottom"==e.circularLinkType?c.sort(D):c.sort(z),u=0,c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.rightSmallArcRadius=w+e.width/2+u,e.circularPathData.rightLargeArcRadius=w+e.width/2+n*r+u),u+=t.width})),"bottom"==e.circularLinkType?(e.circularPathData.verticalFullExtent=Math.max(i,e.source.y1,e.target.y1)+b+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=o-b-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius)}e.circularPathData.leftInnerExtent=e.circularPathData.sourceX+e.circularPathData.leftNodeBuffer,e.circularPathData.rightInnerExtent=e.circularPathData.targetX-e.circularPathData.rightNodeBuffer,e.circularPathData.leftFullExtent=e.circularPathData.sourceX+e.circularPathData.leftLargeArcRadius+e.circularPathData.leftNodeBuffer,e.circularPathData.rightFullExtent=e.circularPathData.targetX-e.circularPathData.rightLargeArcRadius-e.circularPathData.rightNodeBuffer}if(e.circular)e.path=function(t){return"top"==t.circularLinkType?"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 0 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 0 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 0 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 0 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY:"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 1 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 1 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 1 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 1 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY}(e);else{var h=n.linkHorizontal().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));e.path=h(e)}}))}function I(t,e){return O(t)==O(e)?"bottom"==t.circularLinkType?P(t,e):L(t,e):O(e)-O(t)}function L(t,e){return t.y0-e.y0}function P(t,e){return e.y0-t.y0}function z(t,e){return t.y1-e.y1}function D(t,e){return e.y1-t.y1}function O(t){return t.target.column-t.source.column}function R(t){return t.target.x0-t.source.x1}function F(t,e){var r=A(t),n=R(e)/Math.tan(r);return"up"==G(t)?t.y1+n:t.y1-n}function B(t,e){var r=A(t),n=R(e)/Math.tan(r);return"up"==G(t)?t.y1-n:t.y1+n}function j(t,e,r,n){t.links.forEach((function(i){if(!i.circular&&i.target.column-i.source.column>1){var a=i.source.column+1,o=i.target.column-1,s=1,l=o-a+1;for(s=1;a<=o;a++,s++)t.nodes.forEach((function(o){if(o.column==a){var c,u=s/(l+1),h=Math.pow(1-u,3),p=3*u*Math.pow(1-u,2),f=3*Math.pow(u,2)*(1-u),d=Math.pow(u,3),m=h*i.y0+p*i.y0+f*i.y1+d*i.y1,g=m-i.width/2,y=m+i.width/2;g>o.y0&&go.y0&&yo.y1)&&(c=y-o.y0+10,o=U(o,c,e,r),t.nodes.forEach((function(t){_(t,n)==_(o,n)||t.column!=o.column||t.y0o.y1&&U(t,c,e,r)})))}}))}}))}function N(t,e){return t.y0>e.y0&&t.y0e.y0&&t.y1e.y1}function U(t,e,r,n){return t.y0+e>=r&&t.y1+e<=n&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function V(t,e,r,n){t.nodes.forEach((function(i){n&&i.y+(i.y1-i.y0)>e&&(i.y=i.y-(i.y+(i.y1-i.y0)-e));var a=t.links.filter((function(t){return _(t.source,r)==_(i,r)})),o=a.length;o>1&&a.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!H(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var r=B(e,t);return t.y1-r}if(e.target.column>t.target.column)return B(t,e)-e.y1}return t.circular&&!e.circular?"top"==t.circularLinkType?-1:1:e.circular&&!t.circular?"top"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&"top"==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&"bottom"==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:"top"==t.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),a.forEach((function(t,e){if("bottom"==t.circularLinkType){for(var r=e+1,n=0;r1&&n.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!H(t,e))return t.y0-e.y0;if(e.source.column0?"up":"down"}function W(t,e){return _(t.source,e)==_(t.target,e)}t.sankeyCircular=function(){var t,n,a=0,_=0,A=1,k=1,S=24,E=g,I=o,L=y,P=v,z=32,D=2,O=null;function R(){var o={nodes:L.apply(null,arguments),links:P.apply(null,arguments)};(function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=r.map(t.nodes,E);t.links.forEach((function(t,r){t.index=r;var n=t.source,i=t.target;"object"!==(typeof n>"u"?"undefined":l(n))&&(n=t.source=x(e,n)),"object"!==(typeof i>"u"?"undefined":l(i))&&(i=t.target=x(e,i)),n.sourceLinks.push(t),i.targetLinks.push(t)}))})(o),function(t,e,r){var n=0;if(null===r){for(var a=[],o=0;o0?r+b+w:r,bottom:n=n>0?n+b+w:n,left:a=a>0?a+b+w:a,right:i=i>0?i+b+w:i}}(i),u=function(t,r){var n=e.max(t.nodes,(function(t){return t.column})),i=A-a,o=k-_,s=i/(i+r.right+r.left),l=o/(o+r.top+r.bottom);return a=a*s+r.left,A=0==r.right?A:A*s,_=_*l+r.top,k*=l,t.nodes.forEach((function(t){t.x0=a+t.column*((A-a-S)/n),t.x1=t.x0+S})),l}(i,c);s*=u,i.links.forEach((function(t){t.width=t.value*s})),l.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==l.length-1&&1==e||0==t.depth&&1==e?(t.y0=k/2-t.value*s,t.y1=t.y0+t.value*s):t.partOfCycle?0==M(t,r)?(t.y0=k/2+n,t.y1=t.y0+t.value*s):"top"==t.circularLinkType?(t.y0=_+n,t.y1=t.y0+t.value*s):(t.y0=k-t.value*s-n,t.y1=t.y0+t.value*s):0==c.top||0==c.bottom?(t.y0=(k-_)/e*n,t.y1=t.y0+t.value*s):(t.y0=(k-_)/2-e/2+n,t.y1=t.y0+t.value*s)}))}))})(s),y();for(var c=1,u=o;u>0;--u)g(c*=.99,s),y();function g(t,r){var n=l.length;l.forEach((function(i){var a=i.length,o=i[0].depth;i.forEach((function(i){var s;if((i.sourceLinks.length||i.targetLinks.length)&&!(i.partOfCycle&&M(i,r)>0))if(0==o&&1==a)s=i.y1-i.y0,i.y0=k/2-s/2,i.y1=k/2+s/2;else if(o==n-1&&1==a)s=i.y1-i.y0,i.y0=k/2-s/2,i.y1=k/2+s/2;else{var l=e.mean(i.sourceLinks,m),c=e.mean(i.targetLinks,d),u=((l&&c?(l+c)/2:l||c)-f(i))*t;i.y0+=u,i.y1+=u}}))}))}function y(){l.forEach((function(e){var r,n,i,a=_,o=e.length;for(e.sort(h),i=0;i0&&(r.y0+=n,r.y1+=n),a=r.y1+t;if((n=a-t-k)>0)for(a=r.y0-=n,r.y1-=n,i=o-2;i>=0;--i)(n=(r=e[i]).y1+t-a)>0&&(r.y0-=n,r.y1-=n),a=r.y0}))}}(o,z,E),F(o);for(var s=0;s<4;s++)V(o,k,E),q(o,0,E),j(o,_,k,E),V(o,k,E),q(o,0,E);return function(t,r,n){var i=t.nodes,a=t.links,o=!1,s=!1;if(a.forEach((function(t){"top"==t.circularLinkType?o=!0:"bottom"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=e.min(i,(function(t){return t.y0})),c=e.max(i,(function(t){return t.y1})),u=(n-r)/(c-l);i.forEach((function(t){var e=(t.y1-t.y0)*u;t.y0=(t.y0-l)*u,t.y1=t.y0+e})),a.forEach((function(t){t.y0=(t.y0-l)*u,t.y1=(t.y1-l)*u,t.width=t.width*u}))}}(o,_,k),C(o,D,k,E),o}function F(t){t.nodes.forEach((function(t){t.sourceLinks.sort(u),t.targetLinks.sort(c)})),t.nodes.forEach((function(t){var e=t.y0,r=e,n=t.y1,i=n;t.sourceLinks.forEach((function(t){t.circular?(t.y0=n-t.width/2,n-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=i-t.width/2,i-=t.width):(t.y1=r+t.width/2,r+=t.width)}))}))}return R.nodeId=function(t){return arguments.length?(E="function"==typeof t?t:s(t),R):E},R.nodeAlign=function(t){return arguments.length?(I="function"==typeof t?t:s(t),R):I},R.nodeWidth=function(t){return arguments.length?(S=+t,R):S},R.nodePadding=function(e){return arguments.length?(t=+e,R):t},R.nodes=function(t){return arguments.length?(L="function"==typeof t?t:s(t),R):L},R.links=function(t){return arguments.length?(P="function"==typeof t?t:s(t),R):P},R.size=function(t){return arguments.length?(a=_=0,A=+t[0],k=+t[1],R):[A-a,k-_]},R.extent=function(t){return arguments.length?(a=+t[0][0],A=+t[1][0],_=+t[0][1],k=+t[1][1],R):[[a,_],[A,k]]},R.iterations=function(t){return arguments.length?(z=+t,R):z},R.circularLinkGap=function(t){return arguments.length?(D=+t,R):D},R.nodePaddingRatio=function(t){return arguments.length?(n=+t,R):n},R.sortNodes=function(t){return arguments.length?(O=t,R):O},R.update=function(t){return T(t,E),F(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y1o+d&&(a+=1,e=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),r=e-s.x0,s.x0+=r,s.x1+=r}return i})(x=k.nodes).forEach((function(t){var e,r,n,i=0,a=t.length;for(t.sort((function(t,e){return t.y0-e.y0})),n=0;n=i||(r=i-e.y0)>1e-6&&(e.y0+=r,e.y1+=r),i=e.y1+f}));n.update(k)}return{circular:b,key:r,trace:c,guid:h.randstr(),horizontal:p,width:g,height:y,nodePad:c.node.pad,nodeLineColor:c.node.line.color,nodeLineWidth:c.node.line.width,linkLineColor:c.link.line.color,linkLineWidth:c.link.line.width,linkArrowLength:c.link.arrowlen,valueFormat:c.valueformat,valueSuffix:c.valuesuffix,textFont:c.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:p?y:g,dragPerpendicular:p?g:y,arrangement:c.arrangement,sankey:n,graph:k,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function M(t,e,r){var n=l(e.color),i=l(e.hovercolor),a=e.source.label+"|"+e.target.label+"__"+r;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:a,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:c.tinyRGB(n),tinyColorAlpha:n.getAlpha(),tinyColorHoverHue:c.tinyRGB(i),tinyColorHoverAlpha:i.getAlpha(),linkPath:S,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,linkArrowLength:t.linkArrowLength,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function S(){return function(t){var e=t.linkArrowLength;if(t.link.circular)return function(t,e){var r="",n=t.width/2,i=t.circularPathData,a=i.sourceX+i.verticalBuffer0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-e)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-e)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-e)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-e)+" "+i.verticalRightInnerExtent,r+=a&&o?" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-e)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-e-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-e-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-e)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,r+=a&&o?" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-e+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-e)+" "+i.verticalRightInnerExtent:a?" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-e-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-e)+" "+i.verticalRightInnerExtent:" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-e)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-e)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-e)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-e)+" "+(i.targetY+n)+" L "+(i.targetX-e)+" "+(i.targetY+n)+(e>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}(t.link,e);var r=Math.abs((t.link.target.x0-t.link.source.x1)/2);e>r&&(e=r);var i=t.link.source.x1,a=t.link.target.x0-e,o=n(i,a),s=o(.5),l=o(.5),c=t.link.y0-t.link.width/2,u=t.link.y0+t.link.width/2,h=t.link.y1-t.link.width/2,p=t.link.y1+t.link.width/2,f="M"+i+","+c,d="C"+s+","+c+" "+l+","+h+" "+a+","+h,m="C"+l+","+p+" "+s+","+u+" "+i+","+u,g=e>0?"L"+(a+e)+","+(h+t.link.width/2):"";return f+d+(g+="L"+a+","+p)+m+"Z"}}function E(t,e){var r=l(e.color),n=s.nodePadAcross,i=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var a=e.dx,o=Math.max(.5,e.dy),u="node_"+e.pointNumber;return e.group&&(u=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:u,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:c.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,u].join("_"),interactionState:t.interactionState,figure:t}}function C(t){t.attr("transform",(function(t){return p(t.node.x0.toFixed(3),t.node.y0.toFixed(3))}))}function I(t){t.call(C)}function L(t,e){t.call(I),e.attr("d",S())}function P(t){t.attr("width",(function(t){return t.node.x1-t.node.x0})).attr("height",(function(t){return t.visibleHeight}))}function z(t){return t.link.width>1||t.linkLineWidth>0}function D(t){return p(t.translateX,t.translateY)+(t.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function R(t,e,r){t.on(".basic",null).on("mouseover.basic",(function(t){!t.interactionState.dragInProgress&&!t.partOfGroup&&(r.hover(this,t,e),t.interactionState.hovered=[this,t])})).on("mousemove.basic",(function(t){!t.interactionState.dragInProgress&&!t.partOfGroup&&(r.follow(this,t),t.interactionState.hovered=[this,t])})).on("mouseout.basic",(function(t){!t.interactionState.dragInProgress&&!t.partOfGroup&&(r.unhover(this,t,e),t.interactionState.hovered=!1)})).on("click.basic",(function(t){t.interactionState.hovered&&(r.unhover(this,t,e),t.interactionState.hovered=!1),!t.interactionState.dragInProgress&&!t.partOfGroup&&r.select(this,t,e)}))}function F(t,e,n,a){var o=i.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on("dragstart",(function(i){if("fixed"!==i.arrangement&&(h.ensureSingle(a._fullLayout._infolayer,"g","dragcover",(function(t){a._fullLayout._dragCover=t})),h.raiseToTop(this),i.interactionState.dragInProgress=i.node,j(i.node),i.interactionState.hovered&&(n.nodeEvents.unhover.apply(0,i.interactionState.hovered),i.interactionState.hovered=!1),"snap"===i.arrangement)){var o=i.traceId+"|"+i.key;i.forceLayouts[o]?i.forceLayouts[o].alpha(1):function(t,e,n){!function(t){for(var e=0;e0&&n.forceLayouts[e].alpha(0)}}(0,e,i,n)).stop()}(0,o,i),function(t,e,r,n,i){window.requestAnimationFrame((function a(){var o;for(o=0;o0)window.requestAnimationFrame(a);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,B(r,i)}}))}(t,e,i,o,a)}})).on("drag",(function(r){if("fixed"!==r.arrangement){var n=i.event.x,a=i.event.y;"snap"===r.arrangement?(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2,r.node.y0=a-r.visibleHeight/2,r.node.y1=a+r.visibleHeight/2):("freeform"===r.arrangement&&(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2),a=Math.max(0,Math.min(r.size-r.visibleHeight/2,a)),r.node.y0=a-r.visibleHeight/2,r.node.y1=a+r.visibleHeight/2),j(r.node),"snap"!==r.arrangement&&(r.sankey.update(r.graph),L(t.filter(N(r)),e))}})).on("dragend",(function(t){if("fixed"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;e"),color:b(l,"bgcolor")||s.addOpacity(m.color,1),borderColor:b(l,"bordercolor"),fontFamily:b(l,"font.family"),fontSize:b(l,"font.size"),fontColor:b(l,"font.color"),fontWeight:b(l,"font.weight"),fontStyle:b(l,"font.style"),fontVariant:b(l,"font.variant"),fontTextcase:b(l,"font.textcase"),fontLineposition:b(l,"font.lineposition"),fontShadow:b(l,"font.shadow"),nameLength:b(l,"namelength"),textAlign:b(l,"align"),idealAlign:r.event.x"),color:b(s,"bgcolor")||a.tinyColorHue,borderColor:b(s,"bordercolor"),fontFamily:b(s,"font.family"),fontSize:b(s,"font.size"),fontColor:b(s,"font.color"),fontWeight:b(s,"font.weight"),fontStyle:b(s,"font.style"),fontVariant:b(s,"font.variant"),fontTextcase:b(s,"font.textcase"),fontLineposition:b(s,"font.lineposition"),fontShadow:b(s,"font.shadow"),nameLength:b(s,"namelength"),textAlign:b(s,"align"),idealAlign:"left",hovertemplate:s.hovertemplate,hovertemplateLabels:v,eventData:[a.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});p(w,.85),f(w)}}},unhover:function(e,i,a){!1!==t._fullLayout.hovermode&&(r.select(e).call(y,i,a),"skip"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,t.emit("plotly_unhover",{event:r.event,points:[i.node]})),o.loneUnhover(n._hoverlayer.node()))},select:function(e,n,i){var a=n.node;a.originalEvent=r.event,t._hoverdata=[a],r.select(e).call(y,n,i),o.click(t,{target:!0})}}})}}}),Ub=f({"src/traces/sankey/base_plot.js"(t){var e=Pt().overrideAll,r=we().getModuleCalcData,n=Nb(),i=j(),a=fr(),o=pr(),s=En().prepSelect,l=le(),c=qt(),u="sankey";function h(t,e){var r=t._fullData[e],n=t._fullLayout,i=n.dragmode,u="pan"===n.dragmode?"move":"crosshair",h=r._bgRect;if(h&&"pan"!==i&&"zoom"!==i){a(h,u);var p={_id:"x",c2p:l.identity,_offset:r._sankey.translateX,_length:r._sankey.width},f={_id:"y",c2p:l.identity,_offset:r._sankey.translateY,_length:r._sankey.height},d={gd:t,element:h.node(),plotinfo:{id:e,xaxis:p,yaxis:f,fillRangeItems:l.noop},subplot:e,xaxes:[p],yaxes:[f],doneFnCompleted:function(r){var n,i=t._fullData[e],a=i.node.groups.slice(),o=[];function s(t){for(var e=i._sankey.graph.nodes,r=0;r0}function A(t){t.each((function(t){v.stroke(r.select(this),t.line.color)})).each((function(t){v.fill(r.select(this),t.color)})).style("stroke-width",(function(t){return t.line.width}))}function k(t,e,r){var n=t._fullLayout,i=a.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},e),o={type:"linear",_id:"x"+e._id},s={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function l(t,e){return a.coerce(i,o,y,t,e)}return d(i,o,l,s,n),m(i,o,l,s),o}function M(t,e,r){return[Math.min(e/t.width,r/t.height),t,e+"x"+r]}function S(t,e,n,i){var a=document.createElementNS("http://www.w3.org/2000/svg","text"),o=r.select(a);return o.text(t).attr("x",0).attr("y",0).attr("text-anchor",n).attr("data-unformatted",t).call(p.convertToTspans,i).call(u.font,e),u.bBox(o.node())}function E(t,e,r,n,i,o){var s="_cache"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:r});var l=a.aggNums(o,null,[t[s].value,n],2);return t[s].value=l,l}e.exports=function(t,e,d,m){var g,y=t._fullLayout;T(d)&&m&&(g=m()),a.makeTraceGroups(y._indicatorlayer,e,"trace").each((function(e){var m,x,C,I,L,P=e[0].trace,z=r.select(this),D=P._hasGauge,O=P._isAngular,R=P._isBullet,F=P.domain,B={w:y._size.w*(F.x[1]-F.x[0]),h:y._size.h*(F.y[1]-F.y[0]),l:y._size.l+y._size.w*F.x[0],r:y._size.r+y._size.w*(1-F.x[1]),t:y._size.t+y._size.h*(1-F.y[1]),b:y._size.b+y._size.h*F.y[0]},j=B.l+B.w/2,N=B.t+B.h/2,U=Math.min(B.w/2,B.h),V=h.innerRadius*U,q=P.align||"center";if(x=N,D){if(O&&(m=j,x=N+U/2,C=function(t){return function(t,e){return[e/Math.sqrt(t.width/2*(t.width/2)+t.height*t.height),t,e]}(t,.9*V)}),R){var H=h.bulletPadding,G=1-h.bulletNumberDomainSize+H;m=B.l+(G+(1-G)*b[q])*B.w,C=function(t){return M(t,(h.bulletNumberDomainSize-H)*B.w,B.h)}}}else m=B.l+b[q]*B.w,C=function(t){return M(t,B.w,B.h)};!function(t,e,n,l){var c,h,d,m=n[0].trace,g=l.numbersX,y=l.numbersY,x=m.align||"center",A=_[x],M=l.transitionOpts,C=l.onComplete,I=a.ensureSingle(e,"g","numbers"),L=[];m._hasNumber&&L.push("number"),m._hasDelta&&(L.push("delta"),"left"===m.delta.position&&L.reverse());var P=I.selectAll("text").data(L);function z(e,r,n,i){if(!e.match("s")||n>=0==i>=0||r(n).slice(-1).match(w)||r(i).slice(-1).match(w))return r;var a=e.slice().replace("s","f").replace(/\d+/,(function(t){return parseInt(t)-1})),o=k(t,{tickformat:a});return function(t){return Math.abs(t)<1?f.tickText(o,t).text:r(t)}}P.enter().append("text"),P.attr("text-anchor",(function(){return A})).attr("class",(function(t){return t})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),P.exit().remove();var D,O=m.mode+m.align;if(m._hasDelta&&(D=function(){var e=k(t,{tickformat:m.delta.valueformat},m._range);e.setScale(),f.prepTicks(e);var a=function(t){return f.tickText(e,t).text},o=m.delta.suffix,s=m.delta.prefix,l=function(t){return m.delta.relative?t.relativeDelta:t.delta},c=function(t,e){return 0===t||"number"!=typeof t||isNaN(t)?"-":(t>0?m.delta.increasing.symbol:m.delta.decreasing.symbol)+s+e(t)+o},d=function(t){return t.delta>=0?m.delta.increasing.color:m.delta.decreasing.color};void 0===m._deltaLastValue&&(m._deltaLastValue=l(n[0]));var g=I.select("text.delta");function y(){g.text(c(l(n[0]),a)).call(v.fill,d(n[0])).call(p.convertToTspans,t)}return g.call(u.font,m.delta.font).call(v.fill,d({delta:m._deltaLastValue})),T(M)?g.transition().duration(M.duration).ease(M.easing).tween("text",(function(){var t=r.select(this),e=l(n[0]),o=m._deltaLastValue,s=z(m.delta.valueformat,a,o,e),u=i(o,e);return m._deltaLastValue=e,function(e){t.text(c(u(e),s)),t.call(v.fill,d({delta:u(e)}))}})).each("end",(function(){y(),C&&C()})).each("interrupt",(function(){y(),C&&C()})):y(),h=S(c(l(n[0]),a),m.delta.font,A,t),g}(),O+=m.delta.position+m.delta.font.size+m.delta.font.family+m.delta.valueformat,O+=m.delta.increasing.symbol+m.delta.decreasing.symbol,d=h),m._hasNumber&&(function(){var e=k(t,{tickformat:m.number.valueformat},m._range);e.setScale(),f.prepTicks(e);var a=function(t){return f.tickText(e,t).text},o=m.number.suffix,s=m.number.prefix,l=I.select("text.number");function h(){var e="number"==typeof n[0].y?s+a(n[0].y)+o:"-";l.text(e).call(u.font,m.number.font).call(p.convertToTspans,t)}T(M)?l.transition().duration(M.duration).ease(M.easing).each("end",(function(){h(),C&&C()})).each("interrupt",(function(){h(),C&&C()})).attrTween("text",(function(){var t=r.select(this),e=i(n[0].lastY,n[0].y);m._lastValue=n[0].y;var l=z(m.number.valueformat,a,n[0].lastY,n[0].y);return function(r){t.text(s+l(e(r))+o)}})):h(),c=S(s+a(n[0].y)+o,m.number.font,A,t)}(),O+=m.number.font.size+m.number.font.family+m.number.valueformat+m.number.suffix+m.number.prefix,d=c),m._hasDelta&&m._hasNumber){var R,F,B=[(c.left+c.right)/2,(c.top+c.bottom)/2],j=[(h.left+h.right)/2,(h.top+h.bottom)/2],N=.75*m.delta.font.size;"left"===m.delta.position&&(R=E(m,"deltaPos",0,-1*(c.width*b[m.align]+h.width*(1-b[m.align])+N),O,Math.min),F=B[1]-j[1],d={width:c.width+h.width+N,height:Math.max(c.height,h.height),left:h.left+R,right:c.right,top:Math.min(c.top,h.top+F),bottom:Math.max(c.bottom,h.bottom+F)}),"right"===m.delta.position&&(R=E(m,"deltaPos",0,c.width*(1-b[m.align])+h.width*b[m.align]+N,O,Math.max),F=B[1]-j[1],d={width:c.width+h.width+N,height:Math.max(c.height,h.height),left:c.left,right:h.right+R,top:Math.min(c.top,h.top+F),bottom:Math.max(c.bottom,h.bottom+F)}),"bottom"===m.delta.position&&(R=null,F=h.height,d={width:Math.max(c.width,h.width),height:c.height+h.height,left:Math.min(c.left,h.left),right:Math.max(c.right,h.right),top:c.bottom-c.height,bottom:c.bottom+h.height}),"top"===m.delta.position&&(R=null,F=c.top,d={width:Math.max(c.width,h.width),height:c.height+h.height,left:Math.min(c.left,h.left),right:Math.max(c.right,h.right),top:c.bottom-c.height-h.height,bottom:c.bottom}),D.attr({dx:R,dy:F})}(m._hasNumber||m._hasDelta)&&I.attr("transform",(function(){var t=l.numbersScaler(d);O+=t[2];var e,r=E(m,"numbersScale",1,t[0],O,Math.min);m._scaleNumbers||(r=1),e=m._isAngular?y-r*d.bottom:y-r*(d.top+d.bottom)/2,m._numbersTop=r*d.top+e;var n=d[x];"center"===x&&(n=(d.left+d.right)/2);var i=g-r*n;return i=E(m,"numbersTranslate",0,i,O,Math.max),s(i,e)+o(r)}))}(t,z,e,{numbersX:m,numbersY:x,numbersScaler:C,transitionOpts:d,onComplete:g}),D&&(I={range:P.gauge.axis.range,color:P.gauge.bgcolor,line:{color:P.gauge.bordercolor,width:0},thickness:1},L={range:P.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:P.gauge.bordercolor,width:P.gauge.borderwidth},thickness:1});var W=z.selectAll("g.angular").data(O?e:[]);W.exit().remove();var Z=z.selectAll("g.angularaxis").data(O?e:[]);Z.exit().remove(),O&&function(t,e,i,a){var o,u,h,p,d=i[0].trace,m=a.size,g=a.radius,y=a.innerRadius,v=a.gaugeBg,x=a.gaugeOutline,_=[m.l+m.w/2,m.t+m.h/2+g/2],b=a.gauge,w=a.layer,M=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(t){var e=d.gauge.axis.range[0],r=(t-e)/(d.gauge.axis.range[1]-e)*Math.PI-E;return r<-E?-E:r>E?E:r}function I(t){return r.svg.arc().innerRadius((y+g)/2-t/2*(g-y)).outerRadius((y+g)/2+t/2*(g-y)).startAngle(-E)}function L(t){t.attr("d",(function(t){return I(t.thickness).startAngle(C(t.range[0])).endAngle(C(t.range[1]))()}))}b.enter().append("g").classed("angular",!0),b.attr("transform",s(_[0],_[1])),w.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),w.selectAll("g.xangularaxistick,path,text").remove(),(o=k(t,d.gauge.axis)).type="linear",o.range=d.gauge.axis.range,o._id="xangularaxis",o.ticklabeloverflow="allow",o.setScale();var P=function(t){return(o.range[0]-t.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},z={},D=f.makeLabelFns(o,0).labelStandoff;z.xFn=function(t){var e=P(t);return Math.cos(e)*D},z.yFn=function(t){var e=P(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(D+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*c)},z.anchorFn=function(t){var e=P(t),r=Math.cos(e);return Math.abs(r)<.1?"middle":r>0?"start":"end"},z.heightFn=function(t,e,r){var n=P(t);return-.5*(1+Math.sin(n))*r};var O=function(t){return s(_[0]+g*Math.cos(t),_[1]-g*Math.sin(t))};h=function(t){return O(P(t))};if(u=f.calcTicks(o),p=f.getTickSigns(o)[2],o.visible){p="inside"===o.ticks?-1:1;var R=(o.linewidth||1)/2;f.drawTicks(t,o,{vals:u,layer:w,path:"M"+p*R+",0h"+p*o.ticklen,transFn:function(t){var e=P(t);return O(e)+"rotate("+-l(e)+")"}}),f.drawLabels(t,o,{vals:u,layer:w,transFn:h,labelFns:z})}var F=[v].concat(d.gauge.steps),B=b.selectAll("g.bg-arc").data(F);B.enter().append("g").classed("bg-arc",!0).append("path"),B.select("path").call(L).call(A),B.exit().remove();var j=I(d.gauge.bar.thickness),N=b.selectAll("g.value-arc").data([d.gauge.bar]);N.enter().append("g").classed("value-arc",!0).append("path");var U=N.select("path");T(M)?(U.transition().duration(M.duration).ease(M.easing).each("end",(function(){S&&S()})).each("interrupt",(function(){S&&S()})).attrTween("d",function(t,e,r){return function(){var i=n(e,r);return function(e){return t.endAngle(i(e))()}}}(j,C(i[0].lastY),C(i[0].y))),d._lastValue=i[0].y):U.attr("d","number"==typeof i[0].y?j.endAngle(C(i[0].y)):"M0,0Z"),U.call(A),N.exit().remove(),F=[];var V=d.gauge.threshold.value;(V||0===V)&&F.push({range:[V,V],color:d.gauge.threshold.color,line:{color:d.gauge.threshold.line.color,width:d.gauge.threshold.line.width},thickness:d.gauge.threshold.thickness});var q=b.selectAll("g.threshold-arc").data(F);q.enter().append("g").classed("threshold-arc",!0).append("path"),q.select("path").call(L).call(A),q.exit().remove();var H=b.selectAll("g.gauge-outline").data([x]);H.enter().append("g").classed("gauge-outline",!0).append("path"),H.select("path").call(L).call(A),H.exit().remove()}(t,0,e,{radius:U,innerRadius:V,gauge:W,layer:Z,size:B,gaugeBg:I,gaugeOutline:L,transitionOpts:d,onComplete:g});var Y=z.selectAll("g.bullet").data(R?e:[]);Y.exit().remove();var X=z.selectAll("g.bulletaxis").data(R?e:[]);X.exit().remove(),R&&function(t,e,r,n){var i,a,o,l,c,u=r[0].trace,p=n.gauge,d=n.layer,m=n.gaugeBg,g=n.gaugeOutline,y=n.size,x=u.domain,_=n.transitionOpts,b=n.onComplete;p.enter().append("g").classed("bullet",!0),p.attr("transform",s(y.l,y.t)),d.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),d.selectAll("g.xbulletaxistick,path,text").remove();var w=y.h,M=u.gauge.bar.thickness*w,S=x.x[0],E=x.x[0]+(x.x[1]-x.x[0])*(u._hasNumber||u._hasDelta?1-h.bulletNumberDomainSize:1);function C(t){t.attr("width",(function(t){return Math.max(0,i.c2p(t.range[1])-i.c2p(t.range[0]))})).attr("x",(function(t){return i.c2p(t.range[0])})).attr("y",(function(t){return.5*(1-t.thickness)*w})).attr("height",(function(t){return t.thickness*w}))}(i=k(t,u.gauge.axis))._id="xbulletaxis",i.domain=[S,E],i.setScale(),a=f.calcTicks(i),o=f.makeTransTickFn(i),l=f.getTickSigns(i)[2],c=y.t+y.h,i.visible&&(f.drawTicks(t,i,{vals:"inside"===i.ticks?f.clipEnds(i,a):a,layer:d,path:f.makeTickPath(i,c,l),transFn:o}),f.drawLabels(t,i,{vals:a,layer:d,transFn:o,labelFns:f.makeLabelFns(i,c)}));var I=[m].concat(u.gauge.steps),L=p.selectAll("g.bg-bullet").data(I);L.enter().append("g").classed("bg-bullet",!0).append("rect"),L.select("rect").call(C).call(A),L.exit().remove();var P=p.selectAll("g.value-bullet").data([u.gauge.bar]);P.enter().append("g").classed("value-bullet",!0).append("rect"),P.select("rect").attr("height",M).attr("y",(w-M)/2).call(A),T(_)?P.select("rect").transition().duration(_.duration).ease(_.easing).each("end",(function(){b&&b()})).each("interrupt",(function(){b&&b()})).attr("width",Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],r[0].y)))):P.select("rect").attr("width","number"==typeof r[0].y?Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],r[0].y))):0),P.exit().remove();var z=r.filter((function(){return u.gauge.threshold.value||0===u.gauge.threshold.value})),D=p.selectAll("g.threshold-bullet").data(z);D.enter().append("g").classed("threshold-bullet",!0).append("line"),D.select("line").attr("x1",i.c2p(u.gauge.threshold.value)).attr("x2",i.c2p(u.gauge.threshold.value)).attr("y1",(1-u.gauge.threshold.thickness)/2*w).attr("y2",(1-(1-u.gauge.threshold.thickness)/2)*w).call(v.stroke,u.gauge.threshold.line.color).style("stroke-width",u.gauge.threshold.line.width),D.exit().remove();var O=p.selectAll("g.gauge-outline").data([g]);O.enter().append("g").classed("gauge-outline",!0).append("rect"),O.select("rect").call(C).call(A),O.exit().remove()}(t,0,e,{gauge:Y,layer:X,size:B,gaugeBg:I,gaugeOutline:L,transitionOpts:d,onComplete:g});var $=z.selectAll("text.title").data(e);$.exit().remove(),$.enter().append("text").classed("title",!0),$.attr("text-anchor",(function(){return R?_.right:_[P.title.align]})).text(P.title.text).call(u.font,P.title.font).call(p.convertToTspans,t),$.attr("transform",(function(){var t,e=B.l+B.w*b[P.title.align],r=h.titlePadding,n=u.bBox($.node());return D?(O&&(t=P.gauge.axis.visible?u.bBox(Z.node()).top-r-n.bottom:B.t+B.h/2-U/2-n.bottom-r),R&&(t=x-(n.top+n.bottom)/2,e=B.l-h.bulletPadding*B.w)):t=P._numbersTop-r-n.bottom,s(e,t)}))}))}}}),Kb=f({"src/traces/indicator/index.js"(t,e){e.exports={moduleType:"trace",name:"indicator",basePlotModule:Gb(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Wb(),supplyDefaults:Yb().supplyDefaults,calc:Xb().calc,plot:$b(),meta:{}}}}),Jb=f({"lib/indicator.js"(t,e){e.exports=Kb()}}),Qb=f({"src/traces/table/attributes.js"(t,e){var r=_n(),n=R().extendFlat,i=Pt().overrideAll,a=F(),o=Aa().attributes,s=Ce().descriptionOnlyNumbers;e.exports=i({domain:o({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:s("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:n({},r.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:n({},a({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:s("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:n({},r.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:n({},a({arrayOk:!0}))}},"calc","from-root")}}),tw=f({"src/traces/table/defaults.js"(t,e){var r=le(),n=Qb(),i=Aa().defaults;e.exports=function(t,e,a,o){function s(i,a){return r.coerce(t,e,n,i,a)}i(e,o,s),s("columnwidth"),s("header.values"),s("header.format"),s("header.align"),s("header.prefix"),s("header.suffix"),s("header.height"),s("header.line.width"),s("header.line.color"),s("header.fill.color"),r.coerceFont(s,"header.font",o.font),function(t,e){for(var r=t.columnorder||[],n=t.header.values.length,i=r.slice(0,n),a=i.slice().sort((function(t,e){return t-e})),o=i.map((function(t){return a.indexOf(t)})),s=o.length;s",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}}}),nw=f({"src/traces/table/data_preparation_helper.js"(t,e){var r=rw(),n=R().extendFlat,i=A(),a=E().isTypedArray,o=E().isArrayOrTypedArray;function s(t){if(o(t)){for(var e=0,r=0;r=e||c===t.length-1)&&(n[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=c+1,a=0);return n}e.exports=function(t,e){var a=c(e.cells.values),d=function(t){return t.slice(e.header.values.length,t.length)},m=c(e.header.values);m.length&&!m[0].length&&(m[0]=[""],m=c(m));var g=m.concat(d(a).map((function(){return u((m[0]||[""]).length)}))),y=e.domain,v=Math.floor(t._fullLayout._size.w*(y.x[1]-y.x[0])),x=Math.floor(t._fullLayout._size.h*(y.y[1]-y.y[0])),_=e.header.values.length?g[0].map((function(){return e.header.height})):[r.emptyHeaderHeight],b=a.length?a[0].map((function(){return e.cells.height})):[],w=_.reduce(l,0),T=f(b,x-w+r.uplift),A=p(f(_,w),[]),k=p(T,A),M={},S=e._fullInput.columnorder;o(S)&&(S=Array.from(S)),S=S.concat(d(a.map((function(t,e){return e}))));var E=g.map((function(t,r){var n=o(e.columnwidth)?e.columnwidth[Math.min(r,e.columnwidth.length-1)]:e.columnwidth;return i(n)?Number(n):1})),C=E.reduce(l,0);E=E.map((function(t){return t/C*v}));var I=Math.max(s(e.header.line.width),s(e.cells.line.width)),L={key:e.uid+t._context.staticPlot,translateX:y.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-y.y[1]),size:t._fullLayout._size,width:v,maxLineWidth:I,height:x,columnOrder:S,groupHeight:x,rowBlocks:k,headerRowBlocks:A,scrollY:0,cells:n({},e.cells,{values:a}),headerCells:n({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var r=M[t];return M[t]=(r||0)+1,{key:t+"__"+M[t],label:t,specIndex:e,xIndex:S[e],xScale:h,x:void 0,calcdata:void 0,columnWidth:E[e]}}))};return L.columns.forEach((function(t){t.calcdata=L,t.x=h(t)})),L}}}),iw=f({"src/traces/table/data_split_helpers.js"(t){var e=R().extendFlat;t.splitToPanels=function(t){var r=[0,0],n=e({},t,{key:"header",type:"header",page:0,prevPages:r,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:e({},t.calcdata,{cells:t.calcdata.headerCells})});return[e({},t,{key:"cells1",type:"cells",page:0,prevPages:r,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),e({},t,{key:"cells2",type:"cells",page:1,prevPages:r,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n]},t.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],r=e?e.rows[0].rowIndex:0;return[r,e?r+e.rows.length:0]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(r,n){return{keyWithinBlock:n+("string"==typeof r&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:e[0]+n,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:r}}))}}}),aw=f({"src/traces/table/plot.js"(t,e){var r=rw(),n=x(),i=le(),a=i.numberFormat,o=Ix(),s=Qe(),l=Se(),c=le().raiseToTop,u=le().strTranslate,h=le().cancelTransition,p=nw(),f=iw(),d=H();function m(t){return Math.ceil(t.calcdata.maxLineWidth/2)}function g(t,e){return"clip"+t._fullLayout._uid+"_scrollAreaBottomClip_"+e.key}function y(t,e){return"clip"+t._fullLayout._uid+"_columnBoundaryClippath_"+e.calcdata.key+"_"+e.specIndex}function v(t){return[].concat.apply([],t.map((function(t){return t}))).map((function(t){return t.__data__}))}function _(t,e,i){var a=t.selectAll("."+r.cn.scrollbarKit).data(o.repeat,o.keyFun);a.enter().append("g").classed(r.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),a.each((function(t){var e=t.scrollbarState;e.totalHeight=function(t){var e=t.rowBlocks;return R(e,e.length-1)+(e.length?F(e[e.length-1],1/0):1)}(t),e.scrollableAreaHeight=t.groupHeight-E(t),e.currentlyVisibleHeight=Math.min(e.totalHeight,e.scrollableAreaHeight),e.ratio=e.currentlyVisibleHeight/e.totalHeight,e.barLength=Math.max(e.ratio*e.currentlyVisibleHeight,r.goldenRatio*r.scrollbarWidth),e.barWiggleRoom=e.currentlyVisibleHeight-e.barLength,e.wiggleRoom=Math.max(0,e.totalHeight-e.scrollableAreaHeight),e.topY=0===e.barWiggleRoom?0:t.scrollY/e.wiggleRoom*e.barWiggleRoom,e.bottomY=e.topY+e.barLength,e.dragMultiplier=e.wiggleRoom/e.barWiggleRoom})).attr("transform",(function(t){var e=t.width+r.scrollbarWidth/2+r.scrollbarOffset;return u(e,E(t))}));var s=a.selectAll("."+r.cn.scrollbar).data(o.repeat,o.keyFun);s.enter().append("g").classed(r.cn.scrollbar,!0);var l=s.selectAll("."+r.cn.scrollbarSlider).data(o.repeat,o.keyFun);l.enter().append("g").classed(r.cn.scrollbarSlider,!0),l.attr("transform",(function(t){return u(0,t.scrollbarState.topY||0)}));var c=l.selectAll("."+r.cn.scrollbarGlyph).data(o.repeat,o.keyFun);c.enter().append("line").classed(r.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",r.scrollbarWidth).attr("stroke-linecap","round").attr("y1",r.scrollbarWidth/2),c.attr("y2",(function(t){return t.scrollbarState.barLength-r.scrollbarWidth/2})).attr("stroke-opacity",(function(t){return t.columnDragInProgress||!t.scrollbarState.barWiggleRoom||i?0:.4})),c.transition().delay(0).duration(0),c.transition().delay(r.scrollbarHideDelay).duration(r.scrollbarHideDuration).attr("stroke-opacity",0);var h=s.selectAll("."+r.cn.scrollbarCaptureZone).data(o.repeat,o.keyFun);h.enter().append("line").classed(r.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",r.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",(function(r){var i=n.event.y,a=this.getBoundingClientRect(),o=r.scrollbarState,s=i-a.top,l=n.scale.linear().domain([0,o.scrollableAreaHeight]).range([0,o.totalHeight]).clamp(!0);o.topY<=s&&s<=o.bottomY||I(e,t,null,l(s-o.barLength/2))(r)})).call(n.behavior.drag().origin((function(t){return n.event.stopPropagation(),t.scrollbarState.scrollbarScrollInProgress=!0,t})).on("drag",I(e,t)).on("dragend",(function(){}))),h.attr("y2",(function(t){return t.scrollbarState.scrollableAreaHeight})),e._context.staticPlot&&(c.remove(),h.remove())}function b(t,e,i,a){var l=function(t){var e=t.selectAll("."+r.cn.columnCells).data(o.repeat,o.keyFun);return e.enter().append("g").classed(r.cn.columnCells,!0),e.exit().remove(),e}(i),c=function(t){var e=t.selectAll("."+r.cn.columnCell).data(f.splitToCells,(function(t){return t.keyWithinBlock}));return e.enter().append("g").classed(r.cn.columnCell,!0),e.exit().remove(),e}(l);!function(t){t.each((function(t,e){var r=t.calcdata.cells.font,n=t.column.specIndex,i={size:A(r.size,n,e),color:A(r.color,n,e),family:A(r.family,n,e),weight:A(r.weight,n,e),style:A(r.style,n,e),variant:A(r.variant,n,e),textcase:A(r.textcase,n,e),lineposition:A(r.lineposition,n,e),shadow:A(r.shadow,n,e)};t.rowNumber=t.key,t.align=A(t.calcdata.cells.align,n,e),t.cellBorderWidth=A(t.calcdata.cells.line.width,n,e),t.font=i}))}(c);var u=function(t){var e=t.selectAll("."+r.cn.cellRect).data(o.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("rect").classed(r.cn.cellRect,!0),e}(c);!function(t){t.attr("width",(function(t){return t.column.columnWidth})).attr("stroke-width",(function(t){return t.cellBorderWidth})).each((function(t){var e=n.select(this);d.stroke(e,A(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),d.fill(e,A(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))}))}(u);var h=function(t){var e=t.selectAll("."+r.cn.cellTextHolder).data(o.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("g").classed(r.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),e}(c),p=function(t){var e=t.selectAll("."+r.cn.cellText).data(o.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("text").classed(r.cn.cellText,!0).style("cursor",(function(){return"auto"})).on("mousedown",(function(){n.event.stopPropagation()})),e}(h);(function(t){t.each((function(t){s.font(n.select(this),t.font)}))})(p),w(p,e,a,t),O(c)}function w(t,e,i,o){t.text((function(t){var e=t.column.specIndex,n=t.rowNumber,i=t.value,o="string"==typeof i,s=o&&i.match(/
/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c=function(t){return"string"==typeof t&&t.match(r.latexCheck)}(i);t.latex=c;var u,h,p=c?"":A(t.calcdata.cells.prefix,e,n)||"",f=c?"":A(t.calcdata.cells.suffix,e,n)||"",d=c?null:A(t.calcdata.cells.format,e,n)||null,m=p+(d?a(d)(t.value):t.value)+f;if(t.wrappingNeeded=!t.wrapped&&!l&&!c&&(u=T(m)),t.cellHeightMayIncrease=s||c||t.mayHaveMarkup||(void 0===u?T(m):u),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var g=(" "===r.wrapSplitCharacter?m.replace(/i&&n.push(a),i+=l}return n}(i,l,s);1===c.length&&(c[0]===i.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr("transform",(function(t){var e=R(t.rowBlocks,t.page)-t.scrollY;return u(0,e)})),t&&(L(t,r,e,c,n.prevPages,n,0),L(t,r,e,c,n.prevPages,n,1),_(r,t))}}function I(t,e,i,a){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=i||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===a?s.scrollY+c*n.event.dy:a;var h=l.selectAll("."+r.cn.yColumn).selectAll("."+r.cn.columnBlock).filter(M);return C(t,h,l),s.scrollY===u}}function L(t,e,r,n,i,a,o){n[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=r.filter((function(t,e){return e===o&&n[e]!==i[e]}));b(t,e,a,r),i[o]=n[o]})))}function P(t,e,i,a){return function(){var o=n.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll("tspan.line").each((function(t,r){e[r].width=this.getComputedTextLength()}));var n,i,a=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*r.cellPad;for(t.value="";s.length;)c+(i=(n=s.shift()).width+a)>u&&(t.value+=l.join(r.wrapSpacer)+r.lineBreaker,l=[],c=0),l.push(n.text),c+=i;c&&(t.value+=l.join(r.wrapSpacer)),t.wrapped=!0})),o.selectAll("tspan.line").remove(),w(o.select("."+r.cn.cellText),i,t,a),n.select(e.parentNode.parentNode).call(O)}}function z(t,e,i,a,o){return function(){if(!o.settledY){var s=n.select(e.parentNode),l=j(o),c=o.key-l.firstRowIndex,h=l.rows[c].rowHeight,p=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*r.cellPad:h,f=Math.max(p,h);f-l.rows[c].rowHeight&&(l.rows[c].rowHeight=f,t.selectAll("."+r.cn.columnCell).call(O),C(null,t.filter(M),0),_(i,a,!0)),s.attr("transform",(function(){var t=this,e=t.parentNode.getBoundingClientRect(),i=n.select(t.parentNode).select("."+r.cn.cellRect).node().getBoundingClientRect(),a=t.transform.baseVal.consolidate(),s=i.top-e.top+(a?a.matrix.f:r.cellPad);return u(D(o,n.select(t.parentNode).select("."+r.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function D(t,e){switch(t.align){case"left":default:return r.cellPad;case"right":return t.column.columnWidth-(e||0)-r.cellPad;case"center":return(t.column.columnWidth-(e||0))/2}}function O(t){t.attr("transform",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+F(e,1/0)}),0),r=F(j(t),t.key);return u(0,r+e)})).selectAll("."+r.cn.cellRect).attr("height",(function(t){return function(t,e){return t.rows[e-t.firstRowIndex]}(j(t),t.key).rowHeight}))}function R(t,e){for(var r=0,n=e-1;n>=0;n--)r+=B(t[n]);return r}function F(t,e){for(var r=0,n=0;ne.length&&(t=t.slice(0,e.length)):t=[],i=0;i90&&(f-=180,l=-l),{angle:f,flip:l,p:t.c2p(n,e,r),offsetMultplier:c}}}}),vw=f({"src/traces/carpet/plot.js"(t,e){var r=x(),n=Qe(),i=mw(),a=gw(),o=yw(),s=Se(),l=le(),c=l.strRotate,u=l.strTranslate,h=Me();function p(t,e,o,s,l,c,u){var h="const-"+l+"-lines",p=o.selectAll("."+h).data(c);p.enter().append("path").classed(h,!0).style("vector-effect",u?"none":"non-scaling-stroke"),p.each((function(o){var s=o,l=s.x,c=s.y,u=i([],l,t.c2p),h=i([],c,e.c2p),p="M"+a(u,h,s.smoothing);r.select(this).attr("d",p).style("stroke-width",s.width).style("stroke",s.color).style("stroke-dasharray",n.dashStyle(s.dash,s.width)).style("fill","none")})),p.exit().remove()}function f(t,e,i,a,l,h,p,f){var d=h.selectAll("text."+f).data(p);d.enter().append("text").classed(f,!0);var m=0,g={};return d.each((function(l,h){var p;if("auto"===l.axis.tickangle)p=o(a,e,i,l.xy,l.dxy);else{var f=(l.axis.tickangle+180)*Math.PI/180;p=o(a,e,i,l.xy,[Math.cos(f),Math.sin(f)])}h||(g={angle:p.angle,flip:p.flip});var d=(l.endAnchor?-1:1)*p.flip,y=r.select(this).attr({"text-anchor":d>0?"start":"end","data-notex":1}).call(n.font,l.font).text(l.text).call(s.convertToTspans,t),v=n.bBox(this);y.attr("transform",u(p.p[0],p.p[1])+c(p.angle)+u(l.axis.labelpadding*d,.3*v.height)),m=Math.max(m,v.width+l.axis.labelpadding)})),d.exit().remove(),g.maxExtent=m,g}e.exports=function(t,e,n,s){var c=t._context.staticPlot,u=e.xaxis,h=e.yaxis,d=t._fullLayout._clips;l.makeTraceGroups(s,n,"trace").each((function(e){var n=r.select(this),s=e[0],m=s.trace,y=m.aaxis,v=m.baxis,x=l.ensureSingle(n,"g","minorlayer"),_=l.ensureSingle(n,"g","majorlayer"),b=l.ensureSingle(n,"g","boundarylayer"),w=l.ensureSingle(n,"g","labellayer");n.style("opacity",m.opacity),p(u,h,_,0,"a",y._gridlines,!0),p(u,h,_,0,"b",v._gridlines,!0),p(u,h,x,0,"a",y._minorgridlines,!0),p(u,h,x,0,"b",v._minorgridlines,!0),p(u,h,b,0,"a-boundary",y._boundarylines,c),p(u,h,b,0,"b-boundary",v._boundarylines,c);var T=f(t,u,h,m,0,w,y._labels,"a-label"),A=f(t,u,h,m,0,w,v._labels,"b-label");(function(t,e,r,n,i,a,s,c){var u,h,p,f,d=l.aggNums(Math.min,null,r.a),m=l.aggNums(Math.max,null,r.a),y=l.aggNums(Math.min,null,r.b),v=l.aggNums(Math.max,null,r.b);u=.5*(d+m),h=y,p=r.ab2xy(u,h,!0),f=r.dxyda_rough(u,h),void 0===s.angle&&l.extendFlat(s,o(r,i,a,p,r.dxydb_rough(u,h))),g(t,e,r,0,p,f,r.aaxis,i,a,s,"a-title"),u=d,h=.5*(y+v),p=r.ab2xy(u,h,!0),f=r.dxydb_rough(u,h),void 0===c.angle&&l.extendFlat(c,o(r,i,a,p,r.dxyda_rough(u,h))),g(t,e,r,0,p,f,r.baxis,i,a,c,"b-title")})(t,w,m,0,u,h,T,A),function(t,e,r,n,o){var s,c,u,h,p=r.select("#"+t._clipPathId);p.size()||(p=r.append("clipPath").classed("carpetclip",!0));var f=l.ensureSingle(p,"path","carpetboundary"),d=e.clipsegments,m=[];for(h=0;h90&&v<270,_=r.select(this);_.text(p.title.text).call(s.convertToTspans,t),x&&(b=(-s.lineCount(_)+m)*d*a-b),_.attr("transform",u(e.p[0],e.p[1])+c(e.angle)+u(0,b)).attr("text-anchor","middle").call(n.font,p.title.font)})),_.exit().remove()}}}),xw=f({"src/traces/carpet/cheater_basis.js"(t,e){var r=le().isArrayOrTypedArray;e.exports=function(t,e,n){var i,a,o,s,l,c=[],u=r(t)?t.length:t,h=r(e)?e.length:e,p=r(t)?t:null,f=r(e)?e:null;p&&(o=(p.length-1)/(p[p.length-1]-p[0])/(u-1)),f&&(s=(f.length-1)/(f[f.length-1]-f[0])/(h-1));var d,m=1/0,g=-1/0;for(a=0;a=10)return null;for(var i=1/0,a=-1/0,o=t.length,s=0;s0&&(f=t.dxydi([],n-1,o,0,s),y.push(l[0]+f[0]/3),v.push(l[1]+f[1]/3),d=t.dxydi([],n-1,o,1,s),y.push(h[0]-d[0]/3),v.push(h[1]-d[1]/3)),y.push(h[0]),v.push(h[1]),l=h;else for(n=t.a2i(r),c=Math.floor(Math.max(0,Math.min(I-2,n))),u=n-c,x.length=I,x.crossLength=L,x.xy=function(e){return t.evalxy([],n,e)},x.dxy=function(e,r){return t.dxydj([],c,e,u,r)},a=0;a0&&(m=t.dxydj([],c,a-1,u,0),y.push(l[0]+m[0]/3),v.push(l[1]+m[1]/3),g=t.dxydj([],c,a-1,u,1),y.push(h[0]-g[0]/3),v.push(h[1]-g[1]/3)),y.push(h[0]),v.push(h[1]),l=h;return x.axisLetter=e,x.axis=_,x.crossAxis=k,x.value=r,x.constvar=i,x.index=p,x.x=y,x.y=v,x.smoothing=k.smoothing,x}function D(r){var n,a,o,s,l,c=[],u=[],h={};if(h.length=x.length,h.crossLength=A.length,"b"===e)for(o=Math.max(0,Math.min(L-2,r)),l=Math.min(1,Math.max(0,r-o)),h.xy=function(e){return t.evalxy([],e,r)},h.dxy=function(e,r){return t.dxydi([],e,o,r,l)},n=0;nx.length-1)&&b.push(n(D(o),{color:_.gridcolor,width:_.gridwidth,dash:_.griddash}));for(p=u;px.length-1||m<0||m>x.length-1))for(g=x[s],y=x[m],a=0;a<_.minorgridcount;a++)!((v=m-s)<=0)&&!((d=g+(y-g)*(a+1)/(_.minorgridcount+1)*(_.arraydtick/v))x[x.length-1])&&w.push(n(z(d),{color:_.minorgridcolor,width:_.minorgridwidth,dash:_.minorgriddash}));_.startline&&T.push(n(D(0),{color:_.startlinecolor,width:_.startlinewidth})),_.endline&&T.push(n(D(x.length-1),{color:_.endlinecolor,width:_.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((x[x.length-1]-_.tick0)/_.dtick*(1+l)),Math.ceil((x[0]-_.tick0)/_.dtick/(1+l))].sort((function(t,e){return t-e})))[0],h=c[1],p=u;p<=h;p++)f=_.tick0+_.dtick*p,b.push(n(z(f),{color:_.gridcolor,width:_.gridwidth,dash:_.griddash}));for(p=u-1;px[x.length-1])&&w.push(n(z(d),{color:_.minorgridcolor,width:_.minorgridwidth,dash:_.minorgriddash}));_.startline&&T.push(n(z(x[0]),{color:_.startlinecolor,width:_.startlinewidth})),_.endline&&T.push(n(z(x[x.length-1]),{color:_.endlinecolor,width:_.endlinewidth}))}}}}),ww=f({"src/traces/carpet/calc_labels.js"(t,e){var r=ir(),n=R().extendFlat;e.exports=function(t,e){var i,a,o,s=e._labels=[],l=e._gridlines;for(i=0;i=0;i--)a[u-i]=t[h][i],o[u-i]=e[h][i];for(s.push({x:a,y:o,bicubic:l}),i=h,a=[],o=[];i>=0;i--)a[h-i]=t[i][0],o[h-i]=e[i][0];return s.push({x:a,y:o,bicubic:c}),s}}}),Aw=f({"src/traces/carpet/smooth_fill_2d_array.js"(t,e){var r=le();e.exports=function(t,e,n){var i,a,o,s,l,c,u,h,p=[],f=[],d=t[0].length,m=t.length,g=0;for(i=0;i0&&void 0!==(c=t[l][s-1])&&(h++,u+=c),s0&&void 0!==(c=t[l-1][s])&&(h++,u+=c),l0&&a0&&i1e-5);return r.log("Smoother converged to",E,"after",C,"iterations"),t}}}),kw=f({"src/traces/carpet/constants.js"(t,e){e.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),Mw=f({"src/traces/carpet/catmull_rom.js"(t,e){e.exports=function(t,e,r,n){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(i*i+a*a,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*i-l*l*o)*n,h=(c*c*a-l*l*s)*n,p=c*(l+c)*3,f=l*(l+c)*3;return[[e[0]+(p&&u/p),e[1]+(p&&h/p)],[e[0]-(f&&u/f),e[1]-(f&&h/f)]]}}}),Sw=f({"src/traces/carpet/compute_control_points.js"(t,e){var r=Mw(),n=le().ensureArray;function i(t,e,r){var n=-.5*r[0]+1.5*e[0],i=-.5*r[1]+1.5*e[1];return[(2*n+t[0])/3,(2*i+t[1])/3]}e.exports=function(t,e,a,o,s,l){var c,u,h,p,f,d,m,g,y,v,x=a[0].length,_=a.length,b=s?3*x-2:x,w=l?3*_-2:_;for(t=n(t,w),e=n(e,w),h=0;hf&&tm&&ed||eg},t.setScale=function(){var e=t._x,r=t._y,n=i(t._xctrl,t._yctrl,e,r,h.smoothing,p.smoothing);t._xctrl=n[0],t._yctrl=n[1],t.evalxy=a([t._xctrl,t._yctrl],c,u,h.smoothing,p.smoothing),t.dxydi=o([t._xctrl,t._yctrl],h.smoothing,p.smoothing),t.dxydj=s([t._xctrl,t._yctrl],h.smoothing,p.smoothing)},t.i2a=function(t){var r=Math.max(0,Math.floor(t[0]),c-2),n=t[0]-r;return(1-n)*e[r]+n*e[r+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),r=t[1]-e;return(1-r)*l[e]+r*l[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var r=Math.max(0,Math.min(n(t,e),c-2)),i=e[r],a=e[r+1];return Math.max(0,Math.min(c-1,r+(t-i)/(a-i)))},t.b2j=function(t){var e=Math.max(0,Math.min(n(t,l),u-2)),r=l[e],i=l[e+1];return Math.max(0,Math.min(u-1,e+(t-r)/(i-r)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,r){return t.evalxy([],e,r)},t.ab2xy=function(r,n,i){if(!i&&(re[c-1]|nl[u-1]))return[!1,!1];var a=t.a2i(r),o=t.b2j(n),s=t.evalxy([],a,o);if(i){var h,p,f,d,m=0,g=0,y=[];re[c-1]?(h=c-2,p=1,m=(r-e[c-1])/(e[c-1]-e[c-2])):p=a-(h=Math.max(0,Math.min(c-2,Math.floor(a)))),nl[u-1]?(f=u-2,d=1,g=(n-l[u-1])/(l[u-1]-l[u-2])):d=o-(f=Math.max(0,Math.min(u-2,Math.floor(o)))),m&&(t.dxydi(y,h,f,p,d),s[0]+=y[0]*m,s[1]+=y[1]*m),g&&(t.dxydj(y,h,f,p,d),s[0]+=y[0]*g,s[1]+=y[1]*g)}return s},t.c2p=function(t,e,r){return[e.c2p(t[0]),r.c2p(t[1])]},t.p2x=function(t,e,r){return[e.p2c(t[0]),r.p2c(t[1])]},t.dadi=function(t){var r=Math.max(0,Math.min(e.length-2,t));return e[r+1]-e[r]},t.dbdj=function(t){var e=Math.max(0,Math.min(l.length-2,t));return l[e+1]-l[e]},t.dxyda=function(e,r,n,i){var a=t.dxydi(null,e,r,n,i),o=t.dadi(e,n);return[a[0]/o,a[1]/o]},t.dxydb=function(e,r,n,i){var a=t.dxydj(null,e,r,n,i),o=t.dbdj(r,i);return[a[0]/o,a[1]/o]},t.dxyda_rough=function(e,r,n){var i=y*(n||.1),a=t.ab2xy(e+i,r,!0),o=t.ab2xy(e-i,r,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dxydb_rough=function(e,r,n){var i=v*(n||.1),a=t.ab2xy(e,r+i,!0),o=t.ab2xy(e,r-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}}}),Pw=f({"src/traces/carpet/calc.js"(t,e){var r=ir(),n=le().isArray1D,i=xw(),a=_w(),o=bw(),s=ww(),l=Tw(),c=zo(),u=Aw(),h=Po(),p=Lw();e.exports=function(t,e){var f=r.getFromId(t,e.xaxis),d=r.getFromId(t,e.yaxis),m=e.aaxis,g=e.baxis,y=e.x,v=e.y,x=[];y&&n(y)&&x.push("x"),v&&n(v)&&x.push("y"),x.length&&h(e,m,g,"a","b",x);var _=e._a=e._a||e.a,b=e._b=e._b||e.b;y=e._x||e.x,v=e._y||e.y;var w={};if(e._cheater){var T="index"===m.cheatertype?_.length:_,A="index"===g.cheatertype?b.length:b;y=i(T,A,e.cheaterslope)}e._x=y=c(y),e._y=v=c(v),u(y,_,b),u(v,_,b),p(e),e.setScale();var k=a(y),M=a(v),S=.5*(k[1]-k[0]),E=.5*(k[1]+k[0]),C=.5*(M[1]-M[0]),I=.5*(M[1]+M[0]),L=1.3;return k=[E-S*L,E+S*L],M=[I-C*L,I+C*L],e._extremes[f._id]=r.findExtremes(f,k,{padded:!0}),e._extremes[d._id]=r.findExtremes(d,M,{padded:!0}),o(e,"a","b"),o(e,"b","a"),s(e,m),s(e,g),w.clipsegments=l(e._xctrl,e._yctrl,m,g),w.x=y,w.y=v,w.a=_,w.b=b,[w]}}}),zw=f({"src/traces/carpet/index.js"(t,e){e.exports={attributes:uw(),supplyDefaults:dw(),plot:vw(),calc:Pw(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Si(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),Dw=f({"lib/carpet.js"(t,e){e.exports=zw()}}),Ow=f({"src/traces/scattercarpet/attributes.js"(t,e){var r=wn(),n=Tn(),i=U(),a=Ot().hovertemplateAttrs,o=Ot().texttemplateAttrs,s=Pe(),l=R().extendFlat,c=n.marker,u=n.line,h=c.line;e.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},n.mode,{dflt:"markers"}),text:l({},n.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},n.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,backoff:u.backoff,shape:l({},u.shape,{values:["linear","spline"]}),smoothing:u.smoothing,editType:"calc"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:r(),marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,angle:c.angle,angleref:c.angleref,standoff:c.standoff,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:h.width,editType:"calc"},s("marker.line")),gradient:c.gradient,editType:"calc"},s("marker")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},i.hoverinfo,{flags:["a","b","text","name"]}),hoveron:n.hoveron,hovertemplate:a(),zorder:n.zorder}}}),Rw=f({"src/traces/scattercarpet/defaults.js"(t,e){var r=le(),n=bn(),i=Ye(),a=Zn(),o=Yn(),s=Xn(),l=$n(),c=Kn(),u=Ow();e.exports=function(t,e,h,p){function f(n,i){return r.coerce(t,e,u,n,i)}f("carpet"),e.xaxis="x",e.yaxis="y";var d=f("a"),m=f("b"),g=Math.min(d.length,m.length);if(g){e._length=g,f("text"),f("texttemplate"),f("hovertext"),f("mode",g")}return o}function v(t,e){var r;r=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,""):t._hovertitle,g.push(r+": "+e.toFixed(3)+t.labelsuffix)}}}}),Vw=f({"src/traces/scattercarpet/event_data.js"(t,e){e.exports=function(t,e,r,n,i){var a=n[i];return t.a=a.a,t.b=a.b,t.y=a.y,t}}}),qw=f({"src/traces/scattercarpet/index.js"(t,e){e.exports={attributes:Ow(),supplyDefaults:Rw(),colorbar:fi(),formatLabels:Fw(),calc:jw(),plot:Nw(),style:mi().style,styleOnSelect:mi().styleOnSelect,hoverPoints:Uw(),selectPoints:vi(),eventData:Vw(),moduleType:"trace",name:"scattercarpet",basePlotModule:Si(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),Hw=f({"lib/scattercarpet.js"(t,e){e.exports=qw()}}),Gw=f({"src/traces/contourcarpet/attributes.js"(t,e){var r=bo(),n=ls(),i=Pe(),a=R().extendFlat,o=n.contours;e.exports=a({carpet:{valType:"string",editType:"calc"},z:r.z,a:r.x,a0:r.x0,da:r.dx,b:r.y,b0:r.y0,db:r.dy,text:r.text,hovertext:r.hovertext,transpose:r.transpose,atype:r.xtype,btype:r.ytype,fillcolor:n.fillcolor,autocontour:n.autocontour,ncontours:n.ncontours,contours:{type:o.type,start:o.start,end:o.end,size:o.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:o.showlines,showlabels:o.showlabels,labelfont:o.labelfont,labelformat:o.labelformat,operation:o.operation,value:o.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:n.line.color,width:n.line.width,dash:n.line.dash,smoothing:n.line.smoothing,editType:"plot"},zorder:n.zorder},i("",{cLetter:"z",autoColorDflt:!1}))}}),Ww=f({"src/traces/contourcarpet/defaults.js"(t,e){var r=le(),n=wo(),i=Gw(),a=Ls(),o=us(),s=ps();e.exports=function(t,e,l,c){function u(n,a){return r.coerce(t,e,i,n,a)}if(u("carpet"),t.a&&t.b){if(!n(t,e,u,c,"a","b"))return void(e.visible=!1);u("text"),"constraint"===u("contours.type")?a(t,e,u,c,l,{hasHover:!1}):(o(t,e,u,(function(n){return r.coerce2(t,e,i,n)})),s(t,e,u,c,{hasHover:!1}))}else e._defaultColor=l,e._length=null;u("zorder")}}}),Zw=f({"src/traces/contourcarpet/calc.js"(t,e){var r=We(),n=le(),i=Po(),a=zo(),o=Do(),s=Oo(),l=Ro(),c=Ww(),u=Bw(),h=ds();e.exports=function(t,e){var p=e._carpetTrace=u(t,e);if(p&&p.visible&&"legendonly"!==p.visible){if(!e.a||!e.b){var f=t.data[p.index],d=t.data[e.index];d.a||(d.a=f.a),d.b||(d.b=f.b),c(d,e,e._defaultColor,t._fullLayout)}var m=function(t,e){var c,u,h,p,f,d,m,g=e._carpetTrace,y=g.aaxis,v=g.baxis;y._minDtick=0,v._minDtick=0,n.isArray1D(e.z)&&i(e,y,v,"a","b",["z"]),c=e._a=e._a||e.a,p=e._b=e._b||e.b,c=c?y.makeCalcdata(e,"_a"):[],p=p?v.makeCalcdata(e,"_b"):[],u=e.a0||0,h=e.da||1,f=e.b0||0,d=e.db||1,m=e._z=a(e._z||e.z,e.transpose),e._emptypoints=s(m),o(m,e._emptypoints);var x=n.maxRowLength(m),_="scaled"===e.xtype?"":c,b=l(e,_,u,h,x,y),w="scaled"===e.ytype?"":p,T={a:b,b:l(e,w,f,d,m.length,v),z:m};return"levels"===e.contours.type&&"none"!==e.contours.coloring&&r(t,e,{vals:m,containerStr:"",cLetter:"z"}),[T]}(t,e);return h(e,e._z),m}}}}),Yw=f({"src/traces/carpet/axis_aligned_line.js"(t,e){var r=le().isArrayOrTypedArray;e.exports=function(t,e,n,i){var a,o,s,l,c,u,h,p,f,d,m,g,y,v=r(n)?"a":"b",x=("a"===v?t.aaxis:t.baxis).smoothing,_="a"===v?t.a2i:t.b2j,b="a"===v?n:i,w="a"===v?i:n,T="a"===v?e.a.length:e.b.length,A="a"===v?e.b.length:e.a.length,k=Math.floor("a"===v?t.b2j(w):t.a2i(w)),M="a"===v?function(e){return t.evalxy([],e,k)}:function(e){return t.evalxy([],k,e)};x&&(s=Math.max(0,Math.min(A-2,k)),l=k-s,o="a"===v?function(e,r){return t.dxydi([],e,s,r,l)}:function(e,r){return t.dxydj([],s,e,l,r)});var S=_(b[0]),E=_(b[1]),C=S0?Math.floor:Math.ceil,P=C>0?Math.ceil:Math.floor,z=C>0?Math.min:Math.max,D=C>0?Math.max:Math.min,O=L(S+I),R=P(E-I),F=[[h=M(S)]];for(a=O;a*C=0;U--)B=M.clipsegments[U],j=n([],B.x,b.c2p),N=n([],B.y,w.c2p),j.reverse(),N.reverse(),V.push(i(j,N,B.bicubic));var q="M"+V.join("L")+"Z";(function(t,e,r,a,s,l){var c,u,h,p,f=o.ensureSingle(t,"g","contourbg").selectAll("path").data("fill"!==l||s?[]:[0]);f.enter().append("path"),f.exit().remove();var d=[];for(p=0;p=0&&(p=C,d=g):Math.abs(h[1]-p[1])=0&&(p=C,d=g):o.log("endpt to newendpt is not vert. or horz.",h,p,C)}if(d>=0)break;v+=S(h,p),h=p}if(d===e.edgepaths.length){o.log("unclosed perimeter path");break}u=d,(_=-1===x.indexOf(u))&&(u=x[0],v+=S(h,p)+"Z",h=null)}for(u=0;um&&(n.max=m),n.len=n.max-n.min}function x(t,e){var r,n=0,o=.1;return(Math.abs(t[0]-l)y):g=k>w,y=k;var M=c(w,T,A,k);M.pos=b,M.yc=(w+k)/2,M.i=_,M.dir=g?"increasing":"decreasing",M.x=M.pos,M.y=[A,T],v&&(M.orig_p=a[_]),d&&(M.tx=e.text[_]),m&&(M.htx=e.hovertext[_]),x.push(M)}else x.push({pos:b,empty:!0})}return e._extremes[l._id]=i.findExtremes(l,r.concat(p,h),{padded:!0}),x.length&&(x[0].t={labels:{open:n(t,"open:")+" ",high:n(t,"high:")+" ",low:n(t,"low:")+" ",close:n(t,"close:")+" "}}),x}e.exports={calc:function(t,e){var n=i.getFromId(t,e.xaxis),o=i.getFromId(t,e.yaxis),c=function(t,e,n){var i=n._minDiff;if(!i){var o,s=t._fullData,l=[];for(i=1/0,o=0;o"+u.labels[x]+r.hoverLabelText(s,_,l.yhoverformat):((v=n.extendFlat({},p)).y0=v.y1=b,v.yLabelVal=_,v.yLabel=u.labels[x]+r.hoverLabelText(s,_,l.yhoverformat),v.name="",h.push(v),g[_]=v)}return h}function h(t,e,n,i){var a=t.cd,s=t.ya,u=a[0].trace,h=a[0].t,p=c(t,e,n,i);if(!p)return[];var f=a[p.index],d=p.index=f.i,m=f.dir;function g(t){return h.labels[t]+r.hoverLabelText(s,u[t][d],u.yhoverformat)}var y=f.hi||u.hoverinfo,v=y.split("+"),x="all"===y,_=x||-1!==v.indexOf("y"),b=x||-1!==v.indexOf("text"),w=_?[g("open"),g("high"),g("low"),g("close")+" "+l[m]]:[];return b&&o(f,u,w),p.extraText=w.join("
"),p.y0=p.y1=s.c2p(f.yc,!0),[p]}e.exports={hoverPoints:function(t,e,r,n){return t.cd[0].trace.hoverlabel.split?u(t,e,r,n):h(t,e,r,n)},hoverSplit:u,hoverOnPoints:h}}}),aT=f({"src/traces/ohlc/select.js"(t,e){e.exports=function(t,e){var r,n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].t.bPos||0;if(!1===e)for(r=0;rn?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(r){var n=t.c2l(r)-e;return(s(n)?n:0)+o},t.g2c=function(r){return t.l2c(r+e-o)},t.g2p=function(t){return t*a},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case"angularaxis":!function(t,e){var n=t.type;if("linear"===n){var o=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return"degrees"===e?i(t):t}(o(t),e)},t.c2d=function(t,e){return s(function(t,e){return"degrees"===e?a(t):t}(t,e))}}t.makeCalcdata=function(e,r){var n,i,a=e[r],o=e._length,s=function(r){return t.d2c(r,e.thetaunit)};if(a)for(n=new Array(o),i=0;i1e-10?t:0}function h(t,e,r){e=e||0,r=r||0;for(var n=t.length,i=new Array(n),a=0;a0?r:1/0})),a=r.mod(n+1,e.length);return[e[n],e[a]]},findIntersectionXY:l,findXYatLength:function(t,e,r,n){var i=-e*r,a=e*e+1,o=2*(e*i-r),s=i*i+r*r-t*t,l=Math.sqrt(o*o-4*a*s),c=(-o+l)/(2*a),u=(-o-l)/(2*a);return[[c,e*c+i+n],[u,e*u+i+n]]},clampTiny:u,pathPolygon:function(t,e,r,n,i,a){return"M"+h(c(t,e,r,n),i,a).join("L")},pathPolygonAnnulus:function(t,e,r,n,i,a,o){var s,l;t0?1:0}function n(t){var e=t[0],r=t[1];if(!isFinite(e)||!isFinite(r))return[1,0];var n=(e+1)*(e+1)+r*r;return[(e*e+r*r-1)/n,2*r/n]}function i(t,e){var r=e[0],n=e[1];return[r*t.radius+t.cx,-n*t.radius+t.cy]}function a(t,e){return e*t.radius}e.exports={smith:n,reactanceArc:function(t,e,r,o){var s=i(t,n([r,e])),l=s[0],c=s[1],u=i(t,n([o,e])),h=u[0],p=u[1];if(0===e)return["M"+l+","+c,"L"+h+","+p].join(" ");var f=a(t,1/Math.abs(e));return["M"+l+","+c,"A"+f+","+f+" 0 0,"+(e<0?1:0)+" "+h+","+p].join(" ")},resistanceArc:function(t,e,o,s){var l=a(t,1/(e+1)),c=i(t,n([e,o])),u=c[0],h=c[1],p=i(t,n([e,s])),f=p[0],d=p[1];if(r(o)!==r(s)){var m=i(t,n([e,0]));return["M"+u+","+h,"A"+l+","+l+" 0 0,"+(0=90||i>90&&a>=450?1:s<=0&&c<=0?0:Math.max(s,c),[i<=180&&a>=180||i>180&&a>=540?-1:o>=0&&l>=0?0:Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?-1:s>=0&&c>=0?0:Math.min(s,c),a>=360?1:o<=0&&l<=0?0:Math.max(o,l),e]}(d),b=_[2]-_[0],w=_[3]-_[1],T=f/p,A=Math.abs(w/b);T>A?(m=p,x=(f-(g=p*A))/i.h/2,y=[u[0],u[1]],v=[h[0]+x,h[1]-x]):(g=f,x=(p-(m=f/A))/i.w/2,y=[u[0]+x,u[1]-x],v=[h[0],h[1]]),r.xLength2=m,r.yLength2=g,r.xDomain2=y,r.yDomain2=v;var k,M=r.xOffset2=i.l+i.w*y[0],S=r.yOffset2=i.t+i.h*(1-v[1]),E=r.radius=m/b,C=r.innerRadius=r.getHole(e)*E,I=r.cx=M-E*_[0],L=r.cy=S+E*_[3],P=r.cxx=I-M,z=r.cyy=L-S,D=a.side;"counterclockwise"===D?(k=D,D="top"):"clockwise"===D&&(k=D,D="bottom"),r.radialAxis=r.mockAxis(t,e,a,{_id:"x",side:D,_trueSide:k,domain:[C/i.w,E/i.w]}),r.angularAxis=r.mockAxis(t,e,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(t,e),r.updateAngularAxis(t,e),r.updateRadialAxis(t,e),r.updateRadialAxisTitle(t,e),r.xaxis=r.mockCartesianAxis(t,e,{_id:"x",domain:y}),r.yaxis=r.mockCartesianAxis(t,e,{_id:"y",domain:v});var O=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",O).attr("transform",s(P,z)),n.frontplot.attr("transform",s(M,S)).call(c.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",O).attr("transform",s(I,L)).call(l.fill,e.bgcolor)},N.mockAxis=function(t,e,r,n){var i=a.extendFlat({},r,n);return f(i,e,t),i},N.mockCartesianAxis=function(t,e,r){var n=this,i=n.isSmith,o=r._id,s=a.extendFlat({type:"linear"},r);p(s,t);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var t=n.sectorBBox,r=l[o],i=n.radialAxis._rl,a=(i[1]-i[0])/(1-n.getHole(e));s.range=[t[r[0]]*a,t[r[1]]*a]},s.isPtWithinRange="x"!==o||i?function(){return!0}:function(t){return n.isPtInside(t)},s.setRange(),s.setScale(),s},N.doAutoRange=function(t,e){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(e);d(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],void 0!==i.minallowed){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(void 0!==i.maxallowed){var l=i.r2l(i.maxallowed);i._rl[0]90&&m<=270&&(g.tickangle=180);var x=v?function(t){var e=z(r,I([t.x,0]));return s(e[0]-p,e[1]-f)}:function(t){return s(g.l2p(t.x)+u,0)},_=v?function(t){return P(r,t.x,-1/0,1/0)}:function(t){return r.pathArc(g.r2p(t.x)+u)},b=U(d);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),y){g.setScale();var w=0,T=v?(g.tickvals||[]).filter((function(t){return t>=0})).map((function(t){return h.tickText(g,t,!0,!1)})):h.calcTicks(g),A=v?T:h.clipEnds(g,T),k=h.getTickSigns(g)[2];v&&(("top"===g.ticks&&"bottom"===g.side||"bottom"===g.ticks&&"top"===g.side)&&(k=-k),"top"===g.ticks&&"top"===g.side&&(w=-g.ticklen),"bottom"===g.ticks&&"bottom"===g.side&&(w=g.ticklen)),h.drawTicks(n,g,{vals:T,layer:i["radial-axis"],path:h.makeTickPath(g,0,k),transFn:x,crisp:!1}),h.drawGrid(n,g,{vals:A,layer:i["radial-grid"],path:_,transFn:a.noop,crisp:!1}),h.drawLabels(n,g,{vals:T,layer:i["radial-axis"],transFn:x,labelFns:h.makeLabelFns(g,w)})}var M=r.radialAxisAngle=r.vangles?B(V(F(d.angle),r.vangles)):d.angle,S=s(p,f),E=S+o(-M);q(i["radial-axis"],y&&(d.showticklabels||d.ticks),{transform:E}),q(i["radial-grid"],y&&d.showgrid,{transform:v?"":S}),q(i["radial-line"].select("line"),y&&d.showline,{x1:v?-c:u,y1:0,x2:c,y2:0,transform:E}).attr("stroke-width",d.linewidth).call(l.stroke,d.linecolor)},N.updateRadialAxisTitle=function(t,e,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(e),u=n.id+"title",h=0;if(l.title){var p=c.bBox(n.layers["radial-axis"].node()).height,f=l.title.font.size,d=l.side;h="top"===d?f:"counterclockwise"===d?-(p+.4*f):p+.8*f}var m=void 0!==r?r:n.radialAxisAngle,g=F(m),y=Math.cos(g),x=Math.sin(g),_=o+a/2*y+h*x,b=s-a/2*x+h*y;n.layers["radial-axis-title"]=v.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:D(i,"Click to enter radial axis title"),attributes:{x:_,y:b,"text-anchor":"middle"},transform:{rotate:-m}})}},N.updateAngularAxis=function(t,e){var r=this,n=r.gd,i=r.layers,c=r.radius,u=r.innerRadius,p=r.cx,f=r.cy,d=r.getAngular(e),m=r.angularAxis,g=r.isSmith;g||(r.fillViewInitialKey("angularaxis.rotation",d.rotation),m.setGeometry(),m.setScale());var y=g?function(t){var e=z(r,I([0,t.x]));return Math.atan2(e[0]-p,e[1]-f)-Math.PI/2}:function(t){return m.t2g(t.x)};"linear"===m.type&&"radians"===m.thetaunit&&(m.tick0=B(m.tick0),m.dtick=B(m.dtick));var v=function(t){return s(p+c*Math.cos(t),f-c*Math.sin(t))},x=g?function(t){var e=z(r,I([0,t.x]));return s(e[0],e[1])}:function(t){return v(y(t))},_=g?function(t){var e=z(r,I([0,t.x])),n=Math.atan2(e[0]-p,e[1]-f)-Math.PI/2;return s(e[0],e[1])+o(-B(n))}:function(t){var e=y(t);return v(e)+o(-B(e))},b=g?function(t){return L(r,t.x,0,1/0)}:function(t){var e=y(t),r=Math.cos(e),n=Math.sin(e);return"M"+[p+u*r,f-u*n]+"L"+[p+c*r,f-c*n]},w=h.makeLabelFns(m,0).labelStandoff,T={xFn:function(t){var e=y(t);return Math.cos(e)*w},yFn:function(t){var e=y(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(w+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*M)},anchorFn:function(t){var e=y(t),r=Math.cos(e);return Math.abs(r)<.1?"middle":r>0?"start":"end"},heightFn:function(t,e,r){var n=y(t);return-.5*(1+Math.sin(n))*r}},A=U(d);r.angularTickLayout!==A&&(i["angular-axis"].selectAll("."+m._id+"tick").remove(),r.angularTickLayout=A);var k,S=g?[1/0].concat(m.tickvals||[]).map((function(t){return h.tickText(m,t,!0,!1)})):h.calcTicks(m);if(g&&(S[0].text="∞",S[0].fontSize*=1.75),"linear"===e.gridshape?(k=S.map(y),a.angleDelta(k[0],k[1])<0&&(k=k.slice().reverse())):k=null,r.vangles=k,"category"===m.type&&(S=S.filter((function(t){return a.isAngleInsideSector(y(t),r.sectorInRad)}))),m.visible){var E="inside"===m.ticks?-1:1,C=(m.linewidth||1)/2;h.drawTicks(n,m,{vals:S,layer:i["angular-axis"],path:"M"+E*C+",0h"+E*m.ticklen,transFn:_,crisp:!1}),h.drawGrid(n,m,{vals:S,layer:i["angular-grid"],path:b,transFn:a.noop,crisp:!1}),h.drawLabels(n,m,{vals:S,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:x,labelFns:T})}q(i["angular-line"].select("path"),d.showline,{d:r.pathSubplot(),transform:s(p,f)}).attr("stroke-width",d.linewidth).call(l.stroke,d.linecolor)},N.updateFx=function(t,e){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1)),this.updateHoverAndMainDrag(t))},N.updateHoverAndMainDrag=function(t){var e,o,l=this,c=l.isSmith,u=l.gd,h=l.layers,p=t._zoomlayer,f=S.MINZOOM,d=S.OFFEDGE,v=l.radius,x=l.innerRadius,T=l.cx,A=l.cy,k=l.cxx,M=l.cyy,C=l.sectorInRad,I=l.vangles,L=l.radialAxis,P=E.clampTiny,z=E.findXYatLength,D=E.findEnclosingVertexAngles,O=S.cornerHalfWidth,R=S.cornerLen/2,F=m.makeDragger(h,"path","maindrag",!1===t.dragmode?"none":"crosshair");r.select(F).attr("d",l.pathSubplot()).attr("transform",s(T,A)),F.onmousemove=function(t){y.hover(u,t,l.id),u._fullLayout._lasthover=F,u._fullLayout._hoversubplot=l.id},F.onmouseout=function(t){u._dragging||g.unhover(u,t)};var B,j,N,U,V,q,H,G,W,Z={element:F,gd:u,subplot:l.id,plotinfo:{id:l.id,xaxis:l.xaxis,yaxis:l.yaxis},xaxes:[l.xaxis],yaxes:[l.yaxis]};function Y(t,e){return Math.sqrt(t*t+e*e)}function X(t,e){return Y(t-k,e-M)}function $(t,e){return Math.atan2(M-e,t-k)}function K(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function J(t,e){if(0===t)return l.pathSector(2*O);var r=R/t,n=e-r,i=e+r,a=Math.max(0,Math.min(t,v)),o=a-O,s=a+O;return"M"+K(o,n)+"A"+[o,o]+" 0,0,0 "+K(o,i)+"L"+K(s,i)+"A"+[s,s]+" 0,0,1 "+K(s,n)+"Z"}function Q(t,e,r){if(0===t)return l.pathSector(2*O);var n,i,a=K(t,e),o=K(t,r),s=P((a[0]+o[0])/2),c=P((a[1]+o[1])/2);if(s&&c){var u=c/s,h=-1/u,p=z(O,u,s,c);n=z(R,h,p[0][0],p[0][1]),i=z(R,h,p[1][0],p[1][1])}else{var f,d;c?(f=R,d=O):(f=O,d=R),n=[[s-f,c-d],[s+f,c-d]],i=[[s-f,c+d],[s+f,c+d]]}return"M"+n.join("L")+"L"+i.reverse().join("L")+"Z"}function tt(t,e){return e=Math.max(Math.min(e,v),x),tf?(t-1&&1===t&&b(e,u,[l.xaxis],[l.yaxis],l.id,Z),r.indexOf("event")>-1&&y.click(u,e,l.id)}Z.prepFn=function(t,r,i){var s=u._fullLayout.dragmode,h=F.getBoundingClientRect();u._fullLayout._calcInverseTransform(u);var f=u._fullLayout._invTransform;e=u._fullLayout._invScaleX,o=u._fullLayout._invScaleY;var d=a.apply3DTransform(f)(r-h.left,i-h.top);if(B=d[0],j=d[1],I){var g=E.findPolygonOffset(v,C[0],C[1],I);B+=k+g[0],j+=M+g[1]}switch(s){case"zoom":Z.clickFn=st,c||(Z.moveFn=I?it:rt,Z.doneFn=at,function(){N=null,U=null,V=l.pathSubplot(),q=!1;var t=u._fullLayout[l.id];H=n(t.bgcolor).getLuminance(),(G=m.makeZoombox(p,H,T,A,V)).attr("fill-rule","evenodd"),W=m.makeCorners(p,T,A),w(u)}());break;case"select":case"lasso":_(t,r,i,Z,s)}},g.init(Z)},N.updateRadialDrag=function(t,e,n){var l=this,c=l.gd,u=l.layers,h=l.radius,p=l.innerRadius,f=l.cx,d=l.cy,y=l.radialAxis,v=S.radialDragBoxSize,x=v/2;if(y.visible){var _,b,T,M=F(l.radialAxisAngle),E=y._rl,C=E[0],I=E[1],L=E[n],P=.75*(E[1]-E[0])/(1-l.getHole(e))/h;n?(_=f+(h+x)*Math.cos(M),b=d-(h+x)*Math.sin(M),T="radialdrag"):(_=f+(p-x)*Math.cos(M),b=d-(p-x)*Math.sin(M),T="radialdrag-inner");var z,D,O,R=m.makeRectDragger(u,T,"crosshair",-x,-x,v,v),j={element:R,gd:c};!1===t.dragmode&&(j.dragmode=!1),q(r.select(R),y.visible&&p0==(n?O>C:O")}}e.exports={hoverPoints:function(t,e,i,a){var o=r(t,e,i,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,n(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:n}}}),ST=f({"src/traces/scatterpolar/index.js"(t,e){e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:_T(),categories:["polar","symbols","showLegend","scatter-like"],attributes:bT(),supplyDefaults:wT().supplyDefaults,colorbar:fi(),formatLabels:TT(),calc:AT(),plot:kT(),style:mi().style,styleOnSelect:mi().styleOnSelect,hoverPoints:MT().hoverPoints,selectPoints:vi(),meta:{}}}}),ET=f({"lib/scatterpolar.js"(t,e){e.exports=ST()}}),CT=f({"src/traces/scatterpolargl/attributes.js"(t,e){var r=bT(),n=Ig(),i=Ot().texttemplateAttrs;e.exports={mode:r.mode,r:r.r,theta:r.theta,r0:r.r0,dr:r.dr,theta0:r.theta0,dtheta:r.dtheta,thetaunit:r.thetaunit,text:r.text,texttemplate:i({editType:"plot"},{keys:["r","theta","text"]}),hovertext:r.hovertext,hovertemplate:r.hovertemplate,line:{color:n.line.color,width:n.line.width,dash:n.line.dash,editType:"calc"},connectgaps:n.connectgaps,marker:n.marker,fill:n.fill,fillcolor:n.fillcolor,textposition:n.textposition,textfont:n.textfont,hoverinfo:r.hoverinfo,selected:r.selected,unselected:r.unselected}}}),IT=f({"src/traces/scatterpolargl/defaults.js"(t,e){var r=le(),n=Ye(),i=wT().handleRThetaDefaults,a=Zn(),o=Yn(),s=$n(),l=Kn(),c=bn().PTS_LINESONLY,u=CT();e.exports=function(t,e,h,p){function f(n,i){return r.coerce(t,e,u,n,i)}var d=i(t,e,p,f);d?(f("thetaunit"),f("mode",d=l&&(v.marker.cluster=d.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=b),v.line&&b.length>1&&s.extendFlat(v.line,o.linePositions(t,f,b)),v.text&&(s.extendFlat(v.text,{positions:b},o.textPosition(t,f,v.text,v.marker)),s.extendFlat(v.textSel,{positions:b},o.textPosition(t,f,v.text,v.markerSel)),s.extendFlat(v.textUnsel,{positions:b},o.textPosition(t,f,v.text,v.markerUnsel))),v.fill&&!p.fill2d&&(p.fill2d=!0),v.marker&&!p.scatter2d&&(p.scatter2d=!0),v.line&&!p.line2d&&(p.line2d=!0),v.text&&!p.glText&&(p.glText=!0),p.lineOptions.push(v.line),p.fillOptions.push(v.fill),p.markerOptions.push(v.marker),p.markerSelectedOptions.push(v.markerSel),p.markerUnselectedOptions.push(v.markerUnsel),p.textOptions.push(v.text),p.textSelectedOptions.push(v.textSel),p.textUnselectedOptions.push(v.textUnsel),p.selectBatch.push([]),p.unselectBatch.push([]),d.x=w,d.y=T,d.rawx=w,d.rawy=T,d.r=g,d.theta=y,d.positions=b,d._scene=p,d.index=p.count,p.count++}})),i(t,e,c)}},e.exports.reglPrecompiled={}}}),RT=f({"src/traces/scatterpolargl/index.js"(t,e){var r=DT();r.plot=OT(),e.exports=r}}),FT=f({"lib/scatterpolargl.js"(t,e){e.exports=RT()}}),BT=f({"src/traces/barpolar/attributes.js"(t,e){var r,n=Ot().hovertemplateAttrs,i=R().extendFlat,a=bT(),o=Ga();e.exports={r:a.r,theta:a.theta,r0:a.r0,dr:a.dr,theta0:a.theta0,dtheta:a.dtheta,thetaunit:a.thetaunit,base:i({},o.base,{}),offset:i({},o.offset,{}),width:i({},o.width,{}),text:i({},o.text,{}),hovertext:i({},o.hovertext,{}),marker:(r=i({},o.marker),delete r.cornerradius,r),hoverinfo:a.hoverinfo,hovertemplate:n(),selected:o.selected,unselected:o.unselected}}}),jT=f({"src/traces/barpolar/layout_attributes.js"(t,e){e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),NT=f({"src/traces/barpolar/defaults.js"(t,e){var r=le(),n=wT().handleRThetaDefaults,i=Za(),a=BT();e.exports=function(t,e,o,s){function l(n,i){return r.coerce(t,e,a,n,i)}n(t,e,s,l)?(l("thetaunit"),l("base"),l("offset"),l("width"),l("text"),l("hovertext"),l("hovertemplate"),i(t,e,l,o,s),r.coerceSelectionMarkerOpacity(e,l)):e.visible=!1}}}),UT=f({"src/traces/barpolar/layout_defaults.js"(t,e){var r=le(),n=jT();e.exports=function(t,e,i){var a,o={};function s(i,o){return r.coerce(t[a]||{},e[a],n,i,o)}for(var l=0;l0?(c=s,u=l):(c=l,u=s);var h=[o.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,o.findEnclosingVertexAngles(u,t.vangles)[1]];return o.pathPolygonAnnulus(n,a,c,u,h,e,r)}:function(t,n,a,o){return i.pathAnnulus(t,n,a,o,e,r)}}(e),d=e.layers.frontplot.select("g.barlayer");i.makeTraceGroups(d,s,"trace bars").each((function(){var o=r.select(this),s=i.ensureSingle(o,"g","points").selectAll("g.point").data(i.identity);s.enter().append("g").style("vector-effect",l?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),s.exit().remove(),s.each((function(t){var e,a=r.select(this),o=t.rp0=h.c2p(t.s0),s=t.rp1=h.c2p(t.s1),l=t.thetag0=p.c2g(t.p0),d=t.thetag1=p.c2g(t.p1);if(n(o)&&n(s)&&n(l)&&n(d)&&o!==s&&l!==d){var m=h.c2g(t.s1),g=(l+d)/2;t.ct=[c.c2p(m*Math.cos(g)),u.c2p(m*Math.sin(g))],e=f(o,s,l,d)}else e="M0,0Z";i.ensureSingle(a,"path").attr("d",e)})),a.setClipUrl(o,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}}}),HT=f({"src/traces/barpolar/hover.js"(t,e){var r=Dr(),n=le(),i=ro().getTraceColor,a=n.fillText,o=MT().makeHoverPointText,s=mT().isPtInsidePolygon;e.exports=function(t,e,l){var c=t.cd,u=c[0].trace,h=t.subplot,p=h.radialAxis,f=h.angularAxis,d=h.vangles,m=d?s:n.isPtInsideSector,g=t.maxHoverDistance,y=f._period||2*Math.PI,v=Math.abs(p.g2p(Math.sqrt(e*e+l*l))),x=Math.atan2(l,e);if(p.range[0]>p.range[1]&&(x+=Math.PI),r.getClosest(c,(function(t){return m(v,x,[t.rp0,t.rp1],[t.thetag0,t.thetag1],d)?g+Math.min(1,Math.abs(t.thetag1-t.thetag0)/y)-1+(t.rp1-v)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var _=c[t.index];t.x0=t.x1=_.ct[0],t.y0=t.y1=_.ct[1];var b=n.extendFlat({},_,{r:_.s,theta:_.p});return a(_,u,t),o(b,u,h,t),t.hovertemplate=u.hovertemplate,t.color=i(u,_),t.xLabelVal=t.yLabelVal=void 0,_.s<0&&(t.idealAlign="left"),[t]}}}}),GT=f({"src/traces/barpolar/index.js"(t,e){e.exports={moduleType:"trace",name:"barpolar",basePlotModule:_T(),categories:["polar","bar","showLegend"],attributes:BT(),layoutAttributes:jT(),supplyDefaults:NT(),supplyLayoutDefaults:UT(),calc:VT().calc,crossTraceCalc:VT().crossTraceCalc,plot:qT(),colorbar:fi(),formatLabels:TT(),style:to().style,styleOnSelect:to().styleOnSelect,hoverPoints:HT(),selectPoints:io(),meta:{}}}}),WT=f({"lib/barpolar.js"(t,e){e.exports=GT()}}),ZT=f({"src/plots/smith/constants.js"(t,e){e.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),YT=f({"src/plots/smith/layout_attributes.js"(t,e){var r=q(),n=Ie(),i=Aa().attributes,a=le().extendFlat,o=Pt().overrideAll,s=o({color:n.color,showline:a({},n.showline,{dflt:!0}),linecolor:n.linecolor,linewidth:n.linewidth,showgrid:a({},n.showgrid,{dflt:!0}),gridcolor:n.gridcolor,gridwidth:n.gridwidth,griddash:n.griddash},"plot","from-root"),l=o({ticklen:n.ticklen,tickwidth:a({},n.tickwidth,{dflt:2}),tickcolor:n.tickcolor,showticklabels:n.showticklabels,labelalias:n.labelalias,showtickprefix:n.showtickprefix,tickprefix:n.tickprefix,showticksuffix:n.showticksuffix,ticksuffix:n.ticksuffix,tickfont:n.tickfont,tickformat:n.tickformat,hoverformat:n.hoverformat,layer:n.layer},"plot","from-root"),c=a({visible:a({},n.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:a({},n.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},s,l),u=a({visible:a({},n.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:n.ticks,editType:"calc"},s,l);e.exports={domain:i({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:r.background},realaxis:c,imaginaryaxis:u,editType:"calc"}}}),XT=f({"src/plots/smith/layout_defaults.js"(t,e){var r,n,i,a=le(),o=H(),s=ye(),l=Hs(),c=we().getSubplotData,u=Ue(),h=Ne(),p=wi(),f=er(),d=YT(),m=ZT(),g=m.axisNames,y=(r=function(t){return a.isTypedArray(t)&&(t=Array.from(t)),t.slice().reverse().map((function(t){return-t})).concat([0]).concat(t)},n=String,i={},function(t){var e=n?n(t):t;if(e in i)return i[e];var a=r(t);return i[e]=a,a});function v(t,e,r,n){var i=r("bgcolor");n.bgColor=o.combine(i,n.paper_bgcolor);var l,v=c(n.fullData,m.name,n.id),x=n.layoutOut;function _(t,e){return r(l+"."+t,e)}for(var b=0;b")}}e.exports={hoverPoints:function(t,e,i,a){var o=r(t,e,i,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,n(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:n}}}),nA=f({"src/traces/scattersmith/index.js"(t,e){e.exports={moduleType:"trace",name:"scattersmith",basePlotModule:$T(),categories:["smith","symbols","showLegend","scatter-like"],attributes:KT(),supplyDefaults:JT(),colorbar:fi(),formatLabels:QT(),calc:tA(),plot:eA(),style:mi().style,styleOnSelect:mi().styleOnSelect,hoverPoints:rA().hoverPoints,selectPoints:vi(),meta:{}}}}),iA=f({"lib/scattersmith.js"(t,e){e.exports=nA()}}),aA=f({"node_modules/world-calendars/dist/main.js"(t,e){var r=oy();function n(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}function i(t,e,r,n){if(this._calendar=t,this._year=e,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(l.local.invalidDate||l.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function a(t,e){return"000000".substring(0,e-(t=""+t).length)+t}function o(){this.shortYearCutoff="+10"}function s(t){this.local=this.regionalOptions[t]||this.regionalOptions[""]}r(n.prototype,{instance:function(t,e){t=(t||"gregorian").toLowerCase(),e=e||"";var r=this._localCals[t+"-"+e];if(!r&&this.calendars[t]&&(r=new this.calendars[t](e),this._localCals[t+"-"+e]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,t);return r},newDate:function(t,e,r,n,i){return(n=(null!=t&&t.year?t.calendar():"string"==typeof n?this.instance(n,i):n)||this.instance()).newDate(t,e,r)},substituteDigits:function(t){return function(e){return(e+"").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(0===a?"":t[a]+e[i])+n,i++,r=Math.floor(r/10)}return 0===n.indexOf(t[1]+e[1])&&(n=n.substr(1)),n||t[0]}}}),r(i.prototype,{newDate:function(t,e,r){return this._calendar.newDate(t??this,e,r)},year:function(t){return 0===arguments.length?this._year:this.set(t,"y")},month:function(t){return 0===arguments.length?this._month:this.set(t,"m")},day:function(t){return 0===arguments.length?this._day:this.set(t,"d")},date:function(t,e,r){if(!this._calendar.isValid(t,e,r))throw(l.local.invalidDate||l.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=t,this._month=e,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(t,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(l.local.differentCalendars||l.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(t){return this._calendar.fromJD(t)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(t){return this._calendar.fromJSDate(t)},toString:function(){return(this.year()<0?"-":"")+a(Math.abs(this.year()),4)+"-"+a(this.month(),2)+"-"+a(this.day(),2)}}),r(o.prototype,{_validateLevel:0,newDate:function(t,e,r){return null==t?this.today():(t.year&&(this._validate(t,e,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),r=t.day(),e=t.month(),t=t.year()),new i(this,t,e,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear);return(e.year()<0?"-":"")+a(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear),12},monthOfYear:function(t,e){var r=this._validate(t,e,this.minDay,l.local.invalidMonth||l.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(t,e){var r=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,r,this.minDay,l.local.invalidMonth||l.regionalOptions[""].invalidMonth),r},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,r){var n=this._validate(t,e,r,l.local.invalidDate||l.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(t,e,r){var n=this._validate(t,e,r,l.local.invalidDate||l.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(t,e,r){return this._validate(t,e,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),{}},add:function(t,e,r){return this._validate(t,this.minMonth,this.minDay,l.local.invalidDate||l.regionalOptions[""].invalidDate),this._correctAdd(t,this._add(t,e,r),e,r)},_add:function(t,e,r){if(this._validateLevel++,"d"===r||"w"===r){var n=t.toJD()+e*("w"===r?this.daysInWeek():1),i=t.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=t.year()+("y"===r?e:0),o=t.monthOfYear()+("m"===r?e:0);i=t.day(),"y"===r?(t.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):"m"===r&&(function(t){for(;oe-1+t.minMonth;)a++,o-=e,e=t.monthsInYear(a)}(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var s=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,s}catch(t){throw this._validateLevel--,t}},_correctAdd:function(t,e,r,n){if(!(this.hasYearZero||"y"!==n&&"m"!==n||0!==e[0]&&t.year()>0==e[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;e=this._add(t,r*i[0]+a*i[1],i[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,r){this._validate(t,this.minMonth,this.minDay,l.local.invalidDate||l.regionalOptions[""].invalidDate);var n="y"===r?e:t.year(),i="m"===r?e:t.month(),a="d"===r?e:t.day();return("y"===r||"m"===r)&&(a=Math.min(a,this.daysInMonth(n,i))),t.date(n,i,a)},isValid:function(t,e,r){this._validateLevel++;var n=this.hasYearZero||0!==t;if(n){var i=this.newDate(t,e,this.minDay);n=e>=this.minMonth&&e-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),c=i-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,r){var n=this._validate(t,e,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var l=e.exports=new n;l.cdate=i,l.baseCalendar=o,l.calendars.gregorian=s}}),oA=f({"node_modules/world-calendars/dist/plus.js"(){var t=oy(),e=aA();t(e.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"}),e.local=e.regionalOptions[""],t(e.cdate.prototype,{formatDate:function(t,e){return"string"!=typeof t&&(e=t,t=""),this._calendar.formatDate(t||"",this,e)}}),t(e.baseCalendar.prototype,{UNIX_EPOCH:e.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:e.instance().jdEpoch,TICKS_PER_DAY:864e9,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(t,r,n){if("string"!=typeof t&&(n=r,r=t,t=""),!r)return"";if(r.calendar()!==this)throw e.local.invalidFormat||e.regionalOptions[""].invalidFormat;t=t||this.local.dateFormat;for(var i=(n=n||{}).dayNamesShort||this.local.dayNamesShort,a=n.dayNames||this.local.dayNames,o=n.monthNumbers||this.local.monthNumbers,s=n.monthNamesShort||this.local.monthNamesShort,l=n.monthNames||this.local.monthNames,c=(n.calculateWeek||this.local.calculateWeek,function(e,r){for(var n=1;v+n1}),u=function(t,e,r,n){var i=""+e;if(c(t,n))for(;i.length1},x=function(t,n){var i=v(t,n),a=[2,3,i?4:2,i?4:2,10,11,20]["oyYJ@!".indexOf(t)+1],o=new RegExp("^-?\\d{1,"+a+"}"),s=r.substring(k).match(o);if(!s)throw(e.local.missingNumberAt||e.regionalOptions[""].missingNumberAt).replace(/\{0\}/,k);return k+=s[0].length,parseInt(s[0],10)},_=this,b=function(){if("function"==typeof l){v("m");var t=l.call(_,r.substring(k));return k+=t.length,t}return x("m")},w=function(t,n,i,a){for(var o=v(t,a)?i:n,s=0;s-1){f=1,d=m;for(var E=this.daysInMonth(p,f);d>E;E=this.daysInMonth(p,f))f++,d-=E}return h>-1?this.fromJD(h):this.newDate(p,f,d)},determineDate:function(t,e,r,n,i){r&&"object"!=typeof r&&(i=n,n=r,r=null),"string"!=typeof n&&(i=n,n="");var a=this;return e=e?e.newDate():null,null==t?e:"string"==typeof t?function(t){try{return a.parseDate(n,t,i)}catch{}for(var e=((t=t.toLowerCase()).match(/^c/)&&r?r.newDate():null)||a.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(t);return e}(t):"number"==typeof t?isNaN(t)||t===1/0||t===-1/0?e:a.today().add(t,"d"):a.newDate(t)}})}}),sA=f({"node_modules/world-calendars/dist/calendars/chinese.js"(){var t=aA(),e=oy(),r=t.instance();function n(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}n.prototype=new t.baseCalendar,e(n.prototype,{name:"Chinese",jdEpoch:1721425.5,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(t,e){if("string"==typeof t){var r=t.match(a);return r?r[0]:""}var n=this._validateYear(t),i=t.month(),o=""+this.toChineseMonth(n,i);return e&&o.length<2&&(o="0"+o),this.isIntercalaryMonth(n,i)&&(o+="i"),o},monthNames:function(t){if("string"==typeof t){var e=t.match(o);return e?e[0]:""}var r=this._validateYear(t),n=t.month(),i=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(i="闰"+i),i},monthNamesShort:function(t){if("string"==typeof t){var e=t.match(s);return e?e[0]:""}var r=this._validateYear(t),n=t.month(),i=["一","二","三","四","五","六","七","八","九","十","十一","十二"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(i="闰"+i),i},parseMonth:function(t,e){t=this._validateYear(t);var r,n=parseInt(e);if(isNaN(n))"闰"===e[0]&&(r=!0,e=e.substring(1)),"月"===e[e.length-1]&&(e=e.substring(0,e.length-1)),n=1+["一","二","三","四","五","六","七","八","九","十","十一","十二"].indexOf(e);else{var i=e[e.length-1];r="i"===i||"I"===i}return this.toMonthIndex(t,n,r)},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(t,e){if(t.year&&(t=t.year()),"number"!=typeof t||t<1888||t>2111)throw e.replace(/\{0\}/,this.local.name);return t},toMonthIndex:function(e,r,n){var i=this.intercalaryMonth(e);if(n&&r!==i||r<1||r>12)throw t.local.invalidMonth.replace(/\{0\}/,this.local.name);return i?!n&&r<=i?r-1:r:r-1},toChineseMonth:function(e,r){e.year&&(r=(e=e.year()).month());var n=this.intercalaryMonth(e);if(r<0||r>(n?12:11))throw t.local.invalidMonth.replace(/\{0\}/,this.local.name);return n?r>13},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);return!!r&&r===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(e,n,i){var a,o=this._validateYear(e,t.local.invalidyear),s=c[o-c[0]],l=s>>9&4095,u=s>>5&15,h=31&s;(a=r.newDate(l,u,h)).add(4-(a.dayOfWeek()||7),"d");var p=this.toJD(e,n,i)-a.toJD();return 1+Math.floor(p/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var n=l[e-l[0]];if(r>(n>>13?12:11))throw t.local.invalidMonth.replace(/\{0\}/,this.local.name);return n&1<<12-r?30:29},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,n,i){var a=this._validate(e,s,i,t.local.invalidDate);e=this._validateYear(a.year()),n=a.month(),i=a.day();var o=this.isIntercalaryMonth(e,n),s=this.toChineseMonth(e,n),u=function(t,e,r,n){var i,a,o;if("object"==typeof t)a=t,i=e||{};else{var s;if(!("number"==typeof t&&t>=1888&&t<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"==typeof e&&e>=1&&e<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"==typeof r&&r>=1&&r<=30))throw new Error("Lunar day outside range 1 - 30");"object"==typeof n?(s=!1,i=n):(s=!!n,i={}),a={year:t,month:e,day:r,isIntercalary:s}}o=a.day-1;var u,h=l[a.year-l[0]],p=h>>13;u=p&&(a.month>p||a.isIntercalary)?a.month:a.month-1;for(var f=0;f>9&4095,(d>>5&15)-1,(31&d)+o);return i.year=m.getFullYear(),i.month=1+m.getMonth(),i.day=m.getDate(),i}(e,s,i,o);return r.toJD(u.year,u.month,u.day)},fromJD:function(t){var e=r.fromJD(t),n=function(t,e,r){var n,i;if("object"==typeof t)n=t,i=e||{};else{if(!("number"==typeof t&&t>=1888&&t<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"==typeof e&&e>=1&&e<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"==typeof r&&r>=1&&r<=31))throw new Error("Solar day outside range 1 - 31");n={year:t,month:e,day:r},i={}}var a=c[n.year-c[0]],o=n.year<<9|n.month<<5|n.day;i.year=o>=a?n.year:n.year-1,a=c[i.year-c[0]];var s,u=new Date(a>>9&4095,(a>>5&15)-1,31&a),h=new Date(n.year,n.month-1,n.day);s=Math.round((h-u)/864e5);var p,f=l[i.year-l[0]];for(p=0;p<13;p++){var d=f&1<<12-p?30:29;if(s>13;return!m||p=2&&n<=6},extraInfo:function(e,r,i){var a=this._validate(e,r,i,t.local.invalidDate);return{century:n[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return e=i.year()+(i.year()<0?1:0),r=i.month(),(n=i.day())+(r>1?16:0)+(r>2?32*(r-2):0)+400*(e-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var r=Math.floor(t/32)+1,n=t-32*(r-1)+1;return this.newDate(e<=0?e-1:e,r,n)}});var n={20:"Fruitbat",21:"Anchovy"};t.calendars.discworld=r}}),uA=f({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Ethiopian",jdEpoch:1724220.5,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return(e=r.year()+(r.year()<0?1:0))%4==3||e%4==-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,t.local.invalidYear||t.regionalOptions[""].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(13===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return(e=i.year())<0&&e++,i.day()+30*(i.month()-1)+365*(e-1)+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,i=e-30*(n-1)+1;return this.newDate(r,n,i)}}),t.calendars.ethiopian=r}}),hA=f({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function n(t,e){return t-e*Math.floor(t/e)}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(t){return n(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,t.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return e=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear).year(),this.toJD(-1===e?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,t.local.invalidMonth),12===r&&this.leapYear(e)||8===r&&5===n(this.daysInYear(e),10)?30:9===r&&3===n(this.daysInYear(e),10)?29:this.daysPerMonth[r-1]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},extraInfo:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);e=i.year(),r=i.month(),n=i.day();var a=e<=0?e+1:e,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+n+1;if(r<7){for(var s=7;s<=this.monthsInYear(e);s++)o+=this.daysInMonth(e,s);for(s=1;s=this.toJD(-1===e?1:e+1,7,1);)e++;for(var r=tthis.toJD(e,r,this.daysInMonth(e,r));)r++;var n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),t.calendars.hebrew=r}}),pA=f({"node_modules/world-calendars/dist/calendars/islamic.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Islamic",jdEpoch:1948439.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-khamīs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){return(11*this._validate(e,this.minMonth,this.minDay,t.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return e=i.year(),r=i.month(),e=e<=0?e+1:e,(n=i.day())+Math.ceil(29.5*(r-1))+354*(e-1)+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var r=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),t.calendars.islamic=r}}),fA=f({"node_modules/world-calendars/dist/calendars/julian.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Julian",jdEpoch:1721423.5,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return(e=r.year()<0?r.year()+1:r.year())%4==0},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return e=i.year(),r=i.month(),n=i.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+n-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,r=Math.floor((e-122.1)/365.25),n=Math.floor(365.25*r),i=Math.floor((e-n)/30.6001),a=i-Math.floor(i<14?1:13),o=r-Math.floor(a>2?4716:4715),s=e-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),t.calendars.julian=r}}),dA=f({"node_modules/world-calendars/dist/calendars/mayan.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function n(t,e){return t-e*Math.floor(t/e)}function i(t,e){return n(t-1,e)+1}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,t.local.invalidYear),!1},formatYear:function(e){e=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear).year();var r=Math.floor(e/400);return e%=400,e+=e<0?400:0,r+"."+Math.floor(e/20)+"."+e%20},forYear:function(t){if((t=t.split(".")).length<3)throw"Invalid Mayan year";for(var e=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";e=20*e+n}return e},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,t.local.invalidYear),18},weekOfYear:function(e,r,n){return this._validate(e,r,n,t.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,t.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,t.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,n){return this._validate(e,r,n,t.local.invalidDate).day()},weekDay:function(e,r,n){return this._validate(e,r,n,t.local.invalidDate),!0},extraInfo:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate).toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(t){var e=n(8+(t-=this.jdEpoch)+340,365);return[Math.floor(e/20)+1,n(e,20)]},_toTzolkin:function(t){return[i(20+(t-=this.jdEpoch),20),i(t+4,13)]},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var r=Math.floor(t/20),n=t%20;return this.newDate(e,r,n)}}),t.calendars.mayan=r}}),mA=f({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar;var n=t.instance("gregorian");e(r.prototype,{name:"Nanakshahi",jdEpoch:2257673.5,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear||t.regionalOptions[""].invalidYear);return n.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,r,i){var a=this._validate(e,r,i,t.local.invalidMonth);(e=a.year())<0&&e++;for(var o=a.day(),s=1;s=this.toJD(e+1,1,1);)e++;for(var r=t-Math.floor(this.toJD(e,1,1)+.5)+1,n=1;r>this.daysInMonth(e,n);)r-=this.daysInMonth(e,n),n++;return this.newDate(e,n,r)}}),t.calendars.nanakshahi=r}}),gA=f({"node_modules/world-calendars/dist/calendars/nepali.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Nepali",jdEpoch:1700709.5,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){if(e=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear).year(),typeof this.NEPALI_CALENDAR_DATA[e]>"u")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,t.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]>"u"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},toJD:function(e,r,n){var i=this._validate(e,r,n,t.local.invalidDate);e=i.year(),r=i.month(),n=i.day();var a=t.instance(),o=0,s=r,l=e;this._createMissingCalendarData(e);var c=e-(s>9||9===s&&n>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==r&&(o=n,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===r?(o+=n-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(c,1,1).add(o,"d").toJD()},fromJD:function(e){var r=t.instance().fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)++o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var c=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var r=t-1;r"u"&&(this.NEPALI_CALENDAR_DATA[r]=e)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),t.calendars.nepali=r}}),yA=f({"node_modules/world-calendars/dist/calendars/persian.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function n(t,e){return t-e*Math.floor(t/e)}r.prototype=new t.baseCalendar,e(r.prototype,{name:"Persian",jdEpoch:1948320.5,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Chæharshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Chæ","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return 682*((r.year()-(r.year()>0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-(n.dayOfWeek()+1)%7,"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(e,r,i){var a=this._validate(e,r,i,t.local.invalidDate);e=a.year(),r=a.month(),i=a.day();var o=e-(e>=0?474:473),s=474+n(o,2820);return i+(r<=7?31*(r-1):30*(r-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(o/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),r=Math.floor(e/1029983),i=n(e,1029983),a=2820;if(1029982!==i){var o=Math.floor(i/366),s=n(i,366);a=Math.floor((2134*o+2816*s+2815)/1028522)+o+1}var l=a+2820*r+474;l=l<=0?l-1:l;var c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),h=t-this.toJD(l,u,1)+1;return this.newDate(l,u,h)}}),t.calendars.persian=r,t.calendars.jalali=r}}),vA=f({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var t=aA(),e=oy(),r=t.instance();function n(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}n.prototype=new t.baseCalendar,e(n.prototype,{name:"Taiwan",jdEpoch:2419402.5,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var n=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return e=this._t2gYear(n.year()),r.leapYear(e)},weekOfYear:function(e,n,i){var a=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return e=this._t2gYear(a.year()),r.weekOfYear(e,a.month(),a.day())},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,n,i){var a=this._validate(e,n,i,t.local.invalidDate);return e=this._t2gYear(a.year()),r.toJD(e,a.month(),a.day())},fromJD:function(t){var e=r.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),t.calendars.taiwan=n}}),xA=f({"node_modules/world-calendars/dist/calendars/thai.js"(){var t=aA(),e=oy(),r=t.instance();function n(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}n.prototype=new t.baseCalendar,e(n.prototype,{name:"Thai",jdEpoch:1523098.5,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var n=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return e=this._t2gYear(n.year()),r.leapYear(e)},weekOfYear:function(e,n,i){var a=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return e=this._t2gYear(a.year()),r.weekOfYear(e,a.month(),a.day())},daysInMonth:function(e,r){var n=this._validate(e,r,this.minDay,t.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(e,n,i){var a=this._validate(e,n,i,t.local.invalidDate);return e=this._t2gYear(a.year()),r.toJD(e,a.month(),a.day())},fromJD:function(t){var e=r.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),t.calendars.thai=n}}),_A=f({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var t=aA(),e=oy();function r(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}r.prototype=new t.baseCalendar,e(r.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thalāthā’","Yawm al-Arba‘ā’","Yawm al-Khamīs","Yawm al-Jum‘a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,t.local.invalidYear);return 355===this.daysInYear(r.year())},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,r=1;r<=12;r++)e+=this.daysInMonth(t,r);return e},daysInMonth:function(e,r){for(var i=this._validate(e,r,this.minDay,t.local.invalidMonth).toJD()-24e5+.5,a=0,o=0;oi)return n[a]-n[a-1];a++}return 30},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(e,r,i){var a=this._validate(e,r,i,t.local.invalidDate),o=12*(a.year()-1)+a.month()-15292;return a.day()+n[o-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,r=0,i=0;ie);i++)r++;var a=r+15292,o=Math.floor((a-1)/12),s=o+1,l=a-12*o,c=e-n[r-1]+1;return this.newDate(s,l,c)},isValid:function(e,r,n){var i=t.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(e=null!=e.year?e.year:e)>=1276&&e<=1500),i},_validate:function(e,r,n,i){var a=t.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}}),t.calendars.ummalqura=r;var n=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]}}),bA=f({"src/components/calendars/calendars.js"(t,e){e.exports=aA(),oA(),sA(),lA(),cA(),uA(),hA(),pA(),fA(),dA(),mA(),gA(),yA(),vA(),xA(),_A()}}),wA=f({"src/components/calendars/index.js"(t,e){var r=bA(),n=le(),i=k(),a=i.EPOCHJD,o=i.ONEDAY,s={valType:"enumerated",values:n.sortObjectKeys(r.calendars),editType:"calc",dflt:"gregorian"},l=function(t,e,r,i){var a={};return a[r]=s,n.coerce(t,e,a,r,i)},c="##",u={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:c,w:c,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}},h={};function p(t){var e=h[t];return e||(h[t]=r.instance(t))}function f(t){return n.extendFlat({},s,{description:t})}function d(t){return"Sets the calendar system to use with `"+t+"` date data."}var m={xcalendar:f(d("x"))},g=n.extendFlat({},m,{ycalendar:f(d("y"))}),y=n.extendFlat({},g,{zcalendar:f(d("z"))}),v=f(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));e.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:g,bar:g,box:g,heatmap:g,contour:g,histogram:g,histogram2d:g,histogram2dcontour:g,scatter3d:y,surface:y,mesh3d:y,scattergl:g,ohlc:m,candlestick:m},layout:{calendar:f(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:v},yaxis:{calendar:v},scene:{xaxis:{calendar:v},yaxis:{calendar:v},zaxis:{calendar:v}},polar:{radialaxis:{calendar:v}}}},layoutAttributes:s,handleDefaults:l,handleTraceDefaults:function(t,e,r,n){for(var i=0;i{n.preventDefault(),n.stopPropagation(),n.clipboardData.setData("text",t),e.removeEventListener("copy",r,!0)};e.addEventListener("copy",r,!0),document.execCommand("copy")},(l=i||(i={})).boxSizing=function(t){let e=window.getComputedStyle(t),r=parseFloat(e.borderTopWidth)||0,n=parseFloat(e.borderLeftWidth)||0,i=parseFloat(e.borderRightWidth)||0,a=parseFloat(e.borderBottomWidth)||0,o=parseFloat(e.paddingTop)||0,s=parseFloat(e.paddingLeft)||0,l=parseFloat(e.paddingRight)||0,c=parseFloat(e.paddingBottom)||0;return{borderTop:r,borderLeft:n,borderRight:i,borderBottom:a,paddingTop:o,paddingLeft:s,paddingRight:l,paddingBottom:c,horizontalSum:n+s+l+i,verticalSum:r+o+c+a}},l.sizeLimits=function(t){let e=window.getComputedStyle(t),r=parseFloat(e.minWidth)||0,n=parseFloat(e.minHeight)||0,i=parseFloat(e.maxWidth)||1/0,a=parseFloat(e.maxHeight)||1/0;return i=Math.max(r,i),a=Math.max(n,a),{minWidth:r,minHeight:n,maxWidth:i,maxHeight:a}},l.hitTest=function(t,e,r){let n=t.getBoundingClientRect();return e>=n.left&&e=n.top&&r=r.bottom)){if(n.topr.bottom&&n.height>=r.height)return void(t.scrollTop-=r.top-n.top);if(n.topr.height)return void(t.scrollTop-=r.bottom-n.bottom);if(n.bottom>r.bottom&&n.height{let t=Element.prototype;return t.matches||t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector||function(t){let e=this,r=e.ownerDocument?e.ownerDocument.querySelectorAll(t):[];return-1!==Array.prototype.indexOf.call(r,e)}})(),t.calculateSingle=function(t){let c=0,u=0,h=0;function p(e){let r=t.match(e);return null!==r&&(t=t.slice(r[0].length),!0)}for(t=(t=t.split(",",1)[0]).replace(l," $1 ");t.length>0;)if(p(e))c++;else if(p(r))u++;else if(p(n))u++;else if(p(a))h++;else if(p(o))u++;else if(p(i))h++;else if(!p(s))return 0;return c=Math.min(c,255),u=Math.min(u,255),h=Math.min(h,255),c<<16|u<<8|h};let e=/^#[^\s\+>~#\.\[:]+/,r=/^\.[^\s\+>~#\.\[:]+/,n=/^\[[^\]]+\]/,i=/^[^\s\+>~#\.\[:]+/,a=/^(::[^\s\+>~#\.\[:]+|:first-line|:first-letter|:before|:after)/,o=/^:[^\s\+>~#\.\[:]+/,s=/^[\s\+>~\*]+/,l=/:not\(([^\)]+)\)/g}(s||(s={}));var T,A=y(v()),k=class{constructor(){this._first=null,this._last=null,this._size=0}get isEmpty(){return 0===this._size}get size(){return this._size}get length(){return this._size}get first(){return this._first?this._first.value:void 0}get last(){return this._last?this._last.value:void 0}get firstNode(){return this._first}get lastNode(){return this._last}*[Symbol.iterator](){let t=this._first;for(;t;)yield t.value,t=t.next}*retro(){let t=this._last;for(;t;)yield t.value,t=t.prev}*nodes(){let t=this._first;for(;t;)yield t,t=t.next}*retroNodes(){let t=this._last;for(;t;)yield t,t=t.prev}assign(t){this.clear();for(let e of t)this.addLast(e)}push(t){this.addLast(t)}pop(){return this.removeLast()}shift(t){this.addFirst(t)}unshift(){return this.removeFirst()}addFirst(t){let e=new T.LinkedListNode(this,t);return this._first?(e.next=this._first,this._first.prev=e,this._first=e):(this._first=e,this._last=e),this._size++,e}addLast(t){let e=new T.LinkedListNode(this,t);return this._last?(e.prev=this._last,this._last.next=e,this._last=e):(this._first=e,this._last=e),this._size++,e}insertBefore(t,e){if(!e||e===this._first)return this.addFirst(t);if(!(e instanceof T.LinkedListNode)||e.list!==this)throw new Error("Reference node is not owned by the list.");let r=new T.LinkedListNode(this,t),n=e,i=n.prev;return r.next=n,r.prev=i,n.prev=r,i.next=r,this._size++,r}insertAfter(t,e){if(!e||e===this._last)return this.addLast(t);if(!(e instanceof T.LinkedListNode)||e.list!==this)throw new Error("Reference node is not owned by the list.");let r=new T.LinkedListNode(this,t),n=e,i=n.next;return r.next=i,r.prev=n,n.next=r,i.prev=r,this._size++,r}removeFirst(){let t=this._first;if(t)return t===this._last?(this._first=null,this._last=null):(this._first=t.next,this._first.prev=null),t.list=null,t.next=null,t.prev=null,this._size--,t.value}removeLast(){let t=this._last;if(t)return t===this._first?(this._first=null,this._last=null):(this._last=t.prev,this._last.next=null),t.list=null,t.next=null,t.prev=null,this._size--,t.value}removeNode(t){if(!(t instanceof T.LinkedListNode)||t.list!==this)throw new Error("Node is not owned by the list.");let e=t;e===this._first&&e===this._last?(this._first=null,this._last=null):e===this._first?(this._first=e.next,this._first.prev=null):e===this._last?(this._last=e.prev,this._last.next=null):(e.next.prev=e.prev,e.prev.next=e.next),e.list=null,e.next=null,e.prev=null,this._size--}clear(){let t=this._first;for(;t;){let e=t.next;t.list=null,t.prev=null,t.next=null,t=e}this._first=null,this._last=null,this._size=0}};!function(t){t.from=function(e){let r=new t;return r.assign(e),r}}(k||(k={})),function(t){t.LinkedListNode=class{constructor(t,e){this.list=null,this.next=null,this.prev=null,this.list=t,this.value=e}}}(T||(T={}));var M,S=class{constructor(t){this.type=t}get isConflatable(){return!1}conflate(t){return!1}},E=class extends S{get isConflatable(){return!0}conflate(t){return!0}};!function(t){let e=null,r=(n=Promise.resolve(),t=>{let e=!1;return n.then((()=>!e&&t())),()=>{e=!0}});var n;function i(t,e){let r=o.get(t);r&&0!==r.length?(0,A.every)((0,A.retro)(r),(r=>!r||function(t,e,r){let n=!0;try{n="function"==typeof t?t(e,r):t.messageHook(e,r)}catch(t){l(t)}return n}(r,t,e)))&&u(t,e):u(t,e)}t.sendMessage=i,t.postMessage=function(t,n){n.isConflatable&&(0,A.some)(a,(e=>!(e.handler!==t||!e.msg||e.msg.type!==n.type||!e.msg.isConflatable)&&e.msg.conflate(n)))||function(t,n){a.addLast({handler:t,msg:n}),null===e&&(e=r(h))}(t,n)},t.installMessageHook=function(t,e){let r=o.get(t);r&&-1!==r.indexOf(e)||(r?r.push(e):o.set(t,[e]))},t.removeMessageHook=function(t,e){let r=o.get(t);if(!r)return;let n=r.indexOf(e);-1!==n&&(r[n]=null,p(r))},t.clearData=function(t){let e=o.get(t);e&&e.length>0&&(A.ArrayExt.fill(e,null),p(e));for(let e of a)e.handler===t&&(e.handler=null,e.msg=null)},t.flush=function(){c||null===e||(e(),e=null,c=!0,h(),c=!1)},t.getExceptionHandler=function(){return l},t.setExceptionHandler=function(t){let e=l;return l=t,e};let a=new k,o=new WeakMap,s=new Set,l=t=>{console.error(t)},c=!1;function u(t,e){try{t.processMessage(e)}catch(t){l(t)}}function h(){if(e=null,a.isEmpty)return;let t={handler:null,msg:null};for(a.addLast(t);;){let e=a.removeFirst();if(e===t)return;e.handler&&e.msg&&i(e.handler,e.msg)}}function p(t){0===s.size&&r(f),s.add(t)}function f(){s.forEach(d),s.clear()}function d(t){A.ArrayExt.removeAllWhere(t,m)}function m(t){return null===t}}(M||(M={}));var C,I=class{constructor(t){this._pid=C.nextPID(),this.name=t.name,this._create=t.create,this._coerce=t.coerce||null,this._compare=t.compare||null,this._changed=t.changed||null}get(t){let e,r=C.ensureMap(t);return e=this._pid in r?r[this._pid]:r[this._pid]=this._createValue(t),e}set(t,e){let r,n=C.ensureMap(t);r=this._pid in n?n[this._pid]:n[this._pid]=this._createValue(t);let i=this._coerceValue(t,e);this._maybeNotify(t,r,n[this._pid]=i)}coerce(t){let e,r=C.ensureMap(t);e=this._pid in r?r[this._pid]:r[this._pid]=this._createValue(t);let n=this._coerceValue(t,e);this._maybeNotify(t,e,r[this._pid]=n)}_createValue(t){return(0,this._create)(t)}_coerceValue(t,e){let r=this._coerce;return r?r(t,e):e}_compareValue(t,e){let r=this._compare;return r?r(t,e):t===e}_maybeNotify(t,e,r){let n=this._changed;n&&!this._compareValue(e,r)&&n(t,e,r)}};!function(t){t.clearData=function(t){C.ownerData.delete(t)}}(I||(I={})),function(t){t.ownerData=new WeakMap,t.nextPID=(()=>{let t=0;return()=>`pid-${`${Math.random()}`.slice(2)}-${t++}`})(),t.ensureMap=function(e){let r=t.ownerData.get(e);return r||(r=Object.create(null),t.ownerData.set(e,r),r)}}(C||(C={}));var L,P=y(v()),z=(y(x()),class{constructor(t){this.sender=t}connect(t,e){return L.connect(this,t,e)}disconnect(t,e){return L.disconnect(this,t,e)}emit(t){L.emit(this,t)}});!function(t){t.disconnectBetween=function(t,e){L.disconnectBetween(t,e)},t.disconnectSender=function(t){L.disconnectSender(t)},t.disconnectReceiver=function(t){L.disconnectReceiver(t)},t.disconnectAll=function(t){L.disconnectAll(t)},t.clearData=function(t){L.disconnectAll(t)},t.getExceptionHandler=function(){return L.exceptionHandler},t.setExceptionHandler=function(t){let e=L.exceptionHandler;return L.exceptionHandler=t,e}}(z||(z={})),function(t){function e(t){let e=n.get(t);if(e&&0!==e.length){for(let t of e){if(!t.signal)continue;let e=t.thisArg||t.slot;t.signal=null,c(i.get(e))}c(e)}}function r(t){let e=i.get(t);if(e&&0!==e.length){for(let t of e){if(!t.signal)continue;let e=t.signal.sender;t.signal=null,c(n.get(e))}c(e)}}t.exceptionHandler=t=>{console.error(t)},t.connect=function(t,e,r){r=r||void 0;let a=n.get(t.sender);if(a||(a=[],n.set(t.sender,a)),s(a,t,e,r))return!1;let o=r||e,l=i.get(o);l||(l=[],i.set(o,l));let c={signal:t,slot:e,thisArg:r};return a.push(c),l.push(c),!0},t.disconnect=function(t,e,r){r=r||void 0;let a=n.get(t.sender);if(!a||0===a.length)return!1;let o=s(a,t,e,r);if(!o)return!1;let l=r||e,u=i.get(l);return o.signal=null,c(a),c(u),!0},t.disconnectBetween=function(t,e){let r=n.get(t);if(!r||0===r.length)return;let a=i.get(e);if(a&&0!==a.length){for(let e of a)e.signal&&e.signal.sender===t&&(e.signal=null);c(r),c(a)}},t.disconnectSender=e,t.disconnectReceiver=r,t.disconnectAll=function(t){e(t),r(t)},t.emit=function(t,e){let r=n.get(t.sender);if(r&&0!==r.length)for(let n=0,i=r.length;nt.signal===e&&t.slot===r&&t.thisArg===n))}function l(e,r){let{signal:n,slot:i,thisArg:a}=e;try{i.call(a,n.sender,r)}catch(e){t.exceptionHandler(e)}}function c(t){0===a.size&&o(u),a.add(t)}function u(){a.forEach(h),a.clear()}function h(t){P.ArrayExt.removeAllWhere(t,p)}function p(t){return null===t.signal}}(L||(L={}));var D=class{constructor(t){this._fn=t}get isDisposed(){return!this._fn}dispose(){if(!this._fn)return;let t=this._fn;this._fn=null,t()}},O=class{constructor(){this._isDisposed=!1,this._items=new Set}get isDisposed(){return this._isDisposed}dispose(){this._isDisposed||(this._isDisposed=!0,this._items.forEach((t=>{t.dispose()})),this._items.clear())}contains(t){return this._items.has(t)}add(t){this._items.add(t)}remove(t){this._items.delete(t)}clear(){this._items.clear()}};!function(t){t.from=function(e){let r=new t;for(let t of e)r.add(t);return r}}(O||(O={}));var R=class extends O{constructor(){super(...arguments),this._disposed=new z(this)}get disposed(){return this._disposed}dispose(){this.isDisposed||(super.dispose(),this._disposed.emit(void 0),z.clearData(this))}};!function(t){t.from=function(e){let r=new t;for(let t of e)r.add(t);return r}}(R||(R={}));var F,B=class t{constructor(t){this._onScrollFrame=()=>{if(!this._scrollTarget)return;let{element:t,edge:e,distance:r}=this._scrollTarget,n=F.SCROLL_EDGE_SIZE-r,i=Math.pow(n/F.SCROLL_EDGE_SIZE,2),a=Math.max(1,Math.round(i*F.SCROLL_EDGE_SIZE));switch(e){case"top":t.scrollTop-=a;break;case"left":t.scrollLeft-=a;break;case"right":t.scrollLeft+=a;break;case"bottom":t.scrollTop+=a}requestAnimationFrame(this._onScrollFrame)},this._disposed=!1,this._dropAction="none",this._override=null,this._currentTarget=null,this._currentElement=null,this._promise=null,this._scrollTarget=null,this._resolve=null,this.document=t.document||document,this.mimeData=t.mimeData,this.dragImage=t.dragImage||null,this.proposedAction=t.proposedAction||"copy",this.supportedActions=t.supportedActions||"all",this.source=t.source||null}dispose(){if(!this._disposed){if(this._disposed=!0,this._currentTarget){let t=new PointerEvent("pointerup",{bubbles:!0,cancelable:!0,clientX:-1,clientY:-1});F.dispatchDragLeave(this,this._currentTarget,null,t)}this._finalize("none")}}get isDisposed(){return this._disposed}start(t,e){if(this._disposed)return Promise.resolve("none");if(this._promise)return this._promise;this._addListeners(),this._attachDragImage(t,e),this._promise=new Promise((t=>{this._resolve=t}));let r=new PointerEvent("pointermove",{bubbles:!0,cancelable:!0,clientX:t,clientY:e});return document.dispatchEvent(r),this._promise}handleEvent(t){switch(t.type){case"pointermove":this._evtPointerMove(t);break;case"pointerup":this._evtPointerUp(t);break;case"keydown":this._evtKeyDown(t);break;default:t.preventDefault(),t.stopPropagation()}}moveDragImage(t,e){this.dragImage&&(this.dragImage.style.transform=`translate(${t}px, ${e}px)`)}_evtPointerMove(t){t.preventDefault(),t.stopPropagation(),this._updateCurrentTarget(t),this._updateDragScroll(t),this.moveDragImage(t.clientX,t.clientY)}_evtPointerUp(t){if(t.preventDefault(),t.stopPropagation(),0!==t.button)return;if(this._updateCurrentTarget(t),!this._currentTarget)return void this._finalize("none");if("none"===this._dropAction)return F.dispatchDragLeave(this,this._currentTarget,null,t),void this._finalize("none");let e=F.dispatchDrop(this,this._currentTarget,t);this._finalize(e)}_evtKeyDown(t){t.preventDefault(),t.stopPropagation(),27===t.keyCode&&this.dispose()}_addListeners(){document.addEventListener("pointerdown",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("pointerup",this,!0),document.addEventListener("pointerenter",this,!0),document.addEventListener("pointerleave",this,!0),document.addEventListener("pointerover",this,!0),document.addEventListener("pointerout",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("keyup",this,!0),document.addEventListener("keypress",this,!0),document.addEventListener("contextmenu",this,!0)}_removeListeners(){document.removeEventListener("pointerdown",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointerenter",this,!0),document.removeEventListener("pointerleave",this,!0),document.removeEventListener("pointerover",this,!0),document.removeEventListener("pointerout",this,!0),document.removeEventListener("keydown",this,!0),document.removeEventListener("keyup",this,!0),document.removeEventListener("keypress",this,!0),document.removeEventListener("contextmenu",this,!0)}_updateDragScroll(t){let e=F.findScrollTarget(t);!this._scrollTarget&&!e||(this._scrollTarget||setTimeout(this._onScrollFrame,500),this._scrollTarget=e)}_updateCurrentTarget(t){let e=this._currentTarget,r=this._currentTarget,n=this._currentElement,i=F.findElementBehindBackdrop(t,this.document);this._currentElement=i,i!==n&&i!==r&&F.dispatchDragExit(this,r,i,t),i!==n&&i!==r&&(r=F.dispatchDragEnter(this,i,r,t)),r!==e&&(this._currentTarget=r,F.dispatchDragLeave(this,e,r,t));let a=F.dispatchDragOver(this,r,t);this._setDropAction(a)}_attachDragImage(t,e){if(!this.dragImage)return;this.dragImage.classList.add("lm-mod-drag-image");let r=this.dragImage.style;r.pointerEvents="none",r.position="fixed",r.transform=`translate(${t}px, ${e}px)`,(this.document instanceof Document?this.document.body:this.document.firstElementChild).appendChild(this.dragImage)}_detachDragImage(){if(!this.dragImage)return;let t=this.dragImage.parentNode;t&&t.removeChild(this.dragImage)}_setDropAction(e){if(e=F.validateAction(e,this.supportedActions),!this._override||this._dropAction!==e)switch(e){case"none":this._dropAction=e,this._override=t.overrideCursor("no-drop",this.document);break;case"copy":this._dropAction=e,this._override=t.overrideCursor("copy",this.document);break;case"link":this._dropAction=e,this._override=t.overrideCursor("alias",this.document);break;case"move":this._dropAction=e,this._override=t.overrideCursor("move",this.document)}}_finalize(t){let e=this._resolve;this._removeListeners(),this._detachDragImage(),this._override&&(this._override.dispose(),this._override=null),this.mimeData.clear(),this._disposed=!0,this._dropAction="none",this._currentTarget=null,this._currentElement=null,this._scrollTarget=null,this._promise=null,this._resolve=null,e&&e(t)}};!function(t){class e extends DragEvent{constructor(t,e){super(e.type,{bubbles:!0,cancelable:!0,altKey:t.altKey,button:t.button,clientX:t.clientX,clientY:t.clientY,ctrlKey:t.ctrlKey,detail:0,metaKey:t.metaKey,relatedTarget:e.related,screenX:t.screenX,screenY:t.screenY,shiftKey:t.shiftKey,view:window});let{drag:r}=e;this.dropAction="none",this.mimeData=r.mimeData,this.proposedAction=r.proposedAction,this.supportedActions=r.supportedActions,this.source=r.source}}t.Event=e,t.overrideCursor=function(t,e=document){return F.overrideCursor(t,e)}}(B||(B={})),function(t){function e(e,i=document){if(e){if(r&&e==r.event)return r.element;t.cursorBackdrop.style.zIndex="-1000";let n=i.elementFromPoint(e.clientX,e.clientY);return t.cursorBackdrop.style.zIndex="",r={event:e,element:n},n}{let e=t.cursorBackdrop.style.transform;if(n&&e===n.transform)return n.element;let r=t.cursorBackdrop.getBoundingClientRect();t.cursorBackdrop.style.zIndex="-1000";let a=i.elementFromPoint(r.left+r.width/2,r.top+r.height/2);return t.cursorBackdrop.style.zIndex="",n={transform:e,element:a},a}}t.SCROLL_EDGE_SIZE=20,t.validateAction=function(t,e){return i[t]&a[e]?t:"none"},t.findElementBehindBackdrop=e;let r=null,n=null;t.findScrollTarget=function(r){let n=r.clientX,i=r.clientY,a=e(r);for(;a;a=a.parentElement){if(!a.hasAttribute("data-lm-dragscroll"))continue;let e=0,r=0;a===document.body&&(e=window.pageXOffset,r=window.pageYOffset);let o=a.getBoundingClientRect(),s=o.top+r,l=o.left+e,c=l+o.width,u=s+o.height;if(n=c||i=u)continue;let h,p=n-l+1,f=i-s+1,d=c-n,m=u-i,g=Math.min(p,f,d,m);if(g>t.SCROLL_EDGE_SIZE)continue;switch(g){case m:h="bottom";break;case f:h="top";break;case d:h="right";break;case p:h="left";break;default:throw"unreachable"}let y,v=a.scrollWidth-a.clientWidth,x=a.scrollHeight-a.clientHeight;switch(h){case"top":y=x>0&&a.scrollTop>0;break;case"left":y=v>0&&a.scrollLeft>0;break;case"right":y=v>0&&a.scrollLeft0&&a.scrollTop{n===u&&t.cursorBackdrop.isConnected&&(document.removeEventListener("pointermove",o,!0),t.cursorBackdrop.removeEventListener("scroll",s,!0),i.removeChild(t.cursorBackdrop))}))};let c=500,u=0;t.cursorBackdrop=function(){let t=document.createElement("div");return t.classList.add("lm-cursor-backdrop"),t}()}(F||(F={}));var j=y(v()),N=y(x());function U(){return q.keyboardLayout}var V=class t{constructor(e,r,n=[]){this.name=e,this._codes=r,this._keys=t.extractKeys(r),this._modifierKeys=t.convertToKeySet(n)}keys(){return Object.keys(this._keys)}isValidKey(t){return t in this._keys}isModifierKey(t){return t in this._modifierKeys}keyForKeydownEvent(t){return this._codes[t.keyCode]||""}};!function(t){t.extractKeys=function(t){let e=Object.create(null);for(let r in t)e[t[r]]=!0;return e},t.convertToKeySet=function(t){let e=Object(null);for(let r=0,n=t.length;r{this._commands.delete(t),this._commandChanged.emit({id:t,type:"removed"})}))}notifyCommandChanged(t){if(void 0!==t&&!this._commands.has(t))throw new Error(`Command '${t}' is not registered.`);this._commandChanged.emit({id:t,type:t?"changed":"many-changed"})}describedBy(t,e=N.JSONExt.emptyObject){var r;let n=this._commands.get(t);return Promise.resolve(null!==(r=n?.describedBy.call(void 0,e))&&void 0!==r?r:{args:null})}label(t,e=N.JSONExt.emptyObject){var r;let n=this._commands.get(t);return null!==(r=n?.label.call(void 0,e))&&void 0!==r?r:""}mnemonic(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.mnemonic.call(void 0,e):-1}icon(t,e=N.JSONExt.emptyObject){var r;return null===(r=this._commands.get(t))||void 0===r?void 0:r.icon.call(void 0,e)}iconClass(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.iconClass.call(void 0,e):""}iconLabel(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.iconLabel.call(void 0,e):""}caption(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.caption.call(void 0,e):""}usage(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.usage.call(void 0,e):""}className(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.className.call(void 0,e):""}dataset(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return r?r.dataset.call(void 0,e):{}}isEnabled(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return!!r&&r.isEnabled.call(void 0,e)}isToggled(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return!!r&&r.isToggled.call(void 0,e)}isToggleable(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return!!r&&r.isToggleable}isVisible(t,e=N.JSONExt.emptyObject){let r=this._commands.get(t);return!!r&&r.isVisible.call(void 0,e)}execute(t,e=N.JSONExt.emptyObject){let r,n=this._commands.get(t);if(!n)return Promise.reject(new Error(`Command '${t}' not registered.`));try{r=n.execute.call(void 0,e)}catch(t){r=Promise.reject(t)}let i=Promise.resolve(r);return this._commandExecuted.emit({id:t,args:e,result:i}),i}addKeyBinding(t){let e=G.createKeyBinding(t);return this._keyBindings.push(e),this._keyBindingChanged.emit({binding:e,type:"added"}),new D((()=>{j.ArrayExt.removeFirstOf(this._keyBindings,e),this._keyBindingChanged.emit({binding:e,type:"removed"})}))}processKeydownEvent(e){if(e.defaultPrevented||this._replaying)return;let r=t.keystrokeForKeydownEvent(e);if(!r)return this._replayKeydownEvents(),void this._clearPendingState();if(t.isModifierKeyPressed(e)){let{exact:t}=G.matchKeyBinding(this._keyBindings,[r],e);return void(t?(e.preventDefault(),e.stopPropagation(),this._startModifierTimer(t)):this._clearModifierTimer())}this._keystrokes.push(r);let{exact:n,partial:i}=G.matchKeyBinding(this._keyBindings,this._keystrokes,e),a=0!==i.length;return n||a?((n?.preventDefault||i.some((t=>t.preventDefault)))&&(e.preventDefault(),e.stopPropagation()),this._keydownEvents.push(e),n&&!a?(this._executeKeyBinding(n),void this._clearPendingState()):(n&&(this._exactKeyMatch=n),void this._startTimer())):(this._replayKeydownEvents(),void this._clearPendingState())}holdKeyBindingExecution(t,e){this._holdKeyBindingPromises.set(t,e)}processKeyupEvent(t){this._clearModifierTimer()}_startModifierTimer(t){this._clearModifierTimer(),this._timerModifierID=window.setTimeout((()=>{this._executeKeyBinding(t)}),G.modifierkeyTimeOut)}_clearModifierTimer(){0!==this._timerModifierID&&(clearTimeout(this._timerModifierID),this._timerModifierID=0)}_startTimer(){this._clearTimer(),this._timerID=window.setTimeout((()=>{this._onPendingTimeout()}),G.CHORD_TIMEOUT)}_clearTimer(){0!==this._timerID&&(clearTimeout(this._timerID),this._timerID=0)}_replayKeydownEvents(){0!==this._keydownEvents.length&&(this._replaying=!0,this._keydownEvents.forEach(G.replayKeyEvent),this._replaying=!1)}async _executeKeyBinding(t){if(0!==this._holdKeyBindingPromises.size){let t=[...this._keydownEvents],e=(await Promise.race([Promise.all(t.map((async t=>{var e;return null!==(e=this._holdKeyBindingPromises.get(t))&&void 0!==e?e:Promise.resolve(!0)}))),new Promise((t=>{setTimeout((()=>t([!1])),G.KEYBINDING_HOLD_TIMEOUT)}))])).every(Boolean);if(this._holdKeyBindingPromises.clear(),!e)return}let{command:e,args:r}=t,n={_luminoEvent:{type:"keybinding",keys:t.keys},...r};if(this.hasCommand(e)&&this.isEnabled(e,n))await this.execute(e,n);else{let r=this.hasCommand(e)?"enabled":"registered",n=`Cannot execute key binding '${t.keys.join(", ")}':`,i=`command '${e}' is not ${r}.`;console.warn(`${n} ${i}`)}}_clearPendingState(){this._clearTimer(),this._clearModifierTimer(),this._exactKeyMatch=null,this._keystrokes.length=0,this._keydownEvents.length=0}_onPendingTimeout(){this._timerID=0,this._exactKeyMatch?this._executeKeyBinding(this._exactKeyMatch):this._replayKeydownEvents(),this._clearPendingState()}};!function(t){function e(t){let e="",r=!1,n=!1,i=!1,o=!1;for(let s of t.split(/\s+/))"Accel"===s?a.IS_MAC?n=!0:i=!0:"Alt"===s?r=!0:"Cmd"===s?n=!0:"Ctrl"===s?i=!0:"Shift"===s?o=!0:s.length>0&&(e=s);return{cmd:n,ctrl:i,alt:r,shift:o,key:e}}function r(t){let r="",n=e(t);return n.ctrl&&(r+="Ctrl "),n.alt&&(r+="Alt "),n.shift&&(r+="Shift "),n.cmd&&a.IS_MAC&&(r+="Cmd "),n.key?r+n.key:r.trim()}t.parseKeystroke=e,t.normalizeKeystroke=r,t.normalizeKeys=function(t){let e;return e=a.IS_WIN?t.winKeys||t.keys:a.IS_MAC?t.macKeys||t.keys:t.linuxKeys||t.keys,e.map(r)},t.formatKeystroke=function(t){return"string"==typeof t?r(t):t.map(r).join(", ");function r(t){let r=[],n=a.IS_MAC?" ":"+",i=e(t);return i.ctrl&&r.push("Ctrl"),i.alt&&r.push("Alt"),i.shift&&r.push("Shift"),a.IS_MAC&&i.cmd&&r.push("Cmd"),r.push(i.key),r.map(G.formatKey).join(n)}},t.isModifierKeyPressed=function(t){let e=U(),r=e.keyForKeydownEvent(t);return e.isModifierKey(r)},t.keystrokeForKeydownEvent=function(t){let e=U(),r=e.keyForKeydownEvent(t),n=[];return t.ctrlKey&&n.push("Ctrl"),t.altKey&&n.push("Alt"),t.shiftKey&&n.push("Shift"),t.metaKey&&a.IS_MAC&&n.push("Cmd"),e.isModifierKey(r)||n.push(r),n.join(" ")}}(W||(W={})),function(t){t.CHORD_TIMEOUT=1e3,t.KEYBINDING_HOLD_TIMEOUT=1e3,t.modifierkeyTimeOut=500,t.createCommand=function(t){return{execute:t.execute,describedBy:h("function"==typeof t.describedBy?t.describedBy:{args:null,...t.describedBy},(()=>({args:null}))),label:h(t.label,n),mnemonic:h(t.mnemonic,i),icon:h(t.icon,u),iconClass:h(t.iconClass,n),iconLabel:h(t.iconLabel,n),caption:h(t.caption,n),usage:h(t.usage,n),className:h(t.className,n),dataset:h(t.dataset,c),isEnabled:t.isEnabled||s,isToggled:t.isToggled||l,isToggleable:t.isToggleable||!!t.isToggled,isVisible:t.isVisible||s}},t.createKeyBinding=function(t){var e;return{keys:W.normalizeKeys(t),selector:p(t),command:t.command,args:t.args||N.JSONExt.emptyObject,preventDefault:null===(e=t.preventDefault)||void 0===e||e}},t.matchKeyBinding=function(t,e,r){let n=null,i=[],a=1/0,s=0;for(let l=0,c=t.length;la)continue;let p=o.calculateSpecificity(c.selector);(!n||h=s)&&(n=c,a=h,s=p)}return{exact:n,partial:i}},t.replayKeyEvent=function(t){t.target.dispatchEvent(function(t){let e=document.createEvent("Event"),r=t.bubbles||!0,n=t.cancelable||!0;return e.initEvent(t.type||"keydown",r,n),e.key=t.key||"",e.keyCode=t.keyCode||0,e.which=t.keyCode||0,e.ctrlKey=t.ctrlKey||!1,e.altKey=t.altKey||!1,e.shiftKey=t.shiftKey||!1,e.metaKey=t.metaKey||!1,e.view=t.view||window,e}(t))},t.formatKey=function(t){return a.IS_MAC?e.hasOwnProperty(t)?e[t]:t:r.hasOwnProperty(t)?r[t]:t};let e={Backspace:"⌫",Tab:"⇥",Enter:"⏎",Shift:"⇧",Ctrl:"⌃",Alt:"⌥",Escape:"⎋",PageUp:"⇞",PageDown:"⇟",End:"↘",Home:"↖",ArrowLeft:"←",ArrowUp:"↑",ArrowRight:"→",ArrowDown:"↓",Delete:"⌦",Cmd:"⌘"},r={Escape:"Esc",PageUp:"Page Up",PageDown:"Page Down",ArrowLeft:"Left",ArrowUp:"Up",ArrowRight:"Right",ArrowDown:"Down",Delete:"Del"},n=()=>"",i=()=>-1,s=()=>!0,l=()=>!1,c=()=>({}),u=()=>{};function h(t,e){return void 0===t?e:"function"==typeof t?t:()=>t}function p(t){if(-1!==t.selector.indexOf(","))throw new Error(`Selector cannot contain commas: ${t.selector}`);if(!o.isValid(t.selector))throw new Error(`Invalid selector: ${t.selector}`);return t.selector}function f(t,e){if(t.lengthe.length?2:1}function d(t,e){let r=e.target,n=e.currentTarget;for(let e=0;null!==r;r=r.parentElement,++e){if(r.hasAttribute("data-lm-suppress-shortcuts"))return-1;if(o.matches(r,t))return e;if(r===n)return-1}return-1}}(G||(G={}));var Z,Y,X=y(v()),$=class{constructor(t){this.type="text",this.content=t}},K=class{constructor(t,e,r,n){this.type="element",this.tag=t,this.attrs=e,this.children=r,this.renderer=n}};function J(t){let e,r={},n=[];for(let t=1,a=arguments.length;t=n;--a){let n=e[a],o=i?t.lastChild:t.childNodes[a];"text"===n.type||(n.renderer&&n.renderer.unrender?n.renderer.unrender(o,{attrs:n.attrs,children:n.children}):r(o,n.children,0,!1)),i&&t.removeChild(o)}}t.hostMap=new WeakMap,t.asContentArray=function(t){return t?t instanceof Array?t:[t]:[]},t.createDOMNode=e,t.updateContent=function t(n,a,o){if(a===o)return;let s=function(t,e){let r=t.firstChild,n=Object.create(null);for(let t of e)"element"===t.type&&t.attrs.key&&(n[t.attrs.key]={vNode:t,element:r}),r=r.nextSibling;return n}(n,a),l=a.slice(),c=n.firstChild,u=o.length;for(let r=0;r=l.length){e(o[r],n);continue}let a=l[r],u=o[r];if(a===u){c=c.nextSibling;continue}if("text"===a.type&&"text"===u.type){c.textContent!==u.content&&(c.textContent=u.content),c=c.nextSibling;continue}if("text"===a.type||"text"===u.type){X.ArrayExt.insert(l,r,u),e(u,n,c);continue}if(!a.renderer!=!u.renderer){X.ArrayExt.insert(l,r,u),e(u,n,c);continue}let h=u.attrs.key;if(h&&h in s){let t=s[h];t.vNode!==a&&(X.ArrayExt.move(l,l.indexOf(t.vNode,r+1),r),n.insertBefore(t.element,c),a=t.vNode,c=t.element)}if(a===u){c=c.nextSibling;continue}let p=a.attrs.key;p&&p!==h?(X.ArrayExt.insert(l,r,u),e(u,n,c)):a.tag===u.tag?(i(c,a.attrs,u.attrs),u.renderer?u.renderer.render(c,{attrs:u.attrs,children:u.children}):t(c,a.children,u.children),c=c.nextSibling):(X.ArrayExt.insert(l,r,u),e(u,n,c))}r(n,l,u,!0)};let n={key:!0,className:!0,htmlFor:!0,dataset:!0,style:!0};function i(t,e,r){if(e===r)return;let i;for(i in e)i in n||i in r||("on"===i.substr(0,2)?t[i]=null:t.removeAttribute(i));for(i in r)i in n||e[i]===r[i]||("on"===i.substr(0,2)?t[i]=r[i]:t.setAttribute(i,r[i]));e.className!==r.className&&(void 0!==r.className?t.setAttribute("class",r.className):t.removeAttribute("class")),e.htmlFor!==r.htmlFor&&(void 0!==r.htmlFor?t.setAttribute("for",r.htmlFor):t.removeAttribute("for")),e.dataset!==r.dataset&&function(t,e,r){for(let n in e)n in r||t.removeAttribute(`data-${n}`);for(let n in r)e[n]!==r[n]&&t.setAttribute(`data-${n}`,r[n])}(t,e.dataset||{},r.dataset||{}),e.style!==r.style&&function(t,e,r){let n,i=t.style;for(n in e)n in r||(i[n]="");for(n in r)e[n]!==r[n]&&(i[n]=r[n])}(t,e.style||{},r.style||{})}}(Y||(Y={}));var Q,tt=class{constructor(){this.sizeHint=0,this.minSize=0,this.maxSize=1/0,this.stretch=1,this.size=0,this.done=!1}};!function(t){t.calc=function(t,e){let r=t.length;if(0===r)return e;let n=0,i=0,a=0,o=0,s=0;for(let e=0;e0&&(o+=r.stretch,s++)}if(e===a)return 0;if(e<=n){for(let e=0;e=i){for(let e=0;e0&&n>l;){let e=n,i=o;for(let a=0;a0&&n>l;){let e=n/c;for(let i=0;i0&&n>l;){let e=n,i=o;for(let a=0;a=r.maxSize?(n-=r.maxSize-r.size,o-=r.stretch,r.size=r.maxSize,r.done=!0,c--,s--):(n-=l,r.size+=l)}}for(;c>0&&n>l;){let e=n/c;for(let i=0;i=r.maxSize?(n-=r.maxSize-r.size,r.size=r.maxSize,r.done=!0,c--):(n-=e,r.size+=e))}}}return 0},t.adjust=function(t,e,r){0===t.length||0===r||(r>0?function(t,e,r){let n=0;for(let r=0;r<=e;++r){let e=t[r];n+=e.maxSize-e.size}let i=0;for(let r=e+1,n=t.length;r=0&&a>0;--r){let e=t[r],n=e.maxSize-e.size;n>=a?(e.sizeHint=e.size+a,a=0):(e.sizeHint=e.size+n,a-=n)}let o=r;for(let r=e+1,n=t.length;r0;++r){let e=t[r],n=e.size-e.minSize;n>=o?(e.sizeHint=e.size-o,o=0):(e.sizeHint=e.size-n,o-=n)}}(t,e,r):function(t,e,r){let n=0;for(let r=e+1,i=t.length;r0;++r){let e=t[r],n=e.maxSize-e.size;n>=a?(e.sizeHint=e.size+a,a=0):(e.sizeHint=e.size+n,a-=n)}let o=r;for(let r=e;r>=0&&o>0;--r){let e=t[r],n=e.size-e.minSize;n>=o?(e.sizeHint=e.size-o,o=0):(e.sizeHint=e.size-n,o-=n)}}(t,e,-r))}}(Q||(Q={}));var et,rt=class{constructor(t){this._label="",this._caption="",this._mnemonic=-1,this._icon=void 0,this._iconClass="",this._iconLabel="",this._className="",this._closable=!1,this._changed=new z(this),this._isDisposed=!1,this.owner=t.owner,void 0!==t.label&&(this._label=t.label),void 0!==t.mnemonic&&(this._mnemonic=t.mnemonic),void 0!==t.icon&&(this._icon=t.icon),void 0!==t.iconClass&&(this._iconClass=t.iconClass),void 0!==t.iconLabel&&(this._iconLabel=t.iconLabel),void 0!==t.caption&&(this._caption=t.caption),void 0!==t.className&&(this._className=t.className),void 0!==t.closable&&(this._closable=t.closable),this._dataset=t.dataset||{}}get changed(){return this._changed}get label(){return this._label}set label(t){this._label!==t&&(this._label=t,this._changed.emit(void 0))}get mnemonic(){return this._mnemonic}set mnemonic(t){this._mnemonic!==t&&(this._mnemonic=t,this._changed.emit(void 0))}get icon(){return this._icon}set icon(t){this._icon!==t&&(this._icon=t,this._changed.emit(void 0))}get iconClass(){return this._iconClass}set iconClass(t){this._iconClass!==t&&(this._iconClass=t,this._changed.emit(void 0))}get iconLabel(){return this._iconLabel}set iconLabel(t){this._iconLabel!==t&&(this._iconLabel=t,this._changed.emit(void 0))}get caption(){return this._caption}set caption(t){this._caption!==t&&(this._caption=t,this._changed.emit(void 0))}get className(){return this._className}set className(t){this._className!==t&&(this._className=t,this._changed.emit(void 0))}get closable(){return this._closable}set closable(t){this._closable!==t&&(this._closable=t,this._changed.emit(void 0))}get dataset(){return this._dataset}set dataset(t){this._dataset!==t&&(this._dataset=t,this._changed.emit(void 0))}get isDisposed(){return this._isDisposed}dispose(){this.isDisposed||(this._isDisposed=!0,z.clearData(this))}},nt=class t{constructor(e={}){this._flags=0,this._layout=null,this._parent=null,this._disposed=new z(this),this._hiddenMode=t.HiddenMode.Display,this.node=et.createNode(e),this.addClass("lm-Widget")}dispose(){this.isDisposed||(this.setFlag(t.Flag.IsDisposed),this._disposed.emit(void 0),this.parent?this.parent=null:this.isAttached&&t.detach(this),this._layout&&(this._layout.dispose(),this._layout=null),this.title.dispose(),z.clearData(this),M.clearData(this),I.clearData(this))}get disposed(){return this._disposed}get isDisposed(){return this.testFlag(t.Flag.IsDisposed)}get isAttached(){return this.testFlag(t.Flag.IsAttached)}get isHidden(){return this.testFlag(t.Flag.IsHidden)}get isVisible(){return this.testFlag(t.Flag.IsVisible)}get title(){return et.titleProperty.get(this)}get id(){return this.node.id}set id(t){this.node.id=t}get dataset(){return this.node.dataset}get hiddenMode(){return this._hiddenMode}set hiddenMode(e){this._hiddenMode!==e&&(this.isHidden&&this._toggleHidden(!1),e==t.HiddenMode.Scale?this.node.style.willChange="transform":this.node.style.willChange="auto",this._hiddenMode=e,this.isHidden&&this._toggleHidden(!0))}get parent(){return this._parent}set parent(e){if(this._parent!==e){if(e&&this.contains(e))throw new Error("Invalid parent widget.");if(this._parent&&!this._parent.isDisposed){let e=new t.ChildMessage("child-removed",this);M.sendMessage(this._parent,e)}if(this._parent=e,this._parent&&!this._parent.isDisposed){let e=new t.ChildMessage("child-added",this);M.sendMessage(this._parent,e)}this.isDisposed||M.sendMessage(this,t.Msg.ParentChanged)}}get layout(){return this._layout}set layout(e){if(this._layout!==e){if(this.testFlag(t.Flag.DisallowLayout))throw new Error("Cannot set widget layout.");if(this._layout)throw new Error("Cannot change widget layout.");if(e.parent)throw new Error("Cannot change layout parent.");this._layout=e,e.parent=this}}*children(){this._layout&&(yield*this._layout)}contains(t){for(let e=t;e;e=e._parent)if(e===this)return!0;return!1}hasClass(t){return this.node.classList.contains(t)}addClass(t){this.node.classList.add(t)}removeClass(t){this.node.classList.remove(t)}toggleClass(t,e){return!0===e?(this.node.classList.add(t),!0):!1===e?(this.node.classList.remove(t),!1):this.node.classList.toggle(t)}update(){M.postMessage(this,t.Msg.UpdateRequest)}fit(){M.postMessage(this,t.Msg.FitRequest)}activate(){M.postMessage(this,t.Msg.ActivateRequest)}close(){M.sendMessage(this,t.Msg.CloseRequest)}show(){if(this.testFlag(t.Flag.IsHidden)&&(this.isAttached&&(!this.parent||this.parent.isVisible)&&M.sendMessage(this,t.Msg.BeforeShow),this.clearFlag(t.Flag.IsHidden),this._toggleHidden(!1),this.isAttached&&(!this.parent||this.parent.isVisible)&&M.sendMessage(this,t.Msg.AfterShow),this.parent)){let e=new t.ChildMessage("child-shown",this);M.sendMessage(this.parent,e)}}hide(){if(!this.testFlag(t.Flag.IsHidden)&&(this.isAttached&&(!this.parent||this.parent.isVisible)&&M.sendMessage(this,t.Msg.BeforeHide),this.setFlag(t.Flag.IsHidden),this._toggleHidden(!0),this.isAttached&&(!this.parent||this.parent.isVisible)&&M.sendMessage(this,t.Msg.AfterHide),this.parent)){let e=new t.ChildMessage("child-hidden",this);M.sendMessage(this.parent,e)}}setHidden(t){t?this.hide():this.show()}testFlag(t){return!!(this._flags&t)}setFlag(t){this._flags|=t}clearFlag(t){this._flags&=~t}processMessage(e){switch(e.type){case"resize":this.notifyLayout(e),this.onResize(e);break;case"update-request":this.notifyLayout(e),this.onUpdateRequest(e);break;case"fit-request":this.notifyLayout(e),this.onFitRequest(e);break;case"before-show":this.notifyLayout(e),this.onBeforeShow(e);break;case"after-show":this.setFlag(t.Flag.IsVisible),this.notifyLayout(e),this.onAfterShow(e);break;case"before-hide":this.notifyLayout(e),this.onBeforeHide(e);break;case"after-hide":this.clearFlag(t.Flag.IsVisible),this.notifyLayout(e),this.onAfterHide(e);break;case"before-attach":this.notifyLayout(e),this.onBeforeAttach(e);break;case"after-attach":!this.isHidden&&(!this.parent||this.parent.isVisible)&&this.setFlag(t.Flag.IsVisible),this.setFlag(t.Flag.IsAttached),this.notifyLayout(e),this.onAfterAttach(e);break;case"before-detach":this.notifyLayout(e),this.onBeforeDetach(e);break;case"after-detach":this.clearFlag(t.Flag.IsVisible),this.clearFlag(t.Flag.IsAttached),this.notifyLayout(e),this.onAfterDetach(e);break;case"activate-request":this.notifyLayout(e),this.onActivateRequest(e);break;case"close-request":this.notifyLayout(e),this.onCloseRequest(e);break;case"child-added":this.notifyLayout(e),this.onChildAdded(e);break;case"child-removed":this.notifyLayout(e),this.onChildRemoved(e);break;default:this.notifyLayout(e)}}notifyLayout(t){this._layout&&this._layout.processParentMessage(t)}onCloseRequest(e){this.parent?this.parent=null:this.isAttached&&t.detach(this)}onResize(t){}onUpdateRequest(t){}onFitRequest(t){}onActivateRequest(t){}onBeforeShow(t){}onAfterShow(t){}onBeforeHide(t){}onAfterHide(t){}onBeforeAttach(t){}onAfterAttach(t){}onBeforeDetach(t){}onAfterDetach(t){}onChildAdded(t){}onChildRemoved(t){}_toggleHidden(e){if(e)switch(this._hiddenMode){case t.HiddenMode.Display:this.addClass("lm-mod-hidden");break;case t.HiddenMode.Scale:this.node.style.transform="scale(0)",this.node.setAttribute("aria-hidden","true");break;case t.HiddenMode.ContentVisibility:this.node.style.contentVisibility="hidden",this.node.style.zIndex="-1"}else switch(this._hiddenMode){case t.HiddenMode.Display:this.removeClass("lm-mod-hidden");break;case t.HiddenMode.Scale:this.node.style.transform="",this.node.removeAttribute("aria-hidden");break;case t.HiddenMode.ContentVisibility:this.node.style.contentVisibility="",this.node.style.zIndex=""}}};!function(t){var e;(e=t.HiddenMode||(t.HiddenMode={}))[e.Display=0]="Display",e[e.Scale=1]="Scale",e[e.ContentVisibility=2]="ContentVisibility",function(t){t[t.IsDisposed=1]="IsDisposed",t[t.IsAttached=2]="IsAttached",t[t.IsHidden=4]="IsHidden",t[t.IsVisible=8]="IsVisible",t[t.DisallowLayout=16]="DisallowLayout"}(t.Flag||(t.Flag={})),function(t){t.BeforeShow=new S("before-show"),t.AfterShow=new S("after-show"),t.BeforeHide=new S("before-hide"),t.AfterHide=new S("after-hide"),t.BeforeAttach=new S("before-attach"),t.AfterAttach=new S("after-attach"),t.BeforeDetach=new S("before-detach"),t.AfterDetach=new S("after-detach"),t.ParentChanged=new S("parent-changed"),t.UpdateRequest=new E("update-request"),t.FitRequest=new E("fit-request"),t.ActivateRequest=new E("activate-request"),t.CloseRequest=new E("close-request")}(t.Msg||(t.Msg={})),t.ChildMessage=class extends S{constructor(t,e){super(t),this.child=e}};class r extends S{constructor(t,e){super("resize"),this.width=t,this.height=e}}t.ResizeMessage=r,function(t){t.UnknownSize=new t(-1,-1)}(r=t.ResizeMessage||(t.ResizeMessage={})),t.attach=function(e,r,n=null){if(e.parent)throw new Error("Cannot attach a child widget.");if(e.isAttached||e.node.isConnected)throw new Error("Widget is already attached.");if(!r.isConnected)throw new Error("Host is not attached.");M.sendMessage(e,t.Msg.BeforeAttach),r.insertBefore(e.node,n),M.sendMessage(e,t.Msg.AfterAttach)},t.detach=function(e){if(e.parent)throw new Error("Cannot detach a child widget.");if(!e.isAttached||!e.node.isConnected)throw new Error("Widget is not attached.");M.sendMessage(e,t.Msg.BeforeDetach),e.node.parentNode.removeChild(e.node),M.sendMessage(e,t.Msg.AfterDetach)}}(nt||(nt={})),function(t){t.titleProperty=new I({name:"title",create:t=>new rt({owner:t})}),t.createNode=function(t){return t.node||document.createElement(t.tag||"div")}}(et||(et={}));var it=class{constructor(t={}){this._disposed=!1,this._parent=null,this._fitPolicy=t.fitPolicy||"set-min-size"}dispose(){this._parent=null,this._disposed=!0,z.clearData(this),I.clearData(this)}get isDisposed(){return this._disposed}get parent(){return this._parent}set parent(t){if(this._parent!==t){if(this._parent)throw new Error("Cannot change parent widget.");if(t.layout!==this)throw new Error("Invalid parent widget.");this._parent=t,this.init()}}get fitPolicy(){return this._fitPolicy}set fitPolicy(t){if(this._fitPolicy!==t&&(this._fitPolicy=t,this._parent)){let t=this._parent.node.style;t.minWidth="",t.minHeight="",t.maxWidth="",t.maxHeight="",this._parent.fit()}}processParentMessage(t){switch(t.type){case"resize":this.onResize(t);break;case"update-request":this.onUpdateRequest(t);break;case"fit-request":this.onFitRequest(t);break;case"before-show":this.onBeforeShow(t);break;case"after-show":this.onAfterShow(t);break;case"before-hide":this.onBeforeHide(t);break;case"after-hide":this.onAfterHide(t);break;case"before-attach":this.onBeforeAttach(t);break;case"after-attach":this.onAfterAttach(t);break;case"before-detach":this.onBeforeDetach(t);break;case"after-detach":this.onAfterDetach(t);break;case"child-removed":this.onChildRemoved(t);break;case"child-shown":this.onChildShown(t);break;case"child-hidden":this.onChildHidden(t)}}init(){for(let t of this)t.parent=this.parent}onResize(t){for(let t of this)M.sendMessage(t,nt.ResizeMessage.UnknownSize)}onUpdateRequest(t){for(let t of this)M.sendMessage(t,nt.ResizeMessage.UnknownSize)}onBeforeAttach(t){for(let e of this)M.sendMessage(e,t)}onAfterAttach(t){for(let e of this)M.sendMessage(e,t)}onBeforeDetach(t){for(let e of this)M.sendMessage(e,t)}onAfterDetach(t){for(let e of this)M.sendMessage(e,t)}onBeforeShow(t){for(let e of this)e.isHidden||M.sendMessage(e,t)}onAfterShow(t){for(let e of this)e.isHidden||M.sendMessage(e,t)}onBeforeHide(t){for(let e of this)e.isHidden||M.sendMessage(e,t)}onAfterHide(t){for(let e of this)e.isHidden||M.sendMessage(e,t)}onChildRemoved(t){this.removeWidget(t.child)}onFitRequest(t){}onChildShown(t){}onChildHidden(t){}};!function(t){t.getHorizontalAlignment=function(t){return at.horizontalAlignmentProperty.get(t)},t.setHorizontalAlignment=function(t,e){at.horizontalAlignmentProperty.set(t,e)},t.getVerticalAlignment=function(t){return at.verticalAlignmentProperty.get(t)},t.setVerticalAlignment=function(t,e){at.verticalAlignmentProperty.set(t,e)}}(it||(it={}));var at,ot=class{constructor(t){this._top=NaN,this._left=NaN,this._width=NaN,this._height=NaN,this._minWidth=0,this._minHeight=0,this._maxWidth=1/0,this._maxHeight=1/0,this._disposed=!1,this.widget=t,this.widget.node.style.position="absolute",this.widget.node.style.contain="strict"}dispose(){if(this._disposed)return;this._disposed=!0;let t=this.widget.node.style;t.position="",t.top="",t.left="",t.width="",t.height="",t.contain=""}get minWidth(){return this._minWidth}get minHeight(){return this._minHeight}get maxWidth(){return this._maxWidth}get maxHeight(){return this._maxHeight}get isDisposed(){return this._disposed}get isHidden(){return this.widget.isHidden}get isVisible(){return this.widget.isVisible}get isAttached(){return this.widget.isAttached}fit(){let t=i.sizeLimits(this.widget.node);this._minWidth=t.minWidth,this._minHeight=t.minHeight,this._maxWidth=t.maxWidth,this._maxHeight=t.maxHeight}update(t,e,r,n){let i=Math.max(this._minWidth,Math.min(r,this._maxWidth)),a=Math.max(this._minHeight,Math.min(n,this._maxHeight));if(i"center",changed:e}),t.verticalAlignmentProperty=new I({name:"verticalAlignment",create:()=>"top",changed:e})}(at||(at={}));var st,lt=class extends it{constructor(){super(...arguments),this._widgets=[]}dispose(){for(;this._widgets.length>0;)this._widgets.pop().dispose();super.dispose()}get widgets(){return this._widgets}*[Symbol.iterator](){yield*this._widgets}addWidget(t){this.insertWidget(this._widgets.length,t)}insertWidget(t,e){e.parent=this.parent;let r=this._widgets.indexOf(e),n=Math.max(0,Math.min(t,this._widgets.length));if(-1===r)return b.ArrayExt.insert(this._widgets,n,e),void(this.parent&&this.attachWidget(n,e));n===this._widgets.length&&n--,r!==n&&(b.ArrayExt.move(this._widgets,r,n),this.parent&&this.moveWidget(r,n,e))}removeWidget(t){this.removeWidgetAt(this._widgets.indexOf(t))}removeWidgetAt(t){let e=b.ArrayExt.removeAt(this._widgets,t);e&&this.parent&&this.detachWidget(t,e)}init(){super.init();let t=0;for(let e of this)this.attachWidget(t++,e)}attachWidget(t,e){let r=this.parent.node.children[t];this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeAttach),this.parent.node.insertBefore(e.node,r),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterAttach)}moveWidget(t,e,r){this.parent.isAttached&&M.sendMessage(r,nt.Msg.BeforeDetach),this.parent.node.removeChild(r.node),this.parent.isAttached&&M.sendMessage(r,nt.Msg.AfterDetach);let n=this.parent.node.children[e];this.parent.isAttached&&M.sendMessage(r,nt.Msg.BeforeAttach),this.parent.node.insertBefore(r.node,n),this.parent.isAttached&&M.sendMessage(r,nt.Msg.AfterAttach)}detachWidget(t,e){this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterDetach)}};!function(t){t.clampDimension=function(t){return Math.max(0,Math.floor(t))}}(st||(st={}));var ct,ut=st,ht=class t extends lt{constructor(t){super(),this.widgetOffset=0,this._fixed=0,this._spacing=4,this._dirty=!1,this._hasNormedSizes=!1,this._sizers=[],this._items=[],this._handles=[],this._box=null,this._alignment="start",this._orientation="horizontal",this.renderer=t.renderer,void 0!==t.orientation&&(this._orientation=t.orientation),void 0!==t.alignment&&(this._alignment=t.alignment),void 0!==t.spacing&&(this._spacing=st.clampDimension(t.spacing))}dispose(){for(let t of this._items)t.dispose();this._box=null,this._items.length=0,this._sizers.length=0,this._handles.length=0,super.dispose()}get orientation(){return this._orientation}set orientation(t){this._orientation!==t&&(this._orientation=t,this.parent&&(this.parent.dataset.orientation=t,this.parent.fit()))}get alignment(){return this._alignment}set alignment(t){this._alignment!==t&&(this._alignment=t,this.parent&&(this.parent.dataset.alignment=t,this.parent.update()))}get spacing(){return this._spacing}set spacing(t){t=st.clampDimension(t),this._spacing!==t&&(this._spacing=t,this.parent&&this.parent.fit())}get handles(){return this._handles}absoluteSizes(){return this._sizers.map((t=>t.size))}relativeSizes(){return ct.normalize(this._sizers.map((t=>t.size)))}setRelativeSizes(t,e=!0){let r=this._sizers.length,n=t.slice(0,r);for(;n.length0&&(t.sizeHint=t.size);Q.adjust(this._sizers,t,r),this.parent&&this.parent.update()}}init(){this.parent.dataset.orientation=this.orientation,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(t,e){let r=new ot(e),n=ct.createHandle(this.renderer),i=ct.averageSize(this._sizers),a=ct.createSizer(i);b.ArrayExt.insert(this._items,t,r),b.ArrayExt.insert(this._sizers,t,a),b.ArrayExt.insert(this._handles,t,n),this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeAttach),this.parent.node.appendChild(e.node),this.parent.node.appendChild(n),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterAttach),this.parent.fit()}moveWidget(t,e,r){b.ArrayExt.move(this._items,t,e),b.ArrayExt.move(this._sizers,t,e),b.ArrayExt.move(this._handles,t,e),this.parent.fit()}detachWidget(t,e){let r=b.ArrayExt.removeAt(this._items,t),n=b.ArrayExt.removeAt(this._handles,t);b.ArrayExt.removeAt(this._sizers,t),this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.node.removeChild(n),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterDetach),r.dispose(),this.parent.fit()}onBeforeShow(t){super.onBeforeShow(t),this.parent.update()}onBeforeAttach(t){super.onBeforeAttach(t),this.parent.fit()}onChildShown(t){this.parent.fit()}onChildHidden(t){this.parent.fit()}onResize(t){this.parent.isVisible&&this._update(t.width,t.height)}onUpdateRequest(t){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(t){this.parent.isAttached&&this._fit()}updateItemPosition(t,e,r,n,i,a,o){let s=this._items[t];if(s.isHidden)return;let l=this._handles[t].style;e?(r+=this.widgetOffset,s.update(r,n,o,i),r+=o,l.top=`${n}px`,l.left=`${r}px`,l.width=`${this._spacing}px`,l.height=`${i}px`):(n+=this.widgetOffset,s.update(r,n,a,o),n+=o,l.top=`${n}px`,l.left=`${r}px`,l.width=`${a}px`,l.height=`${this._spacing}px`)}_fit(){let e=0,r=-1;for(let t=0,n=this._items.length;t0&&(i.sizeHint=i.size),r.isHidden?(i.minSize=0,i.maxSize=0):(r.fit(),i.stretch=t.getStretch(r.widget),n?(i.minSize=r.minWidth,i.maxSize=r.maxWidth,a+=r.minWidth,o=Math.max(o,r.minHeight)):(i.minSize=r.minHeight,i.maxSize=r.maxHeight,o+=r.minHeight,a=Math.max(a,r.minWidth)))}let s=this._box=i.boxSizing(this.parent.node);a+=s.horizontalSum,o+=s.verticalSum;let l=this.parent.node.style;l.minWidth=`${a}px`,l.minHeight=`${o}px`,this._dirty=!0,this.parent.parent&&M.sendMessage(this.parent.parent,nt.Msg.FitRequest),this._dirty&&M.sendMessage(this.parent,nt.Msg.UpdateRequest)}_update(t,e){this._dirty=!1;let r=0;for(let t=0,e=this._items.length;t0){let t;if(t=u?Math.max(0,o-this._fixed):Math.max(0,s-this._fixed),this._hasNormedSizes){for(let e of this._sizers)e.sizeHint*=t;this._hasNormedSizes=!1}let e=Q.calc(this._sizers,t);if(e>0)switch(this._alignment){case"start":break;case"center":l=0,c=e/2;break;case"end":l=0,c=e;break;case"justify":l=e/r,c=0;break;default:throw"unreachable"}}for(let t=0,e=this._items.length;t0,coerce:(t,e)=>Math.max(0,Math.floor(e)),changed:function(t){t.parent&&t.parent.layout instanceof ht&&t.parent.fit()}}),t.createSizer=function(t){let e=new tt;return e.sizeHint=Math.floor(t),e},t.createHandle=function(t){let e=t.createHandle();return e.style.position="absolute",e.style.contain="style",e},t.averageSize=function(t){return t.reduce(((t,e)=>t+e.size),0)/t.length||0},t.normalize=function(t){let e=t.length;if(0===e)return[];let r=t.reduce(((t,e)=>t+Math.abs(e)),0);return 0===r?t.map((t=>1/e)):t.map((t=>t/r))}}(ct||(ct={}));var pt,ft=class extends ht{constructor(t){super({...t,orientation:t.orientation||"vertical"}),this._titles=[],this.titleSpace=t.titleSpace||22}get titleSpace(){return this.widgetOffset}set titleSpace(t){t=ut.clampDimension(t),this.widgetOffset!==t&&(this.widgetOffset=t,this.parent&&this.parent.fit())}get titles(){return this._titles}dispose(){this.isDisposed||(this._titles.length=0,super.dispose())}updateTitle(t,e){let r=this._titles[t],n=r.classList.contains("lm-mod-expanded"),i=pt.createTitle(this.renderer,e.title,n);this._titles[t]=i,this.parent.node.replaceChild(i,r)}insertWidget(t,e){e.id||(e.id=`id-${w.UUID.uuid4()}`),super.insertWidget(t,e)}attachWidget(t,e){let r=pt.createTitle(this.renderer,e.title);b.ArrayExt.insert(this._titles,t,r),this.parent.node.appendChild(r),e.node.setAttribute("role","region"),e.node.setAttribute("aria-labelledby",r.id),super.attachWidget(t,e)}moveWidget(t,e,r){b.ArrayExt.move(this._titles,t,e),super.moveWidget(t,e,r)}detachWidget(t,e){let r=b.ArrayExt.removeAt(this._titles,t);this.parent.node.removeChild(r),super.detachWidget(t,e)}updateItemPosition(t,e,r,n,i,a,o){let s=this._titles[t].style;s.top=`${n}px`,s.left=`${r}px`,s.height=`${this.widgetOffset}px`,s.width=e?`${i}px`:`${a}px`,super.updateItemPosition(t,e,r,n,i,a,o)}};!function(t){t.createTitle=function(t,e,r=!0){let n=t.createSectionTitle(e);return n.style.position="absolute",n.style.contain="strict",n.setAttribute("aria-label",`${e.label} Section`),n.setAttribute("aria-expanded",r?"true":"false"),n.setAttribute("aria-controls",e.owner.id),r&&n.classList.add("lm-mod-expanded"),n}}(pt||(pt={}));var dt,mt=class extends nt{constructor(t={}){super(),this.addClass("lm-Panel"),this.layout=dt.createLayout(t)}get widgets(){return this.layout.widgets}addWidget(t){this.layout.addWidget(t)}insertWidget(t,e){this.layout.insertWidget(t,e)}};!function(t){t.createLayout=function(t){return t.layout||new lt}}(dt||(dt={}));var gt,yt=class extends mt{constructor(t={}){super({layout:gt.createLayout(t)}),this._handleMoved=new z(this),this._pressData=null,this.addClass("lm-SplitPanel")}dispose(){this._releaseMouse(),super.dispose()}get orientation(){return this.layout.orientation}set orientation(t){this.layout.orientation=t}get alignment(){return this.layout.alignment}set alignment(t){this.layout.alignment=t}get spacing(){return this.layout.spacing}set spacing(t){this.layout.spacing=t}get renderer(){return this.layout.renderer}get handleMoved(){return this._handleMoved}get handles(){return this.layout.handles}relativeSizes(){return this.layout.relativeSizes()}setRelativeSizes(t,e=!0){this.layout.setRelativeSizes(t,e)}handleEvent(t){switch(t.type){case"pointerdown":this._evtPointerDown(t);break;case"pointermove":this._evtPointerMove(t);break;case"pointerup":this._evtPointerUp(t);break;case"keydown":this._evtKeyDown(t);break;case"contextmenu":t.preventDefault(),t.stopPropagation()}}onBeforeAttach(t){this.node.addEventListener("pointerdown",this)}onAfterDetach(t){this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(t){t.child.addClass("lm-SplitPanel-child"),this._releaseMouse()}onChildRemoved(t){t.child.removeClass("lm-SplitPanel-child"),this._releaseMouse()}_evtKeyDown(t){this._pressData&&(t.preventDefault(),t.stopPropagation()),27===t.keyCode&&this._releaseMouse()}_evtPointerDown(t){if(0!==t.button)return;let e=this.layout,r=b.ArrayExt.findFirstIndex(e.handles,(e=>e.contains(t.target)));if(-1===r)return;t.preventDefault(),t.stopPropagation(),document.addEventListener("pointerup",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("contextmenu",this,!0);let n,i=e.handles[r],a=i.getBoundingClientRect();n="horizontal"===e.orientation?t.clientX-a.left:t.clientY-a.top;let o=window.getComputedStyle(i),s=B.overrideCursor(o.cursor);this._pressData={index:r,delta:n,override:s}}_evtPointerMove(t){t.preventDefault(),t.stopPropagation();let e,r=this.layout,n=this.node.getBoundingClientRect();e="horizontal"===r.orientation?t.clientX-n.left-this._pressData.delta:t.clientY-n.top-this._pressData.delta,r.moveHandle(this._pressData.index,e)}_evtPointerUp(t){0===t.button&&(t.preventDefault(),t.stopPropagation(),this._releaseMouse())}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._handleMoved.emit(),document.removeEventListener("keydown",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("contextmenu",this,!0))}};!function(t){class e{createHandle(){let t=document.createElement("div");return t.className="lm-SplitPanel-handle",t}}t.Renderer=e,t.defaultRenderer=new e,t.getStretch=function(t){return ht.getStretch(t)},t.setStretch=function(t,e){ht.setStretch(t,e)}}(yt||(yt={})),function(t){t.createLayout=function(t){return t.layout||new ht({renderer:t.renderer||yt.defaultRenderer,orientation:t.orientation,alignment:t.alignment,spacing:t.spacing})}}(gt||(gt={}));var vt,xt=class extends yt{constructor(t={}){super({...t,layout:vt.createLayout(t)}),this._widgetSizesCache=new WeakMap,this._expansionToggled=new z(this),this.addClass("lm-AccordionPanel")}get renderer(){return this.layout.renderer}get titleSpace(){return this.layout.titleSpace}set titleSpace(t){this.layout.titleSpace=t}get titles(){return this.layout.titles}get expansionToggled(){return this._expansionToggled}addWidget(t){super.addWidget(t),t.title.changed.connect(this._onTitleChanged,this)}collapse(t){let e=this.layout.widgets[t];e&&!e.isHidden&&this._toggleExpansion(t)}expand(t){let e=this.layout.widgets[t];e&&e.isHidden&&this._toggleExpansion(t)}insertWidget(t,e){super.insertWidget(t,e),e.title.changed.connect(this._onTitleChanged,this)}handleEvent(t){switch(super.handleEvent(t),t.type){case"click":this._evtClick(t);break;case"keydown":this._eventKeyDown(t)}}onBeforeAttach(t){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),super.onBeforeAttach(t)}onAfterDetach(t){super.onAfterDetach(t),this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this)}_onTitleChanged(t){let e=b.ArrayExt.findFirstIndex(this.widgets,(e=>e.contains(t.owner)));e>=0&&(this.layout.updateTitle(e,t.owner),this.update())}_computeWidgetSize(t){let e=this.layout,r=e.widgets[t];if(!r)return;let n=r.isHidden,i=e.absoluteSizes(),a=(n?-1:1)*this.spacing,o=i.reduce(((t,e)=>t+e)),s=[...i];if(n){let e=this._widgetSizesCache.get(r);if(!e)return;s[t]+=e;let n=s.map((t=>t-e>0)).lastIndexOf(!0);-1===n?s.forEach(((r,n)=>{n!==t&&(s[n]-=i[n]/o*(e-a))})):s[n]-=e-a}else{let e=i[t];this._widgetSizesCache.set(r,e),s[t]=0;let n=s.map((t=>t>0)).lastIndexOf(!0);if(-1===n)return;s[n]=i[n]+e+a}return s.map((t=>t/(o+a)))}_evtClick(t){let e=t.target;if(e){let r=b.ArrayExt.findFirstIndex(this.titles,(t=>t.contains(e)));r>=0&&(t.preventDefault(),t.stopPropagation(),this._toggleExpansion(r))}}_eventKeyDown(t){if(t.defaultPrevented)return;let e=t.target,r=!1;if(e){let n=b.ArrayExt.findFirstIndex(this.titles,(t=>t.contains(e)));if(n>=0){let i=t.keyCode.toString();if(t.key.match(/Space|Enter/)||i.match(/13|32/))e.click(),r=!0;else if("horizontal"===this.orientation?t.key.match(/ArrowLeft|ArrowRight/)||i.match(/37|39/):t.key.match(/ArrowUp|ArrowDown/)||i.match(/38|40/)){let e=t.key.match(/ArrowLeft|ArrowUp/)||i.match(/37|38/)?-1:1,a=this.titles.length,o=(n+a+e)%a;this.titles[o].focus(),r=!0}else"End"===t.key||"35"===i?(this.titles[this.titles.length-1].focus(),r=!0):("Home"===t.key||"36"===i)&&(this.titles[0].focus(),r=!0)}r&&t.preventDefault()}}_toggleExpansion(t){let e=this.titles[t],r=this.layout.widgets[t],n=this._computeWidgetSize(t);n&&this.setRelativeSizes(n,!1),r.isHidden?(e.classList.add("lm-mod-expanded"),e.setAttribute("aria-expanded","true"),r.show()):(e.classList.remove("lm-mod-expanded"),e.setAttribute("aria-expanded","false"),r.hide()),this._expansionToggled.emit(t)}};!function(t){class e extends yt.Renderer{constructor(){super(),this.titleClassName="lm-AccordionPanel-title",this._titleID=0,this._titleKeys=new WeakMap,this._uuid=++e._nInstance}createCollapseIcon(t){return document.createElement("span")}createSectionTitle(t){let e=document.createElement("h3");e.setAttribute("tabindex","0"),e.id=this.createTitleKey(t),e.className=this.titleClassName;for(let r in t.dataset)e.dataset[r]=t.dataset[r];e.appendChild(this.createCollapseIcon(t)).className="lm-AccordionPanel-titleCollapser";let r=e.appendChild(document.createElement("span"));return r.className="lm-AccordionPanel-titleLabel",r.textContent=t.label,r.title=t.caption||t.label,e}createTitleKey(t){let e=this._titleKeys.get(t);return void 0===e&&(e=`title-key-${this._uuid}-${this._titleID++}`,this._titleKeys.set(t,e)),e}}e._nInstance=0,t.Renderer=e,t.defaultRenderer=new e}(xt||(xt={})),function(t){t.createLayout=function(t){return t.layout||new ft({renderer:t.renderer||xt.defaultRenderer,orientation:t.orientation,alignment:t.alignment,spacing:t.spacing,titleSpace:t.titleSpace})}}(vt||(vt={}));var _t,bt=class t extends lt{constructor(t={}){super(),this._fixed=0,this._spacing=4,this._dirty=!1,this._sizers=[],this._items=[],this._box=null,this._alignment="start",this._direction="top-to-bottom",void 0!==t.direction&&(this._direction=t.direction),void 0!==t.alignment&&(this._alignment=t.alignment),void 0!==t.spacing&&(this._spacing=ut.clampDimension(t.spacing))}dispose(){for(let t of this._items)t.dispose();this._box=null,this._items.length=0,this._sizers.length=0,super.dispose()}get direction(){return this._direction}set direction(t){this._direction!==t&&(this._direction=t,this.parent&&(this.parent.dataset.direction=t,this.parent.fit()))}get alignment(){return this._alignment}set alignment(t){this._alignment!==t&&(this._alignment=t,this.parent&&(this.parent.dataset.alignment=t,this.parent.update()))}get spacing(){return this._spacing}set spacing(t){t=ut.clampDimension(t),this._spacing!==t&&(this._spacing=t,this.parent&&this.parent.fit())}init(){this.parent.dataset.direction=this.direction,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(t,e){b.ArrayExt.insert(this._items,t,new ot(e)),b.ArrayExt.insert(this._sizers,t,new tt),this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeAttach),this.parent.node.appendChild(e.node),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterAttach),this.parent.fit()}moveWidget(t,e,r){b.ArrayExt.move(this._items,t,e),b.ArrayExt.move(this._sizers,t,e),this.parent.update()}detachWidget(t,e){let r=b.ArrayExt.removeAt(this._items,t);b.ArrayExt.removeAt(this._sizers,t),this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterDetach),r.dispose(),this.parent.fit()}onBeforeShow(t){super.onBeforeShow(t),this.parent.update()}onBeforeAttach(t){super.onBeforeAttach(t),this.parent.fit()}onChildShown(t){this.parent.fit()}onChildHidden(t){this.parent.fit()}onResize(t){this.parent.isVisible&&this._update(t.width,t.height)}onUpdateRequest(t){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(t){this.parent.isAttached&&this._fit()}_fit(){let e=0;for(let t=0,r=this._items.length;t0)switch(this._alignment){case"start":break;case"center":c=0,u=n/2;break;case"end":c=0,u=n;break;case"justify":c=n/r,u=0;break;default:throw"unreachable"}for(let t=0,e=this._items.length;t0,coerce:(t,e)=>Math.max(0,Math.floor(e)),changed:e}),t.sizeBasisProperty=new I({name:"sizeBasis",create:()=>0,coerce:(t,e)=>Math.max(0,Math.floor(e)),changed:e}),t.isHorizontal=function(t){return"left-to-right"===t||"right-to-left"===t},t.clampSpacing=function(t){return Math.max(0,Math.floor(t))}}(_t||(_t={}));var wt,Tt=class extends mt{constructor(t={}){super({layout:wt.createLayout(t)}),this.addClass("lm-BoxPanel")}get direction(){return this.layout.direction}set direction(t){this.layout.direction=t}get alignment(){return this.layout.alignment}set alignment(t){this.layout.alignment=t}get spacing(){return this.layout.spacing}set spacing(t){this.layout.spacing=t}onChildAdded(t){t.child.addClass("lm-BoxPanel-child")}onChildRemoved(t){t.child.removeClass("lm-BoxPanel-child")}};!function(t){t.getStretch=function(t){return bt.getStretch(t)},t.setStretch=function(t,e){bt.setStretch(t,e)},t.getSizeBasis=function(t){return bt.getSizeBasis(t)},t.setSizeBasis=function(t,e){bt.setSizeBasis(t,e)}}(Tt||(Tt={})),function(t){t.createLayout=function(t){return t.layout||new bt(t)}}(wt||(wt={}));var At,kt=class t extends nt{constructor(e){super({node:At.createNode()}),this._activeIndex=-1,this._items=[],this._results=null,this.addClass("lm-CommandPalette"),this.setFlag(nt.Flag.DisallowLayout),this.commands=e.commands,this.renderer=e.renderer||t.defaultRenderer,this.commands.commandChanged.connect(this._onGenericChange,this),this.commands.keyBindingChanged.connect(this._onGenericChange,this)}dispose(){this._items.length=0,this._results=null,super.dispose()}get searchNode(){return this.node.getElementsByClassName("lm-CommandPalette-search")[0]}get inputNode(){return this.node.getElementsByClassName("lm-CommandPalette-input")[0]}get contentNode(){return this.node.getElementsByClassName("lm-CommandPalette-content")[0]}get items(){return this._items}addItem(t){let e=At.createItem(this.commands,t);return this._items.push(e),this.refresh(),e}addItems(t){let e=t.map((t=>At.createItem(this.commands,t)));return e.forEach((t=>this._items.push(t))),this.refresh(),e}removeItem(t){this.removeItemAt(this._items.indexOf(t))}removeItemAt(t){b.ArrayExt.removeAt(this._items,t)&&this.refresh()}clearItems(){0!==this._items.length&&(this._items.length=0,this.refresh())}refresh(){this._results=null,""!==this.inputNode.value?this.node.getElementsByClassName("lm-close-icon")[0].style.display="inherit":this.node.getElementsByClassName("lm-close-icon")[0].style.display="none",this.update()}handleEvent(t){switch(t.type){case"click":this._evtClick(t);break;case"keydown":this._evtKeyDown(t);break;case"input":this.refresh();break;case"focus":case"blur":this._toggleFocused()}}onBeforeAttach(t){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),this.node.addEventListener("input",this),this.node.addEventListener("focus",this,!0),this.node.addEventListener("blur",this,!0)}onAfterDetach(t){this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this),this.node.removeEventListener("input",this),this.node.removeEventListener("focus",this,!0),this.node.removeEventListener("blur",this,!0)}onAfterShow(t){this.update(),super.onAfterShow(t)}onActivateRequest(t){if(this.isAttached){let t=this.inputNode;t.focus(),t.select()}}onUpdateRequest(t){if(this.isHidden)return;let e=this.inputNode.value,r=this.contentNode,n=this._results;if(n||(n=this._results=At.search(this._items,e),this._activeIndex=e?b.ArrayExt.findFirstIndex(n,At.canActivate):-1),!e&&0===n.length)return void Z.render(null,r);if(e&&0===n.length){let t=this.renderer.renderEmptyMessage({query:e});return void Z.render(t,r)}let a=this.renderer,o=this._activeIndex,s=new Array(n.length);for(let t=0,e=n.length;t=n.length)r.scrollTop=0;else{let t=r.children[o];i.scrollIntoViewIfNeeded(r,t)}}_evtClick(t){if(0!==t.button)return;if(t.target.classList.contains("lm-close-icon"))return this.inputNode.value="",void this.refresh();let e=b.ArrayExt.findFirstIndex(this.contentNode.children,(e=>e.contains(t.target)));-1!==e&&(t.preventDefault(),t.stopPropagation(),this._execute(e))}_evtKeyDown(t){if(!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey))switch(t.keyCode){case 13:t.preventDefault(),t.stopPropagation(),this._execute(this._activeIndex);break;case 38:t.preventDefault(),t.stopPropagation(),this._activatePreviousItem();break;case 40:t.preventDefault(),t.stopPropagation(),this._activateNextItem()}}_activateNextItem(){if(!this._results||0===this._results.length)return;let t=this._activeIndex,e=this._results.length,r=tt-e)),c=a.slice(0,l),u=a.slice(l);for(let t=0,e=u.length;tr.command===t&&w.JSONExt.deepEqual(r.args,e)))||null}}}(At||(At={}));var Mt,St,Et=class t extends nt{constructor(e){super({node:Mt.createNode()}),this._childIndex=-1,this._activeIndex=-1,this._openTimerID=0,this._closeTimerID=0,this._items=[],this._childMenu=null,this._parentMenu=null,this._aboutToClose=new z(this),this._menuRequested=new z(this),this.addClass("lm-Menu"),this.setFlag(nt.Flag.DisallowLayout),this.commands=e.commands,this.renderer=e.renderer||t.defaultRenderer}dispose(){this.close(),this._items.length=0,super.dispose()}get aboutToClose(){return this._aboutToClose}get menuRequested(){return this._menuRequested}get parentMenu(){return this._parentMenu}get childMenu(){return this._childMenu}get rootMenu(){let t=this;for(;t._parentMenu;)t=t._parentMenu;return t}get leafMenu(){let t=this;for(;t._childMenu;)t=t._childMenu;return t}get contentNode(){return this.node.getElementsByClassName("lm-Menu-content")[0]}get activeItem(){return this._items[this._activeIndex]||null}set activeItem(t){this.activeIndex=t?this._items.indexOf(t):-1}get activeIndex(){return this._activeIndex}set activeIndex(t){(t<0||t>=this._items.length)&&(t=-1),-1!==t&&!Mt.canActivate(this._items[t])&&(t=-1),this._activeIndex!==t&&(this._activeIndex=t,this._activeIndex>=0&&this.contentNode.childNodes[this._activeIndex]&&this.contentNode.childNodes[this._activeIndex].focus(),this.update())}get items(){return this._items}activateNextItem(){let t=this._items.length,e=this._activeIndex,r=e{this.activeIndex=t}})}Z.render(a,this.contentNode)}onCloseRequest(t){this._cancelOpenTimer(),this._cancelCloseTimer(),this.activeIndex=-1;let e=this._childMenu;e&&(this._childIndex=-1,this._childMenu=null,e._parentMenu=null,e.close());let r=this._parentMenu;r&&(this._parentMenu=null,r._childIndex=-1,r._childMenu=null,r.activate()),this.isAttached&&this._aboutToClose.emit(void 0),super.onCloseRequest(t)}_evtKeyDown(t){t.preventDefault(),t.stopPropagation();let e=t.keyCode;if(13===e)return void this.triggerActiveItem();if(27===e)return void this.close();if(37===e)return void(this._parentMenu?this.close():this._menuRequested.emit("previous"));if(38===e)return void this.activatePreviousItem();if(39===e){let t=this.activeItem;return void(t&&"submenu"===t.type?this.triggerActiveItem():this.rootMenu._menuRequested.emit("next"))}if(40===e)return void this.activateNextItem();let r=U().keyForKeydownEvent(t);if(!r)return;let n=this._activeIndex+1,i=Mt.findMnemonic(this._items,r,n);-1===i.index||i.multiple?-1!==i.index?this.activeIndex=i.index:-1!==i.auto&&(this.activeIndex=i.auto):(this.activeIndex=i.index,this.triggerActiveItem())}_evtMouseUp(t){0===t.button&&(t.preventDefault(),t.stopPropagation(),this.triggerActiveItem())}_evtMouseMove(t){let e=b.ArrayExt.findFirstIndex(this.contentNode.children,(e=>i.hitTest(e,t.clientX,t.clientY)));if(e===this._activeIndex)return;if(this.activeIndex=e,e=this.activeIndex,e===this._childIndex)return this._cancelOpenTimer(),void this._cancelCloseTimer();-1!==this._childIndex&&this._startCloseTimer(),this._cancelOpenTimer();let r=this.activeItem;!r||"submenu"!==r.type||!r.submenu||this._startOpenTimer()}_evtMouseEnter(t){for(let t=this._parentMenu;t;t=t._parentMenu)t._cancelOpenTimer(),t._cancelCloseTimer(),t.activeIndex=t._childIndex}_evtMouseLeave(t){if(this._cancelOpenTimer(),!this._childMenu)return void(this.activeIndex=-1);let{clientX:e,clientY:r}=t;i.hitTest(this._childMenu.node,e,r)?this._cancelCloseTimer():(this.activeIndex=-1,this._startCloseTimer())}_evtMouseDown(t){this._parentMenu||(Mt.hitTestMenus(this,t.clientX,t.clientY)?(t.preventDefault(),t.stopPropagation()):this.close())}_openChildMenu(e=!1){let r=this.activeItem;if(!r||"submenu"!==r.type||!r.submenu)return void this._closeChildMenu();let n=r.submenu;if(n===this._childMenu)return;t.saveWindowData(),this._closeChildMenu(),this._childMenu=n,this._childIndex=this._activeIndex,n._parentMenu=this,M.sendMessage(this,nt.Msg.UpdateRequest);let i=this.contentNode.children[this._activeIndex];Mt.openSubmenu(n,i),e&&(n.activeIndex=-1,n.activateNextItem()),n.activate()}_closeChildMenu(){this._childMenu&&this._childMenu.close()}_startOpenTimer(){0===this._openTimerID&&(this._openTimerID=window.setTimeout((()=>{this._openTimerID=0,this._openChildMenu()}),Mt.TIMER_DELAY))}_startCloseTimer(){0===this._closeTimerID&&(this._closeTimerID=window.setTimeout((()=>{this._closeTimerID=0,this._closeChildMenu()}),Mt.TIMER_DELAY))}_cancelOpenTimer(){0!==this._openTimerID&&(clearTimeout(this._openTimerID),this._openTimerID=0)}_cancelCloseTimer(){0!==this._closeTimerID&&(clearTimeout(this._closeTimerID),this._closeTimerID=0)}static saveWindowData(){Mt.saveWindowData()}};!function(t){class e{renderItem(t){let e=this.createItemClass(t),r=this.createItemDataset(t),n=this.createItemARIA(t);return J.li({className:e,dataset:r,tabindex:"0",onfocus:t.onfocus,...n},this.renderIcon(t),this.renderLabel(t),this.renderShortcut(t),this.renderSubmenu(t))}renderIcon(t){let e=this.createIconClass(t);return J.div({className:e},t.item.icon,t.item.iconLabel)}renderLabel(t){let e=this.formatLabel(t);return J.div({className:"lm-Menu-itemLabel"},e)}renderShortcut(t){let e=this.formatShortcut(t);return J.div({className:"lm-Menu-itemShortcut"},e)}renderSubmenu(t){return J.div({className:"lm-Menu-itemSubmenuIcon"})}createItemClass(t){let e="lm-Menu-item";t.item.isEnabled||(e+=" lm-mod-disabled"),t.item.isToggled&&(e+=" lm-mod-toggled"),t.item.isVisible||(e+=" lm-mod-hidden"),t.active&&(e+=" lm-mod-active"),t.collapsed&&(e+=" lm-mod-collapsed");let r=t.item.className;return r&&(e+=` ${r}`),e}createItemDataset(t){let e,{type:r,command:n,dataset:i}=t.item;return e="command"===r?{...i,type:r,command:n}:{...i,type:r},e}createIconClass(t){let e="lm-Menu-itemIcon",r=t.item.iconClass;return r?`${e} ${r}`:e}createItemARIA(t){let e={};switch(t.item.type){case"separator":e.role="presentation";break;case"submenu":e["aria-haspopup"]="true",t.item.isEnabled||(e["aria-disabled"]="true");break;default:t.item.isEnabled||(e["aria-disabled"]="true"),e.role="menuitem"}return e}formatLabel(t){let{label:e,mnemonic:r}=t.item;if(r<0||r>=e.length)return e;let n=e.slice(0,r),i=e.slice(r+1),a=e[r];return[n,J.span({className:"lm-Menu-itemMnemonic"},a),i]}formatShortcut(t){let e=t.item.keyBinding;return e?W.formatKeystroke(e.keys):null}}t.Renderer=e,t.defaultRenderer=new e}(Et||(Et={})),function(t){t.TIMER_DELAY=300,t.SUBMENU_OVERLAP=3;let e=null,r=0;function n(){return r>0?(r--,e):o()}function a(t){return"separator"!==t.type&&t.isEnabled&&t.isVisible}function o(){return{pageXOffset:window.pageXOffset,pageYOffset:window.pageYOffset,clientWidth:document.documentElement.clientWidth,clientHeight:document.documentElement.clientHeight}}t.saveWindowData=function(){e=o(),r++},t.createNode=function(){let t=document.createElement("div"),e=document.createElement("ul");return e.className="lm-Menu-content",t.appendChild(e),e.setAttribute("role","menu"),t.tabIndex=0,t},t.canActivate=a,t.createItem=function(t,e){return new s(t.commands,e)},t.hitTestMenus=function(t,e,r){for(let n=t;n;n=n.childMenu)if(i.hitTest(n.node,e,r))return!0;return!1},t.computeCollapsed=function(t){let e=new Array(t.length);b.ArrayExt.fill(e,!1);let r=0,n=t.length;for(;r=0;--i){let r=t[i];if(r.isVisible){if("separator"!==r.type)break;e[i]=!0}}let a=!1;for(;++rc+h&&(e=c+h-g),!a&&r+y>u+p&&(r>u+p?r=u+p-y:r-=y),m.transform=`translate(${Math.max(0,e)}px, ${Math.max(0,r)}px`,m.opacity="1"},t.openSubmenu=function(e,r){let a=n(),o=a.pageXOffset,s=a.pageYOffset,l=a.clientWidth,c=a.clientHeight;M.sendMessage(e,nt.Msg.UpdateRequest);let u=c,h=e.node,p=h.style;p.opacity="0",p.maxHeight=`${u}px`,nt.attach(e,document.body);let{width:f,height:d}=h.getBoundingClientRect(),m=i.boxSizing(e.node),g=r.getBoundingClientRect(),y=g.right-t.SUBMENU_OVERLAP;y+f>o+l&&(y=g.left+t.SUBMENU_OVERLAP-f);let v=g.top-m.borderTop-m.paddingTop;v+d>s+c&&(v=g.bottom+m.borderBottom+m.paddingBottom-d),p.transform=`translate(${Math.max(0,y)}px, ${Math.max(0,v)}px`,p.opacity="1"},t.findMnemonic=function(t,e,r){let n=-1,i=-1,o=!1,s=e.toUpperCase();for(let e=0,l=t.length;e=0&&pr.command===t&&w.JSONExt.deepEqual(r.args,e)))||null}return null}}}(Mt||(Mt={})),function(t){function e(t,e){let r=t.rank,n=e.rank;return r!==n?r=this._titles.length)&&(t=-1),this._currentIndex===t)return;let e=this._currentIndex,r=this._titles[e]||null,n=t,i=this._titles[n]||null;this._currentIndex=n,this._previousTitle=r,this.update(),this._currentChanged.emit({previousIndex:e,previousTitle:r,currentIndex:n,currentTitle:i})}get name(){return this._name}set name(t){this._name=t,t?this.contentNode.setAttribute("aria-label",t):this.contentNode.removeAttribute("aria-label")}get orientation(){return this._orientation}set orientation(t){this._orientation!==t&&(this._releaseMouse(),this._orientation=t,this.dataset.orientation=t,this.contentNode.setAttribute("aria-orientation",t))}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(t){this._addButtonEnabled!==t&&(this._addButtonEnabled=t,t?this.addButtonNode.classList.remove("lm-mod-hidden"):this.addButtonNode.classList.add("lm-mod-hidden"))}get titles(){return this._titles}get contentNode(){return this.node.getElementsByClassName("lm-TabBar-content")[0]}get addButtonNode(){return this.node.getElementsByClassName("lm-TabBar-addButton")[0]}addTab(t){return this.insertTab(this._titles.length,t)}insertTab(t,e){this._releaseMouse();let r=Ct.asTitle(e),n=this._titles.indexOf(r),i=Math.max(0,Math.min(t,this._titles.length));return-1===n?(b.ArrayExt.insert(this._titles,i,r),r.changed.connect(this._onTitleChanged,this),this.update(),this._adjustCurrentForInsert(i,r),r):(i===this._titles.length&&i--,n===i||(b.ArrayExt.move(this._titles,n,i),this.update(),this._adjustCurrentForMove(n,i)),r)}removeTab(t){this.removeTabAt(this._titles.indexOf(t))}removeTabAt(t){this._releaseMouse();let e=b.ArrayExt.removeAt(this._titles,t);e&&(e.changed.disconnect(this._onTitleChanged,this),e===this._previousTitle&&(this._previousTitle=null),this.update(),this._adjustCurrentForRemove(t,e))}clearTabs(){if(0===this._titles.length)return;this._releaseMouse();for(let t of this._titles)t.changed.disconnect(this._onTitleChanged,this);let t=this.currentIndex,e=this.currentTitle;this._currentIndex=-1,this._previousTitle=null,this._titles.length=0,this.update(),-1!==t&&this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:-1,currentTitle:null})}releaseMouse(){this._releaseMouse()}handleEvent(t){switch(t.type){case"pointerdown":this._evtPointerDown(t);break;case"pointermove":this._evtPointerMove(t);break;case"pointerup":this._evtPointerUp(t);break;case"dblclick":this._evtDblClick(t);break;case"keydown":t.eventPhase===Event.CAPTURING_PHASE?this._evtKeyDownCapturing(t):this._evtKeyDown(t);break;case"contextmenu":t.preventDefault(),t.stopPropagation()}}onBeforeAttach(t){this.node.addEventListener("pointerdown",this),this.node.addEventListener("dblclick",this),this.node.addEventListener("keydown",this)}onAfterDetach(t){this.node.removeEventListener("pointerdown",this),this.node.removeEventListener("dblclick",this),this.node.removeEventListener("keydown",this),this._releaseMouse()}onUpdateRequest(t){var e;let r=this._titles,n=this.renderer,i=this.currentTitle,a=new Array(r.length),o=null!==(e=this._getCurrentTabindex())&&void 0!==e?e:this._currentIndex>-1?this._currentIndex:0;for(let t=0,e=r.length;ti.hitTest(e,t.clientX,t.clientY)));if(-1===r)return;let n=this.titles[r],a=e[r].querySelector(".lm-TabBar-tabLabel");if(a&&a.contains(t.target)){let t=n.label||"",e=a.innerHTML;a.innerHTML="";let r=document.createElement("input");r.classList.add("lm-TabBar-tabInput"),r.value=t,a.appendChild(r);let i=()=>{r.removeEventListener("blur",i),a.innerHTML=e,this.node.addEventListener("keydown",this)};r.addEventListener("dblclick",(t=>t.stopPropagation())),r.addEventListener("blur",i),r.addEventListener("keydown",(t=>{"Enter"===t.key?(""!==r.value&&(n.label=n.caption=r.value),i()):"Escape"===t.key&&i()})),this.node.removeEventListener("keydown",this),r.select(),r.focus(),a.children.length>0&&a.children[0].focus()}}_evtKeyDownCapturing(t){t.eventPhase===Event.CAPTURING_PHASE&&(t.preventDefault(),t.stopPropagation(),"Escape"===t.key&&this._releaseMouse())}_evtKeyDown(t){var e,r,n;if("Tab"!==t.key&&t.eventPhase!==Event.CAPTURING_PHASE)if("Enter"===t.key||"Spacebar"===t.key||" "===t.key){let e=document.activeElement;if(this.addButtonEnabled&&this.addButtonNode.contains(e))t.preventDefault(),t.stopPropagation(),this._addRequested.emit();else{let r=b.ArrayExt.findFirstIndex(this.contentNode.children,(t=>t.contains(e)));r>=0&&(t.preventDefault(),t.stopPropagation(),this.currentIndex=r)}}else if(It.includes(t.key)){let i=[...this.contentNode.children];if(this.addButtonEnabled&&i.push(this.addButtonNode),i.length<=1)return;t.preventDefault(),t.stopPropagation();let a,o=i.indexOf(document.activeElement);-1===o&&(o=this._currentIndex),"ArrowRight"===t.key&&"horizontal"===this._orientation||"ArrowDown"===t.key&&"vertical"===this._orientation?a=null!==(e=i[o+1])&&void 0!==e?e:i[0]:"ArrowLeft"===t.key&&"horizontal"===this._orientation||"ArrowUp"===t.key&&"vertical"===this._orientation?a=null!==(r=i[o-1])&&void 0!==r?r:i[i.length-1]:"Home"===t.key?a=i[0]:"End"===t.key&&(a=i[i.length-1]),a&&(null===(n=i[o])||void 0===n||n.setAttribute("tabindex","-1"),a?.setAttribute("tabindex","0"),a.focus())}}_evtPointerDown(t){if(0!==t.button&&1!==t.button||this._dragData||t.target.classList.contains("lm-TabBar-tabInput"))return;let e=this.addButtonEnabled&&this.addButtonNode.contains(t.target),r=this.contentNode.children,n=b.ArrayExt.findFirstIndex(r,(e=>i.hitTest(e,t.clientX,t.clientY)));if(-1===n&&!e||(t.preventDefault(),t.stopPropagation(),this._dragData={tab:r[n],index:n,pressX:t.clientX,pressY:t.clientY,tabPos:-1,tabSize:-1,tabPressPos:-1,targetIndex:-1,tabLayout:null,contentRect:null,override:null,dragActive:!1,dragAborted:!1,detachRequested:!1},this.document.addEventListener("pointerup",this,!0),1===t.button||e))return;let a=r[n].querySelector(this.renderer.closeIconSelector);a&&a.contains(t.target)||(this.tabsMovable&&(this.document.addEventListener("pointermove",this,!0),this.document.addEventListener("keydown",this,!0),this.document.addEventListener("contextmenu",this,!0)),this.allowDeselect&&this.currentIndex===n?this.currentIndex=-1:this.currentIndex=n,-1!==this.currentIndex&&this._tabActivateRequested.emit({index:this.currentIndex,title:this.currentTitle}))}_evtPointerMove(t){let e=this._dragData;if(!e)return;t.preventDefault(),t.stopPropagation();let r=this.contentNode.children;if(e.dragActive||Ct.dragExceeded(e,t)){if(!e.dragActive){let t=e.tab.getBoundingClientRect();"horizontal"===this._orientation?(e.tabPos=e.tab.offsetLeft,e.tabSize=t.width,e.tabPressPos=e.pressX-t.left):(e.tabPos=e.tab.offsetTop,e.tabSize=t.height,e.tabPressPos=e.pressY-t.top),e.tabPressOffset={x:e.pressX-t.left,y:e.pressY-t.top},e.tabLayout=Ct.snapTabLayout(r,this._orientation),e.contentRect=this.contentNode.getBoundingClientRect(),e.override=B.overrideCursor("default"),e.tab.classList.add("lm-mod-dragging"),this.addClass("lm-mod-dragging"),e.dragActive=!0}if(!e.detachRequested&&Ct.detachExceeded(e,t)){e.detachRequested=!0;let n=e.index,i=t.clientX,a=t.clientY,o=r[n],s=this._titles[n];if(this._tabDetachRequested.emit({index:n,title:s,tab:o,clientX:i,clientY:a,offset:e.tabPressOffset}),e.dragAborted)return}Ct.layoutTabs(r,e,t,this._orientation)}}_evtPointerUp(t){if(0!==t.button&&1!==t.button)return;let e=this._dragData;if(!e)return;if(t.preventDefault(),t.stopPropagation(),this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),!e.dragActive){if(this._dragData=null,this.addButtonEnabled&&this.addButtonNode.contains(t.target))return void this._addRequested.emit(void 0);let r=this.contentNode.children,n=b.ArrayExt.findFirstIndex(r,(e=>i.hitTest(e,t.clientX,t.clientY)));if(n!==e.index)return;let a=this._titles[n];if(!a.closable)return;if(1===t.button)return void this._tabCloseRequested.emit({index:n,title:a});let o=r[n].querySelector(this.renderer.closeIconSelector);return o&&o.contains(t.target)?void this._tabCloseRequested.emit({index:n,title:a}):void 0}if(0!==t.button)return;Ct.finalizeTabPosition(e,this._orientation),e.tab.classList.remove("lm-mod-dragging");let r=Ct.parseTransitionDuration(e.tab);setTimeout((()=>{if(e.dragAborted)return;this._dragData=null,Ct.resetTabPositions(this.contentNode.children,this._orientation),e.override.dispose(),this.removeClass("lm-mod-dragging");let t=e.index,r=e.targetIndex;-1===r||t===r||(b.ArrayExt.move(this._titles,t,r),this._adjustCurrentForMove(t,r),this._tabMoved.emit({fromIndex:t,toIndex:r,title:this._titles[r]}),M.sendMessage(this,nt.Msg.UpdateRequest))}),r)}_releaseMouse(){let t=this._dragData;t&&(this._dragData=null,this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),t.dragAborted=!0,t.dragActive&&(Ct.resetTabPositions(this.contentNode.children,this._orientation),t.override.dispose(),t.tab.classList.remove("lm-mod-dragging"),this.removeClass("lm-mod-dragging")))}_adjustCurrentForInsert(t,e){let r=this.currentTitle,n=this._currentIndex,i=this.insertBehavior;if("select-tab"===i||"select-tab-if-needed"===i&&-1===n)return this._currentIndex=t,this._previousTitle=r,void this._currentChanged.emit({previousIndex:n,previousTitle:r,currentIndex:t,currentTitle:e});n>=t&&this._currentIndex++}_adjustCurrentForMove(t,e){this._currentIndex===t?this._currentIndex=e:this._currentIndex=e?this._currentIndex++:this._currentIndex>t&&this._currentIndex<=e&&this._currentIndex--}_adjustCurrentForRemove(t,e){let r=this._currentIndex,n=this.removeBehavior;if(r===t)return 0===this._titles.length?(this._currentIndex=-1,void this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:-1,currentTitle:null})):"select-tab-after"===n?(this._currentIndex=Math.min(t,this._titles.length-1),void this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:this._currentIndex,currentTitle:this.currentTitle})):"select-tab-before"===n?(this._currentIndex=Math.max(0,t-1),void this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:this._currentIndex,currentTitle:this.currentTitle})):"select-previous-tab"===n?(this._previousTitle?(this._currentIndex=this._titles.indexOf(this._previousTitle),this._previousTitle=null):this._currentIndex=Math.min(t,this._titles.length-1),void this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:this._currentIndex,currentTitle:this.currentTitle})):(this._currentIndex=-1,void this._currentChanged.emit({previousIndex:t,previousTitle:e,currentIndex:-1,currentTitle:null}));r>t&&this._currentIndex--}_onTitleChanged(t){this.update()}};!function(t){class e{constructor(){this.closeIconSelector=".lm-TabBar-tabCloseIcon",this._tabID=0,this._tabKeys=new WeakMap,this._uuid=++e._nInstance}renderTab(t){let e=t.title.caption,r=this.createTabKey(t),n=r,i=this.createTabStyle(t),a=this.createTabClass(t),o=this.createTabDataset(t),s=this.createTabARIA(t);return t.title.closable?J.li({id:n,key:r,className:a,title:e,style:i,dataset:o,...s},this.renderIcon(t),this.renderLabel(t),this.renderCloseIcon(t)):J.li({id:n,key:r,className:a,title:e,style:i,dataset:o,...s},this.renderIcon(t),this.renderLabel(t))}renderIcon(t){let{title:e}=t,r=this.createIconClass(t);return J.div({className:r},e.icon,e.iconLabel)}renderLabel(t){return J.div({className:"lm-TabBar-tabLabel"},t.title.label)}renderCloseIcon(t){return J.div({className:"lm-TabBar-tabCloseIcon"})}createTabKey(t){let e=this._tabKeys.get(t.title);return void 0===e&&(e=`tab-key-${this._uuid}-${this._tabID++}`,this._tabKeys.set(t.title,e)),e}createTabStyle(t){return{zIndex:`${t.zIndex}`}}createTabClass(t){let e="lm-TabBar-tab";return t.title.className&&(e+=` ${t.title.className}`),t.title.closable&&(e+=" lm-mod-closable"),t.current&&(e+=" lm-mod-current"),e}createTabDataset(t){return t.title.dataset}createTabARIA(t){var e;return{role:"tab","aria-selected":t.current.toString(),tabindex:`${null!==(e=t.tabIndex)&&void 0!==e?e:"-1"}`}}createIconClass(t){let e="lm-TabBar-tabIcon",r=t.title.iconClass;return r?`${e} ${r}`:e}}e._nInstance=0,t.Renderer=e,t.defaultRenderer=new e,t.addButtonSelector=".lm-TabBar-addButton"}(Lt||(Lt={})),function(t){t.DRAG_THRESHOLD=5,t.DETACH_THRESHOLD=20,t.createNode=function(){let t=document.createElement("div"),e=document.createElement("ul");e.setAttribute("role","tablist"),e.className="lm-TabBar-content",t.appendChild(e);let r=document.createElement("div");return r.className="lm-TabBar-addButton lm-mod-hidden",r.setAttribute("tabindex","-1"),r.setAttribute("role","button"),t.appendChild(r),t},t.asTitle=function(t){return t instanceof rt?t:new rt(t)},t.parseTransitionDuration=function(t){let e=window.getComputedStyle(t);return 1e3*(parseFloat(e.transitionDuration)||0)},t.snapTabLayout=function(t,e){let r=new Array(t.length);for(let n=0,i=t.length;n=t.DRAG_THRESHOLD||i>=t.DRAG_THRESHOLD},t.detachExceeded=function(e,r){let n=e.contentRect;return r.clientX=n.right+t.DETACH_THRESHOLD||r.clientY=n.bottom+t.DETACH_THRESHOLD},t.layoutTabs=function(t,e,r,n){let i,a,o,s;"horizontal"===n?(i=e.pressX,a=r.clientX-e.contentRect.left,o=r.clientX,s=e.contentRect.width):(i=e.pressY,a=r.clientY-e.contentRect.top,o=r.clientY,s=e.contentRect.height);let l=e.index,c=a-e.tabPressPos,u=c+e.tabSize;for(let r=0,a=t.length;r>1);if(re.index&&u>p)a=-e.tabSize-h.margin+"px",l=Math.max(l,r);else if(r===e.index){let t=o-i,r=s-(e.tabPos+e.tabSize);a=`${Math.max(-e.tabPos,Math.min(t,r))}px`}else a="";"horizontal"===n?t[r].style.left=a:t[r].style.top=a}e.targetIndex=l},t.finalizeTabPosition=function(t,e){let r,n;if(r="horizontal"===e?t.contentRect.width:t.contentRect.height,t.targetIndex===t.index)n=0;else if(t.targetIndex>t.index){let e=t.tabLayout[t.targetIndex];n=e.pos+e.size-t.tabSize-t.tabPos}else n=t.tabLayout[t.targetIndex].pos-t.tabPos;let i=r-(t.tabPos+t.tabSize),a=Math.max(-t.tabPos,Math.min(n,i));"horizontal"===e?t.tab.style.left=`${a}px`:t.tab.style.top=`${a}px`},t.resetTabPositions=function(t,e){for(let r of t)"horizontal"===e?r.style.left="":r.style.top=""}}(Ct||(Ct={}));var Pt,zt=class extends it{constructor(t){super(),this._spacing=4,this._dirty=!1,this._root=null,this._box=null,this._items=new Map,this.renderer=t.renderer,void 0!==t.spacing&&(this._spacing=ut.clampDimension(t.spacing)),this._document=t.document||document,this._hiddenMode=void 0!==t.hiddenMode?t.hiddenMode:nt.HiddenMode.Display}dispose(){let t=this[Symbol.iterator]();this._items.forEach((t=>{t.dispose()})),this._box=null,this._root=null,this._items.clear();for(let e of t)e.dispose();super.dispose()}get hiddenMode(){return this._hiddenMode}set hiddenMode(t){if(this._hiddenMode!==t){this._hiddenMode=t;for(let t of this.tabBars())if(t.titles.length>1)for(let e of t.titles)e.owner.hiddenMode=this._hiddenMode}}get spacing(){return this._spacing}set spacing(t){t=ut.clampDimension(t),this._spacing!==t&&(this._spacing=t,this.parent&&this.parent.fit())}get isEmpty(){return null===this._root}[Symbol.iterator](){return this._root?this._root.iterAllWidgets():(0,b.empty)()}widgets(){return this._root?this._root.iterUserWidgets():(0,b.empty)()}selectedWidgets(){return this._root?this._root.iterSelectedWidgets():(0,b.empty)()}tabBars(){return this._root?this._root.iterTabBars():(0,b.empty)()}handles(){return this._root?this._root.iterHandles():(0,b.empty)()}moveHandle(t,e,r){let n=t.classList.contains("lm-mod-hidden");if(!this._root||n)return;let i,a=this._root.findSplitNode(t);a&&(i="horizontal"===a.node.orientation?e-t.offsetLeft:r-t.offsetTop,0!==i&&(a.node.holdSizes(),Q.adjust(a.node.sizers,a.index,i),this.parent&&this.parent.update()))}saveLayout(){return this._root?(this._root.holdAllSizes(),{main:this._root.createConfig()}):{main:null}}restoreLayout(t){let e,r=new Set;e=t.main?Pt.normalizeAreaConfig(t.main,r):null;let n=this.widgets(),i=this.tabBars(),a=this.handles();this._root=null;for(let t of n)r.has(t)||(t.parent=null);for(let t of i)t.dispose();for(let t of a)t.parentNode&&t.parentNode.removeChild(t);for(let t of r)t.parent=this.parent;this._root=e?Pt.realizeAreaConfig(e,{createTabBar:t=>this._createTabBar(),createHandle:()=>this._createHandle()},this._document):null,this.parent&&(r.forEach((t=>{this.attachWidget(t)})),this.parent.fit())}addWidget(t,e={}){let r=e.ref||null,n=e.mode||"tab-after",i=null;if(this._root&&r&&(i=this._root.findTabNode(r)),r&&!i)throw new Error("Reference widget is not in the layout.");switch(t.parent=this.parent,n){case"tab-after":this._insertTab(t,r,i,!0);break;case"tab-before":this._insertTab(t,r,i,!1);break;case"split-top":this._insertSplit(t,r,i,"vertical",!1);break;case"split-left":this._insertSplit(t,r,i,"horizontal",!1);break;case"split-right":this._insertSplit(t,r,i,"horizontal",!0);break;case"split-bottom":this._insertSplit(t,r,i,"vertical",!0);break;case"merge-top":this._insertSplit(t,r,i,"vertical",!1,!0);break;case"merge-left":this._insertSplit(t,r,i,"horizontal",!1,!0);break;case"merge-right":this._insertSplit(t,r,i,"horizontal",!0,!0);break;case"merge-bottom":this._insertSplit(t,r,i,"vertical",!0,!0)}this.parent&&(this.attachWidget(t),this.parent.fit())}removeWidget(t){this._removeWidget(t),this.parent&&(this.detachWidget(t),this.parent.fit())}hitTestTabAreas(t,e){if(!this._root||!this.parent||!this.parent.isVisible)return null;this._box||(this._box=i.boxSizing(this.parent.node));let r=this.parent.node.getBoundingClientRect(),n=t-r.left-this._box.borderLeft,a=e-r.top-this._box.borderTop,o=this._root.hitTestTabNodes(n,a);if(!o)return null;let{tabBar:s,top:l,left:c,width:u,height:h}=o,p=this._box.borderLeft+this._box.borderRight,f=this._box.borderTop+this._box.borderBottom;return{tabBar:s,x:n,y:a,top:l,left:c,right:r.width-p-(c+u),bottom:r.height-f-(l+h),width:u,height:h}}init(){super.init();for(let t of this)this.attachWidget(t);for(let t of this.handles())this.parent.node.appendChild(t);this.parent.fit()}attachWidget(t){this.parent.node!==t.node.parentNode&&(this._items.set(t,new ot(t)),this.parent.isAttached&&M.sendMessage(t,nt.Msg.BeforeAttach),this.parent.node.appendChild(t.node),this.parent.isAttached&&M.sendMessage(t,nt.Msg.AfterAttach))}detachWidget(t){if(this.parent.node!==t.node.parentNode)return;this.parent.isAttached&&M.sendMessage(t,nt.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.isAttached&&M.sendMessage(t,nt.Msg.AfterDetach);let e=this._items.get(t);e&&(this._items.delete(t),e.dispose())}onBeforeShow(t){super.onBeforeShow(t),this.parent.update()}onBeforeAttach(t){super.onBeforeAttach(t),this.parent.fit()}onChildShown(t){this.parent.fit()}onChildHidden(t){this.parent.fit()}onResize(t){this.parent.isVisible&&this._update(t.width,t.height)}onUpdateRequest(t){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(t){this.parent.isAttached&&this._fit()}_removeWidget(t){if(!this._root)return;let e=this._root.findTabNode(t);if(!e)return;if(Pt.removeAria(t),e.tabBar.titles.length>1)return e.tabBar.removeTab(t.title),void(this._hiddenMode===nt.HiddenMode.Scale&&1==e.tabBar.titles.length&&(e.tabBar.titles[0].owner.hiddenMode=nt.HiddenMode.Display));if(e.tabBar.dispose(),this._root===e)return void(this._root=null);this._root.holdAllSizes();let r=e.parent;e.parent=null;let n=b.ArrayExt.removeFirstOf(r.children,e),i=b.ArrayExt.removeAt(r.handles,n);if(b.ArrayExt.removeAt(r.sizers,n),i.parentNode&&i.parentNode.removeChild(i),r.children.length>1)return void r.syncHandles();let a=r.parent;r.parent=null;let o=r.children[0],s=r.handles[0];if(r.children.length=0,r.handles.length=0,r.sizers.length=0,s.parentNode&&s.parentNode.removeChild(s),this._root===r)return o.parent=null,void(this._root=o);let l=a,c=l.children.indexOf(r);if(o instanceof Pt.TabLayoutNode)return o.parent=l,void(l.children[c]=o);let u=b.ArrayExt.removeAt(l.handles,c);b.ArrayExt.removeAt(l.children,c),b.ArrayExt.removeAt(l.sizers,c),u.parentNode&&u.parentNode.removeChild(u);for(let t=0,e=o.children.length;t=r.length)&&(n=0),{type:"tab-area",widgets:r,currentIndex:n}}(e,r):function(e,r){let n=e.orientation,i=[],a=[];for(let o=0,s=e.children.length;o{let l=i(n,r,a),c=e(t.sizes[s]),u=r.createHandle();o.children.push(l),o.handles.push(u),o.sizers.push(c),l.parent=o})),o.syncHandles(),o.normalizeSizes(),o}(a,o,s),l};class r{constructor(t){this.parent=null,this._top=0,this._left=0,this._width=0,this._height=0;let e=new tt,r=new tt;e.stretch=0,r.stretch=1,this.tabBar=t,this.sizers=[e,r]}get top(){return this._top}get left(){return this._left}get width(){return this._width}get height(){return this._height}*iterAllWidgets(){yield this.tabBar,yield*this.iterUserWidgets()}*iterUserWidgets(){for(let t of this.tabBar.titles)yield t.owner}*iterSelectedWidgets(){let t=this.tabBar.currentTitle;t&&(yield t.owner)}*iterTabBars(){yield this.tabBar}*iterHandles(){}findTabNode(t){return-1!==this.tabBar.titles.indexOf(t.title)?this:null}findSplitNode(t){return null}findFirstTabNode(){return this}hitTestTabNodes(t,e){return t=this._left+this._width||e=this._top+this._height?null:this}createConfig(){return{type:"tab-area",widgets:this.tabBar.titles.map((t=>t.owner)),currentIndex:this.tabBar.currentIndex}}holdAllSizes(){}fit(t,e){let r=0,n=0,i=e.get(this.tabBar),a=this.tabBar.currentTitle,o=a?e.get(a.owner):void 0,[s,l]=this.sizers;return i&&i.fit(),o&&o.fit(),i&&!i.isHidden?(r=Math.max(r,i.minWidth),n+=i.minHeight,s.minSize=i.minHeight,s.maxSize=i.maxHeight):(s.minSize=0,s.maxSize=0),o&&!o.isHidden?(r=Math.max(r,o.minWidth),n+=o.minHeight,l.minSize=o.minHeight,l.maxSize=1/0):(l.minSize=0,l.maxSize=1/0),{minWidth:r,minHeight:n,maxWidth:1/0,maxHeight:1/0}}update(t,e,r,n,i,a){this._top=e,this._left=t,this._width=r,this._height=n;let o=a.get(this.tabBar),s=this.tabBar.currentTitle,l=s?a.get(s.owner):void 0;if(Q.calc(this.sizers,n),o&&!o.isHidden){let n=this.sizers[0].size;o.update(t,e,r,n),e+=n}if(l&&!l.isHidden){let n=this.sizers[1].size;l.update(t,e,r,n)}}}t.TabLayoutNode=r;class n{constructor(t){this.parent=null,this.normalized=!1,this.children=[],this.sizers=[],this.handles=[],this.orientation=t}*iterAllWidgets(){for(let t of this.children)yield*t.iterAllWidgets()}*iterUserWidgets(){for(let t of this.children)yield*t.iterUserWidgets()}*iterSelectedWidgets(){for(let t of this.children)yield*t.iterSelectedWidgets()}*iterTabBars(){for(let t of this.children)yield*t.iterTabBars()}*iterHandles(){yield*this.handles;for(let t of this.children)yield*t.iterHandles()}findTabNode(t){for(let e=0,r=this.children.length;et.createConfig())),sizes:e}}syncHandles(){this.handles.forEach(((t,e)=>{t.setAttribute("data-orientation",this.orientation),e===this.handles.length-1?t.classList.add("lm-mod-hidden"):t.classList.remove("lm-mod-hidden")}))}holdSizes(){for(let t of this.sizers)t.sizeHint=t.size}holdAllSizes(){for(let t of this.children)t.holdAllSizes();this.holdSizes()}normalizeSizes(){let t=this.sizers.length;if(0===t)return;this.holdSizes();let e=this.sizers.reduce(((t,e)=>t+e.sizeHint),0);if(0===e)for(let e of this.sizers)e.size=e.sizeHint=1/t;else for(let t of this.sizers)t.size=t.sizeHint/=e;this.normalized=!0}createNormalizedSizes(){let t=this.sizers.length;if(0===t)return[];let e=this.sizers.map((t=>t.size)),r=e.reduce(((t,e)=>t+e),0);if(0===r)for(let r=e.length-1;r>-1;r--)e[r]=1/t;else for(let t=e.length-1;t>-1;t--)e[t]/=r;return e}fit(t,e){let r="horizontal"===this.orientation,n=Math.max(0,this.children.length-1)*t,i=r?n:0,a=r?0:n;for(let n=0,o=this.children.length;nthis._createTabBar(),createHandle:()=>this._createHandle()};this.layout=new zt({document:this._document,renderer:r,spacing:e.spacing,hiddenMode:e.hiddenMode}),this.overlay=e.overlay||new t.Overlay,this.node.appendChild(this.overlay.node)}dispose(){this._releaseMouse(),this.overlay.hide(0),this._drag&&this._drag.dispose(),super.dispose()}get hiddenMode(){return this.layout.hiddenMode}set hiddenMode(t){this.layout.hiddenMode=t}get layoutModified(){return this._layoutModified}get addRequested(){return this._addRequested}get renderer(){return this.layout.renderer}get spacing(){return this.layout.spacing}set spacing(t){this.layout.spacing=t}get mode(){return this._mode}set mode(t){if(this._mode===t)return;this._mode=t,this.dataset.mode=t;let e=this.layout;switch(t){case"multiple-document":for(let t of e.tabBars())t.show();break;case"single-document":e.restoreLayout(Dt.createSingleDocumentConfig(this));break;default:throw"unreachable"}M.postMessage(this,Dt.LayoutModified)}get tabsMovable(){return this._tabsMovable}set tabsMovable(t){this._tabsMovable=t;for(let e of this.tabBars())e.tabsMovable=t}get tabsConstrained(){return this._tabsConstrained}set tabsConstrained(t){this._tabsConstrained=t}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(t){this._addButtonEnabled=t;for(let e of this.tabBars())e.addButtonEnabled=t}get isEmpty(){return this.layout.isEmpty}*widgets(){yield*this.layout.widgets()}*selectedWidgets(){yield*this.layout.selectedWidgets()}*tabBars(){yield*this.layout.tabBars()}*handles(){yield*this.layout.handles()}selectWidget(t){let e=(0,b.find)(this.tabBars(),(e=>-1!==e.titles.indexOf(t.title)));if(!e)throw new Error("Widget is not contained in the dock panel.");e.currentTitle=t.title}activateWidget(t){this.selectWidget(t),t.activate()}saveLayout(){return this.layout.saveLayout()}restoreLayout(t){this._mode="multiple-document",this.layout.restoreLayout(t),(a.IS_EDGE||a.IS_IE)&&M.flush(),M.postMessage(this,Dt.LayoutModified)}addWidget(t,e={}){"single-document"===this._mode?this.layout.addWidget(t):this.layout.addWidget(t,e),M.postMessage(this,Dt.LayoutModified)}processMessage(t){"layout-modified"===t.type?this._layoutModified.emit(void 0):super.processMessage(t)}handleEvent(t){switch(t.type){case"lm-dragenter":this._evtDragEnter(t);break;case"lm-dragleave":this._evtDragLeave(t);break;case"lm-dragover":this._evtDragOver(t);break;case"lm-drop":this._evtDrop(t);break;case"pointerdown":this._evtPointerDown(t);break;case"pointermove":this._evtPointerMove(t);break;case"pointerup":this._evtPointerUp(t);break;case"keydown":this._evtKeyDown(t);break;case"contextmenu":t.preventDefault(),t.stopPropagation()}}onBeforeAttach(t){this.node.addEventListener("lm-dragenter",this),this.node.addEventListener("lm-dragleave",this),this.node.addEventListener("lm-dragover",this),this.node.addEventListener("lm-drop",this),this.node.addEventListener("pointerdown",this)}onAfterDetach(t){this.node.removeEventListener("lm-dragenter",this),this.node.removeEventListener("lm-dragleave",this),this.node.removeEventListener("lm-dragover",this),this.node.removeEventListener("lm-drop",this),this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(t){Dt.isGeneratedTabBarProperty.get(t.child)||t.child.addClass("lm-DockPanel-widget")}onChildRemoved(t){Dt.isGeneratedTabBarProperty.get(t.child)||(t.child.removeClass("lm-DockPanel-widget"),M.postMessage(this,Dt.LayoutModified))}_evtDragEnter(t){t.mimeData.hasData("application/vnd.lumino.widget-factory")&&(t.preventDefault(),t.stopPropagation())}_evtDragLeave(t){t.preventDefault(),(!this._tabsConstrained||t.source===this)&&(t.stopPropagation(),this.overlay.hide(1))}_evtDragOver(t){t.preventDefault(),this._tabsConstrained&&t.source!==this||"invalid"===this._showOverlay(t.clientX,t.clientY)?t.dropAction="none":(t.stopPropagation(),t.dropAction=t.proposedAction)}_evtDrop(t){if(t.preventDefault(),this.overlay.hide(0),"none"===t.proposedAction)return void(t.dropAction="none");let{clientX:e,clientY:r}=t,{zone:n,target:i}=Dt.findDropTarget(this,e,r,this._edges);if(this._tabsConstrained&&t.source!==this||"invalid"===n)return void(t.dropAction="none");let a=t.mimeData.getData("application/vnd.lumino.widget-factory");if("function"!=typeof a)return void(t.dropAction="none");let o=a();if(!(o instanceof nt))return void(t.dropAction="none");if(o.contains(this))return void(t.dropAction="none");let s=i?Dt.getDropRef(i.tabBar):null;switch(n){case"root-all":this.addWidget(o);break;case"root-top":this.addWidget(o,{mode:"split-top"});break;case"root-left":this.addWidget(o,{mode:"split-left"});break;case"root-right":this.addWidget(o,{mode:"split-right"});break;case"root-bottom":this.addWidget(o,{mode:"split-bottom"});break;case"widget-all":case"widget-tab":this.addWidget(o,{mode:"tab-after",ref:s});break;case"widget-top":this.addWidget(o,{mode:"split-top",ref:s});break;case"widget-left":this.addWidget(o,{mode:"split-left",ref:s});break;case"widget-right":this.addWidget(o,{mode:"split-right",ref:s});break;case"widget-bottom":this.addWidget(o,{mode:"split-bottom",ref:s});break;default:throw"unreachable"}t.dropAction=t.proposedAction,t.stopPropagation(),this.activateWidget(o)}_evtKeyDown(t){t.preventDefault(),t.stopPropagation(),27===t.keyCode&&(this._releaseMouse(),M.postMessage(this,Dt.LayoutModified))}_evtPointerDown(t){if(0!==t.button)return;let e=this.layout,r=t.target,n=(0,b.find)(e.handles(),(t=>t.contains(r)));if(!n)return;t.preventDefault(),t.stopPropagation(),this._document.addEventListener("keydown",this,!0),this._document.addEventListener("pointerup",this,!0),this._document.addEventListener("pointermove",this,!0),this._document.addEventListener("contextmenu",this,!0);let i=n.getBoundingClientRect(),a=t.clientX-i.left,o=t.clientY-i.top,s=window.getComputedStyle(n),l=B.overrideCursor(s.cursor,this._document);this._pressData={handle:n,deltaX:a,deltaY:o,override:l}}_evtPointerMove(t){if(!this._pressData)return;t.preventDefault(),t.stopPropagation();let e=this.node.getBoundingClientRect(),r=t.clientX-e.left-this._pressData.deltaX,n=t.clientY-e.top-this._pressData.deltaY;this.layout.moveHandle(this._pressData.handle,r,n)}_evtPointerUp(t){0===t.button&&(t.preventDefault(),t.stopPropagation(),this._releaseMouse(),M.postMessage(this,Dt.LayoutModified))}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._document.removeEventListener("keydown",this,!0),this._document.removeEventListener("pointerup",this,!0),this._document.removeEventListener("pointermove",this,!0),this._document.removeEventListener("contextmenu",this,!0))}_showOverlay(t,e){let{zone:r,target:n}=Dt.findDropTarget(this,t,e,this._edges);if("invalid"===r)return this.overlay.hide(100),r;let a,o,s,l,c=i.boxSizing(this.node),u=this.node.getBoundingClientRect();switch(r){case"root-all":a=c.paddingTop,o=c.paddingLeft,s=c.paddingRight,l=c.paddingBottom;break;case"root-top":a=c.paddingTop,o=c.paddingLeft,s=c.paddingRight,l=u.height*Dt.GOLDEN_RATIO;break;case"root-left":a=c.paddingTop,o=c.paddingLeft,s=u.width*Dt.GOLDEN_RATIO,l=c.paddingBottom;break;case"root-right":a=c.paddingTop,o=u.width*Dt.GOLDEN_RATIO,s=c.paddingRight,l=c.paddingBottom;break;case"root-bottom":a=u.height*Dt.GOLDEN_RATIO,o=c.paddingLeft,s=c.paddingRight,l=c.paddingBottom;break;case"widget-all":a=n.top,o=n.left,s=n.right,l=n.bottom;break;case"widget-top":a=n.top,o=n.left,s=n.right,l=n.bottom+n.height/2;break;case"widget-left":a=n.top,o=n.left,s=n.right+n.width/2,l=n.bottom;break;case"widget-right":a=n.top,o=n.left+n.width/2,s=n.right,l=n.bottom;break;case"widget-bottom":a=n.top+n.height/2,o=n.left,s=n.right,l=n.bottom;break;case"widget-tab":{let t=n.tabBar.node.getBoundingClientRect().height;a=n.top,o=n.left,s=n.right,l=n.bottom+n.height-t;break}default:throw"unreachable"}return this.overlay.show({top:a,left:o,right:s,bottom:l}),r}_createTabBar(){let t=this._renderer.createTabBar(this._document);return Dt.isGeneratedTabBarProperty.set(t,!0),"single-document"===this._mode&&t.hide(),t.tabsMovable=this._tabsMovable,t.allowDeselect=!1,t.addButtonEnabled=this._addButtonEnabled,t.removeBehavior="select-previous-tab",t.insertBehavior="select-tab-if-needed",t.tabMoved.connect(this._onTabMoved,this),t.currentChanged.connect(this._onCurrentChanged,this),t.tabCloseRequested.connect(this._onTabCloseRequested,this),t.tabDetachRequested.connect(this._onTabDetachRequested,this),t.tabActivateRequested.connect(this._onTabActivateRequested,this),t.addRequested.connect(this._onTabAddRequested,this),t}_createHandle(){return this._renderer.createHandle()}_onTabMoved(){M.postMessage(this,Dt.LayoutModified)}_onCurrentChanged(t,e){let{previousTitle:r,currentTitle:n}=e;r&&r.owner.hide(),n&&n.owner.show(),(a.IS_EDGE||a.IS_IE)&&M.flush(),M.postMessage(this,Dt.LayoutModified)}_onTabAddRequested(t){this._addRequested.emit(t)}_onTabActivateRequested(t,e){e.title.owner.activate()}_onTabCloseRequested(t,e){e.title.owner.close()}_onTabDetachRequested(t,e){if(this._drag)return;t.releaseMouse();let{title:r,tab:n,clientX:i,clientY:a,offset:o}=e,s=new w.MimeData;s.setData("application/vnd.lumino.widget-factory",(()=>r.owner));let l=n.cloneNode(!0);o&&(l.style.top=`-${o.y}px`,l.style.left=`-${o.x}px`),this._drag=new B({document:this._document,mimeData:s,dragImage:l,proposedAction:"move",supportedActions:"move",source:this}),n.classList.add("lm-mod-hidden"),this._drag.start(i,a).then((()=>{this._drag=null,n.classList.remove("lm-mod-hidden")}))}};!function(t){t.Overlay=class{constructor(){this._timer=-1,this._hidden=!0,this.node=document.createElement("div"),this.node.classList.add("lm-DockPanel-overlay"),this.node.classList.add("lm-mod-hidden"),this.node.style.position="absolute",this.node.style.contain="strict"}show(t){let e=this.node.style;e.top=`${t.top}px`,e.left=`${t.left}px`,e.right=`${t.right}px`,e.bottom=`${t.bottom}px`,clearTimeout(this._timer),this._timer=-1,this._hidden&&(this._hidden=!1,this.node.classList.remove("lm-mod-hidden"))}hide(t){if(!this._hidden){if(t<=0)return clearTimeout(this._timer),this._timer=-1,this._hidden=!0,void this.node.classList.add("lm-mod-hidden");-1===this._timer&&(this._timer=window.setTimeout((()=>{this._timer=-1,this._hidden=!0,this.node.classList.add("lm-mod-hidden")}),t))}}};class e{createTabBar(t){let e=new Lt({document:t});return e.addClass("lm-DockPanel-tabBar"),e}createHandle(){let t=document.createElement("div");return t.className="lm-DockPanel-handle",t}}t.Renderer=e,t.defaultRenderer=new e}(Ot||(Ot={})),function(t){t.GOLDEN_RATIO=.618,t.DEFAULT_EDGES={top:12,right:40,bottom:40,left:40},t.LayoutModified=new E("layout-modified"),t.isGeneratedTabBarProperty=new I({name:"isGeneratedTabBar",create:()=>!1}),t.createSingleDocumentConfig=function(t){if(t.isEmpty)return{main:null};let e=Array.from(t.widgets()),r=t.selectedWidgets().next().value,n=r?e.indexOf(r):-1;return{main:{type:"tab-area",widgets:e,currentIndex:n}}},t.findDropTarget=function(t,e,r,n){if(!i.hitTest(t.node,e,r))return{zone:"invalid",target:null};let a=t.layout;if(a.isEmpty)return{zone:"root-all",target:null};if("multiple-document"===t.mode){let i=t.node.getBoundingClientRect(),a=e-i.left+1,o=r-i.top+1,s=i.right-e,l=i.bottom-r;switch(Math.min(o,s,l,a)){case o:if(op&&c>p&&l>f&&u>f)return{zone:"widget-all",target:o};switch(s/=p,l/=f,c/=p,u/=f,Math.min(s,l,c,u)){case s:h="widget-left";break;case l:h="widget-top";break;case c:h="widget-right";break;case u:h="widget-bottom";break;default:throw"unreachable"}return{zone:h,target:o}},t.getDropRef=function(t){return 0===t.titles.length?null:t.currentTitle?t.currentTitle.owner:t.titles[t.titles.length-1].owner}}(Dt||(Dt={}));var Rt,Ft=class t extends it{constructor(t={}){super(t),this._dirty=!1,this._rowSpacing=4,this._columnSpacing=4,this._items=[],this._rowStarts=[],this._columnStarts=[],this._rowSizers=[new tt],this._columnSizers=[new tt],this._box=null,void 0!==t.rowCount&&Rt.reallocSizers(this._rowSizers,t.rowCount),void 0!==t.columnCount&&Rt.reallocSizers(this._columnSizers,t.columnCount),void 0!==t.rowSpacing&&(this._rowSpacing=Rt.clampValue(t.rowSpacing)),void 0!==t.columnSpacing&&(this._columnSpacing=Rt.clampValue(t.columnSpacing))}dispose(){for(let t of this._items){let e=t.widget;t.dispose(),e.dispose()}this._box=null,this._items.length=0,this._rowStarts.length=0,this._rowSizers.length=0,this._columnStarts.length=0,this._columnSizers.length=0,super.dispose()}get rowCount(){return this._rowSizers.length}set rowCount(t){t!==this.rowCount&&(Rt.reallocSizers(this._rowSizers,t),this.parent&&this.parent.fit())}get columnCount(){return this._columnSizers.length}set columnCount(t){t!==this.columnCount&&(Rt.reallocSizers(this._columnSizers,t),this.parent&&this.parent.fit())}get rowSpacing(){return this._rowSpacing}set rowSpacing(t){t=Rt.clampValue(t),this._rowSpacing!==t&&(this._rowSpacing=t,this.parent&&this.parent.fit())}get columnSpacing(){return this._columnSpacing}set columnSpacing(t){t=Rt.clampValue(t),this._columnSpacing!==t&&(this._columnSpacing=t,this.parent&&this.parent.fit())}rowStretch(t){let e=this._rowSizers[t];return e?e.stretch:-1}setRowStretch(t,e){let r=this._rowSizers[t];r&&(e=Rt.clampValue(e),r.stretch!==e&&(r.stretch=e,this.parent&&this.parent.update()))}columnStretch(t){let e=this._columnSizers[t];return e?e.stretch:-1}setColumnStretch(t,e){let r=this._columnSizers[t];r&&(e=Rt.clampValue(e),r.stretch!==e&&(r.stretch=e,this.parent&&this.parent.update()))}*[Symbol.iterator](){for(let t of this._items)yield t.widget}addWidget(t){-1===b.ArrayExt.findFirstIndex(this._items,(e=>e.widget===t))&&(this._items.push(new ot(t)),this.parent&&this.attachWidget(t))}removeWidget(t){let e=b.ArrayExt.findFirstIndex(this._items,(e=>e.widget===t));if(-1===e)return;let r=b.ArrayExt.removeAt(this._items,e);this.parent&&this.detachWidget(t),r.dispose()}init(){super.init();for(let t of this)this.attachWidget(t)}attachWidget(t){this.parent.isAttached&&M.sendMessage(t,nt.Msg.BeforeAttach),this.parent.node.appendChild(t.node),this.parent.isAttached&&M.sendMessage(t,nt.Msg.AfterAttach),this.parent.fit()}detachWidget(t){this.parent.isAttached&&M.sendMessage(t,nt.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.isAttached&&M.sendMessage(t,nt.Msg.AfterDetach),this.parent.fit()}onBeforeShow(t){super.onBeforeShow(t),this.parent.update()}onBeforeAttach(t){super.onBeforeAttach(t),this.parent.fit()}onChildShown(t){this.parent.fit()}onChildHidden(t){this.parent.fit()}onResize(t){this.parent.isVisible&&this._update(t.width,t.height)}onUpdateRequest(t){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(t){this.parent.isAttached&&this._fit()}_fit(){for(let t=0,e=this.rowCount;t!t.isHidden));for(let t=0,r=e.length;t({row:0,column:0,rowSpan:1,columnSpan:1}),changed:function(t){t.parent&&t.parent.layout instanceof Ft&&t.parent.fit()}}),t.normalizeConfig=function(t){return{row:Math.max(0,Math.floor(t.row||0)),column:Math.max(0,Math.floor(t.column||0)),rowSpan:Math.max(1,Math.floor(t.rowSpan||0)),columnSpan:Math.max(1,Math.floor(t.columnSpan||0))}},t.clampValue=function(t){return Math.max(0,Math.floor(t))},t.rowSpanCmp=function(e,r){let n=t.cellConfigProperty.get(e.widget),i=t.cellConfigProperty.get(r.widget);return n.rowSpan-i.rowSpan},t.columnSpanCmp=function(e,r){let n=t.cellConfigProperty.get(e.widget),i=t.cellConfigProperty.get(r.widget);return n.columnSpan-i.columnSpan},t.reallocSizers=function(t,e){for(e=Math.max(1,Math.floor(e));t.lengthe&&(t.length=e)},t.distributeMin=function(t,e,r,n){if(r=n)return;let a=(n-i)/(r-e+1);for(let n=e;n<=r;++n)t[n].minSize+=a}}(Rt||(Rt={}));var Bt,jt,Nt=class t extends nt{constructor(e={}){super({node:Bt.createNode()}),this._activeIndex=-1,this._tabFocusIndex=0,this._menus=[],this._childMenu=null,this._overflowMenu=null,this._menuItemSizes=[],this._overflowIndex=-1,this.addClass("lm-MenuBar"),this.setFlag(nt.Flag.DisallowLayout),this.renderer=e.renderer||t.defaultRenderer,this._forceItemsPosition=e.forceItemsPosition||{forceX:!0,forceY:!0},this._overflowMenuOptions=e.overflowMenuOptions||{isVisible:!0}}dispose(){this._closeChildMenu(),this._menus.length=0,super.dispose()}get childMenu(){return this._childMenu}get overflowIndex(){return this._overflowIndex}get overflowMenu(){return this._overflowMenu}get contentNode(){return this.node.getElementsByClassName("lm-MenuBar-content")[0]}get activeMenu(){return this._menus[this._activeIndex]||null}set activeMenu(t){this.activeIndex=t?this._menus.indexOf(t):-1}get activeIndex(){return this._activeIndex}set activeIndex(t){(t<0||t>=this._menus.length)&&(t=-1),t>-1&&0===this._menus[t].items.length&&(t=-1),this._activeIndex!==t&&(this._activeIndex=t,this.update())}get menus(){return this._menus}openActiveMenu(){-1!==this._activeIndex&&(this._openChildMenu(),this._childMenu&&(this._childMenu.activeIndex=-1,this._childMenu.activateNextItem()))}addMenu(t,e=!0){this.insertMenu(this._menus.length,t,e)}insertMenu(t,e,r=!0){this._closeChildMenu();let n=this._menus.indexOf(e),i=Math.max(0,Math.min(t,this._menus.length));if(-1===n)return b.ArrayExt.insert(this._menus,i,e),e.addClass("lm-MenuBar-menu"),e.aboutToClose.connect(this._onMenuAboutToClose,this),e.menuRequested.connect(this._onMenuMenuRequested,this),e.title.changed.connect(this._onTitleChanged,this),void(r&&this.update());i===this._menus.length&&i--,n!==i&&(b.ArrayExt.move(this._menus,n,i),r&&this.update())}removeMenu(t,e=!0){this.removeMenuAt(this._menus.indexOf(t),e)}removeMenuAt(t,e=!0){this._closeChildMenu();let r=b.ArrayExt.removeAt(this._menus,t);r&&(r.aboutToClose.disconnect(this._onMenuAboutToClose,this),r.menuRequested.disconnect(this._onMenuMenuRequested,this),r.title.changed.disconnect(this._onTitleChanged,this),r.removeClass("lm-MenuBar-menu"),e&&this.update())}clearMenus(){if(0!==this._menus.length){this._closeChildMenu();for(let t of this._menus)t.aboutToClose.disconnect(this._onMenuAboutToClose,this),t.menuRequested.disconnect(this._onMenuMenuRequested,this),t.title.changed.disconnect(this._onTitleChanged,this),t.removeClass("lm-MenuBar-menu");this._menus.length=0,this.update()}}handleEvent(t){switch(t.type){case"keydown":this._evtKeyDown(t);break;case"mousedown":this._evtMouseDown(t);break;case"mousemove":this._evtMouseMove(t);break;case"focusout":this._evtFocusOut(t);break;case"contextmenu":t.preventDefault(),t.stopPropagation()}}onBeforeAttach(t){this.node.addEventListener("keydown",this),this.node.addEventListener("mousedown",this),this.node.addEventListener("mousemove",this),this.node.addEventListener("focusout",this),this.node.addEventListener("contextmenu",this)}onAfterDetach(t){this.node.removeEventListener("keydown",this),this.node.removeEventListener("mousedown",this),this.node.removeEventListener("mousemove",this),this.node.removeEventListener("focusout",this),this.node.removeEventListener("contextmenu",this),this._closeChildMenu()}onActivateRequest(t){this.isAttached&&this._focusItemAt(0)}onResize(t){this.update(),super.onResize(t)}onUpdateRequest(t){var e;let r=this._menus,n=this.renderer,i=this._activeIndex,a=this._tabFocusIndex>=0&&this._tabFocusIndex-1?this._overflowIndex:r.length,s=0,l=!1;o=null!==this._overflowMenu?o-1:o;let c=new Array(o);for(let t=0;t{this._tabFocusIndex=t,this.activeIndex=t}}),s+=this._menuItemSizes[t],r[t].title.label===this._overflowMenuOptions.title&&(l=!0,o--);if(this._overflowMenuOptions.isVisible)if(this._overflowIndex>-1&&!l){if(null===this._overflowMenu){let t=null!==(e=this._overflowMenuOptions.title)&&void 0!==e?e:"...";this._overflowMenu=new Et({commands:new W}),this._overflowMenu.title.label=t,this._overflowMenu.title.mnemonic=0,this.addMenu(this._overflowMenu,!1)}for(let t=r.length-2;t>=o;t--){let e=this.menus[t];e.title.mnemonic=0,this._overflowMenu.insertItem(0,{type:"submenu",submenu:e}),this.removeMenu(e,!1)}c[o]=n.renderItem({title:this._overflowMenu.title,active:o===i&&0!==r[o].items.length,tabbable:o===a,disabled:0===r[o].items.length,onfocus:()=>{this._tabFocusIndex=o,this.activeIndex=o}}),o++}else if(null!==this._overflowMenu){let t=this._overflowMenu.items,e=this.node.offsetWidth,i=this._overflowMenu.items.length;for(let l=0;lthis._menuItemSizes[i]){let e=t[0].submenu;this._overflowMenu.removeItemAt(0),this.insertMenu(o,e,!1),c[o]=n.renderItem({title:e.title,active:!1,tabbable:o===a,disabled:0===r[o].items.length,onfocus:()=>{this._tabFocusIndex=o,this.activeIndex=o}}),o++}}0===this._overflowMenu.items.length&&(this.removeMenu(this._overflowMenu,!1),c.pop(),this._overflowMenu=null,this._overflowIndex=-1)}Z.render(c,this.contentNode),this._updateOverflowIndex()}_updateOverflowIndex(){if(!this._overflowMenuOptions.isVisible)return;let t=this.contentNode.childNodes,e=this.node.offsetWidth,r=0,n=-1,i=t.length;if(0==this._menuItemSizes.length)for(let a=0;ae&&-1===n&&(n=a)}else for(let t=0;te){n=t;break}this._overflowIndex=n}_evtKeyDown(t){let e=t.keyCode;if(9===e)return void(this.activeIndex=-1);if(t.preventDefault(),t.stopPropagation(),13===e||32===e||38===e||40===e){if(this.activeIndex=this._tabFocusIndex,this.activeIndex!==this._tabFocusIndex)return;return void this.openActiveMenu()}if(27===e)return this._closeChildMenu(),void this._focusItemAt(this.activeIndex);if(37===e||39===e){let t=37===e?-1:1,r=this._tabFocusIndex+t,n=this._menus.length;for(let e=0;ei.hitTest(e,t.clientX,t.clientY)));if(-1!==e){if(0===t.button)if(this._childMenu)this._closeChildMenu(),this.activeIndex=e;else{t.preventDefault();let r=this._positionForMenu(e);Et.saveWindowData(),this.activeIndex=e,this._openChildMenu(r)}}else this._closeChildMenu()}_evtMouseMove(t){let e=b.ArrayExt.findFirstIndex(this.contentNode.children,(e=>i.hitTest(e,t.clientX,t.clientY)));if(e===this._activeIndex||-1===e&&this._childMenu)return;let r=e>=0&&this._childMenu?this._positionForMenu(e):null;Et.saveWindowData(),this.activeIndex=e,r&&this._openChildMenu(r)}_positionForMenu(t){let e=this.contentNode.children[t],{left:r,bottom:n}=e.getBoundingClientRect();return{top:n,left:r}}_evtFocusOut(t){!this._childMenu&&!this.node.contains(t.relatedTarget)&&(this.activeIndex=-1)}_focusItemAt(t){let e=this.contentNode.childNodes[t];e&&e.focus()}_openChildMenu(t={}){let e=this.activeMenu;if(!e)return void this._closeChildMenu();let r=this._childMenu;if(r===e)return;this._childMenu=e,r?r.close():document.addEventListener("mousedown",this,!0),this._tabFocusIndex=this.activeIndex,M.sendMessage(this,nt.Msg.UpdateRequest);let{left:n,top:i}=t;(typeof n>"u"||typeof i>"u")&&({left:n,top:i}=this._positionForMenu(this._activeIndex)),r||this.addClass("lm-mod-active"),e.items.length>0&&e.open(n,i,this._forceItemsPosition)}_closeChildMenu(){if(!this._childMenu)return;this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0);let t=this._childMenu;this._childMenu=null,t.close(),this.activeIndex=-1}_onMenuAboutToClose(t){t===this._childMenu&&(this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0),this._childMenu=null,this.activeIndex=-1)}_onMenuMenuRequested(t,e){if(t!==this._childMenu)return;let r=this._activeIndex,n=this._menus.length;switch(e){case"next":this.activeIndex=r===n-1?0:r+1;break;case"previous":this.activeIndex=0===r?n-1:r-1}this.openActiveMenu()}_onTitleChanged(){this.update()}};!function(t){class e{renderItem(t){let e=this.createItemClass(t),r=this.createItemDataset(t),n=this.createItemARIA(t);return J.li({className:e,dataset:r,...t.disabled?{}:{tabindex:t.tabbable?"0":"-1"},onfocus:t.onfocus,...n},this.renderIcon(t),this.renderLabel(t))}renderIcon(t){let e=this.createIconClass(t);return J.div({className:e},t.title.icon,t.title.iconLabel)}renderLabel(t){let e=this.formatLabel(t);return J.div({className:"lm-MenuBar-itemLabel"},e)}createItemClass(t){let e="lm-MenuBar-item";return t.title.className&&(e+=` ${t.title.className}`),t.active&&!t.disabled&&(e+=" lm-mod-active"),e}createItemDataset(t){return t.title.dataset}createItemARIA(t){return{role:"menuitem","aria-haspopup":"true","aria-disabled":t.disabled?"true":"false"}}createIconClass(t){let e="lm-MenuBar-itemIcon",r=t.title.iconClass;return r?`${e} ${r}`:e}formatLabel(t){let{label:e,mnemonic:r}=t.title;if(r<0||r>=e.length)return e;let n=e.slice(0,r),i=e.slice(r+1),a=e[r];return[n,J.span({className:"lm-MenuBar-itemMnemonic"},a),i]}}t.Renderer=e,t.defaultRenderer=new e}(Nt||(Nt={})),function(t){t.createNode=function(){let t=document.createElement("div"),e=document.createElement("ul");return e.className="lm-MenuBar-content",t.appendChild(e),e.setAttribute("role","menubar"),t},t.findMnemonic=function(t,e,r){let n=-1,i=-1,a=!1,o=e.toUpperCase();for(let e=0,s=t.length;e=0&&u1&&this.widgets.forEach((t=>{t.hiddenMode=this._hiddenMode})))}dispose(){for(let t of this._items)t.dispose();this._box=null,this._items.length=0,super.dispose()}attachWidget(t,e){this._hiddenMode===nt.HiddenMode.Scale&&this._items.length>0?(1===this._items.length&&(this.widgets[0].hiddenMode=nt.HiddenMode.Scale),e.hiddenMode=nt.HiddenMode.Scale):e.hiddenMode=nt.HiddenMode.Display,b.ArrayExt.insert(this._items,t,new ot(e)),this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeAttach),this.parent.node.appendChild(e.node),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterAttach),this.parent.fit()}moveWidget(t,e,r){b.ArrayExt.move(this._items,t,e),this.parent.update()}detachWidget(t,e){let r=b.ArrayExt.removeAt(this._items,t);this.parent.isAttached&&M.sendMessage(e,nt.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.isAttached&&M.sendMessage(e,nt.Msg.AfterDetach),r.widget.node.style.zIndex="",this._hiddenMode===nt.HiddenMode.Scale&&(e.hiddenMode=nt.HiddenMode.Display,1===this._items.length&&(this._items[0].widget.hiddenMode=nt.HiddenMode.Display)),r.dispose(),this.parent.fit()}onBeforeShow(t){super.onBeforeShow(t),this.parent.update()}onBeforeAttach(t){super.onBeforeAttach(t),this.parent.fit()}onChildShown(t){this.parent.fit()}onChildHidden(t){this.parent.fit()}onResize(t){this.parent.isVisible&&this._update(t.width,t.height)}onUpdateRequest(t){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(t){this.parent.isAttached&&this._fit()}_fit(){let t=0,e=0;for(let r=0,n=this._items.length;r{this.createGraph(this._model)}))}renderModel(t){if(this.hasGraphElement())return Promise.resolve();this._model=t;let e=t.data["image/png"];return null!=e?(this.updateImage(e),Promise.resolve()):this.createGraph(t)}hasGraphElement(){return null!==this.node.querySelector(".plot-container")}updateImage(t){this.hideGraph(),this._img_el.src="data:image/png;base64,"+t,this.showImage()}hideGraph(){let t=this.node.querySelector(".plot-container");null!=t&&(t.style.display="none")}showGraph(){let t=this.node.querySelector(".plot-container");null!=t&&(t.style.display="block")}hideImage(){let t=this.node.querySelector(".plot-img");null!=t&&(t.style.display="none")}showImage(){let t=this.node.querySelector(".plot-img");null!=t&&(t.style.display="block")}createGraph(e){let{data:r,layout:n,frames:i,config:a}=e.data[this._mimeType];return n.height||(n.height=360),(async()=>(null===t.Plotly&&(t.Plotly=await Promise.resolve().then((()=>y(_()))),t._resolveLoadingPlotly()),t.loadingPlotly))().then((()=>t.Plotly.react(this.node,r,n,a))).then((r=>{this.showGraph(),this.hideImage(),this.update(),i&&t.Plotly.addFrames(this.node,i),this.node.offsetWidth>0&&this.node.offsetHeight>0&&t.Plotly.toImage(r,{format:"png",width:this.node.offsetWidth,height:this.node.offsetHeight}).then((t=>{let r=t.split(",")[1];e.data["image/png"]!==r&&e.setData({data:{...e.data,"image/png":r}})})),this.node.on("plotly_webglcontextlost",(()=>{let t=e.data["image/png"];if(null!=t)return this.updateImage(t),Promise.resolve()}))}))}onAfterShow(t){this.update()}onResize(t){this.update()}onUpdateRequest(e){t.Plotly&&this.isVisible&&this.hasGraphElement()&&t.Plotly.redraw(this.node).then((()=>{t.Plotly.Plots.resize(this.node)}))}static{this.Plotly=null}static{this.loadingPlotly=new Promise((e=>{t._resolveLoadingPlotly=e}))}},Wt={safe:!0,mimeTypes:[Ht],createRenderer:t=>new Gt(t)},Zt=[{id:"@jupyterlab/plotly-extension:factory",rendererFactory:Wt,rank:2,dataType:"json",fileTypes:[{name:"plotly",mimeTypes:[Ht],extensions:[".plotly",".plotly.json"],iconClass:"jp-MaterialIcon jp-PlotlyIcon"}],documentWidgetFactoryOptions:{name:"Plotly",primaryFileType:"plotly",fileTypes:["plotly","json"],defaultFor:["plotly"]}}]},606:t=>{var e,r,n=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function o(t){if(e===setTimeout)return setTimeout(t,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(r){try{return e.call(null,t,0)}catch(r){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:i}catch(t){e=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var s,l=[],c=!1,u=-1;function h(){c&&s&&(c=!1,s.length?l=s.concat(l):u=-1,l.length&&p())}function p(){if(!c){var t=o(h);c=!0;for(var e=l.length;e;){for(s=l,l=[];++u1)for(var r=1;r + * @license MIT + *) + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + (*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! + * pad-left + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT license. + *) + (*! + * repeat-string + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + *) + (*! Bundled license information: + + native-promise-only/lib/npo.src.js: + (*! Native Promise Only + v0.8.1 (c) Kyle Simpson + MIT License: http://getify.mit-license.org + *) + + polybooljs/index.js: + (* + * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc + * @license MIT + * @preserve Project Home: https://github.com/voidqk/polybooljs + *) + + ieee754/index.js: + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + + buffer/index.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + + assert/build/internal/util/comparisons.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) + + maplibre-gl/dist/maplibre-gl.js: + (** + * MapLibre GL JS + * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt + *) + *) +*/ diff --git a/plotly/labextension/static/remoteEntry.ee69569354eef8c6803d.js b/plotly/labextension/static/remoteEntry.ee69569354eef8c6803d.js new file mode 100644 index 0000000000..60befe69d1 --- /dev/null +++ b/plotly/labextension/static/remoteEntry.ee69569354eef8c6803d.js @@ -0,0 +1 @@ +var _JUPYTERLAB;(()=>{"use strict";var e,r,t={681:(e,r,t)=>{var o={"./index":()=>t.e(340).then((()=>()=>t(340))),"./mimeExtension":()=>t.e(340).then((()=>()=>t(340)))},a=(e,r)=>(t.R=r,r=t.o(o,e)?o[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),n=(e,r)=>{if(t.S){var o="default",a=t.S[o];if(a&&a!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[o]=e,t.I(o,r)}};t.d(r,{get:()=>a,init:()=>n})}},o={};function a(e){var r=o[e];if(void 0!==r)return r.exports;var n=o[e]={exports:{}};return t[e](n,n.exports,a),n.exports}a.m=t,a.c=o,a.amdO={},a.d=(e,r)=>{for(var t in r)a.o(r,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((r,t)=>(a.f[t](e,r),r)),[])),a.u=e=>e+".2a23c8275d47a2531dae.js?v=2a23c8275d47a2531dae",a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="jupyterlab-plotly:",a.l=(t,o,n,i)=>{if(e[t])e[t].push(o);else{var l,u;if(void 0!==n)for(var d=document.getElementsByTagName("script"),p=0;p{l.onerror=l.onload=null,clearTimeout(f);var a=e[t];if(delete e[t],l.parentNode&&l.parentNode.removeChild(l),a&&a.forEach((e=>e(o))),r)return r(o)},f=setTimeout(c.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=c.bind(null,l.onerror),l.onload=c.bind(null,l.onload),u&&document.head.appendChild(l)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{a.S={};var e={},r={};a.I=(t,o)=>{o||(o=[]);var n=r[t];if(n||(n=r[t]={}),!(o.indexOf(n)>=0)){if(o.push(n),e[t])return e[t];a.o(a.S,t)||(a.S[t]={});var i=a.S[t],l="jupyterlab-plotly",u=[];return"default"===t&&((e,r,t,o)=>{var n=i[e]=i[e]||{},u=n[r];(!u||!u.loaded&&(1!=!u.eager?o:l>u.from))&&(n[r]={get:()=>a.e(340).then((()=>()=>a(340))),from:l,eager:!1})})("jupyterlab-plotly","6.0.1"),e[t]=u.length?Promise.all(u).then((()=>e[t]=1)):1}}})(),(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var r=a.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var o=t.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=t[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{var e={80:0};a.f.j=(r,t)=>{var o=a.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else{var n=new Promise(((t,a)=>o=e[r]=[t,a]));t.push(o[2]=n);var i=a.p+a.u(r),l=new Error;a.l(i,(t=>{if(a.o(e,r)&&(0!==(o=e[r])&&(e[r]=void 0),o)){var n=t&&("load"===t.type?"missing":t.type),i=t&&t.target&&t.target.src;l.message="Loading chunk "+r+" failed.\n("+n+": "+i+")",l.name="ChunkLoadError",l.type=n,l.request=i,o[1](l)}}),"chunk-"+r,r)}};var r=(r,t)=>{var o,n,[i,l,u]=t,d=0;if(i.some((r=>0!==e[r]))){for(o in l)a.o(l,o)&&(a.m[o]=l[o]);u&&u(a)}for(r&&r(t);d\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n" + } + ] +} \ No newline at end of file diff --git a/plotly/package_data/widgetbundle.js b/plotly/package_data/widgetbundle.js new file mode 100644 index 0000000000..c9806b0bad --- /dev/null +++ b/plotly/package_data/widgetbundle.js @@ -0,0 +1,3906 @@ +var OW=Object.create;var jC=Object.defineProperty;var BW=Object.getOwnPropertyDescriptor;var NW=Object.getOwnPropertyNames;var UW=Object.getPrototypeOf,jW=Object.prototype.hasOwnProperty;var VW=(le,me)=>()=>(me||le((me={exports:{}}).exports,me),me.exports);var qW=(le,me,Xe,Mt)=>{if(me&&typeof me=="object"||typeof me=="function")for(let rr of NW(me))!jW.call(le,rr)&&rr!==Xe&&jC(le,rr,{get:()=>me[rr],enumerable:!(Mt=BW(me,rr))||Mt.enumerable});return le};var HW=(le,me,Xe)=>(Xe=le!=null?OW(UW(le)):{},qW(me||!le||!le.__esModule?jC(Xe,"default",{value:le,enumerable:!0}):Xe,le));var $8=VW((J8,l2)=>{(function(le,me){typeof l2=="object"&&l2.exports?l2.exports=me():le.moduleName=me()})(typeof self<"u"?self:J8,()=>{"use strict";var le=(()=>{var me=Object.create,Xe=Object.defineProperty,Mt=Object.defineProperties,rr=Object.getOwnPropertyDescriptor,Nr=Object.getOwnPropertyDescriptors,xa=Object.getOwnPropertyNames,Ha=Object.getOwnPropertySymbols,Za=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable,gn=(X,H,g)=>H in X?Xe(X,H,{enumerable:!0,configurable:!0,writable:!0,value:g}):X[H]=g,wo=(X,H)=>{for(var g in H||(H={}))un.call(H,g)&&gn(X,g,H[g]);if(Ha)for(var g of Ha(H))Ji.call(H,g)&&gn(X,g,H[g]);return X},ps=(X,H)=>Mt(X,Nr(H)),Qn=(X,H)=>function(){return X&&(H=(0,X[xa(X)[0]])(X=0)),H},Ye=(X,H)=>function(){return H||(0,X[xa(X)[0]])((H={exports:{}}).exports,H),H.exports},Ps=(X,H)=>{for(var g in H)Xe(X,g,{get:H[g],enumerable:!0})},Ml=(X,H,g,x)=>{if(H&&typeof H=="object"||typeof H=="function")for(let A of xa(H))!un.call(X,A)&&A!==g&&Xe(X,A,{get:()=>H[A],enumerable:!(x=rr(H,A))||x.enumerable});return X},Ul=(X,H,g)=>(g=X!=null?me(Za(X)):{},Ml(H||!X||!X.__esModule?Xe(g,"default",{value:X,enumerable:!0}):g,X)),Hf=X=>Ml(Xe({},"__esModule",{value:!0}),X),xh=Ye({"src/version.js"(X){"use strict";X.version="3.0.1"}}),Bp=Ye({"node_modules/native-promise-only/lib/npo.src.js"(X,H){(function(x,A,M){A[x]=A[x]||M(),typeof H<"u"&&H.exports&&(H.exports=A[x])})("Promise",typeof window<"u"?window:X,function(){"use strict";var x,A,M,e=Object.prototype.toString,t=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),x=function(_,w,S,E){return Object.defineProperty(_,w,{value:S,writable:!0,configurable:E!==!1})}}catch{x=function(w,S,E){return w[S]=E,w}}M=function(){var _,w,S;function E(m,b){this.fn=m,this.self=b,this.next=void 0}return{add:function(b,d){S=new E(b,d),w?w.next=S:_=S,w=S,S=void 0},drain:function(){var b=_;for(_=w=A=void 0;b;)b.fn.call(b.self),b=b.next}}}();function r(l,_){M.add(l,_),A||(A=t(M.drain))}function o(l){var _,w=typeof l;return l!=null&&(w=="object"||w=="function")&&(_=l.then),typeof _=="function"?_:!1}function a(){for(var l=0;l0&&r(a,w))}catch(S){s.call(new h(w),S)}}}function s(l){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=l,_.state=2,_.chain.length>0&&r(a,_))}function c(l,_,w,S){for(var E=0;E<_.length;E++)(function(b){l.resolve(_[b]).then(function(u){w(b,u)},S)})(E)}function h(l){this.def=l,this.triggered=!1}function v(l){this.promise=l,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function p(l){if(typeof l!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new v(this);this.then=function(S,E){var m={success:typeof S=="function"?S:!0,failure:typeof E=="function"?E:!1};return m.promise=new this.constructor(function(d,u){if(typeof d!="function"||typeof u!="function")throw TypeError("Not a function");m.resolve=d,m.reject=u}),_.chain.push(m),_.state!==0&&r(a,_),m.promise},this.catch=function(S){return this.then(void 0,S)};try{l.call(void 0,function(S){n.call(_,S)},function(S){s.call(_,S)})}catch(w){s.call(_,w)}}var T=x({},"constructor",p,!1);return p.prototype=T,x(T,"__NPO__",0,!1),x(p,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");E(_)})}),x(p,"reject",function(_){return new this(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");E(_)})}),x(p,"all",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");var b=_.length,d=Array(b),u=0;c(w,_,function(f,P){d[f]=P,++u===b&&E(d)},m)})}),x(p,"race",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");c(w,_,function(d,u){E(u)},m)})}),p})}}),_n=Ye({"node_modules/@plotly/d3/d3.js"(X,H){(function(){var g={version:"3.8.2"},x=[].slice,A=function(de){return x.call(de)},M=self.document;function e(de){return de&&(de.ownerDocument||de.document||de).documentElement}function t(de){return de&&(de.ownerDocument&&de.ownerDocument.defaultView||de.document&&de||de.defaultView)}if(M)try{A(M.documentElement.childNodes)[0].nodeType}catch{A=function(Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=Re[$e];return pt}}if(Date.now||(Date.now=function(){return+new Date}),M)try{M.createElement("DIV").style.setProperty("opacity",0,"")}catch{var r=this.Element.prototype,o=r.setAttribute,a=r.setAttributeNS,i=this.CSSStyleDeclaration.prototype,n=i.setProperty;r.setAttribute=function(Re,$e){o.call(this,Re,$e+"")},r.setAttributeNS=function(Re,$e,pt){a.call(this,Re,$e,pt+"")},i.setProperty=function(Re,$e,pt){n.call(this,Re,$e+"",pt)}}g.ascending=s;function s(de,Re){return deRe?1:de>=Re?0:NaN}g.descending=function(de,Re){return Rede?1:Re>=de?0:NaN},g.min=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e=wt){vt=wt;break}for(;++$ewt&&(vt=wt)}else{for(;++$e=wt){vt=wt;break}for(;++$ewt&&(vt=wt)}return vt},g.max=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e=wt){vt=wt;break}for(;++$evt&&(vt=wt)}else{for(;++$e=wt){vt=wt;break}for(;++$evt&&(vt=wt)}return vt},g.extent=function(de,Re){var $e=-1,pt=de.length,vt,wt,Jt;if(arguments.length===1){for(;++$e=wt){vt=Jt=wt;break}for(;++$ewt&&(vt=wt),Jt=wt){vt=Jt=wt;break}for(;++$ewt&&(vt=wt),Jt1)return Jt/(or-1)},g.deviation=function(){var de=g.variance.apply(this,arguments);return de&&Math.sqrt(de)};function v(de){return{left:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt>>1;de(Re[wt],$e)<0?pt=wt+1:vt=wt}return pt},right:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt>>1;de(Re[wt],$e)>0?vt=wt:pt=wt+1}return pt}}}var p=v(s);g.bisectLeft=p.left,g.bisect=g.bisectRight=p.right,g.bisector=function(de){return v(de.length===1?function(Re,$e){return s(de(Re),$e)}:de)},g.shuffle=function(de,Re,$e){(pt=arguments.length)<3&&($e=de.length,pt<2&&(Re=0));for(var pt=$e-Re,vt,wt;pt;)wt=Math.random()*pt--|0,vt=de[pt+Re],de[pt+Re]=de[wt+Re],de[wt+Re]=vt;return de},g.permute=function(de,Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=de[Re[$e]];return pt},g.pairs=function(de){for(var Re=0,$e=de.length-1,pt,vt=de[0],wt=new Array($e<0?0:$e);Re<$e;)wt[Re]=[pt=vt,vt=de[++Re]];return wt},g.transpose=function(de){if(!(wt=de.length))return[];for(var Re=-1,$e=g.min(de,T),pt=new Array($e);++Re<$e;)for(var vt=-1,wt,Jt=pt[Re]=new Array(wt);++vt=0;)for(Jt=de[Re],$e=Jt.length;--$e>=0;)wt[--vt]=Jt[$e];return wt};var l=Math.abs;g.range=function(de,Re,$e){if(arguments.length<3&&($e=1,arguments.length<2&&(Re=de,de=0)),(Re-de)/$e===1/0)throw new Error("infinite range");var pt=[],vt=_(l($e)),wt=-1,Jt;if(de*=vt,Re*=vt,$e*=vt,$e<0)for(;(Jt=de+$e*++wt)>Re;)pt.push(Jt/vt);else for(;(Jt=de+$e*++wt)=Re.length)return vt?vt.call(de,or):pt?or.sort(pt):or;for(var Or=-1,va=or.length,fa=Re[Dr++],Va,Xa,_a,Ra=new S,Na;++Or=Re.length)return Rt;var Dr=[],Or=$e[or++];return Rt.forEach(function(va,fa){Dr.push({key:va,values:Jt(fa,or)})}),Or?Dr.sort(function(va,fa){return Or(va.key,fa.key)}):Dr}return de.map=function(Rt,or){return wt(or,Rt,0)},de.entries=function(Rt){return Jt(wt(g.map,Rt,0),0)},de.key=function(Rt){return Re.push(Rt),de},de.sortKeys=function(Rt){return $e[Re.length-1]=Rt,de},de.sortValues=function(Rt){return pt=Rt,de},de.rollup=function(Rt){return vt=Rt,de},de},g.set=function(de){var Re=new z;if(de)for(var $e=0,pt=de.length;$e=0&&(pt=de.slice($e+1),de=de.slice(0,$e)),de)return arguments.length<2?this[de].on(pt):this[de].on(pt,Re);if(arguments.length===2){if(Re==null)for(de in this)this.hasOwnProperty(de)&&this[de].on(pt,null);return this}};function W(de){var Re=[],$e=new S;function pt(){for(var vt=Re,wt=-1,Jt=vt.length,Rt;++wt=0&&($e=de.slice(0,Re))!=="xmlns"&&(de=de.slice(Re+1)),fe.hasOwnProperty($e)?{space:fe[$e],local:de}:de}},ne.attr=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node();return de=g.ns.qualify(de),de.local?$e.getAttributeNS(de.space,de.local):$e.getAttribute(de)}for(Re in de)this.each(be(Re,de[Re]));return this}return this.each(be(de,Re))};function be(de,Re){de=g.ns.qualify(de);function $e(){this.removeAttribute(de)}function pt(){this.removeAttributeNS(de.space,de.local)}function vt(){this.setAttribute(de,Re)}function wt(){this.setAttributeNS(de.space,de.local,Re)}function Jt(){var or=Re.apply(this,arguments);or==null?this.removeAttribute(de):this.setAttribute(de,or)}function Rt(){var or=Re.apply(this,arguments);or==null?this.removeAttributeNS(de.space,de.local):this.setAttributeNS(de.space,de.local,or)}return Re==null?de.local?pt:$e:typeof Re=="function"?de.local?Rt:Jt:de.local?wt:vt}function Ae(de){return de.trim().replace(/\s+/g," ")}ne.classed=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node(),pt=(de=Ie(de)).length,vt=-1;if(Re=$e.classList){for(;++vt=0;)(wt=$e[pt])&&(vt&&vt!==wt.nextSibling&&vt.parentNode.insertBefore(wt,vt),vt=wt);return this},ne.sort=function(de){de=ze.apply(this,arguments);for(var Re=-1,$e=this.length;++Re<$e;)this[Re].sort(de);return this.order()};function ze(de){return arguments.length||(de=s),function(Re,$e){return Re&&$e?de(Re.__data__,$e.__data__):!Re-!$e}}ne.each=function(de){return tt(this,function(Re,$e,pt){de.call(Re,Re.__data__,$e,pt)})};function tt(de,Re){for(var $e=0,pt=de.length;$e=Re&&(Re=vt+1);!(or=Jt[Re])&&++Re0&&(de=de.slice(0,vt));var Jt=Ot.get(de);Jt&&(de=Jt,wt=ur);function Rt(){var Or=this[pt];Or&&(this.removeEventListener(de,Or,Or.$),delete this[pt])}function or(){var Or=wt(Re,A(arguments));Rt.call(this),this.addEventListener(de,this[pt]=Or,Or.$=$e),Or._=Re}function Dr(){var Or=new RegExp("^__on([^.]+)"+g.requote(de)+"$"),va;for(var fa in this)if(va=fa.match(Or)){var Va=this[fa];this.removeEventListener(va[1],Va,Va.$),delete this[fa]}}return vt?Re?or:Rt:Re?N:Dr}var Ot=g.map({mouseenter:"mouseover",mouseleave:"mouseout"});M&&Ot.forEach(function(de){"on"+de in M&&Ot.remove(de)});function jt(de,Re){return function($e){var pt=g.event;g.event=$e,Re[0]=this.__data__;try{de.apply(this,Re)}finally{g.event=pt}}}function ur(de,Re){var $e=jt(de,Re);return function(pt){var vt=this,wt=pt.relatedTarget;(!wt||wt!==vt&&!(wt.compareDocumentPosition(vt)&8))&&$e.call(vt,pt)}}var ar,Cr=0;function vr(de){var Re=".dragsuppress-"+ ++Cr,$e="click"+Re,pt=g.select(t(de)).on("touchmove"+Re,Q).on("dragstart"+Re,Q).on("selectstart"+Re,Q);if(ar==null&&(ar="onselectstart"in de?!1:O(de.style,"userSelect")),ar){var vt=e(de).style,wt=vt[ar];vt[ar]="none"}return function(Jt){if(pt.on(Re,null),ar&&(vt[ar]=wt),Jt){var Rt=function(){pt.on($e,null)};pt.on($e,function(){Q(),Rt()},!0),setTimeout(Rt,0)}}}g.mouse=function(de){return yt(de,ue())};var _r=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function yt(de,Re){Re.changedTouches&&(Re=Re.changedTouches[0]);var $e=de.ownerSVGElement||de;if($e.createSVGPoint){var pt=$e.createSVGPoint();if(_r<0){var vt=t(de);if(vt.scrollX||vt.scrollY){$e=g.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var wt=$e[0][0].getScreenCTM();_r=!(wt.f||wt.e),$e.remove()}}return _r?(pt.x=Re.pageX,pt.y=Re.pageY):(pt.x=Re.clientX,pt.y=Re.clientY),pt=pt.matrixTransform(de.getScreenCTM().inverse()),[pt.x,pt.y]}var Jt=de.getBoundingClientRect();return[Re.clientX-Jt.left-de.clientLeft,Re.clientY-Jt.top-de.clientTop]}g.touch=function(de,Re,$e){if(arguments.length<3&&($e=Re,Re=ue().changedTouches),Re){for(var pt=0,vt=Re.length,wt;pt0?1:de<0?-1:0}function xt(de,Re,$e){return(Re[0]-de[0])*($e[1]-de[1])-(Re[1]-de[1])*($e[0]-de[0])}function It(de){return de>1?0:de<-1?Ee:Math.acos(de)}function Bt(de){return de>1?Te:de<-1?-Te:Math.asin(de)}function Gt(de){return((de=Math.exp(de))-1/de)/2}function Kt(de){return((de=Math.exp(de))+1/de)/2}function sr(de){return((de=Math.exp(2*de))-1)/(de+1)}function sa(de){return(de=Math.sin(de/2))*de}var Aa=Math.SQRT2,La=2,ka=4;g.interpolateZoom=function(de,Re){var $e=de[0],pt=de[1],vt=de[2],wt=Re[0],Jt=Re[1],Rt=Re[2],or=wt-$e,Dr=Jt-pt,Or=or*or+Dr*Dr,va,fa;if(Or0&&(Vi=Vi.transition().duration(Jt)),Vi.call(Ya.event)}function Un(){Ra&&Ra.domain(_a.range().map(function(Vi){return(Vi-de.x)/de.k}).map(_a.invert)),Qa&&Qa.domain(Na.range().map(function(Vi){return(Vi-de.y)/de.k}).map(Na.invert))}function Vn(Vi){Rt++||Vi({type:"zoomstart"})}function No(Vi){Un(),Vi({type:"zoom",scale:de.k,translate:[de.x,de.y]})}function Gn(Vi){--Rt||(Vi({type:"zoomend"}),$e=null)}function Fo(){var Vi=this,ao=Xa.of(Vi,arguments),ns=0,hs=g.select(t(Vi)).on(Dr,hu).on(Or,Ll),hl=Da(g.mouse(Vi)),Dl=vr(Vi);Sn.call(Vi),Vn(ao);function hu(){ns=1,Qi(g.mouse(Vi),hl),No(ao)}function Ll(){hs.on(Dr,null).on(Or,null),Dl(ns),Gn(ao)}}function Ks(){var Vi=this,ao=Xa.of(Vi,arguments),ns={},hs=0,hl,Dl=".zoom-"+g.event.changedTouches[0].identifier,hu="touchmove"+Dl,Ll="touchend"+Dl,dc=[],Qt=g.select(Vi),ra=vr(Vi);si(),Vn(ao),Qt.on(or,null).on(fa,si);function Ta(){var bi=g.touches(Vi);return hl=de.k,bi.forEach(function(Fi){Fi.identifier in ns&&(ns[Fi.identifier]=Da(Fi))}),bi}function si(){var bi=g.event.target;g.select(bi).on(hu,wi).on(Ll,xi),dc.push(bi);for(var Fi=g.event.changedTouches,cn=0,fn=Fi.length;cn1){var nn=Gi[0],on=Gi[1],Oi=nn[0]-on[0],ui=nn[1]-on[1];hs=Oi*Oi+ui*ui}}function wi(){var bi=g.touches(Vi),Fi,cn,fn,Gi;Sn.call(Vi);for(var Io=0,nn=bi.length;Io1?1:Re,$e=$e<0?0:$e>1?1:$e,vt=$e<=.5?$e*(1+Re):$e+Re-$e*Re,pt=2*$e-vt;function wt(Rt){return Rt>360?Rt-=360:Rt<0&&(Rt+=360),Rt<60?pt+(vt-pt)*Rt/60:Rt<180?vt:Rt<240?pt+(vt-pt)*(240-Rt)/60:pt}function Jt(Rt){return Math.round(wt(Rt)*255)}return new br(Jt(de+120),Jt(de),Jt(de-120))}g.hcl=Ut;function Ut(de,Re,$e){return this instanceof Ut?(this.h=+de,this.c=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Ut?new Ut(de.h,de.c,de.l):de instanceof pa?mt(de.l,de.a,de.b):mt((de=ca((de=g.rgb(de)).r,de.g,de.b)).l,de.a,de.b):new Ut(de,Re,$e)}var xr=Ut.prototype=new ni;xr.brighter=function(de){return new Ut(this.h,this.c,Math.min(100,this.l+Xr*(arguments.length?de:1)))},xr.darker=function(de){return new Ut(this.h,this.c,Math.max(0,this.l-Xr*(arguments.length?de:1)))},xr.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(de,Re,$e){return isNaN(de)&&(de=0),isNaN(Re)&&(Re=0),new pa($e,Math.cos(de*=Le)*Re,Math.sin(de)*Re)}g.lab=pa;function pa(de,Re,$e){return this instanceof pa?(this.l=+de,this.a=+Re,void(this.b=+$e)):arguments.length<2?de instanceof pa?new pa(de.l,de.a,de.b):de instanceof Ut?Zr(de.h,de.c,de.l):ca((de=br(de)).r,de.g,de.b):new pa(de,Re,$e)}var Xr=18,Ea=.95047,Fa=1,qa=1.08883,ya=pa.prototype=new ni;ya.brighter=function(de){return new pa(Math.min(100,this.l+Xr*(arguments.length?de:1)),this.a,this.b)},ya.darker=function(de){return new pa(Math.max(0,this.l-Xr*(arguments.length?de:1)),this.a,this.b)},ya.rgb=function(){return $a(this.l,this.a,this.b)};function $a(de,Re,$e){var pt=(de+16)/116,vt=pt+Re/500,wt=pt-$e/200;return vt=gt(vt)*Ea,pt=gt(pt)*Fa,wt=gt(wt)*qa,new br(kr(3.2404542*vt-1.5371385*pt-.4985314*wt),kr(-.969266*vt+1.8760108*pt+.041556*wt),kr(.0556434*vt-.2040259*pt+1.0572252*wt))}function mt(de,Re,$e){return de>0?new Ut(Math.atan2($e,Re)*rt,Math.sqrt(Re*Re+$e*$e),de):new Ut(NaN,NaN,de)}function gt(de){return de>.206893034?de*de*de:(de-4/29)/7.787037}function Er(de){return de>.008856?Math.pow(de,1/3):7.787037*de+4/29}function kr(de){return Math.round(255*(de<=.00304?12.92*de:1.055*Math.pow(de,1/2.4)-.055))}g.rgb=br;function br(de,Re,$e){return this instanceof br?(this.r=~~de,this.g=~~Re,void(this.b=~~$e)):arguments.length<2?de instanceof br?new br(de.r,de.g,de.b):Jr(""+de,br,Vt):new br(de,Re,$e)}function Tr(de){return new br(de>>16,de>>8&255,de&255)}function Mr(de){return Tr(de)+""}var Fr=br.prototype=new ni;Fr.brighter=function(de){de=Math.pow(.7,arguments.length?de:1);var Re=this.r,$e=this.g,pt=this.b,vt=30;return!Re&&!$e&&!pt?new br(vt,vt,vt):(Re&&Re>4,pt=pt>>4|pt,vt=or&240,vt=vt>>4|vt,wt=or&15,wt=wt<<4|wt):de.length===7&&(pt=(or&16711680)>>16,vt=(or&65280)>>8,wt=or&255)),Re(pt,vt,wt))}function oa(de,Re,$e){var pt=Math.min(de/=255,Re/=255,$e/=255),vt=Math.max(de,Re,$e),wt=vt-pt,Jt,Rt,or=(vt+pt)/2;return wt?(Rt=or<.5?wt/(vt+pt):wt/(2-vt-pt),de==vt?Jt=(Re-$e)/wt+(Re<$e?6:0):Re==vt?Jt=($e-de)/wt+2:Jt=(de-Re)/wt+4,Jt*=60):(Jt=NaN,Rt=or>0&&or<1?0:Jt),new Wt(Jt,Rt,or)}function ca(de,Re,$e){de=kt(de),Re=kt(Re),$e=kt($e);var pt=Er((.4124564*de+.3575761*Re+.1804375*$e)/Ea),vt=Er((.2126729*de+.7151522*Re+.072175*$e)/Fa),wt=Er((.0193339*de+.119192*Re+.9503041*$e)/qa);return pa(116*vt-16,500*(pt-vt),200*(vt-wt))}function kt(de){return(de/=255)<=.04045?de/12.92:Math.pow((de+.055)/1.055,2.4)}function ir(de){var Re=parseFloat(de);return de.charAt(de.length-1)==="%"?Math.round(Re*2.55):Re}var mr=g.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});mr.forEach(function(de,Re){mr.set(de,Tr(Re))});function $r(de){return typeof de=="function"?de:function(){return de}}g.functor=$r,g.xhr=ma(F);function ma(de){return function(Re,$e,pt){return arguments.length===2&&typeof $e=="function"&&(pt=$e,$e=null),Ba(Re,$e,de,pt)}}function Ba(de,Re,$e,pt){var vt={},wt=g.dispatch("beforesend","progress","load","error"),Jt={},Rt=new XMLHttpRequest,or=null;self.XDomainRequest&&!("withCredentials"in Rt)&&/^(http(s)?:)?\/\//.test(de)&&(Rt=new XDomainRequest),"onload"in Rt?Rt.onload=Rt.onerror=Dr:Rt.onreadystatechange=function(){Rt.readyState>3&&Dr()};function Dr(){var Or=Rt.status,va;if(!Or&&da(Rt)||Or>=200&&Or<300||Or===304){try{va=$e.call(vt,Rt)}catch(fa){wt.error.call(vt,fa);return}wt.load.call(vt,va)}else wt.error.call(vt,Rt)}return Rt.onprogress=function(Or){var va=g.event;g.event=Or;try{wt.progress.call(vt,Rt)}finally{g.event=va}},vt.header=function(Or,va){return Or=(Or+"").toLowerCase(),arguments.length<2?Jt[Or]:(va==null?delete Jt[Or]:Jt[Or]=va+"",vt)},vt.mimeType=function(Or){return arguments.length?(Re=Or==null?null:Or+"",vt):Re},vt.responseType=function(Or){return arguments.length?(or=Or,vt):or},vt.response=function(Or){return $e=Or,vt},["get","post"].forEach(function(Or){vt[Or]=function(){return vt.send.apply(vt,[Or].concat(A(arguments)))}}),vt.send=function(Or,va,fa){if(arguments.length===2&&typeof va=="function"&&(fa=va,va=null),Rt.open(Or,de,!0),Re!=null&&!("accept"in Jt)&&(Jt.accept=Re+",*/*"),Rt.setRequestHeader)for(var Va in Jt)Rt.setRequestHeader(Va,Jt[Va]);return Re!=null&&Rt.overrideMimeType&&Rt.overrideMimeType(Re),or!=null&&(Rt.responseType=or),fa!=null&&vt.on("error",fa).on("load",function(Xa){fa(null,Xa)}),wt.beforesend.call(vt,Rt),Rt.send(va??null),vt},vt.abort=function(){return Rt.abort(),vt},g.rebind(vt,wt,"on"),pt==null?vt:vt.get(Ca(pt))}function Ca(de){return de.length===1?function(Re,$e){de(Re==null?$e:null)}:de}function da(de){var Re=de.responseType;return Re&&Re!=="text"?de.response:de.responseText}g.dsv=function(de,Re){var $e=new RegExp('["'+de+` +]`),pt=de.charCodeAt(0);function vt(Dr,Or,va){arguments.length<3&&(va=Or,Or=null);var fa=Ba(Dr,Re,Or==null?wt:Jt(Or),va);return fa.row=function(Va){return arguments.length?fa.response((Or=Va)==null?wt:Jt(Va)):Or},fa}function wt(Dr){return vt.parse(Dr.responseText)}function Jt(Dr){return function(Or){return vt.parse(Or.responseText,Dr)}}vt.parse=function(Dr,Or){var va;return vt.parseRows(Dr,function(fa,Va){if(va)return va(fa,Va-1);var Xa=function(_a){for(var Ra={},Na=fa.length,Qa=0;Qa=Xa)return fa;if(Qa)return Qa=!1,va;var zi=_a;if(Dr.charCodeAt(zi)===34){for(var Ni=zi;Ni++24?(isFinite(Re)&&(clearTimeout(an),an=setTimeout(On,Re)),ai=0):(ai=1,sn(On))}g.timer.flush=function(){$n(),Cn()};function $n(){for(var de=Date.now(),Re=Sa;Re;)de>=Re.t&&Re.c(de-Re.t)&&(Re.c=null),Re=Re.n;return de}function Cn(){for(var de,Re=Sa,$e=1/0;Re;)Re.c?(Re.t<$e&&($e=Re.t),Re=(de=Re).n):Re=de?de.n=Re.n:Sa=Re.n;return Ti=de,$e}g.round=function(de,Re){return Re?Math.round(de*(Re=Math.pow(10,Re)))/Re:Math.round(de)},g.geom={};function Lo(de){return de[0]}function Xi(de){return de[1]}g.geom.hull=function(de){var Re=Lo,$e=Xi;if(arguments.length)return pt(de);function pt(vt){if(vt.length<3)return[];var wt=$r(Re),Jt=$r($e),Rt,or=vt.length,Dr=[],Or=[];for(Rt=0;Rt=0;--Rt)_a.push(vt[Dr[va[Rt]][2]]);for(Rt=+Va;Rt1&&xt(de[$e[pt-2]],de[$e[pt-1]],de[vt])<=0;)--pt;$e[pt++]=vt}return $e.slice(0,pt)}function zo(de,Re){return de[0]-Re[0]||de[1]-Re[1]}g.geom.polygon=function(de){return G(de,as),de};var as=g.geom.polygon.prototype=[];as.area=function(){for(var de=-1,Re=this.length,$e,pt=this[Re-1],vt=0;++deKe)Rt=Rt.L;else if(Jt=Re-so(Rt,$e),Jt>Ke){if(!Rt.R){pt=Rt;break}Rt=Rt.R}else{wt>-Ke?(pt=Rt.P,vt=Rt):Jt>-Ke?(pt=Rt,vt=Rt.N):pt=vt=Rt;break}var or=$o(de);if(Qo.insert(pt,or),!(!pt&&!vt)){if(pt===vt){To(pt),vt=$o(pt.site),Qo.insert(or,vt),or.edge=vt.edge=Wl(pt.site,or.site),ji(pt),ji(vt);return}if(!vt){or.edge=Wl(pt.site,or.site);return}To(pt),To(vt);var Dr=pt.site,Or=Dr.x,va=Dr.y,fa=de.x-Or,Va=de.y-va,Xa=vt.site,_a=Xa.x-Or,Ra=Xa.y-va,Na=2*(fa*Ra-Va*_a),Qa=fa*fa+Va*Va,Ya=_a*_a+Ra*Ra,Da={x:(Ra*Qa-Va*Ya)/Na+Or,y:(fa*Ya-_a*Qa)/Na+va};ml(vt.edge,Dr,Xa,Da),or.edge=Wl(Dr,de,null,Da),vt.edge=Wl(de,Xa,null,Da),ji(pt),ji(vt)}}function Os(de,Re){var $e=de.site,pt=$e.x,vt=$e.y,wt=vt-Re;if(!wt)return pt;var Jt=de.P;if(!Jt)return-1/0;$e=Jt.site;var Rt=$e.x,or=$e.y,Dr=or-Re;if(!Dr)return Rt;var Or=Rt-pt,va=1/wt-1/Dr,fa=Or/Dr;return va?(-fa+Math.sqrt(fa*fa-2*va*(Or*Or/(-2*Dr)-or+Dr/2+vt-wt/2)))/va+pt:(pt+Rt)/2}function so(de,Re){var $e=de.N;if($e)return Os($e,Re);var pt=de.site;return pt.y===Re?pt.x:1/0}function Ns(de){this.site=de,this.edges=[]}Ns.prototype.prepare=function(){for(var de=this.edges,Re=de.length,$e;Re--;)$e=de[Re].edge,(!$e.b||!$e.a)&&de.splice(Re,1);return de.sort(al),de.length};function fs(de){for(var Re=de[0][0],$e=de[1][0],pt=de[0][1],vt=de[1][1],wt,Jt,Rt,or,Dr=Ho,Or=Dr.length,va,fa,Va,Xa,_a,Ra;Or--;)if(va=Dr[Or],!(!va||!va.prepare()))for(Va=va.edges,Xa=Va.length,fa=0;faKe||l(or-Jt)>Ke)&&(Va.splice(fa,0,new Bu(Zu(va.site,Ra,l(Rt-Re)Ke?{x:Re,y:l(wt-Re)Ke?{x:l(Jt-vt)Ke?{x:$e,y:l(wt-$e)Ke?{x:l(Jt-pt)=-Ne)){var fa=or*or+Dr*Dr,Va=Or*Or+Ra*Ra,Xa=(Ra*fa-Dr*Va)/va,_a=(or*Va-Or*fa)/va,Ra=_a+Rt,Na=Is.pop()||new vl;Na.arc=de,Na.site=vt,Na.x=Xa+Jt,Na.y=Ra+Math.sqrt(Xa*Xa+_a*_a),Na.cy=Ra,de.circle=Na;for(var Qa=null,Ya=ys._;Ya;)if(Na.y0)){if(_a/=Va,Va<0){if(_a0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=$e-Rt,!(!Va&&_a<0)){if(_a/=Va,Va<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Va>0){if(_a0)){if(_a/=Xa,Xa<0){if(_a0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=pt-or,!(!Xa&&_a<0)){if(_a/=Xa,Xa<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Xa>0){if(_a0&&(vt.a={x:Rt+va*Va,y:or+va*Xa}),fa<1&&(vt.b={x:Rt+fa*Va,y:or+fa*Xa}),vt}}}}}}function _s(de){for(var Re=Do,$e=Yn(de[0][0],de[0][1],de[1][0],de[1][1]),pt=Re.length,vt;pt--;)vt=Re[pt],(!Yo(vt,de)||!$e(vt)||l(vt.a.x-vt.b.x)=wt)return;if(Or>fa){if(!pt)pt={x:Xa,y:Jt};else if(pt.y>=Rt)return;$e={x:Xa,y:Rt}}else{if(!pt)pt={x:Xa,y:Rt};else if(pt.y1)if(Or>fa){if(!pt)pt={x:(Jt-Na)/Ra,y:Jt};else if(pt.y>=Rt)return;$e={x:(Rt-Na)/Ra,y:Rt}}else{if(!pt)pt={x:(Rt-Na)/Ra,y:Rt};else if(pt.y=wt)return;$e={x:wt,y:Ra*wt+Na}}else{if(!pt)pt={x:wt,y:Ra*wt+Na};else if(pt.x=Or&&Na.x<=fa&&Na.y>=va&&Na.y<=Va?[[Or,Va],[fa,Va],[fa,va],[Or,va]]:[];Qa.point=or[_a]}),Dr}function Rt(or){return or.map(function(Dr,Or){return{x:Math.round(pt(Dr,Or)/Ke)*Ke,y:Math.round(vt(Dr,Or)/Ke)*Ke,i:Or}})}return Jt.links=function(or){return Xu(Rt(or)).edges.filter(function(Dr){return Dr.l&&Dr.r}).map(function(Dr){return{source:or[Dr.l.i],target:or[Dr.r.i]}})},Jt.triangles=function(or){var Dr=[];return Xu(Rt(or)).cells.forEach(function(Or,va){for(var fa=Or.site,Va=Or.edges.sort(al),Xa=-1,_a=Va.length,Ra,Na,Qa=Va[_a-1].edge,Ya=Qa.l===fa?Qa.r:Qa.l;++Xa<_a;)Ra=Qa,Na=Ya,Qa=Va[Xa].edge,Ya=Qa.l===fa?Qa.r:Qa.l,vaYa&&(Ya=Or.x),Or.y>Da&&(Da=Or.y),Va.push(Or.x),Xa.push(Or.y);else for(_a=0;_aYa&&(Ya=zi),Ni>Da&&(Da=Ni),Va.push(zi),Xa.push(Ni)}var Qi=Ya-Na,hn=Da-Qa;Qi>hn?Da=Qa+Qi:Ya=Na+hn;function Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){if(!(isNaN(Ks)||isNaN(Gs)))if(Gn.leaf){var hs=Gn.x,hl=Gn.y;if(hs!=null)if(l(hs-Ks)+l(hl-Gs)<.01)Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns);else{var Dl=Gn.point;Gn.x=Gn.y=Gn.point=null,Vn(Gn,Dl,hs,hl,sl,Vi,ao,ns),Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}else Gn.x=Ks,Gn.y=Gs,Gn.point=Fo}else Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}function Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){var hs=(sl+ao)*.5,hl=(Vi+ns)*.5,Dl=Ks>=hs,hu=Gs>=hl,Ll=hu<<1|Dl;Gn.leaf=!1,Gn=Gn.nodes[Ll]||(Gn.nodes[Ll]=Zl()),Dl?sl=hs:ao=hs,hu?Vi=hl:ns=hl,Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}var No=Zl();if(No.add=function(Gn){Un(No,Gn,+va(Gn,++_a),+fa(Gn,_a),Na,Qa,Ya,Da)},No.visit=function(Gn){yl(Gn,No,Na,Qa,Ya,Da)},No.find=function(Gn){return oc(No,Gn[0],Gn[1],Na,Qa,Ya,Da)},_a=-1,Re==null){for(;++_awt||fa>Jt||Va=zi,hn=$e>=Ni,Un=hn<<1|Qi,Vn=Un+4;Un$e&&(wt=Re.slice($e,wt),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),(pt=pt[0])===(vt=vt[0])?Rt[Jt]?Rt[Jt]+=vt:Rt[++Jt]=vt:(Rt[++Jt]=null,or.push({i:Jt,x:_l(pt,vt)})),$e=sc.lastIndex;return $e=0&&!(pt=g.interpolators[$e](de,Re)););return pt}g.interpolators=[function(de,Re){var $e=typeof Re;return($e==="string"?mr.has(Re.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(Re)?_c:Bs:Re instanceof ni?_c:Array.isArray(Re)?Yu:$e==="object"&&isNaN(Re)?Zs:_l)(de,Re)}],g.interpolateArray=Yu;function Yu(de,Re){var $e=[],pt=[],vt=de.length,wt=Re.length,Jt=Math.min(de.length,Re.length),Rt;for(Rt=0;Rt=0?de.slice(0,Re):de,pt=Re>=0?de.slice(Re+1):"in";return $e=fp.get($e)||Qs,pt=es.get(pt)||F,Wh(pt($e.apply(null,x.call(arguments,1))))};function Wh(de){return function(Re){return Re<=0?0:Re>=1?1:de(Re)}}function Ss(de){return function(Re){return 1-de(1-Re)}}function So(de){return function(Re){return .5*(Re<.5?de(2*Re):2-de(2-2*Re))}}function hf(de){return de*de}function Ku(de){return de*de*de}function cu(de){if(de<=0)return 0;if(de>=1)return 1;var Re=de*de,$e=Re*de;return 4*(de<.5?$e:3*(de-Re)+$e-.75)}function Zf(de){return function(Re){return Math.pow(Re,de)}}function Rc(de){return 1-Math.cos(de*Te)}function pf(de){return Math.pow(2,10*(de-1))}function Fl(de){return 1-Math.sqrt(1-de*de)}function lh(de,Re){var $e;return arguments.length<2&&(Re=.45),arguments.length?$e=Re/Ve*Math.asin(1/de):(de=1,$e=Re/4),function(pt){return 1+de*Math.pow(2,-10*pt)*Math.sin((pt-$e)*Ve/Re)}}function Xf(de){return de||(de=1.70158),function(Re){return Re*Re*((de+1)*Re-de)}}function Rf(de){return de<1/2.75?7.5625*de*de:de<2/2.75?7.5625*(de-=1.5/2.75)*de+.75:de<2.5/2.75?7.5625*(de-=2.25/2.75)*de+.9375:7.5625*(de-=2.625/2.75)*de+.984375}g.interpolateHcl=Kc;function Kc(de,Re){de=g.hcl(de),Re=g.hcl(Re);var $e=de.h,pt=de.c,vt=de.l,wt=Re.h-$e,Jt=Re.c-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.c:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Zr($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateHsl=Yf;function Yf(de,Re){de=g.hsl(de),Re=g.hsl(Re);var $e=de.h,pt=de.s,vt=de.l,wt=Re.h-$e,Jt=Re.s-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.s:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Vt($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateLab=uh;function uh(de,Re){de=g.lab(de),Re=g.lab(Re);var $e=de.l,pt=de.a,vt=de.b,wt=Re.l-$e,Jt=Re.a-pt,Rt=Re.b-vt;return function(or){return $a($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateRound=Ju;function Ju(de,Re){return Re-=de,function($e){return Math.round(de+Re*$e)}}g.transform=function(de){var Re=M.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function($e){if($e!=null){Re.setAttribute("transform",$e);var pt=Re.transform.baseVal.consolidate()}return new Df(pt?pt.matrix:wf)})(de)};function Df(de){var Re=[de.a,de.b],$e=[de.c,de.d],pt=Jc(Re),vt=Dc(Re,$e),wt=Jc(Eu($e,Re,-vt))||0;Re[0]*$e[1]<$e[0]*Re[1]&&(Re[0]*=-1,Re[1]*=-1,pt*=-1,vt*=-1),this.rotate=(pt?Math.atan2(Re[1],Re[0]):Math.atan2(-$e[0],$e[1]))*rt,this.translate=[de.e,de.f],this.scale=[pt,wt],this.skew=wt?Math.atan2(vt,wt)*rt:0}Df.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function Dc(de,Re){return de[0]*Re[0]+de[1]*Re[1]}function Jc(de){var Re=Math.sqrt(Dc(de,de));return Re&&(de[0]/=Re,de[1]/=Re),Re}function Eu(de,Re,$e){return de[0]+=$e*Re[0],de[1]+=$e*Re[1],de}var wf={a:1,b:0,c:0,d:1,e:0,f:0};g.interpolateTransform=df;function zc(de){return de.length?de.pop()+",":""}function Us(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push("translate(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]||Re[1])&&$e.push("translate("+Re+")")}function Kf(de,Re,$e,pt){de!==Re?(de-Re>180?Re+=360:Re-de>180&&(de+=360),pt.push({i:$e.push(zc($e)+"rotate(",null,")")-2,x:_l(de,Re)})):Re&&$e.push(zc($e)+"rotate("+Re+")")}function Zh(de,Re,$e,pt){de!==Re?pt.push({i:$e.push(zc($e)+"skewX(",null,")")-2,x:_l(de,Re)}):Re&&$e.push(zc($e)+"skewX("+Re+")")}function ch(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push(zc($e)+"scale(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]!==1||Re[1]!==1)&&$e.push(zc($e)+"scale("+Re+")")}function df(de,Re){var $e=[],pt=[];return de=g.transform(de),Re=g.transform(Re),Us(de.translate,Re.translate,$e,pt),Kf(de.rotate,Re.rotate,$e,pt),Zh(de.skew,Re.skew,$e,pt),ch(de.scale,Re.scale,$e,pt),de=Re=null,function(vt){for(var wt=-1,Jt=pt.length,Rt;++wt0?wt=Da:($e.c=null,$e.t=NaN,$e=null,Re.end({type:"end",alpha:wt=0})):Da>0&&(Re.start({type:"start",alpha:wt=Da}),$e=Mn(de.tick)),de):wt},de.start=function(){var Da,zi=Va.length,Ni=Xa.length,Qi=pt[0],hn=pt[1],Un,Vn;for(Da=0;Da=0;)wt.push(Or=Dr[or]),Or.parent=Rt,Or.depth=Rt.depth+1;$e&&(Rt.value=0),Rt.children=Dr}else $e&&(Rt.value=+$e.call(pt,Rt,Rt.depth)||0),delete Rt.children;return lc(vt,function(va){var fa,Va;de&&(fa=va.children)&&fa.sort(de),$e&&(Va=va.parent)&&(Va.value+=va.value)}),Jt}return pt.sort=function(vt){return arguments.length?(de=vt,pt):de},pt.children=function(vt){return arguments.length?(Re=vt,pt):Re},pt.value=function(vt){return arguments.length?($e=vt,pt):$e},pt.revalue=function(vt){return $e&&(bc(vt,function(wt){wt.children&&(wt.value=0)}),lc(vt,function(wt){var Jt;wt.children||(wt.value=+$e.call(pt,wt,wt.depth)||0),(Jt=wt.parent)&&(Jt.value+=wt.value)})),vt},pt};function Uu(de,Re){return g.rebind(de,Re,"sort","children","value"),de.nodes=de,de.links=Lu,de}function bc(de,Re){for(var $e=[de];(de=$e.pop())!=null;)if(Re(de),(vt=de.children)&&(pt=vt.length))for(var pt,vt;--pt>=0;)$e.push(vt[pt])}function lc(de,Re){for(var $e=[de],pt=[];(de=$e.pop())!=null;)if(pt.push(de),(Jt=de.children)&&(wt=Jt.length))for(var vt=-1,wt,Jt;++vtvt&&(vt=Rt),pt.push(Rt)}for(Jt=0;Jt<$e;++Jt)or[Jt]=(vt-pt[Jt])/2;return or},wiggle:function(de){var Re=de.length,$e=de[0],pt=$e.length,vt,wt,Jt,Rt,or,Dr,Or,va,fa,Va=[];for(Va[0]=va=fa=0,wt=1;wtpt&&($e=Re,pt=vt);return $e}function el(de){return de.reduce(mf,0)}function mf(de,Re){return de+Re[1]}g.layout.histogram=function(){var de=!0,Re=Number,$e=Af,pt=wc;function vt(wt,fa){for(var Rt=[],or=wt.map(Re,this),Dr=$e.call(this,or,fa),Or=pt.call(this,Dr,or,fa),va,fa=-1,Va=or.length,Xa=Or.length-1,_a=de?1:1/Va,Ra;++fa0)for(fa=-1;++fa=Dr[0]&&Ra<=Dr[1]&&(va=Rt[g.bisect(Or,Ra,1,Xa)-1],va.y+=_a,va.push(wt[fa]));return Rt}return vt.value=function(wt){return arguments.length?(Re=wt,vt):Re},vt.range=function(wt){return arguments.length?($e=$r(wt),vt):$e},vt.bins=function(wt){return arguments.length?(pt=typeof wt=="number"?function(Jt){return ju(Jt,wt)}:$r(wt),vt):pt},vt.frequency=function(wt){return arguments.length?(de=!!wt,vt):de},vt};function wc(de,Re){return ju(de,Math.ceil(Math.log(Re.length)/Math.LN2+1))}function ju(de,Re){for(var $e=-1,pt=+de[0],vt=(de[1]-pt)/Re,wt=[];++$e<=Re;)wt[$e]=vt*$e+pt;return wt}function Af(de){return[g.min(de),g.max(de)]}g.layout.pack=function(){var de=g.layout.hierarchy().sort(uc),Re=0,$e=[1,1],pt;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr=$e[0],Or=$e[1],va=pt==null?Math.sqrt:typeof pt=="function"?pt:function(){return pt};if(or.x=or.y=0,lc(or,function(Va){Va.r=+va(Va.value)}),lc(or,Qf),Re){var fa=Re*(pt?1:Math.max(2*or.r/Dr,2*or.r/Or))/2;lc(or,function(Va){Va.r+=fa}),lc(or,Qf),lc(or,function(Va){Va.r-=fa})}return cc(or,Dr/2,Or/2,pt?1:1/Math.max(2*or.r/Dr,2*or.r/Or)),Rt}return vt.size=function(wt){return arguments.length?($e=wt,vt):$e},vt.radius=function(wt){return arguments.length?(pt=wt==null||typeof wt=="function"?wt:+wt,vt):pt},vt.padding=function(wt){return arguments.length?(Re=+wt,vt):Re},Uu(vt,de)};function uc(de,Re){return de.value-Re.value}function Qc(de,Re){var $e=de._pack_next;de._pack_next=Re,Re._pack_prev=de,Re._pack_next=$e,$e._pack_prev=Re}function $f(de,Re){de._pack_next=Re,Re._pack_prev=de}function Vl(de,Re){var $e=Re.x-de.x,pt=Re.y-de.y,vt=de.r+Re.r;return .999*vt*vt>$e*$e+pt*pt}function Qf(de){if(!(Re=de.children)||!(fa=Re.length))return;var Re,$e=1/0,pt=-1/0,vt=1/0,wt=-1/0,Jt,Rt,or,Dr,Or,va,fa;function Va(Da){$e=Math.min(Da.x-Da.r,$e),pt=Math.max(Da.x+Da.r,pt),vt=Math.min(Da.y-Da.r,vt),wt=Math.max(Da.y+Da.r,wt)}if(Re.forEach(Vu),Jt=Re[0],Jt.x=-Jt.r,Jt.y=0,Va(Jt),fa>1&&(Rt=Re[1],Rt.x=Rt.r,Rt.y=0,Va(Rt),fa>2))for(or=Re[2],Cl(Jt,Rt,or),Va(or),Qc(Jt,or),Jt._pack_prev=or,Qc(or,Rt),Rt=Jt._pack_next,Dr=3;DrRa.x&&(Ra=zi),zi.depth>Na.depth&&(Na=zi)});var Qa=Re(_a,Ra)/2-_a.x,Ya=$e[0]/(Ra.x+Re(Ra,_a)/2+Qa),Da=$e[1]/(Na.depth||1);bc(Va,function(zi){zi.x=(zi.x+Qa)*Ya,zi.y=zi.depth*Da})}return fa}function wt(Or){for(var va={A:null,children:[Or]},fa=[va],Va;(Va=fa.pop())!=null;)for(var Xa=Va.children,_a,Ra=0,Na=Xa.length;Ra0&&(Qu(Zt(_a,Or,fa),Or,zi),Na+=zi,Qa+=zi),Ya+=_a.m,Na+=Va.m,Da+=Ra.m,Qa+=Xa.m;_a&&!Oc(Xa)&&(Xa.t=_a,Xa.m+=Ya-Qa),Va&&!fc(Ra)&&(Ra.t=Va,Ra.m+=Na-Da,fa=Or)}return fa}function Dr(Or){Or.x*=$e[0],Or.y=Or.depth*$e[1]}return vt.separation=function(Or){return arguments.length?(Re=Or,vt):Re},vt.size=function(Or){return arguments.length?(pt=($e=Or)==null?Dr:null,vt):pt?null:$e},vt.nodeSize=function(Or){return arguments.length?(pt=($e=Or)==null?null:Dr,vt):pt?$e:null},Uu(vt,de)};function iu(de,Re){return de.parent==Re.parent?1:2}function fc(de){var Re=de.children;return Re.length?Re[0]:de.t}function Oc(de){var Re=de.children,$e;return($e=Re.length)?Re[$e-1]:de.t}function Qu(de,Re,$e){var pt=$e/(Re.i-de.i);Re.c-=pt,Re.s+=$e,de.c+=pt,Re.z+=$e,Re.m+=$e}function ef(de){for(var Re=0,$e=0,pt=de.children,vt=pt.length,wt;--vt>=0;)wt=pt[vt],wt.z+=Re,wt.m+=Re,Re+=wt.s+($e+=wt.c)}function Zt(de,Re,$e){return de.a.parent===Re.parent?de.a:$e}g.layout.cluster=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=!1;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr,Or=0;lc(or,function(_a){var Ra=_a.children;Ra&&Ra.length?(_a.x=Yr(Ra),_a.y=fr(Ra)):(_a.x=Dr?Or+=Re(_a,Dr):0,_a.y=0,Dr=_a)});var va=qr(or),fa=ba(or),Va=va.x-Re(va,fa)/2,Xa=fa.x+Re(fa,va)/2;return lc(or,pt?function(_a){_a.x=(_a.x-or.x)*$e[0],_a.y=(or.y-_a.y)*$e[1]}:function(_a){_a.x=(_a.x-Va)/(Xa-Va)*$e[0],_a.y=(1-(or.y?_a.y/or.y:1))*$e[1]}),Rt}return vt.separation=function(wt){return arguments.length?(Re=wt,vt):Re},vt.size=function(wt){return arguments.length?(pt=($e=wt)==null,vt):pt?null:$e},vt.nodeSize=function(wt){return arguments.length?(pt=($e=wt)!=null,vt):pt?$e:null},Uu(vt,de)};function fr(de){return 1+g.max(de,function(Re){return Re.y})}function Yr(de){return de.reduce(function(Re,$e){return Re+$e.x},0)/de.length}function qr(de){var Re=de.children;return Re&&Re.length?qr(Re[0]):de}function ba(de){var Re=de.children,$e;return Re&&($e=Re.length)?ba(Re[$e-1]):de}g.layout.treemap=function(){var de=g.layout.hierarchy(),Re=Math.round,$e=[1,1],pt=null,vt=Ka,wt=!1,Jt,Rt="squarify",or=.5*(1+Math.sqrt(5));function Dr(_a,Ra){for(var Na=-1,Qa=_a.length,Ya,Da;++Na0;)Qa.push(Da=Ya[hn-1]),Qa.area+=Da.area,Rt!=="squarify"||(Ni=fa(Qa,Qi))<=zi?(Ya.pop(),zi=Ni):(Qa.area-=Qa.pop().area,Va(Qa,Qi,Na,!1),Qi=Math.min(Na.dx,Na.dy),Qa.length=Qa.area=0,zi=1/0);Qa.length&&(Va(Qa,Qi,Na,!0),Qa.length=Qa.area=0),Ra.forEach(Or)}}function va(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=Ra.slice(),Ya,Da=[];for(Dr(Qa,Na.dx*Na.dy/_a.value),Da.area=0;Ya=Qa.pop();)Da.push(Ya),Da.area+=Ya.area,Ya.z!=null&&(Va(Da,Ya.z?Na.dx:Na.dy,Na,!Qa.length),Da.length=Da.area=0);Ra.forEach(va)}}function fa(_a,Ra){for(var Na=_a.area,Qa,Ya=0,Da=1/0,zi=-1,Ni=_a.length;++ziYa&&(Ya=Qa));return Na*=Na,Ra*=Ra,Na?Math.max(Ra*Ya*or/Na,Na/(Ra*Da*or)):1/0}function Va(_a,Ra,Na,Qa){var Ya=-1,Da=_a.length,zi=Na.x,Ni=Na.y,Qi=Ra?Re(_a.area/Ra):0,hn;if(Ra==Na.dx){for((Qa||Qi>Na.dy)&&(Qi=Na.dy);++YaNa.dx)&&(Qi=Na.dx);++Ya1);return de+Re*pt*Math.sqrt(-2*Math.log(wt)/wt)}},logNormal:function(){var de=g.random.normal.apply(g,arguments);return function(){return Math.exp(de())}},bates:function(de){var Re=g.random.irwinHall(de);return function(){return Re()/de}},irwinHall:function(de){return function(){for(var Re=0,$e=0;$e2?ti:Bi,Dr=pt?ku:Ah;return vt=or(de,Re,Dr,$e),wt=or(Re,de,Dr,zl),Rt}function Rt(or){return vt(or)}return Rt.invert=function(or){return wt(or)},Rt.domain=function(or){return arguments.length?(de=or.map(Number),Jt()):de},Rt.range=function(or){return arguments.length?(Re=or,Jt()):Re},Rt.rangeRound=function(or){return Rt.range(or).interpolate(Ju)},Rt.clamp=function(or){return arguments.length?(pt=or,Jt()):pt},Rt.interpolate=function(or){return arguments.length?($e=or,Jt()):$e},Rt.ticks=function(or){return no(de,or)},Rt.tickFormat=function(or,Dr){return d3_scale_linearTickFormat(de,or,Dr)},Rt.nice=function(or){return Wn(de,or),Jt()},Rt.copy=function(){return rn(de,Re,$e,pt)},Jt()}function Kn(de,Re){return g.rebind(de,Re,"range","rangeRound","interpolate","clamp")}function Wn(de,Re){return li(de,_i(Jn(de,Re)[2])),li(de,_i(Jn(de,Re)[2])),de}function Jn(de,Re){Re==null&&(Re=10);var $e=yi(de),pt=$e[1]-$e[0],vt=Math.pow(10,Math.floor(Math.log(pt/Re)/Math.LN10)),wt=Re/pt*vt;return wt<=.15?vt*=10:wt<=.35?vt*=5:wt<=.75&&(vt*=2),$e[0]=Math.ceil($e[0]/vt)*vt,$e[1]=Math.floor($e[1]/vt)*vt+vt*.5,$e[2]=vt,$e}function no(de,Re){return g.range.apply(g,Jn(de,Re))}var en={s:1,g:1,p:1,r:1,e:1};function Ri(de){return-Math.floor(Math.log(de)/Math.LN10+.01)}function co(de,Re){var $e=Ri(Re[2]);return de in en?Math.abs($e-Ri(Math.max(l(Re[0]),l(Re[1]))))+ +(de!=="e"):$e-(de==="%")*2}g.scale.log=function(){return Wo(g.scale.linear().domain([0,1]),10,!0,[1,10])};function Wo(de,Re,$e,pt){function vt(Rt){return($e?Math.log(Rt<0?0:Rt):-Math.log(Rt>0?0:-Rt))/Math.log(Re)}function wt(Rt){return $e?Math.pow(Re,Rt):-Math.pow(Re,-Rt)}function Jt(Rt){return de(vt(Rt))}return Jt.invert=function(Rt){return wt(de.invert(Rt))},Jt.domain=function(Rt){return arguments.length?($e=Rt[0]>=0,de.domain((pt=Rt.map(Number)).map(vt)),Jt):pt},Jt.base=function(Rt){return arguments.length?(Re=+Rt,de.domain(pt.map(vt)),Jt):Re},Jt.nice=function(){var Rt=li(pt.map(vt),$e?Math:bs);return de.domain(Rt),pt=Rt.map(wt),Jt},Jt.ticks=function(){var Rt=yi(pt),or=[],Dr=Rt[0],Or=Rt[1],va=Math.floor(vt(Dr)),fa=Math.ceil(vt(Or)),Va=Re%1?2:Re;if(isFinite(fa-va)){if($e){for(;va0;Xa--)or.push(wt(va)*Xa);for(va=0;or[va]Or;fa--);or=or.slice(va,fa)}return or},Jt.copy=function(){return Wo(de.copy(),Re,$e,pt)},Kn(Jt,de)}var bs={floor:function(de){return-Math.ceil(-de)},ceil:function(de){return-Math.floor(-de)}};g.scale.pow=function(){return Xs(g.scale.linear(),1,[0,1])};function Xs(de,Re,$e){var pt=Ms(Re),vt=Ms(1/Re);function wt(Jt){return de(pt(Jt))}return wt.invert=function(Jt){return vt(de.invert(Jt))},wt.domain=function(Jt){return arguments.length?(de.domain(($e=Jt.map(Number)).map(pt)),wt):$e},wt.ticks=function(Jt){return no($e,Jt)},wt.tickFormat=function(Jt,Rt){return d3_scale_linearTickFormat($e,Jt,Rt)},wt.nice=function(Jt){return wt.domain(Wn($e,Jt))},wt.exponent=function(Jt){return arguments.length?(pt=Ms(Re=Jt),vt=Ms(1/Re),de.domain($e.map(pt)),wt):Re},wt.copy=function(){return Xs(de.copy(),Re,$e)},Kn(wt,de)}function Ms(de){return function(Re){return Re<0?-Math.pow(-Re,de):Math.pow(Re,de)}}g.scale.sqrt=function(){return g.scale.pow().exponent(.5)},g.scale.ordinal=function(){return Hs([],{t:"range",a:[[]]})};function Hs(de,Re){var $e,pt,vt;function wt(Rt){return pt[(($e.get(Rt)||(Re.t==="range"?$e.set(Rt,de.push(Rt)):NaN))-1)%pt.length]}function Jt(Rt,or){return g.range(de.length).map(function(Dr){return Rt+or*Dr})}return wt.domain=function(Rt){if(!arguments.length)return de;de=[],$e=new S;for(var or=-1,Dr=Rt.length,Or;++or0?$e[wt-1]:de[0],wt<$e.length?$e[wt]:de[de.length-1]]},vt.copy=function(){return Ln(de,Re)},pt()}g.scale.quantize=function(){return Ao(0,1,[0,1])};function Ao(de,Re,$e){var pt,vt;function wt(Rt){return $e[Math.max(0,Math.min(vt,Math.floor(pt*(Rt-de))))]}function Jt(){return pt=$e.length/(Re-de),vt=$e.length-1,wt}return wt.domain=function(Rt){return arguments.length?(de=+Rt[0],Re=+Rt[Rt.length-1],Jt()):[de,Re]},wt.range=function(Rt){return arguments.length?($e=Rt,Jt()):$e},wt.invertExtent=function(Rt){return Rt=$e.indexOf(Rt),Rt=Rt<0?NaN:Rt/pt+de,[Rt,Rt+1/pt]},wt.copy=function(){return Ao(de,Re,$e)},Jt()}g.scale.threshold=function(){return js([.5],[0,1])};function js(de,Re){function $e(pt){if(pt<=pt)return Re[g.bisect(de,pt)]}return $e.domain=function(pt){return arguments.length?(de=pt,$e):de},$e.range=function(pt){return arguments.length?(Re=pt,$e):Re},$e.invertExtent=function(pt){return pt=Re.indexOf(pt),[de[pt-1],de[pt]]},$e.copy=function(){return js(de,Re)},$e}g.scale.identity=function(){return Ts([0,1])};function Ts(de){function Re($e){return+$e}return Re.invert=Re,Re.domain=Re.range=function($e){return arguments.length?(de=$e.map(Re),Re):de},Re.ticks=function($e){return no(de,$e)},Re.tickFormat=function($e,pt){return d3_scale_linearTickFormat(de,$e,pt)},Re.copy=function(){return Ts(de)},Re}g.svg={};function nu(){return 0}g.svg.arc=function(){var de=ec,Re=tf,$e=nu,pt=Pu,vt=yu,wt=Bc,Jt=Iu;function Rt(){var Dr=Math.max(0,+de.apply(this,arguments)),Or=Math.max(0,+Re.apply(this,arguments)),va=vt.apply(this,arguments)-Te,fa=wt.apply(this,arguments)-Te,Va=Math.abs(fa-va),Xa=va>fa?0:1;if(Or=ke)return or(Or,Xa)+(Dr?or(Dr,1-Xa):"")+"Z";var _a,Ra,Na,Qa,Ya=0,Da=0,zi,Ni,Qi,hn,Un,Vn,No,Gn,Fo=[];if((Qa=(+Jt.apply(this,arguments)||0)/2)&&(Na=pt===Pu?Math.sqrt(Dr*Dr+Or*Or):+pt.apply(this,arguments),Xa||(Da*=-1),Or&&(Da=Bt(Na/Or*Math.sin(Qa))),Dr&&(Ya=Bt(Na/Dr*Math.sin(Qa)))),Or){zi=Or*Math.cos(va+Da),Ni=Or*Math.sin(va+Da),Qi=Or*Math.cos(fa-Da),hn=Or*Math.sin(fa-Da);var Ks=Math.abs(fa-va-2*Da)<=Ee?0:1;if(Da&&Ac(zi,Ni,Qi,hn)===Xa^Ks){var Gs=(va+fa)/2;zi=Or*Math.cos(Gs),Ni=Or*Math.sin(Gs),Qi=hn=null}}else zi=Ni=0;if(Dr){Un=Dr*Math.cos(fa-Ya),Vn=Dr*Math.sin(fa-Ya),No=Dr*Math.cos(va+Ya),Gn=Dr*Math.sin(va+Ya);var sl=Math.abs(va-fa+2*Ya)<=Ee?0:1;if(Ya&&Ac(Un,Vn,No,Gn)===1-Xa^sl){var Vi=(va+fa)/2;Un=Dr*Math.cos(Vi),Vn=Dr*Math.sin(Vi),No=Gn=null}}else Un=Vn=0;if(Va>Ke&&(_a=Math.min(Math.abs(Or-Dr)/2,+$e.apply(this,arguments)))>.001){Ra=Dr0?0:1}function ro(de,Re,$e,pt,vt){var wt=de[0]-Re[0],Jt=de[1]-Re[1],Rt=(vt?pt:-pt)/Math.sqrt(wt*wt+Jt*Jt),or=Rt*Jt,Dr=-Rt*wt,Or=de[0]+or,va=de[1]+Dr,fa=Re[0]+or,Va=Re[1]+Dr,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra=fa-Or,Na=Va-va,Qa=Ra*Ra+Na*Na,Ya=$e-pt,Da=Or*Va-fa*va,zi=(Na<0?-1:1)*Math.sqrt(Math.max(0,Ya*Ya*Qa-Da*Da)),Ni=(Da*Na-Ra*zi)/Qa,Qi=(-Da*Ra-Na*zi)/Qa,hn=(Da*Na+Ra*zi)/Qa,Un=(-Da*Ra+Na*zi)/Qa,Vn=Ni-Xa,No=Qi-_a,Gn=hn-Xa,Fo=Un-_a;return Vn*Vn+No*No>Gn*Gn+Fo*Fo&&(Ni=hn,Qi=Un),[[Ni-or,Qi-Dr],[Ni*$e/Ya,Qi*$e/Ya]]}function Po(){return!0}function Nc(de){var Re=Lo,$e=Xi,pt=Po,vt=pc,wt=vt.key,Jt=.7;function Rt(or){var Dr=[],Or=[],va=-1,fa=or.length,Va,Xa=$r(Re),_a=$r($e);function Ra(){Dr.push("M",vt(de(Or),Jt))}for(;++va1?de.join("L"):de+"Z"}function Oe(de){return de.join("L")+"Z"}function R(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt[0]+(pt=de[Re])[0])/2,"V",pt[1]);return $e>1&&vt.push("H",pt[0]),vt.join("")}function ae(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("V",(pt=de[Re])[1],"H",pt[0]);return vt.join("")}function we(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt=de[Re])[0],"V",pt[1]);return vt.join("")}function Se(de,Re){return de.length<4?pc(de):de[1]+bt(de.slice(1,-1),Dt(de,Re))}function De(de,Re){return de.length<3?Oe(de):de[0]+bt((de.push(de[0]),de),Dt([de[de.length-2]].concat(de,[de[1]]),Re))}function ft(de,Re){return de.length<3?pc(de):de[0]+bt(de,Dt(de,Re))}function bt(de,Re){if(Re.length<1||de.length!=Re.length&&de.length!=Re.length+2)return pc(de);var $e=de.length!=Re.length,pt="",vt=de[0],wt=de[1],Jt=Re[0],Rt=Jt,or=1;if($e&&(pt+="Q"+(wt[0]-Jt[0]*2/3)+","+(wt[1]-Jt[1]*2/3)+","+wt[0]+","+wt[1],vt=de[1],or=2),Re.length>1){Rt=Re[1],wt=de[or],or++,pt+="C"+(vt[0]+Jt[0])+","+(vt[1]+Jt[1])+","+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1];for(var Dr=2;Dr9&&(wt=$e*3/Math.sqrt(wt),Jt[Rt]=wt*pt,Jt[Rt+1]=wt*vt));for(Rt=-1;++Rt<=or;)wt=(de[Math.min(or,Rt+1)][0]-de[Math.max(0,Rt-1)][0])/(6*(1+Jt[Rt]*Jt[Rt])),Re.push([wt||0,Jt[Rt]*wt||0]);return Re}function er(de){return de.length<3?pc(de):de[0]+bt(de,Pt(de))}g.svg.line.radial=function(){var de=Nc(nr);return de.radius=de.x,delete de.x,de.angle=de.y,delete de.y,de};function nr(de){for(var Re,$e=-1,pt=de.length,vt,wt;++$eEe)+",1 "+va}function Dr(Or,va,fa,Va){return"Q 0,0 "+Va}return wt.radius=function(Or){return arguments.length?($e=$r(Or),wt):$e},wt.source=function(Or){return arguments.length?(de=$r(Or),wt):de},wt.target=function(Or){return arguments.length?(Re=$r(Or),wt):Re},wt.startAngle=function(Or){return arguments.length?(pt=$r(Or),wt):pt},wt.endAngle=function(Or){return arguments.length?(vt=$r(Or),wt):vt},wt};function ha(de){return de.radius}g.svg.diagonal=function(){var de=Sr,Re=Wr,$e=ga;function pt(vt,wt){var Jt=de.call(this,vt,wt),Rt=Re.call(this,vt,wt),or=(Jt.y+Rt.y)/2,Dr=[Jt,{x:Jt.x,y:or},{x:Rt.x,y:or},Rt];return Dr=Dr.map($e),"M"+Dr[0]+"C"+Dr[1]+" "+Dr[2]+" "+Dr[3]}return pt.source=function(vt){return arguments.length?(de=$r(vt),pt):de},pt.target=function(vt){return arguments.length?(Re=$r(vt),pt):Re},pt.projection=function(vt){return arguments.length?($e=vt,pt):$e},pt};function ga(de){return[de.x,de.y]}g.svg.diagonal.radial=function(){var de=g.svg.diagonal(),Re=ga,$e=de.projection;return de.projection=function(pt){return arguments.length?$e(Pa(Re=pt)):Re},de};function Pa(de){return function(){var Re=de.apply(this,arguments),$e=Re[0],pt=Re[1]-Te;return[$e*Math.cos(pt),$e*Math.sin(pt)]}}g.svg.symbol=function(){var de=di,Re=Ja;function $e(pt,vt){return(Ci.get(de.call(this,pt,vt))||pi)(Re.call(this,pt,vt))}return $e.type=function(pt){return arguments.length?(de=$r(pt),$e):de},$e.size=function(pt){return arguments.length?(Re=$r(pt),$e):Re},$e};function Ja(){return 64}function di(){return"circle"}function pi(de){var Re=Math.sqrt(de/Ee);return"M0,"+Re+"A"+Re+","+Re+" 0 1,1 0,"+-Re+"A"+Re+","+Re+" 0 1,1 0,"+Re+"Z"}var Ci=g.map({circle:pi,cross:function(de){var Re=Math.sqrt(de/5)/2;return"M"+-3*Re+","+-Re+"H"+-Re+"V"+-3*Re+"H"+Re+"V"+-Re+"H"+3*Re+"V"+Re+"H"+Re+"V"+3*Re+"H"+-Re+"V"+Re+"H"+-3*Re+"Z"},diamond:function(de){var Re=Math.sqrt(de/(2*Bn)),$e=Re*Bn;return"M0,"+-Re+"L"+$e+",0 0,"+Re+" "+-$e+",0Z"},square:function(de){var Re=Math.sqrt(de)/2;return"M"+-Re+","+-Re+"L"+Re+","+-Re+" "+Re+","+Re+" "+-Re+","+Re+"Z"},"triangle-down":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+$e+"L"+Re+","+-$e+" "+-Re+","+-$e+"Z"},"triangle-up":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+-$e+"L"+Re+","+$e+" "+-Re+","+$e+"Z"}});g.svg.symbolTypes=Ci.keys();var $i=Math.sqrt(3),Bn=Math.tan(30*Le);ne.transition=function(de){for(var Re=ls||++Vo,$e=Go(de),pt=[],vt,wt,Jt=rl||{time:Date.now(),ease:cu,delay:0,duration:250},Rt=-1,or=this.length;++Rt0;)va[--Qa].call(de,Na);if(Ra>=1)return Jt.event&&Jt.event.end.call(de,de.__data__,Re),--wt.count?delete wt[pt]:delete de[$e],1}Jt||(Rt=vt.time,or=Mn(fa,0,Rt),Jt=wt[pt]={tween:new S,time:Rt,timer:or,delay:vt.delay,duration:vt.duration,ease:vt.ease,index:Re},vt=null,++wt.count)}g.svg.axis=function(){var de=g.scale.linear(),Re=Xl,$e=6,pt=6,vt=3,wt=[10],Jt=null,Rt;function or(Dr){Dr.each(function(){var Or=g.select(this),va=this.__chart__||de,fa=this.__chart__=de.copy(),Va=Jt??(fa.ticks?fa.ticks.apply(fa,wt):fa.domain()),Xa=Rt??(fa.tickFormat?fa.tickFormat.apply(fa,wt):F),_a=Or.selectAll(".tick").data(Va,fa),Ra=_a.enter().insert("g",".domain").attr("class","tick").style("opacity",Ke),Na=g.transition(_a.exit()).style("opacity",Ke).remove(),Qa=g.transition(_a.order()).style("opacity",1),Ya=Math.max($e,0)+vt,Da,zi=ki(fa),Ni=Or.selectAll(".domain").data([0]),Qi=(Ni.enter().append("path").attr("class","domain"),g.transition(Ni));Ra.append("line"),Ra.append("text");var hn=Ra.select("line"),Un=Qa.select("line"),Vn=_a.select("text").text(Xa),No=Ra.select("text"),Gn=Qa.select("text"),Fo=Re==="top"||Re==="left"?-1:1,Ks,Gs,sl,Vi;if(Re==="bottom"||Re==="top"?(Da=fu,Ks="x",sl="y",Gs="x2",Vi="y2",Vn.attr("dy",Fo<0?"0em":".71em").style("text-anchor","middle"),Qi.attr("d","M"+zi[0]+","+Fo*pt+"V0H"+zi[1]+"V"+Fo*pt)):(Da=bl,Ks="y",sl="x",Gs="y2",Vi="x2",Vn.attr("dy",".32em").style("text-anchor",Fo<0?"end":"start"),Qi.attr("d","M"+Fo*pt+","+zi[0]+"H0V"+zi[1]+"H"+Fo*pt)),hn.attr(Vi,Fo*$e),No.attr(sl,Fo*Ya),Un.attr(Gs,0).attr(Vi,Fo*$e),Gn.attr(Ks,0).attr(sl,Fo*Ya),fa.rangeBand){var ao=fa,ns=ao.rangeBand()/2;va=fa=function(hs){return ao(hs)+ns}}else va.rangeBand?va=fa:Na.call(Da,fa,va);Ra.call(Da,va,fa),Qa.call(Da,fa,fa)})}return or.scale=function(Dr){return arguments.length?(de=Dr,or):de},or.orient=function(Dr){return arguments.length?(Re=Dr in qu?Dr+"":Xl,or):Re},or.ticks=function(){return arguments.length?(wt=A(arguments),or):wt},or.tickValues=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.tickFormat=function(Dr){return arguments.length?(Rt=Dr,or):Rt},or.tickSize=function(Dr){var Or=arguments.length;return Or?($e=+Dr,pt=+arguments[Or-1],or):$e},or.innerTickSize=function(Dr){return arguments.length?($e=+Dr,or):$e},or.outerTickSize=function(Dr){return arguments.length?(pt=+Dr,or):pt},or.tickPadding=function(Dr){return arguments.length?(vt=+Dr,or):vt},or.tickSubdivide=function(){return arguments.length&&or},or};var Xl="bottom",qu={top:1,right:1,bottom:1,left:1};function fu(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate("+(isFinite(vt)?vt:$e(pt))+",0)"})}function bl(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate(0,"+(isFinite(vt)?vt:$e(pt))+")"})}g.svg.brush=function(){var de=se(Or,"brushstart","brush","brushend"),Re=null,$e=null,pt=[0,0],vt=[0,0],wt,Jt,Rt=!0,or=!0,Dr=Sc[0];function Or(_a){_a.each(function(){var Ra=g.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Xa).on("touchstart.brush",Xa),Na=Ra.selectAll(".background").data([0]);Na.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ra.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Qa=Ra.selectAll(".resize").data(Dr,F);Qa.exit().remove(),Qa.enter().append("g").attr("class",function(Ni){return"resize "+Ni}).style("cursor",function(Ni){return ou[Ni]}).append("rect").attr("x",function(Ni){return/[ew]$/.test(Ni)?-3:null}).attr("y",function(Ni){return/^[ns]/.test(Ni)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Qa.style("display",Or.empty()?"none":null);var Ya=g.transition(Ra),Da=g.transition(Na),zi;Re&&(zi=ki(Re),Da.attr("x",zi[0]).attr("width",zi[1]-zi[0]),fa(Ya)),$e&&(zi=ki($e),Da.attr("y",zi[0]).attr("height",zi[1]-zi[0]),Va(Ya)),va(Ya)})}Or.event=function(_a){_a.each(function(){var Ra=de.of(this,arguments),Na={x:pt,y:vt,i:wt,j:Jt},Qa=this.__chart__||Na;this.__chart__=Na,ls?g.select(this).transition().each("start.brush",function(){wt=Qa.i,Jt=Qa.j,pt=Qa.x,vt=Qa.y,Ra({type:"brushstart"})}).tween("brush:brush",function(){var Ya=Yu(pt,Na.x),Da=Yu(vt,Na.y);return wt=Jt=null,function(zi){pt=Na.x=Ya(zi),vt=Na.y=Da(zi),Ra({type:"brush",mode:"resize"})}}).each("end.brush",function(){wt=Na.i,Jt=Na.j,Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"})}):(Ra({type:"brushstart"}),Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"}))})};function va(_a){_a.selectAll(".resize").attr("transform",function(Ra){return"translate("+pt[+/e$/.test(Ra)]+","+vt[+/^s/.test(Ra)]+")"})}function fa(_a){_a.select(".extent").attr("x",pt[0]),_a.selectAll(".extent,.n>rect,.s>rect").attr("width",pt[1]-pt[0])}function Va(_a){_a.select(".extent").attr("y",vt[0]),_a.selectAll(".extent,.e>rect,.w>rect").attr("height",vt[1]-vt[0])}function Xa(){var _a=this,Ra=g.select(g.event.target),Na=de.of(_a,arguments),Qa=g.select(_a),Ya=Ra.datum(),Da=!/^(n|s)$/.test(Ya)&&Re,zi=!/^(e|w)$/.test(Ya)&&$e,Ni=Ra.classed("extent"),Qi=vr(_a),hn,Un=g.mouse(_a),Vn,No=g.select(t(_a)).on("keydown.brush",Ks).on("keyup.brush",Gs);if(g.event.changedTouches?No.on("touchmove.brush",sl).on("touchend.brush",ao):No.on("mousemove.brush",sl).on("mouseup.brush",ao),Qa.interrupt().selectAll("*").interrupt(),Ni)Un[0]=pt[0]-Un[0],Un[1]=vt[0]-Un[1];else if(Ya){var Gn=+/w$/.test(Ya),Fo=+/^n/.test(Ya);Vn=[pt[1-Gn]-Un[0],vt[1-Fo]-Un[1]],Un[0]=pt[Gn],Un[1]=vt[Fo]}else g.event.altKey&&(hn=Un.slice());Qa.style("pointer-events","none").selectAll(".resize").style("display",null),g.select("body").style("cursor",Ra.style("cursor")),Na({type:"brushstart"}),sl();function Ks(){g.event.keyCode==32&&(Ni||(hn=null,Un[0]-=pt[1],Un[1]-=vt[1],Ni=2),Q())}function Gs(){g.event.keyCode==32&&Ni==2&&(Un[0]+=pt[1],Un[1]+=vt[1],Ni=0,Q())}function sl(){var ns=g.mouse(_a),hs=!1;Vn&&(ns[0]+=Vn[0],ns[1]+=Vn[1]),Ni||(g.event.altKey?(hn||(hn=[(pt[0]+pt[1])/2,(vt[0]+vt[1])/2]),Un[0]=pt[+(ns[0]0))return jt;do jt.push(ur=new Date(+Ct)),ze(Ct,Ot),ce(Ct);while(ur=St)for(;ce(St),!Ct(St);)St.setTime(St-1)},function(St,Ot){if(St>=St)if(Ot<0)for(;++Ot<=0;)for(;ze(St,-1),!Ct(St););else for(;--Ot>=0;)for(;ze(St,1),!Ct(St););})},tt&&(Qe.count=function(Ct,St){return x.setTime(+Ct),A.setTime(+St),ce(x),ce(A),Math.floor(tt(x,A))},Qe.every=function(Ct){return Ct=Math.floor(Ct),!isFinite(Ct)||!(Ct>0)?null:Ct>1?Qe.filter(nt?function(St){return nt(St)%Ct===0}:function(St){return Qe.count(0,St)%Ct===0}):Qe}),Qe}var e=M(function(){},function(ce,ze){ce.setTime(+ce+ze)},function(ce,ze){return ze-ce});e.every=function(ce){return ce=Math.floor(ce),!isFinite(ce)||!(ce>0)?null:ce>1?M(function(ze){ze.setTime(Math.floor(ze/ce)*ce)},function(ze,tt){ze.setTime(+ze+tt*ce)},function(ze,tt){return(tt-ze)/ce}):e};var t=e.range,r=1e3,o=6e4,a=36e5,i=864e5,n=6048e5,s=M(function(ce){ce.setTime(ce-ce.getMilliseconds())},function(ce,ze){ce.setTime(+ce+ze*r)},function(ce,ze){return(ze-ce)/r},function(ce){return ce.getUTCSeconds()}),c=s.range,h=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getMinutes()}),v=h.range,p=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r-ce.getMinutes()*o)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getHours()}),T=p.range,l=M(function(ce){ce.setHours(0,0,0,0)},function(ce,ze){ce.setDate(ce.getDate()+ze)},function(ce,ze){return(ze-ce-(ze.getTimezoneOffset()-ce.getTimezoneOffset())*o)/i},function(ce){return ce.getDate()-1}),_=l.range;function w(ce){return M(function(ze){ze.setDate(ze.getDate()-(ze.getDay()+7-ce)%7),ze.setHours(0,0,0,0)},function(ze,tt){ze.setDate(ze.getDate()+tt*7)},function(ze,tt){return(tt-ze-(tt.getTimezoneOffset()-ze.getTimezoneOffset())*o)/n})}var S=w(0),E=w(1),m=w(2),b=w(3),d=w(4),u=w(5),y=w(6),f=S.range,P=E.range,L=m.range,z=b.range,F=d.range,B=u.range,O=y.range,I=M(function(ce){ce.setDate(1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setMonth(ce.getMonth()+ze)},function(ce,ze){return ze.getMonth()-ce.getMonth()+(ze.getFullYear()-ce.getFullYear())*12},function(ce){return ce.getMonth()}),N=I.range,U=M(function(ce){ce.setMonth(0,1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setFullYear(ce.getFullYear()+ze)},function(ce,ze){return ze.getFullYear()-ce.getFullYear()},function(ce){return ce.getFullYear()});U.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setFullYear(Math.floor(ze.getFullYear()/ce)*ce),ze.setMonth(0,1),ze.setHours(0,0,0,0)},function(ze,tt){ze.setFullYear(ze.getFullYear()+tt*ce)})};var W=U.range,Q=M(function(ce){ce.setUTCSeconds(0,0)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getUTCMinutes()}),ue=Q.range,se=M(function(ce){ce.setUTCMinutes(0,0,0)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getUTCHours()}),he=se.range,G=M(function(ce){ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCDate(ce.getUTCDate()+ze)},function(ce,ze){return(ze-ce)/i},function(ce){return ce.getUTCDate()-1}),$=G.range;function J(ce){return M(function(ze){ze.setUTCDate(ze.getUTCDate()-(ze.getUTCDay()+7-ce)%7),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCDate(ze.getUTCDate()+tt*7)},function(ze,tt){return(tt-ze)/n})}var Z=J(0),re=J(1),ne=J(2),j=J(3),ee=J(4),ie=J(5),fe=J(6),be=Z.range,Ae=re.range,Be=ne.range,Ie=j.range,Ze=ee.range,at=ie.range,it=fe.range,et=M(function(ce){ce.setUTCDate(1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCMonth(ce.getUTCMonth()+ze)},function(ce,ze){return ze.getUTCMonth()-ce.getUTCMonth()+(ze.getUTCFullYear()-ce.getUTCFullYear())*12},function(ce){return ce.getUTCMonth()}),lt=et.range,Me=M(function(ce){ce.setUTCMonth(0,1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCFullYear(ce.getUTCFullYear()+ze)},function(ce,ze){return ze.getUTCFullYear()-ce.getUTCFullYear()},function(ce){return ce.getUTCFullYear()});Me.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setUTCFullYear(Math.floor(ze.getUTCFullYear()/ce)*ce),ze.setUTCMonth(0,1),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCFullYear(ze.getUTCFullYear()+tt*ce)})};var ge=Me.range;g.timeDay=l,g.timeDays=_,g.timeFriday=u,g.timeFridays=B,g.timeHour=p,g.timeHours=T,g.timeInterval=M,g.timeMillisecond=e,g.timeMilliseconds=t,g.timeMinute=h,g.timeMinutes=v,g.timeMonday=E,g.timeMondays=P,g.timeMonth=I,g.timeMonths=N,g.timeSaturday=y,g.timeSaturdays=O,g.timeSecond=s,g.timeSeconds=c,g.timeSunday=S,g.timeSundays=f,g.timeThursday=d,g.timeThursdays=F,g.timeTuesday=m,g.timeTuesdays=L,g.timeWednesday=b,g.timeWednesdays=z,g.timeWeek=S,g.timeWeeks=f,g.timeYear=U,g.timeYears=W,g.utcDay=G,g.utcDays=$,g.utcFriday=ie,g.utcFridays=at,g.utcHour=se,g.utcHours=he,g.utcMillisecond=e,g.utcMilliseconds=t,g.utcMinute=Q,g.utcMinutes=ue,g.utcMonday=re,g.utcMondays=Ae,g.utcMonth=et,g.utcMonths=lt,g.utcSaturday=fe,g.utcSaturdays=it,g.utcSecond=s,g.utcSeconds=c,g.utcSunday=Z,g.utcSundays=be,g.utcThursday=ee,g.utcThursdays=Ze,g.utcTuesday=ne,g.utcTuesdays=Be,g.utcWednesday=j,g.utcWednesdays=Ie,g.utcWeek=Z,g.utcWeeks=be,g.utcYear=Me,g.utcYears=ge,Object.defineProperty(g,"__esModule",{value:!0})})}}),Np=Ye({"node_modules/d3-time-format/dist/d3-time-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,$p()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ke.setFullYear(Fe.y),Ke}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function M(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ke.setUTCFullYear(Fe.y),Ke}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function e(Fe,Ke,Ne){return{y:Fe,m:Ke,d:Ne,H:0,M:0,S:0,L:0}}function t(Fe){var Ke=Fe.dateTime,Ne=Fe.date,Ee=Fe.time,Ve=Fe.periods,ke=Fe.days,Te=Fe.shortDays,Le=Fe.months,rt=Fe.shortMonths,dt=c(Ve),xt=h(Ve),It=c(ke),Bt=h(ke),Gt=c(Te),Kt=h(Te),sr=c(Le),sa=h(Le),Aa=c(rt),La=h(rt),ka={a:Fa,A:qa,b:ya,B:$a,c:null,d:I,e:I,f:ue,H:N,I:U,j:W,L:Q,m:se,M:he,p:mt,q:gt,Q:St,s:Ot,S:G,u:$,U:J,V:Z,w:re,W:ne,x:null,X:null,y:j,Y:ee,Z:ie,"%":Ct},Ga={a:Er,A:kr,b:br,B:Tr,c:null,d:fe,e:fe,f:Ze,H:be,I:Ae,j:Be,L:Ie,m:at,M:it,p:Mr,q:Fr,Q:St,s:Ot,S:et,u:lt,U:Me,V:ge,w:ce,W:ze,x:null,X:null,y:tt,Y:nt,Z:Qe,"%":Ct},Ma={a:Vt,A:Ut,b:xr,B:Zr,c:pa,d,e:d,f:z,H:y,I:y,j:u,L,m:b,M:f,p:zt,q:m,Q:B,s:O,S:P,u:p,U:T,V:l,w:v,W:_,x:Xr,X:Ea,y:S,Y:w,Z:E,"%":F};ka.x=Ua(Ne,ka),ka.X=Ua(Ee,ka),ka.c=Ua(Ke,ka),Ga.x=Ua(Ne,Ga),Ga.X=Ua(Ee,Ga),Ga.c=Ua(Ke,Ga);function Ua(Lr,Jr){return function(oa){var ca=[],kt=-1,ir=0,mr=Lr.length,$r,ma,Ba;for(oa instanceof Date||(oa=new Date(+oa));++kt53)return null;"w"in ca||(ca.w=1),"Z"in ca?(ir=M(e(ca.y,0,1)),mr=ir.getUTCDay(),ir=mr>4||mr===0?x.utcMonday.ceil(ir):x.utcMonday(ir),ir=x.utcDay.offset(ir,(ca.V-1)*7),ca.y=ir.getUTCFullYear(),ca.m=ir.getUTCMonth(),ca.d=ir.getUTCDate()+(ca.w+6)%7):(ir=A(e(ca.y,0,1)),mr=ir.getDay(),ir=mr>4||mr===0?x.timeMonday.ceil(ir):x.timeMonday(ir),ir=x.timeDay.offset(ir,(ca.V-1)*7),ca.y=ir.getFullYear(),ca.m=ir.getMonth(),ca.d=ir.getDate()+(ca.w+6)%7)}else("W"in ca||"U"in ca)&&("w"in ca||(ca.w="u"in ca?ca.u%7:"W"in ca?1:0),mr="Z"in ca?M(e(ca.y,0,1)).getUTCDay():A(e(ca.y,0,1)).getDay(),ca.m=0,ca.d="W"in ca?(ca.w+6)%7+ca.W*7-(mr+5)%7:ca.w+ca.U*7-(mr+6)%7);return"Z"in ca?(ca.H+=ca.Z/100|0,ca.M+=ca.Z%100,M(ca)):A(ca)}}function Wt(Lr,Jr,oa,ca){for(var kt=0,ir=Jr.length,mr=oa.length,$r,ma;kt=mr)return-1;if($r=Jr.charCodeAt(kt++),$r===37){if($r=Jr.charAt(kt++),ma=Ma[$r in r?Jr.charAt(kt++):$r],!ma||(ca=ma(Lr,oa,ca))<0)return-1}else if($r!=oa.charCodeAt(ca++))return-1}return ca}function zt(Lr,Jr,oa){var ca=dt.exec(Jr.slice(oa));return ca?(Lr.p=xt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Vt(Lr,Jr,oa){var ca=Gt.exec(Jr.slice(oa));return ca?(Lr.w=Kt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Ut(Lr,Jr,oa){var ca=It.exec(Jr.slice(oa));return ca?(Lr.w=Bt[ca[0].toLowerCase()],oa+ca[0].length):-1}function xr(Lr,Jr,oa){var ca=Aa.exec(Jr.slice(oa));return ca?(Lr.m=La[ca[0].toLowerCase()],oa+ca[0].length):-1}function Zr(Lr,Jr,oa){var ca=sr.exec(Jr.slice(oa));return ca?(Lr.m=sa[ca[0].toLowerCase()],oa+ca[0].length):-1}function pa(Lr,Jr,oa){return Wt(Lr,Ke,Jr,oa)}function Xr(Lr,Jr,oa){return Wt(Lr,Ne,Jr,oa)}function Ea(Lr,Jr,oa){return Wt(Lr,Ee,Jr,oa)}function Fa(Lr){return Te[Lr.getDay()]}function qa(Lr){return ke[Lr.getDay()]}function ya(Lr){return rt[Lr.getMonth()]}function $a(Lr){return Le[Lr.getMonth()]}function mt(Lr){return Ve[+(Lr.getHours()>=12)]}function gt(Lr){return 1+~~(Lr.getMonth()/3)}function Er(Lr){return Te[Lr.getUTCDay()]}function kr(Lr){return ke[Lr.getUTCDay()]}function br(Lr){return rt[Lr.getUTCMonth()]}function Tr(Lr){return Le[Lr.getUTCMonth()]}function Mr(Lr){return Ve[+(Lr.getUTCHours()>=12)]}function Fr(Lr){return 1+~~(Lr.getUTCMonth()/3)}return{format:function(Lr){var Jr=Ua(Lr+="",ka);return Jr.toString=function(){return Lr},Jr},parse:function(Lr){var Jr=ni(Lr+="",!1);return Jr.toString=function(){return Lr},Jr},utcFormat:function(Lr){var Jr=Ua(Lr+="",Ga);return Jr.toString=function(){return Lr},Jr},utcParse:function(Lr){var Jr=ni(Lr+="",!0);return Jr.toString=function(){return Lr},Jr}}}var r={"-":"",_:" ",0:"0"},o=/^\s*\d+/,a=/^%/,i=/[\\^$*+?|[\]().{}]/g;function n(Fe,Ke,Ne){var Ee=Fe<0?"-":"",Ve=(Ee?-Fe:Fe)+"",ke=Ve.length;return Ee+(ke68?1900:2e3),Ne+Ee[0].length):-1}function E(Fe,Ke,Ne){var Ee=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.Z=Ee[1]?0:-(Ee[2]+(Ee[3]||"00")),Ne+Ee[0].length):-1}function m(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.q=Ee[0]*3-3,Ne+Ee[0].length):-1}function b(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.m=Ee[0]-1,Ne+Ee[0].length):-1}function d(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.d=+Ee[0],Ne+Ee[0].length):-1}function u(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.m=0,Fe.d=+Ee[0],Ne+Ee[0].length):-1}function y(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.H=+Ee[0],Ne+Ee[0].length):-1}function f(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.M=+Ee[0],Ne+Ee[0].length):-1}function P(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.S=+Ee[0],Ne+Ee[0].length):-1}function L(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.L=+Ee[0],Ne+Ee[0].length):-1}function z(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.L=Math.floor(Ee[0]/1e3),Ne+Ee[0].length):-1}function F(Fe,Ke,Ne){var Ee=a.exec(Ke.slice(Ne,Ne+1));return Ee?Ne+Ee[0].length:-1}function B(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.Q=+Ee[0],Ne+Ee[0].length):-1}function O(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.s=+Ee[0],Ne+Ee[0].length):-1}function I(Fe,Ke){return n(Fe.getDate(),Ke,2)}function N(Fe,Ke){return n(Fe.getHours(),Ke,2)}function U(Fe,Ke){return n(Fe.getHours()%12||12,Ke,2)}function W(Fe,Ke){return n(1+x.timeDay.count(x.timeYear(Fe),Fe),Ke,3)}function Q(Fe,Ke){return n(Fe.getMilliseconds(),Ke,3)}function ue(Fe,Ke){return Q(Fe,Ke)+"000"}function se(Fe,Ke){return n(Fe.getMonth()+1,Ke,2)}function he(Fe,Ke){return n(Fe.getMinutes(),Ke,2)}function G(Fe,Ke){return n(Fe.getSeconds(),Ke,2)}function $(Fe){var Ke=Fe.getDay();return Ke===0?7:Ke}function J(Fe,Ke){return n(x.timeSunday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function Z(Fe,Ke){var Ne=Fe.getDay();return Fe=Ne>=4||Ne===0?x.timeThursday(Fe):x.timeThursday.ceil(Fe),n(x.timeThursday.count(x.timeYear(Fe),Fe)+(x.timeYear(Fe).getDay()===4),Ke,2)}function re(Fe){return Fe.getDay()}function ne(Fe,Ke){return n(x.timeMonday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function j(Fe,Ke){return n(Fe.getFullYear()%100,Ke,2)}function ee(Fe,Ke){return n(Fe.getFullYear()%1e4,Ke,4)}function ie(Fe){var Ke=Fe.getTimezoneOffset();return(Ke>0?"-":(Ke*=-1,"+"))+n(Ke/60|0,"0",2)+n(Ke%60,"0",2)}function fe(Fe,Ke){return n(Fe.getUTCDate(),Ke,2)}function be(Fe,Ke){return n(Fe.getUTCHours(),Ke,2)}function Ae(Fe,Ke){return n(Fe.getUTCHours()%12||12,Ke,2)}function Be(Fe,Ke){return n(1+x.utcDay.count(x.utcYear(Fe),Fe),Ke,3)}function Ie(Fe,Ke){return n(Fe.getUTCMilliseconds(),Ke,3)}function Ze(Fe,Ke){return Ie(Fe,Ke)+"000"}function at(Fe,Ke){return n(Fe.getUTCMonth()+1,Ke,2)}function it(Fe,Ke){return n(Fe.getUTCMinutes(),Ke,2)}function et(Fe,Ke){return n(Fe.getUTCSeconds(),Ke,2)}function lt(Fe){var Ke=Fe.getUTCDay();return Ke===0?7:Ke}function Me(Fe,Ke){return n(x.utcSunday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function ge(Fe,Ke){var Ne=Fe.getUTCDay();return Fe=Ne>=4||Ne===0?x.utcThursday(Fe):x.utcThursday.ceil(Fe),n(x.utcThursday.count(x.utcYear(Fe),Fe)+(x.utcYear(Fe).getUTCDay()===4),Ke,2)}function ce(Fe){return Fe.getUTCDay()}function ze(Fe,Ke){return n(x.utcMonday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function tt(Fe,Ke){return n(Fe.getUTCFullYear()%100,Ke,2)}function nt(Fe,Ke){return n(Fe.getUTCFullYear()%1e4,Ke,4)}function Qe(){return"+0000"}function Ct(){return"%"}function St(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var jt;ur({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ur(Fe){return jt=t(Fe),g.timeFormat=jt.format,g.timeParse=jt.parse,g.utcFormat=jt.utcFormat,g.utcParse=jt.utcParse,jt}var ar="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(Fe){return Fe.toISOString()}var vr=Date.prototype.toISOString?Cr:g.utcFormat(ar);function _r(Fe){var Ke=new Date(Fe);return isNaN(Ke)?null:Ke}var yt=+new Date("2000-01-01T00:00:00.000Z")?_r:g.utcParse(ar);g.isoFormat=vr,g.isoParse=yt,g.timeFormatDefaultLocale=ur,g.timeFormatLocale=t,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zy=Ye({"node_modules/d3-format/dist/d3-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){return Math.abs(b=Math.round(b))>=1e21?b.toLocaleString("en").replace(/,/g,""):b.toString(10)}function A(b,d){if((u=(b=d?b.toExponential(d-1):b.toExponential()).indexOf("e"))<0)return null;var u,y=b.slice(0,u);return[y.length>1?y[0]+y.slice(2):y,+b.slice(u+1)]}function M(b){return b=A(Math.abs(b)),b?b[1]:NaN}function e(b,d){return function(u,y){for(var f=u.length,P=[],L=0,z=b[0],F=0;f>0&&z>0&&(F+z+1>y&&(z=Math.max(1,y-F)),P.push(u.substring(f-=z,f+z)),!((F+=z+1)>y));)z=b[L=(L+1)%b.length];return P.reverse().join(d)}}function t(b){return function(d){return d.replace(/[0-9]/g,function(u){return b[+u]})}}var r=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(b){if(!(d=r.exec(b)))throw new Error("invalid format: "+b);var d;return new a({fill:d[1],align:d[2],sign:d[3],symbol:d[4],zero:d[5],width:d[6],comma:d[7],precision:d[8]&&d[8].slice(1),trim:d[9],type:d[10]})}o.prototype=a.prototype;function a(b){this.fill=b.fill===void 0?" ":b.fill+"",this.align=b.align===void 0?">":b.align+"",this.sign=b.sign===void 0?"-":b.sign+"",this.symbol=b.symbol===void 0?"":b.symbol+"",this.zero=!!b.zero,this.width=b.width===void 0?void 0:+b.width,this.comma=!!b.comma,this.precision=b.precision===void 0?void 0:+b.precision,this.trim=!!b.trim,this.type=b.type===void 0?"":b.type+""}a.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function i(b){e:for(var d=b.length,u=1,y=-1,f;u0&&(y=0);break}return y>0?b.slice(0,y)+b.slice(f+1):b}var n;function s(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1],P=f-(n=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,L=y.length;return P===L?y:P>L?y+new Array(P-L+1).join("0"):P>0?y.slice(0,P)+"."+y.slice(P):"0."+new Array(1-P).join("0")+A(b,Math.max(0,d+P-1))[0]}function c(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1];return f<0?"0."+new Array(-f).join("0")+y:y.length>f+1?y.slice(0,f+1)+"."+y.slice(f+1):y+new Array(f-y.length+2).join("0")}var h={"%":function(b,d){return(b*100).toFixed(d)},b:function(b){return Math.round(b).toString(2)},c:function(b){return b+""},d:x,e:function(b,d){return b.toExponential(d)},f:function(b,d){return b.toFixed(d)},g:function(b,d){return b.toPrecision(d)},o:function(b){return Math.round(b).toString(8)},p:function(b,d){return c(b*100,d)},r:c,s,X:function(b){return Math.round(b).toString(16).toUpperCase()},x:function(b){return Math.round(b).toString(16)}};function v(b){return b}var p=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function l(b){var d=b.grouping===void 0||b.thousands===void 0?v:e(p.call(b.grouping,Number),b.thousands+""),u=b.currency===void 0?"":b.currency[0]+"",y=b.currency===void 0?"":b.currency[1]+"",f=b.decimal===void 0?".":b.decimal+"",P=b.numerals===void 0?v:t(p.call(b.numerals,String)),L=b.percent===void 0?"%":b.percent+"",z=b.minus===void 0?"-":b.minus+"",F=b.nan===void 0?"NaN":b.nan+"";function B(I){I=o(I);var N=I.fill,U=I.align,W=I.sign,Q=I.symbol,ue=I.zero,se=I.width,he=I.comma,G=I.precision,$=I.trim,J=I.type;J==="n"?(he=!0,J="g"):h[J]||(G===void 0&&(G=12),$=!0,J="g"),(ue||N==="0"&&U==="=")&&(ue=!0,N="0",U="=");var Z=Q==="$"?u:Q==="#"&&/[boxX]/.test(J)?"0"+J.toLowerCase():"",re=Q==="$"?y:/[%p]/.test(J)?L:"",ne=h[J],j=/[defgprs%]/.test(J);G=G===void 0?6:/[gprs]/.test(J)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G));function ee(ie){var fe=Z,be=re,Ae,Be,Ie;if(J==="c")be=ne(ie)+be,ie="";else{ie=+ie;var Ze=ie<0||1/ie<0;if(ie=isNaN(ie)?F:ne(Math.abs(ie),G),$&&(ie=i(ie)),Ze&&+ie==0&&W!=="+"&&(Ze=!1),fe=(Ze?W==="("?W:z:W==="-"||W==="("?"":W)+fe,be=(J==="s"?T[8+n/3]:"")+be+(Ze&&W==="("?")":""),j){for(Ae=-1,Be=ie.length;++AeIe||Ie>57){be=(Ie===46?f+ie.slice(Ae+1):ie.slice(Ae))+be,ie=ie.slice(0,Ae);break}}}he&&!ue&&(ie=d(ie,1/0));var at=fe.length+ie.length+be.length,it=at>1)+fe+ie+be+it.slice(at);break;default:ie=it+fe+ie+be;break}return P(ie)}return ee.toString=function(){return I+""},ee}function O(I,N){var U=B((I=o(I),I.type="f",I)),W=Math.max(-8,Math.min(8,Math.floor(M(N)/3)))*3,Q=Math.pow(10,-W),ue=T[8+W/3];return function(se){return U(Q*se)+ue}}return{format:B,formatPrefix:O}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(b){return _=l(b),g.format=_.format,g.formatPrefix=_.formatPrefix,_}function S(b){return Math.max(0,-M(Math.abs(b)))}function E(b,d){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(M(d)/3)))*3-M(Math.abs(b)))}function m(b,d){return b=Math.abs(b),d=Math.abs(d)-b,Math.max(0,M(d)-M(b))+1}g.FormatSpecifier=a,g.formatDefaultLocale=w,g.formatLocale=l,g.formatSpecifier=o,g.precisionFixed=S,g.precisionPrefix=E,g.precisionRound=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),aF=Ye({"node_modules/is-string-blank/index.js"(X,H){"use strict";H.exports=function(g){for(var x=g.length,A,M=0;M13)&&A!==32&&A!==133&&A!==160&&A!==5760&&A!==6158&&(A<8192||A>8205)&&A!==8232&&A!==8233&&A!==8239&&A!==8287&&A!==8288&&A!==12288&&A!==65279)return!1;return!0}}}),jo=Ye({"node_modules/fast-isnumeric/index.js"(X,H){"use strict";var g=aF();H.exports=function(x){var A=typeof x;if(A==="string"){var M=x;if(x=+x,x===0&&g(M))return!1}else if(A!=="number")return!1;return x-x<1}}}),ks=Ye({"src/constants/numerical.js"(X,H){"use strict";H.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}}}),XA=Ye({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g["base64-arraybuffer"]={}))})(X,function(g){"use strict";for(var x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A=typeof Uint8Array>"u"?[]:new Uint8Array(256),M=0;M>2],n+=x[(o[a]&3)<<4|o[a+1]>>4],n+=x[(o[a+1]&15)<<2|o[a+2]>>6],n+=x[o[a+2]&63];return i%3===2?n=n.substring(0,n.length-1)+"=":i%3===1&&(n=n.substring(0,n.length-2)+"=="),n},t=function(r){var o=r.length*.75,a=r.length,i,n=0,s,c,h,v;r[r.length-1]==="="&&(o--,r[r.length-2]==="="&&o--);var p=new ArrayBuffer(o),T=new Uint8Array(p);for(i=0;i>4,T[n++]=(c&15)<<4|h>>2,T[n++]=(h&3)<<6|v&63;return p};g.decode=t,g.encode=e,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zv=Ye({"src/lib/is_plain_object.js"(X,H){"use strict";H.exports=function(x){return window&&window.process&&window.process.versions?Object.prototype.toString.call(x)==="[object Object]":Object.prototype.toString.call(x)==="[object Object]"&&Object.getPrototypeOf(x).hasOwnProperty("hasOwnProperty")}}}),xp=Ye({"src/lib/array.js"(X){"use strict";var H=XA().decode,g=Zv(),x=Array.isArray,A=ArrayBuffer,M=DataView;function e(s){return A.isView(s)&&!(s instanceof M)}X.isTypedArray=e;function t(s){return x(s)||e(s)}X.isArrayOrTypedArray=t;function r(s){return!t(s[0])}X.isArray1D=r,X.ensureArray=function(s,c){return x(s)||(s=[]),s.length=c,s};var o={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};o.uint8c=o.u1c,o.uint8=o.u1,o.int8=o.i1,o.uint16=o.u2,o.int16=o.i2,o.uint32=o.u4,o.int32=o.i4,o.float32=o.f4,o.float64=o.f8;function a(s){return s.constructor===ArrayBuffer}X.isArrayBuffer=a,X.decodeTypedArraySpec=function(s){var c=[],h=i(s),v=h.dtype,p=o[v];if(!p)throw new Error('Error in dtype: "'+v+'"');var T=p.BYTES_PER_ELEMENT,l=h.bdata;a(l)||(l=H(l));var _=h.shape===void 0?[l.byteLength/T]:(""+h.shape).split(",");_.reverse();var w=_.length,S,E,m=+_[0],b=T*m,d=0;if(w===1)c=new p(l);else if(w===2)for(S=+_[1],E=0;E2)return p[S]=p[S]|e,_.set(w,null);if(l){for(c=S;c0)return Math.log(A)/Math.LN10;var e=Math.log(Math.min(M[0],M[1]))/Math.LN10;return g(e)||(e=Math.log(Math.max(M[0],M[1]))/Math.LN10-6),e}}}),oF=Ye({"src/lib/relink_private.js"(X,H){"use strict";var g=xp().isArrayOrTypedArray,x=Zv();H.exports=function A(M,e){for(var t in e){var r=e[t],o=M[t];if(o!==r)if(t.charAt(0)==="_"||typeof r=="function"){if(t in M)continue;M[t]=r}else if(g(r)&&g(o)&&x(r[0])){if(t==="customdata"||t==="ids")continue;for(var a=Math.min(r.length,o.length),i=0;iM/2?A-Math.round(A/M)*M:A}H.exports={mod:g,modHalf:x}}}),bh=Ye({"node_modules/tinycolor2/tinycolor.js"(X,H){(function(g){var x=/^\s+/,A=/\s+$/,M=0,e=g.round,t=g.min,r=g.max,o=g.random;function a(j,ee){if(j=j||"",ee=ee||{},j instanceof a)return j;if(!(this instanceof a))return new a(j,ee);var ie=i(j);this._originalInput=j,this._r=ie.r,this._g=ie.g,this._b=ie.b,this._a=ie.a,this._roundA=e(100*this._a)/100,this._format=ee.format||ie.format,this._gradientType=ee.gradientType,this._r<1&&(this._r=e(this._r)),this._g<1&&(this._g=e(this._g)),this._b<1&&(this._b=e(this._b)),this._ok=ie.ok,this._tc_id=M++}a.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),ee,ie,fe,be,Ae,Be;return ee=j.r/255,ie=j.g/255,fe=j.b/255,ee<=.03928?be=ee/12.92:be=g.pow((ee+.055)/1.055,2.4),ie<=.03928?Ae=ie/12.92:Ae=g.pow((ie+.055)/1.055,2.4),fe<=.03928?Be=fe/12.92:Be=g.pow((fe+.055)/1.055,2.4),.2126*be+.7152*Ae+.0722*Be},setAlpha:function(j){return this._a=I(j),this._roundA=e(100*this._a)/100,this},toHsv:function(){var j=h(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=h(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.v*100);return this._a==1?"hsv("+ee+", "+ie+"%, "+fe+"%)":"hsva("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHsl:function(){var j=s(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=s(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.l*100);return this._a==1?"hsl("+ee+", "+ie+"%, "+fe+"%)":"hsla("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHex:function(j){return p(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return T(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},toRgb:function(){return{r:e(this._r),g:e(this._g),b:e(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+e(this._r)+", "+e(this._g)+", "+e(this._b)+")":"rgba("+e(this._r)+", "+e(this._g)+", "+e(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:e(N(this._r,255)*100)+"%",g:e(N(this._g,255)*100)+"%",b:e(N(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%)":"rgba("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:B[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var ee="#"+l(this._r,this._g,this._b,this._a),ie=ee,fe=this._gradientType?"GradientType = 1, ":"";if(j){var be=a(j);ie="#"+l(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+fe+"startColorstr="+ee+",endColorstr="+ie+")"},toString:function(j){var ee=!!j;j=j||this._format;var ie=!1,fe=this._a<1&&this._a>=0,be=!ee&&fe&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return be?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(ie=this.toRgbString()),j==="prgb"&&(ie=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(ie=this.toHexString()),j==="hex3"&&(ie=this.toHexString(!0)),j==="hex4"&&(ie=this.toHex8String(!0)),j==="hex8"&&(ie=this.toHex8String()),j==="name"&&(ie=this.toName()),j==="hsl"&&(ie=this.toHslString()),j==="hsv"&&(ie=this.toHsvString()),ie||this.toHexString())},clone:function(){return a(this.toString())},_applyModification:function(j,ee){var ie=j.apply(null,[this].concat([].slice.call(ee)));return this._r=ie._r,this._g=ie._g,this._b=ie._b,this.setAlpha(ie._a),this},lighten:function(){return this._applyModification(E,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(S,arguments)},spin:function(){return this._applyModification(d,arguments)},_applyCombination:function(j,ee){return j.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(L,arguments)},complement:function(){return this._applyCombination(u,arguments)},monochromatic:function(){return this._applyCombination(z,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(f,arguments)}},a.fromRatio=function(j,ee){if(typeof j=="object"){var ie={};for(var fe in j)j.hasOwnProperty(fe)&&(fe==="a"?ie[fe]=j[fe]:ie[fe]=he(j[fe]));j=ie}return a(j,ee)};function i(j){var ee={r:0,g:0,b:0},ie=1,fe=null,be=null,Ae=null,Be=!1,Ie=!1;return typeof j=="string"&&(j=re(j)),typeof j=="object"&&(Z(j.r)&&Z(j.g)&&Z(j.b)?(ee=n(j.r,j.g,j.b),Be=!0,Ie=String(j.r).substr(-1)==="%"?"prgb":"rgb"):Z(j.h)&&Z(j.s)&&Z(j.v)?(fe=he(j.s),be=he(j.v),ee=v(j.h,fe,be),Be=!0,Ie="hsv"):Z(j.h)&&Z(j.s)&&Z(j.l)&&(fe=he(j.s),Ae=he(j.l),ee=c(j.h,fe,Ae),Be=!0,Ie="hsl"),j.hasOwnProperty("a")&&(ie=j.a)),ie=I(ie),{ok:Be,format:j.format||Ie,r:t(255,r(ee.r,0)),g:t(255,r(ee.g,0)),b:t(255,r(ee.b,0)),a:ie}}function n(j,ee,ie){return{r:N(j,255)*255,g:N(ee,255)*255,b:N(ie,255)*255}}function s(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=(fe+be)/2;if(fe==be)Ae=Be=0;else{var Ze=fe-be;switch(Be=Ie>.5?Ze/(2-fe-be):Ze/(fe+be),fe){case j:Ae=(ee-ie)/Ze+(ee1&&(et-=1),et<1/6?at+(it-at)*6*et:et<1/2?it:et<2/3?at+(it-at)*(2/3-et)*6:at}if(ee===0)fe=be=Ae=ie;else{var Ie=ie<.5?ie*(1+ee):ie+ee-ie*ee,Ze=2*ie-Ie;fe=Be(Ze,Ie,j+1/3),be=Be(Ze,Ie,j),Ae=Be(Ze,Ie,j-1/3)}return{r:fe*255,g:be*255,b:Ae*255}}function h(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=fe,Ze=fe-be;if(Be=fe===0?0:Ze/fe,fe==be)Ae=0;else{switch(fe){case j:Ae=(ee-ie)/Ze+(ee>1)+720)%360;--ee;)fe.h=(fe.h+be)%360,Ae.push(a(fe));return Ae}function z(j,ee){ee=ee||6;for(var ie=a(j).toHsv(),fe=ie.h,be=ie.s,Ae=ie.v,Be=[],Ie=1/ee;ee--;)Be.push(a({h:fe,s:be,v:Ae})),Ae=(Ae+Ie)%1;return Be}a.mix=function(j,ee,ie){ie=ie===0?0:ie||50;var fe=a(j).toRgb(),be=a(ee).toRgb(),Ae=ie/100,Be={r:(be.r-fe.r)*Ae+fe.r,g:(be.g-fe.g)*Ae+fe.g,b:(be.b-fe.b)*Ae+fe.b,a:(be.a-fe.a)*Ae+fe.a};return a(Be)},a.readability=function(j,ee){var ie=a(j),fe=a(ee);return(g.max(ie.getLuminance(),fe.getLuminance())+.05)/(g.min(ie.getLuminance(),fe.getLuminance())+.05)},a.isReadable=function(j,ee,ie){var fe=a.readability(j,ee),be,Ae;switch(Ae=!1,be=ne(ie),be.level+be.size){case"AAsmall":case"AAAlarge":Ae=fe>=4.5;break;case"AAlarge":Ae=fe>=3;break;case"AAAsmall":Ae=fe>=7;break}return Ae},a.mostReadable=function(j,ee,ie){var fe=null,be=0,Ae,Be,Ie,Ze;ie=ie||{},Be=ie.includeFallbackColors,Ie=ie.level,Ze=ie.size;for(var at=0;atbe&&(be=Ae,fe=a(ee[at]));return a.isReadable(j,fe,{level:Ie,size:Ze})||!Be?fe:(ie.includeFallbackColors=!1,a.mostReadable(j,["#fff","#000"],ie))};var F=a.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},B=a.hexNames=O(F);function O(j){var ee={};for(var ie in j)j.hasOwnProperty(ie)&&(ee[j[ie]]=ie);return ee}function I(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function N(j,ee){Q(j)&&(j="100%");var ie=ue(j);return j=t(ee,r(0,parseFloat(j))),ie&&(j=parseInt(j*ee,10)/100),g.abs(j-ee)<1e-6?1:j%ee/parseFloat(ee)}function U(j){return t(1,r(0,j))}function W(j){return parseInt(j,16)}function Q(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function ue(j){return typeof j=="string"&&j.indexOf("%")!=-1}function se(j){return j.length==1?"0"+j:""+j}function he(j){return j<=1&&(j=j*100+"%"),j}function G(j){return g.round(parseFloat(j)*255).toString(16)}function $(j){return W(j)/255}var J=function(){var j="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",ie="(?:"+ee+")|(?:"+j+")",fe="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?",be="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?";return{CSS_UNIT:new RegExp(ie),rgb:new RegExp("rgb"+fe),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+fe),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+fe),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Z(j){return!!J.CSS_UNIT.exec(j)}function re(j){j=j.replace(x,"").replace(A,"").toLowerCase();var ee=!1;if(F[j])j=F[j],ee=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ie;return(ie=J.rgb.exec(j))?{r:ie[1],g:ie[2],b:ie[3]}:(ie=J.rgba.exec(j))?{r:ie[1],g:ie[2],b:ie[3],a:ie[4]}:(ie=J.hsl.exec(j))?{h:ie[1],s:ie[2],l:ie[3]}:(ie=J.hsla.exec(j))?{h:ie[1],s:ie[2],l:ie[3],a:ie[4]}:(ie=J.hsv.exec(j))?{h:ie[1],s:ie[2],v:ie[3]}:(ie=J.hsva.exec(j))?{h:ie[1],s:ie[2],v:ie[3],a:ie[4]}:(ie=J.hex8.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),a:$(ie[4]),format:ee?"name":"hex8"}:(ie=J.hex6.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),format:ee?"name":"hex"}:(ie=J.hex4.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),a:$(ie[4]+""+ie[4]),format:ee?"name":"hex8"}:(ie=J.hex3.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),format:ee?"name":"hex"}:!1}function ne(j){var ee,ie;return j=j||{level:"AA",size:"small"},ee=(j.level||"AA").toUpperCase(),ie=(j.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),ie!=="small"&&ie!=="large"&&(ie="small"),{level:ee,size:ie}}typeof H<"u"&&H.exports?H.exports=a:window.tinycolor=a})(Math)}}),Oo=Ye({"src/lib/extend.js"(X){"use strict";var H=Zv(),g=Array.isArray;function x(M,e){var t,r;for(t=0;t=0)))return a;if(h===3)s[h]>1&&(s[h]=1);else if(s[h]>=1)return a}var v=Math.round(s[0]*255)+", "+Math.round(s[1]*255)+", "+Math.round(s[2]*255);return c?"rgba("+v+", "+s[3]+")":"rgb("+v+")"}}}),Xm=Ye({"src/constants/interactions.js"(X,H){"use strict";H.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}}}),Ky=Ye({"src/lib/regex.js"(X){"use strict";X.counter=function(H,g,x,A){var M=(g||"")+(x?"":"$"),e=A===!1?"":"^";return H==="xy"?new RegExp(e+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+M):new RegExp(e+H+"([2-9]|[1-9][0-9]+)?"+M)}}}),sF=Ye({"src/lib/coerce.js"(X){"use strict";var H=jo(),g=bh(),x=Oo().extendFlat,A=Pl(),M=Hg(),e=Fn(),t=Xm().DESELECTDIM,r=__(),o=Ky().counter,a=Xy().modHalf,i=xp().isArrayOrTypedArray,n=xp().isTypedArraySpec,s=xp().decodeTypedArraySpec;X.valObjectMeta={data_array:{coerceFunction:function(h,v,p){v.set(i(h)?h:n(h)?s(h):p)}},enumerated:{coerceFunction:function(h,v,p,T){T.coerceNumber&&(h=+h),T.values.indexOf(h)===-1?v.set(p):v.set(h)},validateFunction:function(h,v){v.coerceNumber&&(h=+h);for(var p=v.values,T=0;TT.max?v.set(p):v.set(+h)}},integer:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}n(h)&&(h=s(h)),h%1||!H(h)||T.min!==void 0&&hT.max?v.set(p):v.set(+h)}},string:{coerceFunction:function(h,v,p,T){if(typeof h!="string"){var l=typeof h=="number";T.strict===!0||!l?v.set(p):v.set(String(h))}else T.noBlank&&!h?v.set(p):v.set(h)}},color:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),g(h).isValid()?v.set(h):v.set(p)}},colorlist:{coerceFunction:function(h,v,p){function T(l){return g(l).isValid()}!Array.isArray(h)||!h.length?v.set(p):h.every(T)?v.set(h):v.set(p)}},colorscale:{coerceFunction:function(h,v,p){v.set(M.get(h,p))}},angle:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),h==="auto"?v.set("auto"):H(h)?v.set(a(+h,360)):v.set(p)}},subplotid:{coerceFunction:function(h,v,p,T){var l=T.regex||o(p);if(typeof h=="string"&&l.test(h)){v.set(h);return}v.set(p)},validateFunction:function(h,v){var p=v.dflt;return h===p?!0:typeof h!="string"?!1:!!o(p).test(h)}},flaglist:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}if(typeof h!="string"){v.set(p);return}for(var l=h.split("+"),_=0;_/g),h=0;h1){var e=["LOG:"];for(M=0;M1){var t=[];for(M=0;M"),"long")}},A.warn=function(){var M;if(g.logging>0){var e=["WARN:"];for(M=0;M0){var t=[];for(M=0;M"),"stick")}},A.error=function(){var M;if(g.logging>0){var e=["ERROR:"];for(M=0;M0){var t=[];for(M=0;M"),"stick")}}}}),f2=Ye({"src/lib/noop.js"(X,H){"use strict";H.exports=function(){}}}),KA=Ye({"src/lib/push_unique.js"(X,H){"use strict";H.exports=function(x,A){if(A instanceof RegExp){for(var M=A.toString(),e=0;e0){for(var r=[],o=0;o=l&&F<=_?F:e}if(typeof F!="string"&&typeof F!="number")return e;F=String(F);var U=p(B),W=F.charAt(0);U&&(W==="G"||W==="g")&&(F=F.substr(1),B="");var Q=U&&B.substr(0,7)==="chinese",ue=F.match(Q?h:c);if(!ue)return e;var se=ue[1],he=ue[3]||"1",G=Number(ue[5]||1),$=Number(ue[7]||0),J=Number(ue[9]||0),Z=Number(ue[11]||0);if(U){if(se.length===2)return e;se=Number(se);var re;try{var ne=n.getComponentMethod("calendars","getCal")(B);if(Q){var j=he.charAt(he.length-1)==="i";he=parseInt(he,10),re=ne.newDate(se,ne.toMonthIndex(se,he,j),G)}else re=ne.newDate(se,Number(he),G)}catch{return e}return re?(re.toJD()-i)*t+$*r+J*o+Z*a:e}se.length===2?se=(Number(se)+2e3-v)%100+v:se=Number(se),he-=1;var ee=new Date(Date.UTC(2e3,he,G,$,J));return ee.setUTCFullYear(se),ee.getUTCMonth()!==he||ee.getUTCDate()!==G?e:ee.getTime()+Z*a},l=X.MIN_MS=X.dateTime2ms("-9999"),_=X.MAX_MS=X.dateTime2ms("9999-12-31 23:59:59.9999"),X.isDateTime=function(F,B){return X.dateTime2ms(F,B)!==e};function w(F,B){return String(F+Math.pow(10,B)).substr(1)}var S=90*t,E=3*r,m=5*o;X.ms2DateTime=function(F,B,O){if(typeof F!="number"||!(F>=l&&F<=_))return e;B||(B=0);var I=Math.floor(A(F+.05,1)*10),N=Math.round(F-I/10),U,W,Q,ue,se,he;if(p(O)){var G=Math.floor(N/t)+i,$=Math.floor(A(F,t));try{U=n.getComponentMethod("calendars","getCal")(O).fromJD(G).formatDate("yyyy-mm-dd")}catch{U=s("G%Y-%m-%d")(new Date(N))}if(U.charAt(0)==="-")for(;U.length<11;)U="-0"+U.substr(1);else for(;U.length<10;)U="0"+U;W=B=l+t&&F<=_-t))return e;var B=Math.floor(A(F+.05,1)*10),O=new Date(Math.round(F-B/10)),I=H("%Y-%m-%d")(O),N=O.getHours(),U=O.getMinutes(),W=O.getSeconds(),Q=O.getUTCMilliseconds()*10+B;return b(I,N,U,W,Q)};function b(F,B,O,I,N){if((B||O||I||N)&&(F+=" "+w(B,2)+":"+w(O,2),(I||N)&&(F+=":"+w(I,2),N))){for(var U=4;N%10===0;)U-=1,N/=10;F+="."+w(N,U)}return F}X.cleanDate=function(F,B,O){if(F===e)return B;if(X.isJSDate(F)||typeof F=="number"&&isFinite(F)){if(p(O))return x.error("JS Dates and milliseconds are incompatible with world calendars",F),B;if(F=X.ms2DateTimeLocal(+F),!F&&B!==void 0)return B}else if(!X.isDateTime(F,O))return x.error("unrecognized date",F),B;return F};var d=/%\d?f/g,u=/%h/g,y={1:"1",2:"1",3:"2",4:"2"};function f(F,B,O,I){F=F.replace(d,function(U){var W=Math.min(+U.charAt(1)||6,6),Q=(B/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0";return Q});var N=new Date(Math.floor(B+.05));if(F=F.replace(u,function(){return y[O("%q")(N)]}),p(I))try{F=n.getComponentMethod("calendars","worldCalFmt")(F,B,I)}catch{return"Invalid"}return O(F)(N)}var P=[59,59.9,59.99,59.999,59.9999];function L(F,B){var O=A(F+.05,t),I=w(Math.floor(O/r),2)+":"+w(A(Math.floor(O/o),60),2);if(B!=="M"){g(B)||(B=0);var N=Math.min(A(F/a,60),P[B]),U=(100+N).toFixed(B).substr(1);B>0&&(U=U.replace(/0+$/,"").replace(/[\.]$/,"")),I+=":"+U}return I}X.formatDate=function(F,B,O,I,N,U){if(N=p(N)&&N,!B)if(O==="y")B=U.year;else if(O==="m")B=U.month;else if(O==="d")B=U.dayMonth+` +`+U.year;else return L(F,O)+` +`+f(U.dayMonthYear,F,I,N);return f(B,F,I,N)};var z=3*t;X.incrementMonth=function(F,B,O){O=p(O)&&O;var I=A(F,t);if(F=Math.round(F-I),O)try{var N=Math.round(F/t)+i,U=n.getComponentMethod("calendars","getCal")(O),W=U.fromJD(N);return B%12?U.add(W,B,"m"):U.add(W,B/12,"y"),(W.toJD()-i)*t+I}catch{x.error("invalid ms "+F+" in calendar "+O)}var Q=new Date(F+z);return Q.setUTCMonth(Q.getUTCMonth()+B)+I-z},X.findExactDates=function(F,B){for(var O=0,I=0,N=0,U=0,W,Q,ue=p(B)&&n.getComponentMethod("calendars","getCal")(B),se=0;se1?(i[c-1]-i[0])/(c-1):1,p,T;for(v>=0?T=n?e:t:T=n?o:r,a+=v*M*(n?-1:1)*(v>=0?1:-1);s90&&g.log("Long binary search..."),s-1};function e(a,i){return ai}function o(a,i){return a>=i}X.sorterAsc=function(a,i){return a-i},X.sorterDes=function(a,i){return i-a},X.distinctVals=function(a){var i=a.slice();i.sort(X.sorterAsc);var n;for(n=i.length-1;n>-1&&i[n]===A;n--);for(var s=i[n]-i[0]||1,c=s/(n||1)/1e4,h=[],v,p=0;p<=n;p++){var T=i[p],l=T-v;v===void 0?(h.push(T),v=T):l>c&&(s=Math.min(s,l),h.push(T),v=T)}return{vals:h,minDiff:s}},X.roundUp=function(a,i,n){for(var s=0,c=i.length-1,h,v=0,p=n?0:1,T=n?1:0,l=n?Math.ceil:Math.floor;s0&&(s=1),n&&s)return a.sort(i)}return s?a:a.reverse()},X.findIndexOfMin=function(a,i){i=i||x;for(var n=1/0,s,c=0;cM.length)&&(e=M.length),H(A)||(A=!1),g(M[0])){for(r=new Array(e),t=0;tx.length-1)return x[x.length-1];var M=A%1;return M*x[Math.ceil(A)]+(1-M)*x[Math.floor(A)]}}}),jF=Ye({"src/lib/angles.js"(X,H){"use strict";var g=Xy(),x=g.mod,A=g.modHalf,M=Math.PI,e=2*M;function t(T){return T/180*M}function r(T){return T/M*180}function o(T){return Math.abs(T[1]-T[0])>e-1e-14}function a(T,l){return A(l-T,e)}function i(T,l){return Math.abs(a(T,l))}function n(T,l){if(o(l))return!0;var _,w;l[0]w&&(w+=e);var S=x(T,e),E=S+e;return S>=_&&S<=w||E>=_&&E<=w}function s(T,l,_,w){if(!n(l,w))return!1;var S,E;return _[0]<_[1]?(S=_[0],E=_[1]):(S=_[1],E=_[0]),T>=S&&T<=E}function c(T,l,_,w,S,E,m){S=S||0,E=E||0;var b=o([_,w]),d,u,y,f,P;b?(d=0,u=M,y=e):_1/3&&g.x<2/3},X.isRightAnchor=function(g){return g.xanchor==="right"||g.xanchor==="auto"&&g.x>=2/3},X.isTopAnchor=function(g){return g.yanchor==="top"||g.yanchor==="auto"&&g.y>=2/3},X.isMiddleAnchor=function(g){return g.yanchor==="middle"||g.yanchor==="auto"&&g.y>1/3&&g.y<2/3},X.isBottomAnchor=function(g){return g.yanchor==="bottom"||g.yanchor==="auto"&&g.y<=1/3}}}),qF=Ye({"src/lib/geometry2d.js"(X){"use strict";var H=Xy().mod;X.segmentsIntersect=g;function g(t,r,o,a,i,n,s,c){var h=o-t,v=i-t,p=s-i,T=a-r,l=n-r,_=c-n,w=h*_-p*T;if(w===0)return null;var S=(v*_-p*l)/w,E=(v*T-h*l)/w;return E<0||E>1||S<0||S>1?null:{x:t+h*S,y:r+T*S}}X.segmentDistance=function(r,o,a,i,n,s,c,h){if(g(r,o,a,i,n,s,c,h))return 0;var v=a-r,p=i-o,T=c-n,l=h-s,_=v*v+p*p,w=T*T+l*l,S=Math.min(x(v,p,_,n-r,s-o),x(v,p,_,c-r,h-o),x(T,l,w,r-n,o-s),x(T,l,w,a-n,i-s));return Math.sqrt(S)};function x(t,r,o,a,i){var n=a*t+i*r;if(n<0)return a*a+i*i;if(n>o){var s=a-t,c=i-r;return s*s+c*c}else{var h=a*r-i*t;return h*h/o}}var A,M,e;X.getTextLocation=function(r,o,a,i){if((r!==M||i!==e)&&(A={},M=r,e=i),A[a])return A[a];var n=r.getPointAtLength(H(a-i/2,o)),s=r.getPointAtLength(H(a+i/2,o)),c=Math.atan((s.y-n.y)/(s.x-n.x)),h=r.getPointAtLength(H(a,o)),v=(h.x*4+n.x+s.x)/6,p=(h.y*4+n.y+s.y)/6,T={x:v,y:p,theta:c};return A[a]=T,T},X.clearLocationCache=function(){M=null},X.getVisibleSegment=function(r,o,a){var i=o.left,n=o.right,s=o.top,c=o.bottom,h=0,v=r.getTotalLength(),p=v,T,l;function _(S){var E=r.getPointAtLength(S);S===0?T=E:S===v&&(l=E);var m=E.xn?E.x-n:0,b=E.yc?E.y-c:0;return Math.sqrt(m*m+b*b)}for(var w=_(h);w;){if(h+=w+a,h>p)return;w=_(h)}for(w=_(p);w;){if(p-=w+a,h>p)return;w=_(p)}return{min:h,max:p,len:p-h,total:v,isClosed:h===0&&p===v&&Math.abs(T.x-l.x)<.1&&Math.abs(T.y-l.y)<.1}},X.findPointOnPath=function(r,o,a,i){i=i||{};for(var n=i.pathLength||r.getTotalLength(),s=i.tolerance||.001,c=i.iterationLimit||30,h=r.getPointAtLength(0)[a]>r.getPointAtLength(n)[a]?-1:1,v=0,p=0,T=n,l,_,w;v0?T=l:p=l,v++}return _}}}),m2=Ye({"src/lib/throttle.js"(X){"use strict";var H={};X.throttle=function(A,M,e){var t=H[A],r=Date.now();if(!t){for(var o in H)H[o].tst.ts+M){a();return}t.timer=setTimeout(function(){a(),t.timer=null},M)},X.done=function(x){var A=H[x];return!A||!A.timer?Promise.resolve():new Promise(function(M){var e=A.onDone;A.onDone=function(){e&&e(),M(),A.onDone=null}})},X.clear=function(x){if(x)g(H[x]),delete H[x];else for(var A in H)X.clear(A)};function g(x){x&&x.timer!==null&&(clearTimeout(x.timer),x.timer=null)}}}),HF=Ye({"src/lib/clear_responsive.js"(X,H){"use strict";H.exports=function(x){x._responsiveChartHandler&&(window.removeEventListener("resize",x._responsiveChartHandler),delete x._responsiveChartHandler)}}}),GF=Ye({"node_modules/is-mobile/index.js"(X,H){"use strict";H.exports=M,H.exports.isMobile=M,H.exports.default=M;var g=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,x=/CrOS/,A=/android|ipad|playbook|silk/i;function M(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=g.test(t)&&!x.test(t)||!!e.tablet&&A.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}}}),WF=Ye({"src/lib/preserve_drawing_buffer.js"(X,H){"use strict";var g=jo(),x=GF();H.exports=function(e){var t;if(e&&e.hasOwnProperty("userAgent")?t=e.userAgent:t=A(),typeof t!="string")return!0;var r=x({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var o=t.split(" "),a=1;a-1;n--){var s=o[n];if(s.substr(0,8)==="Version/"){var c=s.substr(8).split(".")[0];if(g(c)&&(c=+c),c>=13)return!0}}}return r};function A(){var M;return typeof navigator<"u"&&(M=navigator.userAgent),M&&M.headers&&typeof M.headers["user-agent"]=="string"&&(M=M.headers["user-agent"]),M}}}),ZF=Ye({"src/lib/make_trace_groups.js"(X,H){"use strict";var g=_n();H.exports=function(A,M,e){var t=A.selectAll("g."+e.replace(/\s/g,".")).data(M,function(o){return o[0].trace.uid});t.exit().remove(),t.enter().append("g").attr("class",e),t.order();var r=A.classed("rangeplot")?"nodeRangePlot3":"node3";return t.each(function(o){o[0][r]=g.select(this)}),t}}}),XF=Ye({"src/lib/localize.js"(X,H){"use strict";var g=Hn();H.exports=function(A,M){for(var e=A._context.locale,t=0;t<2;t++){for(var r=A._context.locales,o=0;o<2;o++){var a=(r[e]||{}).dictionary;if(a){var i=a[M];if(i)return i}r=g.localeRegistry}var n=e.split("-")[0];if(n===e)break;e=n}return M}}}),tS=Ye({"src/lib/filter_unique.js"(X,H){"use strict";H.exports=function(x){for(var A={},M=[],e=0,t=0;t1?(M*x+M*A)/M:x+A,t=String(e).length;if(t>16){var r=String(A).length,o=String(x).length;if(t>=o+r){var a=parseFloat(e).toPrecision(12);a.indexOf("e+")===-1&&(e=+a)}}return e}}}),JF=Ye({"src/lib/clean_number.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;H.exports=function(e){return typeof e=="string"&&(e=e.replace(A,"")),g(e)?Number(e):x}}}),ta=Ye({"src/lib/index.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=Zy().format,M=jo(),e=ks(),t=e.FP_SAFE,r=-t,o=e.BADNUM,a=H.exports={};a.adjustFormat=function(ne){return!ne||/^\d[.]\df/.test(ne)||/[.]\d%/.test(ne)?ne:ne==="0.f"?"~f":/^\d%/.test(ne)?"~%":/^\ds/.test(ne)?"~s":!/^[~,.0$]/.test(ne)&&/[&fps]/.test(ne)?"~"+ne:ne};var i={};a.warnBadFormat=function(re){var ne=String(re);i[ne]||(i[ne]=1,a.warn('encountered bad format: "'+ne+'"'))},a.noFormat=function(re){return String(re)},a.numberFormat=function(re){var ne;try{ne=A(a.adjustFormat(re))}catch{return a.warnBadFormat(re),a.noFormat}return ne},a.nestedProperty=__(),a.keyedContainer=iF(),a.relativeAttr=nF(),a.isPlainObject=Zv(),a.toLogRange=c2(),a.relinkPrivateKeys=oF();var n=xp();a.isArrayBuffer=n.isArrayBuffer,a.isTypedArray=n.isTypedArray,a.isArrayOrTypedArray=n.isArrayOrTypedArray,a.isArray1D=n.isArray1D,a.ensureArray=n.ensureArray,a.concat=n.concat,a.maxRowLength=n.maxRowLength,a.minRowLength=n.minRowLength;var s=Xy();a.mod=s.mod,a.modHalf=s.modHalf;var c=sF();a.valObjectMeta=c.valObjectMeta,a.coerce=c.coerce,a.coerce2=c.coerce2,a.coerceFont=c.coerceFont,a.coercePattern=c.coercePattern,a.coerceHoverinfo=c.coerceHoverinfo,a.coerceSelectionMarkerOpacity=c.coerceSelectionMarkerOpacity,a.validate=c.validate;var h=NF();a.dateTime2ms=h.dateTime2ms,a.isDateTime=h.isDateTime,a.ms2DateTime=h.ms2DateTime,a.ms2DateTimeLocal=h.ms2DateTimeLocal,a.cleanDate=h.cleanDate,a.isJSDate=h.isJSDate,a.formatDate=h.formatDate,a.incrementMonth=h.incrementMonth,a.dateTick0=h.dateTick0,a.dfltRange=h.dfltRange,a.findExactDates=h.findExactDates,a.MIN_MS=h.MIN_MS,a.MAX_MS=h.MAX_MS;var v=v2();a.findBin=v.findBin,a.sorterAsc=v.sorterAsc,a.sorterDes=v.sorterDes,a.distinctVals=v.distinctVals,a.roundUp=v.roundUp,a.sort=v.sort,a.findIndexOfMin=v.findIndexOfMin,a.sortObjectKeys=Km();var p=UF();a.aggNums=p.aggNums,a.len=p.len,a.mean=p.mean,a.geometricMean=p.geometricMean,a.median=p.median,a.midRange=p.midRange,a.variance=p.variance,a.stdev=p.stdev,a.interp=p.interp;var T=h2();a.init2dArray=T.init2dArray,a.transposeRagged=T.transposeRagged,a.dot=T.dot,a.translationMatrix=T.translationMatrix,a.rotationMatrix=T.rotationMatrix,a.rotationXYMatrix=T.rotationXYMatrix,a.apply3DTransform=T.apply3DTransform,a.apply2DTransform=T.apply2DTransform,a.apply2DTransform2=T.apply2DTransform2,a.convertCssMatrix=T.convertCssMatrix,a.inverseTransformMatrix=T.inverseTransformMatrix;var l=jF();a.deg2rad=l.deg2rad,a.rad2deg=l.rad2deg,a.angleDelta=l.angleDelta,a.angleDist=l.angleDist,a.isFullCircle=l.isFullCircle,a.isAngleInsideSector=l.isAngleInsideSector,a.isPtInsideSector=l.isPtInsideSector,a.pathArc=l.pathArc,a.pathSector=l.pathSector,a.pathAnnulus=l.pathAnnulus;var _=VF();a.isLeftAnchor=_.isLeftAnchor,a.isCenterAnchor=_.isCenterAnchor,a.isRightAnchor=_.isRightAnchor,a.isTopAnchor=_.isTopAnchor,a.isMiddleAnchor=_.isMiddleAnchor,a.isBottomAnchor=_.isBottomAnchor;var w=qF();a.segmentsIntersect=w.segmentsIntersect,a.segmentDistance=w.segmentDistance,a.getTextLocation=w.getTextLocation,a.clearLocationCache=w.clearLocationCache,a.getVisibleSegment=w.getVisibleSegment,a.findPointOnPath=w.findPointOnPath;var S=Oo();a.extendFlat=S.extendFlat,a.extendDeep=S.extendDeep,a.extendDeepAll=S.extendDeepAll,a.extendDeepNoArrays=S.extendDeepNoArrays;var E=Ym();a.log=E.log,a.warn=E.warn,a.error=E.error;var m=Ky();a.counterRegex=m.counter;var b=m2();a.throttle=b.throttle,a.throttleDone=b.done,a.clearThrottle=b.clear;var d=b_();a.getGraphDiv=d.getGraphDiv,a.isPlotDiv=d.isPlotDiv,a.removeElement=d.removeElement,a.addStyleRule=d.addStyleRule,a.addRelatedStyleRule=d.addRelatedStyleRule,a.deleteRelatedStyleRule=d.deleteRelatedStyleRule,a.setStyleOnHover=d.setStyleOnHover,a.getFullTransformMatrix=d.getFullTransformMatrix,a.getElementTransformMatrix=d.getElementTransformMatrix,a.getElementAndAncestors=d.getElementAndAncestors,a.equalDomRects=d.equalDomRects,a.clearResponsive=HF(),a.preserveDrawingBuffer=WF(),a.makeTraceGroups=ZF(),a._=XF(),a.notifier=YA(),a.filterUnique=tS(),a.filterVisible=YF(),a.pushUnique=KA(),a.increment=KF(),a.cleanNumber=JF(),a.ensureNumber=function(ne){return M(ne)?(ne=Number(ne),ne>t||ne=ne?!1:M(re)&&re>=0&&re%1===0},a.noop=f2(),a.identity=T_(),a.repeat=function(re,ne){for(var j=new Array(ne),ee=0;eej?Math.max(j,Math.min(ne,re)):Math.max(ne,Math.min(j,re))},a.bBoxIntersect=function(re,ne,j){return j=j||0,re.left<=ne.right+j&&ne.left<=re.right+j&&re.top<=ne.bottom+j&&ne.top<=re.bottom+j},a.simpleMap=function(re,ne,j,ee,ie){for(var fe=re.length,be=new Array(fe),Ae=0;Ae=Math.pow(2,j)?ie>10?(a.warn("randstr failed uniqueness"),be):re(ne,j,ee,(ie||0)+1):be},a.OptionControl=function(re,ne){re||(re={}),ne||(ne="opt");var j={};return j.optionList=[],j._newoption=function(ee){ee[ne]=re,j[ee.name]=ee,j.optionList.push(ee)},j["_"+ne]=re,j},a.smooth=function(re,ne){if(ne=Math.round(ne)||0,ne<2)return re;var j=re.length,ee=2*j,ie=2*ne-1,fe=new Array(ie),be=new Array(j),Ae,Be,Ie,Ze;for(Ae=0;Ae=ee&&(Ie-=ee*Math.floor(Ie/ee)),Ie<0?Ie=-1-Ie:Ie>=j&&(Ie=ee-1-Ie),Ze+=re[Ie]*fe[Be];be[Ae]=Ze}return be},a.syncOrAsync=function(re,ne,j){var ee,ie;function fe(){return a.syncOrAsync(re,ne,j)}for(;re.length;)if(ie=re.splice(0,1)[0],ee=ie(ne),ee&&ee.then)return ee.then(fe);return j&&j(ne)},a.stripTrailingSlash=function(re){return re.substr(-1)==="/"?re.substr(0,re.length-1):re},a.noneOrAll=function(re,ne,j){if(re){var ee=!1,ie=!0,fe,be;for(fe=0;fe0?ie:0})},a.fillArray=function(re,ne,j,ee){if(ee=ee||a.identity,a.isArrayOrTypedArray(re))for(var ie=0;ie1?ie+be[1]:"";if(fe&&(be.length>1||Ae.length>4||j))for(;ee.test(Ae);)Ae=Ae.replace(ee,"$1"+fe+"$2");return Ae+Be},a.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var O=/^\w*$/;a.templateString=function(re,ne){var j={};return re.replace(a.TEMPLATE_STRING_REGEX,function(ee,ie){var fe;return O.test(ie)?fe=ne[ie]:(j[ie]=j[ie]||a.nestedProperty(ne,ie).get,fe=j[ie](!0)),fe!==void 0?fe:""})};var I={max:10,count:0,name:"hovertemplate"};a.hovertemplateString=function(){return se.apply(I,arguments)};var N={max:10,count:0,name:"texttemplate"};a.texttemplateString=function(){return se.apply(N,arguments)};var U=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function W(re){var ne=re.match(U);return ne?{key:ne[1],op:ne[2],number:Number(ne[3])}:{key:re,op:null,number:null}}var Q={max:10,count:0,name:"texttemplate",parseMultDiv:!0};a.texttemplateStringForShapes=function(){return se.apply(Q,arguments)};var ue=/^[:|\|]/;function se(re,ne,j){var ee=this,ie=arguments;return ne||(ne={}),re.replace(a.TEMPLATE_STRING_REGEX,function(fe,be,Ae){var Be=be==="xother"||be==="yother",Ie=be==="_xother"||be==="_yother",Ze=be==="_xother_"||be==="_yother_",at=be==="xother_"||be==="yother_",it=Be||Ie||at||Ze,et=be;(Ie||Ze)&&(et=et.substring(1)),(at||Ze)&&(et=et.substring(0,et.length-1));var lt=null,Me=null;if(ee.parseMultDiv){var ge=W(et);et=ge.key,lt=ge.op,Me=ge.number}var ce;if(it){if(ce=ne[et],ce===void 0)return""}else{var ze,tt;for(tt=3;tt=he&&be<=G,Ie=Ae>=he&&Ae<=G;if(Be&&(ee=10*ee+be-he),Ie&&(ie=10*ie+Ae-he),!Be||!Ie){if(ee!==ie)return ee-ie;if(be!==Ae)return be-Ae}}return ie-ee};var $=2e9;a.seedPseudoRandom=function(){$=2e9},a.pseudoRandom=function(){var re=$;return $=(69069*$+1)%4294967296,Math.abs($-re)<429496729?a.pseudoRandom():$/4294967296},a.fillText=function(re,ne,j){var ee=Array.isArray(j)?function(be){j.push(be)}:function(be){j.text=be},ie=a.extractOption(re,ne,"htx","hovertext");if(a.isValidTextValue(ie))return ee(ie);var fe=a.extractOption(re,ne,"tx","text");if(a.isValidTextValue(fe))return ee(fe)},a.isValidTextValue=function(re){return re||re===0},a.formatPercent=function(re,ne){ne=ne||0;for(var j=(Math.round(100*re*Math.pow(10,ne))*Math.pow(.1,ne)).toFixed(ne)+"%",ee=0;ee1&&(Ie=1):Ie=0,a.strTranslate(ie-Ie*(j+be),fe-Ie*(ee+Ae))+a.strScale(Ie)+(Be?"rotate("+Be+(ne?"":" "+j+" "+ee)+")":"")},a.setTransormAndDisplay=function(re,ne){re.attr("transform",a.getTextTransform(ne)),re.style("display",ne.scale?null:"none")},a.ensureUniformFontSize=function(re,ne){var j=a.extendFlat({},ne);return j.size=Math.max(ne.size,re._fullLayout.uniformtext.minsize||0),j},a.join2=function(re,ne,j){var ee=re.length;return ee>1?re.slice(0,-1).join(ne)+j+re[ee-1]:re.join(ne)},a.bigFont=function(re){return Math.round(1.2*re)};var J=a.getFirefoxVersion(),Z=J!==null&&J<86;a.getPositionFromD3Event=function(){return Z?[g.event.layerX,g.event.layerY]:[g.event.offsetX,g.event.offsetY]}}}),$F=Ye({"build/plotcss.js"(){"use strict";var X=ta(),H={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(x in H)g=x.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),X.addStyleRule(g,H[x]);var g,x}}),rS=Ye({"node_modules/is-browser/client.js"(X,H){H.exports=!0}}),aS=Ye({"node_modules/has-hover/index.js"(X,H){"use strict";var g=rS(),x;typeof window.matchMedia=="function"?x=!window.matchMedia("(hover: none)").matches:x=g,H.exports=x}}),Wg=Ye({"node_modules/events/events.js"(X,H){"use strict";var g=typeof Reflect=="object"?Reflect:null,x=g&&typeof g.apply=="function"?g.apply:function(E,m,b){return Function.prototype.apply.call(E,m,b)},A;g&&typeof g.ownKeys=="function"?A=g.ownKeys:Object.getOwnPropertySymbols?A=function(E){return Object.getOwnPropertyNames(E).concat(Object.getOwnPropertySymbols(E))}:A=function(E){return Object.getOwnPropertyNames(E)};function M(S){console&&console.warn&&console.warn(S)}var e=Number.isNaN||function(E){return E!==E};function t(){t.init.call(this)}H.exports=t,H.exports.once=l,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._eventsCount=0,t.prototype._maxListeners=void 0;var r=10;function o(S){if(typeof S!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof S)}Object.defineProperty(t,"defaultMaxListeners",{enumerable:!0,get:function(){return r},set:function(S){if(typeof S!="number"||S<0||e(S))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+S+".");r=S}}),t.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},t.prototype.setMaxListeners=function(E){if(typeof E!="number"||E<0||e(E))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+E+".");return this._maxListeners=E,this};function a(S){return S._maxListeners===void 0?t.defaultMaxListeners:S._maxListeners}t.prototype.getMaxListeners=function(){return a(this)},t.prototype.emit=function(E){for(var m=[],b=1;b0&&(y=m[0]),y instanceof Error)throw y;var f=new Error("Unhandled error."+(y?" ("+y.message+")":""));throw f.context=y,f}var P=u[E];if(P===void 0)return!1;if(typeof P=="function")x(P,this,m);else for(var L=P.length,z=v(P,L),b=0;b0&&y.length>d&&!y.warned){y.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+y.length+" "+String(E)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=S,f.type=E,f.count=y.length,M(f)}return S}t.prototype.addListener=function(E,m){return i(this,E,m,!1)},t.prototype.on=t.prototype.addListener,t.prototype.prependListener=function(E,m){return i(this,E,m,!0)};function n(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s(S,E,m){var b={fired:!1,wrapFn:void 0,target:S,type:E,listener:m},d=n.bind(b);return d.listener=m,b.wrapFn=d,d}t.prototype.once=function(E,m){return o(m),this.on(E,s(this,E,m)),this},t.prototype.prependOnceListener=function(E,m){return o(m),this.prependListener(E,s(this,E,m)),this},t.prototype.removeListener=function(E,m){var b,d,u,y,f;if(o(m),d=this._events,d===void 0)return this;if(b=d[E],b===void 0)return this;if(b===m||b.listener===m)--this._eventsCount===0?this._events=Object.create(null):(delete d[E],d.removeListener&&this.emit("removeListener",E,b.listener||m));else if(typeof b!="function"){for(u=-1,y=b.length-1;y>=0;y--)if(b[y]===m||b[y].listener===m){f=b[y].listener,u=y;break}if(u<0)return this;u===0?b.shift():p(b,u),b.length===1&&(d[E]=b[0]),d.removeListener!==void 0&&this.emit("removeListener",E,f||m)}return this},t.prototype.off=t.prototype.removeListener,t.prototype.removeAllListeners=function(E){var m,b,d;if(b=this._events,b===void 0)return this;if(b.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):b[E]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete b[E]),this;if(arguments.length===0){var u=Object.keys(b),y;for(d=0;d=0;d--)this.removeListener(E,m[d]);return this};function c(S,E,m){var b=S._events;if(b===void 0)return[];var d=b[E];return d===void 0?[]:typeof d=="function"?m?[d.listener||d]:[d]:m?T(d):v(d,d.length)}t.prototype.listeners=function(E){return c(this,E,!0)},t.prototype.rawListeners=function(E){return c(this,E,!1)},t.listenerCount=function(S,E){return typeof S.listenerCount=="function"?S.listenerCount(E):h.call(S,E)},t.prototype.listenerCount=h;function h(S){var E=this._events;if(E!==void 0){var m=E[S];if(typeof m=="function")return 1;if(m!==void 0)return m.length}return 0}t.prototype.eventNames=function(){return this._eventsCount>0?A(this._events):[]};function v(S,E){for(var m=new Array(E),b=0;bx.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)},M.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},M.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},M.undo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o=I.length)return!1;if(L.dimensions===2){if(F++,z.length===F)return L;var N=z[F];if(!w(N))return!1;L=I[O][N]}else L=I[O]}else L=I}}return L}function w(L){return L===Math.round(L)&&L>=0}function S(L){var z,F;z=H.modules[L]._module,F=z.basePlotModule;var B={};B.type=null;var O=o({},x),I=o({},z.attributes);X.crawl(I,function(W,Q,ue,se,he){n(O,he).set(void 0),W===void 0&&n(I,he).set(void 0)}),o(B,O),H.traceIs(L,"noOpacity")&&delete B.opacity,H.traceIs(L,"showLegend")||(delete B.showlegend,delete B.legendgroup),H.traceIs(L,"noHover")&&(delete B.hoverinfo,delete B.hoverlabel),z.selectPoints||delete B.selectedpoints,o(B,I),F.attributes&&o(B,F.attributes),B.type=L;var N={meta:z.meta||{},categories:z.categories||{},animatable:!!z.animatable,type:L,attributes:b(B)};if(z.layoutAttributes){var U={};o(U,z.layoutAttributes),N.layoutAttributes=b(U)}return z.animatable||X.crawl(N,function(W){X.isValObject(W)&&"anim"in W&&delete W.anim}),N}function E(){var L={},z,F;o(L,A);for(z in H.subplotsRegistry)if(F=H.subplotsRegistry[z],!!F.layoutAttributes)if(Array.isArray(F.attr))for(var B=0;B=a&&(o._input||{})._templateitemname;n&&(i=a);var s=r+"["+i+"]",c;function h(){c={},n&&(c[s]={},c[s][x]=n)}h();function v(_,w){c[_]=w}function p(_,w){n?H.nestedProperty(c[s],_).set(w):c[s+"."+_]=w}function T(){var _=c;return h(),_}function l(_,w){_&&p(_,w);var S=T();for(var E in S)H.nestedProperty(t,E).set(S[E])}return{modifyBase:v,modifyItem:p,getUpdateObj:T,applyUpdate:l}}}}),wh=Ye({"src/plots/cartesian/constants.js"(X,H){"use strict";var g=Ky().counter;H.exports={idRegex:{x:g("x","( domain)?"),y:g("y","( domain)?")},attrRegex:g("[xy]axis"),xAxisMatch:g("xaxis"),yAxisMatch:g("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),Xc=Ye({"src/plots/cartesian/axis_ids.js"(X){"use strict";var H=Hn(),g=wh();X.id2name=function(M){if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))){var e=M.split(" ")[0].substr(1);return e==="1"&&(e=""),M.charAt(0)+"axis"+e}},X.name2id=function(M){if(M.match(g.AX_NAME_PATTERN)){var e=M.substr(5);return e==="1"&&(e=""),M.charAt(0)+e}},X.cleanId=function(M,e,t){var r=/( domain)$/.test(M);if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))&&!(e&&M.charAt(0)!==e)&&!(r&&!t)){var o=M.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),M.charAt(0)+o+(r&&t?" domain":"")}},X.list=function(A,M,e){var t=A._fullLayout;if(!t)return[];var r=X.listIds(A,M),o=new Array(r.length),a;for(a=0;at?1:-1:+(A.substr(1)||1)-+(M.substr(1)||1)},X.ref2id=function(A){return/^[xyz]/.test(A)?A.split(" ")[0]:!1};function x(A,M){if(M&&M.length){for(var e=0;e0?".":"")+n;g.isPlainObject(s)?t(s,o,c,i+1):o(c,n,s)}})}}}),Gu=Ye({"src/plots/plots.js"(X,H){"use strict";var g=_n(),x=Np().timeFormatLocale,A=Zy().formatLocale,M=jo(),e=XA(),t=Hn(),r=Qy(),o=cl(),a=ta(),i=Fn(),n=ks().BADNUM,s=Xc(),c=Jm().clearOutline,h=g2(),v=w_(),p=iS(),T=jh().getModuleCalcData,l=a.relinkPrivateKeys,_=a._,w=H.exports={};a.extendFlat(w,t),w.attributes=Pl(),w.attributes.type.values=w.allTypes,w.fontAttrs=Au(),w.layoutAttributes=Jy();var S=eO();w.executeAPICommand=S.executeAPICommand,w.computeAPICommandBindings=S.computeAPICommandBindings,w.manageCommandObserver=S.manageCommandObserver,w.hasSimpleAPICommandBindings=S.hasSimpleAPICommandBindings,w.redrawText=function(G){return G=a.getGraphDiv(G),new Promise(function($){setTimeout(function(){G._fullLayout&&(t.getComponentMethod("annotations","draw")(G),t.getComponentMethod("legend","draw")(G),t.getComponentMethod("colorbar","draw")(G),$(w.previousPromises(G)))},300)})},w.resize=function(G){G=a.getGraphDiv(G);var $,J=new Promise(function(Z,re){(!G||a.isHidden(G))&&re(new Error("Resize must be passed a displayed plot div element.")),G._redrawTimer&&clearTimeout(G._redrawTimer),G._resolveResize&&($=G._resolveResize),G._resolveResize=Z,G._redrawTimer=setTimeout(function(){if(!G.layout||G.layout.width&&G.layout.height||a.isHidden(G)){Z(G);return}delete G.layout.width,delete G.layout.height;var ne=G.changed;G.autoplay=!0,t.call("relayout",G,{autosize:!0}).then(function(){G.changed=ne,G._resolveResize===Z&&(delete G._resolveResize,Z(G))})},100)});return $&&$(J),J},w.previousPromises=function(G){if((G._promises||[]).length)return Promise.all(G._promises).then(function(){G._promises=[]})},w.addLinks=function(G){if(!(!G._context.showLink&&!G._context.showSources)){var $=G._fullLayout,J=a.ensureSingle($._paper,"text","js-plot-link-container",function(ie){ie.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:i.defaultLine,"pointer-events":"all"}).each(function(){var fe=g.select(this);fe.append("tspan").classed("js-link-to-tool",!0),fe.append("tspan").classed("js-link-spacer",!0),fe.append("tspan").classed("js-sourcelinks",!0)})}),Z=J.node(),re={y:$._paper.attr("height")-9};document.body.contains(Z)&&Z.getComputedTextLength()>=$.width-20?(re["text-anchor"]="start",re.x=5):(re["text-anchor"]="end",re.x=$._paper.attr("width")-7),J.attr(re);var ne=J.select(".js-link-to-tool"),j=J.select(".js-link-spacer"),ee=J.select(".js-sourcelinks");G._context.showSources&&G._context.showSources(G),G._context.showLink&&E(G,ne),j.text(ne.text()&&ee.text()?" - ":"")}};function E(G,$){$.text("");var J=$.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(G._context.linkText+" \xBB");if(G._context.sendData)J.on("click",function(){w.sendDataToCloud(G)});else{var Z=window.location.pathname.split("/"),re=window.location.search;J.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+Z[2].split(".")[0]+"/"+Z[1]+re})}}w.sendDataToCloud=function(G){var $=(window.PLOTLYENV||{}).BASE_URL||G._context.plotlyServerURL;if($){G.emit("plotly_beforeexport");var J=g.select(G).append("div").attr("id","hiddenform").style("display","none"),Z=J.append("form").attr({action:$+"/external",method:"post",target:"_blank"}),re=Z.append("input").attr({type:"text",name:"data"});return re.node().value=w.graphJson(G,!1,"keepdata"),Z.node().submit(),J.remove(),G.emit("plotly_afterexport"),!1}};var m=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],b=["year","month","dayMonth","dayMonthYear"];w.supplyDefaults=function(G,$){var J=$&&$.skipUpdateCalc,Z=G._fullLayout||{};if(Z._skipDefaults){delete Z._skipDefaults;return}var re=G._fullLayout={},ne=G.layout||{},j=G._fullData||[],ee=G._fullData=[],ie=G.data||[],fe=G.calcdata||[],be=G._context||{},Ae;G._transitionData||w.createTransitionData(G),re._dfltTitle={plot:_(G,"Click to enter Plot title"),subtitle:_(G,"Click to enter Plot subtitle"),x:_(G,"Click to enter X axis title"),y:_(G,"Click to enter Y axis title"),colorbar:_(G,"Click to enter Colorscale title"),annotation:_(G,"new text")},re._traceWord=_(G,"trace");var Be=y(G,m);if(re._mapboxAccessToken=be.mapboxAccessToken,Z._initialAutoSizeIsDone){var Ie=Z.width,Ze=Z.height;w.supplyLayoutGlobalDefaults(ne,re,Be),ne.width||(re.width=Ie),ne.height||(re.height=Ze),w.sanitizeMargins(re)}else{w.supplyLayoutGlobalDefaults(ne,re,Be);var at=!ne.width||!ne.height,it=re.autosize,et=be.autosizable,lt=at&&(it||et);lt?w.plotAutoSize(G,ne,re):at&&w.sanitizeMargins(re),!it&&at&&(ne.width=re.width,ne.height=re.height)}re._d3locale=f(Be,re.separators),re._extraFormat=y(G,b),re._initialAutoSizeIsDone=!0,re._dataLength=ie.length,re._modules=[],re._visibleModules=[],re._basePlotModules=[];var Me=re._subplots=u(),ge=re._splomAxes={x:{},y:{}},ce=re._splomSubplots={};re._splomGridDflt={},re._scatterStackOpts={},re._firstScatter={},re._alignmentOpts={},re._colorAxes={},re._requestRangeslider={},re._traceUids=d(j,ie),w.supplyDataDefaults(ie,ee,ne,re);var ze=Object.keys(ge.x),tt=Object.keys(ge.y);if(ze.length>1&&tt.length>1){for(t.getComponentMethod("grid","sizeDefaults")(ne,re),Ae=0;Ae15&&tt.length>15&&re.shapes.length===0&&re.images.length===0,w.linkSubplots(ee,re,j,Z),w.cleanPlot(ee,re,j,Z);var Ot=!!(Z._has&&Z._has("cartesian")),jt=!!(re._has&&re._has("cartesian")),ur=Ot,ar=jt;ur&&!ar?Z._bgLayer.remove():ar&&!ur&&(re._shouldCreateBgLayer=!0),Z._zoomlayer&&!G._dragging&&c({_fullLayout:Z}),P(ee,re),l(re,Z),t.getComponentMethod("colorscale","crossTraceDefaults")(ee,re),re._preGUI||(re._preGUI={}),re._tracePreGUI||(re._tracePreGUI={});var Cr=re._tracePreGUI,vr={},_r;for(_r in Cr)vr[_r]="old";for(Ae=0;Ae0){var be=1-2*ne;j=Math.round(be*j),ee=Math.round(be*ee)}}var Ae=w.layoutAttributes.width.min,Be=w.layoutAttributes.height.min;j1,Ze=!J.height&&Math.abs(Z.height-ee)>1;(Ze||Ie)&&(Ie&&(Z.width=j),Ze&&(Z.height=ee)),$._initialAutoSize||($._initialAutoSize={width:j,height:ee}),w.sanitizeMargins(Z)},w.supplyLayoutModuleDefaults=function(G,$,J,Z){var re=t.componentsRegistry,ne=$._basePlotModules,j,ee,ie,fe=t.subplotsRegistry.cartesian;for(j in re)ie=re[j],ie.includeBasePlot&&ie.includeBasePlot(G,$);ne.length||ne.push(fe),$._has("cartesian")&&(t.getComponentMethod("grid","contentDefaults")(G,$),fe.finalizeSubplots(G,$));for(var be in $._subplots)$._subplots[be].sort(a.subplotSort);for(ee=0;ee1&&(J.l/=it,J.r/=it)}if(Be){var et=(J.t+J.b)/Be;et>1&&(J.t/=et,J.b/=et)}var lt=J.xl!==void 0?J.xl:J.x,Me=J.xr!==void 0?J.xr:J.x,ge=J.yt!==void 0?J.yt:J.y,ce=J.yb!==void 0?J.yb:J.y;Ie[$]={l:{val:lt,size:J.l+at},r:{val:Me,size:J.r+at},b:{val:ce,size:J.b+at},t:{val:ge,size:J.t+at}},Ze[$]=1}if(!Z._replotting)return w.doAutoMargin(G)}};function I(G){if("_redrawFromAutoMarginCount"in G._fullLayout)return!1;var $=s.list(G,"",!0);for(var J in $)if($[J].autoshift||$[J].shift)return!0;return!1}w.doAutoMargin=function(G){var $=G._fullLayout,J=$.width,Z=$.height;$._size||($._size={}),F($);var re=$._size,ne=$.margin,j={t:0,b:0,l:0,r:0},ee=a.extendFlat({},re),ie=ne.l,fe=ne.r,be=ne.t,Ae=ne.b,Be=$._pushmargin,Ie=$._pushmarginIds,Ze=$.minreducedwidth,at=$.minreducedheight;if(ne.autoexpand!==!1){for(var it in Be)Ie[it]||delete Be[it];var et=G._fullLayout._reservedMargin;for(var lt in et)for(var Me in et[lt]){var ge=et[lt][Me];j[Me]=Math.max(j[Me],ge)}Be.base={l:{val:0,size:ie},r:{val:1,size:fe},t:{val:1,size:be},b:{val:0,size:Ae}};for(var ce in j){var ze=0;for(var tt in Be)tt!=="base"&&M(Be[tt][ce].size)&&(ze=Be[tt][ce].size>ze?Be[tt][ce].size:ze);var nt=Math.max(0,ne[ce]-ze);j[ce]=Math.max(0,j[ce]-nt)}for(var Qe in Be){var Ct=Be[Qe].l||{},St=Be[Qe].b||{},Ot=Ct.val,jt=Ct.size,ur=St.val,ar=St.size,Cr=J-j.r-j.l,vr=Z-j.t-j.b;for(var _r in Be){if(M(jt)&&Be[_r].r){var yt=Be[_r].r.val,Fe=Be[_r].r.size;if(yt>Ot){var Ke=(jt*yt+(Fe-Cr)*Ot)/(yt-Ot),Ne=(Fe*(1-Ot)+(jt-Cr)*(1-yt))/(yt-Ot);Ke+Ne>ie+fe&&(ie=Ke,fe=Ne)}}if(M(ar)&&Be[_r].t){var Ee=Be[_r].t.val,Ve=Be[_r].t.size;if(Ee>ur){var ke=(ar*Ee+(Ve-vr)*ur)/(Ee-ur),Te=(Ve*(1-ur)+(ar-vr)*(1-Ee))/(Ee-ur);ke+Te>Ae+be&&(Ae=ke,be=Te)}}}}}var Le=a.constrain(J-ne.l-ne.r,B,Ze),rt=a.constrain(Z-ne.t-ne.b,O,at),dt=Math.max(0,J-Le),xt=Math.max(0,Z-rt);if(dt){var It=(ie+fe)/dt;It>1&&(ie/=It,fe/=It)}if(xt){var Bt=(Ae+be)/xt;Bt>1&&(Ae/=Bt,be/=Bt)}if(re.l=Math.round(ie)+j.l,re.r=Math.round(fe)+j.r,re.t=Math.round(be)+j.t,re.b=Math.round(Ae)+j.b,re.p=Math.round(ne.pad),re.w=Math.round(J)-re.l-re.r,re.h=Math.round(Z)-re.t-re.b,!$._replotting&&(w.didMarginChange(ee,re)||I(G))){"_redrawFromAutoMarginCount"in $?$._redrawFromAutoMarginCount++:$._redrawFromAutoMarginCount=1;var Gt=3*(1+Object.keys(Ie).length);if($._redrawFromAutoMarginCount1)return!0}return!1},w.graphJson=function(G,$,J,Z,re,ne){(re&&$&&!G._fullData||re&&!$&&!G._fullLayout)&&w.supplyDefaults(G);var j=re?G._fullData:G.data,ee=re?G._fullLayout:G.layout,ie=(G._transitionData||{})._frames;function fe(Be,Ie){if(typeof Be=="function")return Ie?"_function_":null;if(a.isPlainObject(Be)){var Ze={},at;return Object.keys(Be).sort().forEach(function(Me){if(["_","["].indexOf(Me.charAt(0))===-1){if(typeof Be[Me]=="function"){Ie&&(Ze[Me]="_function");return}if(J==="keepdata"){if(Me.substr(Me.length-3)==="src")return}else if(J==="keepstream"){if(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0&&!a.isPlainObject(Be.stream))return}else if(J!=="keepall"&&(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0))return;Ze[Me]=fe(Be[Me],Ie)}}),Ze}var it=Array.isArray(Be),et=a.isTypedArray(Be);if((it||et)&&Be.dtype&&Be.shape){var lt=Be.bdata;return fe({dtype:Be.dtype,shape:Be.shape,bdata:a.isArrayBuffer(lt)?e.encode(lt):lt},Ie)}return it?Be.map(function(Me){return fe(Me,Ie)}):et?a.simpleMap(Be,a.identity):a.isJSDate(Be)?a.ms2DateTimeLocal(+Be):Be}var be={data:(j||[]).map(function(Be){var Ie=fe(Be);return $&&delete Ie.fit,Ie})};if(!$&&(be.layout=fe(ee),re)){var Ae=ee._size;be.layout.computed={margin:{b:Ae.b,l:Ae.l,r:Ae.r,t:Ae.t}}}return ie&&(be.frames=fe(ie)),ne&&(be.config=fe(G._context,!0)),Z==="object"?be:JSON.stringify(be)},w.modifyFrames=function(G,$){var J,Z,re,ne=G._transitionData._frames,j=G._transitionData._frameHash;for(J=0;J<$.length;J++)switch(Z=$[J],Z.type){case"replace":re=Z.value;var ee=(ne[Z.index]||{}).name,ie=re.name;ne[Z.index]=j[ie]=re,ie!==ee&&(delete j[ee],j[ie]=re);break;case"insert":re=Z.value,j[re.name]=re,ne.splice(Z.index,0,re);break;case"delete":re=ne[Z.index],delete j[re.name],ne.splice(Z.index,1);break}return Promise.resolve()},w.computeFrame=function(G,$){var J=G._transitionData._frameHash,Z,re,ne,j;if(!$)throw new Error("computeFrame must be given a string frame name");var ee=J[$.toString()];if(!ee)return!1;for(var ie=[ee],fe=[ee.name];ee.baseframe&&(ee=J[ee.baseframe.toString()])&&fe.indexOf(ee.name)===-1;)ie.push(ee),fe.push(ee.name);for(var be={};ee=ie.pop();)if(ee.layout&&(be.layout=w.extendLayout(be.layout,ee.layout)),ee.data){if(be.data||(be.data=[]),re=ee.traces,!re)for(re=[],Z=0;Z0&&(G._transitioningWithDuration=!0),G._transitionData._interruptCallbacks.push(function(){Z=!0}),J.redraw&&G._transitionData._interruptCallbacks.push(function(){return t.call("redraw",G)}),G._transitionData._interruptCallbacks.push(function(){G.emit("plotly_transitioninterrupted",[])});var Be=0,Ie=0;function Ze(){return Be++,function(){Ie++,!Z&&Ie===Be&&ee(Ae)}}J.runFn(Ze),setTimeout(Ze())})}function ee(Ae){if(G._transitionData)return ne(G._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(J.redraw)return t.call("redraw",G)}).then(function(){G._transitioning=!1,G._transitioningWithDuration=!1,G.emit("plotly_transitioned",[])}).then(Ae)}function ie(){if(G._transitionData)return G._transitioning=!1,re(G._transitionData._interruptCallbacks)}var fe=[w.previousPromises,ie,J.prepareFn,w.rehover,w.reselect,j],be=a.syncOrAsync(fe,G);return(!be||!be.then)&&(be=Promise.resolve()),be.then(function(){return G})}w.doCalcdata=function(G,$){var J=s.list(G),Z=G._fullData,re=G._fullLayout,ne,j,ee,ie,fe=new Array(Z.length),be=(G.calcdata||[]).slice();for(G.calcdata=fe,re._numBoxes=0,re._numViolins=0,re._violinScaleGroupStats={},G._hmpixcount=0,G._hmlumcount=0,re._piecolormap={},re._sunburstcolormap={},re._treemapcolormap={},re._iciclecolormap={},re._funnelareacolormap={},ee=0;ee=0;ie--)if(ce[ie].enabled){ne._indexToPoints=ce[ie]._indexToPoints;break}j&&j.calc&&(ge=j.calc(G,ne))}(!Array.isArray(ge)||!ge[0])&&(ge=[{x:n,y:n}]),ge[0].t||(ge[0].t={}),ge[0].trace=ne,fe[lt]=ge}}for(se(J,Z,re),ee=0;eeee||Ie>ie)&&(ne.style("overflow","hidden"),Ae=ne.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height);var Ze=+O.attr("x"),at=+O.attr("y"),it=G||O.node().getBoundingClientRect().height,et=-it/4;if(ue[0]==="y")j.attr({transform:"rotate("+[-90,Ze,at]+")"+x(-Be/2,et-Ie/2)});else if(ue[0]==="l")at=et-Ie/2;else if(ue[0]==="a"&&ue.indexOf("atitle")!==0)Ze=0,at=et;else{var lt=O.attr("text-anchor");Ze=Ze-Be*(lt==="middle"?.5:lt==="end"?1:0),at=at+et-Ie/2}ne.attr({x:Ze,y:at}),N&&N.call(O,j),he(j)})})):se(),O};var t=/(<|<|<)/g,r=/(>|>|>)/g;function o(O){return O.replace(t,"\\lt ").replace(r,"\\gt ")}var a=[["$","$"],["\\(","\\)"]];function i(O,I,N){var U=parseInt((MathJax.version||"").split(".")[0]);if(U!==2&&U!==3){g.warn("No MathJax version:",MathJax.version);return}var W,Q,ue,se,he=function(){return Q=g.extendDeepAll({},MathJax.Hub.config),ue=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:a},displayAlign:"left"})},G=function(){Q=g.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=a},$=function(){if(W=MathJax.Hub.config.menuSettings.renderer,W!=="SVG")return MathJax.Hub.setRenderer("SVG")},J=function(){W=MathJax.config.startup.output,W!=="svg"&&(MathJax.config.startup.output="svg")},Z=function(){var fe="math-output-"+g.randstr({},64);se=H.select("body").append("div").attr({id:fe}).style({visibility:"hidden",position:"absolute","font-size":I.fontSize+"px"}).text(o(O));var be=se.node();return U===2?MathJax.Hub.Typeset(be):MathJax.typeset([be])},re=function(){var fe=se.select(U===2?".MathJax_SVG":".MathJax"),be=!fe.empty()&&se.select("svg").node();if(!be)g.log("There was an error in the tex syntax.",O),N();else{var Ae=be.getBoundingClientRect(),Be;U===2?Be=H.select("body").select("#MathJax_SVG_glyphs"):Be=fe.select("defs"),N(fe,Be,Ae)}se.remove()},ne=function(){if(W!=="SVG")return MathJax.Hub.setRenderer(W)},j=function(){W!=="svg"&&(MathJax.config.startup.output=W)},ee=function(){return ue!==void 0&&(MathJax.Hub.processSectionDelay=ue),MathJax.Hub.Config(Q)},ie=function(){MathJax.config=Q};U===2?MathJax.Hub.Queue(he,$,Z,re,ne,ee):U===3&&(G(),J(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){Z(),re(),j(),ie()}))}var n={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},s={sub:"0.3em",sup:"-0.6em"},c={sub:"-0.21em",sup:"0.42em"},h="\u200B",v=["http:","https:","mailto:","",void 0,":"],p=X.NEWLINES=/(\r\n?|\n)/g,T=/(<[^<>]*>)/,l=/<(\/?)([^ >]*)(\s+(.*))?>/i,_=//i;X.BR_TAG_ALL=//gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,S=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,E=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,m=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function b(O,I){if(!O)return null;var N=O.match(I),U=N&&(N[3]||N[4]);return U&&f(U)}var d=/(^|;)\s*color:/;X.plainText=function(O,I){I=I||{};for(var N=I.len!==void 0&&I.len!==-1?I.len:1/0,U=I.allowedTags!==void 0?I.allowedTags:["br"],W="...",Q=W.length,ue=O.split(T),se=[],he="",G=0,$=0;$Q?se.push(J.substr(0,j-Q)+W):se.push(J.substr(0,j));break}he=""}}return se.join("")};var u={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},y=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function f(O){return O.replace(y,function(I,N){var U;return N.charAt(0)==="#"?U=P(N.charAt(1)==="x"?parseInt(N.substr(2),16):parseInt(N.substr(1),10)):U=u[N],U||I})}X.convertEntities=f;function P(O){if(!(O>1114111)){var I=String.fromCodePoint;if(I)return I(O);var N=String.fromCharCode;return O<=65535?N(O):N((O>>10)+55232,O%1024+56320)}}function L(O,I){I=I.replace(p," ");var N=!1,U=[],W,Q=-1;function ue(){Q++;var Ie=document.createElementNS(A.svg,"tspan");H.select(Ie).attr({class:"line",dy:Q*M+"em"}),O.appendChild(Ie),W=Ie;var Ze=U;if(U=[{node:Ie}],Ze.length>1)for(var at=1;at.",I);return}var Ze=U.pop();Ie!==Ze.type&&g.log("Start tag <"+Ze.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",I),W=U[U.length-1].node}var $=_.test(I);$?ue():(W=O,U=[{node:O}]);for(var J=I.split(T),Z=0;Z=0;_--,w++){var S=p[_];l[w]=[1-S[0],S[1]]}return l}function c(p,T){T=T||{};for(var l=p.domain,_=p.range,w=_.length,S=new Array(w),E=0;Ep-h?h=p-(v-p):v-p=0?_=o.colorscale.sequential:_=o.colorscale.sequentialminus,s._sync("colorscale",_)}}}}),Su=Ye({"src/components/colorscale/index.js"(X,H){"use strict";var g=Hg(),x=Up();H.exports={moduleType:"component",name:"colorscale",attributes:tu(),layoutAttributes:nS(),supplyLayoutDefaults:tO(),handleDefaults:sh(),crossTraceDefaults:rO(),calc:jp(),scales:g.scales,defaultScale:g.defaultScale,getScale:g.get,isValidScale:g.isValid,hasColorscale:x.hasColorscale,extractOpts:x.extractOpts,extractScale:x.extractScale,flipScale:x.flipScale,makeColorScaleFunc:x.makeColorScaleFunc,makeColorScaleFuncFromTrace:x.makeColorScaleFuncFromTrace}}}),uu=Ye({"src/traces/scatter/subtypes.js"(X,H){"use strict";var g=ta(),x=xp().isTypedArraySpec;H.exports={hasLines:function(A){return A.visible&&A.mode&&A.mode.indexOf("lines")!==-1},hasMarkers:function(A){return A.visible&&(A.mode&&A.mode.indexOf("markers")!==-1||A.type==="splom")},hasText:function(A){return A.visible&&A.mode&&A.mode.indexOf("text")!==-1},isBubble:function(A){var M=A.marker;return g.isPlainObject(M)&&(g.isArrayOrTypedArray(M.size)||x(M.size))}}}}),t1=Ye({"src/traces/scatter/make_bubble_size_func.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){M||(M=2);var e=A.marker,t=e.sizeref||1,r=e.sizemin||0,o=e.sizemode==="area"?function(a){return Math.sqrt(a/t)}:function(a){return a/t};return function(a){var i=o(a/M);return g(i)&&i>0?Math.max(i,r):0}}}}),Qp=Ye({"src/components/fx/helpers.js"(X){"use strict";var H=ta();X.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},X.isTraceInSubplots=function(t,r){if(t.type==="splom"){for(var o=t.xaxes||[],a=t.yaxes||[],i=0;i=0&&o.index2&&(r.push([a].concat(i.splice(0,2))),n="l",a=a=="m"?"l":"L");;){if(i.length==g[n])return i.unshift(a),r.push(i);if(i.length0&&(ge=100,Me=Me.replace("-open","")),Me.indexOf("-dot")>0&&(ge+=200,Me=Me.replace("-dot","")),Me=l.symbolNames.indexOf(Me),Me>=0&&(Me+=ge)}return Me%100>=d||Me>=400?0:Math.floor(Math.max(Me,0))};function y(Me,ge,ce,ze){var tt=Me%100;return l.symbolFuncs[tt](ge,ce,ze)+(Me>=200?u:"")}var f=A("~f"),P={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};l.gradient=function(Me,ge,ce,ze,tt,nt){var Qe=P[ze];return L(Me,ge,ce,Qe.type,tt,nt,Qe.start,Qe.stop,!1,Qe.reversed)};function L(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot){var jt=tt.length,ur;ze==="linear"?ur={node:"linearGradient",attrs:{x1:Qe.x,y1:Qe.y,x2:Ct.x,y2:Ct.y,gradientUnits:St?"userSpaceOnUse":"objectBoundingBox"},reversed:Ot}:ze==="radial"&&(ur={node:"radialGradient",reversed:Ot});for(var ar=new Array(jt),Cr=0;Cr=0&&Me.i===void 0&&(Me.i=nt.i),ge.style("opacity",ze.selectedOpacityFn?ze.selectedOpacityFn(Me):Me.mo===void 0?Qe.opacity:Me.mo),ze.ms2mrc){var St;Me.ms==="various"||Qe.size==="various"?St=3:St=ze.ms2mrc(Me.ms),Me.mrc=St,ze.selectedSizeFn&&(St=Me.mrc=ze.selectedSizeFn(Me));var Ot=l.symbolNumber(Me.mx||Qe.symbol)||0;Me.om=Ot%200>=100;var jt=lt(Me,ce),ur=ee(Me,ce);ge.attr("d",y(Ot,St,jt,ur))}var ar=!1,Cr,vr,_r;if(Me.so)_r=Ct.outlierwidth,vr=Ct.outliercolor,Cr=Qe.outliercolor;else{var yt=(Ct||{}).width;_r=(Me.mlw+1||yt+1||(Me.trace?(Me.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in Me?vr=Me.mlcc=ze.lineScale(Me.mlc):x.isArrayOrTypedArray(Ct.color)?vr=r.defaultLine:vr=Ct.color,x.isArrayOrTypedArray(Qe.color)&&(Cr=r.defaultLine,ar=!0),"mc"in Me?Cr=Me.mcc=ze.markerScale(Me.mc):Cr=Qe.color||Qe.colors||"rgba(0,0,0,0)",ze.selectedColorFn&&(Cr=ze.selectedColorFn(Me))}if(Me.om)ge.call(r.stroke,Cr).style({"stroke-width":(_r||1)+"px",fill:"none"});else{ge.style("stroke-width",(Me.isBlank?0:_r)+"px");var Fe=Qe.gradient,Ke=Me.mgt;Ke?ar=!0:Ke=Fe&&Fe.type,x.isArrayOrTypedArray(Ke)&&(Ke=Ke[0],P[Ke]||(Ke=0));var Ne=Qe.pattern,Ee=Ne&&l.getPatternAttr(Ne.shape,Me.i,"");if(Ke&&Ke!=="none"){var Ve=Me.mgc;Ve?ar=!0:Ve=Fe.color;var ke=ce.uid;ar&&(ke+="-"+Me.i),l.gradient(ge,tt,ke,Ke,[[0,Ve],[1,Cr]],"fill")}else if(Ee){var Te=!1,Le=Ne.fgcolor;!Le&&nt&&nt.color&&(Le=nt.color,Te=!0);var rt=l.getPatternAttr(Le,Me.i,nt&&nt.color||null),dt=l.getPatternAttr(Ne.bgcolor,Me.i,null),xt=Ne.fgopacity,It=l.getPatternAttr(Ne.size,Me.i,8),Bt=l.getPatternAttr(Ne.solidity,Me.i,.3);Te=Te||Me.mcc||x.isArrayOrTypedArray(Ne.shape)||x.isArrayOrTypedArray(Ne.bgcolor)||x.isArrayOrTypedArray(Ne.fgcolor)||x.isArrayOrTypedArray(Ne.size)||x.isArrayOrTypedArray(Ne.solidity);var Gt=ce.uid;Te&&(Gt+="-"+Me.i),l.pattern(ge,"point",tt,Gt,Ee,It,Bt,Me.mcc,Ne.fillmode,dt,rt,xt)}else x.isArrayOrTypedArray(Cr)?r.fill(ge,Cr[Me.i]):r.fill(ge,Cr);_r&&r.stroke(ge,vr)}},l.makePointStyleFns=function(Me){var ge={},ce=Me.marker;return ge.markerScale=l.tryColorscale(ce,""),ge.lineScale=l.tryColorscale(ce,"line"),t.traceIs(Me,"symbols")&&(ge.ms2mrc=v.isBubble(Me)?p(Me):function(){return(ce.size||6)/2}),Me.selectedpoints&&x.extendFlat(ge,l.makeSelectedPointStyleFns(Me)),ge},l.makeSelectedPointStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.marker||{},nt=ce.marker||{},Qe=ze.marker||{},Ct=tt.opacity,St=nt.opacity,Ot=Qe.opacity,jt=St!==void 0,ur=Ot!==void 0;(x.isArrayOrTypedArray(Ct)||jt||ur)&&(ge.selectedOpacityFn=function(Ee){var Ve=Ee.mo===void 0?tt.opacity:Ee.mo;return Ee.selected?jt?St:Ve:ur?Ot:h*Ve});var ar=tt.color,Cr=nt.color,vr=Qe.color;(Cr||vr)&&(ge.selectedColorFn=function(Ee){var Ve=Ee.mcc||ar;return Ee.selected?Cr||Ve:vr||Ve});var _r=tt.size,yt=nt.size,Fe=Qe.size,Ke=yt!==void 0,Ne=Fe!==void 0;return t.traceIs(Me,"symbols")&&(Ke||Ne)&&(ge.selectedSizeFn=function(Ee){var Ve=Ee.mrc||_r/2;return Ee.selected?Ke?yt/2:Ve:Ne?Fe/2:Ve}),ge},l.makeSelectedTextStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.textfont||{},nt=ce.textfont||{},Qe=ze.textfont||{},Ct=tt.color,St=nt.color,Ot=Qe.color;return ge.selectedTextColorFn=function(jt){var ur=jt.tc||Ct;return jt.selected?St||ur:Ot||(St?ur:r.addOpacity(ur,h))},ge},l.selectedPointStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedPointStyleFns(ge),ze=ge.marker||{},tt=[];ce.selectedOpacityFn&&tt.push(function(nt,Qe){nt.style("opacity",ce.selectedOpacityFn(Qe))}),ce.selectedColorFn&&tt.push(function(nt,Qe){r.fill(nt,ce.selectedColorFn(Qe))}),ce.selectedSizeFn&&tt.push(function(nt,Qe){var Ct=Qe.mx||ze.symbol||0,St=ce.selectedSizeFn(Qe);nt.attr("d",y(l.symbolNumber(Ct),St,lt(Qe,ge),ee(Qe,ge))),Qe.mrc2=St}),tt.length&&Me.each(function(nt){for(var Qe=g.select(this),Ct=0;Ct0?ce:0}l.textPointStyle=function(Me,ge,ce){if(Me.size()){var ze;if(ge.selectedpoints){var tt=l.makeSelectedTextStyleFns(ge);ze=tt.selectedTextColorFn}var nt=ge.texttemplate,Qe=ce._fullLayout;Me.each(function(Ct){var St=g.select(this),Ot=nt?x.extractOption(Ct,ge,"txt","texttemplate"):x.extractOption(Ct,ge,"tx","text");if(!Ot&&Ot!==0){St.remove();return}if(nt){var jt=ge._module.formatLabels,ur=jt?jt(Ct,ge,Qe):{},ar={};T(ar,ge,Ct.i);var Cr=ge._meta||{};Ot=x.texttemplateString(Ot,ur,Qe._d3locale,ar,Ct,Cr)}var vr=Ct.tp||ge.textposition,_r=B(Ct,ge),yt=ze?ze(Ct):Ct.tc||ge.textfont.color;St.call(l.font,{family:Ct.tf||ge.textfont.family,weight:Ct.tw||ge.textfont.weight,style:Ct.ty||ge.textfont.style,variant:Ct.tv||ge.textfont.variant,textcase:Ct.tC||ge.textfont.textcase,lineposition:Ct.tE||ge.textfont.lineposition,shadow:Ct.tS||ge.textfont.shadow,size:_r,color:yt}).text(Ot).call(i.convertToTspans,ce).call(F,vr,_r,Ct.mrc)})}},l.selectedTextStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedTextStyleFns(ge);Me.each(function(ze){var tt=g.select(this),nt=ce.selectedTextColorFn(ze),Qe=ze.tp||ge.textposition,Ct=B(ze,ge);r.fill(tt,nt);var St=t.traceIs(ge,"bar-like");F(tt,Qe,Ct,ze.mrc2||ze.mrc,St)})}};var O=.5;l.smoothopen=function(Me,ge){if(Me.length<3)return"M"+Me.join("L");var ce="M"+Me[0],ze=[],tt;for(tt=1;tt=St||Ee>=jt&&Ee<=St)&&(Ve<=ur&&Ve>=Ot||Ve>=ur&&Ve<=Ot)&&(Me=[Ee,Ve])}return Me}l.applyBackoff=G,l.makeTester=function(){var Me=x.ensureSingleById(g.select("body"),"svg","js-plotly-tester",function(ce){ce.attr(n.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),ge=x.ensureSingle(Me,"path","js-reference-point",function(ce){ce.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});l.tester=Me,l.testref=ge},l.savedBBoxes={};var $=0,J=1e4;l.bBox=function(Me,ge,ce){ce||(ce=Z(Me));var ze;if(ce){if(ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}else if(Me.childNodes.length===1){var tt=Me.childNodes[0];if(ce=Z(tt),ce){var nt=+tt.getAttribute("x")||0,Qe=+tt.getAttribute("y")||0,Ct=tt.getAttribute("transform");if(!Ct){var St=l.bBox(tt,!1,ce);return nt&&(St.left+=nt,St.right+=nt),Qe&&(St.top+=Qe,St.bottom+=Qe),St}if(ce+="~"+nt+"~"+Qe+"~"+Ct,ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}}var Ot,jt;ge?Ot=Me:(jt=l.tester.node(),Ot=Me.cloneNode(!0),jt.appendChild(Ot)),g.select(Ot).attr("transform",null).call(i.positionText,0,0);var ur=Ot.getBoundingClientRect(),ar=l.testref.node().getBoundingClientRect();ge||jt.removeChild(Ot);var Cr={height:ur.height,width:ur.width,left:ur.left-ar.left,top:ur.top-ar.top,right:ur.right-ar.left,bottom:ur.bottom-ar.top};return $>=J&&(l.savedBBoxes={},$=0),ce&&(l.savedBBoxes[ce]=Cr),$++,x.extendFlat({},Cr)};function Z(Me){var ge=Me.getAttribute("data-unformatted");if(ge!==null)return ge+Me.getAttribute("data-math")+Me.getAttribute("text-anchor")+Me.getAttribute("style")}l.setClipUrl=function(Me,ge,ce){Me.attr("clip-path",re(ge,ce))};function re(Me,ge){if(!Me)return null;var ce=ge._context,ze=ce._exportedPlot?"":ce._baseUrl||"";return ze?"url('"+ze+"#"+Me+"')":"url(#"+Me+")"}l.getTranslate=function(Me){var ge=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||0,y:+tt[1]||0}},l.setTranslate=function(Me,ge,ce){var ze=/(\btranslate\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||0,ce=ce||0,Qe=Qe.replace(ze,"").trim(),Qe+=a(ge,ce),Qe=Qe.trim(),Me[nt]("transform",Qe),Qe},l.getScale=function(Me){var ge=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||1,y:+tt[1]||1}},l.setScale=function(Me,ge,ce){var ze=/(\bscale\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||1,ce=ce||1,Qe=Qe.replace(ze,"").trim(),Qe+="scale("+ge+","+ce+")",Qe=Qe.trim(),Me[nt]("transform",Qe),Qe};var ne=/\s*sc.*/;l.setPointGroupScale=function(Me,ge,ce){if(ge=ge||1,ce=ce||1,!!Me){var ze=ge===1&&ce===1?"":"scale("+ge+","+ce+")";Me.each(function(){var tt=(this.getAttribute("transform")||"").replace(ne,"");tt+=ze,tt=tt.trim(),this.setAttribute("transform",tt)})}};var j=/translate\([^)]*\)\s*$/;l.setTextPointsScale=function(Me,ge,ce){Me&&Me.each(function(){var ze,tt=g.select(this),nt=tt.select("text");if(nt.node()){var Qe=parseFloat(nt.attr("x")||0),Ct=parseFloat(nt.attr("y")||0),St=(tt.attr("transform")||"").match(j);ge===1&&ce===1?ze=[]:ze=[a(Qe,Ct),"scale("+ge+","+ce+")",a(-Qe,-Ct)],St&&ze.push(St),tt.attr("transform",ze.join(""))}})};function ee(Me,ge){var ce;return Me&&(ce=Me.mf),ce===void 0&&(ce=ge.marker&&ge.marker.standoff||0),!ge._geo&&!ge._xA?-ce:ce}l.getMarkerStandoff=ee;var ie=Math.atan2,fe=Math.cos,be=Math.sin;function Ae(Me,ge){var ce=ge[0],ze=ge[1];return[ce*fe(Me)-ze*be(Me),ce*be(Me)+ze*fe(Me)]}var Be,Ie,Ze,at,it,et;function lt(Me,ge){var ce=Me.ma;ce===void 0&&(ce=ge.marker.angle,(!ce||x.isArrayOrTypedArray(ce))&&(ce=0));var ze,tt,nt=ge.marker.angleref;if(nt==="previous"||nt==="north"){if(ge._geo){var Qe=ge._geo.project(Me.lonlat);ze=Qe[0],tt=Qe[1]}else{var Ct=ge._xA,St=ge._yA;if(Ct&&St)ze=Ct.c2p(Me.x),tt=St.c2p(Me.y);else return 90}if(ge._geo){var Ot=Me.lonlat[0],jt=Me.lonlat[1],ur=ge._geo.project([Ot,jt+1e-5]),ar=ge._geo.project([Ot+1e-5,jt]),Cr=ie(ar[1]-tt,ar[0]-ze),vr=ie(ur[1]-tt,ur[0]-ze),_r;if(nt==="north")_r=ce/180*Math.PI;else if(nt==="previous"){var yt=Ot/180*Math.PI,Fe=jt/180*Math.PI,Ke=Be/180*Math.PI,Ne=Ie/180*Math.PI,Ee=Ke-yt,Ve=fe(Ne)*be(Ee),ke=be(Ne)*fe(Fe)-fe(Ne)*be(Fe)*fe(Ee);_r=-ie(Ve,ke)-Math.PI,Be=Ot,Ie=jt}var Te=Ae(Cr,[fe(_r),0]),Le=Ae(vr,[be(_r),0]);ce=ie(Te[1]+Le[1],Te[0]+Le[0])/Math.PI*180,nt==="previous"&&!(et===ge.uid&&Me.i===it+1)&&(ce=null)}if(nt==="previous"&&!ge._geo)if(et===ge.uid&&Me.i===it+1&&M(ze)&&M(tt)){var rt=ze-Ze,dt=tt-at,xt=ge.line&&ge.line.shape||"",It=xt.slice(xt.length-1);It==="h"&&(dt=0),It==="v"&&(rt=0),ce+=ie(dt,rt)/Math.PI*180+90}else ce=null}return Ze=ze,at=tt,it=Me.i,et=ge.uid,ce}l.getMarkerAngle=lt}}),Xg=Ye({"src/components/titles/index.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=Bo(),o=Fn(),a=jl(),i=Xm(),n=oh().OPPOSITE_SIDE,s=/ [XY][0-9]* /,c=1.6,h=1.6;function v(p,T,l){var _=p._fullLayout,w=l.propContainer,S=l.propName,E=l.placeholder,m=l.traceIndex,b=l.avoid||{},d=l.attributes,u=l.transform,y=l.containerGroup,f=1,P=w.title,L=(P&&P.text?P.text:"").trim(),z=!1,F=P&&P.font?P.font:{},B=F.family,O=F.size,I=F.color,N=F.weight,U=F.style,W=F.variant,Q=F.textcase,ue=F.lineposition,se=F.shadow,he=l.subtitlePropName,G=!!he,$=l.subtitlePlaceholder,J=(w.title||{}).subtitle||{text:"",font:{}},Z=J.text.trim(),re=!1,ne=1,j=J.font,ee=j.family,ie=j.size,fe=j.color,be=j.weight,Ae=j.style,Be=j.variant,Ie=j.textcase,Ze=j.lineposition,at=j.shadow,it;S==="title.text"?it="titleText":S.indexOf("axis")!==-1?it="axisTitleText":S.indexOf("colorbar"!==-1)&&(it="colorbarTitleText");var et=p._context.edits[it];function lt(ar,Cr){return ar===void 0||Cr===void 0?!1:ar.replace(s," % ")===Cr.replace(s," % ")}L===""?f=0:lt(L,E)&&(et||(L=""),f=.2,z=!0),G&&(Z===""?ne=0:lt(Z,$)&&(et||(Z=""),ne=.2,re=!0)),l._meta?L=e.templateString(L,l._meta):_._meta&&(L=e.templateString(L,_._meta));var Me=L||Z||et,ge;y||(y=e.ensureSingle(_._infolayer,"g","g-"+T),ge=_._hColorbarMoveTitle);var ce=y.selectAll("text."+T).data(Me?[0]:[]);ce.enter().append("text"),ce.text(L).attr("class",T),ce.exit().remove();var ze=null,tt=T+"-subtitle",nt=Z||et;if(G&&nt&&(ze=y.selectAll("text."+tt).data(nt?[0]:[]),ze.enter().append("text"),ze.text(Z).attr("class",tt),ze.exit().remove()),!Me)return y;function Qe(ar,Cr){e.syncOrAsync([Ct,St],{title:ar,subtitle:Cr})}function Ct(ar){var Cr=ar.title,vr=ar.subtitle,_r;!u&&ge&&(u={}),u?(_r="",u.rotate&&(_r+="rotate("+[u.rotate,d.x,d.y]+")"),(u.offset||ge)&&(_r+=t(0,(u.offset||0)-(ge||0)))):_r=null,Cr.attr("transform",_r);function yt(ke){if(ke){var Te=g.select(ke.node().parentNode).select("."+tt);if(!Te.empty()){var Le=ke.node().getBBox();if(Le.height){var rt=Le.y+Le.height+c*ie;Te.attr("y",rt)}}}}if(Cr.style("opacity",f*o.opacity(I)).call(r.font,{color:o.rgb(I),size:g.round(O,2),family:B,weight:N,style:U,variant:W,textcase:Q,shadow:se,lineposition:ue}).attr(d).call(a.convertToTspans,p,yt),vr){var Fe=y.select("."+T+"-math-group"),Ke=Cr.node().getBBox(),Ne=Fe.node()?Fe.node().getBBox():void 0,Ee=Ne?Ne.y+Ne.height+c*ie:Ke.y+Ke.height+h*ie,Ve=e.extendFlat({},d,{y:Ee});vr.attr("transform",_r),vr.style("opacity",ne*o.opacity(fe)).call(r.font,{color:o.rgb(fe),size:g.round(ie,2),family:ee,weight:be,style:Ae,variant:Be,textcase:Ie,shadow:at,lineposition:Ze}).attr(Ve).call(a.convertToTspans,p)}return A.previousPromises(p)}function St(ar){var Cr=ar.title,vr=g.select(Cr.node().parentNode);if(b&&b.selection&&b.side&&L){vr.attr("transform",null);var _r=n[b.side],yt=b.side==="left"||b.side==="top"?-1:1,Fe=x(b.pad)?b.pad:2,Ke=r.bBox(vr.node()),Ne={t:0,b:0,l:0,r:0},Ee=p._fullLayout._reservedMargin;for(var Ve in Ee)for(var ke in Ee[Ve]){var Te=Ee[Ve][ke];Ne[ke]=Math.max(Ne[ke],Te)}var Le={left:Ne.l,top:Ne.t,right:_.width-Ne.r,bottom:_.height-Ne.b},rt=b.maxShift||yt*(Le[b.side]-Ke[b.side]),dt=0;if(rt<0)dt=rt;else{var xt=b.offsetLeft||0,It=b.offsetTop||0;Ke.left-=xt,Ke.right-=xt,Ke.top-=It,Ke.bottom-=It,b.selection.each(function(){var Gt=r.bBox(this);e.bBoxIntersect(Ke,Gt,Fe)&&(dt=Math.max(dt,yt*(Gt[b.side]-Ke[_r])+Fe))}),dt=Math.min(rt,dt),w._titleScoot=Math.abs(dt)}if(dt>0||rt<0){var Bt={left:[-dt,0],right:[dt,0],top:[0,-dt],bottom:[0,dt]}[b.side];vr.attr("transform",t(Bt[0],Bt[1]))}}}ce.call(Qe,ze);function Ot(ar,Cr){ar.text(Cr).on("mouseover.opacity",function(){g.select(this).transition().duration(i.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){g.select(this).transition().duration(i.HIDE_PLACEHOLDER).style("opacity",0)})}if(et&&(L?ce.on(".opacity",null):(Ot(ce,E),z=!0),ce.call(a.makeEditable,{gd:p}).on("edit",function(ar){m!==void 0?M.call("_guiRestyle",p,S,ar,m):M.call("_guiRelayout",p,S,ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,d.x,d.y)}),G)){if(G&&!L){var jt=ce.node().getBBox(),ur=jt.y+jt.height+h*ie;ze.attr("y",ur)}Z?ze.on(".opacity",null):(Ot(ze,$),re=!0),ze.call(a.makeEditable,{gd:p}).on("edit",function(ar){M.call("_guiRelayout",p,"title.subtitle.text",ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,ze.attr("x"),ze.attr("y"))})}return ce.classed("js-placeholder",z),ze&&ze.classed("js-placeholder",re),y}H.exports={draw:v,SUBTITLE_PADDING_EM:h,SUBTITLE_PADDING_MATHJAX_EM:c}}}),wv=Ye({"src/plots/cartesian/set_convert.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=ta(),M=A.numberFormat,e=jo(),t=A.cleanNumber,r=A.ms2DateTime,o=A.dateTime2ms,a=A.ensureNumber,i=A.isArrayOrTypedArray,n=ks(),s=n.FP_SAFE,c=n.BADNUM,h=n.LOG_CLIP,v=n.ONEWEEK,p=n.ONEDAY,T=n.ONEHOUR,l=n.ONEMIN,_=n.ONESEC,w=Xc(),S=wh(),E=S.HOUR_PATTERN,m=S.WEEKDAY_PATTERN;function b(u){return Math.pow(10,u)}function d(u){return u!=null}H.exports=function(y,f){f=f||{};var P=y._id||"x",L=P.charAt(0);function z(Z,re){if(Z>0)return Math.log(Z)/Math.LN10;if(Z<=0&&re&&y.range&&y.range.length===2){var ne=y.range[0],j=y.range[1];return .5*(ne+j-2*h*Math.abs(ne-j))}else return c}function F(Z,re,ne,j){if((j||{}).msUTC&&e(Z))return+Z;var ee=o(Z,ne||y.calendar);if(ee===c)if(e(Z)){Z=+Z;var ie=Math.floor(A.mod(Z+.05,1)*10),fe=Math.round(Z-ie/10);ee=o(new Date(fe))+ie/10}else return c;return ee}function B(Z,re,ne){return r(Z,re,ne||y.calendar)}function O(Z){return y._categories[Math.round(Z)]}function I(Z){if(d(Z)){if(y._categoriesMap===void 0&&(y._categoriesMap={}),y._categoriesMap[Z]!==void 0)return y._categoriesMap[Z];y._categories.push(typeof Z=="number"?String(Z):Z);var re=y._categories.length-1;return y._categoriesMap[Z]=re,re}return c}function N(Z,re){for(var ne=new Array(re),j=0;jy.range[1]&&(ne=!ne);for(var j=ne?-1:1,ee=j*Z,ie=0,fe=0;feAe)ie=fe+1;else{ie=ee<(be+Ae)/2?fe:fe+1;break}}var Be=y._B[ie]||0;return isFinite(Be)?ue(Z,y._m2,Be):0},G=function(Z){var re=y._rangebreaks.length;if(!re)return se(Z,y._m,y._b);for(var ne=0,j=0;jy._rangebreaks[j].pmax&&(ne=j+1);return se(Z,y._m2,y._B[ne])}}y.c2l=y.type==="log"?z:a,y.l2c=y.type==="log"?b:a,y.l2p=he,y.p2l=G,y.c2p=y.type==="log"?function(Z,re){return he(z(Z,re))}:he,y.p2c=y.type==="log"?function(Z){return b(G(Z))}:G,["linear","-"].indexOf(y.type)!==-1?(y.d2r=y.r2d=y.d2c=y.r2c=y.d2l=y.r2l=t,y.c2d=y.c2r=y.l2d=y.l2r=a,y.d2p=y.r2p=function(Z){return y.l2p(t(Z))},y.p2d=y.p2r=G,y.cleanPos=a):y.type==="log"?(y.d2r=y.d2l=function(Z,re){return z(t(Z),re)},y.r2d=y.r2c=function(Z){return b(t(Z))},y.d2c=y.r2l=t,y.c2d=y.l2r=a,y.c2r=z,y.l2d=b,y.d2p=function(Z,re){return y.l2p(y.d2r(Z,re))},y.p2d=function(Z){return b(G(Z))},y.r2p=function(Z){return y.l2p(t(Z))},y.p2r=G,y.cleanPos=a):y.type==="date"?(y.d2r=y.r2d=A.identity,y.d2c=y.r2c=y.d2l=y.r2l=F,y.c2d=y.c2r=y.l2d=y.l2r=B,y.d2p=y.r2p=function(Z,re,ne){return y.l2p(F(Z,0,ne))},y.p2d=y.p2r=function(Z,re,ne){return B(G(Z),re,ne)},y.cleanPos=function(Z){return A.cleanDate(Z,c,y.calendar)}):y.type==="category"?(y.d2c=y.d2l=I,y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=Q(Z);return re!==void 0?re:y.fraction2r(.5)},y.l2r=y.c2r=a,y.r2l=Q,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return typeof Z=="string"&&Z!==""?Z:a(Z)}):y.type==="multicategory"&&(y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=W(Z);return re!==void 0?re:y.fraction2r(.5)},y.r2c_just_indices=U,y.l2r=y.c2r=a,y.r2l=W,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return Array.isArray(Z)||typeof Z=="string"&&Z!==""?Z:a(Z)},y.setupMultiCategory=function(Z){var re=y._traceIndices,ne,j,ee=y._matchGroup;if(ee&&y._categories.length===0){for(var ie in ee)if(ie!==P){var fe=f[w.id2name(ie)];re=re.concat(fe._traceIndices)}}var be=[[0,{}],[0,{}]],Ae=[];for(ne=0;nefe[1]&&(j[ie?0:1]=ne),j[0]===j[1]){var be=y.l2r(re),Ae=y.l2r(ne);if(re!==void 0){var Be=be+1;ne!==void 0&&(Be=Math.min(Be,Ae)),j[ie?1:0]=Be}if(ne!==void 0){var Ie=Ae+1;re!==void 0&&(Ie=Math.max(Ie,be)),j[ie?0:1]=Ie}}}},y.cleanRange=function(Z,re){y._cleanRange(Z,re),y.limitRange(Z)},y._cleanRange=function(Z,re){re||(re={}),Z||(Z="range");var ne=A.nestedProperty(y,Z).get(),j,ee;if(y.type==="date"?ee=A.dfltRange(y.calendar):L==="y"?ee=S.DFLTRANGEY:y._name==="realaxis"?ee=[0,1]:ee=re.dfltRange||S.DFLTRANGEX,ee=ee.slice(),(y.rangemode==="tozero"||y.rangemode==="nonnegative")&&(ee[0]=0),!ne||ne.length!==2){A.nestedProperty(y,Z).set(ee);return}var ie=ne[0]===null,fe=ne[1]===null;for(y.type==="date"&&!y.autorange&&(ne[0]=A.cleanDate(ne[0],c,y.calendar),ne[1]=A.cleanDate(ne[1],c,y.calendar)),j=0;j<2;j++)if(y.type==="date"){if(!A.isDateTime(ne[j],y.calendar)){y[Z]=ee;break}if(y.r2l(ne[0])===y.r2l(ne[1])){var be=A.constrain(y.r2l(ne[0]),A.MIN_MS+1e3,A.MAX_MS-1e3);ne[0]=y.l2r(be-1e3),ne[1]=y.l2r(be+1e3);break}}else{if(!e(ne[j]))if(!(ie||fe)&&e(ne[1-j]))ne[j]=ne[1-j]*(j?10:.1);else{y[Z]=ee;break}if(ne[j]<-s?ne[j]=-s:ne[j]>s&&(ne[j]=s),ne[0]===ne[1]){var Ae=Math.max(1,Math.abs(ne[0]*1e-6));ne[0]-=Ae,ne[1]+=Ae}}},y.setScale=function(Z){var re=f._size;if(y.overlaying){var ne=w.getFromId({_fullLayout:f},y.overlaying);y.domain=ne.domain}var j=Z&&y._r?"_r":"range",ee=y.calendar;y.cleanRange(j);var ie=y.r2l(y[j][0],ee),fe=y.r2l(y[j][1],ee),be=L==="y";if(be?(y._offset=re.t+(1-y.domain[1])*re.h,y._length=re.h*(y.domain[1]-y.domain[0]),y._m=y._length/(ie-fe),y._b=-y._m*fe):(y._offset=re.l+y.domain[0]*re.w,y._length=re.w*(y.domain[1]-y.domain[0]),y._m=y._length/(fe-ie),y._b=-y._m*ie),y._rangebreaks=[],y._lBreaks=0,y._m2=0,y._B=[],y.rangebreaks){var Ae,Be;if(y._rangebreaks=y.locateBreaks(Math.min(ie,fe),Math.max(ie,fe)),y._rangebreaks.length){for(Ae=0;Aefe&&(Ie=!Ie),Ie&&y._rangebreaks.reverse();var Ze=Ie?-1:1;for(y._m2=Ze*y._length/(Math.abs(fe-ie)-y._lBreaks),y._B.push(-y._m2*(be?fe:ie)),Ae=0;Aeee&&(ee+=7,ieee&&(ee+=24,ie=j&&ie=j&&Z=Qe.min&&(ceQe.max&&(Qe.max=ze),tt=!1)}tt&&fe.push({min:ce,max:ze})}};for(ne=0;ne_*2}function n(h){return Math.max(1,(h-1)/1e3)}function s(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;Sl*2}function c(h){return M(h[0])&&M(h[1])}}}),Yd=Ye({"src/plots/cartesian/autorange.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=ks().FP_SAFE,e=Hn(),t=Bo(),r=Xc(),o=r.getFromId,a=r.isLinked;H.exports={applyAutorangeOptions:y,getAutoRange:i,makePadFn:s,doAutoRange:p,findExtremes:T,concatExtremes:v};function i(f,P){var L,z,F=[],B=f._fullLayout,O=s(B,P,0),I=s(B,P,1),N=v(f,P),U=N.min,W=N.max;if(U.length===0||W.length===0)return A.simpleMap(P.range,P.r2l);var Q=U[0].val,ue=W[0].val;for(L=1;L0&&(Ae=re-O(ee)-I(ie),Ae>ne?Be/Ae>j&&(fe=ee,be=ie,j=Be/Ae):Be/re>j&&(fe={val:ee.val,nopad:1},be={val:ie.val,nopad:1},j=Be/re));function Ie(lt,Me){return Math.max(lt,I(Me))}if(Q===ue){var Ze=Q-1,at=Q+1;if(J)if(Q===0)F=[0,1];else{var it=(Q>0?W:U).reduce(Ie,0),et=Q/(1-Math.min(.5,it/re));F=Q>0?[0,et]:[et,0]}else Z?F=[Math.max(0,Ze),Math.max(1,at)]:F=[Ze,at]}else J?(fe.val>=0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:0,nopad:1})):Z&&(fe.val-j*O(fe)<0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:1,nopad:1})),j=(be.val-fe.val-n(P,ee.val,ie.val))/(re-O(fe)-I(be)),F=[fe.val-j*O(fe),be.val+j*I(be)];return F=y(F,P),P.limitRange&&P.limitRange(),he&&F.reverse(),A.simpleMap(F,P.l2r||Number)}function n(f,P,L){var z=0;if(f.rangebreaks)for(var F=f.locateBreaks(P,L),B=0;B0?L.ppadplus:L.ppadminus)||L.ppad||0),ee=ne((f._m>0?L.ppadminus:L.ppadplus)||L.ppad||0),ie=ne(L.vpadplus||L.vpad),fe=ne(L.vpadminus||L.vpad);if(!U){if(Z=1/0,re=-1/0,N)for(Q=0;Q0&&(Z=ue),ue>re&&ue-M&&(Z=ue),ue>re&&ue=Be;Q--)Ae(Q);return{min:z,max:F,opts:L}}function l(f,P,L,z){w(f,P,L,z,E)}function _(f,P,L,z){w(f,P,L,z,m)}function w(f,P,L,z,F){for(var B=z.tozero,O=z.extrapad,I=!0,N=0;N=L&&(U.extrapad||!O)){I=!1;break}else F(P,U.val)&&U.pad<=L&&(O||!U.extrapad)&&(f.splice(N,1),N--)}if(I){var W=B&&P===0;f.push({val:P,pad:W?0:L,extrapad:W?!1:O})}}function S(f){return x(f)&&Math.abs(f)=P}function b(f,P){var L=P.autorangeoptions;return L&&L.minallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.minallowed:L&&L.clipmin!==void 0&&u(P,L.clipmin,L.clipmax)?Math.max(f,P.d2l(L.clipmin)):f}function d(f,P){var L=P.autorangeoptions;return L&&L.maxallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.maxallowed:L&&L.clipmax!==void 0&&u(P,L.clipmin,L.clipmax)?Math.min(f,P.d2l(L.clipmax)):f}function u(f,P,L){return P!==void 0&&L!==void 0?(P=f.d2l(P),L=f.d2l(L),P=N&&(B=N,L=N),O<=N&&(O=N,z=N)}}return L=b(L,P),z=d(z,P),[L,z]}}}),Co=Ye({"src/plots/cartesian/axes.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=jl(),o=Xg(),a=Fn(),i=Bo(),n=Vh(),s=sS(),c=ks(),h=c.ONEMAXYEAR,v=c.ONEAVGYEAR,p=c.ONEMINYEAR,T=c.ONEMAXQUARTER,l=c.ONEAVGQUARTER,_=c.ONEMINQUARTER,w=c.ONEMAXMONTH,S=c.ONEAVGMONTH,E=c.ONEMINMONTH,m=c.ONEWEEK,b=c.ONEDAY,d=b/2,u=c.ONEHOUR,y=c.ONEMIN,f=c.ONESEC,P=c.ONEMILLI,L=c.ONEMICROSEC,z=c.MINUS_SIGN,F=c.BADNUM,B={K:"zeroline"},O={K:"gridline",L:"path"},I={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},W={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Q=oh(),ue=Q.MID_SHIFT,se=Q.CAP_SHIFT,he=Q.LINE_SPACING,G=Q.OPPOSITE_SIDE,$=3,J=H.exports={};J.setConvert=wv();var Z=r1(),re=Xc(),ne=re.idSort,j=re.isLinked;J.id2name=re.id2name,J.name2id=re.name2id,J.cleanId=re.cleanId,J.list=re.list,J.listIds=re.listIds,J.getFromId=re.getFromId,J.getFromTrace=re.getFromTrace;var ee=Yd();J.getAutoRange=ee.getAutoRange,J.findExtremes=ee.findExtremes;var ie=1e-4;function fe(mt){var gt=(mt[1]-mt[0])*ie;return[mt[0]-gt,mt[1]+gt]}J.coerceRef=function(mt,gt,Er,kr,br,Tr){var Mr=kr.charAt(kr.length-1),Fr=Er._fullLayout._subplots[Mr+"axis"],Lr=kr+"ref",Jr={};return br||(br=Fr[0]||(typeof Tr=="string"?Tr:Tr[0])),Tr||(Tr=br),Fr=Fr.concat(Fr.map(function(oa){return oa+" domain"})),Jr[Lr]={valType:"enumerated",values:Fr.concat(Tr?typeof Tr=="string"?[Tr]:Tr:[]),dflt:br},e.coerce(mt,gt,Jr,Lr)},J.getRefType=function(mt){return mt===void 0?mt:mt==="paper"?"paper":mt==="pixel"?"pixel":/( domain)$/.test(mt)?"domain":"range"},J.coercePosition=function(mt,gt,Er,kr,br,Tr){var Mr,Fr,Lr=J.getRefType(kr);if(Lr!=="range")Mr=e.ensureNumber,Fr=Er(br,Tr);else{var Jr=J.getFromId(gt,kr);Tr=Jr.fraction2r(Tr),Fr=Er(br,Tr),Mr=Jr.cleanPos}mt[br]=Mr(Fr)},J.cleanPosition=function(mt,gt,Er){var kr=Er==="paper"||Er==="pixel"?e.ensureNumber:J.getFromId(gt,Er).cleanPos;return kr(mt)},J.redrawComponents=function(mt,gt){gt=gt||J.listIds(mt);var Er=mt._fullLayout;function kr(br,Tr,Mr,Fr){for(var Lr=M.getComponentMethod(br,Tr),Jr={},oa=0;oa2e-6||((Er-mt._forceTick0)/mt._minDtick%1+1.000001)%1>2e-6)&&(mt._minDtick=0))},J.saveRangeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br=0;brca*.3||Jr(kr)||Jr(br))){var kt=Er.dtick/2;mt+=mt+ktMr){var Fr=Number(Er.substr(1));Tr.exactYears>Mr&&Fr%12===0?mt=J.tickIncrement(mt,"M6","reverse")+b*1.5:Tr.exactMonths>Mr?mt=J.tickIncrement(mt,"M1","reverse")+b*15.5:mt-=d;var Lr=J.tickIncrement(mt,Er);if(Lr<=kr)return Lr}return mt}J.prepMinorTicks=function(mt,gt,Er){if(!gt.minor.dtick){delete mt.dtick;var kr=gt.dtick&&x(gt._tmin),br;if(kr){var Tr=J.tickIncrement(gt._tmin,gt.dtick,!0);br=[gt._tmin,Tr*.99+gt._tmin*.01]}else{var Mr=e.simpleMap(gt.range,gt.r2l);br=[Mr[0],.8*Mr[0]+.2*Mr[1]]}if(mt.range=e.simpleMap(br,gt.l2r),mt._isMinor=!0,J.prepTicks(mt,Er),kr){var Fr=x(gt.dtick),Lr=x(mt.dtick),Jr=Fr?gt.dtick:+gt.dtick.substring(1),oa=Lr?mt.dtick:+mt.dtick.substring(1);Fr&&Lr?at(Jr,oa)?Jr===2*m&&oa===2*b&&(mt.dtick=m):Jr===2*m&&oa===3*b?mt.dtick=m:Jr===m&&!(gt._input.minor||{}).nticks?mt.dtick=b:it(Jr/oa,2.5)?mt.dtick=Jr/2:mt.dtick=Jr:String(gt.dtick).charAt(0)==="M"?Lr?mt.dtick="M1":at(Jr,oa)?Jr>=12&&oa===2&&(mt.dtick="M3"):mt.dtick=gt.dtick:String(mt.dtick).charAt(0)==="L"?String(gt.dtick).charAt(0)==="L"?at(Jr,oa)||(mt.dtick=it(Jr/oa,2.5)?gt.dtick/2:gt.dtick):mt.dtick="D1":mt.dtick==="D2"&&+gt.dtick>1&&(mt.dtick=1)}mt.range=gt.range}gt.minor._tick0Init===void 0&&(mt.tick0=gt.tick0)};function at(mt,gt){return Math.abs((mt/gt+.5)%1-.5)<.001}function it(mt,gt){return Math.abs(mt/gt-1)<.001}J.prepTicks=function(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l,void 0,void 0,gt);if(mt.tickmode==="auto"||!mt.dtick){var kr=mt.nticks,br;kr||(mt.type==="category"||mt.type==="multicategory"?(br=mt.tickfont?e.bigFont(mt.tickfont.size||12):15,kr=mt._length/br):(br=mt._id.charAt(0)==="y"?40:80,kr=e.constrain(mt._length/br,4,9)+1),mt._name==="radialaxis"&&(kr*=2)),mt.minor&&mt.minor.tickmode!=="array"||mt.tickmode==="array"&&(kr*=100),mt._roughDTick=Math.abs(Er[1]-Er[0])/kr,J.autoTicks(mt,mt._roughDTick),mt._minDtick>0&&mt.dtick0?(Tr=kr-1,Mr=kr):(Tr=kr,Mr=kr);var Fr=mt[Tr].value,Lr=mt[Mr].value,Jr=Math.abs(Lr-Fr),oa=Er||Jr,ca=0;oa>=p?Jr>=p&&Jr<=h?ca=Jr:ca=v:Er===l&&oa>=_?Jr>=_&&Jr<=T?ca=Jr:ca=l:oa>=E?Jr>=E&&Jr<=w?ca=Jr:ca=S:Er===m&&oa>=m?ca=m:oa>=b?ca=b:Er===d&&oa>=d?ca=d:Er===u&&oa>=u&&(ca=u);var kt;ca>=Jr&&(ca=Jr,kt=!0);var ir=br+ca;if(gt.rangebreaks&&ca>0){for(var mr=84,$r=0,ma=0;mam&&(ca=Jr)}(ca>0||kr===0)&&(mt[kr].periodX=br+ca/2)}}J.calcTicks=function(gt,Er){for(var kr=gt.type,br=gt.calendar,Tr=gt.ticklabelstep,Mr=gt.ticklabelmode==="period",Fr=gt.range[0]>gt.range[1],Lr=!gt.ticklabelindex||e.isArrayOrTypedArray(gt.ticklabelindex)?gt.ticklabelindex:[gt.ticklabelindex],Jr=e.simpleMap(gt.range,gt.r2l,void 0,void 0,Er),oa=Jr[1]=(da?0:1);Sa--){var Ti=!Sa;Sa?(gt._dtickInit=gt.dtick,gt._tick0Init=gt.tick0):(gt.minor._dtickInit=gt.minor.dtick,gt.minor._tick0Init=gt.minor.tick0);var ai=Sa?gt:e.extendFlat({},gt,gt.minor);if(Ti?J.prepMinorTicks(ai,gt,Er):J.prepTicks(ai,Er),ai.tickmode==="array"){Sa?(ma=[],mr=ze(gt,!Ti)):(Ba=[],$r=ze(gt,!Ti));continue}if(ai.tickmode==="sync"){ma=[],mr=ce(gt);continue}var an=fe(Jr),sn=an[0],Mn=an[1],On=x(ai.dtick),$n=kr==="log"&&!(On||ai.dtick.charAt(0)==="L"),Cn=J.tickFirst(ai,Er);if(Sa){if(gt._tmin=Cn,Cn=Mn:Xi<=Mn;Xi=J.tickIncrement(Xi,as,oa,br)){if(Sa&&Jo++,ai.rangebreaks&&!oa){if(Xi=kt)break}if(ma.length>ir||Xi===Lo)break;Lo=Xi;var Pn={value:Xi};Sa?($n&&Xi!==(Xi|0)&&(Pn.simpleLabel=!0),Tr>1&&Jo%Tr&&(Pn.skipLabel=!0),ma.push(Pn)):(Pn.minor=!0,Ba.push(Pn))}}if(!Ba||Ba.length<2)Lr=!1;else{var go=(Ba[1].value-Ba[0].value)*(Fr?-1:1);$a(go,gt.tickformat)||(Lr=!1)}if(!Lr)Ca=ma;else{var In=ma.concat(Ba);Mr&&ma.length&&(In=In.slice(1)),In=In.sort(function(Yn,_s){return Yn.value-_s.value}).filter(function(Yn,_s,Yo){return _s===0||Yn.value!==Yo[_s-1].value});var Do=In.map(function(Yn,_s){return Yn.minor===void 0&&!Yn.skipLabel?_s:null}).filter(function(Yn){return Yn!==null});Do.forEach(function(Yn){Lr.map(function(_s){var Yo=Yn+_s;Yo>=0&&Yo-1;fi--){if(ma[fi].drop){ma.splice(fi,1);continue}ma[fi].value=Xr(ma[fi].value,gt);var so=gt.c2p(ma[fi].value);(mn?Os>so-ol:Oskt||Nnkt&&(Yo.periodX=kt),Nnbr&&ktv)gt/=v,kr=br(10),mt.dtick="M"+12*ur(gt,kr,tt);else if(Tr>S)gt/=S,mt.dtick="M"+ur(gt,1,nt);else if(Tr>b){if(mt.dtick=ur(gt,b,mt._hasDayOfWeekBreaks?[1,2,7,14]:Ct),!Er){var Mr=J.getTickFormat(mt),Fr=mt.ticklabelmode==="period";Fr&&(mt._rawTick0=mt.tick0),/%[uVW]/.test(Mr)?mt.tick0=e.dateTick0(mt.calendar,2):mt.tick0=e.dateTick0(mt.calendar,1),Fr&&(mt._dowTick0=mt.tick0)}}else Tr>u?mt.dtick=ur(gt,u,nt):Tr>y?mt.dtick=ur(gt,y,Qe):Tr>f?mt.dtick=ur(gt,f,Qe):(kr=br(10),mt.dtick=ur(gt,kr,tt))}else if(mt.type==="log"){mt.tick0=0;var Lr=e.simpleMap(mt.range,mt.r2l);if(mt._isMinor&&(gt*=1.5),gt>.7)mt.dtick=Math.ceil(gt);else if(Math.abs(Lr[1]-Lr[0])<1){var Jr=1.5*Math.abs((Lr[1]-Lr[0])/gt);gt=Math.abs(Math.pow(10,Lr[1])-Math.pow(10,Lr[0]))/Jr,kr=br(10),mt.dtick="L"+ur(gt,kr,tt)}else mt.dtick=gt>.3?"D2":"D1"}else mt.type==="category"||mt.type==="multicategory"?(mt.tick0=0,mt.dtick=Math.ceil(Math.max(gt,1))):pa(mt)?(mt.tick0=0,kr=1,mt.dtick=ur(gt,kr,jt)):(mt.tick0=0,kr=br(10),mt.dtick=ur(gt,kr,tt));if(mt.dtick===0&&(mt.dtick=1),!x(mt.dtick)&&typeof mt.dtick!="string"){var oa=mt.dtick;throw mt.dtick=1,"ax.dtick error: "+String(oa)}};function ar(mt){var gt=mt.dtick;if(mt._tickexponent=0,!x(gt)&&typeof gt!="string"&&(gt=1),(mt.type==="category"||mt.type==="multicategory")&&(mt._tickround=null),mt.type==="date"){var Er=mt.r2l(mt.tick0),kr=mt.l2r(Er).replace(/(^-|i)/g,""),br=kr.length;if(String(gt).charAt(0)==="M")br>10||kr.substr(5)!=="01-01"?mt._tickround="d":mt._tickround=+gt.substr(1)%12===0?"y":"m";else if(gt>=b&&br<=10||gt>=b*15)mt._tickround="d";else if(gt>=y&&br<=16||gt>=u)mt._tickround="M";else if(gt>=f&&br<=19||gt>=y)mt._tickround="S";else{var Tr=mt.l2r(Er+gt).replace(/^-/,"").length;mt._tickround=Math.max(br,Tr)-20,mt._tickround<0&&(mt._tickround=4)}}else if(x(gt)||gt.charAt(0)==="L"){var Mr=mt.range.map(mt.r2d||Number);x(gt)||(gt=Number(gt.substr(1))),mt._tickround=2-Math.floor(Math.log(gt)/Math.LN10+.01);var Fr=Math.max(Math.abs(Mr[0]),Math.abs(Mr[1])),Lr=Math.floor(Math.log(Fr)/Math.LN10+.01),Jr=mt.minexponent===void 0?3:mt.minexponent;Math.abs(Lr)>Jr&&(ke(mt.exponentformat)&&!Te(Lr)?mt._tickexponent=3*Math.round((Lr-1)/3):mt._tickexponent=Lr)}else mt._tickround=null}J.tickIncrement=function(mt,gt,Er,kr){var br=Er?-1:1;if(x(gt))return e.increment(mt,br*gt);var Tr=gt.charAt(0),Mr=br*Number(gt.substr(1));if(Tr==="M")return e.incrementMonth(mt,Mr,kr);if(Tr==="L")return Math.log(Math.pow(10,mt)+Mr)/Math.LN10;if(Tr==="D"){var Fr=gt==="D2"?Ot:St,Lr=mt+br*.01,Jr=e.roundUp(e.mod(Lr,1),Fr,Er);return Math.floor(Lr)+Math.log(g.round(Math.pow(10,Jr),1))/Math.LN10}throw"unrecognized dtick "+String(gt)},J.tickFirst=function(mt,gt){var Er=mt.r2l||Number,kr=e.simpleMap(mt.range,Er,void 0,void 0,gt),br=kr[1]=0&&Ba<=mt._length?ma:null};if(Tr&&e.isArrayOrTypedArray(mt.ticktext)){var ca=e.simpleMap(mt.range,mt.r2l),kt=(Math.abs(ca[1]-ca[0])-(mt._lBreaks||0))/1e4;for(Jr=0;Jr"+Fr;else{var Jr=Ea(mt),oa=mt._trueSide||mt.side;(!Jr&&oa==="top"||Jr&&oa==="bottom")&&(Mr+="
")}gt.text=Mr}function _r(mt,gt,Er,kr,br){var Tr=mt.dtick,Mr=gt.x,Fr=mt.tickformat,Lr=typeof Tr=="string"&&Tr.charAt(0);if(br==="never"&&(br=""),kr&&Lr!=="L"&&(Tr="L3",Lr="L"),Fr||Lr==="L")gt.text=Le(Math.pow(10,Mr),mt,br,kr);else if(x(Tr)||Lr==="D"&&e.mod(Mr+.01,1)<.1){var Jr=Math.round(Mr),oa=Math.abs(Jr),ca=mt.exponentformat;ca==="power"||ke(ca)&&Te(Jr)?(Jr===0?gt.text=1:Jr===1?gt.text="10":gt.text="10"+(Jr>1?"":z)+oa+"",gt.fontSize*=1.25):(ca==="e"||ca==="E")&&oa>2?gt.text="1"+ca+(Jr>0?"+":z)+oa:(gt.text=Le(Math.pow(10,Mr),mt,"","fakehover"),Tr==="D1"&&mt._id.charAt(0)==="y"&&(gt.dy-=gt.fontSize/6))}else if(Lr==="D")gt.text=String(Math.round(Math.pow(10,e.mod(Mr,1)))),gt.fontSize*=.75;else throw"unrecognized dtick "+String(Tr);if(mt.dtick==="D1"){var kt=String(gt.text).charAt(0);(kt==="0"||kt==="1")&&(mt._id.charAt(0)==="y"?gt.dx-=gt.fontSize/4:(gt.dy+=gt.fontSize/2,gt.dx+=(mt.range[1]>mt.range[0]?1:-1)*gt.fontSize*(Mr<0?.5:.25)))}}function yt(mt,gt){var Er=mt._categories[Math.round(gt.x)];Er===void 0&&(Er=""),gt.text=String(Er)}function Fe(mt,gt,Er){var kr=Math.round(gt.x),br=mt._categories[kr]||[],Tr=br[1]===void 0?"":String(br[1]),Mr=br[0]===void 0?"":String(br[0]);Er?gt.text=Mr+" - "+Tr:(gt.text=Tr,gt.text2=Mr)}function Ke(mt,gt,Er,kr,br){br==="never"?br="":mt.showexponent==="all"&&Math.abs(gt.x/mt.dtick)<1e-6&&(br="hide"),gt.text=Le(gt.x,mt,br,kr)}function Ne(mt,gt,Er,kr,br){if(mt.thetaunit==="radians"&&!Er){var Tr=gt.x/180;if(Tr===0)gt.text="0";else{var Mr=Ee(Tr);if(Mr[1]>=100)gt.text=Le(e.deg2rad(gt.x),mt,br,kr);else{var Fr=gt.x<0;Mr[1]===1?Mr[0]===1?gt.text="\u03C0":gt.text=Mr[0]+"\u03C0":gt.text=["",Mr[0],"","\u2044","",Mr[1],"","\u03C0"].join(""),Fr&&(gt.text=z+gt.text)}}}else gt.text=Le(gt.x,mt,br,kr)}function Ee(mt){function gt(Fr,Lr){return Math.abs(Fr-Lr)<=1e-6}function Er(Fr,Lr){return gt(Lr,0)?Fr:Er(Lr,Fr%Lr)}function kr(Fr){for(var Lr=1;!gt(Math.round(Fr*Lr)/Lr,Fr);)Lr*=10;return Lr}var br=kr(mt),Tr=mt*br,Mr=Math.abs(Er(Tr,br));return[Math.round(Tr/Mr),Math.round(br/Mr)]}var Ve=["f","p","n","\u03BC","m","","k","M","G","T"];function ke(mt){return mt==="SI"||mt==="B"}function Te(mt){return mt>14||mt<-15}function Le(mt,gt,Er,kr){var br=mt<0,Tr=gt._tickround,Mr=Er||gt.exponentformat||"B",Fr=gt._tickexponent,Lr=J.getTickFormat(gt),Jr=gt.separatethousands;if(kr){var oa={exponentformat:Mr,minexponent:gt.minexponent,dtick:gt.showexponent==="none"?gt.dtick:x(mt)&&Math.abs(mt)||1,range:gt.showexponent==="none"?gt.range.map(gt.r2d):[0,mt||1]};ar(oa),Tr=(Number(oa._tickround)||0)+4,Fr=oa._tickexponent,gt.hoverformat&&(Lr=gt.hoverformat)}if(Lr)return gt._numFormat(Lr)(mt).replace(/-/g,z);var ca=Math.pow(10,-Tr)/2;if(Mr==="none"&&(Fr=0),mt=Math.abs(mt),mt"+mr+"":Mr==="B"&&Fr===9?mt+="B":ke(Mr)&&(mt+=Ve[Fr/3+5])}return br?z+mt:mt}J.getTickFormat=function(mt){var gt;function Er(Lr){return typeof Lr!="string"?Lr:Number(Lr.replace("M",""))*S}function kr(Lr,Jr){var oa=["L","D"];if(typeof Lr==typeof Jr){if(typeof Lr=="number")return Lr-Jr;var ca=oa.indexOf(Lr.charAt(0)),kt=oa.indexOf(Jr.charAt(0));return ca===kt?Number(Lr.replace(/(L|D)/g,""))-Number(Jr.replace(/(L|D)/g,"")):ca-kt}else return typeof Lr=="number"?1:-1}function br(Lr,Jr,oa){var ca=oa||function(mr){return mr},kt=Jr[0],ir=Jr[1];return(!kt&&typeof kt!="number"||ca(kt)<=ca(Lr))&&(!ir&&typeof ir!="number"||ca(ir)>=ca(Lr))}function Tr(Lr,Jr){var oa=Jr[0]===null,ca=Jr[1]===null,kt=kr(Lr,Jr[0])>=0,ir=kr(Lr,Jr[1])<=0;return(oa||kt)&&(ca||ir)}var Mr,Fr;if(mt.tickformatstops&&mt.tickformatstops.length>0)switch(mt.type){case"date":case"linear":{for(gt=0;gt=0&&br.unshift(br.splice(oa,1).shift())}});var Fr={false:{left:0,right:0}};return e.syncOrAsync(br.map(function(Lr){return function(){if(Lr){var Jr=J.getFromId(mt,Lr);Er||(Er={}),Er.axShifts=Fr,Er.overlayingShiftedAx=Mr;var oa=J.drawOne(mt,Jr,Er);return Jr._shiftPusher&&qa(Jr,Jr._fullDepth||0,Fr,!0),Jr._r=Jr.range.slice(),Jr._rl=e.simpleMap(Jr._r,Jr.r2l),oa}}}))},J.drawOne=function(mt,gt,Er){Er=Er||{};var kr=Er.axShifts||{},br=Er.overlayingShiftedAx||[],Tr,Mr,Fr;gt.setScale();var Lr=mt._fullLayout,Jr=gt._id,oa=Jr.charAt(0),ca=J.counterLetter(Jr),kt=Lr._plots[gt._mainSubplot];if(!kt)return;if(gt._shiftPusher=gt.autoshift||br.indexOf(gt._id)!==-1||br.indexOf(gt.overlaying)!==-1,gt._shiftPusher>.anchor==="free"){var ir=gt.linewidth/2||0;gt.ticks==="inside"&&(ir+=gt.ticklen),qa(gt,ir,kr,!0),qa(gt,gt.shift||0,kr,!1)}(Er.skipTitle!==!0||gt._shift===void 0)&&(gt._shift=ya(gt,kr));var mr=kt[oa+"axislayer"],$r=gt._mainLinePosition,ma=$r+=gt._shift,Ba=gt._mainMirrorPosition,Ca=gt._vals=J.calcTicks(gt),da=[gt.mirror,ma,Ba].join("_");for(Tr=0;Tr0?Yo.bottom-Yn:0,_s))));var ml=0,Bu=0;if(gt._shiftPusher&&(ml=Math.max(_s,Yo.height>0?ji==="l"?Yn-Yo.left:Yo.right-Yn:0),gt.title.text!==Lr._dfltTitle[oa]&&(Bu=(gt._titleStandoff||0)+(gt._titleScoot||0),ji==="l"&&(Bu+=Aa(gt))),gt._fullDepth=Math.max(ml,Bu)),gt.automargin){Nn={x:0,y:0,r:0,l:0,t:0,b:0};var El=[0,1],qs=typeof gt._shift=="number"?gt._shift:0;if(oa==="x"){if(ji==="b"?Nn[ji]=gt._depth:(Nn[ji]=gt._depth=Math.max(Yo.width>0?Yn-Yo.top:0,_s),El.reverse()),Yo.width>0){var Jl=Yo.right-(gt._offset+gt._length);Jl>0&&(Nn.xr=1,Nn.r=Jl);var Nu=gt._offset-Yo.left;Nu>0&&(Nn.xl=0,Nn.l=Nu)}}else if(ji==="l"?(gt._depth=Math.max(Yo.height>0?Yn-Yo.left:0,_s),Nn[ji]=gt._depth-qs):(gt._depth=Math.max(Yo.height>0?Yo.right-Yn:0,_s),Nn[ji]=gt._depth+qs,El.reverse()),Yo.height>0){var Ic=Yo.bottom-(gt._offset+gt._length);Ic>0&&(Nn.yb=0,Nn.b=Ic);var Xu=gt._offset-Yo.top;Xu>0&&(Nn.yt=1,Nn.t=Xu)}Nn[ca]=gt.anchor==="free"?gt.position:gt._anchorAxis.domain[El[0]],gt.title.text!==Lr._dfltTitle[oa]&&(Nn[ji]+=Aa(gt)+(gt.title.standoff||0)),gt.mirror&>.anchor!=="free"&&(Wl={x:0,y:0,r:0,l:0,t:0,b:0},Wl[To]=gt.linewidth,gt.mirror&>.mirror!==!0&&(Wl[To]+=_s),gt.mirror===!0||gt.mirror==="ticks"?Wl[ca]=gt._anchorAxis.domain[El[1]]:(gt.mirror==="all"||gt.mirror==="allticks")&&(Wl[ca]=[gt._counterDomainMin,gt._counterDomainMax][El[1]]))}vl&&(Zu=M.getComponentMethod("rangeslider","autoMarginOpts")(mt,gt)),typeof gt.automargin=="string"&&(rt(Nn,gt.automargin),rt(Wl,gt.automargin)),A.autoMargin(mt,ni(gt),Nn),A.autoMargin(mt,Wt(gt),Wl),A.autoMargin(mt,zt(gt),Zu)}),e.syncOrAsync(fs)}};function rt(mt,gt){if(mt){var Er=Object.keys(W).reduce(function(kr,br){return gt.indexOf(br)!==-1&&W[br].forEach(function(Tr){kr[Tr]=1}),kr},{});Object.keys(mt).forEach(function(kr){Er[kr]||(kr.length===1?mt[kr]=0:delete mt[kr])})}}function dt(mt,gt){var Er=[],kr,br=function(Tr,Mr){var Fr=Tr.xbnd[Mr];Fr!==null&&Er.push(e.extendFlat({},Tr,{x:Fr}))};if(gt.length){for(kr=0;krmt.range[1],Fr=mt.ticklabelposition&&mt.ticklabelposition.indexOf("inside")!==-1,Lr=!Fr;if(Er){var Jr=Mr?-1:1;Er=Er*Jr}if(kr){var oa=mt.side,ca=Fr&&(oa==="top"||oa==="left")||Lr&&(oa==="bottom"||oa==="right")?1:-1;kr=kr*ca}return mt._id.charAt(0)==="x"?function(kt){return t(br+mt._offset+mt.l2p(Gt(kt))+Er,Tr+kr)}:function(kt){return t(Tr+kr,br+mt._offset+mt.l2p(Gt(kt))+Er)}};function Gt(mt){return mt.periodX!==void 0?mt.periodX:mt.x}function Kt(mt){var gt=mt.ticklabelposition||"",Er=function(ir){return gt.indexOf(ir)!==-1},kr=Er("top"),br=Er("left"),Tr=Er("right"),Mr=Er("bottom"),Fr=Er("inside"),Lr=Mr||br||kr||Tr;if(!Lr&&!Fr)return[0,0];var Jr=mt.side,oa=Lr?(mt.tickwidth||0)/2:0,ca=$,kt=mt.tickfont?mt.tickfont.size:12;return(Mr||kr)&&(oa+=kt*se,ca+=(mt.linewidth||0)/2),(br||Tr)&&(oa+=(mt.linewidth||0)/2,ca+=$),Fr&&Jr==="top"&&(ca-=kt*(1-se)),(br||kr)&&(oa=-oa),(Jr==="bottom"||Jr==="right")&&(ca=-ca),[Lr?oa:0,Fr?ca:0]}J.makeTickPath=function(mt,gt,Er,kr){kr||(kr={});var br=kr.minor;if(br&&!mt.minor)return"";var Tr=kr.len!==void 0?kr.len:br?mt.minor.ticklen:mt.ticklen,Mr=mt._id.charAt(0),Fr=(mt.linewidth||1)/2;return Mr==="x"?"M0,"+(gt+Fr*Er)+"v"+Tr*Er:"M"+(gt+Fr*Er)+",0h"+Tr*Er},J.makeLabelFns=function(mt,gt,Er){var kr=mt.ticklabelposition||"",br=function(Cn){return kr.indexOf(Cn)!==-1},Tr=br("top"),Mr=br("left"),Fr=br("right"),Lr=br("bottom"),Jr=Lr||Mr||Tr||Fr,oa=br("inside"),ca=kr==="inside"&&mt.ticks==="inside"||!oa&&mt.ticks==="outside"&&mt.tickson!=="boundaries",kt=0,ir=0,mr=ca?mt.ticklen:0;if(oa?mr*=-1:Jr&&(mr=0),ca&&(kt+=mr,Er)){var $r=e.deg2rad(Er);kt=mr*Math.cos($r)+1,ir=mr*Math.sin($r)}mt.showticklabels&&(ca||mt.showline)&&(kt+=.2*mt.tickfont.size),kt+=(mt.linewidth||1)/2*(oa?-1:1);var ma={labelStandoff:kt,labelShift:ir},Ba,Ca,da,Sa,Ti=0,ai=mt.side,an=mt._id.charAt(0),sn=mt.tickangle,Mn;if(an==="x")Mn=!oa&&ai==="bottom"||oa&&ai==="top",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=ir*Sa,Ca=gt+kt*Sa,da=Mn?1:-.2,Math.abs(sn)===90&&(oa?da+=ue:sn===-90&&ai==="bottom"?da=se:sn===90&&ai==="top"?da=ue:da=.5,Ti=ue/2*(sn/90)),ma.xFn=function(Cn){return Cn.dx+Ba+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*da},ma.anchorFn=function(Cn,Lo){if(Jr){if(Mr)return"end";if(Fr)return"start"}return!x(Lo)||Lo===0||Lo===180?"middle":Lo*Sa<0!==oa?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return Lo<-60||Lo>60?-.5*Xi:mt.side==="top"!==oa?-Xi:0};else if(an==="y"){if(Mn=!oa&&ai==="left"||oa&&ai==="right",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=kt,Ca=ir*Sa,da=0,!oa&&Math.abs(sn)===90&&(sn===-90&&ai==="left"||sn===90&&ai==="right"?da=se:da=.5),oa){var On=x(sn)?+sn:0;if(On!==0){var $n=e.deg2rad(On);Ti=Math.abs(Math.sin($n))*se*Sa,da=0}}ma.xFn=function(Cn){return Cn.dx+gt-(Ba+Cn.fontSize*da)*Sa+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*ue},ma.anchorFn=function(Cn,Lo){return x(Lo)&&Math.abs(Lo)===90?"middle":Mn?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return mt.side==="right"&&(Lo*=-1),Lo<-30?-Xi:Lo<30?-.5*Xi:0}}return ma};function sr(mt){return[mt.text,mt.x,mt.axInfo,mt.font,mt.fontSize,mt.fontColor].join("_")}J.drawTicks=function(mt,gt,Er){Er=Er||{};var kr=gt._id+"tick",br=[].concat(gt.minor&>.minor.ticks?Er.vals.filter(function(Mr){return Mr.minor&&!Mr.noTick}):[]).concat(gt.ticks?Er.vals.filter(function(Mr){return!Mr.minor&&!Mr.noTick}):[]),Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("ticks",1).classed("crisp",Er.crisp!==!1).each(function(Mr){return a.stroke(g.select(this),Mr.minor?gt.minor.tickcolor:gt.tickcolor)}).style("stroke-width",function(Mr){return i.crispRound(mt,Mr.minor?gt.minor.tickwidth:gt.tickwidth,1)+"px"}).attr("d",Er.path).style("display",null),Fa(gt,[N]),Tr.attr("transform",Er.transFn)},J.drawGrid=function(mt,gt,Er){if(Er=Er||{},gt.tickmode!=="sync"){var kr=gt._id+"grid",br=gt.minor&>.minor.showgrid,Tr=br?Er.vals.filter(function(Ba){return Ba.minor}):[],Mr=gt.showgrid?Er.vals.filter(function(Ba){return!Ba.minor}):[],Fr=Er.counterAxis;if(Fr&&J.shouldShowZeroLine(mt,gt,Fr))for(var Lr=gt.tickmode==="array",Jr=0;Jr=0;mr--){var $r=mr?kt:ir;if($r){var ma=$r.selectAll("path."+kr).data(mr?Mr:Tr,sr);ma.exit().remove(),ma.enter().append("path").classed(kr,1).classed("crisp",Er.crisp!==!1),ma.attr("transform",Er.transFn).attr("d",Er.path).each(function(Ba){return a.stroke(g.select(this),Ba.minor?gt.minor.gridcolor:gt.gridcolor||"#ddd")}).style("stroke-dasharray",function(Ba){return i.dashStyle(Ba.minor?gt.minor.griddash:gt.griddash,Ba.minor?gt.minor.gridwidth:gt.gridwidth)}).style("stroke-width",function(Ba){return(Ba.minor?ca:gt._gw)+"px"}).style("display",null),typeof Er.path=="function"&&ma.attr("d",Er.path)}}Fa(gt,[O,I])}},J.drawZeroLine=function(mt,gt,Er){Er=Er||Er;var kr=gt._id+"zl",br=J.shouldShowZeroLine(mt,gt,Er.counterAxis),Tr=Er.layer.selectAll("path."+kr).data(br?[{x:0,id:gt._id}]:[]);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("zl",1).classed("crisp",Er.crisp!==!1).each(function(){Er.layer.selectAll("path").sort(function(Mr,Fr){return ne(Mr.id,Fr.id)})}),Tr.attr("transform",Er.transFn).attr("d",Er.path).call(a.stroke,gt.zerolinecolor||a.defaultLine).style("stroke-width",i.crispRound(mt,gt.zerolinewidth,gt._gw||1)+"px").style("display",null),Fa(gt,[B])},J.drawLabels=function(mt,gt,Er){Er=Er||{};var kr=mt._fullLayout,br=gt._id,Tr=Er.cls||br+"tick",Mr=Er.vals.filter(function(Pn){return Pn.text}),Fr=Er.labelFns,Lr=Er.secondary?0:gt.tickangle,Jr=(gt._prevTickAngles||{})[Tr],oa=Er.layer.selectAll("g."+Tr).data(gt.showticklabels?Mr:[],sr),ca=[];oa.enter().append("g").classed(Tr,1).append("text").attr("text-anchor","middle").each(function(Pn){var go=g.select(this),In=mt._promises.length;go.call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn)).call(i.font,{family:Pn.font,size:Pn.fontSize,color:Pn.fontColor,weight:Pn.fontWeight,style:Pn.fontStyle,variant:Pn.fontVariant,textcase:Pn.fontTextcase,lineposition:Pn.fontLineposition,shadow:Pn.fontShadow}).text(Pn.text).call(r.convertToTspans,mt),mt._promises[In]?ca.push(mt._promises.pop().then(function(){kt(go,Lr)})):kt(go,Lr)}),Fa(gt,[U]),oa.exit().remove(),Er.repositionOnUpdate&&oa.each(function(Pn){g.select(this).select("text").call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn))});function kt(Pn,go){Pn.each(function(In){var Do=g.select(this),Ho=Do.select(".text-math-group"),Qo=Fr.anchorFn(In,go),Xn=Er.transFn.call(Do.node(),In)+(x(go)&&+go!=0?" rotate("+go+","+Fr.xFn(In)+","+(Fr.yFn(In)-In.fontSize/2)+")":""),po=r.lineCount(Do),ys=he*In.fontSize,Is=Fr.heightFn(In,x(go)?+go:0,(po-1)*ys);if(Is&&(Xn+=t(0,Is)),Ho.empty()){var Fs=Do.select("text");Fs.attr({transform:Xn,"text-anchor":Qo}),Fs.style("opacity",1),gt._adjustTickLabelsOverflow&>._adjustTickLabelsOverflow()}else{var $o=i.bBox(Ho.node()).width,fi=$o*{end:-.5,start:.5}[Qo];Ho.attr("transform",Xn+t(fi,0))}})}gt._adjustTickLabelsOverflow=function(){var Pn=gt.ticklabeloverflow;if(!(!Pn||Pn==="allow")){var go=Pn.indexOf("hide")!==-1,In=gt._id.charAt(0)==="x",Do=0,Ho=In?mt._fullLayout.width:mt._fullLayout.height;if(Pn.indexOf("domain")!==-1){var Qo=e.simpleMap(gt.range,gt.r2l);Do=gt.l2p(Qo[0])+gt._offset,Ho=gt.l2p(Qo[1])+gt._offset}var Xn=Math.min(Do,Ho),po=Math.max(Do,Ho),ys=gt.side,Is=1/0,Fs=-1/0;oa.each(function(ol){var Os=g.select(this),so=Os.select(".text-math-group");if(so.empty()){var Ns=i.bBox(Os.node()),fs=0;In?(Ns.right>po||Ns.leftpo||Ns.top+(gt.tickangle?0:ol.fontSize/4)gt["_visibleLabelMin_"+Qo._id]?ol.style("display","none"):po.K==="tick"&&!Xn&&ol.style("display",null)})})})})},kt(oa,Jr+1?Jr:Lr);function ir(){return ca.length&&Promise.all(ca)}var mr=null;function $r(){if(kt(oa,Lr),Mr.length&>.autotickangles&&(gt.type!=="log"||String(gt.dtick).charAt(0)!=="D")){mr=gt.autotickangles[0];var Pn=0,go=[],In,Do=1;oa.each(function(Yo){Pn=Math.max(Pn,Yo.fontSize);var Nn=gt.l2p(Yo.x),Wl=Ua(this),Zu=i.bBox(Wl.node());Do=Math.max(Do,r.lineCount(Wl)),go.push({top:0,bottom:10,height:10,left:Nn-Zu.width/2,right:Nn+Zu.width/2+2,width:Zu.width+2})});var Ho=(gt.tickson==="boundaries"||gt.showdividers)&&!Er.secondary,Qo=Mr.length,Xn=Math.abs((Mr[Qo-1].x-Mr[0].x)*gt._m)/(Qo-1),po=Ho?Xn/2:Xn,ys=Ho?gt.ticklen:Pn*1.25*Do,Is=Math.sqrt(Math.pow(po,2)+Math.pow(ys,2)),Fs=po/Is,$o=gt.autotickangles.map(function(Yo){return Yo*Math.PI/180}),fi=$o.find(function(Yo){return Math.abs(Math.cos(Yo))<=Fs});fi===void 0&&(fi=$o.reduce(function(Yo,Nn){return Math.abs(Math.cos(Yo))Jo*Xi&&($n=Xi,sn[an]=Mn[an]=Cn[an])}var zo=Math.abs($n-On);zo-Sa>0?(zo-=Sa,Sa*=1+Sa/zo):Sa=0,gt._id.charAt(0)!=="y"&&(Sa=-Sa),sn[ai]=Ca.p2r(Ca.r2p(Mn[ai])+Ti*Sa),Ca.autorange==="min"||Ca.autorange==="max reversed"?(sn[0]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0):(Ca.autorange==="max"||Ca.autorange==="min reversed")&&(sn[1]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0),kr._insideTickLabelsUpdaterange[Ca._name+".range"]=sn}var as=e.syncOrAsync(ma);return as&&as.then&&mt._promises.push(as),as};function sa(mt,gt,Er){var kr=gt._id+"divider",br=Er.vals,Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().insert("path",":first-child").classed(kr,1).classed("crisp",1).call(a.stroke,gt.dividercolor).style("stroke-width",i.crispRound(mt,gt.dividerwidth,1)+"px"),Tr.attr("transform",Er.transFn).attr("d",Er.path)}J.getPxPosition=function(mt,gt){var Er=mt._fullLayout._size,kr=gt._id.charAt(0),br=gt.side,Tr;if(gt.anchor!=="free"?Tr=gt._anchorAxis:kr==="x"?Tr={_offset:Er.t+(1-(gt.position||0))*Er.h,_length:0}:kr==="y"&&(Tr={_offset:Er.l+(gt.position||0)*Er.w+gt._shift,_length:0}),br==="top"||br==="left")return Tr._offset;if(br==="bottom"||br==="right")return Tr._offset+Tr._length};function Aa(mt){var gt=mt.title.font.size,Er=(mt.title.text.match(r.BR_TAG_ALL)||[]).length;return mt.title.hasOwnProperty("standoff")?gt*(se+Er*he):Er?gt*(Er+1)*he:gt}function La(mt,gt){var Er=mt._fullLayout,kr=gt._id,br=kr.charAt(0),Tr=gt.title.font.size,Mr,Fr=(gt.title.text.match(r.BR_TAG_ALL)||[]).length;if(gt.title.hasOwnProperty("standoff"))gt.side==="bottom"||gt.side==="right"?Mr=gt._depth+gt.title.standoff+Tr*se:(gt.side==="top"||gt.side==="left")&&(Mr=gt._depth+gt.title.standoff+Tr*(ue+Fr*he));else{var Lr=Ea(gt);if(gt.type==="multicategory")Mr=gt._depth;else{var Jr=1.5*Tr;Lr&&(Jr=.5*Tr,gt.ticks==="outside"&&(Jr+=gt.ticklen)),Mr=10+Jr+(gt.linewidth?gt.linewidth-1:0)}Lr||(br==="x"?Mr+=gt.side==="top"?Tr*(gt.showticklabels?1:0):Tr*(gt.showticklabels?1.5:.5):Mr+=gt.side==="right"?Tr*(gt.showticklabels?1:.5):Tr*(gt.showticklabels?.5:0))}var oa=J.getPxPosition(mt,gt),ca,kt,ir;br==="x"?(kt=gt._offset+gt._length/2,ir=gt.side==="top"?oa-Mr:oa+Mr):(ir=gt._offset+gt._length/2,kt=gt.side==="right"?oa+Mr:oa-Mr,ca={rotate:"-90",offset:0});var mr;if(gt.type!=="multicategory"){var $r=gt._selections[gt._id+"tick"];if(mr={selection:$r,side:gt.side},$r&&$r.node()&&$r.node().parentNode){var ma=i.getTranslate($r.node().parentNode);mr.offsetLeft=ma.x,mr.offsetTop=ma.y}gt.title.hasOwnProperty("standoff")&&(mr.pad=0)}return gt._titleStandoff=Mr,o.draw(mt,kr+"title",{propContainer:gt,propName:gt._name+".title.text",placeholder:Er._dfltTitle[br],avoid:mr,transform:ca,attributes:{x:kt,y:ir,"text-anchor":"middle"}})}J.shouldShowZeroLine=function(mt,gt,Er){var kr=e.simpleMap(gt.range,gt.r2l);return kr[0]*kr[1]<=0&>.zeroline&&(gt.type==="linear"||gt.type==="-")&&!(gt.rangebreaks&>.maskBreaks(0)===F)&&(ka(gt,0)||!Ga(mt,gt,Er,kr)||Ma(mt,gt))},J.clipEnds=function(mt,gt){return gt.filter(function(Er){return ka(mt,Er.x)})};function ka(mt,gt){var Er=mt.l2p(gt);return Er>1&&Er1)for(br=1;br=br.min&&mt=L:/%L/.test(gt)?mt>=P:/%[SX]/.test(gt)?mt>=f:/%M/.test(gt)?mt>=y:/%[HI]/.test(gt)?mt>=u:/%p/.test(gt)?mt>=d:/%[Aadejuwx]/.test(gt)?mt>=b:/%[UVW]/.test(gt)?mt>=m:/%[Bbm]/.test(gt)?mt>=E:/%[q]/.test(gt)?mt>=_:/%[Yy]/.test(gt)?mt>=p:!0}}}),cS=Ye({"src/plots/cartesian/autorange_options_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e,t;if(M){var r=A==="reversed"||A==="min reversed"||A==="max reversed";e=M[r?1:0],t=M[r?0:1]}var o=x("autorangeoptions.minallowed",t===null?e:void 0),a=x("autorangeoptions.maxallowed",e===null?t:void 0);o===void 0&&x("autorangeoptions.clipmin"),a===void 0&&x("autorangeoptions.clipmax"),x("autorangeoptions.include")}}}),fS=Ye({"src/plots/cartesian/range_defaults.js"(X,H){"use strict";var g=cS();H.exports=function(A,M,e,t){var r=M._template||{},o=M.type||r.type||"-";e("minallowed"),e("maxallowed");var a=e("range");if(!a){var i;!t.noInsiderange&&o!=="log"&&(i=e("insiderange"),i&&(i[0]===null||i[1]===null)&&(M.insiderange=!1,i=void 0),i&&(a=e("range",i)))}var n=M.getAutorangeDflt(a,t),s=e("autorange",n),c;a&&(a[0]===null&&a[1]===null||(a[0]===null||a[1]===null)&&(s==="reversed"||s===!0)||a[0]!==null&&(s==="min"||s==="max reversed")||a[1]!==null&&(s==="max"||s==="min reversed"))&&(a=void 0,delete M.range,M.autorange=!0,c=!0),c||(n=M.getAutorangeDflt(a,t),s=e("autorange",n)),s&&(g(e,s,a),(o==="linear"||o==="-")&&e("rangemode")),M.cleanRange()}}}),iO=Ye({"node_modules/mouse-event-offset/index.js"(X,H){var g={left:0,top:0};H.exports=x;function x(M,e,t){e=e||M.currentTarget||M.srcElement,Array.isArray(t)||(t=[0,0]);var r=M.clientX||0,o=M.clientY||0,a=A(e);return t[0]=r-a.left,t[1]=o-a.top,t}function A(M){return M===window||M===document||M===document.body?g:M.getBoundingClientRect()}}}),_2=Ye({"node_modules/has-passive-events/index.js"(X,H){"use strict";var g=rS();function x(){var A=!1;try{var M=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",null,M),window.removeEventListener("test",null,M)}catch{A=!1}return A}H.exports=g&&x()}}),nO=Ye({"src/components/dragelement/align.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=(x-M)/(e-M),o=r+A/(e-M),a=(r+o)/2;return t==="left"||t==="bottom"?r:t==="center"||t==="middle"?a:t==="right"||t==="top"?o:r<2/3-a?r:o>4/3-a?o:a}}}),oO=Ye({"src/components/dragelement/cursor.js"(X,H){"use strict";var g=ta(),x=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];H.exports=function(M,e,t,r){return t==="left"?M=0:t==="center"?M=1:t==="right"?M=2:M=g.constrain(Math.floor(M*3),0,2),r==="bottom"?e=0:r==="middle"?e=1:r==="top"?e=2:e=g.constrain(Math.floor(e*3),0,2),x[e][M]}}}),sO=Ye({"src/components/dragelement/unhover.js"(X,H){"use strict";var g=$y(),x=m2(),A=b_().getGraphDiv,M=x_(),e=H.exports={};e.wrapped=function(t,r,o){t=A(t),t._fullLayout&&x.clear(t._fullLayout._uid+M.HOVERID),e.raw(t,r,o)},e.raw=function(r,o){var a=r._fullLayout,i=r._hoverdata;o||(o={}),!(o.target&&!r._dragged&&g.triggerHandler(r,"plotly_beforehover",o)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,o.target&&i&&r.emit("plotly_unhover",{event:o,points:i}))}}}),bp=Ye({"src/components/dragelement/index.js"(X,H){"use strict";var g=iO(),x=aS(),A=_2(),M=ta().removeElement,e=wh(),t=H.exports={};t.align=nO(),t.getCursor=oO();var r=sO();t.unhover=r.wrapped,t.unhoverRaw=r.raw,t.init=function(n){var s=n.gd,c=1,h=s._context.doubleClickDelay,v=n.element,p,T,l,_,w,S,E,m;s._mouseDownTime||(s._mouseDownTime=0),v.style.pointerEvents="all",v.onmousedown=u,A?(v._ontouchstart&&v.removeEventListener("touchstart",v._ontouchstart),v._ontouchstart=u,v.addEventListener("touchstart",u,{passive:!1})):v.ontouchstart=u;function b(P,L,z){return Math.abs(P)"u"&&typeof P.clientY>"u"&&(P.clientX=p,P.clientY=T),l=new Date().getTime(),l-s._mouseDownTimeh&&(c=Math.max(c-1,1)),s._dragged)n.doneFn&&n.doneFn();else{var L;S.target===E?L=S:(L={target:E,srcElement:E,toElement:E},Object.keys(S).concat(Object.keys(S.__proto__)).forEach(z=>{var F=S[z];!L[z]&&typeof F!="function"&&(L[z]=F)})),n.clickFn&&n.clickFn(c,L),m||E.dispatchEvent(new MouseEvent("click",P))}s._dragging=!1,s._dragged=!1}};function o(){var i=document.createElement("div");i.className="dragcover";var n=i.style;return n.position="fixed",n.left=0,n.right=0,n.top=0,n.bottom=0,n.zIndex=999999999,n.background="none",document.body.appendChild(i),i}t.coverSlip=o;function a(i){return g(i.changedTouches?i.changedTouches[0]:i,document.body)}}}),Kd=Ye({"src/lib/setcursor.js"(X,H){"use strict";H.exports=function(x,A){(x.attr("class")||"").split(" ").forEach(function(M){M.indexOf("cursor-")===0&&x.classed(M,!1)}),A&&x.classed("cursor-"+A,!0)}}}),lO=Ye({"src/lib/override_cursor.js"(X,H){"use strict";var g=Kd(),x="data-savedcursor",A="!!";H.exports=function(e,t){var r=e.attr(x);if(t){if(!r){for(var o=(e.attr("class")||"").split(" "),a=0;a(a==="legend"?1:0));if(P===!1&&(n[a]=void 0),!(P===!1&&!c.uirevision)&&(v("uirevision",n.uirevision),P!==!1)){v("borderwidth");var L=v("orientation"),z=v("yref"),F=v("xref"),B=L==="h",O=z==="paper",I=F==="paper",N,U,W,Q="left";B?(N=0,g.getComponentMethod("rangeslider","isVisible")(i.xaxis)?O?(U=1.1,W="bottom"):(U=1,W="top"):O?(U=-.1,W="top"):(U=0,W="bottom")):(U=1,W="auto",I?N=1.02:(N=1,Q="right")),x.coerce(c,h,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:N}},"x"),x.coerce(c,h,{y:{valType:"number",editType:"legend",min:O?-2:0,max:O?3:1,dflt:U}},"y"),v("traceorder",b),r.isGrouped(n[a])&&v("tracegroupgap"),v("entrywidth"),v("entrywidthmode"),v("indentation"),v("itemsizing"),v("itemwidth"),v("itemclick"),v("itemdoubleclick"),v("groupclick"),v("xanchor",Q),v("yanchor",W),v("valign"),x.noneOrAll(c,h,["x","y"]);var ue=v("title.text");if(ue){v("title.side",B?"left":"top");var se=x.extendFlat({},p,{size:x.bigFont(p.size)});x.coerceFont(v,"title.font",se)}}}}H.exports=function(i,n,s){var c,h=s.slice(),v=n.shapes;if(v)for(c=0;cP&&(f=P)}u[p][0]._groupMinRank=f,u[p][0]._preGroupSort=p}var L=function(N,U){return N[0]._groupMinRank-U[0]._groupMinRank||N[0]._preGroupSort-U[0]._preGroupSort},z=function(N,U){return N.trace.legendrank-U.trace.legendrank||N._preSort-U._preSort};for(u.forEach(function(N,U){N[0]._preGroupSort=U}),u.sort(L),p=0;p0)re=$.width;else return 0;return d?Z:Math.min(re,J)};S.each(function(G){var $=g.select(this),J=A.ensureSingle($,"g","layers");J.style("opacity",G[0].trace.opacity);var Z=m.indentation,re=m.valign,ne=G[0].lineHeight,j=G[0].height;if(re==="middle"&&Z===0||!ne||!j)J.attr("transform",null);else{var ee={top:1,bottom:-1}[re],ie=ee*(.5*(ne-j+3))||0,fe=m.indentation;J.attr("transform",M(fe,ie))}var be=J.selectAll("g.legendfill").data([G]);be.enter().append("g").classed("legendfill",!0);var Ae=J.selectAll("g.legendlines").data([G]);Ae.enter().append("g").classed("legendlines",!0);var Be=J.selectAll("g.legendsymbols").data([G]);Be.enter().append("g").classed("legendsymbols",!0),Be.selectAll("g.legendpoints").data([G]).enter().append("g").classed("legendpoints",!0)}).each(he).each(F).each(O).each(B).each(N).each(ue).each(Q).each(L).each(z).each(U).each(W);function L(G){var $=l(G),J=$.showFill,Z=$.showLine,re=$.showGradientLine,ne=$.showGradientFill,j=$.anyFill,ee=$.anyLine,ie=G[0],fe=ie.trace,be,Ae,Be=r(fe),Ie=Be.colorscale,Ze=Be.reversescale,at=function(ze){if(ze.size())if(J)e.fillGroupStyle(ze,E,!0);else{var tt="legendfill-"+fe.uid;e.gradient(ze,E,tt,T(Ze),Ie,"fill")}},it=function(ze){if(ze.size()){var tt="legendline-"+fe.uid;e.lineGroupStyle(ze),e.gradient(ze,E,tt,T(Ze),Ie,"stroke")}},et=o.hasMarkers(fe)||!j?"M5,0":ee?"M5,-2":"M5,-3",lt=g.select(this),Me=lt.select(".legendfill").selectAll("path").data(J||ne?[G]:[]);if(Me.enter().append("path").classed("js-fill",!0),Me.exit().remove(),Me.attr("d",et+"h"+u+"v6h-"+u+"z").call(at),Z||re){var ge=P(void 0,fe.line,v,c);Ae=A.minExtend(fe,{line:{width:ge}}),be=[A.minExtend(ie,{trace:Ae})]}var ce=lt.select(".legendlines").selectAll("path").data(Z||re?[be]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",et+(re?"l"+u+",0.0001":"h"+u)).call(Z?e.lineGroupStyle:it)}function z(G){var $=l(G),J=$.anyFill,Z=$.anyLine,re=$.showLine,ne=$.showMarker,j=G[0],ee=j.trace,ie=!ne&&!Z&&!J&&o.hasText(ee),fe,be;function Ae(Me,ge,ce,ze){var tt=A.nestedProperty(ee,Me).get(),nt=A.isArrayOrTypedArray(tt)&&ge?ge(tt):tt;if(d&&nt&&ze!==void 0&&(nt=ze),ce){if(ntce[1])return ce[1]}return nt}function Be(Me){return j._distinct&&j.index&&Me[j.index]?Me[j.index]:Me[0]}if(ne||ie||re){var Ie={},Ze={};if(ne){Ie.mc=Ae("marker.color",Be),Ie.mx=Ae("marker.symbol",Be),Ie.mo=Ae("marker.opacity",A.mean,[.2,1]),Ie.mlc=Ae("marker.line.color",Be),Ie.mlw=Ae("marker.line.width",A.mean,[0,5],h),Ze.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var at=Ae("marker.size",A.mean,[2,16],s);Ie.ms=at,Ze.marker.size=at}re&&(Ze.line={width:Ae("line.width",Be,[0,10],c)}),ie&&(Ie.tx="Aa",Ie.tp=Ae("textposition",Be),Ie.ts=10,Ie.tc=Ae("textfont.color",Be),Ie.tf=Ae("textfont.family",Be),Ie.tw=Ae("textfont.weight",Be),Ie.ty=Ae("textfont.style",Be),Ie.tv=Ae("textfont.variant",Be),Ie.tC=Ae("textfont.textcase",Be),Ie.tE=Ae("textfont.lineposition",Be),Ie.tS=Ae("textfont.shadow",Be)),fe=[A.minExtend(j,Ie)],be=A.minExtend(ee,Ze),be.selectedpoints=null,be.texttemplate=null}var it=g.select(this).select("g.legendpoints"),et=it.selectAll("path.scatterpts").data(ne?fe:[]);et.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",f),et.exit().remove(),et.call(e.pointStyle,be,E),ne&&(fe[0].mrc=3);var lt=it.selectAll("g.pointtext").data(ie?fe:[]);lt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",f),lt.exit().remove(),lt.selectAll("text").call(e.textPointStyle,be,E)}function F(G){var $=G[0].trace,J=$.type==="waterfall";if(G[0]._distinct&&J){var Z=G[0].trace[G[0].dir].marker;return G[0].mc=Z.color,G[0].mlw=Z.line.width,G[0].mlc=Z.line.color,I(G,this,"waterfall")}var re=[];$.visible&&J&&(re=G[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var ne=g.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(re);ne.enter().append("path").classed("legendwaterfall",!0).attr("transform",f).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(j){var ee=g.select(this),ie=$[j[0]].marker,fe=P(void 0,ie.line,p,h);ee.attr("d",j[1]).style("stroke-width",fe+"px").call(t.fill,ie.color),fe&&ee.call(t.stroke,ie.line.color)})}function B(G){I(G,this)}function O(G){I(G,this,"funnel")}function I(G,$,J){var Z=G[0].trace,re=Z.marker||{},ne=re.line||{},j=re.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ee=J?Z.visible&&Z.type===J:x.traceIs(Z,"bar"),ie=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ee?[G]:[]);ie.enter().append("path").classed("legend"+J,!0).attr("d",j).attr("transform",f),ie.exit().remove(),ie.each(function(fe){var be=g.select(this),Ae=fe[0],Be=P(Ae.mlw,re.line,p,h);be.style("stroke-width",Be+"px");var Ie=Ae.mcc;if(!m._inHover&&"mc"in Ae){var Ze=r(re),at=Ze.mid;at===void 0&&(at=(Ze.max+Ze.min)/2),Ie=e.tryColorscale(re,"")(at)}var it=Ie||Ae.mc||re.color,et=re.pattern,lt=et&&e.getPatternAttr(et.shape,0,"");if(lt){var Me=e.getPatternAttr(et.bgcolor,0,null),ge=e.getPatternAttr(et.fgcolor,0,null),ce=et.fgopacity,ze=_(et.size,8,10),tt=_(et.solidity,.5,1),nt="legend-"+Z.uid;be.call(e.pattern,"legend",E,nt,lt,ze,tt,Ie,et.fillmode,Me,ge,ce)}else be.call(t.fill,it);Be&&t.stroke(be,Ae.mlc||ne.color)})}function N(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendbox").data($.visible&&x.traceIs($,"box-violin")?[G]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),J.exit().remove(),J.each(function(){var Z=g.select(this);if(($.boxpoints==="all"||$.points==="all")&&t.opacity($.fillcolor)===0&&t.opacity(($.line||{}).color)===0){var re=A.minExtend($,{marker:{size:d?s:A.constrain($.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(e.pointStyle,re,E)}else{var ne=P(void 0,$.line,p,h);Z.style("stroke-width",ne+"px").call(t.fill,$.fillcolor),ne&&t.stroke(Z,$.line.color)}})}function U(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendcandle").data($.visible&&$.type==="candlestick"?[G,G]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(Z,re){return re?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("stroke-width",ee+"px").call(t.fill,j.fillcolor),ee&&t.stroke(ne,j.line.color)})}function W(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendohlc").data($.visible&&$.type==="ohlc"?[G,G]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(Z,re){return re?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("fill","none").call(e.dashLine,j.line.dash,ee),ee&&t.stroke(ne,j.line.color)})}function Q(G){se(G,this,"pie")}function ue(G){se(G,this,"funnelarea")}function se(G,$,J){var Z=G[0],re=Z.trace,ne=J?re.visible&&re.type===J:x.traceIs(re,J),j=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ne?[G]:[]);if(j.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),j.exit().remove(),j.size()){var ee=re.marker||{},ie=P(i(ee.line.width,Z.pts),ee.line,p,h),fe="pieLike",be=A.minExtend(re,{marker:{line:{width:ie}}},fe),Ae=A.minExtend(Z,{trace:be},fe);a(j,Ae,be,E)}}function he(G){var $=G[0].trace,J,Z=[];if($.visible)switch($.type){case"histogram2d":case"heatmap":Z=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":Z=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":Z=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":Z=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":Z=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":Z=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var re=g.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(Z);re.enter().append("path").classed("legend3dandfriends",!0).attr("transform",f).style("stroke-miterlimit",1),re.exit().remove(),re.each(function(ne,j){var ee=g.select(this),ie=r($),fe=ie.colorscale,be=ie.reversescale,Ae=function(at){if(at.size()){var it="legendfill-"+$.uid;e.gradient(at,E,it,T(be,J==="radial"),fe,"fill")}},Be;if(fe){if(!J){var Ze=fe.length;Be=j===0?fe[be?Ze-1:0][1]:j===1?fe[be?0:Ze-1][1]:fe[Math.floor((Ze-1)/2)][1]}}else{var Ie=$.vertexcolor||$.facecolor||$.color;Be=A.isArrayOrTypedArray(Ie)?Ie[j]||Ie[0]:Ie}ee.attr("d",ne[0]),Be?ee.call(t.fill,Be):ee.call(Ae)})}};function T(w,S){var E=S?"radial":"horizontal";return E+(w?"":"reversed")}function l(w){var S=w[0].trace,E=S.contours,m=o.hasLines(S),b=o.hasMarkers(S),d=S.visible&&S.fill&&S.fill!=="none",u=!1,y=!1;if(E){var f=E.coloring;f==="lines"?u=!0:m=f==="none"||f==="heatmap"||E.showlines,E.type==="constraint"?d=E._operation!=="=":(f==="fill"||f==="heatmap")&&(y=!0)}return{showMarker:b,showLine:m,showFill:d,showGradientLine:u,showGradientFill:y,anyLine:m||u,anyFill:d||y}}function _(w,S,E){return w&&A.isArrayOrTypedArray(w)?S:w>E?E:w}}}),mS=Ye({"src/components/legend/draw.js"(X,H){"use strict";var g=_n(),x=ta(),A=Gu(),M=Hn(),e=$y(),t=bp(),r=Bo(),o=Fn(),a=jl(),i=uO(),n=dS(),s=oh(),c=s.LINE_SPACING,h=s.FROM_TL,v=s.FROM_BR,p=cO(),T=vS(),l=x2(),_=1,w=/^legend[0-9]*$/;H.exports=function(U,W){if(W)E(U,W);else{var Q=U._fullLayout,ue=Q._legends,se=Q._infolayer.selectAll('[class^="legend"]');se.each(function(){var J=g.select(this),Z=J.attr("class"),re=Z.split(" ")[0];re.match(w)&&ue.indexOf(re)===-1&&J.remove()});for(var he=0;he1)}var ee=Q.hiddenlabels||[];if(!G&&(!Q.showlegend||!$.length))return he.selectAll("."+ue).remove(),Q._topdefs.select("#"+se).remove(),A.autoMargin(N,ue);var ie=x.ensureSingle(he,"g",ue,function(et){G||et.attr("pointer-events","all")}),fe=x.ensureSingleById(Q._topdefs,"clipPath",se,function(et){et.append("rect")}),be=x.ensureSingle(ie,"rect","bg",function(et){et.attr("shape-rendering","crispEdges")});be.call(o.stroke,W.bordercolor).call(o.fill,W.bgcolor).style("stroke-width",W.borderwidth+"px");var Ae=x.ensureSingle(ie,"g","scrollbox"),Be=W.title;W._titleWidth=0,W._titleHeight=0;var Ie;Be.text?(Ie=x.ensureSingle(Ae,"text",ue+"titletext"),Ie.attr("text-anchor","start").call(r.font,Be.font).text(Be.text),f(Ie,Ae,N,W,_)):Ae.selectAll("."+ue+"titletext").remove();var Ze=x.ensureSingle(ie,"rect","scrollbar",function(et){et.attr(n.scrollBarEnterAttrs).call(o.fill,n.scrollBarColor)}),at=Ae.selectAll("g.groups").data($);at.enter().append("g").attr("class","groups"),at.exit().remove();var it=at.selectAll("g.traces").data(x.identity);it.enter().append("g").attr("class","traces"),it.exit().remove(),it.style("opacity",function(et){var lt=et[0].trace;return M.traceIs(lt,"pie-like")?ee.indexOf(et[0].label)!==-1?.5:1:lt.visible==="legendonly"?.5:1}).each(function(){g.select(this).call(d,N,W)}).call(T,N,W).each(function(){G||g.select(this).call(y,N,ue)}),x.syncOrAsync([A.previousPromises,function(){return z(N,at,it,W)},function(){var et=Q._size,lt=W.borderwidth,Me=W.xref==="paper",ge=W.yref==="paper";if(Be.text&&S(Ie,W,lt),!G){var ce,ze;Me?ce=et.l+et.w*W.x-h[B(W)]*W._width:ce=Q.width*W.x-h[B(W)]*W._width,ge?ze=et.t+et.h*(1-W.y)-h[O(W)]*W._effHeight:ze=Q.height*(1-W.y)-h[O(W)]*W._effHeight;var tt=F(N,ue,ce,ze);if(tt)return;if(Q.margin.autoexpand){var nt=ce,Qe=ze;ce=Me?x.constrain(ce,0,Q.width-W._width):nt,ze=ge?x.constrain(ze,0,Q.height-W._effHeight):Qe,ce!==nt&&x.log("Constrain "+ue+".x to make legend fit inside graph"),ze!==Qe&&x.log("Constrain "+ue+".y to make legend fit inside graph")}r.setTranslate(ie,ce,ze)}if(Ze.on(".drag",null),ie.on("wheel",null),G||W._height<=W._maxHeight||N._context.staticPlot){var Ct=W._effHeight;G&&(Ct=W._height),be.attr({width:W._width-lt,height:Ct-lt,x:lt/2,y:lt/2}),r.setTranslate(Ae,0,0),fe.select("rect").attr({width:W._width-2*lt,height:Ct-2*lt,x:lt,y:lt}),r.setClipUrl(Ae,se,N),r.setRect(Ze,0,0,0,0),delete W._scrollY}else{var St=Math.max(n.scrollBarMinHeight,W._effHeight*W._effHeight/W._height),Ot=W._effHeight-St-2*n.scrollBarMargin,jt=W._height-W._effHeight,ur=Ot/jt,ar=Math.min(W._scrollY||0,jt);be.attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-lt,x:lt/2,y:lt/2}),fe.select("rect").attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-2*lt,x:lt,y:lt+ar}),r.setClipUrl(Ae,se,N),Ee(ar,St,ur),ie.on("wheel",function(){ar=x.constrain(W._scrollY+g.event.deltaY/Ot*jt,0,jt),Ee(ar,St,ur),ar!==0&&ar!==jt&&g.event.preventDefault()});var Cr,vr,_r,yt=function(rt,dt,xt){var It=(xt-dt)/ur+rt;return x.constrain(It,0,jt)},Fe=function(rt,dt,xt){var It=(dt-xt)/ur+rt;return x.constrain(It,0,jt)},Ke=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"?Cr=rt.changedTouches[0].clientY:Cr=rt.clientY,_r=ar}).on("drag",function(){var rt=g.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?vr=rt.changedTouches[0].clientY:vr=rt.clientY,ar=yt(_r,Cr,vr),Ee(ar,St,ur))});Ze.call(Ke);var Ne=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"&&(Cr=rt.changedTouches[0].clientY,_r=ar)}).on("drag",function(){var rt=g.event.sourceEvent;rt.type==="touchmove"&&(vr=rt.changedTouches[0].clientY,ar=Fe(_r,Cr,vr),Ee(ar,St,ur))});Ae.call(Ne)}function Ee(rt,dt,xt){W._scrollY=N._fullLayout[ue]._scrollY=rt,r.setTranslate(Ae,0,-rt),r.setRect(Ze,W._width,n.scrollBarMargin+rt*xt,n.scrollBarWidth,dt),fe.select("rect").attr("y",lt+rt)}if(N._context.edits.legendPosition){var Ve,ke,Te,Le;ie.classed("cursor-move",!0),t.init({element:ie.node(),gd:N,prepFn:function(rt){if(rt.target!==Ze.node()){var dt=r.getTranslate(ie);Te=dt.x,Le=dt.y}},moveFn:function(rt,dt){if(Te!==void 0&&Le!==void 0){var xt=Te+rt,It=Le+dt;r.setTranslate(ie,xt,It),Ve=t.align(xt,W._width,et.l,et.l+et.w,W.xanchor),ke=t.align(It+W._height,-W._height,et.t+et.h,et.t,W.yanchor)}},doneFn:function(){if(Ve!==void 0&&ke!==void 0){var rt={};rt[ue+".x"]=Ve,rt[ue+".y"]=ke,M.call("_guiRelayout",N,rt)}},clickFn:function(rt,dt){var xt=he.selectAll("g.traces").filter(function(){var It=this.getBoundingClientRect();return dt.clientX>=It.left&&dt.clientX<=It.right&&dt.clientY>=It.top&&dt.clientY<=It.bottom});xt.size()>0&&b(N,ie,xt,rt,dt)}})}}],N)}}function m(N,U,W){var Q=N[0],ue=Q.width,se=U.entrywidthmode,he=Q.trace.legendwidth||U.entrywidth;return se==="fraction"?U._maxWidth*he:W+(he||ue)}function b(N,U,W,Q,ue){var se=W.data()[0][0].trace,he={event:ue,node:W.node(),curveNumber:se.index,expandedIndex:se.index,data:N.data,layout:N.layout,frames:N._transitionData._frames,config:N._context,fullData:N._fullData,fullLayout:N._fullLayout};se._group&&(he.group=se._group),M.traceIs(se,"pie-like")&&(he.label=W.datum()[0].label);var G=e.triggerHandler(N,"plotly_legendclick",he);if(Q===1){if(G===!1)return;U._clickTimeout=setTimeout(function(){N._fullLayout&&i(W,N,Q)},N._context.doubleClickDelay)}else if(Q===2){U._clickTimeout&&clearTimeout(U._clickTimeout),N._legendMouseDownTime=0;var $=e.triggerHandler(N,"plotly_legenddoubleclick",he);$!==!1&&G!==!1&&i(W,N,Q)}}function d(N,U,W){var Q=I(W),ue=N.data()[0][0],se=ue.trace,he=M.traceIs(se,"pie-like"),G=!W._inHover&&U._context.edits.legendText&&!he,$=W._maxNameLength,J,Z;ue.groupTitle?(J=ue.groupTitle.text,Z=ue.groupTitle.font):(Z=W.font,W.entries?J=ue.text:(J=he?ue.label:se.name,se._meta&&(J=x.templateString(J,se._meta))));var re=x.ensureSingle(N,"text",Q+"text");re.attr("text-anchor","start").call(r.font,Z).text(G?u(J,$):J);var ne=W.indentation+W.itemwidth+n.itemGap*2;a.positionText(re,ne,0),G?re.call(a.makeEditable,{gd:U,text:J}).call(f,N,U,W).on("edit",function(j){this.text(u(j,$)).call(f,N,U,W);var ee=ue.trace._fullInput||{},ie={};return ie.name=j,ee._isShape?M.call("_guiRelayout",U,"shapes["+se.index+"].name",ie.name):M.call("_guiRestyle",U,ie,se.index)}):f(re,N,U,W)}function u(N,U){var W=Math.max(4,U);if(N&&N.trim().length>=W/2)return N;N=N||"";for(var Q=W-N.length;Q>0;Q--)N+=" ";return N}function y(N,U,W){var Q=U._context.doubleClickDelay,ue,se=1,he=x.ensureSingle(N,"rect",W+"toggle",function(G){U._context.staticPlot||G.style("cursor","pointer").attr("pointer-events","all"),G.call(o.fill,"rgba(0,0,0,0)")});U._context.staticPlot||(he.on("mousedown",function(){ue=new Date().getTime(),ue-U._legendMouseDownTimeQ&&(se=Math.max(se-1,1)),b(U,G,N,se,g.event)}}))}function f(N,U,W,Q,ue){Q._inHover&&N.attr("data-notex",!0),a.convertToTspans(N,W,function(){P(U,W,Q,ue)})}function P(N,U,W,Q){var ue=N.data()[0][0];if(!W._inHover&&ue&&!ue.trace.showlegend){N.remove();return}var se=N.select("g[class*=math-group]"),he=se.node(),G=I(W);W||(W=U._fullLayout[G]);var $=W.borderwidth,J;Q===_?J=W.title.font:ue.groupTitle?J=ue.groupTitle.font:J=W.font;var Z=J.size*c,re,ne;if(he){var j=r.bBox(he);re=j.height,ne=j.width,Q===_?r.setTranslate(se,$,$+re*.75):r.setTranslate(se,0,re*.25)}else{var ee="."+G+(Q===_?"title":"")+"text",ie=N.select(ee),fe=a.lineCount(ie),be=ie.node();if(re=Z*fe,ne=be?r.bBox(be).width:0,Q===_)W.title.side==="left"&&(ne+=n.itemGap*2),a.positionText(ie,$+n.titlePad,$+Z);else{var Ae=n.itemGap*2+W.indentation+W.itemwidth;ue.groupTitle&&(Ae=n.itemGap,ne-=W.indentation+W.itemwidth),a.positionText(ie,Ae,-Z*((fe-1)/2-.3))}}Q===_?(W._titleWidth=ne,W._titleHeight=re):(ue.lineHeight=Z,ue.height=Math.max(re,16)+3,ue.width=ne)}function L(N){var U=0,W=0,Q=N.title.side;return Q&&(Q.indexOf("left")!==-1&&(U=N._titleWidth),Q.indexOf("top")!==-1&&(W=N._titleHeight)),[U,W]}function z(N,U,W,Q){var ue=N._fullLayout,se=I(Q);Q||(Q=ue[se]);var he=ue._size,G=l.isVertical(Q),$=l.isGrouped(Q),J=Q.entrywidthmode==="fraction",Z=Q.borderwidth,re=2*Z,ne=n.itemGap,j=Q.indentation+Q.itemwidth+ne*2,ee=2*(Z+ne),ie=O(Q),fe=Q.y<0||Q.y===0&&ie==="top",be=Q.y>1||Q.y===1&&ie==="bottom",Ae=Q.tracegroupgap,Be={};Q._maxHeight=Math.max(fe||be?ue.height/2:he.h,30);var Ie=0;Q._width=0,Q._height=0;var Ze=L(Q);if(G)W.each(function(_r){var yt=_r[0].height;r.setTranslate(this,Z+Ze[0],Z+Ze[1]+Q._height+yt/2+ne),Q._height+=yt,Q._width=Math.max(Q._width,_r[0].width)}),Ie=j+Q._width,Q._width+=ne+j+re,Q._height+=ee,$&&(U.each(function(_r,yt){r.setTranslate(this,0,yt*Q.tracegroupgap)}),Q._height+=(Q._lgroupsLength-1)*Q.tracegroupgap);else{var at=B(Q),it=Q.x<0||Q.x===0&&at==="right",et=Q.x>1||Q.x===1&&at==="left",lt=be||fe,Me=ue.width/2;Q._maxWidth=Math.max(it?lt&&at==="left"?he.l+he.w:Me:et?lt&&at==="right"?he.r+he.w:Me:he.w,2*j);var ge=0,ce=0;W.each(function(_r){var yt=m(_r,Q,j);ge=Math.max(ge,yt),ce+=yt}),Ie=null;var ze=0;if($){var tt=0,nt=0,Qe=0;U.each(function(){var _r=0,yt=0;g.select(this).selectAll("g.traces").each(function(Ke){var Ne=m(Ke,Q,j),Ee=Ke[0].height;r.setTranslate(this,Ze[0],Ze[1]+Z+ne+Ee/2+yt),yt+=Ee,_r=Math.max(_r,Ne),Be[Ke[0].trace.legendgroup]=_r});var Fe=_r+ne;nt>0&&Fe+Z+nt>Q._maxWidth?(ze=Math.max(ze,nt),nt=0,Qe+=tt+Ae,tt=yt):tt=Math.max(tt,yt),r.setTranslate(this,nt,Qe),nt+=Fe}),Q._width=Math.max(ze,nt)+Z,Q._height=Qe+tt+ee}else{var Ct=W.size(),St=ce+re+(Ct-1)*ne=Q._maxWidth&&(ze=Math.max(ze,ar),jt=0,ur+=Ot,Q._height+=Ot,Ot=0),r.setTranslate(this,Ze[0]+Z+jt,Ze[1]+Z+ur+yt/2+ne),ar=jt+Fe+ne,jt+=Ke,Ot=Math.max(Ot,yt)}),St?(Q._width=jt+re,Q._height=Ot+ee):(Q._width=Math.max(ze,ar)+re,Q._height+=Ot+ee)}}Q._width=Math.ceil(Math.max(Q._width+Ze[0],Q._titleWidth+2*(Z+n.titlePad))),Q._height=Math.ceil(Math.max(Q._height+Ze[1],Q._titleHeight+2*(Z+n.itemGap))),Q._effHeight=Math.min(Q._height,Q._maxHeight);var Cr=N._context.edits,vr=Cr.legendText||Cr.legendPosition;W.each(function(_r){var yt=g.select(this).select("."+se+"toggle"),Fe=_r[0].height,Ke=_r[0].trace.legendgroup,Ne=m(_r,Q,j);$&&Ke!==""&&(Ne=Be[Ke]);var Ee=vr?j:Ie||Ne;!G&&!J&&(Ee+=ne/2),r.setRect(yt,0,-Fe/2,Ee,Fe)})}function F(N,U,W,Q){var ue=N._fullLayout,se=ue[U],he=B(se),G=O(se),$=se.xref==="paper",J=se.yref==="paper";N._fullLayout._reservedMargin[U]={};var Z=se.y<.5?"b":"t",re=se.x<.5?"l":"r",ne={r:ue.width-W,l:W+se._width,b:ue.height-Q,t:Q+se._effHeight};if($&&J)return A.autoMargin(N,U,{x:se.x,y:se.y,l:se._width*h[he],r:se._width*v[he],b:se._effHeight*v[G],t:se._effHeight*h[G]});$?N._fullLayout._reservedMargin[U][Z]=ne[Z]:J||se.orientation==="v"?N._fullLayout._reservedMargin[U][re]=ne[re]:N._fullLayout._reservedMargin[U][Z]=ne[Z]}function B(N){return x.isRightAnchor(N)?"right":x.isCenterAnchor(N)?"center":"left"}function O(N){return x.isBottomAnchor(N)?"bottom":x.isMiddleAnchor(N)?"middle":"top"}function I(N){return N._id||"legend"}}}),gS=Ye({"src/components/fx/hover.js"(X){"use strict";var H=_n(),g=jo(),x=bh(),A=ta(),M=A.pushUnique,e=A.strTranslate,t=A.strRotate,r=$y(),o=jl(),a=lO(),i=Bo(),n=Fn(),s=bp(),c=Co(),h=wh().zindexSeparator,v=Hn(),p=Qp(),T=x_(),l=pS(),_=mS(),w=T.YANGLE,S=Math.PI*w/180,E=1/Math.sin(S),m=Math.cos(S),b=Math.sin(S),d=T.HOVERARROWSIZE,u=T.HOVERTEXTPAD,y={box:!0,ohlc:!0,violin:!0,candlestick:!0},f={scatter:!0,scattergl:!0,splom:!0};function P(j,ee){return j.distance-ee.distance}X.hover=function(ee,ie,fe,be){ee=A.getGraphDiv(ee);var Ae=ie.target;A.throttle(ee._fullLayout._uid+T.HOVERID,T.HOVERMINTIME,function(){L(ee,ie,fe,be,Ae)})},X.loneHover=function(ee,ie){var fe=!0;Array.isArray(ee)||(fe=!1,ee=[ee]);var be=ie.gd,Ae=Z(be),Be=re(be),Ie=ee.map(function(ze){var tt=ze._x0||ze.x0||ze.x||0,nt=ze._x1||ze.x1||ze.x||0,Qe=ze._y0||ze.y0||ze.y||0,Ct=ze._y1||ze.y1||ze.y||0,St=ze.eventData;if(St){var Ot=Math.min(tt,nt),jt=Math.max(tt,nt),ur=Math.min(Qe,Ct),ar=Math.max(Qe,Ct),Cr=ze.trace;if(v.traceIs(Cr,"gl3d")){var vr=be._fullLayout[Cr.scene]._scene.container,_r=vr.offsetLeft,yt=vr.offsetTop;Ot+=_r,jt+=_r,ur+=yt,ar+=yt}St.bbox={x0:Ot+Be,x1:jt+Be,y0:ur+Ae,y1:ar+Ae},ie.inOut_bbox&&ie.inOut_bbox.push(St.bbox)}else St=!1;return{color:ze.color||n.defaultLine,x0:ze.x0||ze.x||0,x1:ze.x1||ze.x||0,y0:ze.y0||ze.y||0,y1:ze.y1||ze.y||0,xLabel:ze.xLabel,yLabel:ze.yLabel,zLabel:ze.zLabel,text:ze.text,name:ze.name,idealAlign:ze.idealAlign,borderColor:ze.borderColor,fontFamily:ze.fontFamily,fontSize:ze.fontSize,fontColor:ze.fontColor,fontWeight:ze.fontWeight,fontStyle:ze.fontStyle,fontVariant:ze.fontVariant,nameLength:ze.nameLength,textAlign:ze.textAlign,trace:ze.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:ze.hovertemplate||!1,hovertemplateLabels:ze.hovertemplateLabels||!1,eventData:St}}),Ze=!1,at=B(Ie,{gd:be,hovermode:"closest",rotateLabels:Ze,bgColor:ie.bgColor||n.background,container:H.select(ie.container),outerContainer:ie.outerContainer||ie.container}),it=at.hoverLabels,et=5,lt=0,Me=0;it.sort(function(ze,tt){return ze.y0-tt.y0}).each(function(ze,tt){var nt=ze.y0-ze.by/2;nt-etjt[0]._length||Ga<0||Ga>ur[0]._length)return s.unhoverRaw(j,ee)}if(ee.pointerX=ka+jt[0]._offset,ee.pointerY=Ga+ur[0]._offset,"xval"in ee?Ne=p.flat(Ae,ee.xval):Ne=p.p2c(jt,ka),"yval"in ee?Ee=p.flat(Ae,ee.yval):Ee=p.p2c(ur,Ga),!g(Ne[0])||!g(Ee[0]))return A.warn("Fx.hover failed",ee,j),s.unhoverRaw(j,ee)}var ni=1/0;function Wt(Xi,Jo){for(ke=0;keKt&&(Fe.splice(0,Kt),ni=Fe[0].distance),et&&yt!==0&&Fe.length===0){Gt.distance=yt,Gt.index=!1;var In=Le._module.hoverPoints(Gt,It,Bt,"closest",{hoverLayer:Ie._hoverlayer});if(In&&(In=In.filter(function(ys){return ys.spikeDistance<=yt})),In&&In.length){var Do,Ho=In.filter(function(ys){return ys.xa.showspikes&&ys.xa.spikesnap!=="hovered data"});if(Ho.length){var Qo=Ho[0];g(Qo.x0)&&g(Qo.y0)&&(Do=Vt(Qo),(!sr.vLinePoint||sr.vLinePoint.spikeDistance>Do.spikeDistance)&&(sr.vLinePoint=Do))}var Xn=In.filter(function(ys){return ys.ya.showspikes&&ys.ya.spikesnap!=="hovered data"});if(Xn.length){var po=Xn[0];g(po.x0)&&g(po.y0)&&(Do=Vt(po),(!sr.hLinePoint||sr.hLinePoint.spikeDistance>Do.spikeDistance)&&(sr.hLinePoint=Do))}}}}}Wt();function zt(Xi,Jo,zo){for(var as=null,Pn=1/0,go,In=0;In0&&Math.abs(Xi.distance)Er-1;Jr--)Lr(Fe[Jr]);Fe=Tr,pa()}var oa=j._hoverdata,ca=[],kt=Z(j),ir=re(j);for(Ve=0;Ve1||Fe.length>1)||lt==="closest"&&sa&&Fe.length>1,On=n.combine(Ie.plot_bgcolor||n.background,Ie.paper_bgcolor),$n=B(Fe,{gd:j,hovermode:lt,rotateLabels:Mn,bgColor:On,container:Ie._hoverlayer,outerContainer:Ie._paper.node(),commonLabelOpts:Ie.hoverlabel,hoverdistance:Ie.hoverdistance}),Cn=$n.hoverLabels;if(p.isUnifiedHover(lt)||(I(Cn,Mn,Ie,$n.commonLabelBoundingBox),W(Cn,Mn,Ie._invScaleX,Ie._invScaleY)),be&&be.tagName){var Lo=v.getComponentMethod("annotations","hasClickToShow")(j,ca);a(H.select(be),Lo?"pointer":"")}!be||fe||!se(j,ee,oa)||(oa&&j.emit("plotly_unhover",{event:ee,points:oa}),j.emit("plotly_hover",{event:ee,points:j._hoverdata,xaxes:jt,yaxes:ur,xvals:Ne,yvals:Ee}))}function z(j){return[j.trace.index,j.index,j.x0,j.y0,j.name,j.attr,j.xa?j.xa._id:"",j.ya?j.ya._id:""].join(",")}var F=/([\s\S]*)<\/extra>/;function B(j,ee){var ie=ee.gd,fe=ie._fullLayout,be=ee.hovermode,Ae=ee.rotateLabels,Be=ee.bgColor,Ie=ee.container,Ze=ee.outerContainer,at=ee.commonLabelOpts||{};if(j.length===0)return[[]];var it=ee.fontFamily||T.HOVERFONT,et=ee.fontSize||T.HOVERFONTSIZE,lt=ee.fontWeight||fe.font.weight,Me=ee.fontStyle||fe.font.style,ge=ee.fontVariant||fe.font.variant,ce=ee.fontTextcase||fe.font.textcase,ze=ee.fontLineposition||fe.font.lineposition,tt=ee.fontShadow||fe.font.shadow,nt=j[0],Qe=nt.xa,Ct=nt.ya,St=be.charAt(0),Ot=St+"Label",jt=nt[Ot];if(jt===void 0&&Qe.type==="multicategory")for(var ur=0;urfe.width-oa&&(ca=fe.width-oa),$a.attr("d","M"+(Fr-ca)+",0L"+(Fr-ca+d)+","+Jr+d+"H"+oa+"v"+Jr+(u*2+Mr.height)+"H"+-oa+"V"+Jr+d+"H"+(Fr-ca-d)+"Z"),Fr=ca,ke.minX=Fr-oa,ke.maxX=Fr+oa,Qe.side==="top"?(ke.minY=Lr-(u*2+Mr.height),ke.maxY=Lr-u):(ke.minY=Lr+u,ke.maxY=Lr+(u*2+Mr.height))}else{var kt,ir,mr;Ct.side==="right"?(kt="start",ir=1,mr="",Fr=Qe._offset+Qe._length):(kt="end",ir=-1,mr="-",Fr=Qe._offset),Lr=Ct._offset+(nt.y0+nt.y1)/2,mt.attr("text-anchor",kt),$a.attr("d","M0,0L"+mr+d+","+d+"V"+(u+Mr.height/2)+"h"+mr+(u*2+Mr.width)+"V-"+(u+Mr.height/2)+"H"+mr+d+"V-"+d+"Z"),ke.minY=Lr-(u+Mr.height/2),ke.maxY=Lr+(u+Mr.height/2),Ct.side==="right"?(ke.minX=Fr+d,ke.maxX=Fr+d+(u*2+Mr.width)):(ke.minX=Fr-d-(u*2+Mr.width),ke.maxX=Fr-d);var $r=Mr.height/2,ma=Cr-Mr.top-$r,Ba="clip"+fe._uid+"commonlabel"+Ct._id,Ca;if(Fr=0?Ea=xr:Zr+Ga=0?Ea=Zr:pa+Ga=0?Fa=Vt:Ut+Ma<_r&&Ut>=0?Fa=Ut:Xr+Ma<_r?Fa=Xr:Vt-Wt=0,(ya.idealAlign==="top"||!Ti)&&ai?(mr-=ma/2,ya.anchor="end"):Ti?(mr+=ma/2,ya.anchor="start"):ya.anchor="middle",ya.crossPos=mr;else{if(ya.pos=mr,Ti=ir+$r/2+Sa<=vr,ai=ir-$r/2-Sa>=0,(ya.idealAlign==="left"||!Ti)&&ai)ir-=$r/2,ya.anchor="end";else if(Ti)ir+=$r/2,ya.anchor="start";else{ya.anchor="middle";var an=Sa/2,sn=ir+an-vr,Mn=ir-an;sn>0&&(ir-=sn),Mn<0&&(ir+=-Mn)}ya.crossPos=ir}Lr.attr("text-anchor",ya.anchor),oa&&Jr.attr("text-anchor",ya.anchor),$a.attr("transform",e(ir,mr)+(Ae?t(w):""))}),{hoverLabels:qa,commonLabelBoundingBox:ke}}function O(j,ee,ie,fe,be,Ae){var Be="",Ie="";j.nameOverride!==void 0&&(j.name=j.nameOverride),j.name&&(j.trace._meta&&(j.name=A.templateString(j.name,j.trace._meta)),Be=G(j.name,j.nameLength));var Ze=ie.charAt(0),at=Ze==="x"?"y":"x";j.zLabel!==void 0?(j.xLabel!==void 0&&(Ie+="x: "+j.xLabel+"
"),j.yLabel!==void 0&&(Ie+="y: "+j.yLabel+"
"),j.trace.type!=="choropleth"&&j.trace.type!=="choroplethmapbox"&&j.trace.type!=="choroplethmap"&&(Ie+=(Ie?"z: ":"")+j.zLabel)):ee&&j[Ze+"Label"]===be?Ie=j[at+"Label"]||"":j.xLabel===void 0?j.yLabel!==void 0&&j.trace.type!=="scattercarpet"&&(Ie=j.yLabel):j.yLabel===void 0?Ie=j.xLabel:Ie="("+j.xLabel+", "+j.yLabel+")",(j.text||j.text===0)&&!Array.isArray(j.text)&&(Ie+=(Ie?"
":"")+j.text),j.extraText!==void 0&&(Ie+=(Ie?"
":"")+j.extraText),Ae&&Ie===""&&!j.hovertemplate&&(Be===""&&Ae.remove(),Ie=Be);var it=j.hovertemplate||!1;if(it){var et=j.hovertemplateLabels||j;j[Ze+"Label"]!==be&&(et[Ze+"other"]=et[Ze+"Val"],et[Ze+"otherLabel"]=et[Ze+"Label"]),Ie=A.hovertemplateString(it,et,fe._d3locale,j.eventData[0]||{},j.trace._meta),Ie=Ie.replace(F,function(lt,Me){return Be=G(Me,j.nameLength),""})}return[Ie,Be]}function I(j,ee,ie,fe){var be=ee?"xa":"ya",Ae=ee?"ya":"xa",Be=0,Ie=1,Ze=j.size(),at=new Array(Ze),it=0,et=fe.minX,lt=fe.maxX,Me=fe.minY,ge=fe.maxY,ce=function(Ne){return Ne*ie._invScaleX},ze=function(Ne){return Ne*ie._invScaleY};j.each(function(Ne){var Ee=Ne[be],Ve=Ne[Ae],ke=Ee._id.charAt(0)==="x",Te=Ee.range;it===0&&Te&&Te[0]>Te[1]!==ke&&(Ie=-1);var Le=0,rt=ke?ie.width:ie.height;if(ie.hovermode==="x"||ie.hovermode==="y"){var dt=N(Ne,ee),xt=Ne.anchor,It=xt==="end"?-1:1,Bt,Gt;if(xt==="middle")Bt=Ne.crossPos+(ke?ze(dt.y-Ne.by/2):ce(Ne.bx/2+Ne.tx2width/2)),Gt=Bt+(ke?ze(Ne.by):ce(Ne.bx));else if(ke)Bt=Ne.crossPos+ze(d+dt.y)-ze(Ne.by/2-d),Gt=Bt+ze(Ne.by);else{var Kt=ce(It*d+dt.x),sr=Kt+ce(It*Ne.bx);Bt=Ne.crossPos+Math.min(Kt,sr),Gt=Ne.crossPos+Math.max(Kt,sr)}ke?Me!==void 0&&ge!==void 0&&Math.min(Gt,ge)-Math.max(Bt,Me)>1&&(Ve.side==="left"?(Le=Ve._mainLinePosition,rt=ie.width):rt=Ve._mainLinePosition):et!==void 0&<!==void 0&&Math.min(Gt,lt)-Math.max(Bt,et)>1&&(Ve.side==="top"?(Le=Ve._mainLinePosition,rt=ie.height):rt=Ve._mainLinePosition)}at[it++]=[{datum:Ne,traceIndex:Ne.trace.index,dp:0,pos:Ne.pos,posref:Ne.posref,size:Ne.by*(ke?E:1)/2,pmin:Le,pmax:rt}]}),at.sort(function(Ne,Ee){return Ne[0].posref-Ee[0].posref||Ie*(Ee[0].traceIndex-Ne[0].traceIndex)});var tt,nt,Qe,Ct,St,Ot,jt;function ur(Ne){var Ee=Ne[0],Ve=Ne[Ne.length-1];if(nt=Ee.pmin-Ee.pos-Ee.dp+Ee.size,Qe=Ve.pos+Ve.dp+Ve.size-Ee.pmax,nt>.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp+=nt;tt=!1}if(!(Qe<.01)){if(nt<-.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;tt=!1}if(tt){var ke=0;for(Ct=0;CtEe.pmax&&ke++;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos>Ee.pmax-1&&(Ot.del=!0,ke--);for(Ct=0;Ct=0;St--)Ne[St].dp-=Qe;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&(Ot.del=!0,ke--)}}}for(;!tt&&Be<=Ze;){for(Be++,tt=!0,Ct=0;Ct.01){for(St=Cr.length-1;St>=0;St--)Cr[St].dp+=nt;for(ar.push.apply(ar,Cr),at.splice(Ct+1,1),jt=0,St=ar.length-1;St>=0;St--)jt+=ar[St].dp;for(Qe=jt/ar.length,St=ar.length-1;St>=0;St--)ar[St].dp-=Qe;tt=!1}else Ct++}at.forEach(ur)}for(Ct=at.length-1;Ct>=0;Ct--){var yt=at[Ct];for(St=yt.length-1;St>=0;St--){var Fe=yt[St],Ke=Fe.datum;Ke.offset=Fe.dp,Ke.del=Fe.del}}}function N(j,ee){var ie=0,fe=j.offset;return ee&&(fe*=-b,ie=j.offset*m),{x:ie,y:fe}}function U(j){var ee={start:1,end:-1,middle:0}[j.anchor],ie=ee*(d+u),fe=ie+ee*(j.txwidth+u),be=j.anchor==="middle";return be&&(ie-=j.tx2width/2,fe+=j.txwidth/2+u),{alignShift:ee,textShiftX:ie,text2ShiftX:fe}}function W(j,ee,ie,fe){var be=function(Be){return Be*ie},Ae=function(Be){return Be*fe};j.each(function(Be){var Ie=H.select(this);if(Be.del)return Ie.remove();var Ze=Ie.select("text.nums"),at=Be.anchor,it=at==="end"?-1:1,et=U(Be),lt=N(Be,ee),Me=lt.x,ge=lt.y,ce=at==="middle";Ie.select("path").attr("d",ce?"M-"+be(Be.bx/2+Be.tx2width/2)+","+Ae(ge-Be.by/2)+"h"+be(Be.bx)+"v"+Ae(Be.by)+"h-"+be(Be.bx)+"Z":"M0,0L"+be(it*d+Me)+","+Ae(d+ge)+"v"+Ae(Be.by/2-d)+"h"+be(it*Be.bx)+"v-"+Ae(Be.by)+"H"+be(it*d+Me)+"V"+Ae(ge-d)+"Z");var ze=Me+et.textShiftX,tt=ge+Be.ty0-Be.by/2+u,nt=Be.textAlign||"auto";nt!=="auto"&&(nt==="left"&&at!=="start"?(Ze.attr("text-anchor","start"),ze=ce?-Be.bx/2-Be.tx2width/2+u:-Be.bx-u):nt==="right"&&at!=="end"&&(Ze.attr("text-anchor","end"),ze=ce?Be.bx/2-Be.tx2width/2-u:Be.bx+u)),Ze.call(o.positionText,be(ze),Ae(tt)),Be.tx2width&&(Ie.select("text.name").call(o.positionText,be(et.text2ShiftX+et.alignShift*u+Me),Ae(ge+Be.ty0-Be.by/2+u)),Ie.select("rect").call(i.setRect,be(et.text2ShiftX+(et.alignShift-1)*Be.tx2width/2+Me),Ae(ge-Be.by/2-1),be(Be.tx2width),Ae(Be.by+2)))})}function Q(j,ee){var ie=j.index,fe=j.trace||{},be=j.cd[0],Ae=j.cd[ie]||{};function Be(lt){return lt||g(lt)&<===0}var Ie=Array.isArray(ie)?function(lt,Me){var ge=A.castOption(be,ie,lt);return Be(ge)?ge:A.extractOption({},fe,"",Me)}:function(lt,Me){return A.extractOption(Ae,fe,lt,Me)};function Ze(lt,Me,ge){var ce=Ie(Me,ge);Be(ce)&&(j[lt]=ce)}if(Ze("hoverinfo","hi","hoverinfo"),Ze("bgcolor","hbg","hoverlabel.bgcolor"),Ze("borderColor","hbc","hoverlabel.bordercolor"),Ze("fontFamily","htf","hoverlabel.font.family"),Ze("fontSize","hts","hoverlabel.font.size"),Ze("fontColor","htc","hoverlabel.font.color"),Ze("fontWeight","htw","hoverlabel.font.weight"),Ze("fontStyle","hty","hoverlabel.font.style"),Ze("fontVariant","htv","hoverlabel.font.variant"),Ze("nameLength","hnl","hoverlabel.namelength"),Ze("textAlign","hta","hoverlabel.align"),j.posref=ee==="y"||ee==="closest"&&fe.orientation==="h"?j.xa._offset+(j.x0+j.x1)/2:j.ya._offset+(j.y0+j.y1)/2,j.x0=A.constrain(j.x0,0,j.xa._length),j.x1=A.constrain(j.x1,0,j.xa._length),j.y0=A.constrain(j.y0,0,j.ya._length),j.y1=A.constrain(j.y1,0,j.ya._length),j.xLabelVal!==void 0&&(j.xLabel="xLabel"in j?j.xLabel:c.hoverLabelText(j.xa,j.xLabelVal,fe.xhoverformat),j.xVal=j.xa.c2d(j.xLabelVal)),j.yLabelVal!==void 0&&(j.yLabel="yLabel"in j?j.yLabel:c.hoverLabelText(j.ya,j.yLabelVal,fe.yhoverformat),j.yVal=j.ya.c2d(j.yLabelVal)),j.zLabelVal!==void 0&&j.zLabel===void 0&&(j.zLabel=String(j.zLabelVal)),!isNaN(j.xerr)&&!(j.xa.type==="log"&&j.xerr<=0)){var at=c.tickText(j.xa,j.xa.c2l(j.xerr),"hover").text;j.xerrneg!==void 0?j.xLabel+=" +"+at+" / -"+c.tickText(j.xa,j.xa.c2l(j.xerrneg),"hover").text:j.xLabel+=" \xB1 "+at,ee==="x"&&(j.distance+=1)}if(!isNaN(j.yerr)&&!(j.ya.type==="log"&&j.yerr<=0)){var it=c.tickText(j.ya,j.ya.c2l(j.yerr),"hover").text;j.yerrneg!==void 0?j.yLabel+=" +"+it+" / -"+c.tickText(j.ya,j.ya.c2l(j.yerrneg),"hover").text:j.yLabel+=" \xB1 "+it,ee==="y"&&(j.distance+=1)}var et=j.hoverinfo||j.trace.hoverinfo;return et&&et!=="all"&&(et=Array.isArray(et)?et:et.split("+"),et.indexOf("x")===-1&&(j.xLabel=void 0),et.indexOf("y")===-1&&(j.yLabel=void 0),et.indexOf("z")===-1&&(j.zLabel=void 0),et.indexOf("text")===-1&&(j.text=void 0),et.indexOf("name")===-1&&(j.name=void 0)),j}function ue(j,ee,ie){var fe=ie.container,be=ie.fullLayout,Ae=be._size,Be=ie.event,Ie=!!ee.hLinePoint,Ze=!!ee.vLinePoint,at,it;if(fe.selectAll(".spikeline").remove(),!!(Ze||Ie)){var et=n.combine(be.plot_bgcolor,be.paper_bgcolor);if(Ie){var lt=ee.hLinePoint,Me,ge;at=lt&<.xa,it=lt&<.ya;var ce=it.spikesnap;ce==="cursor"?(Me=Be.pointerX,ge=Be.pointerY):(Me=at._offset+lt.x,ge=it._offset+lt.y);var ze=x.readability(lt.color,et)<1.5?n.contrast(et):lt.color,tt=it.spikemode,nt=it.spikethickness,Qe=it.spikecolor||ze,Ct=c.getPxPosition(j,it),St,Ot;if(tt.indexOf("toaxis")!==-1||tt.indexOf("across")!==-1){if(tt.indexOf("toaxis")!==-1&&(St=Ct,Ot=Me),tt.indexOf("across")!==-1){var jt=it._counterDomainMin,ur=it._counterDomainMax;it.anchor==="free"&&(jt=Math.min(jt,it.position),ur=Math.max(ur,it.position)),St=Ae.l+jt*Ae.w,Ot=Ae.l+ur*Ae.w}fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt,stroke:Qe,"stroke-dasharray":i.dashStyle(it.spikedash,nt)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}tt.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Ct+(it.side!=="right"?nt:-nt),cy:ge,r:nt,fill:Qe}).classed("spikeline",!0)}if(Ze){var ar=ee.vLinePoint,Cr,vr;at=ar&&ar.xa,it=ar&&ar.ya;var _r=at.spikesnap;_r==="cursor"?(Cr=Be.pointerX,vr=Be.pointerY):(Cr=at._offset+ar.x,vr=it._offset+ar.y);var yt=x.readability(ar.color,et)<1.5?n.contrast(et):ar.color,Fe=at.spikemode,Ke=at.spikethickness,Ne=at.spikecolor||yt,Ee=c.getPxPosition(j,at),Ve,ke;if(Fe.indexOf("toaxis")!==-1||Fe.indexOf("across")!==-1){if(Fe.indexOf("toaxis")!==-1&&(Ve=Ee,ke=vr),Fe.indexOf("across")!==-1){var Te=at._counterDomainMin,Le=at._counterDomainMax;at.anchor==="free"&&(Te=Math.min(Te,at.position),Le=Math.max(Le,at.position)),Ve=Ae.t+(1-Le)*Ae.h,ke=Ae.t+(1-Te)*Ae.h}fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke,stroke:Ne,"stroke-dasharray":i.dashStyle(at.spikedash,Ke)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}Fe.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Cr,cy:Ee-(at.side!=="top"?Ke:-Ke),r:Ke,fill:Ne}).classed("spikeline",!0)}}}function se(j,ee,ie){if(!ie||ie.length!==j._hoverdata.length)return!0;for(var fe=ie.length-1;fe>=0;fe--){var be=ie[fe],Ae=j._hoverdata[fe];if(be.curveNumber!==Ae.curveNumber||String(be.pointNumber)!==String(Ae.pointNumber)||String(be.pointNumbers)!==String(Ae.pointNumbers))return!0}return!1}function he(j,ee){return!ee||ee.vLinePoint!==j._spikepoints.vLinePoint||ee.hLinePoint!==j._spikepoints.hLinePoint}function G(j,ee){return o.plainText(j||"",{len:ee,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function $(j,ee){for(var ie=ee.charAt(0),fe=[],be=[],Ae=[],Be=0;Be"," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}}}),w2=Ye({"src/components/shapes/draw_newshape/constants.js"(X,H){"use strict";var g=32;H.exports={CIRCLE_SIDES:g,i000:0,i090:g/4,i180:g/2,i270:g/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),T2=Ye({"src/components/selections/helpers.js"(X,H){"use strict";var g=ta().strTranslate;function x(t,r){switch(t.type){case"log":return t.p2d(r);case"date":return t.p2r(r,0,t.calendar);default:return t.p2r(r)}}function A(t,r){switch(t.type){case"log":return t.d2p(r);case"date":return t.r2p(r,0,t.calendar);default:return t.r2p(r)}}function M(t){var r=t._id.charAt(0)==="y"?1:0;return function(o){return x(t,o[r])}}function e(t){return g(t.xaxis._offset,t.yaxis._offset)}H.exports={p2r:x,r2p:A,axValue:M,getTransform:e}}}),tg=Ye({"src/components/shapes/draw_newshape/helpers.js"(X){"use strict";var H=A_(),g=w2(),x=g.CIRCLE_SIDES,A=g.SQRT2,M=T2(),e=M.p2r,t=M.r2p,r=[0,3,4,5,6,1,2],o=[0,3,4,1,2];X.writePaths=function(n){var s=n.length;if(!s)return"M0,0Z";for(var c="",h=0;h0&&_l&&(w="X"),w});return h>l&&(_=_.replace(/[\s,]*X.*/,""),g.log("Ignoring extra params in segment "+c)),v+_})}function M(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}}}),xS=Ye({"src/components/shapes/display_labels.js"(X,H){"use strict";var g=ta(),x=Co(),A=jl(),M=Bo(),e=tg().readPaths,t=rg(),r=t.getPathString,o=p2(),a=oh().FROM_TL;H.exports=function(c,h,v,p){if(p.selectAll(".shape-label").remove(),!!(v.label.text||v.label.texttemplate)){var T;if(v.label.texttemplate){var l={};if(v.type!=="path"){var _=x.getFromId(c,v.xref),w=x.getFromId(c,v.yref);for(var S in o){var E=o[S](v,_,w);E!==void 0&&(l[S]=E)}}T=g.texttemplateStringForShapes(v.label.texttemplate,{},c._fullLayout._d3locale,l)}else T=v.label.text;var m={"data-index":h},b=v.label.font,d={"data-notex":1},u=p.append("g").attr(m).classed("shape-label",!0),y=u.append("text").attr(d).classed("shape-label-text",!0).text(T),f,P,L,z;if(v.path){var F=r(c,v),B=e(F,c);f=1/0,L=1/0,P=-1/0,z=-1/0;for(var O=0;O=s?p=c-v:p=v-c,-180/Math.PI*Math.atan2(p,T)}function n(s,c,h,v,p,T,l){var _=p.label.textposition,w=p.label.textangle,S=p.label.padding,E=p.type,m=Math.PI/180*T,b=Math.sin(m),d=Math.cos(m),u=p.label.xanchor,y=p.label.yanchor,f,P,L,z;if(E==="line"){_==="start"?(f=s,P=c):_==="end"?(f=h,P=v):(f=(s+h)/2,P=(c+v)/2),u==="auto"&&(_==="start"?w==="auto"?h>s?u="left":hs?u="right":hs?u="right":hs?u="left":h1&&!(et.length===2&&et[1][0]==="Z")&&(G===0&&(et[0][0]="M"),f[he]=et,B(),O())}}function fe(et,lt){if(et===2){he=+lt.srcElement.getAttribute("data-i"),G=+lt.srcElement.getAttribute("data-j");var Me=f[he];!T(Me)&&!l(Me)&&ie()}}function be(et){ue=[];for(var lt=0;ltB&&Te>O&&!Ee.shiftKey?s.getCursor(Le/ke,1-rt/Te):"move";c(f,dt),St=dt.split("-")[0]}}function ar(Ee){l(y)||(I&&($=ce(P.xanchor)),N&&(J=ze(P.yanchor)),P.type==="path"?Ae=P.path:(ue=I?P.x0:ce(P.x0),se=N?P.y0:ze(P.y0),he=I?P.x1:ce(P.x1),G=N?P.y1:ze(P.y1)),ueG?(Z=se,ee="y0",re=G,ie="y1"):(Z=G,ee="y1",re=se,ie="y0"),ur(Ee),Fe(z,P),Ne(f,P,y),Ct.moveFn=St==="move"?_r:yt,Ct.altKey=Ee.altKey)}function Cr(){l(y)||(c(f),Ke(z),S(f,y,P),x.call("_guiRelayout",y,F.getUpdateObj()))}function vr(){l(y)||Ke(z)}function _r(Ee,Ve){if(P.type==="path"){var ke=function(rt){return rt},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(dt){return tt(ce(dt)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(dt){return nt(ze(dt)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else I?Q("xanchor",P.xanchor=tt($+Ee)):(Q("x0",P.x0=tt(ue+Ee)),Q("x1",P.x1=tt(he+Ee))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Q("y0",P.y0=nt(se+Ve)),Q("y1",P.y1=nt(G+Ve)));f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function yt(Ee,Ve){if(W){var ke=function(Ma){return Ma},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(Ua){return tt(ce(Ua)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(Ua){return nt(ze(Ua)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else if(U){if(St==="resize-over-start-point"){var rt=ue+Ee,dt=N?se-Ve:se+Ve;Q("x0",P.x0=I?rt:tt(rt)),Q("y0",P.y0=N?dt:nt(dt))}else if(St==="resize-over-end-point"){var xt=he+Ee,It=N?G-Ve:G+Ve;Q("x1",P.x1=I?xt:tt(xt)),Q("y1",P.y1=N?It:nt(It))}}else{var Bt=function(Ma){return St.indexOf(Ma)!==-1},Gt=Bt("n"),Kt=Bt("s"),sr=Bt("w"),sa=Bt("e"),Aa=Gt?Z+Ve:Z,La=Kt?re+Ve:re,ka=sr?ne+Ee:ne,Ga=sa?j+Ee:j;N&&(Gt&&(Aa=Z-Ve),Kt&&(La=re-Ve)),(!N&&La-Aa>O||N&&Aa-La>O)&&(Q(ee,P[ee]=N?Aa:nt(Aa)),Q(ie,P[ie]=N?La:nt(La))),Ga-ka>B&&(Q(fe,P[fe]=I?ka:tt(ka)),Q(be,P[be]=I?Ga:tt(Ga)))}f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function Fe(Ee,Ve){(I||N)&&ke();function ke(){var Te=Ve.type!=="path",Le=Ee.selectAll(".visual-cue").data([0]),rt=1;Le.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":rt}).classed("visual-cue",!0);var dt=ce(I?Ve.xanchor:A.midRange(Te?[Ve.x0,Ve.x1]:v.extractPathCoords(Ve.path,h.paramIsX))),xt=ze(N?Ve.yanchor:A.midRange(Te?[Ve.y0,Ve.y1]:v.extractPathCoords(Ve.path,h.paramIsY)));if(dt=v.roundPositionForSharpStrokeRendering(dt,rt),xt=v.roundPositionForSharpStrokeRendering(xt,rt),I&&N){var It="M"+(dt-1-rt)+","+(xt-1-rt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Le.attr("d",It)}else if(I){var Bt="M"+(dt-1-rt)+","+(xt-9-rt)+"v18 h2 v-18 Z";Le.attr("d",Bt)}else{var Gt="M"+(dt-9-rt)+","+(xt-1-rt)+"h18 v2 h-18 Z";Le.attr("d",Gt)}}}function Ke(Ee){Ee.selectAll(".visual-cue").remove()}function Ne(Ee,Ve,ke){var Te=Ve.xref,Le=Ve.yref,rt=M.getFromId(ke,Te),dt=M.getFromId(ke,Le),xt="";Te!=="paper"&&!rt.autorange&&(xt+=Te),Le!=="paper"&&!dt.autorange&&(xt+=Le),i.setClipUrl(Ee,xt?"clip"+ke._fullLayout._uid+xt:null,ke)}}function m(y,f,P){return y.replace(h.segmentRE,function(L){var z=0,F=L.charAt(0),B=h.paramIsX[F],O=h.paramIsY[F],I=h.numParams[F],N=L.substr(1).replace(h.paramRE,function(U){return z>=I||(B[z]?U=f(U):O[z]&&(U=P(U)),z++),U});return F+N})}function b(y,f){if(_(y)){var P=f.node(),L=+P.getAttribute("data-index");if(L>=0){if(L===y._fullLayout._activeShapeIndex){d(y);return}y._fullLayout._activeShapeIndex=L,y._fullLayout._deactivateShape=d,T(y)}}}function d(y){if(_(y)){var f=y._fullLayout._activeShapeIndex;f>=0&&(o(y),delete y._fullLayout._activeShapeIndex,T(y))}}function u(y){if(_(y)){o(y);var f=y._fullLayout._activeShapeIndex,P=(y.layout||{}).shapes||[];if(f1?(se=["toggleHover"],he=["resetViews"]):u?(ue=["zoomInGeo","zoomOutGeo"],se=["hoverClosestGeo"],he=["resetGeo"]):d?(se=["hoverClosest3d"],he=["resetCameraDefault3d","resetCameraLastSave3d"]):L?(ue=["zoomInMapbox","zoomOutMapbox"],se=["toggleHover"],he=["resetViewMapbox"]):z?(ue=["zoomInMap","zoomOutMap"],se=["toggleHover"],he=["resetViewMap"]):y?se=["hoverClosestPie"]:O?(se=["hoverClosestCartesian","hoverCompareCartesian"],he=["resetViewSankey"]):se=["toggleHover"],b&&se.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(s(T)||N)&&(se=[]),b&&!I&&(ue=["zoomIn2d","zoomOut2d","autoScale2d"],he[0]!=="resetViews"&&(he=["resetScale2d"])),d?G=["zoom3d","pan3d","orbitRotation","tableRotation"]:b&&!I||P?G=["zoom2d","pan2d"]:L||z||u?G=["pan2d"]:F&&(G=["zoom2d"]),n(T)&&G.push("select2d","lasso2d");var $=[],J=function(j){$.indexOf(j)===-1&&se.indexOf(j)!==-1&&$.push(j)};if(Array.isArray(E)){for(var Z=[],re=0;rew?T.substr(w):l.substr(_))+S}function c(v,p){for(var T=p._size,l=T.h/T.w,_={},w=Object.keys(v),S=0;St*P&&!B)){for(w=0;wG&&iese&&(se=ie);var be=(se-ue)/(2*he);u/=be,ue=m.l2r(ue),se=m.l2r(se),m.range=m._input.range=U=O[1]||W[1]<=O[0])&&Q[0]I[0])return!0}return!1}function S(O){var I=O._fullLayout,N=I._size,U=N.p,W=i.list(O,"",!0),Q,ue,se,he,G,$;if(I._paperdiv.style({width:O._context.responsive&&I.autosize&&!O._context._hasZeroWidth&&!O.layout.width?"100%":I.width+"px",height:O._context.responsive&&I.autosize&&!O._context._hasZeroHeight&&!O.layout.height?"100%":I.height+"px"}).selectAll(".main-svg").call(r.setSize,I.width,I.height),O._context.setBackground(O,I.paper_bgcolor),X.drawMainTitle(O),a.manage(O),!I._has("cartesian"))return x.previousPromises(O);function J(Ne,Ee,Ve){var ke=Ne._lw/2;if(Ne._id.charAt(0)==="x"){if(Ee){if(Ve==="top")return Ee._offset-U-ke}else return N.t+N.h*(1-(Ne.position||0))+ke%1;return Ee._offset+Ee._length+U+ke}if(Ee){if(Ve==="right")return Ee._offset+Ee._length+U+ke}else return N.l+N.w*(Ne.position||0)+ke%1;return Ee._offset-U-ke}for(Q=0;Q0){f(O,Q,G,he),se.attr({x:ue,y:Q,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,Q);var $=(I.text.match(M.BR_TAG_ALL)||[]).length;if($){var J=n.LINE_SPACING*$+n.MID_SHIFT;I.y===0&&(J=-J),se.selectAll(".line").each(function(){var ee=+this.getAttribute("dy").slice(0,-2)-J+"em";this.setAttribute("dy",ee)})}var Z=H.selectAll(".gtitle-subtitle");if(Z.node()){var re=se.node().getBBox(),ne=re.y+re.height,j=ne+o.SUBTITLE_PADDING_EM*I.subtitle.font.size;Z.attr({x:ue,y:j,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,j)}}}};function d(O,I,N,U,W){var Q=I.yref==="paper"?O._fullLayout._size.h:O._fullLayout.height,ue=A.isTopAnchor(I)?U:U-W,se=N==="b"?Q-ue:ue;return A.isTopAnchor(I)&&N==="t"||A.isBottomAnchor(I)&&N==="b"?!1:se.5?"t":"b",ue=O._fullLayout.margin[Q],se=0;return I.yref==="paper"?se=N+I.pad.t+I.pad.b:I.yref==="container"&&(se=u(Q,U,W,O._fullLayout.height,N)+I.pad.t+I.pad.b),se>ue?se:0}function f(O,I,N,U){var W="title.automargin",Q=O._fullLayout.title,ue=Q.y>.5?"t":"b",se={x:Q.x,y:Q.y,t:0,b:0},he={};Q.yref==="paper"&&d(O,Q,ue,I,U)?se[ue]=N:Q.yref==="container"&&(he[ue]=N,O._fullLayout._reservedMargin[W]=he),x.allowAutoMargin(O,W),x.autoMargin(O,W,se)}function P(O,I){var N=O.title,U=O._size,W=0;switch(I===p?W=N.pad.l:I===l&&(W=-N.pad.r),N.xref){case"paper":return U.l+U.w*N.x+W;case"container":default:return O.width*N.x+W}}function L(O,I){var N=O.title,U=O._size,W=0;if(I==="0em"||!I?W=-N.pad.b:I===n.CAP_SHIFT+"em"&&(W=N.pad.t),N.y==="auto")return U.t/2;switch(N.yref){case"paper":return U.t+U.h-U.h*N.y+W;case"container":default:return O.height-O.height*N.y+W}}function z(O){return O==="top"?n.CAP_SHIFT+.3+"em":O==="bottom"?"-0.3em":n.MID_SHIFT+"em"}function F(O){var I=O.title,N=T;return A.isRightAnchor(I)?N=l:A.isLeftAnchor(I)&&(N=p),N}function B(O){var I=O.title,N="0em";return A.isTopAnchor(I)?N=n.CAP_SHIFT+"em":A.isMiddleAnchor(I)&&(N=n.MID_SHIFT+"em"),N}X.doTraceStyle=function(O){var I=O.calcdata,N=[],U;for(U=0;U=0;F--){var B=E.append("path").attr(b).style("opacity",F?.1:d).call(M.stroke,y).call(M.fill,u).call(e.dashLine,F?"solid":P,F?4+f:f);if(s(B,p,_),L){var O=t(p.layout,"selections",_);B.style({cursor:"move"});var I={element:B.node(),plotinfo:w,gd:p,editHelpers:O,isActiveSelection:!0},N=g(m,p);x(N,B,I)}else B.style("pointer-events",F?"all":"none");z[F]=B}var U=z[0],W=z[1];W.node().addEventListener("click",function(){return c(p,U)})}}function s(p,T,l){var _=l.xref+l.yref;e.setClipUrl(p,"clip"+T._fullLayout._uid+_,T)}function c(p,T){if(i(p)){var l=T.node(),_=+l.getAttribute("data-index");if(_>=0){if(_===p._fullLayout._activeSelectionIndex){v(p);return}p._fullLayout._activeSelectionIndex=_,p._fullLayout._deactivateSelection=v,a(p)}}}function h(p){if(i(p)){var T=p._fullLayout.selections.length-1;p._fullLayout._activeSelectionIndex=T,p._fullLayout._deactivateSelection=v,a(p)}}function v(p){if(i(p)){var T=p._fullLayout._activeSelectionIndex;T>=0&&(A(p),delete p._fullLayout._activeSelectionIndex,a(p))}}}}),xO=Ye({"node_modules/polybooljs/lib/build-log.js"(X,H){function g(){var x,A=0,M=!1;function e(t,r){return x.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),x}return x={list:[],segmentId:function(){return A++},checkIntersection:function(t,r){return e("check",{seg1:t,seg2:r})},segmentChop:function(t,r){return e("div_seg",{seg:t,pt:r}),e("chop",{seg:t,pt:r})},statusRemove:function(t){return e("pop_seg",{seg:t})},segmentUpdate:function(t){return e("seg_update",{seg:t})},segmentNew:function(t,r){return e("new_seg",{seg:t,primary:r})},segmentRemove:function(t){return e("rem_seg",{seg:t})},tempStatus:function(t,r,o){return e("temp_status",{seg:t,above:r,below:o})},rewind:function(t){return e("rewind",{seg:t})},status:function(t,r,o){return e("status",{seg:t,above:r,below:o})},vert:function(t){return t===M?x:(M=t,e("vert",{x:t}))},log:function(t){return typeof t!="string"&&(t=JSON.stringify(t,!1," ")),e("log",{txt:t})},reset:function(){return e("reset")},selected:function(t){return e("selected",{segs:t})},chainStart:function(t){return e("chain_start",{seg:t})},chainRemoveHead:function(t,r){return e("chain_rem_head",{index:t,pt:r})},chainRemoveTail:function(t,r){return e("chain_rem_tail",{index:t,pt:r})},chainNew:function(t,r){return e("chain_new",{pt1:t,pt2:r})},chainMatch:function(t){return e("chain_match",{index:t})},chainClose:function(t){return e("chain_close",{index:t})},chainAddHead:function(t,r){return e("chain_add_head",{index:t,pt:r})},chainAddTail:function(t,r){return e("chain_add_tail",{index:t,pt:r})},chainConnect:function(t,r){return e("chain_con",{index1:t,index2:r})},chainReverse:function(t){return e("chain_rev",{index:t})},chainJoin:function(t,r){return e("chain_join",{index1:t,index2:r})},done:function(){return e("done")}},x}H.exports=g}}),bO=Ye({"node_modules/polybooljs/lib/epsilon.js"(X,H){function g(x){typeof x!="number"&&(x=1e-10);var A={epsilon:function(M){return typeof M=="number"&&(x=M),x},pointAboveOrOnLine:function(M,e,t){var r=e[0],o=e[1],a=t[0],i=t[1],n=M[0],s=M[1];return(a-r)*(s-o)-(i-o)*(n-r)>=-x},pointBetween:function(M,e,t){var r=M[1]-e[1],o=t[0]-e[0],a=M[0]-e[0],i=t[1]-e[1],n=a*o+r*i;if(n-x)},pointsSameX:function(M,e){return Math.abs(M[0]-e[0])x!=a-r>x&&(o-s)*(r-c)/(a-c)+s-t>x&&(i=!i),o=s,a=c}return i}};return A}H.exports=g}}),wO=Ye({"node_modules/polybooljs/lib/linked-list.js"(X,H){var g={create:function(){var x={root:{root:!0,next:null},exists:function(A){return!(A===null||A===x.root)},isEmpty:function(){return x.root.next===null},getHead:function(){return x.root.next},insertBefore:function(A,M){for(var e=x.root,t=x.root.next;t!==null;){if(M(t)){A.prev=t.prev,A.next=t,t.prev.next=A,t.prev=A;return}e=t,t=t.next}e.next=A,A.prev=e,A.next=null},findTransition:function(A){for(var M=x.root,e=x.root.next;e!==null&&!A(e);)M=e,e=e.next;return{before:M===x.root?null:M,after:e,insert:function(t){return t.prev=M,t.next=e,M.next=t,e!==null&&(e.prev=t),t}}}};return x},node:function(x){return x.prev=null,x.next=null,x.remove=function(){x.prev.next=x.next,x.next&&(x.next.prev=x.prev),x.prev=null,x.next=null},x}};H.exports=g}}),TO=Ye({"node_modules/polybooljs/lib/intersecter.js"(X,H){var g=wO();function x(A,M,e){function t(T,l){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:null,below:null},otherFill:null}}function r(T,l,_){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:_.myFill.above,below:_.myFill.below},otherFill:null}}var o=g.create();function a(T,l,_,w,S,E){var m=M.pointsCompare(l,S);return m!==0?m:M.pointsSame(_,E)?0:T!==w?T?1:-1:M.pointAboveOrOnLine(_,w?S:E,w?E:S)?1:-1}function i(T,l){o.insertBefore(T,function(_){var w=a(T.isStart,T.pt,l,_.isStart,_.pt,_.other.pt);return w<0})}function n(T,l){var _=g.node({isStart:!0,pt:T.start,seg:T,primary:l,other:null,status:null});return i(_,T.end),_}function s(T,l,_){var w=g.node({isStart:!1,pt:l.end,seg:l,primary:_,other:T,status:null});T.other=w,i(w,T.pt)}function c(T,l){var _=n(T,l);return s(_,T,l),_}function h(T,l){e&&e.segmentChop(T.seg,l),T.other.remove(),T.seg.end=l,T.other.pt=l,i(T.other,T.pt)}function v(T,l){var _=r(l,T.seg.end,T.seg);return h(T,l),c(_,T.primary)}function p(T,l){var _=g.create();function w(O,I){var N=O.seg.start,U=O.seg.end,W=I.seg.start,Q=I.seg.end;return M.pointsCollinear(N,W,Q)?M.pointsCollinear(U,W,Q)||M.pointAboveOrOnLine(U,W,Q)?1:-1:M.pointAboveOrOnLine(N,W,Q)?1:-1}function S(O){return _.findTransition(function(I){var N=w(O,I.ev);return N>0})}function E(O,I){var N=O.seg,U=I.seg,W=N.start,Q=N.end,ue=U.start,se=U.end;e&&e.checkIntersection(N,U);var he=M.linesIntersect(W,Q,ue,se);if(he===!1){if(!M.pointsCollinear(W,Q,ue)||M.pointsSame(W,se)||M.pointsSame(Q,ue))return!1;var G=M.pointsSame(W,ue),$=M.pointsSame(Q,se);if(G&&$)return I;var J=!G&&M.pointBetween(W,ue,se),Z=!$&&M.pointBetween(Q,ue,se);if(G)return Z?v(I,Q):v(O,se),I;J&&($||(Z?v(I,Q):v(O,se)),v(I,W))}else he.alongA===0&&(he.alongB===-1?v(O,ue):he.alongB===0?v(O,he.pt):he.alongB===1&&v(O,se)),he.alongB===0&&(he.alongA===-1?v(I,W):he.alongA===0?v(I,he.pt):he.alongA===1&&v(I,Q));return!1}for(var m=[];!o.isEmpty();){var b=o.getHead();if(e&&e.vert(b.pt[0]),b.isStart){let O=function(){if(y){var I=E(b,y);if(I)return I}return f?E(b,f):!1};var d=O;e&&e.segmentNew(b.seg,b.primary);var u=S(b),y=u.before?u.before.ev:null,f=u.after?u.after.ev:null;e&&e.tempStatus(b.seg,y?y.seg:!1,f?f.seg:!1);var P=O();if(P){if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,L&&(P.seg.myFill.above=!P.seg.myFill.above)}else P.seg.otherFill=b.seg.myFill;e&&e.segmentUpdate(P.seg),b.other.remove(),b.remove()}if(o.getHead()!==b){e&&e.rewind(b.seg);continue}if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,f?b.seg.myFill.below=f.seg.myFill.above:b.seg.myFill.below=T,L?b.seg.myFill.above=!b.seg.myFill.below:b.seg.myFill.above=b.seg.myFill.below}else if(b.seg.otherFill===null){var z;f?b.primary===f.primary?z=f.seg.otherFill.above:z=f.seg.myFill.above:z=b.primary?l:T,b.seg.otherFill={above:z,below:z}}e&&e.status(b.seg,y?y.seg:!1,f?f.seg:!1),b.other.status=u.insert(g.node({ev:b}))}else{var F=b.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(_.exists(F.prev)&&_.exists(F.next)&&E(F.prev.ev,F.next.ev),e&&e.statusRemove(F.ev.seg),F.remove(),!b.primary){var B=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=B}m.push(b.seg)}o.getHead().remove()}return e&&e.done(),m}return A?{addRegion:function(T){for(var l,_=T[T.length-1],w=0;wr!=v>r&&t<(h-s)*(r-c)/(v-c)+s;p&&(o=!o)}return o}}}),C_=Ye({"src/lib/polygon.js"(X,H){"use strict";var g=h2().dot,x=ks().BADNUM,A=H.exports={};A.tester=function(e){var t=e.slice(),r=t[0][0],o=r,a=t[0][1],i=a,n;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),n=1;no||S===x||Si||_&&c(l))}function v(l,_){var w=l[0],S=l[1];if(w===x||wo||S===x||Si)return!1;var E=t.length,m=t[0][0],b=t[0][1],d=0,u,y,f,P,L;for(u=1;uMath.max(y,m)||S>Math.max(f,b)))if(Sn||Math.abs(g(v,c))>o)return!0;return!1},A.filter=function(e,t){var r=[e[0]],o=0,a=0;function i(s){e.push(s);var c=r.length,h=o;r.splice(a+1);for(var v=h+1;v1){var n=e.pop();i(n)}return{addPt:i,raw:e,filtered:r}}}}),CO=Ye({"src/components/selections/constants.js"(X,H){"use strict";H.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),LO=Ye({"src/components/selections/select.js"(X,H){"use strict";var g=EO(),x=kO(),A=Hn(),M=Bo().dashStyle,e=Fn(),t=Lc(),r=Qp().makeEventData,o=Jd(),a=o.freeMode,i=o.rectMode,n=o.drawMode,s=o.openMode,c=o.selectMode,h=rg(),v=E_(),p=S2(),T=Jm().clearOutline,l=tg(),_=l.handleEllipse,w=l.readPaths,S=A2().newShapes,E=_S(),m=MS().activateLastSelection,b=ta(),d=b.sorterAsc,u=C_(),y=m2(),f=Xc().getFromId,P=M_(),L=k_().redrawReglTraces,z=CO(),F=z.MINSELECT,B=u.filter,O=u.tester,I=T2(),N=I.p2r,U=I.axValue,W=I.getTransform;function Q(Fe){return Fe.subplot!==void 0}function ue(Fe,Ke,Ne,Ee,Ve){var ke=!Q(Ee),Te=a(Ve),Le=i(Ve),rt=s(Ve),dt=n(Ve),xt=c(Ve),It=Ve==="drawline",Bt=Ve==="drawcircle",Gt=It||Bt,Kt=Ee.gd,sr=Kt._fullLayout,sa=xt&&sr.newselection.mode==="immediate"&&ke,Aa=sr._zoomlayer,La=Ee.element.getBoundingClientRect(),ka=Ee.plotinfo,Ga=W(ka),Ma=Ke-La.left,Ua=Ne-La.top;sr._calcInverseTransform(Kt);var ni=b.apply3DTransform(sr._invTransform)(Ma,Ua);Ma=ni[0],Ua=ni[1];var Wt=sr._invScaleX,zt=sr._invScaleY,Vt=Ma,Ut=Ua,xr="M"+Ma+","+Ua,Zr=Ee.xaxes[0],pa=Ee.yaxes[0],Xr=Zr._length,Ea=pa._length,Fa=Fe.altKey&&!(n(Ve)&&rt),qa,ya,$a,mt,gt,Er,kr;Z(Fe,Kt,Ee),Te&&(qa=B([[Ma,Ua]],z.BENDPX));var br=Aa.selectAll("path.select-outline-"+ka.id).data([1]),Tr=dt?sr.newshape:sr.newselection;dt&&(Ee.hasText=Tr.label.text||Tr.label.texttemplate);var Mr=dt&&!rt?Tr.fillcolor:"rgba(0,0,0,0)",Fr=Tr.line.color||(ke?e.contrast(Kt._fullLayout.plot_bgcolor):"#7f7f7f");br.enter().append("path").attr("class","select-outline select-outline-"+ka.id).style({opacity:dt?Tr.opacity/2:1,"stroke-dasharray":M(Tr.line.dash,Tr.line.width),"stroke-width":Tr.line.width+"px","shape-rendering":"crispEdges"}).call(e.stroke,Fr).call(e.fill,Mr).attr("fill-rule","evenodd").classed("cursor-move",!!dt).attr("transform",Ga).attr("d",xr+"Z");var Lr=Aa.append("path").attr("class","zoombox-corners").style({fill:e.background,stroke:e.defaultLine,"stroke-width":1}).attr("transform",Ga).attr("d","M0,0Z");if(dt&&Ee.hasText){var Jr=Aa.select(".label-temp");Jr.empty()&&(Jr=Aa.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var oa=sr._uid+z.SELECTID,ca=[],kt=ie(Kt,Ee.xaxes,Ee.yaxes,Ee.subplot);sa&&!Fe.shiftKey&&(Ee._clearSubplotSelections=function(){if(ke){var mr=Zr._id,$r=pa._id;nt(Kt,mr,$r,kt);for(var ma=(Kt.layout||{}).selections||[],Ba=[],Ca=!1,da=0;da=0){Kt._fullLayout._deactivateShape(Kt);return}if(!dt){var ma=sr.clickmode;y.done(oa).then(function(){if(y.clear(oa),mr===2){for(br.remove(),gt=0;gt-1&&se($r,Kt,Ee.xaxes,Ee.yaxes,Ee.subplot,Ee,br),ma==="event"&&_r(Kt,void 0);t.click(Kt,$r,ka.id)}).catch(b.error)}},Ee.doneFn=function(){Lr.remove(),y.done(oa).then(function(){y.clear(oa),!sa&&mt&&Ee.selectionDefs&&(mt.subtract=Fa,Ee.selectionDefs.push(mt),Ee.mergedPolygons.length=0,[].push.apply(Ee.mergedPolygons,$a)),(sa||dt)&&j(Ee,sa),Ee.doneFnCompleted&&Ee.doneFnCompleted(ca),xt&&_r(Kt,kr)}).catch(b.error)}}function se(Fe,Ke,Ne,Ee,Ve,ke,Te){var Le=Ke._hoverdata,rt=Ke._fullLayout,dt=rt.clickmode,xt=dt.indexOf("event")>-1,It=[],Bt,Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma;if(be(Le)){Z(Fe,Ke,ke),Bt=ie(Ke,Ne,Ee,Ve);var Ua=Ae(Le,Bt),ni=Ua.pointNumbers.length>0;if(ni?Ie(Bt,Ua):Ze(Bt)&&(La=Be(Ua))){for(Te&&Te.remove(),Ma=0;Ma=0}function ne(Fe){return Fe._fullLayout._activeSelectionIndex>=0}function j(Fe,Ke){var Ne=Fe.dragmode,Ee=Fe.plotinfo,Ve=Fe.gd;re(Ve)&&Ve._fullLayout._deactivateShape(Ve),ne(Ve)&&Ve._fullLayout._deactivateSelection(Ve);var ke=Ve._fullLayout,Te=ke._zoomlayer,Le=n(Ne),rt=c(Ne);if(Le||rt){var dt=Te.selectAll(".select-outline-"+Ee.id);if(dt&&Ve._fullLayout._outlining){var xt;Le&&(xt=S(dt,Fe)),xt&&A.call("_guiRelayout",Ve,{shapes:xt});var It;rt&&!Q(Fe)&&(It=E(dt,Fe)),It&&(Ve._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Ve,{selections:It}).then(function(){Ke&&m(Ve)})),Ve._fullLayout._outlining=!1}}Ee.selection={},Ee.selection.selectionDefs=Fe.selectionDefs=[],Ee.selection.mergedPolygons=Fe.mergedPolygons=[]}function ee(Fe){return Fe._id}function ie(Fe,Ke,Ne,Ee){if(!Fe.calcdata)return[];var Ve=[],ke=Ke.map(ee),Te=Ne.map(ee),Le,rt,dt;for(dt=0;dt0,ke=Ve?Ee[0]:Ne;return Ke.selectedpoints?Ke.selectedpoints.indexOf(ke)>-1:!1}function Ie(Fe,Ke){var Ne=[],Ee,Ve,ke,Te;for(Te=0;Te0&&Ne.push(Ee);if(Ne.length===1&&(ke=Ne[0]===Ke.searchInfo,ke&&(Ve=Ke.searchInfo.cd[0].trace,Ve.selectedpoints.length===Ke.pointNumbers.length))){for(Te=0;Te1||(Ke+=Ee.selectedpoints.length,Ke>1)))return!1;return Ke===1}function at(Fe,Ke,Ne){var Ee;for(Ee=0;Ee-1&&Ke;if(!Te&&Ke){var mr=Ct(Fe,!0);if(mr.length){var $r=mr[0].xref,ma=mr[0].yref;if($r&&ma){var Ba=jt(mr),Ca=ar([f(Fe,$r,"x"),f(Fe,ma,"y")]);Ca(ca,Ba)}}Fe._fullLayout._noEmitSelectedAtStart?Fe._fullLayout._noEmitSelectedAtStart=!1:ir&&_r(Fe,ca),Bt._reselect=!1}if(!Te&&Bt._deselect){var da=Bt._deselect;Le=da.xref,rt=da.yref,tt(Le,rt,xt)||nt(Fe,Le,rt,Ee),ir&&(ca.points.length?_r(Fe,ca):yt(Fe)),Bt._deselect=!1}return{eventData:ca,selectionTesters:Ne}}function ze(Fe){var Ke=Fe.calcdata;if(Ke)for(var Ne=0;Ne=0){Mr._fullLayout._deactivateShape(Mr);return}var Fr=Mr._fullLayout.clickmode;if($(Mr),br===2&&!Me&&ya(),lt)Fr.indexOf("select")>-1&&d(Tr,Mr,nt,Qe,be.id,xt),Fr.indexOf("event")>-1&&n.click(Mr,Tr,be.id);else if(br===1&&Me){var Lr=at?ce:ge,Jr=at==="s"||it==="w"?0:1,oa=Lr._name+".range["+Jr+"]",ca=I(Lr,Jr),kt="left",ir="middle";if(Lr.fixedrange)return;at?(ir=at==="n"?"top":"bottom",Lr.side==="right"&&(kt="right")):it==="e"&&(kt="right"),Mr._context.showAxisRangeEntryBoxes&&g.select(dt).call(o.makeEditable,{gd:Mr,immediate:!0,background:Mr._fullLayout.paper_bgcolor,text:String(ca),fill:Lr.tickfont?Lr.tickfont.color:"#444",horizontalAlign:kt,verticalAlign:ir}).on("edit",function(mr){var $r=Lr.d2r(mr);$r!==void 0&&t.call("_guiRelayout",Mr,oa,$r)})}}h.init(xt);var Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma,Ua;function ni(br,Tr,Mr){var Fr=dt.getBoundingClientRect();Gt=Tr-Fr.left,Kt=Mr-Fr.top,fe._fullLayout._calcInverseTransform(fe);var Lr=x.apply3DTransform(fe._fullLayout._invTransform)(Gt,Kt);Gt=Lr[0],Kt=Lr[1],sr={l:Gt,r:Gt,w:0,t:Kt,b:Kt,h:0},sa=fe._hmpixcount?fe._hmlumcount/fe._hmpixcount:M(fe._fullLayout.plot_bgcolor).getLuminance(),Aa="M0,0H"+Ot+"V"+jt+"H0V0",La=!1,ka="xy",Ua=!1,Ga=ue(et,sa,Ct,St,Aa),Ma=se(et,Ct,St)}function Wt(br,Tr){if(fe._transitioningWithDuration)return!1;var Mr=Math.max(0,Math.min(Ot,ke*br+Gt)),Fr=Math.max(0,Math.min(jt,Te*Tr+Kt)),Lr=Math.abs(Mr-Gt),Jr=Math.abs(Fr-Kt);sr.l=Math.min(Gt,Mr),sr.r=Math.max(Gt,Mr),sr.t=Math.min(Kt,Fr),sr.b=Math.max(Kt,Fr);function oa(){ka="",sr.r=sr.l,sr.t=sr.b,Ma.attr("d","M0,0Z")}if(ur.isSubplotConstrained)Lr>P||Jr>P?(ka="xy",Lr/Ot>Jr/jt?(Jr=Lr*jt/Ot,Kt>Fr?sr.t=Kt-Jr:sr.b=Kt+Jr):(Lr=Jr*Ot/jt,Gt>Mr?sr.l=Gt-Lr:sr.r=Gt+Lr),Ma.attr("d",ne(sr))):oa();else if(ar.isSubplotConstrained)if(Lr>P||Jr>P){ka="xy";var ca=Math.min(sr.l/Ot,(jt-sr.b)/jt),kt=Math.max(sr.r/Ot,(jt-sr.t)/jt);sr.l=ca*Ot,sr.r=kt*Ot,sr.b=(1-ca)*jt,sr.t=(1-kt)*jt,Ma.attr("d",ne(sr))}else oa();else!vr||Jr0){var mr;if(ar.isSubplotConstrained||!Cr&&vr.length===1){for(mr=0;mr1&&(oa.maxallowed!==void 0&&yt===(oa.range[0]1&&(ca.maxallowed!==void 0&&Fe===(ca.range[0]=0?Math.min(fe,.9):1/(1/Math.max(fe,-.3)+3.222))}function Q(fe,be,Ae){return fe?fe==="nsew"?Ae?"":be==="pan"?"move":"crosshair":fe.toLowerCase()+"-resize":"pointer"}function ue(fe,be,Ae,Be,Ie){return fe.append("path").attr("class","zoombox").style({fill:be>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",r(Ae,Be)).attr("d",Ie+"Z")}function se(fe,be,Ae){return fe.append("path").attr("class","zoombox-corners").style({fill:a.background,stroke:a.defaultLine,"stroke-width":1,opacity:0}).attr("transform",r(be,Ae)).attr("d","M0,0Z")}function he(fe,be,Ae,Be,Ie,Ze){fe.attr("d",Be+"M"+Ae.l+","+Ae.t+"v"+Ae.h+"h"+Ae.w+"v-"+Ae.h+"h-"+Ae.w+"Z"),G(fe,be,Ie,Ze)}function G(fe,be,Ae,Be){Ae||(fe.transition().style("fill",Be>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),be.transition().style("opacity",1).duration(200))}function $(fe){g.select(fe).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function J(fe){L&&fe.data&&fe._context.showTips&&(x.notifier(x._(fe,"Double-click to zoom back out"),"long"),L=!1)}function Z(fe,be){return"M"+(fe.l-.5)+","+(be-P-.5)+"h-3v"+(2*P+1)+"h3ZM"+(fe.r+.5)+","+(be-P-.5)+"h3v"+(2*P+1)+"h-3Z"}function re(fe,be){return"M"+(be-P-.5)+","+(fe.t-.5)+"v-3h"+(2*P+1)+"v3ZM"+(be-P-.5)+","+(fe.b+.5)+"v3h"+(2*P+1)+"v-3Z"}function ne(fe){var be=Math.floor(Math.min(fe.b-fe.t,fe.r-fe.l,P)/2);return"M"+(fe.l-3.5)+","+(fe.t-.5+be)+"h3v"+-be+"h"+be+"v-3h-"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.t-.5+be)+"h-3v"+-be+"h"+-be+"v-3h"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.b+.5-be)+"h-3v"+be+"h"+-be+"v3h"+(be+3)+"ZM"+(fe.l-3.5)+","+(fe.b+.5-be)+"h3v"+be+"h"+be+"v3h-"+(be+3)+"Z"}function j(fe,be,Ae,Be,Ie){for(var Ze=!1,at={},it={},et,lt,Me,ge,ce=(Ie||{}).xaHash,ze=(Ie||{}).yaHash,tt=0;tt1&&x.warn("Full array edits are incompatible with other edits",c);var w=i[""][""];if(t(w))a.set(null);else if(Array.isArray(w))a.set(w);else return x.warn("Unrecognized full array edit value",c,w),!0;return T?!1:(h(l,_),v(o),!0)}var S=Object.keys(i).map(Number).sort(A),E=a.get(),m=E||[],b=s(_,c).get(),d=[],u=-1,y=m.length,f,P,L,z,F,B,O,I;for(f=0;fm.length-(O?0:1)){x.warn("index out of range",c,L);continue}if(B!==void 0)F.length>1&&x.warn("Insertion & removal are incompatible with edits to the same index.",c,L),t(B)?d.push(L):O?(B==="add"&&(B={}),m.splice(L,0,B),b&&b.splice(L,0,{})):x.warn("Unrecognized full object edit value",c,L,B),u===-1&&(u=L);else for(P=0;P=0;f--)m.splice(d[f],1),b&&b.splice(d[f],1);if(m.length?E||a.set(m):a.set(null),T)return!1;if(h(l,_),p!==g){var N;if(u===-1)N=S;else{for(y=Math.max(m.length,y),N=[],f=0;f=u));f++)N.push(L);for(f=u;f0&&A.log("Clearing previous rejected promises from queue."),l._promises=[]},X.cleanLayout=function(l){var _,w;l||(l={}),l.xaxis1&&(l.xaxis||(l.xaxis=l.xaxis1),delete l.xaxis1),l.yaxis1&&(l.yaxis||(l.yaxis=l.yaxis1),delete l.yaxis1),l.scene1&&(l.scene||(l.scene=l.scene1),delete l.scene1);var S=(M.subplotsRegistry.cartesian||{}).attrRegex,E=(M.subplotsRegistry.polar||{}).attrRegex,m=(M.subplotsRegistry.ternary||{}).attrRegex,b=(M.subplotsRegistry.gl3d||{}).attrRegex,d=Object.keys(l);for(_=0;_3?(O.x=1.02,O.xanchor="left"):O.x<-2&&(O.x=-.02,O.xanchor="right"),O.y>3?(O.y=1.02,O.yanchor="bottom"):O.y<-2&&(O.y=-.02,O.yanchor="top")),l.dragmode==="rotate"&&(l.dragmode="orbit"),t.clean(l),l.template&&l.template.layout&&X.cleanLayout(l.template.layout),l};function i(l,_){var w=l[_],S=_.charAt(0);w&&w!=="paper"&&(l[_]=r(w,S,!0))}X.cleanData=function(l){for(var _=0;_0)return l.substr(0,_)}X.hasParent=function(l,_){for(var w=p(_);w;){if(w in l)return!0;w=p(w)}return!1};var T=["x","y","z"];X.clearAxisTypes=function(l,_,w){for(var S=0;S<_.length;S++)for(var E=l._fullData[S],m=0;m<3;m++){var b=o(l,E,T[m]);if(b&&b.type!=="log"){var d=b._name,u=b._id.substr(1);if(u.substr(0,5)==="scene"){if(w[u]!==void 0)continue;d=u+"."+d}var y=d+".type";w[d]===void 0&&w[y]===void 0&&A.nestedProperty(l.layout,y).set(null)}}}}}),E2=Ye({"src/plot_api/plot_api.js"(X){"use strict";var H=_n(),g=jo(),x=aS(),A=ta(),M=A.nestedProperty,e=$y(),t=QF(),r=Hn(),o=Qy(),a=Gu(),i=Co(),n=fS(),s=Vh(),c=Bo(),h=Fn(),v=LS().initInteractions,p=vd(),T=ff().clearOutline,l=Gg().dfltConfig,_=DO(),w=zO(),S=k_(),E=Ou(),m=wh().AX_NAME_PATTERN,b=0,d=5;function u(Ee,Ve,ke,Te){var Le;if(Ee=A.getGraphDiv(Ee),e.init(Ee),A.isPlainObject(Ve)){var rt=Ve;Ve=rt.data,ke=rt.layout,Te=rt.config,Le=rt.frames}var dt=e.triggerHandler(Ee,"plotly_beforeplot",[Ve,ke,Te]);if(dt===!1)return Promise.reject();!Ve&&!ke&&!A.isPlotDiv(Ee)&&A.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",Ee);function xt(){if(Le)return X.addFrames(Ee,Le)}z(Ee,Te),ke||(ke={}),H.select(Ee).classed("js-plotly-plot",!0),c.makeTester(),Array.isArray(Ee._promises)||(Ee._promises=[]);var It=(Ee.data||[]).length===0&&Array.isArray(Ve);Array.isArray(Ve)&&(w.cleanData(Ve),It?Ee.data=Ve:Ee.data.push.apply(Ee.data,Ve),Ee.empty=!1),(!Ee.layout||It)&&(Ee.layout=w.cleanLayout(ke)),a.supplyDefaults(Ee);var Bt=Ee._fullLayout,Gt=Bt._has("cartesian");Bt._replotting=!0,(It||Bt._shouldCreateBgLayer)&&(Ne(Ee),Bt._shouldCreateBgLayer&&delete Bt._shouldCreateBgLayer),c.initGradients(Ee),c.initPatterns(Ee),It&&i.saveShowSpikeInitial(Ee);var Kt=!Ee.calcdata||Ee.calcdata.length!==(Ee._fullData||[]).length;Kt&&a.doCalcdata(Ee);for(var sr=0;sr=Ee.data.length||Le<-Ee.data.length)throw new Error(ke+" must be valid indices for gd.data.");if(Ve.indexOf(Le,Te+1)>-1||Le>=0&&Ve.indexOf(-Ee.data.length+Le)>-1||Le<0&&Ve.indexOf(Ee.data.length+Le)>-1)throw new Error("each index in "+ke+" must be unique.")}}function N(Ee,Ve,ke){if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"currentIndices"),typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&I(Ee,ke,"newIndices"),typeof ke<"u"&&Ve.length!==ke.length)throw new Error("current and new indices must be of equal length.")}function U(Ee,Ve,ke){var Te,Le;if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("traces must be defined.");for(Array.isArray(Ve)||(Ve=[Ve]),Te=0;Te"u")throw new Error("indices must be an integer or array of integers");I(Ee,ke,"indices");for(var rt in Ve){if(!Array.isArray(Ve[rt])||Ve[rt].length!==ke.length)throw new Error("attribute "+rt+" must be an array of length equal to indices array length");if(Le&&(!(rt in Te)||!Array.isArray(Te[rt])||Te[rt].length!==Ve[rt].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}function Q(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te),rt=[],dt,xt,It,Bt,Gt;Array.isArray(ke)||(ke=[ke]),ke=O(ke,Ee.data.length-1);for(var Kt in Ve)for(var sr=0;sr=0&&Gt=0&&Gt"u")return Bt=X.redraw(Ee),t.add(Ee,Le,dt,rt,xt),Bt;Array.isArray(ke)||(ke=[ke]);try{N(Ee,Te,ke)}catch(Gt){throw Ee.data.splice(Ee.data.length-Ve.length,Ve.length),Gt}return t.startSequence(Ee),t.add(Ee,Le,dt,rt,xt),Bt=X.moveTraces(Ee,Te,ke),t.stopSequence(Ee),Bt}function J(Ee,Ve){Ee=A.getGraphDiv(Ee);var ke=[],Te=X.addTraces,Le=J,rt=[Ee,ke,Ve],dt=[Ee,Ve],xt,It;if(typeof Ve>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"indices"),Ve=O(Ve,Ee.data.length-1),Ve.sort(A.sorterDes),xt=0;xt"u")for(ke=[],Bt=0;Bt0&&typeof Ut.parts[pa]!="string";)pa--;var Xr=Ut.parts[pa],Ea=Ut.parts[pa-1]+"."+Xr,Fa=Ut.parts.slice(0,pa).join("."),qa=M(Ee.layout,Fa).get(),ya=M(Te,Fa).get(),$a=Ut.get();if(xr!==void 0){Ga[Vt]=xr,Ma[Vt]=Xr==="reverse"?xr:ne($a);var mt=o.getLayoutValObject(Te,Ut.parts);if(mt&&mt.impliedEdits&&xr!==null)for(var gt in mt.impliedEdits)Ua(A.relativeAttr(Vt,gt),mt.impliedEdits[gt]);if(["width","height"].indexOf(Vt)!==-1)if(xr){Ua("autosize",null);var Er=Vt==="height"?"width":"height";Ua(Er,Te[Er])}else Te[Vt]=Ee._initialAutoSize[Vt];else if(Vt==="autosize")Ua("width",xr?null:Te.width),Ua("height",xr?null:Te.height);else if(Ea.match(Ie))zt(Ea),M(Te,Fa+"._inputRange").set(null);else if(Ea.match(Ze)){zt(Ea),M(Te,Fa+"._inputRange").set(null);var kr=M(Te,Fa).get();kr._inputDomain&&(kr._input.domain=kr._inputDomain.slice())}else Ea.match(at)&&M(Te,Fa+"._inputDomain").set(null);if(Xr==="type"){Wt=qa;var br=ya.type==="linear"&&xr==="log",Tr=ya.type==="log"&&xr==="linear";if(br||Tr){if(!Wt||!Wt.range)Ua(Fa+".autorange",!0);else if(ya.autorange)br&&(Wt.range=Wt.range[1]>Wt.range[0]?[1,2]:[2,1]);else{var Mr=Wt.range[0],Fr=Wt.range[1];br?(Mr<=0&&Fr<=0&&Ua(Fa+".autorange",!0),Mr<=0?Mr=Fr/1e6:Fr<=0&&(Fr=Mr/1e6),Ua(Fa+".range[0]",Math.log(Mr)/Math.LN10),Ua(Fa+".range[1]",Math.log(Fr)/Math.LN10)):(Ua(Fa+".range[0]",Math.pow(10,Mr)),Ua(Fa+".range[1]",Math.pow(10,Fr)))}Array.isArray(Te._subplots.polar)&&Te._subplots.polar.length&&Te[Ut.parts[0]]&&Ut.parts[1]==="radialaxis"&&delete Te[Ut.parts[0]]._subplot.viewInitial["radialaxis.range"],r.getComponentMethod("annotations","convertCoords")(Ee,ya,xr,Ua),r.getComponentMethod("images","convertCoords")(Ee,ya,xr,Ua)}else Ua(Fa+".autorange",!0),Ua(Fa+".range",null);M(Te,Fa+"._inputRange").set(null)}else if(Xr.match(m)){var Lr=M(Te,Vt).get(),Jr=(xr||{}).type;(!Jr||Jr==="-")&&(Jr="linear"),r.getComponentMethod("annotations","convertCoords")(Ee,Lr,Jr,Ua),r.getComponentMethod("images","convertCoords")(Ee,Lr,Jr,Ua)}var oa=_.containerArrayMatch(Vt);if(oa){Gt=oa.array,Kt=oa.index;var ca=oa.property,kt=mt||{editType:"calc"};Kt!==""&&ca===""&&(_.isAddVal(xr)?Ma[Vt]=null:_.isRemoveVal(xr)?Ma[Vt]=(M(ke,Gt).get()||[])[Kt]:A.warn("unrecognized full object value",Ve)),E.update(ka,kt),Bt[Gt]||(Bt[Gt]={});var ir=Bt[Gt][Kt];ir||(ir=Bt[Gt][Kt]={}),ir[ca]=xr,delete Ve[Vt]}else Xr==="reverse"?(qa.range?qa.range.reverse():(Ua(Fa+".autorange",!0),qa.range=[1,0]),ya.autorange?ka.calc=!0:ka.plot=!0):(Vt==="dragmode"&&(xr===!1&&$a!==!1||xr!==!1&&$a===!1)||Te._has("scatter-like")&&Te._has("regl")&&Vt==="dragmode"&&(xr==="lasso"||xr==="select")&&!($a==="lasso"||$a==="select")?ka.plot=!0:mt?E.update(ka,mt):ka.calc=!0,Ut.set(xr))}}for(Gt in Bt){var mr=_.applyContainerArrayChanges(Ee,rt(ke,Gt),Bt[Gt],ka,rt);mr||(ka.plot=!0)}for(var $r in ni){Wt=i.getFromId(Ee,$r);var ma=Wt&&Wt._constraintGroup;if(ma){ka.calc=!0;for(var Ba in ma)ni[Ba]||(i.getFromId(Ee,Ba)._constraintShrinkable=!0)}}(et(Ee)||Ve.height||Ve.width)&&(ka.plot=!0);var Ca=Te.shapes;for(Kt=0;Kt1;)if(Te.pop(),ke=M(Ve,Te.join(".")+".uirevision").get(),ke!==void 0)return ke;return Ve.uirevision}function nt(Ee,Ve){for(var ke=0;ke=Le.length?Le[0]:Le[Bt]:Le}function xt(Bt){return Array.isArray(rt)?Bt>=rt.length?rt[0]:rt[Bt]:rt}function It(Bt,Gt){var Kt=0;return function(){if(Bt&&++Kt===Gt)return Bt()}}return new Promise(function(Bt,Gt){function Kt(){if(Te._frameQueue.length!==0){for(;Te._frameQueue.length;){var Xr=Te._frameQueue.pop();Xr.onInterrupt&&Xr.onInterrupt()}Ee.emit("plotly_animationinterrupted",[])}}function sr(Xr){if(Xr.length!==0){for(var Ea=0;EaTe._timeToNext&&Aa()};Xr()}var ka=0;function Ga(Xr){return Array.isArray(Le)?ka>=Le.length?Xr.transitionOpts=Le[ka]:Xr.transitionOpts=Le[0]:Xr.transitionOpts=Le,ka++,Xr}var Ma,Ua,ni=[],Wt=Ve==null,zt=Array.isArray(Ve),Vt=!Wt&&!zt&&A.isPlainObject(Ve);if(Vt)ni.push({type:"object",data:Ga(A.extendFlat({},Ve))});else if(Wt||["string","number"].indexOf(typeof Ve)!==-1)for(Ma=0;Ma0&&ZrZr)&&pa.push(Ua);ni=pa}}ni.length>0?sr(ni):(Ee.emit("plotly_animated"),Bt())})}function _r(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),Ve==null)return Promise.resolve();if(!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var Te,Le,rt,dt,xt=Ee._transitionData._frames,It=Ee._transitionData._frameHash;if(!Array.isArray(Ve))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+Ve);var Bt=xt.length+Ve.length*2,Gt=[],Kt={};for(Te=Ve.length-1;Te>=0;Te--)if(A.isPlainObject(Ve[Te])){var sr=Ve[Te].name,sa=(It[sr]||Kt[sr]||{}).name,Aa=Ve[Te].name,La=It[sa]||Kt[sa];sa&&Aa&&typeof Aa=="number"&&La&&bUt.index?-1:Vt.index=0;Te--){if(Le=Gt[Te].frame,typeof Le.name=="number"&&A.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Le.name)for(;It[Le.name="frame "+Ee._transitionData._counter++];);if(It[Le.name]){for(rt=0;rt=0;ke--)Te=Ve[ke],rt.push({type:"delete",index:Te}),dt.unshift({type:"insert",index:Te,value:Le[Te]});var xt=a.modifyFrames,It=a.modifyFrames,Bt=[Ee,dt],Gt=[Ee,rt];return t&&t.add(Ee,xt,Bt,It,Gt),a.modifyFrames(Ee,rt)}function Fe(Ee){Ee=A.getGraphDiv(Ee);var Ve=Ee._fullLayout||{},ke=Ee._fullData||[];return a.cleanPlot([],{},ke,Ve),a.purge(Ee),e.purge(Ee),Ve._container&&Ve._container.remove(),delete Ee._context,Ee}function Ke(Ee){var Ve=Ee._fullLayout,ke=Ee.getBoundingClientRect();if(!A.equalDomRects(ke,Ve._lastBBox)){var Te=Ve._invTransform=A.inverseTransformMatrix(A.getFullTransformMatrix(Ee));Ve._invScaleX=Math.sqrt(Te[0][0]*Te[0][0]+Te[0][1]*Te[0][1]+Te[0][2]*Te[0][2]),Ve._invScaleY=Math.sqrt(Te[1][0]*Te[1][0]+Te[1][1]*Te[1][1]+Te[1][2]*Te[1][2]),Ve._lastBBox=ke}}function Ne(Ee){var Ve=H.select(Ee),ke=Ee._fullLayout;if(ke._calcInverseTransform=Ke,ke._calcInverseTransform(Ee),ke._container=Ve.selectAll(".plot-container").data([0]),ke._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),ke._paperdiv=ke._container.selectAll(".svg-container").data([0]),ke._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),ke._glcontainer=ke._paperdiv.selectAll(".gl-container").data([{}]),ke._glcontainer.enter().append("div").classed("gl-container",!0),ke._paperdiv.selectAll(".main-svg").remove(),ke._paperdiv.select(".modebar-container").remove(),ke._paper=ke._paperdiv.insert("svg",":first-child").classed("main-svg",!0),ke._toppaper=ke._paperdiv.append("svg").classed("main-svg",!0),ke._modebardiv=ke._paperdiv.append("div"),delete ke._modeBar,ke._hoverpaper=ke._paperdiv.append("svg").classed("main-svg",!0),!ke._uid){var Te={};H.selectAll("defs").each(function(){this.id&&(Te[this.id.split("-")[1]]=1)}),ke._uid=A.randstr(Te)}ke._paperdiv.selectAll(".main-svg").attr(p.svgAttrs),ke._defs=ke._paper.append("defs").attr("id","defs-"+ke._uid),ke._clips=ke._defs.append("g").classed("clips",!0),ke._topdefs=ke._toppaper.append("defs").attr("id","topdefs-"+ke._uid),ke._topclips=ke._topdefs.append("g").classed("clips",!0),ke._bgLayer=ke._paper.append("g").classed("bglayer",!0),ke._draggers=ke._paper.append("g").classed("draglayer",!0);var Le=ke._paper.append("g").classed("layer-below",!0);ke._imageLowerLayer=Le.append("g").classed("imagelayer",!0),ke._shapeLowerLayer=Le.append("g").classed("shapelayer",!0),ke._cartesianlayer=ke._paper.append("g").classed("cartesianlayer",!0),ke._polarlayer=ke._paper.append("g").classed("polarlayer",!0),ke._smithlayer=ke._paper.append("g").classed("smithlayer",!0),ke._ternarylayer=ke._paper.append("g").classed("ternarylayer",!0),ke._geolayer=ke._paper.append("g").classed("geolayer",!0),ke._funnelarealayer=ke._paper.append("g").classed("funnelarealayer",!0),ke._pielayer=ke._paper.append("g").classed("pielayer",!0),ke._iciclelayer=ke._paper.append("g").classed("iciclelayer",!0),ke._treemaplayer=ke._paper.append("g").classed("treemaplayer",!0),ke._sunburstlayer=ke._paper.append("g").classed("sunburstlayer",!0),ke._indicatorlayer=ke._toppaper.append("g").classed("indicatorlayer",!0),ke._glimages=ke._paper.append("g").classed("glimages",!0);var rt=ke._toppaper.append("g").classed("layer-above",!0);ke._imageUpperLayer=rt.append("g").classed("imagelayer",!0),ke._shapeUpperLayer=rt.append("g").classed("shapelayer",!0),ke._selectionLayer=ke._toppaper.append("g").classed("selectionlayer",!0),ke._infolayer=ke._toppaper.append("g").classed("infolayer",!0),ke._menulayer=ke._toppaper.append("g").classed("menulayer",!0),ke._zoomlayer=ke._toppaper.append("g").classed("zoomlayer",!0),ke._hoverlayer=ke._hoverpaper.append("g").classed("hoverlayer",!0),ke._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),Ee.emit("plotly_framework")}X.animate=vr,X.addFrames=_r,X.deleteFrames=yt,X.addTraces=$,X.deleteTraces=J,X.extendTraces=he,X.moveTraces=Z,X.prependTraces=G,X.newPlot=B,X._doPlot=u,X.purge=Fe,X.react=Ot,X.redraw=F,X.relayout=be,X.restyle=re,X.setPlotConfig=f,X.update=lt,X._guiRelayout=Me(be),X._guiRestyle=Me(re),X._guiUpdate=Me(lt),X._storeDirectGUIEdit=ie}}),Xv=Ye({"src/snapshot/helpers.js"(X){"use strict";var H=Hn();X.getDelay=function(A){return A._has&&(A._has("gl3d")||A._has("mapbox")||A._has("map"))?500:0},X.getRedrawFunc=function(A){return function(){H.getComponentMethod("colorbar","draw")(A)}},X.encodeSVG=function(A){return"data:image/svg+xml,"+encodeURIComponent(A)},X.encodeJSON=function(A){return"data:application/json,"+encodeURIComponent(A)};var g=window.URL||window.webkitURL;X.createObjectURL=function(A){return g.createObjectURL(A)},X.revokeObjectURL=function(A){return g.revokeObjectURL(A)},X.createBlob=function(A,M){if(M==="svg")return new window.Blob([A],{type:"image/svg+xml;charset=utf-8"});if(M==="full-json")return new window.Blob([A],{type:"application/json;charset=utf-8"});var e=x(window.atob(A));return new window.Blob([e],{type:"image/"+M})},X.octetStream=function(A){document.location.href="data:application/octet-stream"+A};function x(A){for(var M=A.length,e=new ArrayBuffer(M),t=new Uint8Array(e),r=0;r")!==-1?"":s.html(h).text()});return s.remove(),c}function i(n){return n.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}H.exports=function(s,c,h){var v=s._fullLayout,p=v._paper,T=v._toppaper,l=v.width,_=v.height,w;p.insert("rect",":first-child").call(A.setRect,0,0,l,_).call(M.fill,v.paper_bgcolor);var S=v._basePlotModules||[];for(w=0;w1&&E.push(s("object","layout"))),x.supplyDefaults(m);for(var u=m._fullData,y=b.length,f=0;fP.length&&S.push(s("unused",E,y.concat(P.length)));var I=P.length,N=Array.isArray(O);N&&(I=Math.min(I,O.length));var U,W,Q,ue,se;if(L.dimensions===2)for(W=0;WP[W].length&&S.push(s("unused",E,y.concat(W,P[W].length)));var he=P[W].length;for(U=0;U<(N?Math.min(he,O[W].length):he);U++)Q=N?O[W][U]:O,ue=f[W][U],se=P[W][U],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W,U),ue,se)):S.push(s("value",E,y.concat(W,U),ue))}else S.push(s("array",E,y.concat(W),f[W]));else for(W=0;WF?S.push({code:"unused",traceType:f,templateCount:z,dataCount:F}):F>z&&S.push({code:"reused",traceType:f,templateCount:z,dataCount:F})}}function B(O,I){for(var N in O)if(N.charAt(0)!=="_"){var U=O[N],W=s(O,N,I);g(U)?(Array.isArray(O)&&U._template===!1&&U.templateitemname&&S.push({code:"missing",path:W,templateitemname:U.templateitemname}),B(U,W)):Array.isArray(U)&&c(U)&&B(U,W)}}if(B({data:m,layout:E},""),S.length)return S.map(h)};function c(v){for(var p=0;p=0;h--){var v=e[h];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}}}),VO=Ye({"src/traces/scatter/layout_defaults.js"(X,H){"use strict";var g=ta(),x=g2();H.exports=function(A,M){function e(r,o){return g.coerce(A,M,x,r,o)}var t=M.barmode==="group";M.scattermode==="group"&&e("scattergap",t?M.bargap:.2)}}}),tv=Ye({"src/plots/cartesian/align_period.js"(X,H){"use strict";var g=jo(),x=ta(),A=x.dateTime2ms,M=x.incrementMonth,e=ks(),t=e.ONEAVGMONTH;H.exports=function(o,a,i,n){if(a.type!=="date")return{vals:n};var s=o[i+"periodalignment"];if(!s)return{vals:n};var c=o[i+"period"],h;if(g(c)){if(c=+c,c<=0)return{vals:n}}else if(typeof c=="string"&&c.charAt(0)==="M"){var v=+c.substring(1);if(v>0&&Math.round(v)===v)h=v;else return{vals:n}}for(var p=a.calendar,T=s==="start",l=s==="end",_=o[i+"period0"],w=A(_,p)||0,S=[],E=[],m=[],b=n.length,d=0;du;)P=M(P,-h,p);for(;P<=u;)P=M(P,h,p);f=M(P,-h,p)}else{for(y=Math.round((u-w)/c),P=w+y*c;P>u;)P-=c;for(;P<=u;)P+=c;f=P-c}S[d]=T?f:l?P:(f+P)/2,E[d]=f,m[d]=P}return{vals:S,starts:E,ends:m}}}}),Fd=Ye({"src/traces/scatter/colorscale_calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=uu();H.exports=function(e,t){A.hasLines(t)&&g(t,"line")&&x(e,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),A.hasMarkers(t)&&(g(t,"marker")&&x(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g(t,"marker.line")&&x(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),Av=Ye({"src/traces/scatter/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;eB&&f[I].gap;)I--;for(U=f[I].s,O=f.length-1;O>I;O--)f[O].s=U;for(;BN+O||!g(I))}for(var W=0;Wz[p]&&p0?e:t)/(p._m*_*(p._m>0?e:t)))),It*=1e3}if(Bt===A){if(l&&(Bt=p.c2p(xt.y,!0)),Bt===A)return!1;Bt*=1e3}return[It,Bt]}function ee(dt,xt,It,Bt){var Gt=It-dt,Kt=Bt-xt,sr=.5-dt,sa=.5-xt,Aa=Gt*Gt+Kt*Kt,La=Gt*sr+Kt*sa;if(La>0&&La1||Math.abs(sr.y-It[0][1])>1)&&(sr=[sr.x,sr.y],Bt&&Ae(sr,dt)Ze||dt[1]it)return[a(dt[0],Ie,Ze),a(dt[1],at,it)]}function Ct(dt,xt){if(dt[0]===xt[0]&&(dt[0]===Ie||dt[0]===Ze)||dt[1]===xt[1]&&(dt[1]===at||dt[1]===it))return!0}function St(dt,xt){var It=[],Bt=Qe(dt),Gt=Qe(xt);return Bt&&Gt&&Ct(Bt,Gt)||(Bt&&It.push(Bt),Gt&&It.push(Gt)),It}function Ot(dt,xt,It){return function(Bt,Gt){var Kt=Qe(Bt),sr=Qe(Gt),sa=[];if(Kt&&sr&&Ct(Kt,sr))return sa;Kt&&sa.push(Kt),sr&&sa.push(sr);var Aa=2*r.constrain((Bt[dt]+Gt[dt])/2,xt,It)-((Kt||Bt)[dt]+(sr||Gt)[dt]);if(Aa){var La;Kt&&sr?La=Aa>0==Kt[dt]>sr[dt]?Kt:sr:La=Kt||sr,La[dt]+=Aa}return sa}}var jt;d==="linear"||d==="spline"?jt=nt:d==="hv"||d==="vh"?jt=St:d==="hvh"?jt=Ot(0,Ie,Ze):d==="vhv"&&(jt=Ot(1,at,it));function ur(dt,xt){var It=xt[0]-dt[0],Bt=(xt[1]-dt[1])/It,Gt=(dt[1]*xt[0]-xt[1]*dt[0])/It;return Gt>0?[Bt>0?Ie:Ze,it]:[Bt>0?Ze:Ie,at]}function ar(dt){var xt=dt[0],It=dt[1],Bt=xt===z[F-1][0],Gt=It===z[F-1][1];if(!(Bt&&Gt))if(F>1){var Kt=xt===z[F-2][0],sr=It===z[F-2][1];Bt&&(xt===Ie||xt===Ze)&&Kt?sr?F--:z[F-1]=dt:Gt&&(It===at||It===it)&&sr?Kt?F--:z[F-1]=dt:z[F++]=dt}else z[F++]=dt}function Cr(dt){z[F-1][0]!==dt[0]&&z[F-1][1]!==dt[1]&&ar([ge,ce]),ar(dt),ze=null,ge=ce=0}var vr=r.isArrayOrTypedArray(E);function _r(dt){if(dt&&S&&(dt.i=B,dt.d=s,dt.trace=h,dt.marker=vr?E[dt.i]:E,dt.backoff=S),ie=dt[0]/_,fe=dt[1]/w,lt=dt[0]Ze?Ze:0,Me=dt[1]it?it:0,lt||Me){if(!F)z[F++]=[lt||dt[0],Me||dt[1]];else if(ze){var xt=jt(ze,dt);xt.length>1&&(Cr(xt[0]),z[F++]=xt[1])}else tt=jt(z[F-1],dt)[0],z[F++]=tt;var It=z[F-1];lt&&Me&&(It[0]!==lt||It[1]!==Me)?(ze&&(ge!==lt&&ce!==Me?ar(ge&&ce?ur(ze,dt):[ge||lt,ce||Me]):ge&&ce&&ar([ge,ce])),ar([lt,Me])):ge-lt&&ce-Me&&ar([lt||ge,Me||ce]),ze=dt,ge=lt,ce=Me}else ze&&Cr(jt(ze,dt)[0]),z[F++]=dt}for(B=0;Bbe(W,yt))break;I=W,J=se[0]*ue[0]+se[1]*ue[1],J>G?(G=J,N=W,Q=!1):J<$&&($=J,U=W,Q=!0)}if(Q?(_r(N),I!==U&&_r(U)):(U!==O&&_r(U),I!==N&&_r(N)),_r(I),B>=s.length||!W)break;_r(W),O=W}}ze&&ar([ge||ze[0],ce||ze[1]]),f.push(z.slice(0,F))}var Fe=d.slice(d.length-1);if(S&&Fe!=="h"&&Fe!=="v"){for(var Ke=!1,Ne=-1,Ee=[],Ve=0;Ve=0?i=v:(i=v=h,h++),i0,d=a(v,p,T);if(S=l.selectAll("g.trace").data(d,function(y){return y[0].trace.uid}),S.enter().append("g").attr("class",function(y){return"trace scatter trace"+y[0].trace.uid}).style("stroke-miterlimit",2),S.order(),n(v,S,p),b){w&&(E=w());var u=g.transition().duration(_.duration).ease(_.easing).each("end",function(){E&&E()}).each("interrupt",function(){E&&E()});u.each(function(){l.selectAll("g.trace").each(function(y,f){s(v,f,p,y,d,this,_)})})}else S.each(function(y,f){s(v,f,p,y,d,this,_)});m&&S.exit().remove(),l.selectAll("path:not([d])").remove()};function n(h,v,p){v.each(function(T){var l=M(g.select(this),"g","fills");t.setClipUrl(l,p.layerClipId,h);var _=T[0].trace,w=[];_._ownfill&&w.push("_ownFill"),_._nexttrace&&w.push("_nextFill");var S=l.selectAll("g").data(w,e);S.enter().append("g"),S.exit().each(function(E){_[E]=null}).remove(),S.order().each(function(E){_[E]=M(g.select(this),"path","js-fill")})})}function s(h,v,p,T,l,_,w){var S=h._context.staticPlot,E;c(h,v,p,T,l);var m=!!w&&w.duration>0;function b(ar){return m?ar.transition():ar}var d=p.xaxis,u=p.yaxis,y=T[0].trace,f=y.line,P=g.select(_),L=M(P,"g","errorbars"),z=M(P,"g","lines"),F=M(P,"g","points"),B=M(P,"g","text");if(x.getComponentMethod("errorbars","plot")(h,L,p,w),y.visible!==!0)return;b(P).style("opacity",y.opacity);var O,I,N=y.fill.charAt(y.fill.length-1);N!=="x"&&N!=="y"&&(N="");var U,W;N==="y"?(U=1,W=u.c2p(0,!0)):N==="x"&&(U=0,W=d.c2p(0,!0)),T[0][p.isRangePlot?"nodeRangePlot3":"node3"]=P;var Q="",ue=[],se=y._prevtrace,he=null,G=null;se&&(Q=se._prevRevpath||"",I=se._nextFill,ue=se._ownPolygons,he=se._fillsegments,G=se._fillElement);var $,J,Z="",re="",ne,j,ee,ie,fe,be,Ae=[];y._polygons=[];var Be=[],Ie=[],Ze=A.noop;if(O=y._ownFill,r.hasLines(y)||y.fill!=="none"){I&&I.datum(T),["hv","vh","hvh","vhv"].indexOf(f.shape)!==-1?(ne=t.steps(f.shape),j=t.steps(f.shape.split("").reverse().join(""))):f.shape==="spline"?ne=j=function(ar){var Cr=ar[ar.length-1];return ar.length>1&&ar[0][0]===Cr[0]&&ar[0][1]===Cr[1]?t.smoothclosed(ar.slice(1),f.smoothing):t.smoothopen(ar,f.smoothing)}:ne=j=function(ar){return"M"+ar.join("L")},ee=function(ar){return j(ar.reverse())},Ie=o(T,{xaxis:d,yaxis:u,trace:y,connectGaps:y.connectgaps,baseTolerance:Math.max(f.width||1,3)/4,shape:f.shape,backoff:f.backoff,simplify:f.simplify,fill:y.fill}),Be=new Array(Ie.length);var at=0;for(E=0;E=S[0]&&P.x<=S[1]&&P.y>=E[0]&&P.y<=E[1]}),u=Math.ceil(d.length/b),y=0;l.forEach(function(P,L){var z=P[0].trace;r.hasMarkers(z)&&z.marker.maxdisplayed>0&&L=Math.min(se,he)&&p<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(h.c2p(ue.x)-p);return J=Math.min(se,he)&&T<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(v.c2p(ue.y)-T);return Jre!=Be>=re&&(fe=ee[j-1][0],be=ee[j][0],Be-Ae&&(ie=fe+(be-fe)*(re-Ae)/(Be-Ae),G=Math.min(G,ie),$=Math.max($,ie)));return G=Math.max(G,0),$=Math.min($,h._length),{x0:G,x1:$,y0:re,y1:re}}if(_.indexOf("fills")!==-1&&c._fillElement){var U=I(c._fillElement)&&!I(c._fillExclusionElement);if(U){var W=N(c._polygons);W===null&&(W={x0:l[0],x1:l[0],y0:l[1],y1:l[1]});var Q=e.defaultLine;return e.opacity(c.fillcolor)?Q=c.fillcolor:e.opacity((c.line||{}).color)&&(Q=c.line.color),g.extendFlat(o,{distance:o.maxHoverDistance,x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1,color:Q,hovertemplate:!1}),delete o.index,c.text&&!g.isArrayOrTypedArray(c.text)?o.text=String(c.text):o.text=c.name,[o]}}}}}),u1=Ye({"src/traces/scatter/select.js"(X,H){"use strict";var g=uu();H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=[],a=e[0].trace,i,n,s,c,h=!g.hasMarkers(a)&&!g.hasText(a);if(h)return[];if(M===!1)for(i=0;i0&&(n["_"+a+"axes"]||{})[o])return n;if((n[a+"axis"]||a)===o){if(t(n,a))return n;if((n[a]||[]).length||n[a+"0"])return n}}}function e(r){return{v:"x",h:"y"}[r.orientation||"v"]}function t(r,o){var a=e(r),i=g(r,"box-violin"),n=g(r._fullInput||{},"candlestick");return i&&!n&&o===a&&r[a]===void 0&&r[a+"0"]===void 0}}}),P2=Ye({"src/plots/cartesian/category_order_defaults.js"(X,H){"use strict";var g=xp().isTypedArraySpec;function x(A,M){var e=M.dataAttr||A._id.charAt(0),t={},r,o,a;if(M.axData)r=M.axData;else for(r=[],o=0;o0||g(o),i;a&&(i="array");var n=t("categoryorder",i),s;n==="array"&&(s=t("categoryarray")),!a&&n==="array"&&(n=e.categoryorder="trace"),n==="trace"?e._initialCategories=[]:n==="array"?e._initialCategories=s.slice():(s=x(e,r).sort(),n==="category ascending"?e._initialCategories=s:n==="category descending"&&(e._initialCategories=s.reverse()))}}}}),I_=Ye({"src/plots/cartesian/line_grid_defaults.js"(X,H){"use strict";var g=bh().mix,x=Gf(),A=ta();H.exports=function(e,t,r,o){o=o||{};var a=o.dfltColor;function i(y,f){return A.coerce2(e,t,o.attributes,y,f)}var n=i("linecolor",a),s=i("linewidth"),c=r("showline",o.showLine||!!n||!!s);c||(delete t.linecolor,delete t.linewidth);var h=g(a,o.bgColor,o.blend||x.lightFraction).toRgbString(),v=i("gridcolor",h),p=i("gridwidth"),T=i("griddash"),l=r("showgrid",o.showGrid||!!v||!!p||!!T);if(l||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),o.hasMinor){var _=g(t.gridcolor,o.bgColor,67).toRgbString(),w=i("minor.gridcolor",_),S=i("minor.gridwidth",t.gridwidth||1),E=i("minor.griddash",t.griddash||"solid"),m=r("minor.showgrid",!!w||!!S||!!E);m||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!o.noZeroLine){var b=i("zerolinecolor",a),d=i("zerolinewidth"),u=r("zeroline",o.showGrid||!!b||!!d);u||(delete t.zerolinecolor,delete t.zerolinewidth)}}}}),R_=Ye({"src/plots/cartesian/axis_defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=up(),t=Vh(),r=Zg(),o=e1(),a=$m(),i=Qm(),n=P2(),s=I_(),c=fS(),h=wv(),v=wh().WEEKDAY_PATTERN,p=wh().HOUR_PATTERN;H.exports=function(S,E,m,b,d){var u=b.letter,y=b.font||{},f=b.splomStash||{},P=m("visible",!b.visibleDflt),L=E._template||{},z=E.type||L.type||"-",F;if(z==="date"){var B=x.getComponentMethod("calendars","handleDefaults");B(S,E,"calendar",b.calendar),b.noTicklabelmode||(F=m("ticklabelmode"))}!b.noTicklabelindex&&(z==="date"||z==="linear")&&m("ticklabelindex");var O="";(!b.noTicklabelposition||z==="multicategory")&&(O=A.coerce(S,E,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:F==="period"?["outside","inside"]:u==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),b.noTicklabeloverflow||m("ticklabeloverflow",O.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),h(E,d),c(S,E,m,b),n(S,E,m,b),z!=="category"&&!b.noHover&&m("hoverformat");var I=m("color"),N=I!==t.color.dflt?I:y.color,U=f.label||d._dfltTitle[u];if(i(S,E,m,z,b),!P)return E;m("title.text",U),A.coerceFont(m,"title.font",y,{overrideDflt:{size:A.bigFont(y.size),color:N}}),r(S,E,m,z);var W=b.hasMinor;if(W&&(M.newContainer(E,"minor"),r(S,E,m,z,{isMinor:!0})),a(S,E,m,z,b),o(S,E,m,b),W){var Q=b.isMinor;b.isMinor=!0,o(S,E,m,b),b.isMinor=Q}s(S,E,m,{dfltColor:I,bgColor:b.bgColor,showGrid:b.showGrid,hasMinor:W,attributes:t}),W&&!E.minor.ticks&&!E.minor.showgrid&&delete E.minor,(E.showline||E.ticks)&&m("mirror");var ue=z==="multicategory";if(!b.noTickson&&(z==="category"||ue)&&(E.ticks||E.showgrid)){var se;ue&&(se="boundaries");var he=m("tickson",se);he==="boundaries"&&delete E.ticklabelposition}if(ue){var G=m("showdividers");G&&(m("dividercolor"),m("dividerwidth"))}if(z==="date")if(e(S,E,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:T}),!E.rangebreaks.length)delete E.rangebreaks;else{for(var $=0;$=2){var u="",y,f;if(d.length===2){for(y=0;y<2;y++)if(f=_(d[y]),f){u=v;break}}var P=m("pattern",u);if(P===v)for(y=0;y<2;y++)f=_(d[y]),f&&(S.bounds[y]=d[y]=f-1);if(P)for(y=0;y<2;y++)switch(f=d[y],P){case v:if(!g(f)){S.enabled=!1;return}if(f=+f,f!==Math.floor(f)||f<0||f>=7){S.enabled=!1;return}S.bounds[y]=d[y]=f;break;case p:if(!g(f)){S.enabled=!1;return}if(f=+f,f<0||f>24){S.enabled=!1;return}S.bounds[y]=d[y]=f;break}if(E.autorange===!1){var L=E.range;if(L[0]L[1]){S.enabled=!1;return}}else if(d[0]>L[0]&&d[1]m[1]-1/4096&&(e.domain=h),x.noneOrAll(M.domain,e.domain,h),e.tickmode==="sync"&&(e.tickmode="auto")}return t("layer"),e}}}),WO=Ye({"src/plots/cartesian/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover,M=yS(),e=cl(),t=Jy(),r=Vh(),o=FS(),a=R_(),i=Yg(),n=I2(),s=Xc(),c=s.id2name,h=s.name2id,v=wh().AX_ID_PATTERN,p=Hn(),T=p.traceIs,l=p.getComponentMethod;function _(w,S,E){Array.isArray(w[S])?w[S].push(E):w[S]=[E]}H.exports=function(S,E,m){var b=E.autotypenumbers,d={},u={},y={},f={},P={},L={},z={},F={},B={},O={},I,N;for(I=0;I rect").call(M.setTranslate,0,0).call(M.setScale,1,1),E.plot.call(M.setTranslate,m._offset,b._offset).call(M.setScale,1,1);var d=E.plot.selectAll(".scatterlayer .trace");d.selectAll(".point").call(M.setPointGroupScale,1,1),d.selectAll(".textpoint").call(M.setTextPointsScale,1,1),d.call(M.hideOutsideRangePoints,E)}function c(E,m){var b=E.plotinfo,d=b.xaxis,u=b.yaxis,y=d._length,f=u._length,P=!!E.xr1,L=!!E.yr1,z=[];if(P){var F=A.simpleMap(E.xr0,d.r2l),B=A.simpleMap(E.xr1,d.r2l),O=F[1]-F[0],I=B[1]-B[0];z[0]=(F[0]*(1-m)+m*B[0]-F[0])/(F[1]-F[0])*y,z[2]=y*(1-m+m*I/O),d.range[0]=d.l2r(F[0]*(1-m)+m*B[0]),d.range[1]=d.l2r(F[1]*(1-m)+m*B[1])}else z[0]=0,z[2]=y;if(L){var N=A.simpleMap(E.yr0,u.r2l),U=A.simpleMap(E.yr1,u.r2l),W=N[1]-N[0],Q=U[1]-U[0];z[1]=(N[1]*(1-m)+m*U[1]-N[1])/(N[0]-N[1])*f,z[3]=f*(1-m+m*Q/W),u.range[0]=d.l2r(N[0]*(1-m)+m*U[0]),u.range[1]=u.l2r(N[1]*(1-m)+m*U[1])}else z[1]=0,z[3]=f;e.drawOne(r,d,{skipTitle:!0}),e.drawOne(r,u,{skipTitle:!0}),e.redrawComponents(r,[d._id,u._id]);var ue=P?y/z[2]:1,se=L?f/z[3]:1,he=P?z[0]:0,G=L?z[1]:0,$=P?z[0]/z[2]*y:0,J=L?z[1]/z[3]*f:0,Z=d._offset-$,re=u._offset-J;b.clipRect.call(M.setTranslate,he,G).call(M.setScale,1/ue,1/se),b.plot.call(M.setTranslate,Z,re).call(M.setScale,ue,se),M.setPointGroupScale(b.zoomScalePts,1/ue,1/se),M.setTextPointsScale(b.zoomScaleTxt,1/ue,1/se)}var h;i&&(h=i());function v(){for(var E={},m=0;ma.duration?(v(),_=window.cancelAnimationFrame(S)):_=window.requestAnimationFrame(S)}return T=Date.now(),_=window.requestAnimationFrame(S),Promise.resolve()}}}),Pf=Ye({"src/plots/cartesian/index.js"(X){"use strict";var H=_n(),g=Hn(),x=ta(),A=Gu(),M=Bo(),e=jh().getModuleCalcData,t=Xc(),r=wh(),o=vd(),a=x.ensureSingle;function i(T,l,_){return x.ensureSingle(T,l,_,function(w){w.datum(_)})}var n=r.zindexSeparator;X.name="cartesian",X.attr=["xaxis","yaxis"],X.idRoot=["x","y"],X.idRegex=r.idRegex,X.attrRegex=r.attrRegex,X.attributes=GO(),X.layoutAttributes=Vh(),X.supplyLayoutDefaults=WO(),X.transitionAxes=ZO(),X.finalizeSubplots=function(T,l){var _=l._subplots,w=_.xaxis,S=_.yaxis,E=_.cartesian,m=E,b={},d={},u,y,f;for(u=0;u0){var L=P.id;if(L.indexOf(n)!==-1)continue;L+=n+(u+1),P=x.extendFlat({},P,{id:L,plot:S._cartesianlayer.selectAll(".subplot").select("."+L)})}for(var z=[],F,B=0;B1&&(W+=n+U),N.push(b+W),m=0;m1,f=l.mainplotinfo;if(!l.mainplot||y)if(u)l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.xaxislayer=a(w,"g","xaxislayer-above"),l.yaxislayer=a(w,"g","yaxislayer-above");else{if(!m){var P=a(w,"g","layer-subplot");l.shapelayer=a(P,"g","shapelayer"),l.imagelayer=a(P,"g","imagelayer"),f&&y?(l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer):(l.minorGridlayer=a(w,"g","minor-gridlayer"),l.gridlayer=a(w,"g","gridlayer"),l.zerolinelayer=a(w,"g","zerolinelayer"));var L=a(w,"g","layer-between");l.shapelayerBetween=a(L,"g","shapelayer"),l.imagelayerBetween=a(L,"g","imagelayer"),a(w,"path","xlines-below"),a(w,"path","ylines-below"),l.overlinesBelow=a(w,"g","overlines-below"),a(w,"g","xaxislayer-below"),a(w,"g","yaxislayer-below"),l.overaxesBelow=a(w,"g","overaxes-below")}l.overplot=a(w,"g","overplot"),l.plot=a(l.overplot,"g",S),m||(l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.overlinesAbove=a(w,"g","overlines-above"),a(w,"g","xaxislayer-above"),a(w,"g","yaxislayer-above"),l.overaxesAbove=a(w,"g","overaxes-above"),l.xlines=w.select(".xlines-"+b),l.ylines=w.select(".ylines-"+d),l.xaxislayer=w.select(".xaxislayer-"+b),l.yaxislayer=w.select(".yaxislayer-"+d))}else{var z=f.plotgroup,F=S+"-x",B=S+"-y";l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer,a(f.overlinesBelow,"path",F),a(f.overlinesBelow,"path",B),a(f.overaxesBelow,"g",F),a(f.overaxesBelow,"g",B),l.plot=a(f.overplot,"g",S),a(f.overlinesAbove,"path",F),a(f.overlinesAbove,"path",B),a(f.overaxesAbove,"g",F),a(f.overaxesAbove,"g",B),l.xlines=z.select(".overlines-"+b).select("."+F),l.ylines=z.select(".overlines-"+d).select("."+B),l.xaxislayer=z.select(".overaxes-"+b).select("."+F),l.yaxislayer=z.select(".overaxes-"+d).select("."+B)}m||(u||(i(l.minorGridlayer,"g",l.xaxis._id),i(l.minorGridlayer,"g",l.yaxis._id),l.minorGridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort),i(l.gridlayer,"g",l.xaxis._id),i(l.gridlayer,"g",l.yaxis._id),l.gridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort)),l.xlines.style("fill","none").classed("crisp",!0),l.ylines.style("fill","none").classed("crisp",!0))}function v(T,l){if(T){var _={};T.each(function(d){var u=d[0],y=H.select(this);y.remove(),p(u,l),_[u]=!0});for(var w in l._plots)for(var S=l._plots[w],E=S.overlays||[],m=0;m=0,l=i.indexOf("end")>=0,_=c.backoff*v+n.standoff,w=h.backoff*p+n.startstandoff,S,E,m,b;if(s.nodeName==="line"){S={x:+a.attr("x1"),y:+a.attr("y1")},E={x:+a.attr("x2"),y:+a.attr("y2")};var d=S.x-E.x,u=S.y-E.y;if(m=Math.atan2(u,d),b=m+Math.PI,_&&w&&_+w>Math.sqrt(d*d+u*u)){W();return}if(_){if(_*_>d*d+u*u){W();return}var y=_*Math.cos(m),f=_*Math.sin(m);E.x+=y,E.y+=f,a.attr({x2:E.x,y2:E.y})}if(w){if(w*w>d*d+u*u){W();return}var P=w*Math.cos(m),L=w*Math.sin(m);S.x-=P,S.y-=L,a.attr({x1:S.x,y1:S.y})}}else if(s.nodeName==="path"){var z=s.getTotalLength(),F="";if(z<_+w){W();return}var B=s.getPointAtLength(0),O=s.getPointAtLength(.1);m=Math.atan2(B.y-O.y,B.x-O.x),S=s.getPointAtLength(Math.min(w,z)),F="0px,"+w+"px,";var I=s.getPointAtLength(z),N=s.getPointAtLength(z-.1);b=Math.atan2(I.y-N.y,I.x-N.x),E=s.getPointAtLength(Math.max(0,z-_));var U=F?w+_:_;F+=z-U+"px,"+z+"px",a.style("stroke-dasharray",F)}function W(){a.style("stroke-dasharray","0px,100px")}function Q(ue,se,he,G){ue.path&&(ue.noRotate&&(he=0),g.select(s.parentNode).append("path").attr({class:a.attr("class"),d:ue.path,transform:r(se.x,se.y)+t(he*180/Math.PI)+e(G)}).style({fill:x.rgb(n.arrowcolor),"stroke-width":0}))}T&&Q(h,S,m,p),l&&Q(c,E,b,v)}}}),R2=Ye({"src/components/annotations/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Co(),r=Fn(),o=Bo(),a=Lc(),i=jl(),n=Kd(),s=bp(),c=cl().arrayEditor,h=YO();H.exports={draw:v,drawOne:p,drawRaw:l};function v(_){var w=_._fullLayout;w._infolayer.selectAll(".annotation").remove();for(var S=0;S2/3?Ma="right":Ma="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ma]}for(var tt=!1,nt=["x","y"],Qe=0;Qe1)&&(Ot===St?(Le=jt.r2fraction(w["a"+Ct]),(Le<0||Le>1)&&(tt=!0)):tt=!0),Ke=jt._offset+jt.r2p(w[Ct]),Ve=.5}else{var rt=Te==="domain";Ct==="x"?(Ee=w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.l+u.w*Ee):(Ee=1-w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.t+u.h*Ee),Ve=w.showarrow?.5:Ee}if(w.showarrow){Fe.head=Ke;var dt=w["a"+Ct];if(ke=ar*ze(.5,w.xanchor)-Cr*ze(.5,w.yanchor),Ot===St){var xt=t.getRefType(Ot);xt==="domain"?(Ct==="y"&&(dt=1-dt),Fe.tail=jt._offset+jt._length*dt):xt==="paper"?Ct==="y"?(dt=1-dt,Fe.tail=u.t+u.h*dt):Fe.tail=u.l+u.w*dt:Fe.tail=jt._offset+jt.r2p(dt),Ne=ke}else Fe.tail=Ke+dt,Ne=ke+dt;Fe.text=Fe.tail+ke;var It=d[Ct==="x"?"width":"height"];if(St==="paper"&&(Fe.head=M.constrain(Fe.head,1,It-1)),Ot==="pixel"){var Bt=-Math.max(Fe.tail-3,Fe.text),Gt=Math.min(Fe.tail+3,Fe.text)-It;Bt>0?(Fe.tail+=Bt,Fe.text+=Bt):Gt>0&&(Fe.tail-=Gt,Fe.text-=Gt)}Fe.tail+=yt,Fe.head+=yt}else ke=vr*ze(Ve,_r),Ne=ke,Fe.text=Ke+ke;Fe.text+=yt,ke+=yt,Ne+=yt,w["_"+Ct+"padplus"]=vr/2+Ne,w["_"+Ct+"padminus"]=vr/2-Ne,w["_"+Ct+"size"]=vr,w["_"+Ct+"shift"]=ke}if(tt){he.remove();return}var Kt=0,sr=0;if(w.align!=="left"&&(Kt=(lt-it)*(w.align==="center"?.5:1)),w.valign!=="top"&&(sr=(Me-et)*(w.valign==="middle"?.5:1)),Ze)Ie.select("svg").attr({x:J+Kt-1,y:J+sr}).call(o.setClipUrl,re?O:null,_);else{var sa=J+sr-at.top,Aa=J+Kt-at.left;ie.call(i.positionText,Aa,sa).call(o.setClipUrl,re?O:null,_)}ne.select("rect").call(o.setRect,J,J,lt,Me),Z.call(o.setRect,G/2,G/2,ge-G,ce-G),he.call(o.setTranslate,Math.round(I.x.text-ge/2),Math.round(I.y.text-ce/2)),W.attr({transform:"rotate("+N+","+I.x.text+","+I.y.text+")"});var La=function(Ga,Ma){U.selectAll(".annotation-arrow-g").remove();var Ua=I.x.head,ni=I.y.head,Wt=I.x.tail+Ga,zt=I.y.tail+Ma,Vt=I.x.text+Ga,Ut=I.y.text+Ma,xr=M.rotationXYMatrix(N,Vt,Ut),Zr=M.apply2DTransform(xr),pa=M.apply2DTransform2(xr),Xr=+Z.attr("width"),Ea=+Z.attr("height"),Fa=Vt-.5*Xr,qa=Fa+Xr,ya=Ut-.5*Ea,$a=ya+Ea,mt=[[Fa,ya,Fa,$a],[Fa,$a,qa,$a],[qa,$a,qa,ya],[qa,ya,Fa,ya]].map(pa);if(!mt.reduce(function(kt,ir){return kt^!!M.segmentsIntersect(Ua,ni,Ua+1e6,ni+1e6,ir[0],ir[1],ir[2],ir[3])},!1)){mt.forEach(function(kt){var ir=M.segmentsIntersect(Wt,zt,Ua,ni,kt[0],kt[1],kt[2],kt[3]);ir&&(Wt=ir.x,zt=ir.y)});var gt=w.arrowwidth,Er=w.arrowcolor,kr=w.arrowside,br=U.append("g").style({opacity:r.opacity(Er)}).classed("annotation-arrow-g",!0),Tr=br.append("path").attr("d","M"+Wt+","+zt+"L"+Ua+","+ni).style("stroke-width",gt+"px").call(r.stroke,r.rgb(Er));if(h(Tr,kr,w),y.annotationPosition&&Tr.node().parentNode&&!E){var Mr=Ua,Fr=ni;if(w.standoff){var Lr=Math.sqrt(Math.pow(Ua-Wt,2)+Math.pow(ni-zt,2));Mr+=w.standoff*(Wt-Ua)/Lr,Fr+=w.standoff*(zt-ni)/Lr}var Jr=br.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Wt-Mr)+","+(zt-Fr),transform:e(Mr,Fr)}).style("stroke-width",gt+6+"px").call(r.stroke,"rgba(0,0,0,0)").call(r.fill,"rgba(0,0,0,0)"),oa,ca;s.init({element:Jr.node(),gd:_,prepFn:function(){var kt=o.getTranslate(he);oa=kt.x,ca=kt.y,m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0)},moveFn:function(kt,ir){var mr=Zr(oa,ca),$r=mr[0]+kt,ma=mr[1]+ir;he.call(o.setTranslate,$r,ma),F("x",T(m,kt,"x",u,w)),F("y",T(b,ir,"y",u,w)),w.axref===w.xref&&F("ax",T(m,kt,"ax",u,w)),w.ayref===w.yref&&F("ay",T(b,ir,"ay",u,w)),br.attr("transform",e(kt,ir)),W.attr({transform:"rotate("+N+","+$r+","+ma+")"})},doneFn:function(){x.call("_guiRelayout",_,B());var kt=document.querySelector(".js-notes-box-panel");kt&&kt.redraw(kt.selectedObj)}})}}};if(w.showarrow&&La(0,0),Q){var ka;s.init({element:he.node(),gd:_,prepFn:function(){ka=W.attr("transform")},moveFn:function(Ga,Ma){var Ua="pointer";if(w.showarrow)w.axref===w.xref?F("ax",T(m,Ga,"ax",u,w)):F("ax",w.ax+Ga),w.ayref===w.yref?F("ay",T(b,Ma,"ay",u.w,w)):F("ay",w.ay+Ma),La(Ga,Ma);else{if(E)return;var ni,Wt;if(m)ni=T(m,Ga,"x",u,w);else{var zt=w._xsize/u.w,Vt=w.x+(w._xshift-w.xshift)/u.w-zt/2;ni=s.align(Vt+Ga/u.w,zt,0,1,w.xanchor)}if(b)Wt=T(b,Ma,"y",u,w);else{var Ut=w._ysize/u.h,xr=w.y-(w._yshift+w.yshift)/u.h-Ut/2;Wt=s.align(xr-Ma/u.h,Ut,0,1,w.yanchor)}F("x",ni),F("y",Wt),(!m||!b)&&(Ua=s.getCursor(m?.5:ni,b?.5:Wt,w.xanchor,w.yanchor))}W.attr({transform:e(Ga,Ma)+ka}),n(he,Ua)},clickFn:function(Ga,Ma){w.captureevents&&_.emit("plotly_clickannotation",se(Ma))},doneFn:function(){n(he),x.call("_guiRelayout",_,B());var Ga=document.querySelector(".js-notes-box-panel");Ga&&Ga.redraw(Ga.selectedObj)}})}}y.annotationText?ie.call(i.makeEditable,{delegate:he,gd:_}).call(fe).on("edit",function(Ae){w.text=Ae,this.call(fe),F("text",Ae),m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0),x.call("_guiRelayout",_,B())}):ie.call(fe)}}}),KO=Ye({"src/components/annotations/click.js"(X,H){"use strict";var g=ta(),x=Hn(),A=cl().arrayEditor;H.exports={hasClickToShow:M,onClick:e};function M(o,a){var i=t(o,a);return i.on.length>0||i.explicitOff.length>0}function e(o,a){var i=t(o,a),n=i.on,s=i.off.concat(i.explicitOff),c={},h=o._fullLayout.annotations,v,p;if(n.length||s.length){for(v=0;v1){n=!0;break}}n?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+a+'"]').remove():(i._pdata=x(e.glplot.cameraParams,[t.xaxis.r2l(i.x)*r[0],t.yaxis.r2l(i.y)*r[1],t.zaxis.r2l(i.z)*r[2]]),g(e.graphDiv,i,a,e.id,i._xa,i._ya))}}}}),iB=Ye({"src/components/annotations3d/index.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:D2()}}},layoutAttributes:D2(),handleDefaults:tB(),includeBasePlot:A,convert:rB(),draw:aB()};function A(M,e){var t=g.subplotsRegistry.gl3d;if(t)for(var r=t.attrRegex,o=Object.keys(M),a=0;a0?l+v:v;return{ppad:v,ppadplus:p?w:S,ppadminus:p?S:w}}else return{ppad:v}}function o(a,i,n){var s=a._id.charAt(0)==="x"?"x":"y",c=a.type==="category"||a.type==="multicategory",h,v,p=0,T=0,l=c?a.r2c:a.d2c,_=i[s+"sizemode"]==="scaled";if(_?(h=i[s+"0"],v=i[s+"1"],c&&(p=i[s+"0shift"],T=i[s+"1shift"])):(h=i[s+"anchor"],v=i[s+"anchor"]),h!==void 0)return[l(h)+p,l(v)+T];if(i.path){var w=1/0,S=-1/0,E=i.path.match(A.segmentRE),m,b,d,u,y;for(a.type==="date"&&(l=M.decodeDate(l)),m=0;mS&&(S=y)));if(S>=w)return[w,S]}}}}),lB=Ye({"src/components/shapes/index.js"(X,H){"use strict";var g=M2();H.exports={moduleType:"component",name:"shapes",layoutAttributes:NS(),supplyLayoutDefaults:nB(),supplyDrawNewShapeDefaults:oB(),includeBasePlot:P_()("shapes"),calcAutorange:sB(),draw:g.draw,drawOne:g.drawOne}}}),US=Ye({"src/components/images/attributes.js"(X,H){"use strict";var g=wh(),x=cl().templatedArray,A=L_();H.exports=x("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",g.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",g.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})}}),uB=Ye({"src/components/images/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=US(),e="images";H.exports=function(o,a){var i={name:e,handleItemDefaults:t};A(o,a,i)};function t(r,o,a){function i(_,w){return g.coerce(r,o,M,_,w)}var n=i("source"),s=i("visible",!!n);if(!s)return o;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var c={_fullLayout:a},h=["x","y"],v=0;v<2;v++){var p=h[v],T=x.coerceRef(r,o,c,p,"paper",void 0);if(T!=="paper"){var l=x.getFromId(c,T);l._imgIndices.push(o._index)}x.coercePosition(o,c,i,T,p,0)}return o}}}),cB=Ye({"src/components/images/draw.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Co(),M=Xc(),e=vd();H.exports=function(r){var o=r._fullLayout,a=[],i={},n=[],s,c;for(c=0;c0);h&&(s("active"),s("direction"),s("type"),s("showactive"),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font),s("bgcolor",n.paper_bgcolor),s("bordercolor"),s("borderwidth"))}function o(a,i){function n(c,h){return g.coerce(a,i,t,c,h)}var s=n("visible",a.method==="skip"||Array.isArray(a.args));s&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}}}),dB=Ye({"src/components/updatemenus/scrollbox.js"(X,H){"use strict";H.exports=e;var g=_n(),x=Fn(),A=Bo(),M=ta();function e(t,r,o){this.gd=t,this.container=r,this.id=o,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}e.barWidth=2,e.barLength=20,e.barRadius=2,e.barPad=1,e.barColor="#808BA4",e.prototype.enable=function(r,o,a){var i=this.gd._fullLayout,n=i.width,s=i.height;this.position=r;var c=this.position.l,h=this.position.w,v=this.position.t,p=this.position.h,T=this.position.direction,l=T==="down",_=T==="left",w=T==="right",S=T==="up",E=h,m=p,b,d,u,y;!l&&!_&&!w&&!S&&(this.position.direction="down",l=!0);var f=l||S;f?(b=c,d=b+E,l?(u=v,y=Math.min(u+m,s),m=y-u):(y=v+m,u=Math.max(y-m,0),m=y-u)):(u=v,y=u+m,_?(d=c+E,b=Math.max(d-E,0),E=d-b):(b=c,d=Math.min(b+E,n),E=d-b)),this._box={l:b,t:u,w:E,h:m};var P=h>E,L=e.barLength+2*e.barPad,z=e.barWidth+2*e.barPad,F=c,B=v+p;B+z>s&&(B=s-z);var O=this.container.selectAll("rect.scrollbar-horizontal").data(P?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-horizontal",!0).call(x.fill,e.barColor),P?(this.hbar=O.attr({rx:e.barRadius,ry:e.barRadius,x:F,y:B,width:L,height:z}),this._hbarXMin=F+L/2,this._hbarTranslateMax=E-L):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=p>m,N=e.barWidth+2*e.barPad,U=e.barLength+2*e.barPad,W=c+h,Q=v;W+N>n&&(W=n-N);var ue=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);ue.exit().on(".drag",null).remove(),ue.enter().append("rect").classed("scrollbar-vertical",!0).call(x.fill,e.barColor),I?(this.vbar=ue.attr({rx:e.barRadius,ry:e.barRadius,x:W,y:Q,width:N,height:U}),this._vbarYMin=Q+U/2,this._vbarTranslateMax=m-U):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var se=this.id,he=b-.5,G=I?d+N+.5:d+.5,$=u-.5,J=P?y+z+.5:y+.5,Z=i._topdefs.selectAll("#"+se).data(P||I?[0]:[]);if(Z.exit().remove(),Z.enter().append("clipPath").attr("id",se).append("rect"),P||I?(this._clipRect=Z.select("rect").attr({x:Math.floor(he),y:Math.floor($),width:Math.ceil(G)-Math.floor(he),height:Math.ceil(J)-Math.floor($)}),this.container.call(A.setClipUrl,se,this.gd),this.bg.attr({x:c,y:v,width:h,height:p})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),P||I){var re=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var ne=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault(),g.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));P&&this.hbar.on(".drag",null).call(ne),I&&this.vbar.on(".drag",null).call(ne)}this.setTranslate(o,a)},e.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},e.prototype._onBoxDrag=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r-=g.event.dx),this.vbar&&(o-=g.event.dy),this.setTranslate(r,o)},e.prototype._onBoxWheel=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r+=g.event.deltaY),this.vbar&&(o+=g.event.deltaY),this.setTranslate(r,o)},e.prototype._onBarDrag=function(){var r=this.translateX,o=this.translateY;if(this.hbar){var a=r+this._hbarXMin,i=a+this._hbarTranslateMax,n=M.constrain(g.event.x,a,i),s=(n-a)/(i-a),c=this.position.w-this._box.w;r=s*c}if(this.vbar){var h=o+this._vbarYMin,v=h+this._vbarTranslateMax,p=M.constrain(g.event.y,h,v),T=(p-h)/(v-h),l=this.position.h-this._box.h;o=T*l}this.setTranslate(r,o)},e.prototype.setTranslate=function(r,o){var a=this.position.w-this._box.w,i=this.position.h-this._box.h;if(r=M.constrain(r||0,0,a),o=M.constrain(o||0,0,i),this.translateX=r,this.translateY=o,this.container.call(A.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-o),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+o-.5)}),this.hbar){var n=r/a;this.hbar.call(A.setTranslate,r+n*this._hbarTranslateMax,o)}if(this.vbar){var s=o/i;this.vbar.call(A.setTranslate,r,o+s*this._vbarTranslateMax)}}}}),vB=Ye({"src/components/updatemenus/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=jl(),r=cl().arrayEditor,o=oh().LINE_SPACING,a=z2(),i=dB();H.exports=function(L){var z=L._fullLayout,F=e.filterVisible(z[a.name]);function B(se){x.autoMargin(L,u(se))}var O=z._menulayer.selectAll("g."+a.containerClassName).data(F.length>0?[0]:[]);if(O.enter().append("g").classed(a.containerClassName,!0).style("cursor","pointer"),O.exit().each(function(){g.select(this).selectAll("g."+a.headerGroupClassName).each(B)}).remove(),F.length!==0){var I=O.selectAll("g."+a.headerGroupClassName).data(F,n);I.enter().append("g").classed(a.headerGroupClassName,!0);for(var N=e.ensureSingle(O,"g",a.dropdownButtonGroupClassName,function(se){se.style("pointer-events","all")}),U=0;U0?[0]:[]);W.enter().append("g").classed(a.containerClassName,!0).style("cursor",I?null:"ew-resize");function Q(G){G._commandObserver&&(G._commandObserver.remove(),delete G._commandObserver),x.autoMargin(O,h(G))}if(W.exit().each(function(){g.select(this).selectAll("g."+a.groupClassName).each(Q)}).remove(),U.length!==0){var ue=W.selectAll("g."+a.groupClassName).data(U,p);ue.enter().append("g").classed(a.groupClassName,!0),ue.exit().each(Q).remove();for(var se=0;se0&&(ue=ue.transition().duration(O.transition.duration).ease(O.transition.easing)),ue.attr("transform",t(Q-a.gripWidth*.5,O._dims.currentValueTotalHeight))}}function P(B,O){var I=B._dims;return I.inputAreaStart+a.stepInset+(I.inputAreaLength-2*a.stepInset)*Math.min(1,Math.max(0,O))}function L(B,O){var I=B._dims;return Math.min(1,Math.max(0,(O-a.stepInset-I.inputAreaStart)/(I.inputAreaLength-2*a.stepInset-2*I.inputAreaStart)))}function z(B,O,I){var N=I._dims,U=e.ensureSingle(B,"rect",a.railTouchRectClass,function(W){W.call(d,O,B,I).style("pointer-events","all")});U.attr({width:N.inputAreaLength,height:Math.max(N.inputAreaWidth,a.tickOffset+I.ticklen+N.labelHeight)}).call(A.fill,I.bgcolor).attr("opacity",0),M.setTranslate(U,0,N.currentValueTotalHeight)}function F(B,O){var I=O._dims,N=I.inputAreaLength-a.railInset*2,U=e.ensureSingle(B,"rect",a.railRectClass);U.attr({width:N,height:a.railWidth,rx:a.railRadius,ry:a.railRadius,"shape-rendering":"crispEdges"}).call(A.stroke,O.bordercolor).call(A.fill,O.bgcolor).style("stroke-width",O.borderwidth+"px"),M.setTranslate(U,a.railInset,(I.inputAreaWidth-a.railWidth)*.5+I.currentValueTotalHeight)}}}),_B=Ye({"src/components/sliders/index.js"(X,H){"use strict";var g=D_();H.exports={moduleType:"component",name:g.name,layoutAttributes:VS(),supplyLayoutDefaults:gB(),draw:yB()}}}),F2=Ye({"src/components/rangeslider/attributes.js"(X,H){"use strict";var g=Gf();H.exports={bgcolor:{valType:"color",dflt:g.background,editType:"plot"},bordercolor:{valType:"color",dflt:g.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}}}),qS=Ye({"src/components/rangeslider/oppaxis_attributes.js"(X,H){"use strict";H.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}}}),O2=Ye({"src/components/rangeslider/constants.js"(X,H){"use strict";H.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}}}),xB=Ye({"src/components/rangeslider/helpers.js"(X){"use strict";var H=Xc(),g=jl(),x=O2(),A=oh().LINE_SPACING,M=x.name;function e(t){var r=t&&t[M];return r&&r.visible}X.isVisible=e,X.makeData=function(t){for(var r=H.list({_fullLayout:t},"x",!0),o=t.margin,a=[],i=0;i=it.max)Ze=fe[at+1];else if(Ie=it.pmax)Ze=fe[at+1];else if(Ie0?d.touches[0].clientX:0}function v(d,u,y,f){if(u._context.staticPlot)return;var P=d.select("rect."+c.slideBoxClassName).node(),L=d.select("rect."+c.grabAreaMinClassName).node(),z=d.select("rect."+c.grabAreaMaxClassName).node();function F(){var B=g.event,O=B.target,I=h(B),N=I-d.node().getBoundingClientRect().left,U=f.d2p(y._rl[0]),W=f.d2p(y._rl[1]),Q=n.coverSlip();this.addEventListener("touchmove",ue),this.addEventListener("touchend",se),Q.addEventListener("mousemove",ue),Q.addEventListener("mouseup",se);function ue(he){var G=h(he),$=+G-I,J,Z,re;switch(O){case P:if(re="ew-resize",U+$>y._length||W+$<0)return;J=U+$,Z=W+$;break;case L:if(re="col-resize",U+$>y._length)return;J=U+$,Z=W;break;case z:if(re="col-resize",W+$<0)return;J=U,Z=W+$;break;default:re="ew-resize",J=N,Z=N+$;break}if(Z0);if(_){var w=o(n,s,c);T("x",w[0]),T("y",w[1]),g.noneOrAll(i,n,["x","y"]),T("xanchor"),T("yanchor"),g.coerceFont(T,"font",s.font);var S=T("bgcolor");T("activecolor",x.contrast(S,t.lightAmount,t.darkAmount)),T("bordercolor"),T("borderwidth")}};function r(a,i,n,s){var c=s.calendar;function h(T,l){return g.coerce(a,i,e.buttons,T,l)}var v=h("visible");if(v){var p=h("step");p!=="all"&&(c&&c!=="gregorian"&&(p==="month"||p==="year")?i.stepmode="backward":h("stepmode"),h("count")),h("label")}}function o(a,i,n){for(var s=n.filter(function(p){return i[p].anchor===a._id}),c=0,h=0;h1)){delete c.grid;return}if(!T&&!l&&!_){var y=b("pattern")==="independent";y&&(T=!0)}m._hasSubplotGrid=T;var f=b("roworder"),P=f==="top to bottom",L=T?.2:.1,z=T?.3:.1,F,B;w&&c._splomGridDflt&&(F=c._splomGridDflt.xside,B=c._splomGridDflt.yside),m._domains={x:a("x",b,L,F,u),y:a("y",b,z,B,d,P)}}function a(s,c,h,v,p,T){var l=c(s+"gap",h),_=c("domain."+s);c(s+"side",v);for(var w=new Array(p),S=_[0],E=(_[1]-S)/(p-l),m=E*(1-l),b=0;b0,v=r._context.staticPlot;o.each(function(p){var T=p[0].trace,l=T.error_x||{},_=T.error_y||{},w;T.ids&&(w=function(b){return b.id});var S=M.hasMarkers(T)&&T.marker.maxdisplayed>0;!_.visible&&!l.visible&&(p=[]);var E=g.select(this).selectAll("g.errorbar").data(p,w);if(E.exit().remove(),!!p.length){l.visible||E.selectAll("path.xerror").remove(),_.visible||E.selectAll("path.yerror").remove(),E.style("opacity",1);var m=E.enter().append("g").classed("errorbar",!0);h&&m.style("opacity",0).transition().duration(i.duration).style("opacity",1),A.setClipUrl(E,a.layerClipId,r),E.each(function(b){var d=g.select(this),u=e(b,s,c);if(!(S&&!b.vis)){var y,f=d.select("path.yerror");if(_.visible&&x(u.x)&&x(u.yh)&&x(u.ys)){var P=_.width;y="M"+(u.x-P)+","+u.yh+"h"+2*P+"m-"+P+",0V"+u.ys,u.noYS||(y+="m-"+P+",0h"+2*P),n=!f.size(),n?f=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(f=f.transition().duration(i.duration).ease(i.easing)),f.attr("d",y)}else f.remove();var L=d.select("path.xerror");if(l.visible&&x(u.y)&&x(u.xh)&&x(u.xs)){var z=(l.copy_ystyle?_:l).width;y="M"+u.xh+","+(u.y-z)+"v"+2*z+"m0,-"+z+"H"+u.xs,u.noXS||(y+="m0,-"+z+"v"+2*z),n=!L.size(),n?L=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(L=L.transition().duration(i.duration).ease(i.easing)),L.attr("d",y)}else L.remove()}})}})};function e(t,r,o){var a={x:r.c2p(t.x),y:o.c2p(t.y)};return t.yh!==void 0&&(a.yh=o.c2p(t.yh),a.ys=o.c2p(t.ys),x(a.ys)||(a.noYS=!0,a.ys=o.c2p(t.ys,!0))),t.xh!==void 0&&(a.xh=r.c2p(t.xh),a.xs=r.c2p(t.xs),x(a.xs)||(a.noXS=!0,a.xs=r.c2p(t.xs,!0))),a}}}),IB=Ye({"src/components/errorbars/style.js"(X,H){"use strict";var g=_n(),x=Fn();H.exports=function(M){M.each(function(e){var t=e[0].trace,r=t.error_y||{},o=t.error_x||{},a=g.select(this);a.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(x.stroke,r.color),o.copy_ystyle&&(o=r),a.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(x.stroke,o.color)})}}}),RB=Ye({"src/components/errorbars/index.js"(X,H){"use strict";var g=ta(),x=Ou().overrideAll,A=WS(),M={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A)};delete M.error_x.copy_zstyle,delete M.error_y.copy_zstyle,delete M.error_y.copy_ystyle;var e={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A),error_z:g.extendFlat({},A)};delete e.error_x.copy_ystyle,delete e.error_y.copy_ystyle,delete e.error_z.copy_ystyle,delete e.error_z.copy_zstyle,H.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:M,bar:M,histogram:M,scatter3d:x(e,"calc","nested"),scattergl:x(M,"calc","nested")}},supplyDefaults:CB(),calc:LB(),makeComputeError:ZS(),plot:PB(),style:IB(),hoverInfo:t};function t(r,o,a){(o.error_y||{}).visible&&(a.yerr=r.yh-r.y,o.error_y.symmetric||(a.yerrneg=r.y-r.ys)),(o.error_x||{}).visible&&(a.xerr=r.xh-r.x,o.error_x.symmetric||(a.xerrneg=r.x-r.xs))}}}),DB=Ye({"src/components/colorbar/constants.js"(X,H){"use strict";H.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}}}),zB=Ye({"src/components/colorbar/draw.js"(X,H){"use strict";var g=_n(),x=bh(),A=Gu(),M=Hn(),e=Co(),t=bp(),r=ta(),o=r.strTranslate,a=Oo().extendFlat,i=Kd(),n=Bo(),s=Fn(),c=Xg(),h=jl(),v=Up().flipScale,p=R_(),T=I2(),l=Vh(),_=oh(),w=_.LINE_SPACING,S=_.FROM_TL,E=_.FROM_BR,m=DB().cn;function b(L){var z=L._fullLayout,F=z._infolayer.selectAll("g."+m.colorbar).data(d(L),function(B){return B._id});F.enter().append("g").attr("class",function(B){return B._id}).classed(m.colorbar,!0),F.each(function(B){var O=g.select(this);r.ensureSingle(O,"rect",m.cbbg),r.ensureSingle(O,"g",m.cbfills),r.ensureSingle(O,"g",m.cblines),r.ensureSingle(O,"g",m.cbaxis,function(N){N.classed(m.crisp,!0)}),r.ensureSingle(O,"g",m.cbtitleunshift,function(N){N.append("g").classed(m.cbtitle,!0)}),r.ensureSingle(O,"rect",m.cboutline);var I=u(O,B,L);I&&I.then&&(L._promises||[]).push(I),L._context.edits.colorbarPosition&&y(O,B,L)}),F.exit().each(function(B){A.autoMargin(L,B._id)}).remove(),F.order()}function d(L){var z=L._fullLayout,F=L.calcdata,B=[],O,I,N,U;function W(j){return a(j,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function Q(){typeof U.calc=="function"?U.calc(L,N,O):(O._fillgradient=I.reversescale?v(I.colorscale):I.colorscale,O._zrange=[I[U.min],I[U.max]])}for(var ue=0;ue1){var Fe=Math.pow(10,Math.floor(Math.log(yt)/Math.LN10));vr*=Fe*r.roundUp(yt/Fe,[2,5,10]),(Math.abs(at.start)/at.size+1e-6)%1<2e-6&&(ar.tick0=0)}ar.dtick=vr}ar.domain=B?[jt+$/ee.h,jt+ze-$/ee.h]:[jt+G/ee.w,jt+ze-G/ee.w],ar.setScale(),L.attr("transform",o(Math.round(ee.l),Math.round(ee.t)));var Ke=L.select("."+m.cbtitleunshift).attr("transform",o(-Math.round(ee.l),-Math.round(ee.t))),Ne=ar.ticklabelposition,Ee=ar.title.font.size,Ve=L.select("."+m.cbaxis),ke,Te=0,Le=0;function rt(Gt,Kt){var sr={propContainer:ar,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:j._dfltTitle.colorbar,containerGroup:L.select("."+m.cbtitle)},sa=Gt.charAt(0)==="h"?Gt.substr(1):"h"+Gt;L.selectAll("."+sa+",."+sa+"-math-group").remove(),c.draw(F,Gt,a(sr,Kt||{}))}function dt(){if(B&&Cr||!B&&!Cr){var Gt,Kt;Ae==="top"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt-ze)+3+Ee*.75),Ae==="bottom"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt)-3-Ee*.25),Ae==="right"&&(Kt=$+ee.t+nt*Z+3+Ee*.75,Gt=G+ee.l+tt*jt),rt(ar._id+"title",{attributes:{x:Gt,y:Kt,"text-anchor":B?"start":"middle"}})}}function xt(){if(B&&!Cr||!B&&Cr){var Gt=ar.position||0,Kt=ar._offset+ar._length/2,sr,sa;if(Ae==="right")sa=Kt,sr=ee.l+tt*Gt+10+Ee*(ar.showticklabels?1:.5);else if(sr=Kt,Ae==="bottom"&&(sa=ee.t+nt*Gt+10+(Ne.indexOf("inside")===-1?ar.tickfont.size:0)+(ar.ticks!=="intside"&&z.ticklen||0)),Ae==="top"){var Aa=be.text.split("
").length;sa=ee.t+nt*Gt+10-Me-w*Ee*Aa}rt((B?"h":"v")+ar._id+"title",{avoid:{selection:g.select(F).selectAll("g."+ar._id+"tick"),side:Ae,offsetTop:B?0:ee.t,offsetLeft:B?ee.l:0,maxShift:B?j.width:j.height},attributes:{x:sr,y:sa,"text-anchor":"middle"},transform:{rotate:B?-90:0,offset:0}})}}function It(){if(!B&&!Cr||B&&Cr){var Gt=L.select("."+m.cbtitle),Kt=Gt.select("text"),sr=[-W/2,W/2],sa=Gt.select(".h"+ar._id+"title-math-group").node(),Aa=15.6;Kt.node()&&(Aa=parseInt(Kt.node().style.fontSize,10)*w);var La;if(sa?(La=n.bBox(sa),Le=La.width,Te=La.height,Te>Aa&&(sr[1]-=(Te-Aa)/2)):Kt.node()&&!Kt.classed(m.jsPlaceholder)&&(La=n.bBox(Kt.node()),Le=La.width,Te=La.height),B){if(Te){if(Te+=5,Ae==="top")ar.domain[1]-=Te/ee.h,sr[1]*=-1;else{ar.domain[0]+=Te/ee.h;var ka=h.lineCount(Kt);sr[1]+=(1-ka)*Aa}Gt.attr("transform",o(sr[0],sr[1])),ar.setScale()}}else Le&&(Ae==="right"&&(ar.domain[0]+=(Le+Ee/2)/ee.w),Gt.attr("transform",o(sr[0],sr[1])),ar.setScale())}L.selectAll("."+m.cbfills+",."+m.cblines).attr("transform",B?o(0,Math.round(ee.h*(1-ar.domain[1]))):o(Math.round(ee.w*ar.domain[0]),0)),Ve.attr("transform",B?o(0,Math.round(-ee.t)):o(Math.round(-ee.l),0));var Ga=L.select("."+m.cbfills).selectAll("rect."+m.cbfill).attr("style","").data(et);Ga.enter().append("rect").classed(m.cbfill,!0).attr("style",""),Ga.exit().remove();var Ma=Be.map(ar.c2p).map(Math.round).sort(function(Vt,Ut){return Vt-Ut});Ga.each(function(Vt,Ut){var xr=[Ut===0?Be[0]:(et[Ut]+et[Ut-1])/2,Ut===et.length-1?Be[1]:(et[Ut]+et[Ut+1])/2].map(ar.c2p).map(Math.round);B&&(xr[1]=r.constrain(xr[1]+(xr[1]>xr[0])?1:-1,Ma[0],Ma[1]));var Zr=g.select(this).attr(B?"x":"y",Qe).attr(B?"y":"x",g.min(xr)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(g.max(xr)-g.min(xr),2));if(z._fillgradient)n.gradient(Zr,F,z._id,B?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var pa=Ze(Vt).replace("e-","");Zr.attr("fill",x(pa).toHexString())}});var Ua=L.select("."+m.cblines).selectAll("path."+m.cbline).data(fe.color&&fe.width?lt:[]);Ua.enter().append("path").classed(m.cbline,!0),Ua.exit().remove(),Ua.each(function(Vt){var Ut=Qe,xr=Math.round(ar.c2p(Vt))+fe.width/2%1;g.select(this).attr("d","M"+(B?Ut+","+xr:xr+","+Ut)+(B?"h":"v")+Me).call(n.lineGroupStyle,fe.width,Ie(Vt),fe.dash)}),Ve.selectAll("g."+ar._id+"tick,path").remove();var ni=Qe+Me+(W||0)/2-(z.ticks==="outside"?1:0),Wt=e.calcTicks(ar),zt=e.getTickSigns(ar)[2];return e.drawTicks(F,ar,{vals:ar.ticks==="inside"?e.clipEnds(ar,Wt):Wt,layer:Ve,path:e.makeTickPath(ar,ni,zt),transFn:e.makeTransTickFn(ar)}),e.drawLabels(F,ar,{vals:Wt,layer:Ve,transFn:e.makeTransTickLabelFn(ar),labelFns:e.makeLabelFns(ar,ni)})}function Bt(){var Gt,Kt=Me+W/2;Ne.indexOf("inside")===-1&&(Gt=n.bBox(Ve.node()),Kt+=B?Gt.width:Gt.height),ke=Ke.select("text");var sr=0,sa=B&&Ae==="top",Aa=!B&&Ae==="right",La=0;if(ke.node()&&!ke.classed(m.jsPlaceholder)){var ka,Ga=Ke.select(".h"+ar._id+"title-math-group").node();Ga&&(B&&Cr||!B&&!Cr)?(Gt=n.bBox(Ga),sr=Gt.width,ka=Gt.height):(Gt=n.bBox(Ke.node()),sr=Gt.right-ee.l-(B?Qe:ur),ka=Gt.bottom-ee.t-(B?ur:Qe),!B&&Ae==="top"&&(Kt+=Gt.height,La=Gt.height)),Aa&&(ke.attr("transform",o(sr/2+Ee/2,0)),sr*=2),Kt=Math.max(Kt,B?sr:ka)}var Ma=(B?G:$)*2+Kt+Q+W/2,Ua=0;!B&&be.text&&he==="bottom"&&Z<=0&&(Ua=Ma/2,Ma+=Ua,La+=Ua),j._hColorbarMoveTitle=Ua,j._hColorbarMoveCBTitle=La;var ni=Q+W,Wt=(B?Qe:ur)-ni/2-(B?G:0),zt=(B?ur:Qe)-(B?ce:$+La-Ua);L.select("."+m.cbbg).attr("x",Wt).attr("y",zt).attr(B?"width":"height",Math.max(Ma-Ua,2)).attr(B?"height":"width",Math.max(ce+ni,2)).call(s.fill,ue).call(s.stroke,z.bordercolor).style("stroke-width",Q);var Vt=Aa?Math.max(sr-10,0):0;L.selectAll("."+m.cboutline).attr("x",(B?Qe:ur+G)+Vt).attr("y",(B?ur+$-ce:Qe)+(sa?Te:0)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(ce-(B?2*$+Te:2*G+Vt),2)).call(s.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var Ut=B?Ct*Ma:0,xr=B?0:(1-St)*Ma-La;if(Ut=ne?ee.l-Ut:-Ut,xr=re?ee.t-xr:-xr,L.attr("transform",o(Ut,xr)),!B&&(Q||x(ue).getAlpha()&&!x.equals(j.paper_bgcolor,ue))){var Zr=Ve.selectAll("text"),pa=Zr[0].length,Xr=L.select("."+m.cbbg).node(),Ea=n.bBox(Xr),Fa=n.getTranslate(L),qa=2;Zr.each(function(Fr,Lr){var Jr=0,oa=pa-1;if(Lr===Jr||Lr===oa){var ca=n.bBox(this),kt=n.getTranslate(this),ir;if(Lr===oa){var mr=ca.right+kt.x,$r=Ea.right+Fa.x+ur-Q-qa+J;ir=$r-mr,ir>0&&(ir=0)}else if(Lr===Jr){var ma=ca.left+kt.x,Ba=Ea.left+Fa.x+ur+Q+qa;ir=Ba-ma,ir<0&&(ir=0)}ir&&(pa<3?this.setAttribute("transform","translate("+ir+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var ya={},$a=S[se],mt=E[se],gt=S[he],Er=E[he],kr=Ma-Me;B?(I==="pixels"?(ya.y=Z,ya.t=ce*gt,ya.b=ce*Er):(ya.t=ya.b=0,ya.yt=Z+O*gt,ya.yb=Z-O*Er),U==="pixels"?(ya.x=J,ya.l=Ma*$a,ya.r=Ma*mt):(ya.l=kr*$a,ya.r=kr*mt,ya.xl=J-N*$a,ya.xr=J+N*mt)):(I==="pixels"?(ya.x=J,ya.l=ce*$a,ya.r=ce*mt):(ya.l=ya.r=0,ya.xl=J+O*$a,ya.xr=J-O*mt),U==="pixels"?(ya.y=1-Z,ya.t=Ma*gt,ya.b=Ma*Er):(ya.t=kr*gt,ya.b=kr*Er,ya.yt=Z-N*gt,ya.yb=Z+N*Er));var br=z.y<.5?"b":"t",Tr=z.x<.5?"l":"r";F._fullLayout._reservedMargin[z._id]={};var Mr={r:j.width-Wt-Ut,l:Wt+ya.r,b:j.height-zt-xr,t:zt+ya.b};ne&&re?A.autoMargin(F,z._id,ya):ne?F._fullLayout._reservedMargin[z._id][br]=Mr[br]:re||B?F._fullLayout._reservedMargin[z._id][Tr]=Mr[Tr]:F._fullLayout._reservedMargin[z._id][br]=Mr[br]}return r.syncOrAsync([A.previousPromises,dt,It,xt,A.previousPromises,Bt],F)}function y(L,z,F){var B=z.orientation==="v",O=F._fullLayout,I=O._size,N,U,W;t.init({element:L.node(),gd:F,prepFn:function(){N=L.attr("transform"),i(L)},moveFn:function(Q,ue){L.attr("transform",N+o(Q,ue)),U=t.align((B?z._uFrac:z._vFrac)+Q/I.w,B?z._thickFrac:z._lenFrac,0,1,z.xanchor),W=t.align((B?z._vFrac:1-z._uFrac)-ue/I.h,B?z._lenFrac:z._thickFrac,0,1,z.yanchor);var se=t.getCursor(U,W,z.xanchor,z.yanchor);i(L,se)},doneFn:function(){if(i(L),U!==void 0&&W!==void 0){var Q={};Q[z._propPrefix+"x"]=U,Q[z._propPrefix+"y"]=W,z._traceIndex!==void 0?M.call("_guiRestyle",F,Q,z._traceIndex):M.call("_guiRelayout",F,Q)}}})}function f(L,z,F){var B=z._levels,O=[],I=[],N,U,W=B.end+B.size/100,Q=B.size,ue=1.001*F[0]-.001*F[1],se=1.001*F[1]-.001*F[0];for(U=0;U<1e5&&(N=B.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>ue&&N0?N>=W:N<=W));U++)N>F[0]&&N-1}H.exports=function(o,a){var i,n=o.data,s=o.layout,c=M([],n),h=M({},s,e(a.tileClass)),v=o._context||{};if(a.width&&(h.width=a.width),a.height&&(h.height=a.height),a.tileClass==="thumbnail"||a.tileClass==="themes__thumb"){h.annotations=[];var p=Object.keys(h);for(i=0;i=0)return v}else if(typeof v=="string"&&(v=v.trim(),v.slice(-1)==="%"&&g(v.slice(0,-1))&&(v=+v.slice(0,-1),v>=0)))return v+"%"}function h(v,p,T,l,_,w){w=w||{};var S=w.moduleHasSelected!==!1,E=w.moduleHasUnselected!==!1,m=w.moduleHasConstrain!==!1,b=w.moduleHasCliponaxis!==!1,d=w.moduleHasTextangle!==!1,u=w.moduleHasInsideanchor!==!1,y=!!w.hasPathbar,f=Array.isArray(_)||_==="auto",P=f||_==="inside",L=f||_==="outside";if(P||L){var z=i(l,"textfont",T.font),F=x.extendFlat({},z),B=v.textfont&&v.textfont.color,O=!B;if(O&&delete F.color,i(l,"insidetextfont",F),y){var I=x.extendFlat({},z);O&&delete I.color,i(l,"pathbar.textfont",I)}L&&i(l,"outsidetextfont",z),S&&l("selected.textfont.color"),E&&l("unselected.textfont.color"),m&&l("constraintext"),b&&l("cliponaxis"),d&&l("textangle"),l("texttemplate")}P&&u&&l("insidetextanchor")}H.exports={supplyDefaults:n,crossTraceDefaults:s,handleText:h,validateCornerradius:c}}}),YS=Ye({"src/traces/bar/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=Co(),A=ta(),M=N2(),e=gd().validateCornerradius;H.exports=function(t,r,o){function a(S,E){return A.coerce(t,r,M,S,E)}for(var i=!1,n=!1,s=!1,c={},h=a("barmode"),v=h==="group",p=0;p0&&!c[l]&&(s=!0),c[l]=!0),T.visible&&T.type==="histogram"){var _=x.getFromId({_fullLayout:r},T[T.orientation==="v"?"xaxis":"yaxis"]);_.type!=="category"&&(n=!0)}}if(!i){delete r.barmode;return}h!=="overlay"&&a("barnorm"),a("bargap",n&&!s?0:.2),a("bargroupgap");var w=a("barcornerradius");r.barcornerradius=e(w)}}}),z_=Ye({"src/traces/bar/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;er;if(!o)return M}return e!==void 0?e:A.dflt},X.coerceColor=function(A,M,e){return g(M).isValid()?M:e!==void 0?e:A.dflt},X.coerceEnumerated=function(A,M,e){return A.coerceNumber&&(M=+M),A.values.indexOf(M)!==-1?M:e!==void 0?e:A.dflt},X.getValue=function(A,M){var e;return x(A)?M1||y.bargap===0&&y.bargroupgap===0&&!f[0].trace.marker.line.width)&&g.select(this).attr("shape-rendering","crispEdges")}),d.selectAll("g.points").each(function(f){var P=g.select(this),L=f[0].trace;c(P,L,b)}),e.getComponentMethod("errorbars","style")(d)}function c(b,d,u){A.pointStyle(b.selectAll("path"),d,u),h(b,d,u)}function h(b,d,u){b.selectAll("text").each(function(y){var f=g.select(this),P=M.ensureUniformFontSize(u,l(f,y,d,u));A.font(f,P)})}function v(b,d,u){var y=d[0].trace;y.selectedpoints?p(u,y,b):(c(u,y,b),e.getComponentMethod("errorbars","style")(u))}function p(b,d,u){A.selectedPointStyle(b.selectAll("path"),d),T(b.selectAll("text"),d,u)}function T(b,d,u){b.each(function(y){var f=g.select(this),P;if(y.selected){P=M.ensureUniformFontSize(u,l(f,y,d,u));var L=d.selected.textfont&&d.selected.textfont.color;L&&(P.color=L),A.font(f,P)}else A.selectedTextStyle(f,d)})}function l(b,d,u,y){var f=y._fullLayout.font,P=u.textfont;if(b.classed("bartext-inside")){var L=m(d,u);P=w(u,d.i,f,L)}else b.classed("bartext-outside")&&(P=S(u,d.i,f));return P}function _(b,d,u){return E(o,b.textfont,d,u)}function w(b,d,u,y){var f=_(b,d,u),P=b._input.textfont===void 0||b._input.textfont.color===void 0||Array.isArray(b.textfont.color)&&b.textfont.color[d]===void 0;return P&&(f={color:x.contrast(y),family:f.family,size:f.size,weight:f.weight,style:f.style,variant:f.variant,textcase:f.textcase,lineposition:f.lineposition,shadow:f.shadow}),E(a,b.insidetextfont,d,f)}function S(b,d,u){var y=_(b,d,u);return E(i,b.outsidetextfont,d,y)}function E(b,d,u,y){d=d||{};var f=n.getValue(d.family,u),P=n.getValue(d.size,u),L=n.getValue(d.color,u),z=n.getValue(d.weight,u),F=n.getValue(d.style,u),B=n.getValue(d.variant,u),O=n.getValue(d.textcase,u),I=n.getValue(d.lineposition,u),N=n.getValue(d.shadow,u);return{family:n.coerceString(b.family,f,y.family),size:n.coerceNumber(b.size,P,y.size),color:n.coerceColor(b.color,L,y.color),weight:n.coerceString(b.weight,z,y.weight),style:n.coerceString(b.style,F,y.style),variant:n.coerceString(b.variant,B,y.variant),textcase:n.coerceString(b.variant,O,y.textcase),lineposition:n.coerceString(b.variant,I,y.lineposition),shadow:n.coerceString(b.variant,N,y.shadow)}}function m(b,d){return d.type==="waterfall"?d[b.dir].marker.color:b.mcc||b.mc||d.marker.color}H.exports={style:s,styleTextPoints:h,styleOnSelect:v,getInsideTextFont:w,getOutsideTextFont:S,getBarColor:m,resizeText:t}}}),e0=Ye({"src/traces/bar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=jl(),e=Fn(),t=Bo(),r=Hn(),o=Co().tickText,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=Nd(),c=j2(),h=Qg(),v=Sv(),p=v.text,T=v.textposition,l=Qp().appendArrayPointValue,_=h.TEXTPAD;function w(Q){return Q.id}function S(Q){if(Q.ids)return w}function E(Q){return(Q>0)-(Q<0)}function m(Q,ue){return Q0}function y(Q,ue,se,he,G,$){var J=ue.xaxis,Z=ue.yaxis,re=Q._fullLayout,ne=Q._context.staticPlot;G||(G={mode:re.barmode,norm:re.barmode,gap:re.bargap,groupgap:re.bargroupgap},n("bar",re));var j=A.makeTraceGroups(he,se,"trace bars").each(function(ee){var ie=g.select(this),fe=ee[0].trace,be=ee[0].t,Ae=fe.type==="waterfall",Be=fe.type==="funnel",Ie=fe.type==="histogram",Ze=fe.type==="bar",at=Ze||Be,it=0;Ae&&fe.connector.visible&&fe.connector.mode==="between"&&(it=fe.connector.line.width/2);var et=fe.orientation==="h",lt=u(G),Me=A.ensureSingle(ie,"g","points"),ge=S(fe),ce=Me.selectAll("g.point").data(A.identity,ge);ce.enter().append("g").classed("point",!0),ce.exit().remove(),ce.each(function(tt,nt){var Qe=g.select(this),Ct=b(tt,J,Z,et),St=Ct[0][0],Ot=Ct[0][1],jt=Ct[1][0],ur=Ct[1][1],ar=(et?Ot-St:ur-jt)===0;ar&&at&&c.getLineWidth(fe,tt)&&(ar=!1),ar||(ar=!x(St)||!x(Ot)||!x(jt)||!x(ur)),tt.isBlank=ar,ar&&(et?Ot=St:ur=jt),it&&!ar&&(et?(St-=m(St,Ot)*it,Ot+=m(St,Ot)*it):(jt-=m(jt,ur)*it,ur+=m(jt,ur)*it));var Cr,vr;if(fe.type==="waterfall"){if(!ar){var _r=fe[tt.dir].marker;Cr=_r.line.width,vr=_r.color}}else Cr=c.getLineWidth(fe,tt),vr=tt.mc||fe.marker.color;function yt(ni){var Wt=g.round(Cr/2%1,2);return G.gap===0&&G.groupgap===0?g.round(Math.round(ni)-Wt,2):ni}function Fe(ni,Wt,zt){return zt&&ni===Wt?ni:Math.abs(ni-Wt)>=2?yt(ni):ni>Wt?Math.ceil(ni):Math.floor(ni)}var Ke=e.opacity(vr),Ne=Ke<1||Cr>.01?yt:Fe;Q._context.staticPlot||(St=Ne(St,Ot,et),Ot=Ne(Ot,St,et),jt=Ne(jt,ur,!et),ur=Ne(ur,jt,!et));var Ee=et?J.c2p:Z.c2p,Ve;tt.s0>0?Ve=tt._sMax:tt.s0<0?Ve=tt._sMin:Ve=tt.s1>0?tt._sMax:tt._sMin;function ke(ni,Wt){if(!ni)return 0;var zt=Math.abs(et?ur-jt:Ot-St),Vt=Math.abs(et?Ot-St:ur-jt),Ut=Ne(Math.abs(Ee(Ve,!0)-Ee(0,!0))),xr=tt.hasB?Math.min(zt/2,Vt/2):Math.min(zt/2,Ut),Zr;if(Wt==="%"){var pa=Math.min(50,ni);Zr=zt*(pa/100)}else Zr=ni;return Ne(Math.max(Math.min(Zr,xr),0))}var Te=Ze||Ie?ke(be.cornerradiusvalue,be.cornerradiusform):0,Le,rt,dt="M"+St+","+jt+"V"+ur+"H"+Ot+"V"+jt+"Z",xt=0;if(Te&&tt.s){var It=E(tt.s0)===0||E(tt.s)===E(tt.s0)?tt.s1:tt.s0;if(xt=Ne(tt.hasB?0:Math.abs(Ee(Ve,!0)-Ee(It,!0))),xt0?Math.sqrt(xt*(2*Te-xt)):0,Aa=Bt>0?Math.max:Math.min;Le="M"+St+","+jt+"V"+(ur-sr*Gt)+"H"+Aa(Ot-(Te-xt)*Bt,St)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt-sa)+"V"+(jt+Te*Gt+sa)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Aa(Ot-(Te-xt)*Bt,St)+","+(jt+sr*Gt)+"Z"}else if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(ur-jt)+xt;var La=rt0?Math.sqrt(xt*(2*Te-xt)):0,Ga=Gt>0?Math.max:Math.min;Le="M"+(St+La*Bt)+","+jt+"V"+Ga(ur-(Te-xt)*Gt,jt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt-ka)+","+ur+"H"+(Ot-Te*Bt+ka)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-La*Bt)+","+Ga(ur-(Te-xt)*Gt,jt)+"V"+jt+"Z"}}else Le=dt}else Le=dt;var Ma=d(A.ensureSingle(Qe,"path"),re,G,$);if(Ma.style("vector-effect",ne?"none":"non-scaling-stroke").attr("d",isNaN((Ot-St)*(ur-jt))||ar&&Q._context.staticPlot?"M0,0Z":Le).call(t.setClipUrl,ue.layerClipId,Q),!re.uniformtext.mode&<){var Ua=t.makePointStyleFns(fe);t.singlePointStyle(tt,Ma,fe,Ua,Q)}f(Q,ue,Qe,ee,nt,St,Ot,jt,ur,Te,xt,G,$),ue.layerClipId&&t.hideOutsideRangePoint(tt,Qe.select("text"),J,Z,fe.xcalendar,fe.ycalendar)});var ze=fe.cliponaxis===!1;t.setClipUrl(ie,ze?null:ue.layerClipId,Q)});r.getComponentMethod("errorbars","plot")(Q,j,ue,G)}function f(Q,ue,se,he,G,$,J,Z,re,ne,j,ee,ie){var fe=ue.xaxis,be=ue.yaxis,Ae=Q._fullLayout,Be;function Ie(rt,dt,xt){var It=A.ensureSingle(rt,"text").text(dt).attr({class:"bartext bartext-"+Be,"text-anchor":"middle","data-notex":1}).call(t.font,xt).call(M.convertToTspans,Q);return It}var Ze=he[0].trace,at=Ze.orientation==="h",it=I(Ae,he,G,fe,be);Be=N(Ze,G);var et=ee.mode==="stack"||ee.mode==="relative",lt=he[G],Me=!et||lt._outmost,ge=lt.hasB,ce=ne&&ne-j>_;if(!it||Be==="none"||(lt.isBlank||$===J||Z===re)&&(Be==="auto"||Be==="inside")){se.select("text").remove();return}var ze=Ae.font,tt=s.getBarColor(he[G],Ze),nt=s.getInsideTextFont(Ze,G,ze,tt),Qe=s.getOutsideTextFont(Ze,G,ze),Ct=Ze.insidetextanchor||"end",St=se.datum();at?fe.type==="log"&&St.s0<=0&&(fe.range[0]0&&yt>0,Ne;ce?ge?Ne=P(ur-2*ne,ar,_r,yt,at)||P(ur,ar-2*ne,_r,yt,at):at?Ne=P(ur-(ne-j),ar,_r,yt,at)||P(ur,ar-2*(ne-j),_r,yt,at):Ne=P(ur,ar-(ne-j),_r,yt,at)||P(ur-2*(ne-j),ar,_r,yt,at):Ne=P(ur,ar,_r,yt,at),Ke&&Ne?Be="inside":(Be="outside",Cr.remove(),Cr=null)}else Be="inside";if(!Cr){Fe=A.ensureUniformFontSize(Q,Be==="outside"?Qe:nt),Cr=Ie(se,it,Fe);var Ee=Cr.attr("transform");if(Cr.attr("transform",""),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height,Cr.attr("transform",Ee),_r<=0||yt<=0){Cr.remove();return}}var Ve=Ze.textangle,ke,Te;Be==="outside"?(Te=Ze.constraintext==="both"||Ze.constraintext==="outside",ke=O($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve})):(Te=Ze.constraintext==="both"||Ze.constraintext==="inside",ke=F($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve,anchor:Ct,hasB:ge,r:ne,overhead:j})),ke.fontSize=Fe.size,i(Ze.type==="histogram"?"bar":Ze.type,ke,Ae),lt.transform=ke;var Le=d(Cr,Ae,ee,ie);A.setTransormAndDisplay(Le,ke)}function P(Q,ue,se,he,G){if(Q<0||ue<0)return!1;var $=se<=Q&&he<=ue,J=se<=ue&&he<=Q,Z=G?Q>=se*(ue/he):ue>=he*(Q/se);return $||J||Z}function L(Q){return Q==="auto"?0:Q}function z(Q,ue){var se=Math.PI/180*ue,he=Math.abs(Math.sin(se)),G=Math.abs(Math.cos(se));return{x:Q.width*G+Q.height*he,y:Q.width*he+Q.height*G}}function F(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=$.anchor,j=ne==="end",ee=ne==="start",ie=$.leftToRight||0,fe=(ie+1)/2,be=1-fe,Ae=$.hasB,Be=$.r,Ie=$.overhead,Ze=G.width,at=G.height,it=Math.abs(ue-Q),et=Math.abs(he-se),lt=it>2*_&&et>2*_?_:0;it-=2*lt,et-=2*lt;var Me=L(re);re==="auto"&&!(Ze<=it&&at<=et)&&(Ze>it||at>et)&&(!(Ze>et||at>it)||Ze_){var tt=B(Q,ue,se,he,ge,Be,Ie,J,Ae);ce=tt.scale,ze=tt.pad}else ce=1,Z&&(ce=Math.min(1,it/ge.x,et/ge.y)),ze=0;var nt=G.left*be+G.right*fe,Qe=(G.top+G.bottom)/2,Ct=(Q+_)*be+(ue-_)*fe,St=(se+he)/2,Ot=0,jt=0;if(ee||j){var ur=(J?ge.x:ge.y)/2;Be&&(j||Ae)&&(lt+=ze);var ar=J?m(Q,ue):m(se,he);J?ee?(Ct=Q+ar*lt,Ot=-ar*ur):(Ct=ue-ar*lt,Ot=ar*ur):ee?(St=se+ar*lt,jt=-ar*ur):(St=he-ar*lt,jt=ar*ur)}return{textX:nt,textY:Qe,targetX:Ct,targetY:St,anchorX:Ot,anchorY:jt,scale:ce,rotate:Me}}function B(Q,ue,se,he,G,$,J,Z,re){var ne=Math.max(0,Math.abs(ue-Q)-2*_),j=Math.max(0,Math.abs(he-se)-2*_),ee=$-_,ie=J?ee-Math.sqrt(ee*ee-(ee-J)*(ee-J)):ee,fe=re?ee*2:Z?ee-J:2*ie,be=re?ee*2:Z?2*ie:ee-J,Ae,Be,Ie,Ze,at;return G.y/G.x>=j/(ne-fe)?Ze=j/G.y:G.y/G.x<=(j-be)/ne?Ze=ne/G.x:!re&&Z?(Ae=G.x*G.x+G.y*G.y/4,Be=-2*G.x*(ne-ee)-G.y*(j/2-ee),Ie=(ne-ee)*(ne-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):re?(Ae=(G.x*G.x+G.y*G.y)/4,Be=-G.x*(ne/2-ee)-G.y*(j/2-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):(Ae=G.x*G.x/4+G.y*G.y,Be=-G.x*(ne/2-ee)-2*G.y*(j-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j-ee)*(j-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)),Ze=Math.min(1,Ze),Z?at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(j-G.y*Ze)/2)*(ee-(j-G.y*Ze)/2)))-J):at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(ne-G.x*Ze)/2)*(ee-(ne-G.x*Ze)/2)))-J),{scale:Ze,pad:at}}function O(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=G.width,j=G.height,ee=Math.abs(ue-Q),ie=Math.abs(he-se),fe;J?fe=ie>2*_?_:0:fe=ee>2*_?_:0;var be=1;Z&&(be=J?Math.min(1,ie/j):Math.min(1,ee/ne));var Ae=L(re),Be=z(G,Ae),Ie=(J?Be.x:Be.y)/2,Ze=(G.left+G.right)/2,at=(G.top+G.bottom)/2,it=(Q+ue)/2,et=(se+he)/2,lt=0,Me=0,ge=J?m(ue,Q):m(se,he);return J?(it=ue-ge*fe,lt=ge*Ie):(et=he+ge*fe,Me=-ge*Ie),{textX:Ze,textY:at,targetX:it,targetY:et,anchorX:lt,anchorY:Me,scale:be,rotate:Ae}}function I(Q,ue,se,he,G){var $=ue[0].trace,J=$.texttemplate,Z;return J?Z=U(Q,ue,se,he,G):$.textinfo?Z=W(ue,se,he,G):Z=c.getValue($.text,se),c.coerceString(p,Z)}function N(Q,ue){var se=c.getValue(Q.textposition,ue);return c.coerceEnumerated(T,se)}function U(Q,ue,se,he,G){var $=ue[0].trace,J=A.castOption($,se,"texttemplate");if(!J)return"";var Z=$.type==="histogram",re=$.type==="waterfall",ne=$.type==="funnel",j=$.orientation==="h",ee,ie,fe,be;j?(ee="y",ie=G,fe="x",be=he):(ee="x",ie=he,fe="y",be=G);function Ae(lt){return o(ie,ie.c2l(lt),!0).text}function Be(lt){return o(be,be.c2l(lt),!0).text}var Ie=ue[se],Ze={};Ze.label=Ie.p,Ze.labelLabel=Ze[ee+"Label"]=Ae(Ie.p);var at=A.castOption($,Ie.i,"text");(at===0||at)&&(Ze.text=at),Ze.value=Ie.s,Ze.valueLabel=Ze[fe+"Label"]=Be(Ie.s);var it={};l(it,$,Ie.i),(Z||it.x===void 0)&&(it.x=j?Ze.value:Ze.label),(Z||it.y===void 0)&&(it.y=j?Ze.label:Ze.value),(Z||it.xLabel===void 0)&&(it.xLabel=j?Ze.valueLabel:Ze.labelLabel),(Z||it.yLabel===void 0)&&(it.yLabel=j?Ze.labelLabel:Ze.valueLabel),re&&(Ze.delta=+Ie.rawS||Ie.s,Ze.deltaLabel=Be(Ze.delta),Ze.final=Ie.v,Ze.finalLabel=Be(Ze.final),Ze.initial=Ze.final-Ze.delta,Ze.initialLabel=Be(Ze.initial)),ne&&(Ze.value=Ie.s,Ze.valueLabel=Be(Ze.value),Ze.percentInitial=Ie.begR,Ze.percentInitialLabel=A.formatPercent(Ie.begR),Ze.percentPrevious=Ie.difR,Ze.percentPreviousLabel=A.formatPercent(Ie.difR),Ze.percentTotal=Ie.sumR,Ze.percenTotalLabel=A.formatPercent(Ie.sumR));var et=A.castOption($,Ie.i,"customdata");return et&&(Ze.customdata=et),A.texttemplateString(J,Ze,Q._d3locale,it,Ze,$._meta||{})}function W(Q,ue,se,he){var G=Q[0].trace,$=G.orientation==="h",J=G.type==="waterfall",Z=G.type==="funnel";function re(et){var lt=$?he:se;return o(lt,et,!0).text}function ne(et){var lt=$?se:he;return o(lt,+et,!0).text}var j=G.textinfo,ee=Q[ue],ie=j.split("+"),fe=[],be,Ae=function(et){return ie.indexOf(et)!==-1};if(Ae("label")&&fe.push(re(Q[ue].p)),Ae("text")&&(be=A.castOption(G,ee.i,"text"),(be===0||be)&&fe.push(be)),J){var Be=+ee.rawS||ee.s,Ie=ee.v,Ze=Ie-Be;Ae("initial")&&fe.push(ne(Ze)),Ae("delta")&&fe.push(ne(Be)),Ae("final")&&fe.push(ne(Ie))}if(Z){Ae("value")&&fe.push(ne(ee.s));var at=0;Ae("percent initial")&&at++,Ae("percent previous")&&at++,Ae("percent total")&&at++;var it=at>1;Ae("percent initial")&&(be=A.formatPercent(ee.begR),it&&(be+=" of initial"),fe.push(be)),Ae("percent previous")&&(be=A.formatPercent(ee.difR),it&&(be+=" of previous"),fe.push(be)),Ae("percent total")&&(be=A.formatPercent(ee.sumR),it&&(be+=" of total"),fe.push(be))}return fe.join("
")}H.exports={plot:y,toMoveInsideBar:F}}}),c1=Ye({"src/traces/bar/hover.js"(X,H){"use strict";var g=Lc(),x=Hn(),A=Fn(),M=ta().fillText,e=j2().getLineWidth,t=Co().hoverLabelText,r=ks().BADNUM;function o(n,s,c,h,v){var p=a(n,s,c,h,v);if(p){var T=p.cd,l=T[0].trace,_=T[p.index];return p.color=i(l,_),x.getComponentMethod("errorbars","hoverInfo")(_,l,p),[p]}}function a(n,s,c,h,v){var p=n.cd,T=p[0].trace,l=p[0].t,_=h==="closest",w=T.type==="waterfall",S=n.maxHoverDistance,E=n.maxSpikeDistance,m,b,d,u,y,f,P;T.orientation==="h"?(m=c,b=s,d="y",u="x",y=he,f=Q):(m=s,b=c,d="x",u="y",f=he,y=Q);var L=T[d+"period"],z=_||L;function F(be){return O(be,-1)}function B(be){return O(be,1)}function O(be,Ae){var Be=be.w;return be[d]+Ae*Be/2}function I(be){return be[d+"End"]-be[d+"Start"]}var N=_?F:L?function(be){return be.p-I(be)/2}:function(be){return Math.min(F(be),be.p-l.bardelta/2)},U=_?B:L?function(be){return be.p+I(be)/2}:function(be){return Math.max(B(be),be.p+l.bardelta/2)};function W(be,Ae,Be){return v.finiteRange&&(Be=0),g.inbox(be-m,Ae-m,Be+Math.min(1,Math.abs(Ae-be)/P)-1)}function Q(be){return W(N(be),U(be),S)}function ue(be){return W(F(be),B(be),E)}function se(be){var Ae=be[u];if(w){var Be=Math.abs(be.rawS)||0;b>0?Ae+=Be:b<0&&(Ae-=Be)}return Ae}function he(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,S+(Ie-Ae)/(Ie-Be)-1)}function G(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,E+(Ie-Ae)/(Ie-Be)-1)}var $=n[d+"a"],J=n[u+"a"];P=Math.abs($.r2c($.range[1])-$.r2c($.range[0]));function Z(be){return(y(be)+f(be))/2}var re=g.getDistanceFunction(h,y,f,Z);if(g.getClosest(p,re,n),n.index!==!1&&p[n.index].p!==r){z||(N=function(be){return Math.min(F(be),be.p-l.bargroupwidth/2)},U=function(be){return Math.max(B(be),be.p+l.bargroupwidth/2)});var ne=n.index,j=p[ne],ee=T.base?j.b+j.s:j.s;n[u+"0"]=n[u+"1"]=J.c2p(j[u],!0),n[u+"LabelVal"]=ee;var ie=l.extents[l.extents.round(j.p)];n[d+"0"]=$.c2p(_?N(j):ie[0],!0),n[d+"1"]=$.c2p(_?U(j):ie[1],!0);var fe=j.orig_p!==void 0;return n[d+"LabelVal"]=fe?j.orig_p:j.p,n.labelLabel=t($,n[d+"LabelVal"],T[d+"hoverformat"]),n.valueLabel=t(J,n[u+"LabelVal"],T[u+"hoverformat"]),n.baseLabel=t(J,j.b,T[u+"hoverformat"]),n.spikeDistance=(G(j)+ue(j))/2,n[d+"Spike"]=$.c2p(j.p,!0),M(j,T,n),n.hovertemplate=T.hovertemplate,n}}function i(n,s){var c=s.mcc||n.marker.color,h=s.mlcc||n.marker.line.color,v=e(n,s);if(A.opacity(c))return c;if(A.opacity(h)&&v)return h}H.exports={hoverPoints:o,hoverOnBars:a,getTraceColor:i}}}),GB=Ye({"src/traces/bar/event_data.js"(X,H){"use strict";H.exports=function(x,A,M){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),M.orientation==="h"?(x.label=x.y,x.value=x.x):(x.label=x.x,x.value=x.y),x}}}),f1=Ye({"src/traces/bar/select.js"(X,H){"use strict";H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=e[0].trace,a=o.type==="funnel",i=o.orientation==="h",n=[],s;if(M===!1)for(s=0;s0?(L="v",d>0?z=Math.min(y,u):z=Math.min(u)):d>0?(L="h",z=Math.min(y)):z=0;if(!z){c.visible=!1;return}c._length=z;var N=h("orientation",L);c._hasPreCompStats?N==="v"&&d===0?(h("x0",0),h("dx",1)):N==="h"&&b===0&&(h("y0",0),h("dy",1)):N==="v"&&d===0?h("x0"):N==="h"&&b===0&&h("y0");var U=x.getComponentMethod("calendars","handleTraceDefaults");U(s,c,["x","y"],v)}function i(s,c,h,v){var p=v.prefix,T=g.coerce2(s,c,r,"marker.outliercolor"),l=h("marker.line.outliercolor"),_="outliers";c._hasPreCompStats?_="all":(T||l)&&(_="suspectedoutliers");var w=h(p+"points",_);w?(h("jitter",w==="all"?.3:0),h("pointpos",w==="all"?-1.5:0),h("marker.symbol"),h("marker.opacity"),h("marker.size"),h("marker.angle"),h("marker.color",c.line.color),h("marker.line.color"),h("marker.line.width"),w==="suspectedoutliers"&&(h("marker.line.outliercolor",c.marker.color),h("marker.line.outlierwidth")),h("selected.marker.color"),h("unselected.marker.color"),h("selected.marker.size"),h("unselected.marker.size"),h("text"),h("hovertext")):delete c.marker;var S=h("hoveron");(S==="all"||S.indexOf("points")!==-1)&&h("hovertemplate"),g.coerceSelectionMarkerOpacity(c,h)}function n(s,c){var h,v;function p(w){return g.coerce(v._input,v,r,w)}for(var T=0;Tse.uf};if(E._hasPreCompStats){var ne=E[z],j=function(ar){return L.d2c((E[ar]||[])[f])},ee=1/0,ie=-1/0;for(f=0;f=se.q1&&se.q3>=se.med){var be=j("lowerfence");se.lf=be!==e&&be<=se.q1?be:v(se,G,$);var Ae=j("upperfence");se.uf=Ae!==e&&Ae>=se.q3?Ae:p(se,G,$);var Be=j("mean");se.mean=Be!==e?Be:$?M.mean(G,$):(se.q1+se.q3)/2;var Ie=j("sd");se.sd=Be!==e&&Ie>=0?Ie:$?M.stdev(G,$,se.mean):se.q3-se.q1,se.lo=T(se),se.uo=l(se);var Ze=j("notchspan");Ze=Ze!==e&&Ze>0?Ze:_(se,$),se.ln=se.med-Ze,se.un=se.med+Ze;var at=se.lf,it=se.uf;E.boxpoints&&G.length&&(at=Math.min(at,G[0]),it=Math.max(it,G[$-1])),E.notched&&(at=Math.min(at,se.ln),it=Math.max(it,se.un)),se.min=at,se.max=it}else{M.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+se.q1,"median = "+se.med,"q3 = "+se.q3].join(` +`));var et;se.med!==e?et=se.med:se.q1!==e?se.q3!==e?et=(se.q1+se.q3)/2:et=se.q1:se.q3!==e?et=se.q3:et=0,se.med=et,se.q1=se.q3=et,se.lf=se.uf=et,se.mean=se.sd=et,se.ln=se.un=et,se.min=se.max=et}ee=Math.min(ee,se.min),ie=Math.max(ie,se.max),se.pts2=he.filter(re),u.push(se)}}E._extremes[L._id]=x.findExtremes(L,[ee,ie],{padded:!0})}else{var lt=L.makeCalcdata(E,z),Me=o(Q,ue),ge=Q.length,ce=a(ge);for(f=0;f=0&&ze0){if(se={},se.pos=se[B]=Q[f],he=se.pts=ce[f].sort(c),G=se[z]=he.map(h),$=G.length,se.min=G[0],se.max=G[$-1],se.mean=M.mean(G,$),se.sd=M.stdev(G,$,se.mean)*E.sdmultiple,se.med=M.interp(G,.5),$%2&&(Ct||St)){var Ot,jt;Ct?(Ot=G.slice(0,$/2),jt=G.slice($/2+1)):St&&(Ot=G.slice(0,$/2+1),jt=G.slice($/2)),se.q1=M.interp(Ot,.5),se.q3=M.interp(jt,.5)}else se.q1=M.interp(G,.25),se.q3=M.interp(G,.75);se.lf=v(se,G,$),se.uf=p(se,G,$),se.lo=T(se),se.uo=l(se);var ur=_(se,$);se.ln=se.med-ur,se.un=se.med+ur,tt=Math.min(tt,se.ln),nt=Math.max(nt,se.un),se.pts2=he.filter(re),u.push(se)}E.notched&&M.isTypedArray(lt)&&(lt=Array.from(lt)),E._extremes[L._id]=x.findExtremes(L,E.notched?lt.concat([tt,nt]):lt,{padded:!0})}return s(u,E),u.length>0?(u[0].t={num:m[y],dPos:ue,posLetter:B,valLetter:z,labels:{med:t(S,"median:"),min:t(S,"min:"),q1:t(S,"q1:"),q3:t(S,"q3:"),max:t(S,"max:"),mean:E.boxmean==="sd"||E.sizemode==="sd"?t(S,"mean \xB1 \u03C3:").replace("\u03C3",E.sdmultiple===1?"\u03C3":E.sdmultiple+"\u03C3"):t(S,"mean:"),lf:t(S,"lower fence:"),uf:t(S,"upper fence:")}},m[y]++,u):[{t:{empty:!0}}]};function r(w,S,E,m){var b=S in w,d=S+"0"in w,u="d"+S in w;if(b||d&&u){var y=E.makeCalcdata(w,S),f=A(w,E,S,y).vals;return[f,y]}var P;d?P=w[S+"0"]:"name"in w&&(E.type==="category"||g(w.name)&&["linear","log"].indexOf(E.type)!==-1||M.isDateTime(w.name)&&E.type==="date")?P=w.name:P=m;for(var L=E.type==="multicategory"?E.r2c_just_indices(P):E.d2c(P,0,w[S+"calendar"]),z=w._length,F=new Array(z),B=0;B1,d=1-s[r+"gap"],u=1-s[r+"groupgap"];for(v=0;v0;if(L==="positive"?(se=z*(P?1:.5),$=G,he=$=B):L==="negative"?(se=$=B,he=z*(P?1:.5),J=G):(se=he=z,$=J=G),ie){var fe=y.pointpos,be=y.jitter,Ae=y.marker.size/2,Be=0;fe+be>=0&&(Be=G*(fe+be),Be>se?(ee=!0,ne=Ae,Z=Be):Be>$&&(ne=Ae,Z=se)),Be<=se&&(Z=se);var Ie=0;fe-be<=0&&(Ie=-G*(fe-be),Ie>he?(ee=!0,j=Ae,re=Ie):Ie>J&&(j=Ae,re=he)),Ie<=he&&(re=he)}else Z=se,re=he;var Ze=new Array(T.length);for(p=0;pE.lo&&(N.so=!0)}return b});S.enter().append("path").classed("point",!0),S.exit().remove(),S.call(A.translatePoints,h,v)}function a(i,n,s,c){var h=n.val,v=n.pos,p=!!v.rangebreaks,T=c.bPos,l=c.bPosPxOffset||0,_=s.boxmean||(s.meanline||{}).visible,w,S;Array.isArray(c.bdPos)?(w=c.bdPos[0],S=c.bdPos[1]):(w=c.bdPos,S=c.bdPos);var E=i.selectAll("path.mean").data(s.type==="box"&&s.boxmean||s.type==="violin"&&s.box.visible&&s.meanline.visible?x.identity:[]);E.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),E.exit().remove(),E.each(function(m){var b=v.c2l(m.pos+T,!0),d=v.l2p(b-w)+l,u=v.l2p(b+S)+l,y=p?(d+u)/2:v.l2p(b)+l,f=h.c2p(m.mean,!0),P=h.c2p(m.mean-m.sd,!0),L=h.c2p(m.mean+m.sd,!0);s.orientation==="h"?g.select(this).attr("d","M"+f+","+d+"V"+u+(_==="sd"?"m0,0L"+P+","+y+"L"+f+","+d+"L"+L+","+y+"Z":"")):g.select(this).attr("d","M"+d+","+f+"H"+u+(_==="sd"?"m0,0L"+y+","+P+"L"+d+","+f+"L"+y+","+L+"Z":""))})}H.exports={plot:t,plotBoxAndWhiskers:r,plotPoints:o,plotBoxMean:a}}}),G2=Ye({"src/traces/box/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo();function M(t,r,o){var a=o||g.select(t).selectAll("g.trace.boxes");a.style("opacity",function(i){return i[0].trace.opacity}),a.each(function(i){var n=g.select(this),s=i[0].trace,c=s.line.width;function h(T,l,_,w){T.style("stroke-width",l+"px").call(x.stroke,_).call(x.fill,w)}var v=n.selectAll("path.box");if(s.type==="candlestick")v.each(function(T){if(!T.empty){var l=g.select(this),_=s[T.dir];h(l,_.line.width,_.line.color,_.fillcolor),l.style("opacity",s.selectedpoints&&!T.selected?.3:1)}});else{h(v,c,s.line.color,s.fillcolor),n.selectAll("path.mean").style({"stroke-width":c,"stroke-dasharray":2*c+"px,"+c+"px"}).call(x.stroke,s.line.color);var p=n.selectAll("path.point");A.pointStyle(p,s,t)}})}function e(t,r,o){var a=r[0].trace,i=o.selectAll("path.point");a.selectedpoints?A.selectedPointStyle(i,a):A.pointStyle(i,a,t)}H.exports={style:M,styleOnSelect:e}}}),JS=Ye({"src/traces/box/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=x.fillText;function t(a,i,n,s){var c=a.cd,h=c[0].trace,v=h.hoveron,p=[],T;return v.indexOf("boxes")!==-1&&(p=p.concat(r(a,i,n,s))),v.indexOf("points")!==-1&&(T=o(a,i,n)),s==="closest"?T?[T]:p:(T&&p.push(T),p)}function r(a,i,n,s){var c=a.cd,h=a.xa,v=a.ya,p=c[0].trace,T=c[0].t,l=p.type==="violin",_,w,S,E,m,b,d,u,y,f,P,L=T.bdPos,z,F,B=T.wHover,O=function(Ie){return S.c2l(Ie.pos)+T.bPos-S.c2l(b)};l&&p.side!=="both"?(p.side==="positive"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze,Ze+B,f)},z=L,F=0),p.side==="negative"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze,f)},z=0,F=L)):(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze+B,f)},z=F=L);var I;l?I=function(Ie){return A.inbox(Ie.span[0]-m,Ie.span[1]-m,f)}:I=function(Ie){return A.inbox(Ie.min-m,Ie.max-m,f)},p.orientation==="h"?(m=i,b=n,d=I,u=y,_="y",S=v,w="x",E=h):(m=n,b=i,d=y,u=I,_="x",S=h,w="y",E=v);var N=Math.min(1,L/Math.abs(S.r2c(S.range[1])-S.r2c(S.range[0])));f=a.maxHoverDistance-N,P=a.maxSpikeDistance-N;function U(Ie){return(d(Ie)+u(Ie))/2}var W=A.getDistanceFunction(s,d,u,U);if(A.getClosest(c,W,a),a.index===!1)return[];var Q=c[a.index],ue=p.line.color,se=(p.marker||{}).color;M.opacity(ue)&&p.line.width?a.color=ue:M.opacity(se)&&p.boxpoints?a.color=se:a.color=p.fillcolor,a[_+"0"]=S.c2p(Q.pos+T.bPos-F,!0),a[_+"1"]=S.c2p(Q.pos+T.bPos+z,!0),a[_+"LabelVal"]=Q.orig_p!==void 0?Q.orig_p:Q.pos;var he=_+"Spike";a.spikeDistance=U(Q)*P/f,a[he]=S.c2p(Q.pos,!0);var G=p.boxmean||p.sizemode==="sd"||(p.meanline||{}).visible,$=p.boxpoints||p.points,J=$&&G?["max","uf","q3","med","mean","q1","lf","min"]:$&&!G?["max","uf","q3","med","q1","lf","min"]:!$&&G?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=E.range[1]0&&(o=!0);for(var s=0;st){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0},max:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]d&&dM){var f=u===x?1:6,P=u===x?"M12":"M1";return function(L,z){var F=T.c2d(L,x,l),B=F.indexOf("-",f);B>0&&(F=F.substr(0,B));var O=T.d2c(F,0,l);if(Or?c>M?c>x*1.1?x:c>A*1.1?A:M:c>e?e:c>t?t:r:Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function n(c,h,v,p,T,l){if(p&&c>M){var _=s(h,T,l),w=s(v,T,l),S=c===x?0:1;return _[S]!==w[S]}return Math.floor(v/c)-Math.floor(h/c)>.1}function s(c,h,v){var p=h.c2d(c,x,v).split("-");return p[0]===""&&(p.unshift(),p[0]="-"+p[0]),p}}}),iM=Ye({"src/traces/histogram/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn(),M=Co(),e=z_(),t=eM(),r=tM(),o=rM(),a=aM();function i(v,p){var T=[],l=[],_=p.orientation==="h",w=M.getFromId(v,_?p.yaxis:p.xaxis),S=_?"y":"x",E={x:"y",y:"x"}[S],m=p[S+"calendar"],b=p.cumulative,d,u=n(v,p,w,S),y=u[0],f=u[1],P=typeof y.size=="string",L=[],z=P?L:y,F=[],B=[],O=[],I=0,N=p.histnorm,U=p.histfunc,W=N.indexOf("density")!==-1,Q,ue,se;b.enabled&&W&&(N=N.replace(/ ?density$/,""),W=!1);var he=U==="max"||U==="min",G=he?null:0,$=t.count,J=r[N],Z=!1,re=function(ge){return w.r2c(ge,0,m)},ne;for(x.isArrayOrTypedArray(p[E])&&U!=="count"&&(ne=p[E],Z=U==="avg",$=t[U]),d=re(y.start),ue=re(y.end)+(d-M.tickIncrement(d,y.size,!1,m))/1e6;d=0&&se=et;d--)if(l[d]){lt=d;break}for(d=et;d<=lt;d++)if(g(T[d])&&g(l[d])){var Me={p:T[d],s:l[d],b:0};b.enabled||(Me.pts=O[d],fe?Me.ph0=Me.ph1=O[d].length?f[O[d][0]]:T[d]:(p._computePh=!0,Me.ph0=Ze(L[d]),Me.ph1=Ze(L[d+1],!0))),it.push(Me)}return it.length===1&&(it[0].width1=M.tickIncrement(it[0].p,y.size,!1,m)-it[0].p),e(it,p),x.isArrayOrTypedArray(p.selectedpoints)&&x.tagSelected(it,p,Be),it}function n(v,p,T,l,_){var w=l+"bins",S=v._fullLayout,E=p["_"+l+"bingroup"],m=S._histogramBinOpts[E],b=S.barmode==="overlay",d,u,y,f,P,L,z,F=function(Ie){return T.r2c(Ie,0,f)},B=function(Ie){return T.c2r(Ie,0,f)},O=T.type==="date"?function(Ie){return Ie||Ie===0?x.cleanDate(Ie,null,f):null}:function(Ie){return g(Ie)?Number(Ie):null};function I(Ie,Ze,at){Ze[Ie+"Found"]?(Ze[Ie]=O(Ze[Ie]),Ze[Ie]===null&&(Ze[Ie]=at[Ie])):(L[Ie]=Ze[Ie]=at[Ie],x.nestedProperty(u[0],w+"."+Ie).set(at[Ie]))}if(p["_"+l+"autoBinFinished"])delete p["_"+l+"autoBinFinished"];else{u=m.traces;var N=[],U=!0,W=!1,Q=!1;for(d=0;d"u"){if(_)return[se,P,!0];se=s(v,p,T,l,w)}z=y.cumulative||{},z.enabled&&z.currentbin!=="include"&&(z.direction==="decreasing"?se.start=B(M.tickIncrement(F(se.start),se.size,!0,f)):se.end=B(M.tickIncrement(F(se.end),se.size,!1,f))),m.size=se.size,m.sizeFound||(L.size=se.size,x.nestedProperty(u[0],w+".size").set(se.size)),I("start",m,se),I("end",m,se)}P=p["_"+l+"pos0"],delete p["_"+l+"pos0"];var G=p._input[w]||{},$=x.extendFlat({},m),J=m.start,Z=T.r2l(G.start),re=Z!==void 0;if((m.startFound||re)&&Z!==T.r2l(J)){var ne=re?Z:x.aggNums(Math.min,null,P),j={type:T.type==="category"||T.type==="multicategory"?"linear":T.type,r2l:T.r2l,dtick:m.size,tick0:J,calendar:f,range:[ne,M.tickIncrement(ne,m.size,!1,f)].map(T.l2r)},ee=M.tickFirst(j);ee>T.r2l(ne)&&(ee=M.tickIncrement(ee,m.size,!0,f)),$.start=T.l2r(ee),re||x.nestedProperty(p,w+".start").set($.start)}var ie=m.end,fe=T.r2l(G.end),be=fe!==void 0;if((m.endFound||be)&&fe!==T.r2l(ie)){var Ae=be?fe:x.aggNums(Math.max,null,P);$.end=T.l2r(Ae),be||x.nestedProperty(p,w+".start").set($.end)}var Be="autobin"+l;return p._input[Be]===!1&&(p._input[w]=x.extendFlat({},p[w]||{}),delete p._input[Be],delete p[Be]),[$,P]}function s(v,p,T,l,_){var w=v._fullLayout,S=c(v,p),E=!1,m=1/0,b=[p],d,u,y;for(d=0;d=0;l--)E(l);else if(p==="increasing"){for(l=1;l=0;l--)v[l]+=v[l+1];T==="exclude"&&(v.push(0),v.shift())}}H.exports={calc:i,calcAllAutoBins:n}}}),$B=Ye({"src/traces/histogram2d/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=eM(),M=tM(),e=rM(),t=aM(),r=iM().calcAllAutoBins;H.exports=function(s,c){var h=x.getFromId(s,c.xaxis),v=x.getFromId(s,c.yaxis),p=c.xcalendar,T=c.ycalendar,l=function(Fe){return h.r2c(Fe,0,p)},_=function(Fe){return v.r2c(Fe,0,T)},w=function(Fe){return h.c2r(Fe,0,p)},S=function(Fe){return v.c2r(Fe,0,T)},E,m,b,d,u=r(s,c,h,"x"),y=u[0],f=u[1],P=r(s,c,v,"y"),L=P[0],z=P[1],F=c._length;f.length>F&&f.splice(F,f.length-F),z.length>F&&z.splice(F,z.length-F);var B=[],O=[],I=[],N=typeof y.size=="string",U=typeof L.size=="string",W=[],Q=[],ue=N?W:y,se=U?Q:L,he=0,G=[],$=[],J=c.histnorm,Z=c.histfunc,re=J.indexOf("density")!==-1,ne=Z==="max"||Z==="min",j=ne?null:0,ee=A.count,ie=M[J],fe=!1,be=[],Ae=[],Be="z"in c?c.z:"marker"in c&&Array.isArray(c.marker.color)?c.marker.color:"";Be&&Z!=="count"&&(fe=Z==="avg",ee=A[Z]);var Ie=y.size,Ze=l(y.start),at=l(y.end)+(Ze-x.tickIncrement(Ze,Ie,!1,p))/1e6;for(E=Ze;E=0&&b=0&&dx;i++)a=e(r,o,M(a));return a>x&&g.log("interp2d didn't converge quickly",a),r};function e(t,r,o){var a=0,i,n,s,c,h,v,p,T,l,_,w,S,E;for(c=0;cS&&(a=Math.max(a,Math.abs(t[n][s]-w)/(E-S))))}return a}}}),K2=Ye({"src/traces/heatmap/find_empties.js"(X,H){"use strict";var g=ta().maxRowLength;H.exports=function(A){var M=[],e={},t=[],r=A[0],o=[],a=[0,0,0],i=g(A),n,s,c,h,v,p,T,l;for(s=0;s=0;v--)h=t[v],s=h[0],c=h[1],p=((e[[s-1,c]]||a)[2]+(e[[s+1,c]]||a)[2]+(e[[s,c-1]]||a)[2]+(e[[s,c+1]]||a)[2])/20,p&&(T[h]=[s,c,p],t.splice(v,1),l=!0);if(!l)throw"findEmpties iterated with no new neighbors";for(h in T)e[h]=T[h],M.push(T[h])}return M.sort(function(_,w){return w[2]-_[2]})}}}),nM=Ye({"src/traces/heatmap/make_bound_array.js"(X,H){"use strict";var g=Hn(),x=ta().isArrayOrTypedArray;H.exports=function(M,e,t,r,o,a){var i=[],n=g.traceIs(M,"contour"),s=g.traceIs(M,"histogram"),c,h,v,p=x(e)&&e.length>1;if(p&&!s&&a.type!=="category"){var T=e.length;if(T<=o){if(n)i=Array.from(e).slice(0,o);else if(o===1)a.type==="log"?i=[.5*e[0],2*e[0]]:i=[e[0]-.5,e[0]+.5];else if(a.type==="log"){for(i=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],v=1;v1){var J=($[$.length-1]-$[0])/($.length-1),Z=Math.abs(J/100);for(F=0;F<$.length-1;F++)if(Math.abs($[F+1]-$[F]-J)>Z)return!1}return!0}T._islinear=!1,l.type==="log"||_.type==="log"?E==="fast"&&I("log axis found"):N(m)?N(y)?T._islinear=!0:E==="fast"&&I("y scale is not linear"):E==="fast"&&I("x scale is not linear");var U=x.maxRowLength(z),W=T.xtype==="scaled"?"":m,Q=n(T,W,b,d,U,l),ue=T.ytype==="scaled"?"":y,se=n(T,ue,f,P,z.length,_);T._extremes[l._id]=A.findExtremes(l,Q),T._extremes[_._id]=A.findExtremes(_,se);var he={x:Q,y:se,z,text:T._text||T.text,hovertext:T._hovertext||T.hovertext};if(T.xperiodalignment&&u&&(he.orig_x=u),T.yperiodalignment&&L&&(he.orig_y=L),W&&W.length===Q.length-1&&(he.xCenter=W),ue&&ue.length===se.length-1&&(he.yCenter=ue),S&&(he.xRanges=B.xRanges,he.yRanges=B.yRanges,he.pts=B.pts),w||t(p,T,{vals:z,cLetter:"z"}),w&&T.contours&&T.contours.coloring==="heatmap"){var G={type:T.type==="contour"?"heatmap":"histogram2d",xcalendar:T.xcalendar,ycalendar:T.ycalendar};he.xfill=n(G,W,b,d,U,l),he.yfill=n(G,ue,f,P,z.length,_)}return[he]};function c(v){for(var p=[],T=v.length,l=0;l0;)re=y.c2p(N[ie]),ie--;for(re0;)ee=f.c2p(U[ie]),ie--;ee=y._length||re<=0||j>=f._length||ee<=0;if(at){var it=L.selectAll("image").data([]);it.exit().remove(),_(L);return}var et,lt;Ae==="fast"?(et=G,lt=he):(et=Ie,lt=Ze);var Me=document.createElement("canvas");Me.width=et,Me.height=lt;var ge=Me.getContext("2d",{willReadFrequently:!0}),ce=n(F,{noNumericCheck:!0,returnArray:!0}),ze,tt;Ae==="fast"?(ze=$?function(Sa){return G-1-Sa}:t.identity,tt=J?function(Sa){return he-1-Sa}:t.identity):(ze=function(Sa){return t.constrain(Math.round(y.c2p(N[Sa])-Z),0,Ie)},tt=function(Sa){return t.constrain(Math.round(f.c2p(U[Sa])-j),0,Ze)});var nt=tt(0),Qe=[nt,nt],Ct=$?0:1,St=J?0:1,Ot=0,jt=0,ur=0,ar=0,Cr,vr,_r,yt,Fe;function Ke(Sa,Ti){if(Sa!==void 0){var ai=ce(Sa);return ai[0]=Math.round(ai[0]),ai[1]=Math.round(ai[1]),ai[2]=Math.round(ai[2]),Ot+=Ti,jt+=ai[0]*Ti,ur+=ai[1]*Ti,ar+=ai[2]*Ti,ai}return[0,0,0,0]}function Ne(Sa,Ti,ai,an){var sn=Sa[ai.bin0];if(sn===void 0)return Ke(void 0,1);var Mn=Sa[ai.bin1],On=Ti[ai.bin0],$n=Ti[ai.bin1],Cn=Mn-sn||0,Lo=On-sn||0,Xi;return Mn===void 0?$n===void 0?Xi=0:On===void 0?Xi=2*($n-sn):Xi=(2*$n-On-sn)*2/3:$n===void 0?On===void 0?Xi=0:Xi=(2*sn-Mn-On)*2/3:On===void 0?Xi=(2*$n-Mn-sn)*2/3:Xi=$n+sn-Mn-On,Ke(sn+ai.frac*Cn+an.frac*(Lo+ai.frac*Xi))}if(Ae!=="default"){var Ee=0,Ve;try{Ve=new Uint8Array(et*lt*4)}catch{Ve=new Array(et*lt*4)}if(Ae==="smooth"){var ke=W||N,Te=Q||U,Le=new Array(ke.length),rt=new Array(Te.length),dt=new Array(Ie),xt=W?S:w,It=Q?S:w,Bt,Gt,Kt;for(ie=0;ieFa||Fa>f._length))for(fe=Zr;feya||ya>y._length)){var $a=o({x:qa,y:Ea},F,m._fullLayout);$a.x=qa,$a.y=Ea;var mt=z.z[ie][fe];mt===void 0?($a.z="",$a.zLabel=""):($a.z=mt,$a.zLabel=e.tickText(Wt,mt,"hover").text);var gt=z.text&&z.text[ie]&&z.text[ie][fe];(gt===void 0||gt===!1)&&(gt=""),$a.text=gt;var Er=t.texttemplateString(Ua,$a,m._fullLayout._d3locale,$a,F._meta||{});if(Er){var kr=Er.split("
"),br=kr.length,Tr=0;for(be=0;be=_[0].length||P<0||P>_.length)return}else{if(g.inbox(o-T[0],o-T[T.length-1],0)>0||g.inbox(a-l[0],a-l[l.length-1],0)>0)return;if(s){var L;for(b=[2*T[0]-T[1]],L=1;L=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),U_=Ye({"src/traces/contour/attributes.js"(X,H){"use strict";var g=h1(),x=Pc(),A=Cc(),M=A.axisHoverFormat,e=A.descriptionOnlyNumbers,t=tu(),r=Uh().dash,o=Au(),a=Oo().extendFlat,i=n3(),n=i.COMPARISON_OPS2,s=i.INTERVAL_OPS,c=x.line;H.exports=a({z:g.z,x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,text:g.text,hovertext:g.hovertext,transpose:g.transpose,xtype:g.xtype,ytype:g.ytype,xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:a({},g.texttemplate,{}),textfont:a({},g.textfont,{}),hoverongaps:g.hoverongaps,connectgaps:a({},g.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:o({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:e("contour label")},operation:{valType:"enumerated",values:[].concat(n).concat(s),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:a({},c.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:r,smoothing:a({},c.smoothing,{}),editType:"plot"},zorder:x.zorder},t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),cM=Ye({"src/traces/histogram2dcontour/attributes.js"(X,H){"use strict";var g=i3(),x=U_(),A=tu(),M=Cc().axisHoverFormat,e=Oo().extendFlat;H.exports=e({x:g.x,y:g.y,z:g.z,marker:g.marker,histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:g.xbins,nbinsy:g.nbinsy,ybins:g.ybins,autobinx:g.autobinx,autobiny:g.autobiny,bingroup:g.bingroup,xbingroup:g.xbingroup,ybingroup:g.ybingroup,autocontour:x.autocontour,ncontours:x.ncontours,contours:x.contours,line:{color:x.line.color,width:e({},x.line.width,{dflt:.5}),dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:x.texttemplate,textfont:x.textfont},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),o3=Ye({"src/traces/contour/contours_defaults.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t=e("contours.start"),r=e("contours.end"),o=t===!1||r===!1,a=M("contours.size"),i;o?i=A.autocontour=!0:i=M("autocontour",!1),(i||!a)&&M("ncontours")}}}),fM=Ye({"src/traces/contour/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e,t){t||(t={});var r=A("contours.showlabels");if(r){var o=M.font;g.coerceFont(A,"contours.labelfont",o,{overrideDflt:{color:e}}),A("contours.labelformat")}t.hasHover!==!1&&A("zhoverformat")}}}),s3=Ye({"src/traces/contour/style_defaults.js"(X,H){"use strict";var g=sh(),x=fM();H.exports=function(M,e,t,r,o){var a=t("contours.coloring"),i,n="";a==="fill"&&(i=t("contours.showlines")),i!==!1&&(a!=="lines"&&(n=t("line.color","#000")),t("line.width",.5),t("line.dash")),a!=="none"&&(M.showlegend!==!0&&(e.showlegend=!1),e._dfltShowLegend=!1,g(M,e,r,t,{prefix:"",cLetter:"z"})),t("line.smoothing"),x(t,r,n,o)}}}),c7=Ye({"src/traces/histogram2dcontour/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=o3(),M=s3(),e=N_(),t=cM();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,t,h,v)}function c(h){return g.coerce2(o,a,t,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,c),M(o,a,s,n),s("xhoverformat"),s("yhoverformat"),s("hovertemplate"),a.contours&&a.contours.coloring==="heatmap"&&e(s,n))}}}),hM=Ye({"src/traces/contour/set_contours.js"(X,H){"use strict";var g=Co(),x=ta();H.exports=function(e,t){var r=e.contours;if(e.autocontour){var o=e.zmin,a=e.zmax;(e.zauto||o===void 0)&&(o=x.aggNums(Math.min,null,t)),(e.zauto||a===void 0)&&(a=x.aggNums(Math.max,null,t));var i=A(o,a,e.ncontours);r.size=i.dtick,r.start=g.tickFirst(i),i.range.reverse(),r.end=g.tickFirst(i),r.start===o&&(r.start+=r.size),r.end===a&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),x.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if(r.type!=="constraint"){var n=r.start,s=r.end,c=e._input.contours;if(n>s&&(r.start=c.start=s,s=r.end=c.end=n,n=r.start),!(r.size>0)){var h;n===s?h=1:h=A(n,s,e.ncontours).dtick,c.size=r.size=h}}};function A(M,e,t){var r={type:"linear",range:[M,e]};return g.autoTicks(r,(e-M)/(t||15)),r}}}),j_=Ye({"src/traces/contour/end_plus.js"(X,H){"use strict";H.exports=function(x){return x.end+x.size/1e6}}}),pM=Ye({"src/traces/contour/calc.js"(X,H){"use strict";var g=Su(),x=J2(),A=hM(),M=j_();H.exports=function(t,r){var o=x(t,r),a=o[0].z;A(r,a);var i=r.contours,n=g.extractOpts(r),s;if(i.coloring==="heatmap"&&n.auto&&r.autocontour===!1){var c=i.start,h=M(i),v=i.size||1,p=Math.floor((h-c)/v)+1;isFinite(v)||(v=1,p=1);var T=c-v/2,l=T+p*v;s=[T,l]}else s=a;return g.calc(t,r,{vals:s,cLetter:"z"}),o}}}),V_=Ye({"src/traces/contour/constants.js"(X,H){"use strict";H.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}}}),dM=Ye({"src/traces/contour/make_crossings.js"(X,H){"use strict";var g=V_();H.exports=function(M){var e=M[0].z,t=e.length,r=e[0].length,o=t===2||r===2,a,i,n,s,c,h,v,p,T;for(i=0;iA?0:1)+(M[0][1]>A?0:2)+(M[1][1]>A?0:4)+(M[1][0]>A?0:8);if(e===5||e===10){var t=(M[0][0]+M[0][1]+M[1][0]+M[1][1])/4;return A>t?e===5?713:1114:e===5?104:208}return e===15?0:e}}}),vM=Ye({"src/traces/contour/find_all_paths.js"(X,H){"use strict";var g=ta(),x=V_();H.exports=function(a,i,n){var s,c,h,v,p;for(i=i||.01,n=n||.01,h=0;h20?(h=x.CHOOSESADDLE[h][(v[0]||v[1])<0?0:1],o.crossings[c]=x.SADDLEREMAINDER[h]):delete o.crossings[c],v=x.NEWDELTA[h],!v){g.log("Found bad marching index:",h,a,o.level);break}p.push(r(o,a,v)),a[0]+=v[0],a[1]+=v[1],c=a.join(","),A(p[p.length-1],p[p.length-2],n,s)&&p.pop();var E=v[0]&&(a[0]<0||a[0]>l-2)||v[1]&&(a[1]<0||a[1]>T-2),m=a[0]===_[0]&&a[1]===_[1]&&v[0]===w[0]&&v[1]===w[1];if(m||i&&E)break;h=o.crossings[c]}S===1e4&&g.log("Infinite loop in contour?");var b=A(p[0],p[p.length-1],n,s),d=0,u=.2*o.smoothing,y=[],f=0,P,L,z,F,B,O,I,N,U,W,Q;for(S=1;S=f;S--)if(P=y[S],P=f&&P+y[L]N&&U--,o.edgepaths[U]=Q.concat(p,W));break}G||(o.edgepaths[N]=p.concat(W))}for(N=0;N20&&a?o===208||o===1114?n=i[0]===0?1:-1:s=i[1]===0?1:-1:x.BOTTOMSTART.indexOf(o)!==-1?s=1:x.LEFTSTART.indexOf(o)!==-1?n=1:x.TOPSTART.indexOf(o)!==-1?s=-1:n=-1,[n,s]}function r(o,a,i){var n=a[0]+Math.max(i[0],0),s=a[1]+Math.max(i[1],0),c=o.z[s][n],h=o.xaxis,v=o.yaxis;if(i[1]){var p=(o.level-c)/(o.z[s][n+1]-c),T=(p!==1?(1-p)*h.c2l(o.x[n]):0)+(p!==0?p*h.c2l(o.x[n+1]):0);return[h.c2p(h.l2c(T),!0),v.c2p(o.y[s],!0),n+p,s]}else{var l=(o.level-c)/(o.z[s+1][n]-c),_=(l!==1?(1-l)*v.c2l(o.y[s]):0)+(l!==0?l*v.c2l(o.y[s+1]):0);return[h.c2p(o.x[n],!0),v.c2p(v.l2c(_),!0),n,s+l]}}}}),f7=Ye({"src/traces/contour/constraint_mapping.js"(X,H){"use strict";var g=n3(),x=jo();H.exports={"[]":M("[]"),"][":M("]["),">":e(">"),"<":e("<"),"=":e("=")};function A(t,r){var o=Array.isArray(r),a;function i(n){return x(n)?+n:null}return g.COMPARISON_OPS2.indexOf(t)!==-1?a=i(o?r[0]:r):g.INTERVAL_OPS.indexOf(t)!==-1?a=o?[i(r[0]),i(r[1])]:[i(r),i(r)]:g.SET_OPS.indexOf(t)!==-1&&(a=o?r.map(i):[i(r)]),a}function M(t){return function(r){r=A(t,r);var o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:o,end:a,size:a-o}}}function e(t){return function(r){return r=A(t,r),{start:r,end:1/0,size:1/0}}}}}),mM=Ye({"src/traces/contour/empty_pathinfo.js"(X,H){"use strict";var g=ta(),x=f7(),A=j_();H.exports=function(e,t,r){for(var o=e.type==="constraint"?x[e._operation](e.value):e,a=o.size,i=[],n=A(o),s=r.trace._carpetTrace,c=s?{xaxis:s.aaxis,yaxis:s.baxis,x:r.a,y:r.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:r.x,y:r.y},h=o.start;h1e3){g.warn("Too many contours, clipping at 1000",e);break}return i}}}),gM=Ye({"src/traces/contour/convert_to_constraints.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e,t,r,o=function(n){return n.reverse()},a=function(n){return n};switch(M){case"=":case"<":return A;case">":for(A.length!==1&&g.warn("Contour data invalid for the specified inequality operation."),t=A[0],e=0;er.level||r.starts.length&&t===r.level)}break;case"constraint":if(A.prefixBoundary=!1,A.edgepaths.length)return;var o=A.x.length,a=A.y.length,i=-1/0,n=1/0;for(e=0;e":s>i&&(A.prefixBoundary=!0);break;case"<":(si||A.starts.length&&h===n)&&(A.prefixBoundary=!0);break;case"][":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),ci&&(A.prefixBoundary=!0);break}break}}}}),l3=Ye({"src/traces/contour/plot.js"(X){"use strict";var H=_n(),g=ta(),x=Bo(),A=Su(),M=jl(),e=Co(),t=wv(),r=Q2(),o=dM(),a=vM(),i=mM(),n=gM(),s=yM(),c=V_(),h=c.LABELOPTIMIZER;X.plot=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;g.makeTraceGroups(u,d,"contour").each(function(P){var L=H.select(this),z=P[0],F=z.trace,B=z.x,O=z.y,I=F.contours,N=i(I,b,z),U=g.ensureSingle(L,"g","heatmapcoloring"),W=[];I.coloring==="heatmap"&&(W=[P]),r(m,b,W,U),o(N),a(N);var Q=y.c2p(B[0],!0),ue=y.c2p(B[B.length-1],!0),se=f.c2p(O[0],!0),he=f.c2p(O[O.length-1],!0),G=[[Q,he],[ue,he],[ue,se],[Q,se]],$=N;I.type==="constraint"&&($=n(N,I._operation)),v(L,G,I),p(L,$,G,I),l(L,N,m,z,I),w(L,b,m,z,G)})};function v(E,m,b){var d=g.ensureSingle(E,"g","contourbg"),u=d.selectAll("path").data(b.coloring==="fill"?[0]:[]);u.enter().append("path"),u.exit().remove(),u.attr("d","M"+m.join("L")+"Z").style("stroke","none")}function p(E,m,b,d){var u=d.coloring==="fill"||d.type==="constraint"&&d._operation!=="=",y="M"+b.join("L")+"Z";u&&s(m,d);var f=g.ensureSingle(E,"g","contourfill"),P=f.selectAll("path").data(u?m:[]);P.enter().append("path"),P.exit().remove(),P.each(function(L){var z=(L.prefixBoundary?y:"")+T(L,b);z?H.select(this).attr("d",z).style("stroke","none"):H.select(this).remove()})}function T(E,m){var b="",d=0,u=E.edgepaths.map(function(Q,ue){return ue}),y=!0,f,P,L,z,F,B;function O(Q){return Math.abs(Q[1]-m[0][1])<.01}function I(Q){return Math.abs(Q[1]-m[2][1])<.01}function N(Q){return Math.abs(Q[0]-m[0][0])<.01}function U(Q){return Math.abs(Q[0]-m[2][0])<.01}for(;u.length;){for(B=x.smoothopen(E.edgepaths[d],E.smoothing),b+=y?B:B.replace(/^M/,"L"),u.splice(u.indexOf(d),1),f=E.edgepaths[d][E.edgepaths[d].length-1],z=-1,L=0;L<4;L++){if(!f){g.log("Missing end?",d,E);break}for(O(f)&&!U(f)?P=m[1]:N(f)?P=m[0]:I(f)?P=m[3]:U(f)&&(P=m[2]),F=0;F=0&&(P=W,z=F):Math.abs(f[1]-P[1])<.01?Math.abs(f[1]-W[1])<.01&&(W[0]-f[0])*(P[0]-W[0])>=0&&(P=W,z=F):g.log("endpt to newendpt is not vert. or horz.",f,P,W)}if(f=P,z>=0)break;b+="L"+P}if(z===E.edgepaths.length){g.log("unclosed perimeter path");break}d=z,y=u.indexOf(d)===-1,y&&(d=u[0],b+="Z")}for(d=0;dh.MAXCOST*2)break;O&&(P/=2),f=z-P/2,L=f+P*1.5}if(B<=h.MAXCOST)return F};function _(E,m,b,d){var u=m.width/2,y=m.height/2,f=E.x,P=E.y,L=E.theta,z=Math.cos(L)*u,F=Math.sin(L)*u,B=(f>d.center?d.right-f:f-d.left)/(z+Math.abs(Math.sin(L)*y)),O=(P>d.middle?d.bottom-P:P-d.top)/(Math.abs(F)+Math.cos(L)*y);if(B<1||O<1)return 1/0;var I=h.EDGECOST*(1/(B-1)+1/(O-1));I+=h.ANGLECOST*L*L;for(var N=f-z,U=P-F,W=f+z,Q=P+F,ue=0;ue=w)&&(r<=_&&(r=_),o>=w&&(o=w),i=Math.floor((o-r)/a)+1,n=0),l=0;l_&&(v.unshift(_),p.unshift(p[0])),v[v.length-1]2?s.value=s.value.slice(2):s.length===0?s.value=[0,1]:s.length<2?(c=parseFloat(s.value[0]),s.value=[c,c+1]):s.value=[parseFloat(s.value[0]),parseFloat(s.value[1])]:g(s.value)&&(c=parseFloat(s.value),s.value=[c,c+1])):(n("contours.value",0),g(s.value)||(r(s.value)?s.value=parseFloat(s.value[0]):s.value=0))}}}),d7=Ye({"src/traces/contour/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Qd(),M=bM(),e=o3(),t=s3(),r=N_(),o=U_();H.exports=function(i,n,s,c){function h(l,_){return g.coerce(i,n,o,l,_)}function v(l){return g.coerce2(i,n,o,l)}var p=x(i,n,h,c);if(!p){n.visible=!1;return}A(i,n,c,h),h("xhoverformat"),h("yhoverformat"),h("text"),h("hovertext"),h("hoverongaps"),h("hovertemplate");var T=h("contours.type")==="constraint";h("connectgaps",g.isArray1D(n.z)),T?M(i,n,h,c,s):(e(i,n,h,v),t(i,n,h,c)),n.contours&&n.contours.coloring==="heatmap"&&r(h,c),h("zorder")}}}),v7=Ye({"src/traces/contour/index.js"(X,H){"use strict";H.exports={attributes:U_(),supplyDefaults:d7(),calc:pM(),plot:l3().plot,style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"contour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),m7=Ye({"lib/contour.js"(X,H){"use strict";H.exports=v7()}}),wM=Ye({"src/traces/scatterternary/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=M.marker,i=M.line,n=a.line;H.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:o({},M.hovertext,{}),line:{color:i.color,width:i.width,dash:r,backoff:i.backoff,shape:o({},i.shape,{values:["linear","spline"]}),smoothing:i.smoothing,editType:"calc"},connectgaps:M.connectgaps,cliponaxis:M.cliponaxis,fill:o({},M.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:A(),marker:o({symbol:a.symbol,opacity:a.opacity,angle:a.angle,angleref:a.angleref,standoff:a.standoff,maxdisplayed:a.maxdisplayed,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,line:o({width:n.width,editType:"calc"},t("marker.line")),gradient:a.gradient,editType:"calc"},t("marker")),textfont:M.textfont,textposition:M.textposition,selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:M.hoveron,hovertemplate:g()}}}),g7=Ye({"src/traces/scatterternary/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=wM();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}var p=v("a"),T=v("b"),l=v("c"),_;if(p?(_=p.length,T?(_=Math.min(_,T.length),l&&(_=Math.min(_,l.length))):l?_=Math.min(_,l.length):_=0):T&&l&&(_=Math.min(T.length,l.length)),!_){s.visible=!1;return}s._length=_,v("sum"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate");var w=_"),o.hovertemplate=h.hovertemplate,r}}}),w7=Ye({"src/traces/scatterternary/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),e[t]){var r=e[t];x.a=r.a,x.b=r.b,x.c=r.c}else x.a=A.a,x.b=A.b,x.c=A.c;return x}}}),T7=Ye({"src/plots/ternary/ternary.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strTranslate,t=M._,r=Fn(),o=Bo(),a=wv(),i=Oo().extendFlat,n=Gu(),s=Co(),c=bp(),h=Lc(),v=Jd(),p=v.freeMode,T=v.rectMode,l=Xg(),_=ff().prepSelect,w=ff().selectOnClick,S=ff().clearOutline,E=ff().clearSelectionsCache,m=wh();function b(I,N){this.id=I.id,this.graphDiv=I.graphDiv,this.init(N),this.makeFramework(N),this.updateFx(N),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}H.exports=b;var d=b.prototype;d.init=function(I){this.container=I._ternarylayer,this.defs=I._defs,this.layoutId=I._uid,this.traceHash={},this.layers={}},d.plot=function(I,N){var U=this,W=N[U.id],Q=N._size;U._hasClipOnAxisFalse=!1;for(var ue=0;ueu*$?(fe=$,ie=fe*u):(ie=G,fe=ie/u),be=se*ie/G,Ae=he*fe/$,j=N.l+N.w*Q-ie/2,ee=N.t+N.h*(1-ue)-fe/2,U.x0=j,U.y0=ee,U.w=ie,U.h=fe,U.sum=J,U.xaxis={type:"linear",range:[Z+2*ne-J,J-Z-2*re],domain:[Q-be/2,Q+be/2],_id:"x"},a(U.xaxis,U.graphDiv._fullLayout),U.xaxis.setScale(),U.xaxis.isPtWithinRange=function(ze){return ze.a>=U.aaxis.range[0]&&ze.a<=U.aaxis.range[1]&&ze.b>=U.baxis.range[1]&&ze.b<=U.baxis.range[0]&&ze.c>=U.caxis.range[1]&&ze.c<=U.caxis.range[0]},U.yaxis={type:"linear",range:[Z,J-re-ne],domain:[ue-Ae/2,ue+Ae/2],_id:"y"},a(U.yaxis,U.graphDiv._fullLayout),U.yaxis.setScale(),U.yaxis.isPtWithinRange=function(){return!0};var Be=U.yaxis.domain[0],Ie=U.aaxis=i({},I.aaxis,{range:[Z,J-re-ne],side:"left",tickangle:(+I.aaxis.tickangle||0)-30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(Ie,U.graphDiv._fullLayout),Ie.setScale();var Ze=U.baxis=i({},I.baxis,{range:[J-Z-ne,re],side:"bottom",domain:U.xaxis.domain,anchor:"free",position:0,_id:"x",_length:ie});a(Ze,U.graphDiv._fullLayout),Ze.setScale();var at=U.caxis=i({},I.caxis,{range:[J-Z-re,ne],side:"right",tickangle:(+I.caxis.tickangle||0)+30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(at,U.graphDiv._fullLayout),at.setScale();var it="M"+j+","+(ee+fe)+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDef.select("path").attr("d",it),U.layers.plotbg.select("path").attr("d",it);var et="M0,"+fe+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDefRelative.select("path").attr("d",et);var lt=e(j,ee);U.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",lt),U.clipDefRelative.select("path").attr("transform",null);var Me=e(j-Ze._offset,ee+fe);U.layers.baxis.attr("transform",Me),U.layers.bgrid.attr("transform",Me);var ge=e(j+ie/2,ee)+"rotate(30)"+e(0,-Ie._offset);U.layers.aaxis.attr("transform",ge),U.layers.agrid.attr("transform",ge);var ce=e(j+ie/2,ee)+"rotate(-30)"+e(0,-at._offset);U.layers.caxis.attr("transform",ce),U.layers.cgrid.attr("transform",ce),U.drawAxes(!0),U.layers.aline.select("path").attr("d",Ie.showline?"M"+j+","+(ee+fe)+"l"+ie/2+",-"+fe:"M0,0").call(r.stroke,Ie.linecolor||"#000").style("stroke-width",(Ie.linewidth||0)+"px"),U.layers.bline.select("path").attr("d",Ze.showline?"M"+j+","+(ee+fe)+"h"+ie:"M0,0").call(r.stroke,Ze.linecolor||"#000").style("stroke-width",(Ze.linewidth||0)+"px"),U.layers.cline.select("path").attr("d",at.showline?"M"+(j+ie/2)+","+ee+"l"+ie/2+","+fe:"M0,0").call(r.stroke,at.linecolor||"#000").style("stroke-width",(at.linewidth||0)+"px"),U.graphDiv._context.staticPlot||U.initInteractions(),o.setClipUrl(U.layers.frontplot,U._hasClipOnAxisFalse?null:U.clipId,U.graphDiv)},d.drawAxes=function(I){var N=this,U=N.graphDiv,W=N.id.substr(7)+"title",Q=N.layers,ue=N.aaxis,se=N.baxis,he=N.caxis;if(N.drawAx(ue),N.drawAx(se),N.drawAx(he),I){var G=Math.max(ue.showticklabels?ue.tickfont.size/2:0,(he.showticklabels?he.tickfont.size*.75:0)+(he.ticks==="outside"?he.ticklen*.87:0)),$=(se.showticklabels?se.tickfont.size:0)+(se.ticks==="outside"?se.ticklen:0)+3;Q["a-title"]=l.draw(U,"a"+W,{propContainer:ue,propName:N.id+".aaxis.title",placeholder:t(U,"Click to enter Component A title"),attributes:{x:N.x0+N.w/2,y:N.y0-ue.title.font.size/3-G,"text-anchor":"middle"}}),Q["b-title"]=l.draw(U,"b"+W,{propContainer:se,propName:N.id+".baxis.title",placeholder:t(U,"Click to enter Component B title"),attributes:{x:N.x0-$,y:N.y0+N.h+se.title.font.size*.83+$,"text-anchor":"middle"}}),Q["c-title"]=l.draw(U,"c"+W,{propContainer:he,propName:N.id+".caxis.title",placeholder:t(U,"Click to enter Component C title"),attributes:{x:N.x0+N.w+$,y:N.y0+N.h+he.title.font.size*.83+$,"text-anchor":"middle"}})}},d.drawAx=function(I){var N=this,U=N.graphDiv,W=I._name,Q=W.charAt(0),ue=I._id,se=N.layers[W],he=30,G=Q+"tickLayout",$=y(I);N[G]!==$&&(se.selectAll("."+ue+"tick").remove(),N[G]=$),I.setScale();var J=s.calcTicks(I),Z=s.clipEnds(I,J),re=s.makeTransTickFn(I),ne=s.getTickSigns(I)[2],j=M.deg2rad(he),ee=ne*(I.linewidth||1)/2,ie=ne*I.ticklen,fe=N.w,be=N.h,Ae=Q==="b"?"M0,"+ee+"l"+Math.sin(j)*ie+","+Math.cos(j)*ie:"M"+ee+",0l"+Math.cos(j)*ie+","+-Math.sin(j)*ie,Be={a:"M0,0l"+be+",-"+fe/2,b:"M0,0l-"+fe/2+",-"+be,c:"M0,0l-"+be+","+fe/2}[Q];s.drawTicks(U,I,{vals:I.ticks==="inside"?Z:J,layer:se,path:Ae,transFn:re,crisp:!1}),s.drawGrid(U,I,{vals:Z,layer:N.layers[Q+"grid"],path:Be,transFn:re,crisp:!1}),s.drawLabels(U,I,{vals:J,layer:se,transFn:re,labelFns:s.makeLabelFns(I,0,he)})};function y(I){return I.ticks+String(I.ticklen)+String(I.showticklabels)}var f=m.MINZOOM/2+.87,P="m-0.87,.5h"+f+"v3h-"+(f+5.2)+"l"+(f/2+2.6)+",-"+(f*.87+4.5)+"l2.6,1.5l-"+f/2+","+f*.87+"Z",L="m0.87,.5h-"+f+"v3h"+(f+5.2)+"l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-2.6,1.5l"+f/2+","+f*.87+"Z",z="m0,1l"+f/2+","+f*.87+"l2.6,-1.5l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-"+(f/2+2.6)+","+(f*.87+4.5)+"l2.6,1.5l"+f/2+",-"+f*.87+"Z",F="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",B=!0;d.clearOutline=function(){E(this.dragOptions),S(this.dragOptions.gd)},d.initInteractions=function(){var I=this,N=I.layers.plotbg.select("path").node(),U=I.graphDiv,W=U._fullLayout._zoomlayer,Q,ue;this.dragOptions={element:N,gd:U,plotinfo:{id:I.id,domain:U._fullLayout[I.id].domain,xaxis:I.xaxis,yaxis:I.yaxis},subplot:I.id,prepFn:function(Me,ge,ce){I.dragOptions.xaxes=[I.xaxis],I.dragOptions.yaxes=[I.yaxis],Q=U._fullLayout._invScaleX,ue=U._fullLayout._invScaleY;var ze=I.dragOptions.dragmode=U._fullLayout.dragmode;p(ze)?I.dragOptions.minDrag=1:I.dragOptions.minDrag=void 0,ze==="zoom"?(I.dragOptions.moveFn=Ze,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=at,be(Me,ge,ce)):ze==="pan"?(I.dragOptions.moveFn=et,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=lt,it(),I.clearOutline(U)):(T(ze)||p(ze))&&_(Me,ge,ce,I.dragOptions,ze)}};var se,he,G,$,J,Z,re,ne,j,ee;function ie(Me){var ge={};return ge[I.id+".aaxis.min"]=Me.a,ge[I.id+".baxis.min"]=Me.b,ge[I.id+".caxis.min"]=Me.c,ge}function fe(Me,ge){var ce=U._fullLayout.clickmode;O(U),Me===2&&(U.emit("plotly_doubleclick",null),A.call("_guiRelayout",U,ie({a:0,b:0,c:0}))),ce.indexOf("select")>-1&&Me===1&&w(ge,U,[I.xaxis],[I.yaxis],I.id,I.dragOptions),ce.indexOf("event")>-1&&h.click(U,ge,I.id)}function be(Me,ge,ce){var ze=N.getBoundingClientRect();se=ge-ze.left,he=ce-ze.top,U._fullLayout._calcInverseTransform(U);var tt=U._fullLayout._invTransform,nt=M.apply3DTransform(tt)(se,he);se=nt[0],he=nt[1],G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G,$=I.aaxis.range[1]-G.a,Z=x(I.graphDiv._fullLayout[I.id].bgcolor).getLuminance(),re="M0,"+I.h+"L"+I.w/2+", 0L"+I.w+","+I.h+"Z",ne=!1,j=W.append("path").attr("class","zoombox").attr("transform",e(I.x0,I.y0)).style({fill:Z>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",re),ee=W.append("path").attr("class","zoombox-corners").attr("transform",e(I.x0,I.y0)).style({fill:r.background,stroke:r.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),I.clearOutline(U)}function Ae(Me,ge){return 1-ge/I.h}function Be(Me,ge){return 1-(Me+(I.h-ge)/Math.sqrt(3))/I.w}function Ie(Me,ge){return(Me-(I.h-ge)/Math.sqrt(3))/I.w}function Ze(Me,ge){var ce=se+Me*Q,ze=he+ge*ue,tt=Math.max(0,Math.min(1,Ae(se,he),Ae(ce,ze))),nt=Math.max(0,Math.min(1,Be(se,he),Be(ce,ze))),Qe=Math.max(0,Math.min(1,Ie(se,he),Ie(ce,ze))),Ct=(tt/2+Qe)*I.w,St=(1-tt/2-nt)*I.w,Ot=(Ct+St)/2,jt=St-Ct,ur=(1-tt)*I.h,ar=ur-jt/u;jt.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),ee.transition().style("opacity",1).duration(200),ne=!0),U.emit("plotly_relayouting",ie(J))}function at(){O(U),J!==G&&(A.call("_guiRelayout",U,ie(J)),B&&U.data&&U._context.showTips&&(M.notifier(t(U,"Double-click to zoom back out"),"long"),B=!1))}function it(){G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G}function et(Me,ge){var ce=Me/I.xaxis._m,ze=ge/I.yaxis._m;J={a:G.a-ze,b:G.b+(ce+ze)/2,c:G.c-(ce-ze)/2};var tt=[J.a,J.b,J.c].sort(M.sorterAsc),nt={a:tt.indexOf(J.a),b:tt.indexOf(J.b),c:tt.indexOf(J.c)};tt[0]<0&&(tt[1]+tt[0]/2<0?(tt[2]+=tt[0]+tt[1],tt[0]=tt[1]=0):(tt[2]+=tt[0]/2,tt[1]+=tt[0]/2,tt[0]=0),J={a:tt[nt.a],b:tt[nt.b],c:tt[nt.c]},ge=(G.a-J.a)*I.yaxis._m,Me=(G.c-J.c-G.b+J.b)*I.xaxis._m);var Qe=e(I.x0+Me,I.y0+ge);I.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",Qe);var Ct=e(-Me,-ge);I.clipDefRelative.select("path").attr("transform",Ct),I.aaxis.range=[J.a,I.sum-J.b-J.c],I.baxis.range=[I.sum-J.a-J.c,J.b],I.caxis.range=[I.sum-J.a-J.b,J.c],I.drawAxes(!1),I._hasClipOnAxisFalse&&I.plotContainer.select(".scatterlayer").selectAll(".trace").call(o.hideOutsideRangePoints,I),U.emit("plotly_relayouting",ie(J))}function lt(){A.call("_guiRelayout",U,ie(J))}N.onmousemove=function(Me){h.hover(U,Me,I.id),U._fullLayout._lasthover=N,U._fullLayout._hoversubplot=I.id},N.onmouseout=function(Me){U._dragging||c.unhover(U,Me)},c.init(this.dragOptions)};function O(I){g.select(I).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}}}),TM=Ye({"src/plots/ternary/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Vh(),M=Ou().overrideAll,e=Oo().extendFlat,t={title:{text:A.title.text,font:A.title.font},color:A.color,tickmode:A.minor.tickmode,nticks:e({},A.nticks,{dflt:6,min:1}),tick0:A.tick0,dtick:A.dtick,tickvals:A.tickvals,ticktext:A.ticktext,ticks:A.ticks,ticklen:A.ticklen,tickwidth:A.tickwidth,tickcolor:A.tickcolor,ticklabelstep:A.ticklabelstep,showticklabels:A.showticklabels,labelalias:A.labelalias,showtickprefix:A.showtickprefix,tickprefix:A.tickprefix,showticksuffix:A.showticksuffix,ticksuffix:A.ticksuffix,showexponent:A.showexponent,exponentformat:A.exponentformat,minexponent:A.minexponent,separatethousands:A.separatethousands,tickfont:A.tickfont,tickangle:A.tickangle,tickformat:A.tickformat,tickformatstops:A.tickformatstops,hoverformat:A.hoverformat,showline:e({},A.showline,{dflt:!0}),linecolor:A.linecolor,linewidth:A.linewidth,showgrid:e({},A.showgrid,{dflt:!0}),gridcolor:A.gridcolor,gridwidth:A.gridwidth,griddash:A.griddash,layer:A.layer,min:{valType:"number",dflt:0,min:0}},r=H.exports=M({domain:x({name:"ternary"}),bgcolor:{valType:"color",dflt:g.background},sum:{valType:"number",dflt:1,min:0},aaxis:t,baxis:t,caxis:t},"plot","from-root");r.uirevision={valType:"any",editType:"none"},r.aaxis.uirevision=r.baxis.uirevision=r.caxis.uirevision={valType:"any",editType:"none"}}}),ig=Ye({"src/plots/subplot_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Wu().defaults;H.exports=function(e,t,r,o){var a=o.type,i=o.attributes,n=o.handleDefaults,s=o.partition||"x",c=t._subplots[a],h=c.length,v=h&&c[0].replace(/\d+$/,""),p,T;function l(E,m){return g.coerce(p,T,i,E,m)}for(var _=0;_=_&&(b.min=0,d.min=0,u.min=0,h.aaxis&&delete h.aaxis.min,h.baxis&&delete h.baxis.min,h.caxis&&delete h.caxis.min)}function c(h,v,p,T){var l=i[v._name];function _(y,f){return A.coerce(h,v,l,y,f)}_("uirevision",T.uirevision),v.type="linear";var w=_("color"),S=w!==l.color.dflt?w:p.font.color,E=v._name,m=E.charAt(0).toUpperCase(),b="Component "+m,d=_("title.text",b);v._hovertitle=d===b?d:m,A.coerceFont(_,"title.font",p.font,{overrideDflt:{size:A.bigFont(p.font.size),color:S}}),_("min"),o(h,v,_,"linear"),t(h,v,_,"linear"),e(h,v,_,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),r(h,v,_,{outerTicks:!0});var u=_("showticklabels");u&&(A.coerceFont(_,"tickfont",p.font,{overrideDflt:{color:S}}),_("tickangle"),_("tickformat")),a(h,v,_,{dfltColor:w,bgColor:p.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:l}),_("hoverformat"),_("layer")}}}),S7=Ye({"src/plots/ternary/index.js"(X){"use strict";var H=T7(),g=jh().getSubplotCalcData,x=ta().counterRegex,A="ternary";X.name=A;var M=X.attr="subplot";X.idRoot=A,X.idRegex=X.attrRegex=x(A);var e=X.attributes={};e[M]={valType:"subplotid",dflt:"ternary",editType:"calc"},X.layoutAttributes=TM(),X.supplyLayoutDefaults=A7(),X.plot=function(r){for(var o=r._fullLayout,a=r.calcdata,i=o._subplots[A],n=0;n0){var E=r.xa,m=r.ya,b,d,u,y,f;h.orientation==="h"?(f=o,b="y",u=m,d="x",y=E):(f=a,b="x",u=E,d="y",y=m);var P=c[r.index];if(f>=P.span[0]&&f<=P.span[1]){var L=x.extendFlat({},r),z=y.c2p(f,!0),F=e.getKdeValue(P,h,f),B=e.getPositionOnKdePath(P,h,z),O=u._offset,I=u._length;L[b+"0"]=B[0],L[b+"1"]=B[1],L[d+"0"]=L[d+"1"]=z,L[d+"Label"]=d+": "+A.hoverLabelText(y,f,h[d+"hoverformat"])+", "+c[0].t.labels.kde+" "+F.toFixed(3);for(var N=0,U=0;U path").each(function(p){if(!p.isBlank){var T=v.marker;g.select(this).call(A.fill,p.mc||T.color).call(A.stroke,p.mlc||T.line.color).call(x.dashLine,T.line.dash,p.mlw||T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".regions").each(function(){g.select(this).selectAll("path").style("stroke-width",0).call(A.fill,v.connector.fillcolor)}),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),H7=Ye({"src/traces/funnel/hover.js"(X,H){"use strict";var g=Fn().opacity,x=c1().hoverOnBars,A=ta().formatPercent;H.exports=function(t,r,o,a,i){var n=x(t,r,o,a,i);if(n){var s=n.cd,c=s[0].trace,h=c.orientation==="h",v=n.index,p=s[v],T=h?"x":"y";n[T+"LabelVal"]=p.s,n.percentInitial=p.begR,n.percentInitialLabel=A(p.begR,1),n.percentPrevious=p.difR,n.percentPreviousLabel=A(p.difR,1),n.percentTotal=p.sumR,n.percentTotalLabel=A(p.sumR,1);var l=p.hi||c.hoverinfo,_=[];if(l&&l!=="none"&&l!=="skip"){var w=l==="all",S=l.split("+"),E=function(m){return w||S.indexOf(m)!==-1};E("percent initial")&&_.push(n.percentInitialLabel+" of initial"),E("percent previous")&&_.push(n.percentPreviousLabel+" of previous"),E("percent total")&&_.push(n.percentTotalLabel+" of total")}return n.extraText=_.join("
"),n.color=M(c,p),[n]}};function M(e,t){var r=e.marker,o=t.mc||r.color,a=t.mlc||r.line.color,i=t.mlw||r.line.width;if(g(o))return o;if(g(a)&&i)return a}}}),G7=Ye({"src/traces/funnel/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"percentInitial"in A&&(x.percentInitial=A.percentInitial),"percentPrevious"in A&&(x.percentPrevious=A.percentPrevious),"percentTotal"in A&&(x.percentTotal=A.percentTotal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),W7=Ye({"src/traces/funnel/index.js"(X,H){"use strict";H.exports={attributes:MM(),layoutAttributes:EM(),supplyDefaults:kM().supplyDefaults,crossTraceDefaults:kM().crossTraceDefaults,supplyLayoutDefaults:B7(),calc:U7(),crossTraceCalc:j7(),plot:V7(),style:q7().style,hoverPoints:H7(),eventData:G7(),selectPoints:f1(),moduleType:"trace",name:"funnel",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),Z7=Ye({"lib/funnel.js"(X,H){"use strict";H.exports=W7()}}),X7=Ye({"src/traces/waterfall/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["initial","delta","final"]}}}),CM=Ye({"src/traces/waterfall/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=X7(),o=Oo().extendFlat,a=Fn();function i(n){return{marker:{color:o({},g.marker.color,{arrayOk:!1,editType:"style"}),line:{color:o({},g.marker.line.color,{arrayOk:!1,editType:"style"}),width:o({},g.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}H.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label"])}),text:g.text,textposition:g.textposition,insidetextanchor:g.insidetextanchor,textangle:g.textangle,textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:g.orientation,offset:g.offset,width:g.width,increasing:i("increasing"),decreasing:i("decreasing"),totals:i("intermediate sums and total"),connector:{line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{editType:"plot"}),dash:x.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder}}}),LM=Ye({"src/traces/waterfall/layout_attributes.js"(X,H){"use strict";H.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),p1=Ye({"src/constants/delta.js"(X,H){"use strict";H.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}}}),PM=Ye({"src/traces/waterfall/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=CM(),r=Fn(),o=p1(),a=o.INCREASING.COLOR,i=o.DECREASING.COLOR,n="#4499FF";function s(v,p,T){v(p+".marker.color",T),v(p+".marker.line.color",r.defaultLine),v(p+".marker.line.width")}function c(v,p,T,l){function _(b,d){return g.coerce(v,p,t,b,d)}var w=M(v,p,l,_);if(!w){p.visible=!1;return}e(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("measure"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");A(v,p,l,_,S,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),p.textposition!=="none"&&(_("texttemplate"),p.texttemplate||_("textinfo")),s(_,"increasing",a),s(_,"decreasing",i),s(_,"totals",n);var E=_("connector.visible");if(E){_("connector.mode");var m=_("connector.line.width");m&&(_("connector.line.color"),_("connector.line.dash"))}_("zorder")}function h(v,p){var T,l;function _(S){return g.coerce(l._input,l,t,S)}if(p.waterfallmode==="group")for(var w=0;w0&&(_?f+="M"+u[0]+","+y[1]+"V"+y[0]:f+="M"+u[1]+","+y[0]+"H"+u[0]),w!=="between"&&(m.isSum||b path").each(function(p){if(!p.isBlank){var T=v[p.dir].marker;g.select(this).call(A.fill,T.color).call(A.stroke,T.line.color).call(x.dashLine,T.line.dash,T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),e4=Ye({"src/traces/waterfall/hover.js"(X,H){"use strict";var g=Co().hoverLabelText,x=Fn().opacity,A=c1().hoverOnBars,M=p1(),e={increasing:M.INCREASING.SYMBOL,decreasing:M.DECREASING.SYMBOL};H.exports=function(o,a,i,n,s){var c=A(o,a,i,n,s);if(!c)return;var h=c.cd,v=h[0].trace,p=v.orientation==="h",T=p?"x":"y",l=p?o.xa:o.ya;function _(P){return g(l,P,v[T+"hoverformat"])}var w=c.index,S=h[w],E=S.isSum?S.b+S.s:S.rawS;c.initial=S.b+S.s-E,c.delta=E,c.final=c.initial+c.delta;var m=_(Math.abs(c.delta));c.deltaLabel=E<0?"("+m+")":m,c.finalLabel=_(c.final),c.initialLabel=_(c.initial);var b=S.hi||v.hoverinfo,d=[];if(b&&b!=="none"&&b!=="skip"){var u=b==="all",y=b.split("+"),f=function(P){return u||y.indexOf(P)!==-1};S.isSum||(f("final")&&(p?!f("x"):!f("y"))&&d.push(c.finalLabel),f("delta")&&(E<0?d.push(c.deltaLabel+" "+e.decreasing):d.push(c.deltaLabel+" "+e.increasing)),f("initial")&&d.push("Initial: "+c.initialLabel))}return d.length&&(c.extraText=d.join("
")),c.color=t(v,S),[c]};function t(r,o){var a=r[o.dir].marker,i=a.color,n=a.line.color,s=a.line.width;if(x(i))return i;if(x(n)&&s)return n}}}),t4=Ye({"src/traces/waterfall/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"initial"in A&&(x.initial=A.initial),"delta"in A&&(x.delta=A.delta),"final"in A&&(x.final=A.final),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),r4=Ye({"src/traces/waterfall/index.js"(X,H){"use strict";H.exports={attributes:CM(),layoutAttributes:LM(),supplyDefaults:PM().supplyDefaults,crossTraceDefaults:PM().crossTraceDefaults,supplyLayoutDefaults:Y7(),calc:K7(),crossTraceCalc:J7(),plot:$7(),style:Q7().style,hoverPoints:e4(),eventData:t4(),selectPoints:f1(),moduleType:"trace",name:"waterfall",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),a4=Ye({"lib/waterfall.js"(X,H){"use strict";H.exports=r4()}}),d1=Ye({"src/traces/image/constants.js"(X,H){"use strict";H.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(g){return g.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(g){var x=g.slice(0,3);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(g){var x=g.slice(0,4);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%",""]}}}}}),IM=Ye({"src/traces/image/attributes.js"(X,H){"use strict";var g=Pl(),x=Pc().zorder,A=xs().hovertemplateAttrs,M=Oo().extendFlat,e=d1().colormodel,t=["rgb","rgba","rgba256","hsl","hsla"],r=[],o=[];for(i=0;i0)throw new Error("Invalid string. Length must be a multiple of 4");var v=c.indexOf("=");v===-1&&(v=h);var p=v===h?0:4-v%4;return[v,p]}function r(c){var h=t(c),v=h[0],p=h[1];return(v+p)*3/4-p}function o(c,h,v){return(h+v)*3/4-v}function a(c){var h,v=t(c),p=v[0],T=v[1],l=new x(o(c,p,T)),_=0,w=T>0?p-4:p,S;for(S=0;S>16&255,l[_++]=h>>8&255,l[_++]=h&255;return T===2&&(h=g[c.charCodeAt(S)]<<2|g[c.charCodeAt(S+1)]>>4,l[_++]=h&255),T===1&&(h=g[c.charCodeAt(S)]<<10|g[c.charCodeAt(S+1)]<<4|g[c.charCodeAt(S+2)]>>2,l[_++]=h>>8&255,l[_++]=h&255),l}function i(c){return H[c>>18&63]+H[c>>12&63]+H[c>>6&63]+H[c&63]}function n(c,h,v){for(var p,T=[],l=h;lw?w:_+l));return p===1?(h=c[v-1],T.push(H[h>>2]+H[h<<4&63]+"==")):p===2&&(h=(c[v-2]<<8)+c[v-1],T.push(H[h>>10]+H[h>>4&63]+H[h<<2&63]+"=")),T.join("")}}}),o4=Ye({"node_modules/ieee754/index.js"(X){X.read=function(H,g,x,A,M){var e,t,r=M*8-A-1,o=(1<>1,i=-7,n=x?M-1:0,s=x?-1:1,c=H[g+n];for(n+=s,e=c&(1<<-i)-1,c>>=-i,i+=r;i>0;e=e*256+H[g+n],n+=s,i-=8);for(t=e&(1<<-i)-1,e>>=-i,i+=A;i>0;t=t*256+H[g+n],n+=s,i-=8);if(e===0)e=1-a;else{if(e===o)return t?NaN:(c?-1:1)*(1/0);t=t+Math.pow(2,A),e=e-a}return(c?-1:1)*t*Math.pow(2,e-A)},X.write=function(H,g,x,A,M,e){var t,r,o,a=e*8-M-1,i=(1<>1,s=M===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=A?0:e-1,h=A?1:-1,v=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(r=isNaN(g)?1:0,t=i):(t=Math.floor(Math.log(g)/Math.LN2),g*(o=Math.pow(2,-t))<1&&(t--,o*=2),t+n>=1?g+=s/o:g+=s*Math.pow(2,1-n),g*o>=2&&(t++,o/=2),t+n>=i?(r=0,t=i):t+n>=1?(r=(g*o-1)*Math.pow(2,M),t=t+n):(r=g*Math.pow(2,n-1)*Math.pow(2,M),t=0));M>=8;H[x+c]=r&255,c+=h,r/=256,M-=8);for(t=t<0;H[x+c]=t&255,c+=h,t/=256,a-=8);H[x+c-h]|=v*128}}}),t0=Ye({"node_modules/buffer/index.js"(X){"use strict";var H=n4(),g=o4(),x=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;X.Buffer=t,X.SlowBuffer=T,X.INSPECT_MAX_BYTES=50;var A=2147483647;X.kMaxLength=A,t.TYPED_ARRAY_SUPPORT=M(),!t.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function M(){try{let Me=new Uint8Array(1),ge={foo:function(){return 42}};return Object.setPrototypeOf(ge,Uint8Array.prototype),Object.setPrototypeOf(Me,ge),Me.foo()===42}catch{return!1}}Object.defineProperty(t.prototype,"parent",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.buffer}}),Object.defineProperty(t.prototype,"offset",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.byteOffset}});function e(Me){if(Me>A)throw new RangeError('The value "'+Me+'" is invalid for option "size"');let ge=new Uint8Array(Me);return Object.setPrototypeOf(ge,t.prototype),ge}function t(Me,ge,ce){if(typeof Me=="number"){if(typeof ge=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return i(Me)}return r(Me,ge,ce)}t.poolSize=8192;function r(Me,ge,ce){if(typeof Me=="string")return n(Me,ge);if(ArrayBuffer.isView(Me))return c(Me);if(Me==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me);if(Ze(Me,ArrayBuffer)||Me&&Ze(Me.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Ze(Me,SharedArrayBuffer)||Me&&Ze(Me.buffer,SharedArrayBuffer)))return h(Me,ge,ce);if(typeof Me=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let ze=Me.valueOf&&Me.valueOf();if(ze!=null&&ze!==Me)return t.from(ze,ge,ce);let tt=v(Me);if(tt)return tt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Me[Symbol.toPrimitive]=="function")return t.from(Me[Symbol.toPrimitive]("string"),ge,ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me)}t.from=function(Me,ge,ce){return r(Me,ge,ce)},Object.setPrototypeOf(t.prototype,Uint8Array.prototype),Object.setPrototypeOf(t,Uint8Array);function o(Me){if(typeof Me!="number")throw new TypeError('"size" argument must be of type number');if(Me<0)throw new RangeError('The value "'+Me+'" is invalid for option "size"')}function a(Me,ge,ce){return o(Me),Me<=0?e(Me):ge!==void 0?typeof ce=="string"?e(Me).fill(ge,ce):e(Me).fill(ge):e(Me)}t.alloc=function(Me,ge,ce){return a(Me,ge,ce)};function i(Me){return o(Me),e(Me<0?0:p(Me)|0)}t.allocUnsafe=function(Me){return i(Me)},t.allocUnsafeSlow=function(Me){return i(Me)};function n(Me,ge){if((typeof ge!="string"||ge==="")&&(ge="utf8"),!t.isEncoding(ge))throw new TypeError("Unknown encoding: "+ge);let ce=l(Me,ge)|0,ze=e(ce),tt=ze.write(Me,ge);return tt!==ce&&(ze=ze.slice(0,tt)),ze}function s(Me){let ge=Me.length<0?0:p(Me.length)|0,ce=e(ge);for(let ze=0;ze=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return Me|0}function T(Me){return+Me!=Me&&(Me=0),t.alloc(+Me)}t.isBuffer=function(ge){return ge!=null&&ge._isBuffer===!0&&ge!==t.prototype},t.compare=function(ge,ce){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),Ze(ce,Uint8Array)&&(ce=t.from(ce,ce.offset,ce.byteLength)),!t.isBuffer(ge)||!t.isBuffer(ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(ge===ce)return 0;let ze=ge.length,tt=ce.length;for(let nt=0,Qe=Math.min(ze,tt);nttt.length?(t.isBuffer(Qe)||(Qe=t.from(Qe)),Qe.copy(tt,nt)):Uint8Array.prototype.set.call(tt,Qe,nt);else if(t.isBuffer(Qe))Qe.copy(tt,nt);else throw new TypeError('"list" argument must be an Array of Buffers');nt+=Qe.length}return tt};function l(Me,ge){if(t.isBuffer(Me))return Me.length;if(ArrayBuffer.isView(Me)||Ze(Me,ArrayBuffer))return Me.byteLength;if(typeof Me!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Me);let ce=Me.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&ce===0)return 0;let tt=!1;for(;;)switch(ge){case"ascii":case"latin1":case"binary":return ce;case"utf8":case"utf-8":return fe(Me).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ce*2;case"hex":return ce>>>1;case"base64":return Be(Me).length;default:if(tt)return ze?-1:fe(Me).length;ge=(""+ge).toLowerCase(),tt=!0}}t.byteLength=l;function _(Me,ge,ce){let ze=!1;if((ge===void 0||ge<0)&&(ge=0),ge>this.length||((ce===void 0||ce>this.length)&&(ce=this.length),ce<=0)||(ce>>>=0,ge>>>=0,ce<=ge))return"";for(Me||(Me="utf8");;)switch(Me){case"hex":return O(this,ge,ce);case"utf8":case"utf-8":return P(this,ge,ce);case"ascii":return F(this,ge,ce);case"latin1":case"binary":return B(this,ge,ce);case"base64":return f(this,ge,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,ge,ce);default:if(ze)throw new TypeError("Unknown encoding: "+Me);Me=(Me+"").toLowerCase(),ze=!0}}t.prototype._isBuffer=!0;function w(Me,ge,ce){let ze=Me[ge];Me[ge]=Me[ce],Me[ce]=ze}t.prototype.swap16=function(){let ge=this.length;if(ge%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let ce=0;cece&&(ge+=" ... "),""},x&&(t.prototype[x]=t.prototype.inspect),t.prototype.compare=function(ge,ce,ze,tt,nt){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),!t.isBuffer(ge))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof ge);if(ce===void 0&&(ce=0),ze===void 0&&(ze=ge?ge.length:0),tt===void 0&&(tt=0),nt===void 0&&(nt=this.length),ce<0||ze>ge.length||tt<0||nt>this.length)throw new RangeError("out of range index");if(tt>=nt&&ce>=ze)return 0;if(tt>=nt)return-1;if(ce>=ze)return 1;if(ce>>>=0,ze>>>=0,tt>>>=0,nt>>>=0,this===ge)return 0;let Qe=nt-tt,Ct=ze-ce,St=Math.min(Qe,Ct),Ot=this.slice(tt,nt),jt=ge.slice(ce,ze);for(let ur=0;ur2147483647?ce=2147483647:ce<-2147483648&&(ce=-2147483648),ce=+ce,at(ce)&&(ce=tt?0:Me.length-1),ce<0&&(ce=Me.length+ce),ce>=Me.length){if(tt)return-1;ce=Me.length-1}else if(ce<0)if(tt)ce=0;else return-1;if(typeof ge=="string"&&(ge=t.from(ge,ze)),t.isBuffer(ge))return ge.length===0?-1:E(Me,ge,ce,ze,tt);if(typeof ge=="number")return ge=ge&255,typeof Uint8Array.prototype.indexOf=="function"?tt?Uint8Array.prototype.indexOf.call(Me,ge,ce):Uint8Array.prototype.lastIndexOf.call(Me,ge,ce):E(Me,[ge],ce,ze,tt);throw new TypeError("val must be string, number or Buffer")}function E(Me,ge,ce,ze,tt){let nt=1,Qe=Me.length,Ct=ge.length;if(ze!==void 0&&(ze=String(ze).toLowerCase(),ze==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(Me.length<2||ge.length<2)return-1;nt=2,Qe/=2,Ct/=2,ce/=2}function St(jt,ur){return nt===1?jt[ur]:jt.readUInt16BE(ur*nt)}let Ot;if(tt){let jt=-1;for(Ot=ce;OtQe&&(ce=Qe-Ct),Ot=ce;Ot>=0;Ot--){let jt=!0;for(let ur=0;urtt&&(ze=tt)):ze=tt;let nt=ge.length;ze>nt/2&&(ze=nt/2);let Qe;for(Qe=0;Qe>>0,isFinite(ze)?(ze=ze>>>0,tt===void 0&&(tt="utf8")):(tt=ze,ze=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let nt=this.length-ce;if((ze===void 0||ze>nt)&&(ze=nt),ge.length>0&&(ze<0||ce<0)||ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");tt||(tt="utf8");let Qe=!1;for(;;)switch(tt){case"hex":return m(this,ge,ce,ze);case"utf8":case"utf-8":return b(this,ge,ce,ze);case"ascii":case"latin1":case"binary":return d(this,ge,ce,ze);case"base64":return u(this,ge,ce,ze);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,ge,ce,ze);default:if(Qe)throw new TypeError("Unknown encoding: "+tt);tt=(""+tt).toLowerCase(),Qe=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(Me,ge,ce){return ge===0&&ce===Me.length?H.fromByteArray(Me):H.fromByteArray(Me.slice(ge,ce))}function P(Me,ge,ce){ce=Math.min(Me.length,ce);let ze=[],tt=ge;for(;tt239?4:nt>223?3:nt>191?2:1;if(tt+Ct<=ce){let St,Ot,jt,ur;switch(Ct){case 1:nt<128&&(Qe=nt);break;case 2:St=Me[tt+1],(St&192)===128&&(ur=(nt&31)<<6|St&63,ur>127&&(Qe=ur));break;case 3:St=Me[tt+1],Ot=Me[tt+2],(St&192)===128&&(Ot&192)===128&&(ur=(nt&15)<<12|(St&63)<<6|Ot&63,ur>2047&&(ur<55296||ur>57343)&&(Qe=ur));break;case 4:St=Me[tt+1],Ot=Me[tt+2],jt=Me[tt+3],(St&192)===128&&(Ot&192)===128&&(jt&192)===128&&(ur=(nt&15)<<18|(St&63)<<12|(Ot&63)<<6|jt&63,ur>65535&&ur<1114112&&(Qe=ur))}}Qe===null?(Qe=65533,Ct=1):Qe>65535&&(Qe-=65536,ze.push(Qe>>>10&1023|55296),Qe=56320|Qe&1023),ze.push(Qe),tt+=Ct}return z(ze)}var L=4096;function z(Me){let ge=Me.length;if(ge<=L)return String.fromCharCode.apply(String,Me);let ce="",ze=0;for(;zeze)&&(ce=ze);let tt="";for(let nt=ge;ntze&&(ge=ze),ce<0?(ce+=ze,ce<0&&(ce=0)):ce>ze&&(ce=ze),cece)throw new RangeError("Trying to access beyond buffer length")}t.prototype.readUintLE=t.prototype.readUIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge+--ce],nt=1;for(;ce>0&&(nt*=256);)tt+=this[ge+--ce]*nt;return tt},t.prototype.readUint8=t.prototype.readUInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]},t.prototype.readUint16LE=t.prototype.readUInt16LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]|this[ge+1]<<8},t.prototype.readUint16BE=t.prototype.readUInt16BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]<<8|this[ge+1]},t.prototype.readUint32LE=t.prototype.readUInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),(this[ge]|this[ge+1]<<8|this[ge+2]<<16)+this[ge+3]*16777216},t.prototype.readUint32BE=t.prototype.readUInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]*16777216+(this[ge+1]<<16|this[ge+2]<<8|this[ge+3])},t.prototype.readBigUInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24,nt=this[++ge]+this[++ge]*2**8+this[++ge]*2**16+ze*2**24;return BigInt(tt)+(BigInt(nt)<>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce*2**24+this[++ge]*2**16+this[++ge]*2**8+this[++ge],nt=this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze;return(BigInt(tt)<>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe=nt&&(tt-=Math.pow(2,8*ce)),tt},t.prototype.readIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=ce,nt=1,Qe=this[ge+--tt];for(;tt>0&&(nt*=256);)Qe+=this[ge+--tt]*nt;return nt*=128,Qe>=nt&&(Qe-=Math.pow(2,8*ce)),Qe},t.prototype.readInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]&128?(255-this[ge]+1)*-1:this[ge]},t.prototype.readInt16LE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge]|this[ge+1]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt16BE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge+1]|this[ge]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]|this[ge+1]<<8|this[ge+2]<<16|this[ge+3]<<24},t.prototype.readInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]<<24|this[ge+1]<<16|this[ge+2]<<8|this[ge+3]},t.prototype.readBigInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=this[ge+4]+this[ge+5]*2**8+this[ge+6]*2**16+(ze<<24);return(BigInt(tt)<>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=(ce<<24)+this[++ge]*2**16+this[++ge]*2**8+this[++ge];return(BigInt(tt)<>>0,ce||N(ge,4,this.length),g.read(this,ge,!0,23,4)},t.prototype.readFloatBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!1,23,4)},t.prototype.readDoubleLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!0,52,8)},t.prototype.readDoubleBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!1,52,8)};function U(Me,ge,ce,ze,tt,nt){if(!t.isBuffer(Me))throw new TypeError('"buffer" argument must be a Buffer instance');if(ge>tt||geMe.length)throw new RangeError("Index out of range")}t.prototype.writeUintLE=t.prototype.writeUIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=1,Qe=0;for(this[ce]=ge&255;++Qe>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=ze-1,Qe=1;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)this[ce+nt]=ge/Qe&255;return ce+ze},t.prototype.writeUint8=t.prototype.writeUInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,255,0),this[ce]=ge&255,ce+1},t.prototype.writeUint16LE=t.prototype.writeUInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeUint16BE=t.prototype.writeUInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeUint32LE=t.prototype.writeUInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce+3]=ge>>>24,this[ce+2]=ge>>>16,this[ce+1]=ge>>>8,this[ce]=ge&255,ce+4},t.prototype.writeUint32BE=t.prototype.writeUInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4};function W(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,ce}function Q(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce+7]=nt,nt=nt>>8,Me[ce+6]=nt,nt=nt>>8,Me[ce+5]=nt,nt=nt>>8,Me[ce+4]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce+3]=Qe,Qe=Qe>>8,Me[ce+2]=Qe,Qe=Qe>>8,Me[ce+1]=Qe,Qe=Qe>>8,Me[ce]=Qe,ce+8}t.prototype.writeBigUInt64LE=et(function(ge,ce=0){return W(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeBigUInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=0,Qe=1,Ct=0;for(this[ce]=ge&255;++nt>0)-Ct&255;return ce+ze},t.prototype.writeIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=ze-1,Qe=1,Ct=0;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt+1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,127,-128),ge<0&&(ge=255+ge+1),this[ce]=ge&255,ce+1},t.prototype.writeInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),this[ce]=ge&255,this[ce+1]=ge>>>8,this[ce+2]=ge>>>16,this[ce+3]=ge>>>24,ce+4},t.prototype.writeInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),ge<0&&(ge=4294967295+ge+1),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4},t.prototype.writeBigInt64LE=et(function(ge,ce=0){return W(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),t.prototype.writeBigInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ue(Me,ge,ce,ze,tt,nt){if(ce+ze>Me.length)throw new RangeError("Index out of range");if(ce<0)throw new RangeError("Index out of range")}function se(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,4,34028234663852886e22,-34028234663852886e22),g.write(Me,ge,ce,ze,23,4),ce+4}t.prototype.writeFloatLE=function(ge,ce,ze){return se(this,ge,ce,!0,ze)},t.prototype.writeFloatBE=function(ge,ce,ze){return se(this,ge,ce,!1,ze)};function he(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,8,17976931348623157e292,-17976931348623157e292),g.write(Me,ge,ce,ze,52,8),ce+8}t.prototype.writeDoubleLE=function(ge,ce,ze){return he(this,ge,ce,!0,ze)},t.prototype.writeDoubleBE=function(ge,ce,ze){return he(this,ge,ce,!1,ze)},t.prototype.copy=function(ge,ce,ze,tt){if(!t.isBuffer(ge))throw new TypeError("argument should be a Buffer");if(ze||(ze=0),!tt&&tt!==0&&(tt=this.length),ce>=ge.length&&(ce=ge.length),ce||(ce=0),tt>0&&tt=this.length)throw new RangeError("Index out of range");if(tt<0)throw new RangeError("sourceEnd out of bounds");tt>this.length&&(tt=this.length),ge.length-ce>>0,ze=ze===void 0?this.length:ze>>>0,ge||(ge=0);let nt;if(typeof ge=="number")for(nt=ce;nt2**32?tt=J(String(ce)):typeof ce=="bigint"&&(tt=String(ce),(ce>BigInt(2)**BigInt(32)||ce<-(BigInt(2)**BigInt(32)))&&(tt=J(tt)),tt+="n"),ze+=` It must be ${ge}. Received ${tt}`,ze},RangeError);function J(Me){let ge="",ce=Me.length,ze=Me[0]==="-"?1:0;for(;ce>=ze+4;ce-=3)ge=`_${Me.slice(ce-3,ce)}${ge}`;return`${Me.slice(0,ce)}${ge}`}function Z(Me,ge,ce){ne(ge,"offset"),(Me[ge]===void 0||Me[ge+ce]===void 0)&&j(ge,Me.length-(ce+1))}function re(Me,ge,ce,ze,tt,nt){if(Me>ce||Me3?ge===0||ge===BigInt(0)?Ct=`>= 0${Qe} and < 2${Qe} ** ${(nt+1)*8}${Qe}`:Ct=`>= -(2${Qe} ** ${(nt+1)*8-1}${Qe}) and < 2 ** ${(nt+1)*8-1}${Qe}`:Ct=`>= ${ge}${Qe} and <= ${ce}${Qe}`,new G.ERR_OUT_OF_RANGE("value",Ct,Me)}Z(ze,tt,nt)}function ne(Me,ge){if(typeof Me!="number")throw new G.ERR_INVALID_ARG_TYPE(ge,"number",Me)}function j(Me,ge,ce){throw Math.floor(Me)!==Me?(ne(Me,ce),new G.ERR_OUT_OF_RANGE(ce||"offset","an integer",Me)):ge<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(ce||"offset",`>= ${ce?1:0} and <= ${ge}`,Me)}var ee=/[^+/0-9A-Za-z-_]/g;function ie(Me){if(Me=Me.split("=")[0],Me=Me.trim().replace(ee,""),Me.length<2)return"";for(;Me.length%4!==0;)Me=Me+"=";return Me}function fe(Me,ge){ge=ge||1/0;let ce,ze=Me.length,tt=null,nt=[];for(let Qe=0;Qe55295&&ce<57344){if(!tt){if(ce>56319){(ge-=3)>-1&&nt.push(239,191,189);continue}else if(Qe+1===ze){(ge-=3)>-1&&nt.push(239,191,189);continue}tt=ce;continue}if(ce<56320){(ge-=3)>-1&&nt.push(239,191,189),tt=ce;continue}ce=(tt-55296<<10|ce-56320)+65536}else tt&&(ge-=3)>-1&&nt.push(239,191,189);if(tt=null,ce<128){if((ge-=1)<0)break;nt.push(ce)}else if(ce<2048){if((ge-=2)<0)break;nt.push(ce>>6|192,ce&63|128)}else if(ce<65536){if((ge-=3)<0)break;nt.push(ce>>12|224,ce>>6&63|128,ce&63|128)}else if(ce<1114112){if((ge-=4)<0)break;nt.push(ce>>18|240,ce>>12&63|128,ce>>6&63|128,ce&63|128)}else throw new Error("Invalid code point")}return nt}function be(Me){let ge=[];for(let ce=0;ce>8,tt=ce%256,nt.push(tt),nt.push(ze);return nt}function Be(Me){return H.toByteArray(ie(Me))}function Ie(Me,ge,ce,ze){let tt;for(tt=0;tt=ge.length||tt>=Me.length);++tt)ge[tt+ce]=Me[tt];return tt}function Ze(Me,ge){return Me instanceof ge||Me!=null&&Me.constructor!=null&&Me.constructor.name!=null&&Me.constructor.name===ge.name}function at(Me){return Me!==Me}var it=function(){let Me="0123456789abcdef",ge=new Array(256);for(let ce=0;ce<16;++ce){let ze=ce*16;for(let tt=0;tt<16;++tt)ge[ze+tt]=Me[ce]+Me[tt]}return ge}();function et(Me){return typeof BigInt>"u"?lt:Me}function lt(){throw new Error("BigInt not supported")}}}),h3=Ye({"node_modules/has-symbols/shams.js"(X,H){"use strict";H.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var x={},A=Symbol("test"),M=Object(A);if(typeof A=="string"||Object.prototype.toString.call(A)!=="[object Symbol]"||Object.prototype.toString.call(M)!=="[object Symbol]")return!1;var e=42;x[A]=e;for(A in x)return!1;if(typeof Object.keys=="function"&&Object.keys(x).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(x).length!==0)return!1;var t=Object.getOwnPropertySymbols(x);if(t.length!==1||t[0]!==A||!Object.prototype.propertyIsEnumerable.call(x,A))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var r=Object.getOwnPropertyDescriptor(x,A);if(r.value!==e||r.enumerable!==!0)return!1}return!0}}}),q_=Ye({"node_modules/has-tostringtag/shams.js"(X,H){"use strict";var g=h3();H.exports=function(){return g()&&!!Symbol.toStringTag}}}),s4=Ye({"node_modules/es-errors/index.js"(X,H){"use strict";H.exports=Error}}),l4=Ye({"node_modules/es-errors/eval.js"(X,H){"use strict";H.exports=EvalError}}),u4=Ye({"node_modules/es-errors/range.js"(X,H){"use strict";H.exports=RangeError}}),c4=Ye({"node_modules/es-errors/ref.js"(X,H){"use strict";H.exports=ReferenceError}}),DM=Ye({"node_modules/es-errors/syntax.js"(X,H){"use strict";H.exports=SyntaxError}}),H_=Ye({"node_modules/es-errors/type.js"(X,H){"use strict";H.exports=TypeError}}),f4=Ye({"node_modules/es-errors/uri.js"(X,H){"use strict";H.exports=URIError}}),h4=Ye({"node_modules/has-symbols/index.js"(X,H){"use strict";var g=typeof Symbol<"u"&&Symbol,x=h3();H.exports=function(){return typeof g!="function"||typeof Symbol!="function"||typeof g("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:x()}}}),p4=Ye({"node_modules/has-proto/index.js"(X,H){"use strict";var g={foo:{}},x=Object;H.exports=function(){return{__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof x)}}}),d4=Ye({"node_modules/function-bind/implementation.js"(X,H){"use strict";var g="Function.prototype.bind called on incompatible ",x=Object.prototype.toString,A=Math.max,M="[object Function]",e=function(a,i){for(var n=[],s=0;s"u"||!p?g:p(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?g:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?g:ArrayBuffer,"%ArrayIteratorPrototype%":h&&p?p([][Symbol.iterator]()):g,"%AsyncFromSyncIteratorPrototype%":g,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?g:Atomics,"%BigInt%":typeof BigInt>"u"?g:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?g:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?g:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?g:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":x,"%eval%":eval,"%EvalError%":A,"%Float32Array%":typeof Float32Array>"u"?g:Float32Array,"%Float64Array%":typeof Float64Array>"u"?g:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?g:FinalizationRegistry,"%Function%":a,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?g:Int8Array,"%Int16Array%":typeof Int16Array>"u"?g:Int16Array,"%Int32Array%":typeof Int32Array>"u"?g:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h&&p?p(p([][Symbol.iterator]())):g,"%JSON%":typeof JSON=="object"?JSON:g,"%Map%":typeof Map>"u"?g:Map,"%MapIteratorPrototype%":typeof Map>"u"||!h||!p?g:p(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?g:Promise,"%Proxy%":typeof Proxy>"u"?g:Proxy,"%RangeError%":M,"%ReferenceError%":e,"%Reflect%":typeof Reflect>"u"?g:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?g:Set,"%SetIteratorPrototype%":typeof Set>"u"||!h||!p?g:p(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?g:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h&&p?p(""[Symbol.iterator]()):g,"%Symbol%":h?Symbol:g,"%SyntaxError%":t,"%ThrowTypeError%":c,"%TypedArray%":l,"%TypeError%":r,"%Uint8Array%":typeof Uint8Array>"u"?g:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?g:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?g:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?g:Uint32Array,"%URIError%":o,"%WeakMap%":typeof WeakMap>"u"?g:WeakMap,"%WeakRef%":typeof WeakRef>"u"?g:WeakRef,"%WeakSet%":typeof WeakSet>"u"?g:WeakSet};if(p)try{null.error}catch(O){w=p(p(O)),_["%Error.prototype%"]=w}var w,S=function O(I){var N;if(I==="%AsyncFunction%")N=i("async function () {}");else if(I==="%GeneratorFunction%")N=i("function* () {}");else if(I==="%AsyncGeneratorFunction%")N=i("async function* () {}");else if(I==="%AsyncGenerator%"){var U=O("%AsyncGeneratorFunction%");U&&(N=U.prototype)}else if(I==="%AsyncIteratorPrototype%"){var W=O("%AsyncGenerator%");W&&p&&(N=p(W.prototype))}return _[I]=N,N},E={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},m=p3(),b=v4(),d=m.call(Function.call,Array.prototype.concat),u=m.call(Function.apply,Array.prototype.splice),y=m.call(Function.call,String.prototype.replace),f=m.call(Function.call,String.prototype.slice),P=m.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,z=/\\(\\)?/g,F=function(I){var N=f(I,0,1),U=f(I,-1);if(N==="%"&&U!=="%")throw new t("invalid intrinsic syntax, expected closing `%`");if(U==="%"&&N!=="%")throw new t("invalid intrinsic syntax, expected opening `%`");var W=[];return y(I,L,function(Q,ue,se,he){W[W.length]=se?y(he,z,"$1"):ue||Q}),W},B=function(I,N){var U=I,W;if(b(E,U)&&(W=E[U],U="%"+W[0]+"%"),b(_,U)){var Q=_[U];if(Q===T&&(Q=S(U)),typeof Q>"u"&&!N)throw new r("intrinsic "+I+" exists, but is not available. Please file an issue!");return{alias:W,name:U,value:Q}}throw new t("intrinsic "+I+" does not exist!")};H.exports=function(I,N){if(typeof I!="string"||I.length===0)throw new r("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof N!="boolean")throw new r('"allowMissing" argument must be a boolean');if(P(/^%?[^%]*%?$/,I)===null)throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var U=F(I),W=U.length>0?U[0]:"",Q=B("%"+W+"%",N),ue=Q.name,se=Q.value,he=!1,G=Q.alias;G&&(W=G[0],u(U,d([0,1],G)));for(var $=1,J=!0;$=U.length){var j=n(se,Z);J=!!j,J&&"get"in j&&!("originalValue"in j.get)?se=j.get:se=se[Z]}else J=b(se,Z),se=se[Z];J&&!he&&(_[ue]=se)}}return se}}}),d3=Ye({"node_modules/es-define-property/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.defineProperty%",!0)||!1;if(x)try{x({},"a",{value:1})}catch{x=!1}H.exports=x}}),G_=Ye({"node_modules/gopd/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.getOwnPropertyDescriptor%",!0);if(x)try{x([],"length")}catch{x=null}H.exports=x}}),m4=Ye({"node_modules/define-data-property/index.js"(X,H){"use strict";var g=d3(),x=DM(),A=H_(),M=G_();H.exports=function(t,r,o){if(!t||typeof t!="object"&&typeof t!="function")throw new A("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new A("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new A("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new A("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new A("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new A("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,n=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,c=!!M&&M(t,r);if(g)g(t,r,{configurable:n===null&&c?c.configurable:!n,enumerable:a===null&&c?c.enumerable:!a,value:o,writable:i===null&&c?c.writable:!i});else if(s||!a&&!i&&!n)t[r]=o;else throw new x("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),zM=Ye({"node_modules/has-property-descriptors/index.js"(X,H){"use strict";var g=d3(),x=function(){return!!g};x.hasArrayLengthDefineBug=function(){if(!g)return null;try{return g([],"length",{value:1}).length!==1}catch{return!0}},H.exports=x}}),g4=Ye({"node_modules/set-function-length/index.js"(X,H){"use strict";var g=v1(),x=m4(),A=zM()(),M=G_(),e=H_(),t=g("%Math.floor%");H.exports=function(o,a){if(typeof o!="function")throw new e("`fn` is not a function");if(typeof a!="number"||a<0||a>4294967295||t(a)!==a)throw new e("`length` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],n=!0,s=!0;if("length"in o&&M){var c=M(o,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(s=!1)}return(n||s||!i)&&(A?x(o,"length",a,!0,!0):x(o,"length",a)),o}}}),W_=Ye({"node_modules/call-bind/index.js"(X,H){"use strict";var g=p3(),x=v1(),A=g4(),M=H_(),e=x("%Function.prototype.apply%"),t=x("%Function.prototype.call%"),r=x("%Reflect.apply%",!0)||g.call(t,e),o=d3(),a=x("%Math.max%");H.exports=function(s){if(typeof s!="function")throw new M("a function is required");var c=r(g,t,arguments);return A(c,1+a(0,s.length-(arguments.length-1)),!0)};var i=function(){return r(g,e,arguments)};o?o(H.exports,"apply",{value:i}):H.exports.apply=i}}),m1=Ye({"node_modules/call-bind/callBound.js"(X,H){"use strict";var g=v1(),x=W_(),A=x(g("String.prototype.indexOf"));H.exports=function(e,t){var r=g(e,!!t);return typeof r=="function"&&A(e,".prototype.")>-1?x(r):r}}}),y4=Ye({"node_modules/is-arguments/index.js"(X,H){"use strict";var g=q_()(),x=m1(),A=x("Object.prototype.toString"),M=function(o){return g&&o&&typeof o=="object"&&Symbol.toStringTag in o?!1:A(o)==="[object Arguments]"},e=function(o){return M(o)?!0:o!==null&&typeof o=="object"&&typeof o.length=="number"&&o.length>=0&&A(o)!=="[object Array]"&&A(o.callee)==="[object Function]"},t=function(){return M(arguments)}();M.isLegacyArguments=e,H.exports=t?M:e}}),_4=Ye({"node_modules/is-generator-function/index.js"(X,H){"use strict";var g=Object.prototype.toString,x=Function.prototype.toString,A=/^\s*(?:function)?\*/,M=q_()(),e=Object.getPrototypeOf,t=function(){if(!M)return!1;try{return Function("return function*() {}")()}catch{}},r;H.exports=function(a){if(typeof a!="function")return!1;if(A.test(x.call(a)))return!0;if(!M){var i=g.call(a);return i==="[object GeneratorFunction]"}if(!e)return!1;if(typeof r>"u"){var n=t();r=n?e(n):!1}return e(a)===r}}}),x4=Ye({"node_modules/is-callable/index.js"(X,H){"use strict";var g=Function.prototype.toString,x=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,A,M;if(typeof x=="function"&&typeof Object.defineProperty=="function")try{A=Object.defineProperty({},"length",{get:function(){throw M}}),M={},x(function(){throw 42},null,A)}catch(_){_!==M&&(x=null)}else x=null;var e=/^\s*class\b/,t=function(w){try{var S=g.call(w);return e.test(S)}catch{return!1}},r=function(w){try{return t(w)?!1:(g.call(w),!0)}catch{return!1}},o=Object.prototype.toString,a="[object Object]",i="[object Function]",n="[object GeneratorFunction]",s="[object HTMLAllCollection]",c="[object HTML document.all class]",h="[object HTMLCollection]",v=typeof Symbol=="function"&&!!Symbol.toStringTag,p=!(0 in[,]),T=function(){return!1};typeof document=="object"&&(l=document.all,o.call(l)===o.call(document.all)&&(T=function(w){if((p||!w)&&(typeof w>"u"||typeof w=="object"))try{var S=o.call(w);return(S===s||S===c||S===h||S===a)&&w("")==null}catch{}return!1}));var l;H.exports=x?function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;try{x(w,null,A)}catch(S){if(S!==M)return!1}return!t(w)&&r(w)}:function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;if(v)return r(w);if(t(w))return!1;var S=o.call(w);return S!==i&&S!==n&&!/^\[object HTML/.test(S)?!1:r(w)}}}),FM=Ye({"node_modules/for-each/index.js"(X,H){"use strict";var g=x4(),x=Object.prototype.toString,A=Object.prototype.hasOwnProperty,M=function(a,i,n){for(var s=0,c=a.length;s=3&&(s=n),x.call(a)==="[object Array]"?M(a,i,s):typeof a=="string"?e(a,i,s):t(a,i,s)};H.exports=r}}),OM=Ye({"node_modules/available-typed-arrays/index.js"(X,H){"use strict";var g=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],x=typeof globalThis>"u"?window:globalThis;H.exports=function(){for(var M=[],e=0;e"u"?window:globalThis,a=x(),i=M("String.prototype.slice"),n=Object.getPrototypeOf,s=M("Array.prototype.indexOf",!0)||function(T,l){for(var _=0;_-1?l:l!=="Object"?!1:v(T)}return e?h(T):null}}}),w4=Ye({"node_modules/is-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=m1(),M=A("Object.prototype.toString"),e=q_()(),t=G_(),r=typeof globalThis>"u"?window:globalThis,o=x(),a=A("Array.prototype.indexOf",!0)||function(v,p){for(var T=0;T-1}return t?c(v):!1}}}),BM=Ye({"node_modules/util/support/types.js"(X){"use strict";var H=y4(),g=_4(),x=b4(),A=w4();function M(Ae){return Ae.call.bind(Ae)}var e=typeof BigInt<"u",t=typeof Symbol<"u",r=M(Object.prototype.toString),o=M(Number.prototype.valueOf),a=M(String.prototype.valueOf),i=M(Boolean.prototype.valueOf);e&&(n=M(BigInt.prototype.valueOf));var n;t&&(s=M(Symbol.prototype.valueOf));var s;function c(Ae,Be){if(typeof Ae!="object")return!1;try{return Be(Ae),!0}catch{return!1}}X.isArgumentsObject=H,X.isGeneratorFunction=g,X.isTypedArray=A;function h(Ae){return typeof Promise<"u"&&Ae instanceof Promise||Ae!==null&&typeof Ae=="object"&&typeof Ae.then=="function"&&typeof Ae.catch=="function"}X.isPromise=h;function v(Ae){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Ae):A(Ae)||W(Ae)}X.isArrayBufferView=v;function p(Ae){return x(Ae)==="Uint8Array"}X.isUint8Array=p;function T(Ae){return x(Ae)==="Uint8ClampedArray"}X.isUint8ClampedArray=T;function l(Ae){return x(Ae)==="Uint16Array"}X.isUint16Array=l;function _(Ae){return x(Ae)==="Uint32Array"}X.isUint32Array=_;function w(Ae){return x(Ae)==="Int8Array"}X.isInt8Array=w;function S(Ae){return x(Ae)==="Int16Array"}X.isInt16Array=S;function E(Ae){return x(Ae)==="Int32Array"}X.isInt32Array=E;function m(Ae){return x(Ae)==="Float32Array"}X.isFloat32Array=m;function b(Ae){return x(Ae)==="Float64Array"}X.isFloat64Array=b;function d(Ae){return x(Ae)==="BigInt64Array"}X.isBigInt64Array=d;function u(Ae){return x(Ae)==="BigUint64Array"}X.isBigUint64Array=u;function y(Ae){return r(Ae)==="[object Map]"}y.working=typeof Map<"u"&&y(new Map);function f(Ae){return typeof Map>"u"?!1:y.working?y(Ae):Ae instanceof Map}X.isMap=f;function P(Ae){return r(Ae)==="[object Set]"}P.working=typeof Set<"u"&&P(new Set);function L(Ae){return typeof Set>"u"?!1:P.working?P(Ae):Ae instanceof Set}X.isSet=L;function z(Ae){return r(Ae)==="[object WeakMap]"}z.working=typeof WeakMap<"u"&&z(new WeakMap);function F(Ae){return typeof WeakMap>"u"?!1:z.working?z(Ae):Ae instanceof WeakMap}X.isWeakMap=F;function B(Ae){return r(Ae)==="[object WeakSet]"}B.working=typeof WeakSet<"u"&&B(new WeakSet);function O(Ae){return B(Ae)}X.isWeakSet=O;function I(Ae){return r(Ae)==="[object ArrayBuffer]"}I.working=typeof ArrayBuffer<"u"&&I(new ArrayBuffer);function N(Ae){return typeof ArrayBuffer>"u"?!1:I.working?I(Ae):Ae instanceof ArrayBuffer}X.isArrayBuffer=N;function U(Ae){return r(Ae)==="[object DataView]"}U.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&U(new DataView(new ArrayBuffer(1),0,1));function W(Ae){return typeof DataView>"u"?!1:U.working?U(Ae):Ae instanceof DataView}X.isDataView=W;var Q=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function ue(Ae){return r(Ae)==="[object SharedArrayBuffer]"}function se(Ae){return typeof Q>"u"?!1:(typeof ue.working>"u"&&(ue.working=ue(new Q)),ue.working?ue(Ae):Ae instanceof Q)}X.isSharedArrayBuffer=se;function he(Ae){return r(Ae)==="[object AsyncFunction]"}X.isAsyncFunction=he;function G(Ae){return r(Ae)==="[object Map Iterator]"}X.isMapIterator=G;function $(Ae){return r(Ae)==="[object Set Iterator]"}X.isSetIterator=$;function J(Ae){return r(Ae)==="[object Generator]"}X.isGeneratorObject=J;function Z(Ae){return r(Ae)==="[object WebAssembly.Module]"}X.isWebAssemblyCompiledModule=Z;function re(Ae){return c(Ae,o)}X.isNumberObject=re;function ne(Ae){return c(Ae,a)}X.isStringObject=ne;function j(Ae){return c(Ae,i)}X.isBooleanObject=j;function ee(Ae){return e&&c(Ae,n)}X.isBigIntObject=ee;function ie(Ae){return t&&c(Ae,s)}X.isSymbolObject=ie;function fe(Ae){return re(Ae)||ne(Ae)||j(Ae)||ee(Ae)||ie(Ae)}X.isBoxedPrimitive=fe;function be(Ae){return typeof Uint8Array<"u"&&(N(Ae)||se(Ae))}X.isAnyArrayBuffer=be,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Ae){Object.defineProperty(X,Ae,{enumerable:!1,value:function(){throw new Error(Ae+" is not supported in userland")}})})}}),NM=Ye({"node_modules/util/support/isBufferBrowser.js"(X,H){H.exports=function(x){return x&&typeof x=="object"&&typeof x.copy=="function"&&typeof x.fill=="function"&&typeof x.readUInt8=="function"}}}),UM=Ye({"(disabled):node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(` +`)>-1&&(he?$=$.split(` +`).map(function(Z){return" "+Z}).join(` +`).slice(2):$=` +`+$.split(` +`).map(function(Z){return" "+Z}).join(` +`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(` +`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+` + `)+" "+U.join(`, + `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$0?this.tail.next=p:this.head=p,this.tail=p,++this.length}},{key:"unshift",value:function(v){var p={data:v,next:this.head};this.length===0&&(this.tail=p),this.head=p,++this.length}},{key:"shift",value:function(){if(this.length!==0){var v=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,v}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(v){if(this.length===0)return"";for(var p=this.head,T=""+p.data;p=p.next;)T+=v+p.data;return T}},{key:"concat",value:function(v){if(this.length===0)return o.alloc(0);for(var p=o.allocUnsafe(v>>>0),T=this.head,l=0;T;)s(T.data,p,l),l+=T.data.length,T=T.next;return p}},{key:"consume",value:function(v,p){var T;return v_.length?_.length:v;if(w===_.length?l+=_:l+=_.slice(0,v),v-=w,v===0){w===_.length?(++T,p.next?this.head=p.next:this.head=this.tail=null):(this.head=p,p.data=_.slice(w));break}++T}return this.length-=T,l}},{key:"_getBuffer",value:function(v){var p=o.allocUnsafe(v),T=this.head,l=1;for(T.data.copy(p),v-=T.data.length;T=T.next;){var _=T.data,w=v>_.length?_.length:v;if(_.copy(p,p.length-v,0,w),v-=w,v===0){w===_.length?(++l,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=_.slice(w));break}++l}return this.length-=l,p}},{key:n,value:function(v,p){return i(this,x({},p,{depth:0,customInspect:!1}))}}]),c}()}}),jM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/destroy.js"(X,H){"use strict";function g(r,o){var a=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(e,this,r)):process.nextTick(e,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(s){!o&&s?a._writableState?a._writableState.errorEmitted?process.nextTick(A,a):(a._writableState.errorEmitted=!0,process.nextTick(x,a,s)):process.nextTick(x,a,s):o?(process.nextTick(A,a),o(s)):process.nextTick(A,a)}),this)}function x(r,o){e(r,o),A(r)}function A(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function M(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function e(r,o){r.emit("error",o)}function t(r,o){var a=r._readableState,i=r._writableState;a&&a.autoDestroy||i&&i.autoDestroy?r.destroy(o):r.emit("error",o)}H.exports={destroy:g,undestroy:M,errorOrDestroy:t}}}),r0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/errors-browser.js"(X,H){"use strict";function g(o,a){o.prototype=Object.create(a.prototype),o.prototype.constructor=o,o.__proto__=a}var x={};function A(o,a,i){i||(i=Error);function n(c,h,v){return typeof a=="string"?a:a(c,h,v)}var s=function(c){g(h,c);function h(v,p,T){return c.call(this,n(v,p,T))||this}return h}(i);s.prototype.name=i.name,s.prototype.code=o,x[o]=s}function M(o,a){if(Array.isArray(o)){var i=o.length;return o=o.map(function(n){return String(n)}),i>2?"one of ".concat(a," ").concat(o.slice(0,i-1).join(", "),", or ")+o[i-1]:i===2?"one of ".concat(a," ").concat(o[0]," or ").concat(o[1]):"of ".concat(a," ").concat(o[0])}else return"of ".concat(a," ").concat(String(o))}function e(o,a,i){return o.substr(!i||i<0?0:+i,a.length)===a}function t(o,a,i){return(i===void 0||i>o.length)&&(i=o.length),o.substring(i-a.length,i)===a}function r(o,a,i){return typeof i!="number"&&(i=0),i+a.length>o.length?!1:o.indexOf(a,i)!==-1}A("ERR_INVALID_OPT_VALUE",function(o,a){return'The value "'+a+'" is invalid for option "'+o+'"'},TypeError),A("ERR_INVALID_ARG_TYPE",function(o,a,i){var n;typeof a=="string"&&e(a,"not ")?(n="must not be",a=a.replace(/^not /,"")):n="must be";var s;if(t(o," argument"))s="The ".concat(o," ").concat(n," ").concat(M(a,"type"));else{var c=r(o,".")?"property":"argument";s='The "'.concat(o,'" ').concat(c," ").concat(n," ").concat(M(a,"type"))}return s+=". Received type ".concat(typeof i),s},TypeError),A("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),A("ERR_METHOD_NOT_IMPLEMENTED",function(o){return"The "+o+" method is not implemented"}),A("ERR_STREAM_PREMATURE_CLOSE","Premature close"),A("ERR_STREAM_DESTROYED",function(o){return"Cannot call "+o+" after a stream was destroyed"}),A("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),A("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),A("ERR_STREAM_WRITE_AFTER_END","write after end"),A("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),A("ERR_UNKNOWN_ENCODING",function(o){return"Unknown encoding: "+o},TypeError),A("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),H.exports.codes=x}}),VM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(X,H){"use strict";var g=r0().codes.ERR_INVALID_OPT_VALUE;function x(M,e,t){return M.highWaterMark!=null?M.highWaterMark:e?M[t]:null}function A(M,e,t,r){var o=x(e,r,t);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var a=r?t:"highWaterMark";throw new g(a,o)}return Math.floor(o)}return M.objectMode?16:16*1024}H.exports={getHighWaterMark:A}}}),A4=Ye({"node_modules/util-deprecate/browser.js"(X,H){H.exports=g;function g(A,M){if(x("noDeprecation"))return A;var e=!1;function t(){if(!e){if(x("throwDeprecation"))throw new Error(M);x("traceDeprecation")?console.trace(M):console.warn(M),e=!0}return A.apply(this,arguments)}return t}function x(A){try{if(!window.localStorage)return!1}catch{return!1}var M=window.localStorage[A];return M==null?!1:String(M).toLowerCase()==="true"}}}),qM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(X,H){"use strict";H.exports=d;function g(G){var $=this;this.next=null,this.entry=null,this.finish=function(){he($,G)}}var x;d.WritableState=m;var A={deprecate:A4()},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(G){return e.from(G)}function o(G){return e.isBuffer(G)||G instanceof t}var a=jM(),i=VM(),n=i.getHighWaterMark,s=r0().codes,c=s.ERR_INVALID_ARG_TYPE,h=s.ERR_METHOD_NOT_IMPLEMENTED,v=s.ERR_MULTIPLE_CALLBACK,p=s.ERR_STREAM_CANNOT_PIPE,T=s.ERR_STREAM_DESTROYED,l=s.ERR_STREAM_NULL_VALUES,_=s.ERR_STREAM_WRITE_AFTER_END,w=s.ERR_UNKNOWN_ENCODING,S=a.errorOrDestroy;Yv()(d,M);function E(){}function m(G,$,J){x=x||a0(),G=G||{},typeof J!="boolean"&&(J=$ instanceof x),this.objectMode=!!G.objectMode,J&&(this.objectMode=this.objectMode||!!G.writableObjectMode),this.highWaterMark=n(this,G,"writableHighWaterMark",J),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Z=G.decodeStrings===!1;this.decodeStrings=!Z,this.defaultEncoding=G.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(re){B($,re)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=G.emitClose!==!1,this.autoDestroy=!!G.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new g(this)}m.prototype.getBuffer=function(){for(var $=this.bufferedRequest,J=[];$;)J.push($),$=$.next;return J},function(){try{Object.defineProperty(m.prototype,"buffer",{get:A.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var b;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(b=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function($){return b.call(this,$)?!0:this!==d?!1:$&&$._writableState instanceof m}})):b=function($){return $ instanceof this};function d(G){x=x||a0();var $=this instanceof x;if(!$&&!b.call(d,this))return new d(G);this._writableState=new m(G,this,$),this.writable=!0,G&&(typeof G.write=="function"&&(this._write=G.write),typeof G.writev=="function"&&(this._writev=G.writev),typeof G.destroy=="function"&&(this._destroy=G.destroy),typeof G.final=="function"&&(this._final=G.final)),M.call(this)}d.prototype.pipe=function(){S(this,new p)};function u(G,$){var J=new _;S(G,J),process.nextTick($,J)}function y(G,$,J,Z){var re;return J===null?re=new l:typeof J!="string"&&!$.objectMode&&(re=new c("chunk",["string","Buffer"],J)),re?(S(G,re),process.nextTick(Z,re),!1):!0}d.prototype.write=function(G,$,J){var Z=this._writableState,re=!1,ne=!Z.objectMode&&o(G);return ne&&!e.isBuffer(G)&&(G=r(G)),typeof $=="function"&&(J=$,$=null),ne?$="buffer":$||($=Z.defaultEncoding),typeof J!="function"&&(J=E),Z.ending?u(this,J):(ne||y(this,Z,G,J))&&(Z.pendingcb++,re=P(this,Z,ne,G,$,J)),re},d.prototype.cork=function(){this._writableState.corked++},d.prototype.uncork=function(){var G=this._writableState;G.corked&&(G.corked--,!G.writing&&!G.corked&&!G.bufferProcessing&&G.bufferedRequest&&N(this,G))},d.prototype.setDefaultEncoding=function($){if(typeof $=="string"&&($=$.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf(($+"").toLowerCase())>-1))throw new w($);return this._writableState.defaultEncoding=$,this},Object.defineProperty(d.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function f(G,$,J){return!G.objectMode&&G.decodeStrings!==!1&&typeof $=="string"&&($=e.from($,J)),$}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function P(G,$,J,Z,re,ne){if(!J){var j=f($,Z,re);Z!==j&&(J=!0,re="buffer",Z=j)}var ee=$.objectMode?1:Z.length;$.length+=ee;var ie=$.length<$.highWaterMark;if(ie||($.needDrain=!0),$.writing||$.corked){var fe=$.lastBufferedRequest;$.lastBufferedRequest={chunk:Z,encoding:re,isBuf:J,callback:ne,next:null},fe?fe.next=$.lastBufferedRequest:$.bufferedRequest=$.lastBufferedRequest,$.bufferedRequestCount+=1}else L(G,$,!1,ee,Z,re,ne);return ie}function L(G,$,J,Z,re,ne,j){$.writelen=Z,$.writecb=j,$.writing=!0,$.sync=!0,$.destroyed?$.onwrite(new T("write")):J?G._writev(re,$.onwrite):G._write(re,ne,$.onwrite),$.sync=!1}function z(G,$,J,Z,re){--$.pendingcb,J?(process.nextTick(re,Z),process.nextTick(ue,G,$),G._writableState.errorEmitted=!0,S(G,Z)):(re(Z),G._writableState.errorEmitted=!0,S(G,Z),ue(G,$))}function F(G){G.writing=!1,G.writecb=null,G.length-=G.writelen,G.writelen=0}function B(G,$){var J=G._writableState,Z=J.sync,re=J.writecb;if(typeof re!="function")throw new v;if(F(J),$)z(G,J,Z,$,re);else{var ne=U(J)||G.destroyed;!ne&&!J.corked&&!J.bufferProcessing&&J.bufferedRequest&&N(G,J),Z?process.nextTick(O,G,J,ne,re):O(G,J,ne,re)}}function O(G,$,J,Z){J||I(G,$),$.pendingcb--,Z(),ue(G,$)}function I(G,$){$.length===0&&$.needDrain&&($.needDrain=!1,G.emit("drain"))}function N(G,$){$.bufferProcessing=!0;var J=$.bufferedRequest;if(G._writev&&J&&J.next){var Z=$.bufferedRequestCount,re=new Array(Z),ne=$.corkedRequestsFree;ne.entry=J;for(var j=0,ee=!0;J;)re[j]=J,J.isBuf||(ee=!1),J=J.next,j+=1;re.allBuffers=ee,L(G,$,!0,$.length,re,"",ne.finish),$.pendingcb++,$.lastBufferedRequest=null,ne.next?($.corkedRequestsFree=ne.next,ne.next=null):$.corkedRequestsFree=new g($),$.bufferedRequestCount=0}else{for(;J;){var ie=J.chunk,fe=J.encoding,be=J.callback,Ae=$.objectMode?1:ie.length;if(L(G,$,!1,Ae,ie,fe,be),J=J.next,$.bufferedRequestCount--,$.writing)break}J===null&&($.lastBufferedRequest=null)}$.bufferedRequest=J,$.bufferProcessing=!1}d.prototype._write=function(G,$,J){J(new h("_write()"))},d.prototype._writev=null,d.prototype.end=function(G,$,J){var Z=this._writableState;return typeof G=="function"?(J=G,G=null,$=null):typeof $=="function"&&(J=$,$=null),G!=null&&this.write(G,$),Z.corked&&(Z.corked=1,this.uncork()),Z.ending||se(this,Z,J),this},Object.defineProperty(d.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function U(G){return G.ending&&G.length===0&&G.bufferedRequest===null&&!G.finished&&!G.writing}function W(G,$){G._final(function(J){$.pendingcb--,J&&S(G,J),$.prefinished=!0,G.emit("prefinish"),ue(G,$)})}function Q(G,$){!$.prefinished&&!$.finalCalled&&(typeof G._final=="function"&&!$.destroyed?($.pendingcb++,$.finalCalled=!0,process.nextTick(W,G,$)):($.prefinished=!0,G.emit("prefinish")))}function ue(G,$){var J=U($);if(J&&(Q(G,$),$.pendingcb===0&&($.finished=!0,G.emit("finish"),$.autoDestroy))){var Z=G._readableState;(!Z||Z.autoDestroy&&Z.endEmitted)&&G.destroy()}return J}function se(G,$,J){$.ending=!0,ue(G,$),J&&($.finished?process.nextTick(J):G.once("finish",J)),$.ended=!0,G.writable=!1}function he(G,$,J){var Z=G.entry;for(G.entry=null;Z;){var re=Z.callback;$.pendingcb--,re(J),Z=Z.next}$.corkedRequestsFree.next=G}Object.defineProperty(d.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function($){this._writableState&&(this._writableState.destroyed=$)}}),d.prototype.destroy=a.destroy,d.prototype._undestroy=a.undestroy,d.prototype._destroy=function(G,$){$(G)}}}),a0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_duplex.js"(X,H){"use strict";var g=Object.keys||function(i){var n=[];for(var s in i)n.push(s);return n};H.exports=r;var x=GM(),A=qM();for(Yv()(r,x),M=g(A.prototype),t=0;t>5===6?2:T>>4===14?3:T>>3===30?4:T>>6===2?-1:-2}function t(T,l,_){var w=l.length-1;if(w<_)return 0;var S=e(l[w]);return S>=0?(S>0&&(T.lastNeed=S-1),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(T.lastNeed=S-2),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(S===2?S=0:T.lastNeed=S-3),S):0))}function r(T,l,_){if((l[0]&192)!==128)return T.lastNeed=0,"\uFFFD";if(T.lastNeed>1&&l.length>1){if((l[1]&192)!==128)return T.lastNeed=1,"\uFFFD";if(T.lastNeed>2&&l.length>2&&(l[2]&192)!==128)return T.lastNeed=2,"\uFFFD"}}function o(T){var l=this.lastTotal-this.lastNeed,_=r(this,T,l);if(_!==void 0)return _;if(this.lastNeed<=T.length)return T.copy(this.lastChar,l,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,l,0,T.length),this.lastNeed-=T.length}function a(T,l){var _=t(this,T,l);if(!this.lastNeed)return T.toString("utf8",l);this.lastTotal=_;var w=T.length-(_-this.lastNeed);return T.copy(this.lastChar,0,w),T.toString("utf8",l,w)}function i(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+"\uFFFD":l}function n(T,l){if((T.length-l)%2===0){var _=T.toString("utf16le",l);if(_){var w=_.charCodeAt(_.length-1);if(w>=55296&&w<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1],_.slice(0,-1)}return _}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=T[T.length-1],T.toString("utf16le",l,T.length-1)}function s(T){var l=T&&T.length?this.write(T):"";if(this.lastNeed){var _=this.lastTotal-this.lastNeed;return l+this.lastChar.toString("utf16le",0,_)}return l}function c(T,l){var _=(T.length-l)%3;return _===0?T.toString("base64",l):(this.lastNeed=3-_,this.lastTotal=3,_===1?this.lastChar[0]=T[T.length-1]:(this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1]),T.toString("base64",l,T.length-_))}function h(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+this.lastChar.toString("base64",0,3-this.lastNeed):l}function v(T){return T.toString(this.encoding)}function p(T){return T&&T.length?this.write(T):""}}}),v3=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(X,H){"use strict";var g=r0().codes.ERR_STREAM_PREMATURE_CLOSE;function x(t){var r=!1;return function(){if(!r){r=!0;for(var o=arguments.length,a=new Array(o),i=0;i0)if(typeof ee!="string"&&!Ae.objectMode&&Object.getPrototypeOf(ee)!==e.prototype&&(ee=r(ee)),fe)Ae.endEmitted?m(j,new _):P(j,Ae,ee,!0);else if(Ae.ended)m(j,new T);else{if(Ae.destroyed)return!1;Ae.reading=!1,Ae.decoder&&!ie?(ee=Ae.decoder.write(ee),Ae.objectMode||ee.length!==0?P(j,Ae,ee,!1):U(j,Ae)):P(j,Ae,ee,!1)}else fe||(Ae.reading=!1,U(j,Ae))}return!Ae.ended&&(Ae.length=z?j=z:(j--,j|=j>>>1,j|=j>>>2,j|=j>>>4,j|=j>>>8,j|=j>>>16,j++),j}function B(j,ee){return j<=0||ee.length===0&&ee.ended?0:ee.objectMode?1:j!==j?ee.flowing&&ee.length?ee.buffer.head.data.length:ee.length:(j>ee.highWaterMark&&(ee.highWaterMark=F(j)),j<=ee.length?j:ee.ended?ee.length:(ee.needReadable=!0,0))}y.prototype.read=function(j){i("read",j),j=parseInt(j,10);var ee=this._readableState,ie=j;if(j!==0&&(ee.emittedReadable=!1),j===0&&ee.needReadable&&((ee.highWaterMark!==0?ee.length>=ee.highWaterMark:ee.length>0)||ee.ended))return i("read: emitReadable",ee.length,ee.ended),ee.length===0&&ee.ended?Z(this):I(this),null;if(j=B(j,ee),j===0&&ee.ended)return ee.length===0&&Z(this),null;var fe=ee.needReadable;i("need readable",fe),(ee.length===0||ee.length-j0?be=J(j,ee):be=null,be===null?(ee.needReadable=ee.length<=ee.highWaterMark,j=0):(ee.length-=j,ee.awaitDrain=0),ee.length===0&&(ee.ended||(ee.needReadable=!0),ie!==j&&ee.ended&&Z(this)),be!==null&&this.emit("data",be),be};function O(j,ee){if(i("onEofChunk"),!ee.ended){if(ee.decoder){var ie=ee.decoder.end();ie&&ie.length&&(ee.buffer.push(ie),ee.length+=ee.objectMode?1:ie.length)}ee.ended=!0,ee.sync?I(j):(ee.needReadable=!1,ee.emittedReadable||(ee.emittedReadable=!0,N(j)))}}function I(j){var ee=j._readableState;i("emitReadable",ee.needReadable,ee.emittedReadable),ee.needReadable=!1,ee.emittedReadable||(i("emitReadable",ee.flowing),ee.emittedReadable=!0,process.nextTick(N,j))}function N(j){var ee=j._readableState;i("emitReadable_",ee.destroyed,ee.length,ee.ended),!ee.destroyed&&(ee.length||ee.ended)&&(j.emit("readable"),ee.emittedReadable=!1),ee.needReadable=!ee.flowing&&!ee.ended&&ee.length<=ee.highWaterMark,$(j)}function U(j,ee){ee.readingMore||(ee.readingMore=!0,process.nextTick(W,j,ee))}function W(j,ee){for(;!ee.reading&&!ee.ended&&(ee.length1&&ne(fe.pipes,j)!==-1)&&!at&&(i("false write response, pause",fe.awaitDrain),fe.awaitDrain++),ie.pause())}function lt(ze){i("onerror",ze),ce(),j.removeListener("error",lt),A(j,"error")===0&&m(j,ze)}d(j,"error",lt);function Me(){j.removeListener("finish",ge),ce()}j.once("close",Me);function ge(){i("onfinish"),j.removeListener("close",Me),ce()}j.once("finish",ge);function ce(){i("unpipe"),ie.unpipe(j)}return j.emit("pipe",ie),fe.flowing||(i("pipe resume"),ie.resume()),j};function Q(j){return function(){var ie=j._readableState;i("pipeOnDrain",ie.awaitDrain),ie.awaitDrain&&ie.awaitDrain--,ie.awaitDrain===0&&A(j,"data")&&(ie.flowing=!0,$(j))}}y.prototype.unpipe=function(j){var ee=this._readableState,ie={hasUnpiped:!1};if(ee.pipesCount===0)return this;if(ee.pipesCount===1)return j&&j!==ee.pipes?this:(j||(j=ee.pipes),ee.pipes=null,ee.pipesCount=0,ee.flowing=!1,j&&j.emit("unpipe",this,ie),this);if(!j){var fe=ee.pipes,be=ee.pipesCount;ee.pipes=null,ee.pipesCount=0,ee.flowing=!1;for(var Ae=0;Ae0,fe.flowing!==!1&&this.resume()):j==="readable"&&!fe.endEmitted&&!fe.readableListening&&(fe.readableListening=fe.needReadable=!0,fe.flowing=!1,fe.emittedReadable=!1,i("on readable",fe.length,fe.reading),fe.length?I(this):fe.reading||process.nextTick(se,this)),ie},y.prototype.addListener=y.prototype.on,y.prototype.removeListener=function(j,ee){var ie=M.prototype.removeListener.call(this,j,ee);return j==="readable"&&process.nextTick(ue,this),ie},y.prototype.removeAllListeners=function(j){var ee=M.prototype.removeAllListeners.apply(this,arguments);return(j==="readable"||j===void 0)&&process.nextTick(ue,this),ee};function ue(j){var ee=j._readableState;ee.readableListening=j.listenerCount("readable")>0,ee.resumeScheduled&&!ee.paused?ee.flowing=!0:j.listenerCount("data")>0&&j.resume()}function se(j){i("readable nexttick read 0"),j.read(0)}y.prototype.resume=function(){var j=this._readableState;return j.flowing||(i("resume"),j.flowing=!j.readableListening,he(this,j)),j.paused=!1,this};function he(j,ee){ee.resumeScheduled||(ee.resumeScheduled=!0,process.nextTick(G,j,ee))}function G(j,ee){i("resume",ee.reading),ee.reading||j.read(0),ee.resumeScheduled=!1,j.emit("resume"),$(j),ee.flowing&&!ee.reading&&j.read(0)}y.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function $(j){var ee=j._readableState;for(i("flow",ee.flowing);ee.flowing&&j.read()!==null;);}y.prototype.wrap=function(j){var ee=this,ie=this._readableState,fe=!1;j.on("end",function(){if(i("wrapped end"),ie.decoder&&!ie.ended){var Be=ie.decoder.end();Be&&Be.length&&ee.push(Be)}ee.push(null)}),j.on("data",function(Be){if(i("wrapped data"),ie.decoder&&(Be=ie.decoder.write(Be)),!(ie.objectMode&&Be==null)&&!(!ie.objectMode&&(!Be||!Be.length))){var Ie=ee.push(Be);Ie||(fe=!0,j.pause())}});for(var be in j)this[be]===void 0&&typeof j[be]=="function"&&(this[be]=function(Ie){return function(){return j[Ie].apply(j,arguments)}}(be));for(var Ae=0;Ae=ee.length?(ee.decoder?ie=ee.buffer.join(""):ee.buffer.length===1?ie=ee.buffer.first():ie=ee.buffer.concat(ee.length),ee.buffer.clear()):ie=ee.buffer.consume(j,ee.decoder),ie}function Z(j){var ee=j._readableState;i("endReadable",ee.endEmitted),ee.endEmitted||(ee.ended=!0,process.nextTick(re,ee,j))}function re(j,ee){if(i("endReadableNT",j.endEmitted,j.length),!j.endEmitted&&j.length===0&&(j.endEmitted=!0,ee.readable=!1,ee.emit("end"),j.autoDestroy)){var ie=ee._writableState;(!ie||ie.autoDestroy&&ie.finished)&&ee.destroy()}}typeof Symbol=="function"&&(y.from=function(j,ee){return E===void 0&&(E=E4()),E(y,j,ee)});function ne(j,ee){for(var ie=0,fe=j.length;ie0;return o(_,S,E,function(m){T||(T=m),m&&l.forEach(a),!S&&(l.forEach(a),p(T))})});return h.reduce(i)}H.exports=s}}),L4=Ye({"node_modules/stream-browserify/index.js"(X,H){H.exports=A;var g=Wg().EventEmitter,x=Yv();x(A,g),A.Readable=GM(),A.Writable=qM(),A.Duplex=a0(),A.Transform=WM(),A.PassThrough=k4(),A.finished=v3(),A.pipeline=C4(),A.Stream=A;function A(){g.call(this)}A.prototype.pipe=function(M,e){var t=this;function r(h){M.writable&&M.write(h)===!1&&t.pause&&t.pause()}t.on("data",r);function o(){t.readable&&t.resume&&t.resume()}M.on("drain",o),!M._isStdio&&(!e||e.end!==!1)&&(t.on("end",i),t.on("close",n));var a=!1;function i(){a||(a=!0,M.end())}function n(){a||(a=!0,typeof M.destroy=="function"&&M.destroy())}function s(h){if(c(),g.listenerCount(this,"error")===0)throw h}t.on("error",s),M.on("error",s);function c(){t.removeListener("data",r),M.removeListener("drain",o),t.removeListener("end",i),t.removeListener("close",n),t.removeListener("error",s),M.removeListener("error",s),t.removeListener("end",c),t.removeListener("close",c),M.removeListener("close",c)}return t.on("end",c),t.on("close",c),M.on("close",c),M.emit("pipe",t),M}}}),g1=Ye({"node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(` +`)>-1&&(he?$=$.split(` +`).map(function(Z){return" "+Z}).join(` +`).slice(2):$=` +`+$.split(` +`).map(function(Z){return" "+Z}).join(` +`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(` +`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+` + `)+" "+U.join(`, + `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function c(E){return c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(b){return b.__proto__||Object.getPrototypeOf(b)},c(E)}var h={},v,p;function T(E,m,b){b||(b=Error);function d(y,f,P){return typeof m=="string"?m:m(y,f,P)}var u=function(y){r(P,y);var f=a(P);function P(L,z,F){var B;return t(this,P),B=f.call(this,d(L,z,F)),B.code=E,B}return A(P)}(b);h[E]=u}function l(E,m){if(Array.isArray(E)){var b=E.length;return E=E.map(function(d){return String(d)}),b>2?"one of ".concat(m," ").concat(E.slice(0,b-1).join(", "),", or ")+E[b-1]:b===2?"one of ".concat(m," ").concat(E[0]," or ").concat(E[1]):"of ".concat(m," ").concat(E[0])}else return"of ".concat(m," ").concat(String(E))}function _(E,m,b){return E.substr(!b||b<0?0:+b,m.length)===m}function w(E,m,b){return(b===void 0||b>E.length)&&(b=E.length),E.substring(b-m.length,b)===m}function S(E,m,b){return typeof b!="number"&&(b=0),b+m.length>E.length?!1:E.indexOf(m,b)!==-1}T("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),T("ERR_INVALID_ARG_TYPE",function(E,m,b){v===void 0&&(v=X_()),v(typeof E=="string","'name' must be a string");var d;typeof m=="string"&&_(m,"not ")?(d="must not be",m=m.replace(/^not /,"")):d="must be";var u;if(w(E," argument"))u="The ".concat(E," ").concat(d," ").concat(l(m,"type"));else{var y=S(E,".")?"property":"argument";u='The "'.concat(E,'" ').concat(y," ").concat(d," ").concat(l(m,"type"))}return u+=". Received type ".concat(g(b)),u},TypeError),T("ERR_INVALID_ARG_VALUE",function(E,m){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";p===void 0&&(p=g1());var d=p.inspect(m);return d.length>128&&(d="".concat(d.slice(0,128),"...")),"The argument '".concat(E,"' ").concat(b,". Received ").concat(d)},TypeError,RangeError),T("ERR_INVALID_RETURN_VALUE",function(E,m,b){var d;return b&&b.constructor&&b.constructor.name?d="instance of ".concat(b.constructor.name):d="type ".concat(g(b)),"Expected ".concat(E,' to be returned from the "').concat(m,'"')+" function but got ".concat(d,".")},TypeError),T("ERR_MISSING_ARGS",function(){for(var E=arguments.length,m=new Array(E),b=0;b0,"At least one arg needs to be specified");var d="The ",u=m.length;switch(m=m.map(function(y){return'"'.concat(y,'"')}),u){case 1:d+="".concat(m[0]," argument");break;case 2:d+="".concat(m[0]," and ").concat(m[1]," arguments");break;default:d+=m.slice(0,u-1).join(", "),d+=", and ".concat(m[u-1]," arguments");break}return"".concat(d," must be specified")},TypeError),H.exports.codes=h}}),P4=Ye({"node_modules/assert/build/internal/assert/assertion_error.js"(X,H){"use strict";function g(N,U){var W=Object.keys(N);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(N);U&&(Q=Q.filter(function(ue){return Object.getOwnPropertyDescriptor(N,ue).enumerable})),W.push.apply(W,Q)}return W}function x(N){for(var U=1;U"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function p(N){return Function.toString.call(N).indexOf("[native code]")!==-1}function T(N,U){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Q,ue){return Q.__proto__=ue,Q},T(N,U)}function l(N){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(W){return W.__proto__||Object.getPrototypeOf(W)},l(N)}function _(N){"@babel/helpers - typeof";return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},_(N)}var w=g1(),S=w.inspect,E=ZM(),m=E.codes.ERR_INVALID_ARG_TYPE;function b(N,U,W){return(W===void 0||W>N.length)&&(W=N.length),N.substring(W-U.length,W)===U}function d(N,U){if(U=Math.floor(U),N.length==0||U==0)return"";var W=N.length*U;for(U=Math.floor(Math.log(U)/Math.log(2));U;)N+=N,U--;return N+=N.substring(0,W-N.length),N}var u="",y="",f="",P="",L={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},z=10;function F(N){var U=Object.keys(N),W=Object.create(Object.getPrototypeOf(N));return U.forEach(function(Q){W[Q]=N[Q]}),Object.defineProperty(W,"message",{value:N.message}),W}function B(N){return S(N,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function O(N,U,W){var Q="",ue="",se=0,he="",G=!1,$=B(N),J=$.split(` +`),Z=B(U).split(` +`),re=0,ne="";if(W==="strictEqual"&&_(N)==="object"&&_(U)==="object"&&N!==null&&U!==null&&(W="strictEqualObject"),J.length===1&&Z.length===1&&J[0]!==Z[0]){var j=J[0].length+Z[0].length;if(j<=z){if((_(N)!=="object"||N===null)&&(_(U)!=="object"||U===null)&&(N!==0||U!==0))return"".concat(L[W],` + +`)+"".concat(J[0]," !== ").concat(Z[0],` +`)}else if(W!=="strictEqualObject"){var ee=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(j2&&(ne=` + `.concat(d(" ",re),"^"),re=0)}}}for(var ie=J[J.length-1],fe=Z[Z.length-1];ie===fe&&(re++<2?he=` + `.concat(ie).concat(he):Q=ie,J.pop(),Z.pop(),!(J.length===0||Z.length===0));)ie=J[J.length-1],fe=Z[Z.length-1];var be=Math.max(J.length,Z.length);if(be===0){var Ae=$.split(` +`);if(Ae.length>30)for(Ae[26]="".concat(u,"...").concat(P);Ae.length>27;)Ae.pop();return"".concat(L.notIdentical,` + +`).concat(Ae.join(` +`),` +`)}re>3&&(he=` +`.concat(u,"...").concat(P).concat(he),G=!0),Q!==""&&(he=` + `.concat(Q).concat(he),Q="");var Be=0,Ie=L[W]+` +`.concat(y,"+ actual").concat(P," ").concat(f,"- expected").concat(P),Ze=" ".concat(u,"...").concat(P," Lines skipped");for(re=0;re1&&re>2&&(at>4?(ue+=` +`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=` + `.concat(Z[re-2]),Be++),ue+=` + `.concat(Z[re-1]),Be++),se=re,Q+=` +`.concat(f,"-").concat(P," ").concat(Z[re]),Be++;else if(Z.length1&&re>2&&(at>4?(ue+=` +`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=` + `.concat(J[re-2]),Be++),ue+=` + `.concat(J[re-1]),Be++),se=re,ue+=` +`.concat(y,"+").concat(P," ").concat(J[re]),Be++;else{var it=Z[re],et=J[re],lt=et!==it&&(!b(et,",")||et.slice(0,-1)!==it);lt&&b(it,",")&&it.slice(0,-1)===et&&(lt=!1,et+=","),lt?(at>1&&re>2&&(at>4?(ue+=` +`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=` + `.concat(J[re-2]),Be++),ue+=` + `.concat(J[re-1]),Be++),se=re,ue+=` +`.concat(y,"+").concat(P," ").concat(et),Q+=` +`.concat(f,"-").concat(P," ").concat(it),Be+=2):(ue+=Q,Q="",(at===1||re===0)&&(ue+=` + `.concat(et),Be++))}if(Be>20&&re30)for(j[26]="".concat(u,"...").concat(P);j.length>27;)j.pop();j.length===1?se=W.call(this,"".concat(ne," ").concat(j[0])):se=W.call(this,"".concat(ne,` + +`).concat(j.join(` +`),` +`))}else{var ee=B(J),ie="",fe=L[G];G==="notDeepEqual"||G==="notEqual"?(ee="".concat(L[G],` + +`).concat(ee),ee.length>1024&&(ee="".concat(ee.slice(0,1021),"..."))):(ie="".concat(B(Z)),ee.length>512&&(ee="".concat(ee.slice(0,509),"...")),ie.length>512&&(ie="".concat(ie.slice(0,509),"...")),G==="deepEqual"||G==="equal"?ee="".concat(fe,` + +`).concat(ee,` + +should equal + +`):ie=" ".concat(G," ").concat(ie)),se=W.call(this,"".concat(ee).concat(ie))}return Error.stackTraceLimit=re,se.generatedMessage=!he,Object.defineProperty(s(se),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),se.code="ERR_ASSERTION",se.actual=J,se.expected=Z,se.operator=G,Error.captureStackTrace&&Error.captureStackTrace(s(se),$),se.stack,se.name="AssertionError",n(se)}return t(Q,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:U,value:function(se,he){return S(this,x(x({},he),{},{customInspect:!1,depth:0}))}}]),Q}(c(Error),S.custom);H.exports=I}}),XM=Ye({"node_modules/object-keys/isArguments.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(A){var M=g.call(A),e=M==="[object Arguments]";return e||(e=M!=="[object Array]"&&A!==null&&typeof A=="object"&&typeof A.length=="number"&&A.length>=0&&g.call(A.callee)==="[object Function]"),e}}}),I4=Ye({"node_modules/object-keys/implementation.js"(X,H){"use strict";var g;Object.keys||(x=Object.prototype.hasOwnProperty,A=Object.prototype.toString,M=XM(),e=Object.prototype.propertyIsEnumerable,t=!e.call({toString:null},"toString"),r=e.call(function(){},"prototype"),o=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],a=function(c){var h=c.constructor;return h&&h.prototype===c},i={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},n=function(){if(typeof window>"u")return!1;for(var c in window)try{if(!i["$"+c]&&x.call(window,c)&&window[c]!==null&&typeof window[c]=="object")try{a(window[c])}catch{return!0}}catch{return!0}return!1}(),s=function(c){if(typeof window>"u"||!n)return a(c);try{return a(c)}catch{return!1}},g=function(h){var v=h!==null&&typeof h=="object",p=A.call(h)==="[object Function]",T=M(h),l=v&&A.call(h)==="[object String]",_=[];if(!v&&!p&&!T)throw new TypeError("Object.keys called on a non-object");var w=r&&p;if(l&&h.length>0&&!x.call(h,0))for(var S=0;S0)for(var E=0;E2?arguments[2]:{},h=g(s);x&&(h=M.call(h,Object.getOwnPropertySymbols(s)));for(var v=0;vMe.length)&&(ge=Me.length);for(var ce=0,ze=new Array(ge);ce10)return!0;for(var ge=0;ge57)return!0}return Me.length===10&&Me>=Math.pow(2,32)}function I(Me){return Object.keys(Me).filter(O).concat(s(Me).filter(Object.prototype.propertyIsEnumerable.bind(Me)))}function N(Me,ge){if(Me===ge)return 0;for(var ce=Me.length,ze=ge.length,tt=0,nt=Math.min(ce,ze);tt1?Z-1:0),ne=1;ne1?Z-1:0),ne=1;ne1?Z-1:0),ne=1;ne1?Z-1:0),ne=1;ne0)return t(i);if(s==="number"&&isNaN(i)===!1)return n.long?o(i):r(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function t(i){if(i=String(i),!(i.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(i);if(n){var s=parseFloat(n[1]),c=(n[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*e;case"days":case"day":case"d":return s*M;case"hours":case"hour":case"hrs":case"hr":case"h":return s*A;case"minutes":case"minute":case"mins":case"min":case"m":return s*x;case"seconds":case"second":case"secs":case"sec":case"s":return s*g;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function r(i){return i>=M?Math.round(i/M)+"d":i>=A?Math.round(i/A)+"h":i>=x?Math.round(i/x)+"m":i>=g?Math.round(i/g)+"s":i+"ms"}function o(i){return a(i,M,"day")||a(i,A,"hour")||a(i,x,"minute")||a(i,g,"second")||i+" ms"}function a(i,n,s){if(!(i=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}X.formatters.j=function(r){try{return JSON.stringify(r)}catch(o){return"[UnexpectedJSONParseError]: "+o.message}};function x(r){var o=this.useColors;if(r[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+r[0]+(o?"%c ":" ")+"+"+X.humanize(this.diff),!!o){var a="color: "+this.color;r.splice(1,0,a,"color: inherit");var i=0,n=0;r[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(i++,s==="%c"&&(n=i))}),r.splice(n,0,a)}}function A(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function M(r){try{r==null?X.storage.removeItem("debug"):X.storage.debug=r}catch{}}function e(){var r;try{r=X.storage.debug}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}X.enable(e());function t(){try{return window.localStorage}catch{}}}}),q4=Ye({"node_modules/stream-parser/index.js"(X,H){var g=X_(),x=V4()("stream-parser");H.exports=r;var A=-1,M=0,e=1,t=2;function r(l){var _=l&&typeof l._transform=="function",w=l&&typeof l._write=="function";if(!_&&!w)throw new Error("must pass a Writable or Transform stream in");x("extending Parser into stream"),l._bytes=a,l._skipBytes=i,_&&(l._passthrough=n),_?l._transform=c:l._write=s}function o(l){x("initializing parser stream"),l._parserBytesLeft=0,l._parserBuffers=[],l._parserBuffered=0,l._parserState=A,l._parserCallback=null,typeof l.push=="function"&&(l._parserOutput=l.push.bind(l)),l._parserInit=!0}function a(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(isFinite(l)&&l>0,'can only buffer a finite number of bytes > 0, got "'+l+'"'),this._parserInit||o(this),x("buffering %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=M}function i(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(l>0,'can only skip > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("skipping %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=e}function n(l,_){g(!this._parserCallback,'There is already a "callback" set!'),g(l>0,'can only pass through > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("passing through %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=t}function s(l,_,w){this._parserInit||o(this),x("write(%o bytes)",l.length),typeof _=="function"&&(w=_),p(this,l,null,w)}function c(l,_,w){this._parserInit||o(this),x("transform(%o bytes)",l.length),typeof _!="function"&&(_=this._parserOutput),p(this,l,_,w)}function h(l,_,w,S){return l._parserBytesLeft<=0?S(new Error("got data but not currently parsing anything")):_.length<=l._parserBytesLeft?function(){return v(l,_,w,S)}:function(){var E=_.slice(0,l._parserBytesLeft);return v(l,E,w,function(m){if(m)return S(m);if(_.length>E.length)return function(){return h(l,_.slice(E.length),w,S)}})}}function v(l,_,w,S){if(l._parserBytesLeft-=_.length,x("%o bytes left for stream piece",l._parserBytesLeft),l._parserState===M?(l._parserBuffers.push(_),l._parserBuffered+=_.length):l._parserState===t&&w(_),l._parserBytesLeft===0){var E=l._parserCallback;if(E&&l._parserState===M&&l._parserBuffers.length>1&&(_=Buffer.concat(l._parserBuffers,l._parserBuffered)),l._parserState!==M&&(_=null),l._parserCallback=null,l._parserBuffered=0,l._parserState=A,l._parserBuffers.splice(0),E){var m=[];_&&m.push(_),w&&m.push(w);var b=E.length>m.length;b&&m.push(T(S));var d=E.apply(l,m);if(!b||S===d)return S}}else return S}var p=T(h);function T(l){return function(){for(var _=l.apply(this,arguments);typeof _=="function";)_=_();return _}}}}),Mu=Ye({"node_modules/probe-image-size/lib/common.js"(X){"use strict";var H=L4().Transform,g=q4();function x(){H.call(this,{readableObjectMode:!0})}x.prototype=Object.create(H.prototype),x.prototype.constructor=x,g(x.prototype),X.ParserStream=x,X.sliceEq=function(M,e,t){for(var r=e,o=0;o>4&15,h=n[4]&15,v=n[5]>>4&15,p=g(n,6),T=8,l=0;lp.width||v.width===p.width&&v.height>p.height?v:p}),c=n.reduce(function(v,p){return v.height>p.height||v.height===p.height&&v.width>p.width?v:p}),h;return s.width>c.height||s.width===c.height&&s.height>c.width?h=s:h=c,h}H.exports.readSizeFromMeta=function(n){var s={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(a(n,s),!!s.sizes.length){var c=i(s.sizes),h=1;s.transforms.forEach(function(p){var T={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(p.type==="imir"&&(p.value===0?h=l[h]:(h=l[h],h=T[h],h=T[h])),p.type==="irot")for(var _=0;_0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,M)}},A.prototype.read_uint16=function(M){var e=this.input;if(M+2>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*256+e[M+1]:e[M]+e[M+1]*256},A.prototype.read_uint32=function(M){var e=this.input;if(M+4>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*16777216+e[M+1]*65536+e[M+2]*256+e[M+3]:e[M]+e[M+1]*256+e[M+2]*65536+e[M+3]*16777216},A.prototype.is_subifd_link=function(M,e){return M===0&&e===34665||M===0&&e===34853||M===34665&&e===40965},A.prototype.exif_format_length=function(M){switch(M){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},A.prototype.exif_format_read=function(M,e){var t;switch(M){case 1:case 2:return t=this.input[e],t;case 6:return t=this.input[e],t|(t&128)*33554430;case 3:return t=this.read_uint16(e),t;case 8:return t=this.read_uint16(e),t|(t&32768)*131070;case 4:return t=this.read_uint32(e),t;case 9:return t=this.read_uint32(e),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},A.prototype.scan_ifd=function(M,e,t){var r=this.read_uint16(e);e+=2;for(var o=0;othis.input.length)throw g("unexpected EOF","EBADDATA");for(var p=[],T=h,l=0;l0&&(this.ifds_to_read.push({id:a,offset:p[0]}),v=!0);var w={is_big_endian:this.big_endian,ifd:M,tag:a,format:i,count:n,entry_offset:e+this.start,data_length:c,data_offset:h+this.start,value:p,is_subifd_link:v};if(t(w)===!1){this.aborted=!0;return}e+=12}M===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},H.exports.ExifParser=A,H.exports.get_orientation=function(M){var e=0;try{return new A(M,0,M.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return e=t.value[0],!1}),e}catch{return-1}}}}),G4=Ye({"node_modules/probe-image-size/lib/parse_sync/avif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=H4(),e=g3(),t=g("ftyp");H.exports=function(r){if(x(r,4,t)){var o=M.unbox(r,0);if(o){var a=M.getMimeType(o.data);if(a){for(var i,n=o.end;;){var s=M.unbox(r,n);if(!s)break;if(n=s.end,s.boxtype==="mdat")return;if(s.boxtype==="meta"){i=s.data;break}}if(i){var c=M.readSizeFromMeta(i);if(c){var h={width:c.width,height:c.height,type:a.type,mime:a.mime,wUnits:"px",hUnits:"px"};if(c.variants.length>1&&(h.variants=c.variants),c.orientation&&(h.orientation=c.orientation),c.exif_location&&c.exif_location.offset+c.exif_location.length<=r.length){var v=A(r,c.exif_location.offset),p=r.slice(c.exif_location.offset+v+4,c.exif_location.offset+c.exif_location.length),T=e.get_orientation(p);T>0&&(h.orientation=T)}return h}}}}}}}}),W4=Ye({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("BM");H.exports=function(e){if(!(e.length<26)&&x(e,0,M))return{width:A(e,18),height:A(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),Z4=Ye({"node_modules/probe-image-size/lib/parse_sync/gif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("GIF87a"),e=g("GIF89a");H.exports=function(t){if(!(t.length<10)&&!(!x(t,0,M)&&!x(t,0,e)))return{width:A(t,6),height:A(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),X4=Ye({"node_modules/probe-image-size/lib/parse_sync/ico.js"(X,H){"use strict";var g=Mu().readUInt16LE,x=0,A=1,M=16;H.exports=function(e){var t=g(e,0),r=g(e,2),o=g(e,4);if(!(t!==x||r!==A||!o)){for(var a=[],i={width:0,height:0},n=0;ni.width||c>i.height)&&(i=h)}return{width:i.width,height:i.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),Y4=Ye({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().str2arr,A=Mu().sliceEq,M=g3(),e=x("Exif\0\0");H.exports=function(t){if(!(t.length<2)&&!(t[0]!==255||t[1]!==216||t[2]!==255))for(var r=2;;){for(;;){if(t.length-r<2)return;if(t[r++]===255)break}for(var o=t[r++],a;o===255;)o=t[r++];if(208<=o&&o<=217||o===1)a=0;else if(192<=o&&o<=254){if(t.length-r<2)return;a=g(t,r)-2,r+=2}else return;if(o===217||o===218)return;var i;if(o===225&&a>=10&&A(t,r,e)&&(i=M.get_orientation(t.slice(r+6,r+a))),a>=5&&192<=o&&o<=207&&o!==196&&o!==200&&o!==204){if(t.length-r0&&(n.orientation=i),n}r+=a}}}}),K4=Ye({"node_modules/probe-image-size/lib/parse_sync/png.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g(`\x89PNG\r + +`),e=g("IHDR");H.exports=function(t){if(!(t.length<24)&&x(t,0,M)&&x(t,12,e))return{width:A(t,16),height:A(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),J4=Ye({"node_modules/probe-image-size/lib/parse_sync/psd.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g("8BPS\0");H.exports=function(e){if(!(e.length<22)&&x(e,0,M))return{width:A(e,18),height:A(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),$4=Ye({"node_modules/probe-image-size/lib/parse_sync/svg.js"(X,H){"use strict";function g(s){return s===32||s===9||s===13||s===10}function x(s){return typeof s=="number"&&isFinite(s)&&s>0}function A(s){var c=0,h=s.length;for(s[0]===239&&s[1]===187&&s[2]===191&&(c=3);c]*>/,e=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,r=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,a=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function i(s){var c=s.match(t),h=s.match(r),v=s.match(o);return{width:c&&(c[1]||c[2]),height:h&&(h[1]||h[2]),viewbox:v&&(v[1]||v[2])}}function n(s){return a.test(s)?s.match(a)[0]:"px"}H.exports=function(s){if(A(s)){for(var c="",h=0;h>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function i(n,s){return{width:(n[s+6]<<16|n[s+5]<<8|n[s+4])+1,height:(n[s+9]<n.length)){for(;s+8=10?c=c||o(n,s+8):p==="VP8L"&&T>=9?c=c||a(n,s+8):p==="VP8X"&&T>=10?c=c||i(n,s+8):p==="EXIF"&&(h=e.get_orientation(n.slice(s+8,s+8+T)),s=1/0),s+=8+T}if(c)return h>0&&(c.orientation=h),c}}}}}),t9=Ye({"node_modules/probe-image-size/lib/parsers_sync.js"(X,H){"use strict";H.exports={avif:G4(),bmp:W4(),gif:Z4(),ico:X4(),jpeg:Y4(),png:K4(),psd:J4(),svg:$4(),tiff:Q4(),webp:e9()}}}),r9=Ye({"node_modules/probe-image-size/sync.js"(X,H){"use strict";var g=t9();function x(A){for(var M=Object.keys(g),e=0;e0;)P=c.c2p(E+B*u),B--;for(B=0;z===void 0&&B0;)F=h.c2p(m+B*y),B--;if(PG[0];if($||J){var Z=f+I/2,re=z+N/2;se+="transform:"+A(Z+"px",re+"px")+"scale("+($?-1:1)+","+(J?-1:1)+")"+A(-Z+"px",-re+"px")+";"}}ue.attr("style",se);var ne=new Promise(function(j){if(_._hasZ)j();else if(_._hasSource)if(_._canvas&&_._canvas.el.width===b&&_._canvas.el.height===d&&_._canvas.source===_.source)j();else{var ee=document.createElement("canvas");ee.width=b,ee.height=d;var ie=ee.getContext("2d",{willReadFrequently:!0});_._image=_._image||new Image;var fe=_._image;fe.onload=function(){ie.drawImage(fe,0,0),_._canvas={el:ee,source:_.source},j()},fe.setAttribute("src",_.source)}}).then(function(){var j,ee;if(_._hasZ)ee=Q(function(be,Ae){var Be=S[Ae][be];return x.isTypedArray(Be)&&(Be=Array.from(Be)),Be}),j=ee.toDataURL("image/png");else if(_._hasSource)if(w)j=_.source;else{var ie=_._canvas.el.getContext("2d",{willReadFrequently:!0}),fe=ie.getImageData(0,0,b,d).data;ee=Q(function(be,Ae){var Be=4*(Ae*b+be);return[fe[Be],fe[Be+1],fe[Be+2],fe[Be+3]]}),j=ee.toDataURL("image/png")}ue.attr({"xlink:href":j,height:N,width:I,x:f,y:z})});a._promises.push(ne)})}}}),o9=Ye({"src/traces/image/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".im image").style("opacity",function(M){return M[0].trace.opacity})}}}),s9=Ye({"src/traces/image/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=d1();H.exports=function(t,r,o){var a=t.cd[0],i=a.trace,n=t.xa,s=t.ya;if(!(g.inbox(r-a.x0,r-(a.x0+a.w*i.dx),0)>0||g.inbox(o-a.y0,o-(a.y0+a.h*i.dy),0)>0)){var c=Math.floor((r-a.x0)/i.dx),h=Math.floor(Math.abs(o-a.y0)/i.dy),v;if(i._hasZ?v=a.z[h][c]:i._hasSource&&(v=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(c,h,1,1).data),!!v){var p=a.hi||i.hoverinfo,T;if(p){var l=p.split("+");l.indexOf("all")!==-1&&(l=["color"]),l.indexOf("color")!==-1&&(T=!0)}var _=M.colormodel[i.colormodel],w=_.colormodel||i.colormodel,S=w.length,E=i._scaler(v),m=_.suffix,b=[];(i.hovertemplate||T)&&(b.push("["+[E[0]+m[0],E[1]+m[1],E[2]+m[2]].join(", ")),S===4&&b.push(", "+E[3]+m[3]),b.push("]"),b=b.join(""),t.extraText=w.toUpperCase()+": "+b);var d;A(i.hovertext)&&A(i.hovertext[h])?d=i.hovertext[h][c]:A(i.text)&&A(i.text[h])&&(d=i.text[h][c]);var u=s.c2p(a.y0+(h+.5)*i.dy),y=a.x0+(c+.5)*i.dx,f=a.y0+(h+.5)*i.dy,P="["+v.slice(0,i.colormodel.length).join(", ")+"]";return[x.extendFlat(t,{index:[h,c],x0:n.c2p(a.x0+c*i.dx),x1:n.c2p(a.x0+(c+1)*i.dx),y0:u,y1:u,color:E,xVal:y,xLabelVal:y,yVal:f,yLabelVal:f,zLabelVal:P,text:d,hovertemplateLabels:{zLabel:P,colorLabel:b,"color[0]Label":E[0]+m[0],"color[1]Label":E[1]+m[1],"color[2]Label":E[2]+m[2],"color[3]Label":E[3]+m[3]}})]}}}}}),l9=Ye({"src/traces/image/event_data.js"(X,H){"use strict";H.exports=function(x,A){return"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x.color=A.color,x.colormodel=A.trace.colormodel,x.z||(x.z=A.color),x}}}),u9=Ye({"src/traces/image/index.js"(X,H){"use strict";H.exports={attributes:IM(),supplyDefaults:i4(),calc:i9(),plot:n9(),style:o9(),hoverPoints:s9(),eventData:l9(),moduleType:"trace",name:"image",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),c9=Ye({"lib/image.js"(X,H){"use strict";H.exports=u9()}}),i0=Ye({"src/traces/pie/attributes.js"(X,H){"use strict";var g=Pl(),x=Wu().attributes,A=Au(),M=Gf(),e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Oo().extendFlat,o=Uh().pattern,a=A({editType:"plot",arrayOk:!0,colorEditType:"plot"});H.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:M.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:o,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:r({},g.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:e({},{keys:["label","color","value","percent","text"]}),texttemplate:t({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:r({},a,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:r({},a,{}),outsidetextfont:r({},a,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:r({},a,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:x({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),n0=Ye({"src/traces/pie/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=i0(),M=Wu().defaults,e=gd().handleText,t=ta().coercePattern;function r(i,n){var s=x.isArrayOrTypedArray(i),c=x.isArrayOrTypedArray(n),h=Math.min(s?i.length:1/0,c?n.length:1/0);if(isFinite(h)||(h=0),h&&c){for(var v,p=0;p0){v=!0;break}}v||(h=0)}return{hasLabels:s,hasValues:c,len:h}}function o(i,n,s,c,h){var v=c("marker.line.width");v&&c("marker.line.color",h?void 0:s.paper_bgcolor);var p=c("marker.colors");t(c,"marker.pattern",p),i.marker&&!n.marker.pattern.fgcolor&&(n.marker.pattern.fgcolor=i.marker.colors),n.marker.pattern.bgcolor||(n.marker.pattern.bgcolor=s.paper_bgcolor)}function a(i,n,s,c){function h(f,P){return x.coerce(i,n,A,f,P)}var v=h("labels"),p=h("values"),T=r(v,p),l=T.len;if(n._hasLabels=T.hasLabels,n._hasValues=T.hasValues,!n._hasLabels&&n._hasValues&&(h("label0"),h("dlabel")),!l){n.visible=!1;return}n._length=l,o(i,n,c,h,!0),h("scalegroup");var _=h("text"),w=h("texttemplate"),S;if(w||(S=h("textinfo",x.isArrayOrTypedArray(_)?"text+percent":"percent")),h("hovertext"),h("hovertemplate"),w||S&&S!=="none"){var E=h("textposition");e(i,n,c,h,E,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var m=Array.isArray(E)||E==="auto",b=m||E==="outside";b&&h("automargin"),(E==="inside"||E==="auto"||Array.isArray(E))&&h("insidetextorientation")}else S==="none"&&h("textposition","none");M(n,c,h);var d=h("hole"),u=h("title.text");if(u){var y=h("title.position",d?"middle center":"top center");!d&&y==="middle center"&&(n.title.position="top center"),x.coerceFont(h,"title.font",c.font)}h("sort"),h("direction"),h("rotation"),h("pull")}H.exports={handleLabelsAndValues:r,handleMarkerDefaults:o,supplyDefaults:a}}}),y3=Ye({"src/traces/pie/layout_attributes.js"(X,H){"use strict";H.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),f9=Ye({"src/traces/pie/layout_defaults.js"(X,H){"use strict";var g=ta(),x=y3();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("piecolorway",e.colorway),t("extendpiecolors")}}}),y1=Ye({"src/traces/pie/calc.js"(X,H){"use strict";var g=jo(),x=bh(),A=Fn(),M={};function e(a,i){var n=[],s=a._fullLayout,c=s.hiddenlabels||[],h=i.labels,v=i.marker.colors||[],p=i.values,T=i._length,l=i._hasValues&&T,_,w;if(i.dlabel)for(h=new Array(T),_=0;_=0});var P=i.type==="funnelarea"?b:i.sort;return P&&n.sort(function(L,z){return z.v-L.v}),n[0]&&(n[0].vTotal=m),n}function t(a){return function(n,s){return!n||(n=x(n),!n.isValid())?!1:(n=A.addOpacity(n,n.getAlpha()),a[s]||(a[s]=n),n)}}function r(a,i){var n=(i||{}).type;n||(n="pie");var s=a._fullLayout,c=a.calcdata,h=s[n+"colorway"],v=s["_"+n+"colormap"];s["extend"+n+"colors"]&&(h=o(h,M));for(var p=0,T=0;T0&&(tt+=St*ce.pxmid[0],nt+=St*ce.pxmid[1])}ce.cxFinal=tt,ce.cyFinal=nt;function Ot(yt,Fe,Ke,Ne){var Ee=Ne*(Fe[0]-yt[0]),Ve=Ne*(Fe[1]-yt[1]);return"a"+Ne*fe.r+","+Ne*fe.r+" 0 "+ce.largeArc+(Ke?" 1 ":" 0 ")+Ee+","+Ve}var jt=be.hole;if(ce.v===fe.vTotal){var ur="M"+(tt+ce.px0[0])+","+(nt+ce.px0[1])+Ot(ce.px0,ce.pxmid,!0,1)+Ot(ce.pxmid,ce.px0,!0,1)+"Z";jt?Ct.attr("d","M"+(tt+jt*ce.px0[0])+","+(nt+jt*ce.px0[1])+Ot(ce.px0,ce.pxmid,!1,jt)+Ot(ce.pxmid,ce.px0,!1,jt)+"Z"+ur):Ct.attr("d",ur)}else{var ar=Ot(ce.px0,ce.px1,!0,1);if(jt){var Cr=1-jt;Ct.attr("d","M"+(tt+jt*ce.px1[0])+","+(nt+jt*ce.px1[1])+Ot(ce.px1,ce.px0,!1,jt)+"l"+Cr*ce.px0[0]+","+Cr*ce.px0[1]+ar+"Z")}else Ct.attr("d","M"+tt+","+nt+"l"+ce.px0[0]+","+ce.px0[1]+ar+"Z")}he($,ce,fe);var vr=h.castOption(be.textposition,ce.pts),_r=Qe.selectAll("g.slicetext").data(ce.text&&vr!=="none"?[0]:[]);_r.enter().append("g").classed("slicetext",!0),_r.exit().remove(),_r.each(function(){var yt=t.ensureSingle(g.select(this),"text","",function(Le){Le.attr("data-notex",1)}),Fe=t.ensureUniformFontSize($,vr==="outside"?w(be,ce,re.font):S(be,ce,re.font));yt.text(ce.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(e.font,Fe).call(a.convertToTspans,$);var Ke=e.bBox(yt.node()),Ne;if(vr==="outside")Ne=z(Ke,ce);else if(Ne=m(Ke,ce,fe),vr==="auto"&&Ne.scale<1){var Ee=t.ensureUniformFontSize($,be.outsidetextfont);yt.call(e.font,Ee),Ke=e.bBox(yt.node()),Ne=z(Ke,ce)}var Ve=Ne.textPosAngle,ke=Ve===void 0?ce.pxmid:se(fe.r,Ve);if(Ne.targetX=tt+ke[0]*Ne.rCenter+(Ne.x||0),Ne.targetY=nt+ke[1]*Ne.rCenter+(Ne.y||0),G(Ne,Ke),Ne.outside){var Te=Ne.targetY;ce.yLabelMin=Te-Ke.height/2,ce.yLabelMid=Te,ce.yLabelMax=Te+Ke.height/2,ce.labelExtraX=0,ce.labelExtraY=0,Ie=!0}Ne.fontSize=Fe.size,n(be.type,Ne,re),ee[ze].transform=Ne,t.setTransormAndDisplay(yt,Ne)})});var Ze=g.select(this).selectAll("g.titletext").data(be.title.text?[0]:[]);if(Ze.enter().append("g").classed("titletext",!0),Ze.exit().remove(),Ze.each(function(){var ce=t.ensureSingle(g.select(this),"text","",function(nt){nt.attr("data-notex",1)}),ze=be.title.text;be._meta&&(ze=t.templateString(ze,be._meta)),ce.text(ze).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(e.font,be.title.font).call(a.convertToTspans,$);var tt;be.title.position==="middle center"?tt=F(fe):tt=B(fe,ne),ce.attr("transform",o(tt.x,tt.y)+r(Math.min(1,tt.scale))+o(tt.tx,tt.ty))}),Ie&&U(Be,be),l(Ae,be),Ie&&be.automargin){var at=e.bBox(ie.node()),it=be.domain,et=ne.w*(it.x[1]-it.x[0]),lt=ne.h*(it.y[1]-it.y[0]),Me=(.5*et-fe.r)/ne.w,ge=(.5*lt-fe.r)/ne.h;x.autoMargin($,"pie."+be.uid+".automargin",{xl:it.x[0]-Me,xr:it.x[1]+Me,yb:it.y[0]-ge,yt:it.y[1]+ge,l:Math.max(fe.cx-fe.r-at.left,0),r:Math.max(at.right-(fe.cx+fe.r),0),b:Math.max(at.bottom-(fe.cy+fe.r),0),t:Math.max(fe.cy-fe.r-at.top,0),pad:5})}})});setTimeout(function(){j.selectAll("tspan").each(function(){var ee=g.select(this);ee.attr("dy")&&ee.attr("dy",ee.attr("dy"))})},0)}function l($,J){$.each(function(Z){var re=g.select(this);if(!Z.labelExtraX&&!Z.labelExtraY){re.select("path.textline").remove();return}var ne=re.select("g.slicetext text");Z.transform.targetX+=Z.labelExtraX,Z.transform.targetY+=Z.labelExtraY,t.setTransormAndDisplay(ne,Z.transform);var j=Z.cxFinal+Z.pxmid[0],ee=Z.cyFinal+Z.pxmid[1],ie="M"+j+","+ee,fe=(Z.yLabelMax-Z.yLabelMin)*(Z.pxmid[0]<0?-1:1)/4;if(Z.labelExtraX){var be=Z.labelExtraX*Z.pxmid[1]/Z.pxmid[0],Ae=Z.yLabelMid+Z.labelExtraY-(Z.cyFinal+Z.pxmid[1]);Math.abs(be)>Math.abs(Ae)?ie+="l"+Ae*Z.pxmid[0]/Z.pxmid[1]+","+Ae+"H"+(j+Z.labelExtraX+fe):ie+="l"+Z.labelExtraX+","+be+"v"+(Ae-be)+"h"+fe}else ie+="V"+(Z.yLabelMid+Z.labelExtraY)+"h"+fe;t.ensureSingle(re,"path","textline").call(M.stroke,J.outsidetextfont.color).attr({"stroke-width":Math.min(2,J.outsidetextfont.size/8),d:ie,fill:"none"})})}function _($,J,Z){var re=Z[0],ne=re.cx,j=re.cy,ee=re.trace,ie=ee.type==="funnelarea";"_hasHoverLabel"in ee||(ee._hasHoverLabel=!1),"_hasHoverEvent"in ee||(ee._hasHoverEvent=!1),$.on("mouseover",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];if(!(J._dragging||be.hovermode===!1)){var Be=Ae.hoverinfo;if(Array.isArray(Be)&&(Be=A.castHoverinfo({hoverinfo:[h.castOption(Be,fe.pts)],_module:ee._module},be,0)),Be==="all"&&(Be="label+text+value+percent+name"),Ae.hovertemplate||Be!=="none"&&Be!=="skip"&&Be){var Ie=fe.rInscribed||0,Ze=ne+fe.pxmid[0]*(1-Ie),at=j+fe.pxmid[1]*(1-Ie),it=be.separators,et=[];if(Be&&Be.indexOf("label")!==-1&&et.push(fe.label),fe.text=h.castOption(Ae.hovertext||Ae.text,fe.pts),Be&&Be.indexOf("text")!==-1){var lt=fe.text;t.isValidTextValue(lt)&&et.push(lt)}fe.value=fe.v,fe.valueLabel=h.formatPieValue(fe.v,it),Be&&Be.indexOf("value")!==-1&&et.push(fe.valueLabel),fe.percent=fe.v/re.vTotal,fe.percentLabel=h.formatPiePercent(fe.percent,it),Be&&Be.indexOf("percent")!==-1&&et.push(fe.percentLabel);var Me=Ae.hoverlabel,ge=Me.font,ce=[];A.loneHover({trace:ee,x0:Ze-Ie*re.r,x1:Ze+Ie*re.r,y:at,_x0:ie?ne+fe.TL[0]:Ze-Ie*re.r,_x1:ie?ne+fe.TR[0]:Ze+Ie*re.r,_y0:ie?j+fe.TL[1]:at-Ie*re.r,_y1:ie?j+fe.BL[1]:at+Ie*re.r,text:et.join("
"),name:Ae.hovertemplate||Be.indexOf("name")!==-1?Ae.name:void 0,idealAlign:fe.pxmid[0]<0?"left":"right",color:h.castOption(Me.bgcolor,fe.pts)||fe.color,borderColor:h.castOption(Me.bordercolor,fe.pts),fontFamily:h.castOption(ge.family,fe.pts),fontSize:h.castOption(ge.size,fe.pts),fontColor:h.castOption(ge.color,fe.pts),nameLength:h.castOption(Me.namelength,fe.pts),textAlign:h.castOption(Me.align,fe.pts),hovertemplate:h.castOption(Ae.hovertemplate,fe.pts),hovertemplateLabels:fe,eventData:[v(fe,Ae)]},{container:be._hoverlayer.node(),outerContainer:be._paper.node(),gd:J,inOut_bbox:ce}),fe.bbox=ce[0],ee._hasHoverLabel=!0}ee._hasHoverEvent=!0,J.emit("plotly_hover",{points:[v(fe,Ae)],event:g.event})}}),$.on("mouseout",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index],Be=g.select(this).datum();ee._hasHoverEvent&&(fe.originalEvent=g.event,J.emit("plotly_unhover",{points:[v(Be,Ae)],event:g.event}),ee._hasHoverEvent=!1),ee._hasHoverLabel&&(A.loneUnhover(be._hoverlayer.node()),ee._hasHoverLabel=!1)}),$.on("click",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];J._dragging||be.hovermode===!1||(J._hoverdata=[v(fe,Ae)],A.click(J,g.event))})}function w($,J,Z){var re=h.castOption($.outsidetextfont.color,J.pts)||h.castOption($.textfont.color,J.pts)||Z.color,ne=h.castOption($.outsidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.outsidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.outsidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.outsidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.outsidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.outsidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.outsidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.outsidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re,family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function S($,J,Z){var re=h.castOption($.insidetextfont.color,J.pts);!re&&$._input.textfont&&(re=h.castOption($._input.textfont.color,J.pts));var ne=h.castOption($.insidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.insidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.insidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.insidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.insidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.insidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.insidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.insidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re||M.contrast(J.color),family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function E($,J){for(var Z,re,ne=0;ne<$.length;ne++)if(Z=$[ne][0],re=Z.trace,re.title.text){var j=re.title.text;re._meta&&(j=t.templateString(j,re._meta));var ee=e.tester.append("text").attr("data-notex",1).text(j).call(e.font,re.title.font).call(a.convertToTspans,J),ie=e.bBox(ee.node(),!0);Z.titleBox={width:ie.width,height:ie.height},ee.remove()}}function m($,J,Z){var re=Z.r||J.rpx1,ne=J.rInscribed,j=J.startangle===J.stopangle;if(j)return{rCenter:1-ne,scale:0,rotate:0,textPosAngle:0};var ee=J.ring,ie=ee===1&&Math.abs(J.startangle-J.stopangle)===Math.PI*2,fe=J.halfangle,be=J.midangle,Ae=Z.trace.insidetextorientation,Be=Ae==="horizontal",Ie=Ae==="tangential",Ze=Ae==="radial",at=Ae==="auto",it=[],et;if(!at){var lt=function(Qe,Ct){if(b(J,Qe)){var St=Math.abs(Qe-J.startangle),Ot=Math.abs(Qe-J.stopangle),jt=St=-4;Me-=2)lt(Math.PI*Me,"tan");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1),"tan")}if(Be||Ze){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1.5),"rad");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+.5),"rad")}}if(ie||at||Be){var ge=Math.sqrt($.width*$.width+$.height*$.height);if(et={scale:ne*re*2/ge,rCenter:1-ne,rotate:0},et.textPosAngle=(J.startangle+J.stopangle)/2,et.scale>=1)return et;it.push(et)}(at||Ze)&&(et=d($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et)),(at||Ie)&&(et=u($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et));for(var ce=0,ze=0,tt=0;tt=1)break}return it[ce]}function b($,J){var Z=$.startangle,re=$.stopangle;return Z>J&&J>re||Z0?1:-1)/2,y:j/(1+Z*Z/(re*re)),outside:!0}}function F($){var J=Math.sqrt($.titleBox.width*$.titleBox.width+$.titleBox.height*$.titleBox.height);return{x:$.cx,y:$.cy,scale:$.trace.hole*$.r*2/J,tx:0,ty:-$.titleBox.height/2+$.trace.title.font.size}}function B($,J){var Z=1,re=1,ne,j=$.trace,ee={x:$.cx,y:$.cy},ie={tx:0,ty:0};ie.ty+=j.title.font.size,ne=N(j),j.title.position.indexOf("top")!==-1?(ee.y-=(1+ne)*$.r,ie.ty-=$.titleBox.height):j.title.position.indexOf("bottom")!==-1&&(ee.y+=(1+ne)*$.r);var fe=O($.r,$.trace.aspectratio),be=J.w*(j.domain.x[1]-j.domain.x[0])/2;return j.title.position.indexOf("left")!==-1?(be=be+fe,ee.x-=(1+ne)*fe,ie.tx+=$.titleBox.width/2):j.title.position.indexOf("center")!==-1?be*=2:j.title.position.indexOf("right")!==-1&&(be=be+fe,ee.x+=(1+ne)*fe,ie.tx-=$.titleBox.width/2),Z=be/$.titleBox.width,re=I($,J)/$.titleBox.height,{x:ee.x,y:ee.y,scale:Math.min(Z,re),tx:ie.tx,ty:ie.ty}}function O($,J){return $/(J===void 0?1:J)}function I($,J){var Z=$.trace,re=J.h*(Z.domain.y[1]-Z.domain.y[0]);return Math.min($.titleBox.height,re/2)}function N($){var J=$.pull;if(!J)return 0;var Z;if(t.isArrayOrTypedArray(J))for(J=0,Z=0;Z<$.pull.length;Z++)$.pull[Z]>J&&(J=$.pull[Z]);return J}function U($,J){var Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at;function it(ge,ce){return ge.pxmid[1]-ce.pxmid[1]}function et(ge,ce){return ce.pxmid[1]-ge.pxmid[1]}function lt(ge,ce){ce||(ce={});var ze=ce.labelExtraY+(re?ce.yLabelMax:ce.yLabelMin),tt=re?ge.yLabelMin:ge.yLabelMax,nt=re?ge.yLabelMax:ge.yLabelMin,Qe=ge.cyFinal+ee(ge.px0[1],ge.px1[1]),Ct=ze-tt,St,Ot,jt,ur,ar,Cr;if(Ct*fe>0&&(ge.labelExtraY=Ct),!!t.isArrayOrTypedArray(J.pull))for(Ot=0;Ot=(h.castOption(J.pull,jt.pts)||0))&&((ge.pxmid[1]-jt.pxmid[1])*fe>0?(ur=jt.cyFinal+ee(jt.px0[1],jt.px1[1]),Ct=ur-tt-ge.labelExtraY,Ct*fe>0&&(ge.labelExtraY+=Ct)):(nt+ge.labelExtraY-Qe)*fe>0&&(St=3*ie*Math.abs(Ot-Be.indexOf(ge)),ar=jt.cxFinal+j(jt.px0[0],jt.px1[0]),Cr=ar+St-(ge.cxFinal+ge.pxmid[0])-ge.labelExtraX,Cr*ie>0&&(ge.labelExtraX+=Cr)))}for(re=0;re<2;re++)for(ne=re?it:et,ee=re?Math.max:Math.min,fe=re?1:-1,Z=0;Z<2;Z++){for(j=Z?Math.max:Math.min,ie=Z?1:-1,be=$[re][Z],be.sort(ne),Ae=$[1-re][Z],Be=Ae.concat(be),Ze=[],Ie=0;Ie1?(be=Z.r,Ae=be/ne.aspectratio):(Ae=Z.r,be=Ae*ne.aspectratio),be*=(1+ne.baseratio)/2,fe=be*Ae}ee=Math.min(ee,fe/Z.vTotal)}for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var Be=ee*Z.vTotal;ne.type==="funnelarea"&&(Be/=(1+ne.baseratio)/2,Be/=ne.aspectratio),Z.r=Math.sqrt(Be)}}}function ue($){var J=$[0],Z=J.r,re=J.trace,ne=h.getRotationAngle(re.rotation),j=2*Math.PI/J.vTotal,ee="px0",ie="px1",fe,be,Ae;if(re.direction==="counterclockwise"){for(fe=0;fe<$.length&&$[fe].hidden;fe++);if(fe===$.length)return;ne+=j*$[fe].v,j*=-1,ee="px1",ie="px0"}for(Ae=se(Z,ne),fe=0;fe<$.length;fe++)be=$[fe],!be.hidden&&(be[ee]=Ae,be.startangle=ne,ne+=j*be.v/2,be.pxmid=se(Z,ne),be.midangle=ne,ne+=j*be.v/2,Ae=se(Z,ne),be.stopangle=ne,be[ie]=Ae,be.largeArc=be.v>J.vTotal/2?1:0,be.halfangle=Math.PI*Math.min(be.v/J.vTotal,.5),be.ring=1-re.hole,be.rInscribed=L(be,J))}function se($,J){return[$*Math.sin(J),-$*Math.cos(J)]}function he($,J,Z){var re=$._fullLayout,ne=Z.trace,j=ne.texttemplate,ee=ne.textinfo;if(!j&&ee&&ee!=="none"){var ie=ee.split("+"),fe=function(ce){return ie.indexOf(ce)!==-1},be=fe("label"),Ae=fe("text"),Be=fe("value"),Ie=fe("percent"),Ze=re.separators,at;if(at=be?[J.label]:[],Ae){var it=h.getFirstFilled(ne.text,J.pts);p(it)&&at.push(it)}Be&&at.push(h.formatPieValue(J.v,Ze)),Ie&&at.push(h.formatPiePercent(J.v/Z.vTotal,Ze)),J.text=at.join("
")}function et(ce){return{label:ce.label,value:ce.v,valueLabel:h.formatPieValue(ce.v,re.separators),percent:ce.v/Z.vTotal,percentLabel:h.formatPiePercent(ce.v/Z.vTotal,re.separators),color:ce.color,text:ce.text,customdata:t.castOption(ne,ce.i,"customdata")}}if(j){var lt=t.castOption(ne,J.i,"texttemplate");if(!lt)J.text="";else{var Me=et(J),ge=h.getFirstFilled(ne.text,J.pts);(p(ge)||ge==="")&&(Me.text=ge),J.text=t.texttemplateString(lt,Me,$._fullLayout._d3locale,Me,ne._meta||{})}}}function G($,J){var Z=$.rotate*Math.PI/180,re=Math.cos(Z),ne=Math.sin(Z),j=(J.left+J.right)/2,ee=(J.top+J.bottom)/2;$.textX=j*re-ee*ne,$.textY=j*ne+ee*re,$.noCenter=!0}H.exports={plot:T,formatSliceLabel:he,transformInsideText:m,determineInsideTextFont:S,positionTitleOutside:B,prerenderTitles:E,layoutAreas:W,attachFxHandlers:_,computeTransform:G}}}),p9=Ye({"src/traces/pie/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");A(e,t,"pie"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),d9=Ye({"src/traces/pie/base_plot.js"(X){"use strict";var H=Gu();X.name="pie",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),v9=Ye({"src/traces/pie/index.js"(X,H){"use strict";H.exports={attributes:i0(),supplyDefaults:n0().supplyDefaults,supplyLayoutDefaults:f9(),layoutAttributes:y3(),calc:y1().calc,crossTraceCalc:y1().crossTraceCalc,plot:_3().plot,style:p9(),styleOne:a1(),moduleType:"trace",name:"pie",basePlotModule:d9(),categories:["pie-like","pie","showLegend"],meta:{}}}}),m9=Ye({"lib/pie.js"(X,H){"use strict";H.exports=v9()}}),g9=Ye({"src/traces/sunburst/base_plot.js"(X){"use strict";var H=Gu();X.name="sunburst",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),QM=Ye({"src/traces/sunburst/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Y_=Ye({"src/traces/sunburst/attributes.js"(X,H){"use strict";var g=Pl(),x=xs().hovertemplateAttrs,A=xs().texttemplateAttrs,M=tu(),e=Wu().attributes,t=i0(),r=QM(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:o({colors:{valType:"data_array",editType:"calc"},line:{color:o({},t.marker.line.color,{dflt:null}),width:o({},t.marker.line.width,{dflt:1}),editType:"calc"},pattern:a,editType:"calc"},M("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:t.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:A({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:t.hovertext,hoverinfo:o({},g.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:x({},{keys:r.eventDataKeys}),textfont:t.textfont,insidetextorientation:t.insidetextorientation,insidetextfont:t.insidetextfont,outsidetextfont:o({},t.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:t.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:e({name:"sunburst",trace:!0,editType:"calc"})}}}),eE=Ye({"src/traces/sunburst/layout_attributes.js"(X,H){"use strict";H.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),y9=Ye({"src/traces/sunburst/defaults.js"(X,H){"use strict";var g=ta(),x=Y_(),A=Wu().defaults,M=gd().handleText,e=n0().handleMarkerDefaults,t=Su(),r=t.hasColorscale,o=t.handleDefaults;H.exports=function(i,n,s,c){function h(S,E){return g.coerce(i,n,x,S,E)}var v=h("labels"),p=h("parents");if(!v||!v.length||!p||!p.length){n.visible=!1;return}var T=h("values");T&&T.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),e(i,n,c,h);var l=n._hasColorscale=r(i,"marker","colors")||(i.marker||{}).coloraxis;l&&o(i,n,c,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",l?1:.7);var _=h("text");h("texttemplate"),n.texttemplate||h("textinfo",g.isArrayOrTypedArray(_)?"text+label":"label"),h("hovertext"),h("hovertemplate");var w="auto";M(i,n,c,h,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),A(n,c,h),n._length=null}}}),_9=Ye({"src/traces/sunburst/layout_defaults.js"(X,H){"use strict";var g=ta(),x=eE();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("sunburstcolorway",e.colorway),t("extendsunburstcolors")}}}),K_=Ye({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(Ne,Ee){return Ne.parent===Ee.parent?1:2}function A(Ne){return Ne.reduce(M,0)/Ne.length}function M(Ne,Ee){return Ne+Ee.x}function e(Ne){return 1+Ne.reduce(t,0)}function t(Ne,Ee){return Math.max(Ne,Ee.y)}function r(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[0];return Ne}function o(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[Ee.length-1];return Ne}function a(){var Ne=x,Ee=1,Ve=1,ke=!1;function Te(Le){var rt,dt=0;Le.eachAfter(function(Kt){var sr=Kt.children;sr?(Kt.x=A(sr),Kt.y=e(sr)):(Kt.x=rt?dt+=Ne(Kt,rt):0,Kt.y=0,rt=Kt)});var xt=r(Le),It=o(Le),Bt=xt.x-Ne(xt,It)/2,Gt=It.x+Ne(It,xt)/2;return Le.eachAfter(ke?function(Kt){Kt.x=(Kt.x-Le.x)*Ee,Kt.y=(Le.y-Kt.y)*Ve}:function(Kt){Kt.x=(Kt.x-Bt)/(Gt-Bt)*Ee,Kt.y=(1-(Le.y?Kt.y/Le.y:1))*Ve})}return Te.separation=function(Le){return arguments.length?(Ne=Le,Te):Ne},Te.size=function(Le){return arguments.length?(ke=!1,Ee=+Le[0],Ve=+Le[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(Le){return arguments.length?(ke=!0,Ee=+Le[0],Ve=+Le[1],Te):ke?[Ee,Ve]:null},Te}function i(Ne){var Ee=0,Ve=Ne.children,ke=Ve&&Ve.length;if(!ke)Ee=1;else for(;--ke>=0;)Ee+=Ve[ke].value;Ne.value=Ee}function n(){return this.eachAfter(i)}function s(Ne){var Ee=this,Ve,ke=[Ee],Te,Le,rt;do for(Ve=ke.reverse(),ke=[];Ee=Ve.pop();)if(Ne(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le=0;--Te)Ve.push(ke[Te]);return this}function h(Ne){for(var Ee=this,Ve=[Ee],ke=[],Te,Le,rt;Ee=Ve.pop();)if(ke.push(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le=0;)Ve+=ke[Te].value;Ee.value=Ve})}function p(Ne){return this.eachBefore(function(Ee){Ee.children&&Ee.children.sort(Ne)})}function T(Ne){for(var Ee=this,Ve=l(Ee,Ne),ke=[Ee];Ee!==Ve;)Ee=Ee.parent,ke.push(Ee);for(var Te=ke.length;Ne!==Ve;)ke.splice(Te,0,Ne),Ne=Ne.parent;return ke}function l(Ne,Ee){if(Ne===Ee)return Ne;var Ve=Ne.ancestors(),ke=Ee.ancestors(),Te=null;for(Ne=Ve.pop(),Ee=ke.pop();Ne===Ee;)Te=Ne,Ne=Ve.pop(),Ee=ke.pop();return Te}function _(){for(var Ne=this,Ee=[Ne];Ne=Ne.parent;)Ee.push(Ne);return Ee}function w(){var Ne=[];return this.each(function(Ee){Ne.push(Ee)}),Ne}function S(){var Ne=[];return this.eachBefore(function(Ee){Ee.children||Ne.push(Ee)}),Ne}function E(){var Ne=this,Ee=[];return Ne.each(function(Ve){Ve!==Ne&&Ee.push({source:Ve.parent,target:Ve})}),Ee}function m(Ne,Ee){var Ve=new f(Ne),ke=+Ne.value&&(Ve.value=Ne.value),Te,Le=[Ve],rt,dt,xt,It;for(Ee==null&&(Ee=d);Te=Le.pop();)if(ke&&(Te.value=+Te.data.value),(dt=Ee(Te.data))&&(It=dt.length))for(Te.children=new Array(It),xt=It-1;xt>=0;--xt)Le.push(rt=Te.children[xt]=new f(dt[xt])),rt.parent=Te,rt.depth=Te.depth+1;return Ve.eachBefore(y)}function b(){return m(this).eachBefore(u)}function d(Ne){return Ne.children}function u(Ne){Ne.data=Ne.data.data}function y(Ne){var Ee=0;do Ne.height=Ee;while((Ne=Ne.parent)&&Ne.height<++Ee)}function f(Ne){this.data=Ne,this.depth=this.height=0,this.parent=null}f.prototype=m.prototype={constructor:f,count:n,each:s,eachAfter:h,eachBefore:c,sum:v,sort:p,path:T,ancestors:_,descendants:w,leaves:S,links:E,copy:b};var P=Array.prototype.slice;function L(Ne){for(var Ee=Ne.length,Ve,ke;Ee;)ke=Math.random()*Ee--|0,Ve=Ne[Ee],Ne[Ee]=Ne[ke],Ne[ke]=Ve;return Ne}function z(Ne){for(var Ee=0,Ve=(Ne=L(P.call(Ne))).length,ke=[],Te,Le;Ee0&&Ve*Ve>ke*ke+Te*Te}function I(Ne,Ee){for(var Ve=0;Vext?(Te=(It+xt-Le)/(2*It),dt=Math.sqrt(Math.max(0,xt/It-Te*Te)),Ve.x=Ne.x-Te*ke-dt*rt,Ve.y=Ne.y-Te*rt+dt*ke):(Te=(It+Le-xt)/(2*It),dt=Math.sqrt(Math.max(0,Le/It-Te*Te)),Ve.x=Ee.x+Te*ke-dt*rt,Ve.y=Ee.y+Te*rt+dt*ke)):(Ve.x=Ee.x+Ve.r,Ve.y=Ee.y)}function se(Ne,Ee){var Ve=Ne.r+Ee.r-1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function he(Ne){var Ee=Ne._,Ve=Ne.next._,ke=Ee.r+Ve.r,Te=(Ee.x*Ve.r+Ve.x*Ee.r)/ke,Le=(Ee.y*Ve.r+Ve.y*Ee.r)/ke;return Te*Te+Le*Le}function G(Ne){this._=Ne,this.next=null,this.previous=null}function $(Ne){if(!(Te=Ne.length))return 0;var Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt;if(Ee=Ne[0],Ee.x=0,Ee.y=0,!(Te>1))return Ee.r;if(Ve=Ne[1],Ee.x=-Ve.r,Ve.x=Ee.r,Ve.y=0,!(Te>2))return Ee.r+Ve.r;ue(Ve,Ee,ke=Ne[2]),Ee=new G(Ee),Ve=new G(Ve),ke=new G(ke),Ee.next=ke.previous=Ve,Ve.next=Ee.previous=ke,ke.next=Ve.previous=Ee;e:for(dt=3;dt0)throw new Error("cycle");return dt}return Ve.id=function(ke){return arguments.length?(Ne=re(ke),Ve):Ne},Ve.parentId=function(ke){return arguments.length?(Ee=re(ke),Ve):Ee},Ve}function ce(Ne,Ee){return Ne.parent===Ee.parent?1:2}function ze(Ne){var Ee=Ne.children;return Ee?Ee[0]:Ne.t}function tt(Ne){var Ee=Ne.children;return Ee?Ee[Ee.length-1]:Ne.t}function nt(Ne,Ee,Ve){var ke=Ve/(Ee.i-Ne.i);Ee.c-=ke,Ee.s+=Ve,Ne.c+=ke,Ee.z+=Ve,Ee.m+=Ve}function Qe(Ne){for(var Ee=0,Ve=0,ke=Ne.children,Te=ke.length,Le;--Te>=0;)Le=ke[Te],Le.z+=Ee,Le.m+=Ee,Ee+=Le.s+(Ve+=Le.c)}function Ct(Ne,Ee,Ve){return Ne.a.parent===Ee.parent?Ne.a:Ve}function St(Ne,Ee){this._=Ne,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Ee}St.prototype=Object.create(f.prototype);function Ot(Ne){for(var Ee=new St(Ne,0),Ve,ke=[Ee],Te,Le,rt,dt;Ve=ke.pop();)if(Le=Ve._.children)for(Ve.children=new Array(dt=Le.length),rt=dt-1;rt>=0;--rt)ke.push(Te=Ve.children[rt]=new St(Le[rt],rt)),Te.parent=Ve;return(Ee.parent=new St(null,0)).children=[Ee],Ee}function jt(){var Ne=ce,Ee=1,Ve=1,ke=null;function Te(It){var Bt=Ot(It);if(Bt.eachAfter(Le),Bt.parent.m=-Bt.z,Bt.eachBefore(rt),ke)It.eachBefore(xt);else{var Gt=It,Kt=It,sr=It;It.eachBefore(function(Ga){Ga.xKt.x&&(Kt=Ga),Ga.depth>sr.depth&&(sr=Ga)});var sa=Gt===Kt?1:Ne(Gt,Kt)/2,Aa=sa-Gt.x,La=Ee/(Kt.x+sa+Aa),ka=Ve/(sr.depth||1);It.eachBefore(function(Ga){Ga.x=(Ga.x+Aa)*La,Ga.y=Ga.depth*ka})}return It}function Le(It){var Bt=It.children,Gt=It.parent.children,Kt=It.i?Gt[It.i-1]:null;if(Bt){Qe(It);var sr=(Bt[0].z+Bt[Bt.length-1].z)/2;Kt?(It.z=Kt.z+Ne(It._,Kt._),It.m=It.z-sr):It.z=sr}else Kt&&(It.z=Kt.z+Ne(It._,Kt._));It.parent.A=dt(It,Kt,It.parent.A||Gt[0])}function rt(It){It._.x=It.z+It.parent.m,It.m+=It.parent.m}function dt(It,Bt,Gt){if(Bt){for(var Kt=It,sr=It,sa=Bt,Aa=Kt.parent.children[0],La=Kt.m,ka=sr.m,Ga=sa.m,Ma=Aa.m,Ua;sa=tt(sa),Kt=ze(Kt),sa&&Kt;)Aa=ze(Aa),sr=tt(sr),sr.a=It,Ua=sa.z+Ga-Kt.z-La+Ne(sa._,Kt._),Ua>0&&(nt(Ct(sa,It,Gt),It,Ua),La+=Ua,ka+=Ua),Ga+=sa.m,La+=Kt.m,Ma+=Aa.m,ka+=sr.m;sa&&!tt(sr)&&(sr.t=sa,sr.m+=Ga-ka),Kt&&!ze(Aa)&&(Aa.t=Kt,Aa.m+=La-Ma,Gt=It)}return Gt}function xt(It){It.x*=Ee,It.y=It.depth*Ve}return Te.separation=function(It){return arguments.length?(Ne=It,Te):Ne},Te.size=function(It){return arguments.length?(ke=!1,Ee=+It[0],Ve=+It[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(It){return arguments.length?(ke=!0,Ee=+It[0],Ve=+It[1],Te):ke?[Ee,Ve]:null},Te}function ur(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(Te-Ve)/Ne.value;++dtGa&&(Ga=It),Wt=La*La*ni,Ma=Math.max(Ga/Wt,Wt/ka),Ma>Ua){La-=It;break}Ua=Ma}rt.push(xt={value:La,dice:sr1?ke:1)},Ve}(ar);function _r(){var Ne=vr,Ee=!1,Ve=1,ke=1,Te=[0],Le=ne,rt=ne,dt=ne,xt=ne,It=ne;function Bt(Kt){return Kt.x0=Kt.y0=0,Kt.x1=Ve,Kt.y1=ke,Kt.eachBefore(Gt),Te=[0],Ee&&Kt.eachBefore(Be),Kt}function Gt(Kt){var sr=Te[Kt.depth],sa=Kt.x0+sr,Aa=Kt.y0+sr,La=Kt.x1-sr,ka=Kt.y1-sr;La=Kt-1){var Ga=Le[Gt];Ga.x0=sa,Ga.y0=Aa,Ga.x1=La,Ga.y1=ka;return}for(var Ma=It[Gt],Ua=sr/2+Ma,ni=Gt+1,Wt=Kt-1;ni>>1;It[zt]ka-Aa){var xr=(sa*Ut+La*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,xr,ka),Bt(ni,Kt,Ut,xr,Aa,La,ka)}else{var Zr=(Aa*Ut+ka*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,La,Zr),Bt(ni,Kt,Ut,sa,Zr,La,ka)}}}function Fe(Ne,Ee,Ve,ke,Te){(Ne.depth&1?ur:Ie)(Ne,Ee,Ve,ke,Te)}var Ke=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){if((xt=ke._squarify)&&xt.ratio===Ee)for(var xt,It,Bt,Gt,Kt=-1,sr,sa=xt.length,Aa=ke.value;++Kt1?ke:1)},Ve}(ar);g.cluster=a,g.hierarchy=m,g.pack=ie,g.packEnclose=z,g.packSiblings=J,g.partition=Ze,g.stratify=ge,g.tree=jt,g.treemap=_r,g.treemapBinary=yt,g.treemapDice=Ie,g.treemapResquarify=Ke,g.treemapSlice=ur,g.treemapSliceDice=Fe,g.treemapSquarify=vr,Object.defineProperty(g,"__esModule",{value:!0})})}}),J_=Ye({"src/traces/sunburst/calc.js"(X){"use strict";var H=K_(),g=jo(),x=ta(),A=Su().makeColorScaleFuncFromTrace,M=y1().makePullColorFn,e=y1().generateExtendedColors,t=Su().calc,r=ks().ALMOST_EQUAL,o={},a={},i={};X.calc=function(s,c){var h=s._fullLayout,v=c.ids,p=x.isArrayOrTypedArray(v),T=c.labels,l=c.parents,_=c.values,w=x.isArrayOrTypedArray(_),S=[],E={},m={},b=function(J,Z){E[J]?E[J].push(Z):E[J]=[Z],m[Z]=1},d=function(J){return J||typeof J=="number"},u=function(J){return!w||g(_[J])&&_[J]>=0},y,f,P;p?(y=Math.min(v.length,l.length),f=function(J){return d(v[J])&&u(J)},P=function(J){return String(v[J])}):(y=Math.min(T.length,l.length),f=function(J){return d(T[J])&&u(J)},P=function(J){return String(T[J])}),w&&(y=Math.min(y,_.length));for(var L=0;L1){for(var N=x.randstr(),U=0;U>8&15|H>>4&240,H>>4&15|H&240,(H&15)<<4|H&15,1):g===8?$_(H>>24&255,H>>16&255,H>>8&255,(H&255)/255):g===4?$_(H>>12&15|H>>8&240,H>>8&15|H>>4&240,H>>4&15|H&240,((H&15)<<4|H&15)/255):null):(H=cE.exec(X))?new qh(H[1],H[2],H[3],1):(H=fE.exec(X))?new qh(H[1]*255/100,H[2]*255/100,H[3]*255/100,1):(H=hE.exec(X))?$_(H[1],H[2],H[3],H[4]):(H=pE.exec(X))?$_(H[1]*255/100,H[2]*255/100,H[3]*255/100,H[4]):(H=dE.exec(X))?oE(H[1],H[2]/100,H[3]/100,1):(H=vE.exec(X))?oE(H[1],H[2]/100,H[3]/100,H[4]):A3.hasOwnProperty(X)?aE(A3[X]):X==="transparent"?new qh(NaN,NaN,NaN,0):null}function aE(X){return new qh(X>>16&255,X>>8&255,X&255,1)}function $_(X,H,g,x){return x<=0&&(X=H=g=NaN),new qh(X,H,g,x)}function b3(X){return X instanceof Kv||(X=x1(X)),X?(X=X.rgb(),new qh(X.r,X.g,X.b,X.opacity)):new qh}function Q_(X,H,g,x){return arguments.length===1?b3(X):new qh(X,H,g,x??1)}function qh(X,H,g,x){this.r=+X,this.g=+H,this.b=+g,this.opacity=+x}function iE(){return`#${og(this.r)}${og(this.g)}${og(this.b)}`}function w9(){return`#${og(this.r)}${og(this.g)}${og(this.b)}${og((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){let X=ex(this.opacity);return`${X===1?"rgb(":"rgba("}${ng(this.r)}, ${ng(this.g)}, ${ng(this.b)}${X===1?")":`, ${X})`}`}function ex(X){return isNaN(X)?1:Math.max(0,Math.min(1,X))}function ng(X){return Math.max(0,Math.min(255,Math.round(X)||0))}function og(X){return X=ng(X),(X<16?"0":"")+X.toString(16)}function oE(X,H,g,x){return x<=0?X=H=g=NaN:g<=0||g>=1?X=H=NaN:H<=0&&(X=NaN),new Ud(X,H,g,x)}function sE(X){if(X instanceof Ud)return new Ud(X.h,X.s,X.l,X.opacity);if(X instanceof Kv||(X=x1(X)),!X)return new Ud;if(X instanceof Ud)return X;X=X.rgb();var H=X.r/255,g=X.g/255,x=X.b/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=NaN,t=M-A,r=(M+A)/2;return t?(H===M?e=(g-x)/t+(g0&&r<1?0:e,new Ud(e,t,r,X.opacity)}function w3(X,H,g,x){return arguments.length===1?sE(X):new Ud(X,H,g,x??1)}function Ud(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}function lE(X){return X=(X||0)%360,X<0?X+360:X}function tx(X){return Math.max(0,Math.min(1,X||0))}function T3(X,H,g){return(X<60?H+(g-H)*X/60:X<180?g:X<240?H+(g-H)*(240-X)/60:H)*255}var Jv,sg,lg,s0,jd,uE,cE,fE,hE,pE,dE,vE,A3,S3=Qn({"node_modules/d3-color/src/color.js"(){x3(),Jv=.7,sg=1/Jv,lg="\\s*([+-]?\\d+)\\s*",s0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",jd="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",uE=/^#([0-9a-f]{3,8})$/,cE=new RegExp(`^rgb\\(${lg},${lg},${lg}\\)$`),fE=new RegExp(`^rgb\\(${jd},${jd},${jd}\\)$`),hE=new RegExp(`^rgba\\(${lg},${lg},${lg},${s0}\\)$`),pE=new RegExp(`^rgba\\(${jd},${jd},${jd},${s0}\\)$`),dE=new RegExp(`^hsl\\(${s0},${jd},${jd}\\)$`),vE=new RegExp(`^hsla\\(${s0},${jd},${jd},${s0}\\)$`),A3={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},o0(Kv,x1,{copy(X){return Object.assign(new this.constructor,this,X)},displayable(){return this.rgb().displayable()},hex:tE,formatHex:tE,formatHex8:x9,formatHsl:b9,formatRgb:rE,toString:rE}),o0(qh,Q_,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},rgb(){return this},clamp(){return new qh(ng(this.r),ng(this.g),ng(this.b),ex(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iE,formatHex:iE,formatHex8:w9,formatRgb:nE,toString:nE})),o0(Ud,w3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new Ud(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new Ud(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=this.h%360+(this.h<0)*360,H=isNaN(X)||isNaN(this.s)?0:this.s,g=this.l,x=g+(g<.5?g:1-g)*H,A=2*g-x;return new qh(T3(X>=240?X-240:X+120,A,x),T3(X,A,x),T3(X<120?X+240:X-120,A,x),this.opacity)},clamp(){return new Ud(lE(this.h),tx(this.s),tx(this.l),ex(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let X=ex(this.opacity);return`${X===1?"hsl(":"hsla("}${lE(this.h)}, ${tx(this.s)*100}%, ${tx(this.l)*100}%${X===1?")":`, ${X})`}`}}))}}),M3,E3,mE=Qn({"node_modules/d3-color/src/math.js"(){M3=Math.PI/180,E3=180/Math.PI}});function gE(X){if(X instanceof rv)return new rv(X.l,X.a,X.b,X.opacity);if(X instanceof Mv)return yE(X);X instanceof qh||(X=b3(X));var H=I3(X.r),g=I3(X.g),x=I3(X.b),A=C3((.2225045*H+.7168786*g+.0606169*x)/z3),M,e;return H===g&&g===x?M=e=A:(M=C3((.4360747*H+.3850649*g+.1430804*x)/D3),e=C3((.0139322*H+.0971045*g+.7141733*x)/F3)),new rv(116*A-16,500*(M-A),200*(A-e),X.opacity)}function k3(X,H,g,x){return arguments.length===1?gE(X):new rv(X,H,g,x??1)}function rv(X,H,g,x){this.l=+X,this.a=+H,this.b=+g,this.opacity=+x}function C3(X){return X>_E?Math.pow(X,.3333333333333333):X/B3+O3}function L3(X){return X>ug?X*X*X:B3*(X-O3)}function P3(X){return 255*(X<=.0031308?12.92*X:1.055*Math.pow(X,.4166666666666667)-.055)}function I3(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function T9(X){if(X instanceof Mv)return new Mv(X.h,X.c,X.l,X.opacity);if(X instanceof rv||(X=gE(X)),X.a===0&&X.b===0)return new Mv(NaN,0=1?(g=1,H-1):Math.floor(g*H),A=X[x],M=X[x+1],e=x>0?X[x-1]:2*A-M,t=x()=>X}});function SE(X,H){return function(g){return X+g*H}}function E9(X,H,g){return X=Math.pow(X,g),H=Math.pow(H,g)-X,g=1/g,function(x){return Math.pow(X+x*H,g)}}function ix(X,H){var g=H-X;return g?SE(X,g>180||g<-180?g-360*Math.round(g/360):g):T1(isNaN(X)?H:X)}function k9(X){return(X=+X)==1?Hh:function(H,g){return g-H?E9(H,g,X):T1(isNaN(H)?g:H)}}function Hh(X,H){var g=H-X;return g?SE(X,g):T1(isNaN(X)?H:X)}var c0=Qn({"node_modules/d3-interpolate/src/color.js"(){AE()}});function ME(X){return function(H){var g=H.length,x=new Array(g),A=new Array(g),M=new Array(g),e,t;for(e=0;eg&&(M=H.slice(g,M),t[e]?t[e]+=M:t[++e]=M),(x=x[0])===(A=A[0])?t[e]?t[e]+=A:t[++e]=A:(t[++e]=null,r.push({i:e,x:av(x,A)})),g=lx.lastIndex;return g180?a+=360:a-o>180&&(o+=360),n.push({i:i.push(A(i)+"rotate(",null,x)-2,x:av(o,a)})):a&&i.push(A(i)+"rotate("+a+x)}function t(o,a,i,n){o!==a?n.push({i:i.push(A(i)+"skewX(",null,x)-2,x:av(o,a)}):a&&i.push(A(i)+"skewX("+a+x)}function r(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push(A(s)+"scale(",null,",",null,")");c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i!==1||n!==1)&&s.push(A(s)+"scale("+i+","+n+")")}return function(o,a){var i=[],n=[];return o=X(o),a=X(a),M(o.translateX,o.translateY,a.translateX,a.translateY,i,n),e(o.rotate,a.rotate,i,n),t(o.skewX,a.skewX,i,n),r(o.scaleX,o.scaleY,a.scaleX,a.scaleY,i,n),o=a=null,function(s){for(var c=-1,h=n.length,v;++cux,interpolateArray:()=>C9,interpolateBasis:()=>bE,interpolateBasisClosed:()=>wE,interpolateCubehelix:()=>QE,interpolateCubehelixLong:()=>e5,interpolateDate:()=>RE,interpolateDiscrete:()=>I9,interpolateHcl:()=>KE,interpolateHclLong:()=>JE,interpolateHsl:()=>ZE,interpolateHslLong:()=>XE,interpolateHue:()=>D9,interpolateLab:()=>Z9,interpolateNumber:()=>av,interpolateNumberArray:()=>G3,interpolateObject:()=>zE,interpolateRgb:()=>nx,interpolateRgbBasis:()=>EE,interpolateRgbBasisClosed:()=>kE,interpolateRound:()=>F9,interpolateString:()=>OE,interpolateTransformCss:()=>jE,interpolateTransformSvg:()=>VE,interpolateZoom:()=>GE,piecewise:()=>J9,quantize:()=>Q9});var f0=Qn({"node_modules/d3-interpolate/src/index.js"(){cx(),IE(),H3(),TE(),DE(),R9(),z9(),ox(),W3(),FE(),O9(),BE(),V9(),G9(),CE(),W9(),X9(),Y9(),K9(),$9(),eN()}}),X3=Ye({"src/traces/sunburst/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r,o){var a=e.data.data,i=a.i,n=o||a.color;if(i>=0){e.i=a.i;var s=t.marker;s.pattern?(!s.colors||!s.pattern.shape)&&(s.color=n,e.color=n):(s.color=n,e.color=n),g.pointStyle(M,t,r,e)}else x.fill(M,n)}}}),t5=Ye({"src/traces/sunburst/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._sunburstlayer.selectAll(".trace");M(o,a,"sunburst"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),$v=Ye({"src/traces/sunburst/helpers.js"(X){"use strict";var H=ta(),g=Fn(),x=Kd(),A=eg();X.findEntryWithLevel=function(r,o){var a;return o&&r.eachAfter(function(i){if(X.getPtId(i)===o)return a=i.copy()}),a||r},X.findEntryWithChild=function(r,o){var a;return r.eachAfter(function(i){for(var n=i.children||[],s=0;s0)},X.getMaxDepth=function(r){return r.maxdepth>=0?r.maxdepth:1/0},X.isHeader=function(r,o){return!(X.isLeaf(r)||r.depth===o._maxDepth-1)};function t(r){return r.data.data.pid}X.getParent=function(r,o){return X.findEntryWithLevel(r,t(o))},X.listPath=function(r,o){var a=r.parent;if(!a)return[];var i=o?[a.data[o]]:[a];return X.listPath(a,o).concat(i)},X.getPath=function(r){return X.listPath(r,"label").join("/")+"/"},X.formatValue=A.formatPieValue,X.formatPercent=function(r,o){var a=H.formatPercent(r,0);return a==="0%"&&(a=A.formatPiePercent(r,o)),a}}}),px=Ye({"src/traces/sunburst/fx.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Qp().appendArrayPointValue,M=Lc(),e=ta(),t=$y(),r=$v(),o=eg(),a=o.formatPieValue;H.exports=function(s,c,h,v,p){var T=v[0],l=T.trace,_=T.hierarchy,w=l.type==="sunburst",S=l.type==="treemap"||l.type==="icicle";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1);var E=function(d){var u=h._fullLayout;if(!(h._dragging||u.hovermode===!1)){var y=h._fullData[l.index],f=d.data.data,P=f.i,L=r.isHierarchyRoot(d),z=r.getParent(_,d),F=r.getValue(d),B=function(ee){return e.castOption(y,P,ee)},O=B("hovertemplate"),I=M.castHoverinfo(y,u,P),N=u.separators,U;if(O||I&&I!=="none"&&I!=="skip"){var W,Q;w&&(W=T.cx+d.pxmid[0]*(1-d.rInscribed),Q=T.cy+d.pxmid[1]*(1-d.rInscribed)),S&&(W=d._hoverX,Q=d._hoverY);var ue={},se=[],he=[],G=function(ee){return se.indexOf(ee)!==-1};I&&(se=I==="all"?y._module.attributes.hoverinfo.flags:I.split("+")),ue.label=f.label,G("label")&&ue.label&&he.push(ue.label),f.hasOwnProperty("v")&&(ue.value=f.v,ue.valueLabel=a(ue.value,N),G("value")&&he.push(ue.valueLabel)),ue.currentPath=d.currentPath=r.getPath(d.data),G("current path")&&!L&&he.push(ue.currentPath);var $,J=[],Z=function(){J.indexOf($)===-1&&(he.push($),J.push($))};ue.percentParent=d.percentParent=F/r.getValue(z),ue.parent=d.parentString=r.getPtLabel(z),G("percent parent")&&($=r.formatPercent(ue.percentParent,N)+" of "+ue.parent,Z()),ue.percentEntry=d.percentEntry=F/r.getValue(c),ue.entry=d.entry=r.getPtLabel(c),G("percent entry")&&!L&&!d.onPathbar&&($=r.formatPercent(ue.percentEntry,N)+" of "+ue.entry,Z()),ue.percentRoot=d.percentRoot=F/r.getValue(_),ue.root=d.root=r.getPtLabel(_),G("percent root")&&!L&&($=r.formatPercent(ue.percentRoot,N)+" of "+ue.root,Z()),ue.text=B("hovertext")||B("text"),G("text")&&($=ue.text,e.isValidTextValue($)&&he.push($)),U=[i(d,y,p.eventDataKeys)];var re={trace:y,y:Q,_x0:d._x0,_x1:d._x1,_y0:d._y0,_y1:d._y1,text:he.join("
"),name:O||G("name")?y.name:void 0,color:B("hoverlabel.bgcolor")||f.color,borderColor:B("hoverlabel.bordercolor"),fontFamily:B("hoverlabel.font.family"),fontSize:B("hoverlabel.font.size"),fontColor:B("hoverlabel.font.color"),fontWeight:B("hoverlabel.font.weight"),fontStyle:B("hoverlabel.font.style"),fontVariant:B("hoverlabel.font.variant"),nameLength:B("hoverlabel.namelength"),textAlign:B("hoverlabel.align"),hovertemplate:O,hovertemplateLabels:ue,eventData:U};w&&(re.x0=W-d.rInscribed*d.rpx1,re.x1=W+d.rInscribed*d.rpx1,re.idealAlign=d.pxmid[0]<0?"left":"right"),S&&(re.x=W,re.idealAlign=W<0?"left":"right");var ne=[];M.loneHover(re,{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:h,inOut_bbox:ne}),U[0].bbox=ne[0],l._hasHoverLabel=!0}if(S){var j=s.select("path.surface");p.styleOne(j,d,y,h,{hovered:!0})}l._hasHoverEvent=!0,h.emit("plotly_hover",{points:U||[i(d,y,p.eventDataKeys)],event:g.event})}},m=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=g.select(this).datum();if(l._hasHoverEvent&&(d.originalEvent=g.event,h.emit("plotly_unhover",{points:[i(f,y,p.eventDataKeys)],event:g.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(M.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1),S){var P=s.select("path.surface");p.styleOne(P,f,y,h,{hovered:!1})}},b=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=w&&(r.isHierarchyRoot(d)||r.isLeaf(d)),P=r.getPtId(d),L=r.isEntry(d)?r.findEntryWithChild(_,P):r.findEntryWithLevel(_,P),z=r.getPtId(L),F={points:[i(d,y,p.eventDataKeys)],event:g.event};f||(F.nextLevel=z);var B=t.triggerHandler(h,"plotly_"+l.type+"click",F);if(B!==!1&&u.hovermode&&(h._hoverdata=[i(d,y,p.eventDataKeys)],M.click(h,g.event)),!f&&B!==!1&&!h._dragging&&!h._transitioning){x.call("_storeDirectGUIEdit",y,u._tracePreGUI[y.uid],{level:y.level});var O={data:[{level:z}],traces:[l.index]},I={frame:{redraw:!1,duration:p.transitionTime},transition:{duration:p.transitionTime,easing:p.transitionEasing},mode:"immediate",fromcurrent:!0};M.loneUnhover(u._hoverlayer.node()),x.call("animate",h,O,I)}};s.on("mouseover",E),s.on("mouseout",m),s.on("click",b)};function i(n,s,c){for(var h=n.data.data,v={curveNumber:s.index,pointNumber:h.i,data:s._input,fullData:s},p=0;pnt.x1?2*Math.PI:0)+ee;Qe=ce.rpx1Ze?2*Math.PI:0)+ee;tt={x0:Qe,x1:Qe}}else tt={rpx0:se,rpx1:se},M.extendFlat(tt,ge(ce));else tt={rpx0:0,rpx1:0};else tt={x0:ee,x1:ee};return x(tt,nt)}function Me(ce){var ze=J[T.getPtId(ce)],tt,nt=ce.transform;if(ze)tt=ze;else if(tt={rpx1:ce.rpx1,transform:{textPosAngle:nt.textPosAngle,scale:0,rotate:nt.rotate,rCenter:nt.rCenter,x:nt.x,y:nt.y}},$)if(ce.parent)if(Ze){var Qe=ce.x1>Ze?2*Math.PI:0;tt.x0=tt.x1=Qe}else M.extendFlat(tt,ge(ce));else tt.x0=tt.x1=ee;else tt.x0=tt.x1=ee;var Ct=x(tt.transform.textPosAngle,ce.transform.textPosAngle),St=x(tt.rpx1,ce.rpx1),Ot=x(tt.x0,ce.x0),jt=x(tt.x1,ce.x1),ur=x(tt.transform.scale,nt.scale),ar=x(tt.transform.rotate,nt.rotate),Cr=nt.rCenter===0?3:tt.transform.rCenter===0?1/3:1,vr=x(tt.transform.rCenter,nt.rCenter),_r=function(yt){return vr(Math.pow(yt,Cr))};return function(yt){var Fe=St(yt),Ke=Ot(yt),Ne=jt(yt),Ee=_r(yt),Ve=be(Fe,(Ke+Ne)/2),ke=Ct(yt),Te={pxmid:Ve,rpx1:Fe,transform:{textPosAngle:ke,rCenter:Ee,x:nt.x,y:nt.y}};return r(B.type,nt,f),{transform:{targetX:Be(Te),targetY:Ie(Te),scale:ur(yt),rotate:ar(yt),rCenter:Ee}}}}function ge(ce){var ze=ce.parent,tt=J[T.getPtId(ze)],nt={};if(tt){var Qe=ze.children,Ct=Qe.indexOf(ce),St=Qe.length,Ot=x(tt.x0,tt.x1);nt.x0=Ot(Ct/St),nt.x1=Ot(Ct/St)}else nt.x0=nt.x1=0;return nt}}function _(m){return g.partition().size([2*Math.PI,m.height+1])(m)}X.formatSliceLabel=function(m,b,d,u,y){var f=d.texttemplate,P=d.textinfo;if(!f&&(!P||P==="none"))return"";var L=y.separators,z=u[0],F=m.data.data,B=z.hierarchy,O=T.isHierarchyRoot(m),I=T.getParent(B,m),N=T.getValue(m);if(!f){var U=P.split("+"),W=function(ne){return U.indexOf(ne)!==-1},Q=[],ue;if(W("label")&&F.label&&Q.push(F.label),F.hasOwnProperty("v")&&W("value")&&Q.push(T.formatValue(F.v,L)),!O){W("current path")&&Q.push(T.getPath(m.data));var se=0;W("percent parent")&&se++,W("percent entry")&&se++,W("percent root")&&se++;var he=se>1;if(se){var G,$=function(ne){ue=T.formatPercent(G,L),he&&(ue+=" of "+ne),Q.push(ue)};W("percent parent")&&!O&&(G=N/T.getValue(I),$("parent")),W("percent entry")&&(G=N/T.getValue(b),$("entry")),W("percent root")&&(G=N/T.getValue(B),$("root"))}}return W("text")&&(ue=M.castOption(d,F.i,"text"),M.isValidTextValue(ue)&&Q.push(ue)),Q.join("
")}var J=M.castOption(d,F.i,"texttemplate");if(!J)return"";var Z={};F.label&&(Z.label=F.label),F.hasOwnProperty("v")&&(Z.value=F.v,Z.valueLabel=T.formatValue(F.v,L)),Z.currentPath=T.getPath(m.data),O||(Z.percentParent=N/T.getValue(I),Z.percentParentLabel=T.formatPercent(Z.percentParent,L),Z.parent=T.getPtLabel(I)),Z.percentEntry=N/T.getValue(b),Z.percentEntryLabel=T.formatPercent(Z.percentEntry,L),Z.entry=T.getPtLabel(b),Z.percentRoot=N/T.getValue(B),Z.percentRootLabel=T.formatPercent(Z.percentRoot,L),Z.root=T.getPtLabel(B),F.hasOwnProperty("color")&&(Z.color=F.color);var re=M.castOption(d,F.i,"text");return(M.isValidTextValue(re)||re==="")&&(Z.text=re),Z.customdata=M.castOption(d,F.i,"customdata"),M.texttemplateString(J,Z,y._d3locale,Z,d._meta||{})};function w(m){return m.rpx0===0&&M.isFullCircle([m.x0,m.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(m.halfangle)),m.ring/2))}function S(m){return E(m.rpx1,m.transform.textPosAngle)}function E(m,b){return[m*Math.sin(b),-m*Math.cos(b)]}}}),tN=Ye({"src/traces/sunburst/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"sunburst",basePlotModule:g9(),categories:[],animatable:!0,attributes:Y_(),layoutAttributes:eE(),supplyDefaults:y9(),supplyLayoutDefaults:_9(),calc:J_().calc,crossTraceCalc:J_().crossTraceCalc,plot:Y3().plot,style:t5().style,colorbar:cp(),meta:{}}}}),rN=Ye({"lib/sunburst.js"(X,H){"use strict";H.exports=tN()}}),aN=Ye({"src/traces/treemap/base_plot.js"(X){"use strict";var H=Gu();X.name="treemap",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),h0=Ye({"src/traces/treemap/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),K3=Ye({"src/traces/treemap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=h0(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:o({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:t.marker.colors,pattern:a,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:t.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:o({},e.textfont,{}),editType:"calc"},text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:r.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:o({},e.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:e.sort,root:t.root,domain:M({name:"treemap",trace:!0,editType:"calc"})}}}),r5=Ye({"src/traces/treemap/layout_attributes.js"(X,H){"use strict";H.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),iN=Ye({"src/traces/treemap/defaults.js"(X,H){"use strict";var g=ta(),x=K3(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(y,f){return g.coerce(s,c,x,y,f)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth");var w=p("tiling.packing");w==="squarify"&&p("tiling.squarifyratio"),p("tiling.flip"),p("tiling.pad");var S=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(S)?"text+label":"label"),p("hovertext"),p("hovertemplate");var E=p("pathbar.visible"),m="auto";e(s,c,v,p,m,{hasPathbar:E,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition");var b=c.textposition.indexOf("bottom")!==-1;r(s,c,v,p);var d=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;d?i(s,c,v,p,{prefix:"marker.",cLetter:"c"}):p("marker.depthfade",!(c.marker.colors||[]).length);var u=c.textfont.size*2;p("marker.pad.t",b?u/4:u),p("marker.pad.l",u/4),p("marker.pad.r",u/4),p("marker.pad.b",b?u:u/4),p("marker.cornerradius"),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},E&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),nN=Ye({"src/traces/treemap/layout_defaults.js"(X,H){"use strict";var g=ta(),x=r5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("treemapcolorway",e.colorway),t("extendtreemapcolors")}}}),a5=Ye({"src/traces/treemap/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("treemap",g)}}}),i5=Ye({"src/traces/treemap/flip_tree.js"(X,H){"use strict";H.exports=function g(x,A,M){var e;M.swapXY&&(e=x.x0,x.x0=x.y0,x.y0=e,e=x.x1,x.x1=x.y1,x.y1=e),M.flipX&&(e=x.x0,x.x0=A[0]-x.x1,x.x1=A[0]-e),M.flipY&&(e=x.y0,x.y0=A[1]-x.y1,x.y1=A[1]-e);var t=x.children;if(t)for(var r=0;r0)for(var u=0;u").join(" ")||"";var he=x.ensureSingle(ue,"g","slicetext"),G=x.ensureSingle(he,"text","",function(J){J.attr("data-notex",1)}),$=x.ensureUniformFontSize(s,o.determineTextFont(B,Q,z.font,{onPathbar:!0}));G.text(Q._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(A.font,$).call(M.convertToTspans,s),Q.textBB=A.bBox(G.node()),Q.transform=m(Q,{fontSize:$.size,onPathbar:!0}),Q.transform.fontSize=$.size,d?G.transition().attrTween("transform",function(J){var Z=f(J,i,P,[l,_]);return function(re){return b(Z(re))}}):G.attr("transform",b(Q))})}}}),sN=Ye({"src/traces/treemap/plot_one.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=$v(),M=ta(),e=Qg().TEXTPAD,t=e0(),r=t.toMoveInsideBar,o=wp(),a=o.recordMinTextSize,i=h0(),n=oN();function s(c){return A.isHierarchyRoot(c)?"":A.getPtId(c)}H.exports=function(h,v,p,T,l){var _=h._fullLayout,w=v[0],S=w.trace,E=S.type,m=E==="icicle",b=w.hierarchy,d=A.findEntryWithLevel(b,S.level),u=g.select(p),y=u.selectAll("g.pathbar"),f=u.selectAll("g.slice");if(!d){y.remove(),f.remove();return}var P=A.isHierarchyRoot(d),L=!_.uniformtext.mode&&A.hasTransition(T),z=A.getMaxDepth(S),F=function(vr){return vr.data.depth-d.data.depth-1?N+Q:-(W+Q):0,se={x0:U,x1:U,y0:ue,y1:ue+W},he=function(vr,_r,yt){var Fe=S.tiling.pad,Ke=function(ke){return ke-Fe<=_r.x0},Ne=function(ke){return ke+Fe>=_r.x1},Ee=function(ke){return ke-Fe<=_r.y0},Ve=function(ke){return ke+Fe>=_r.y1};return vr.x0===_r.x0&&vr.x1===_r.x1&&vr.y0===_r.y0&&vr.y1===_r.y1?{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1}:{x0:Ke(vr.x0-Fe)?0:Ne(vr.x0-Fe)?yt[0]:vr.x0,x1:Ke(vr.x1+Fe)?0:Ne(vr.x1+Fe)?yt[0]:vr.x1,y0:Ee(vr.y0-Fe)?0:Ve(vr.y0-Fe)?yt[1]:vr.y0,y1:Ee(vr.y1+Fe)?0:Ve(vr.y1+Fe)?yt[1]:vr.y1}},G=null,$={},J={},Z=null,re=function(vr,_r){return _r?$[s(vr)]:J[s(vr)]},ne=function(vr,_r,yt,Fe){if(_r)return $[s(b)]||se;var Ke=J[S.level]||yt;return F(vr)?he(vr,Ke,Fe):{}};w.hasMultipleRoots&&P&&z++,S._maxDepth=z,S._backgroundColor=_.paper_bgcolor,S._entryDepth=d.data.depth,S._atRootLevel=P;var j=-I/2+B.l+B.w*(O.x[1]+O.x[0])/2,ee=-N/2+B.t+B.h*(1-(O.y[1]+O.y[0])/2),ie=function(vr){return j+vr},fe=function(vr){return ee+vr},be=fe(0),Ae=ie(0),Be=function(vr){return Ae+vr},Ie=function(vr){return be+vr};function Ze(vr,_r){return vr+","+_r}var at=Be(0),it=function(vr){vr.x=Math.max(at,vr.x)},et=S.pathbar.edgeshape,lt=function(vr){var _r=Be(Math.max(Math.min(vr.x0,vr.x0),0)),yt=Be(Math.min(Math.max(vr.x1,vr.x1),U)),Fe=Ie(vr.y0),Ke=Ie(vr.y1),Ne=W/2,Ee={},Ve={};Ee.x=_r,Ve.x=yt,Ee.y=Ve.y=(Fe+Ke)/2;var ke={x:_r,y:Fe},Te={x:yt,y:Fe},Le={x:yt,y:Ke},rt={x:_r,y:Ke};return et===">"?(ke.x-=Ne,Te.x-=Ne,Le.x-=Ne,rt.x-=Ne):et==="/"?(Le.x-=Ne,rt.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="\\"?(ke.x-=Ne,Te.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="<"&&(Ee.x-=Ne,Ve.x-=Ne),it(ke),it(rt),it(Ee),it(Te),it(Le),it(Ve),"M"+Ze(ke.x,ke.y)+"L"+Ze(Te.x,Te.y)+"L"+Ze(Ve.x,Ve.y)+"L"+Ze(Le.x,Le.y)+"L"+Ze(rt.x,rt.y)+"L"+Ze(Ee.x,Ee.y)+"Z"},Me=S[m?"tiling":"marker"].pad,ge=function(vr){return S.textposition.indexOf(vr)!==-1},ce=ge("top"),ze=ge("left"),tt=ge("right"),nt=ge("bottom"),Qe=function(vr){var _r=ie(vr.x0),yt=ie(vr.x1),Fe=fe(vr.y0),Ke=fe(vr.y1),Ne=yt-_r,Ee=Ke-Fe;if(!Ne||!Ee)return"";var Ve=S.marker.cornerradius||0,ke=Math.min(Ve,Ne/2,Ee/2);ke&&vr.data&&vr.data.data&&vr.data.data.label&&(ce&&(ke=Math.min(ke,Me.t)),ze&&(ke=Math.min(ke,Me.l)),tt&&(ke=Math.min(ke,Me.r)),nt&&(ke=Math.min(ke,Me.b)));var Te=function(Le,rt){return ke?"a"+Ze(ke,ke)+" 0 0 1 "+Ze(Le,rt):""};return"M"+Ze(_r,Fe+ke)+Te(ke,-ke)+"L"+Ze(yt-ke,Fe)+Te(ke,ke)+"L"+Ze(yt,Ke-ke)+Te(-ke,ke)+"L"+Ze(_r+ke,Ke)+Te(-ke,-ke)+"Z"},Ct=function(vr,_r){var yt=vr.x0,Fe=vr.x1,Ke=vr.y0,Ne=vr.y1,Ee=vr.textBB,Ve=ce||_r.isHeader&&!nt,ke=Ve?"start":nt?"end":"middle",Te=ge("right"),Le=ge("left")||_r.onPathbar,rt=Le?-1:Te?1:0;if(_r.isHeader){if(yt+=(m?Me:Me.l)-e,Fe-=(m?Me:Me.r)-e,yt>=Fe){var dt=(yt+Fe)/2;yt=dt,Fe=dt}var xt;nt?(xt=Ne-(m?Me:Me.b),Ke-1,flipY:O.tiling.flip.indexOf("y")>-1,pad:{inner:O.tiling.pad,top:O.marker.pad.t,left:O.marker.pad.l,right:O.marker.pad.r,bottom:O.marker.pad.b}}),ue=Q.descendants(),se=1/0,he=-1/0;ue.forEach(function(re){var ne=re.depth;ne>=O._maxDepth?(re.x0=re.x1=(re.x0+re.x1)/2,re.y0=re.y1=(re.y0+re.y1)/2):(se=Math.min(se,ne),he=Math.max(he,ne))}),p=p.data(ue,o.getPtId),O._maxVisibleLayers=isFinite(he)?he-se+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var G=null;if(d&&P){var $=o.getPtId(P);p.each(function(re){G===null&&o.getPtId(re)===$&&(G={x0:re.x0,x1:re.x1,y0:re.y0,y1:re.y1})})}var J=function(){return G||{x0:0,x1:l,y0:0,y1:_}},Z=p;return d&&(Z=Z.transition().each("end",function(){var re=g.select(this);o.setSliceCursor(re,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),Z.each(function(re){var ne=o.isHeader(re,O);re._x0=w(re.x0),re._x1=w(re.x1),re._y0=S(re.y0),re._y1=S(re.y1),re._hoverX=w(re.x1-O.marker.pad.r),re._hoverY=S(U?re.y1-O.marker.pad.b/2:re.y0+O.marker.pad.t/2);var j=g.select(this),ee=x.ensureSingle(j,"path","surface",function(Ie){Ie.style("pointer-events",z?"none":"all")});d?ee.transition().attrTween("d",function(Ie){var Ze=y(Ie,n,J(),[l,_]);return function(at){return E(Ze(at))}}):ee.attr("d",E),j.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ee.call(t,re,O,c,{hovered:!1}),re.x0===re.x1||re.y0===re.y1?re._text="":ne?re._text=W?"":o.getPtLabel(re)||"":re._text=i(re,v,O,h,F)||"";var ie=x.ensureSingle(j,"g","slicetext"),fe=x.ensureSingle(ie,"text","",function(Ie){Ie.attr("data-notex",1)}),be=x.ensureUniformFontSize(c,o.determineTextFont(O,re,F.font)),Ae=re._text||" ",Be=ne&&Ae.indexOf("
")===-1;fe.text(Ae).classed("slicetext",!0).attr("text-anchor",N?"end":I||Be?"start":"middle").call(A.font,be).call(M.convertToTspans,c),re.textBB=A.bBox(fe.node()),re.transform=m(re,{fontSize:be.size,isHeader:ne}),re.transform.fontSize=be.size,d?fe.transition().attrTween("transform",function(Ie){var Ze=f(Ie,n,J(),[l,_]);return function(at){return b(Ze(at))}}):fe.attr("transform",b(re))}),G}}}),uN=Ye({"src/traces/treemap/plot.js"(X,H){"use strict";var g=o5(),x=lN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"treemap",drawDescendants:x})}}}),cN=Ye({"src/traces/treemap/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"treemap",basePlotModule:aN(),categories:[],animatable:!0,attributes:K3(),layoutAttributes:r5(),supplyDefaults:iN(),supplyLayoutDefaults:nN(),calc:a5().calc,crossTraceCalc:a5().crossTraceCalc,plot:uN(),style:J3().style,colorbar:cp(),meta:{}}}}),fN=Ye({"lib/treemap.js"(X,H){"use strict";H.exports=cN()}}),hN=Ye({"src/traces/icicle/base_plot.js"(X){"use strict";var H=Gu();X.name="icicle",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),s5=Ye({"src/traces/icicle/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=K3(),o=h0(),a=Oo().extendFlat,i=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:r.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:a({colors:t.marker.colors,line:t.marker.line,pattern:i,editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),leaf:t.leaf,pathbar:r.pathbar,text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:o.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:o.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:r.outsidetextfont,textposition:r.textposition,sort:e.sort,root:t.root,domain:M({name:"icicle",trace:!0,editType:"calc"})}}}),l5=Ye({"src/traces/icicle/layout_attributes.js"(X,H){"use strict";H.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),pN=Ye({"src/traces/icicle/defaults.js"(X,H){"use strict";var g=ta(),x=s5(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(b,d){return g.coerce(s,c,x,b,d)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.orientation"),p("tiling.flip"),p("tiling.pad");var w=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(w)?"text+label":"label"),p("hovertext"),p("hovertemplate");var S=p("pathbar.visible"),E="auto";e(s,c,v,p,E,{hasPathbar:S,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition"),r(s,c,v,p);var m=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;m&&i(s,c,v,p,{prefix:"marker.",cLetter:"c"}),p("leaf.opacity",m?1:.7),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},S&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),dN=Ye({"src/traces/icicle/layout_defaults.js"(X,H){"use strict";var g=ta(),x=l5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("iciclecolorway",e.colorway),t("extendiciclecolors")}}}),u5=Ye({"src/traces/icicle/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("icicle",g)}}}),vN=Ye({"src/traces/icicle/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(M,e,t){var r=t.flipX,o=t.flipY,a=t.orientation==="h",i=t.maxDepth,n=e[0],s=e[1];i&&(n=(M.height+1)*e[0]/Math.min(M.height+1,i),s=(M.height+1)*e[1]/Math.min(M.height+1,i));var c=g.partition().padding(t.pad.inner).size(a?[e[1],n]:[e[0],s])(M);return(a||r||o)&&x(c,e,{swapXY:a,flipX:r,flipY:o}),c}}}),c5=Ye({"src/traces/icicle/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._iciclelayer.selectAll(".trace");M(o,a,"icicle"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),mN=Ye({"src/traces/icicle/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=vN(),t=c5().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=e(v,[l,_],{flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,orientation:O.tiling.orientation,pad:{inner:O.tiling.pad},maxDepth:O._maxDepth}),Q=W.descendants(),ue=1/0,se=-1/0;Q.forEach(function(Z){var re=Z.depth;re>=O._maxDepth?(Z.x0=Z.x1=(Z.x0+Z.x1)/2,Z.y0=Z.y1=(Z.y0+Z.y1)/2):(ue=Math.min(ue,re),se=Math.max(se,re))}),p=p.data(Q,o.getPtId),O._maxVisibleLayers=isFinite(se)?se-ue+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var he=null;if(d&&P){var G=o.getPtId(P);p.each(function(Z){he===null&&o.getPtId(Z)===G&&(he={x0:Z.x0,x1:Z.x1,y0:Z.y0,y1:Z.y1})})}var $=function(){return he||{x0:0,x1:l,y0:0,y1:_}},J=p;return d&&(J=J.transition().each("end",function(){var Z=g.select(this);o.setSliceCursor(Z,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),J.each(function(Z){Z._x0=w(Z.x0),Z._x1=w(Z.x1),Z._y0=S(Z.y0),Z._y1=S(Z.y1),Z._hoverX=w(Z.x1-O.tiling.pad),Z._hoverY=S(U?Z.y1-O.tiling.pad/2:Z.y0+O.tiling.pad/2);var re=g.select(this),ne=x.ensureSingle(re,"path","surface",function(fe){fe.style("pointer-events",z?"none":"all")});d?ne.transition().attrTween("d",function(fe){var be=y(fe,n,$(),[l,_],{orientation:O.tiling.orientation,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1});return function(Ae){return E(be(Ae))}}):ne.attr("d",E),re.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ne.call(t,Z,O,c,{hovered:!1}),Z.x0===Z.x1||Z.y0===Z.y1?Z._text="":Z._text=i(Z,v,O,h,F)||"";var j=x.ensureSingle(re,"g","slicetext"),ee=x.ensureSingle(j,"text","",function(fe){fe.attr("data-notex",1)}),ie=x.ensureUniformFontSize(c,o.determineTextFont(O,Z,F.font));ee.text(Z._text||" ").classed("slicetext",!0).attr("text-anchor",N?"end":I?"start":"middle").call(A.font,ie).call(M.convertToTspans,c),Z.textBB=A.bBox(ee.node()),Z.transform=m(Z,{fontSize:ie.size}),Z.transform.fontSize=ie.size,d?ee.transition().attrTween("transform",function(fe){var be=f(fe,n,$(),[l,_]);return function(Ae){return b(be(Ae))}}):ee.attr("transform",b(Z))}),he}}}),gN=Ye({"src/traces/icicle/plot.js"(X,H){"use strict";var g=o5(),x=mN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"icicle",drawDescendants:x})}}}),yN=Ye({"src/traces/icicle/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"icicle",basePlotModule:hN(),categories:[],animatable:!0,attributes:s5(),layoutAttributes:l5(),supplyDefaults:pN(),supplyLayoutDefaults:dN(),calc:u5().calc,crossTraceCalc:u5().crossTraceCalc,plot:gN(),style:c5().style,colorbar:cp(),meta:{}}}}),_N=Ye({"lib/icicle.js"(X,H){"use strict";H.exports=yN()}}),xN=Ye({"src/traces/funnelarea/base_plot.js"(X){"use strict";var H=Gu();X.name="funnelarea",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),f5=Ye({"src/traces/funnelarea/attributes.js"(X,H){"use strict";var g=i0(),x=Pl(),A=Wu().attributes,M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=Oo().extendFlat;H.exports={labels:g.labels,label0:g.label0,dlabel:g.dlabel,values:g.values,marker:{colors:g.marker.colors,line:{color:t({},g.marker.line.color,{dflt:null}),width:t({},g.marker.line.width,{dflt:1}),editType:"calc"},pattern:g.marker.pattern,editType:"calc"},text:g.text,hovertext:g.hovertext,scalegroup:t({},g.scalegroup,{}),textinfo:t({},g.textinfo,{flags:["label","text","value","percent"]}),texttemplate:e({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:t({},x.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:M({},{keys:["label","color","value","text","percent"]}),textposition:t({},g.textposition,{values:["inside","none"],dflt:"inside"}),textfont:g.textfont,insidetextfont:g.insidetextfont,title:{text:g.title.text,font:g.title.font,position:t({},g.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:A({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}}}),h5=Ye({"src/traces/funnelarea/layout_attributes.js"(X,H){"use strict";var g=y3().hiddenlabels;H.exports={hiddenlabels:g,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),bN=Ye({"src/traces/funnelarea/defaults.js"(X,H){"use strict";var g=ta(),x=f5(),A=Wu().defaults,M=gd().handleText,e=n0().handleLabelsAndValues,t=n0().handleMarkerDefaults;H.exports=function(o,a,i,n){function s(E,m){return g.coerce(o,a,x,E,m)}var c=s("labels"),h=s("values"),v=e(c,h),p=v.len;if(a._hasLabels=v.hasLabels,a._hasValues=v.hasValues,!a._hasLabels&&a._hasValues&&(s("label0"),s("dlabel")),!p){a.visible=!1;return}a._length=p,t(o,a,n,s),s("scalegroup");var T=s("text"),l=s("texttemplate"),_;if(l||(_=s("textinfo",Array.isArray(T)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),l||_&&_!=="none"){var w=s("textposition");M(o,a,n,s,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else _==="none"&&s("textposition","none");A(a,n,s);var S=s("title.text");S&&(s("title.position"),g.coerceFont(s,"title.font",n.font)),s("aspectratio"),s("baseratio")}}}),wN=Ye({"src/traces/funnelarea/layout_defaults.js"(X,H){"use strict";var g=ta(),x=h5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("funnelareacolorway",e.colorway),t("extendfunnelareacolors")}}}),p5=Ye({"src/traces/funnelarea/calc.js"(X,H){"use strict";var g=y1();function x(M,e){return g.calc(M,e)}function A(M){g.crossTraceCalc(M,{type:"funnelarea"})}H.exports={calc:x,crossTraceCalc:A}}}),TN=Ye({"src/traces/funnelarea/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=ta(),M=A.strScale,e=A.strTranslate,t=jl(),r=e0(),o=r.toMoveInsideBar,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=eg(),c=_3(),h=c.attachFxHandlers,v=c.determineInsideTextFont,p=c.layoutAreas,T=c.prerenderTitles,l=c.positionTitleOutside,_=c.formatSliceLabel;H.exports=function(b,d){var u=b._context.staticPlot,y=b._fullLayout;n("funnelarea",y),T(d,b),p(d,y._size),A.makeTraceGroups(y._funnelarealayer,d,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace;E(f),P.each(function(){var F=g.select(this).selectAll("g.slice").data(f);F.enter().append("g").classed("slice",!0),F.exit().remove(),F.each(function(O,I){if(O.hidden){g.select(this).selectAll("path,g").remove();return}O.pointNumber=O.i,O.curveNumber=z.index;var N=L.cx,U=L.cy,W=g.select(this),Q=W.selectAll("path.surface").data([O]);Q.enter().append("path").classed("surface",!0).style({"pointer-events":u?"none":"all"}),W.call(h,b,f);var ue="M"+(N+O.TR[0])+","+(U+O.TR[1])+w(O.TR,O.BR)+w(O.BR,O.BL)+w(O.BL,O.TL)+"Z";Q.attr("d",ue),_(b,O,L);var se=s.castOption(z.textposition,O.pts),he=W.selectAll("g.slicetext").data(O.text&&se!=="none"?[0]:[]);he.enter().append("g").classed("slicetext",!0),he.exit().remove(),he.each(function(){var G=A.ensureSingle(g.select(this),"text","",function(ie){ie.attr("data-notex",1)}),$=A.ensureUniformFontSize(b,v(z,O,y.font));G.text(O.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x.font,$).call(t.convertToTspans,b);var J=x.bBox(G.node()),Z,re,ne,j=Math.min(O.BL[1],O.BR[1])+U,ee=Math.max(O.TL[1],O.TR[1])+U;re=Math.max(O.TL[0],O.BL[0])+N,ne=Math.min(O.TR[0],O.BR[0])+N,Z=o(re,ne,j,ee,J,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),Z.fontSize=$.size,i(z.type,Z,y),f[I].transform=Z,A.setTransormAndDisplay(G,Z)})});var B=g.select(this).selectAll("g.titletext").data(z.title.text?[0]:[]);B.enter().append("g").classed("titletext",!0),B.exit().remove(),B.each(function(){var O=A.ensureSingle(g.select(this),"text","",function(U){U.attr("data-notex",1)}),I=z.title.text;z._meta&&(I=A.templateString(I,z._meta)),O.text(I).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x.font,z.title.font).call(t.convertToTspans,b);var N=l(L,y._size);O.attr("transform",e(N.x,N.y)+M(Math.min(1,N.scale))+e(N.tx,N.ty))})})})};function w(m,b){var d=b[0]-m[0],u=b[1]-m[1];return"l"+d+","+u}function S(m,b){return[.5*(m[0]+b[0]),.5*(m[1]+b[1])]}function E(m){if(!m.length)return;var b=m[0],d=b.trace,u=d.aspectratio,y=d.baseratio;y>.999&&(y=.999);var f=Math.pow(y,2),P=b.vTotal,L=P*f/(1-f),z=P,F=L/P;function B(){var fe=Math.sqrt(F);return{x:fe,y:-fe}}function O(){var fe=B();return[fe.x,fe.y]}var I,N=[];N.push(O());var U,W;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){var Q=W.v/z;F+=Q,N.push(O())}var ue=1/0,se=-1/0;for(U=0;U-1;U--)if(W=m[U],!W.hidden){j+=1;var ee=N[j][0],ie=N[j][1];W.TL=[-ee,ie],W.TR=[ee,ie],W.BL=re,W.BR=ne,W.pxmid=S(W.TR,W.BR),re=W.TL,ne=W.TR}}}}),AN=Ye({"src/traces/funnelarea/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");A(e,t,"funnelarea"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),SN=Ye({"src/traces/funnelarea/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"funnelarea",basePlotModule:xN(),categories:["pie-like","funnelarea","showLegend"],attributes:f5(),layoutAttributes:h5(),supplyDefaults:bN(),supplyLayoutDefaults:wN(),calc:p5().calc,crossTraceCalc:p5().crossTraceCalc,plot:TN(),style:AN(),styleOne:a1(),meta:{}}}}),MN=Ye({"lib/funnelarea.js"(X,H){"use strict";H.exports=SN()}}),Gh=Ye({"stackgl_modules/index.js"(X,H){(function(){var g={1964:function(e,t,r){e.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(e,t,r){"use strict";var o;function a(ke,Te){if(!(ke instanceof Te))throw new TypeError("Cannot call a class as a function")}function i(ke,Te){for(var Le=0;Led)throw new RangeError('The value "'+ke+'" is invalid for option "size"');var Te=new Uint8Array(ke);return Object.setPrototypeOf(Te,f.prototype),Te}function f(ke,Te,Le){if(typeof ke=="number"){if(typeof Te=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return F(ke)}return P(ke,Te,Le)}f.poolSize=8192;function P(ke,Te,Le){if(typeof ke=="string")return B(ke,Te);if(ArrayBuffer.isView(ke))return I(ke);if(ke==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke));if(Fe(ke,ArrayBuffer)||ke&&Fe(ke.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Fe(ke,SharedArrayBuffer)||ke&&Fe(ke.buffer,SharedArrayBuffer)))return N(ke,Te,Le);if(typeof ke=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var rt=ke.valueOf&&ke.valueOf();if(rt!=null&&rt!==ke)return f.from(rt,Te,Le);var dt=U(ke);if(dt)return dt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ke[Symbol.toPrimitive]=="function")return f.from(ke[Symbol.toPrimitive]("string"),Te,Le);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke))}f.from=function(ke,Te,Le){return P(ke,Te,Le)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function L(ke){if(typeof ke!="number")throw new TypeError('"size" argument must be of type number');if(ke<0)throw new RangeError('The value "'+ke+'" is invalid for option "size"')}function z(ke,Te,Le){return L(ke),ke<=0?y(ke):Te!==void 0?typeof Le=="string"?y(ke).fill(Te,Le):y(ke).fill(Te):y(ke)}f.alloc=function(ke,Te,Le){return z(ke,Te,Le)};function F(ke){return L(ke),y(ke<0?0:W(ke)|0)}f.allocUnsafe=function(ke){return F(ke)},f.allocUnsafeSlow=function(ke){return F(ke)};function B(ke,Te){if((typeof Te!="string"||Te==="")&&(Te="utf8"),!f.isEncoding(Te))throw new TypeError("Unknown encoding: "+Te);var Le=ue(ke,Te)|0,rt=y(Le),dt=rt.write(ke,Te);return dt!==Le&&(rt=rt.slice(0,dt)),rt}function O(ke){for(var Te=ke.length<0?0:W(ke.length)|0,Le=y(Te),rt=0;rt=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return ke|0}function Q(ke){return+ke!=ke&&(ke=0),f.alloc(+ke)}f.isBuffer=function(Te){return Te!=null&&Te._isBuffer===!0&&Te!==f.prototype},f.compare=function(Te,Le){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),Fe(Le,Uint8Array)&&(Le=f.from(Le,Le.offset,Le.byteLength)),!f.isBuffer(Te)||!f.isBuffer(Le))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Te===Le)return 0;for(var rt=Te.length,dt=Le.length,xt=0,It=Math.min(rt,dt);xtdt.length?(f.isBuffer(It)||(It=f.from(It)),It.copy(dt,xt)):Uint8Array.prototype.set.call(dt,It,xt);else if(f.isBuffer(It))It.copy(dt,xt);else throw new TypeError('"list" argument must be an Array of Buffers');xt+=It.length}return dt};function ue(ke,Te){if(f.isBuffer(ke))return ke.length;if(ArrayBuffer.isView(ke)||Fe(ke,ArrayBuffer))return ke.byteLength;if(typeof ke!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(ke));var Le=ke.length,rt=arguments.length>2&&arguments[2]===!0;if(!rt&&Le===0)return 0;for(var dt=!1;;)switch(Te){case"ascii":case"latin1":case"binary":return Le;case"utf8":case"utf-8":return ar(ke).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Le*2;case"hex":return Le>>>1;case"base64":return _r(ke).length;default:if(dt)return rt?-1:ar(ke).length;Te=(""+Te).toLowerCase(),dt=!0}}f.byteLength=ue;function se(ke,Te,Le){var rt=!1;if((Te===void 0||Te<0)&&(Te=0),Te>this.length||((Le===void 0||Le>this.length)&&(Le=this.length),Le<=0)||(Le>>>=0,Te>>>=0,Le<=Te))return"";for(ke||(ke="utf8");;)switch(ke){case"hex":return Ie(this,Te,Le);case"utf8":case"utf-8":return ie(this,Te,Le);case"ascii":return Ae(this,Te,Le);case"latin1":case"binary":return Be(this,Te,Le);case"base64":return ee(this,Te,Le);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ze(this,Te,Le);default:if(rt)throw new TypeError("Unknown encoding: "+ke);ke=(ke+"").toLowerCase(),rt=!0}}f.prototype._isBuffer=!0;function he(ke,Te,Le){var rt=ke[Te];ke[Te]=ke[Le],ke[Le]=rt}f.prototype.swap16=function(){var Te=this.length;if(Te%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Le=0;LeLe&&(Te+=" ... "),""},b&&(f.prototype[b]=f.prototype.inspect),f.prototype.compare=function(Te,Le,rt,dt,xt){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),!f.isBuffer(Te))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(Te));if(Le===void 0&&(Le=0),rt===void 0&&(rt=Te?Te.length:0),dt===void 0&&(dt=0),xt===void 0&&(xt=this.length),Le<0||rt>Te.length||dt<0||xt>this.length)throw new RangeError("out of range index");if(dt>=xt&&Le>=rt)return 0;if(dt>=xt)return-1;if(Le>=rt)return 1;if(Le>>>=0,rt>>>=0,dt>>>=0,xt>>>=0,this===Te)return 0;for(var It=xt-dt,Bt=rt-Le,Gt=Math.min(It,Bt),Kt=this.slice(dt,xt),sr=Te.slice(Le,rt),sa=0;sa2147483647?Le=2147483647:Le<-2147483648&&(Le=-2147483648),Le=+Le,Ke(Le)&&(Le=dt?0:ke.length-1),Le<0&&(Le=ke.length+Le),Le>=ke.length){if(dt)return-1;Le=ke.length-1}else if(Le<0)if(dt)Le=0;else return-1;if(typeof Te=="string"&&(Te=f.from(Te,rt)),f.isBuffer(Te))return Te.length===0?-1:$(ke,Te,Le,rt,dt);if(typeof Te=="number")return Te=Te&255,typeof Uint8Array.prototype.indexOf=="function"?dt?Uint8Array.prototype.indexOf.call(ke,Te,Le):Uint8Array.prototype.lastIndexOf.call(ke,Te,Le):$(ke,[Te],Le,rt,dt);throw new TypeError("val must be string, number or Buffer")}function $(ke,Te,Le,rt,dt){var xt=1,It=ke.length,Bt=Te.length;if(rt!==void 0&&(rt=String(rt).toLowerCase(),rt==="ucs2"||rt==="ucs-2"||rt==="utf16le"||rt==="utf-16le")){if(ke.length<2||Te.length<2)return-1;xt=2,It/=2,Bt/=2,Le/=2}function Gt(La,ka){return xt===1?La[ka]:La.readUInt16BE(ka*xt)}var Kt;if(dt){var sr=-1;for(Kt=Le;KtIt&&(Le=It-Bt),Kt=Le;Kt>=0;Kt--){for(var sa=!0,Aa=0;Aadt&&(rt=dt)):rt=dt;var xt=Te.length;rt>xt/2&&(rt=xt/2);var It;for(It=0;It>>0,isFinite(rt)?(rt=rt>>>0,dt===void 0&&(dt="utf8")):(dt=rt,rt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var xt=this.length-Le;if((rt===void 0||rt>xt)&&(rt=xt),Te.length>0&&(rt<0||Le<0)||Le>this.length)throw new RangeError("Attempt to write outside buffer bounds");dt||(dt="utf8");for(var It=!1;;)switch(dt){case"hex":return J(this,Te,Le,rt);case"utf8":case"utf-8":return Z(this,Te,Le,rt);case"ascii":case"latin1":case"binary":return re(this,Te,Le,rt);case"base64":return ne(this,Te,Le,rt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,Te,Le,rt);default:if(It)throw new TypeError("Unknown encoding: "+dt);dt=(""+dt).toLowerCase(),It=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(ke,Te,Le){return Te===0&&Le===ke.length?E.fromByteArray(ke):E.fromByteArray(ke.slice(Te,Le))}function ie(ke,Te,Le){Le=Math.min(ke.length,Le);for(var rt=[],dt=Te;dt239?4:xt>223?3:xt>191?2:1;if(dt+Bt<=Le){var Gt=void 0,Kt=void 0,sr=void 0,sa=void 0;switch(Bt){case 1:xt<128&&(It=xt);break;case 2:Gt=ke[dt+1],(Gt&192)===128&&(sa=(xt&31)<<6|Gt&63,sa>127&&(It=sa));break;case 3:Gt=ke[dt+1],Kt=ke[dt+2],(Gt&192)===128&&(Kt&192)===128&&(sa=(xt&15)<<12|(Gt&63)<<6|Kt&63,sa>2047&&(sa<55296||sa>57343)&&(It=sa));break;case 4:Gt=ke[dt+1],Kt=ke[dt+2],sr=ke[dt+3],(Gt&192)===128&&(Kt&192)===128&&(sr&192)===128&&(sa=(xt&15)<<18|(Gt&63)<<12|(Kt&63)<<6|sr&63,sa>65535&&sa<1114112&&(It=sa))}}It===null?(It=65533,Bt=1):It>65535&&(It-=65536,rt.push(It>>>10&1023|55296),It=56320|It&1023),rt.push(It),dt+=Bt}return be(rt)}var fe=4096;function be(ke){var Te=ke.length;if(Te<=fe)return String.fromCharCode.apply(String,ke);for(var Le="",rt=0;rtrt)&&(Le=rt);for(var dt="",xt=Te;xtrt&&(Te=rt),Le<0?(Le+=rt,Le<0&&(Le=0)):Le>rt&&(Le=rt),LeLe)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te+--Le],xt=1;Le>0&&(xt*=256);)dt+=this[Te+--Le]*xt;return dt},f.prototype.readUint8=f.prototype.readUInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]|this[Te+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]<<8|this[Te+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),(this[Te]|this[Te+1]<<8|this[Te+2]<<16)+this[Te+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]*16777216+(this[Te+1]<<16|this[Te+2]<<8|this[Te+3])},f.prototype.readBigUInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24),xt=this[++Te]+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+rt*Math.pow(2,24);return BigInt(dt)+(BigInt(xt)<>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te],xt=this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt;return(BigInt(dt)<>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It=xt&&(dt-=Math.pow(2,8*Le)),dt},f.prototype.readIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=Le,xt=1,It=this[Te+--dt];dt>0&&(xt*=256);)It+=this[Te+--dt]*xt;return xt*=128,It>=xt&&(It-=Math.pow(2,8*Le)),It},f.prototype.readInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]&128?(255-this[Te]+1)*-1:this[Te]},f.prototype.readInt16LE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te]|this[Te+1]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt16BE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te+1]|this[Te]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]|this[Te+1]<<8|this[Te+2]<<16|this[Te+3]<<24},f.prototype.readInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]<<24|this[Te+1]<<16|this[Te+2]<<8|this[Te+3]},f.prototype.readBigInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=this[Te+4]+this[Te+5]*Math.pow(2,8)+this[Te+6]*Math.pow(2,16)+(rt<<24);return(BigInt(dt)<>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=(Le<<24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te];return(BigInt(dt)<>>0,Le||at(Te,4,this.length),m.read(this,Te,!0,23,4)},f.prototype.readFloatBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!1,23,4)},f.prototype.readDoubleLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!0,52,8)},f.prototype.readDoubleBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!1,52,8)};function it(ke,Te,Le,rt,dt,xt){if(!f.isBuffer(ke))throw new TypeError('"buffer" argument must be a Buffer instance');if(Te>dt||Teke.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=1,Bt=0;for(this[Le]=Te&255;++Bt>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=rt-1,Bt=1;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)this[Le+It]=Te/Bt&255;return Le+rt},f.prototype.writeUint8=f.prototype.writeUInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,255,0),this[Le]=Te&255,Le+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le+3]=Te>>>24,this[Le+2]=Te>>>16,this[Le+1]=Te>>>8,this[Le]=Te&255,Le+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4};function et(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,Le}function lt(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le+7]=xt,xt=xt>>8,ke[Le+6]=xt,xt=xt>>8,ke[Le+5]=xt,xt=xt>>8,ke[Le+4]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le+3]=It,It=It>>8,ke[Le+2]=It,It=It>>8,ke[Le+1]=It,It=It>>8,ke[Le]=It,Le+8}f.prototype.writeBigUInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=0,Bt=1,Gt=0;for(this[Le]=Te&255;++It>0)-Gt&255;return Le+rt},f.prototype.writeIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=rt-1,Bt=1,Gt=0;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It+1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,127,-128),Te<0&&(Te=255+Te+1),this[Le]=Te&255,Le+1},f.prototype.writeInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),this[Le]=Te&255,this[Le+1]=Te>>>8,this[Le+2]=Te>>>16,this[Le+3]=Te>>>24,Le+4},f.prototype.writeInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),Te<0&&(Te=4294967295+Te+1),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4},f.prototype.writeBigInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Me(ke,Te,Le,rt,dt,xt){if(Le+rt>ke.length)throw new RangeError("Index out of range");if(Le<0)throw new RangeError("Index out of range")}function ge(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,4,34028234663852886e22,-34028234663852886e22),m.write(ke,Te,Le,rt,23,4),Le+4}f.prototype.writeFloatLE=function(Te,Le,rt){return ge(this,Te,Le,!0,rt)},f.prototype.writeFloatBE=function(Te,Le,rt){return ge(this,Te,Le,!1,rt)};function ce(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,8,17976931348623157e292,-17976931348623157e292),m.write(ke,Te,Le,rt,52,8),Le+8}f.prototype.writeDoubleLE=function(Te,Le,rt){return ce(this,Te,Le,!0,rt)},f.prototype.writeDoubleBE=function(Te,Le,rt){return ce(this,Te,Le,!1,rt)},f.prototype.copy=function(Te,Le,rt,dt){if(!f.isBuffer(Te))throw new TypeError("argument should be a Buffer");if(rt||(rt=0),!dt&&dt!==0&&(dt=this.length),Le>=Te.length&&(Le=Te.length),Le||(Le=0),dt>0&&dt=this.length)throw new RangeError("Index out of range");if(dt<0)throw new RangeError("sourceEnd out of bounds");dt>this.length&&(dt=this.length),Te.length-Le>>0,rt=rt===void 0?this.length:rt>>>0,Te||(Te=0);var It;if(typeof Te=="number")for(It=Le;ItMath.pow(2,32)?dt=nt(String(Le)):typeof Le=="bigint"&&(dt=String(Le),(Le>Math.pow(BigInt(2),BigInt(32))||Le<-Math.pow(BigInt(2),BigInt(32)))&&(dt=nt(dt)),dt+="n"),rt+=" It must be ".concat(Te,". Received ").concat(dt),rt},RangeError);function nt(ke){for(var Te="",Le=ke.length,rt=ke[0]==="-"?1:0;Le>=rt+4;Le-=3)Te="_".concat(ke.slice(Le-3,Le)).concat(Te);return"".concat(ke.slice(0,Le)).concat(Te)}function Qe(ke,Te,Le){St(Te,"offset"),(ke[Te]===void 0||ke[Te+Le]===void 0)&&Ot(Te,ke.length-(Le+1))}function Ct(ke,Te,Le,rt,dt,xt){if(ke>Le||ke3?Te===0||Te===BigInt(0)?Bt=">= 0".concat(It," and < 2").concat(It," ** ").concat((xt+1)*8).concat(It):Bt=">= -(2".concat(It," ** ").concat((xt+1)*8-1).concat(It,") and < 2 ** ")+"".concat((xt+1)*8-1).concat(It):Bt=">= ".concat(Te).concat(It," and <= ").concat(Le).concat(It),new ze.ERR_OUT_OF_RANGE("value",Bt,ke)}Qe(rt,dt,xt)}function St(ke,Te){if(typeof ke!="number")throw new ze.ERR_INVALID_ARG_TYPE(Te,"number",ke)}function Ot(ke,Te,Le){throw Math.floor(ke)!==ke?(St(ke,Le),new ze.ERR_OUT_OF_RANGE(Le||"offset","an integer",ke)):Te<0?new ze.ERR_BUFFER_OUT_OF_BOUNDS:new ze.ERR_OUT_OF_RANGE(Le||"offset",">= ".concat(Le?1:0," and <= ").concat(Te),ke)}var jt=/[^+/0-9A-Za-z-_]/g;function ur(ke){if(ke=ke.split("=")[0],ke=ke.trim().replace(jt,""),ke.length<2)return"";for(;ke.length%4!==0;)ke=ke+"=";return ke}function ar(ke,Te){Te=Te||1/0;for(var Le,rt=ke.length,dt=null,xt=[],It=0;It55295&&Le<57344){if(!dt){if(Le>56319){(Te-=3)>-1&&xt.push(239,191,189);continue}else if(It+1===rt){(Te-=3)>-1&&xt.push(239,191,189);continue}dt=Le;continue}if(Le<56320){(Te-=3)>-1&&xt.push(239,191,189),dt=Le;continue}Le=(dt-55296<<10|Le-56320)+65536}else dt&&(Te-=3)>-1&&xt.push(239,191,189);if(dt=null,Le<128){if((Te-=1)<0)break;xt.push(Le)}else if(Le<2048){if((Te-=2)<0)break;xt.push(Le>>6|192,Le&63|128)}else if(Le<65536){if((Te-=3)<0)break;xt.push(Le>>12|224,Le>>6&63|128,Le&63|128)}else if(Le<1114112){if((Te-=4)<0)break;xt.push(Le>>18|240,Le>>12&63|128,Le>>6&63|128,Le&63|128)}else throw new Error("Invalid code point")}return xt}function Cr(ke){for(var Te=[],Le=0;Le>8,dt=Le%256,xt.push(dt),xt.push(rt);return xt}function _r(ke){return E.toByteArray(ur(ke))}function yt(ke,Te,Le,rt){var dt;for(dt=0;dt=Te.length||dt>=ke.length);++dt)Te[dt+Le]=ke[dt];return dt}function Fe(ke,Te){return ke instanceof Te||ke!=null&&ke.constructor!=null&&ke.constructor.name!=null&&ke.constructor.name===Te.name}function Ke(ke){return ke!==ke}var Ne=function(){for(var ke="0123456789abcdef",Te=new Array(256),Le=0;Le<16;++Le)for(var rt=Le*16,dt=0;dt<16;++dt)Te[rt+dt]=ke[Le]+ke[dt];return Te}();function Ee(ke){return typeof BigInt>"u"?Ve:ke}function Ve(){throw new Error("BigInt not supported")}},9216:function(e){"use strict";e.exports=a,e.exports.isMobile=a,e.exports.default=a;var t=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,o=/android|ipad|playbook|silk/i;function a(i){i||(i={});var n=i.ua;if(!n&&typeof navigator<"u"&&(n=navigator.userAgent),n&&n.headers&&typeof n.headers["user-agent"]=="string"&&(n=n.headers["user-agent"]),typeof n!="string")return!1;var s=t.test(n)&&!r.test(n)||!!i.tablet&&o.test(n);return!s&&i.tablet&&i.featureDetect&&navigator&&navigator.maxTouchPoints>1&&n.indexOf("Macintosh")!==-1&&n.indexOf("Safari")!==-1&&(s=!0),s}},6296:function(e,t,r){"use strict";e.exports=c;var o=r(7261),a=r(9977),i=r(1811);function n(h,v){this._controllerNames=Object.keys(h),this._controllerList=this._controllerNames.map(function(p){return h[p]}),this._mode=v,this._active=h[v],this._active||(this._mode="turntable",this._active=h.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=n.prototype;s.flush=function(h){for(var v=this._controllerList,p=0;p"u"?r(1538):WeakMap,a=r(2762),i=r(8116),n=new o;function s(c){var h=n.get(c),v=h&&(h._triangleBuffer.handle||h._triangleBuffer.buffer);if(!v||!c.isBuffer(v)){var p=a(c,new Float32Array([-1,-1,-1,4,4,-1]));h=i(c,[{buffer:p,type:c.FLOAT,size:2}]),h._triangleBuffer=p,n.set(c,h)}h.bind(),c.drawArrays(c.TRIANGLES,0,3),h.unbind()}e.exports=s},1085:function(e,t,r){var o=r(1371);e.exports=a;function a(i,n,s){n=typeof n=="number"?n:1,s=s||": ";var c=i.split(/\r?\n/),h=String(c.length+n-1).length;return c.map(function(v,p){var T=p+n,l=String(T).length,_=o(T,h-l);return _+s+v}).join(` +`)}},3952:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){for(var c=new Array(s+1),h=0;h0)throw new Error("Invalid string. Length must be a multiple of 4");var E=w.indexOf("=");E===-1&&(E=S);var m=E===S?0:4-E%4;return[E,m]}function h(w){var S=c(w),E=S[0],m=S[1];return(E+m)*3/4-m}function v(w,S,E){return(S+E)*3/4-E}function p(w){var S,E=c(w),m=E[0],b=E[1],d=new a(v(w,m,b)),u=0,y=b>0?m-4:m,f;for(f=0;f>16&255,d[u++]=S>>8&255,d[u++]=S&255;return b===2&&(S=o[w.charCodeAt(f)]<<2|o[w.charCodeAt(f+1)]>>4,d[u++]=S&255),b===1&&(S=o[w.charCodeAt(f)]<<10|o[w.charCodeAt(f+1)]<<4|o[w.charCodeAt(f+2)]>>2,d[u++]=S>>8&255,d[u++]=S&255),d}function T(w){return r[w>>18&63]+r[w>>12&63]+r[w>>6&63]+r[w&63]}function l(w,S,E){for(var m,b=[],d=S;dy?y:u+d));return m===1?(S=w[E-1],b.push(r[S>>2]+r[S<<4&63]+"==")):m===2&&(S=(w[E-2]<<8)+w[E-1],b.push(r[S>>10]+r[S>>4&63]+r[S<<2&63]+"=")),b.join("")}},3865:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).add(n[0].mul(i[1])),i[1].mul(n[1]))}},1318:function(e){"use strict";e.exports=t;function t(r,o){return r[0].mul(o[1]).cmp(o[0].mul(r[1]))}},8697:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]),i[1].mul(n[0]))}},7842:function(e,t,r){"use strict";var o=r(6330),a=r(1533),i=r(2651),n=r(6768),s=r(869),c=r(8697);e.exports=h;function h(v,p){if(o(v))return p?c(v,h(p)):[v[0].clone(),v[1].clone()];var T=0,l,_;if(a(v))l=v.clone();else if(typeof v=="string")l=n(v);else{if(v===0)return[i(0),i(1)];if(v===Math.floor(v))l=i(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),T-=256;l=i(v)}}if(o(p))l.mul(p[1]),_=p[0].clone();else if(a(p))_=p.clone();else if(typeof p=="string")_=n(p);else if(!p)_=i(1);else if(p===Math.floor(p))_=i(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),T+=256;_=i(p)}return T>0?l=l.ushln(T):T<0&&(_=_.ushln(-T)),s(l,_)}},6330:function(e,t,r){"use strict";var o=r(1533);e.exports=a;function a(i){return Array.isArray(i)&&i.length===2&&o(i[0])&&o(i[1])}},5716:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i.cmp(new o(0))}},1369:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){var n=i.length,s=i.words,c=0;if(n===1)c=s[0];else if(n===2)c=s[0]+s[1]*67108864;else for(var h=0;h20?52:c+32}},1533:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i&&typeof i=="object"&&!!i.words}},2651:function(e,t,r){"use strict";var o=r(6859),a=r(2361);e.exports=i;function i(n){var s=a.exponent(n);return s<52?new o(n):new o(n*Math.pow(2,52-s)).ushln(s-52)}},869:function(e,t,r){"use strict";var o=r(2651),a=r(5716);e.exports=i;function i(n,s){var c=a(n),h=a(s);if(c===0)return[o(0),o(1)];if(h===0)return[o(0),o(0)];h<0&&(n=n.neg(),s=s.neg());var v=n.gcd(s);return v.cmpn(1)?[n.div(v),s.div(v)]:[n,s]}},6768:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return new o(i)}},6504:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[0]),i[1].mul(n[1]))}},7721:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){return o(i[0])*o(i[1])}},5572:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).sub(i[1].mul(n[0])),i[1].mul(n[1]))}},946:function(e,t,r){"use strict";var o=r(1369),a=r(4025);e.exports=i;function i(n){var s=n[0],c=n[1];if(s.cmpn(0)===0)return 0;var h=s.abs().divmod(c.abs()),v=h.div,p=o(v),T=h.mod,l=s.negative!==c.negative?-1:1;if(T.cmpn(0)===0)return l*p;if(p){var _=a(p)+4,w=o(T.ushln(_).divRound(c));return l*(p+w*Math.pow(2,-_))}else{var S=c.bitLength()-T.bitLength()+53,w=o(T.ushln(S).divRound(c));return S<1023?l*w*Math.pow(2,-S):(w*=Math.pow(2,-1023),l*w*Math.pow(2,1023-S))}}},2478:function(e){"use strict";function t(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>=0?(T=l,p=l-1):v=l+1}return T}function r(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>0?(T=l,p=l-1):v=l+1}return T}function o(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<0?(T=l,v=l+1):p=l-1}return T}function a(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<=0?(T=l,v=l+1):p=l-1}return T}function i(s,c,h,v,p){for(;v<=p;){var T=v+p>>>1,l=s[T],_=h!==void 0?h(l,c):l-c;if(_===0)return T;_<=0?v=T+1:p=T-1}return-1}function n(s,c,h,v,p,T){return typeof h=="function"?T(s,c,h,v===void 0?0:v|0,p===void 0?s.length-1:p|0):T(s,c,void 0,h===void 0?0:h|0,v===void 0?s.length-1:v|0)}e.exports={ge:function(s,c,h,v,p){return n(s,c,h,v,p,t)},gt:function(s,c,h,v,p){return n(s,c,h,v,p,r)},lt:function(s,c,h,v,p){return n(s,c,h,v,p,o)},le:function(s,c,h,v,p){return n(s,c,h,v,p,a)},eq:function(s,c,h,v,p){return n(s,c,h,v,p,i)}}},8828:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},6859:function(e,t,r){e=r.nmd(e),function(o,a){"use strict";function i(O,I){if(!O)throw new Error(I||"Assertion failed")}function n(O,I){O.super_=I;var N=function(){};N.prototype=I.prototype,O.prototype=new N,O.prototype.constructor=O}function s(O,I,N){if(s.isBN(O))return O;this.negative=0,this.words=null,this.length=0,this.red=null,O!==null&&((I==="le"||I==="be")&&(N=I,I=10),this._init(O||0,I||10,N||"be"))}typeof o=="object"?o.exports=s:a.BN=s,s.BN=s,s.wordSize=26;var c;try{typeof window<"u"&&typeof window.Buffer<"u"?c=window.Buffer:c=r(7790).Buffer}catch{}s.isBN=function(I){return I instanceof s?!0:I!==null&&typeof I=="object"&&I.constructor.wordSize===s.wordSize&&Array.isArray(I.words)},s.max=function(I,N){return I.cmp(N)>0?I:N},s.min=function(I,N){return I.cmp(N)<0?I:N},s.prototype._init=function(I,N,U){if(typeof I=="number")return this._initNumber(I,N,U);if(typeof I=="object")return this._initArray(I,N,U);N==="hex"&&(N=16),i(N===(N|0)&&N>=2&&N<=36),I=I.toString().replace(/\s+/g,"");var W=0;I[0]==="-"&&(W++,this.negative=1),W=0;W-=3)ue=I[W]|I[W-1]<<8|I[W-2]<<16,this.words[Q]|=ue<>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);else if(U==="le")for(W=0,Q=0;W>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);return this.strip()};function h(O,I){var N=O.charCodeAt(I);return N>=65&&N<=70?N-55:N>=97&&N<=102?N-87:N-48&15}function v(O,I,N){var U=h(O,N);return N-1>=I&&(U|=h(O,N-1)<<4),U}s.prototype._parseHex=function(I,N,U){this.length=Math.ceil((I.length-N)/6),this.words=new Array(this.length);for(var W=0;W=N;W-=2)se=v(I,N,W)<=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8;else{var he=I.length-N;for(W=he%2===0?N+1:N;W=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8}this.strip()};function p(O,I,N,U){for(var W=0,Q=Math.min(O.length,N),ue=I;ue=49?W+=se-49+10:se>=17?W+=se-17+10:W+=se}return W}s.prototype._parseBase=function(I,N,U){this.words=[0],this.length=1;for(var W=0,Q=1;Q<=67108863;Q*=N)W++;W--,Q=Q/N|0;for(var ue=I.length-U,se=ue%W,he=Math.min(ue,ue-se)+U,G=0,$=U;$1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?""};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];s.prototype.toString=function(I,N){I=I||10,N=N|0||1;var U;if(I===16||I==="hex"){U="";for(var W=0,Q=0,ue=0;ue>>24-W&16777215,Q!==0||ue!==this.length-1?U=T[6-he.length]+he+U:U=he+U,W+=2,W>=26&&(W-=26,ue--)}for(Q!==0&&(U=Q.toString(16)+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}if(I===(I|0)&&I>=2&&I<=36){var G=l[I],$=_[I];U="";var J=this.clone();for(J.negative=0;!J.isZero();){var Z=J.modn($).toString(I);J=J.idivn($),J.isZero()?U=Z+U:U=T[G-Z.length]+Z+U}for(this.isZero()&&(U="0"+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}i(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var I=this.words[0];return this.length===2?I+=this.words[1]*67108864:this.length===3&&this.words[2]===1?I+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-I:I},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(I,N){return i(typeof c<"u"),this.toArrayLike(c,I,N)},s.prototype.toArray=function(I,N){return this.toArrayLike(Array,I,N)},s.prototype.toArrayLike=function(I,N,U){var W=this.byteLength(),Q=U||Math.max(1,W);i(W<=Q,"byte array longer than desired length"),i(Q>0,"Requested array length <= 0"),this.strip();var ue=N==="le",se=new I(Q),he,G,$=this.clone();if(ue){for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[G]=he;for(;G=4096&&(U+=13,N>>>=13),N>=64&&(U+=7,N>>>=7),N>=8&&(U+=4,N>>>=4),N>=2&&(U+=2,N>>>=2),U+N},s.prototype._zeroBits=function(I){if(I===0)return 26;var N=I,U=0;return N&8191||(U+=13,N>>>=13),N&127||(U+=7,N>>>=7),N&15||(U+=4,N>>>=4),N&3||(U+=2,N>>>=2),N&1||U++,U},s.prototype.bitLength=function(){var I=this.words[this.length-1],N=this._countBits(I);return(this.length-1)*26+N};function w(O){for(var I=new Array(O.bitLength()),N=0;N>>W}return I}s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var I=0,N=0;NI.length?this.clone().ior(I):I.clone().ior(this)},s.prototype.uor=function(I){return this.length>I.length?this.clone().iuor(I):I.clone().iuor(this)},s.prototype.iuand=function(I){var N;this.length>I.length?N=I:N=this;for(var U=0;UI.length?this.clone().iand(I):I.clone().iand(this)},s.prototype.uand=function(I){return this.length>I.length?this.clone().iuand(I):I.clone().iuand(this)},s.prototype.iuxor=function(I){var N,U;this.length>I.length?(N=this,U=I):(N=I,U=this);for(var W=0;WI.length?this.clone().ixor(I):I.clone().ixor(this)},s.prototype.uxor=function(I){return this.length>I.length?this.clone().iuxor(I):I.clone().iuxor(this)},s.prototype.inotn=function(I){i(typeof I=="number"&&I>=0);var N=Math.ceil(I/26)|0,U=I%26;this._expand(N),U>0&&N--;for(var W=0;W0&&(this.words[W]=~this.words[W]&67108863>>26-U),this.strip()},s.prototype.notn=function(I){return this.clone().inotn(I)},s.prototype.setn=function(I,N){i(typeof I=="number"&&I>=0);var U=I/26|0,W=I%26;return this._expand(U+1),N?this.words[U]=this.words[U]|1<I.length?(U=this,W=I):(U=I,W=this);for(var Q=0,ue=0;ue>>26;for(;Q!==0&&ue>>26;if(this.length=U.length,Q!==0)this.words[this.length]=Q,this.length++;else if(U!==this)for(;ueI.length?this.clone().iadd(I):I.clone().iadd(this)},s.prototype.isub=function(I){if(I.negative!==0){I.negative=0;var N=this.iadd(I);return I.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(I),this.negative=1,this._normSign();var U=this.cmp(I);if(U===0)return this.negative=0,this.length=1,this.words[0]=0,this;var W,Q;U>0?(W=this,Q=I):(W=I,Q=this);for(var ue=0,se=0;se>26,this.words[se]=N&67108863;for(;ue!==0&&se>26,this.words[se]=N&67108863;if(ue===0&&se>>26,J=he&67108863,Z=Math.min(G,I.length-1),re=Math.max(0,G-O.length+1);re<=Z;re++){var ne=G-re|0;W=O.words[ne]|0,Q=I.words[re]|0,ue=W*Q+J,$+=ue/67108864|0,J=ue&67108863}N.words[G]=J|0,he=$|0}return he!==0?N.words[G]=he|0:N.length--,N.strip()}var E=function(I,N,U){var W=I.words,Q=N.words,ue=U.words,se=0,he,G,$,J=W[0]|0,Z=J&8191,re=J>>>13,ne=W[1]|0,j=ne&8191,ee=ne>>>13,ie=W[2]|0,fe=ie&8191,be=ie>>>13,Ae=W[3]|0,Be=Ae&8191,Ie=Ae>>>13,Ze=W[4]|0,at=Ze&8191,it=Ze>>>13,et=W[5]|0,lt=et&8191,Me=et>>>13,ge=W[6]|0,ce=ge&8191,ze=ge>>>13,tt=W[7]|0,nt=tt&8191,Qe=tt>>>13,Ct=W[8]|0,St=Ct&8191,Ot=Ct>>>13,jt=W[9]|0,ur=jt&8191,ar=jt>>>13,Cr=Q[0]|0,vr=Cr&8191,_r=Cr>>>13,yt=Q[1]|0,Fe=yt&8191,Ke=yt>>>13,Ne=Q[2]|0,Ee=Ne&8191,Ve=Ne>>>13,ke=Q[3]|0,Te=ke&8191,Le=ke>>>13,rt=Q[4]|0,dt=rt&8191,xt=rt>>>13,It=Q[5]|0,Bt=It&8191,Gt=It>>>13,Kt=Q[6]|0,sr=Kt&8191,sa=Kt>>>13,Aa=Q[7]|0,La=Aa&8191,ka=Aa>>>13,Ga=Q[8]|0,Ma=Ga&8191,Ua=Ga>>>13,ni=Q[9]|0,Wt=ni&8191,zt=ni>>>13;U.negative=I.negative^N.negative,U.length=19,he=Math.imul(Z,vr),G=Math.imul(Z,_r),G=G+Math.imul(re,vr)|0,$=Math.imul(re,_r);var Vt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,he=Math.imul(j,vr),G=Math.imul(j,_r),G=G+Math.imul(ee,vr)|0,$=Math.imul(ee,_r),he=he+Math.imul(Z,Fe)|0,G=G+Math.imul(Z,Ke)|0,G=G+Math.imul(re,Fe)|0,$=$+Math.imul(re,Ke)|0;var Ut=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,he=Math.imul(fe,vr),G=Math.imul(fe,_r),G=G+Math.imul(be,vr)|0,$=Math.imul(be,_r),he=he+Math.imul(j,Fe)|0,G=G+Math.imul(j,Ke)|0,G=G+Math.imul(ee,Fe)|0,$=$+Math.imul(ee,Ke)|0,he=he+Math.imul(Z,Ee)|0,G=G+Math.imul(Z,Ve)|0,G=G+Math.imul(re,Ee)|0,$=$+Math.imul(re,Ve)|0;var xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(xr>>>26)|0,xr&=67108863,he=Math.imul(Be,vr),G=Math.imul(Be,_r),G=G+Math.imul(Ie,vr)|0,$=Math.imul(Ie,_r),he=he+Math.imul(fe,Fe)|0,G=G+Math.imul(fe,Ke)|0,G=G+Math.imul(be,Fe)|0,$=$+Math.imul(be,Ke)|0,he=he+Math.imul(j,Ee)|0,G=G+Math.imul(j,Ve)|0,G=G+Math.imul(ee,Ee)|0,$=$+Math.imul(ee,Ve)|0,he=he+Math.imul(Z,Te)|0,G=G+Math.imul(Z,Le)|0,G=G+Math.imul(re,Te)|0,$=$+Math.imul(re,Le)|0;var Zr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,he=Math.imul(at,vr),G=Math.imul(at,_r),G=G+Math.imul(it,vr)|0,$=Math.imul(it,_r),he=he+Math.imul(Be,Fe)|0,G=G+Math.imul(Be,Ke)|0,G=G+Math.imul(Ie,Fe)|0,$=$+Math.imul(Ie,Ke)|0,he=he+Math.imul(fe,Ee)|0,G=G+Math.imul(fe,Ve)|0,G=G+Math.imul(be,Ee)|0,$=$+Math.imul(be,Ve)|0,he=he+Math.imul(j,Te)|0,G=G+Math.imul(j,Le)|0,G=G+Math.imul(ee,Te)|0,$=$+Math.imul(ee,Le)|0,he=he+Math.imul(Z,dt)|0,G=G+Math.imul(Z,xt)|0,G=G+Math.imul(re,dt)|0,$=$+Math.imul(re,xt)|0;var pa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(pa>>>26)|0,pa&=67108863,he=Math.imul(lt,vr),G=Math.imul(lt,_r),G=G+Math.imul(Me,vr)|0,$=Math.imul(Me,_r),he=he+Math.imul(at,Fe)|0,G=G+Math.imul(at,Ke)|0,G=G+Math.imul(it,Fe)|0,$=$+Math.imul(it,Ke)|0,he=he+Math.imul(Be,Ee)|0,G=G+Math.imul(Be,Ve)|0,G=G+Math.imul(Ie,Ee)|0,$=$+Math.imul(Ie,Ve)|0,he=he+Math.imul(fe,Te)|0,G=G+Math.imul(fe,Le)|0,G=G+Math.imul(be,Te)|0,$=$+Math.imul(be,Le)|0,he=he+Math.imul(j,dt)|0,G=G+Math.imul(j,xt)|0,G=G+Math.imul(ee,dt)|0,$=$+Math.imul(ee,xt)|0,he=he+Math.imul(Z,Bt)|0,G=G+Math.imul(Z,Gt)|0,G=G+Math.imul(re,Bt)|0,$=$+Math.imul(re,Gt)|0;var Xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,he=Math.imul(ce,vr),G=Math.imul(ce,_r),G=G+Math.imul(ze,vr)|0,$=Math.imul(ze,_r),he=he+Math.imul(lt,Fe)|0,G=G+Math.imul(lt,Ke)|0,G=G+Math.imul(Me,Fe)|0,$=$+Math.imul(Me,Ke)|0,he=he+Math.imul(at,Ee)|0,G=G+Math.imul(at,Ve)|0,G=G+Math.imul(it,Ee)|0,$=$+Math.imul(it,Ve)|0,he=he+Math.imul(Be,Te)|0,G=G+Math.imul(Be,Le)|0,G=G+Math.imul(Ie,Te)|0,$=$+Math.imul(Ie,Le)|0,he=he+Math.imul(fe,dt)|0,G=G+Math.imul(fe,xt)|0,G=G+Math.imul(be,dt)|0,$=$+Math.imul(be,xt)|0,he=he+Math.imul(j,Bt)|0,G=G+Math.imul(j,Gt)|0,G=G+Math.imul(ee,Bt)|0,$=$+Math.imul(ee,Gt)|0,he=he+Math.imul(Z,sr)|0,G=G+Math.imul(Z,sa)|0,G=G+Math.imul(re,sr)|0,$=$+Math.imul(re,sa)|0;var Ea=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ea>>>26)|0,Ea&=67108863,he=Math.imul(nt,vr),G=Math.imul(nt,_r),G=G+Math.imul(Qe,vr)|0,$=Math.imul(Qe,_r),he=he+Math.imul(ce,Fe)|0,G=G+Math.imul(ce,Ke)|0,G=G+Math.imul(ze,Fe)|0,$=$+Math.imul(ze,Ke)|0,he=he+Math.imul(lt,Ee)|0,G=G+Math.imul(lt,Ve)|0,G=G+Math.imul(Me,Ee)|0,$=$+Math.imul(Me,Ve)|0,he=he+Math.imul(at,Te)|0,G=G+Math.imul(at,Le)|0,G=G+Math.imul(it,Te)|0,$=$+Math.imul(it,Le)|0,he=he+Math.imul(Be,dt)|0,G=G+Math.imul(Be,xt)|0,G=G+Math.imul(Ie,dt)|0,$=$+Math.imul(Ie,xt)|0,he=he+Math.imul(fe,Bt)|0,G=G+Math.imul(fe,Gt)|0,G=G+Math.imul(be,Bt)|0,$=$+Math.imul(be,Gt)|0,he=he+Math.imul(j,sr)|0,G=G+Math.imul(j,sa)|0,G=G+Math.imul(ee,sr)|0,$=$+Math.imul(ee,sa)|0,he=he+Math.imul(Z,La)|0,G=G+Math.imul(Z,ka)|0,G=G+Math.imul(re,La)|0,$=$+Math.imul(re,ka)|0;var Fa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,he=Math.imul(St,vr),G=Math.imul(St,_r),G=G+Math.imul(Ot,vr)|0,$=Math.imul(Ot,_r),he=he+Math.imul(nt,Fe)|0,G=G+Math.imul(nt,Ke)|0,G=G+Math.imul(Qe,Fe)|0,$=$+Math.imul(Qe,Ke)|0,he=he+Math.imul(ce,Ee)|0,G=G+Math.imul(ce,Ve)|0,G=G+Math.imul(ze,Ee)|0,$=$+Math.imul(ze,Ve)|0,he=he+Math.imul(lt,Te)|0,G=G+Math.imul(lt,Le)|0,G=G+Math.imul(Me,Te)|0,$=$+Math.imul(Me,Le)|0,he=he+Math.imul(at,dt)|0,G=G+Math.imul(at,xt)|0,G=G+Math.imul(it,dt)|0,$=$+Math.imul(it,xt)|0,he=he+Math.imul(Be,Bt)|0,G=G+Math.imul(Be,Gt)|0,G=G+Math.imul(Ie,Bt)|0,$=$+Math.imul(Ie,Gt)|0,he=he+Math.imul(fe,sr)|0,G=G+Math.imul(fe,sa)|0,G=G+Math.imul(be,sr)|0,$=$+Math.imul(be,sa)|0,he=he+Math.imul(j,La)|0,G=G+Math.imul(j,ka)|0,G=G+Math.imul(ee,La)|0,$=$+Math.imul(ee,ka)|0,he=he+Math.imul(Z,Ma)|0,G=G+Math.imul(Z,Ua)|0,G=G+Math.imul(re,Ma)|0,$=$+Math.imul(re,Ua)|0;var qa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(qa>>>26)|0,qa&=67108863,he=Math.imul(ur,vr),G=Math.imul(ur,_r),G=G+Math.imul(ar,vr)|0,$=Math.imul(ar,_r),he=he+Math.imul(St,Fe)|0,G=G+Math.imul(St,Ke)|0,G=G+Math.imul(Ot,Fe)|0,$=$+Math.imul(Ot,Ke)|0,he=he+Math.imul(nt,Ee)|0,G=G+Math.imul(nt,Ve)|0,G=G+Math.imul(Qe,Ee)|0,$=$+Math.imul(Qe,Ve)|0,he=he+Math.imul(ce,Te)|0,G=G+Math.imul(ce,Le)|0,G=G+Math.imul(ze,Te)|0,$=$+Math.imul(ze,Le)|0,he=he+Math.imul(lt,dt)|0,G=G+Math.imul(lt,xt)|0,G=G+Math.imul(Me,dt)|0,$=$+Math.imul(Me,xt)|0,he=he+Math.imul(at,Bt)|0,G=G+Math.imul(at,Gt)|0,G=G+Math.imul(it,Bt)|0,$=$+Math.imul(it,Gt)|0,he=he+Math.imul(Be,sr)|0,G=G+Math.imul(Be,sa)|0,G=G+Math.imul(Ie,sr)|0,$=$+Math.imul(Ie,sa)|0,he=he+Math.imul(fe,La)|0,G=G+Math.imul(fe,ka)|0,G=G+Math.imul(be,La)|0,$=$+Math.imul(be,ka)|0,he=he+Math.imul(j,Ma)|0,G=G+Math.imul(j,Ua)|0,G=G+Math.imul(ee,Ma)|0,$=$+Math.imul(ee,Ua)|0,he=he+Math.imul(Z,Wt)|0,G=G+Math.imul(Z,zt)|0,G=G+Math.imul(re,Wt)|0,$=$+Math.imul(re,zt)|0;var ya=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(ya>>>26)|0,ya&=67108863,he=Math.imul(ur,Fe),G=Math.imul(ur,Ke),G=G+Math.imul(ar,Fe)|0,$=Math.imul(ar,Ke),he=he+Math.imul(St,Ee)|0,G=G+Math.imul(St,Ve)|0,G=G+Math.imul(Ot,Ee)|0,$=$+Math.imul(Ot,Ve)|0,he=he+Math.imul(nt,Te)|0,G=G+Math.imul(nt,Le)|0,G=G+Math.imul(Qe,Te)|0,$=$+Math.imul(Qe,Le)|0,he=he+Math.imul(ce,dt)|0,G=G+Math.imul(ce,xt)|0,G=G+Math.imul(ze,dt)|0,$=$+Math.imul(ze,xt)|0,he=he+Math.imul(lt,Bt)|0,G=G+Math.imul(lt,Gt)|0,G=G+Math.imul(Me,Bt)|0,$=$+Math.imul(Me,Gt)|0,he=he+Math.imul(at,sr)|0,G=G+Math.imul(at,sa)|0,G=G+Math.imul(it,sr)|0,$=$+Math.imul(it,sa)|0,he=he+Math.imul(Be,La)|0,G=G+Math.imul(Be,ka)|0,G=G+Math.imul(Ie,La)|0,$=$+Math.imul(Ie,ka)|0,he=he+Math.imul(fe,Ma)|0,G=G+Math.imul(fe,Ua)|0,G=G+Math.imul(be,Ma)|0,$=$+Math.imul(be,Ua)|0,he=he+Math.imul(j,Wt)|0,G=G+Math.imul(j,zt)|0,G=G+Math.imul(ee,Wt)|0,$=$+Math.imul(ee,zt)|0;var $a=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+($a>>>26)|0,$a&=67108863,he=Math.imul(ur,Ee),G=Math.imul(ur,Ve),G=G+Math.imul(ar,Ee)|0,$=Math.imul(ar,Ve),he=he+Math.imul(St,Te)|0,G=G+Math.imul(St,Le)|0,G=G+Math.imul(Ot,Te)|0,$=$+Math.imul(Ot,Le)|0,he=he+Math.imul(nt,dt)|0,G=G+Math.imul(nt,xt)|0,G=G+Math.imul(Qe,dt)|0,$=$+Math.imul(Qe,xt)|0,he=he+Math.imul(ce,Bt)|0,G=G+Math.imul(ce,Gt)|0,G=G+Math.imul(ze,Bt)|0,$=$+Math.imul(ze,Gt)|0,he=he+Math.imul(lt,sr)|0,G=G+Math.imul(lt,sa)|0,G=G+Math.imul(Me,sr)|0,$=$+Math.imul(Me,sa)|0,he=he+Math.imul(at,La)|0,G=G+Math.imul(at,ka)|0,G=G+Math.imul(it,La)|0,$=$+Math.imul(it,ka)|0,he=he+Math.imul(Be,Ma)|0,G=G+Math.imul(Be,Ua)|0,G=G+Math.imul(Ie,Ma)|0,$=$+Math.imul(Ie,Ua)|0,he=he+Math.imul(fe,Wt)|0,G=G+Math.imul(fe,zt)|0,G=G+Math.imul(be,Wt)|0,$=$+Math.imul(be,zt)|0;var mt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(mt>>>26)|0,mt&=67108863,he=Math.imul(ur,Te),G=Math.imul(ur,Le),G=G+Math.imul(ar,Te)|0,$=Math.imul(ar,Le),he=he+Math.imul(St,dt)|0,G=G+Math.imul(St,xt)|0,G=G+Math.imul(Ot,dt)|0,$=$+Math.imul(Ot,xt)|0,he=he+Math.imul(nt,Bt)|0,G=G+Math.imul(nt,Gt)|0,G=G+Math.imul(Qe,Bt)|0,$=$+Math.imul(Qe,Gt)|0,he=he+Math.imul(ce,sr)|0,G=G+Math.imul(ce,sa)|0,G=G+Math.imul(ze,sr)|0,$=$+Math.imul(ze,sa)|0,he=he+Math.imul(lt,La)|0,G=G+Math.imul(lt,ka)|0,G=G+Math.imul(Me,La)|0,$=$+Math.imul(Me,ka)|0,he=he+Math.imul(at,Ma)|0,G=G+Math.imul(at,Ua)|0,G=G+Math.imul(it,Ma)|0,$=$+Math.imul(it,Ua)|0,he=he+Math.imul(Be,Wt)|0,G=G+Math.imul(Be,zt)|0,G=G+Math.imul(Ie,Wt)|0,$=$+Math.imul(Ie,zt)|0;var gt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(gt>>>26)|0,gt&=67108863,he=Math.imul(ur,dt),G=Math.imul(ur,xt),G=G+Math.imul(ar,dt)|0,$=Math.imul(ar,xt),he=he+Math.imul(St,Bt)|0,G=G+Math.imul(St,Gt)|0,G=G+Math.imul(Ot,Bt)|0,$=$+Math.imul(Ot,Gt)|0,he=he+Math.imul(nt,sr)|0,G=G+Math.imul(nt,sa)|0,G=G+Math.imul(Qe,sr)|0,$=$+Math.imul(Qe,sa)|0,he=he+Math.imul(ce,La)|0,G=G+Math.imul(ce,ka)|0,G=G+Math.imul(ze,La)|0,$=$+Math.imul(ze,ka)|0,he=he+Math.imul(lt,Ma)|0,G=G+Math.imul(lt,Ua)|0,G=G+Math.imul(Me,Ma)|0,$=$+Math.imul(Me,Ua)|0,he=he+Math.imul(at,Wt)|0,G=G+Math.imul(at,zt)|0,G=G+Math.imul(it,Wt)|0,$=$+Math.imul(it,zt)|0;var Er=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Er>>>26)|0,Er&=67108863,he=Math.imul(ur,Bt),G=Math.imul(ur,Gt),G=G+Math.imul(ar,Bt)|0,$=Math.imul(ar,Gt),he=he+Math.imul(St,sr)|0,G=G+Math.imul(St,sa)|0,G=G+Math.imul(Ot,sr)|0,$=$+Math.imul(Ot,sa)|0,he=he+Math.imul(nt,La)|0,G=G+Math.imul(nt,ka)|0,G=G+Math.imul(Qe,La)|0,$=$+Math.imul(Qe,ka)|0,he=he+Math.imul(ce,Ma)|0,G=G+Math.imul(ce,Ua)|0,G=G+Math.imul(ze,Ma)|0,$=$+Math.imul(ze,Ua)|0,he=he+Math.imul(lt,Wt)|0,G=G+Math.imul(lt,zt)|0,G=G+Math.imul(Me,Wt)|0,$=$+Math.imul(Me,zt)|0;var kr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(kr>>>26)|0,kr&=67108863,he=Math.imul(ur,sr),G=Math.imul(ur,sa),G=G+Math.imul(ar,sr)|0,$=Math.imul(ar,sa),he=he+Math.imul(St,La)|0,G=G+Math.imul(St,ka)|0,G=G+Math.imul(Ot,La)|0,$=$+Math.imul(Ot,ka)|0,he=he+Math.imul(nt,Ma)|0,G=G+Math.imul(nt,Ua)|0,G=G+Math.imul(Qe,Ma)|0,$=$+Math.imul(Qe,Ua)|0,he=he+Math.imul(ce,Wt)|0,G=G+Math.imul(ce,zt)|0,G=G+Math.imul(ze,Wt)|0,$=$+Math.imul(ze,zt)|0;var br=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(br>>>26)|0,br&=67108863,he=Math.imul(ur,La),G=Math.imul(ur,ka),G=G+Math.imul(ar,La)|0,$=Math.imul(ar,ka),he=he+Math.imul(St,Ma)|0,G=G+Math.imul(St,Ua)|0,G=G+Math.imul(Ot,Ma)|0,$=$+Math.imul(Ot,Ua)|0,he=he+Math.imul(nt,Wt)|0,G=G+Math.imul(nt,zt)|0,G=G+Math.imul(Qe,Wt)|0,$=$+Math.imul(Qe,zt)|0;var Tr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Tr>>>26)|0,Tr&=67108863,he=Math.imul(ur,Ma),G=Math.imul(ur,Ua),G=G+Math.imul(ar,Ma)|0,$=Math.imul(ar,Ua),he=he+Math.imul(St,Wt)|0,G=G+Math.imul(St,zt)|0,G=G+Math.imul(Ot,Wt)|0,$=$+Math.imul(Ot,zt)|0;var Mr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,he=Math.imul(ur,Wt),G=Math.imul(ur,zt),G=G+Math.imul(ar,Wt)|0,$=Math.imul(ar,zt);var Fr=(se+he|0)+((G&8191)<<13)|0;return se=($+(G>>>13)|0)+(Fr>>>26)|0,Fr&=67108863,ue[0]=Vt,ue[1]=Ut,ue[2]=xr,ue[3]=Zr,ue[4]=pa,ue[5]=Xr,ue[6]=Ea,ue[7]=Fa,ue[8]=qa,ue[9]=ya,ue[10]=$a,ue[11]=mt,ue[12]=gt,ue[13]=Er,ue[14]=kr,ue[15]=br,ue[16]=Tr,ue[17]=Mr,ue[18]=Fr,se!==0&&(ue[19]=se,U.length++),U};Math.imul||(E=S);function m(O,I,N){N.negative=I.negative^O.negative,N.length=O.length+I.length;for(var U=0,W=0,Q=0;Q>>26)|0,W+=ue>>>26,ue&=67108863}N.words[Q]=se,U=ue,ue=W}return U!==0?N.words[Q]=U:N.length--,N.strip()}function b(O,I,N){var U=new d;return U.mulp(O,I,N)}s.prototype.mulTo=function(I,N){var U,W=this.length+I.length;return this.length===10&&I.length===10?U=E(this,I,N):W<63?U=S(this,I,N):W<1024?U=m(this,I,N):U=b(this,I,N),U};function d(O,I){this.x=O,this.y=I}d.prototype.makeRBT=function(I){for(var N=new Array(I),U=s.prototype._countBits(I)-1,W=0;W>=1;return W},d.prototype.permute=function(I,N,U,W,Q,ue){for(var se=0;se>>1)Q++;return 1<>>13,U[2*ue+1]=Q&8191,Q=Q>>>13;for(ue=2*N;ue>=26,N+=W/67108864|0,N+=Q>>>26,this.words[U]=Q&67108863}return N!==0&&(this.words[U]=N,this.length++),this},s.prototype.muln=function(I){return this.clone().imuln(I)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(I){var N=w(I);if(N.length===0)return new s(1);for(var U=this,W=0;W=0);var N=I%26,U=(I-N)/26,W=67108863>>>26-N<<26-N,Q;if(N!==0){var ue=0;for(Q=0;Q>>26-N}ue&&(this.words[Q]=ue,this.length++)}if(U!==0){for(Q=this.length-1;Q>=0;Q--)this.words[Q+U]=this.words[Q];for(Q=0;Q=0);var W;N?W=(N-N%26)/26:W=0;var Q=I%26,ue=Math.min((I-Q)/26,this.length),se=67108863^67108863>>>Q<ue)for(this.length-=ue,G=0;G=0&&($!==0||G>=W);G--){var J=this.words[G]|0;this.words[G]=$<<26-Q|J>>>Q,$=J&se}return he&&$!==0&&(he.words[he.length++]=$),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(I,N,U){return i(this.negative===0),this.iushrn(I,N,U)},s.prototype.shln=function(I){return this.clone().ishln(I)},s.prototype.ushln=function(I){return this.clone().iushln(I)},s.prototype.shrn=function(I){return this.clone().ishrn(I)},s.prototype.ushrn=function(I){return this.clone().iushrn(I)},s.prototype.testn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=1<=0);var N=I%26,U=(I-N)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=U)return this;if(N!==0&&U++,this.length=Math.min(U,this.length),N!==0){var W=67108863^67108863>>>N<=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},s.prototype.isubn=function(I){if(i(typeof I=="number"),i(I<67108864),I<0)return this.iaddn(-I);if(this.negative!==0)return this.negative=0,this.iaddn(I),this.negative=1,this;if(this.words[0]-=I,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N>26)-(he/67108864|0),this.words[Q+U]=ue&67108863}for(;Q>26,this.words[Q+U]=ue&67108863;if(se===0)return this.strip();for(i(se===-1),se=0,Q=0;Q>26,this.words[Q]=ue&67108863;return this.negative=1,this.strip()},s.prototype._wordDiv=function(I,N){var U=this.length-I.length,W=this.clone(),Q=I,ue=Q.words[Q.length-1]|0,se=this._countBits(ue);U=26-se,U!==0&&(Q=Q.ushln(U),W.iushln(U),ue=Q.words[Q.length-1]|0);var he=W.length-Q.length,G;if(N!=="mod"){G=new s(null),G.length=he+1,G.words=new Array(G.length);for(var $=0;$=0;Z--){var re=(W.words[Q.length+Z]|0)*67108864+(W.words[Q.length+Z-1]|0);for(re=Math.min(re/ue|0,67108863),W._ishlnsubmul(Q,re,Z);W.negative!==0;)re--,W.negative=0,W._ishlnsubmul(Q,1,Z),W.isZero()||(W.negative^=1);G&&(G.words[Z]=re)}return G&&G.strip(),W.strip(),N!=="div"&&U!==0&&W.iushrn(U),{div:G||null,mod:W}},s.prototype.divmod=function(I,N,U){if(i(!I.isZero()),this.isZero())return{div:new s(0),mod:new s(0)};var W,Q,ue;return this.negative!==0&&I.negative===0?(ue=this.neg().divmod(I,N),N!=="mod"&&(W=ue.div.neg()),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.iadd(I)),{div:W,mod:Q}):this.negative===0&&I.negative!==0?(ue=this.divmod(I.neg(),N),N!=="mod"&&(W=ue.div.neg()),{div:W,mod:ue.mod}):this.negative&I.negative?(ue=this.neg().divmod(I.neg(),N),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.isub(I)),{div:ue.div,mod:Q}):I.length>this.length||this.cmp(I)<0?{div:new s(0),mod:this}:I.length===1?N==="div"?{div:this.divn(I.words[0]),mod:null}:N==="mod"?{div:null,mod:new s(this.modn(I.words[0]))}:{div:this.divn(I.words[0]),mod:new s(this.modn(I.words[0]))}:this._wordDiv(I,N)},s.prototype.div=function(I){return this.divmod(I,"div",!1).div},s.prototype.mod=function(I){return this.divmod(I,"mod",!1).mod},s.prototype.umod=function(I){return this.divmod(I,"mod",!0).mod},s.prototype.divRound=function(I){var N=this.divmod(I);if(N.mod.isZero())return N.div;var U=N.div.negative!==0?N.mod.isub(I):N.mod,W=I.ushrn(1),Q=I.andln(1),ue=U.cmp(W);return ue<0||Q===1&&ue===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},s.prototype.modn=function(I){i(I<=67108863);for(var N=(1<<26)%I,U=0,W=this.length-1;W>=0;W--)U=(N*U+(this.words[W]|0))%I;return U},s.prototype.idivn=function(I){i(I<=67108863);for(var N=0,U=this.length-1;U>=0;U--){var W=(this.words[U]|0)+N*67108864;this.words[U]=W/I|0,N=W%I}return this.strip()},s.prototype.divn=function(I){return this.clone().idivn(I)},s.prototype.egcd=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=new s(0),se=new s(1),he=0;N.isEven()&&U.isEven();)N.iushrn(1),U.iushrn(1),++he;for(var G=U.clone(),$=N.clone();!N.isZero();){for(var J=0,Z=1;!(N.words[0]&Z)&&J<26;++J,Z<<=1);if(J>0)for(N.iushrn(J);J-- >0;)(W.isOdd()||Q.isOdd())&&(W.iadd(G),Q.isub($)),W.iushrn(1),Q.iushrn(1);for(var re=0,ne=1;!(U.words[0]&ne)&&re<26;++re,ne<<=1);if(re>0)for(U.iushrn(re);re-- >0;)(ue.isOdd()||se.isOdd())&&(ue.iadd(G),se.isub($)),ue.iushrn(1),se.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(ue),Q.isub(se)):(U.isub(N),ue.isub(W),se.isub(Q))}return{a:ue,b:se,gcd:U.iushln(he)}},s.prototype._invmp=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=U.clone();N.cmpn(1)>0&&U.cmpn(1)>0;){for(var se=0,he=1;!(N.words[0]&he)&&se<26;++se,he<<=1);if(se>0)for(N.iushrn(se);se-- >0;)W.isOdd()&&W.iadd(ue),W.iushrn(1);for(var G=0,$=1;!(U.words[0]&$)&&G<26;++G,$<<=1);if(G>0)for(U.iushrn(G);G-- >0;)Q.isOdd()&&Q.iadd(ue),Q.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(Q)):(U.isub(N),Q.isub(W))}var J;return N.cmpn(1)===0?J=W:J=Q,J.cmpn(0)<0&&J.iadd(I),J},s.prototype.gcd=function(I){if(this.isZero())return I.abs();if(I.isZero())return this.abs();var N=this.clone(),U=I.clone();N.negative=0,U.negative=0;for(var W=0;N.isEven()&&U.isEven();W++)N.iushrn(1),U.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;U.isEven();)U.iushrn(1);var Q=N.cmp(U);if(Q<0){var ue=N;N=U,U=ue}else if(Q===0||U.cmpn(1)===0)break;N.isub(U)}while(!0);return U.iushln(W)},s.prototype.invm=function(I){return this.egcd(I).a.umod(I)},s.prototype.isEven=function(){return(this.words[0]&1)===0},s.prototype.isOdd=function(){return(this.words[0]&1)===1},s.prototype.andln=function(I){return this.words[0]&I},s.prototype.bincn=function(I){i(typeof I=="number");var N=I%26,U=(I-N)/26,W=1<>>26,se&=67108863,this.words[ue]=se}return Q!==0&&(this.words[ue]=Q,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(I){var N=I<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this.strip();var U;if(this.length>1)U=1;else{N&&(I=-I),i(I<=67108863,"Number is too big");var W=this.words[0]|0;U=W===I?0:WI.length)return 1;if(this.length=0;U--){var W=this.words[U]|0,Q=I.words[U]|0;if(W!==Q){WQ&&(N=1);break}}return N},s.prototype.gtn=function(I){return this.cmpn(I)===1},s.prototype.gt=function(I){return this.cmp(I)===1},s.prototype.gten=function(I){return this.cmpn(I)>=0},s.prototype.gte=function(I){return this.cmp(I)>=0},s.prototype.ltn=function(I){return this.cmpn(I)===-1},s.prototype.lt=function(I){return this.cmp(I)===-1},s.prototype.lten=function(I){return this.cmpn(I)<=0},s.prototype.lte=function(I){return this.cmp(I)<=0},s.prototype.eqn=function(I){return this.cmpn(I)===0},s.prototype.eq=function(I){return this.cmp(I)===0},s.red=function(I){return new F(I)},s.prototype.toRed=function(I){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),I.convertTo(this)._forceRed(I)},s.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(I){return this.red=I,this},s.prototype.forceRed=function(I){return i(!this.red,"Already a number in reduction context"),this._forceRed(I)},s.prototype.redAdd=function(I){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,I)},s.prototype.redIAdd=function(I){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,I)},s.prototype.redSub=function(I){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,I)},s.prototype.redISub=function(I){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,I)},s.prototype.redShl=function(I){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,I)},s.prototype.redMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.mul(this,I)},s.prototype.redIMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.imul(this,I)},s.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(I){return i(this.red&&!I.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,I)};var u={k256:null,p224:null,p192:null,p25519:null};function y(O,I){this.name=O,this.p=new s(I,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}y.prototype._tmp=function(){var I=new s(null);return I.words=new Array(Math.ceil(this.n/13)),I},y.prototype.ireduce=function(I){var N=I,U;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),U=N.bitLength();while(U>this.n);var W=U0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},y.prototype.split=function(I,N){I.iushrn(this.n,0,N)},y.prototype.imulK=function(I){return I.imul(this.k)};function f(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(f,y),f.prototype.split=function(I,N){for(var U=4194303,W=Math.min(I.length,9),Q=0;Q>>22,ue=se}ue>>>=22,I.words[Q-10]=ue,ue===0&&I.length>10?I.length-=10:I.length-=9},f.prototype.imulK=function(I){I.words[I.length]=0,I.words[I.length+1]=0,I.length+=2;for(var N=0,U=0;U>>=26,I.words[U]=Q,N=W}return N!==0&&(I.words[I.length++]=N),I},s._prime=function(I){if(u[I])return u[I];var N;if(I==="k256")N=new f;else if(I==="p224")N=new P;else if(I==="p192")N=new L;else if(I==="p25519")N=new z;else throw new Error("Unknown prime "+I);return u[I]=N,N};function F(O){if(typeof O=="string"){var I=s._prime(O);this.m=I.p,this.prime=I}else i(O.gtn(1),"modulus must be greater than 1"),this.m=O,this.prime=null}F.prototype._verify1=function(I){i(I.negative===0,"red works only with positives"),i(I.red,"red works only with red numbers")},F.prototype._verify2=function(I,N){i((I.negative|N.negative)===0,"red works only with positives"),i(I.red&&I.red===N.red,"red works only with red numbers")},F.prototype.imod=function(I){return this.prime?this.prime.ireduce(I)._forceRed(this):I.umod(this.m)._forceRed(this)},F.prototype.neg=function(I){return I.isZero()?I.clone():this.m.sub(I)._forceRed(this)},F.prototype.add=function(I,N){this._verify2(I,N);var U=I.add(N);return U.cmp(this.m)>=0&&U.isub(this.m),U._forceRed(this)},F.prototype.iadd=function(I,N){this._verify2(I,N);var U=I.iadd(N);return U.cmp(this.m)>=0&&U.isub(this.m),U},F.prototype.sub=function(I,N){this._verify2(I,N);var U=I.sub(N);return U.cmpn(0)<0&&U.iadd(this.m),U._forceRed(this)},F.prototype.isub=function(I,N){this._verify2(I,N);var U=I.isub(N);return U.cmpn(0)<0&&U.iadd(this.m),U},F.prototype.shl=function(I,N){return this._verify1(I),this.imod(I.ushln(N))},F.prototype.imul=function(I,N){return this._verify2(I,N),this.imod(I.imul(N))},F.prototype.mul=function(I,N){return this._verify2(I,N),this.imod(I.mul(N))},F.prototype.isqr=function(I){return this.imul(I,I.clone())},F.prototype.sqr=function(I){return this.mul(I,I)},F.prototype.sqrt=function(I){if(I.isZero())return I.clone();var N=this.m.andln(3);if(i(N%2===1),N===3){var U=this.m.add(new s(1)).iushrn(2);return this.pow(I,U)}for(var W=this.m.subn(1),Q=0;!W.isZero()&&W.andln(1)===0;)Q++,W.iushrn(1);i(!W.isZero());var ue=new s(1).toRed(this),se=ue.redNeg(),he=this.m.subn(1).iushrn(1),G=this.m.bitLength();for(G=new s(2*G*G).toRed(this);this.pow(G,he).cmp(se)!==0;)G.redIAdd(se);for(var $=this.pow(G,W),J=this.pow(I,W.addn(1).iushrn(1)),Z=this.pow(I,W),re=Q;Z.cmp(ue)!==0;){for(var ne=Z,j=0;ne.cmp(ue)!==0;j++)ne=ne.redSqr();i(j=0;Q--){for(var $=N.words[Q],J=G-1;J>=0;J--){var Z=$>>J&1;if(ue!==W[0]&&(ue=this.sqr(ue)),Z===0&&se===0){he=0;continue}se<<=1,se|=Z,he++,!(he!==U&&(Q!==0||J!==0))&&(ue=this.mul(ue,W[se]),he=0,se=0)}G=26}return ue},F.prototype.convertTo=function(I){var N=I.umod(this.m);return N===I?N.clone():N},F.prototype.convertFrom=function(I){var N=I.clone();return N.red=null,N},s.mont=function(I){return new B(I)};function B(O){F.call(this,O),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new s(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}n(B,F),B.prototype.convertTo=function(I){return this.imod(I.ushln(this.shift))},B.prototype.convertFrom=function(I){var N=this.imod(I.mul(this.rinv));return N.red=null,N},B.prototype.imul=function(I,N){if(I.isZero()||N.isZero())return I.words[0]=0,I.length=1,I;var U=I.imul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.mul=function(I,N){if(I.isZero()||N.isZero())return new s(0)._forceRed(this);var U=I.mul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.invm=function(I){var N=this.imod(I._invmp(this.m).mul(this.r2));return N._forceRed(this)}}(e,this)},6204:function(e){"use strict";e.exports=t;function t(r){var o,a,i,n=r.length,s=0;for(o=0;o>>1;if(!(d<=0)){var u,y=o.mallocDouble(2*d*m),f=o.mallocInt32(m);if(m=s(_,d,y,f),m>0){if(d===1&&E)a.init(m),u=a.sweepComplete(d,S,0,m,y,f,0,m,y,f);else{var P=o.mallocDouble(2*d*b),L=o.mallocInt32(b);b=s(w,d,P,L),b>0&&(a.init(m+b),d===1?u=a.sweepBipartite(d,S,0,m,y,f,0,b,P,L):u=i(d,S,E,m,y,f,b,P,L),o.free(P),o.free(L))}o.free(y),o.free(f)}return u}}}var h;function v(_,w){h.push([_,w])}function p(_){return h=[],c(_,_,v,!0),h}function T(_,w){return h=[],c(_,w,v,!1),h}function l(_,w,S){switch(arguments.length){case 1:return p(_);case 2:return typeof w=="function"?c(_,_,w,!0):T(_,w);case 3:return c(_,w,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(e,t){"use strict";function r(){function i(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=p,u=b*p;dS-w?i(c,h,v,p,T,l,_,w,S,E,m):n(c,h,v,p,T,l,_,w,S,E,m)}return s}function o(){function i(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;Fb-m?l?i(v,p,T,_,w,S,E,m,b,d,u):n(v,p,T,_,w,S,E,m,b,d,u):l?s(v,p,T,_,w,S,E,m,b,d,u):c(v,p,T,_,w,S,E,m,b,d,u)}return h}function a(i){return i?r():o()}t.partial=a(!1),t.full=a(!0)},7150:function(e,t,r){"use strict";e.exports=O;var o=r(1888),a=r(8828),i=r(2455),n=i.partial,s=i.full,c=r(855),h=r(3545),v=r(8105),p=128,T=1<<22,l=1<<22,_=v("!(lo>=p0)&&!(p1>=hi)"),w=v("lo===p0"),S=v("lo0;){$-=1;var re=$*d,ne=f[re],j=f[re+1],ee=f[re+2],ie=f[re+3],fe=f[re+4],be=f[re+5],Ae=$*u,Be=P[Ae],Ie=P[Ae+1],Ze=be&1,at=!!(be&16),it=Q,et=ue,lt=he,Me=G;if(Ze&&(it=he,et=G,lt=Q,Me=ue),!(be&2&&(ee=S(I,ne,j,ee,it,et,Ie),j>=ee))&&!(be&4&&(j=E(I,ne,j,ee,it,et,Be),j>=ee))){var ge=ee-j,ce=fe-ie;if(at){if(I*ge*(ge+ce)v&&T[b+h]>E;--m,b-=_){for(var d=b,u=b+_,y=0;y<_;++y,++d,++u){var f=T[d];T[d]=T[u],T[u]=f}var P=l[m];l[m]=l[m-1],l[m-1]=P}}function s(c,h,v,p,T,l){if(p<=v+1)return v;for(var _=v,w=p,S=p+v>>>1,E=2*c,m=S,b=T[E*S+h];_=P?(m=f,b=P):y>=z?(m=u,b=y):(m=L,b=z):P>=z?(m=f,b=P):z>=y?(m=u,b=y):(m=L,b=z);for(var O=E*(w-1),I=E*m,F=0;F=p0)&&!(p1>=hi)":h};function r(v){return t[v]}function o(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P===S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function a(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(PL;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function i(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function n(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function s(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<=S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function c(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(Pz;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function h(v,p,T,l,_,w,S,E){for(var m=2*v,b=m*T,d=b,u=T,y=p,f=v+p,P=T;l>P;++P,b+=m){var L=_[b+y],z=_[b+f];if(!(L>=S)&&!(E>=z))if(u===P)u+=1,d+=m;else{for(var F=0;m>F;++F){var B=_[b+F];_[b+F]=_[d],_[d++]=B}var O=w[P];w[P]=w[u],w[u++]=O}}return u}},4192:function(e){"use strict";e.exports=r;var t=32;function r(p,T){T<=4*t?o(0,T-1,p):v(0,T-1,p)}function o(p,T,l){for(var _=2*(p+1),w=p+1;w<=T;++w){for(var S=l[_++],E=l[_++],m=w,b=_-2;m-- >p;){var d=l[b-2],u=l[b-1];if(dl[T+1]:!0}function h(p,T,l,_){p*=2;var w=_[p];return w>1,m=E-_,b=E+_,d=w,u=m,y=E,f=b,P=S,L=p+1,z=T-1,F=0;c(d,u,l)&&(F=d,d=u,u=F),c(f,P,l)&&(F=f,f=P,P=F),c(d,y,l)&&(F=d,d=y,y=F),c(u,y,l)&&(F=u,u=y,y=F),c(d,f,l)&&(F=d,d=f,f=F),c(y,f,l)&&(F=y,y=f,f=F),c(u,P,l)&&(F=u,u=P,P=F),c(u,y,l)&&(F=u,u=y,y=F),c(f,P,l)&&(F=f,f=P,P=F);for(var B=l[2*u],O=l[2*u+1],I=l[2*f],N=l[2*f+1],U=2*d,W=2*y,Q=2*P,ue=2*w,se=2*E,he=2*S,G=0;G<2;++G){var $=l[U+G],J=l[W+G],Z=l[Q+G];l[ue+G]=$,l[se+G]=J,l[he+G]=Z}i(m,p,l),i(b,T,l);for(var re=L;re<=z;++re)if(h(re,B,O,l))re!==L&&a(re,L,l),++L;else if(!h(re,I,N,l))for(;;)if(h(z,I,N,l)){h(z,B,O,l)?(n(re,L,z,l),++L,--z):(a(re,z,l),--z);break}else{if(--z>>1;i(_,J);for(var Z=0,re=0,se=0;se=n)ne=ne-n|0,S(v,p,re--,ne);else if(ne>=0)S(c,h,Z--,ne);else if(ne<=-n){ne=-ne-n|0;for(var j=0;j>>1;i(_,J);for(var Z=0,re=0,ne=0,se=0;se>1===_[2*se+3]>>1&&(ee=2,se+=1),j<0){for(var ie=-(j>>1)-1,fe=0;fe>1)-1;ee===0?S(c,h,Z--,ie):ee===1?S(v,p,re--,ie):ee===2&&S(T,l,ne--,ie)}}}function d(y,f,P,L,z,F,B,O,I,N,U,W){var Q=0,ue=2*y,se=f,he=f+y,G=1,$=1;L?$=n:G=n;for(var J=z;J>>1;i(_,j);for(var ee=0,J=0;J=n?(fe=!L,Z-=n):(fe=!!L,Z-=1),fe)E(c,h,ee++,Z);else{var be=W[Z],Ae=ue*Z,Be=U[Ae+f+1],Ie=U[Ae+f+1+y];e:for(var Ze=0;Ze>>1;i(_,Z);for(var re=0,he=0;he=n)c[re++]=G-n;else{G-=1;var j=U[G],ee=Q*G,ie=N[ee+f+1],fe=N[ee+f+1+y];e:for(var be=0;be=0;--be)if(c[be]===G){for(var Ze=be+1;Ze0;){for(var w=h.pop(),T=h.pop(),S=-1,E=-1,l=p[T],b=1;b=0||(c.flip(T,w),i(s,c,h,S,T,E),i(s,c,h,T,E,S),i(s,c,h,E,w,S),i(s,c,h,w,S,E))}}},5023:function(e,t,r){"use strict";var o=r(2478);e.exports=h;function a(v,p,T,l,_,w,S){this.cells=v,this.neighbor=p,this.flags=l,this.constraint=T,this.active=_,this.next=w,this.boundary=S}var i=a.prototype;function n(v,p){return v[0]-p[0]||v[1]-p[1]||v[2]-p[2]}i.locate=function(){var v=[0,0,0];return function(p,T,l){var _=p,w=T,S=l;return T0||S.length>0;){for(;w.length>0;){var u=w.pop();if(E[u]!==-_){E[u]=_;for(var y=m[u],f=0;f<3;++f){var P=d[3*u+f];P>=0&&E[P]===0&&(b[3*u+f]?S.push(P):(w.push(P),E[P]=_))}}}var L=S;S=w,w=L,S.length=0,_=-_}var z=c(m,E,p);return T?z.concat(l.boundary):z}},8902:function(e,t,r){"use strict";var o=r(2478),a=r(3250)[3],i=0,n=1,s=2;e.exports=S;function c(E,m,b,d,u){this.a=E,this.b=m,this.idx=b,this.lowerIds=d,this.upperIds=u}function h(E,m,b,d){this.a=E,this.b=m,this.type=b,this.idx=d}function v(E,m){var b=E.a[0]-m.a[0]||E.a[1]-m.a[1]||E.type-m.type;return b||E.type!==i&&(b=a(E.a,E.b,m.b),b)?b:E.idx-m.idx}function p(E,m){return a(E.a,E.b,m)}function T(E,m,b,d,u){for(var y=o.lt(m,d,p),f=o.gt(m,d,p),P=y;P1&&a(b[z[B-2]],b[z[B-1]],d)>0;)E.push([z[B-1],z[B-2],u]),B-=1;z.length=B,z.push(u);for(var F=L.upperIds,B=F.length;B>1&&a(b[F[B-2]],b[F[B-1]],d)<0;)E.push([F[B-2],F[B-1],u]),B-=1;F.length=B,F.push(u)}}function l(E,m){var b;return E.a[0]L[0]&&u.push(new h(L,P,s,y),new h(P,L,n,y))}u.sort(v);for(var z=u[0].a[0]-(1+Math.abs(u[0].a[0]))*Math.pow(2,-52),F=[new c([z,1],[z,0],-1,[],[],[],[])],B=[],y=0,O=u.length;y=0}}(),i.removeTriangle=function(c,h,v){var p=this.stars;n(p[c],h,v),n(p[h],v,c),n(p[v],c,h)},i.addTriangle=function(c,h,v){var p=this.stars;p[c].push(h,v),p[h].push(v,c),p[v].push(c,h)},i.opposite=function(c,h){for(var v=this.stars[h],p=1,T=v.length;p=0;--I){var $=B[I];N=$[0];var J=z[N],Z=J[0],re=J[1],ne=L[Z],j=L[re];if((ne[0]-j[0]||ne[1]-j[1])<0){var ee=Z;Z=re,re=ee}J[0]=Z;var ie=J[1]=$[1],fe;for(O&&(fe=J[2]);I>0&&B[I-1][0]===N;){var $=B[--I],be=$[1];O?z.push([ie,be,fe]):z.push([ie,be]),ie=be}O?z.push([ie,re,fe]):z.push([ie,re])}return U}function m(L,z,F){for(var B=z.length,O=new o(B),I=[],N=0;Nz[2]?1:0)}function u(L,z,F){if(L.length!==0){if(z)for(var B=0;B0||N.length>0}function P(L,z,F){var B;if(F){B=z;for(var O=new Array(z.length),I=0;IE+1)throw new Error(w+" map requires nshades to be at least size "+_.length);Array.isArray(h.alpha)?h.alpha.length!==2?m=[1,1]:m=h.alpha.slice():typeof h.alpha=="number"?m=[h.alpha,h.alpha]:m=[1,1],v=_.map(function(P){return Math.round(P.index*E)}),m[0]=Math.min(Math.max(m[0],0),1),m[1]=Math.min(Math.max(m[1],0),1);var d=_.map(function(P,L){var z=_[L].index,F=_[L].rgb.slice();return F.length===4&&F[3]>=0&&F[3]<=1||(F[3]=m[0]+(m[1]-m[0])*z),F}),u=[];for(b=0;b=0}function h(v,p,T,l){var _=o(p,T,l);if(_===0){var w=a(o(v,p,T)),S=a(o(v,p,l));if(w===S){if(w===0){var E=c(v,p,T),m=c(v,p,l);return E===m?0:E?1:-1}return 0}else{if(S===0)return w>0||c(v,p,l)?-1:1;if(w===0)return S>0||c(v,p,T)?1:-1}return a(S-w)}var b=o(v,p,T);if(b>0)return _>0&&o(v,p,l)>0?1:-1;if(b<0)return _>0||o(v,p,l)>0?1:-1;var d=o(v,p,l);return d>0||c(v,p,T)?1:-1}},8572:function(e){"use strict";e.exports=function(r){return r<0?-1:r>0?1:0}},8507:function(e){e.exports=o;var t=Math.min;function r(a,i){return a-i}function o(a,i){var n=a.length,s=a.length-i.length;if(s)return s;switch(n){case 0:return 0;case 1:return a[0]-i[0];case 2:return a[0]+a[1]-i[0]-i[1]||t(a[0],a[1])-t(i[0],i[1]);case 3:var c=a[0]+a[1],h=i[0]+i[1];if(s=c+a[2]-(h+i[2]),s)return s;var v=t(a[0],a[1]),p=t(i[0],i[1]);return t(v,a[2])-t(p,i[2])||t(v+a[2],c)-t(p+i[2],h);case 4:var T=a[0],l=a[1],_=a[2],w=a[3],S=i[0],E=i[1],m=i[2],b=i[3];return T+l+_+w-(S+E+m+b)||t(T,l,_,w)-t(S,E,m,b,S)||t(T+l,T+_,T+w,l+_,l+w,_+w)-t(S+E,S+m,S+b,E+m,E+b,m+b)||t(T+l+_,T+l+w,T+_+w,l+_+w)-t(S+E+m,S+E+b,S+m+b,E+m+b);default:for(var d=a.slice().sort(r),u=i.slice().sort(r),y=0;yr[a][0]&&(a=i);return oa?[[a],[o]]:[[o]]}},4750:function(e,t,r){"use strict";e.exports=a;var o=r(3090);function a(i){var n=o(i),s=n.length;if(s<=2)return[];for(var c=new Array(s),h=n[s-1],v=0;v=h[S]&&(w+=1);l[_]=w}}return c}function s(c,h){try{return o(c,!0)}catch{var v=a(c);if(v.length<=h)return[];var p=i(c,v),T=o(p,!0);return n(T,v)}}},4769:function(e){"use strict";function t(o,a,i,n,s,c){var h=6*s*s-6*s,v=3*s*s-4*s+1,p=-6*s*s+6*s,T=3*s*s-2*s;if(o.length){c||(c=new Array(o.length));for(var l=o.length-1;l>=0;--l)c[l]=h*o[l]+v*a[l]+p*i[l]+T*n[l];return c}return h*o+v*a+p*i[l]+T*n}function r(o,a,i,n,s,c){var h=s-1,v=s*s,p=h*h,T=(1+2*s)*p,l=s*p,_=v*(3-2*s),w=v*h;if(o.length){c||(c=new Array(o.length));for(var S=o.length-1;S>=0;--S)c[S]=T*o[S]+l*a[S]+_*i[S]+w*n[S];return c}return T*o+l*a+_*i+w*n}e.exports=r,e.exports.derivative=t},7642:function(e,t,r){"use strict";var o=r(8954),a=r(1682);e.exports=c;function i(h,v){this.point=h,this.index=v}function n(h,v){for(var p=h.point,T=v.point,l=p.length,_=0;_=2)return!1;F[O]=I}return!0}):z=z.filter(function(F){for(var B=0;B<=T;++B){var O=y[F[B]];if(O<0)return!1;F[B]=O}return!0}),T&1)for(var w=0;w>>31},e.exports.exponent=function(_){var w=e.exports.hi(_);return(w<<1>>>21)-1023},e.exports.fraction=function(_){var w=e.exports.lo(_),S=e.exports.hi(_),E=S&(1<<20)-1;return S&2146435072&&(E+=1048576),[w,E]},e.exports.denormalized=function(_){var w=e.exports.hi(_);return!(w&2146435072)}},1338:function(e){"use strict";function t(a,i,n){var s=a[n]|0;if(s<=0)return[];var c=new Array(s),h;if(n===a.length-1)for(h=0;h"u"&&(i=0),typeof a){case"number":if(a>0)return r(a|0,i);break;case"object":if(typeof a.length=="number")return t(a,i,0);break}return[]}e.exports=o},3134:function(e,t,r){"use strict";e.exports=a;var o=r(1682);function a(i,n){var s=i.length;if(typeof n!="number"){n=0;for(var c=0;c=T-1)for(var b=w.length-1,u=v-p[T-1],d=0;d=T-1)for(var m=w.length-1,b=v-p[T-1],d=0;d=0;--T)if(v[--p])return!1;return!0},s.jump=function(v){var p=this.lastT(),T=this.dimension;if(!(v0;--d)l.push(i(E[d-1],m[d-1],arguments[d])),_.push(0)}},s.push=function(v){var p=this.lastT(),T=this.dimension;if(!(v1e-6?1/S:0;this._time.push(v);for(var u=T;u>0;--u){var y=i(m[u-1],b[u-1],arguments[u]);l.push(y),_.push((y-l[w++])*d)}}},s.set=function(v){var p=this.dimension;if(!(v0;--E)T.push(i(w[E-1],S[E-1],arguments[E])),l.push(0)}},s.move=function(v){var p=this.lastT(),T=this.dimension;if(!(v<=p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1],b=v-p,d=b>1e-6?1/b:0;this._time.push(v);for(var u=T;u>0;--u){var y=arguments[u];l.push(i(E[u-1],m[u-1],l[w++]+y)),_.push(y*d)}}},s.idle=function(v){var p=this.lastT();if(!(v=0;--d)l.push(i(E[d],m[d],l[w]+b*_[w])),_.push(0),w+=1}};function c(v){for(var p=new Array(v),T=0;T=0;--L){var u=y[L];f[L]<=0?y[L]=new o(u._color,u.key,u.value,y[L+1],u.right,u._count+1):y[L]=new o(u._color,u.key,u.value,u.left,y[L+1],u._count+1)}for(var L=y.length-1;L>1;--L){var z=y[L-1],u=y[L];if(z._color===r||u._color===r)break;var F=y[L-2];if(F.left===z)if(z.left===u){var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.left=z.right,z._color=r,z.right=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.left===F?O.left=z:O.right=z}break}}else{var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(z.right=u.left,F._color=t,F.left=u.right,u._color=r,u.left=z,u.right=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.left===F?O.left=u:O.right=u}break}}else if(z.right===u){var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.right=z.left,z._color=r,z.left=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.right===F?O.right=z:O.left=z}break}}else{var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(z.left=u.right,F._color=t,F.right=u.left,u._color=r,u.right=z,u.left=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.right===F?O.right=u:O.left=u}break}}}return y[0]._color=r,new s(d,y[0])};function h(m,b){if(b.left){var d=h(m,b.left);if(d)return d}var d=m(b.key,b.value);if(d)return d;if(b.right)return h(m,b.right)}function v(m,b,d,u){var y=b(m,u.key);if(y<=0){if(u.left){var f=v(m,b,d,u.left);if(f)return f}var f=d(u.key,u.value);if(f)return f}if(u.right)return v(m,b,d,u.right)}function p(m,b,d,u,y){var f=d(m,y.key),P=d(b,y.key),L;if(f<=0&&(y.left&&(L=p(m,b,d,u,y.left),L)||P>0&&(L=u(y.key,y.value),L)))return L;if(P>0&&y.right)return p(m,b,d,u,y.right)}c.forEach=function(b,d,u){if(this.root)switch(arguments.length){case 1:return h(b,this.root);case 2:return v(d,this._compare,b,this.root);case 3:return this._compare(d,u)>=0?void 0:p(d,u,this._compare,b,this.root)}},Object.defineProperty(c,"begin",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.left;return new T(this,m)}}),Object.defineProperty(c,"end",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.right;return new T(this,m)}}),c.at=function(m){if(m<0)return new T(this,[]);for(var b=this.root,d=[];;){if(d.push(b),b.left){if(m=b.right._count)break;b=b.right}else break}return new T(this,[])},c.ge=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<=0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.gt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.lt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.le=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>=0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.find=function(m){for(var b=this._compare,d=this.root,u=[];d;){var y=b(m,d.key);if(u.push(d),y===0)return new T(this,u);y<=0?d=d.left:d=d.right}return new T(this,[])},c.remove=function(m){var b=this.find(m);return b?b.remove():this},c.get=function(m){for(var b=this._compare,d=this.root;d;){var u=b(m,d.key);if(u===0)return d.value;u<=0?d=d.left:d=d.right}};function T(m,b){this.tree=m,this._stack=b}var l=T.prototype;Object.defineProperty(l,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(l,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),l.clone=function(){return new T(this.tree,this._stack.slice())};function _(m,b){m.key=b.key,m.value=b.value,m.left=b.left,m.right=b.right,m._color=b._color,m._count=b._count}function w(m){for(var b,d,u,y,f=m.length-1;f>=0;--f){if(b=m[f],f===0){b._color=r;return}if(d=m[f-1],d.left===b){if(u=d.right,u.right&&u.right._color===t){if(u=d.right=a(u),y=u.right=a(u.right),d.right=u.left,u.left=d,u.right=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u;return}else if(u.left&&u.left._color===t){if(u=d.right=a(u),y=u.left=a(u.left),d.right=y.left,u.left=y.right,y.left=d,y.right=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.left===d?P.left=y:P.right=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.right=i(t,u);return}else{d.right=i(t,u);continue}else{if(u=a(u),d.right=u.left,u.left=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u,m[f]=d,f+11){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u;return}else if(u.right&&u.right._color===t){if(u=d.left=a(u),y=u.right=a(u.right),d.left=y.right,u.right=y.left,y.right=d,y.left=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.right===d?P.right=y:P.left=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.left=i(t,u);return}else{d.left=i(t,u);continue}else{if(u=a(u),d.left=u.right,u.right=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u,m[f]=d,f+1=0;--u){var d=m[u];d.left===m[u+1]?b[u]=new o(d._color,d.key,d.value,b[u+1],d.right,d._count):b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count)}if(d=b[b.length-1],d.left&&d.right){var y=b.length;for(d=d.left;d.right;)b.push(d),d=d.right;var f=b[y-1];b.push(new o(d._color,f.key,f.value,d.left,d.right,d._count)),b[y-1].key=d.key,b[y-1].value=d.value;for(var u=b.length-2;u>=y;--u)d=b[u],b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count);b[y-1].left=b[y]}if(d=b[b.length-1],d._color===t){var P=b[b.length-2];P.left===d?P.left=null:P.right===d&&(P.right=null),b.pop();for(var u=0;u0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(l,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(l,"index",{get:function(){var m=0,b=this._stack;if(b.length===0){var d=this.tree.root;return d?d._count:0}else b[b.length-1].left&&(m=b[b.length-1].left._count);for(var u=b.length-2;u>=0;--u)b[u+1]===b[u].right&&(++m,b[u].left&&(m+=b[u].left._count));return m},enumerable:!0}),l.next=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.right)for(b=b.right;b;)m.push(b),b=b.left;else for(m.pop();m.length>0&&m[m.length-1].right===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasNext",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].right)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].left===m[b])return!0;return!1}}),l.update=function(m){var b=this._stack;if(b.length===0)throw new Error("Can't update empty node!");var d=new Array(b.length),u=b[b.length-1];d[d.length-1]=new o(u._color,u.key,m,u.left,u.right,u._count);for(var y=b.length-2;y>=0;--y)u=b[y],u.left===b[y+1]?d[y]=new o(u._color,u.key,u.value,d[y+1],u.right,u._count):d[y]=new o(u._color,u.key,u.value,u.left,d[y+1],u._count);return new s(this.tree._compare,d[0])},l.prev=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.left)for(b=b.left;b;)m.push(b),b=b.right;else for(m.pop();m.length>0&&m[m.length-1].left===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasPrev",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].left)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].right===m[b])return!0;return!1}});function S(m,b){return mb?1:0}function E(m){return new s(m||S,null)}},3837:function(e,t,r){"use strict";e.exports=L;var o=r(4935),a=r(501),i=r(5304),n=r(6429),s=r(6444),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=ArrayBuffer,v=DataView;function p(z){return h.isView(z)&&!(z instanceof v)}function T(z){return Array.isArray(z)||p(z)}function l(z,F){return z[0]=F[0],z[1]=F[1],z[2]=F[2],z}function _(z){this.gl=z,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=i(z)}var w=_.prototype;w.update=function(z){z=z||{};function F(Z,re,ne){if(ne in z){var j=z[ne],ee=this[ne],ie;(Z?T(j)&&T(j[0]):T(j))?this[ne]=ie=[re(j[0]),re(j[1]),re(j[2])]:this[ne]=ie=[re(j),re(j),re(j)];for(var fe=0;fe<3;++fe)if(ie[fe]!==ee[fe])return!0}return!1}var B=F.bind(this,!1,Number),O=F.bind(this,!1,Boolean),I=F.bind(this,!1,String),N=F.bind(this,!0,function(Z){if(T(Z)){if(Z.length===3)return[+Z[0],+Z[1],+Z[2],1];if(Z.length===4)return[+Z[0],+Z[1],+Z[2],+Z[3]]}return[0,0,0,1]}),U,W=!1,Q=!1;if("bounds"in z)for(var ue=z.bounds,se=0;se<2;++se)for(var he=0;he<3;++he)ue[se][he]!==this.bounds[se][he]&&(Q=!0),this.bounds[se][he]=ue[se][he];if("ticks"in z){U=z.ticks,W=!0,this.autoTicks=!1;for(var se=0;se<3;++se)this.tickSpacing[se]=0}else B("tickSpacing")&&(this.autoTicks=!0,Q=!0);if(this._firstInit&&("ticks"in z||"tickSpacing"in z||(this.autoTicks=!0),Q=!0,W=!0,this._firstInit=!1),Q&&this.autoTicks&&(U=s.create(this.bounds,this.tickSpacing),W=!0),W){for(var se=0;se<3;++se)U[se].sort(function(re,ne){return re.x-ne.x});s.equal(U,this.ticks)?W=!1:this.ticks=U}O("tickEnable"),I("tickFont")&&(W=!0),I("tickFontStyle")&&(W=!0),I("tickFontWeight")&&(W=!0),I("tickFontVariant")&&(W=!0),B("tickSize"),B("tickAngle"),B("tickPad"),N("tickColor");var G=I("labels");I("labelFont")&&(G=!0),I("labelFontStyle")&&(G=!0),I("labelFontWeight")&&(G=!0),I("labelFontVariant")&&(G=!0),O("labelEnable"),B("labelSize"),B("labelPad"),N("labelColor"),O("lineEnable"),O("lineMirror"),B("lineWidth"),N("lineColor"),O("lineTickEnable"),O("lineTickMirror"),B("lineTickLength"),B("lineTickWidth"),N("lineTickColor"),O("gridEnable"),B("gridWidth"),N("gridColor"),O("zeroEnable"),N("zeroLineColor"),B("zeroLineWidth"),O("backgroundEnable"),N("backgroundColor");var $=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],J=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(G||W)&&this._text.update(this.bounds,this.labels,$,this.ticks,J):this._text=o(this.gl,this.bounds,this.labels,$,this.ticks,J),this._lines&&W&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=a(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var E=[new S,new S,new S];function m(z,F,B,O,I){for(var N=z.primalOffset,U=z.primalMinor,W=z.mirrorOffset,Q=z.mirrorMinor,ue=O[F],se=0;se<3;++se)if(F!==se){var he=N,G=W,$=U,J=Q;ue&1<0?($[se]=-1,J[se]=0):($[se]=0,J[se]=1)}}var b=[0,0,0],d={model:c,view:c,projection:c,_ortho:!1};w.isOpaque=function(){return!0},w.isTransparent=function(){return!1},w.drawTransparent=function(z){};var u=0,y=[0,0,0],f=[0,0,0],P=[0,0,0];w.draw=function(z){z=z||d;for(var ne=this.gl,F=z.model||c,B=z.view||c,O=z.projection||c,I=this.bounds,N=z._ortho||!1,U=n(F,B,O,I,N),W=U.cubeEdges,Q=U.axis,ue=B[12],se=B[13],he=B[14],G=B[15],$=N?2:1,J=$*this.pixelRatio*(O[3]*ue+O[7]*se+O[11]*he+O[15]*G)/ne.drawingBufferHeight,Z=0;Z<3;++Z)this.lastCubeProps.cubeEdges[Z]=W[Z],this.lastCubeProps.axis[Z]=Q[Z];for(var re=E,Z=0;Z<3;++Z)m(E[Z],Z,this.bounds,W,Q);for(var ne=this.gl,j=b,Z=0;Z<3;++Z)this.backgroundEnable[Z]?j[Z]=Q[Z]:j[Z]=0;this._background.draw(F,B,O,I,j,this.backgroundColor),this._lines.bind(F,B,O,this);for(var Z=0;Z<3;++Z){var ee=[0,0,0];Q[Z]>0?ee[Z]=I[1][Z]:ee[Z]=I[0][Z];for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.gridEnable[fe]&&this._lines.drawGrid(fe,be,this.bounds,ee,this.gridColor[fe],this.gridWidth[fe]*this.pixelRatio)}for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.zeroEnable[be]&&Math.min(I[0][be],I[1][be])<=0&&Math.max(I[0][be],I[1][be])>=0&&this._lines.drawZero(fe,be,this.bounds,ee,this.zeroLineColor[be],this.zeroLineWidth[be]*this.pixelRatio)}}for(var Z=0;Z<3;++Z){this.lineEnable[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].primalOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio),this.lineMirror[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].mirrorOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio);for(var Ae=l(y,re[Z].primalMinor),Be=l(f,re[Z].mirrorMinor),Ie=this.lineTickLength,ie=0;ie<3;++ie){var Ze=J/F[5*ie];Ae[ie]*=Ie[ie]*Ze,Be[ie]*=Ie[ie]*Ze}this.lineTickEnable[Z]&&this._lines.drawAxisTicks(Z,re[Z].primalOffset,Ae,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio),this.lineTickMirror[Z]&&this._lines.drawAxisTicks(Z,re[Z].mirrorOffset,Be,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio)}this._lines.unbind(),this._text.bind(F,B,O,this.pixelRatio);var at,it=.5,et,lt;function Me(Qe){lt=[0,0,0],lt[Qe]=1}function ge(Qe,Ct,St){var Ot=(Qe+1)%3,jt=(Qe+2)%3,ur=Ct[Ot],ar=Ct[jt],Cr=St[Ot],vr=St[jt];if(ur>0&&vr>0){Me(Ot);return}else if(ur>0&&vr<0){Me(Ot);return}else if(ur<0&&vr>0){Me(Ot);return}else if(ur<0&&vr<0){Me(Ot);return}else if(ar>0&&Cr>0){Me(jt);return}else if(ar>0&&Cr<0){Me(jt);return}else if(ar<0&&Cr>0){Me(jt);return}else if(ar<0&&Cr<0){Me(jt);return}}for(var Z=0;Z<3;++Z){for(var ce=re[Z].primalMinor,ze=re[Z].mirrorMinor,tt=l(P,re[Z].primalOffset),ie=0;ie<3;++ie)this.lineTickEnable[Z]&&(tt[ie]+=J*ce[ie]*Math.max(this.lineTickLength[ie],0)/F[5*ie]);var nt=[0,0,0];if(nt[Z]=1,this.tickEnable[Z]){this.tickAngle[Z]===-3600?(this.tickAngle[Z]=0,this.tickAlign[Z]="auto"):this.tickAlign[Z]=-1,et=1,at=[this.tickAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]),lt=[0,0,0],ge(Z,ce,ze);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.tickPad[ie]/F[5*ie];this._text.drawTicks(Z,this.tickSize[Z],this.tickAngle[Z],tt,this.tickColor[Z],nt,lt,at)}if(this.labelEnable[Z]){et=0,lt=[0,0,0],this.labels[Z].length>4&&(Me(Z),et=1),at=[this.labelAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.labelPad[ie]/F[5*ie];tt[Z]+=.5*(I[0][Z]+I[1][Z]),this._text.drawLabel(Z,this.labelSize[Z],this.labelAngle[Z],tt,this.labelColor[Z],[0,0,0],lt,at)}}this._text.unbind()},w.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function L(z,F){var B=new _(z);return B.update(F),B}},5304:function(e,t,r){"use strict";e.exports=c;var o=r(2762),a=r(8116),i=r(1879).bg;function n(h,v,p,T){this.gl=h,this.buffer=v,this.vao=p,this.shader=T}var s=n.prototype;s.draw=function(h,v,p,T,l,_){for(var w=!1,S=0;S<3;++S)w=w||l[S];if(w){var E=this.gl;E.enable(E.POLYGON_OFFSET_FILL),E.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:h,view:v,projection:p,bounds:T,enable:l,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),E.disable(E.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function c(h){for(var v=[],p=[],T=0,l=0;l<3;++l)for(var _=(l+1)%3,w=(l+2)%3,S=[0,0,0],E=[0,0,0],m=-1;m<=1;m+=2){p.push(T,T+2,T+1,T+1,T+2,T+3),S[l]=m,E[l]=m;for(var b=-1;b<=1;b+=2){S[_]=b;for(var d=-1;d<=1;d+=2)S[w]=d,v.push(S[0],S[1],S[2],E[0],E[1],E[2]),T+=1}var u=_;_=w,w=u}var y=o(h,new Float32Array(v)),f=o(h,new Uint16Array(p),h.ELEMENT_ARRAY_BUFFER),P=a(h,[{buffer:y,type:h.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:h.FLOAT,size:3,offset:12,stride:24}],f),L=i(h);return L.attributes.position.location=0,L.attributes.normal.location=1,new n(h,y,P,L)}},6429:function(e,t,r){"use strict";e.exports=m;var o=r(8828),a=r(6760),i=r(5202),n=r(3250),s=new Array(16),c=new Array(8),h=new Array(8),v=new Array(3),p=[0,0,0];(function(){for(var b=0;b<8;++b)c[b]=[1,1,1,1],h[b]=[1,1,1]})();function T(b,d,u){for(var y=0;y<4;++y){b[y]=u[12+y];for(var f=0;f<3;++f)b[y]+=d[f]*u[4*f+y]}}var l=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function _(b){for(var d=0;dQ&&(B|=1<Q){B|=1<h[L][1])&&(re=L);for(var ne=-1,L=0;L<3;++L){var j=re^1<h[ee][0]&&(ee=j)}}var ie=w;ie[0]=ie[1]=ie[2]=0,ie[o.log2(ne^re)]=re&ne,ie[o.log2(re^ee)]=reⅇvar fe=ee^7;fe===B||fe===Z?(fe=ne^7,ie[o.log2(ee^fe)]=fe&ee):ie[o.log2(ne^fe)]=fe≠for(var be=S,Ae=B,N=0;N<3;++N)Ae&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ? + b - PI : + b; +} + +float look_horizontal_or_vertical(float a, float ratio) { + // ratio controls the ratio between being horizontal to (vertical + horizontal) + // if ratio is set to 0.5 then it is 50%, 50%. + // when using a higher ratio e.g. 0.75 the result would + // likely be more horizontal than vertical. + + float b = positive_angle(a); + + return + (b < ( ratio) * HALF_PI) ? 0.0 : + (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI : + (b < (2.0 + ratio) * HALF_PI) ? 0.0 : + (b < (4.0 - ratio) * HALF_PI) ? HALF_PI : + 0.0; +} + +float roundTo(float a, float b) { + return float(b * floor((a + 0.5 * b) / b)); +} + +float look_round_n_directions(float a, int n) { + float b = positive_angle(a); + float div = TWO_PI / float(n); + float c = roundTo(b, div); + return look_upwards(c); +} + +float applyAlignOption(float rawAngle, float delta) { + return + (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions + (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical + (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis + (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards + (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal + rawAngle; // otherwise return back raw input angle +} + +bool isAxisTitle = (axis.x == 0.0) && + (axis.y == 0.0) && + (axis.z == 0.0); + +void main() { + //Compute world offset + float axisDistance = position.z; + vec3 dataPosition = axisDistance * axis + offset; + + float beta = angle; // i.e. user defined attributes for each tick + + float axisAngle; + float clipAngle; + float flip; + + if (enableAlign) { + axisAngle = (isAxisTitle) ? HALF_PI : + computeViewAngle(dataPosition, dataPosition + axis); + clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir); + + axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0; + clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0; + + flip = (dot(vec2(cos(axisAngle), sin(axisAngle)), + vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0; + + beta += applyAlignOption(clipAngle, flip * PI); + } + + //Compute plane offset + vec2 planeCoord = position.xy * pixelScale; + + mat2 planeXform = scale * mat2( + cos(beta), sin(beta), + -sin(beta), cos(beta) + ); + + vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution; + + //Compute clip position + vec3 clipPosition = project(dataPosition); + + //Apply text offset in clip coordinates + clipPosition += vec3(viewOffset, 0.0); + + //Done + gl_Position = vec4(clipPosition, 1.0); +} +`]),c=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 color; +void main() { + gl_FragColor = color; +}`]);t.Q=function(p){return a(p,s,c,null,[{name:"position",type:"vec3"}])};var h=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec3 normal; + +uniform mat4 model, view, projection; +uniform vec3 enable; +uniform vec3 bounds[2]; + +varying vec3 colorChannel; + +void main() { + + vec3 signAxis = sign(bounds[1] - bounds[0]); + + vec3 realNormal = signAxis * normal; + + if(dot(realNormal, enable) > 0.0) { + vec3 minRange = min(bounds[0], bounds[1]); + vec3 maxRange = max(bounds[0], bounds[1]); + vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0)); + gl_Position = projection * (view * (model * vec4(nPosition, 1.0))); + } else { + gl_Position = vec4(0,0,0,0); + } + + colorChannel = abs(realNormal); +} +`]),v=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 colors[3]; + +varying vec3 colorChannel; + +void main() { + gl_FragColor = colorChannel.x * colors[0] + + colorChannel.y * colors[1] + + colorChannel.z * colors[2]; +}`]);t.bg=function(p){return a(p,h,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(e,t,r){"use strict";e.exports=_;var o=r(2762),a=r(8116),i=r(4359),n=r(1879).Q,s=window||process.global||{},c=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};var h=3;function v(w,S,E,m){this.gl=w,this.shader=S,this.buffer=E,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var p=v.prototype,T=[0,0];p.bind=function(w,S,E,m){this.vao.bind(),this.shader.bind();var b=this.shader.uniforms;b.model=w,b.view=S,b.projection=E,b.pixelScale=m,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},p.unbind=function(){this.vao.unbind()},p.update=function(w,S,E,m,b){var d=[];function u(N,U,W,Q,ue,se){var he=[W.style,W.weight,W.variant,W.family].join("_"),G=c[he];G||(G=c[he]={});var $=G[U];$||($=G[U]=l(U,{triangles:!0,font:W.family,fontStyle:W.style,fontWeight:W.weight,fontVariant:W.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ue,styletags:se}));for(var J=(Q||12)/12,Z=$.positions,re=$.cells,ne=0,j=re.length;ne=0;--ie){var fe=Z[ee[ie]];d.push(J*fe[0],-J*fe[1],N)}}for(var y=[0,0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0],z=1.25,F={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},B=0;B<3;++B){P[B]=d.length/h|0,u(.5*(w[0][B]+w[1][B]),S[B],E[B],12,z,F),L[B]=(d.length/h|0)-P[B],y[B]=d.length/h|0;for(var O=0;O=0&&(h=s.length-c-1);var v=Math.pow(10,h),p=Math.round(i*n*v),T=p+"";if(T.indexOf("e")>=0)return T;var l=p/v,_=p%v;p<0?(l=-Math.ceil(l)|0,_=-_|0):(l=Math.floor(l)|0,_=_|0);var w=""+l;if(p<0&&(w="-"+w),h){for(var S=""+_;S.length=i[0][c];--p)h.push({x:p*n[c],text:r(n[c],p)});s.push(h)}return s}function a(i,n){for(var s=0;s<3;++s){if(i[s].length!==n[s].length)return!1;for(var c=0;cw)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return l.bufferSubData(_,m,E),w}function v(l,_){for(var w=o.malloc(l.length,_),S=l.length,E=0;E=0;--S){if(_[S]!==w)return!1;w*=l[S]}return!0}c.update=function(l,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof l=="object"&&typeof l.shape<"u"){var w=l.dtype;if(n.indexOf(w)<0&&(w="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&w!=="uint16"?w="uint32":w="uint16"}if(w===l.dtype&&p(l.shape,l.stride))l.offset===0&&l.data.length===l.shape[0]?this.length=h(this.gl,this.type,this.length,this.usage,l.data,_):this.length=h(this.gl,this.type,this.length,this.usage,l.data.subarray(l.offset,l.shape[0]),_);else{var E=o.malloc(l.size,w),m=i(E,l.shape);a.assign(m,l),_<0?this.length=h(this.gl,this.type,this.length,this.usage,E,_):this.length=h(this.gl,this.type,this.length,this.usage,E.subarray(0,l.size),_),o.free(E)}}else if(Array.isArray(l)){var b;this.type===this.gl.ELEMENT_ARRAY_BUFFER?b=v(l,"uint16"):b=v(l,"float32"),_<0?this.length=h(this.gl,this.type,this.length,this.usage,b,_):this.length=h(this.gl,this.type,this.length,this.usage,b.subarray(0,l.length),_),o.free(b)}else if(typeof l=="object"&&typeof l.length=="number")this.length=h(this.gl,this.type,this.length,this.usage,l,_);else if(typeof l=="number"||l===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");l=l|0,l<=0&&(l=1),this.gl.bufferData(this.type,l|0,this.usage),this.length=l}else throw new Error("gl-buffer: Invalid data type")};function T(l,_,w,S){if(w=w||l.ARRAY_BUFFER,S=S||l.DYNAMIC_DRAW,w!==l.ARRAY_BUFFER&&w!==l.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==l.DYNAMIC_DRAW&&S!==l.STATIC_DRAW&&S!==l.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var E=l.createBuffer(),m=new s(l,w,E,0,S);return m.update(_),m}e.exports=T},6405:function(e,t,r){"use strict";var o=r(2931);e.exports=function(i,n){var s=i.positions,c=i.vectors,h={positions:[],vertexIntensity:[],vertexIntensityBounds:i.vertexIntensityBounds,vectors:[],cells:[],coneOffset:i.coneOffset,colormap:i.colormap};if(i.positions.length===0)return n&&(n[0]=[0,0,0],n[1]=[0,0,0]),h;for(var v=0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S=-1/0,E=null,m=null,b=[],d=1/0,u=!1,y=i.coneSizemode==="raw",f=0;fv&&(v=o.length(L)),f&&!y){var z=2*o.distance(E,P)/(o.length(m)+o.length(L));z?(d=Math.min(d,z),u=!1):u=!0}u||(E=P,m=L),b.push(L)}var F=[p,l,w],B=[T,_,S];n&&(n[0]=F,n[1]=B),v===0&&(v=1);var O=1/v;isFinite(d)||(d=1),h.vectorScale=d;var I=i.coneSize||(y?1:.5);i.absoluteConeSize&&(I=i.absoluteConeSize*O),h.coneScale=I;for(var f=0,N=0;f=1},l.isTransparent=function(){return this.opacity<1},l.pickSlots=1,l.setPickBase=function(b){this.pickId=b};function _(b){for(var d=v({colormap:b,nshades:256,format:"rgba"}),u=new Uint8Array(256*4),y=0;y<256;++y){for(var f=d[y],P=0;P<3;++P)u[4*y+P]=f[P];u[4*y+3]=f[3]*255}return h(u,[256,256,4],[4,0,1])}function w(b){for(var d=b.length,u=new Array(d),y=0;y0){var N=this.triShader;N.bind(),N.uniforms=z,this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},l.drawPick=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);this._model=[].slice.call(u),this._view=[].slice.call(y),this._projection=[].slice.call(f),this._resolution=[d.drawingBufferWidth,d.drawingBufferHeight];var z={model:u,view:y,projection:f,clipBounds:P,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},F=this.pickShader;F.bind(),F.uniforms=z,this.triangleCount>0&&(this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},l.pick=function(b){if(!b||b.id!==this.pickId)return null;var d=b.value[0]+256*b.value[1]+65536*b.value[2],u=this.cells[d],y=this.positions[u[1]].slice(0,3),f={position:y,dataCoordinate:y,index:Math.floor(u[1]/48)};return this.traceType==="cone"?f.index=Math.floor(u[1]/48):this.traceType==="streamtube"&&(f.intensity=this.intensity[u[1]],f.velocity=this.vectors[u[1]].slice(0,3),f.divergence=this.vectors[u[1]][3],f.index=d),f},l.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(b,d){var u=o(b,d.meshShader.vertex,d.meshShader.fragment,null,d.meshShader.attributes);return u.attributes.position.location=0,u.attributes.color.location=2,u.attributes.uv.location=3,u.attributes.vector.location=4,u}function E(b,d){var u=o(b,d.pickShader.vertex,d.pickShader.fragment,null,d.pickShader.attributes);return u.attributes.position.location=0,u.attributes.id.location=1,u.attributes.vector.location=4,u}function m(b,d,u){var y=u.shaders;arguments.length===1&&(d=b,b=d.gl);var f=S(b,y),P=E(b,y),L=n(b,h(new Uint8Array([255,255,255,255]),[1,1,4]));L.generateMipmap(),L.minFilter=b.LINEAR_MIPMAP_LINEAR,L.magFilter=b.LINEAR;var z=a(b),F=a(b),B=a(b),O=a(b),I=a(b),N=i(b,[{buffer:z,type:b.FLOAT,size:4},{buffer:I,type:b.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:B,type:b.FLOAT,size:4},{buffer:O,type:b.FLOAT,size:2},{buffer:F,type:b.FLOAT,size:4}]),U=new T(b,L,f,P,z,F,I,B,O,N,u.traceType||"cone");return U.update(d),U}e.exports=m},614:function(e,t,r){var o=r(3236),a=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec3 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, coneScale, coneOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * conePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(conePosition, 1.0); + vec4 t_position = view * conePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = conePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),i=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),n=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float vectorScale, coneScale, coneOffset; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + gl_Position = projection * (view * conePosition); + f_id = id; + f_position = position.xyz; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(e){e.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(e,t,r){var o=r(737);e.exports=function(i){return o[i]}},9165:function(e,t,r){"use strict";e.exports=T;var o=r(2762),a=r(8116),i=r(3436),n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.shader=S,this.buffer=_,this.vao=w,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var c=s.prototype;c.isOpaque=function(){return!this.hasAlpha},c.isTransparent=function(){return this.hasAlpha},c.drawTransparent=c.draw=function(l){var _=this.gl,w=this.shader.uniforms;this.shader.bind();var S=w.view=l.view||n,E=w.projection=l.projection||n;w.model=l.model||n,w.clipBounds=this.clipBounds,w.opacity=this.opacity;var m=S[12],b=S[13],d=S[14],u=S[15],y=l._ortho||!1,f=y?2:1,P=f*this.pixelRatio*(E[3]*m+E[7]*b+E[11]*d+E[15]*u)/_.drawingBufferHeight;this.vao.bind();for(var L=0;L<3;++L)_.lineWidth(this.lineWidth[L]*this.pixelRatio),w.capSize=this.capSize[L]*P,this.lineCount[L]&&_.drawArrays(_.LINES,this.lineOffset[L],this.lineCount[L]);this.vao.unbind()};function h(l,_){for(var w=0;w<3;++w)l[0][w]=Math.min(l[0][w],_[w]),l[1][w]=Math.max(l[1][w],_[w])}var v=function(){for(var l=new Array(3),_=0;_<3;++_){for(var w=[],S=1;S<=2;++S)for(var E=-1;E<=1;E+=2){var m=(S+_)%3,b=[0,0,0];b[m]=E,w.push(b)}l[_]=w}return l}();function p(l,_,w,S){for(var E=v[S],m=0;m0){var z=y.slice();z[d]+=P[1][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}}}this.lineCount[d]=b-this.lineOffset[d]}this.buffer.update(E)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(l){var _=l.gl,w=o(_),S=a(_,[{buffer:w,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:w,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:w,type:_.FLOAT,size:3,offset:28,stride:40}]),E=i(_);E.attributes.position.location=0,E.attributes.color.location=1,E.attributes.offset.location=2;var m=new s(_,w,S,E);return m.update(l),m}},3436:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, offset; +attribute vec4 color; +uniform mat4 model, view, projection; +uniform float capSize; +varying vec4 fragColor; +varying vec3 fragPosition; + +void main() { + vec4 worldPosition = model * vec4(position, 1.0); + worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0); + gl_Position = projection * (view * worldPosition); + fragColor = color; + fragPosition = position; +}`]),n=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float opacity; +varying vec3 fragPosition; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], fragPosition) || + fragColor.a * opacity == 0. + ) discard; + + gl_FragColor = opacity * fragColor; +}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(e,t,r){"use strict";var o=r(7766);e.exports=b;var a=null,i,n,s,c;function h(d){var u=d.getParameter(d.FRAMEBUFFER_BINDING),y=d.getParameter(d.RENDERBUFFER_BINDING),f=d.getParameter(d.TEXTURE_BINDING_2D);return[u,y,f]}function v(d,u){d.bindFramebuffer(d.FRAMEBUFFER,u[0]),d.bindRenderbuffer(d.RENDERBUFFER,u[1]),d.bindTexture(d.TEXTURE_2D,u[2])}function p(d,u){var y=d.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL);a=new Array(y+1);for(var f=0;f<=y;++f){for(var P=new Array(y),L=0;L1&&F.drawBuffersWEBGL(a[z]);var U=y.getExtension("WEBGL_depth_texture");U?B?d.depth=l(y,P,L,U.UNSIGNED_INT_24_8_WEBGL,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O&&(d.depth=l(y,P,L,y.UNSIGNED_SHORT,y.DEPTH_COMPONENT,y.DEPTH_ATTACHMENT)):O&&B?d._depth_rb=_(y,P,L,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O?d._depth_rb=_(y,P,L,y.DEPTH_COMPONENT16,y.DEPTH_ATTACHMENT):B&&(d._depth_rb=_(y,P,L,y.STENCIL_INDEX,y.STENCIL_ATTACHMENT));var W=y.checkFramebufferStatus(y.FRAMEBUFFER);if(W!==y.FRAMEBUFFER_COMPLETE){d._destroyed=!0,y.bindFramebuffer(y.FRAMEBUFFER,null),y.deleteFramebuffer(d.handle),d.handle=null,d.depth&&(d.depth.dispose(),d.depth=null),d._depth_rb&&(y.deleteRenderbuffer(d._depth_rb),d._depth_rb=null);for(var N=0;NP||y<0||y>P)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");d._shape[0]=u,d._shape[1]=y;for(var L=h(f),z=0;zL||y<0||y>L)throw new Error("gl-fbo: Parameters are too large for FBO");f=f||{};var z=1;if("color"in f){if(z=Math.max(f.color|0,0),z<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(z>1)if(P){if(z>d.getParameter(P.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+z+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var F=d.UNSIGNED_BYTE,B=d.getExtension("OES_texture_float");if(f.float&&z>0){if(!B)throw new Error("gl-fbo: Context does not support floating point textures");F=d.FLOAT}else f.preferFloat&&z>0&&B&&(F=d.FLOAT);var O=!0;"depth"in f&&(O=!!f.depth);var I=!1;return"stencil"in f&&(I=!!f.stencil),new S(d,u,y,F,z,O,I,P)}},2992:function(e,t,r){var o=r(3387).sprintf,a=r(5171),i=r(1848),n=r(1085);e.exports=s;function s(c,h,v){"use strict";var p=i(h)||"of unknown name (see npm glsl-shader-name)",T="unknown type";v!==void 0&&(T=v===a.FRAGMENT_SHADER?"fragment":"vertex");for(var l=o(`Error compiling %s shader %s: +`,T,p),_=o("%s%s",l,c),w=c.split(` +`),S={},E=0;E max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D dashTexture; +uniform float dashScale; +uniform float opacity; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], worldPosition) || + fragColor.a * opacity == 0. + ) discard; + + float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r; + if(dashWeight < 0.5) { + discard; + } + gl_FragColor = fragColor * opacity; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +#define FLOAT_MAX 1.70141184e38 +#define FLOAT_MIN 1.17549435e-38 + +// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl +vec4 packFloat(float v) { + float av = abs(v); + + //Handle special cases + if(av < FLOAT_MIN) { + return vec4(0.0, 0.0, 0.0, 0.0); + } else if(v > FLOAT_MAX) { + return vec4(127.0, 128.0, 0.0, 0.0) / 255.0; + } else if(v < -FLOAT_MAX) { + return vec4(255.0, 128.0, 0.0, 0.0) / 255.0; + } + + vec4 c = vec4(0,0,0,0); + + //Compute exponent and mantissa + float e = floor(log2(av)); + float m = av * pow(2.0, -e) - 1.0; + + //Unpack mantissa + c[1] = floor(128.0 * m); + m -= c[1] / 128.0; + c[2] = floor(32768.0 * m); + m -= c[2] / 32768.0; + c[3] = floor(8388608.0 * m); + + //Unpack exponent + float ebias = e + 127.0; + c[0] = floor(ebias / 2.0); + ebias -= c[0] * 2.0; + c[1] += floor(ebias) * 128.0; + + //Unpack sign bit + c[0] += 128.0 * step(0.0, -v); + + //Scale back to range + return c / 255.0; +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform float pickId; +uniform vec3 clipBounds[2]; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard; + + gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz); +}`]),c=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];t.createShader=function(h){return a(h,i,n,null,c)},t.createPickShader=function(h){return a(h,i,s,null,c)}},5714:function(e,t,r){"use strict";e.exports=d;var o=r(2762),a=r(8116),i=r(7766),n=new Uint8Array(4),s=new Float32Array(n.buffer);function c(u,y,f,P){return n[0]=P,n[1]=f,n[2]=y,n[3]=u,s[0]}var h=r(2478),v=r(9618),p=r(7319),T=p.createShader,l=p.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function w(u,y){for(var f=0,P=0;P<3;++P){var L=u[P]-y[P];f+=L*L}return Math.sqrt(f)}function S(u){for(var y=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],f=0;f<3;++f)y[0][f]=Math.max(u[0][f],y[0][f]),y[1][f]=Math.min(u[1][f],y[1][f]);return y}function E(u,y,f,P){this.arcLength=u,this.position=y,this.index=f,this.dataCoordinate=P}function m(u,y,f,P,L,z){this.gl=u,this.shader=y,this.pickShader=f,this.buffer=P,this.vao=L,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var b=m.prototype;b.isTransparent=function(){return this.hasAlpha},b.isOpaque=function(){return!this.hasAlpha},b.pickSlots=1,b.setPickBase=function(u){this.pickId=u},b.drawTransparent=b.draw=function(u){if(this.vertexCount){var y=this.gl,f=this.shader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,clipBounds:S(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.drawPick=function(u){if(this.vertexCount){var y=this.gl,f=this.pickShader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,pickId:this.pickId,clipBounds:S(this.clipBounds),screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.update=function(u){var y,f;this.dirty=!0;var P=!!u.connectGaps;"dashScale"in u&&(this.dashScale=u.dashScale),this.hasAlpha=!1,"opacity"in u&&(this.opacity=+u.opacity,this.opacity<1&&(this.hasAlpha=!0));var L=[],z=[],F=[],B=0,O=0,I=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],N=u.position||u.positions;if(N){var U=u.color||u.colors||[0,0,0,1],W=u.lineWidth||1,Q=!1;e:for(y=1;y0){for(var he=0;he<24;++he)L.push(L[L.length-12]);O+=2,Q=!0}continue e}I[0][f]=Math.min(I[0][f],ue[f],se[f]),I[1][f]=Math.max(I[1][f],ue[f],se[f])}var G,$;Array.isArray(U[0])?(G=U.length>y-1?U[y-1]:U.length>0?U[U.length-1]:[0,0,0,1],$=U.length>y?U[y]:U.length>0?U[U.length-1]:[0,0,0,1]):G=$=U,G.length===3&&(G=[G[0],G[1],G[2],1]),$.length===3&&($=[$[0],$[1],$[2],1]),!this.hasAlpha&&G[3]<1&&(this.hasAlpha=!0);var J;Array.isArray(W)?J=W.length>y-1?W[y-1]:W.length>0?W[W.length-1]:[0,0,0,1]:J=W;var Z=B;if(B+=w(ue,se),Q){for(f=0;f<2;++f)L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3]);O+=2,Q=!1}L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3],ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,-J,G[0],G[1],G[2],G[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,-J,$[0],$[1],$[2],$[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,J,$[0],$[1],$[2],$[3]),O+=4}}if(this.buffer.update(L),z.push(B),F.push(N[N.length-1].slice()),this.bounds=I,this.vertexCount=O,this.points=F,this.arcLength=z,"dashes"in u){var re=u.dashes,ne=re.slice();for(ne.unshift(0),y=1;y1.0001)return null;f+=y[E]}return Math.abs(f-1)>.001?null:[m,c(v,y),y]}},840:function(e,t,r){var o=r(3236),a=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, normal; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model + , view + , projection + , inverseModel; +uniform vec3 eyePosition + , lightPosition; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +vec4 project(vec3 p) { + return projection * (view * (model * vec4(p, 1.0))); +} + +void main() { + gl_Position = project(position); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * vec4(position , 1.0); + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + f_color = color; + f_data = position; + f_uv = uv; +} +`]),i=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness + , fresnel + , kambient + , kdiffuse + , kspecular; +uniform sampler2D texture; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (f_color.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], f_data) + ) discard; + + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d + + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * f_color.a; +} +`]),n=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model, view, projection; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_color = color; + f_data = position; + f_uv = uv; +}`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard; + + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),c=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; +attribute float pointSize; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + } + gl_PointSize = pointSize; + f_color = color; + f_uv = uv; +}`]),h=o([`precision highp float; +#define GLSLIFY 1 + +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5); + if(dot(pointR, pointR) > 0.25) { + discard; + } + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),v=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 id; + +uniform mat4 model, view, projection; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_id = id; + f_position = position; +}`]),p=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]),T=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute float pointSize; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0, 0.0, 0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + gl_PointSize = pointSize; + } + f_id = id; + f_position = position; +}`]),l=o([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; + +uniform mat4 model, view, projection; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); +}`]),_=o([`precision highp float; +#define GLSLIFY 1 + +uniform vec3 contourColor; + +void main() { + gl_FragColor = vec4(contourColor, 1.0); +} +`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:c,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:v,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:T,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:l,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(e,t,r){"use strict";var o=1e-6,a=1e-6,i=r(9405),n=r(2762),s=r(8116),c=r(7766),h=r(8406),v=r(6760),p=r(7608),T=r(9618),l=r(6729),_=r(7765),w=r(1888),S=r(840),E=r(7626),m=S.meshShader,b=S.wireShader,d=S.pointShader,u=S.pickShader,y=S.pointPickShader,f=S.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function L(he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe){this.gl=he,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=G,this.dirty=!0,this.triShader=$,this.lineShader=J,this.pointShader=Z,this.pickShader=re,this.pointPickShader=ne,this.contourShader=j,this.trianglePositions=ee,this.triangleColors=fe,this.triangleNormals=Ae,this.triangleUVs=be,this.triangleIds=ie,this.triangleVAO=Be,this.triangleCount=0,this.lineWidth=1,this.edgePositions=Ie,this.edgeColors=at,this.edgeUVs=it,this.edgeIds=Ze,this.edgeVAO=et,this.edgeCount=0,this.pointPositions=lt,this.pointColors=ge,this.pointUVs=ce,this.pointSizes=ze,this.pointIds=Me,this.pointVAO=tt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=nt,this.contourVAO=Qe,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=L.prototype;z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(he){this.pickId=he};function F(he,G){if(!G||!G.length)return 1;for(var $=0;$he&&$>0){var J=(G[$][0]-he)/(G[$][0]-G[$-1][0]);return G[$][1]*(1-J)+J*G[$-1][1]}}return 1}function B(he,G){for(var $=l({colormap:he,nshades:256,format:"rgba"}),J=new Uint8Array(256*4),Z=0;Z<256;++Z){for(var re=$[Z],ne=0;ne<3;++ne)J[4*Z+ne]=re[ne];G?J[4*Z+3]=255*F(Z/255,G):J[4*Z+3]=255*re[3]}return T(J,[256,256,4],[4,0,1])}function O(he){for(var G=he.length,$=new Array(G),J=0;J0){var Ae=this.triShader;Ae.bind(),Ae.uniforms=j,this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var Ae=this.lineShader;Ae.bind(),Ae.uniforms=j,this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var Ae=this.pointShader;Ae.bind(),Ae.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var Ae=this.contourShader;Ae.bind(),Ae.uniforms=j,this.contourVAO.bind(),G.drawArrays(G.LINES,0,this.contourCount),this.contourVAO.unbind()}},z.drawPick=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);this._model=[].slice.call($),this._view=[].slice.call(J),this._projection=[].slice.call(Z),this._resolution=[G.drawingBufferWidth,G.drawingBufferHeight];var j={model:$,view:J,projection:Z,clipBounds:re,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=j,this.triangleCount>0&&(this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}},z.pick=function(he){if(!he||he.id!==this.pickId)return null;for(var G=he.value[0]+256*he.value[1]+65536*he.value[2],$=this.cells[G],J=this.positions,Z=new Array($.length),re=0;re<$.length;++re)Z[re]=J[$[re]];var ne=he.coord[0],j=he.coord[1];if(!this.pickVertex){var ee=this.positions[$[0]],ie=this.positions[$[1]],fe=this.positions[$[2]],be=[(ee[0]+ie[0]+fe[0])/3,(ee[1]+ie[1]+fe[1])/3,(ee[2]+ie[2]+fe[2])/3];return{_cellCenter:!0,position:[ne,j],index:G,cell:$,cellId:G,intensity:this.intensity[G],dataCoordinate:be}}var Ae=E(Z,[ne*this.pixelRatio,this._resolution[1]-j*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!Ae)return null;for(var Be=Ae[2],Ie=0,re=0;re<$.length;++re)Ie+=Be[re]*this.intensity[$[re]];return{position:Ae[1],index:$[Ae[0]],cell:$,cellId:G,intensity:Ie,dataCoordinate:this.positions[$[Ae[0]]]}},z.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()};function I(he){var G=i(he,m.vertex,m.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.normal.location=4,G}function N(he){var G=i(he,b.vertex,b.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G}function U(he){var G=i(he,d.vertex,d.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.pointSize.location=4,G}function W(he){var G=i(he,u.vertex,u.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G}function Q(he){var G=i(he,y.vertex,y.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G.attributes.pointSize.location=4,G}function ue(he){var G=i(he,f.vertex,f.fragment);return G.attributes.position.location=0,G}function se(he,G){arguments.length===1&&(G=he,he=G.gl);var $=he.getExtension("OES_standard_derivatives")||he.getExtension("MOZ_OES_standard_derivatives")||he.getExtension("WEBKIT_OES_standard_derivatives");if(!$)throw new Error("derivatives not supported");var J=I(he),Z=N(he),re=U(he),ne=W(he),j=Q(he),ee=ue(he),ie=c(he,T(new Uint8Array([255,255,255,255]),[1,1,4]));ie.generateMipmap(),ie.minFilter=he.LINEAR_MIPMAP_LINEAR,ie.magFilter=he.LINEAR;var fe=n(he),be=n(he),Ae=n(he),Be=n(he),Ie=n(he),Ze=s(he,[{buffer:fe,type:he.FLOAT,size:3},{buffer:Ie,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:be,type:he.FLOAT,size:4},{buffer:Ae,type:he.FLOAT,size:2},{buffer:Be,type:he.FLOAT,size:3}]),at=n(he),it=n(he),et=n(he),lt=n(he),Me=s(he,[{buffer:at,type:he.FLOAT,size:3},{buffer:lt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:it,type:he.FLOAT,size:4},{buffer:et,type:he.FLOAT,size:2}]),ge=n(he),ce=n(he),ze=n(he),tt=n(he),nt=n(he),Qe=s(he,[{buffer:ge,type:he.FLOAT,size:3},{buffer:nt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ce,type:he.FLOAT,size:4},{buffer:ze,type:he.FLOAT,size:2},{buffer:tt,type:he.FLOAT,size:1}]),Ct=n(he),St=s(he,[{buffer:Ct,type:he.FLOAT,size:3}]),Ot=new L(he,ie,J,Z,re,ne,j,ee,fe,Ie,be,Ae,Be,Ze,at,lt,it,et,Me,ge,nt,ce,ze,tt,Qe,Ct,St);return Ot.update(G),Ot}e.exports=se},4437:function(e,t,r){"use strict";e.exports=h;var o=r(3025),a=r(6296),i=r(351),n=r(8512),s=r(24),c=r(7520);function h(v,p){v=v||document.body,p=p||{};var T=[.01,1/0];"distanceLimits"in p&&(T[0]=p.distanceLimits[0],T[1]=p.distanceLimits[1]),"zoomMin"in p&&(T[0]=p.zoomMin),"zoomMax"in p&&(T[1]=p.zoomMax);var l=a({center:p.center||[0,0,0],up:p.up||[0,1,0],eye:p.eye||[0,0,10],mode:p.mode||"orbit",distanceLimits:T}),_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],w=0,S=v.clientWidth,E=v.clientHeight,m={keyBindingMode:"rotate",enableWheel:!0,view:l,element:v,delay:p.delay||16,rotateSpeed:p.rotateSpeed||1,zoomSpeed:p.zoomSpeed||1,translateSpeed:p.translateSpeed||1,flipX:!!p.flipX,flipY:!!p.flipY,modes:l.modes,_ortho:p._ortho||p.projection&&p.projection.type==="orthographic"||!1,tick:function(){var b=o(),d=this.delay,u=b-2*d;l.idle(b-d),l.recalcMatrix(u),l.flush(b-(100+d*2));for(var y=!0,f=l.computedMatrix,P=0;P<16;++P)y=y&&_[P]===f[P],_[P]=f[P];var L=v.clientWidth===S&&v.clientHeight===E;return S=v.clientWidth,E=v.clientHeight,y?!L:(w=Math.exp(l.computedRadius[0]),!0)},lookAt:function(b,d,u){l.lookAt(l.lastT(),b,d,u)},rotate:function(b,d,u){l.rotate(l.lastT(),b,d,u)},pan:function(b,d,u){l.pan(l.lastT(),b,d,u)},translate:function(b,d,u){l.translate(l.lastT(),b,d,u)}};return Object.defineProperties(m,{matrix:{get:function(){return l.computedMatrix},set:function(b){return l.setMatrix(l.lastT(),b),l.computedMatrix},enumerable:!0},mode:{get:function(){return l.getMode()},set:function(b){var d=l.computedUp.slice(),u=l.computedEye.slice(),y=l.computedCenter.slice();if(l.setMode(b),b==="turntable"){var f=o();l._active.lookAt(f,u,y,d),l._active.lookAt(f+500,u,y,[0,0,1]),l._active.flush(f)}return l.getMode()},enumerable:!0},center:{get:function(){return l.computedCenter},set:function(b){return l.lookAt(l.lastT(),null,b),l.computedCenter},enumerable:!0},eye:{get:function(){return l.computedEye},set:function(b){return l.lookAt(l.lastT(),b),l.computedEye},enumerable:!0},up:{get:function(){return l.computedUp},set:function(b){return l.lookAt(l.lastT(),null,null,b),l.computedUp},enumerable:!0},distance:{get:function(){return w},set:function(b){return l.setDistance(l.lastT(),b),b},enumerable:!0},distanceLimits:{get:function(){return l.getDistanceLimits(T)},set:function(b){return l.setDistanceLimits(b),b},enumerable:!0}}),v.addEventListener("contextmenu",function(b){return b.preventDefault(),!1}),m._lastX=-1,m._lastY=-1,m._lastMods={shift:!1,control:!1,alt:!1,meta:!1},m.enableMouseListeners=function(){m.mouseListener=i(v,b),v.addEventListener("touchstart",function(d){var u=s(d.changedTouches[0],v);b(0,u[0],u[1],m._lastMods),b(1,u[0],u[1],m._lastMods)},c?{passive:!0}:!1),v.addEventListener("touchmove",function(d){var u=s(d.changedTouches[0],v);b(1,u[0],u[1],m._lastMods),d.preventDefault()},c?{passive:!1}:!1),v.addEventListener("touchend",function(d){b(0,m._lastX,m._lastY,m._lastMods)},c?{passive:!0}:!1);function b(d,u,y,f){var P=m.keyBindingMode;if(P!==!1){var L=P==="rotate",z=P==="pan",F=P==="zoom",B=!!f.control,O=!!f.alt,I=!!f.shift,N=!!(d&1),U=!!(d&2),W=!!(d&4),Q=1/v.clientHeight,ue=Q*(u-m._lastX),se=Q*(y-m._lastY),he=m.flipX?1:-1,G=m.flipY?1:-1,$=Math.PI*m.rotateSpeed,J=o();if(m._lastX!==-1&&m._lastY!==-1&&((L&&N&&!B&&!O&&!I||N&&!B&&!O&&I)&&l.rotate(J,he*$*ue,-G*$*se,0),(z&&N&&!B&&!O&&!I||U||N&&B&&!O&&!I)&&l.pan(J,-m.translateSpeed*ue*w,m.translateSpeed*se*w,0),F&&N&&!B&&!O&&!I||W||N&&!B&&O&&!I)){var Z=-m.zoomSpeed*se/window.innerHeight*(J-l.lastT())*100;l.pan(J,0,0,w*(Math.exp(Z)-1))}return m._lastX=u,m._lastY=y,m._lastMods=f,!0}}m.wheelListener=n(v,function(d,u){if(m.keyBindingMode!==!1&&m.enableWheel){var y=m.flipX?1:-1,f=m.flipY?1:-1,P=o();if(Math.abs(d)>Math.abs(u))l.rotate(P,0,0,-d*y*Math.PI*m.rotateSpeed/window.innerWidth);else if(!m._ortho){var L=-m.zoomSpeed*f*u/window.innerHeight*(P-l.lastT())/20;l.pan(P,0,0,w*(Math.exp(L)-1))}}},!0)},m.enableMouseListeners(),m}},799:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision mediump float; +#define GLSLIFY 1 +attribute vec2 position; +varying vec2 uv; +void main() { + uv = position; + gl_Position = vec4(position, 0, 1); +}`]),n=o([`precision mediump float; +#define GLSLIFY 1 + +uniform sampler2D accumBuffer; +varying vec2 uv; + +void main() { + vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0)); + gl_FragColor = min(vec4(1,1,1,1), accum); +}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec2"}])}},4100:function(e,t,r){"use strict";var o=r(4437),a=r(3837),i=r(5445),n=r(4449),s=r(3589),c=r(2260),h=r(7169),v=r(351),p=r(4772),T=r(4040),l=r(799),_=r(9216)({tablet:!0,featureDetect:!0});e.exports={createScene:b,createCamera:o};function w(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(u,y){var f=null;try{f=u.getContext("webgl",y),f||(f=u.getContext("experimental-webgl",y))}catch{return null}return f}function E(u){var y=Math.round(Math.log(Math.abs(u))/Math.log(10));if(y<0){var f=Math.round(Math.pow(10,-y));return Math.ceil(u*f)/f}else if(y>0){var f=Math.round(Math.pow(10,y));return Math.ceil(u/f)*f}return Math.ceil(u)}function m(u){return typeof u=="boolean"?u:!0}function b(u){u=u||{},u.camera=u.camera||{};var y=u.canvas;if(!y)if(y=document.createElement("canvas"),u.container){var f=u.container;f.appendChild(y)}else document.body.appendChild(y);var P=u.gl;if(P||(u.glOptions&&(_=!!u.glOptions.preserveDrawingBuffer),P=S(y,u.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!P)throw new Error("webgl not supported");var L=u.bounds||[[-10,-10,-10],[10,10,10]],z=new w,F=c(P,P.drawingBufferWidth,P.drawingBufferHeight,{preferFloat:!_}),B=l(P),O=u.cameraObject&&u.cameraObject._ortho===!0||u.camera.projection&&u.camera.projection.type==="orthographic"||!1,I={eye:u.camera.eye||[2,0,0],center:u.camera.center||[0,0,0],up:u.camera.up||[0,1,0],zoomMin:u.camera.zoomMax||.1,zoomMax:u.camera.zoomMin||100,mode:u.camera.mode||"turntable",_ortho:O},N=u.axes||{},U=a(P,N);U.enable=!N.disable;var W=u.spikes||{},Q=n(P,W),ue=[],se=[],he=[],G=[],$=!0,ne=!0,J=new Array(16),Z=new Array(16),re={view:null,projection:J,model:Z,_ortho:!1},ne=!0,j=[P.drawingBufferWidth,P.drawingBufferHeight],ee=u.cameraObject||o(y,I),ie={gl:P,contextLost:!1,pixelRatio:u.pixelRatio||1,canvas:y,selection:z,camera:ee,axes:U,axesPixels:null,spikes:Q,bounds:L,objects:ue,shape:j,aspect:u.aspectRatio||[1,1,1],pickRadius:u.pickRadius||10,zNear:u.zNear||.01,zFar:u.zFar||1e3,fovy:u.fovy||Math.PI/4,clearColor:u.clearColor||[0,0,0,0],autoResize:m(u.autoResize),autoBounds:m(u.autoBounds),autoScale:!!u.autoScale,autoCenter:m(u.autoCenter),clipToBounds:m(u.clipToBounds),snapToData:!!u.snapToData,onselect:u.onselect||null,onrender:u.onrender||null,onclick:u.onclick||null,cameraParams:re,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(lt){this.aspect[0]=lt.x,this.aspect[1]=lt.y,this.aspect[2]=lt.z,ne=!0},setBounds:function(lt,Me){this.bounds[0][lt]=Me.min,this.bounds[1][lt]=Me.max},setClearColor:function(lt){this.clearColor=lt},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},fe=[P.drawingBufferWidth/ie.pixelRatio|0,P.drawingBufferHeight/ie.pixelRatio|0];function be(){if(!ie._stopped&&ie.autoResize){var lt=y.parentNode,Me=1,ge=1;lt&<!==document.body?(Me=lt.clientWidth,ge=lt.clientHeight):(Me=window.innerWidth,ge=window.innerHeight);var ce=Math.ceil(Me*ie.pixelRatio)|0,ze=Math.ceil(ge*ie.pixelRatio)|0;if(ce!==y.width||ze!==y.height){y.width=ce,y.height=ze;var tt=y.style;tt.position=tt.position||"absolute",tt.left="0px",tt.top="0px",tt.width=Me+"px",tt.height=ge+"px",$=!0}}}ie.autoResize&&be(),window.addEventListener("resize",be);function Ae(){for(var lt=ue.length,Me=G.length,ge=0;ge0&&he[Me-1]===0;)he.pop(),G.pop().dispose()}ie.update=function(lt){ie._stopped||(lt=lt||{},$=!0,ne=!0)},ie.add=function(lt){ie._stopped||(lt.axes=U,ue.push(lt),se.push(-1),$=!0,ne=!0,Ae())},ie.remove=function(lt){if(!ie._stopped){var Me=ue.indexOf(lt);Me<0||(ue.splice(Me,1),se.pop(),$=!0,ne=!0,Ae())}},ie.dispose=function(){if(!ie._stopped&&(ie._stopped=!0,window.removeEventListener("resize",be),y.removeEventListener("webglcontextlost",Be),ie.mouseListener.enabled=!1,!ie.contextLost)){U.dispose(),Q.dispose();for(var lt=0;ltz.distance)continue;for(var St=0;St1e-6?(_=Math.acos(w),S=Math.sin(_),E=Math.sin((1-i)*_)/S,m=Math.sin(i*_)/S):(E=1-i,m=i),r[0]=E*n+m*v,r[1]=E*s+m*p,r[2]=E*c+m*T,r[3]=E*h+m*l,r}},5964:function(e){"use strict";e.exports=function(t){return!t&&t!==0?"":t.toString()}},9366:function(e,t,r){"use strict";var o=r(4359);e.exports=i;var a={};function i(n,s,c){var h=[s.style,s.weight,s.variant,s.family].join("_"),v=a[h];if(v||(v=a[h]={}),n in v)return v[n];var p={textAlign:"center",textBaseline:"middle",lineHeight:1,font:s.family,fontStyle:s.style,fontWeight:s.weight,fontVariant:s.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};p.triangles=!0;var T=o(n,p);p.triangles=!1;var l=o(n,p),_,w;if(c&&c!==1){for(_=0;_ max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform vec4 highlightId; +uniform float highlightScale; +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = 1.0; + if(distance(highlightId, id) < 0.0001) { + scale = highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1); + vec4 viewPosition = view * worldPosition; + viewPosition = viewPosition / viewPosition.w; + vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0)); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),n=a([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float highlightScale, pixelRatio; +uniform vec4 highlightId; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = pixelRatio; + if(distance(highlightId.bgr, id.bgr) < 0.001) { + scale *= highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1.0); + vec4 viewPosition = view * worldPosition; + vec4 clipPosition = projection * viewPosition; + clipPosition /= clipPosition.w; + + gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0); + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),s=a([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform float highlightScale; +uniform vec4 highlightId; +uniform vec3 axes[2]; +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float scale, pixelRatio; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float lscale = pixelRatio * scale; + if(distance(highlightId, id) < 0.0001) { + lscale *= highlightScale; + } + + vec4 clipCenter = projection * (view * (model * vec4(position, 1))); + vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y; + vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1))); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = dataPosition; + } +} +`]),c=a([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float opacity; + +varying vec4 interpColor; +varying vec3 dataCoordinate; + +void main() { + if ( + outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) || + interpColor.a * opacity == 0. + ) discard; + gl_FragColor = interpColor * opacity; +} +`]),h=a([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float pickGroup; + +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard; + + gl_FragColor = vec4(pickGroup, pickId.bgr); +}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],p={vertex:i,fragment:c,attributes:v},T={vertex:n,fragment:c,attributes:v},l={vertex:s,fragment:c,attributes:v},_={vertex:i,fragment:h,attributes:v},w={vertex:n,fragment:h,attributes:v},S={vertex:s,fragment:h,attributes:v};function E(m,b){var d=o(m,b),u=d.attributes;return u.position.location=0,u.color.location=1,u.glyph.location=2,u.id.location=3,d}t.createPerspective=function(m){return E(m,p)},t.createOrtho=function(m){return E(m,T)},t.createProject=function(m){return E(m,l)},t.createPickPerspective=function(m){return E(m,_)},t.createPickOrtho=function(m){return E(m,w)},t.createPickProject=function(m){return E(m,S)}},8418:function(e,t,r){"use strict";var o=r(5219),a=r(2762),i=r(8116),n=r(1888),s=r(6760),c=r(1283),h=r(9366),v=r(5964),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,l=DataView;function _(Z){return T.isView(Z)&&!(Z instanceof l)}function w(Z){return Array.isArray(Z)||_(Z)}e.exports=J;function S(Z,re){var ne=Z[0],j=Z[1],ee=Z[2],ie=Z[3];return Z[0]=re[0]*ne+re[4]*j+re[8]*ee+re[12]*ie,Z[1]=re[1]*ne+re[5]*j+re[9]*ee+re[13]*ie,Z[2]=re[2]*ne+re[6]*j+re[10]*ee+re[14]*ie,Z[3]=re[3]*ne+re[7]*j+re[11]*ee+re[15]*ie,Z}function E(Z,re,ne,j){return S(j,j,ne),S(j,j,re),S(j,j,Z)}function m(Z,re){this.index=Z,this.dataCoordinate=this.position=re}function b(Z){return Z===!0||Z>1?1:Z}function d(Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze){this.gl=Z,this.pixelRatio=1,this.shader=re,this.orthoShader=ne,this.projectShader=j,this.pointBuffer=ee,this.colorBuffer=ie,this.glyphBuffer=fe,this.idBuffer=be,this.vao=Ae,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Be,this.pickOrthoShader=Ie,this.pickProjectShader=Ze,this.points=[],this._selectResult=new m(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var u=d.prototype;u.pickSlots=1,u.setPickBase=function(Z){this.pickId=Z},u.isTransparent=function(){if(this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&this.projectHasAlpha)return!0;return!1},u.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0,1],z=[0,0,0,1],F=p.slice(),B=[0,0,0],O=[[0,0,0],[0,0,0]];function I(Z){return Z[0]=Z[1]=Z[2]=0,Z}function N(Z,re){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[3]=1,Z}function U(Z,re,ne,j){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[ne]=j,Z}function W(Z){for(var re=O,ne=0;ne<2;++ne)for(var j=0;j<3;++j)re[ne][j]=Math.max(Math.min(Z[ne][j],1e8),-1e8);return re}function Q(Z,re,ne,j){var ee=re.axesProject,ie=re.gl,fe=Z.uniforms,be=ne.model||p,Ae=ne.view||p,Be=ne.projection||p,Ie=re.axesBounds,Ze=W(re.clipBounds),at;re.axes&&re.axes.lastCubeProps?at=re.axes.lastCubeProps.axis:at=[1,1,1],y[0]=2/ie.drawingBufferWidth,y[1]=2/ie.drawingBufferHeight,Z.bind(),fe.view=Ae,fe.projection=Be,fe.screenSize=y,fe.highlightId=re.highlightId,fe.highlightScale=re.highlightScale,fe.clipBounds=Ze,fe.pickGroup=re.pickId/255,fe.pixelRatio=j;for(var it=0;it<3;++it)if(ee[it]){fe.scale=re.projectScale[it],fe.opacity=re.projectOpacity[it];for(var et=F,lt=0;lt<16;++lt)et[lt]=0;for(var lt=0;lt<4;++lt)et[5*lt]=1;et[5*it]=0,at[it]<0?et[12+it]=Ie[0][it]:et[12+it]=Ie[1][it],s(et,be,et),fe.model=et;var Me=(it+1)%3,ge=(it+2)%3,ce=I(f),ze=I(P);ce[Me]=1,ze[ge]=1;var tt=E(Be,Ae,be,N(L,ce)),nt=E(Be,Ae,be,N(z,ze));if(Math.abs(tt[1])>Math.abs(nt[1])){var Qe=tt;tt=nt,nt=Qe,Qe=ce,ce=ze,ze=Qe;var Ct=Me;Me=ge,ge=Ct}tt[0]<0&&(ce[Me]=-1),nt[1]>0&&(ze[ge]=-1);for(var St=0,Ot=0,lt=0;lt<4;++lt)St+=Math.pow(be[4*Me+lt],2),Ot+=Math.pow(be[4*ge+lt],2);ce[Me]/=Math.sqrt(St),ze[ge]/=Math.sqrt(Ot),fe.axes[0]=ce,fe.axes[1]=ze,fe.fragClipBounds[0]=U(B,Ze[0],it,-1e8),fe.fragClipBounds[1]=U(B,Ze[1],it,1e8),re.vao.bind(),re.vao.draw(ie.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ie.lineWidth(re.lineWidth*j),re.vao.draw(ie.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}var ue=[-1e8,-1e8,-1e8],se=[1e8,1e8,1e8],he=[ue,se];function G(Z,re,ne,j,ee,ie,fe){var be=ne.gl;if((ie===ne.projectHasAlpha||fe)&&Q(re,ne,j,ee),ie===ne.hasAlpha||fe){Z.bind();var Ae=Z.uniforms;Ae.model=j.model||p,Ae.view=j.view||p,Ae.projection=j.projection||p,y[0]=2/be.drawingBufferWidth,y[1]=2/be.drawingBufferHeight,Ae.screenSize=y,Ae.highlightId=ne.highlightId,Ae.highlightScale=ne.highlightScale,Ae.fragClipBounds=he,Ae.clipBounds=ne.axes.bounds,Ae.opacity=ne.opacity,Ae.pickGroup=ne.pickId/255,Ae.pixelRatio=ee,ne.vao.bind(),ne.vao.draw(be.TRIANGLES,ne.vertexCount),ne.lineWidth>0&&(be.lineWidth(ne.lineWidth*ee),ne.vao.draw(be.LINES,ne.lineVertexCount,ne.vertexCount)),ne.vao.unbind()}}u.draw=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!1,!1)},u.drawTransparent=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!0,!1)},u.drawPick=function(Z){var re=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;G(re,this.pickProjectShader,this,Z,1,!0,!0)},u.pick=function(Z){if(!Z||Z.id!==this.pickId)return null;var re=Z.value[2]+(Z.value[1]<<8)+(Z.value[0]<<16);if(re>=this.pointCount||re<0)return null;var ne=this.points[re],j=this._selectResult;j.index=re;for(var ee=0;ee<3;++ee)j.position[ee]=j.dataCoordinate[ee]=ne[ee];return j},u.highlight=function(Z){if(!Z)this.highlightId=[1,1,1,1];else{var re=Z.index,ne=re&255,j=re>>8&255,ee=re>>16&255;this.highlightId=[ne/255,j/255,ee/255,0]}};function $(Z,re,ne,j){var ee;w(Z)?re0){var _r=0,yt=ge,Fe=[0,0,0,1],Ke=[0,0,0,1],Ne=w(at)&&w(at[0]),Ee=w(lt)&&w(lt[0]);e:for(var j=0;j0?1-Ot[0][0]:xt<0?1+Ot[1][0]:1,It*=It>0?1-Ot[0][1]:It<0?1+Ot[1][1]:1;for(var Bt=[xt,It],Aa=Ct.cells||[],La=Ct.positions||[],nt=0;ntthis.buffer.length){a.free(this.buffer);for(var w=this.buffer=a.mallocUint8(n(_*l*4)),S=0;S<_*l*4;++S)w[S]=255}return T}}}),v.begin=function(){var T=this.gl,l=this.shape;T&&(this.fbo.bind(),T.clearColor(1,1,1,1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT))},v.end=function(){var T=this.gl;T&&(T.bindFramebuffer(T.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(T,l,_){if(!this.gl)return null;var w=this.fbo.shape.slice();T=T|0,l=l|0,typeof _!="number"&&(_=1);var S=Math.min(Math.max(T-_,0),w[0])|0,E=Math.min(Math.max(T+_,0),w[0])|0,m=Math.min(Math.max(l-_,0),w[1])|0,b=Math.min(Math.max(l+_,0),w[1])|0;if(E<=S||b<=m)return null;var d=[E-S,b-m],u=i(this.buffer,[d[0],d[1],4],[4,w[0]*4,1],4*(S+w[0]*m)),y=s(u.hi(d[0],d[1],1),_,_),f=y[0],P=y[1];if(f<0||Math.pow(this.radius,2)w)for(l=w;l<_;l++)this.gl.enableVertexAttribArray(l);else if(w>_)for(l=_;l=0){for(var O=B.type.charAt(B.type.length-1)|0,I=new Array(O),N=0;N=0;)U+=1;z[F]=U}var W=new Array(w.length);function Q(){m.program=n.program(b,m._vref,m._fref,L,z);for(var ue=0;ue=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);s(v,p,d[0],l,u,_,m)}else if(b.indexOf("mat")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);c(v,p,d,l,u,_,m)}else throw new o("","Unknown data type for attribute "+m+": "+b);break}}return _}},3327:function(e,t,r){"use strict";var o=r(216),a=r(8866);e.exports=s;function i(c){return function(){return c}}function n(c,h){for(var v=new Array(c),p=0;p4)throw new a("","Invalid data type");switch(U.charAt(0)){case"b":case"i":c["uniform"+W+"iv"](p[z],F);break;case"v":c["uniform"+W+"fv"](p[z],F);break;default:throw new a("","Unrecognized data type for vector "+name+": "+U)}}else if(U.indexOf("mat")===0&&U.length===4){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+U);c["uniformMatrix"+W+"fv"](p[z],!1,F);break}else throw new a("","Unknown uniform data type for "+name+": "+U)}}}}}function _(b,d){if(typeof d!="object")return[[b,d]];var u=[];for(var y in d){var f=d[y],P=b;parseInt(y)+""===y?P+="["+y+"]":P+="."+y,typeof f=="object"?u.push.apply(u,_(P,f)):u.push([P,f])}return u}function w(b){switch(b){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var d=b.indexOf("vec");if(0<=d&&d<=1&&b.length===4+d){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid data type");return b.charAt(0)==="b"?n(u,!1):n(u,0)}else if(b.indexOf("mat")===0&&b.length===4){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+b);return n(u*u,0)}else throw new a("","Unknown uniform data type for "+name+": "+b)}}function S(b,d,u){if(typeof u=="object"){var y=E(u);Object.defineProperty(b,d,{get:i(y),set:l(u),enumerable:!0,configurable:!1})}else p[u]?Object.defineProperty(b,d,{get:T(u),set:l(u),enumerable:!0,configurable:!1}):b[d]=w(v[u].type)}function E(b){var d;if(Array.isArray(b)){d=new Array(b.length);for(var u=0;u1){v[0]in c||(c[v[0]]=[]),c=c[v[0]];for(var p=1;p1)for(var _=0;_"u"?r(606):WeakMap,n=new i,s=0;function c(S,E,m,b,d,u,y){this.id=S,this.src=E,this.type=m,this.shader=b,this.count=u,this.programs=[],this.cache=y}c.prototype.dispose=function(){if(--this.count===0){for(var S=this.cache,E=S.gl,m=this.programs,b=0,d=m.length;b 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, tubeScale; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * tubePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(tubePosition, 1.0); + vec4 t_position = view * tubePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = tubePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),i=o([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),n=o([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float tubeScale; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + gl_Position = projection * (view * tubePosition); + f_id = id; + f_position = position.xyz; +} +`]),s=o([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(e,t,r){"use strict";var o=r(2931),a=r(9970),i=["xyz","xzy","yxz","yzx","zxy","zyx"],n=function(S,E,m,b){for(var d=S.points,u=S.velocities,y=S.divergences,f=[],P=[],L=[],z=[],F=[],B=[],O=0,I=0,N=a.create(),U=a.create(),W=8,Q=0;Q0)for(var G=0;GE)return b-1}return b},h=function(S,E,m){return Sm?m:S},v=function(S,E,m){var b=E.vectors,d=E.meshgrid,u=S[0],y=S[1],f=S[2],P=d[0].length,L=d[1].length,z=d[2].length,F=c(d[0],u),B=c(d[1],y),O=c(d[2],f),I=F+1,N=B+1,U=O+1;if(F=h(F,0,P-1),I=h(I,0,P-1),B=h(B,0,L-1),N=h(N,0,L-1),O=h(O,0,z-1),U=h(U,0,z-1),F<0||B<0||O<0||I>P-1||N>L-1||U>z-1)return o.create();var W=d[0][F],Q=d[0][I],ue=d[1][B],se=d[1][N],he=d[2][O],G=d[2][U],$=(u-W)/(Q-W),J=(y-ue)/(se-ue),Z=(f-he)/(G-he);isFinite($)||($=.5),isFinite(J)||(J=.5),isFinite(Z)||(Z=.5);var re,ne,j,ee,ie,fe;switch(m.reversedX&&(F=P-1-F,I=P-1-I),m.reversedY&&(B=L-1-B,N=L-1-N),m.reversedZ&&(O=z-1-O,U=z-1-U),m.filled){case 5:ie=O,fe=U,j=B*z,ee=N*z,re=F*z*L,ne=I*z*L;break;case 4:ie=O,fe=U,re=F*z,ne=I*z,j=B*z*P,ee=N*z*P;break;case 3:j=B,ee=N,ie=O*L,fe=U*L,re=F*L*z,ne=I*L*z;break;case 2:j=B,ee=N,re=F*L,ne=I*L,ie=O*L*P,fe=U*L*P;break;case 1:re=F,ne=I,ie=O*P,fe=U*P,j=B*P*z,ee=N*P*z;break;default:re=F,ne=I,j=B*P,ee=N*P,ie=O*P*L,fe=U*P*L;break}var be=b[re+j+ie],Ae=b[re+j+fe],Be=b[re+ee+ie],Ie=b[re+ee+fe],Ze=b[ne+j+ie],at=b[ne+j+fe],it=b[ne+ee+ie],et=b[ne+ee+fe],lt=o.create(),Me=o.create(),ge=o.create(),ce=o.create();o.lerp(lt,be,Ze,$),o.lerp(Me,Ae,at,$),o.lerp(ge,Be,it,$),o.lerp(ce,Ie,et,$);var ze=o.create(),tt=o.create();o.lerp(ze,lt,ge,J),o.lerp(tt,Me,ce,J);var nt=o.create();return o.lerp(nt,ze,tt,Z),nt},p=function(S,E){var m=E[0],b=E[1],d=E[2];return S[0]=m<0?-m:m,S[1]=b<0?-b:b,S[2]=d<0?-d:d,S},T=function(S){var E=1/0;S.sort(function(u,y){return u-y});for(var m=S.length,b=1;bI||etN||ltU)},Q=o.distance(E[0],E[1]),ue=10*Q/b,se=ue*ue,he=1,G=0,$=m.length;$>1&&(he=l(m));for(var J=0;J<$;J++){var Z=o.create();o.copy(Z,m[J]);var re=[Z],ne=[],j=P(Z),ee=Z;ne.push(j);var ie=[],fe=L(Z,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be),z.push({points:re,velocities:ne,divergences:ie});for(var Ae=0;Aese&&o.scale(Be,Be,ue/Math.sqrt(Ie)),o.add(Be,Be,Z),j=P(Be),o.squaredDistance(ee,Be)-se>-1e-4*se){re.push(Be),ee=Be,ne.push(j);var fe=L(Be,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be)}Z=Be}}var Ze=s(z,S.colormap,G,he);return u?Ze.tubeScale=u:(G===0&&(G=1),Ze.tubeScale=d*.5*he/G),Ze};var _=r(6740),w=r(6405).createMesh;e.exports.createTubeMesh=function(S,E){return w(S,E,{shaders:_,traceType:"streamtube"})}},990:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute vec3 f; +attribute vec3 normal; + +uniform vec3 objectOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 lightPosition, eyePosition; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 localCoordinate = vec3(uv.zw, f.x); + worldCoordinate = objectOffset + localCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0); + vec4 clipPosition = projection * (view * worldPosition); + gl_Position = clipPosition; + kill = f.y; + value = f.z; + planeCoordinate = uv.xy; + + vColor = texture2D(colormap, vec2(value, value)); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * worldPosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + lightDirection = lightPosition - cameraCoordinate.xyz; + eyeDirection = eyePosition - cameraCoordinate.xyz; + surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz); +} +`]),n=a([`precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float beckmannSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness) { + return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 lowerBound, upperBound; +uniform float contourTint; +uniform vec4 contourColor; +uniform sampler2D colormap; +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform float vertexColor; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + if ( + kill > 0.0 || + vColor.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], worldCoordinate) + ) discard; + + vec3 N = normalize(surfaceNormal); + vec3 V = normalize(eyeDirection); + vec3 L = normalize(lightDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = max(beckmannSpecular(L, V, N, roughness), 0.); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + //decide how to interpolate color \u2014 in vertex or in fragment + vec4 surfaceColor = + step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) + + step(.5, vertexColor) * vColor; + + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = mix(litColor, contourColor, contourTint) * opacity; +} +`]),s=a([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute float f; + +uniform vec3 objectOffset; +uniform mat3 permutation; +uniform mat4 model, view, projection; +uniform float height, zOffset; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 dataCoordinate = permutation * vec3(uv.xy, height); + worldCoordinate = objectOffset + dataCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0); + + vec4 clipPosition = projection * (view * worldPosition); + clipPosition.z += zOffset; + + gl_Position = clipPosition; + value = f + objectOffset.z; + kill = -1.0; + planeCoordinate = uv.zw; + + vColor = texture2D(colormap, vec2(value, value)); + + //Don't do lighting for contours + surfaceNormal = vec3(1,0,0); + eyeDirection = vec3(0,1,0); + lightDirection = vec3(0,0,1); +} +`]),c=a([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec2 shape; +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 surfaceNormal; + +vec2 splitFloat(float v) { + float vh = 255.0 * v; + float upper = floor(vh); + float lower = fract(vh); + return vec2(upper / 255.0, floor(lower * 16.0) / 16.0); +} + +void main() { + if ((kill > 0.0) || + (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard; + + vec2 ux = splitFloat(planeCoordinate.x / shape.x); + vec2 uy = splitFloat(planeCoordinate.y / shape.y); + gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0)); +} +`]);t.createShader=function(h){var v=o(h,i,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createPickShader=function(h){var v=o(h,i,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createContourShader=function(h){var v=o(h,s,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},t.createPickContourShader=function(h){var v=o(h,s,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(e,t,r){"use strict";e.exports=re;var o=r(8828),a=r(2762),i=r(8116),n=r(7766),s=r(1888),c=r(6729),h=r(5298),v=r(9994),p=r(9618),T=r(3711),l=r(6760),_=r(7608),w=r(2478),S=r(6199),E=r(990),m=E.createShader,b=E.createContourShader,d=E.createPickShader,u=E.createPickContourShader,y=4*10,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],L=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];(function(){for(var ne=0;ne<3;++ne){var j=L[ne],ee=(ne+1)%3,ie=(ne+2)%3;j[ee+0]=1,j[ie+3]=1,j[ne+6]=1}})();function z(ne,j,ee,ie,fe){this.position=ne,this.index=j,this.uv=ee,this.level=ie,this.dataCoordinate=fe}var F=256;function B(ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me){this.gl=ne,this.shape=j,this.bounds=ee,this.objectOffset=Me,this.intensityBounds=[],this._shader=ie,this._pickShader=fe,this._coordinateBuffer=be,this._vao=Ae,this._colorMap=Be,this._contourShader=Ie,this._contourPickShader=Ze,this._contourBuffer=at,this._contourVAO=it,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new z([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=et,this._dynamicVAO=lt,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var O=B.prototype;O.genColormap=function(ne,j){var ee=!1,ie=v([c({colormap:ne,nshades:F,format:"rgba"}).map(function(fe,be){var Ae=j?I(be/255,j):fe[3];return Ae<1&&(ee=!0),[fe[0],fe[1],fe[2],255*Ae]})]);return h.divseq(ie,255),this.hasAlphaScale=ee,ie},O.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},O.isOpaque=function(){return!this.isTransparent()},O.pickSlots=1,O.setPickBase=function(ne){this.pickId=ne};function I(ne,j){if(!j||!j.length)return 1;for(var ee=0;eene&&ee>0){var ie=(j[ee][0]-ne)/(j[ee][0]-j[ee-1][0]);return j[ee][1]*(1-ie)+ie*j[ee-1][1]}}return 1}var N=[0,0,0],U={showSurface:!1,showContour:!1,projections:[f.slice(),f.slice(),f.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function W(ne,j){var ee,ie,fe,be=j.axes&&j.axes.lastCubeProps.axis||N,Ae=j.showSurface,Be=j.showContour;for(ee=0;ee<3;++ee)for(Ae=Ae||j.surfaceProject[ee],ie=0;ie<3;++ie)Be=Be||j.contourProject[ee][ie];for(ee=0;ee<3;++ee){var Ie=U.projections[ee];for(ie=0;ie<16;++ie)Ie[ie]=0;for(ie=0;ie<4;++ie)Ie[5*ie]=1;Ie[5*ee]=0,Ie[12+ee]=j.axesBounds[+(be[ee]>0)][ee],l(Ie,ne.model,Ie);var Ze=U.clipBounds[ee];for(fe=0;fe<2;++fe)for(ie=0;ie<3;++ie)Ze[fe][ie]=ne.clipBounds[fe][ie];Ze[0][ee]=-1e8,Ze[1][ee]=1e8}return U.showSurface=Ae,U.showContour=Be,U}var Q={model:f,view:f,projection:f,inverseModel:f.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ue=f.slice(),se=[1,0,0,0,1,0,0,0,1];function he(ne,j){ne=ne||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var ie=Q;ie.model=ne.model||f,ie.view=ne.view||f,ie.projection=ne.projection||f,ie.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ie.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ie.objectOffset=this.objectOffset,ie.contourColor=this.contourColor[0],ie.inverseModel=_(ie.inverseModel,ie.model);for(var fe=0;fe<2;++fe)for(var be=ie.clipBounds[fe],Ae=0;Ae<3;++Ae)be[Ae]=Math.min(Math.max(this.clipBounds[fe][Ae],-1e8),1e8);ie.kambient=this.ambientLight,ie.kdiffuse=this.diffuseLight,ie.kspecular=this.specularLight,ie.roughness=this.roughness,ie.fresnel=this.fresnel,ie.opacity=this.opacity,ie.height=0,ie.permutation=se,ie.vertexColor=this.vertexColor;var Be=ue;for(l(Be,ie.view,ie.model),l(Be,ie.projection,Be),_(Be,Be),fe=0;fe<3;++fe)ie.eyePosition[fe]=Be[12+fe]/Be[15];var Ie=Be[15];for(fe=0;fe<3;++fe)Ie+=this.lightPosition[fe]*Be[4*fe+3];for(fe=0;fe<3;++fe){var Ze=Be[12+fe];for(Ae=0;Ae<3;++Ae)Ze+=Be[4*Ae+fe]*this.lightPosition[Ae];ie.lightPosition[fe]=Ze/Ie}var at=W(ie,this);if(at.showSurface){for(this._shader.bind(),this._shader.uniforms=ie,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),fe=0;fe<3;++fe)!this.surfaceProject[fe]||!this.vertexCount||(this._shader.uniforms.model=at.projections[fe],this._shader.uniforms.clipBounds=at.clipBounds[fe],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(at.showContour){var it=this._contourShader;ie.kambient=1,ie.kdiffuse=0,ie.kspecular=0,ie.opacity=1,it.bind(),it.uniforms=ie;var et=this._contourVAO;for(et.bind(),fe=0;fe<3;++fe)for(it.uniforms.permutation=L[fe],ee.lineWidth(this.contourWidth[fe]*this.pixelRatio),Ae=0;Ae>4)/16)/255,fe=Math.floor(ie),be=ie-fe,Ae=j[1]*(ne.value[1]+(ne.value[2]&15)/16)/255,Be=Math.floor(Ae),Ie=Ae-Be;fe+=1,Be+=1;var Ze=ee.position;Ze[0]=Ze[1]=Ze[2]=0;for(var at=0;at<2;++at)for(var it=at?be:1-be,et=0;et<2;++et)for(var lt=et?Ie:1-Ie,Me=fe+at,ge=Be+et,ce=it*lt,ze=0;ze<3;++ze)Ze[ze]+=this._field[ze].get(Me,ge)*ce;for(var tt=this._pickResult.level,nt=0;nt<3;++nt)if(tt[nt]=w.le(this.contourLevels[nt],Ze[nt]),tt[nt]<0)this.contourLevels[nt].length>0&&(tt[nt]=0);else if(tt[nt]Math.abs(Ct-Ze[nt])&&(tt[nt]+=1)}for(ee.index[0]=be<.5?fe:fe+1,ee.index[1]=Ie<.5?Be:Be+1,ee.uv[0]=ie/j[0],ee.uv[1]=Ae/j[1],ze=0;ze<3;++ze)ee.dataCoordinate[ze]=this._field[ze].get(ee.index[0],ee.index[1]);return ee},O.padField=function(ne,j){var ee=j.shape.slice(),ie=ne.shape.slice();h.assign(ne.lo(1,1).hi(ee[0],ee[1]),j),h.assign(ne.lo(1).hi(ee[0],1),j.hi(ee[0],1)),h.assign(ne.lo(1,ie[1]-1).hi(ee[0],1),j.lo(0,ee[1]-1).hi(ee[0],1)),h.assign(ne.lo(0,1).hi(1,ee[1]),j.hi(1)),h.assign(ne.lo(ie[0]-1,1).hi(1,ee[1]),j.lo(ee[0]-1)),ne.set(0,0,j.get(0,0)),ne.set(0,ie[1]-1,j.get(0,ee[1]-1)),ne.set(ie[0]-1,0,j.get(ee[0]-1,0)),ne.set(ie[0]-1,ie[1]-1,j.get(ee[0]-1,ee[1]-1))};function $(ne,j){return Array.isArray(ne)?[j(ne[0]),j(ne[1]),j(ne[2])]:[j(ne),j(ne),j(ne)]}function J(ne){return Array.isArray(ne)?ne.length===3?[ne[0],ne[1],ne[2],1]:[ne[0],ne[1],ne[2],ne[3]]:[0,0,0,1]}function Z(ne){if(Array.isArray(ne)){if(Array.isArray(ne))return[J(ne[0]),J(ne[1]),J(ne[2])];var j=J(ne);return[j.slice(),j.slice(),j.slice()]}}O.update=function(ne){ne=ne||{},this.objectOffset=ne.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ne&&(this.contourWidth=$(ne.contourWidth,Number)),"showContour"in ne&&(this.showContour=$(ne.showContour,Boolean)),"showSurface"in ne&&(this.showSurface=!!ne.showSurface),"contourTint"in ne&&(this.contourTint=$(ne.contourTint,Boolean)),"contourColor"in ne&&(this.contourColor=Z(ne.contourColor)),"contourProject"in ne&&(this.contourProject=$(ne.contourProject,function($a){return $($a,Boolean)})),"surfaceProject"in ne&&(this.surfaceProject=ne.surfaceProject),"dynamicColor"in ne&&(this.dynamicColor=Z(ne.dynamicColor)),"dynamicTint"in ne&&(this.dynamicTint=$(ne.dynamicTint,Number)),"dynamicWidth"in ne&&(this.dynamicWidth=$(ne.dynamicWidth,Number)),"opacity"in ne&&(this.opacity=ne.opacity),"opacityscale"in ne&&(this.opacityscale=ne.opacityscale),"colorBounds"in ne&&(this.colorBounds=ne.colorBounds),"vertexColor"in ne&&(this.vertexColor=ne.vertexColor?1:0),"colormap"in ne&&this._colorMap.setPixels(this.genColormap(ne.colormap,this.opacityscale));var j=ne.field||ne.coords&&ne.coords[2]||null,ee=!1;if(j||(this._field[2].shape[0]||this._field[2].shape[2]?j=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):j=this._field[2].hi(0,0)),"field"in ne||"coords"in ne){var ie=(j.shape[0]+2)*(j.shape[1]+2);ie>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(ie))),this._field[2]=p(this._field[2].data,[j.shape[0]+2,j.shape[1]+2]),this.padField(this._field[2],j),this.shape=j.shape.slice();for(var fe=this.shape,be=0;be<2;++be)this._field[2].size>this._field[be].data.length&&(s.freeFloat(this._field[be].data),this._field[be].data=s.mallocFloat(this._field[2].size)),this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2]);if(ne.coords){var Ae=ne.coords;if(!Array.isArray(Ae)||Ae.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(be=0;be<2;++be){var Be=Ae[be];for(et=0;et<2;++et)if(Be.shape[et]!==fe[et])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[be],Be)}}else if(ne.ticks){var Ie=ne.ticks;if(!Array.isArray(Ie)||Ie.length!==2)throw new Error("gl-surface: invalid ticks");for(be=0;be<2;++be){var Ze=Ie[be];if((Array.isArray(Ze)||Ze.length)&&(Ze=p(Ze)),Ze.shape[0]!==fe[be])throw new Error("gl-surface: invalid tick length");var at=p(Ze.data,fe);at.stride[be]=Ze.stride[0],at.stride[be^1]=0,this.padField(this._field[be],at)}}else{for(be=0;be<2;++be){var it=[0,0];it[be]=1,this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2],it,0)}this._field[0].set(0,0,0);for(var et=0;et0){for(var qa=0;qa<5;++qa)Gt.pop();Ne-=1}continue e}}}Aa.push(Ne)}this._contourOffsets[Kt]=sa,this._contourCounts[Kt]=Aa}var ya=s.mallocFloat(Gt.length);for(be=0;bez||P<0||P>z)throw new Error("gl-texture2d: Invalid texture size");return y._shape=[f,P],y.bind(),L.texImage2D(L.TEXTURE_2D,0,y.format,f,P,0,y.format,y.type,null),y._mipLevels=[0],y}function l(y,f,P,L,z,F){this.gl=y,this.handle=f,this.format=z,this.type=F,this._shape=[P,L],this._mipLevels=[0],this._magFilter=y.NEAREST,this._minFilter=y.NEAREST,this._wrapS=y.CLAMP_TO_EDGE,this._wrapT=y.CLAMP_TO_EDGE,this._anisoSamples=1;var B=this,O=[this._wrapS,this._wrapT];Object.defineProperties(O,[{get:function(){return B._wrapS},set:function(N){return B.wrapS=N}},{get:function(){return B._wrapT},set:function(N){return B.wrapT=N}}]),this._wrapVector=O;var I=[this._shape[0],this._shape[1]];Object.defineProperties(I,[{get:function(){return B._shape[0]},set:function(N){return B.width=N}},{get:function(){return B._shape[1]},set:function(N){return B.height=N}}]),this._shapeVector=I}var _=l.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,y),this._minFilter=y}},magFilter:{get:function(){return this._magFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,y),this._magFilter=y}},mipSamples:{get:function(){return this._anisoSamples},set:function(y){var f=this._anisoSamples;if(this._anisoSamples=Math.max(y,1)|0,f!==this._anisoSamples){var P=this.gl.getExtension("EXT_texture_filter_anisotropic");P&&this.gl.texParameterf(this.gl.TEXTURE_2D,P.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,y),this._wrapS=y}},wrapT:{get:function(){return this._wrapT},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,y),this._wrapT=y}},wrap:{get:function(){return this._wrapVector},set:function(y){if(Array.isArray(y)||(y=[y,y]),y.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var f=0;f<2;++f)if(c.indexOf(y[f])<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);this._wrapS=y[0],this._wrapT=y[1];var P=this.gl;return this.bind(),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,this._wrapS),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,this._wrapT),y}},shape:{get:function(){return this._shapeVector},set:function(y){if(!Array.isArray(y))y=[y|0,y|0];else if(y.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,y[0]|0,y[1]|0),[y[0]|0,y[1]|0]}},width:{get:function(){return this._shape[0]},set:function(y){return y=y|0,T(this,y,this._shape[1]),y}},height:{get:function(){return this._shape[1]},set:function(y){return y=y|0,T(this,this._shape[0],y),y}}}),_.bind=function(y){var f=this.gl;return y!==void 0&&f.activeTexture(f.TEXTURE0+(y|0)),f.bindTexture(f.TEXTURE_2D,this.handle),y!==void 0?y|0:f.getParameter(f.ACTIVE_TEXTURE)-f.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var y=Math.min(this._shape[0],this._shape[1]),f=0;y>0;++f,y>>>=1)this._mipLevels.indexOf(f)<0&&this._mipLevels.push(f)},_.setPixels=function(y,f,P,L){var z=this.gl;this.bind(),Array.isArray(f)?(L=P,P=f[1]|0,f=f[0]|0):(f=f||0,P=P||0),L=L||0;var F=v(y)?y:y.raw;if(F){var B=this._mipLevels.indexOf(L)<0;B?(z.texImage2D(z.TEXTURE_2D,0,this.format,this.format,this.type,F),this._mipLevels.push(L)):z.texSubImage2D(z.TEXTURE_2D,L,f,P,this.format,this.type,F)}else if(y.shape&&y.stride&&y.data){if(y.shape.length<2||f+y.shape[1]>this._shape[1]>>>L||P+y.shape[0]>this._shape[0]>>>L||f<0||P<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(z,f,P,L,this.format,this.type,this._mipLevels,y)}else throw new Error("gl-texture2d: Unsupported data type")};function w(y,f){return y.length===3?f[2]===1&&f[1]===y[0]*y[2]&&f[0]===y[2]:f[0]===1&&f[1]===y[0]}function S(y,f,P,L,z,F,B,O){var I=O.dtype,N=O.shape.slice();if(N.length<2||N.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var U=0,W=0,Q=w(N,O.stride.slice());I==="float32"?U=y.FLOAT:I==="float64"?(U=y.FLOAT,Q=!1,I="float32"):I==="uint8"?U=y.UNSIGNED_BYTE:(U=y.UNSIGNED_BYTE,Q=!1,I="uint8");var ue=1;if(N.length===2)W=y.LUMINANCE,N=[N[0],N[1],1],O=o(O.data,N,[O.stride[0],O.stride[1],1],O.offset);else if(N.length===3){if(N[2]===1)W=y.ALPHA;else if(N[2]===2)W=y.LUMINANCE_ALPHA;else if(N[2]===3)W=y.RGB;else if(N[2]===4)W=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ue=N[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((W===y.LUMINANCE||W===y.ALPHA)&&(z===y.LUMINANCE||z===y.ALPHA)&&(W=z),W!==z)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var se=O.size,he=B.indexOf(L)<0;if(he&&B.push(L),U===F&&Q)O.offset===0&&O.data.length===se?he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data):he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data.subarray(O.offset,O.offset+se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data.subarray(O.offset,O.offset+se));else{var G;F===y.FLOAT?G=i.mallocFloat32(se):G=i.mallocUint8(se);var $=o(G,N,[N[2],N[2]*N[0],1]);U===y.FLOAT&&F===y.UNSIGNED_BYTE?p($,O):a.assign($,O),he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,G.subarray(0,se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,G.subarray(0,se)),F===y.FLOAT?i.freeFloat32(G):i.freeUint8(G)}}function E(y){var f=y.createTexture();return y.bindTexture(y.TEXTURE_2D,f),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_S,y.CLAMP_TO_EDGE),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_T,y.CLAMP_TO_EDGE),f}function m(y,f,P,L,z){var F=y.getParameter(y.MAX_TEXTURE_SIZE);if(f<0||f>F||P<0||P>F)throw new Error("gl-texture2d: Invalid texture shape");if(z===y.FLOAT&&!y.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,L,f,P,0,L,z,null),new l(y,B,f,P,L,z)}function b(y,f,P,L,z,F){var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,z,z,F,f),new l(y,B,P,L,z,F)}function d(y,f){var P=f.dtype,L=f.shape.slice(),z=y.getParameter(y.MAX_TEXTURE_SIZE);if(L[0]<0||L[0]>z||L[1]<0||L[1]>z)throw new Error("gl-texture2d: Invalid texture size");var F=w(L,f.stride.slice()),B=0;P==="float32"?B=y.FLOAT:P==="float64"?(B=y.FLOAT,F=!1,P="float32"):P==="uint8"?B=y.UNSIGNED_BYTE:(B=y.UNSIGNED_BYTE,F=!1,P="uint8");var O=0;if(L.length===2)O=y.LUMINANCE,L=[L[0],L[1],1],f=o(f.data,L,[f.stride[0],f.stride[1],1],f.offset);else if(L.length===3)if(L[2]===1)O=y.ALPHA;else if(L[2]===2)O=y.LUMINANCE_ALPHA;else if(L[2]===3)O=y.RGB;else if(L[2]===4)O=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");B===y.FLOAT&&!y.getExtension("OES_texture_float")&&(B=y.UNSIGNED_BYTE,F=!1);var I,N,U=f.size;if(F)f.offset===0&&f.data.length===U?I=f.data:I=f.data.subarray(f.offset,f.offset+U);else{var W=[L[2],L[2]*L[0],1];N=i.malloc(U,P);var Q=o(N,L,W,0);(P==="float32"||P==="float64")&&B===y.UNSIGNED_BYTE?p(Q,f):a.assign(Q,f),I=N.subarray(0,U)}var ue=E(y);return y.texImage2D(y.TEXTURE_2D,0,O,L[0],L[1],0,O,B,I),F||i.free(N),new l(y,ue,L[0],L[1],O,B)}function u(y){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(n||h(y),typeof arguments[1]=="number")return m(y,arguments[1],arguments[2],arguments[3]||y.RGBA,arguments[4]||y.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return m(y,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var f=arguments[1],P=v(f)?f:f.raw;if(P)return b(y,P,f.width|0,f.height|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(f.shape&&f.data&&f.stride)return d(y,f)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(e){"use strict";function t(r,o,a){o?o.bind():r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null);var i=r.getParameter(r.MAX_VERTEX_ATTRIBS)|0;if(a){if(a.length>i)throw new Error("gl-vao: Too many vertex attributes");for(var n=0;n1?0:Math.acos(p)}},9226:function(e){e.exports=t;function t(r,o){return r[0]=Math.ceil(o[0]),r[1]=Math.ceil(o[1]),r[2]=Math.ceil(o[2]),r}},3126:function(e){e.exports=t;function t(r){var o=new Float32Array(3);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o}},3990:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r}},1091:function(e){e.exports=t;function t(){var r=new Float32Array(3);return r[0]=0,r[1]=0,r[2]=0,r}},5911:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2];return r[0]=n*v-s*h,r[1]=s*c-i*v,r[2]=i*h-n*c,r}},5455:function(e,t,r){e.exports=r(7056)},7056:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return Math.sqrt(a*a+i*i+n*n)}},4008:function(e,t,r){e.exports=r(6690)},6690:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r}},244:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}},2613:function(e){e.exports=1e-6},9922:function(e,t,r){e.exports=a;var o=r(2613);function a(i,n){var s=i[0],c=i[1],h=i[2],v=n[0],p=n[1],T=n[2];return Math.abs(s-v)<=o*Math.max(1,Math.abs(s),Math.abs(v))&&Math.abs(c-p)<=o*Math.max(1,Math.abs(c),Math.abs(p))&&Math.abs(h-T)<=o*Math.max(1,Math.abs(h),Math.abs(T))}},9265:function(e){e.exports=t;function t(r,o){return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]}},2681:function(e){e.exports=t;function t(r,o){return r[0]=Math.floor(o[0]),r[1]=Math.floor(o[1]),r[2]=Math.floor(o[2]),r}},5137:function(e,t,r){e.exports=a;var o=r(1091)();function a(i,n,s,c,h,v){var p,T;for(n||(n=3),s||(s=0),c?T=Math.min(c*n+s,i.length):T=i.length,p=s;p0&&(s=1/Math.sqrt(s),r[0]=o[0]*s,r[1]=o[1]*s,r[2]=o[2]*s),r}},7636:function(e){e.exports=t;function t(r,o){o=o||1;var a=Math.random()*2*Math.PI,i=Math.random()*2-1,n=Math.sqrt(1-i*i)*o;return r[0]=Math.cos(a)*n,r[1]=Math.sin(a)*n,r[2]=i*o,r}},6894:function(e){e.exports=t;function t(r,o,a,i){var n=a[1],s=a[2],c=o[1]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=o[0],r[1]=n+c*p-h*v,r[2]=s+c*v+h*p,r}},109:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[2],c=o[0]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+h*v+c*p,r[1]=o[1],r[2]=s+h*p-c*v,r}},8692:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[1],c=o[0]-n,h=o[1]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+c*p-h*v,r[1]=s+c*v+h*p,r[2]=o[2],r}},2447:function(e){e.exports=t;function t(r,o){return r[0]=Math.round(o[0]),r[1]=Math.round(o[1]),r[2]=Math.round(o[2]),r}},6621:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r}},8489:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r}},1463:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o,r[1]=a,r[2]=i,r}},6141:function(e,t,r){e.exports=r(2953)},5486:function(e,t,r){e.exports=r(3066)},2953:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return a*a+i*i+n*n}},3066:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return o*o+a*a+i*i}},2229:function(e,t,r){e.exports=r(6843)},6843:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r}},492:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2];return r[0]=i*a[0]+n*a[3]+s*a[6],r[1]=i*a[1]+n*a[4]+s*a[7],r[2]=i*a[2]+n*a[5]+s*a[8],r}},5673:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[3]*i+a[7]*n+a[11]*s+a[15];return c=c||1,r[0]=(a[0]*i+a[4]*n+a[8]*s+a[12])/c,r[1]=(a[1]*i+a[5]*n+a[9]*s+a[13])/c,r[2]=(a[2]*i+a[6]*n+a[10]*s+a[14])/c,r}},264:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r}},4361:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r[3]=o[3]+a[3],r}},2335:function(e){e.exports=t;function t(r){var o=new Float32Array(4);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o}},2933:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r}},7536:function(e){e.exports=t;function t(){var r=new Float32Array(4);return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}},4691:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return Math.sqrt(a*a+i*i+n*n+s*s)}},1373:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r[3]=o[3]/a[3],r}},3750:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]+r[3]*o[3]}},3390:function(e){e.exports=t;function t(r,o,a,i){var n=new Float32Array(4);return n[0]=r,n[1]=o,n[2]=a,n[3]=i,n}},9970:function(e,t,r){e.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r[3]=1/o[3],r}},6808:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return Math.sqrt(o*o+a*a+i*i+n*n)}},2573:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r[3]=h+i*(a[3]-h),r}},160:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r[3]=Math.max(o[3],a[3]),r}},2334:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r[3]=Math.min(o[3],a[3]),r}},3576:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r[3]=o[3]*a[3],r}},1498:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r[3]=-o[3],r}},5177:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a*a+i*i+n*n+s*s;return c>0&&(c=1/Math.sqrt(c),r[0]=a*c,r[1]=i*c,r[2]=n*c,r[3]=s*c),r}},9131:function(e,t,r){var o=r(5177),a=r(9288);e.exports=i;function i(n,s){return s=s||1,n[0]=Math.random(),n[1]=Math.random(),n[2]=Math.random(),n[3]=Math.random(),o(n,n),a(n,n,s),n}},9288:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r[3]=o[3]*a,r}},4844:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r[3]=o[3]+a[3]*i,r}},4578:function(e){e.exports=t;function t(r,o,a,i,n){return r[0]=o,r[1]=a,r[2]=i,r[3]=n,r}},7960:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return a*a+i*i+n*n+s*s}},483:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return o*o+a*a+i*i+n*n}},6860:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r[3]=o[3]-a[3],r}},5352:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3];return r[0]=a[0]*i+a[4]*n+a[8]*s+a[12]*c,r[1]=a[1]*i+a[5]*n+a[9]*s+a[13]*c,r[2]=a[2]*i+a[6]*n+a[10]*s+a[14]*c,r[3]=a[3]*i+a[7]*n+a[11]*s+a[15]*c,r}},4041:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r[3]=o[3],r}},1848:function(e,t,r){var o=r(4905),a=r(6468);e.exports=i;function i(n){for(var s=Array.isArray(n)?n:o(n),c=0;c0)continue;nt=ce.slice(0,1).join("")}return ee(nt),se+=nt.length,I=I.slice(nt.length),I.length}while(!0)}function et(){return/[^a-fA-F0-9]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function lt(){return B==="."||/[eE]/.test(B)?(I.push(B),F=w,O=B,L+1):B==="x"&&I.length===1&&I[0]==="0"?(F=u,I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Me(){return B==="f"&&(I.push(B),O=B,L+=1),/[eE]/.test(B)||(B==="-"||B==="+")&&/[eE]/.test(O)?(I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function ge(){if(/[^\d\w_]/.test(B)){var ce=I.join("");return j[ce]?F=m:ne[ce]?F=E:F=S,ee(I.join("")),F=c,L}return I.push(B),O=B,L+1}}},3508:function(e,t,r){var o=r(6852);o=o.slice().filter(function(a){return!/^(gl\_|texture)/.test(a)}),e.exports=o.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(e){e.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(e,t,r){var o=r(620);e.exports=o.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(e){e.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(e,t,r){var o=r(5874);e.exports=a;function a(i,n){var s=o(n),c=[];return c=c.concat(s(i)),c=c.concat(s(null)),c}},3236:function(e){e.exports=function(t){typeof t=="string"&&(t=[t]);for(var r=[].slice.call(arguments,1),o=[],a=0;a>1,T=-7,l=a?n-1:0,_=a?-1:1,w=r[o+l];for(l+=_,s=w&(1<<-T)-1,w>>=-T,T+=h;T>0;s=s*256+r[o+l],l+=_,T-=8);for(c=s&(1<<-T)-1,s>>=-T,T+=i;T>0;c=c*256+r[o+l],l+=_,T-=8);if(s===0)s=1-p;else{if(s===v)return c?NaN:(w?-1:1)*(1/0);c=c+Math.pow(2,i),s=s-p}return(w?-1:1)*c*Math.pow(2,s-i)},t.write=function(r,o,a,i,n,s){var c,h,v,p=s*8-n-1,T=(1<>1,_=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=i?0:s-1,S=i?1:-1,E=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(h=isNaN(o)?1:0,c=T):(c=Math.floor(Math.log(o)/Math.LN2),o*(v=Math.pow(2,-c))<1&&(c--,v*=2),c+l>=1?o+=_/v:o+=_*Math.pow(2,1-l),o*v>=2&&(c++,v/=2),c+l>=T?(h=0,c=T):c+l>=1?(h=(o*v-1)*Math.pow(2,n),c=c+l):(h=o*Math.pow(2,l-1)*Math.pow(2,n),c=0));n>=8;r[a+w]=h&255,w+=S,h/=256,n-=8);for(c=c<0;r[a+w]=c&255,w+=S,c/=256,p-=8);r[a+w-S]|=E*128}},8954:function(e,t,r){"use strict";e.exports=l;var o=r(3250),a=r(6803).Fw;function i(_,w,S){this.vertices=_,this.adjacent=w,this.boundary=S,this.lastVisited=-1}i.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var w=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=w};function n(_,w,S){this.vertices=_,this.cell=w,this.index=S}function s(_,w){return a(_.vertices,w.vertices)}function c(_){return function(){var w=this.tuple;return _.apply(this,w)}}function h(_){var w=o[_+1];return w||(w=o),c(w)}var v=[];function p(_,w,S){this.dimension=_,this.vertices=w,this.simplices=S,this.interior=S.filter(function(b){return!b.boundary}),this.tuple=new Array(_+1);for(var E=0;E<=_;++E)this.tuple[E]=this.vertices[E];var m=v[_];m||(m=v[_]=h(_)),this.orient=m}var T=p.prototype;T.handleBoundaryDegeneracy=function(_,w){var S=this.dimension,E=this.vertices.length-1,m=this.tuple,b=this.vertices,d=[_];for(_.lastVisited=-E;d.length>0;){_=d.pop();for(var u=_.adjacent,y=0;y<=S;++y){var f=u[y];if(!(!f.boundary||f.lastVisited<=-E)){for(var P=f.vertices,L=0;L<=S;++L){var z=P[L];z<0?m[L]=w:m[L]=b[z]}var F=this.orient();if(F>0)return f;f.lastVisited=-E,F===0&&d.push(f)}}}return null},T.walk=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=w?this.interior.length*Math.random()|0:this.interior.length-1,u=this.interior[d];e:for(;!u.boundary;){for(var y=u.vertices,f=u.adjacent,P=0;P<=E;++P)b[P]=m[y[P]];u.lastVisited=S;for(var P=0;P<=E;++P){var L=f[P];if(!(L.lastVisited>=S)){var z=b[P];b[P]=_;var F=this.orient();if(b[P]=z,F<0){u=L;continue e}else L.boundary?L.lastVisited=-S:L.lastVisited=S}}return}return u},T.addPeaks=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=this.interior,u=this.simplices,y=[w];w.lastVisited=S,w.vertices[w.vertices.indexOf(-1)]=S,w.boundary=!1,d.push(w);for(var f=[];y.length>0;){var w=y.pop(),P=w.vertices,L=w.adjacent,z=P.indexOf(S);if(!(z<0)){for(var F=0;F<=E;++F)if(F!==z){var B=L[F];if(!(!B.boundary||B.lastVisited>=S)){var O=B.vertices;if(B.lastVisited!==-S){for(var I=0,N=0;N<=E;++N)O[N]<0?(I=N,b[N]=_):b[N]=m[O[N]];var U=this.orient();if(U>0){O[I]=S,B.boundary=!1,d.push(B),y.push(B),B.lastVisited=S;continue}else B.lastVisited=-S}var W=B.adjacent,Q=P.slice(),ue=L.slice(),se=new i(Q,ue,!0);u.push(se);var he=W.indexOf(w);if(!(he<0)){W[he]=se,ue[z]=B,Q[F]=-1,ue[F]=w,L[F]=se,se.flip();for(var N=0;N<=E;++N){var G=Q[N];if(!(G<0||G===S)){for(var $=new Array(E-1),J=0,Z=0;Z<=E;++Z){var re=Q[Z];re<0||Z===N||($[J++]=re)}f.push(new n($,se,N))}}}}}}}f.sort(s);for(var F=0;F+1=0?d[y++]=u[P]:f=P&1;if(f===(_&1)){var L=d[0];d[0]=d[1],d[1]=L}w.push(d)}}return w};function l(_,w){var S=_.length;if(S===0)throw new Error("Must have at least d+1 points");var E=_[0].length;if(S<=E)throw new Error("Must input at least d+1 points");var m=_.slice(0,E+1),b=o.apply(void 0,m);if(b===0)throw new Error("Input not in general position");for(var d=new Array(E+1),u=0;u<=E;++u)d[u]=u;b<0&&(d[0]=1,d[1]=0);for(var y=new i(d,new Array(E+1),!1),f=y.adjacent,P=new Array(E+2),u=0;u<=E;++u){for(var L=d.slice(),z=0;z<=E;++z)z===u&&(L[z]=-1);var F=L[0];L[0]=L[1],L[1]=F;var B=new i(L,new Array(E+1),!0);f[u]=B,P[u]=B}P[E+1]=y;for(var u=0;u<=E;++u)for(var L=f[u].vertices,O=f[u].adjacent,z=0;z<=E;++z){var I=L[z];if(I<0){O[z]=y;continue}for(var N=0;N<=E;++N)f[N].vertices.indexOf(I)<0&&(O[z]=f[N])}for(var U=new p(E,m,P),W=!!w,u=E+1;u3*(P+1)?p(this,f):this.left.insert(f):this.left=b([f]);else if(f[0]>this.mid)this.right?4*(this.right.count+1)>3*(P+1)?p(this,f):this.right.insert(f):this.right=b([f]);else{var L=o.ge(this.leftPoints,f,E),z=o.ge(this.rightPoints,f,m);this.leftPoints.splice(L,0,f),this.rightPoints.splice(z,0,f)}},c.remove=function(f){var P=this.count-this.leftPoints;if(f[1]3*(P-1))return T(this,f);var z=this.left.remove(f);return z===n?(this.left=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else if(f[0]>this.mid){if(!this.right)return a;var F=this.left?this.left.count:0;if(4*F>3*(P-1))return T(this,f);var z=this.right.remove(f);return z===n?(this.right=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else{if(this.count===1)return this.leftPoints[0]===f?n:a;if(this.leftPoints.length===1&&this.leftPoints[0]===f){if(this.left&&this.right){for(var B=this,O=this.left;O.right;)B=O,O=O.right;if(B===this)O.right=this.right;else{var I=this.left,z=this.right;B.count-=O.count,B.right=O.left,O.left=I,O.right=z}h(this,O),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?h(this,this.left):h(this,this.right);return i}for(var I=o.ge(this.leftPoints,f,E);I=0&&f[z][1]>=P;--z){var F=L(f[z]);if(F)return F}}function w(f,P){for(var L=0;Lthis.mid){if(this.right){var L=this.right.queryPoint(f,P);if(L)return L}return _(this.rightPoints,f,P)}else return w(this.leftPoints,P)},c.queryInterval=function(f,P,L){if(fthis.mid&&this.right){var z=this.right.queryInterval(f,P,L);if(z)return z}return Pthis.mid?_(this.rightPoints,f,L):w(this.leftPoints,L)};function S(f,P){return f-P}function E(f,P){var L=f[0]-P[0];return L||f[1]-P[1]}function m(f,P){var L=f[1]-P[1];return L||f[0]-P[0]}function b(f){if(f.length===0)return null;for(var P=[],L=0;L>1],F=[],B=[],O=[],L=0;L13)&&o!==32&&o!==133&&o!==160&&o!==5760&&o!==6158&&(o<8192||o>8205)&&o!==8232&&o!==8233&&o!==8239&&o!==8287&&o!==8288&&o!==12288&&o!==65279)return!1;return!0}},395:function(e){function t(r,o,a){return r*(1-a)+o*a}e.exports=t},2652:function(e,t,r){var o=r(4335),a=r(6864),i=r(1903),n=r(9921),s=r(7608),c=r(5665),h={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},v=a(),p=a(),T=[0,0,0,0],l=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];e.exports=function(b,d,u,y,f,P){if(d||(d=[0,0,0]),u||(u=[0,0,0]),y||(y=[0,0,0]),f||(f=[0,0,0,1]),P||(P=[0,0,0,1]),!o(v,b)||(i(p,v),p[3]=0,p[7]=0,p[11]=0,p[15]=1,Math.abs(n(p)<1e-8)))return!1;var L=v[3],z=v[7],F=v[11],B=v[12],O=v[13],I=v[14],N=v[15];if(L!==0||z!==0||F!==0){T[0]=L,T[1]=z,T[2]=F,T[3]=N;var U=s(p,p);if(!U)return!1;c(p,p),w(f,T,p)}else f[0]=f[1]=f[2]=0,f[3]=1;if(d[0]=B,d[1]=O,d[2]=I,S(l,v),u[0]=h.length(l[0]),h.normalize(l[0],l[0]),y[0]=h.dot(l[0],l[1]),E(l[1],l[1],l[0],1,-y[0]),u[1]=h.length(l[1]),h.normalize(l[1],l[1]),y[0]/=u[1],y[1]=h.dot(l[0],l[2]),E(l[2],l[2],l[0],1,-y[1]),y[2]=h.dot(l[1],l[2]),E(l[2],l[2],l[1],1,-y[2]),u[2]=h.length(l[2]),h.normalize(l[2],l[2]),y[1]/=u[2],y[2]/=u[2],h.cross(_,l[1],l[2]),h.dot(l[0],_)<0)for(var W=0;W<3;W++)u[W]*=-1,l[W][0]*=-1,l[W][1]*=-1,l[W][2]*=-1;return P[0]=.5*Math.sqrt(Math.max(1+l[0][0]-l[1][1]-l[2][2],0)),P[1]=.5*Math.sqrt(Math.max(1-l[0][0]+l[1][1]-l[2][2],0)),P[2]=.5*Math.sqrt(Math.max(1-l[0][0]-l[1][1]+l[2][2],0)),P[3]=.5*Math.sqrt(Math.max(1+l[0][0]+l[1][1]+l[2][2],0)),l[2][1]>l[1][2]&&(P[0]=-P[0]),l[0][2]>l[2][0]&&(P[1]=-P[1]),l[1][0]>l[0][1]&&(P[2]=-P[2]),!0};function w(m,b,d){var u=b[0],y=b[1],f=b[2],P=b[3];return m[0]=d[0]*u+d[4]*y+d[8]*f+d[12]*P,m[1]=d[1]*u+d[5]*y+d[9]*f+d[13]*P,m[2]=d[2]*u+d[6]*y+d[10]*f+d[14]*P,m[3]=d[3]*u+d[7]*y+d[11]*f+d[15]*P,m}function S(m,b){m[0][0]=b[0],m[0][1]=b[1],m[0][2]=b[2],m[1][0]=b[4],m[1][1]=b[5],m[1][2]=b[6],m[2][0]=b[8],m[2][1]=b[9],m[2][2]=b[10]}function E(m,b,d,u,y){m[0]=b[0]*u+d[0]*y,m[1]=b[1]*u+d[1]*y,m[2]=b[2]*u+d[2]*y}},4335:function(e){e.exports=function(r,o){var a=o[15];if(a===0)return!1;for(var i=1/a,n=0;n<16;n++)r[n]=o[n]*i;return!0}},7442:function(e,t,r){var o=r(6658),a=r(7182),i=r(2652),n=r(9921),s=r(8648),c=T(),h=T(),v=T();e.exports=p;function p(w,S,E,m){if(n(S)===0||n(E)===0)return!1;var b=i(S,c.translate,c.scale,c.skew,c.perspective,c.quaternion),d=i(E,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return!b||!d?!1:(o(v.translate,c.translate,h.translate,m),o(v.skew,c.skew,h.skew,m),o(v.scale,c.scale,h.scale,m),o(v.perspective,c.perspective,h.perspective,m),s(v.quaternion,c.quaternion,h.quaternion,m),a(w,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function T(){return{translate:l(),scale:l(1),skew:l(),perspective:_(),quaternion:_()}}function l(w){return[w||0,w||0,w||0]}function _(){return[0,0,0,1]}},7182:function(e,t,r){var o={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},a=o.create(),i=o.create();e.exports=function(s,c,h,v,p,T){return o.identity(s),o.fromRotationTranslation(s,T,c),s[3]=p[0],s[7]=p[1],s[11]=p[2],s[15]=p[3],o.identity(i),v[2]!==0&&(i[9]=v[2],o.multiply(s,s,i)),v[1]!==0&&(i[9]=0,i[8]=v[1],o.multiply(s,s,i)),v[0]!==0&&(i[8]=0,i[4]=v[0],o.multiply(s,s,i)),o.scale(s,s,h),s}},1811:function(e,t,r){"use strict";var o=r(2478),a=r(7442),i=r(7608),n=r(5567),s=r(2408),c=r(7089),h=r(6582),v=r(7656),p=r(2504),T=r(3536),l=[0,0,0];e.exports=E;function _(m){this._components=m.slice(),this._time=[0],this.prevMatrix=m.slice(),this.nextMatrix=m.slice(),this.computedMatrix=m.slice(),this.computedInverse=m.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}var w=_.prototype;w.recalcMatrix=function(m){var b=this._time,d=o.le(b,m),u=this.computedMatrix;if(!(d<0)){var y=this._components;if(d===b.length-1)for(var f=16*d,P=0;P<16;++P)u[P]=y[f++];else{for(var L=b[d+1]-b[d],f=16*d,z=this.prevMatrix,F=!0,P=0;P<16;++P)z[P]=y[f++];for(var B=this.nextMatrix,P=0;P<16;++P)B[P]=y[f++],F=F&&z[P]===B[P];if(L<1e-6||F)for(var P=0;P<16;++P)u[P]=z[P];else a(u,z,B,(m-b[d])/L)}var O=this.computedUp;O[0]=u[1],O[1]=u[5],O[2]=u[9],T(O,O);var I=this.computedInverse;i(I,u);var N=this.computedEye,U=I[15];N[0]=I[12]/U,N[1]=I[13]/U,N[2]=I[14]/U;for(var W=this.computedCenter,Q=Math.exp(this.computedRadius[0]),P=0;P<3;++P)W[P]=N[P]-u[2+4*P]*Q}},w.idle=function(m){if(!(m1&&o(i[h[l-2]],i[h[l-1]],T)<=0;)l-=1,h.pop();for(h.push(p),l=v.length;l>1&&o(i[v[l-2]],i[v[l-1]],T)>=0;)l-=1,v.pop();v.push(p)}for(var _=new Array(v.length+h.length-2),w=0,s=0,S=h.length;s0;--E)_[w++]=v[E];return _}},351:function(e,t,r){"use strict";e.exports=a;var o=r(4687);function a(i,n){n||(n=i,i=window);var s=0,c=0,h=0,v={shift:!1,alt:!1,control:!1,meta:!1},p=!1;function T(f){var P=!1;return"altKey"in f&&(P=P||f.altKey!==v.alt,v.alt=!!f.altKey),"shiftKey"in f&&(P=P||f.shiftKey!==v.shift,v.shift=!!f.shiftKey),"ctrlKey"in f&&(P=P||f.ctrlKey!==v.control,v.control=!!f.ctrlKey),"metaKey"in f&&(P=P||f.metaKey!==v.meta,v.meta=!!f.metaKey),P}function l(f,P){var L=o.x(P),z=o.y(P);"buttons"in P&&(f=P.buttons|0),(f!==s||L!==c||z!==h||T(P))&&(s=f|0,c=L||0,h=z||0,n&&n(s,c,h,v))}function _(f){l(0,f)}function w(){(s||c||h||v.shift||v.alt||v.meta||v.control)&&(c=h=0,s=0,v.shift=v.alt=v.control=v.meta=!1,n&&n(0,0,0,v))}function S(f){T(f)&&n&&n(s,c,h,v)}function E(f){o.buttons(f)===0?l(0,f):l(s,f)}function m(f){l(s|o.buttons(f),f)}function b(f){l(s&~o.buttons(f),f)}function d(){p||(p=!0,i.addEventListener("mousemove",E),i.addEventListener("mousedown",m),i.addEventListener("mouseup",b),i.addEventListener("mouseleave",_),i.addEventListener("mouseenter",_),i.addEventListener("mouseout",_),i.addEventListener("mouseover",_),i.addEventListener("blur",w),i.addEventListener("keyup",S),i.addEventListener("keydown",S),i.addEventListener("keypress",S),i!==window&&(window.addEventListener("blur",w),window.addEventListener("keyup",S),window.addEventListener("keydown",S),window.addEventListener("keypress",S)))}function u(){p&&(p=!1,i.removeEventListener("mousemove",E),i.removeEventListener("mousedown",m),i.removeEventListener("mouseup",b),i.removeEventListener("mouseleave",_),i.removeEventListener("mouseenter",_),i.removeEventListener("mouseout",_),i.removeEventListener("mouseover",_),i.removeEventListener("blur",w),i.removeEventListener("keyup",S),i.removeEventListener("keydown",S),i.removeEventListener("keypress",S),i!==window&&(window.removeEventListener("blur",w),window.removeEventListener("keyup",S),window.removeEventListener("keydown",S),window.removeEventListener("keypress",S)))}d();var y={element:i};return Object.defineProperties(y,{enabled:{get:function(){return p},set:function(f){f?d():u()},enumerable:!0},buttons:{get:function(){return s},enumerable:!0},x:{get:function(){return c},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),y}},24:function(e){var t={left:0,top:0};e.exports=r;function r(a,i,n){i=i||a.currentTarget||a.srcElement,Array.isArray(n)||(n=[0,0]);var s=a.clientX||0,c=a.clientY||0,h=o(i);return n[0]=s-h.left,n[1]=c-h.top,n}function o(a){return a===window||a===document||a===document.body?t:a.getBoundingClientRect()}},4687:function(e,t){"use strict";function r(n){if(typeof n=="object"){if("buttons"in n)return n.buttons;if("which"in n){var s=n.which;if(s===2)return 4;if(s===3)return 2;if(s>0)return 1<=0)return 1<0){if(ue=1,G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,Q=2;Q0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E)),J+=1,P+=U,Q=2;Q0){if(Q=1,G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,ue=2;ue0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U,ue=2;ue 0"),typeof s.vertex!="function"&&c("Must specify vertex creation function"),typeof s.cell!="function"&&c("Must specify cell creation function"),typeof s.phase!="function"&&c("Must specify phase function");for(var T=s.getters||[],l=new Array(v),_=0;_=0?l[_]=!0:l[_]=!1;return i(s.vertex,s.cell,s.phase,p,h,l)}},6199:function(e,t,r){"use strict";var o=r(1338),a={zero:function(E,m,b,d){var u=E[0],y=b[0];d|=0;var f=0,P=y;for(f=0;f2&&f[1]>2&&d(y.pick(-1,-1).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,0).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,1).lo(1,1).hi(f[0]-2,f[1]-2)),f[1]>2&&(b(y.pick(0,-1).lo(1).hi(f[1]-2),u.pick(0,-1,1).lo(1).hi(f[1]-2)),m(u.pick(0,-1,0).lo(1).hi(f[1]-2))),f[1]>2&&(b(y.pick(f[0]-1,-1).lo(1).hi(f[1]-2),u.pick(f[0]-1,-1,1).lo(1).hi(f[1]-2)),m(u.pick(f[0]-1,-1,0).lo(1).hi(f[1]-2))),f[0]>2&&(b(y.pick(-1,0).lo(1).hi(f[0]-2),u.pick(-1,0,0).lo(1).hi(f[0]-2)),m(u.pick(-1,0,1).lo(1).hi(f[0]-2))),f[0]>2&&(b(y.pick(-1,f[1]-1).lo(1).hi(f[0]-2),u.pick(-1,f[1]-1,0).lo(1).hi(f[0]-2)),m(u.pick(-1,f[1]-1,1).lo(1).hi(f[0]-2))),u.set(0,0,0,0),u.set(0,0,1,0),u.set(f[0]-1,0,0,0),u.set(f[0]-1,0,1,0),u.set(0,f[1]-1,0,0),u.set(0,f[1]-1,1,0),u.set(f[0]-1,f[1]-1,0,0),u.set(f[0]-1,f[1]-1,1,0),u}}function S(E){var m=E.join(),f=v[m];if(f)return f;for(var b=E.length,d=[T,l],u=1;u<=b;++u)d.push(_(u));var y=w,f=y.apply(void 0,d);return v[m]=f,f}e.exports=function(m,b,d){if(Array.isArray(d)||(typeof d=="string"?d=o(b.dimension,d):d=o(b.dimension,"clamp")),b.size===0)return m;if(b.dimension===0)return m.set(0),m;var u=S(d);return u(m,b)}},4317:function(e){"use strict";function t(n,s){var c=Math.floor(s),h=s-c,v=0<=c&&c0;){O<64?(m=O,O=0):(m=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(b=I,I=0):(b=64,I-=64),l=F+O*u+I*y,S=B+O*P+I*L;var N=0,U=0,W=0,Q=f,ue=u-d*f,se=y-m*u,he=z,G=P-d*z,$=L-m*P;for(W=0;W0;){L<64?(m=L,L=0):(m=64,L-=64);for(var z=v[0]|0;z>0;){z<64?(E=z,z=0):(E=64,z-=64),l=f+L*d+z*b,S=P+L*y+z*u;var F=0,B=0,O=d,I=b-m*d,N=y,U=u-m*y;for(B=0;B0;){B<64?(b=B,B=0):(b=64,B-=64);for(var O=v[0]|0;O>0;){O<64?(E=O,O=0):(E=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(m=I,I=0):(m=64,I-=64),l=z+B*y+O*d+I*u,S=F+B*L+O*f+I*P;var N=0,U=0,W=0,Q=y,ue=d-b*y,se=u-E*d,he=L,G=f-b*L,$=P-E*f;for(W=0;W_;){N=0,U=F-m;t:for(O=0;OQ)break t;U+=f,N+=P}for(N=F,U=F-m,O=0;O>1,I=O-z,N=O+z,U=F,W=I,Q=O,ue=N,se=B,he=w+1,G=S-1,$=!0,J,Z,re,ne,j,ee,ie,fe,be,Ae=0,Be=0,Ie=0,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur=y,ar=T(ur),Cr=T(ur);at=b*U,it=b*W,jt=m;e:for(Ze=0;Ze0){Z=U,U=W,W=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*Q,jt=m;e:for(Ze=0;Ze0){Z=U,U=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*ue,jt=m;e:for(Ze=0;Ze0){Z=U,U=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*Q,it=b*ue,jt=m;e:for(Ze=0;Ze0){Z=Q,Q=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*se,jt=m;e:for(Ze=0;Ze0){Z=W,W=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}for(at=b*U,it=b*W,et=b*Q,lt=b*ue,Me=b*se,ge=b*F,ce=b*O,ze=b*B,Ot=0,jt=m,Ze=0;Ze0)G--;else if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze0){if(--GB){e:for(;;){for(ie=m+he*b,Ot=0,jt=m,Ze=0;Ze1&&_?S(l,_[0],_[1]):S(l)}var h={"uint32,1,0":function(p,T){return function(l){var _=l.data,w=l.offset|0,S=l.shape,E=l.stride,m=E[0]|0,b=S[0]|0,d=E[1]|0,u=S[1]|0,y=d,f=d,P=1;b<=32?p(0,b-1,_,w,m,d,b,u,y,f,P):T(0,b-1,_,w,m,d,b,u,y,f,P)}}};function v(p,T){var l=[T,p].join(","),_=h[l],w=n(p,T),S=c(p,T,w);return _(w,S)}e.exports=v},446:function(e,t,r){"use strict";var o=r(7640),a={};function i(n){var s=n.order,c=n.dtype,h=[s,c],v=h.join(":"),p=a[v];return p||(a[v]=p=o(s,c)),p(n),n}e.exports=i},9618:function(e,t,r){var o=r(7163),a=typeof Float64Array<"u";function i(T,l){return T[0]-l[0]}function n(){var T=this.stride,l=new Array(T.length),_;for(_=0;_=0&&(d=m|0,b+=y*d,u-=d),new w(this.data,u,y,b)},S.step=function(m){var b=this.shape[0],d=this.stride[0],u=this.offset,y=0,f=Math.ceil;return typeof m=="number"&&(y=m|0,y<0?(u+=d*(b-1),b=f(-b/y)):b=f(b/y),d*=y),new w(this.data,b,d,u)},S.transpose=function(m){m=m===void 0?0:m|0;var b=this.shape,d=this.stride;return new w(this.data,b[m],d[m],this.offset)},S.pick=function(m){var b=[],d=[],u=this.offset;typeof m=="number"&&m>=0?u=u+this.stride[0]*m|0:(b.push(this.shape[0]),d.push(this.stride[0]));var y=l[b.length+1];return y(this.data,b,d,u)},function(m,b,d,u){return new w(m,b[0],d[0],u)}},2:function(T,l,_){function w(E,m,b,d,u,y){this.data=E,this.shape=[m,b],this.stride=[d,u],this.offset=y|0}var S=w.prototype;return S.dtype=T,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(m,b,d){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b,d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]=d},S.get=function(m,b){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]},S.index=function(m,b){return this.offset+this.stride[0]*m+this.stride[1]*b},S.hi=function(m,b){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(m,b){var d=this.offset,u=0,y=this.shape[0],f=this.shape[1],P=this.stride[0],L=this.stride[1];return typeof m=="number"&&m>=0&&(u=m|0,d+=P*u,y-=u),typeof b=="number"&&b>=0&&(u=b|0,d+=L*u,f-=u),new w(this.data,y,f,P,L,d)},S.step=function(m,b){var d=this.shape[0],u=this.shape[1],y=this.stride[0],f=this.stride[1],P=this.offset,L=0,z=Math.ceil;return typeof m=="number"&&(L=m|0,L<0?(P+=y*(d-1),d=z(-d/L)):d=z(d/L),y*=L),typeof b=="number"&&(L=b|0,L<0?(P+=f*(u-1),u=z(-u/L)):u=z(u/L),f*=L),new w(this.data,d,u,y,f,P)},S.transpose=function(m,b){m=m===void 0?0:m|0,b=b===void 0?1:b|0;var d=this.shape,u=this.stride;return new w(this.data,d[m],d[b],u[m],u[b],this.offset)},S.pick=function(m,b){var d=[],u=[],y=this.offset;typeof m=="number"&&m>=0?y=y+this.stride[0]*m|0:(d.push(this.shape[0]),u.push(this.stride[0])),typeof b=="number"&&b>=0?y=y+this.stride[1]*b|0:(d.push(this.shape[1]),u.push(this.stride[1]));var f=l[d.length+1];return f(this.data,d,u,y)},function(m,b,d,u){return new w(m,b[0],b[1],d[0],d[1],u)}},3:function(T,l,_){function w(E,m,b,d,u,y,f,P){this.data=E,this.shape=[m,b,d],this.stride=[u,y,f],this.offset=P|0}var S=w.prototype;return S.dtype=T,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var m=Math.abs(this.stride[0]),b=Math.abs(this.stride[1]),d=Math.abs(this.stride[2]);return m>b?b>d?[2,1,0]:m>d?[1,2,0]:[1,0,2]:m>d?[2,0,1]:d>b?[0,1,2]:[0,2,1]}}),S.set=function(m,b,d,u){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d,u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]=u},S.get=function(m,b,d){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]},S.index=function(m,b,d){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d},S.hi=function(m,b,d){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(m,b,d){var u=this.offset,y=0,f=this.shape[0],P=this.shape[1],L=this.shape[2],z=this.stride[0],F=this.stride[1],B=this.stride[2];return typeof m=="number"&&m>=0&&(y=m|0,u+=z*y,f-=y),typeof b=="number"&&b>=0&&(y=b|0,u+=F*y,P-=y),typeof d=="number"&&d>=0&&(y=d|0,u+=B*y,L-=y),new w(this.data,f,P,L,z,F,B,u)},S.step=function(m,b,d){var u=this.shape[0],y=this.shape[1],f=this.shape[2],P=this.stride[0],L=this.stride[1],z=this.stride[2],F=this.offset,B=0,O=Math.ceil;return typeof m=="number"&&(B=m|0,B<0?(F+=P*(u-1),u=O(-u/B)):u=O(u/B),P*=B),typeof b=="number"&&(B=b|0,B<0?(F+=L*(y-1),y=O(-y/B)):y=O(y/B),L*=B),typeof d=="number"&&(B=d|0,B<0?(F+=z*(f-1),f=O(-f/B)):f=O(f/B),z*=B),new w(this.data,u,y,f,P,L,z,F)},S.transpose=function(m,b,d){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0;var u=this.shape,y=this.stride;return new w(this.data,u[m],u[b],u[d],y[m],y[b],y[d],this.offset)},S.pick=function(m,b,d){var u=[],y=[],f=this.offset;typeof m=="number"&&m>=0?f=f+this.stride[0]*m|0:(u.push(this.shape[0]),y.push(this.stride[0])),typeof b=="number"&&b>=0?f=f+this.stride[1]*b|0:(u.push(this.shape[1]),y.push(this.stride[1])),typeof d=="number"&&d>=0?f=f+this.stride[2]*d|0:(u.push(this.shape[2]),y.push(this.stride[2]));var P=l[u.length+1];return P(this.data,u,y,f)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],d[0],d[1],d[2],u)}},4:function(T,l,_){function w(E,m,b,d,u,y,f,P,L,z){this.data=E,this.shape=[m,b,d,u],this.stride=[y,f,P,L],this.offset=z|0}var S=w.prototype;return S.dtype=T,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:_}),S.set=function(m,b,d,u,y){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u,y):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]=y},S.get=function(m,b,d,u){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]},S.index=function(m,b,d,u){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u},S.hi=function(m,b,d,u){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,typeof u!="number"||u<0?this.shape[3]:u|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(m,b,d,u){var y=this.offset,f=0,P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.stride[0],O=this.stride[1],I=this.stride[2],N=this.stride[3];return typeof m=="number"&&m>=0&&(f=m|0,y+=B*f,P-=f),typeof b=="number"&&b>=0&&(f=b|0,y+=O*f,L-=f),typeof d=="number"&&d>=0&&(f=d|0,y+=I*f,z-=f),typeof u=="number"&&u>=0&&(f=u|0,y+=N*f,F-=f),new w(this.data,P,L,z,F,B,O,I,N,y)},S.step=function(m,b,d,u){var y=this.shape[0],f=this.shape[1],P=this.shape[2],L=this.shape[3],z=this.stride[0],F=this.stride[1],B=this.stride[2],O=this.stride[3],I=this.offset,N=0,U=Math.ceil;return typeof m=="number"&&(N=m|0,N<0?(I+=z*(y-1),y=U(-y/N)):y=U(y/N),z*=N),typeof b=="number"&&(N=b|0,N<0?(I+=F*(f-1),f=U(-f/N)):f=U(f/N),F*=N),typeof d=="number"&&(N=d|0,N<0?(I+=B*(P-1),P=U(-P/N)):P=U(P/N),B*=N),typeof u=="number"&&(N=u|0,N<0?(I+=O*(L-1),L=U(-L/N)):L=U(L/N),O*=N),new w(this.data,y,f,P,L,z,F,B,O,I)},S.transpose=function(m,b,d,u){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0,u=u===void 0?3:u|0;var y=this.shape,f=this.stride;return new w(this.data,y[m],y[b],y[d],y[u],f[m],f[b],f[d],f[u],this.offset)},S.pick=function(m,b,d,u){var y=[],f=[],P=this.offset;typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(y.push(this.shape[0]),f.push(this.stride[0])),typeof b=="number"&&b>=0?P=P+this.stride[1]*b|0:(y.push(this.shape[1]),f.push(this.stride[1])),typeof d=="number"&&d>=0?P=P+this.stride[2]*d|0:(y.push(this.shape[2]),f.push(this.stride[2])),typeof u=="number"&&u>=0?P=P+this.stride[3]*u|0:(y.push(this.shape[3]),f.push(this.stride[3]));var L=l[y.length+1];return L(this.data,y,f,P)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],b[3],d[0],d[1],d[2],d[3],u)}},5:function(l,_,w){function S(m,b,d,u,y,f,P,L,z,F,B,O){this.data=m,this.shape=[b,d,u,y,f],this.stride=[P,L,z,F,B],this.offset=O|0}var E=S.prototype;return E.dtype=l,E.dimension=5,Object.defineProperty(E,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(E,"order",{get:w}),E.set=function(b,d,u,y,f,P){return l==="generic"?this.data.set(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f,P):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]=P},E.get=function(b,d,u,y,f){return l==="generic"?this.data.get(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]},E.index=function(b,d,u,y,f){return this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f},E.hi=function(b,d,u,y,f){return new S(this.data,typeof b!="number"||b<0?this.shape[0]:b|0,typeof d!="number"||d<0?this.shape[1]:d|0,typeof u!="number"||u<0?this.shape[2]:u|0,typeof y!="number"||y<0?this.shape[3]:y|0,typeof f!="number"||f<0?this.shape[4]:f|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},E.lo=function(b,d,u,y,f){var P=this.offset,L=0,z=this.shape[0],F=this.shape[1],B=this.shape[2],O=this.shape[3],I=this.shape[4],N=this.stride[0],U=this.stride[1],W=this.stride[2],Q=this.stride[3],ue=this.stride[4];return typeof b=="number"&&b>=0&&(L=b|0,P+=N*L,z-=L),typeof d=="number"&&d>=0&&(L=d|0,P+=U*L,F-=L),typeof u=="number"&&u>=0&&(L=u|0,P+=W*L,B-=L),typeof y=="number"&&y>=0&&(L=y|0,P+=Q*L,O-=L),typeof f=="number"&&f>=0&&(L=f|0,P+=ue*L,I-=L),new S(this.data,z,F,B,O,I,N,U,W,Q,ue,P)},E.step=function(b,d,u,y,f){var P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.shape[4],O=this.stride[0],I=this.stride[1],N=this.stride[2],U=this.stride[3],W=this.stride[4],Q=this.offset,ue=0,se=Math.ceil;return typeof b=="number"&&(ue=b|0,ue<0?(Q+=O*(P-1),P=se(-P/ue)):P=se(P/ue),O*=ue),typeof d=="number"&&(ue=d|0,ue<0?(Q+=I*(L-1),L=se(-L/ue)):L=se(L/ue),I*=ue),typeof u=="number"&&(ue=u|0,ue<0?(Q+=N*(z-1),z=se(-z/ue)):z=se(z/ue),N*=ue),typeof y=="number"&&(ue=y|0,ue<0?(Q+=U*(F-1),F=se(-F/ue)):F=se(F/ue),U*=ue),typeof f=="number"&&(ue=f|0,ue<0?(Q+=W*(B-1),B=se(-B/ue)):B=se(B/ue),W*=ue),new S(this.data,P,L,z,F,B,O,I,N,U,W,Q)},E.transpose=function(b,d,u,y,f){b=b===void 0?0:b|0,d=d===void 0?1:d|0,u=u===void 0?2:u|0,y=y===void 0?3:y|0,f=f===void 0?4:f|0;var P=this.shape,L=this.stride;return new S(this.data,P[b],P[d],P[u],P[y],P[f],L[b],L[d],L[u],L[y],L[f],this.offset)},E.pick=function(b,d,u,y,f){var P=[],L=[],z=this.offset;typeof b=="number"&&b>=0?z=z+this.stride[0]*b|0:(P.push(this.shape[0]),L.push(this.stride[0])),typeof d=="number"&&d>=0?z=z+this.stride[1]*d|0:(P.push(this.shape[1]),L.push(this.stride[1])),typeof u=="number"&&u>=0?z=z+this.stride[2]*u|0:(P.push(this.shape[2]),L.push(this.stride[2])),typeof y=="number"&&y>=0?z=z+this.stride[3]*y|0:(P.push(this.shape[3]),L.push(this.stride[3])),typeof f=="number"&&f>=0?z=z+this.stride[4]*f|0:(P.push(this.shape[4]),L.push(this.stride[4]));var F=_[P.length+1];return F(this.data,P,L,z)},function(b,d,u,y){return new S(b,d[0],d[1],d[2],d[3],d[4],u[0],u[1],u[2],u[3],u[4],y)}}};function c(T,l){var _=l===-1?"T":String(l),w=s[_];return l===-1?w(T):l===0?w(T,v[T][0]):w(T,v[T],n)}function h(T){if(o(T))return"buffer";if(a)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function p(T,l,_,w){if(T===void 0){var u=v.array[0];return u([])}else typeof T=="number"&&(T=[T]);l===void 0&&(l=[T.length]);var S=l.length;if(_===void 0){_=new Array(S);for(var E=S-1,m=1;E>=0;--E)_[E]=m,m*=l[E]}if(w===void 0){w=0;for(var E=0;E>>0;e.exports=n;function n(s,c){if(isNaN(s)||isNaN(c))return NaN;if(s===c)return s;if(s===0)return c<0?-a:a;var h=o.hi(s),v=o.lo(s);return c>s==s>0?v===i?(h+=1,v=0):v+=1:v===0?(v=i,h-=1):v-=1,o.pack(v,h)}},8406:function(e,t){var r=1e-6,o=1e-6;t.vertexNormals=function(a,i,n){for(var s=i.length,c=new Array(s),h=n===void 0?r:n,v=0;vh)for(var P=c[l],L=1/Math.sqrt(d*y),f=0;f<3;++f){var z=(f+1)%3,F=(f+2)%3;P[f]+=L*(u[z]*b[F]-u[F]*b[z])}}for(var v=0;vh)for(var L=1/Math.sqrt(B),f=0;f<3;++f)P[f]*=L;else for(var f=0;f<3;++f)P[f]=0}return c},t.faceNormals=function(a,i,n){for(var s=a.length,c=new Array(s),h=n===void 0?o:n,v=0;vh?E=1/Math.sqrt(E):E=0;for(var l=0;l<3;++l)S[l]*=E;c[v]=S}return c}},4081:function(e){"use strict";e.exports=t;function t(r,o,a,i,n,s,c,h,v,p){var T=o+s+p;if(l>0){var l=Math.sqrt(T+1);r[0]=.5*(c-v)/l,r[1]=.5*(h-i)/l,r[2]=.5*(a-s)/l,r[3]=.5*l}else{var _=Math.max(o,s,p),l=Math.sqrt(2*_-T+1);o>=_?(r[0]=.5*l,r[1]=.5*(n+a)/l,r[2]=.5*(h+i)/l,r[3]=.5*(c-v)/l):s>=_?(r[0]=.5*(a+n)/l,r[1]=.5*l,r[2]=.5*(v+c)/l,r[3]=.5*(h-i)/l):(r[0]=.5*(i+h)/l,r[1]=.5*(c+v)/l,r[2]=.5*l,r[3]=.5*(a-n)/l)}return r}},9977:function(e,t,r){"use strict";e.exports=l;var o=r(9215),a=r(6582),i=r(7399),n=r(7608),s=r(4081);function c(_,w,S){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2))}function h(_,w,S,E){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2)+Math.pow(E,2))}function v(_,w){var S=w[0],E=w[1],m=w[2],b=w[3],d=h(S,E,m,b);d>1e-6?(_[0]=S/d,_[1]=E/d,_[2]=m/d,_[3]=b/d):(_[0]=_[1]=_[2]=0,_[3]=1)}function p(_,w,S){this.radius=o([S]),this.center=o(w),this.rotation=o(_),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=p.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var w=this.computedRotation;v(w,w);var S=this.computedMatrix;i(S,w);var E=this.computedCenter,m=this.computedEye,b=this.computedUp,d=Math.exp(this.computedRadius[0]);m[0]=E[0]+d*S[2],m[1]=E[1]+d*S[6],m[2]=E[2]+d*S[10],b[0]=S[1],b[1]=S[5],b[2]=S[9];for(var u=0;u<3;++u){for(var y=0,f=0;f<3;++f)y+=S[u+4*f]*m[f];S[12+u]=-y}},T.getMatrix=function(_,w){this.recalcMatrix(_);var S=this.computedMatrix;if(w){for(var E=0;E<16;++E)w[E]=S[E];return w}return S},T.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},T.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},T.pan=function(_,w,S,E){w=w||0,S=S||0,E=E||0,this.recalcMatrix(_);var m=this.computedMatrix,b=m[1],d=m[5],u=m[9],y=c(b,d,u);b/=y,d/=y,u/=y;var f=m[0],P=m[4],L=m[8],z=f*b+P*d+L*u;f-=b*z,P-=d*z,L-=u*z;var F=c(f,P,L);f/=F,P/=F,L/=F;var B=m[2],O=m[6],I=m[10],N=B*b+O*d+I*u,U=B*f+O*P+I*L;B-=N*b+U*f,O-=N*d+U*P,I-=N*u+U*L;var W=c(B,O,I);B/=W,O/=W,I/=W;var Q=f*w+b*S,ue=P*w+d*S,se=L*w+u*S;this.center.move(_,Q,ue,se);var he=Math.exp(this.computedRadius[0]);he=Math.max(1e-4,he+E),this.radius.set(_,Math.log(he))},T.rotate=function(_,w,S,E){this.recalcMatrix(_),w=w||0,S=S||0;var m=this.computedMatrix,b=m[0],d=m[4],u=m[8],y=m[1],f=m[5],P=m[9],L=m[2],z=m[6],F=m[10],B=w*b+S*y,O=w*d+S*f,I=w*u+S*P,N=-(z*I-F*O),U=-(F*B-L*I),W=-(L*O-z*B),Q=Math.sqrt(Math.max(0,1-Math.pow(N,2)-Math.pow(U,2)-Math.pow(W,2))),ue=h(N,U,W,Q);ue>1e-6?(N/=ue,U/=ue,W/=ue,Q/=ue):(N=U=W=0,Q=1);var se=this.computedRotation,he=se[0],G=se[1],$=se[2],J=se[3],Z=he*Q+J*N+G*W-$*U,re=G*Q+J*U+$*N-he*W,ne=$*Q+J*W+he*U-G*N,j=J*Q-he*N-G*U-$*W;if(E){N=L,U=z,W=F;var ee=Math.sin(E)/c(N,U,W);N*=ee,U*=ee,W*=ee,Q=Math.cos(w),Z=Z*Q+j*N+re*W-ne*U,re=re*Q+j*U+ne*N-Z*W,ne=ne*Q+j*W+Z*U-re*N,j=j*Q-Z*N-re*U-ne*W}var ie=h(Z,re,ne,j);ie>1e-6?(Z/=ie,re/=ie,ne/=ie,j/=ie):(Z=re=ne=0,j=1),this.rotation.set(_,Z,re,ne,j)},T.lookAt=function(_,w,S,E){this.recalcMatrix(_),S=S||this.computedCenter,w=w||this.computedEye,E=E||this.computedUp;var m=this.computedMatrix;a(m,w,S,E);var b=this.computedRotation;s(b,m[0],m[1],m[2],m[4],m[5],m[6],m[8],m[9],m[10]),v(b,b),this.rotation.set(_,b[0],b[1],b[2],b[3]);for(var d=0,u=0;u<3;++u)d+=Math.pow(S[u]-w[u],2);this.radius.set(_,.5*Math.log(Math.max(d,1e-6))),this.center.set(_,S[0],S[1],S[2])},T.translate=function(_,w,S,E){this.center.move(_,w||0,S||0,E||0)},T.setMatrix=function(_,w){var S=this.computedRotation;s(S,w[0],w[1],w[2],w[4],w[5],w[6],w[8],w[9],w[10]),v(S,S),this.rotation.set(_,S[0],S[1],S[2],S[3]);var E=this.computedMatrix;n(E,w);var m=E[15];if(Math.abs(m)>1e-6){var b=E[12]/m,d=E[13]/m,u=E[14]/m;this.recalcMatrix(_);var y=Math.exp(this.computedRadius[0]);this.center.set(_,b-E[2]*y,d-E[6]*y,u-E[10]*y),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},T.setDistance=function(_,w){w>0&&this.radius.set(_,Math.log(w))},T.setDistanceLimits=function(_,w){_>0?_=Math.log(_):_=-1/0,w>0?w=Math.log(w):w=1/0,w=Math.max(w,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=w},T.getDistanceLimits=function(_){var w=this.radius.bounds;return _?(_[0]=Math.exp(w[0][0]),_[1]=Math.exp(w[1][0]),_):[Math.exp(w[0][0]),Math.exp(w[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(_){var w=this.lastT(),S=_.center;S&&this.center.set(w,S[0],S[1],S[2]);var E=_.rotation;E&&this.rotation.set(w,E[0],E[1],E[2],E[3]);var m=_.distance;m&&m>0&&this.radius.set(w,Math.log(m)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function l(_){_=_||{};var w=_.center||[0,0,0],S=_.rotation||[0,0,0,1],E=_.radius||1;w=[].slice.call(w,0,3),S=[].slice.call(S,0,4),v(S,S);var m=new p(S,w,Math.log(E));return m.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&m.lookAt(0,_.eye,_.center,_.up),m}},1371:function(e,t,r){"use strict";var o=r(3233);e.exports=function(i,n,s){return s=typeof s<"u"?s+"":" ",o(s,n)+i}},3202:function(e){e.exports=function(r,o){o||(o=[0,""]),r=String(r);var a=parseFloat(r,10);return o[0]=a,o[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",o}},3088:function(e,t,r){"use strict";e.exports=a;var o=r(3140);function a(i,n){for(var s=n.length|0,c=i.length,h=[new Array(s),new Array(s)],v=0;v0){P=h[F][y][0],z=F;break}L=P[z^1];for(var B=0;B<2;++B)for(var O=h[B][y],I=0;I0&&(P=N,L=U,z=B)}return f||P&&l(P,z),L}function w(u,y){var f=h[y][u][0],P=[u];l(f,y);for(var L=f[y^1],z=y;;){for(;L!==u;)P.push(L),L=_(P[P.length-2],L,!1);if(h[0][u].length+h[1][u].length===0)break;var F=P[P.length-1],B=u,O=P[1],I=_(F,B,!0);if(o(n[F],n[B],n[O],n[I])<0)break;P.push(u),L=_(F,B)}return P}function S(u,y){return y[1]===y[y.length-1]}for(var v=0;v0;){var b=h[0][v].length,d=w(v,E);S(m,d)?m.push.apply(m,d):(m.length>0&&T.push(m),m=d)}m.length>0&&T.push(m)}return T}},5609:function(e,t,r){"use strict";e.exports=a;var o=r(3134);function a(i,n){for(var s=o(i,n.length),c=new Array(n.length),h=new Array(n.length),v=[],p=0;p0;){var l=v.pop();c[l]=!1;for(var _=s[l],p=0;p<_.length;++p){var w=_[p];--h[w]===0&&v.push(w)}}for(var S=new Array(n.length),E=[],p=0;p0}b=b.filter(d);for(var u=b.length,y=new Array(u),f=new Array(u),m=0;m0;){var ie=ne.pop(),fe=ue[ie];c(fe,function(Ze,at){return Ze-at});var be=fe.length,Ae=j[ie],Be;if(Ae===0){var O=b[ie];Be=[O]}for(var m=0;m=0)&&(j[Ie]=Ae^1,ne.push(Ie),Ae===0)){var O=b[Ie];re(O)||(O.reverse(),Be.push(O))}}Ae===0&&ee.push(Be)}return ee}},5085:function(e,t,r){e.exports=_;var o=r(3250)[3],a=r(4209),i=r(3352),n=r(2478);function s(){return!0}function c(w){return function(S,E){var m=w[S];return m?!!m.queryPoint(E,s):!1}}function h(w){for(var S={},E=0;E0&&S[m]===E[0])b=w[m-1];else return 1;for(var d=1;b;){var u=b.key,y=o(E,u[0],u[1]);if(u[0][0]0)d=-1,b=b.right;else return 0;else if(y>0)b=b.left;else if(y<0)d=1,b=b.right;else return 0}return d}}function p(w){return 1}function T(w){return function(E){return w(E[0],E[1])?0:1}}function l(w,S){return function(m){return w(m[0],m[1])?0:S(m)}}function _(w){for(var S=w.length,E=[],m=[],b=0,d=0;d=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S)):(u=0,w>=0?(y=0,f=S):-w>=l?(y=1,f=l+2*w+S):(y=-w/l,f=w*y+S));else if(y<0)y=0,_>=0?(u=0,f=S):-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S);else{var P=1/d;u*=P,y*=P,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S}else{var L,z,F,B;u<0?(L=T+_,z=l+w,z>L?(F=z-L,B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(u=0,z<=0?(y=1,f=l+2*w+S):w>=0?(y=0,f=S):(y=-w/l,f=w*y+S))):y<0?(L=T+w,z=p+_,z>L?(F=z-L,B=p-2*T+l,F>=B?(y=1,u=0,f=l+2*w+S):(y=F/B,u=1-y,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(y=0,z<=0?(u=1,f=p+2*_+S):_>=0?(u=0,f=S):(u=-_/p,f=_*u+S))):(F=l+w-T-_,F<=0?(u=0,y=1,f=l+2*w+S):(B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)))}for(var O=1-u-y,v=0;v0){var l=s[h-1];if(o(p,l)===0&&i(l)!==T){h-=1;continue}}s[h++]=p}}return s.length=h,s}},3233:function(e){"use strict";var t="",r;e.exports=o;function o(a,i){if(typeof a!="string")throw new TypeError("expected a string");if(i===1)return a;if(i===2)return a+a;var n=a.length*i;if(r!==a||typeof r>"u")r=a,t="";else if(t.length>=n)return t.substr(0,n);for(;n>t.length&&i>1;)i&1&&(t+=a),i>>=1,a+=a;return t+=a,t=t.substr(0,n),t}},3025:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(e){"use strict";e.exports=t;function t(r){for(var o=r.length,a=r[r.length-1],i=o,n=o-2;n>=0;--n){var s=a,c=r[n];a=s+c;var h=a-s,v=c-h;v&&(r[--i]=a,a=v)}for(var p=0,n=i;n0){if(z<=0)return F;B=L+z}else if(L<0){if(z>=0)return F;B=-(L+z)}else return F;var O=h*B;return F>=O||F<=-O?F:w(y,f,P)},function(y,f,P,L){var z=y[0]-L[0],F=f[0]-L[0],B=P[0]-L[0],O=y[1]-L[1],I=f[1]-L[1],N=P[1]-L[1],U=y[2]-L[2],W=f[2]-L[2],Q=P[2]-L[2],ue=F*N,se=B*I,he=B*O,G=z*N,$=z*I,J=F*O,Z=U*(ue-se)+W*(he-G)+Q*($-J),re=(Math.abs(ue)+Math.abs(se))*Math.abs(U)+(Math.abs(he)+Math.abs(G))*Math.abs(W)+(Math.abs($)+Math.abs(J))*Math.abs(Q),ne=v*re;return Z>ne||-Z>ne?Z:S(y,f,P,L)}];function m(u){var y=E[u.length];return y||(y=E[u.length]=_(u.length)),y.apply(void 0,u)}function b(u,y,f,P,L,z,F){return function(O,I,N,U,W){switch(arguments.length){case 0:case 1:return 0;case 2:return P(O,I);case 3:return L(O,I,N);case 4:return z(O,I,N,U);case 5:return F(O,I,N,U,W)}for(var Q=new Array(arguments.length),ue=0;ue0&&p>0||v<0&&p<0)return!1;var T=o(c,n,s),l=o(h,n,s);return T>0&&l>0||T<0&&l<0?!1:v===0&&p===0&&T===0&&l===0?a(n,s,c,h):!0}},8545:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],-a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=-a[p],S=T(w),E,m;_=n?(E=l,v+=1,v=n?(E=l,v+=1,v"u"&&(E=s(_));var m=_.length;if(m===0||E<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=c(w,+S),d=h(_,E),u=v(d,w,b,+S),y=p(d,w.length|0),f=n(E)(_,d.data,y,b),P=T(d),L=[].slice.call(u.data,0,u.shape[0]);return a.free(b),a.free(d.data),a.free(u.data),a.free(y),{cells:f,vertexIds:P,vertexWeights:L}}},1570:function(e){"use strict";e.exports=r;var t=[function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T>1,w=s[2*_+1];if(w===p)return _;p>1,w=s[2*_+1];if(w===p)return _;p>1,w=s[2*_+1];if(w===p)return _;p>1,w=s[2*_+1];if(w===p)return _;p>1,B=h(y[F],f);B<=0?(B===0&&(z=F),P=F+1):B>0&&(L=F-1)}return z}o=l;function _(y,f){for(var P=new Array(y.length),L=0,z=P.length;L=y.length||h(y[ue],F)!==0););}return P}o=_;function w(y,f){if(!f)return _(T(E(y,0)),y,0);for(var P=new Array(f),L=0;L>>N&1&&I.push(z[N]);f.push(I)}return p(f)}o=S;function E(y,f){if(f<0)return[];for(var P=[],L=(1<0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},2014:function(e,t,r){"use strict";"use restrict";var o=r(3105),a=r(4623);function i(u){for(var y=0,f=Math.max,P=0,L=u.length;P>1,F=c(u[z],y);F<=0?(F===0&&(L=z),f=z+1):F>0&&(P=z-1)}return L}t.findCell=T;function l(u,y){for(var f=new Array(u.length),P=0,L=f.length;P=u.length||c(u[Q],z)!==0););}return f}t.incidence=l;function _(u,y){if(!y)return l(p(S(u,0)),u,0);for(var f=new Array(y),P=0;P>>I&1&&O.push(L[I]);y.push(O)}return v(y)}t.explode=w;function S(u,y){if(y<0)return[];for(var f=[],P=(1<>1:(G>>1)-1}function P(G){for(var $=y(G);;){var J=$,Z=2*G+1,re=2*(G+1),ne=G;if(Z0;){var J=f(G);if(J>=0){var Z=y(J);if($0){var G=O[0];return u(0,U-1),U-=1,P(0),G}return-1}function F(G,$){var J=O[G];return _[J]===$?G:(_[J]=-1/0,L(G),z(),_[J]=$,U+=1,L(U-1))}function B(G){if(!w[G]){w[G]=!0;var $=T[G],J=l[G];T[J]>=0&&(T[J]=$),l[$]>=0&&(l[$]=J),I[$]>=0&&F(I[$],d($)),I[J]>=0&&F(I[J],d(J))}}for(var O=[],I=new Array(v),S=0;S>1;S>=0;--S)P(S);for(;;){var W=z();if(W<0||_[W]>h)break;B(W)}for(var Q=[],S=0;S=0&&J>=0&&$!==J){var Z=I[$],re=I[J];Z!==re&&he.push([Z,re])}}),a.unique(a.normalize(he)),{positions:Q,edges:he}}},1303:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){var c,h;if(s[0][0]s[1][0])c=s[1],h=s[0];else{var v=Math.min(n[0][1],n[1][1]),p=Math.max(n[0][1],n[1][1]),T=Math.min(s[0][1],s[1][1]),l=Math.max(s[0][1],s[1][1]);return pl?v-l:p-l}var _,w;n[0][1]s[1][0])c=s[1],h=s[0];else return a(s,n);var v,p;if(n[0][0]n[1][0])v=n[1],p=n[0];else return-a(n,s);var T=o(c,h,p),l=o(c,h,v);if(T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;if(T=o(p,v,h),l=o(p,v,c),T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;return h[0]-p[0]}},4209:function(e,t,r){"use strict";e.exports=l;var o=r(2478),a=r(3840),i=r(3250),n=r(1303);function s(_,w,S){this.slabs=_,this.coordinates=w,this.horizontal=S}var c=s.prototype;function h(_,w){return _.y-w}function v(_,w){for(var S=null;_;){var E=_.key,m,b;E[0][0]0)if(w[0]!==E[1][0])S=_,_=_.right;else{var u=v(_.right,w);if(u)return u;_=_.left}else{if(w[0]!==E[1][0])return _;var u=v(_.right,w);if(u)return u;_=_.left}}return S}c.castUp=function(_){var w=o.le(this.coordinates,_[0]);if(w<0)return-1;var S=this.slabs[w],E=v(this.slabs[w],_),m=-1;if(E&&(m=E.value),this.coordinates[w]===_[0]){var b=null;if(E&&(b=E.key),w>0){var d=v(this.slabs[w-1],_);d&&(b?n(d.key,b)>0&&(b=d.key,m=d.value):(m=d.value,b=d.key))}var u=this.horizontal[w];if(u.length>0){var y=o.ge(u,_[1],h);if(y=u.length)return m;f=u[y]}}if(f.start)if(b){var P=i(b[0],b[1],[_[0],f.y]);b[0][0]>b[1][0]&&(P=-P),P>0&&(m=f.index)}else m=f.index;else f.y!==_[1]&&(m=f.index)}}}return m};function p(_,w,S,E){this.y=_,this.index=w,this.start=S,this.closed=E}function T(_,w,S,E){this.x=_,this.segment=w,this.create=S,this.index=E}function l(_){for(var w=_.length,S=2*w,E=new Array(S),m=0;m1&&(w=1);for(var S=1-w,E=v.length,m=new Array(E),b=0;b0||_>0&&m<0){var b=n(w,m,S,_);T.push(b),l.push(b.slice())}m<0?l.push(S.slice()):m>0?T.push(S.slice()):(T.push(S.slice()),l.push(S.slice())),_=m}return{positive:T,negative:l}}function c(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S0||l>0&&E<0)&&T.push(n(_,E,w,l)),E>=0&&T.push(w.slice()),l=E}return T}function h(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S0||l>0&&E<0)&&T.push(n(_,E,w,l)),E<=0&&T.push(w.slice()),l=E}return T}},3387:function(e,t,r){var o;(function(){"use strict";var a={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function i(v){return s(h(v),arguments)}function n(v,p){return i.apply(null,[v].concat(p||[]))}function s(v,p){var T=1,l=v.length,_,w="",S,E,m,b,d,u,y,f;for(S=0;S=0),m.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,m.width?parseInt(m.width):0);break;case"e":_=m.precision?parseFloat(_).toExponential(m.precision):parseFloat(_).toExponential();break;case"f":_=m.precision?parseFloat(_).toFixed(m.precision):parseFloat(_);break;case"g":_=m.precision?String(Number(_.toPrecision(m.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=m.precision?_.substring(0,m.precision):_;break;case"t":_=String(!!_),_=m.precision?_.substring(0,m.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=m.precision?_.substring(0,m.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=m.precision?_.substring(0,m.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}a.json.test(m.type)?w+=_:(a.number.test(m.type)&&(!y||m.sign)?(f=y?"+":"-",_=_.toString().replace(a.sign,"")):f="",d=m.pad_char?m.pad_char==="0"?"0":m.pad_char.charAt(1):" ",u=m.width-(f+_).length,b=m.width&&u>0?d.repeat(u):"",w+=m.align?f+_+b:d==="0"?f+b+_:b+f+_)}return w}var c=Object.create(null);function h(v){if(c[v])return c[v];for(var p=v,T,l=[],_=0;p;){if((T=a.text.exec(p))!==null)l.push(T[0]);else if((T=a.modulo.exec(p))!==null)l.push("%");else if((T=a.placeholder.exec(p))!==null){if(T[2]){_|=1;var w=[],S=T[2],E=[];if((E=a.key.exec(S))!==null)for(w.push(E[1]);(S=S.substring(E[0].length))!=="";)if((E=a.key_access.exec(S))!==null)w.push(E[1]);else if((E=a.index_access.exec(S))!==null)w.push(E[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=w}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");l.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");p=p.substring(T[0].length)}return c[v]=l}t.sprintf=i,t.vsprintf=n,typeof window<"u"&&(window.sprintf=i,window.vsprintf=n,o=function(){return{sprintf:i,vsprintf:n}}.call(t,r,t,e),o!==void 0&&(e.exports=o))})()},3711:function(e,t,r){"use strict";e.exports=h;var o=r(2640),a=r(781),i={"2d":function(v,p,T){var l=v({order:p,scalarArguments:3,getters:T==="generic"?[0]:void 0,phase:function(w,S,E,m){return w>m|0},vertex:function(w,S,E,m,b,d,u,y,f,P,L,z,F){var B=(u<<0)+(y<<1)+(f<<2)+(P<<3)|0;if(!(B===0||B===15))switch(B){case 0:L.push([w-.5,S-.5]);break;case 1:L.push([w-.25-.25*(m+E-2*F)/(E-m),S-.25-.25*(b+E-2*F)/(E-b)]);break;case 2:L.push([w-.75-.25*(-m-E+2*F)/(m-E),S-.25-.25*(d+m-2*F)/(m-d)]);break;case 3:L.push([w-.5,S-.5-.5*(b+E+d+m-4*F)/(E-b+m-d)]);break;case 4:L.push([w-.25-.25*(d+b-2*F)/(b-d),S-.75-.25*(-b-E+2*F)/(b-E)]);break;case 5:L.push([w-.5-.5*(m+E+d+b-4*F)/(E-m+b-d),S-.5]);break;case 6:L.push([w-.5-.25*(-m-E+d+b)/(m-E+b-d),S-.5-.25*(-b-E+d+m)/(b-E+m-d)]);break;case 7:L.push([w-.75-.25*(d+b-2*F)/(b-d),S-.75-.25*(d+m-2*F)/(m-d)]);break;case 8:L.push([w-.75-.25*(-d-b+2*F)/(d-b),S-.75-.25*(-d-m+2*F)/(d-m)]);break;case 9:L.push([w-.5-.25*(m+E+-d-b)/(E-m+d-b),S-.5-.25*(b+E+-d-m)/(E-b+d-m)]);break;case 10:L.push([w-.5-.5*(-m-E+-d-b+4*F)/(m-E+d-b),S-.5]);break;case 11:L.push([w-.25-.25*(-d-b+2*F)/(d-b),S-.75-.25*(b+E-2*F)/(E-b)]);break;case 12:L.push([w-.5,S-.5-.5*(-b-E+-d-m+4*F)/(b-E+d-m)]);break;case 13:L.push([w-.75-.25*(m+E-2*F)/(E-m),S-.25-.25*(-d-m+2*F)/(d-m)]);break;case 14:L.push([w-.25-.25*(-m-E+2*F)/(m-E),S-.25-.25*(-b-E+2*F)/(b-E)]);break;case 15:L.push([w-.5,S-.5]);break}},cell:function(w,S,E,m,b,d,u,y,f){b?y.push([w,S]):y.push([S,w])}});return function(_,w){var S=[],E=[];return l(_,S,E,w),{positions:S,cells:E}}}};function n(v,p){var T=v.length+"d",l=i[T];if(l)return l(o,v,p)}function s(v,p){for(var T=a(v,p),l=T.length,_=new Array(l),w=new Array(l),S=0;SMath.max(m,b)?d[2]=1:m>Math.max(E,b)?d[0]=1:d[1]=1;for(var u=0,y=0,f=0;f<3;++f)u+=S[f]*S[f],y+=d[f]*S[f];for(var f=0;f<3;++f)d[f]-=y/u*S[f];return s(d,d),d}function T(S,E,m,b,d,u,y,f){this.center=o(m),this.up=o(b),this.right=o(d),this.radius=o([u]),this.angle=o([y,f]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,E),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var P=0;P<16;++P)this.computedMatrix[P]=.5;this.recalcMatrix(0)}var l=T.prototype;l.setDistanceLimits=function(S,E){S>0?S=Math.log(S):S=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=E},l.getDistanceLimits=function(S){var E=this.radius.bounds[0];return S?(S[0]=Math.exp(E[0][0]),S[1]=Math.exp(E[1][0]),S):[Math.exp(E[0][0]),Math.exp(E[1][0])]},l.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var E=this.computedUp,m=this.computedRight,b=0,d=0,u=0;u<3;++u)d+=E[u]*m[u],b+=E[u]*E[u];for(var y=Math.sqrt(b),f=0,u=0;u<3;++u)m[u]-=E[u]*d/b,f+=m[u]*m[u],E[u]/=y;for(var P=Math.sqrt(f),u=0;u<3;++u)m[u]/=P;var L=this.computedToward;n(L,E,m),s(L,L);for(var z=Math.exp(this.computedRadius[0]),F=this.computedAngle[0],B=this.computedAngle[1],O=Math.cos(F),I=Math.sin(F),N=Math.cos(B),U=Math.sin(B),W=this.computedCenter,Q=O*N,ue=I*N,se=U,he=-O*U,G=-I*U,$=N,J=this.computedEye,Z=this.computedMatrix,u=0;u<3;++u){var re=Q*m[u]+ue*L[u]+se*E[u];Z[4*u+1]=he*m[u]+G*L[u]+$*E[u],Z[4*u+2]=re,Z[4*u+3]=0}var ne=Z[1],j=Z[5],ee=Z[9],ie=Z[2],fe=Z[6],be=Z[10],Ae=j*be-ee*fe,Be=ee*ie-ne*be,Ie=ne*fe-j*ie,Ze=h(Ae,Be,Ie);Ae/=Ze,Be/=Ze,Ie/=Ze,Z[0]=Ae,Z[4]=Be,Z[8]=Ie;for(var u=0;u<3;++u)J[u]=W[u]+Z[2+4*u]*z;for(var u=0;u<3;++u){for(var f=0,at=0;at<3;++at)f+=Z[u+4*at]*J[at];Z[12+u]=-f}Z[15]=1},l.getMatrix=function(S,E){this.recalcMatrix(S);var m=this.computedMatrix;if(E){for(var b=0;b<16;++b)E[b]=m[b];return E}return m};var _=[0,0,0];l.rotate=function(S,E,m,b){if(this.angle.move(S,E,m),b){this.recalcMatrix(S);var d=this.computedMatrix;_[0]=d[2],_[1]=d[6],_[2]=d[10];for(var u=this.computedUp,y=this.computedRight,f=this.computedToward,P=0;P<3;++P)d[4*P]=u[P],d[4*P+1]=y[P],d[4*P+2]=f[P];i(d,d,b,_);for(var P=0;P<3;++P)u[P]=d[4*P],y[P]=d[4*P+1];this.up.set(S,u[0],u[1],u[2]),this.right.set(S,y[0],y[1],y[2])}},l.pan=function(S,E,m,b){E=E||0,m=m||0,b=b||0,this.recalcMatrix(S);var d=this.computedMatrix,u=Math.exp(this.computedRadius[0]),y=d[1],f=d[5],P=d[9],L=h(y,f,P);y/=L,f/=L,P/=L;var z=d[0],F=d[4],B=d[8],O=z*y+F*f+B*P;z-=y*O,F-=f*O,B-=P*O;var I=h(z,F,B);z/=I,F/=I,B/=I;var N=z*E+y*m,U=F*E+f*m,W=B*E+P*m;this.center.move(S,N,U,W);var Q=Math.exp(this.computedRadius[0]);Q=Math.max(1e-4,Q+b),this.radius.set(S,Math.log(Q))},l.translate=function(S,E,m,b){this.center.move(S,E||0,m||0,b||0)},l.setMatrix=function(S,E,m,b){var d=1;typeof m=="number"&&(d=m|0),(d<0||d>3)&&(d=1);var u=(d+2)%3,y=(d+1)%3;E||(this.recalcMatrix(S),E=this.computedMatrix);var f=E[d],P=E[d+4],L=E[d+8];if(b){var F=Math.abs(f),B=Math.abs(P),O=Math.abs(L),I=Math.max(F,B,O);F===I?(f=f<0?-1:1,P=L=0):O===I?(L=L<0?-1:1,f=P=0):(P=P<0?-1:1,f=L=0)}else{var z=h(f,P,L);f/=z,P/=z,L/=z}var N=E[u],U=E[u+4],W=E[u+8],Q=N*f+U*P+W*L;N-=f*Q,U-=P*Q,W-=L*Q;var ue=h(N,U,W);N/=ue,U/=ue,W/=ue;var se=P*W-L*U,he=L*N-f*W,G=f*U-P*N,$=h(se,he,G);se/=$,he/=$,G/=$,this.center.jump(S,ge,ce,ze),this.radius.idle(S),this.up.jump(S,f,P,L),this.right.jump(S,N,U,W);var J,Z;if(d===2){var re=E[1],ne=E[5],j=E[9],ee=re*N+ne*U+j*W,ie=re*se+ne*he+j*G;Be<0?J=-Math.PI/2:J=Math.PI/2,Z=Math.atan2(ie,ee)}else{var fe=E[2],be=E[6],Ae=E[10],Be=fe*f+be*P+Ae*L,Ie=fe*N+be*U+Ae*W,Ze=fe*se+be*he+Ae*G;J=Math.asin(v(Be)),Z=Math.atan2(Ze,Ie)}this.angle.jump(S,Z,J),this.recalcMatrix(S);var at=E[2],it=E[6],et=E[10],lt=this.computedMatrix;a(lt,E);var Me=lt[15],ge=lt[12]/Me,ce=lt[13]/Me,ze=lt[14]/Me,tt=Math.exp(this.computedRadius[0]);this.center.jump(S,ge-at*tt,ce-it*tt,ze-et*tt)},l.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},l.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},l.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},l.setDistance=function(S,E){E>0&&this.radius.set(S,Math.log(E))},l.lookAt=function(S,E,m,b){this.recalcMatrix(S),E=E||this.computedEye,m=m||this.computedCenter,b=b||this.computedUp;var d=b[0],u=b[1],y=b[2],f=h(d,u,y);if(!(f<1e-6)){d/=f,u/=f,y/=f;var P=E[0]-m[0],L=E[1]-m[1],z=E[2]-m[2],F=h(P,L,z);if(!(F<1e-6)){P/=F,L/=F,z/=F;var B=this.computedRight,O=B[0],I=B[1],N=B[2],U=d*O+u*I+y*N;O-=U*d,I-=U*u,N-=U*y;var W=h(O,I,N);if(!(W<.01&&(O=u*z-y*L,I=y*P-d*z,N=d*L-u*P,W=h(O,I,N),W<1e-6))){O/=W,I/=W,N/=W,this.up.set(S,d,u,y),this.right.set(S,O,I,N),this.center.set(S,m[0],m[1],m[2]),this.radius.set(S,Math.log(F));var Q=u*N-y*I,ue=y*O-d*N,se=d*I-u*O,he=h(Q,ue,se);Q/=he,ue/=he,se/=he;var G=d*P+u*L+y*z,$=O*P+I*L+N*z,J=Q*P+ue*L+se*z,Z=Math.asin(v(G)),re=Math.atan2(J,$),ne=this.angle._state,j=ne[ne.length-1],ee=ne[ne.length-2];j=j%(2*Math.PI);var ie=Math.abs(j+2*Math.PI-re),fe=Math.abs(j-re),be=Math.abs(j-2*Math.PI-re);ie0?N.pop():new ArrayBuffer(O)}t.mallocArrayBuffer=_;function w(B){return new Uint8Array(_(B),0,B)}t.mallocUint8=w;function S(B){return new Uint16Array(_(2*B),0,B)}t.mallocUint16=S;function E(B){return new Uint32Array(_(4*B),0,B)}t.mallocUint32=E;function m(B){return new Int8Array(_(B),0,B)}t.mallocInt8=m;function b(B){return new Int16Array(_(2*B),0,B)}t.mallocInt16=b;function d(B){return new Int32Array(_(4*B),0,B)}t.mallocInt32=d;function u(B){return new Float32Array(_(4*B),0,B)}t.mallocFloat32=t.mallocFloat=u;function y(B){return new Float64Array(_(8*B),0,B)}t.mallocFloat64=t.mallocDouble=y;function f(B){return n?new Uint8ClampedArray(_(B),0,B):w(B)}t.mallocUint8Clamped=f;function P(B){return s?new BigUint64Array(_(8*B),0,B):null}t.mallocBigUint64=P;function L(B){return c?new BigInt64Array(_(8*B),0,B):null}t.mallocBigInt64=L;function z(B){return new DataView(_(B),0,B)}t.mallocDataView=z;function F(B){B=o.nextPow2(B);var O=o.log2(B),I=p[O];return I.length>0?I.pop():new i(B)}t.mallocBuffer=F,t.clearCache=function(){for(var O=0;O<32;++O)h.UINT8[O].length=0,h.UINT16[O].length=0,h.UINT32[O].length=0,h.INT8[O].length=0,h.INT16[O].length=0,h.INT32[O].length=0,h.FLOAT[O].length=0,h.DOUBLE[O].length=0,h.BIGUINT64[O].length=0,h.BIGINT64[O].length=0,h.UINT8C[O].length=0,v[O].length=0,p[O].length=0}},1755:function(e){"use strict";"use restrict";e.exports=t;function t(o){this.roots=new Array(o),this.ranks=new Array(o);for(var a=0;a",N="",U=I.length,W=N.length,Q=F[0]===_||F[0]===E,ue=0,se=-W;ue>-1&&(ue=B.indexOf(I,ue),!(ue===-1||(se=B.indexOf(N,ue+U),se===-1)||se<=ue));){for(var he=ue;he=se)O[he]=null,B=B.substr(0,he)+" "+B.substr(he+1);else if(O[he]!==null){var G=O[he].indexOf(F[0]);G===-1?O[he]+=F:Q&&(O[he]=O[he].substr(0,G+1)+(1+parseInt(O[he][G+1]))+O[he].substr(G+2))}var $=ue+U,J=B.substr($,se-$),Z=J.indexOf(I);Z!==-1?ue=Z:ue=se+W}return O}function d(z,F,B){for(var O=F.textAlign||"start",I=F.textBaseline||"alphabetic",N=[1<<30,1<<30],U=[0,0],W=z.length,Q=0;Q/g,` +`):B=B.replace(/\/g," ");var U="",W=[];for(j=0;j-1?parseInt(ce[1+nt]):0,St=Qe>-1?parseInt(ze[1+Qe]):0;Ct!==St&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,St-Ct),tt=tt.replace("?px ",Ie())),ie+=.25*G*(St-Ct)}if(N.superscripts===!0){var Ot=ce.indexOf(_),jt=ze.indexOf(_),ur=Ot>-1?parseInt(ce[1+Ot]):0,ar=jt>-1?parseInt(ze[1+jt]):0;ur!==ar&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,ar-ur),tt=tt.replace("?px ",Ie())),ie-=.25*G*(ar-ur)}if(N.bolds===!0){var Cr=ce.indexOf(v)>-1,vr=ze.indexOf(v)>-1;!Cr&&vr&&(_r?tt=tt.replace("italic ","italic bold "):tt="bold "+tt),Cr&&!vr&&(tt=tt.replace("bold ",""))}if(N.italics===!0){var _r=ce.indexOf(T)>-1,yt=ze.indexOf(T)>-1;!_r&&yt&&(tt="italic "+tt),_r&&!yt&&(tt=tt.replace("italic ",""))}F.font=tt}for(ne=0;ne0&&(I=O.size),O.lineSpacing&&O.lineSpacing>0&&(N=O.lineSpacing),O.styletags&&O.styletags.breaklines&&(U.breaklines=!!O.styletags.breaklines),O.styletags&&O.styletags.bolds&&(U.bolds=!!O.styletags.bolds),O.styletags&&O.styletags.italics&&(U.italics=!!O.styletags.italics),O.styletags&&O.styletags.subscripts&&(U.subscripts=!!O.styletags.subscripts),O.styletags&&O.styletags.superscripts&&(U.superscripts=!!O.styletags.superscripts)),B.font=[O.fontStyle,O.fontVariant,O.fontWeight,I+"px",O.font].filter(function(Q){return Q}).join(" "),B.textAlign="start",B.textBaseline="alphabetic",B.direction="ltr";var W=u(F,B,z,I,N,U);return P(W,O,I)}},1538:function(e){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function r(f){f.permitHostObjects___&&f.permitHostObjects___(r)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=r);var o=!1;if(typeof WeakMap=="function"){var a=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var i=new a,n=Object.freeze({});if(i.set(n,1),i.get(n)!==1)o=!0;else{e.exports=WeakMap;return}}}var s=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames,h=Object.defineProperty,v=Object.isExtensible,p="weakmap:",T=p+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var l=new ArrayBuffer(25),_=new Uint8Array(l);crypto.getRandomValues(_),T=p+"rand:"+Array.prototype.map.call(_,function(f){return(f%36).toString(36)}).join("")+"___"}function w(f){return!(f.substr(0,p.length)==p&&f.substr(f.length-3)==="___")}if(h(Object,"getOwnPropertyNames",{value:function(P){return c(P).filter(w)}}),"getPropertyNames"in Object){var S=Object.getPropertyNames;h(Object,"getPropertyNames",{value:function(P){return S(P).filter(w)}})}function E(f){if(f!==Object(f))throw new TypeError("Not an object: "+f);var P=f[T];if(P&&P.key===f)return P;if(v(f)){P={key:f};try{return h(f,T,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}(function(){var f=Object.freeze;h(Object,"freeze",{value:function(F){return E(F),f(F)}});var P=Object.seal;h(Object,"seal",{value:function(F){return E(F),P(F)}});var L=Object.preventExtensions;h(Object,"preventExtensions",{value:function(F){return E(F),L(F)}})})();function m(f){return f.prototype=null,Object.freeze(f)}var b=!1;function d(){!b&&typeof console<"u"&&(b=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var u=0,y=function(){this instanceof y||d();var f=[],P=[],L=u++;function z(I,N){var U,W=E(I);return W?L in W?W[L]:N:(U=f.indexOf(I),U>=0?P[U]:N)}function F(I){var N=E(I);return N?L in N:f.indexOf(I)>=0}function B(I,N){var U,W=E(I);return W?W[L]=N:(U=f.indexOf(I),U>=0?P[U]=N:(U=f.length,P[U]=N,f[U]=I)),this}function O(I){var N=E(I),U,W;return N?L in N&&delete N[L]:(U=f.indexOf(I),U<0?!1:(W=f.length-1,f[U]=void 0,P[U]=P[W],f[U]=f[W],f.length=W,P.length=W,!0))}return Object.create(y.prototype,{get___:{value:m(z)},has___:{value:m(F)},set___:{value:m(B)},delete___:{value:m(O)}})};y.prototype=Object.create(Object.prototype,{get:{value:function(P,L){return this.get___(P,L)},writable:!0,configurable:!0},has:{value:function(P){return this.has___(P)},writable:!0,configurable:!0},set:{value:function(P,L){return this.set___(P,L)},writable:!0,configurable:!0},delete:{value:function(P){return this.delete___(P)},writable:!0,configurable:!0}}),typeof a=="function"?function(){o&&typeof Proxy<"u"&&(Proxy=void 0);function f(){this instanceof y||d();var P=new a,L=void 0,z=!1;function F(N,U){return L?P.has(N)?P.get(N):L.get___(N,U):P.get(N,U)}function B(N){return P.has(N)||(L?L.has___(N):!1)}var O;o?O=function(N,U){return P.set(N,U),P.has(N)||(L||(L=new y),L.set(N,U)),this}:O=function(N,U){if(z)try{P.set(N,U)}catch{L||(L=new y),L.set___(N,U)}else P.set(N,U);return this};function I(N){var U=!!P.delete(N);return L&&L.delete___(N)||U}return Object.create(y.prototype,{get___:{value:m(F)},has___:{value:m(B)},set___:{value:m(O)},delete___:{value:m(I)},permitHostObjects___:{value:m(function(N){if(N===r)z=!0;else throw new Error("bogus call to permitHostObjects___")})}})}f.prototype=y.prototype,e.exports=f,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),e.exports=y)})()},236:function(e,t,r){var o=r(8284);e.exports=a;function a(){var i={};return function(n){if((typeof n!="object"||n===null)&&typeof n!="function")throw new Error("Weakmap-shim: Key must be object");var s=n.valueOf(i);return s&&s.identity===i?s:o(n,i)}}},8284:function(e){e.exports=t;function t(r,o){var a={identity:o},i=r.valueOf;return Object.defineProperty(r,"valueOf",{value:function(n){return n!==o?i.apply(this,arguments):a},writable:!0}),a}},606:function(e,t,r){var o=r(236);e.exports=a;function a(){var i=o();return{get:function(n,s){var c=i(n);return c.hasOwnProperty("value")?c.value:s},set:function(n,s){return i(n).value=s,this},has:function(n){return"value"in i(n)},delete:function(n){return delete i(n).value}}}},3349:function(e){"use strict";function t(){return function(s,c,h,v,p,T){var l=s[0],_=h[0],w=[0],S=_;v|=0;var E=0,m=_;for(E=0;E=0!=d>=0&&p.push(w[0]+.5+.5*(b+d)/(b-d))}v+=m,++w[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p,T){var l=v.dtype,_=v.order,w=[l,_.join()].join(),S=c[w];return S||(c[w]=S=s([l,_])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,p,T)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"zeroCrossings"})},781:function(e,t,r){"use strict";e.exports=a;var o=r(3349);function a(i,n){var s=[];return n=+n||0,o(i.hi(i.shape[0]-1),s,n),s}},7790:function(){}},x={};function A(e){var t=x[e];if(t!==void 0)return t.exports;var r=x[e]={id:e,loaded:!1,exports:{}};return g[e].call(r.exports,r,r.exports,A),r.loaded=!0,r.exports}(function(){A.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){A.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}();var M=A(1964);H.exports=M})()}}),d5=Ye({"node_modules/color-name/index.js"(X,H){"use strict";H.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),EN=Ye({"node_modules/color-normalize/node_modules/color-parse/index.js"(X,H){"use strict";var g=d5();H.exports=A;var x={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function A(M){var e,t=[],r=1,o;if(typeof M=="string")if(M=M.toLowerCase(),g[M])t=g[M].slice(),o="rgb";else if(M==="transparent")r=0,o="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(M)){var a=M.slice(1),i=a.length,n=i<=4;r=1,n?(t=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],i===4&&(r=parseInt(a[3]+a[3],16)/255)):(t=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],i===8&&(r=parseInt(a[6]+a[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),o="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(M)){var s=e[1],c=s==="rgb",a=s.replace(/a$/,"");o=a;var i=a==="cmyk"?4:a==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,T){if(/%$/.test(p))return T===i?parseFloat(p)/100:a==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(a[T]==="h"){if(/deg$/.test(p))return parseFloat(p);if(x[p]!==void 0)return x[p]}return parseFloat(p)}),s===a&&t.push(1),r=c||t[i]===void 0?1:t[i],t=t.slice(0,i)}else M.length>10&&/[0-9](?:\s|\/)/.test(M)&&(t=M.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),o=M.match(/([a-z])/ig).join("").toLowerCase());else isNaN(M)?Array.isArray(M)||M.length?(t=[M[0],M[1],M[2]],o="rgb",r=M.length===4?M[3]:1):M instanceof Object&&(M.r!=null||M.red!=null||M.R!=null?(o="rgb",t=[M.r||M.red||M.R||0,M.g||M.green||M.G||0,M.b||M.blue||M.B||0]):(o="hsl",t=[M.h||M.hue||M.H||0,M.s||M.saturation||M.S||0,M.l||M.lightness||M.L||M.b||M.brightness]),r=M.a||M.alpha||M.opacity||1,M.opacity!=null&&(r/=100)):(o="rgb",t=[M>>>16,(M&65280)>>>8,M&255]);return{space:o,values:t,alpha:r}}}}),kN=Ye({"node_modules/color-normalize/node_modules/color-rgba/index.js"(X,H){"use strict";var g=EN();H.exports=function(M){Array.isArray(M)&&M.raw&&(M=String.raw.apply(null,arguments));var e,t,r,o=g(M);if(!o.space)return[];var a=[0,0,0],i=o.space[0]==="h"?[360,100,100]:[255,255,255];return e=Array(3),e[0]=Math.min(Math.max(o.values[0],a[0]),i[0]),e[1]=Math.min(Math.max(o.values[1],a[1]),i[1]),e[2]=Math.min(Math.max(o.values[2],a[2]),i[2]),o.space[0]==="h"&&(e=x(e)),e.push(Math.min(Math.max(o.alpha,0),1)),e};function x(A){var M=A[0]/360,e=A[1]/100,t=A[2]/100,r,o,a,i,n,s=0;if(e===0)return n=t*255,[n,n,n];for(o=t<.5?t*(1+e):t+e-t*e,r=2*t-o,i=[0,0,0];s<3;)a=M+1/3*-(s-1),a<0?a++:a>1&&a--,n=6*a<1?r+(o-r)*6*a:2*a<1?o:3*a<2?r+(o-r)*(2/3-a)*6:r,i[s++]=n*255;return i}}}),dx=Ye({"node_modules/clamp/index.js"(X,H){H.exports=g;function g(x,A,M){return AM?M:x:xA?A:x}}}),$3=Ye({"node_modules/dtype/index.js"(X,H){H.exports=function(g){switch(g){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}}}),hg=Ye({"node_modules/color-normalize/index.js"(X,H){"use strict";var g=kN(),x=dx(),A=$3();H.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var o=A(r),a=new o(4),i=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=g(t),t[0]/=255,t[1]/=255,t[2]/=255),M(t)?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:255,i&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(i?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:1):(a[0]=x(Math.floor(t[0]*255),0,255),a[1]=x(Math.floor(t[1]*255),0,255),a[2]=x(Math.floor(t[2]*255),0,255),a[3]=t[3]==null?255:x(Math.floor(t[3]*255),0,255)),a)};function M(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}}}),Qv=Ye({"src/lib/str2rgbarray.js"(X,H){"use strict";var g=hg();function x(A){return A?g(A):[0,0,0,1]}H.exports=x}}),em=Ye({"src/lib/gl_format_color.js"(X,H){"use strict";var g=jo(),x=bh(),A=hg(),M=Su(),e=Gf().defaultLine,t=xp().isArrayOrTypedArray,r=A(e),o=1;function a(h,v){var p=h;return p[3]*=v,p}function i(h){if(g(h))return r;var v=A(h);return v.length?v:r}function n(h){return g(h)?h:o}function s(h,v,p){var T=h.color;T&&T._inputArray&&(T=T._inputArray);var l=t(T),_=t(v),w=M.extractOpts(h),S=[],E,m,b,d,u;if(w.colorscale!==void 0?E=M.makeColorScaleFuncFromTrace(h):E=i,l?m=function(f,P){return f[P]===void 0?r:A(E(f[P]))}:m=i,_?b=function(f,P){return f[P]===void 0?o:n(f[P])}:b=n,l||_)for(var y=0;y0){var p=o.c2l(h);o._lowerLogErrorBound||(o._lowerLogErrorBound=p),o._lowerErrorBound=Math.min(o._lowerLogErrorBound,p)}}else i[n]=[-s[0]*r,s[1]*r]}return i}function A(e){for(var t=0;t-1?-1:P.indexOf("right")>-1?1:0}function w(P){return P==null?0:P.indexOf("top")>-1?-1:P.indexOf("bottom")>-1?1:0}function S(P){var L=0,z=0,F=[L,z];if(Array.isArray(P))for(var B=0;B=0){var W=T(N.position,N.delaunayColor,N.delaunayAxis);W.opacity=P.opacity,this.delaunayMesh?this.delaunayMesh.update(W):(W.gl=L,this.delaunayMesh=M(W),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},p.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function f(P,L){var z=new v(P,L.uid);return z.update(L),z}H.exports=f}}),m5=Ye({"src/traces/scatter3d/attributes.js"(X,H){"use strict";var g=Pc(),x=Au(),A=tu(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Pl(),o=v5(),a=Q3(),i=Oo().extendFlat,n=Ou().overrideAll,s=Km(),c=g.line,h=g.marker,v=h.line,p=i({width:c.width,dash:{valType:"enumerated",values:s(o),dflt:"solid"}},A("line"));function T(_){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var l=H.exports=n({x:g.x,y:g.y,z:{valType:"data_array"},text:i({},g.text,{}),texttemplate:t({},{}),hovertext:i({},g.hovertext,{}),hovertemplate:e(),xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z"),mode:i({},g.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:T("x"),y:T("y"),z:T("z")},connectgaps:g.connectgaps,line:p,marker:i({symbol:{valType:"enumerated",values:s(a),dflt:"circle",arrayOk:!0},size:i({},h.size,{dflt:8}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:i({},h.opacity,{arrayOk:!1}),colorbar:h.colorbar,line:i({width:i({},v.width,{arrayOk:!1})},A("marker.line"))},A("marker")),textposition:i({},g.textposition,{dflt:"top center"}),textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:r.opacity,hoverinfo:i({},r.hoverinfo)},"calc","nested");l.x.editType=l.y.editType=l.z.editType="calc+clearAxisTypes"}}),PN=Ye({"src/traces/scatter3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=uu(),M=md(),e=Dd(),t=zd(),r=m5();H.exports=function(i,n,s,c){function h(E,m){return x.coerce(i,n,r,E,m)}var v=o(i,n,h,c);if(!v){n.visible=!1;return}h("text"),h("hovertext"),h("hovertemplate"),h("xhoverformat"),h("yhoverformat"),h("zhoverformat"),h("mode"),A.hasMarkers(n)&&M(i,n,s,c,h,{noSelect:!0,noAngle:!0}),A.hasLines(n)&&(h("connectgaps"),e(i,n,s,c,h)),A.hasText(n)&&(h("texttemplate"),t(i,n,c,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var p=(n.line||{}).color,T=(n.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",p||T);for(var l=["x","y","z"],_=0;_<3;++_){var w="projection."+l[_];h(w+".show")&&(h(w+".opacity"),h(w+".scale"))}var S=g.getComponentMethod("errorbars","supplyDefaults");S(i,n,p||T||s,{axis:"z"}),S(i,n,p||T||s,{axis:"y",inherit:"z"}),S(i,n,p||T||s,{axis:"x",inherit:"z"})};function o(a,i,n,s){var c=0,h=n("x"),v=n("y"),p=n("z"),T=g.getComponentMethod("calendars","handleTraceDefaults");return T(a,i,["x","y","z"],s),h&&v&&p&&(c=Math.min(h.length,v.length,p.length),i._length=i._xlength=i._ylength=i._zlength=c),c}}}),IN=Ye({"src/traces/scatter3d/calc.js"(X,H){"use strict";var g=Av(),x=Fd();H.exports=function(M,e){var t=[{x:!1,y:!1,trace:e,t:{}}];return g(t,e),x(M,e),t}}}),RN=Ye({"node_modules/get-canvas-context/index.js"(X,H){H.exports=g;function g(x,A){if(typeof x!="string")throw new TypeError("must specify type string");if(A=A||{},typeof document>"u"&&!A.canvas)return null;var M=A.canvas||document.createElement("canvas");typeof A.width=="number"&&(M.width=A.width),typeof A.height=="number"&&(M.height=A.height);var e=A,t;try{var r=[x];x.indexOf("webgl")===0&&r.push("experimental-"+x);for(var o=0;o/g," "));n[s]=p,c.tickmode=h}}o.ticks=n;for(var s=0;s<3;++s){M[s]=.5*(r.glplot.bounds[0][s]+r.glplot.bounds[1][s]);for(var T=0;T<2;++T)o.bounds[T][s]=r.glplot.bounds[T][s]}r.contourLevels=e(n)}}}),BN=Ye({"src/plots/gl3d/scene.js"(X,H){"use strict";var g=Gh().gl_plot3d,x=g.createCamera,A=g.createScene,M=DN(),e=_2(),t=Hn(),r=ta(),o=r.preserveDrawingBuffer(),a=Co(),i=Lc(),n=Qv(),s=g5(),c=BS(),h=zN(),v=FN(),p=ON(),T=Yd().applyAutorangeOptions,l,_,w=!1;function S(z,F){var B=document.createElement("div"),O=z.container;this.graphDiv=z.graphDiv;var I=document.createElementNS("http://www.w3.org/2000/svg","svg");I.style.position="absolute",I.style.top=I.style.left="0px",I.style.width=I.style.height="100%",I.style["z-index"]=20,I.style["pointer-events"]="none",B.appendChild(I),this.svgContainer=I,B.id=z.id,B.style.position="absolute",B.style.top=B.style.left="0px",B.style.width=B.style.height="100%",O.appendChild(B),this.fullLayout=F,this.id=z.id||"scene",this.fullSceneLayout=F[this.id],this.plotArgs=[[],{},{}],this.axesOptions=h(F,F[this.id]),this.spikeOptions=v(F[this.id]),this.container=B,this.staticMode=!!z.staticPlot,this.pixelRatio=this.pixelRatio||z.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var E=S.prototype;E.prepareOptions=function(){var z=this,F={canvas:z.canvas,gl:z.gl,glOptions:{preserveDrawingBuffer:o,premultipliedAlpha:!0,antialias:!0},container:z.container,axes:z.axesOptions,spikes:z.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:z.camera,pixelRatio:z.pixelRatio};if(z.staticMode){if(!_&&(l=document.createElement("canvas"),_=M({canvas:l,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_))throw new Error("error creating static canvas/context for image server");F.gl=_,F.canvas=l}return F};var m=!0;E.tryCreatePlot=function(){var z=this,F=z.prepareOptions(),B=!0;try{z.glplot=A(F)}catch{if(z.staticMode||!m||o)B=!1;else{r.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{o=F.glOptions.preserveDrawingBuffer=!0,z.glplot=A(F)}catch{o=F.glOptions.preserveDrawingBuffer=!1,B=!1}}}return m=!1,B},E.initializeGLCamera=function(){var z=this,F=z.fullSceneLayout.camera,B=F.projection.type==="orthographic";z.camera=x(z.container,{center:[F.center.x,F.center.y,F.center.z],eye:[F.eye.x,F.eye.y,F.eye.z],up:[F.up.x,F.up.y,F.up.z],_ortho:B,zoomMin:.01,zoomMax:100,mode:"orbit"})},E.initializeGLPlot=function(){var z=this;z.initializeGLCamera();var F=z.tryCreatePlot();if(!F)return s(z);z.traces={},z.make4thDimension();var B=z.graphDiv,O=B.layout,I=function(){var U={};return z.isCameraChanged(O)&&(U[z.id+".camera"]=z.getCamera()),z.isAspectChanged(O)&&(U[z.id+".aspectratio"]=z.glplot.getAspectratio(),O[z.id].aspectmode!=="manual"&&(z.fullSceneLayout.aspectmode=O[z.id].aspectmode=U[z.id+".aspectmode"]="manual")),U},N=function(U){if(U.fullSceneLayout.dragmode!==!1){var W=I();U.saveLayout(O),U.graphDiv.emit("plotly_relayout",W)}};return z.glplot.canvas&&(z.glplot.canvas.addEventListener("mouseup",function(){N(z)}),z.glplot.canvas.addEventListener("touchstart",function(){w=!0}),z.glplot.canvas.addEventListener("wheel",function(U){if(B._context._scrollZoom.gl3d){if(z.camera._ortho){var W=U.deltaX>U.deltaY?1.1:.9090909090909091,Q=z.glplot.getAspectratio();z.glplot.setAspectratio({x:W*Q.x,y:W*Q.y,z:W*Q.z})}N(z)}},e?{passive:!1}:!1),z.glplot.canvas.addEventListener("mousemove",function(){if(z.fullSceneLayout.dragmode!==!1&&z.camera.mouseListener.buttons!==0){var U=I();z.graphDiv.emit("plotly_relayouting",U)}}),z.staticMode||z.glplot.canvas.addEventListener("webglcontextlost",function(U){B&&B.emit&&B.emit("plotly_webglcontextlost",{event:U,layer:z.id})},!1)),z.glplot.oncontextloss=function(){z.recoverContext()},z.glplot.onrender=function(){z.render()},!0},E.render=function(){var z=this,F=z.graphDiv,B,O=z.svgContainer,I=z.container.getBoundingClientRect();F._fullLayout._calcInverseTransform(F);var N=F._fullLayout._invScaleX,U=F._fullLayout._invScaleY,W=I.width*N,Q=I.height*U;O.setAttributeNS(null,"viewBox","0 0 "+W+" "+Q),O.setAttributeNS(null,"width",W),O.setAttributeNS(null,"height",Q),p(z),z.glplot.axes.update(z.axesOptions);for(var ue=Object.keys(z.traces),se=null,he=z.glplot.selection,G=0;G")):B.type==="isosurface"||B.type==="volume"?(ne.valueLabel=a.hoverLabelText(z._mockAxis,z._mockAxis.d2l(he.traceCoordinate[3]),B.valuehoverformat),be.push("value: "+ne.valueLabel),he.textLabel&&be.push(he.textLabel),fe=be.join("
")):fe=he.textLabel;var Ae={x:he.traceCoordinate[0],y:he.traceCoordinate[1],z:he.traceCoordinate[2],data:Z._input,fullData:Z,curveNumber:Z.index,pointNumber:re};i.appendArrayPointValue(Ae,Z,re),B._module.eventData&&(Ae=Z._module.eventData(Ae,he,Z,{},re));var Be={points:[Ae]};if(z.fullSceneLayout.hovermode){var Ie=[];i.loneHover({trace:Z,x:(.5+.5*J[0]/J[3])*W,y:(.5-.5*J[1]/J[3])*Q,xLabel:ne.xLabel,yLabel:ne.yLabel,zLabel:ne.zLabel,text:fe,name:se.name,color:i.castHoverOption(Z,re,"bgcolor")||se.color,borderColor:i.castHoverOption(Z,re,"bordercolor"),fontFamily:i.castHoverOption(Z,re,"font.family"),fontSize:i.castHoverOption(Z,re,"font.size"),fontColor:i.castHoverOption(Z,re,"font.color"),nameLength:i.castHoverOption(Z,re,"namelength"),textAlign:i.castHoverOption(Z,re,"align"),hovertemplate:r.castOption(Z,re,"hovertemplate"),hovertemplateLabels:r.extendFlat({},Ae,ne),eventData:[Ae]},{container:O,gd:F,inOut_bbox:Ie}),Ae.bbox=Ie[0]}he.distance<5&&(he.buttons||w)?F.emit("plotly_click",Be):F.emit("plotly_hover",Be),this.oldEventData=Be}else i.loneUnhover(O),this.oldEventData&&F.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;z.drawAnnotations(z)},E.recoverContext=function(){var z=this;z.glplot.dispose();var F=function(){if(z.glplot.gl.isContextLost()){requestAnimationFrame(F);return}if(!z.initializeGLPlot()){r.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}z.plot.apply(z,z.plotArgs)};requestAnimationFrame(F)};var b=["xaxis","yaxis","zaxis"];function d(z,F,B){for(var O=z.fullSceneLayout,I=0;I<3;I++){var N=b[I],U=N.charAt(0),W=O[N],Q=F[U],ue=F[U+"calendar"],se=F["_"+U+"length"];if(!r.isArrayOrTypedArray(Q))B[0][I]=Math.min(B[0][I],0),B[1][I]=Math.max(B[1][I],se-1);else for(var he,G=0;G<(se||Q.length);G++)if(r.isArrayOrTypedArray(Q[G]))for(var $=0;$Z[1][U])Z[0][U]=-1,Z[1][U]=1;else{var at=Z[1][U]-Z[0][U];Z[0][U]-=at/32,Z[1][U]+=at/32}if(j=[Z[0][U],Z[1][U]],j=T(j,Q),Z[0][U]=j[0],Z[1][U]=j[1],Q.isReversed()){var it=Z[0][U];Z[0][U]=Z[1][U],Z[1][U]=it}}else j=Q.range,Z[0][U]=Q.r2l(j[0]),Z[1][U]=Q.r2l(j[1]);Z[0][U]===Z[1][U]&&(Z[0][U]-=1,Z[1][U]+=1),re[U]=Z[1][U]-Z[0][U],Q.range=[Z[0][U],Z[1][U]],Q.limitRange(),O.glplot.setBounds(U,{min:Q.range[0]*$[U],max:Q.range[1]*$[U]})}var et,lt=se.aspectmode;if(lt==="cube")et=[1,1,1];else if(lt==="manual"){var Me=se.aspectratio;et=[Me.x,Me.y,Me.z]}else if(lt==="auto"||lt==="data"){var ge=[1,1,1];for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type;var ce=ne[ue];ge[U]=Math.pow(ce.acc,1/ce.count)/$[U]}lt==="data"||Math.max.apply(null,ge)/Math.min.apply(null,ge)<=4?et=ge:et=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");se.aspectratio.x=he.aspectratio.x=et[0],se.aspectratio.y=he.aspectratio.y=et[1],se.aspectratio.z=he.aspectratio.z=et[2],O.glplot.setAspectratio(se.aspectratio),O.viewInitial.aspectratio||(O.viewInitial.aspectratio={x:se.aspectratio.x,y:se.aspectratio.y,z:se.aspectratio.z}),O.viewInitial.aspectmode||(O.viewInitial.aspectmode=se.aspectmode);var ze=se.domain||null,tt=F._size||null;if(ze&&tt){var nt=O.container.style;nt.position="absolute",nt.left=tt.l+ze.x[0]*tt.w+"px",nt.top=tt.t+(1-ze.y[1])*tt.h+"px",nt.width=tt.w*(ze.x[1]-ze.x[0])+"px",nt.height=tt.h*(ze.y[1]-ze.y[0])+"px"}O.glplot.redraw()}},E.destroy=function(){var z=this;z.glplot&&(z.camera.mouseListener.enabled=!1,z.container.removeEventListener("wheel",z.camera.wheelListener),z.camera=null,z.glplot.dispose(),z.container.parentNode.removeChild(z.container),z.glplot=null)};function y(z){return[[z.eye.x,z.eye.y,z.eye.z],[z.center.x,z.center.y,z.center.z],[z.up.x,z.up.y,z.up.z]]}function f(z){return{up:{x:z.up[0],y:z.up[1],z:z.up[2]},center:{x:z.center[0],y:z.center[1],z:z.center[2]},eye:{x:z.eye[0],y:z.eye[1],z:z.eye[2]},projection:{type:z._ortho===!0?"orthographic":"perspective"}}}E.getCamera=function(){var z=this;return z.camera.view.recalcMatrix(z.camera.view.lastT()),f(z.camera)},E.setViewport=function(z){var F=this,B=z.camera;F.camera.lookAt.apply(this,y(B)),F.glplot.setAspectratio(z.aspectratio);var O=B.projection.type==="orthographic",I=F.camera._ortho;O!==I&&(F.glplot.redraw(),F.glplot.clearRGBA(),F.glplot.dispose(),F.initializeGLPlot())},E.isCameraChanged=function(z){var F=this,B=F.getCamera(),O=r.nestedProperty(z,F.id+".camera"),I=O.get();function N(ue,se,he,G){var $=["up","center","eye"],J=["x","y","z"];return se[$[he]]&&ue[$[he]][J[G]]===se[$[he]][J[G]]}var U=!1;if(I===void 0)U=!0;else{for(var W=0;W<3;W++)for(var Q=0;Q<3;Q++)if(!N(B,I,W,Q)){U=!0;break}(!I.projection||B.projection&&B.projection.type!==I.projection.type)&&(U=!0)}return U},E.isAspectChanged=function(z){var F=this,B=F.glplot.getAspectratio(),O=r.nestedProperty(z,F.id+".aspectratio"),I=O.get();return I===void 0||I.x!==B.x||I.y!==B.y||I.z!==B.z},E.saveLayout=function(z){var F=this,B=F.fullLayout,O,I,N,U,W,Q,ue=F.isCameraChanged(z),se=F.isAspectChanged(z),he=ue||se;if(he){var G={};if(ue&&(O=F.getCamera(),I=r.nestedProperty(z,F.id+".camera"),N=I.get(),G[F.id+".camera"]=N),se&&(U=F.glplot.getAspectratio(),W=r.nestedProperty(z,F.id+".aspectratio"),Q=W.get(),G[F.id+".aspectratio"]=Q),t.call("_storeDirectGUIEdit",z,B._preGUI,G),ue){I.set(O);var $=r.nestedProperty(B,F.id+".camera");$.set(O)}if(se){W.set(U);var J=r.nestedProperty(B,F.id+".aspectratio");J.set(U),F.glplot.redraw()}}return he},E.updateFx=function(z,F){var B=this,O=B.camera;if(O)if(z==="orbit")O.mode="orbit",O.keyBindingMode="rotate";else if(z==="turntable"){O.up=[0,0,1],O.mode="turntable",O.keyBindingMode="rotate";var I=B.graphDiv,N=I._fullLayout,U=B.fullSceneLayout.camera,W=U.up.x,Q=U.up.y,ue=U.up.z;if(ue/Math.sqrt(W*W+Q*Q+ue*ue)<.999){var se=B.id+".camera.up",he={x:0,y:0,z:1},G={};G[se]=he;var $=I.layout;t.call("_storeDirectGUIEdit",$,N._preGUI,G),U.up=he,r.nestedProperty($,se).set(he)}}else O.keyBindingMode=z;B.fullSceneLayout.hovermode=F};function P(z,F,B){for(var O=0,I=B-1;O0)for(var W=255/U,Q=0;Q<3;++Q)z[N+Q]=Math.min(W*z[N+Q],255)}}E.toImage=function(z){var F=this;z||(z="png"),F.staticMode&&F.container.appendChild(l),F.glplot.redraw();var B=F.glplot.gl,O=B.drawingBufferWidth,I=B.drawingBufferHeight;B.bindFramebuffer(B.FRAMEBUFFER,null);var N=new Uint8Array(O*I*4);B.readPixels(0,0,O,I,B.RGBA,B.UNSIGNED_BYTE,N),P(N,O,I),L(N,O,I);var U=document.createElement("canvas");U.width=O,U.height=I;var W=U.getContext("2d",{willReadFrequently:!0}),Q=W.createImageData(O,I);Q.data.set(N),W.putImageData(Q,0,0);var ue;switch(z){case"jpeg":ue=U.toDataURL("image/jpeg");break;case"webp":ue=U.toDataURL("image/webp");break;default:ue=U.toDataURL("image/png")}return F.staticMode&&F.container.removeChild(l),ue},E.setConvert=function(){for(var z=this,F=0;F<3;F++){var B=z.fullSceneLayout[b[F]];a.setConvert(B,z.fullLayout),B.setScale=r.noop}},E.make4thDimension=function(){var z=this,F=z.graphDiv,B=F._fullLayout;z._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},a.setConvert(z._mockAxis,B)},H.exports=S}}),NN=Ye({"src/plots/gl3d/layout/attributes.js"(X,H){"use strict";H.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),y5=Ye({"src/plots/gl3d/layout/axis_attributes.js"(X,H){"use strict";var g=Fn(),x=Vh(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({visible:x.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:g.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:x.color,categoryorder:x.categoryorder,categoryarray:x.categoryarray,title:{text:x.title.text,font:x.title.font},type:A({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorange:x.autorange,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},rangemode:x.rangemode,minallowed:x.minallowed,maxallowed:x.maxallowed,range:A({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,mirror:x.mirror,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,tickfont:x.tickfont,tickangle:x.tickangle,tickprefix:x.tickprefix,showtickprefix:x.showtickprefix,ticksuffix:x.ticksuffix,showticksuffix:x.showticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickformat:x.tickformat,tickformatstops:x.tickformatstops,hoverformat:x.hoverformat,showline:x.showline,linecolor:x.linecolor,linewidth:x.linewidth,showgrid:x.showgrid,gridcolor:A({},x.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:x.gridwidth,zeroline:x.zeroline,zerolinecolor:x.zerolinecolor,zerolinewidth:x.zerolinewidth},"plot","from-root")}}),_5=Ye({"src/plots/gl3d/layout/layout_attributes.js"(X,H){"use strict";var g=y5(),x=Wu().attributes,A=Oo().extendFlat,M=ta().counterRegex;function e(t,r,o){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:o,editType:"camera"},editType:"camera"}}H.exports={_arrayAttrRegexps:[M("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A(e(0,0,1),{}),center:A(e(0,0,0),{}),eye:A(e(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:x({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:g,yaxis:g,zaxis:g,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}}}),UN=Ye({"src/plots/gl3d/layout/axis_defaults.js"(X,H){"use strict";var g=bh().mix,x=ta(),A=cl(),M=y5(),e=FS(),t=R_(),r=["xaxis","yaxis","zaxis"],o=100*136/187;H.exports=function(i,n,s){var c,h;function v(l,_){return x.coerce(c,h,M,l,_)}for(var p=0;p1;function v(p){if(!h){var T=g.validate(n[p],t[p]);if(T)return n[p]}}M(n,s,c,{type:o,attributes:t,handleDefaults:a,fullLayout:s,font:s.font,fullData:c,getDfltFromLayout:v,autotypenumbersDflt:s.autotypenumbers,paper_bgcolor:s.paper_bgcolor,calendar:s.calendar})};function a(i,n,s,c){for(var h=s("bgcolor"),v=x.combine(h,c.paper_bgcolor),p=["up","center","eye"],T=0;T.999)&&(E="turntable")}else E="turntable";s("dragmode",E),s("hovermode",c.getDfltFromLayout("hovermode"))}}}),pg=Ye({"src/plots/gl3d/index.js"(X){"use strict";var H=Ou().overrideAll,g=Zm(),x=BN(),A=jh().getSubplotData,M=ta(),e=vd(),t="gl3d",r="scene";X.name=t,X.attr=r,X.idRoot=r,X.idRegex=X.attrRegex=M.counterRegex("scene"),X.attributes=NN(),X.layoutAttributes=_5(),X.baseLayoutAttrOverrides=H({hoverlabel:g.hoverlabel},"plot","nested"),X.supplyLayoutDefaults=jN(),X.plot=function(a){for(var i=a._fullLayout,n=a._fullData,s=i._subplots[t],c=0;c0){P=c[L];break}return P}function T(y,f){if(!(y<1||f<1)){for(var P=v(y),L=v(f),z=1,F=0;FS;)L--,L/=p(L),L++,L1?z:1};function E(y,f,P){var L=P[8]+P[2]*f[0]+P[5]*f[1];return y[0]=(P[6]+P[0]*f[0]+P[3]*f[1])/L,y[1]=(P[7]+P[1]*f[0]+P[4]*f[1])/L,y}function m(y,f,P){return b(y,f,E,P),y}function b(y,f,P,L){for(var z=[0,0],F=y.shape[0],B=y.shape[1],O=0;O0&&this.contourStart[L]!==null&&this.contourEnd[L]!==null&&this.contourEnd[L]>this.contourStart[L]))for(f[L]=!0,z=this.contourStart[L];zQ&&(this.minValues[N]=Q),this.maxValues[N]c&&(o.isomin=null,o.isomax=null);var h=n("x"),v=n("y"),p=n("z"),T=n("value");if(!h||!h.length||!v||!v.length||!p||!p.length||!T||!T.length){o.visible=!1;return}var l=x.getComponentMethod("calendars","handleTraceDefaults");l(r,o,["x","y","z"],i),n("valuehoverformat"),["x","y","z"].forEach(function(E){n(E+"hoverformat");var m="caps."+E,b=n(m+".show");b&&n(m+".fill");var d="slices."+E,u=n(d+".show");u&&(n(d+".fill"),n(d+".locations"))});var _=n("spaceframe.show");_&&n("spaceframe.fill");var w=n("surface.show");w&&(n("surface.count"),n("surface.fill"),n("surface.pattern"));var S=n("contour.show");S&&(n("contour.color"),n("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(E){n(E)}),M(r,o,i,n,{prefix:"",cLetter:"c"}),o._length=null}H.exports={supplyDefaults:e,supplyIsoDefaults:t}}}),tT=Ye({"src/traces/streamtube/calc.js"(X,H){"use strict";var g=ta(),x=jp();function A(r,o){o._len=Math.min(o.u.length,o.v.length,o.w.length,o.x.length,o.y.length,o.z.length),o._u=t(o.u,o._len),o._v=t(o.v,o._len),o._w=t(o.w,o._len),o._x=t(o.x,o._len),o._y=t(o.y,o._len),o._z=t(o.z,o._len);var a=M(o);o._gridFill=a.fill,o._Xs=a.Xs,o._Ys=a.Ys,o._Zs=a.Zs,o._len=a.len;var i=0,n,s,c;o.starts&&(n=t(o.starts.x||[]),s=t(o.starts.y||[]),c=t(o.starts.z||[]),i=Math.min(n.length,s.length,c.length)),o._startsX=n||[],o._startsY=s||[],o._startsZ=c||[];var h=0,v=1/0,p;for(p=0;p1&&(u=o[n-1],f=a[n-1],L=i[n-1]),s=0;su?"-":"+")+"x"),S=S.replace("y",(y>f?"-":"+")+"y"),S=S.replace("z",(P>L?"-":"+")+"z");var O=function(){n=0,z=[],F=[],B=[]};(!n||n0;v--){var p=Math.min(h[v],h[v-1]),T=Math.max(h[v],h[v-1]);if(T>p&&p-1}function ee(yt,Fe){return yt===null?Fe:yt}function ie(yt,Fe,Ke){ue();var Ne=[Fe],Ee=[Ke];if(Z>=1)Ne=[Fe],Ee=[Ke];else if(Z>0){var Ve=ne(Fe,Ke);Ne=Ve.xyzv,Ee=Ve.abc}for(var ke=0;ke-1?Ke[Le]:Q(rt,dt,xt);Bt>-1?Te[Le]=Bt:Te[Le]=he(rt,dt,xt,ee(yt,It))}G(Te[0],Te[1],Te[2])}}function fe(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(2,3,0)}function be(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(3,0,1),Ne(2,3,0),Ne(1,2,3)}function Ae(yt,Fe,Ke,Ne){var Ee=yt[3];EeNe&&(Ee=Ne);for(var Ve=(yt[3]-Ee)/(yt[3]-Fe[3]+1e-9),ke=[],Te=0;Te<4;Te++)ke[Te]=(1-Ve)*yt[Te]+Ve*Fe[Te];return ke}function Be(yt,Fe,Ke){return yt>=Fe&&yt<=Ke}function Ie(yt){var Fe=.001*(O-B);return yt>=B-Fe&&yt<=O+Fe}function Ze(yt){for(var Fe=[],Ke=0;Ke<4;Ke++){var Ne=yt[Ke];Fe.push([c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne]])}return Fe}var at=3;function it(yt,Fe,Ke,Ne,Ee,Ve){Ve||(Ve=1),Ke=[-1,-1,-1];var ke=!1,Te=[Be(Fe[0][3],Ne,Ee),Be(Fe[1][3],Ne,Ee),Be(Fe[2][3],Ne,Ee)];if(!Te[0]&&!Te[1]&&!Te[2])return!1;var Le=function(dt,xt,It){return Ie(xt[0][3])&&Ie(xt[1][3])&&Ie(xt[2][3])?(ie(dt,xt,It),!0):VeTe?[z,Ve]:[Ve,F];Ot(Fe,Le[0],Le[1])}}var rt=[[Math.min(B,F),Math.max(B,F)],[Math.min(z,O),Math.max(z,O)]];["x","y","z"].forEach(function(dt){for(var xt=[],It=0;It0&&(Aa.push(Ga.id),dt==="x"?La.push([Ga.distRatio,0,0]):dt==="y"?La.push([0,Ga.distRatio,0]):La.push([0,0,Ga.distRatio]))}else dt==="x"?sa=Cr(1,u-1):dt==="y"?sa=Cr(1,y-1):sa=Cr(1,f-1);Aa.length>0&&(dt==="x"?xt[Bt]=jt(yt,Aa,Gt,Kt,La,xt[Bt]):dt==="y"?xt[Bt]=ur(yt,Aa,Gt,Kt,La,xt[Bt]):xt[Bt]=ar(yt,Aa,Gt,Kt,La,xt[Bt]),Bt++),sa.length>0&&(dt==="x"?xt[Bt]=tt(yt,sa,Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,sa,Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,sa,Gt,Kt,xt[Bt]),Bt++)}var Ma=c.caps[dt];Ma.show&&Ma.fill&&(re(Ma.fill),dt==="x"?xt[Bt]=tt(yt,[0,u-1],Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,[0,y-1],Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,[0,f-1],Gt,Kt,xt[Bt]),Bt++)}}),w===0&&se(),c._meshX=I,c._meshY=N,c._meshZ=U,c._meshIntensity=W,c._Xs=m,c._Ys=b,c._Zs=d}return _r(),c}function s(c,h){var v=c.glplot.gl,p=g({gl:v}),T=new o(c,p,h.uid);return p._trace=T,T.update(h),c.glplot.add(p),T}H.exports={findNearestOnAxis:r,generateIsoMeshes:n,createIsosurfaceTrace:s}}}),XN=Ye({"src/traces/isosurface/index.js"(X,H){"use strict";H.exports={attributes:eT(),supplyDefaults:b5().supplyDefaults,calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:rT().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),YN=Ye({"lib/isosurface.js"(X,H){"use strict";H.exports=XN()}}),T5=Ye({"src/traces/volume/attributes.js"(X,H){"use strict";var g=tu(),x=eT(),A=vx(),M=Pl(),e=Oo().extendFlat,t=Ou().overrideAll,r=H.exports=t(e({x:x.x,y:x.y,z:x.z,value:x.value,isomin:x.isomin,isomax:x.isomax,surface:x.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:x.slices,caps:x.caps,text:x.text,hovertext:x.hovertext,xhoverformat:x.xhoverformat,yhoverformat:x.yhoverformat,zhoverformat:x.zhoverformat,valuehoverformat:x.valuehoverformat,hovertemplate:x.hovertemplate},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:x.colorbar,opacity:x.opacity,opacityscale:A.opacityscale,lightposition:x.lightposition,lighting:x.lighting,flatshading:x.flatshading,contour:x.contour,hoverinfo:e({},M.hoverinfo),showlegend:e({},M.showlegend,{dflt:!1})}),"calc","nested");r.x.editType=r.y.editType=r.z.editType=r.value.editType="calc+clearAxisTypes"}}),KN=Ye({"src/traces/volume/defaults.js"(X,H){"use strict";var g=ta(),x=T5(),A=b5().supplyIsoDefaults,M=x5().opacityscaleDefaults;H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(t,r,o,a,i),M(t,r,a,i)}}}),JN=Ye({"src/traces/volume/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=rT().findNearestOnAxis,o=rT().generateIsoMeshes;function a(s,c,h){this.scene=s,this.uid=h,this.mesh=c,this.name="",this.data=null,this.showContour=!1}var i=a.prototype;i.handlePick=function(s){if(s.object===this.mesh){var c=s.data.index,h=this.data._meshX[c],v=this.data._meshY[c],p=this.data._meshZ[c],T=this.data._Ys.length,l=this.data._Zs.length,_=r(h,this.data._Xs).id,w=r(v,this.data._Ys).id,S=r(p,this.data._Zs).id,E=s.index=S+l*w+l*T*_;s.traceCoordinate=[this.data._meshX[E],this.data._meshY[E],this.data._meshZ[E],this.data._value[E]];var m=this.data.hovertext||this.data.text;return A(m)&&m[E]!==void 0?s.textLabel=m[E]:m&&(s.textLabel=m),!0}},i.update=function(s){var c=this.scene,h=c.fullSceneLayout;this.data=o(s);function v(w,S,E,m){return S.map(function(b){return w.d2l(b,0,m)*E})}var p=t(v(h.xaxis,s._meshX,c.dataScale[0],s.xcalendar),v(h.yaxis,s._meshY,c.dataScale[1],s.ycalendar),v(h.zaxis,s._meshZ,c.dataScale[2],s.zcalendar)),T=t(s._meshI,s._meshJ,s._meshK),l={positions:p,cells:T,lightPosition:[s.lightposition.x,s.lightposition.y,s.lightposition.z],ambient:s.lighting.ambient,diffuse:s.lighting.diffuse,specular:s.lighting.specular,roughness:s.lighting.roughness,fresnel:s.lighting.fresnel,vertexNormalsEpsilon:s.lighting.vertexnormalsepsilon,faceNormalsEpsilon:s.lighting.facenormalsepsilon,opacity:s.opacity,opacityscale:s.opacityscale,contourEnable:s.contour.show,contourColor:M(s.contour.color).slice(0,3),contourWidth:s.contour.width,useFacetNormals:s.flatshading},_=e(s);l.vertexIntensity=s._meshIntensity,l.vertexIntensityBounds=[_.min,_.max],l.colormap=x(s),this.mesh.update(l)},i.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function n(s,c){var h=s.glplot.gl,v=g({gl:h}),p=new a(s,v,c.uid);return v._trace=p,p.update(c),s.glplot.add(v),p}H.exports=n}}),$N=Ye({"src/traces/volume/index.js"(X,H){"use strict";H.exports={attributes:T5(),supplyDefaults:KN(),calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:JN(),moduleType:"trace",name:"volume",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),QN=Ye({"lib/volume.js"(X,H){"use strict";H.exports=$N()}}),eU=Ye({"src/traces/mesh3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=A1();H.exports=function(t,r,o,a){function i(v,p){return x.coerce(t,r,M,v,p)}function n(v){var p=v.map(function(T){var l=i(T);return l&&x.isArrayOrTypedArray(l)?l:null});return p.every(function(T){return T&&T.length===p[0].length})&&p}var s=n(["x","y","z"]);if(!s){r.visible=!1;return}if(n(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var c=g.getComponentMethod("calendars","handleTraceDefaults");c(t,r,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(v){i(v)});var h=i("contour.show");h&&(i("contour.color"),i("contour.width")),"intensity"in t?(i("intensity"),i("intensitymode"),A(t,r,a,i,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?i("facecolor"):"vertexcolor"in t?i("vertexcolor"):i("color",o)),i("text"),i("hovertext"),i("hovertemplate"),i("xhoverformat"),i("yhoverformat"),i("zhoverformat"),r._length=null}}}),tU=Ye({"src/traces/mesh3d/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.intensity&&g(A,M,{vals:M.intensity,containerStr:"",cLetter:"c"})}}}),rU=Ye({"src/traces/mesh3d/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=Gh().delaunay_triangulate,A=Gh().alpha_shape,M=Gh().convex_hull,e=em().parseColorScale,t=ta().isArrayOrTypedArray,r=Qv(),o=Su().extractOpts,a=S1();function i(l,_,w){this.scene=l,this.uid=w,this.mesh=_,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var n=i.prototype;n.handlePick=function(l){if(l.object===this.mesh){var _=l.index=l.data.index;l.data._cellCenter?l.traceCoordinate=l.data.dataCoordinate:l.traceCoordinate=[this.data.x[_],this.data.y[_],this.data.z[_]];var w=this.data.hovertext||this.data.text;return t(w)&&w[_]!==void 0?l.textLabel=w[_]:w&&(l.textLabel=w),!0}};function s(l){for(var _=[],w=l.length,S=0;S=_-.5)return!1;return!0}n.update=function(l){var _=this.scene,w=_.fullSceneLayout;this.data=l;var S=l.x.length,E=a(c(w.xaxis,l.x,_.dataScale[0],l.xcalendar),c(w.yaxis,l.y,_.dataScale[1],l.ycalendar),c(w.zaxis,l.z,_.dataScale[2],l.zcalendar)),m;if(l.i&&l.j&&l.k){if(l.i.length!==l.j.length||l.j.length!==l.k.length||!p(l.i,S)||!p(l.j,S)||!p(l.k,S))return;m=a(h(l.i),h(l.j),h(l.k))}else l.alphahull===0?m=M(E):l.alphahull>0?m=A(l.alphahull,E):m=v(l.delaunayaxis,E);var b={positions:E,cells:m,lightPosition:[l.lightposition.x,l.lightposition.y,l.lightposition.z],ambient:l.lighting.ambient,diffuse:l.lighting.diffuse,specular:l.lighting.specular,roughness:l.lighting.roughness,fresnel:l.lighting.fresnel,vertexNormalsEpsilon:l.lighting.vertexnormalsepsilon,faceNormalsEpsilon:l.lighting.facenormalsepsilon,opacity:l.opacity,contourEnable:l.contour.show,contourColor:r(l.contour.color).slice(0,3),contourWidth:l.contour.width,useFacetNormals:l.flatshading};if(l.intensity){var d=o(l);this.color="#fff";var u=l.intensitymode;b[u+"Intensity"]=l.intensity,b[u+"IntensityBounds"]=[d.min,d.max],b.colormap=e(l)}else l.vertexcolor?(this.color=l.vertexcolor[0],b.vertexColors=s(l.vertexcolor)):l.facecolor?(this.color=l.facecolor[0],b.cellColors=s(l.facecolor)):(this.color=l.color,b.meshColor=r(l.color));this.mesh.update(b)},n.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function T(l,_){var w=l.glplot.gl,S=g({gl:w}),E=new i(l,S,_.uid);return S._trace=E,E.update(_),l.glplot.add(S),E}H.exports=T}}),aU=Ye({"src/traces/mesh3d/index.js"(X,H){"use strict";H.exports={attributes:A1(),supplyDefaults:eU(),calc:tU(),colorbar:{min:"cmin",max:"cmax"},plot:rU(),moduleType:"trace",name:"mesh3d",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),iU=Ye({"lib/mesh3d.js"(X,H){"use strict";H.exports=aU()}}),A5=Ye({"src/traces/cone/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["norm"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),nU=Ye({"src/traces/cone/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=A5();H.exports=function(e,t,r,o){function a(T,l){return g.coerce(e,t,A,T,l)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}var p=a("sizemode");a("sizeref",p==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),oU=Ye({"src/traces/cone/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){for(var e=M.u,t=M.v,r=M.w,o=Math.min(M.x.length,M.y.length,M.z.length,e.length,t.length,r.length),a=-1/0,i=1/0,n=0;n2?p=h.slice(1,v-1):v===2?p=[(h[0]+h[1])/2]:p=h,p}function n(h){var v=h.length;return v===1?[.5,.5]:[h[1]-h[0],h[v-1]-h[v-2]]}function s(h,v){var p=h.fullSceneLayout,T=h.dataScale,l=v._len,_={};function w(he,G){var $=p[G],J=T[r[G]];return A.simpleMap(he,function(Z){return $.d2l(Z)*J})}if(_.vectors=t(w(v._u,"xaxis"),w(v._v,"yaxis"),w(v._w,"zaxis"),l),!l)return{positions:[],cells:[]};var S=w(v._Xs,"xaxis"),E=w(v._Ys,"yaxis"),m=w(v._Zs,"zaxis");_.meshgrid=[S,E,m],_.gridFill=v._gridFill;var b=v._slen;if(b)_.startingPositions=t(w(v._startsX,"xaxis"),w(v._startsY,"yaxis"),w(v._startsZ,"zaxis"));else{for(var d=E[0],u=i(S),y=i(m),f=new Array(u.length*y.length),P=0,L=0;Ld&&(d=P[0]),P[1]u&&(u=P[1])}function f(P){switch(P.type){case"GeometryCollection":P.geometries.forEach(f);break;case"Point":y(P.coordinates);break;case"MultiPoint":P.coordinates.forEach(y);break}}w.arcs.forEach(function(P){for(var L=-1,z=P.length,F;++Ld&&(d=F[0]),F[1]u&&(u=F[1])});for(E in w.objects)f(w.objects[E]);return[m,b,d,u]}function e(w,S){for(var E,m=w.length,b=m-S;b<--m;)E=w[b],w[b++]=w[m],w[m]=E}function t(w,S){return typeof S=="string"&&(S=w.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(E){return r(w,E)})}:r(w,S)}function r(w,S){var E=S.id,m=S.bbox,b=S.properties==null?{}:S.properties,d=o(w,S);return E==null&&m==null?{type:"Feature",properties:b,geometry:d}:m==null?{type:"Feature",id:E,properties:b,geometry:d}:{type:"Feature",id:E,bbox:m,properties:b,geometry:d}}function o(w,S){var E=A(w.transform),m=w.arcs;function b(L,z){z.length&&z.pop();for(var F=m[L<0?~L:L],B=0,O=F.length;B1)m=s(w,S,E);else for(b=0,m=new Array(d=w.arcs.length);b1)for(var z=1,F=y(P[0]),B,O;zF&&(O=P[0],P[0]=P[z],P[z]=O,F=B);return P}).filter(function(f){return f.length>0})}}function p(w,S){for(var E=0,m=w.length;E>>1;w[b]=2))throw new Error("n must be \u22652");f=w.bbox||M(w);var E=f[0],m=f[1],b=f[2],d=f[3],u;S={scale:[b-E?(b-E)/(u-1):1,d-m?(d-m)/(u-1):1],translate:[E,m]}}else f=w.bbox;var y=l(S),f,P,L=w.objects,z={};function F(I){return y(I)}function B(I){var N;switch(I.type){case"GeometryCollection":N={type:"GeometryCollection",geometries:I.geometries.map(B)};break;case"Point":N={type:"Point",coordinates:F(I.coordinates)};break;case"MultiPoint":N={type:"MultiPoint",coordinates:I.coordinates.map(F)};break;default:return I}return I.id!=null&&(N.id=I.id),I.bbox!=null&&(N.bbox=I.bbox),I.properties!=null&&(N.properties=I.properties),N}function O(I){var N=0,U=1,W=I.length,Q,ue=new Array(W);for(ue[0]=y(I[0],0);++N0&&(M.push(e),e=[])}return e.length>0&&M.push(e),M},X.makeLine=function(g){return g.length===1?{type:"LineString",coordinates:g[0]}:{type:"MultiLineString",coordinates:g}},X.makePolygon=function(g){if(g.length===1)return{type:"Polygon",coordinates:g};for(var x=new Array(g.length),A=0;Ae(B,z)),F)}function r(L,z,F={}){for(let O of L){if(O.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(O[O.length-1].length!==O[0].length)throw new Error("First and last Position are not equivalent.");for(let I=0;Ir(B,z)),F)}function a(L,z,F={}){if(L.length<2)throw new Error("coordinates must be an array of two or more positions");return A({type:"LineString",coordinates:L},z,F)}function i(L,z,F={}){return n(L.map(B=>a(B,z)),F)}function n(L,z={}){let F={type:"FeatureCollection"};return z.id&&(F.id=z.id),z.bbox&&(F.bbox=z.bbox),F.features=L,F}function s(L,z,F={}){return A({type:"MultiLineString",coordinates:L},z,F)}function c(L,z,F={}){return A({type:"MultiPoint",coordinates:L},z,F)}function h(L,z,F={}){return A({type:"MultiPolygon",coordinates:L},z,F)}function v(L,z,F={}){return A({type:"GeometryCollection",geometries:L},z,F)}function p(L,z=0){if(z&&!(z>=0))throw new Error("precision must be a positive number");let F=Math.pow(10,z||0);return Math.round(L*F)/F}function T(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L*F}function l(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L/F}function _(L,z){return E(l(L,z))}function w(L){let z=L%360;return z<0&&(z+=360),z}function S(L){return L=L%360,L>0?L>180?L-360:L:L<-180?L+360:L}function E(L){return L%(2*Math.PI)*180/Math.PI}function m(L){return L%360*Math.PI/180}function b(L,z="kilometers",F="kilometers"){if(!(L>=0))throw new Error("length must be a positive number");return T(l(L,z),F)}function d(L,z="meters",F="kilometers"){if(!(L>=0))throw new Error("area must be a positive number");let B=x[z];if(!B)throw new Error("invalid original units");let O=x[F];if(!O)throw new Error("invalid final units");return L/B*O}function u(L){return!isNaN(L)&&L!==null&&!Array.isArray(L)}function y(L){return L!==null&&typeof L=="object"&&!Array.isArray(L)}function f(L){if(!L)throw new Error("bbox is required");if(!Array.isArray(L))throw new Error("bbox must be an Array");if(L.length!==4&&L.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");L.forEach(z=>{if(!u(z))throw new Error("bbox must only contain numbers")})}function P(L){if(!L)throw new Error("id is required");if(["string","number"].indexOf(typeof L)===-1)throw new Error("id must be a number or a string")}X.areaFactors=x,X.azimuthToBearing=S,X.bearingToAzimuth=w,X.convertArea=d,X.convertLength=b,X.degreesToRadians=m,X.earthRadius=H,X.factors=g,X.feature=A,X.featureCollection=n,X.geometry=M,X.geometryCollection=v,X.isNumber=u,X.isObject=y,X.lengthToDegrees=_,X.lengthToRadians=l,X.lineString=a,X.lineStrings=i,X.multiLineString=s,X.multiPoint=c,X.multiPolygon=h,X.point=e,X.points=t,X.polygon=r,X.polygons=o,X.radiansToDegrees=E,X.radiansToLength=T,X.round=p,X.validateBBox=f,X.validateId=P}}),oT=Ye({"node_modules/@turf/meta/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT();function g(l,_,w){if(l!==null)for(var S,E,m,b,d,u,y,f=0,P=0,L,z=l.type,F=z==="FeatureCollection",B=z==="Feature",O=F?l.features.length:1,I=0;Iu||F>y||B>f){d=P,u=S,y=F,f=B,m=0;return}var O=H.lineString.call(void 0,[d,P],w.properties);if(_(O,S,E,B,m)===!1)return!1;m++,d=P})===!1)return!1}}})}function c(l,_,w){var S=w,E=!1;return s(l,function(m,b,d,u,y){E===!1&&w===void 0?S=m:S=_(S,m,b,d,u,y),E=!0}),S}function h(l,_){if(!l)throw new Error("geojson is required");i(l,function(w,S,E){if(w.geometry!==null){var m=w.geometry.type,b=w.geometry.coordinates;switch(m){case"LineString":if(_(w,S,E,0,0)===!1)return!1;break;case"Polygon":for(var d=0;di+A(n),0)}function A(a){let i=0,n;switch(a.type){case"Polygon":return M(a.coordinates);case"MultiPolygon":for(n=0;n0){i+=Math.abs(r(a[0]));for(let n=1;n=i?(s+2)%i:s+2],p=c[0]*t,T=h[1]*t,l=v[0]*t;n+=(l-p)*Math.sin(T),s++}return n*e}var o=x;X.area=x,X.default=o}}),yU=Ye({"node_modules/@turf/centroid/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(M,e={}){let t=0,r=0,o=0;return g.coordEach.call(void 0,M,function(a){t+=a[0],r+=a[1],o++},!0),H.point.call(void 0,[t/o,r/o],e.properties)}var A=x;X.centroid=x,X.default=A}}),_U=Ye({"node_modules/@turf/bbox/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=oT();function g(A,M={}){if(A.bbox!=null&&M.recompute!==!0)return A.bbox;let e=[1/0,1/0,-1/0,-1/0];return H.coordEach.call(void 0,A,t=>{e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]0&&z[F+1][0]<0)return F;return null}switch(b==="RUS"||b==="FJI"?u=function(z){var F;if(L(z)===null)F=z;else for(F=new Array(z.length),P=0;PF?B[O++]=[z[P][0]+360,z[P][1]]:P===F?(B[O++]=z[P],B[O++]=[z[P][0],-90]):B[O++]=z[P];var I=i.tester(B);I.pts.pop(),d.push(I)}:u=function(z){d.push(i.tester(z))},E.type){case"MultiPolygon":for(y=0;y0?I.properties.ct=l(I):I.properties.ct=[NaN,NaN],B.fIn=z,B.fOut=I,d.push(I)}else r.log(["Location",B.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete b[F]}switch(m.type){case"FeatureCollection":var P=m.features;for(u=0;ud&&(d=f,m=y)}else m=E;return M(m).geometry.coordinates}function _(S){var E=window.PlotlyGeoAssets||{},m=[];function b(P){return new Promise(function(L,z){g.json(P,function(F,B){if(F){delete E[P];var O=F.status===404?'GeoJSON at URL "'+P+'" does not exist.':"Unexpected error while fetching from "+P;return z(new Error(O))}return E[P]=B,L(B)})})}function d(P){return new Promise(function(L,z){var F=0,B=setInterval(function(){if(E[P]&&E[P]!=="pending")return clearInterval(B),L(E[P]);if(F>100)return clearInterval(B),z("Unexpected error while fetching from "+P);F++},50)})}for(var u=0;u")}}}),bU=Ye({"src/traces/scattergeo/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.lon=A.lon,x.lat=A.lat,x.location=A.loc?A.loc:null;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x}}}),wU=Ye({"src/traces/scattergeo/select.js"(X,H){"use strict";var g=uu(),x=ks().BADNUM;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n,s,c,h,v,p=!g.hasMarkers(i)&&!g.hasText(i);if(p)return[];if(e===!1)for(v=0;vZ?1:J>=Z?0:NaN}function A(J){return J.length===1&&(J=M(J)),{left:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne>>1;J(Z[ee],re)<0?ne=ee+1:j=ee}return ne},right:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne>>1;J(Z[ee],re)>0?j=ee:ne=ee+1}return ne}}}function M(J){return function(Z,re){return x(J(Z),re)}}var e=A(x),t=e.right,r=e.left;function o(J,Z){Z==null&&(Z=a);for(var re=0,ne=J.length-1,j=J[0],ee=new Array(ne<0?0:ne);reJ?1:Z>=J?0:NaN}function s(J){return J===null?NaN:+J}function c(J,Z){var re=J.length,ne=0,j=-1,ee=0,ie,fe,be=0;if(Z==null)for(;++j1)return be/(ne-1)}function h(J,Z){var re=c(J,Z);return re&&Math.sqrt(re)}function v(J,Z){var re=J.length,ne=-1,j,ee,ie;if(Z==null){for(;++ne=j)for(ee=ie=j;++nej&&(ee=j),ie=j)for(ee=ie=j;++nej&&(ee=j),ie0)return[J];if((ne=Z0)for(J=Math.ceil(J/fe),Z=Math.floor(Z/fe),ie=new Array(ee=Math.ceil(Z-J+1));++j=0?(ee>=E?10:ee>=m?5:ee>=b?2:1)*Math.pow(10,j):-Math.pow(10,-j)/(ee>=E?10:ee>=m?5:ee>=b?2:1)}function y(J,Z,re){var ne=Math.abs(Z-J)/Math.max(0,re),j=Math.pow(10,Math.floor(Math.log(ne)/Math.LN10)),ee=ne/j;return ee>=E?j*=10:ee>=m?j*=5:ee>=b&&(j*=2),ZIe;)Ze.pop(),--at;var it=new Array(at+1),et;for(ee=0;ee<=at;++ee)et=it[ee]=[],et.x0=ee>0?Ze[ee-1]:Be,et.x1=ee=1)return+re(J[ne-1],ne-1,J);var ne,j=(ne-1)*Z,ee=Math.floor(j),ie=+re(J[ee],ee,J),fe=+re(J[ee+1],ee+1,J);return ie+(fe-ie)*(j-ee)}}function z(J,Z,re){return J=l.call(J,s).sort(x),Math.ceil((re-Z)/(2*(L(J,.75)-L(J,.25))*Math.pow(J.length,-1/3)))}function F(J,Z,re){return Math.ceil((re-Z)/(3.5*h(J)*Math.pow(J.length,-1/3)))}function B(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne=j)for(ee=j;++neee&&(ee=j)}else for(;++ne=j)for(ee=j;++neee&&(ee=j);return ee}function O(J,Z){var re=J.length,ne=re,j=-1,ee,ie=0;if(Z==null)for(;++j=0;)for(ie=J[Z],re=ie.length;--re>=0;)ee[--j]=ie[re];return ee}function U(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne=j)for(ee=j;++nej&&(ee=j)}else for(;++ne=j)for(ee=j;++nej&&(ee=j);return ee}function W(J,Z){for(var re=Z.length,ne=new Array(re);re--;)ne[re]=J[Z[re]];return ne}function Q(J,Z){if(re=J.length){var re,ne=0,j=0,ee,ie=J[j];for(Z==null&&(Z=x);++ne0?1:Zt<0?-1:0},d=Math.sqrt,u=Math.tan;function y(Zt){return Zt>1?0:Zt<-1?a:Math.acos(Zt)}function f(Zt){return Zt>1?i:Zt<-1?-i:Math.asin(Zt)}function P(Zt){return(Zt=m(Zt/2))*Zt}function L(){}function z(Zt,fr){Zt&&B.hasOwnProperty(Zt.type)&&B[Zt.type](Zt,fr)}var F={Feature:function(Zt,fr){z(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr=0?1:-1,ba=qr*Yr,Ka=l(fr),oi=m(fr),yi=G*oi,ki=he*Ka+yi*l(ba),Bi=yi*qr*m(ba);U.add(T(Bi,ki)),se=Zt,he=Ka,G=oi}function j(Zt){return W.reset(),N(Zt,$),W*2}function ee(Zt){return[T(Zt[1],Zt[0]),f(Zt[2])]}function ie(Zt){var fr=Zt[0],Yr=Zt[1],qr=l(Yr);return[qr*l(fr),qr*m(fr),m(Yr)]}function fe(Zt,fr){return Zt[0]*fr[0]+Zt[1]*fr[1]+Zt[2]*fr[2]}function be(Zt,fr){return[Zt[1]*fr[2]-Zt[2]*fr[1],Zt[2]*fr[0]-Zt[0]*fr[2],Zt[0]*fr[1]-Zt[1]*fr[0]]}function Ae(Zt,fr){Zt[0]+=fr[0],Zt[1]+=fr[1],Zt[2]+=fr[2]}function Be(Zt,fr){return[Zt[0]*fr,Zt[1]*fr,Zt[2]*fr]}function Ie(Zt){var fr=d(Zt[0]*Zt[0]+Zt[1]*Zt[1]+Zt[2]*Zt[2]);Zt[0]/=fr,Zt[1]/=fr,Zt[2]/=fr}var Ze,at,it,et,lt,Me,ge,ce,ze=A(),tt,nt,Qe={point:Ct,lineStart:Ot,lineEnd:jt,polygonStart:function(){Qe.point=ur,Qe.lineStart=ar,Qe.lineEnd=Cr,ze.reset(),$.polygonStart()},polygonEnd:function(){$.polygonEnd(),Qe.point=Ct,Qe.lineStart=Ot,Qe.lineEnd=jt,U<0?(Ze=-(it=180),at=-(et=90)):ze>r?et=90:ze<-r&&(at=-90),nt[0]=Ze,nt[1]=it},sphere:function(){Ze=-(it=180),at=-(et=90)}};function Ct(Zt,fr){tt.push(nt=[Ze=Zt,it=Zt]),fret&&(et=fr)}function St(Zt,fr){var Yr=ie([Zt*h,fr*h]);if(ce){var qr=be(ce,Yr),ba=[qr[1],-qr[0],0],Ka=be(ba,qr);Ie(Ka),Ka=ee(Ka);var oi=Zt-lt,yi=oi>0?1:-1,ki=Ka[0]*c*yi,Bi,li=v(oi)>180;li^(yi*ltet&&(et=Bi)):(ki=(ki+360)%360-180,li^(yi*ltet&&(et=fr))),li?Ztvr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt):it>=Ze?(Ztit&&(it=Zt)):Zt>lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt)}else tt.push(nt=[Ze=Zt,it=Zt]);fret&&(et=fr),ce=Yr,lt=Zt}function Ot(){Qe.point=St}function jt(){nt[0]=Ze,nt[1]=it,Qe.point=Ct,ce=null}function ur(Zt,fr){if(ce){var Yr=Zt-lt;ze.add(v(Yr)>180?Yr+(Yr>0?360:-360):Yr)}else Me=Zt,ge=fr;$.point(Zt,fr),St(Zt,fr)}function ar(){$.lineStart()}function Cr(){ur(Me,ge),$.lineEnd(),v(ze)>r&&(Ze=-(it=180)),nt[0]=Ze,nt[1]=it,ce=null}function vr(Zt,fr){return(fr-=Zt)<0?fr+360:fr}function _r(Zt,fr){return Zt[0]-fr[0]}function yt(Zt,fr){return Zt[0]<=Zt[1]?Zt[0]<=fr&&fr<=Zt[1]:frvr(qr[0],qr[1])&&(qr[1]=ba[1]),vr(ba[0],qr[1])>vr(qr[0],qr[1])&&(qr[0]=ba[0])):Ka.push(qr=ba);for(oi=-1/0,Yr=Ka.length-1,fr=0,qr=Ka[Yr];fr<=Yr;qr=ba,++fr)ba=Ka[fr],(yi=vr(qr[1],ba[0]))>oi&&(oi=yi,Ze=ba[0],it=qr[1])}return tt=nt=null,Ze===1/0||at===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ze,at],[it,et]]}var Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa={sphere:L,point:La,lineStart:Ga,lineEnd:ni,polygonStart:function(){Aa.lineStart=Wt,Aa.lineEnd=zt},polygonEnd:function(){Aa.lineStart=Ga,Aa.lineEnd=ni}};function La(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);ka(Yr*l(Zt),Yr*m(Zt),m(fr))}function ka(Zt,fr,Yr){++Ke,Ee+=(Zt-Ee)/Ke,Ve+=(fr-Ve)/Ke,ke+=(Yr-ke)/Ke}function Ga(){Aa.point=Ma}function Ma(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),Aa.point=Ua,ka(Kt,sr,sa)}function Ua(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=T(d((oi=sr*Ka-sa*ba)*oi+(oi=sa*qr-Kt*Ka)*oi+(oi=Kt*ba-sr*qr)*oi),Kt*qr+sr*ba+sa*Ka);Ne+=oi,Te+=oi*(Kt+(Kt=qr)),Le+=oi*(sr+(sr=ba)),rt+=oi*(sa+(sa=Ka)),ka(Kt,sr,sa)}function ni(){Aa.point=La}function Wt(){Aa.point=Vt}function zt(){Ut(Bt,Gt),Aa.point=La}function Vt(Zt,fr){Bt=Zt,Gt=fr,Zt*=h,fr*=h,Aa.point=Ut;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),ka(Kt,sr,sa)}function Ut(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=sr*Ka-sa*ba,yi=sa*qr-Kt*Ka,ki=Kt*ba-sr*qr,Bi=d(oi*oi+yi*yi+ki*ki),li=f(Bi),_i=Bi&&-li/Bi;dt+=_i*oi,xt+=_i*yi,It+=_i*ki,Ne+=li,Te+=li*(Kt+(Kt=qr)),Le+=li*(sr+(sr=ba)),rt+=li*(sa+(sa=Ka)),ka(Kt,sr,sa)}function xr(Zt){Ke=Ne=Ee=Ve=ke=Te=Le=rt=dt=xt=It=0,N(Zt,Aa);var fr=dt,Yr=xt,qr=It,ba=fr*fr+Yr*Yr+qr*qr;return baa?Zt+Math.round(-Zt/s)*s:Zt,fr]}Xr.invert=Xr;function Ea(Zt,fr,Yr){return(Zt%=s)?fr||Yr?pa(qa(Zt),ya(fr,Yr)):qa(Zt):fr||Yr?ya(fr,Yr):Xr}function Fa(Zt){return function(fr,Yr){return fr+=Zt,[fr>a?fr-s:fr<-a?fr+s:fr,Yr]}}function qa(Zt){var fr=Fa(Zt);return fr.invert=Fa(-Zt),fr}function ya(Zt,fr){var Yr=l(Zt),qr=m(Zt),ba=l(fr),Ka=m(fr);function oi(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*Yr+li*qr;return[T(_i*ba-ti*Ka,li*Yr-vi*qr),f(ti*ba+_i*Ka)]}return oi.invert=function(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*ba-_i*Ka;return[T(_i*ba+vi*Ka,li*Yr+ti*qr),f(ti*Yr-li*qr)]},oi}function $a(Zt){Zt=Ea(Zt[0]*h,Zt[1]*h,Zt.length>2?Zt[2]*h:0);function fr(Yr){return Yr=Zt(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr}return fr.invert=function(Yr){return Yr=Zt.invert(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr},fr}function mt(Zt,fr,Yr,qr,ba,Ka){if(Yr){var oi=l(fr),yi=m(fr),ki=qr*Yr;ba==null?(ba=fr+qr*s,Ka=fr-ki/2):(ba=gt(oi,ba),Ka=gt(oi,Ka),(qr>0?baKa)&&(ba+=qr*s));for(var Bi,li=ba;qr>0?li>Ka:li1&&Zt.push(Zt.pop().concat(Zt.shift()))},result:function(){var Yr=Zt;return Zt=[],fr=null,Yr}}}function br(Zt,fr){return v(Zt[0]-fr[0])=0;--yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.p.x,-1,ba);vi=vi.p}vi=vi.o,li=vi.z,ti=!ti}while(!vi.v);ba.lineEnd()}}}function Fr(Zt){if(fr=Zt.length){for(var fr,Yr=0,qr=Zt[0],ba;++Yr=0?1:-1,Ms=Xs*bs,Hs=Ms>a,vs=Kn*co;if(Lr.add(T(vs*Xs*m(Ms),Wn*Wo+vs*l(Ms))),oi+=Hs?bs+Xs*s:bs,Hs^ti>=Yr^en>=Yr){var Il=be(ie(vi),ie(no));Ie(Il);var fl=be(Ka,Il);Ie(fl);var tl=(Hs^bs>=0?-1:1)*f(fl[2]);(qr>tl||qr===tl&&(Il[0]||Il[1]))&&(yi+=Hs^bs>=0?1:-1)}}return(oi<-r||oi0){for(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Wo=0;Wo1&&Ri&2&&co.push(co.pop().concat(co.shift())),li.push(co.filter(kt))}}return vi}}function kt(Zt){return Zt.length>1}function ir(Zt,fr){return((Zt=Zt.x)[0]<0?Zt[1]-i-r:i-Zt[1])-((fr=fr.x)[0]<0?fr[1]-i-r:i-fr[1])}var mr=ca(function(){return!0},$r,Ba,[-a,-i]);function $r(Zt){var fr=NaN,Yr=NaN,qr=NaN,ba;return{lineStart:function(){Zt.lineStart(),ba=1},point:function(Ka,oi){var yi=Ka>0?a:-a,ki=v(Ka-fr);v(ki-a)0?i:-i),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),Zt.point(Ka,Yr),ba=0):qr!==yi&&ki>=a&&(v(fr-qr)r?p((m(fr)*(Ka=l(qr))*m(Yr)-m(qr)*(ba=l(fr))*m(Zt))/(ba*Ka*oi)):(fr+qr)/2}function Ba(Zt,fr,Yr,qr){var ba;if(Zt==null)ba=Yr*i,qr.point(-a,ba),qr.point(0,ba),qr.point(a,ba),qr.point(a,0),qr.point(a,-ba),qr.point(0,-ba),qr.point(-a,-ba),qr.point(-a,0),qr.point(-a,ba);else if(v(Zt[0]-fr[0])>r){var Ka=Zt[0]0,ba=v(fr)>r;function Ka(li,_i,vi,ti){mt(ti,Zt,Yr,vi,li,_i)}function oi(li,_i){return l(li)*l(_i)>fr}function yi(li){var _i,vi,ti,rn,Kn;return{lineStart:function(){rn=ti=!1,Kn=1},point:function(Wn,Jn){var no=[Wn,Jn],en,Ri=oi(Wn,Jn),co=qr?Ri?0:Bi(Wn,Jn):Ri?Bi(Wn+(Wn<0?a:-a),Jn):0;if(!_i&&(rn=ti=Ri)&&li.lineStart(),Ri!==ti&&(en=ki(_i,no),(!en||br(_i,en)||br(no,en))&&(no[2]=1)),Ri!==ti)Kn=0,Ri?(li.lineStart(),en=ki(no,_i),li.point(en[0],en[1])):(en=ki(_i,no),li.point(en[0],en[1],2),li.lineEnd()),_i=en;else if(ba&&_i&&qr^Ri){var Wo;!(co&vi)&&(Wo=ki(no,_i,!0))&&(Kn=0,qr?(li.lineStart(),li.point(Wo[0][0],Wo[0][1]),li.point(Wo[1][0],Wo[1][1]),li.lineEnd()):(li.point(Wo[1][0],Wo[1][1]),li.lineEnd(),li.lineStart(),li.point(Wo[0][0],Wo[0][1],3)))}Ri&&(!_i||!br(_i,no))&&li.point(no[0],no[1]),_i=no,ti=Ri,vi=co},lineEnd:function(){ti&&li.lineEnd(),_i=null},clean:function(){return Kn|(rn&&ti)<<1}}}function ki(li,_i,vi){var ti=ie(li),rn=ie(_i),Kn=[1,0,0],Wn=be(ti,rn),Jn=fe(Wn,Wn),no=Wn[0],en=Jn-no*no;if(!en)return!vi&&li;var Ri=fr*Jn/en,co=-fr*no/en,Wo=be(Kn,Wn),bs=Be(Kn,Ri),Xs=Be(Wn,co);Ae(bs,Xs);var Ms=Wo,Hs=fe(bs,Ms),vs=fe(Ms,Ms),Il=Hs*Hs-vs*(fe(bs,bs)-1);if(!(Il<0)){var fl=d(Il),tl=Be(Ms,(-Hs-fl)/vs);if(Ae(tl,bs),tl=ee(tl),!vi)return tl;var Ln=li[0],Ao=_i[0],js=li[1],Ts=_i[1],nu;Ao0^tl[1]<(v(tl[0]-Ln)a^(Ln<=tl[0]&&tl[0]<=Ao)){var yu=Be(Ms,(-Hs+fl)/vs);return Ae(yu,bs),[tl,ee(yu)]}}}function Bi(li,_i){var vi=qr?Zt:a-Zt,ti=0;return li<-vi?ti|=1:li>vi&&(ti|=2),_i<-vi?ti|=4:_i>vi&&(ti|=8),ti}return ca(oi,yi,Ka,qr?[0,-Zt]:[-a,Zt-a])}function da(Zt,fr,Yr,qr,ba,Ka){var oi=Zt[0],yi=Zt[1],ki=fr[0],Bi=fr[1],li=0,_i=1,vi=ki-oi,ti=Bi-yi,rn;if(rn=Yr-oi,!(!vi&&rn>0)){if(rn/=vi,vi<0){if(rn0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=ba-oi,!(!vi&&rn<0)){if(rn/=vi,vi<0){if(rn>_i)return;rn>li&&(li=rn)}else if(vi>0){if(rn0)){if(rn/=ti,ti<0){if(rn0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=Ka-yi,!(!ti&&rn<0)){if(rn/=ti,ti<0){if(rn>_i)return;rn>li&&(li=rn)}else if(ti>0){if(rn0&&(Zt[0]=oi+li*vi,Zt[1]=yi+li*ti),_i<1&&(fr[0]=oi+_i*vi,fr[1]=yi+_i*ti),!0}}}}}var Sa=1e9,Ti=-Sa;function ai(Zt,fr,Yr,qr){function ba(Bi,li){return Zt<=Bi&&Bi<=Yr&&fr<=li&&li<=qr}function Ka(Bi,li,_i,vi){var ti=0,rn=0;if(Bi==null||(ti=oi(Bi,_i))!==(rn=oi(li,_i))||ki(Bi,li)<0^_i>0)do vi.point(ti===0||ti===3?Zt:Yr,ti>1?qr:fr);while((ti=(ti+_i+4)%4)!==rn);else vi.point(li[0],li[1])}function oi(Bi,li){return v(Bi[0]-Zt)0?0:3:v(Bi[0]-Yr)0?2:1:v(Bi[1]-fr)0?1:0:li>0?3:2}function yi(Bi,li){return ki(Bi.x,li.x)}function ki(Bi,li){var _i=oi(Bi,1),vi=oi(li,1);return _i!==vi?_i-vi:_i===0?li[1]-Bi[1]:_i===1?Bi[0]-li[0]:_i===2?Bi[1]-li[1]:li[0]-Bi[0]}return function(Bi){var li=Bi,_i=kr(),vi,ti,rn,Kn,Wn,Jn,no,en,Ri,co,Wo,bs={point:Xs,lineStart:Il,lineEnd:fl,polygonStart:Hs,polygonEnd:vs};function Xs(Ln,Ao){ba(Ln,Ao)&&li.point(Ln,Ao)}function Ms(){for(var Ln=0,Ao=0,js=ti.length;Aoqr&&(Bc-tf)*(qr-yu)>(Iu-yu)*(Zt-tf)&&++Ln:Iu<=qr&&(Bc-tf)*(qr-yu)<(Iu-yu)*(Zt-tf)&&--Ln;return Ln}function Hs(){li=_i,vi=[],ti=[],Wo=!0}function vs(){var Ln=Ms(),Ao=Wo&&Ln,js=(vi=x.merge(vi)).length;(Ao||js)&&(Bi.polygonStart(),Ao&&(Bi.lineStart(),Ka(null,null,1,Bi),Bi.lineEnd()),js&&Mr(vi,yi,Ln,Ka,Bi),Bi.polygonEnd()),li=Bi,vi=ti=rn=null}function Il(){bs.point=tl,ti&&ti.push(rn=[]),co=!0,Ri=!1,no=en=NaN}function fl(){vi&&(tl(Kn,Wn),Jn&&Ri&&_i.rejoin(),vi.push(_i.result())),bs.point=Xs,Ri&&li.lineEnd()}function tl(Ln,Ao){var js=ba(Ln,Ao);if(ti&&rn.push([Ln,Ao]),co)Kn=Ln,Wn=Ao,Jn=js,co=!1,js&&(li.lineStart(),li.point(Ln,Ao));else if(js&&Ri)li.point(Ln,Ao);else{var Ts=[no=Math.max(Ti,Math.min(Sa,no)),en=Math.max(Ti,Math.min(Sa,en))],nu=[Ln=Math.max(Ti,Math.min(Sa,Ln)),Ao=Math.max(Ti,Math.min(Sa,Ao))];da(Ts,nu,Zt,fr,Yr,qr)?(Ri||(li.lineStart(),li.point(Ts[0],Ts[1])),li.point(nu[0],nu[1]),js||li.lineEnd(),Wo=!1):js&&(li.lineStart(),li.point(Ln,Ao),Wo=!1)}no=Ln,en=Ao,Ri=js}return bs}}function an(){var Zt=0,fr=0,Yr=960,qr=500,ba,Ka,oi;return oi={stream:function(yi){return ba&&Ka===yi?ba:ba=ai(Zt,fr,Yr,qr)(Ka=yi)},extent:function(yi){return arguments.length?(Zt=+yi[0][0],fr=+yi[0][1],Yr=+yi[1][0],qr=+yi[1][1],ba=Ka=null,oi):[[Zt,fr],[Yr,qr]]}}}var sn=A(),Mn,On,$n,Cn={sphere:L,point:L,lineStart:Lo,lineEnd:L,polygonStart:L,polygonEnd:L};function Lo(){Cn.point=Jo,Cn.lineEnd=Xi}function Xi(){Cn.point=Cn.lineEnd=L}function Jo(Zt,fr){Zt*=h,fr*=h,Mn=Zt,On=m(fr),$n=l(fr),Cn.point=zo}function zo(Zt,fr){Zt*=h,fr*=h;var Yr=m(fr),qr=l(fr),ba=v(Zt-Mn),Ka=l(ba),oi=m(ba),yi=qr*oi,ki=$n*Yr-On*qr*Ka,Bi=On*Yr+$n*qr*Ka;sn.add(T(d(yi*yi+ki*ki),Bi)),Mn=Zt,On=Yr,$n=qr}function as(Zt){return sn.reset(),N(Zt,Cn),+sn}var Pn=[null,null],go={type:"LineString",coordinates:Pn};function In(Zt,fr){return Pn[0]=Zt,Pn[1]=fr,as(go)}var Do={Feature:function(Zt,fr){return Qo(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr0&&(ba=In(Zt[Ka],Zt[Ka-1]),ba>0&&Yr<=ba&&qr<=ba&&(Yr+qr-ba)*(1-Math.pow((Yr-qr)/ba,2))r}).map(vi)).concat(x.range(_(Ka/Bi)*Bi,ba,Bi).filter(function(en){return v(en%_i)>r}).map(ti))}return Jn.lines=function(){return no().map(function(en){return{type:"LineString",coordinates:en}})},Jn.outline=function(){return{type:"Polygon",coordinates:[rn(qr).concat(Kn(oi).slice(1),rn(Yr).reverse().slice(1),Kn(yi).reverse().slice(1))]}},Jn.extent=function(en){return arguments.length?Jn.extentMajor(en).extentMinor(en):Jn.extentMinor()},Jn.extentMajor=function(en){return arguments.length?(qr=+en[0][0],Yr=+en[1][0],yi=+en[0][1],oi=+en[1][1],qr>Yr&&(en=qr,qr=Yr,Yr=en),yi>oi&&(en=yi,yi=oi,oi=en),Jn.precision(Wn)):[[qr,yi],[Yr,oi]]},Jn.extentMinor=function(en){return arguments.length?(fr=+en[0][0],Zt=+en[1][0],Ka=+en[0][1],ba=+en[1][1],fr>Zt&&(en=fr,fr=Zt,Zt=en),Ka>ba&&(en=Ka,Ka=ba,ba=en),Jn.precision(Wn)):[[fr,Ka],[Zt,ba]]},Jn.step=function(en){return arguments.length?Jn.stepMajor(en).stepMinor(en):Jn.stepMinor()},Jn.stepMajor=function(en){return arguments.length?(li=+en[0],_i=+en[1],Jn):[li,_i]},Jn.stepMinor=function(en){return arguments.length?(ki=+en[0],Bi=+en[1],Jn):[ki,Bi]},Jn.precision=function(en){return arguments.length?(Wn=+en,vi=fi(Ka,ba,90),ti=mn(fr,Zt,Wn),rn=fi(yi,oi,90),Kn=mn(qr,Yr,Wn),Jn):Wn},Jn.extentMajor([[-180,-90+r],[180,90-r]]).extentMinor([[-180,-80-r],[180,80+r]])}function Os(){return ol()()}function so(Zt,fr){var Yr=Zt[0]*h,qr=Zt[1]*h,ba=fr[0]*h,Ka=fr[1]*h,oi=l(qr),yi=m(qr),ki=l(Ka),Bi=m(Ka),li=oi*l(Yr),_i=oi*m(Yr),vi=ki*l(ba),ti=ki*m(ba),rn=2*f(d(P(Ka-qr)+oi*ki*P(ba-Yr))),Kn=m(rn),Wn=rn?function(Jn){var no=m(Jn*=rn)/Kn,en=m(rn-Jn)/Kn,Ri=en*li+no*vi,co=en*_i+no*ti,Wo=en*yi+no*Bi;return[T(co,Ri)*c,T(Wo,d(Ri*Ri+co*co))*c]}:function(){return[Yr*c,qr*c]};return Wn.distance=rn,Wn}function Ns(Zt){return Zt}var fs=A(),al=A(),vl,ji,To,Yn,_s={point:L,lineStart:L,lineEnd:L,polygonStart:function(){_s.lineStart=Yo,_s.lineEnd=Zu},polygonEnd:function(){_s.lineStart=_s.lineEnd=_s.point=L,fs.add(v(al)),al.reset()},result:function(){var Zt=fs/2;return fs.reset(),Zt}};function Yo(){_s.point=Nn}function Nn(Zt,fr){_s.point=Wl,vl=To=Zt,ji=Yn=fr}function Wl(Zt,fr){al.add(Yn*Zt-To*fr),To=Zt,Yn=fr}function Zu(){Wl(vl,ji)}var ml=1/0,Bu=ml,El=-ml,qs=El,Jl={point:Nu,lineStart:L,lineEnd:L,polygonStart:L,polygonEnd:L,result:function(){var Zt=[[ml,Bu],[El,qs]];return El=qs=-(Bu=ml=1/0),Zt}};function Nu(Zt,fr){ZtEl&&(El=Zt),frqs&&(qs=fr)}var Ic=0,Xu=0,Th=0,bf=0,Rs=0,Yc=0,If=0,Zl=0,yl=0,oc,_c,Zs,_l,Bs={point:$s,lineStart:sc,lineEnd:Qs,polygonStart:function(){Bs.lineStart=fp,Bs.lineEnd=es},polygonEnd:function(){Bs.point=$s,Bs.lineStart=sc,Bs.lineEnd=Qs},result:function(){var Zt=yl?[If/yl,Zl/yl]:Yc?[bf/Yc,Rs/Yc]:Th?[Ic/Th,Xu/Th]:[NaN,NaN];return Ic=Xu=Th=bf=Rs=Yc=If=Zl=yl=0,Zt}};function $s(Zt,fr){Ic+=Zt,Xu+=fr,++Th}function sc(){Bs.point=zl}function zl(Zt,fr){Bs.point=Yu,$s(Zs=Zt,_l=fr)}function Yu(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,$s(Zs=Zt,_l=fr)}function Qs(){Bs.point=$s}function fp(){Bs.point=Wh}function es(){Ss(oc,_c)}function Wh(Zt,fr){Bs.point=Ss,$s(oc=Zs=Zt,_c=_l=fr)}function Ss(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,ba=_l*Zt-Zs*fr,If+=ba*(Zs+Zt),Zl+=ba*(_l+fr),yl+=ba*3,$s(Zs=Zt,_l=fr)}function So(Zt){this._context=Zt}So.prototype={_radius:4.5,pointRadius:function(Zt){return this._radius=Zt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._context.moveTo(Zt,fr),this._point=1;break}case 1:{this._context.lineTo(Zt,fr);break}default:{this._context.moveTo(Zt+this._radius,fr),this._context.arc(Zt,fr,this._radius,0,s);break}}},result:L};var hf=A(),Ku,cu,Zf,Rc,pf,Fl={point:L,lineStart:function(){Fl.point=lh},lineEnd:function(){Ku&&Xf(cu,Zf),Fl.point=L},polygonStart:function(){Ku=!0},polygonEnd:function(){Ku=null},result:function(){var Zt=+hf;return hf.reset(),Zt}};function lh(Zt,fr){Fl.point=Xf,cu=Rc=Zt,Zf=pf=fr}function Xf(Zt,fr){Rc-=Zt,pf-=fr,hf.add(d(Rc*Rc+pf*pf)),Rc=Zt,pf=fr}function Rf(){this._string=[]}Rf.prototype={_radius:4.5,_circle:Kc(4.5),pointRadius:function(Zt){return(Zt=+Zt)!==this._radius&&(this._radius=Zt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._string.push("M",Zt,",",fr),this._point=1;break}case 1:{this._string.push("L",Zt,",",fr);break}default:{this._circle==null&&(this._circle=Kc(this._radius)),this._string.push("M",Zt,",",fr,this._circle);break}}},result:function(){if(this._string.length){var Zt=this._string.join("");return this._string=[],Zt}else return null}};function Kc(Zt){return"m0,"+Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+-2*Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+2*Zt+"z"}function Yf(Zt,fr){var Yr=4.5,qr,ba;function Ka(oi){return oi&&(typeof Yr=="function"&&ba.pointRadius(+Yr.apply(this,arguments)),N(oi,qr(ba))),ba.result()}return Ka.area=function(oi){return N(oi,qr(_s)),_s.result()},Ka.measure=function(oi){return N(oi,qr(Fl)),Fl.result()},Ka.bounds=function(oi){return N(oi,qr(Jl)),Jl.result()},Ka.centroid=function(oi){return N(oi,qr(Bs)),Bs.result()},Ka.projection=function(oi){return arguments.length?(qr=oi==null?(Zt=null,Ns):(Zt=oi).stream,Ka):Zt},Ka.context=function(oi){return arguments.length?(ba=oi==null?(fr=null,new Rf):new So(fr=oi),typeof Yr!="function"&&ba.pointRadius(Yr),Ka):fr},Ka.pointRadius=function(oi){return arguments.length?(Yr=typeof oi=="function"?oi:(ba.pointRadius(+oi),+oi),Ka):Yr},Ka.projection(Zt).context(fr)}function uh(Zt){return{stream:Ju(Zt)}}function Ju(Zt){return function(fr){var Yr=new Df;for(var qr in Zt)Yr[qr]=Zt[qr];return Yr.stream=fr,Yr}}function Df(){}Df.prototype={constructor:Df,point:function(Zt,fr){this.stream.point(Zt,fr)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Dc(Zt,fr,Yr){var qr=Zt.clipExtent&&Zt.clipExtent();return Zt.scale(150).translate([0,0]),qr!=null&&Zt.clipExtent(null),N(Yr,Zt.stream(Jl)),fr(Jl.result()),qr!=null&&Zt.clipExtent(qr),Zt}function Jc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=fr[1][0]-fr[0][0],Ka=fr[1][1]-fr[0][1],oi=Math.min(ba/(qr[1][0]-qr[0][0]),Ka/(qr[1][1]-qr[0][1])),yi=+fr[0][0]+(ba-oi*(qr[1][0]+qr[0][0]))/2,ki=+fr[0][1]+(Ka-oi*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*oi).translate([yi,ki])},Yr)}function Eu(Zt,fr,Yr){return Jc(Zt,[[0,0],fr],Yr)}function wf(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][0]-qr[0][0]),oi=(ba-Ka*(qr[1][0]+qr[0][0]))/2,yi=-Ka*qr[0][1];Zt.scale(150*Ka).translate([oi,yi])},Yr)}function zc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][1]-qr[0][1]),oi=-Ka*qr[0][0],yi=(ba-Ka*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*Ka).translate([oi,yi])},Yr)}var Us=16,Kf=l(30*h);function Zh(Zt,fr){return+fr?df(Zt,fr):ch(Zt)}function ch(Zt){return Ju({point:function(fr,Yr){fr=Zt(fr,Yr),this.stream.point(fr[0],fr[1])}})}function df(Zt,fr){function Yr(qr,ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn){var Jn=Bi-qr,no=li-ba,en=Jn*Jn+no*no;if(en>4*fr&&Kn--){var Ri=oi+vi,co=yi+ti,Wo=ki+rn,bs=d(Ri*Ri+co*co+Wo*Wo),Xs=f(Wo/=bs),Ms=v(v(Wo)-1)fr||v((Jn*fl+no*tl)/en-.5)>.3||oi*vi+yi*ti+ki*rn2?Ln[2]%360*h:0,fl()):[yi*c,ki*c,Bi*c]},vs.angle=function(Ln){return arguments.length?(_i=Ln%360*h,fl()):_i*c},vs.reflectX=function(Ln){return arguments.length?(vi=Ln?-1:1,fl()):vi<0},vs.reflectY=function(Ln){return arguments.length?(ti=Ln?-1:1,fl()):ti<0},vs.precision=function(Ln){return arguments.length?(Wo=Zh(bs,co=Ln*Ln),tl()):d(co)},vs.fitExtent=function(Ln,Ao){return Jc(vs,Ln,Ao)},vs.fitSize=function(Ln,Ao){return Eu(vs,Ln,Ao)},vs.fitWidth=function(Ln,Ao){return wf(vs,Ln,Ao)},vs.fitHeight=function(Ln,Ao){return zc(vs,Ln,Ao)};function fl(){var Ln=ru(Yr,0,0,vi,ti,_i).apply(null,fr(Ka,oi)),Ao=(_i?ru:fh)(Yr,qr-Ln[0],ba-Ln[1],vi,ti,_i);return li=Ea(yi,ki,Bi),bs=pa(fr,Ao),Xs=pa(li,bs),Wo=Zh(bs,co),tl()}function tl(){return Ms=Hs=null,vs}return function(){return fr=Zt.apply(this,arguments),vs.invert=fr.invert&&Il,fl()}}function kl(Zt){var fr=0,Yr=a/3,qr=xc(Zt),ba=qr(fr,Yr);return ba.parallels=function(Ka){return arguments.length?qr(fr=Ka[0]*h,Yr=Ka[1]*h):[fr*c,Yr*c]},ba}function Fc(Zt){var fr=l(Zt);function Yr(qr,ba){return[qr*fr,m(ba)/fr]}return Yr.invert=function(qr,ba){return[qr/fr,f(ba*fr)]},Yr}function $u(Zt,fr){var Yr=m(Zt),qr=(Yr+m(fr))/2;if(v(qr)=.12&&Wn<.234&&Kn>=-.425&&Kn<-.214?ba:Wn>=.166&&Wn<.234&&Kn>=-.214&&Kn<-.115?oi:Yr).invert(vi)},li.stream=function(vi){return Zt&&fr===vi?Zt:Zt=hh([Yr.stream(fr=vi),ba.stream(vi),oi.stream(vi)])},li.precision=function(vi){return arguments.length?(Yr.precision(vi),ba.precision(vi),oi.precision(vi),_i()):Yr.precision()},li.scale=function(vi){return arguments.length?(Yr.scale(vi),ba.scale(vi*.35),oi.scale(vi),li.translate(Yr.translate())):Yr.scale()},li.translate=function(vi){if(!arguments.length)return Yr.translate();var ti=Yr.scale(),rn=+vi[0],Kn=+vi[1];return qr=Yr.translate(vi).clipExtent([[rn-.455*ti,Kn-.238*ti],[rn+.455*ti,Kn+.238*ti]]).stream(Bi),Ka=ba.translate([rn-.307*ti,Kn+.201*ti]).clipExtent([[rn-.425*ti+r,Kn+.12*ti+r],[rn-.214*ti-r,Kn+.234*ti-r]]).stream(Bi),yi=oi.translate([rn-.205*ti,Kn+.212*ti]).clipExtent([[rn-.214*ti+r,Kn+.166*ti+r],[rn-.115*ti-r,Kn+.234*ti-r]]).stream(Bi),_i()},li.fitExtent=function(vi,ti){return Jc(li,vi,ti)},li.fitSize=function(vi,ti){return Eu(li,vi,ti)},li.fitWidth=function(vi,ti){return wf(li,vi,ti)},li.fitHeight=function(vi,ti){return zc(li,vi,ti)};function _i(){return Zt=fr=null,li}return li.scale(1070)}function Uu(Zt){return function(fr,Yr){var qr=l(fr),ba=l(Yr),Ka=Zt(qr*ba);return[Ka*ba*m(fr),Ka*m(Yr)]}}function bc(Zt){return function(fr,Yr){var qr=d(fr*fr+Yr*Yr),ba=Zt(qr),Ka=m(ba),oi=l(ba);return[T(fr*Ka,qr*oi),f(qr&&Yr*Ka/qr)]}}var lc=Uu(function(Zt){return d(2/(1+Zt))});lc.invert=bc(function(Zt){return 2*f(Zt/2)});function hp(){return Cu(lc).scale(124.75).clipAngle(180-.001)}var vf=Uu(function(Zt){return(Zt=y(Zt))&&Zt/m(Zt)});vf.invert=bc(function(Zt){return Zt});function Tf(){return Cu(vf).scale(79.4188).clipAngle(180-.001)}function Lu(Zt,fr){return[Zt,S(u((i+fr)/2))]}Lu.invert=function(Zt,fr){return[Zt,2*p(w(fr))-i]};function zf(){return au(Lu).scale(961/s)}function au(Zt){var fr=Cu(Zt),Yr=fr.center,qr=fr.scale,ba=fr.translate,Ka=fr.clipExtent,oi=null,yi,ki,Bi;fr.scale=function(_i){return arguments.length?(qr(_i),li()):qr()},fr.translate=function(_i){return arguments.length?(ba(_i),li()):ba()},fr.center=function(_i){return arguments.length?(Yr(_i),li()):Yr()},fr.clipExtent=function(_i){return arguments.length?(_i==null?oi=yi=ki=Bi=null:(oi=+_i[0][0],yi=+_i[0][1],ki=+_i[1][0],Bi=+_i[1][1]),li()):oi==null?null:[[oi,yi],[ki,Bi]]};function li(){var _i=a*qr(),vi=fr($a(fr.rotate()).invert([0,0]));return Ka(oi==null?[[vi[0]-_i,vi[1]-_i],[vi[0]+_i,vi[1]+_i]]:Zt===Lu?[[Math.max(vi[0]-_i,oi),yi],[Math.min(vi[0]+_i,ki),Bi]]:[[oi,Math.max(vi[1]-_i,yi)],[ki,Math.min(vi[1]+_i,Bi)]])}return li()}function $c(Zt){return u((i+Zt)/2)}function Mh(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):S(Yr/l(fr))/S($c(fr)/$c(Zt)),ba=Yr*E($c(Zt),qr)/qr;if(!qr)return Lu;function Ka(oi,yi){ba>0?yi<-i+r&&(yi=-i+r):yi>i-r&&(yi=i-r);var ki=ba/E($c(yi),qr);return[ki*m(qr*oi),ba-ki*l(qr*oi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=b(qr)*d(oi*oi+ki*ki),li=T(oi,v(ki))*b(ki);return ki*qr<0&&(li-=a*b(oi)*b(ki)),[li/qr,2*p(E(ba/Bi,1/qr))-i]},Ka}function Ff(){return kl(Mh).scale(109.5).parallels([30,30])}function il(Zt,fr){return[Zt,fr]}il.invert=il;function mu(){return Cu(il).scale(152.63)}function gu(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):(Yr-l(fr))/(fr-Zt),ba=Yr/qr+Zt;if(v(qr)r&&--qr>0);return[Zt/(.8707+(Ka=Yr*Yr)*(-.131979+Ka*(-.013791+Ka*Ka*Ka*(.003971-.001529*Ka)))),Yr]};function cc(){return Cu(Tc).scale(175.295)}function Cl(Zt,fr){return[l(fr)*m(Zt),m(fr)]}Cl.invert=bc(f);function iu(){return Cu(Cl).scale(249.5).clipAngle(90+r)}function fc(Zt,fr){var Yr=l(fr),qr=1+l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}fc.invert=bc(function(Zt){return 2*p(Zt)});function Oc(){return Cu(fc).scale(250).clipAngle(142)}function Qu(Zt,fr){return[S(u((i+fr)/2)),-Zt]}Qu.invert=function(Zt,fr){return[-fr,2*p(w(Zt))-i]};function ef(){var Zt=au(Qu),fr=Zt.center,Yr=Zt.rotate;return Zt.center=function(qr){return arguments.length?fr([-qr[1],qr[0]]):(qr=fr(),[qr[1],-qr[0]])},Zt.rotate=function(qr){return arguments.length?Yr([qr[0],qr[1],qr.length>2?qr[2]+90:90]):(qr=Yr(),[qr[0],qr[1],qr[2]-90])},Yr([0,0,90]).scale(159.155)}g.geoAlbers=xl,g.geoAlbersUsa=Sh,g.geoArea=j,g.geoAzimuthalEqualArea=hp,g.geoAzimuthalEqualAreaRaw=lc,g.geoAzimuthalEquidistant=Tf,g.geoAzimuthalEquidistantRaw=vf,g.geoBounds=Fe,g.geoCentroid=xr,g.geoCircle=Er,g.geoClipAntimeridian=mr,g.geoClipCircle=Ca,g.geoClipExtent=an,g.geoClipRectangle=ai,g.geoConicConformal=Ff,g.geoConicConformalRaw=Mh,g.geoConicEqualArea=vu,g.geoConicEqualAreaRaw=$u,g.geoConicEquidistant=Jf,g.geoConicEquidistantRaw=gu,g.geoContains=$o,g.geoDistance=In,g.geoEqualEarth=$f,g.geoEqualEarthRaw=Qc,g.geoEquirectangular=mu,g.geoEquirectangularRaw=il,g.geoGnomonic=Qf,g.geoGnomonicRaw=Vl,g.geoGraticule=ol,g.geoGraticule10=Os,g.geoIdentity=Vu,g.geoInterpolate=so,g.geoLength=as,g.geoMercator=zf,g.geoMercatorRaw=Lu,g.geoNaturalEarth1=cc,g.geoNaturalEarth1Raw=Tc,g.geoOrthographic=iu,g.geoOrthographicRaw=Cl,g.geoPath=Yf,g.geoProjection=Cu,g.geoProjectionMutator=xc,g.geoRotation=$a,g.geoStereographic=Oc,g.geoStereographicRaw=fc,g.geoStream=N,g.geoTransform=uh,g.geoTransverseMercator=ef,g.geoTransverseMercatorRaw=Qu,Object.defineProperty(g,"__esModule",{value:!0})})}}),TU=Ye({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,C5(),gx()):x(g.d3=g.d3||{},g.d3,g.d3)})(X,function(g,x,A){"use strict";var M=Math.abs,e=Math.atan,t=Math.atan2,r=Math.cos,o=Math.exp,a=Math.floor,i=Math.log,n=Math.max,s=Math.min,c=Math.pow,h=Math.round,v=Math.sign||function(qe){return qe>0?1:qe<0?-1:0},p=Math.sin,T=Math.tan,l=1e-6,_=1e-12,w=Math.PI,S=w/2,E=w/4,m=Math.SQRT1_2,b=F(2),d=F(w),u=w*2,y=180/w,f=w/180;function P(qe){return qe?qe/Math.sin(qe):1}function L(qe){return qe>1?S:qe<-1?-S:Math.asin(qe)}function z(qe){return qe>1?0:qe<-1?w:Math.acos(qe)}function F(qe){return qe>0?Math.sqrt(qe):0}function B(qe){return qe=o(2*qe),(qe-1)/(qe+1)}function O(qe){return(o(qe)-o(-qe))/2}function I(qe){return(o(qe)+o(-qe))/2}function N(qe){return i(qe+F(qe*qe+1))}function U(qe){return i(qe+F(qe*qe-1))}function W(qe){var Je=T(qe/2),ot=2*i(r(qe/2))/(Je*Je);function ht(At,_t){var Pt=r(At),er=r(_t),nr=p(_t),pr=er*Pt,Sr=-((1-pr?i((1+pr)/2)/(1-pr):-.5)+ot/(1+pr));return[Sr*er*p(At),Sr*nr]}return ht.invert=function(At,_t){var Pt=F(At*At+_t*_t),er=-qe/2,nr=50,pr;if(!Pt)return[0,0];do{var Sr=er/2,Wr=r(Sr),ha=p(Sr),ga=ha/Wr,Pa=-i(M(Wr));er-=pr=(2/ga*Pa-ot*ga-Pt)/(-Pa/(ha*ha)+1-ot/(2*Wr*Wr))*(Wr<0?.7:1)}while(M(pr)>l&&--nr>0);var Ja=p(er);return[t(At*Ja,Pt*r(er)),L(_t*Ja/Pt)]},ht}function Q(){var qe=S,Je=x.geoProjectionMutator(W),ot=Je(qe);return ot.radius=function(ht){return arguments.length?Je(qe=ht*f):qe*y},ot.scale(179.976).clipAngle(147)}function ue(qe,Je){var ot=r(Je),ht=P(z(ot*r(qe/=2)));return[2*ot*p(qe)*ht,p(Je)*ht]}ue.invert=function(qe,Je){if(!(qe*qe+4*Je*Je>w*w+l)){var ot=qe,ht=Je,At=25;do{var _t=p(ot),Pt=p(ot/2),er=r(ot/2),nr=p(ht),pr=r(ht),Sr=p(2*ht),Wr=nr*nr,ha=pr*pr,ga=Pt*Pt,Pa=1-ha*er*er,Ja=Pa?z(pr*er)*F(di=1/Pa):di=0,di,pi=2*Ja*pr*Pt-qe,Ci=Ja*nr-Je,$i=di*(ha*ga+Ja*pr*er*Wr),Bn=di*(.5*_t*Sr-Ja*2*nr*Pt),Sn=di*.25*(Sr*Pt-Ja*nr*ha*_t),ho=di*(Wr*er+Ja*ga*pr),ts=Bn*Sn-ho*$i;if(!ts)break;var yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]}};function se(){return x.geoProjection(ue).scale(152.63)}function he(qe){var Je=p(qe),ot=r(qe),ht=qe>=0?1:-1,At=T(ht*qe),_t=(1+Je-ot)/2;function Pt(er,nr){var pr=r(nr),Sr=r(er/=2);return[(1+pr)*p(er),(ht*nr>-t(Sr,At)-.001?0:-ht*10)+_t+p(nr)*ot-(1+pr)*Je*Sr]}return Pt.invert=function(er,nr){var pr=0,Sr=0,Wr=50;do{var ha=r(pr),ga=p(pr),Pa=r(Sr),Ja=p(Sr),di=1+Pa,pi=di*ga-er,Ci=_t+Ja*ot-di*Je*ha-nr,$i=di*ha/2,Bn=-ga*Ja,Sn=Je*di*ga/2,ho=ot*Pa+Je*ha*Ja,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts/2,Vo=(pi*Sn-Ci*$i)/ts;M(Vo)>2&&(Vo/=2),pr-=yo,Sr-=Vo}while((M(yo)>l||M(Vo)>l)&&--Wr>0);return ht*Sr>-t(r(pr),At)-.001?[pr*2,Sr]:null},Pt}function G(){var qe=20*f,Je=qe>=0?1:-1,ot=T(Je*qe),ht=x.geoProjectionMutator(he),At=ht(qe),_t=At.stream;return At.parallel=function(Pt){return arguments.length?(ot=T((Je=(qe=Pt*f)>=0?1:-1)*qe),ht(qe)):qe*y},At.stream=function(Pt){var er=At.rotate(),nr=_t(Pt),pr=(At.rotate([0,0]),_t(Pt)),Sr=At.precision();return At.rotate(er),nr.sphere=function(){pr.polygonStart(),pr.lineStart();for(var Wr=Je*-180;Je*Wr<180;Wr+=Je*90)pr.point(Wr,Je*90);if(qe)for(;Je*(Wr-=3*Je*Sr)>=-180;)pr.point(Wr,Je*-t(r(Wr*f/2),ot)*y);pr.lineEnd(),pr.polygonEnd()},nr},At.scale(218.695).center([0,28.0974])}function $(qe,Je){var ot=T(Je/2),ht=F(1-ot*ot),At=1+ht*r(qe/=2),_t=p(qe)*ht/At,Pt=ot/At,er=_t*_t,nr=Pt*Pt;return[4/3*_t*(3+er-3*nr),4/3*Pt*(3+3*er-nr)]}$.invert=function(qe,Je){if(qe*=3/8,Je*=3/8,!qe&&M(Je)>1)return null;var ot=qe*qe,ht=Je*Je,At=1+ot+ht,_t=F((At-F(At*At-4*Je*Je))/2),Pt=L(_t)/3,er=_t?U(M(Je/_t))/3:N(M(qe))/3,nr=r(Pt),pr=I(er),Sr=pr*pr-nr*nr;return[v(qe)*2*t(O(er)*nr,.25-Sr),v(Je)*2*t(pr*p(Pt),.25+Sr)]};function J(){return x.geoProjection($).scale(66.1603)}var Z=F(8),re=i(1+b);function ne(qe,Je){var ot=M(Je);return ot_&&--ht>0);return[qe/(r(ot)*(Z-1/p(ot))),v(Je)*ot]};function j(){return x.geoProjection(ne).scale(112.314)}function ee(qe){var Je=2*w/qe;function ot(ht,At){var _t=x.geoAzimuthalEquidistantRaw(ht,At);if(M(ht)>S){var Pt=t(_t[1],_t[0]),er=F(_t[0]*_t[0]+_t[1]*_t[1]),nr=Je*h((Pt-S)/Je)+S,pr=t(p(Pt-=nr),2-r(Pt));Pt=nr+L(w/er*p(pr))-pr,_t[0]=er*r(Pt),_t[1]=er*p(Pt)}return _t}return ot.invert=function(ht,At){var _t=F(ht*ht+At*At);if(_t>S){var Pt=t(At,ht),er=Je*h((Pt-S)/Je)+S,nr=Pt>er?-1:1,pr=_t*r(er-Pt),Sr=1/T(nr*z((pr-w)/F(w*(w-2*pr)+_t*_t)));Pt=er+2*e((Sr+nr*F(Sr*Sr-3))/3),ht=_t*r(Pt),At=_t*p(Pt)}return x.geoAzimuthalEquidistantRaw.invert(ht,At)},ot}function ie(){var qe=5,Je=x.geoProjectionMutator(ee),ot=Je(qe),ht=ot.stream,At=.01,_t=-r(At*f),Pt=p(At*f);return ot.lobes=function(er){return arguments.length?Je(qe=+er):qe},ot.stream=function(er){var nr=ot.rotate(),pr=ht(er),Sr=(ot.rotate([0,0]),ht(er));return ot.rotate(nr),pr.sphere=function(){Sr.polygonStart(),Sr.lineStart();for(var Wr=0,ha=360/qe,ga=2*w/qe,Pa=90-180/qe,Ja=S;Wr0&&M(At)>l);return ht<0?NaN:ot}function Ie(qe,Je,ot){return Je===void 0&&(Je=40),ot===void 0&&(ot=_),function(ht,At,_t,Pt){var er,nr,pr;_t=_t===void 0?0:+_t,Pt=Pt===void 0?0:+Pt;for(var Sr=0;Srer){_t-=nr/=2,Pt-=pr/=2;continue}er=Pa;var Ja=(_t>0?-1:1)*ot,di=(Pt>0?-1:1)*ot,pi=qe(_t+Ja,Pt),Ci=qe(_t,Pt+di),$i=(pi[0]-Wr[0])/Ja,Bn=(pi[1]-Wr[1])/Ja,Sn=(Ci[0]-Wr[0])/di,ho=(Ci[1]-Wr[1])/di,ts=ho*$i-Bn*Sn,yo=(M(ts)<.5?.5:1)/ts;if(nr=(ga*Sn-ha*ho)*yo,pr=(ha*Bn-ga*$i)*yo,_t+=nr,Pt+=pr,M(nr)0&&(er[1]*=1+nr/1.5*er[0]*er[0]),er}return ht.invert=Ie(ht),ht}function at(){return x.geoProjection(Ze()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function it(qe,Je){var ot=qe*p(Je),ht=30,At;do Je-=At=(Je+p(Je)-ot)/(1+r(Je));while(M(At)>l&&--ht>0);return Je/2}function et(qe,Je,ot){function ht(At,_t){return[qe*At*r(_t=it(ot,_t)),Je*p(_t)]}return ht.invert=function(At,_t){return _t=L(_t/Je),[At/(qe*r(_t)),L((2*_t+p(2*_t))/ot)]},ht}var lt=et(b/S,b,w);function Me(){return x.geoProjection(lt).scale(169.529)}var ge=2.00276,ce=1.11072;function ze(qe,Je){var ot=it(w,Je);return[ge*qe/(1/r(Je)+ce/r(ot)),(Je+b*p(ot))/ge]}ze.invert=function(qe,Je){var ot=ge*Je,ht=Je<0?-E:E,At=25,_t,Pt;do Pt=ot-b*p(ht),ht-=_t=(p(2*ht)+2*ht-w*p(Pt))/(2*r(2*ht)+2+w*r(Pt)*b*r(ht));while(M(_t)>l&&--At>0);return Pt=ot-b*p(ht),[qe*(1/r(Pt)+ce/r(ht))/ge,Pt]};function tt(){return x.geoProjection(ze).scale(160.857)}function nt(qe){var Je=0,ot=x.geoProjectionMutator(qe),ht=ot(Je);return ht.parallel=function(At){return arguments.length?ot(Je=At*f):Je*y},ht}function Qe(qe,Je){return[qe*r(Je),Je]}Qe.invert=function(qe,Je){return[qe/r(Je),Je]};function Ct(){return x.geoProjection(Qe).scale(152.63)}function St(qe){if(!qe)return Qe;var Je=1/T(qe);function ot(ht,At){var _t=Je+qe-At,Pt=_t&&ht*r(At)/_t;return[_t*p(Pt),Je-_t*r(Pt)]}return ot.invert=function(ht,At){var _t=F(ht*ht+(At=Je-At)*At),Pt=Je+qe-_t;return[_t/r(Pt)*t(ht,At),Pt]},ot}function Ot(){return nt(St).scale(123.082).center([0,26.1441]).parallel(45)}function jt(qe){function Je(ot,ht){var At=S-ht,_t=At&&ot*qe*p(At)/At;return[At*p(_t)/qe,S-At*r(_t)]}return Je.invert=function(ot,ht){var At=ot*qe,_t=S-ht,Pt=F(At*At+_t*_t),er=t(At,_t);return[(Pt?Pt/p(Pt):1)*er/qe,S-Pt]},Je}function ur(){var qe=.5,Je=x.geoProjectionMutator(jt),ot=Je(qe);return ot.fraction=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(158.837)}var ar=et(1,4/w,w);function Cr(){return x.geoProjection(ar).scale(152.63)}function vr(qe,Je,ot,ht,At,_t){var Pt=r(_t),er;if(M(qe)>1||M(_t)>1)er=z(ot*At+Je*ht*Pt);else{var nr=p(qe/2),pr=p(_t/2);er=2*L(F(nr*nr+Je*ht*pr*pr))}return M(er)>l?[er,t(ht*p(_t),Je*At-ot*ht*Pt)]:[0,0]}function _r(qe,Je,ot){return z((qe*qe+Je*Je-ot*ot)/(2*qe*Je))}function yt(qe){return qe-2*w*a((qe+w)/(2*w))}function Fe(qe,Je,ot){for(var ht=[[qe[0],qe[1],p(qe[1]),r(qe[1])],[Je[0],Je[1],p(Je[1]),r(Je[1])],[ot[0],ot[1],p(ot[1]),r(ot[1])]],At=ht[2],_t,Pt=0;Pt<3;++Pt,At=_t)_t=ht[Pt],At.v=vr(_t[1]-At[1],At[3],At[2],_t[3],_t[2],_t[0]-At[0]),At.point=[0,0];var er=_r(ht[0].v[0],ht[2].v[0],ht[1].v[0]),nr=_r(ht[0].v[0],ht[1].v[0],ht[2].v[0]),pr=w-er;ht[2].point[1]=0,ht[0].point[0]=-(ht[1].point[0]=ht[0].v[0]/2);var Sr=[ht[2].point[0]=ht[0].point[0]+ht[2].v[0]*r(er),2*(ht[0].point[1]=ht[1].point[1]=ht[2].v[0]*p(er))];function Wr(ha,ga){var Pa=p(ga),Ja=r(ga),di=new Array(3),pi;for(pi=0;pi<3;++pi){var Ci=ht[pi];if(di[pi]=vr(ga-Ci[1],Ci[3],Ci[2],Ja,Pa,ha-Ci[0]),!di[pi][0])return Ci.point;di[pi][1]=yt(di[pi][1]-Ci.v[1])}var $i=Sr.slice();for(pi=0;pi<3;++pi){var Bn=pi==2?0:pi+1,Sn=_r(ht[pi].v[0],di[pi][0],di[Bn][0]);di[pi][1]<0&&(Sn=-Sn),pi?pi==1?(Sn=nr-Sn,$i[0]-=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn)):(Sn=pr-Sn,$i[0]+=di[pi][0]*r(Sn),$i[1]+=di[pi][0]*p(Sn)):($i[0]+=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn))}return $i[0]/=3,$i[1]/=3,$i}return Wr}function Ke(qe){return qe[0]*=f,qe[1]*=f,qe}function Ne(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(qe,Je,ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:[qe,Je,ot]}),At=[-ht[0],-ht[1]],_t=x.geoRotation(At),Pt=Fe(Ke(_t(qe)),Ke(_t(Je)),Ke(_t(ot)));Pt.invert=Ie(Pt);var er=x.geoProjection(Pt).rotate(At),nr=er.center;return delete er.rotate,er.center=function(pr){return arguments.length?nr(_t(pr)):_t.invert(nr())},er.clipAngle(90)}function Ve(qe,Je){var ot=F(1-p(Je));return[2/d*qe*ot,d*(1-ot)]}Ve.invert=function(qe,Je){var ot=(ot=Je/d-1)*ot;return[ot>0?qe*F(w/ot)/2:0,L(1-ot)]};function ke(){return x.geoProjection(Ve).scale(95.6464).center([0,30])}function Te(qe){var Je=T(qe);function ot(ht,At){return[ht,(ht?ht/p(ht):1)*(p(At)*r(ht)-Je*r(At))]}return ot.invert=Je?function(ht,At){ht&&(At*=p(ht)/ht);var _t=r(ht);return[ht,2*t(F(_t*_t+Je*Je-At*At)-_t,Je-At)]}:function(ht,At){return[ht,L(ht?At*T(ht)/ht:At)]},ot}function Le(){return nt(Te).scale(249.828).clipAngle(90)}var rt=F(3);function dt(qe,Je){return[rt*qe*(2*r(2*Je/3)-1)/d,rt*d*p(Je/3)]}dt.invert=function(qe,Je){var ot=3*L(Je/(rt*d));return[d*qe/(rt*(2*r(2*ot/3)-1)),ot]};function xt(){return x.geoProjection(dt).scale(156.19)}function It(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,p(At)/Je]}return ot.invert=function(ht,At){return[ht/Je,L(At*Je)]},ot}function Bt(){return nt(It).parallel(38.58).scale(195.044)}function Gt(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,(1+Je)*T(At/2)]}return ot.invert=function(ht,At){return[ht/Je,e(At/(1+Je))*2]},ot}function Kt(){return nt(Gt).scale(124.75)}function sr(qe,Je){var ot=F(8/(3*w));return[ot*qe*(1-M(Je)/w),ot*Je]}sr.invert=function(qe,Je){var ot=F(8/(3*w)),ht=Je/ot;return[qe/(ot*(1-M(ht)/w)),ht]};function sa(){return x.geoProjection(sr).scale(165.664)}function Aa(qe,Je){var ot=F(4-3*p(M(Je)));return[2/F(6*w)*qe*ot,v(Je)*F(2*w/3)*(2-ot)]}Aa.invert=function(qe,Je){var ot=2-M(Je)/F(2*w/3);return[qe*F(6*w)/(2*ot),v(Je)*L((4-ot*ot)/3)]};function La(){return x.geoProjection(Aa).scale(165.664)}function ka(qe,Je){var ot=F(w*(4+w));return[2/ot*qe*(1+F(1-4*Je*Je/(w*w))),4/ot*Je]}ka.invert=function(qe,Je){var ot=F(w*(4+w))/2;return[qe*ot/(1+F(1-Je*Je*(4+w)/(4*w))),Je*ot/2]};function Ga(){return x.geoProjection(ka).scale(180.739)}function Ma(qe,Je){var ot=(2+S)*p(Je);Je/=2;for(var ht=0,At=1/0;ht<10&&M(At)>l;ht++){var _t=r(Je);Je-=At=(Je+p(Je)*(_t+2)-ot)/(2*_t*(1+_t))}return[2/F(w*(4+w))*qe*(1+r(Je)),2*F(w/(4+w))*p(Je)]}Ma.invert=function(qe,Je){var ot=Je*F((4+w)/w)/2,ht=L(ot),At=r(ht);return[qe/(2/F(w*(4+w))*(1+At)),L((ht+ot*(At+2))/(2+S))]};function Ua(){return x.geoProjection(Ma).scale(180.739)}function ni(qe,Je){return[qe*(1+r(Je))/F(2+w),2*Je/F(2+w)]}ni.invert=function(qe,Je){var ot=F(2+w),ht=Je*ot/2;return[ot*qe/(1+r(ht)),ht]};function Wt(){return x.geoProjection(ni).scale(173.044)}function zt(qe,Je){for(var ot=(1+S)*p(Je),ht=0,At=1/0;ht<10&&M(At)>l;ht++)Je-=At=(Je+p(Je)-ot)/(1+r(Je));return ot=F(2+w),[qe*(1+r(Je))/ot,2*Je/ot]}zt.invert=function(qe,Je){var ot=1+S,ht=F(ot/2);return[qe*2*ht/(1+r(Je*=ht)),L((Je+p(Je))/ot)]};function Vt(){return x.geoProjection(zt).scale(173.044)}var Ut=3+2*b;function xr(qe,Je){var ot=p(qe/=2),ht=r(qe),At=F(r(Je)),_t=r(Je/=2),Pt=p(Je)/(_t+b*ht*At),er=F(2/(1+Pt*Pt)),nr=F((b*_t+(ht+ot)*At)/(b*_t+(ht-ot)*At));return[Ut*(er*(nr-1/nr)-2*i(nr)),Ut*(er*Pt*(nr+1/nr)-2*e(Pt))]}xr.invert=function(qe,Je){if(!(_t=$.invert(qe/1.2,Je*1.065)))return null;var ot=_t[0],ht=_t[1],At=20,_t;qe/=Ut,Je/=Ut;do{var Pt=ot/2,er=ht/2,nr=p(Pt),pr=r(Pt),Sr=p(er),Wr=r(er),ha=r(ht),ga=F(ha),Pa=Sr/(Wr+b*pr*ga),Ja=Pa*Pa,di=F(2/(1+Ja)),pi=b*Wr+(pr+nr)*ga,Ci=b*Wr+(pr-nr)*ga,$i=pi/Ci,Bn=F($i),Sn=Bn-1/Bn,ho=Bn+1/Bn,ts=di*Sn-2*i(Bn)-qe,yo=di*Pa*ho-2*e(Pa)-Je,Vo=Sr&&m*ga*nr*Ja/Sr,ls=(b*pr*Wr+ga)/(2*(Wr+b*pr*ga)*(Wr+b*pr*ga)*ga),rl=-.5*Pa*di*di*di,Ys=rl*Vo,Zo=rl*ls,Go=(Go=2*Wr+b*ga*(pr-nr))*Go*Bn,Rl=(b*pr*Wr*ga+ha)/Go,Xl=-(b*nr*Sr)/(ga*Go),qu=Sn*Ys-2*Rl/Bn+di*(Rl+Rl/$i),fu=Sn*Zo-2*Xl/Bn+di*(Xl+Xl/$i),bl=Pa*ho*Ys-2*Vo/(1+Ja)+di*ho*Vo+di*Pa*(Rl-Rl/$i),ou=Pa*ho*Zo-2*ls/(1+Ja)+di*ho*ls+di*Pa*(Xl-Xl/$i),Sc=fu*bl-ou*qu;if(!Sc)break;var ql=(yo*fu-ts*ou)/Sc,Hl=(ts*bl-yo*qu)/Sc;ot-=ql,ht=n(-S,s(S,ht-Hl))}while((M(ql)>l||M(Hl)>l)&&--At>0);return M(M(ht)-S)ht){var Wr=F(Sr),ha=t(pr,nr),ga=ot*h(ha/ot),Pa=ha-ga,Ja=qe*r(Pa),di=(qe*p(Pa)-Pa*p(Ja))/(S-Ja),pi=br(Pa,di),Ci=(w-qe)/Tr(pi,Ja,w);nr=Wr;var $i=50,Bn;do nr-=Bn=(qe+Tr(pi,Ja,nr)*Ci-Wr)/(pi(nr)*Ci);while(M(Bn)>l&&--$i>0);pr=Pa*p(nr),nrht){var nr=F(er),pr=t(Pt,_t),Sr=ot*h(pr/ot),Wr=pr-Sr;_t=nr*r(Wr),Pt=nr*p(Wr);for(var ha=_t-S,ga=p(_t),Pa=Pt/ga,Ja=_tl||M(Pa)>l)&&--Ja>0);return[Wr,ha]},nr}var Lr=Fr(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Jr(){return x.geoProjection(Lr).scale(149.995)}var oa=Fr(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function ca(){return x.geoProjection(oa).scale(153.93)}var kt=Fr(5/6*w,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ir(){return x.geoProjection(kt).scale(130.945)}function mr(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(1-.162388*ht)*(.87-952426e-9*ot*ot),Je*(1+ht/12)]}mr.invert=function(qe,Je){var ot=qe,ht=Je,At=50,_t;do{var Pt=ht*ht;ht-=_t=(ht*(1+Pt/12)-Je)/(1+Pt/4)}while(M(_t)>l&&--At>0);At=50,qe/=1-.162388*Pt;do{var er=(er=ot*ot)*er;ot-=_t=(ot*(.87-952426e-9*er)-qe)/(.87-.00476213*er)}while(M(_t)>l&&--At>0);return[ot,ht]};function $r(){return x.geoProjection(mr).scale(131.747)}var ma=Fr(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ba(){return x.geoProjection(ma).scale(131.087)}function Ca(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=ht>0?-.5:.5,Pt=qe(ht+_t*w,At);return Pt[0]-=_t*Je,Pt}return qe.invert&&(ot.invert=function(ht,At){var _t=ht>0?-.5:.5,Pt=qe.invert(ht+_t*Je,At),er=Pt[0]-_t*w;return er<-w?er+=2*w:er>w&&(er-=2*w),Pt[0]=er,Pt}),ot}function da(qe,Je){var ot=v(qe),ht=v(Je),At=r(Je),_t=r(qe)*At,Pt=p(qe)*At,er=p(ht*Je);qe=M(t(Pt,er)),Je=L(_t),M(qe-S)>l&&(qe%=S);var nr=Sa(qe>w/4?S-qe:qe,Je);return qe>w/4&&(er=nr[0],nr[0]=-nr[1],nr[1]=-er),nr[0]*=ot,nr[1]*=-ht,nr}da.invert=function(qe,Je){M(qe)>1&&(qe=v(qe)*2-qe),M(Je)>1&&(Je=v(Je)*2-Je);var ot=v(qe),ht=v(Je),At=-ot*qe,_t=-ht*Je,Pt=_t/At<1,er=Ti(Pt?_t:At,Pt?At:_t),nr=er[0],pr=er[1],Sr=r(pr);return Pt&&(nr=-S-nr),[ot*(t(p(nr)*Sr,-p(pr))+w),ht*L(r(nr)*Sr)]};function Sa(qe,Je){if(Je===S)return[0,0];var ot=p(Je),ht=ot*ot,At=ht*ht,_t=1+At,Pt=1+3*At,er=1-At,nr=L(1/F(_t)),pr=er+ht*_t*nr,Sr=(1-ot)/pr,Wr=F(Sr),ha=Sr*_t,ga=F(ha),Pa=Wr*er,Ja,di;if(qe===0)return[0,-(Pa+ht*ga)];var pi=r(Je),Ci=1/pi,$i=2*ot*pi,Bn=(-3*ht+nr*Pt)*$i,Sn=(-pr*pi-(1-ot)*Bn)/(pr*pr),ho=.5*Sn/Wr,ts=er*ho-2*ht*Wr*$i,yo=ht*_t*Sn+Sr*Pt*$i,Vo=-Ci*$i,ls=-Ci*yo,rl=-2*Ci*ts,Ys=4*qe/w,Zo;if(qe>.222*w||Je.175*w){if(Ja=(Pa+ht*F(ha*(1+At)-Pa*Pa))/(1+At),qe>w/4)return[Ja,Ja];var Go=Ja,Rl=.5*Ja;Ja=.5*(Rl+Go),di=50;do{var Xl=F(ha-Ja*Ja),qu=Ja*(rl+Vo*Xl)+ls*L(Ja/ga)-Ys;if(!qu)break;qu<0?Rl=Ja:Go=Ja,Ja=.5*(Rl+Go)}while(M(Go-Rl)>l&&--di>0)}else{Ja=l,di=25;do{var fu=Ja*Ja,bl=F(ha-fu),ou=rl+Vo*bl,Sc=Ja*ou+ls*L(Ja/ga)-Ys,ql=ou+(ls-Vo*fu)/bl;Ja-=Zo=bl?Sc/ql:0}while(M(Zo)>l&&--di>0)}return[Ja,-Pa-ht*F(ha-Ja*Ja)]}function Ti(qe,Je){for(var ot=0,ht=1,At=.5,_t=50;;){var Pt=At*At,er=F(At),nr=L(1/F(1+Pt)),pr=1-Pt+At*(1+Pt)*nr,Sr=(1-er)/pr,Wr=F(Sr),ha=Sr*(1+Pt),ga=Wr*(1-Pt),Pa=ha-qe*qe,Ja=F(Pa),di=Je+ga+At*Ja;if(M(ht-ot)<_||--_t===0||di===0)break;di>0?ot=At:ht=At,At=.5*(ot+ht)}if(!_t)return null;var pi=L(er),Ci=r(pi),$i=1/Ci,Bn=2*er*Ci,Sn=(-3*At+nr*(1+3*Pt))*Bn,ho=(-pr*Ci-(1-er)*Sn)/(pr*pr),ts=.5*ho/Wr,yo=(1-Pt)*ts-2*At*Wr*Bn,Vo=-2*$i*yo,ls=-$i*Bn,rl=-$i*(At*(1+Pt)*ho+Sr*(1+3*Pt)*Bn);return[w/4*(qe*(Vo+ls*Ja)+rl*L(qe/F(ha))),pi]}function ai(){return x.geoProjection(Ca(da)).scale(239.75)}function an(qe,Je,ot){var ht,At,_t;return qe?(ht=sn(qe,ot),Je?(At=sn(Je,1-ot),_t=At[1]*At[1]+ot*ht[0]*ht[0]*At[0]*At[0],[[ht[0]*At[2]/_t,ht[1]*ht[2]*At[0]*At[1]/_t],[ht[1]*At[1]/_t,-ht[0]*ht[2]*At[0]*At[2]/_t],[ht[2]*At[1]*At[2]/_t,-ot*ht[0]*ht[1]*At[0]/_t]]):[[ht[0],0],[ht[1],0],[ht[2],0]]):(At=sn(Je,1-ot),[[0,At[0]/At[1]],[1/At[1],0],[At[2]/At[1],0]])}function sn(qe,Je){var ot,ht,At,_t,Pt;if(Je=1-l)return ot=(1-Je)/4,ht=I(qe),_t=B(qe),At=1/ht,Pt=ht*O(qe),[_t+ot*(Pt-qe)/(ht*ht),At-ot*_t*At*(Pt-qe),At+ot*_t*At*(Pt+qe),2*e(o(qe))-S+ot*(Pt-qe)/ht];var er=[1,0,0,0,0,0,0,0,0],nr=[F(Je),0,0,0,0,0,0,0,0],pr=0;for(ht=F(1-Je),Pt=1;M(nr[pr]/er[pr])>l&&pr<8;)ot=er[pr++],nr[pr]=(ot-ht)/2,er[pr]=(ot+ht)/2,ht=F(ot*ht),Pt*=2;At=Pt*er[pr]*qe;do _t=nr[pr]*p(ht=At)/er[pr],At=(L(_t)+At)/2;while(--pr);return[p(At),_t=r(At),_t/r(At-ht),At]}function Mn(qe,Je,ot){var ht=M(qe),At=M(Je),_t=O(At);if(ht){var Pt=1/p(ht),er=1/(T(ht)*T(ht)),nr=-(er+ot*(_t*_t*Pt*Pt)-1+ot),pr=(ot-1)*er,Sr=(-nr+F(nr*nr-4*pr))/2;return[On(e(1/F(Sr)),ot)*v(qe),On(e(F((Sr/er-1)/ot)),1-ot)*v(Je)]}return[0,On(e(_t),1-ot)*v(Je)]}function On(qe,Je){if(!Je)return qe;if(Je===1)return i(T(qe/2+E));for(var ot=1,ht=F(1-Je),At=F(Je),_t=0;M(At)>l;_t++){if(qe%w){var Pt=e(ht*T(qe)/ot);Pt<0&&(Pt+=w),qe+=Pt+~~(qe/w)*w}else qe+=qe;At=(ot+ht)/2,ht=F(ot*ht),At=((ot=At)-ht)/2}return qe/(c(2,_t)*ot)}function $n(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=i(T(w/4+M(Je)/2)),er=o(_t*Pt)/F(ot),nr=Cn(er*r(_t*qe),er*p(_t*qe)),pr=Mn(nr[0],nr[1],ht*ht);return[-pr[1],(Je>=0?1:-1)*(.5*At-pr[0])]}function Cn(qe,Je){var ot=qe*qe,ht=Je+1,At=1-ot-Je*Je;return[.5*((qe>=0?S:-S)-t(At,2*qe)),-.25*i(At*At+4*ot)+.5*i(ht*ht+ot)]}function Lo(qe,Je){var ot=Je[0]*Je[0]+Je[1]*Je[1];return[(qe[0]*Je[0]+qe[1]*Je[1])/ot,(qe[1]*Je[0]-qe[0]*Je[1])/ot]}$n.invert=function(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=an(.5*At-Je,-qe,ht*ht),er=Lo(Pt[0],Pt[1]),nr=t(er[1],er[0])/_t;return[nr,2*e(o(.5/_t*i(ot*er[0]*er[0]+ot*er[1]*er[1])))-S]};function Xi(){return x.geoProjection(Ca($n)).scale(151.496)}function Jo(qe){var Je=p(qe),ot=r(qe),ht=zo(qe);ht.invert=zo(-qe);function At(_t,Pt){var er=ht(_t,Pt);_t=er[0],Pt=er[1];var nr=p(Pt),pr=r(Pt),Sr=r(_t),Wr=z(Je*nr+ot*pr*Sr),ha=p(Wr),ga=M(ha)>l?Wr/ha:1;return[ga*ot*p(_t),(M(_t)>S?ga:-ga)*(Je*pr-ot*nr*Sr)]}return At.invert=function(_t,Pt){var er=F(_t*_t+Pt*Pt),nr=-p(er),pr=r(er),Sr=er*pr,Wr=-Pt*nr,ha=er*Je,ga=F(Sr*Sr+Wr*Wr-ha*ha),Pa=t(Sr*ha+Wr*ga,Wr*ha-Sr*ga),Ja=(er>S?-1:1)*t(_t*nr,er*r(Pa)*pr+Pt*p(Pa)*nr);return ht.invert(Ja,Pa)},At}function zo(qe){var Je=p(qe),ot=r(qe);return function(ht,At){var _t=r(At),Pt=r(ht)*_t,er=p(ht)*_t,nr=p(At);return[t(er,Pt*ot-nr*Je),L(nr*ot+Pt*Je)]}}function as(){var qe=0,Je=x.geoProjectionMutator(Jo),ot=Je(qe),ht=ot.rotate,At=ot.stream,_t=x.geoCircle();return ot.parallel=function(Pt){if(!arguments.length)return qe*y;var er=ot.rotate();return Je(qe=Pt*f).rotate(er)},ot.rotate=function(Pt){return arguments.length?(ht.call(ot,[Pt[0],Pt[1]-qe*y]),_t.center([-Pt[0],-Pt[1]]),ot):(Pt=ht.call(ot),Pt[1]+=qe*y,Pt)},ot.stream=function(Pt){return Pt=At(Pt),Pt.sphere=function(){Pt.polygonStart();var er=.01,nr=_t.radius(90-er)().coordinates[0],pr=nr.length-1,Sr=-1,Wr;for(Pt.lineStart();++Sr=0;)Pt.point((Wr=nr[Sr])[0],Wr[1]);Pt.lineEnd(),Pt.polygonEnd()},Pt},ot.scale(79.4187).parallel(45).clipAngle(180-.001)}var Pn=3,go=L(1-1/Pn)*y,In=It(0);function Do(qe){var Je=go*f,ot=Ve(w,Je)[0]-Ve(-w,Je)[0],ht=In(0,Je)[1],At=Ve(0,Je)[1],_t=d-At,Pt=u/qe,er=4/u,nr=ht+_t*_t*4/u;function pr(Sr,Wr){var ha,ga=M(Wr);if(ga>Je){var Pa=s(qe-1,n(0,a((Sr+w)/Pt)));Sr+=w*(qe-1)/qe-Pa*Pt,ha=Ve(Sr,ga),ha[0]=ha[0]*u/ot-u*(qe-1)/(2*qe)+Pa*u/qe,ha[1]=ht+(ha[1]-At)*4*_t/u,Wr<0&&(ha[1]=-ha[1])}else ha=In(Sr,Wr);return ha[0]*=er,ha[1]/=nr,ha}return pr.invert=function(Sr,Wr){Sr/=er,Wr*=nr;var ha=M(Wr);if(ha>ht){var ga=s(qe-1,n(0,a((Sr+w)/Pt)));Sr=(Sr+w*(qe-1)/qe-ga*Pt)*ot/u;var Pa=Ve.invert(Sr,.25*(ha-ht)*u/_t+At);return Pa[0]-=w*(qe-1)/qe-ga*Pt,Wr<0&&(Pa[1]=-Pa[1]),Pa}return In.invert(Sr,Wr)},pr}function Ho(qe,Je){return[qe,Je&1?90-l:go]}function Qo(qe,Je){return[qe,Je&1?-90+l:-go]}function Xn(qe){return[qe[0]*(1-l),qe[1]]}function po(qe){var Je=[].concat(A.range(-180,180+qe/2,qe).map(Ho),A.range(180,-180-qe/2,-qe).map(Qo));return{type:"Polygon",coordinates:[qe===180?Je.map(Xn):Je]}}function ys(){var qe=4,Je=x.geoProjectionMutator(Do),ot=Je(qe),ht=ot.stream;return ot.lobes=function(At){return arguments.length?Je(qe=+At):qe},ot.stream=function(At){var _t=ot.rotate(),Pt=ht(At),er=(ot.rotate([0,0]),ht(At));return ot.rotate(_t),Pt.sphere=function(){x.geoStream(po(180/qe),er)},Pt},ot.scale(239.75)}function Is(qe){var Je=1+qe,ot=p(1/Je),ht=L(ot),At=2*F(w/(_t=w+4*ht*Je)),_t,Pt=.5*At*(Je+F(qe*(2+qe))),er=qe*qe,nr=Je*Je;function pr(Sr,Wr){var ha=1-p(Wr),ga,Pa;if(ha&&ha<2){var Ja=S-Wr,di=25,pi;do{var Ci=p(Ja),$i=r(Ja),Bn=ht+t(Ci,Je-$i),Sn=1+nr-2*Je*$i;Ja-=pi=(Ja-er*ht-Je*Ci+Sn*Bn-.5*ha*_t)/(2*Je*Ci*Bn)}while(M(pi)>_&&--di>0);ga=At*F(Sn),Pa=Sr*Bn/w}else ga=At*(qe+ha),Pa=Sr*ht/w;return[ga*p(Pa),Pt-ga*r(Pa)]}return pr.invert=function(Sr,Wr){var ha=Sr*Sr+(Wr-=Pt)*Wr,ga=(1+nr-ha/(At*At))/(2*Je),Pa=z(ga),Ja=p(Pa),di=ht+t(Ja,Je-ga);return[L(Sr/F(ha))*w/di,L(1-2*(Pa-er*ht-Je*Ja+(1+nr-2*Je*ga)*di)/_t)]},pr}function Fs(){var qe=1,Je=x.geoProjectionMutator(Is),ot=Je(qe);return ot.ratio=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(167.774).center([0,18.67])}var $o=.7109889596207567,fi=.0528035274542;function mn(qe,Je){return Je>-$o?(qe=lt(qe,Je),qe[1]+=fi,qe):Qe(qe,Je)}mn.invert=function(qe,Je){return Je>-$o?lt.invert(qe,Je-fi):Qe.invert(qe,Je)};function ol(){return x.geoProjection(mn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Os(qe,Je){return M(Je)>$o?(qe=lt(qe,Je),qe[1]-=Je>0?fi:-fi,qe):Qe(qe,Je)}Os.invert=function(qe,Je){return M(Je)>$o?lt.invert(qe,Je+(Je>0?fi:-fi)):Qe.invert(qe,Je)};function so(){return x.geoProjection(Os).scale(152.63)}function Ns(qe,Je,ot,ht){var At=F(4*w/(2*ot+(1+qe-Je/2)*p(2*ot)+(qe+Je)/2*p(4*ot)+Je/2*p(6*ot))),_t=F(ht*p(ot)*F((1+qe*r(2*ot)+Je*r(4*ot))/(1+qe+Je))),Pt=ot*nr(1);function er(Wr){return F(1+qe*r(2*Wr)+Je*r(4*Wr))}function nr(Wr){var ha=Wr*ot;return(2*ha+(1+qe-Je/2)*p(2*ha)+(qe+Je)/2*p(4*ha)+Je/2*p(6*ha))/ot}function pr(Wr){return er(Wr)*p(Wr)}var Sr=function(Wr,ha){var ga=ot*Be(nr,Pt*p(ha)/ot,ha/w);isNaN(ga)&&(ga=ot*v(ha));var Pa=At*er(ga);return[Pa*_t*Wr/w*r(ga),Pa/_t*p(ga)]};return Sr.invert=function(Wr,ha){var ga=Be(pr,ha*_t/At);return[Wr*w/(r(ga)*At*_t*er(ga)),L(ot*nr(ga/ot)/Pt)]},ot===0&&(At=F(ht/w),Sr=function(Wr,ha){return[Wr*At,p(ha)/At]},Sr.invert=function(Wr,ha){return[Wr/At,L(ha*At)]}),Sr}function fs(){var qe=1,Je=0,ot=45*f,ht=2,At=x.geoProjectionMutator(Ns),_t=At(qe,Je,ot,ht);return _t.a=function(Pt){return arguments.length?At(qe=+Pt,Je,ot,ht):qe},_t.b=function(Pt){return arguments.length?At(qe,Je=+Pt,ot,ht):Je},_t.psiMax=function(Pt){return arguments.length?At(qe,Je,ot=+Pt*f,ht):ot*y},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(180.739)}function al(qe,Je,ot,ht,At,_t,Pt,er,nr,pr,Sr){if(Sr.nanEncountered)return NaN;var Wr,ha,ga,Pa,Ja,di,pi,Ci,$i,Bn;if(Wr=ot-Je,ha=qe(Je+Wr*.25),ga=qe(ot-Wr*.25),isNaN(ha)){Sr.nanEncountered=!0;return}if(isNaN(ga)){Sr.nanEncountered=!0;return}return Pa=Wr*(ht+4*ha+At)/12,Ja=Wr*(At+4*ga+_t)/12,di=Pa+Ja,Bn=(di-Pt)/15,pr>nr?(Sr.maxDepthCount++,di+Bn):Math.abs(Bn)>1;do nr[di]>ga?Ja=di:Pa=di,di=Pa+Ja>>1;while(di>Pa);var pi=nr[di+1]-nr[di];return pi&&(pi=(ga-nr[di+1])/pi),(di+1+pi)/Pt}var Wr=2*Sr(1)/w*_t/ot,ha=function(ga,Pa){var Ja=Sr(M(p(Pa))),di=ht(Ja)*ga;return Ja/=Wr,[di,Pa>=0?Ja:-Ja]};return ha.invert=function(ga,Pa){var Ja;return Pa*=Wr,M(Pa)<1&&(Ja=v(Pa)*L(At(M(Pa))*_t)),[ga/ht(M(Pa)),Ja]},ha}function To(){var qe=0,Je=2.5,ot=1.183136,ht=x.geoProjectionMutator(ji),At=ht(qe,Je,ot);return At.alpha=function(_t){return arguments.length?ht(qe=+_t,Je,ot):qe},At.k=function(_t){return arguments.length?ht(qe,Je=+_t,ot):Je},At.gamma=function(_t){return arguments.length?ht(qe,Je,ot=+_t):ot},At.scale(152.63)}function Yn(qe,Je){return M(qe[0]-Je[0])=0;--nr)ot=qe[1][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[Pt-l,er-l],[Pt-l,_t+l],[ht+l,_t+l],[ht+l,At-l]],30));return{type:"Polygon",coordinates:[A.merge(Je)]}}function Nn(qe,Je,ot){var ht,At;function _t(nr,pr){for(var Sr=pr<0?-1:1,Wr=Je[+(pr<0)],ha=0,ga=Wr.length-1;haWr[ha][2][0];++ha);var Pa=qe(nr-Wr[ha][1][0],pr);return Pa[0]+=qe(Wr[ha][1][0],Sr*pr>Sr*Wr[ha][0][1]?Wr[ha][0][1]:pr)[0],Pa}ot?_t.invert=ot(_t):qe.invert&&(_t.invert=function(nr,pr){for(var Sr=At[+(pr<0)],Wr=Je[+(pr<0)],ha=0,ga=Sr.length;haPa&&(Ja=ga,ga=Pa,Pa=Ja),[[Wr,ga],[ha,Pa]]})}),Pt):Je.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*y,Sr[0][1]*y],[Sr[1][0]*y,Sr[1][1]*y],[Sr[2][0]*y,Sr[2][1]*y]]})})},Je!=null&&Pt.lobes(Je),Pt}var Wl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zu(){return Nn(ze,Wl).scale(160.857)}var ml=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Bu(){return Nn(Os,ml).scale(152.63)}var El=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function qs(){return Nn(lt,El).scale(169.529)}var Jl=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Nu(){return Nn(lt,Jl).scale(169.529).rotate([20,0])}var Ic=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Xu(){return Nn(mn,Ic,Ie).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Th=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function bf(){return Nn(Qe,Th).scale(152.63).rotate([-20,0])}function Rs(qe,Je){return[3/u*qe*F(w*w/3-Je*Je),Je]}Rs.invert=function(qe,Je){return[u/3*qe/F(w*w/3-Je*Je),Je]};function Yc(){return x.geoProjection(Rs).scale(158.837)}function If(qe){function Je(ot,ht){if(M(M(ht)-S)2)return null;ot/=2,ht/=2;var _t=ot*ot,Pt=ht*ht,er=2*ht/(1+_t+Pt);return er=c((1+er)/(1-er),1/qe),[t(2*ot,1-_t-Pt)/qe,L((er-1)/(er+1))]},Je}function Zl(){var qe=.5,Je=x.geoProjectionMutator(If),ot=Je(qe);return ot.spacing=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(124.75)}var yl=w/b;function oc(qe,Je){return[qe*(1+F(r(Je)))/2,Je/(r(Je/2)*r(qe/6))]}oc.invert=function(qe,Je){var ot=M(qe),ht=M(Je),At=l,_t=S;htl||M(di)>l)&&--At>0);return At&&[ot,ht]};function _l(){return x.geoProjection(Zs).scale(139.98)}function Bs(qe,Je){return[p(qe)/r(Je),T(Je)*r(qe)]}Bs.invert=function(qe,Je){var ot=qe*qe,ht=Je*Je,At=ht+1,_t=ot+At,Pt=qe?m*F((_t-F(_t*_t-4*ot))/ot):1/F(At);return[L(qe*Pt),v(Je)*z(Pt)]};function $s(){return x.geoProjection(Bs).scale(144.049).clipAngle(90-.001)}function sc(qe){var Je=r(qe),ot=T(E+qe/2);function ht(At,_t){var Pt=_t-qe,er=M(Pt)=0;)Sr=qe[pr],Wr=Sr[0]+er*(ga=Wr)-nr*ha,ha=Sr[1]+er*ha+nr*ga;return Wr=er*(ga=Wr)-nr*ha,ha=er*ha+nr*ga,[Wr,ha]}return ot.invert=function(ht,At){var _t=20,Pt=ht,er=At;do{for(var nr=Je,pr=qe[nr],Sr=pr[0],Wr=pr[1],ha=0,ga=0,Pa;--nr>=0;)pr=qe[nr],ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=pr[0]+Pt*(Pa=Sr)-er*Wr,Wr=pr[1]+Pt*Wr+er*Pa;ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=Pt*(Pa=Sr)-er*Wr-ht,Wr=Pt*Wr+er*Pa-At;var Ja=ha*ha+ga*ga,di,pi;Pt-=di=(Sr*ha+Wr*ga)/Ja,er-=pi=(Wr*ha-Sr*ga)/Ja}while(M(di)+M(pi)>l*l&&--_t>0);if(_t){var Ci=F(Pt*Pt+er*er),$i=2*e(Ci*.5),Bn=p($i);return[t(Pt*Bn,Ci*r($i)),Ci?L(er*Bn/Ci):0]}},ot}var es=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Wh=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ss=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],So=[[.9245,0],[0,0],[.01943,0]],hf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Ku(){return Fl(es,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function cu(){return Fl(Wh,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Zf(){return Fl(Ss,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Rc(){return Fl(So,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function pf(){return Fl(hf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Fl(qe,Je){var ot=x.geoProjection(fp(qe)).rotate(Je).clipAngle(90),ht=x.geoRotation(Je),At=ot.center;return delete ot.rotate,ot.center=function(_t){return arguments.length?At(ht(_t)):ht.invert(At())},ot}var lh=F(6),Xf=F(7);function Rf(qe,Je){var ot=L(7*p(Je)/(3*lh));return[lh*qe*(2*r(2*ot/3)-1)/Xf,9*p(ot/3)/Xf]}Rf.invert=function(qe,Je){var ot=3*L(Je*Xf/9);return[qe*Xf/(lh*(2*r(2*ot/3)-1)),L(p(ot)*3*lh/7)]};function Kc(){return x.geoProjection(Rf).scale(164.859)}function Yf(qe,Je){for(var ot=(1+m)*p(Je),ht=Je,At=0,_t;At<25&&(ht-=_t=(p(ht/2)+p(ht)-ot)/(.5*r(ht/2)+r(ht)),!(M(_t)_&&--ht>0);return _t=ot*ot,Pt=_t*_t,er=_t*Pt,[qe/(.84719-.13063*_t+er*er*(-.04515+.05494*_t-.02326*Pt+.00331*er)),ot]};function Jc(){return x.geoProjection(Dc).scale(175.295)}function Eu(qe,Je){return[qe*(1+r(Je))/2,2*(Je-T(Je/2))]}Eu.invert=function(qe,Je){for(var ot=Je/2,ht=0,At=1/0;ht<10&&M(At)>l;++ht){var _t=r(Je/2);Je-=At=(Je-T(Je/2)-ot)/(1-.5/(_t*_t))}return[2*qe/(1+r(Je)),Je]};function wf(){return x.geoProjection(Eu).scale(152.63)}var zc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Us(){return Nn(fe(1/0),zc).rotate([20,0]).scale(152.63)}function Kf(qe,Je){var ot=p(Je),ht=r(Je),At=v(qe);if(qe===0||M(Je)===S)return[0,Je];if(Je===0)return[qe,0];if(M(qe)===S)return[qe*ht,S*ot];var _t=w/(2*qe)-2*qe/w,Pt=2*Je/w,er=(1-Pt*Pt)/(ot-Pt),nr=_t*_t,pr=er*er,Sr=1+nr/pr,Wr=1+pr/nr,ha=(_t*ot/er-_t/2)/Sr,ga=(pr*ot/nr+er/2)/Wr,Pa=ha*ha+ht*ht/Sr,Ja=ga*ga-(pr*ot*ot/nr+er*ot-1)/Wr;return[S*(ha+F(Pa)*At),S*(ga+F(Ja<0?0:Ja)*v(-Je*_t)*At)]}Kf.invert=function(qe,Je){qe/=S,Je/=S;var ot=qe*qe,ht=Je*Je,At=ot+ht,_t=w*w;return[qe?(At-1+F((1-At)*(1-At)+4*ot))/(2*qe)*S:0,Be(function(Pt){return At*(w*p(Pt)-2*Pt)*w+4*Pt*Pt*(Je-p(Pt))+2*w*Pt-_t*Je},0)]};function Zh(){return x.geoProjection(Kf).scale(127.267)}var ch=1.0148,df=.23185,Ah=-.14499,ku=.02406,fh=ch,ru=5*df,Cu=7*Ah,xc=9*ku,kl=1.790857183;function Fc(qe,Je){var ot=Je*Je;return[qe,Je*(ch+ot*ot*(df+ot*(Ah+ku*ot)))]}Fc.invert=function(qe,Je){Je>kl?Je=kl:Je<-kl&&(Je=-kl);var ot=Je,ht;do{var At=ot*ot;ot-=ht=(ot*(ch+At*At*(df+At*(Ah+ku*At)))-Je)/(fh+At*At*(ru+At*(Cu+xc*At)))}while(M(ht)>l);return[qe,ot]};function $u(){return x.geoProjection(Fc).scale(139.319)}function vu(qe,Je){if(M(Je)l&&--At>0);return Pt=T(ht),[(M(Je)=0;)if(ht=Je[er],ot[0]===ht[0]&&ot[1]===ht[1]){if(_t)return[_t,ot];_t=ot}}}function au(qe){for(var Je=qe.length,ot=[],ht=qe[Je-1],At=0;At0?[-ht[0],0]:[180-ht[0],180])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:otht^ga>ht&&ot<(ha-pr)*(ht-Sr)/(ga-Sr)+pr&&(At=!At)}return At}function Vl(qe,Je){var ot=Je.stream,ht;if(!ot)throw new Error("invalid projection");switch(qe&&qe.type){case"Feature":ht=Vu;break;case"FeatureCollection":ht=Qf;break;default:ht=cc;break}return ht(qe,ot)}function Qf(qe,Je){return{type:"FeatureCollection",features:qe.features.map(function(ot){return Vu(ot,Je)})}}function Vu(qe,Je){return{type:"Feature",id:qe.id,properties:qe.properties,geometry:cc(qe.geometry,Je)}}function Tc(qe,Je){return{type:"GeometryCollection",geometries:qe.geometries.map(function(ot){return cc(ot,Je)})}}function cc(qe,Je){if(!qe)return null;if(qe.type==="GeometryCollection")return Tc(qe,Je);var ot;switch(qe.type){case"Point":ot=fc;break;case"MultiPoint":ot=fc;break;case"LineString":ot=Oc;break;case"MultiLineString":ot=Oc;break;case"Polygon":ot=Qu;break;case"MultiPolygon":ot=Qu;break;case"Sphere":ot=Qu;break;default:return null}return x.geoStream(qe,Je(ot)),ot.result()}var Cl=[],iu=[],fc={point:function(qe,Je){Cl.push([qe,Je])},result:function(){var qe=Cl.length?Cl.length<2?{type:"Point",coordinates:Cl[0]}:{type:"MultiPoint",coordinates:Cl}:null;return Cl=[],qe}},Oc={lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){Cl.length&&(iu.push(Cl),Cl=[])},result:function(){var qe=iu.length?iu.length<2?{type:"LineString",coordinates:iu[0]}:{type:"MultiLineString",coordinates:iu}:null;return iu=[],qe}},Qu={polygonStart:uc,lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){var qe=Cl.length;if(qe){do Cl.push(Cl[0].slice());while(++qe<4);iu.push(Cl),Cl=[]}},polygonEnd:uc,result:function(){if(!iu.length)return null;var qe=[],Je=[];return iu.forEach(function(ot){Qc(ot)?qe.push([ot]):Je.push(ot)}),Je.forEach(function(ot){var ht=ot[0];qe.some(function(At){if($f(At[0],ht))return At.push(ot),!0})||qe.push([ot])}),iu=[],qe.length?qe.length>1?{type:"MultiPolygon",coordinates:qe}:{type:"Polygon",coordinates:qe[0]}:null}};function ef(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=M(ht)0?ht-w:ht+w,At),er=(Pt[0]-Pt[1])*m,nr=(Pt[0]+Pt[1])*m;if(_t)return[er,nr];var pr=Je*m,Sr=er>0^nr>0?-1:1;return[Sr*er-v(nr)*pr,Sr*nr-v(er)*pr]}return qe.invert&&(ot.invert=function(ht,At){var _t=(ht+At)*m,Pt=(At-ht)*m,er=M(_t)<.5*Je&&M(Pt)<.5*Je;if(!er){var nr=Je*m,pr=_t>0^Pt>0?-1:1,Sr=-pr*ht+(Pt>0?1:-1)*nr,Wr=-pr*At+(_t>0?1:-1)*nr;_t=(-Sr-Wr)*m,Pt=(Sr-Wr)*m}var ha=qe.invert(_t,Pt);return er||(ha[0]+=_t>0?w:-w),ha}),x.geoProjection(ot).rotate([-90,-90,45]).clipAngle(180-.001)}function Zt(){return ef(da).scale(176.423)}function fr(){return ef($n).scale(111.48)}function Yr(qe,Je){if(!(0<=(Je=+Je)&&Je<=20))throw new Error("invalid digits");function ot(pr){var Sr=pr.length,Wr=2,ha=new Array(Sr);for(ha[0]=+pr[0].toFixed(Je),ha[1]=+pr[1].toFixed(Je);Wr2||ga[0]!=Sr[0]||ga[1]!=Sr[1])&&(Wr.push(ga),Sr=ga)}return Wr.length===1&&pr.length>1&&Wr.push(ot(pr[pr.length-1])),Wr}function _t(pr){return pr.map(At)}function Pt(pr){if(pr==null)return pr;var Sr;switch(pr.type){case"GeometryCollection":Sr={type:"GeometryCollection",geometries:pr.geometries.map(Pt)};break;case"Point":Sr={type:"Point",coordinates:ot(pr.coordinates)};break;case"MultiPoint":Sr={type:pr.type,coordinates:ht(pr.coordinates)};break;case"LineString":Sr={type:pr.type,coordinates:At(pr.coordinates)};break;case"MultiLineString":case"Polygon":Sr={type:pr.type,coordinates:_t(pr.coordinates)};break;case"MultiPolygon":Sr={type:"MultiPolygon",coordinates:pr.coordinates.map(_t)};break;default:return pr}return pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}function er(pr){var Sr={type:"Feature",properties:pr.properties,geometry:Pt(pr.geometry)};return pr.id!=null&&(Sr.id=pr.id),pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}if(qe!=null)switch(qe.type){case"Feature":return er(qe);case"FeatureCollection":{var nr={type:"FeatureCollection",features:qe.features.map(er)};return qe.bbox!=null&&(nr.bbox=qe.bbox),nr}default:return Pt(qe)}return qe}function qr(qe){var Je=p(qe);function ot(ht,At){var _t=Je?T(ht*Je/2)/Je:ht/2;if(!At)return[2*_t,-qe];var Pt=2*e(_t*p(At)),er=1/T(At);return[p(Pt)*er,At+(1-r(Pt))*er-qe]}return ot.invert=function(ht,At){if(M(At+=qe)l&&--er>0);var ha=ht*(pr=T(Pt)),ga=T(M(At)0?S:-S)*(nr+At*(Sr-Pt)/2+At*At*(Sr-2*nr+Pt)/2)]}oi.invert=function(qe,Je){var ot=Je/S,ht=ot*90,At=s(18,M(ht/5)),_t=n(0,a(At));do{var Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],pr=nr-Pt,Sr=nr-2*er+Pt,Wr=2*(M(ot)-er)/pr,ha=Sr/pr,ga=Wr*(1-ha*Wr*(1-2*ha*Wr));if(ga>=0||_t===1){ht=(Je>=0?5:-5)*(ga+At);var Pa=50,Ja;do At=s(18,M(ht)/5),_t=a(At),ga=At-_t,Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],ht-=(Ja=(Je>=0?S:-S)*(er+ga*(nr-Pt)/2+ga*ga*(nr-2*er+Pt)/2)-Je)*y;while(M(Ja)>_&&--Pa>0);break}}while(--_t>=0);var di=Ka[_t][0],pi=Ka[_t+1][0],Ci=Ka[s(19,_t+2)][0];return[qe/(pi+ga*(Ci-di)/2+ga*ga*(Ci-2*pi+di)/2),ht*f]};function yi(){return x.geoProjection(oi).scale(152.63)}function ki(qe){function Je(ot,ht){var At=r(ht),_t=(qe-1)/(qe-At*r(ot));return[_t*At*p(ot),_t*p(ht)]}return Je.invert=function(ot,ht){var At=ot*ot+ht*ht,_t=F(At),Pt=(qe-F(1-At*(qe+1)/(qe-1)))/((qe-1)/_t+_t/(qe-1));return[t(ot*Pt,_t*F(1-Pt*Pt)),_t?L(ht*Pt/_t):0]},Je}function Bi(qe,Je){var ot=ki(qe);if(!Je)return ot;var ht=r(Je),At=p(Je);function _t(Pt,er){var nr=ot(Pt,er),pr=nr[1],Sr=pr*At/(qe-1)+ht;return[nr[0]*ht/Sr,pr/Sr]}return _t.invert=function(Pt,er){var nr=(qe-1)/(qe-1-er*At);return ot.invert(nr*Pt,nr*er*ht)},_t}function li(){var qe=2,Je=0,ot=x.geoProjectionMutator(Bi),ht=ot(qe,Je);return ht.distance=function(At){return arguments.length?ot(qe=+At,Je):qe},ht.tilt=function(At){return arguments.length?ot(qe,Je=At*f):Je*y},ht.scale(432.147).clipAngle(z(1/qe)*y-1e-6)}var _i=1e-4,vi=1e4,ti=-180,rn=ti+_i,Kn=180,Wn=Kn-_i,Jn=-90,no=Jn+_i,en=90,Ri=en-_i;function co(qe){return qe.length>0}function Wo(qe){return Math.floor(qe*vi)/vi}function bs(qe){return qe===Jn||qe===en?[0,qe]:[ti,Wo(qe)]}function Xs(qe){var Je=qe[0],ot=qe[1],ht=!1;return Je<=rn?(Je=ti,ht=!0):Je>=Wn&&(Je=Kn,ht=!0),ot<=no?(ot=Jn,ht=!0):ot>=Ri&&(ot=en,ht=!0),ht?[Je,ot]:qe}function Ms(qe){return qe.map(Xs)}function Hs(qe,Je,ot){for(var ht=0,At=qe.length;ht=Wn||Sr<=no||Sr>=Ri){_t[Pt]=Xs(nr);for(var Wr=Pt+1;Wrrn&&gano&&Pa=er)break;ot.push({index:-1,polygon:Je,ring:_t=_t.slice(Wr-1)}),_t[0]=bs(_t[0][1]),Pt=-1,er=_t.length}}}}function vs(qe){var Je,ot=qe.length,ht={},At={},_t,Pt,er,nr,pr;for(Je=0;Je0?w-er:er)*y],pr=x.geoProjection(qe(Pt)).rotate(nr),Sr=x.geoRotation(nr),Wr=pr.center;return delete pr.rotate,pr.center=function(ha){return arguments.length?Wr(Sr(ha)):Sr.invert(Wr())},pr.clipAngle(90)}function Ts(qe){var Je=r(qe);function ot(ht,At){var _t=x.geoGnomonicRaw(ht,At);return _t[0]*=Je,_t}return ot.invert=function(ht,At){return x.geoGnomonicRaw.invert(ht/Je,At)},ot}function nu(){return Pu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Pu(qe,Je){return js(Ts,qe,Je)}function ec(qe){if(!(qe*=2))return x.geoAzimuthalEquidistantRaw;var Je=-qe/2,ot=-Je,ht=qe*qe,At=T(ot),_t=.5/p(ot);function Pt(er,nr){var pr=z(r(nr)*r(er-Je)),Sr=z(r(nr)*r(er-ot)),Wr=nr<0?-1:1;return pr*=pr,Sr*=Sr,[(pr-Sr)/(2*qe),Wr*F(4*ht*Sr-(ht-pr+Sr)*(ht-pr+Sr))/(2*qe)]}return Pt.invert=function(er,nr){var pr=nr*nr,Sr=r(F(pr+(ha=er+Je)*ha)),Wr=r(F(pr+(ha=er+ot)*ha)),ha,ga;return[t(ga=Sr-Wr,ha=(Sr+Wr)*At),(nr<0?-1:1)*z(F(ha*ha+ga*ga)*_t)]},Pt}function tf(){return yu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function yu(qe,Je){return js(ec,qe,Je)}function Bc(qe,Je){if(M(Je)l&&--er>0);return[v(qe)*(F(At*At+4)+At)*w/4,S*Pt]};function pc(){return x.geoProjection(hc).scale(127.16)}function Oe(qe,Je,ot,ht,At){function _t(Pt,er){var nr=ot*p(ht*er),pr=F(1-nr*nr),Sr=F(2/(1+pr*r(Pt*=At)));return[qe*pr*Sr*p(Pt),Je*nr*Sr]}return _t.invert=function(Pt,er){var nr=Pt/qe,pr=er/Je,Sr=F(nr*nr+pr*pr),Wr=2*L(Sr/2);return[t(Pt*T(Wr),qe*Sr)/At,Sr&&L(er*p(Wr)/(Je*ot*Sr))/ht]},_t}function R(qe,Je,ot,ht){var At=w/3;qe=n(qe,l),Je=n(Je,l),qe=s(qe,S),Je=s(Je,w-l),ot=n(ot,0),ot=s(ot,100-l),ht=n(ht,l);var _t=ot/100+1,Pt=ht/100,er=z(_t*r(At))/At,nr=p(qe)/p(er*S),pr=Je/w,Sr=F(Pt*p(qe/2)/p(Je/2)),Wr=Sr/F(pr*nr*er),ha=1/(Sr*F(pr*nr*er));return Oe(Wr,ha,nr,er,pr)}function ae(){var qe=65*f,Je=60*f,ot=20,ht=200,At=x.geoProjectionMutator(R),_t=At(qe,Je,ot,ht);return _t.poleline=function(Pt){return arguments.length?At(qe=+Pt*f,Je,ot,ht):qe*y},_t.parallels=function(Pt){return arguments.length?At(qe,Je=+Pt*f,ot,ht):Je*y},_t.inflation=function(Pt){return arguments.length?At(qe,Je,ot=+Pt,ht):ot},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(163.775)}function we(){return ae().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Se=4*w+3*F(3),De=2*F(2*w*F(3)/Se),ft=et(De*F(3)/w,De,Se/6);function bt(){return x.geoProjection(ft).scale(176.84)}function Dt(qe,Je){return[qe*F(1-3*Je*Je/(w*w)),Je]}Dt.invert=function(qe,Je){return[qe/F(1-3*Je*Je/(w*w)),Je]};function Yt(){return x.geoProjection(Dt).scale(152.63)}function cr(qe,Je){var ot=r(Je),ht=r(qe)*ot,At=1-ht,_t=r(qe=t(p(qe)*ot,-p(Je))),Pt=p(qe);return ot=F(1-ht*ht),[Pt*ot-_t*At,-_t*ot-Pt*At]}cr.invert=function(qe,Je){var ot=(qe*qe+Je*Je)/-2,ht=F(-ot*(2+ot)),At=Je*ot+qe*ht,_t=qe*ot-Je*ht,Pt=F(_t*_t+At*At);return[t(ht*At,Pt*(1+ot)),Pt?-L(ht*_t/Pt):0]};function hr(){return x.geoProjection(cr).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function jr(qe,Je){var ot=ue(qe,Je);return[(ot[0]+qe/S)/2,(ot[1]+Je)/2]}jr.invert=function(qe,Je){var ot=qe,ht=Je,At=25;do{var _t=r(ht),Pt=p(ht),er=p(2*ht),nr=Pt*Pt,pr=_t*_t,Sr=p(ot),Wr=r(ot/2),ha=p(ot/2),ga=ha*ha,Pa=1-pr*Wr*Wr,Ja=Pa?z(_t*Wr)*F(di=1/Pa):di=0,di,pi=.5*(2*Ja*_t*ha+ot/S)-qe,Ci=.5*(Ja*Pt+ht)-Je,$i=.5*di*(pr*ga+Ja*_t*Wr*nr)+.5/S,Bn=di*(Sr*er/4-Ja*Pt*ha),Sn=.125*di*(er*ha-Ja*Pt*pr*Sr),ho=.5*di*(nr*Wr+Ja*ga*_t)+.5,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]};function ea(){return x.geoProjection(jr).scale(158.837)}g.geoNaturalEarth=x.geoNaturalEarth1,g.geoNaturalEarthRaw=x.geoNaturalEarth1Raw,g.geoAiry=Q,g.geoAiryRaw=W,g.geoAitoff=se,g.geoAitoffRaw=ue,g.geoArmadillo=G,g.geoArmadilloRaw=he,g.geoAugust=J,g.geoAugustRaw=$,g.geoBaker=j,g.geoBakerRaw=ne,g.geoBerghaus=ie,g.geoBerghausRaw=ee,g.geoBertin1953=at,g.geoBertin1953Raw=Ze,g.geoBoggs=tt,g.geoBoggsRaw=ze,g.geoBonne=Ot,g.geoBonneRaw=St,g.geoBottomley=ur,g.geoBottomleyRaw=jt,g.geoBromley=Cr,g.geoBromleyRaw=ar,g.geoChamberlin=Ee,g.geoChamberlinRaw=Fe,g.geoChamberlinAfrica=Ne,g.geoCollignon=ke,g.geoCollignonRaw=Ve,g.geoCraig=Le,g.geoCraigRaw=Te,g.geoCraster=xt,g.geoCrasterRaw=dt,g.geoCylindricalEqualArea=Bt,g.geoCylindricalEqualAreaRaw=It,g.geoCylindricalStereographic=Kt,g.geoCylindricalStereographicRaw=Gt,g.geoEckert1=sa,g.geoEckert1Raw=sr,g.geoEckert2=La,g.geoEckert2Raw=Aa,g.geoEckert3=Ga,g.geoEckert3Raw=ka,g.geoEckert4=Ua,g.geoEckert4Raw=Ma,g.geoEckert5=Wt,g.geoEckert5Raw=ni,g.geoEckert6=Vt,g.geoEckert6Raw=zt,g.geoEisenlohr=Zr,g.geoEisenlohrRaw=xr,g.geoFahey=Ea,g.geoFaheyRaw=Xr,g.geoFoucaut=qa,g.geoFoucautRaw=Fa,g.geoFoucautSinusoidal=$a,g.geoFoucautSinusoidalRaw=ya,g.geoGilbert=Er,g.geoGingery=Mr,g.geoGingeryRaw=kr,g.geoGinzburg4=Jr,g.geoGinzburg4Raw=Lr,g.geoGinzburg5=ca,g.geoGinzburg5Raw=oa,g.geoGinzburg6=ir,g.geoGinzburg6Raw=kt,g.geoGinzburg8=$r,g.geoGinzburg8Raw=mr,g.geoGinzburg9=Ba,g.geoGinzburg9Raw=ma,g.geoGringorten=ai,g.geoGringortenRaw=da,g.geoGuyou=Xi,g.geoGuyouRaw=$n,g.geoHammer=Ae,g.geoHammerRaw=fe,g.geoHammerRetroazimuthal=as,g.geoHammerRetroazimuthalRaw=Jo,g.geoHealpix=ys,g.geoHealpixRaw=Do,g.geoHill=Fs,g.geoHillRaw=Is,g.geoHomolosine=so,g.geoHomolosineRaw=Os,g.geoHufnagel=fs,g.geoHufnagelRaw=Ns,g.geoHyperelliptical=To,g.geoHyperellipticalRaw=ji,g.geoInterrupt=Nn,g.geoInterruptedBoggs=Zu,g.geoInterruptedHomolosine=Bu,g.geoInterruptedMollweide=qs,g.geoInterruptedMollweideHemispheres=Nu,g.geoInterruptedSinuMollweide=Xu,g.geoInterruptedSinusoidal=bf,g.geoKavrayskiy7=Yc,g.geoKavrayskiy7Raw=Rs,g.geoLagrange=Zl,g.geoLagrangeRaw=If,g.geoLarrivee=_c,g.geoLarriveeRaw=oc,g.geoLaskowski=_l,g.geoLaskowskiRaw=Zs,g.geoLittrow=$s,g.geoLittrowRaw=Bs,g.geoLoximuthal=zl,g.geoLoximuthalRaw=sc,g.geoMiller=Qs,g.geoMillerRaw=Yu,g.geoModifiedStereographic=Fl,g.geoModifiedStereographicRaw=fp,g.geoModifiedStereographicAlaska=Ku,g.geoModifiedStereographicGs48=cu,g.geoModifiedStereographicGs50=Zf,g.geoModifiedStereographicMiller=Rc,g.geoModifiedStereographicLee=pf,g.geoMollweide=Me,g.geoMollweideRaw=lt,g.geoMtFlatPolarParabolic=Kc,g.geoMtFlatPolarParabolicRaw=Rf,g.geoMtFlatPolarQuartic=uh,g.geoMtFlatPolarQuarticRaw=Yf,g.geoMtFlatPolarSinusoidal=Df,g.geoMtFlatPolarSinusoidalRaw=Ju,g.geoNaturalEarth2=Jc,g.geoNaturalEarth2Raw=Dc,g.geoNellHammer=wf,g.geoNellHammerRaw=Eu,g.geoInterruptedQuarticAuthalic=Us,g.geoNicolosi=Zh,g.geoNicolosiRaw=Kf,g.geoPatterson=$u,g.geoPattersonRaw=Fc,g.geoPolyconic=xl,g.geoPolyconicRaw=vu,g.geoPolyhedral=vf,g.geoPolyhedralButterfly=il,g.geoPolyhedralCollignon=Jf,g.geoPolyhedralWaterman=el,g.geoProject=Vl,g.geoGringortenQuincuncial=Zt,g.geoPeirceQuincuncial=fr,g.geoPierceQuincuncial=fr,g.geoQuantize=Yr,g.geoQuincuncial=ef,g.geoRectangularPolyconic=ba,g.geoRectangularPolyconicRaw=qr,g.geoRobinson=yi,g.geoRobinsonRaw=oi,g.geoSatellite=li,g.geoSatelliteRaw=Bi,g.geoSinuMollweide=ol,g.geoSinuMollweideRaw=mn,g.geoSinusoidal=Ct,g.geoSinusoidalRaw=Qe,g.geoStitch=tl,g.geoTimes=Ao,g.geoTimesRaw=Ln,g.geoTwoPointAzimuthal=Pu,g.geoTwoPointAzimuthalRaw=Ts,g.geoTwoPointAzimuthalUsa=nu,g.geoTwoPointEquidistant=yu,g.geoTwoPointEquidistantRaw=ec,g.geoTwoPointEquidistantUsa=tf,g.geoVanDerGrinten=Iu,g.geoVanDerGrintenRaw=Bc,g.geoVanDerGrinten2=ro,g.geoVanDerGrinten2Raw=Ac,g.geoVanDerGrinten3=Nc,g.geoVanDerGrinten3Raw=Po,g.geoVanDerGrinten4=pc,g.geoVanDerGrinten4Raw=hc,g.geoWagner=ae,g.geoWagner7=we,g.geoWagnerRaw=R,g.geoWagner4=bt,g.geoWagner4Raw=ft,g.geoWagner6=Yt,g.geoWagner6Raw=Dt,g.geoWiechel=hr,g.geoWiechelRaw=cr,g.geoWinkel3=ea,g.geoWinkel3Raw=jr,Object.defineProperty(g,"__esModule",{value:!0})})}}),AU=Ye({"src/plots/geo/zoom.js"(X,H){"use strict";var g=_n(),x=ta(),A=Hn(),M=Math.PI/180,e=180/Math.PI,t={cursor:"pointer"},r={cursor:"auto"};function o(y,f){var P=y.projection,L;return f._isScoped?L=n:f._isClipped?L=c:L=s,L(y,P)}H.exports=o;function a(y,f){return g.behavior.zoom().translate(f.translate()).scale(f.scale())}function i(y,f,P){var L=y.id,z=y.graphDiv,F=z.layout,B=F[L],O=z._fullLayout,I=O[L],N={},U={};function W(Q,ue){N[L+"."+Q]=x.nestedProperty(B,Q).get(),A.call("_storeDirectGUIEdit",F,O._preGUI,N);var se=x.nestedProperty(I,Q);se.get()!==ue&&(se.set(ue),x.nestedProperty(B,Q).set(ue),U[L+"."+Q]=ue)}P(W),W("projection.scale",f.scale()/y.fitScale),W("fitbounds",!1),z.emit("plotly_relayout",U)}function n(y,f){var P=a(y,f);function L(){g.select(this).style(t)}function z(){f.scale(g.event.scale).translate(g.event.translate),y.render(!0);var O=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":O[0],"geo.center.lat":O[1]})}function F(O){var I=f.invert(y.midPt);O("center.lon",I[0]),O("center.lat",I[1])}function B(){g.select(this).style(r),i(y,f,F)}return P.on("zoomstart",L).on("zoom",z).on("zoomend",B),P}function s(y,f){var P=a(y,f),L=2,z,F,B,O,I,N,U,W,Q;function ue(Z){return f.invert(Z)}function se(Z){var re=ue(Z);if(!re)return!0;var ne=f(re);return Math.abs(ne[0]-Z[0])>L||Math.abs(ne[1]-Z[1])>L}function he(){g.select(this).style(t),z=g.mouse(this),F=f.rotate(),B=f.translate(),O=F,I=ue(z)}function G(){if(N=g.mouse(this),se(z)){P.scale(f.scale()),P.translate(f.translate());return}f.scale(g.event.scale),f.translate([B[0],g.event.translate[1]]),I?ue(N)&&(W=ue(N),U=[O[0]+(W[0]-I[0]),F[1],F[2]],f.rotate(U),O=U):(z=N,I=ue(z)),Q=!0,y.render(!0);var Z=f.rotate(),re=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":re[0],"geo.center.lat":re[1],"geo.projection.rotation.lon":-Z[0]})}function $(){g.select(this).style(r),Q&&i(y,f,J)}function J(Z){var re=f.rotate(),ne=f.invert(y.midPt);Z("projection.rotation.lon",-re[0]),Z("center.lon",ne[0]),Z("center.lat",ne[1])}return P.on("zoomstart",he).on("zoom",G).on("zoomend",$),P}function c(y,f){var P={r:f.rotate(),k:f.scale()},L=a(y,f),z=u(L,"zoomstart","zoom","zoomend"),F=0,B=L.on,O;L.on("zoomstart",function(){g.select(this).style(t);var Q=g.mouse(this),ue=f.rotate(),se=ue,he=f.translate(),G=v(ue);O=h(f,Q),B.call(L,"zoom",function(){var $=g.mouse(this);if(f.scale(P.k=g.event.scale),!O)Q=$,O=h(f,Q);else if(h(f,$)){f.rotate(ue).translate(he);var J=h(f,$),Z=T(O,J),re=E(p(G,Z)),ne=P.r=l(re,O,se);(!isFinite(ne[0])||!isFinite(ne[1])||!isFinite(ne[2]))&&(ne=se),f.rotate(ne),se=ne}N(z.of(this,arguments))}),I(z.of(this,arguments))}).on("zoomend",function(){g.select(this).style(r),B.call(L,"zoom",null),U(z.of(this,arguments)),i(y,f,W)}).on("zoom.redraw",function(){y.render(!0);var Q=f.rotate();y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.projection.rotation.lon":-Q[0],"geo.projection.rotation.lat":-Q[1]})});function I(Q){F++||Q({type:"zoomstart"})}function N(Q){Q({type:"zoom"})}function U(Q){--F||Q({type:"zoomend"})}function W(Q){var ue=f.rotate();Q("projection.rotation.lon",-ue[0]),Q("projection.rotation.lat",-ue[1])}return g.rebind(L,z,"on")}function h(y,f){var P=y.invert(f);return P&&isFinite(P[0])&&isFinite(P[1])&&m(P)}function v(y){var f=.5*y[0]*M,P=.5*y[1]*M,L=.5*y[2]*M,z=Math.sin(f),F=Math.cos(f),B=Math.sin(P),O=Math.cos(P),I=Math.sin(L),N=Math.cos(L);return[F*O*N+z*B*I,z*O*N-F*B*I,F*B*N+z*O*I,F*O*I-z*B*N]}function p(y,f){var P=y[0],L=y[1],z=y[2],F=y[3],B=f[0],O=f[1],I=f[2],N=f[3];return[P*B-L*O-z*I-F*N,P*O+L*B+z*N-F*I,P*I-L*N+z*B+F*O,P*N+L*I-z*O+F*B]}function T(y,f){if(!(!y||!f)){var P=d(y,f),L=Math.sqrt(b(P,P)),z=.5*Math.acos(Math.max(-1,Math.min(1,b(y,f)))),F=Math.sin(z)/L;return L&&[Math.cos(z),P[2]*F,-P[1]*F,P[0]*F]}}function l(y,f,P){var L=S(f,2,y[0]);L=S(L,1,y[1]),L=S(L,0,y[2]-P[2]);var z=f[0],F=f[1],B=f[2],O=L[0],I=L[1],N=L[2],U=Math.atan2(F,z)*e,W=Math.sqrt(z*z+F*F),Q,ue;Math.abs(I)>W?(ue=(I>0?90:-90)-U,Q=0):(ue=Math.asin(I/W)*e-U,Q=Math.sqrt(W*W-I*I));var se=180-ue-2*U,he=(Math.atan2(N,O)-Math.atan2(B,Q))*e,G=(Math.atan2(N,O)-Math.atan2(B,-Q))*e,$=_(P[0],P[1],ue,he),J=_(P[0],P[1],se,G);return $<=J?[ue,he,P[2]]:[se,G,P[2]]}function _(y,f,P,L){var z=w(P-y),F=w(L-f);return Math.sqrt(z*z+F*F)}function w(y){return(y%360+540)%360-180}function S(y,f,P){var L=P*M,z=y.slice(),F=f===0?1:0,B=f===2?1:2,O=Math.cos(L),I=Math.sin(L);return z[F]=y[F]*O-y[B]*I,z[B]=y[B]*O+y[F]*I,z}function E(y){return[Math.atan2(2*(y[0]*y[1]+y[2]*y[3]),1-2*(y[1]*y[1]+y[2]*y[2]))*e,Math.asin(Math.max(-1,Math.min(1,2*(y[0]*y[2]-y[3]*y[1]))))*e,Math.atan2(2*(y[0]*y[3]+y[1]*y[2]),1-2*(y[2]*y[2]+y[3]*y[3]))*e]}function m(y){var f=y[0]*M,P=y[1]*M,L=Math.cos(P);return[L*Math.cos(f),L*Math.sin(f),Math.sin(P)]}function b(y,f){for(var P=0,L=0,z=y.length;L0&&I._module.calcGeoJSON(O,L)}if(!z){var N=this.updateProjection(P,L);if(N)return;(!this.viewInitial||this.scope!==F.scope)&&this.saveViewInitial(F)}this.scope=F.scope,this.updateBaseLayers(L,F),this.updateDims(L,F),this.updateFx(L,F),s.generalUpdatePerTraceModule(this.graphDiv,this,P,F);var U=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=U.selectAll(".point"),this.dataPoints.text=U.selectAll("text"),this.dataPaths.line=U.selectAll(".js-line");var W=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=W.selectAll("path"),this._render()},d.updateProjection=function(P,L){var z=this.graphDiv,F=L[this.id],B=L._size,O=F.domain,I=F.projection,N=F.lonaxis,U=F.lataxis,W=N._ax,Q=U._ax,ue=this.projection=u(F),se=[[B.l+B.w*O.x[0],B.t+B.h*(1-O.y[1])],[B.l+B.w*O.x[1],B.t+B.h*(1-O.y[0])]],he=F.center||{},G=I.rotation||{},$=N.range||[],J=U.range||[];if(F.fitbounds){W._length=se[1][0]-se[0][0],Q._length=se[1][1]-se[0][1],W.range=h(z,W),Q.range=h(z,Q);var Z=(W.range[0]+W.range[1])/2,re=(Q.range[0]+Q.range[1])/2;if(F._isScoped)he={lon:Z,lat:re};else if(F._isClipped){he={lon:Z,lat:re},G={lon:Z,lat:re,roll:G.roll};var ne=I.type,j=w.lonaxisSpan[ne]/2||180,ee=w.lataxisSpan[ne]/2||90;$=[Z-j,Z+j],J=[re-ee,re+ee]}else he={lon:Z,lat:re},G={lon:Z,lat:G.lat,roll:G.roll}}ue.center([he.lon-G.lon,he.lat-G.lat]).rotate([-G.lon,-G.lat,G.roll]).parallels(I.parallels);var ie=f($,J);ue.fitExtent(se,ie);var fe=this.bounds=ue.getBounds(ie),be=this.fitScale=ue.scale(),Ae=ue.translate();if(F.fitbounds){var Be=ue.getBounds(f(W.range,Q.range)),Ie=Math.min((fe[1][0]-fe[0][0])/(Be[1][0]-Be[0][0]),(fe[1][1]-fe[0][1])/(Be[1][1]-Be[0][1]));isFinite(Ie)?ue.scale(Ie*be):r.warn("Something went wrong during"+this.id+"fitbounds computations.")}else ue.scale(I.scale*be);var Ze=this.midPt=[(fe[0][0]+fe[1][0])/2,(fe[0][1]+fe[1][1])/2];if(ue.translate([Ae[0]+(Ze[0]-Ae[0]),Ae[1]+(Ze[1]-Ae[1])]).clipExtent(fe),F._isAlbersUsa){var at=ue([he.lon,he.lat]),it=ue.translate();ue.translate([it[0]-(at[0]-it[0]),it[1]-(at[1]-it[1])])}},d.updateBaseLayers=function(P,L){var z=this,F=z.topojson,B=z.layers,O=z.basePaths;function I(se){return se==="lonaxis"||se==="lataxis"}function N(se){return!!w.lineLayers[se]}function U(se){return!!w.fillLayers[se]}var W=this.hasChoropleth?w.layersForChoropleth:w.layers,Q=W.filter(function(se){return N(se)||U(se)?L["show"+se]:I(se)?L[se].showgrid:!0}),ue=z.framework.selectAll(".layer").data(Q,String);ue.exit().each(function(se){delete B[se],delete O[se],g.select(this).remove()}),ue.enter().append("g").attr("class",function(se){return"layer "+se}).each(function(se){var he=B[se]=g.select(this);se==="bg"?z.bgRect=he.append("rect").style("pointer-events","all"):I(se)?O[se]=he.append("path").style("fill","none"):se==="backplot"?he.append("g").classed("choroplethlayer",!0):se==="frontplot"?he.append("g").classed("scatterlayer",!0):N(se)?O[se]=he.append("path").style("fill","none").style("stroke-miterlimit",2):U(se)&&(O[se]=he.append("path").style("stroke","none"))}),ue.order(),ue.each(function(se){var he=O[se],G=w.layerNameToAdjective[se];se==="frame"?he.datum(w.sphereSVG):N(se)||U(se)?he.datum(m(F,F.objects[se])):I(se)&&he.datum(y(se,L,P)).call(a.stroke,L[se].gridcolor).call(i.dashLine,L[se].griddash,L[se].gridwidth),N(se)?he.call(a.stroke,L[G+"color"]).call(i.dashLine,"",L[G+"width"]):U(se)&&he.call(a.fill,L[G+"color"])})},d.updateDims=function(P,L){var z=this.bounds,F=(L.framewidth||0)/2,B=z[0][0]-F,O=z[0][1]-F,I=z[1][0]-B+F,N=z[1][1]-O+F;i.setRect(this.clipRect,B,O,I,N),this.bgRect.call(i.setRect,B,O,I,N).call(a.fill,L.bgcolor),this.xaxis._offset=B,this.xaxis._length=I,this.yaxis._offset=O,this.yaxis._length=N},d.updateFx=function(P,L){var z=this,F=z.graphDiv,B=z.bgRect,O=P.dragmode,I=P.clickmode;if(z.isStatic)return;function N(){var ue=z.viewInitial,se={};for(var he in ue)se[z.id+"."+he]=ue[he];t.call("_guiRelayout",F,se),F.emit("plotly_doubleclick",null)}function U(ue){return z.projection.invert([ue[0]+z.xaxis._offset,ue[1]+z.yaxis._offset])}var W=function(ue,se){if(se.isRect){var he=ue.range={};he[z.id]=[U([se.xmin,se.ymin]),U([se.xmax,se.ymax])]}else{var G=ue.lassoPoints={};G[z.id]=se.map(U)}},Q={element:z.bgRect.node(),gd:F,plotinfo:{id:z.id,xaxis:z.xaxis,yaxis:z.yaxis,fillRangeItems:W},xaxes:[z.xaxis],yaxes:[z.yaxis],subplot:z.id,clickFn:function(ue){ue===2&&T(F)}};O==="pan"?(B.node().onmousedown=null,B.call(_(z,L)),B.on("dblclick.zoom",N),F._context._scrollZoom.geo||B.on("wheel.zoom",null)):(O==="select"||O==="lasso")&&(B.on(".zoom",null),Q.prepFn=function(ue,se,he){p(ue,se,he,Q,O)},v.init(Q)),B.on("mousemove",function(){var ue=z.projection.invert(r.getPositionFromD3Event());if(!ue)return v.unhover(F,g.event);z.xaxis.p2c=function(){return ue[0]},z.yaxis.p2c=function(){return ue[1]},n.hover(F,g.event,z.id)}),B.on("mouseout",function(){F._dragging||v.unhover(F,g.event)}),B.on("click",function(){O!=="select"&&O!=="lasso"&&(I.indexOf("select")>-1&&l(g.event,F,[z.xaxis],[z.yaxis],z.id,Q),I.indexOf("event")>-1&&n.click(F,g.event))})},d.makeFramework=function(){var P=this,L=P.graphDiv,z=L._fullLayout,F="clip"+z._uid+P.id;P.clipDef=z._clips.append("clipPath").attr("id",F),P.clipRect=P.clipDef.append("rect"),P.framework=g.select(P.container).append("g").attr("class","geo "+P.id).call(i.setClipUrl,F,L),P.project=function(B){var O=P.projection(B);return O?[O[0]-P.xaxis._offset,O[1]-P.yaxis._offset]:[null,null]},P.xaxis={_id:"x",c2p:function(B){return P.project(B)[0]}},P.yaxis={_id:"y",c2p:function(B){return P.project(B)[1]}},P.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},c.setConvert(P.mockAxis,z)},d.saveViewInitial=function(P){var L=P.center||{},z=P.projection,F=z.rotation||{};this.viewInitial={fitbounds:P.fitbounds,"projection.scale":z.scale};var B;P._isScoped?B={"center.lon":L.lon,"center.lat":L.lat}:P._isClipped?B={"projection.rotation.lon":F.lon,"projection.rotation.lat":F.lat}:B={"center.lon":L.lon,"center.lat":L.lat,"projection.rotation.lon":F.lon},r.extendFlat(this.viewInitial,B)},d.render=function(P){this._hasMarkerAngles&&P?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},d._render=function(){var P=this.projection,L=P.getPath(),z;function F(O){var I=P(O.lonlat);return I?o(I[0],I[1]):null}function B(O){return P.isLonLatOverEdges(O.lonlat)?"none":null}for(z in this.basePaths)this.basePaths[z].attr("d",L);for(z in this.dataPaths)this.dataPaths[z].attr("d",function(O){return L(O.geojson)});for(z in this.dataPoints)this.dataPoints[z].attr("display",B).attr("transform",F)};function u(P){var L=P.projection,z=L.type,F=w.projNames[z];F="geo"+r.titleCase(F);for(var B=x[F]||e[F],O=B(),I=P._isSatellite?Math.acos(1/L.distance)*180/Math.PI:P._isClipped?w.lonaxisSpan[z]/2:null,N=["center","rotate","parallels","clipExtent"],U=function(ue){return ue?O:[]},W=0;WG}else return!1},O.getPath=function(){return A().projection(O)},O.getBounds=function(ue){return O.getPath().bounds(ue)},O.precision(w.precision),P._isSatellite&&O.tilt(L.tilt).distance(L.distance),I&&O.clipAngle(I-w.clipPad),O}function y(P,L,z){var F=1e-6,B=2.5,O=L[P],I=w.scopeDefaults[L.scope],N,U,W;P==="lonaxis"?(N=I.lonaxisRange,U=I.lataxisRange,W=function(re,ne){return[re,ne]}):P==="lataxis"&&(N=I.lataxisRange,U=I.lonaxisRange,W=function(re,ne){return[ne,re]});var Q={type:"linear",range:[N[0],N[1]-F],tick0:O.tick0,dtick:O.dtick};c.setConvert(Q,z);var ue=c.calcTicks(Q);!L.isScoped&&P==="lonaxis"&&ue.pop();for(var se=ue.length,he=new Array(se),G=0;G0&&B<0&&(B+=360);var N=(B-F)/4;return{type:"Polygon",coordinates:[[[F,O],[F,I],[F+N,I],[F+2*N,I],[F+3*N,I],[B,I],[B,O],[B-N,O],[B-2*N,O],[B-3*N,O],[F,O]]]}}}}),L5=Ye({"src/plots/geo/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Uh().dash,M=mx(),e=Ou().overrideAll,t=Km(),r={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:g.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:A},o=H.exports=e({domain:x({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:t(M.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:t(M.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:g.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:M.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:M.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:M.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:M.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:g.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:g.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:g.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:g.background},lonaxis:r,lataxis:r},"plot","from-root");o.uirevision={valType:"any",editType:"none"}}}),MU=Ye({"src/plots/geo/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=jh().getSubplotData,M=mx(),e=L5(),t=M.axesNames;H.exports=function(a,i,n){x(a,i,n,{type:"geo",attributes:e,handleDefaults:r,fullData:n,partition:"y"})};function r(o,a,i,n){var s=A(n.fullData,"geo",n.id),c=s.map(function(J){return J.index}),h=i("resolution"),v=i("scope"),p=M.scopeDefaults[v],T=i("projection.type",p.projType),l=a._isAlbersUsa=T==="albers usa";l&&(v=a.scope="usa");var _=a._isScoped=v!=="world",w=a._isSatellite=T==="satellite",S=a._isConic=T.indexOf("conic")!==-1||T==="albers",E=a._isClipped=!!M.lonaxisSpan[T];if(o.visible===!1){var m=g.extendDeep({},a._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),a._template=m}for(var b=i("visible"),d,u=0;u0&&U<0&&(U+=360);var W=(N+U)/2,Q;if(!l){var ue=_?p.projRotate:[W,0,0];Q=i("projection.rotation.lon",ue[0]),i("projection.rotation.lat",ue[1]),i("projection.rotation.roll",ue[2]),d=i("showcoastlines",!_&&b),d&&(i("coastlinecolor"),i("coastlinewidth")),d=i("showocean",b?void 0:!1),d&&i("oceancolor")}var se,he;if(l?(se=-96.6,he=38.7):(se=_?W:Q,he=(I[0]+I[1])/2),i("center.lon",se),i("center.lat",he),w&&(i("projection.tilt"),i("projection.distance")),S){var G=p.projParallels||[0,60];i("projection.parallels",G)}i("projection.scale"),d=i("showland",b?void 0:!1),d&&i("landcolor"),d=i("showlakes",b?void 0:!1),d&&i("lakecolor"),d=i("showrivers",b?void 0:!1),d&&(i("rivercolor"),i("riverwidth")),d=i("showcountries",_&&v!=="usa"&&b),d&&(i("countrycolor"),i("countrywidth")),(v==="usa"||v==="north america"&&h===50)&&(i("showsubunits",b),i("subunitcolor"),i("subunitwidth")),_||(d=i("showframe",b),d&&(i("framecolor"),i("framewidth"))),i("bgcolor");var $=i("fitbounds");$&&(delete a.projection.scale,_?(delete a.center.lon,delete a.center.lat):E?(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon,delete a.projection.rotation.lat,delete a.lonaxis.range,delete a.lataxis.range):(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon))}}}),P5=Ye({"src/plots/geo/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=SU(),M="geo",e=x(M),t={};t[M]={valType:"subplotid",dflt:M,editType:"calc"};function r(i){for(var n=i._fullLayout,s=i.calcdata,c=n._subplots[M],h=0;h")}}}}),cT=Ye({"src/traces/choropleth/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.location=A.location,x.z=A.z;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x.ct=r.ct,x}}}),fT=Ye({"src/traces/choropleth/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a,i,n,s;if(A===!1)for(o=0;o=Math.min(U,W)&&T<=Math.max(U,W)?0:1/0}if(L=Math.min(Q,ue)&&l<=Math.max(Q,ue)?0:1/0}B=Math.sqrt(L*L+z*z),u=w[P]}}}else for(P=w.length-1;P>-1;P--)d=w[P],y=v[d],f=p[d],L=c.c2p(y)-T,z=h.c2p(f)-l,F=Math.sqrt(L*L+z*z),F100},X.isDotSymbol=function(g){return typeof g=="string"?H.DOT_RE.test(g):g>200}}}),IU=Ye({"src/traces/scattergl/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=pT(),M=yx(),e=Tv(),t=uu(),r=i1(),o=Qd(),a=md(),i=Dd(),n=ev(),s=zd();H.exports=function(h,v,p,T){function l(u,y){return g.coerce(h,v,M,u,y)}var _=h.marker?A.isOpenSymbol(h.marker.symbol):!1,w=t.isBubble(h),S=r(h,v,T,l);if(!S){v.visible=!1;return}o(h,v,T,l),l("xhoverformat"),l("yhoverformat");var E=S>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>=0?(s=c,n=c-1):i=c+1}return s}function x(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>0?(s=c,n=c-1):i=c+1}return s}function A(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<0?(s=c,i=c+1):n=c-1}return s}function M(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<=0?(s=c,i=c+1):n=c-1}return s}function e(r,o,a,i,n){for(;i<=n;){var s=i+n>>>1,c=r[s],h=a!==void 0?a(c,o):c-o;if(h===0)return s;h<=0?i=s+1:n=s-1}return-1}function t(r,o,a,i,n,s){return typeof a=="function"?s(r,o,a,i===void 0?0:i|0,n===void 0?r.length-1:n|0):s(r,o,void 0,a===void 0?0:a|0,i===void 0?r.length-1:i|0)}H.exports={ge:function(r,o,a,i,n){return t(r,o,a,i,n,g)},gt:function(r,o,a,i,n){return t(r,o,a,i,n,x)},lt:function(r,o,a,i,n){return t(r,o,a,i,n,A)},le:function(r,o,a,i,n){return t(r,o,a,i,n,M)},eq:function(r,o,a,i,n){return t(r,o,a,i,n,e)}}}}),Ev=Ye({"node_modules/pick-by-alias/index.js"(X,H){"use strict";H.exports=function(M,e,t){var r={},o,a;if(typeof e=="string"&&(e=x(e)),Array.isArray(e)){var i={};for(a=0;a1&&(A=arguments),typeof A=="string"?A=A.split(/\s/).map(parseFloat):typeof A=="number"&&(A=[A]),A.length&&typeof A[0]=="number"?A.length===1?M={width:A[0],height:A[0],x:0,y:0}:A.length===2?M={width:A[0],height:A[1],x:0,y:0}:M={x:A[0],y:A[1],width:A[2]-A[0]||0,height:A[3]-A[1]||0}:A&&(A=g(A,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),M={x:A.left||0,y:A.top||0},A.width==null?A.right?M.width=A.right-M.x:M.width=0:M.width=A.width,A.height==null?A.bottom?M.height=A.bottom-M.y:M.height=0:M.height=A.height),M}}}),d0=Ye({"node_modules/array-bounds/index.js"(X,H){"use strict";H.exports=g;function g(x,A){if(!x||x.length==null)throw Error("Argument should be an array");A==null?A=1:A=Math.floor(A);for(var M=Array(A*2),e=0;et&&(t=x[o]),x[o]>>1,w;v.dtype||(v.dtype="array"),typeof v.dtype=="string"?w=new(a(v.dtype))(_):v.dtype&&(w=v.dtype,Array.isArray(w)&&(w.length=_));for(let L=0;L<_;++L)w[L]=L;let S=[],E=[],m=[],b=[];u(0,0,1,w,0,1);let d=0;for(let L=0;Lp||I>n){for(let re=0;reie||W>fe||Q=se||j===ee)return;let be=S[ne];ee===void 0&&(ee=be.length);for(let Me=j;Me=B&&ce<=I&&ze>=O&&ze<=N&&he.push(ge)}let Ae=E[ne],Be=Ae[j*4+0],Ie=Ae[j*4+1],Ze=Ae[j*4+2],at=Ae[j*4+3],it=$(Ae,j+1),et=re*.5,lt=ne+1;G(J,Z,et,lt,Be,Ie||Ze||at||it),G(J,Z+et,et,lt,Ie,Ze||at||it),G(J+et,Z,et,lt,Ze,at||it),G(J+et,Z+et,et,lt,at,it)}function $(J,Z){let re=null,ne=0;for(;re===null;)if(re=J[Z*4+ne],ne++,ne>J.length)return null;return re}return he}function f(L,z,F,B,O){let I=[];for(let N=0;N1&&(h=1),h<-1&&(h=-1),c*Math.acos(h)},t=function(a,i,n,s,c,h,v,p,T,l,_,w){var S=Math.pow(c,2),E=Math.pow(h,2),m=Math.pow(_,2),b=Math.pow(w,2),d=S*E-S*b-E*m;d<0&&(d=0),d/=S*b+E*m,d=Math.sqrt(d)*(v===p?-1:1);var u=d*c/h*w,y=d*-h/c*_,f=l*u-T*y+(a+n)/2,P=T*u+l*y+(i+s)/2,L=(_-u)/c,z=(w-y)/h,F=(-_-u)/c,B=(-w-y)/h,O=e(1,0,L,z),I=e(L,z,F,B);return p===0&&I>0&&(I-=x),p===1&&I<0&&(I+=x),[f,P,O,I]},r=function(a){var i=a.px,n=a.py,s=a.cx,c=a.cy,h=a.rx,v=a.ry,p=a.xAxisRotation,T=p===void 0?0:p,l=a.largeArcFlag,_=l===void 0?0:l,w=a.sweepFlag,S=w===void 0?0:w,E=[];if(h===0||v===0)return[];var m=Math.sin(T*x/360),b=Math.cos(T*x/360),d=b*(i-s)/2+m*(n-c)/2,u=-m*(i-s)/2+b*(n-c)/2;if(d===0&&u===0)return[];h=Math.abs(h),v=Math.abs(v);var y=Math.pow(d,2)/Math.pow(h,2)+Math.pow(u,2)/Math.pow(v,2);y>1&&(h*=Math.sqrt(y),v*=Math.sqrt(y));var f=t(i,n,s,c,h,v,_,S,m,b,d,u),P=g(f,4),L=P[0],z=P[1],F=P[2],B=P[3],O=Math.abs(B)/(x/4);Math.abs(1-O)<1e-7&&(O=1);var I=Math.max(Math.ceil(O),1);B/=I;for(var N=0;N4?(o=l[l.length-4],a=l[l.length-3]):(o=h,a=v),r.push(l)}return r}function A(e,t,r,o){return["C",e,t,r,o,r,o]}function M(e,t,r,o,a,i){return["C",e/3+2/3*r,t/3+2/3*o,a/3+2/3*r,i/3+2/3*o,a,i]}}}),D5=Ye({"node_modules/is-svg-path/index.js"(X,H){"use strict";H.exports=function(x){return typeof x!="string"?!1:(x=x.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(x)&&/[\dz]$/i.test(x)&&x.length>4))}}}),jU=Ye({"node_modules/svg-path-bounds/index.js"(X,H){"use strict";var g=A_(),x=R5(),A=UU(),M=D5(),e=X_();H.exports=t;function t(r){if(Array.isArray(r)&&r.length===1&&typeof r[0]=="string"&&(r=r[0]),typeof r=="string"&&(e(M(r),"String is not an SVG path."),r=g(r)),e(Array.isArray(r),"Argument should be a string or an array of path segments."),r=x(r),r=A(r),!r.length)return[0,0,0,0];for(var o=[1/0,1/0,-1/0,-1/0],a=0,i=r.length;ao[2]&&(o[2]=n[s+0]),n[s+1]>o[3]&&(o[3]=n[s+1]);return o}}}),VU=Ye({"node_modules/normalize-svg-path/index.js"(X,H){var g=Math.PI,x=o(120);H.exports=A;function A(a){for(var i,n=[],s=0,c=0,h=0,v=0,p=null,T=null,l=0,_=0,w=0,S=a.length;w7&&(n.push(E.splice(0,7)),E.unshift("C"));break;case"S":var b=l,d=_;(i=="C"||i=="S")&&(b+=b-s,d+=d-c),E=["C",b,d,E[1],E[2],E[3],E[4]];break;case"T":i=="Q"||i=="T"?(p=l*2-p,T=_*2-T):(p=l,T=_),E=e(l,_,p,T,E[1],E[2]);break;case"Q":p=E[1],T=E[2],E=e(l,_,E[1],E[2],E[3],E[4]);break;case"L":E=M(l,_,E[1],E[2]);break;case"H":E=M(l,_,E[1],_);break;case"V":E=M(l,_,l,E[1]);break;case"Z":E=M(l,_,h,v);break}i=m,l=E[E.length-2],_=E[E.length-1],E.length>4?(s=E[E.length-4],c=E[E.length-3]):(s=l,c=_),n.push(E)}return n}function M(a,i,n,s){return["C",a,i,n,s,n,s]}function e(a,i,n,s,c,h){return["C",a/3+2/3*n,i/3+2/3*s,c/3+2/3*n,h/3+2/3*s,c,h]}function t(a,i,n,s,c,h,v,p,T,l){if(l)f=l[0],P=l[1],u=l[2],y=l[3];else{var _=r(a,i,-c);a=_.x,i=_.y,_=r(p,T,-c),p=_.x,T=_.y;var w=(a-p)/2,S=(i-T)/2,E=w*w/(n*n)+S*S/(s*s);E>1&&(E=Math.sqrt(E),n=E*n,s=E*s);var m=n*n,b=s*s,d=(h==v?-1:1)*Math.sqrt(Math.abs((m*b-m*S*S-b*w*w)/(m*S*S+b*w*w)));d==1/0&&(d=1);var u=d*n*S/s+(a+p)/2,y=d*-s*w/n+(i+T)/2,f=Math.asin(((i-y)/s).toFixed(9)),P=Math.asin(((T-y)/s).toFixed(9));f=aP&&(f=f-g*2),!v&&P>f&&(P=P-g*2)}if(Math.abs(P-f)>x){var L=P,z=p,F=T;P=f+x*(v&&P>f?1:-1),p=u+n*Math.cos(P),T=y+s*Math.sin(P);var B=t(p,T,n,s,c,0,v,z,F,[P,L,u,y])}var O=Math.tan((P-f)/4),I=4/3*n*O,N=4/3*s*O,U=[2*a-(a+I*Math.sin(f)),2*i-(i-N*Math.cos(f)),p+I*Math.sin(P),T-N*Math.cos(P),p,T];if(l)return U;B&&(U=U.concat(B));for(var W=0;W0?r.strokeStyle="white":r.strokeStyle="black",r.lineWidth=Math.abs(p)),r.translate(c*.5,h*.5),r.scale(_,_),i()){var w=new Path2D(n);r.fill(w),p&&r.stroke(w)}else{var S=x(n);A(r,S),r.fill(),p&&r.stroke()}r.setTransform(1,0,0,1,0,0);var E=e(r,{cutoff:s.cutoff!=null?s.cutoff:.5,radius:s.radius!=null?s.radius:v*.5});return E}var a;function i(){if(a!=null)return a;var n=document.createElement("canvas").getContext("2d");if(n.canvas.width=n.canvas.height=1,!window.Path2D)return a=!1;var s=new Path2D("M0,0h1v1h-1v-1Z");n.fillStyle="black",n.fill(s);var c=n.getImageData(0,0,1,1);return a=c&&c.data&&c.data[3]===255}}}),m0=Ye({"src/traces/scattergl/convert.js"(X,H){"use strict";var g=jo(),x=GU(),A=hg(),M=Hn(),e=ta(),t=e.isArrayOrTypedArray,r=Bo(),o=Xc(),a=em().formatColor,i=uu(),n=t1(),s=pT(),c=mg(),h=Xm().DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},p=Qp().appendArrayPointValue;function T(B,O){var I,N={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},U=B._context.plotGlPixelRatio;if(O.visible!==!0)return N;if(i.hasText(O)&&(N.text=l(B,O),N.textSel=E(B,O,O.selected),N.textUnsel=E(B,O,O.unselected)),i.hasMarkers(O)&&(N.marker=w(B,O),N.markerSel=S(B,O,O.selected),N.markerUnsel=S(B,O,O.unselected),!O.unselected&&t(O.marker.opacity))){var W=O.marker.opacity;for(N.markerUnsel.opacity=new Array(W.length),I=0;I500?"bold":"normal":B}function w(B,O){var I=O._length,N=O.marker,U={},W,Q=t(N.symbol),ue=t(N.angle),se=t(N.color),he=t(N.line.color),G=t(N.opacity),$=t(N.size),J=t(N.line.width),Z;if(Q||(Z=s.isOpenSymbol(N.symbol)),Q||se||he||G||ue){U.symbols=new Array(I),U.angles=new Array(I),U.colors=new Array(I),U.borderColors=new Array(I);var re=N.symbol,ne=N.angle,j=a(N,N.opacity,I),ee=a(N.line,N.opacity,I);if(!t(ee[0])){var ie=ee;for(ee=Array(I),W=0;Wc.TOO_MANY_POINTS||i.hasMarkers(O)?"rect":"round";if(he&&O.connectgaps){var $=W[0],J=W[1];for(Q=0;Q1?se[Q]:se[0]:se,Z=t(he)?he.length>1?he[Q]:he[0]:he,re=v[J],ne=v[Z],j=G?G/.8+1:0,ee=-ne*j-ne*.5;W.offset[Q]=[re*j/$,ee/$]}}return W}H.exports={style:T,markerStyle:w,markerSelection:S,linePositions:L,errorBarPositions:z,textPosition:F}}}),z5=Ye({"src/traces/scattergl/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=M._scene,t={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},r={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return M._scene||(e=M._scene={},e.init=function(){g.extendFlat(e,r,t)},e.init(),e.update=function(a){var i=g.repeat(a,e.count);if(e.fill2d&&e.fill2d.update(i),e.scatter2d&&e.scatter2d.update(i),e.line2d&&e.line2d.update(i),e.error2d&&e.error2d.update(i.concat(i)),e.select2d&&e.select2d.update(i),e.glText)for(var n=0;n=h,u=b*2,y={},f,P=S.makeCalcdata(_,"x"),L=E.makeCalcdata(_,"y"),z=e(_,S,"x",P),F=e(_,E,"y",L),B=z.vals,O=F.vals;_._x=B,_._y=O,_.xperiodalignment&&(_._origX=P,_._xStarts=z.starts,_._xEnds=z.ends),_.yperiodalignment&&(_._origY=L,_._yStarts=F.starts,_._yEnds=F.ends);var I=new Array(u),N=new Array(b);for(f=0;f1&&x.extendFlat(m.line,n.linePositions(T,_,w)),m.errorX||m.errorY){var b=n.errorBarPositions(T,_,w,S,E);m.errorX&&x.extendFlat(m.errorX,b.x),m.errorY&&x.extendFlat(m.errorY,b.y)}return m.text&&(x.extendFlat(m.text,{positions:w},n.textPosition(T,_,m.text,m.marker)),x.extendFlat(m.textSel,{positions:w},n.textPosition(T,_,m.text,m.markerSel)),x.extendFlat(m.textUnsel,{positions:w},n.textPosition(T,_,m.text,m.markerUnsel))),m}}}),F5=Ye({"src/traces/scattergl/edit_style.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xm().DESELECTDIM;function M(e){var t=e[0],r=t.trace,o=t.t,a=o._scene,i=o.index,n=a.selectBatch[i],s=a.unselectBatch[i],c=a.textOptions[i],h=a.textSelectedOptions[i]||{},v=a.textUnselectedOptions[i]||{},p=g.extendFlat({},c),T,l;if(n.length||s.length){var _=h.color,w=v.color,S=c.color,E=g.isArrayOrTypedArray(S);for(p.color=new Array(r._length),T=0;T>>24,r=(M&16711680)>>>16,o=(M&65280)>>>8,a=M&255;return e===!1?[t,r,o,a]:[t/255,r/255,o/255,a/255]}}}),Wf=Ye({"node_modules/object-assign/index.js"(X,H){"use strict";var g=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;function M(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function e(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},o=0;o<10;o++)r["_"+String.fromCharCode(o)]=o;var a=Object.getOwnPropertyNames(r).map(function(n){return r[n]});if(a.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(n){i[n]=n}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}H.exports=e()?Object.assign:function(t,r){for(var o,a=M(t),i,n=1;ny.length)&&(f=y.length);for(var P=0,L=new Array(f);P 1.0 + delta) { + discard; + } + + alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius); + + float borderRadius = fragBorderRadius; + float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius); + vec4 color = mix(fragColor, fragBorderColor, ratio); + color.a *= alpha * opacity; + gl_FragColor = color; +} +`]),se.vert=p([`precision highp float; +#define GLSLIFY 1 + +attribute float x, y, xFract, yFract; +attribute float size, borderSize; +attribute vec4 colorId, borderColorId; +attribute float isActive; + +// \`invariant\` effectively turns off optimizations for the position. +// We need this because -fast-math on M1 Macs is re-ordering +// floating point operations in a way that causes floating point +// precision limits to put points in the wrong locations. +invariant gl_Position; + +uniform bool constPointSize; +uniform float pixelRatio; +uniform vec2 paletteSize, scale, scaleFract, translate, translateFract; +uniform sampler2D paletteTexture; + +const float maxSize = 100.; + +varying vec4 fragColor, fragBorderColor; +varying float fragBorderRadius, fragWidth; + +float pointSizeScale = (constPointSize) ? 2. : pixelRatio; + +bool isDirect = (paletteSize.x < 1.); + +vec4 getColor(vec4 id) { + return isDirect ? id / 255. : texture2D(paletteTexture, + vec2( + (id.x + .5) / paletteSize.x, + (id.y + .5) / paletteSize.y + ) + ); +} + +void main() { + // ignore inactive points + if (isActive == 0.) return; + + vec2 position = vec2(x, y); + vec2 positionFract = vec2(xFract, yFract); + + vec4 color = getColor(colorId); + vec4 borderColor = getColor(borderColorId); + + float size = size * maxSize / 255.; + float borderSize = borderSize * maxSize / 255.; + + gl_PointSize = (size + borderSize) * pointSizeScale; + + vec2 pos = (position + translate) * scale + + (positionFract + translateFract) * scale + + (position + translate) * scaleFract + + (positionFract + translateFract) * scaleFract; + + gl_Position = vec4(pos * 2. - 1., 0., 1.); + + fragBorderRadius = 1. - 2. * borderSize / (size + borderSize); + fragColor = color; + fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor; + fragWidth = 1. / gl_PointSize; +} +`]),w&&(se.frag=se.frag.replace("smoothstep","smoothStep"),ue.frag=ue.frag.replace("smoothstep","smoothStep")),this.drawCircle=y(se)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;Lge)?lt.tree=h(et,{bounds:Qe}):ge&&ge.length&&(lt.tree=ge),lt.tree){var Ct={primitive:"points",usage:"static",data:lt.tree,type:"uint32"};lt.elements?lt.elements(Ct):lt.elements=B.elements(Ct)}var St=S.float32(et);ce({data:St,usage:"dynamic"});var Ot=S.fract32(et,St);return ze({data:Ot,usage:"dynamic"}),tt({data:new Uint8Array(nt),type:"uint8",usage:"stream"}),et}},{marker:function(et,lt,Me){var ge=lt.activation;if(ge.forEach(function(Ot){return Ot&&Ot.destroy&&Ot.destroy()}),ge.length=0,!et||typeof et[0]=="number"){var ce=y.addMarker(et);ge[ce]=!0}else{for(var ze=[],tt=0,nt=Math.min(et.length,lt.count);tt=0)return z;var F;if(y instanceof Uint8Array||y instanceof Uint8ClampedArray)F=y;else{F=new Uint8Array(y.length);for(var B=0,O=y.length;BL*4&&(this.tooManyColors=!0),this.updatePalette(P),z.length===1?z[0]:z},b.prototype.updatePalette=function(y){if(!this.tooManyColors){var f=this.maxColors,P=this.paletteTexture,L=Math.ceil(y.length*.25/f);if(L>1){y=y.slice();for(var z=y.length*.25%f;z80*I){ue=he=B[0],se=G=B[1];for(var re=I;rehe&&(he=$),J>G&&(G=J);Z=Math.max(he-ue,G-se),Z=Z!==0?32767/Z:0}return M(W,Q,I,ue,se,Z,0),Q}function x(B,O,I,N,U){var W,Q;if(U===F(B,O,I,N)>0)for(W=O;W=O;W-=N)Q=P(W,B[W],B[W+1],Q);return Q&&S(Q,Q.next)&&(L(Q),Q=Q.next),Q}function A(B,O){if(!B)return B;O||(O=B);var I=B,N;do if(N=!1,!I.steiner&&(S(I,I.next)||w(I.prev,I,I.next)===0)){if(L(I),I=O=I.prev,I===I.next)break;N=!0}else I=I.next;while(N||I!==O);return O}function M(B,O,I,N,U,W,Q){if(B){!Q&&W&&h(B,N,U,W);for(var ue=B,se,he;B.prev!==B.next;){if(se=B.prev,he=B.next,W?t(B,N,U,W):e(B)){O.push(se.i/I|0),O.push(B.i/I|0),O.push(he.i/I|0),L(B),B=he.next,ue=he.next;continue}if(B=he,B===ue){Q?Q===1?(B=r(A(B),O,I),M(B,O,I,N,U,W,2)):Q===2&&o(B,O,I,N,U,W):M(A(B),O,I,N,U,W,1);break}}}}function e(B){var O=B.prev,I=B,N=B.next;if(w(O,I,N)>=0)return!1;for(var U=O.x,W=I.x,Q=N.x,ue=O.y,se=I.y,he=N.y,G=UW?U>Q?U:Q:W>Q?W:Q,Z=ue>se?ue>he?ue:he:se>he?se:he,re=N.next;re!==O;){if(re.x>=G&&re.x<=J&&re.y>=$&&re.y<=Z&&l(U,ue,W,se,Q,he,re.x,re.y)&&w(re.prev,re,re.next)>=0)return!1;re=re.next}return!0}function t(B,O,I,N){var U=B.prev,W=B,Q=B.next;if(w(U,W,Q)>=0)return!1;for(var ue=U.x,se=W.x,he=Q.x,G=U.y,$=W.y,J=Q.y,Z=uese?ue>he?ue:he:se>he?se:he,j=G>$?G>J?G:J:$>J?$:J,ee=p(Z,re,O,I,N),ie=p(ne,j,O,I,N),fe=B.prevZ,be=B.nextZ;fe&&fe.z>=ee&&be&&be.z<=ie;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0||(fe=fe.prevZ,be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0))return!1;be=be.nextZ}for(;fe&&fe.z>=ee;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0)return!1;fe=fe.prevZ}for(;be&&be.z<=ie;){if(be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0)return!1;be=be.nextZ}return!0}function r(B,O,I){var N=B;do{var U=N.prev,W=N.next.next;!S(U,W)&&E(U,N,N.next,W)&&u(U,W)&&u(W,U)&&(O.push(U.i/I|0),O.push(N.i/I|0),O.push(W.i/I|0),L(N),L(N.next),N=B=W),N=N.next}while(N!==B);return A(N)}function o(B,O,I,N,U,W){var Q=B;do{for(var ue=Q.next.next;ue!==Q.prev;){if(Q.i!==ue.i&&_(Q,ue)){var se=f(Q,ue);Q=A(Q,Q.next),se=A(se,se.next),M(Q,O,I,N,U,W,0),M(se,O,I,N,U,W,0);return}ue=ue.next}Q=Q.next}while(Q!==B)}function a(B,O,I,N){var U=[],W,Q,ue,se,he;for(W=0,Q=O.length;W=I.next.y&&I.next.y!==I.y){var ue=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(ue<=N&&ue>W&&(W=ue,Q=I.x=I.x&&I.x>=he&&N!==I.x&&l(UQ.x||I.x===Q.x&&c(Q,I)))&&(Q=I,$=J)),I=I.next;while(I!==se);return Q}function c(B,O){return w(B.prev,B,O.prev)<0&&w(O.next,B,B.next)<0}function h(B,O,I,N){var U=B;do U.z===0&&(U.z=p(U.x,U.y,O,I,N)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==B);U.prevZ.nextZ=null,U.prevZ=null,v(U)}function v(B){var O,I,N,U,W,Q,ue,se,he=1;do{for(I=B,B=null,W=null,Q=0;I;){for(Q++,N=I,ue=0,O=0;O0||se>0&&N;)ue!==0&&(se===0||!N||I.z<=N.z)?(U=I,I=I.nextZ,ue--):(U=N,N=N.nextZ,se--),W?W.nextZ=U:B=U,U.prevZ=W,W=U;I=N}W.nextZ=null,he*=2}while(Q>1);return B}function p(B,O,I,N,U){return B=(B-I)*U|0,O=(O-N)*U|0,B=(B|B<<8)&16711935,B=(B|B<<4)&252645135,B=(B|B<<2)&858993459,B=(B|B<<1)&1431655765,O=(O|O<<8)&16711935,O=(O|O<<4)&252645135,O=(O|O<<2)&858993459,O=(O|O<<1)&1431655765,B|O<<1}function T(B){var O=B,I=B;do(O.x=(B-Q)*(W-ue)&&(B-Q)*(N-ue)>=(I-Q)*(O-ue)&&(I-Q)*(W-ue)>=(U-Q)*(N-ue)}function _(B,O){return B.next.i!==O.i&&B.prev.i!==O.i&&!d(B,O)&&(u(B,O)&&u(O,B)&&y(B,O)&&(w(B.prev,B,O.prev)||w(B,O.prev,O))||S(B,O)&&w(B.prev,B,B.next)>0&&w(O.prev,O,O.next)>0)}function w(B,O,I){return(O.y-B.y)*(I.x-O.x)-(O.x-B.x)*(I.y-O.y)}function S(B,O){return B.x===O.x&&B.y===O.y}function E(B,O,I,N){var U=b(w(B,O,I)),W=b(w(B,O,N)),Q=b(w(I,N,B)),ue=b(w(I,N,O));return!!(U!==W&&Q!==ue||U===0&&m(B,I,O)||W===0&&m(B,N,O)||Q===0&&m(I,B,N)||ue===0&&m(I,O,N))}function m(B,O,I){return O.x<=Math.max(B.x,I.x)&&O.x>=Math.min(B.x,I.x)&&O.y<=Math.max(B.y,I.y)&&O.y>=Math.min(B.y,I.y)}function b(B){return B>0?1:B<0?-1:0}function d(B,O){var I=B;do{if(I.i!==B.i&&I.next.i!==B.i&&I.i!==O.i&&I.next.i!==O.i&&E(I,I.next,B,O))return!0;I=I.next}while(I!==B);return!1}function u(B,O){return w(B.prev,B,B.next)<0?w(B,O,B.next)>=0&&w(B,B.prev,O)>=0:w(B,O,B.prev)<0||w(B,B.next,O)<0}function y(B,O){var I=B,N=!1,U=(B.x+O.x)/2,W=(B.y+O.y)/2;do I.y>W!=I.next.y>W&&I.next.y!==I.y&&U<(I.next.x-I.x)*(W-I.y)/(I.next.y-I.y)+I.x&&(N=!N),I=I.next;while(I!==B);return N}function f(B,O){var I=new z(B.i,B.x,B.y),N=new z(O.i,O.x,O.y),U=B.next,W=O.prev;return B.next=O,O.prev=B,I.next=U,U.prev=I,N.next=I,I.prev=N,W.next=N,N.prev=W,N}function P(B,O,I,N){var U=new z(B,O,I);return N?(U.next=N.next,U.prev=N,N.next.prev=U,N.next=U):(U.prev=U,U.next=U),U}function L(B){B.next.prev=B.prev,B.prev.next=B.next,B.prevZ&&(B.prevZ.nextZ=B.nextZ),B.nextZ&&(B.nextZ.prevZ=B.prevZ)}function z(B,O,I){this.i=B,this.x=O,this.y=I,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}g.deviation=function(B,O,I,N){var U=O&&O.length,W=U?O[0]*I:B.length,Q=Math.abs(F(B,0,W,I));if(U)for(var ue=0,se=O.length;ue0&&(N+=B[U-1].length,I.holes.push(N))}return I}}}),$U=Ye({"node_modules/array-normalize/index.js"(X,H){"use strict";var g=d0();H.exports=x;function x(A,M,e){if(!A||A.length==null)throw Error("Argument should be an array");M==null&&(M=1),e==null&&(e=g(A,M));for(var t=0;t-1}}}),G5=Ye({"node_modules/es5-ext/string/#/contains/index.js"(X,H){"use strict";H.exports=fj()()?String.prototype.contains:hj()}}),rm=Ye({"node_modules/d/index.js"(X,H){"use strict";var g=g0(),x=q5(),A=yT(),M=H5(),e=G5(),t=H.exports=function(r,o){var a,i,n,s,c;return arguments.length<2||typeof r!="string"?(s=o,o=r,r=null):s=arguments[2],g(r)?(a=e.call(r,"c"),i=e.call(r,"e"),n=e.call(r,"w")):(a=n=!0,i=!1),c={value:o,configurable:a,enumerable:i,writable:n},s?A(M(s),c):c};t.gs=function(r,o,a){var i,n,s,c;return typeof r!="string"?(s=a,a=o,o=r,r=null):s=arguments[3],g(o)?x(o)?g(a)?x(a)||(s=a,a=void 0):a=void 0:(s=o,o=a=void 0):o=void 0,g(r)?(i=e.call(r,"c"),n=e.call(r,"e")):(i=!0,n=!1),c={get:o,set:a,configurable:i,enumerable:n},s?A(M(s),c):c}}}),_x=Ye({"node_modules/es5-ext/function/is-arguments.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call(function(){return arguments}());H.exports=function(A){return g.call(A)===x}}}),xx=Ye({"node_modules/es5-ext/string/is-string.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call("");H.exports=function(A){return typeof A=="string"||A&&typeof A=="object"&&(A instanceof String||g.call(A)===x)||!1}}}),pj=Ye({"node_modules/ext/global-this/is-implemented.js"(X,H){"use strict";H.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}}}),dj=Ye({"node_modules/ext/global-this/implementation.js"(X,H){var g=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};H.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return g()}try{return __global__||g()}finally{delete Object.prototype.__global__}}()}}),bx=Ye({"node_modules/ext/global-this/index.js"(X,H){"use strict";H.exports=pj()()?globalThis:dj()}}),vj=Ye({"node_modules/es6-symbol/is-implemented.js"(X,H){"use strict";var g=bx(),x={object:!0,symbol:!0};H.exports=function(){var A=g.Symbol,M;if(typeof A!="function")return!1;M=A("test symbol");try{String(M)}catch{return!1}return!(!x[typeof A.iterator]||!x[typeof A.toPrimitive]||!x[typeof A.toStringTag])}}}),mj=Ye({"node_modules/es6-symbol/is-symbol.js"(X,H){"use strict";H.exports=function(g){return g?typeof g=="symbol"?!0:!g.constructor||g.constructor.name!=="Symbol"?!1:g[g.constructor.toStringTag]==="Symbol":!1}}}),W5=Ye({"node_modules/es6-symbol/validate-symbol.js"(X,H){"use strict";var g=mj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not a symbol");return x}}}),gj=Ye({"node_modules/es6-symbol/lib/private/generate-name.js"(X,H){"use strict";var g=rm(),x=Object.create,A=Object.defineProperty,M=Object.prototype,e=x(null);H.exports=function(t){for(var r=0,o,a;e[t+(r||"")];)++r;return t+=r||"",e[t]=!0,o="@@"+t,A(M,o,g.gs(null,function(i){a||(a=!0,A(this,o,g(i)),a=!1)})),o}}}),yj=Ye({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(X,H){"use strict";var g=rm(),x=bx().Symbol;H.exports=function(A){return Object.defineProperties(A,{hasInstance:g("",x&&x.hasInstance||A("hasInstance")),isConcatSpreadable:g("",x&&x.isConcatSpreadable||A("isConcatSpreadable")),iterator:g("",x&&x.iterator||A("iterator")),match:g("",x&&x.match||A("match")),replace:g("",x&&x.replace||A("replace")),search:g("",x&&x.search||A("search")),species:g("",x&&x.species||A("species")),split:g("",x&&x.split||A("split")),toPrimitive:g("",x&&x.toPrimitive||A("toPrimitive")),toStringTag:g("",x&&x.toStringTag||A("toStringTag")),unscopables:g("",x&&x.unscopables||A("unscopables"))})}}}),_j=Ye({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(X,H){"use strict";var g=rm(),x=W5(),A=Object.create(null);H.exports=function(M){return Object.defineProperties(M,{for:g(function(e){return A[e]?A[e]:A[e]=M(String(e))}),keyFor:g(function(e){var t;x(e);for(t in A)if(A[t]===e)return t})})}}}),xj=Ye({"node_modules/es6-symbol/polyfill.js"(X,H){"use strict";var g=rm(),x=W5(),A=bx().Symbol,M=gj(),e=yj(),t=_j(),r=Object.create,o=Object.defineProperties,a=Object.defineProperty,i,n,s;if(typeof A=="function")try{String(A()),s=!0}catch{}else A=null;n=function(h){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return i(h)},H.exports=i=function c(h){var v;if(this instanceof c)throw new TypeError("Symbol is not a constructor");return s?A(h):(v=r(n.prototype),h=h===void 0?"":String(h),o(v,{__description__:g("",h),__name__:g("",M(h))}))},e(i),t(i),o(n.prototype,{constructor:g(i),toString:g("",function(){return this.__name__})}),o(i.prototype,{toString:g(function(){return"Symbol ("+x(this).__description__+")"}),valueOf:g(function(){return x(this)})}),a(i.prototype,i.toPrimitive,g("",function(){var c=x(this);return typeof c=="symbol"?c:c.toString()})),a(i.prototype,i.toStringTag,g("c","Symbol")),a(n.prototype,i.toStringTag,g("c",i.prototype[i.toStringTag])),a(n.prototype,i.toPrimitive,g("c",i.prototype[i.toPrimitive]))}}),yg=Ye({"node_modules/es6-symbol/index.js"(X,H){"use strict";H.exports=vj()()?bx().Symbol:xj()}}),bj=Ye({"node_modules/es5-ext/array/#/clear.js"(X,H){"use strict";var g=tm();H.exports=function(){return g(this).length=0,this}}}),k1=Ye({"node_modules/es5-ext/object/valid-callable.js"(X,H){"use strict";H.exports=function(g){if(typeof g!="function")throw new TypeError(g+" is not a function");return g}}}),wj=Ye({"node_modules/type/string/coerce.js"(X,H){"use strict";var g=g0(),x=gT(),A=Object.prototype.toString;H.exports=function(M){if(!g(M))return null;if(x(M)){var e=M.toString;if(typeof e!="function"||e===A)return null}try{return""+M}catch{return null}}}}),Tj=Ye({"node_modules/type/lib/safe-to-string.js"(X,H){"use strict";H.exports=function(g){try{return g.toString()}catch{try{return String(g)}catch{return null}}}}}),Aj=Ye({"node_modules/type/lib/to-short-string.js"(X,H){"use strict";var g=Tj(),x=/[\n\r\u2028\u2029]/g;H.exports=function(A){var M=g(A);return M===null?"":(M.length>100&&(M=M.slice(0,99)+"\u2026"),M=M.replace(x,function(e){switch(e){case` +`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),M)}}}),Z5=Ye({"node_modules/type/lib/resolve-exception.js"(X,H){"use strict";var g=g0(),x=gT(),A=wj(),M=Aj(),e=function(t,r){return t.replace("%v",M(r))};H.exports=function(t,r,o){if(!x(o))throw new TypeError(e(r,t));if(!g(t)){if("default"in o)return o.default;if(o.isOptional)return null}var a=A(o.errorMessage);throw g(a)||(a=r),new TypeError(e(a,t))}}}),Sj=Ye({"node_modules/type/value/ensure.js"(X,H){"use strict";var g=Z5(),x=g0();H.exports=function(A){return x(A)?A:g(A,"Cannot use %v",arguments[1])}}}),Mj=Ye({"node_modules/type/plain-function/ensure.js"(X,H){"use strict";var g=Z5(),x=q5();H.exports=function(A){return x(A)?A:g(A,"%v is not a plain function",arguments[1])}}}),Ej=Ye({"node_modules/es5-ext/array/from/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Array.from,x,A;return typeof g!="function"?!1:(x=["raz","dwa"],A=g(x),!!(A&&A!==x&&A[1]==="dwa"))}}}),kj=Ye({"node_modules/es5-ext/function/is-function.js"(X,H){"use strict";var g=Object.prototype.toString,x=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);H.exports=function(A){return typeof A=="function"&&x(g.call(A))}}}),Cj=Ye({"node_modules/es5-ext/math/sign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Math.sign;return typeof g!="function"?!1:g(10)===1&&g(-20)===-1}}}),Lj=Ye({"node_modules/es5-ext/math/sign/shim.js"(X,H){"use strict";H.exports=function(g){return g=Number(g),isNaN(g)||g===0?g:g>0?1:-1}}}),Pj=Ye({"node_modules/es5-ext/math/sign/index.js"(X,H){"use strict";H.exports=Cj()()?Math.sign:Lj()}}),Ij=Ye({"node_modules/es5-ext/number/to-integer.js"(X,H){"use strict";var g=Pj(),x=Math.abs,A=Math.floor;H.exports=function(M){return isNaN(M)?0:(M=Number(M),M===0||!isFinite(M)?M:g(M)*A(x(M)))}}}),Rj=Ye({"node_modules/es5-ext/number/to-pos-integer.js"(X,H){"use strict";var g=Ij(),x=Math.max;H.exports=function(A){return x(0,g(A))}}}),Dj=Ye({"node_modules/es5-ext/array/from/shim.js"(X,H){"use strict";var g=yg().iterator,x=_x(),A=kj(),M=Rj(),e=k1(),t=tm(),r=gg(),o=xx(),a=Array.isArray,i=Function.prototype.call,n={configurable:!0,enumerable:!0,writable:!0,value:null},s=Object.defineProperty;H.exports=function(c){var h=arguments[1],v=arguments[2],p,T,l,_,w,S,E,m,b,d;if(c=Object(t(c)),r(h)&&e(h),!this||this===Array||!A(this)){if(!h){if(x(c))return w=c.length,w!==1?Array.apply(null,c):(_=new Array(1),_[0]=c[0],_);if(a(c)){for(_=new Array(w=c.length),T=0;T=55296&&S<=56319&&(d+=c[++T])),d=h?i.call(h,v,d,l):d,p?(n.value=d,s(_,l,n)):_[l]=d,++l;w=l}}if(w===void 0)for(w=M(c.length),p&&(_=new p(w)),T=0;T=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){o(this,"__redo__",e("c",[n]));return}this.__redo__.forEach(function(s,c){s>=n&&(this.__redo__[c]=++s)},this),this.__redo__.push(n)}}),_onDelete:e(function(n){var s;n>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(s=this.__redo__.indexOf(n),s!==-1&&this.__redo__.splice(s,1),this.__redo__.forEach(function(c,h){c>n&&(this.__redo__[h]=--c)},this)))}),_onClear:e(function(){this.__redo__&&g.call(this.__redo__),this.__nextIndex__=0})}))),o(i.prototype,r.iterator,e(function(){return this}))}}),jj=Ye({"node_modules/es6-iterator/array.js"(X,H){"use strict";var g=mT(),x=G5(),A=rm(),M=yg(),e=X5(),t=Object.defineProperty,r;r=H.exports=function(o,a){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");e.call(this,o),a?x.call(a,"key+value")?a="key+value":x.call(a,"key")?a="key":a="value":a="value",t(this,"__kind__",A("",a))},g&&g(r,e),delete r.prototype.constructor,r.prototype=Object.create(e.prototype,{_resolve:A(function(o){return this.__kind__==="value"?this.__list__[o]:this.__kind__==="key+value"?[o,this.__list__[o]]:o})}),t(r.prototype,M.toStringTag,A("c","Array Iterator"))}}),Vj=Ye({"node_modules/es6-iterator/string.js"(X,H){"use strict";var g=mT(),x=rm(),A=yg(),M=X5(),e=Object.defineProperty,t;t=H.exports=function(r){if(!(this instanceof t))throw new TypeError("Constructor requires 'new'");r=String(r),M.call(this,r),e(this,"__length__",x("",r.length))},g&&g(t,M),delete t.prototype.constructor,t.prototype=Object.create(M.prototype,{_next:x(function(){if(this.__list__){if(this.__nextIndex__=55296&&a<=56319?o+this.__list__[this.__nextIndex__++]:o)})}),e(t.prototype,A.toStringTag,x("c","String Iterator"))}}),qj=Ye({"node_modules/es6-iterator/is-iterable.js"(X,H){"use strict";var g=_x(),x=gg(),A=xx(),M=yg().iterator,e=Array.isArray;H.exports=function(t){return x(t)?e(t)||A(t)||g(t)?!0:typeof t[M]=="function":!1}}}),Hj=Ye({"node_modules/es6-iterator/valid-iterable.js"(X,H){"use strict";var g=qj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not iterable");return x}}}),Y5=Ye({"node_modules/es6-iterator/get.js"(X,H){"use strict";var g=_x(),x=xx(),A=jj(),M=Vj(),e=Hj(),t=yg().iterator;H.exports=function(r){return typeof e(r)[t]=="function"?r[t]():g(r)?new A(r):x(r)?new M(r):new A(r)}}}),Gj=Ye({"node_modules/es6-iterator/for-of.js"(X,H){"use strict";var g=_x(),x=k1(),A=xx(),M=Y5(),e=Array.isArray,t=Function.prototype.call,r=Array.prototype.some;H.exports=function(o,a){var i,n=arguments[2],s,c,h,v,p,T,l;if(e(o)||g(o)?i="array":A(o)?i="string":o=M(o),x(a),c=function(){h=!0},i==="array"){r.call(o,function(_){return t.call(a,n,_,c),h});return}if(i==="string"){for(p=o.length,v=0;v=55296&&l<=56319&&(T+=o[++v])),t.call(a,n,T,c),!h);++v);return}for(s=o.next();!s.done;){if(t.call(a,n,s.value,c),h)return;s=o.next()}}}}),Wj=Ye({"node_modules/es6-weak-map/is-native-implemented.js"(X,H){"use strict";H.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()}}),Zj=Ye({"node_modules/es6-weak-map/polyfill.js"(X,H){"use strict";var g=gg(),x=mT(),A=rj(),M=tm(),e=aj(),t=rm(),r=Y5(),o=Gj(),a=yg().toStringTag,i=Wj(),n=Array.isArray,s=Object.defineProperty,c=Object.prototype.hasOwnProperty,h=Object.getPrototypeOf,v;H.exports=v=function(){var p=arguments[0],T;if(!(this instanceof v))throw new TypeError("Constructor requires 'new'");return T=i&&x&&WeakMap!==v?x(new WeakMap,h(this)):this,g(p)&&(n(p)||(p=r(p))),s(T,"__weakMapData__",t("c","$weakMap$"+e())),p&&o(p,function(l){M(l),T.set(l[0],l[1])}),T},i&&(x&&x(v,WeakMap),v.prototype=Object.create(WeakMap.prototype,{constructor:t(v)})),Object.defineProperties(v.prototype,{delete:t(function(p){return c.call(A(p),this.__weakMapData__)?(delete p[this.__weakMapData__],!0):!1}),get:t(function(p){if(c.call(A(p),this.__weakMapData__))return p[this.__weakMapData__]}),has:t(function(p){return c.call(A(p),this.__weakMapData__)}),set:t(function(p,T){return s(A(p),this.__weakMapData__,t("c",T)),this}),toString:t(function(){return"[object WeakMap]"})}),s(v.prototype,a,t("c","WeakMap"))}}),K5=Ye({"node_modules/es6-weak-map/index.js"(X,H){"use strict";H.exports=QU()()?WeakMap:Zj()}}),Xj=Ye({"node_modules/array-find-index/index.js"(X,H){"use strict";H.exports=function(g,x,A){if(typeof Array.prototype.findIndex=="function")return g.findIndex(x,A);if(typeof x!="function")throw new TypeError("predicate must be a function");var M=Object(g),e=M.length;if(e===0)return-1;for(var t=0;t 0. && baClipping < length(normalWidth * endBotJoin)) { + //handle miter clipping + bTopCoord -= normalWidth * endTopJoin; + bTopCoord += normalize(endTopJoin * normalWidth) * baClipping; + } + + if (nextReverse) { + //make join rectangular + vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5; + float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.); + bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5; + bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5; + } + else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) { + //handle miter clipping + aBotCoord -= normalWidth * startBotJoin; + aBotCoord += normalize(startBotJoin * normalWidth) * abClipping; + } + + vec2 aTopPosition = (aTopCoord) * adjustedScale + translate; + vec2 aBotPosition = (aBotCoord) * adjustedScale + translate; + + vec2 bTopPosition = (bTopCoord) * adjustedScale + translate; + vec2 bBotPosition = (bBotCoord) * adjustedScale + translate; + + //position is normalized 0..1 coord on the screen + vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd; + + startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy; + endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy; + + gl_Position = vec4(position * 2.0 - 1.0, depth, 1); + + enableStartMiter = step(dot(currTangent, prevTangent), .5); + enableEndMiter = step(dot(currTangent, nextTangent), .5); + + //bevel miter cutoffs + if (miterMode == 1.) { + if (enableStartMiter == 1.) { + vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5; + startCutoff = vec4(aCoord, aCoord); + startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio; + startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + startCutoff += viewport.xyxy; + startCutoff += startMiterWidth.xyxy; + } + + if (enableEndMiter == 1.) { + vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5; + endCutoff = vec4(bCoord, bCoord); + endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio; + endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + endCutoff += viewport.xyxy; + endCutoff += endMiterWidth.xyxy; + } + } + + //round miter cutoffs + else if (miterMode == 2.) { + if (enableStartMiter == 1.) { + vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5; + startCutoff = vec4(aCoord, aCoord); + startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio; + startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + startCutoff += viewport.xyxy; + startCutoff += startMiterWidth.xyxy; + } + + if (enableEndMiter == 1.) { + vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5; + endCutoff = vec4(bCoord, bCoord); + endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio; + endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw; + endCutoff += viewport.xyxy; + endCutoff += endMiterWidth.xyxy; + } + } +} +`,l=` +precision highp float; + +uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode; +uniform sampler2D dashTexture; + +varying vec4 fragColor; +varying vec2 tangent; +varying vec4 startCutoff, endCutoff; +varying vec2 startCoord, endCoord; +varying float enableStartMiter, enableEndMiter; + +float distToLine(vec2 p, vec2 a, vec2 b) { + vec2 diff = b - a; + vec2 perp = normalize(vec2(-diff.y, diff.x)); + return dot(p - a, perp); +} + +void main() { + float alpha = 1., distToStart, distToEnd; + float cutoff = thickness * .5; + + //bevel miter + if (miterMode == 1.) { + if (enableStartMiter == 1.) { + distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw); + if (distToStart < -1.) { + discard; + return; + } + alpha *= min(max(distToStart + 1., 0.), 1.); + } + + if (enableEndMiter == 1.) { + distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw); + if (distToEnd < -1.) { + discard; + return; + } + alpha *= min(max(distToEnd + 1., 0.), 1.); + } + } + + // round miter + else if (miterMode == 2.) { + if (enableStartMiter == 1.) { + distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw); + if (distToStart < 0.) { + float radius = length(gl_FragCoord.xy - startCoord); + + if(radius > cutoff + .5) { + discard; + return; + } + + alpha -= smoothstep(cutoff - .5, cutoff + .5, radius); + } + } + + if (enableEndMiter == 1.) { + distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw); + if (distToEnd < 0.) { + float radius = length(gl_FragCoord.xy - endCoord); + + if(radius > cutoff + .5) { + discard; + return; + } + + alpha -= smoothstep(cutoff - .5, cutoff + .5, radius); + } + } + } + + float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25; + float dash = texture2D(dashTexture, vec2(t, .5)).r; + + gl_FragColor = fragColor; + gl_FragColor.a *= alpha * opacity * dash; +} +`;H.exports=_;function _(w,S){if(!(this instanceof _))return new _(w,S);if(typeof w=="function"?(S||(S={}),S.regl=w):S=w,S.length&&(S.positions=S),w=S.regl,!w.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=w._gl,this.regl=w,this.passes=[],this.shaders=_.shaders.has(w)?_.shaders.get(w):_.shaders.set(w,_.createShaders(w)).get(w),this.update(S)}_.dashMult=2,_.maxPatternLength=256,_.precisionThreshold=3e6,_.maxPoints=1e4,_.maxLines=2048,_.shaders=new i,_.createShaders=function(w){let S=w.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),E={primitive:"triangle strip",instances:w.prop("count"),count:4,offset:0,uniforms:{miterMode:(u,y)=>y.join==="round"?2:1,miterLimit:w.prop("miterLimit"),scale:w.prop("scale"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),thickness:w.prop("thickness"),dashTexture:w.prop("dashTexture"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),dashLength:w.prop("dashLength"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight],depth:w.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(u,y)=>!y.overlay},stencil:{enable:!1},scissor:{enable:!0,box:w.prop("viewport")},viewport:w.prop("viewport")},m=w(A({vert:c,frag:h,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},E)),b;try{b=w(A({cull:{enable:!0,face:"back"},vert:T,frag:l,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aColor:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:w.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},E))}catch{b=m}return{fill:w({primitive:"triangle",elements:(u,y)=>y.triangles,offset:0,vert:v,frag:p,uniforms:{scale:w.prop("scale"),color:w.prop("fill"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight]},attributes:{position:{buffer:w.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8}},blend:E.blend,depth:{enable:!1},scissor:E.scissor,stencil:E.stencil,viewport:E.viewport}),rect:m,miter:b}},_.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},_.prototype.render=function(...w){w.length&&this.update(...w),this.draw()},_.prototype.draw=function(...w){return(w.length?w:this.passes).forEach((S,E)=>{if(S&&Array.isArray(S))return this.draw(...S);typeof S=="number"&&(S=this.passes[S]),S&&S.count>1&&S.opacity&&(this.regl._refresh(),S.fill&&S.triangles&&S.triangles.length>2&&this.shaders.fill(S),S.thickness&&(S.scale[0]*S.viewport.width>_.precisionThreshold||S.scale[1]*S.viewport.height>_.precisionThreshold?this.shaders.rect(S):S.join==="rect"||!S.join&&(S.thickness<=2||S.count>=_.maxPoints)?this.shaders.rect(S):this.shaders.miter(S)))}),this},_.prototype.update=function(w){if(!w)return;w.length!=null?typeof w[0]=="number"&&(w=[{positions:w}]):Array.isArray(w)||(w=[w]);let{regl:S,gl:E}=this;if(w.forEach((b,d)=>{let u=this.passes[d];if(b!==void 0){if(b===null){this.passes[d]=null;return}if(typeof b[0]=="number"&&(b={positions:b}),b=M(b,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),u||(this.passes[d]=u={id:d,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:S.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:S.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},b=A({},_.defaults,b)),b.thickness!=null&&(u.thickness=parseFloat(b.thickness)),b.opacity!=null&&(u.opacity=parseFloat(b.opacity)),b.miterLimit!=null&&(u.miterLimit=parseFloat(b.miterLimit)),b.overlay!=null&&(u.overlay=!!b.overlay,d<_.maxLines&&(u.depth=2*(_.maxLines-1-d%_.maxLines)/_.maxLines-1)),b.join!=null&&(u.join=b.join),b.hole!=null&&(u.hole=b.hole),b.fill!=null&&(u.fill=b.fill?g(b.fill,"uint8"):null),b.viewport!=null&&(u.viewport=n(b.viewport)),u.viewport||(u.viewport=n([E.drawingBufferWidth,E.drawingBufferHeight])),b.close!=null&&(u.close=b.close),b.positions===null&&(b.positions=[]),b.positions){let P,L;if(b.positions.x&&b.positions.y){let O=b.positions.x,I=b.positions.y;L=u.count=Math.max(O.length,I.length),P=new Float64Array(L*2);for(let N=0;Nse-he),W=[],Q=0,ue=u.hole!=null?u.hole[0]:null;if(ue!=null){let se=s(U,he=>he>=ue);U=U.slice(0,se),U.push(ue)}for(let se=0;seJ-ue+(U[se]-Q)),$=t(he,G);$=$.map(J=>J+Q+(J+Q{w.colorBuffer.destroy(),w.positionBuffer.destroy(),w.dashTexture.destroy()}),this.passes.length=0,this}}}),Yj=Ye({"node_modules/regl-error2d/index.js"(X,H){"use strict";var g=d0(),x=hg(),A=B5(),M=Ev(),e=Wf(),t=v0(),{float32:r,fract32:o}=vT();H.exports=i;var a=[[1,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,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function i(n,s){if(typeof n=="function"?(s||(s={}),s.regl=n):s=n,s.length&&(s.positions=s),n=s.regl,!n.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let c=n._gl,h,v,p,T,l,_,w={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},S=[];return T=n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),v=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),p=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),_=n.buffer({usage:"static",type:"float",data:a}),d(s),h=n({vert:` + precision highp float; + + attribute vec2 position, positionFract; + attribute vec4 error; + attribute vec4 color; + + attribute vec2 direction, lineOffset, capOffset; + + uniform vec4 viewport; + uniform float lineWidth, capSize; + uniform vec2 scale, scaleFract, translate, translateFract; + + varying vec4 fragColor; + + void main() { + fragColor = color / 255.; + + vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset; + + vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw; + + vec2 position = position + dxy; + + vec2 pos = (position + translate) * scale + + (positionFract + translateFract) * scale + + (position + translate) * scaleFract + + (positionFract + translateFract) * scaleFract; + + pos += pixelOffset / viewport.zw; + + gl_Position = vec4(pos * 2. - 1., 0, 1); + } + `,frag:` + precision highp float; + + varying vec4 fragColor; + + uniform float opacity; + + void main() { + gl_FragColor = fragColor; + gl_FragColor.a *= opacity; + } + `,uniforms:{range:n.prop("range"),lineWidth:n.prop("lineWidth"),capSize:n.prop("capSize"),opacity:n.prop("opacity"),scale:n.prop("scale"),translate:n.prop("translate"),scaleFract:n.prop("scaleFract"),translateFract:n.prop("translateFract"),viewport:(y,f)=>[f.viewport.x,f.viewport.y,y.viewportWidth,y.viewportHeight]},attributes:{color:{buffer:T,offset:(y,f)=>f.offset*4,divisor:1},position:{buffer:v,offset:(y,f)=>f.offset*8,divisor:1},positionFract:{buffer:p,offset:(y,f)=>f.offset*8,divisor:1},error:{buffer:l,offset:(y,f)=>f.offset*16,divisor:1},direction:{buffer:_,stride:24,offset:0},lineOffset:{buffer:_,stride:24,offset:8},capOffset:{buffer:_,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:n.prop("viewport")},viewport:n.prop("viewport"),stencil:!1,instances:n.prop("count"),count:a.length}),e(E,{update:d,draw:m,destroy:u,regl:n,gl:c,canvas:c.canvas,groups:S}),E;function E(y){y?d(y):y===null&&u(),m()}function m(y){if(typeof y=="number")return b(y);y&&!Array.isArray(y)&&(y=[y]),n._refresh(),S.forEach((f,P)=>{if(f){if(y&&(y[P]?f.draw=!0:f.draw=!1),!f.draw){f.draw=!0;return}b(P)}})}function b(y){typeof y=="number"&&(y=S[y]),y!=null&&y&&y.count&&y.color&&y.opacity&&y.positions&&y.positions.length>1&&(y.scaleRatio=[y.scale[0]*y.viewport.width,y.scale[1]*y.viewport.height],h(y),y.after&&y.after(y))}function d(y){if(!y)return;y.length!=null?typeof y[0]=="number"&&(y=[{positions:y}]):Array.isArray(y)||(y=[y]);let f=0,P=0;if(E.groups=S=y.map((F,B)=>{let O=S[B];if(F)typeof F=="function"?F={after:F}:typeof F[0]=="number"&&(F={positions:F});else return O;return F=M(F,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),O||(S[B]=O={id:B,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},F=e({},w,F)),A(O,F,[{lineWidth:I=>+I*.5,capSize:I=>+I*.5,opacity:parseFloat,errors:I=>(I=t(I),P+=I.length,I),positions:(I,N)=>(I=t(I,"float64"),N.count=Math.floor(I.length/2),N.bounds=g(I,2),N.offset=f,f+=N.count,I)},{color:(I,N)=>{let U=N.count;if(I||(I="transparent"),!Array.isArray(I)||typeof I[0]=="number"){let Q=I;I=Array(U);for(let ue=0;ue{let W=N.bounds;return I||(I=W),N.scale=[1/(I[2]-I[0]),1/(I[3]-I[1])],N.translate=[-I[0],-I[1]],N.scaleFract=o(N.scale),N.translateFract=o(N.translate),I},viewport:I=>{let N;return Array.isArray(I)?N={x:I[0],y:I[1],width:I[2]-I[0],height:I[3]-I[1]}:I?(N={x:I.x||I.left||0,y:I.y||I.top||0},I.right?N.width=I.right-N.x:N.width=I.w||I.width||0,I.bottom?N.height=I.bottom-N.y:N.height=I.h||I.height||0):N={x:0,y:0,width:c.drawingBufferWidth,height:c.drawingBufferHeight},N}}]),O}),f||P){let F=S.reduce((N,U,W)=>N+(U?U.count:0),0),B=new Float64Array(F*2),O=new Uint8Array(F*4),I=new Float32Array(F*4);S.forEach((N,U)=>{if(!N)return;let{positions:W,count:Q,offset:ue,color:se,errors:he}=N;Q&&(O.set(se,ue*4),I.set(he,ue*4),B.set(W,ue*2))});var L=r(B);v(L);var z=o(B,L);p(z),T(O),l(I)}}function u(){v.destroy(),p.destroy(),T.destroy(),l.destroy(),_.destroy()}}}}),Kj=Ye({"node_modules/unquote/index.js"(X,H){var g=/[\'\"]/;H.exports=function(A){return A?(g.test(A.charAt(0))&&(A=A.substr(1)),g.test(A.charAt(A.length-1))&&(A=A.substr(0,A.length-1)),A):""}}}),$5=Ye({"node_modules/css-global-keywords/index.json"(){}}),Q5=Ye({"node_modules/css-system-font-keywords/index.json"(){}}),ek=Ye({"node_modules/css-font-weight-keywords/index.json"(){}}),tk=Ye({"node_modules/css-font-style-keywords/index.json"(){}}),rk=Ye({"node_modules/css-font-stretch-keywords/index.json"(){}}),Jj=Ye({"node_modules/parenthesis/index.js"(X,H){"use strict";function g(M,e){if(typeof M!="string")return[M];var t=[M];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],o=e.escape||"___",a=!!e.flat;r.forEach(function(s){var c=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),h=[];function v(p,T,l){var _=t.push(p.slice(s[0].length,-s[1].length))-1;return h.push(_),o+_+o}t.forEach(function(p,T){for(var l,_=0;p!=l;)if(l=p,p=p.replace(c,v),_++>1e4)throw Error("References have circular dependency. Please, check them.");t[T]=p}),h=h.reverse(),t=t.map(function(p){return h.forEach(function(T){p=p.replace(new RegExp("(\\"+o+T+"\\"+o+")","g"),s[0]+"$1"+s[1])}),p})});var i=new RegExp("\\"+o+"([0-9]+)\\"+o);function n(s,c,h){for(var v=[],p,T=0;p=i.exec(s);){if(T++>1e4)throw Error("Circular references in parenthesis");v.push(s.slice(0,p.index)),v.push(n(c[p[1]],c)),s=s.slice(p.index+p[0].length)}return v.push(s),v}return a?t:n(t[0],t)}function x(M,e){if(e&&e.flat){var t=e&&e.escape||"___",r=M[0],o;if(!r)return"";for(var a=new RegExp("\\"+t+"([0-9]+)\\"+t),i=0;r!=o;){if(i++>1e4)throw Error("Circular references in "+M);o=r,r=r.replace(a,n)}return r}return M.reduce(function s(c,h){return Array.isArray(h)&&(h=h.reduce(s,"")),c+h},"");function n(s,c){if(M[c]==null)throw Error("Reference "+c+"is undefined");return M[c]}}function A(M,e){return Array.isArray(M)?x(M,e):g(M,e)}A.parse=g,A.stringify=x,H.exports=A}}),$j=Ye({"node_modules/string-split-by/index.js"(X,H){"use strict";var g=Jj();H.exports=function(A,M,e){if(A==null)throw Error("First argument should be a string");if(M==null)throw Error("Separator should be a string or a RegExp");e?(typeof e=="string"||Array.isArray(e))&&(e={ignore:e}):e={},e.escape==null&&(e.escape=!0),e.ignore==null?e.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof e.ignore=="string"&&(e.ignore=[e.ignore]),e.ignore=e.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var t=g.parse(A,{flat:!0,brackets:e.ignore}),r=t[0],o=r.split(M);if(e.escape){for(var a=[],i=0;i1&&ra===Ta&&(ra==='"'||ra==="'"))return['"'+r(Qt.substr(1,Qt.length-2))+'"'];var si=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Qt);if(si)return o(Qt.substr(0,si.index)).concat(o(si[1])).concat(o(Qt.substr(si.index+si[0].length)));var wi=Qt.split(".");if(wi.length===1)return['"'+r(Qt)+'"'];for(var xi=[],bi=0;bi"u"?1:window.devicePixelRatio,Gi=!1,Io={},nn=function(ui){},on=function(){};if(typeof ra=="string"?Ta=document.querySelector(ra):typeof ra=="object"&&(_(ra)?Ta=ra:w(ra)?(xi=ra,wi=xi.canvas):("gl"in ra?xi=ra.gl:"canvas"in ra?wi=E(ra.canvas):"container"in ra&&(si=E(ra.container)),"attributes"in ra&&(bi=ra.attributes),"extensions"in ra&&(Fi=S(ra.extensions)),"optionalExtensions"in ra&&(cn=S(ra.optionalExtensions)),"onDone"in ra&&(nn=ra.onDone),"profile"in ra&&(Gi=!!ra.profile),"pixelRatio"in ra&&(fn=+ra.pixelRatio),"cachedCode"in ra&&(Io=ra.cachedCode))),Ta&&(Ta.nodeName.toLowerCase()==="canvas"?wi=Ta:si=Ta),!xi){if(!wi){var Oi=T(si||document.body,nn,fn);if(!Oi)return null;wi=Oi.canvas,on=Oi.onDestroy}bi.premultipliedAlpha===void 0&&(bi.premultipliedAlpha=!0),xi=l(wi,bi)}return xi?{gl:xi,canvas:wi,container:si,extensions:Fi,optionalExtensions:cn,pixelRatio:fn,profile:Gi,cachedCode:Io,onDone:nn,onDestroy:on}:(on(),nn("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function b(Qt,ra){var Ta={};function si(bi){var Fi=bi.toLowerCase(),cn;try{cn=Ta[Fi]=Qt.getExtension(Fi)}catch{}return!!cn}for(var wi=0;wi65535)<<4,Qt>>>=ra,Ta=(Qt>255)<<3,Qt>>>=Ta,ra|=Ta,Ta=(Qt>15)<<2,Qt>>>=Ta,ra|=Ta,Ta=(Qt>3)<<1,Qt>>>=Ta,ra|=Ta,ra|Qt>>1}function I(){var Qt=d(8,function(){return[]});function ra(xi){var bi=B(xi),Fi=Qt[O(bi)>>2];return Fi.length>0?Fi.pop():new ArrayBuffer(bi)}function Ta(xi){Qt[O(xi.byteLength)>>2].push(xi)}function si(xi,bi){var Fi=null;switch(xi){case u:Fi=new Int8Array(ra(bi),0,bi);break;case y:Fi=new Uint8Array(ra(bi),0,bi);break;case f:Fi=new Int16Array(ra(2*bi),0,bi);break;case P:Fi=new Uint16Array(ra(2*bi),0,bi);break;case L:Fi=new Int32Array(ra(4*bi),0,bi);break;case z:Fi=new Uint32Array(ra(4*bi),0,bi);break;case F:Fi=new Float32Array(ra(4*bi),0,bi);break;default:return null}return Fi.length!==bi?Fi.subarray(0,bi):Fi}function wi(xi){Ta(xi.buffer)}return{alloc:ra,free:Ta,allocType:si,freeType:wi}}var N=I();N.zero=I();var U=3408,W=3410,Q=3411,ue=3412,se=3413,he=3414,G=3415,$=33901,J=33902,Z=3379,re=3386,ne=34921,j=36347,ee=36348,ie=35661,fe=35660,be=34930,Ae=36349,Be=34076,Ie=34024,Ze=7936,at=7937,it=7938,et=35724,lt=34047,Me=36063,ge=34852,ce=3553,ze=34067,tt=34069,nt=33984,Qe=6408,Ct=5126,St=5121,Ot=36160,jt=36053,ur=36064,ar=16384,Cr=function(Qt,ra){var Ta=1;ra.ext_texture_filter_anisotropic&&(Ta=Qt.getParameter(lt));var si=1,wi=1;ra.webgl_draw_buffers&&(si=Qt.getParameter(ge),wi=Qt.getParameter(Me));var xi=!!ra.oes_texture_float;if(xi){var bi=Qt.createTexture();Qt.bindTexture(ce,bi),Qt.texImage2D(ce,0,Qe,1,1,0,Qe,Ct,null);var Fi=Qt.createFramebuffer();if(Qt.bindFramebuffer(Ot,Fi),Qt.framebufferTexture2D(Ot,ur,ce,bi,0),Qt.bindTexture(ce,null),Qt.checkFramebufferStatus(Ot)!==jt)xi=!1;else{Qt.viewport(0,0,1,1),Qt.clearColor(1,0,0,1),Qt.clear(ar);var cn=N.allocType(Ct,4);Qt.readPixels(0,0,1,1,Qe,Ct,cn),Qt.getError()?xi=!1:(Qt.deleteFramebuffer(Fi),Qt.deleteTexture(bi),xi=cn[0]===1),N.freeType(cn)}}var fn=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Gi=!0;if(!fn){var Io=Qt.createTexture(),nn=N.allocType(St,36);Qt.activeTexture(nt),Qt.bindTexture(ze,Io),Qt.texImage2D(tt,0,Qe,3,3,0,Qe,St,nn),N.freeType(nn),Qt.bindTexture(ze,null),Qt.deleteTexture(Io),Gi=!Qt.getError()}return{colorBits:[Qt.getParameter(W),Qt.getParameter(Q),Qt.getParameter(ue),Qt.getParameter(se)],depthBits:Qt.getParameter(he),stencilBits:Qt.getParameter(G),subpixelBits:Qt.getParameter(U),extensions:Object.keys(ra).filter(function(on){return!!ra[on]}),maxAnisotropic:Ta,maxDrawbuffers:si,maxColorAttachments:wi,pointSizeDims:Qt.getParameter($),lineWidthDims:Qt.getParameter(J),maxViewportDims:Qt.getParameter(re),maxCombinedTextureUnits:Qt.getParameter(ie),maxCubeMapSize:Qt.getParameter(Be),maxRenderbufferSize:Qt.getParameter(Ie),maxTextureUnits:Qt.getParameter(be),maxTextureSize:Qt.getParameter(Z),maxAttributes:Qt.getParameter(ne),maxVertexUniforms:Qt.getParameter(j),maxVertexTextureUnits:Qt.getParameter(fe),maxVaryingVectors:Qt.getParameter(ee),maxFragmentUniforms:Qt.getParameter(Ae),glsl:Qt.getParameter(et),renderer:Qt.getParameter(at),vendor:Qt.getParameter(Ze),version:Qt.getParameter(it),readFloat:xi,npotTextureCube:Gi}},vr=function(Qt){return Qt instanceof Uint8Array||Qt instanceof Uint16Array||Qt instanceof Uint32Array||Qt instanceof Int8Array||Qt instanceof Int16Array||Qt instanceof Int32Array||Qt instanceof Float32Array||Qt instanceof Float64Array||Qt instanceof Uint8ClampedArray};function _r(Qt){return!!Qt&&typeof Qt=="object"&&Array.isArray(Qt.shape)&&Array.isArray(Qt.stride)&&typeof Qt.offset=="number"&&Qt.shape.length===Qt.stride.length&&(Array.isArray(Qt.data)||vr(Qt.data))}var yt=function(Qt){return Object.keys(Qt).map(function(ra){return Qt[ra]})},Fe={shape:Te,flatten:ke};function Ke(Qt,ra,Ta){for(var si=0;si0){var _o;if(Array.isArray(Mi[0])){bn=Ma(Mi);for(var Zi=1,Ui=1;Ui0){if(typeof Zi[0]=="number"){var xn=N.allocType(qi.dtype,Zi.length);xr(xn,Zi),bn(xn,Zn),N.freeType(xn)}else if(Array.isArray(Zi[0])||vr(Zi[0])){Rn=Ma(Zi);var dn=Ga(Zi,Rn,qi.dtype);bn(dn,Zn),N.freeType(dn)}}}else if(_r(Zi)){Rn=Zi.shape;var jn=Zi.stride,Ro=0,rs=0,wn=0,oo=0;Rn.length===1?(Ro=Rn[0],rs=1,wn=jn[0],oo=0):Rn.length===2&&(Ro=Rn[0],rs=Rn[1],wn=jn[0],oo=jn[1]);var Xo=Array.isArray(Zi.data)?qi.dtype:Ut(Zi.data),os=N.allocType(Xo,Ro*rs);Zr(os,Zi.data,Ro,rs,wn,oo,Zi.offset),bn(os,Zn),N.freeType(os)}return Dn}return tn||Dn(ui),Dn._reglType="buffer",Dn._buffer=qi,Dn.subdata=_o,Ta.profile&&(Dn.stats=qi.stats),Dn.destroy=function(){nn(qi)},Dn}function Oi(){yt(xi).forEach(function(ui){ui.buffer=Qt.createBuffer(),Qt.bindBuffer(ui.type,ui.buffer),Qt.bufferData(ui.type,ui.persistentData||ui.byteLength,ui.usage)})}return Ta.profile&&(ra.getTotalBufferSize=function(){var ui=0;return Object.keys(xi).forEach(function(Mi){ui+=xi[Mi].stats.size}),ui}),{create:on,createStream:cn,destroyStream:fn,clear:function(){yt(xi).forEach(nn),Fi.forEach(nn)},getBuffer:function(ui){return ui&&ui._buffer instanceof bi?ui._buffer:null},restore:Oi,_initBuffer:Io}}var Xr=0,Ea=0,Fa=1,qa=1,ya=4,$a=4,mt={points:Xr,point:Ea,lines:Fa,line:qa,triangles:ya,triangle:$a,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},gt=0,Er=1,kr=4,br=5120,Tr=5121,Mr=5122,Fr=5123,Lr=5124,Jr=5125,oa=34963,ca=35040,kt=35044;function ir(Qt,ra,Ta,si){var wi={},xi=0,bi={uint8:Tr,uint16:Fr};ra.oes_element_index_uint&&(bi.uint32=Jr);function Fi(Oi){this.id=xi++,wi[this.id]=this,this.buffer=Oi,this.primType=kr,this.vertCount=0,this.type=0}Fi.prototype.bind=function(){this.buffer.bind()};var cn=[];function fn(Oi){var ui=cn.pop();return ui||(ui=new Fi(Ta.create(null,oa,!0,!1)._buffer)),Io(ui,Oi,ca,-1,-1,0,0),ui}function Gi(Oi){cn.push(Oi)}function Io(Oi,ui,Mi,tn,pn,qi,Dn){Oi.buffer.bind();var bn;if(ui){var _o=Dn;!Dn&&(!vr(ui)||_r(ui)&&!vr(ui.data))&&(_o=ra.oes_element_index_uint?Jr:Fr),Ta._initBuffer(Oi.buffer,ui,Mi,_o,3)}else Qt.bufferData(oa,qi,Mi),Oi.buffer.dtype=bn||Tr,Oi.buffer.usage=Mi,Oi.buffer.dimension=3,Oi.buffer.byteLength=qi;if(bn=Dn,!Dn){switch(Oi.buffer.dtype){case Tr:case br:bn=Tr;break;case Fr:case Mr:bn=Fr;break;case Jr:case Lr:bn=Jr;break;default:}Oi.buffer.dtype=bn}Oi.type=bn;var Zi=pn;Zi<0&&(Zi=Oi.buffer.byteLength,bn===Fr?Zi>>=1:bn===Jr&&(Zi>>=2)),Oi.vertCount=Zi;var Ui=tn;if(tn<0){Ui=kr;var Zn=Oi.buffer.dimension;Zn===1&&(Ui=gt),Zn===2&&(Ui=Er),Zn===3&&(Ui=kr)}Oi.primType=Ui}function nn(Oi){si.elementsCount--,delete wi[Oi.id],Oi.buffer.destroy(),Oi.buffer=null}function on(Oi,ui){var Mi=Ta.create(null,oa,!0),tn=new Fi(Mi._buffer);si.elementsCount++;function pn(qi){if(!qi)Mi(),tn.primType=kr,tn.vertCount=0,tn.type=Tr;else if(typeof qi=="number")Mi(qi),tn.primType=kr,tn.vertCount=qi|0,tn.type=Tr;else{var Dn=null,bn=kt,_o=-1,Zi=-1,Ui=0,Zn=0;Array.isArray(qi)||vr(qi)||_r(qi)?Dn=qi:("data"in qi&&(Dn=qi.data),"usage"in qi&&(bn=ka[qi.usage]),"primitive"in qi&&(_o=mt[qi.primitive]),"count"in qi&&(Zi=qi.count|0),"type"in qi&&(Zn=bi[qi.type]),"length"in qi?Ui=qi.length|0:(Ui=Zi,Zn===Fr||Zn===Mr?Ui*=2:(Zn===Jr||Zn===Lr)&&(Ui*=4))),Io(tn,Dn,bn,_o,Zi,Ui,Zn)}return pn}return pn(Oi),pn._reglType="elements",pn._elements=tn,pn.subdata=function(qi,Dn){return Mi.subdata(qi,Dn),pn},pn.destroy=function(){nn(tn)},pn}return{create:on,createStream:fn,destroyStream:Gi,getElements:function(Oi){return typeof Oi=="function"&&Oi._elements instanceof Fi?Oi._elements:null},clear:function(){yt(wi).forEach(nn)}}}var mr=new Float32Array(1),$r=new Uint32Array(mr.buffer),ma=5123;function Ba(Qt){for(var ra=N.allocType(ma,Qt.length),Ta=0;Ta>>31<<15,xi=(si<<1>>>24)-127,bi=si>>13&1023;if(xi<-24)ra[Ta]=wi;else if(xi<-14){var Fi=-14-xi;ra[Ta]=wi+(bi+1024>>Fi)}else xi>15?ra[Ta]=wi+31744:ra[Ta]=wi+(xi+15<<10)+bi}return ra}function Ca(Qt){return Array.isArray(Qt)||vr(Qt)}var da=34467,Sa=3553,Ti=34067,ai=34069,an=6408,sn=6406,Mn=6407,On=6409,$n=6410,Cn=32854,Lo=32855,Xi=36194,Jo=32819,zo=32820,as=33635,Pn=34042,go=6402,In=34041,Do=35904,Ho=35906,Qo=36193,Xn=33776,po=33777,ys=33778,Is=33779,Fs=35986,$o=35987,fi=34798,mn=35840,ol=35841,Os=35842,so=35843,Ns=36196,fs=5121,al=5123,vl=5125,ji=5126,To=10242,Yn=10243,_s=10497,Yo=33071,Nn=33648,Wl=10240,Zu=10241,ml=9728,Bu=9729,El=9984,qs=9985,Jl=9986,Nu=9987,Ic=33170,Xu=4352,Th=4353,bf=4354,Rs=34046,Yc=3317,If=37440,Zl=37441,yl=37443,oc=37444,_c=33984,Zs=[El,Jl,qs,Nu],_l=[0,On,$n,Mn,an],Bs={};Bs[On]=Bs[sn]=Bs[go]=1,Bs[In]=Bs[$n]=2,Bs[Mn]=Bs[Do]=3,Bs[an]=Bs[Ho]=4;function $s(Qt){return"[object "+Qt+"]"}var sc=$s("HTMLCanvasElement"),zl=$s("OffscreenCanvas"),Yu=$s("CanvasRenderingContext2D"),Qs=$s("ImageBitmap"),fp=$s("HTMLImageElement"),es=$s("HTMLVideoElement"),Wh=Object.keys(Le).concat([sc,zl,Yu,Qs,fp,es]),Ss=[];Ss[fs]=1,Ss[ji]=4,Ss[Qo]=2,Ss[al]=2,Ss[vl]=4;var So=[];So[Cn]=2,So[Lo]=2,So[Xi]=2,So[In]=4,So[Xn]=.5,So[po]=.5,So[ys]=1,So[Is]=1,So[Fs]=.5,So[$o]=1,So[fi]=1,So[mn]=.5,So[ol]=.25,So[Os]=.5,So[so]=.25,So[Ns]=.5;function hf(Qt){return Array.isArray(Qt)&&(Qt.length===0||typeof Qt[0]=="number")}function Ku(Qt){if(!Array.isArray(Qt))return!1;var ra=Qt.length;return!(ra===0||!Ca(Qt[0]))}function cu(Qt){return Object.prototype.toString.call(Qt)}function Zf(Qt){return cu(Qt)===sc}function Rc(Qt){return cu(Qt)===zl}function pf(Qt){return cu(Qt)===Yu}function Fl(Qt){return cu(Qt)===Qs}function lh(Qt){return cu(Qt)===fp}function Xf(Qt){return cu(Qt)===es}function Rf(Qt){if(!Qt)return!1;var ra=cu(Qt);return Wh.indexOf(ra)>=0?!0:hf(Qt)||Ku(Qt)||_r(Qt)}function Kc(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function Yf(Qt,ra){var Ta=ra.length;switch(Qt.type){case fs:case al:case vl:case ji:var si=N.allocType(Qt.type,Ta);si.set(ra),Qt.data=si;break;case Qo:Qt.data=Ba(ra);break;default:}}function uh(Qt,ra){return N.allocType(Qt.type===Qo?ji:Qt.type,ra)}function Ju(Qt,ra){Qt.type===Qo?(Qt.data=Ba(ra),N.freeType(ra)):Qt.data=ra}function Df(Qt,ra,Ta,si,wi,xi){for(var bi=Qt.width,Fi=Qt.height,cn=Qt.channels,fn=bi*Fi*cn,Gi=uh(Qt,fn),Io=0,nn=0;nn=1;)Fi+=bi*cn*cn,cn/=2;return Fi}else return bi*Ta*si}function Jc(Qt,ra,Ta,si,wi,xi,bi){var Fi={"don't care":Xu,"dont care":Xu,nice:bf,fast:Th},cn={repeat:_s,clamp:Yo,mirror:Nn},fn={nearest:ml,linear:Bu},Gi=g({mipmap:Nu,"nearest mipmap nearest":El,"linear mipmap nearest":qs,"nearest mipmap linear":Jl,"linear mipmap linear":Nu},fn),Io={none:0,browser:oc},nn={uint8:fs,rgba4:Jo,rgb565:as,"rgb5 a1":zo},on={alpha:sn,luminance:On,"luminance alpha":$n,rgb:Mn,rgba:an,rgba4:Cn,"rgb5 a1":Lo,rgb565:Xi},Oi={};ra.ext_srgb&&(on.srgb=Do,on.srgba=Ho),ra.oes_texture_float&&(nn.float32=nn.float=ji),ra.oes_texture_half_float&&(nn.float16=nn["half float"]=Qo),ra.webgl_depth_texture&&(g(on,{depth:go,"depth stencil":In}),g(nn,{uint16:al,uint32:vl,"depth stencil":Pn})),ra.webgl_compressed_texture_s3tc&&g(Oi,{"rgb s3tc dxt1":Xn,"rgba s3tc dxt1":po,"rgba s3tc dxt3":ys,"rgba s3tc dxt5":Is}),ra.webgl_compressed_texture_atc&&g(Oi,{"rgb atc":Fs,"rgba atc explicit alpha":$o,"rgba atc interpolated alpha":fi}),ra.webgl_compressed_texture_pvrtc&&g(Oi,{"rgb pvrtc 4bppv1":mn,"rgb pvrtc 2bppv1":ol,"rgba pvrtc 4bppv1":Os,"rgba pvrtc 2bppv1":so}),ra.webgl_compressed_texture_etc1&&(Oi["rgb etc1"]=Ns);var ui=Array.prototype.slice.call(Qt.getParameter(da));Object.keys(Oi).forEach(function(He){var st=Oi[He];ui.indexOf(st)>=0&&(on[He]=st)});var Mi=Object.keys(on);Ta.textureFormats=Mi;var tn=[];Object.keys(on).forEach(function(He){var st=on[He];tn[st]=He});var pn=[];Object.keys(nn).forEach(function(He){var st=nn[He];pn[st]=He});var qi=[];Object.keys(fn).forEach(function(He){var st=fn[He];qi[st]=He});var Dn=[];Object.keys(Gi).forEach(function(He){var st=Gi[He];Dn[st]=He});var bn=[];Object.keys(cn).forEach(function(He){var st=cn[He];bn[st]=He});var _o=Mi.reduce(function(He,st){var Et=on[st];return Et===On||Et===sn||Et===On||Et===$n||Et===go||Et===In||ra.ext_srgb&&(Et===Do||Et===Ho)?He[Et]=Et:Et===Lo||st.indexOf("rgba")>=0?He[Et]=an:He[Et]=Mn,He},{});function Zi(){this.internalformat=an,this.format=an,this.type=fs,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=oc,this.width=0,this.height=0,this.channels=0}function Ui(He,st){He.internalformat=st.internalformat,He.format=st.format,He.type=st.type,He.compressed=st.compressed,He.premultiplyAlpha=st.premultiplyAlpha,He.flipY=st.flipY,He.unpackAlignment=st.unpackAlignment,He.colorSpace=st.colorSpace,He.width=st.width,He.height=st.height,He.channels=st.channels}function Zn(He,st){if(!(typeof st!="object"||!st)){if("premultiplyAlpha"in st&&(He.premultiplyAlpha=st.premultiplyAlpha),"flipY"in st&&(He.flipY=st.flipY),"alignment"in st&&(He.unpackAlignment=st.alignment),"colorSpace"in st&&(He.colorSpace=Io[st.colorSpace]),"type"in st){var Et=st.type;He.type=nn[Et]}var Ht=He.width,yr=He.height,Ir=He.channels,wr=!1;"shape"in st?(Ht=st.shape[0],yr=st.shape[1],st.shape.length===3&&(Ir=st.shape[2],wr=!0)):("radius"in st&&(Ht=yr=st.radius),"width"in st&&(Ht=st.width),"height"in st&&(yr=st.height),"channels"in st&&(Ir=st.channels,wr=!0)),He.width=Ht|0,He.height=yr|0,He.channels=Ir|0;var qt=!1;if("format"in st){var tr=st.format,dr=He.internalformat=on[tr];He.format=_o[dr],tr in nn&&("type"in st||(He.type=nn[tr])),tr in Oi&&(He.compressed=!0),qt=!0}!wr&&qt?He.channels=Bs[He.format]:wr&&!qt&&He.channels!==_l[He.format]&&(He.format=He.internalformat=_l[He.channels])}}function Rn(He){Qt.pixelStorei(If,He.flipY),Qt.pixelStorei(Zl,He.premultiplyAlpha),Qt.pixelStorei(yl,He.colorSpace),Qt.pixelStorei(Yc,He.unpackAlignment)}function xn(){Zi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function dn(He,st){var Et=null;if(Rf(st)?Et=st:st&&(Zn(He,st),"x"in st&&(He.xOffset=st.x|0),"y"in st&&(He.yOffset=st.y|0),Rf(st.data)&&(Et=st.data)),st.copy){var Ht=wi.viewportWidth,yr=wi.viewportHeight;He.width=He.width||Ht-He.xOffset,He.height=He.height||yr-He.yOffset,He.needsCopy=!0}else if(!Et)He.width=He.width||1,He.height=He.height||1,He.channels=He.channels||4;else if(vr(Et))He.channels=He.channels||4,He.data=Et,!("type"in st)&&He.type===fs&&(He.type=Kc(Et));else if(hf(Et))He.channels=He.channels||4,Yf(He,Et),He.alignment=1,He.needsFree=!0;else if(_r(Et)){var Ir=Et.data;!Array.isArray(Ir)&&He.type===fs&&(He.type=Kc(Ir));var wr=Et.shape,qt=Et.stride,tr,dr,Pr,Vr,Hr,aa;wr.length===3?(Pr=wr[2],aa=qt[2]):(Pr=1,aa=1),tr=wr[0],dr=wr[1],Vr=qt[0],Hr=qt[1],He.alignment=1,He.width=tr,He.height=dr,He.channels=Pr,He.format=He.internalformat=_l[Pr],He.needsFree=!0,Df(He,Ir,Vr,Hr,aa,Et.offset)}else if(Zf(Et)||Rc(Et)||pf(Et))Zf(Et)||Rc(Et)?He.element=Et:He.element=Et.canvas,He.width=He.element.width,He.height=He.element.height,He.channels=4;else if(Fl(Et))He.element=Et,He.width=Et.width,He.height=Et.height,He.channels=4;else if(lh(Et))He.element=Et,He.width=Et.naturalWidth,He.height=Et.naturalHeight,He.channels=4;else if(Xf(Et))He.element=Et,He.width=Et.videoWidth,He.height=Et.videoHeight,He.channels=4;else if(Ku(Et)){var Qr=He.width||Et[0].length,Gr=He.height||Et.length,ia=He.channels;Ca(Et[0][0])?ia=ia||Et[0][0].length:ia=ia||1;for(var Ur=Fe.shape(Et),wa=1,Oa=0;Oa>=yr,Et.height>>=yr,dn(Et,Ht[yr]),He.mipmask|=1<=0&&!("faces"in st)&&(He.genMipmaps=!0)}if("mag"in st){var Ht=st.mag;He.magFilter=fn[Ht]}var yr=He.wrapS,Ir=He.wrapT;if("wrap"in st){var wr=st.wrap;typeof wr=="string"?yr=Ir=cn[wr]:Array.isArray(wr)&&(yr=cn[wr[0]],Ir=cn[wr[1]])}else{if("wrapS"in st){var qt=st.wrapS;yr=cn[qt]}if("wrapT"in st){var tr=st.wrapT;Ir=cn[tr]}}if(He.wrapS=yr,He.wrapT=Ir,"anisotropic"in st){var dr=st.anisotropic;He.anisotropic=st.anisotropic}if("mipmap"in st){var Pr=!1;switch(typeof st.mipmap){case"string":He.mipmapHint=Fi[st.mipmap],He.genMipmaps=!0,Pr=!0;break;case"boolean":Pr=He.genMipmaps=st.mipmap;break;case"object":He.genMipmaps=!1,Pr=!0;break;default:}Pr&&!("min"in st)&&(He.minFilter=El)}}function mc(He,st){Qt.texParameteri(st,Zu,He.minFilter),Qt.texParameteri(st,Wl,He.magFilter),Qt.texParameteri(st,To,He.wrapS),Qt.texParameteri(st,Yn,He.wrapT),ra.ext_texture_filter_anisotropic&&Qt.texParameteri(st,Rs,He.anisotropic),He.genMipmaps&&(Qt.hint(Ic,He.mipmapHint),Qt.generateMipmap(st))}var rf=0,Yl={},Mc=Ta.maxTextureUnits,Vc=Array(Mc).map(function(){return null});function Ds(He){Zi.call(this),this.mipmask=0,this.internalformat=an,this.id=rf++,this.refCount=1,this.target=He,this.texture=Qt.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ol,bi.profile&&(this.stats={size:0})}function af(He){Qt.activeTexture(_c),Qt.bindTexture(He.target,He.texture)}function Cs(){var He=Vc[0];He?Qt.bindTexture(He.target,He.texture):Qt.bindTexture(Sa,null)}function ve(He){var st=He.texture,Et=He.unit,Ht=He.target;Et>=0&&(Qt.activeTexture(_c+Et),Qt.bindTexture(Ht,null),Vc[Et]=null),Qt.deleteTexture(st),He.texture=null,He.params=null,He.pixels=null,He.refCount=0,delete Yl[He.id],xi.textureCount--}g(Ds.prototype,{bind:function(){var He=this;He.bindCount+=1;var st=He.unit;if(st<0){for(var Et=0;Et0)continue;Ht.unit=-1}Vc[Et]=He,st=Et;break}st>=Mc,bi.profile&&xi.maxTextureUnits>Hr)-Pr,aa.height=aa.height||(Et.height>>Hr)-Vr,af(Et),Ro(aa,Sa,Pr,Vr,Hr),Cs(),oo(aa),Ht}function Ir(wr,qt){var tr=wr|0,dr=qt|0||tr;if(tr===Et.width&&dr===Et.height)return Ht;Ht.width=Et.width=tr,Ht.height=Et.height=dr,af(Et);for(var Pr=0;Et.mipmask>>Pr;++Pr){var Vr=tr>>Pr,Hr=dr>>Pr;if(!Vr||!Hr)break;Qt.texImage2D(Sa,Pr,Et.format,Vr,Hr,0,Et.format,Et.type,null)}return Cs(),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,tr,dr,!1,!1)),Ht}return Ht(He,st),Ht.subimage=yr,Ht.resize=Ir,Ht._reglType="texture2d",Ht._texture=Et,bi.profile&&(Ht.stats=Et.stats),Ht.destroy=function(){Et.decRef()},Ht}function ye(He,st,Et,Ht,yr,Ir){var wr=new Ds(Ti);Yl[wr.id]=wr,xi.cubeCount++;var qt=new Array(6);function tr(Vr,Hr,aa,Qr,Gr,ia){var Ur,wa=wr.texInfo;for(Ol.call(wa),Ur=0;Ur<6;++Ur)qt[Ur]=Ws();if(typeof Vr=="number"||!Vr){var Oa=Vr|0||1;for(Ur=0;Ur<6;++Ur)os(qt[Ur],Oa,Oa)}else if(typeof Vr=="object")if(Hr)As(qt[0],Vr),As(qt[1],Hr),As(qt[2],aa),As(qt[3],Qr),As(qt[4],Gr),As(qt[5],ia);else if(vc(wa,Vr),Zn(wr,Vr),"faces"in Vr){var ri=Vr.faces;for(Ur=0;Ur<6;++Ur)Ui(qt[Ur],wr),As(qt[Ur],ri[Ur])}else for(Ur=0;Ur<6;++Ur)As(qt[Ur],Vr);for(Ui(wr,qt[0]),wa.genMipmaps?wr.mipmask=(qt[0].width<<1)-1:wr.mipmask=qt[0].mipmask,wr.internalformat=qt[0].internalformat,tr.width=qt[0].width,tr.height=qt[0].height,af(wr),Ur=0;Ur<6;++Ur)$l(qt[Ur],ai+Ur);for(mc(wa,Ti),Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,wa.genMipmaps,!0)),tr.format=tn[wr.internalformat],tr.type=pn[wr.type],tr.mag=qi[wa.magFilter],tr.min=Dn[wa.minFilter],tr.wrapS=bn[wa.wrapS],tr.wrapT=bn[wa.wrapT],Ur=0;Ur<6;++Ur)jc(qt[Ur]);return tr}function dr(Vr,Hr,aa,Qr,Gr){var ia=aa|0,Ur=Qr|0,wa=Gr|0,Oa=wn();return Ui(Oa,wr),Oa.width=0,Oa.height=0,dn(Oa,Hr),Oa.width=Oa.width||(wr.width>>wa)-ia,Oa.height=Oa.height||(wr.height>>wa)-Ur,af(wr),Ro(Oa,ai+Vr,ia,Ur,wa),Cs(),oo(Oa),tr}function Pr(Vr){var Hr=Vr|0;if(Hr!==wr.width){tr.width=wr.width=Hr,tr.height=wr.height=Hr,af(wr);for(var aa=0;aa<6;++aa)for(var Qr=0;wr.mipmask>>Qr;++Qr)Qt.texImage2D(ai+aa,Qr,wr.format,Hr>>Qr,Hr>>Qr,0,wr.format,wr.type,null);return Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,!1,!0)),tr}}return tr(He,st,Et,Ht,yr,Ir),tr.subimage=dr,tr.resize=Pr,tr._reglType="textureCube",tr._texture=wr,bi.profile&&(tr.stats=wr.stats),tr.destroy=function(){wr.decRef()},tr}function te(){for(var He=0;He>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);else for(var yr=0;yr<6;++yr)Qt.texImage2D(ai+yr,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);mc(Et.texInfo,Et.target)})}function We(){for(var He=0;He=0?jc=!0:cn.indexOf(Ol)>=0&&(jc=!1))),("depthTexture"in Ds||"depthStencilTexture"in Ds)&&(Vc=!!(Ds.depthTexture||Ds.depthStencilTexture)),"depth"in Ds&&(typeof Ds.depth=="boolean"?$l=Ds.depth:(rf=Ds.depth,Uc=!1)),"stencil"in Ds&&(typeof Ds.stencil=="boolean"?Uc=Ds.stencil:(Yl=Ds.stencil,$l=!1)),"depthStencil"in Ds&&(typeof Ds.depthStencil=="boolean"?$l=Uc=Ds.depthStencil:(Mc=Ds.depthStencil,$l=!1,Uc=!1))}var Cs=null,ve=null,K=null,ye=null;if(Array.isArray(Ws))Cs=Ws.map(Oi);else if(Ws)Cs=[Oi(Ws)];else for(Cs=new Array(mc),Xo=0;Xo0&&(oo.depth=dn[0].depth,oo.stencil=dn[0].stencil,oo.depthStencil=dn[0].depthStencil),dn[wn]?dn[wn](oo):dn[wn]=Ui(oo)}return g(jn,{width:Xo,height:Xo,color:Ol})}function Ro(rs){var wn,oo=rs|0;if(oo===jn.width)return jn;var Xo=jn.color;for(wn=0;wn=Xo.byteLength?os.subdata(Xo):(os.destroy(),Ui.buffers[rs]=null)),Ui.buffers[rs]||(os=Ui.buffers[rs]=wi.create(wn,Ff,!1,!0)),oo.buffer=wi.getBuffer(os),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1,jn[rs]=1}else wi.getBuffer(wn)?(oo.buffer=wi.getBuffer(wn),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1):wi.getBuffer(wn.buffer)?(oo.buffer=wi.getBuffer(wn.buffer),oo.size=(+wn.size||oo.buffer.dimension)|0,oo.normalized=!!wn.normalized||!1,"type"in wn?oo.type=sa[wn.type]:oo.type=oo.buffer.dtype,oo.offset=(wn.offset||0)|0,oo.stride=(wn.stride||0)|0,oo.divisor=(wn.divisor||0)|0,oo.state=1):"x"in wn&&(oo.x=+wn.x||0,oo.y=+wn.y||0,oo.z=+wn.z||0,oo.w=+wn.w||0,oo.state=2)}for(var As=0;As1)for(var Rn=0;Rnui&&(ui=Mi.stats.uniformsCount)}),ui},Ta.getMaxAttributesCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.attributesCount>ui&&(ui=Mi.stats.attributesCount)}),ui});function Oi(){wi={},xi={};for(var ui=0;ui16&&(Ta=li(Ta,Qt.length*8));for(var si=Array(16),wi=Array(16),xi=0;xi<16;xi++)si[xi]=Ta[xi]^909522486,wi[xi]=Ta[xi]^1549556828;var bi=li(si.concat(ef(ra)),512+ra.length*8);return Zt(li(wi.concat(bi),768))}function iu(Qt){for(var ra=Qf?"0123456789ABCDEF":"0123456789abcdef",Ta="",si,wi=0;wi>>4&15)+ra.charAt(si&15);return Ta}function fc(Qt){for(var ra="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ta="",si=Qt.length,wi=0;wiQt.length*8?Ta+=Vu:Ta+=ra.charAt(xi>>>6*(3-bi)&63);return Ta}function Oc(Qt,ra){var Ta=ra.length,si=Array(),wi,xi,bi,Fi,cn=Array(Math.ceil(Qt.length/2));for(wi=0;wi0;){for(Fi=Array(),bi=0,wi=0;wi0||xi>0)&&(Fi[Fi.length]=xi);si[si.length]=bi,cn=Fi}var fn="";for(wi=si.length-1;wi>=0;wi--)fn+=ra.charAt(si[wi]);var Gi=Math.ceil(Qt.length*8/(Math.log(ra.length)/Math.log(2)));for(wi=fn.length;wi>>6&31,128|si&63):si<=65535?ra+=String.fromCharCode(224|si>>>12&15,128|si>>>6&63,128|si&63):si<=2097151&&(ra+=String.fromCharCode(240|si>>>18&7,128|si>>>12&63,128|si>>>6&63,128|si&63));return ra}function ef(Qt){for(var ra=Array(Qt.length>>2),Ta=0;Ta>5]|=(Qt.charCodeAt(Ta/8)&255)<<24-Ta%32;return ra}function Zt(Qt){for(var ra="",Ta=0;Ta>5]>>>24-Ta%32&255);return ra}function fr(Qt,ra){return Qt>>>ra|Qt<<32-ra}function Yr(Qt,ra){return Qt>>>ra}function qr(Qt,ra,Ta){return Qt&ra^~Qt&Ta}function ba(Qt,ra,Ta){return Qt&ra^Qt&Ta^ra&Ta}function Ka(Qt){return fr(Qt,2)^fr(Qt,13)^fr(Qt,22)}function oi(Qt){return fr(Qt,6)^fr(Qt,11)^fr(Qt,25)}function yi(Qt){return fr(Qt,7)^fr(Qt,18)^Yr(Qt,3)}function ki(Qt){return fr(Qt,17)^fr(Qt,19)^Yr(Qt,10)}var Bi=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function li(Qt,ra){var Ta=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),si=new Array(64),wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui;for(Qt[ra>>5]|=128<<24-ra%32,Qt[(ra+64>>9<<4)+15]=ra,nn=0;nn>16)+(ra>>16)+(Ta>>16);return si<<16|Ta&65535}function vi(Qt){return Array.prototype.slice.call(Qt)}function ti(Qt){return vi(Qt).join("")}function rn(Qt){var ra=Qt&&Qt.cache,Ta=0,si=[],wi=[],xi=[];function bi(Oi,ui){var Mi=ui&&ui.stable;if(!Mi){for(var tn=0;tn0&&(Oi.push(pn,"="),Oi.push.apply(Oi,vi(arguments)),Oi.push(";")),pn}return g(ui,{def:tn,toString:function(){return ti([Mi.length>0?"var "+Mi.join(",")+";":"",ti(Oi)])}})}function cn(){var Oi=Fi(),ui=Fi(),Mi=Oi.toString,tn=ui.toString;function pn(qi,Dn){ui(qi,Dn,"=",Oi.def(qi,Dn),";")}return g(function(){Oi.apply(Oi,vi(arguments))},{def:Oi.def,entry:Oi,exit:ui,save:pn,set:function(qi,Dn,bn){pn(qi,Dn),Oi(qi,Dn,"=",bn,";")},toString:function(){return Mi()+tn()}})}function fn(){var Oi=ti(arguments),ui=cn(),Mi=cn(),tn=ui.toString,pn=Mi.toString;return g(ui,{then:function(){return ui.apply(ui,vi(arguments)),this},else:function(){return Mi.apply(Mi,vi(arguments)),this},toString:function(){var qi=pn();return qi&&(qi="else{"+qi+"}"),ti(["if(",Oi,"){",tn(),"}",qi])}})}var Gi=Fi(),Io={};function nn(Oi,ui){var Mi=[];function tn(){var _o="a"+Mi.length;return Mi.push(_o),_o}ui=ui||0;for(var pn=0;pn":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ra={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Na={cw:$e,ccw:pt};function Qa(Qt){return Array.isArray(Qt)||vr(Qt)||_r(Qt)}function Ya(Qt){return Qt.sort(function(ra,Ta){return ra===Se?-1:Ta===Se?1:ra=1,si>=2,ra)}else if(Ta===bs){var wi=Qt.data;return new Da(wi.thisDep,wi.contextDep,wi.propDep,ra)}else{if(Ta===Xs)return new Da(!1,!1,!1,ra);if(Ta===Ms){for(var xi=!1,bi=!1,Fi=!1,cn=0;cn=1&&(bi=!0),Gi>=2&&(Fi=!0)}else fn.type===bs&&(xi=xi||fn.data.thisDep,bi=bi||fn.data.contextDep,Fi=Fi||fn.data.propDep)}return new Da(xi,bi,Fi,ra)}else return new Da(Ta===Wo,Ta===co,Ta===Ri,ra)}}var hn=new Da(!1,!1,!1,function(){});function Un(Qt,ra,Ta,si,wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui){var Mi=fn.Record,tn={add:32774,subtract:32778,"reverse subtract":32779};Ta.ext_blend_minmax&&(tn.min=vt,tn.max=wt);var pn=Ta.angle_instanced_arrays,qi=Ta.webgl_draw_buffers,Dn=Ta.oes_vertex_array_object,bn={dirty:!0,profile:ui.profile},_o={},Zi=[],Ui={},Zn={};function Rn(qt){return qt.replace(".","_")}function xn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),_o[Pr]=bn[Pr]=!!dr,Ui[Pr]=tr}function dn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),Array.isArray(dr)?(bn[Pr]=dr.slice(),_o[Pr]=dr.slice()):bn[Pr]=_o[Pr]=dr,Zn[Pr]=tr}function jn(qt){return!!isNaN(qt)}xn(Hs,Ja),xn(vs,Pa),dn(Il,"blendColor",[0,0,0,0]),dn(fl,"blendEquationSeparate",[Or,Or]),dn(tl,"blendFuncSeparate",[Dr,or,Dr,or]),xn(Ln,pi,!0),dn(Ao,"depthFunc",va),dn(js,"depthRange",[0,1]),dn(Ts,"depthMask",!0),dn(nu,nu,[!0,!0,!0,!0]),xn(Pu,ga),dn(ec,"cullFace",Re),dn(tf,tf,pt),dn(yu,yu,1),xn(Bc,$i),dn(Iu,"polygonOffset",[0,0]),xn(Ac,Bn),xn(ro,Sn),dn(Po,"sampleCoverage",[1,!1]),xn(Nc,di),dn(hc,"stencilMask",-1),dn(pc,"stencilFunc",[Jt,0,-1]),dn(Oe,"stencilOpSeparate",[de,Rt,Rt,Rt]),dn(R,"stencilOpSeparate",[Re,Rt,Rt,Rt]),xn(ae,Ci),dn(we,"scissor",[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]),dn(Se,Se,[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]);var Ro={gl:Qt,context:nn,strings:ra,next:_o,current:bn,draw:Io,elements:xi,buffer:wi,shader:Gi,attributes:fn.state,vao:fn,uniforms:cn,framebuffer:Fi,extensions:Ta,timer:on,isBufferArgs:Qa},rs={primTypes:mt,compareFuncs:_a,blendFuncs:Xa,blendEquations:tn,stencilOps:Ra,glTypes:sa,orientationType:Na};qi&&(rs.backBuffer=[Re],rs.drawBuffer=d(si.maxDrawbuffers,function(qt){return qt===0?[0]:d(qt,function(tr){return Va+tr})}));var wn=0;function oo(){var qt=rn({cache:Oi}),tr=qt.link,dr=qt.global;qt.id=wn++,qt.batchId="0";var Pr=tr(Ro),Vr=qt.shared={props:"a0"};Object.keys(Ro).forEach(function(ia){Vr[ia]=dr.def(Pr,".",ia)});var Hr=qt.next={},aa=qt.current={};Object.keys(Zn).forEach(function(ia){Array.isArray(bn[ia])&&(Hr[ia]=dr.def(Vr.next,".",ia),aa[ia]=dr.def(Vr.current,".",ia))});var Qr=qt.constants={};Object.keys(rs).forEach(function(ia){Qr[ia]=dr.def(JSON.stringify(rs[ia]))}),qt.invoke=function(ia,Ur){switch(Ur.type){case en:var wa=["this",Vr.context,Vr.props,qt.batchId];return ia.def(tr(Ur.data),".call(",wa.slice(0,Math.max(Ur.data.length+1,4)),")");case Ri:return ia.def(Vr.props,Ur.data);case co:return ia.def(Vr.context,Ur.data);case Wo:return ia.def("this",Ur.data);case bs:return Ur.data.append(qt,ia),Ur.data.ref;case Xs:return Ur.data.toString();case Ms:return Ur.data.map(function(Oa){return qt.invoke(ia,Oa)})}},qt.attribCache={};var Gr={};return qt.scopeAttrib=function(ia){var Ur=ra.id(ia);if(Ur in Gr)return Gr[Ur];var wa=fn.scope[Ur];wa||(wa=fn.scope[Ur]=new Mi);var Oa=Gr[Ur]=tr(wa);return Oa},qt}function Xo(qt){var tr=qt.static,dr=qt.dynamic,Pr;if(De in tr){var Vr=!!tr[De];Pr=Ni(function(aa,Qr){return Vr}),Pr.enable=Vr}else if(De in dr){var Hr=dr[De];Pr=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}return Pr}function os(qt,tr){var dr=qt.static,Pr=qt.dynamic;if(ft in dr){var Vr=dr[ft];return Vr?(Vr=Fi.getFramebuffer(Vr),Ni(function(aa,Qr){var Gr=aa.link(Vr),ia=aa.shared;Qr.set(ia.framebuffer,".next",Gr);var Ur=ia.context;return Qr.set(Ur,"."+ht,Gr+".width"),Qr.set(Ur,"."+At,Gr+".height"),Gr})):Ni(function(aa,Qr){var Gr=aa.shared;Qr.set(Gr.framebuffer,".next","null");var ia=Gr.context;return Qr.set(ia,"."+ht,ia+"."+nr),Qr.set(ia,"."+At,ia+"."+pr),"null"})}else if(ft in Pr){var Hr=Pr[ft];return Qi(Hr,function(aa,Qr){var Gr=aa.invoke(Qr,Hr),ia=aa.shared,Ur=ia.framebuffer,wa=Qr.def(Ur,".getFramebuffer(",Gr,")");Qr.set(Ur,".next",wa);var Oa=ia.context;return Qr.set(Oa,"."+ht,wa+"?"+wa+".width:"+Oa+"."+nr),Qr.set(Oa,"."+At,wa+"?"+wa+".height:"+Oa+"."+pr),wa})}else return null}function As(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Gr){if(Gr in Pr){var ia=Pr[Gr],Ur=!0,wa=ia.x|0,Oa=ia.y|0,ri,Pi;return"width"in ia?ri=ia.width|0:Ur=!1,"height"in ia?Pi=ia.height|0:Ur=!1,new Da(!Ur&&tr&&tr.thisDep,!Ur&&tr&&tr.contextDep,!Ur&&tr&&tr.propDep,function(An,ln){var Ii=An.shared.context,Wi=ri;"width"in ia||(Wi=ln.def(Ii,".",ht,"-",wa));var Hi=Pi;return"height"in ia||(Hi=ln.def(Ii,".",At,"-",Oa)),[wa,Oa,Wi,Hi]})}else if(Gr in Vr){var mi=Vr[Gr],Di=Qi(mi,function(An,ln){var Ii=An.invoke(ln,mi),Wi=An.shared.context,Hi=ln.def(Ii,".x|0"),yn=ln.def(Ii,".y|0"),zn=ln.def('"width" in ',Ii,"?",Ii,".width|0:","(",Wi,".",ht,"-",Hi,")"),ms=ln.def('"height" in ',Ii,"?",Ii,".height|0:","(",Wi,".",At,"-",yn,")");return[Hi,yn,zn,ms]});return tr&&(Di.thisDep=Di.thisDep||tr.thisDep,Di.contextDep=Di.contextDep||tr.contextDep,Di.propDep=Di.propDep||tr.propDep),Di}else return tr?new Da(tr.thisDep,tr.contextDep,tr.propDep,function(An,ln){var Ii=An.shared.context;return[0,0,ln.def(Ii,".",ht),ln.def(Ii,".",At)]}):null}var aa=Hr(Se);if(aa){var Qr=aa;aa=new Da(aa.thisDep,aa.contextDep,aa.propDep,function(Gr,ia){var Ur=Qr.append(Gr,ia),wa=Gr.shared.context;return ia.set(wa,"."+_t,Ur[2]),ia.set(wa,"."+Pt,Ur[3]),Ur})}return{viewport:aa,scissor_box:Hr(we)}}function $l(qt,tr){var dr=qt.static,Pr=typeof dr[Dt]=="string"&&typeof dr[bt]=="string";if(Pr){if(Object.keys(tr.dynamic).length>0)return null;var Vr=tr.static,Hr=Object.keys(Vr);if(Hr.length>0&&typeof Vr[Hr[0]]=="number"){for(var aa=[],Qr=0;Qr"+Hi+"?"+Ur+".constant["+Hi+"]:0;"}).join(""),"}}else{","if(",ri,"(",Ur,".buffer)){",An,"=",Pi,".createStream(",Wr,",",Ur,".buffer);","}else{",An,"=",Pi,".getBuffer(",Ur,".buffer);","}",ln,'="type" in ',Ur,"?",Oa.glTypes,"[",Ur,".type]:",An,".dtype;",mi.normalized,"=!!",Ur,".normalized;");function Ii(Wi){ia(mi[Wi],"=",Ur,".",Wi,"|0;")}return Ii("size"),Ii("offset"),Ii("stride"),Ii("divisor"),ia("}}"),ia.exit("if(",mi.isStream,"){",Pi,".destroyStream(",An,");","}"),mi}Vr[Hr]=Qi(aa,Qr)}),Vr}function mc(qt){var tr=qt.static,dr=qt.dynamic,Pr={};return Object.keys(tr).forEach(function(Vr){var Hr=tr[Vr];Pr[Vr]=Ni(function(aa,Qr){return typeof Hr=="number"||typeof Hr=="boolean"?""+Hr:aa.link(Hr)})}),Object.keys(dr).forEach(function(Vr){var Hr=dr[Vr];Pr[Vr]=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}),Pr}function rf(qt,tr,dr,Pr,Vr){var Hr=qt.static,aa=qt.dynamic,Qr=$l(qt,tr),Gr=os(qt,Vr),ia=As(qt,Gr,Vr),Ur=Ws(qt,Vr),wa=jc(qt,Vr),Oa=Uc(qt,Vr,Qr);function ri(Ii){var Wi=ia[Ii];Wi&&(wa[Ii]=Wi)}ri(Se),ri(Rn(we));var Pi=Object.keys(wa).length>0,mi={framebuffer:Gr,draw:Ur,shader:Oa,state:wa,dirty:Pi,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(mi.profile=Xo(qt,Vr),mi.uniforms=Ol(dr,Vr),mi.drawVAO=mi.scopeVAO=Ur.vao,!mi.drawVAO&&Oa.program&&!Qr&&Ta.angle_instanced_arrays&&Ur.static.elements){var Di=!0,An=Oa.program.attributes.map(function(Ii){var Wi=tr.static[Ii];return Di=Di&&!!Wi,Wi});if(Di&&An.length>0){var ln=fn.getVAO(fn.createVAO({attributes:An,elements:Ur.static.elements}));mi.drawVAO=new Da(null,null,null,function(Ii,Wi){return Ii.link(ln)}),mi.useVAO=!0}}return Qr?mi.useVAO=!0:mi.attributes=vc(tr,Vr),mi.context=mc(Pr,Vr),mi}function Yl(qt,tr,dr){var Pr=qt.shared,Vr=Pr.context,Hr=qt.scope();Object.keys(dr).forEach(function(aa){tr.save(Vr,"."+aa);var Qr=dr[aa],Gr=Qr.append(qt,tr);Array.isArray(Gr)?Hr(Vr,".",aa,"=[",Gr.join(),"];"):Hr(Vr,".",aa,"=",Gr,";")}),tr(Hr)}function Mc(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.framebuffer,Qr;qi&&(Qr=tr.def(Vr.extensions,".webgl_draw_buffers"));var Gr=qt.constants,ia=Gr.drawBuffer,Ur=Gr.backBuffer,wa;dr?wa=dr.append(qt,tr):wa=tr.def(aa,".next"),Pr||tr("if(",wa,"!==",aa,".cur){"),tr("if(",wa,"){",Hr,".bindFramebuffer(",fa,",",wa,".framebuffer);"),qi&&tr(Qr,".drawBuffersWEBGL(",ia,"[",wa,".colorAttachments.length]);"),tr("}else{",Hr,".bindFramebuffer(",fa,",null);"),qi&&tr(Qr,".drawBuffersWEBGL(",Ur,");"),tr("}",aa,".cur=",wa,";"),Pr||tr("}")}function Vc(qt,tr,dr){var Pr=qt.shared,Vr=Pr.gl,Hr=qt.current,aa=qt.next,Qr=Pr.current,Gr=Pr.next,ia=qt.cond(Qr,".dirty");Zi.forEach(function(Ur){var wa=Rn(Ur);if(!(wa in dr.state)){var Oa,ri;if(wa in aa){Oa=aa[wa],ri=Hr[wa];var Pi=d(bn[wa].length,function(Di){return ia.def(Oa,"[",Di,"]")});ia(qt.cond(Pi.map(function(Di,An){return Di+"!=="+ri+"["+An+"]"}).join("||")).then(Vr,".",Zn[wa],"(",Pi,");",Pi.map(function(Di,An){return ri+"["+An+"]="+Di}).join(";"),";"))}else{Oa=ia.def(Gr,".",wa);var mi=qt.cond(Oa,"!==",Qr,".",wa);ia(mi),wa in Ui?mi(qt.cond(Oa).then(Vr,".enable(",Ui[wa],");").else(Vr,".disable(",Ui[wa],");"),Qr,".",wa,"=",Oa,";"):mi(Vr,".",Zn[wa],"(",Oa,");",Qr,".",wa,"=",Oa,";")}}}),Object.keys(dr.state).length===0&&ia(Qr,".dirty=false;"),tr(ia)}function Ds(qt,tr,dr,Pr){var Vr=qt.shared,Hr=qt.current,aa=Vr.current,Qr=Vr.gl,Gr;Ya(Object.keys(dr)).forEach(function(ia){var Ur=dr[ia];if(!(Pr&&!Pr(Ur))){var wa=Ur.append(qt,tr);if(Ui[ia]){var Oa=Ui[ia];zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(qt.cond(Gr).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",Gr,";")):(tr(qt.cond(wa).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",wa,";"))}else if(Ca(wa)){var ri=Hr[ia];tr(Qr,".",Zn[ia],"(",wa,");",wa.map(function(Pi,mi){return ri+"["+mi+"]="+Pi}).join(";"),";")}else zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(Qr,".",Zn[ia],"(",Gr,");",aa,".",ia,"=",Gr,";")):tr(Qr,".",Zn[ia],"(",wa,");",aa,".",ia,"=",wa,";")}})}function af(qt,tr){pn&&(qt.instancing=tr.def(qt.shared.extensions,".angle_instanced_arrays"))}function Cs(qt,tr,dr,Pr,Vr){var Hr=qt.shared,aa=qt.stats,Qr=Hr.current,Gr=Hr.timer,ia=dr.profile;function Ur(){return typeof performance>"u"?"Date.now()":"performance.now()"}var wa,Oa;function ri(Ii){wa=tr.def(),Ii(wa,"=",Ur(),";"),typeof Vr=="string"?Ii(aa,".count+=",Vr,";"):Ii(aa,".count++;"),on&&(Pr?(Oa=tr.def(),Ii(Oa,"=",Gr,".getNumPendingQueries();")):Ii(Gr,".beginQuery(",aa,");"))}function Pi(Ii){Ii(aa,".cpuTime+=",Ur(),"-",wa,";"),on&&(Pr?Ii(Gr,".pushScopeStats(",Oa,",",Gr,".getNumPendingQueries(),",aa,");"):Ii(Gr,".endQuery();"))}function mi(Ii){var Wi=tr.def(Qr,".profile");tr(Qr,".profile=",Ii,";"),tr.exit(Qr,".profile=",Wi,";")}var Di;if(ia){if(zi(ia)){ia.enable?(ri(tr),Pi(tr.exit),mi("true")):mi("false");return}Di=ia.append(qt,tr),mi(Di)}else Di=tr.def(Qr,".profile");var An=qt.block();ri(An),tr("if(",Di,"){",An,"}");var ln=qt.block();Pi(ln),tr.exit("if(",Di,"){",ln,"}")}function ve(qt,tr,dr,Pr,Vr){var Hr=qt.shared;function aa(Gr){switch(Gr){case ts:case rl:case Rl:return 2;case yo:case Ys:case Xl:return 3;case Vo:case Zo:case qu:return 4;default:return 1}}function Qr(Gr,ia,Ur){var wa=Hr.gl,Oa=tr.def(Gr,".location"),ri=tr.def(Hr.attributes,"[",Oa,"]"),Pi=Ur.state,mi=Ur.buffer,Di=[Ur.x,Ur.y,Ur.z,Ur.w],An=["buffer","normalized","offset","stride"];function ln(){tr("if(!",ri,".buffer){",wa,".enableVertexAttribArray(",Oa,");}");var Wi=Ur.type,Hi;if(Ur.size?Hi=tr.def(Ur.size,"||",ia):Hi=ia,tr("if(",ri,".type!==",Wi,"||",ri,".size!==",Hi,"||",An.map(function(zn){return ri+"."+zn+"!=="+Ur[zn]}).join("||"),"){",wa,".bindBuffer(",Wr,",",mi,".buffer);",wa,".vertexAttribPointer(",[Oa,Hi,Wi,Ur.normalized,Ur.stride,Ur.offset],");",ri,".type=",Wi,";",ri,".size=",Hi,";",An.map(function(zn){return ri+"."+zn+"="+Ur[zn]+";"}).join(""),"}"),pn){var yn=Ur.divisor;tr("if(",ri,".divisor!==",yn,"){",qt.instancing,".vertexAttribDivisorANGLE(",[Oa,yn],");",ri,".divisor=",yn,";}")}}function Ii(){tr("if(",ri,".buffer){",wa,".disableVertexAttribArray(",Oa,");",ri,".buffer=null;","}if(",Kn.map(function(Wi,Hi){return ri+"."+Wi+"!=="+Di[Hi]}).join("||"),"){",wa,".vertexAttrib4f(",Oa,",",Di,");",Kn.map(function(Wi,Hi){return ri+"."+Wi+"="+Di[Hi]+";"}).join(""),"}")}Pi===Jn?ln():Pi===no?Ii():(tr("if(",Pi,"===",Jn,"){"),ln(),tr("}else{"),Ii(),tr("}"))}Pr.forEach(function(Gr){var ia=Gr.name,Ur=dr.attributes[ia],wa;if(Ur){if(!Vr(Ur))return;wa=Ur.append(qt,tr)}else{if(!Vr(hn))return;var Oa=qt.scopeAttrib(ia);wa={},Object.keys(new Mi).forEach(function(ri){wa[ri]=tr.def(Oa,".",ri)})}Qr(qt.link(Gr),aa(Gr.info.type),wa)})}function K(qt,tr,dr,Pr,Vr,Hr){for(var aa=qt.shared,Qr=aa.gl,Gr,ia=0;ia1){for(var us=[],Vs=[],qo=0;qo>1)",mi],");")}function yn(){dr(Di,".drawArraysInstancedANGLE(",[Oa,ri,Pi,mi],");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}function Wi(){function Hi(){dr(Hr+".drawElements("+[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)"]+");")}function yn(){dr(Hr+".drawArrays("+[Oa,ri,Pi]+");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}pn&&(typeof mi!="number"||mi>=0)?typeof mi=="string"?(dr("if(",mi,">0){"),Ii(),dr("}else if(",mi,"<0){"),Wi(),dr("}")):Ii():Wi()}function te(qt,tr,dr,Pr,Vr){var Hr=oo(),aa=Hr.proc("body",Vr);return pn&&(Hr.instancing=aa.def(Hr.shared.extensions,".angle_instanced_arrays")),qt(Hr,aa,dr,Pr),Hr.compile().body}function xe(qt,tr,dr,Pr){af(qt,tr),dr.useVAO?dr.drawVAO?tr(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,tr),");"):tr(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(tr(qt.shared.vao,".setVAO(null);"),ve(qt,tr,dr,Pr.attributes,function(){return!0})),K(qt,tr,dr,Pr.uniforms,function(){return!0},!1),ye(qt,tr,tr,dr)}function We(qt,tr){var dr=qt.proc("draw",1);af(qt,dr),Yl(qt,dr,tr.context),Mc(qt,dr,tr.framebuffer),Vc(qt,dr,tr),Ds(qt,dr,tr.state),Cs(qt,dr,tr,!1,!0);var Pr=tr.shader.progVar.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",Pr,".program);"),tr.shader.program)xe(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Vr=qt.global.def("{}"),Hr=dr.def(Pr,".id"),aa=dr.def(Vr,"[",Hr,"]");dr(qt.cond(aa).then(aa,".call(this,a0);").else(aa,"=",Vr,"[",Hr,"]=",qt.link(function(Qr){return te(xe,qt,tr,Qr,1)}),"(",Pr,");",aa,".call(this,a0);"))}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function He(qt,tr,dr,Pr){qt.batchId="a1",af(qt,tr);function Vr(){return!0}ve(qt,tr,dr,Pr.attributes,Vr),K(qt,tr,dr,Pr.uniforms,Vr,!1),ye(qt,tr,tr,dr)}function st(qt,tr,dr,Pr){af(qt,tr);var Vr=dr.contextDep,Hr=tr.def(),aa="a0",Qr="a1",Gr=tr.def();qt.shared.props=Gr,qt.batchId=Hr;var ia=qt.scope(),Ur=qt.scope();tr(ia.entry,"for(",Hr,"=0;",Hr,"<",Qr,";++",Hr,"){",Gr,"=",aa,"[",Hr,"];",Ur,"}",ia.exit);function wa(An){return An.contextDep&&Vr||An.propDep}function Oa(An){return!wa(An)}if(dr.needsContext&&Yl(qt,Ur,dr.context),dr.needsFramebuffer&&Mc(qt,Ur,dr.framebuffer),Ds(qt,Ur,dr.state,wa),dr.profile&&wa(dr.profile)&&Cs(qt,Ur,dr,!1,!0),Pr)dr.useVAO?dr.drawVAO?wa(dr.drawVAO)?Ur(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,Ur),");"):ia(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,ia),");"):ia(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(ia(qt.shared.vao,".setVAO(null);"),ve(qt,ia,dr,Pr.attributes,Oa),ve(qt,Ur,dr,Pr.attributes,wa)),K(qt,ia,dr,Pr.uniforms,Oa,!1),K(qt,Ur,dr,Pr.uniforms,wa,!0),ye(qt,ia,Ur,dr);else{var ri=qt.global.def("{}"),Pi=dr.shader.progVar.append(qt,Ur),mi=Ur.def(Pi,".id"),Di=Ur.def(ri,"[",mi,"]");Ur(qt.shared.gl,".useProgram(",Pi,".program);","if(!",Di,"){",Di,"=",ri,"[",mi,"]=",qt.link(function(An){return te(He,qt,dr,An,2)}),"(",Pi,");}",Di,".call(this,a0[",Hr,"],",Hr,");")}}function Et(qt,tr){var dr=qt.proc("batch",2);qt.batchId="0",af(qt,dr);var Pr=!1,Vr=!0;Object.keys(tr.context).forEach(function(ri){Pr=Pr||tr.context[ri].propDep}),Pr||(Yl(qt,dr,tr.context),Vr=!1);var Hr=tr.framebuffer,aa=!1;Hr?(Hr.propDep?Pr=aa=!0:Hr.contextDep&&Pr&&(aa=!0),aa||Mc(qt,dr,Hr)):Mc(qt,dr,null),tr.state.viewport&&tr.state.viewport.propDep&&(Pr=!0);function Qr(ri){return ri.contextDep&&Pr||ri.propDep}Vc(qt,dr,tr),Ds(qt,dr,tr.state,function(ri){return!Qr(ri)}),(!tr.profile||!Qr(tr.profile))&&Cs(qt,dr,tr,!1,"a1"),tr.contextDep=Pr,tr.needsContext=Vr,tr.needsFramebuffer=aa;var Gr=tr.shader.progVar;if(Gr.contextDep&&Pr||Gr.propDep)st(qt,dr,tr,null);else{var ia=Gr.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",ia,".program);"),tr.shader.program)st(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Ur=qt.global.def("{}"),wa=dr.def(ia,".id"),Oa=dr.def(Ur,"[",wa,"]");dr(qt.cond(Oa).then(Oa,".call(this,a0,a1);").else(Oa,"=",Ur,"[",wa,"]=",qt.link(function(ri){return te(st,qt,tr,ri,2)}),"(",ia,");",Oa,".call(this,a0,a1);"))}}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function Ht(qt,tr){var dr=qt.proc("scope",3);qt.batchId="a2";var Pr=qt.shared,Vr=Pr.current;if(Yl(qt,dr,tr.context),tr.framebuffer&&tr.framebuffer.append(qt,dr),Ya(Object.keys(tr.state)).forEach(function(Qr){var Gr=tr.state[Qr],ia=Gr.append(qt,dr);Ca(ia)?ia.forEach(function(Ur,wa){jn(Ur)?dr.set(qt.next[Qr],"["+wa+"]",Ur):dr.set(qt.next[Qr],"["+wa+"]",qt.link(Ur,{stable:!0}))}):zi(Gr)?dr.set(Pr.next,"."+Qr,qt.link(ia,{stable:!0})):dr.set(Pr.next,"."+Qr,ia)}),Cs(qt,dr,tr,!0,!0),[Yt,jr,hr,ea,cr].forEach(function(Qr){var Gr=tr.draw[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.draw,"."+Qr,ia):dr.set(Pr.draw,"."+Qr,qt.link(ia),{stable:!0})}}),Object.keys(tr.uniforms).forEach(function(Qr){var Gr=tr.uniforms[Qr].append(qt,dr);Array.isArray(Gr)&&(Gr="["+Gr.map(function(ia){return jn(ia)?ia:qt.link(ia,{stable:!0})})+"]"),dr.set(Pr.uniforms,"["+qt.link(ra.id(Qr),{stable:!0})+"]",Gr)}),Object.keys(tr.attributes).forEach(function(Qr){var Gr=tr.attributes[Qr].append(qt,dr),ia=qt.scopeAttrib(Qr);Object.keys(new Mi).forEach(function(Ur){dr.set(ia,"."+Ur,Gr[Ur])})}),tr.scopeVAO){var Hr=tr.scopeVAO.append(qt,dr);jn(Hr)?dr.set(Pr.vao,".targetVAO",Hr):dr.set(Pr.vao,".targetVAO",qt.link(Hr,{stable:!0}))}function aa(Qr){var Gr=tr.shader[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.shader,"."+Qr,ia):dr.set(Pr.shader,"."+Qr,qt.link(ia,{stable:!0}))}}aa(bt),aa(Dt),Object.keys(tr.state).length>0&&(dr(Vr,".dirty=true;"),dr.exit(Vr,".dirty=true;")),dr("a1(",qt.shared.context,",a0,",qt.batchId,");")}function yr(qt){if(!(typeof qt!="object"||Ca(qt))){for(var tr=Object.keys(qt),dr=0;dr=0;--te){var xe=Ro[te];xe&&xe(Oi,null,0)}Ta.flush(),Gi&&Gi.update()}function As(){!Xo&&Ro.length>0&&(Xo=h.next(os))}function $l(){Xo&&(h.cancel(os),Xo=null)}function Uc(te){te.preventDefault(),wi=!0,$l(),rs.forEach(function(xe){xe()})}function Ws(te){Ta.getError(),wi=!1,xi.restore(),_o.restore(),pn.restore(),Zi.restore(),Ui.restore(),Zn.restore(),Dn.restore(),Gi&&Gi.restore(),Rn.procs.refresh(),As(),wn.forEach(function(xe){xe()})}jn&&(jn.addEventListener(ns,Uc,!1),jn.addEventListener(hs,Ws,!1));function jc(){Ro.length=0,$l(),jn&&(jn.removeEventListener(ns,Uc),jn.removeEventListener(hs,Ws)),_o.clear(),Zn.clear(),Ui.clear(),Dn.clear(),Zi.clear(),qi.clear(),pn.clear(),Gi&&Gi.clear(),oo.forEach(function(te){te()})}function Ol(te){function xe(Hr){var aa=g({},Hr);delete aa.uniforms,delete aa.attributes,delete aa.context,delete aa.vao,"stencil"in aa&&aa.stencil.op&&(aa.stencil.opBack=aa.stencil.opFront=aa.stencil.op,delete aa.stencil.op);function Qr(Gr){if(Gr in aa){var ia=aa[Gr];delete aa[Gr],Object.keys(ia).forEach(function(Ur){aa[Gr+"."+Ur]=ia[Ur]})}}return Qr("blend"),Qr("depth"),Qr("cull"),Qr("stencil"),Qr("polygonOffset"),Qr("scissor"),Qr("sample"),"vao"in Hr&&(aa.vao=Hr.vao),aa}function We(Hr,aa){var Qr={},Gr={};return Object.keys(Hr).forEach(function(ia){var Ur=Hr[ia];if(c.isDynamic(Ur)){Gr[ia]=c.unbox(Ur,ia);return}else if(aa&&Array.isArray(Ur)){for(var wa=0;wa0)return qt.call(this,Pr(Hr|0),Hr|0)}else if(Array.isArray(Hr)){if(Hr.length)return qt.call(this,Hr,Hr.length)}else return wr.call(this,Hr)}return g(Vr,{stats:yr,destroy:function(){Ir.destroy()}})}var vc=Zn.setFBO=Ol({framebuffer:c.define.call(null,hl,"framebuffer")});function mc(te,xe){var We=0;Rn.procs.poll();var He=xe.color;He&&(Ta.clearColor(+He[0]||0,+He[1]||0,+He[2]||0,+He[3]||0),We|=Gs),"depth"in xe&&(Ta.clearDepth(+xe.depth),We|=sl),"stencil"in xe&&(Ta.clearStencil(xe.stencil|0),We|=Vi),Ta.clear(We)}function rf(te){if("framebuffer"in te)if(te.framebuffer&&te.framebuffer_reglType==="framebufferCube")for(var xe=0;xe<6;++xe)vc(g({framebuffer:te.framebuffer.faces[xe]},te),mc);else vc(te,mc);else mc(null,te)}function Yl(te){Ro.push(te);function xe(){var We=Ll(Ro,te);function He(){var st=Ll(Ro,He);Ro[st]=Ro[Ro.length-1],Ro.length-=1,Ro.length<=0&&$l()}Ro[We]=He}return As(),{cancel:xe}}function Mc(){var te=dn.viewport,xe=dn.scissor_box;te[0]=te[1]=xe[0]=xe[1]=0,Oi.viewportWidth=Oi.framebufferWidth=Oi.drawingBufferWidth=te[2]=xe[2]=Ta.drawingBufferWidth,Oi.viewportHeight=Oi.framebufferHeight=Oi.drawingBufferHeight=te[3]=xe[3]=Ta.drawingBufferHeight}function Vc(){Oi.tick+=1,Oi.time=af(),Mc(),Rn.procs.poll()}function Ds(){Zi.refresh(),Mc(),Rn.procs.refresh(),Gi&&Gi.update()}function af(){return(v()-Io)/1e3}Ds();function Cs(te,xe){var We;switch(te){case"frame":return Yl(xe);case"lost":We=rs;break;case"restore":We=wn;break;case"destroy":We=oo;break;default:}return We.push(xe),{cancel:function(){for(var He=0;He=0},read:xn,destroy:jc,_gl:Ta,_refresh:Ds,poll:function(){Vc(),Gi&&Gi.update()},now:af,stats:Fi,getCachedCode:ve,preloadCachedCode:K});return ra.onDone(null,ye),ye}return dc})}}),rV=Ye({"node_modules/gl-util/context.js"(X,H){"use strict";var g=Ev();H.exports=function(o){if(o?typeof o=="string"&&(o={container:o}):o={},A(o)?o={container:o}:M(o)?o={container:o}:e(o)?o={gl:o}:o=g(o,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),o.pixelRatio||(o.pixelRatio=window.pixelRatio||1),o.gl)return o.gl;if(o.canvas&&(o.container=o.canvas.parentNode),o.container){if(typeof o.container=="string"){var a=document.querySelector(o.container);if(!a)throw Error("Element "+o.container+" is not found");o.container=a}A(o.container)?(o.canvas=o.container,o.container=o.canvas.parentNode):o.canvas||(o.canvas=t(),o.container.appendChild(o.canvas),x(o))}else if(!o.canvas)if(typeof document<"u")o.container=document.body||document.documentElement,o.canvas=t(),o.container.appendChild(o.canvas),x(o);else throw Error("Not DOM environment. Use headless-gl.");return o.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(i){try{o.gl=o.canvas.getContext(i,o.attrs)}catch{}return o.gl}),o.gl};function x(r){if(r.container)if(r.container==document.body)document.body.style.width||(r.canvas.width=r.width||r.pixelRatio*window.innerWidth),document.body.style.height||(r.canvas.height=r.height||r.pixelRatio*window.innerHeight);else{var o=r.container.getBoundingClientRect();r.canvas.width=r.width||o.right-o.left,r.canvas.height=r.height||o.bottom-o.top}}function A(r){return typeof r.getContext=="function"&&"width"in r&&"height"in r}function M(r){return typeof r.nodeName=="string"&&typeof r.appendChild=="function"&&typeof r.getBoundingClientRect=="function"}function e(r){return typeof r.drawArrays=="function"||typeof r.drawElements=="function"}function t(){var r=document.createElement("canvas");return r.style.position="absolute",r.style.top=0,r.style.left=0,r}}}),aV=Ye({"node_modules/font-atlas/index.js"(X,H){"use strict";var g=ik(),x=[32,126];H.exports=A;function A(M){M=M||{};var e=M.shape?M.shape:M.canvas?[M.canvas.width,M.canvas.height]:[512,512],t=M.canvas||document.createElement("canvas"),r=M.font,o=typeof M.step=="number"?[M.step,M.step]:M.step||[32,32],a=M.chars||x;if(r&&typeof r!="string"&&(r=g(r)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var i=[],n=a[0],s=0;n<=a[1];n++)i[s++]=String.fromCharCode(n);a=i}e=e.slice(),t.width=e[0],t.height=e[1];var c=t.getContext("2d");c.fillStyle="#000",c.fillRect(0,0,t.width,t.height),c.font=r,c.textAlign="center",c.textBaseline="middle",c.fillStyle="#fff";for(var h=o[0]/2,v=o[1]/2,n=0;ne[0]-o[0]/2&&(h=o[0]/2,v+=o[1]);return t}}}),ok=Ye({"node_modules/bit-twiddle/twiddle.js"(X){"use strict";"use restrict";var H=32;X.INT_BITS=H,X.INT_MAX=2147483647,X.INT_MIN=-1<0)-(A<0)},X.abs=function(A){var M=A>>H-1;return(A^M)-M},X.min=function(A,M){return M^(A^M)&-(A65535)<<4,A>>>=M,e=(A>255)<<3,A>>>=e,M|=e,e=(A>15)<<2,A>>>=e,M|=e,e=(A>3)<<1,A>>>=e,M|=e,M|A>>1},X.log10=function(A){return A>=1e9?9:A>=1e8?8:A>=1e7?7:A>=1e6?6:A>=1e5?5:A>=1e4?4:A>=1e3?3:A>=100?2:A>=10?1:0},X.popCount=function(A){return A=A-(A>>>1&1431655765),A=(A&858993459)+(A>>>2&858993459),(A+(A>>>4)&252645135)*16843009>>>24};function g(A){var M=32;return A&=-A,A&&M--,A&65535&&(M-=16),A&16711935&&(M-=8),A&252645135&&(M-=4),A&858993459&&(M-=2),A&1431655765&&(M-=1),M}X.countTrailingZeros=g,X.nextPow2=function(A){return A+=A===0,--A,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A+1},X.prevPow2=function(A){return A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A-(A>>>1)},X.parity=function(A){return A^=A>>>16,A^=A>>>8,A^=A>>>4,A&=15,27030>>>A&1};var x=new Array(256);(function(A){for(var M=0;M<256;++M){var e=M,t=M,r=7;for(e>>>=1;e;e>>>=1)t<<=1,t|=e&1,--r;A[M]=t<>>8&255]<<16|x[A>>>16&255]<<8|x[A>>>24&255]},X.interleave2=function(A,M){return A&=65535,A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,M&=65535,M=(M|M<<8)&16711935,M=(M|M<<4)&252645135,M=(M|M<<2)&858993459,M=(M|M<<1)&1431655765,A|M<<1},X.deinterleave2=function(A,M){return A=A>>>M&1431655765,A=(A|A>>>1)&858993459,A=(A|A>>>2)&252645135,A=(A|A>>>4)&16711935,A=(A|A>>>16)&65535,A<<16>>16},X.interleave3=function(A,M,e){return A&=1023,A=(A|A<<16)&4278190335,A=(A|A<<8)&251719695,A=(A|A<<4)&3272356035,A=(A|A<<2)&1227133513,M&=1023,M=(M|M<<16)&4278190335,M=(M|M<<8)&251719695,M=(M|M<<4)&3272356035,M=(M|M<<2)&1227133513,A|=M<<1,e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,A|e<<2},X.deinterleave3=function(A,M){return A=A>>>M&1227133513,A=(A|A>>>2)&3272356035,A=(A|A>>>4)&251719695,A=(A|A>>>8)&4278190335,A=(A|A>>>16)&1023,A<<22>>22},X.nextCombination=function(A){var M=A|A-1;return M+1|(~M&-~M)-1>>>g(A)+1}}}),iV=Ye({"node_modules/dup/dup.js"(X,H){"use strict";function g(M,e,t){var r=M[t]|0;if(r<=0)return[];var o=new Array(r),a;if(t===M.length-1)for(a=0;a"u"&&(e=0),typeof M){case"number":if(M>0)return x(M|0,e);break;case"object":if(typeof M.length=="number")return g(M,e,0);break}return[]}H.exports=A}}),nV=Ye({"node_modules/typedarray-pool/pool.js"(X){"use strict";var H=ok(),g=iV(),x=t0().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:g([32,0]),UINT16:g([32,0]),UINT32:g([32,0]),BIGUINT64:g([32,0]),INT8:g([32,0]),INT16:g([32,0]),INT32:g([32,0]),BIGINT64:g([32,0]),FLOAT:g([32,0]),DOUBLE:g([32,0]),DATA:g([32,0]),UINT8C:g([32,0]),BUFFER:g([32,0])});var A=typeof Uint8ClampedArray<"u",M=typeof BigUint64Array<"u",e=typeof BigInt64Array<"u",t=window.__TYPEDARRAY_POOL;t.UINT8C||(t.UINT8C=g([32,0])),t.BIGUINT64||(t.BIGUINT64=g([32,0])),t.BIGINT64||(t.BIGINT64=g([32,0])),t.BUFFER||(t.BUFFER=g([32,0]));var r=t.DATA,o=t.BUFFER;X.free=function(u){if(x.isBuffer(u))o[H.log2(u.length)].push(u);else{if(Object.prototype.toString.call(u)!=="[object ArrayBuffer]"&&(u=u.buffer),!u)return;var y=u.length||u.byteLength,f=H.log2(y)|0;r[f].push(u)}};function a(d){if(d){var u=d.length||d.byteLength,y=H.log2(u);r[y].push(d)}}function i(d){a(d.buffer)}X.freeUint8=X.freeUint16=X.freeUint32=X.freeBigUint64=X.freeInt8=X.freeInt16=X.freeInt32=X.freeBigInt64=X.freeFloat32=X.freeFloat=X.freeFloat64=X.freeDouble=X.freeUint8Clamped=X.freeDataView=i,X.freeArrayBuffer=a,X.freeBuffer=function(u){o[H.log2(u.length)].push(u)},X.malloc=function(u,y){if(y===void 0||y==="arraybuffer")return n(u);switch(y){case"uint8":return s(u);case"uint16":return c(u);case"uint32":return h(u);case"int8":return v(u);case"int16":return p(u);case"int32":return T(u);case"float":case"float32":return l(u);case"double":case"float64":return _(u);case"uint8_clamped":return w(u);case"bigint64":return E(u);case"biguint64":return S(u);case"buffer":return b(u);case"data":case"dataview":return m(u);default:return null}return null};function n(u){var u=H.nextPow2(u),y=H.log2(u),f=r[y];return f.length>0?f.pop():new ArrayBuffer(u)}X.mallocArrayBuffer=n;function s(d){return new Uint8Array(n(d),0,d)}X.mallocUint8=s;function c(d){return new Uint16Array(n(2*d),0,d)}X.mallocUint16=c;function h(d){return new Uint32Array(n(4*d),0,d)}X.mallocUint32=h;function v(d){return new Int8Array(n(d),0,d)}X.mallocInt8=v;function p(d){return new Int16Array(n(2*d),0,d)}X.mallocInt16=p;function T(d){return new Int32Array(n(4*d),0,d)}X.mallocInt32=T;function l(d){return new Float32Array(n(4*d),0,d)}X.mallocFloat32=X.mallocFloat=l;function _(d){return new Float64Array(n(8*d),0,d)}X.mallocFloat64=X.mallocDouble=_;function w(d){return A?new Uint8ClampedArray(n(d),0,d):s(d)}X.mallocUint8Clamped=w;function S(d){return M?new BigUint64Array(n(8*d),0,d):null}X.mallocBigUint64=S;function E(d){return e?new BigInt64Array(n(8*d),0,d):null}X.mallocBigInt64=E;function m(d){return new DataView(n(d),0,d)}X.mallocDataView=m;function b(d){d=H.nextPow2(d);var u=H.log2(d),y=o[u];return y.length>0?y.pop():new x(d)}X.mallocBuffer=b,X.clearCache=function(){for(var u=0;u<32;++u)t.UINT8[u].length=0,t.UINT16[u].length=0,t.UINT32[u].length=0,t.INT8[u].length=0,t.INT16[u].length=0,t.INT32[u].length=0,t.FLOAT[u].length=0,t.DOUBLE[u].length=0,t.BIGUINT64[u].length=0,t.BIGINT64[u].length=0,t.UINT8C[u].length=0,r[u].length=0,o[u].length=0}}}),oV=Ye({"node_modules/is-plain-obj/index.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(x){var A;return g.call(x)==="[object Object]"&&(A=Object.getPrototypeOf(x),A===null||A===Object.getPrototypeOf({}))}}}),sk=Ye({"node_modules/parse-unit/index.js"(X,H){H.exports=function(x,A){A||(A=[0,""]),x=String(x);var M=parseFloat(x,10);return A[0]=M,A[1]=x.match(/[\d.\-\+]*\s*(.*)/)[1]||"",A}}}),sV=Ye({"node_modules/to-px/topx.js"(X,H){"use strict";var g=sk();H.exports=e;var x=96;function A(t,r){var o=g(getComputedStyle(t).getPropertyValue(r));return o[0]*e(o[1],t)}function M(t,r){var o=document.createElement("div");o.style["font-size"]="128"+t,r.appendChild(o);var a=A(o,"font-size")/128;return r.removeChild(o),a}function e(t,r){switch(r=r||document.body,t=(t||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),t){case"%":return r.clientHeight/100;case"ch":case"ex":return M(t,r);case"em":return A(r,"font-size");case"rem":return A(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return x;case"cm":return x/2.54;case"mm":return x/25.4;case"pt":return x/72;case"pc":return x/6}return 1}}}),lV=Ye({"node_modules/detect-kerning/index.js"(X,H){"use strict";H.exports=M;var g=M.canvas=document.createElement("canvas"),x=g.getContext("2d"),A=e([32,126]);M.createPairs=e,M.ascii=A;function M(t,r){Array.isArray(t)&&(t=t.join(", "));var o={},a,i=16,n=.05;r&&(r.length===2&&typeof r[0]=="number"?a=e(r):Array.isArray(r)?a=r:(r.o?a=e(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(i=r.fontSize),r.threshold!=null&&(n=r.threshold))),a||(a=A),x.font=i+"px "+t;for(var s=0;si*n){var p=(v-h)/i;o[c]=p*1e3}}return o}function e(t){for(var r=[],o=t[0];o<=t[1];o++)for(var a=String.fromCharCode(o),i=t[0];i0;o-=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}}}),cV=Ye({"node_modules/gl-text/dist.js"(X,H){"use strict";var g=tV(),x=Ev(),A=nk(),M=rV(),e=K5(),t=hg(),r=aV(),o=nV(),a=E1(),i=oV(),n=sk(),s=sV(),c=lV(),h=Wf(),v=uV(),p=v0(),T=ok(),l=T.nextPow2,_=new e,w=!1;document.body&&(S=document.body.appendChild(document.createElement("div")),S.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(S).fontStretch&&(w=!0),document.body.removeChild(S));var S,E=function(d){m(d)?(d={regl:d},this.gl=d.regl._gl):this.gl=M(d),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=d.regl||A({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),_.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(i(d)?d:{})};E.prototype.createShader=function(){var d=this.regl,u=d({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:d.prop("count"),offset:d.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:d.this("sizeBuffer")},width:{offset:0,stride:8,buffer:d.this("sizeBuffer")},char:d.this("charBuffer"),position:d.this("position")},uniforms:{atlasSize:function(f,P){return[P.atlas.width,P.atlas.height]},atlasDim:function(f,P){return[P.atlas.cols,P.atlas.rows]},atlas:function(f,P){return P.atlas.texture},charStep:function(f,P){return P.atlas.step},em:function(f,P){return P.atlas.em},color:d.prop("color"),opacity:d.prop("opacity"),viewport:d.this("viewportArray"),scale:d.this("scale"),align:d.prop("align"),baseline:d.prop("baseline"),translate:d.this("translate"),positionOffset:d.prop("positionOffset")},primitive:"points",viewport:d.this("viewport"),vert:` + precision highp float; + attribute float width, charOffset, char; + attribute vec2 position; + uniform float fontSize, charStep, em, align, baseline; + uniform vec4 viewport; + uniform vec4 color; + uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset; + varying vec2 charCoord, charId; + varying float charWidth; + varying vec4 fontColor; + void main () { + vec2 offset = floor(em * (vec2(align + charOffset, baseline) + + vec2(positionOffset.x, -positionOffset.y))) + / (viewport.zw * scale.xy); + + vec2 position = (position + translate) * scale; + position += offset * scale; + + charCoord = position * viewport.zw + viewport.xy; + + gl_Position = vec4(position * 2. - 1., 0, 1); + + gl_PointSize = charStep; + + charId.x = mod(char, atlasDim.x); + charId.y = floor(char / atlasDim.x); + + charWidth = width * em; + + fontColor = color / 255.; + }`,frag:` + precision highp float; + uniform float fontSize, charStep, opacity; + uniform vec2 atlasSize; + uniform vec4 viewport; + uniform sampler2D atlas; + varying vec4 fontColor; + varying vec2 charCoord, charId; + varying float charWidth; + + float lightness(vec4 color) { + return color.r * 0.299 + color.g * 0.587 + color.b * 0.114; + } + + void main () { + vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5; + float halfCharStep = floor(charStep * .5 + .5); + + // invert y and shift by 1px (FF expecially needs that) + uv.y = charStep - uv.y; + + // ignore points outside of character bounding box + float halfCharWidth = ceil(charWidth * .5); + if (floor(uv.x) > halfCharStep + halfCharWidth || + floor(uv.x) < halfCharStep - halfCharWidth) return; + + uv += charId * charStep; + uv = uv / atlasSize; + + vec4 color = fontColor; + vec4 mask = texture2D(atlas, uv); + + float maskY = lightness(mask); + // float colorY = lightness(color); + color.a *= maskY; + color.a *= opacity; + + // color.a += .1; + + // antialiasing, see yiq color space y-channel formula + // color.rgb += (1. - color.rgb) * (1. - mask.rgb); + + gl_FragColor = color; + }`}),y={};return{regl:d,draw:u,atlas:y}},E.prototype.update=function(d){var u=this;if(typeof d=="string")d={text:d};else if(!d)return;d=x(d,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),d.opacity!=null&&(Array.isArray(d.opacity)?this.opacity=d.opacity.map(function(ce){return parseFloat(ce)}):this.opacity=parseFloat(d.opacity)),d.viewport!=null&&(this.viewport=a(d.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),d.kerning!=null&&(this.kerning=d.kerning),d.offset!=null&&(typeof d.offset=="number"&&(d.offset=[d.offset,0]),this.positionOffset=p(d.offset)),d.direction&&(this.direction=d.direction),d.range&&(this.range=d.range,this.scale=[1/(d.range[2]-d.range[0]),1/(d.range[3]-d.range[1])],this.translate=[-d.range[0],-d.range[1]]),d.scale&&(this.scale=d.scale),d.translate&&(this.translate=d.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!d.font&&(d.font=E.baseFontSize+"px sans-serif");var y=!1,f=!1;if(d.font&&(Array.isArray(d.font)?d.font:[d.font]).forEach(function(ce,ze){if(typeof ce=="string")try{ce=g.parse(ce)}catch{ce=g.parse(E.baseFontSize+"px "+ce)}else{var tt=ce.style,nt=ce.weight,Qe=ce.stretch,Ct=ce.variant;ce=g.parse(g.stringify(ce)),tt&&(ce.style=tt),nt&&(ce.weight=nt),Qe&&(ce.stretch=Qe),Ct&&(ce.variant=Ct)}var St=g.stringify({size:E.baseFontSize,family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style}),Ot=n(ce.size),jt=Math.round(Ot[0]*s(Ot[1]));if(jt!==u.fontSize[ze]&&(f=!0,u.fontSize[ze]=jt),(!u.font[ze]||St!=u.font[ze].baseString)&&(y=!0,u.font[ze]=E.fonts[St],!u.font[ze])){var ur=ce.family.join(", "),ar=[ce.style];ce.style!=ce.variant&&ar.push(ce.variant),ce.variant!=ce.weight&&ar.push(ce.weight),w&&ce.weight!=ce.stretch&&ar.push(ce.stretch),u.font[ze]={baseString:St,family:ur,weight:ce.weight,stretch:ce.stretch,style:ce.style,variant:ce.variant,width:{},kerning:{},metrics:v(ur,{origin:"top",fontSize:E.baseFontSize,fontStyle:ar.join(" ")})},E.fonts[St]=u.font[ze]}}),(y||f)&&this.font.forEach(function(ce,ze){var tt=g.stringify({size:u.fontSize[ze],family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style});if(u.fontAtlas[ze]=u.shader.atlas[tt],!u.fontAtlas[ze]){var nt=ce.metrics;u.shader.atlas[tt]=u.fontAtlas[ze]={fontString:tt,step:Math.ceil(u.fontSize[ze]*nt.bottom*.5)*2,em:u.fontSize[ze],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:u.regl.texture()}}d.text==null&&(d.text=u.text)}),typeof d.text=="string"&&d.position&&d.position.length>2){for(var P=Array(d.position.length*.5),L=0;L2){for(var B=!d.position[0].length,O=o.mallocFloat(this.count*2),I=0,N=0;I1?u.align[ze]:u.align[0]:u.align;if(typeof tt=="number")return tt;switch(tt){case"right":case"end":return-ce;case"center":case"centre":case"middle":return-ce*.5}return 0})),this.baseline==null&&d.baseline==null&&(d.baseline=0),d.baseline!=null&&(this.baseline=d.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ce,ze){var tt=(u.font[ze]||u.font[0]).metrics,nt=0;return nt+=tt.bottom*.5,typeof ce=="number"?nt+=ce-tt.baseline:nt+=-tt[ce],nt*=-1,nt})),d.color!=null)if(d.color||(d.color="transparent"),typeof d.color=="string"||!isNaN(d.color))this.color=t(d.color,"uint8");else{var Be;if(typeof d.color[0]=="number"&&d.color.length>this.counts.length){var Ie=d.color.length;Be=o.mallocUint8(Ie);for(var Ze=(d.color.subarray||d.color.slice).bind(d.color),at=0;at4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(lt){var Me=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Me);for(var ge=0;ge1?this.counts[ge]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ge]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ge*4,ge*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ge]:this.opacity,baseline:this.baselineOffset[ge]!=null?this.baselineOffset[ge]:this.baselineOffset[0],align:this.align?this.alignOffset[ge]!=null?this.alignOffset[ge]:this.alignOffset[0]:0,atlas:this.fontAtlas[ge]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ge*2,ge*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}},E.prototype.destroy=function(){},E.prototype.kerning=!0,E.prototype.position={constant:new Float32Array(2)},E.prototype.translate=null,E.prototype.scale=null,E.prototype.font=null,E.prototype.text="",E.prototype.positionOffset=[0,0],E.prototype.opacity=1,E.prototype.color=new Uint8Array([0,0,0,255]),E.prototype.alignOffset=[0,0],E.maxAtlasSize=1024,E.atlasCanvas=document.createElement("canvas"),E.atlasContext=E.atlasCanvas.getContext("2d",{alpha:!1}),E.baseFontSize=64,E.fonts={};function m(b){return typeof b=="function"&&b._gl&&b.prop&&b.texture&&b.buffer}H.exports=E}}),_T=Ye({"src/lib/prepare_regl.js"(X,H){"use strict";var g=g5(),x=nk();H.exports=function(M,e,t){var r=M._fullLayout,o=!0;return r._glcanvas.each(function(a){if(a.regl){a.regl.preloadCachedCode(t);return}if(!(a.pick&&!r._has("parcoords"))){try{a.regl=x({canvas:this,attributes:{antialias:!a.pick,preserveDrawingBuffer:!0},pixelRatio:M._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:t||{}})}catch{o=!1}a.regl||(o=!1),o&&this.addEventListener("webglcontextlost",function(i){M&&M.emit&&M.emit("plotly_webglcontextlost",{event:i,layer:a.key})},!1)}}),o||g({container:r._glcontainer.node()}),o}}}),lk=Ye({"src/traces/scattergl/plot.js"(c,H){"use strict";var g=N5(),x=J5(),A=Yj(),M=cV(),e=ta(),t=Jd().selectMode,r=_T(),o=uu(),a=zS(),i=F5().styleTextSelection,n={};function s(h,v,p,T){var l=h._size,_=h.width*T,w=h.height*T,S=l.l*T,E=l.b*T,m=l.r*T,b=l.t*T,d=l.w*T,u=l.h*T;return[S+v.domain[0]*d,E+p.domain[0]*u,_-m-(1-v.domain[1])*d,w-b-(1-p.domain[1])*u]}var c=H.exports=function(v,p,T){if(T.length){var l=v._fullLayout,_=p._scene,w=p.xaxis,S=p.yaxis,E,m;if(_){var b=r(v,["ANGLE_instanced_arrays","OES_element_index_uint"],n);if(!b){_.init();return}var d=_.count,u=l._glcanvas.data()[0].regl;if(a(v,p,T),_.dirty){if((_.line2d||_.error2d)&&!(_.scatter2d||_.fill2d||_.glText)&&u.clear({}),_.error2d===!0&&(_.error2d=A(u)),_.line2d===!0&&(_.line2d=x(u)),_.scatter2d===!0&&(_.scatter2d=g(u)),_.fill2d===!0&&(_.fill2d=x(u)),_.glText===!0)for(_.glText=new Array(d),E=0;E_.glText.length){var y=d-_.glText.length;for(E=0;Eie&&(isNaN(ee[fe])||isNaN(ee[fe+1]));)fe-=2;j.positions=ee.slice(ie,fe+2)}return j}),_.line2d.update(_.lineOptions)),_.error2d){var L=(_.errorXOptions||[]).concat(_.errorYOptions||[]);_.error2d.update(L)}_.scatter2d&&_.scatter2d.update(_.markerOptions),_.fillOrder=e.repeat(null,d),_.fill2d&&(_.fillOptions=_.fillOptions.map(function(j,ee){var ie=T[ee];if(!(!j||!ie||!ie[0]||!ie[0].trace)){var fe=ie[0],be=fe.trace,Ae=fe.t,Be=_.lineOptions[ee],Ie,Ze,at=[];be._ownfill&&at.push(ee),be._nexttrace&&at.push(ee+1),at.length&&(_.fillOrder[ee]=at);var it=[],et=Be&&Be.positions||Ae.positions,lt,Me;if(be.fill==="tozeroy"){for(lt=0;ltlt&&isNaN(et[Me+1]);)Me-=2;et[lt+1]!==0&&(it=[et[lt],0]),it=it.concat(et.slice(lt,Me+2)),et[Me+1]!==0&&(it=it.concat([et[Me],0]))}else if(be.fill==="tozerox"){for(lt=0;ltlt&&isNaN(et[Me]);)Me-=2;et[lt]!==0&&(it=[0,et[lt+1]]),it=it.concat(et.slice(lt,Me+2)),et[Me]!==0&&(it=it.concat([0,et[Me+1]]))}else if(be.fill==="toself"||be.fill==="tonext"){for(it=[],Ie=0,j.splitNull=!0,Ze=0;Ze-1;for(E=0;Ew&&p||_i,f;for(y?f=p.sizeAvg||Math.max(p.size,3):f=A(c,v),S=0;S<_.length;S++)w=_[S],E=h[w],m=x.getFromId(s,c._diag[w][0])||{},b=x.getFromId(s,c._diag[w][1])||{},M(s,c,m,b,T[S],T[S],f);var P=o(s,c);return P.matrix||(P.matrix=!0),P.matrixOptions=p,P.selectedOptions=t(s,c,c.selected),P.unselectedOptions=t(s,c,c.unselected),[{x:!1,y:!1,t:{},trace:c}]}}}),mV=Ye({"node_modules/performance-now/lib/performance-now.js"(X,H){(function(){var g,x,A,M,e,t;typeof performance<"u"&&performance!==null&&performance.now?H.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(H.exports=function(){return(g()-e)/1e6},x=process.hrtime,g=function(){var r;return r=x(),r[0]*1e9+r[1]},M=g(),t=process.uptime()*1e9,e=M-t):Date.now?(H.exports=function(){return Date.now()-A},A=Date.now()):(H.exports=function(){return new Date().getTime()-A},A=new Date().getTime())}).call(X)}}),gV=Ye({"node_modules/raf/index.js"(X,H){var g=mV(),x=window,A=["moz","webkit"],M="AnimationFrame",e=x["request"+M],t=x["cancel"+M]||x["cancelRequest"+M];for(r=0;!e&&r{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,M(()=>{this.dirty=!1})),this)},o.prototype.update=function(...s){if(!s.length)return;for(let v=0;vf||!p.lower&&y{c[T+_]=v})}this.scatter.draw(...c)}return this},o.prototype.destroy=function(){return this.traces.forEach(s=>{s.buffer&&s.buffer.destroy&&s.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function a(s,c,h){let v=s.id!=null?s.id:s,p=c,T=h;return v<<16|(p&255)<<8|T&255}function i(s,c,h){let v,p,T,l,_,w,S,E,m=s[c],b=s[h];return m.length>2?(v=m[0],T=m[2],p=m[1],l=m[3]):m.length?(v=p=m[0],T=l=m[1]):(v=m.x,p=m.y,T=m.x+m.width,l=m.y+m.height),b.length>2?(_=b[0],S=b[2],w=b[1],E=b[3]):b.length?(_=w=b[0],S=E=b[1]):(_=b.x,w=b.y,S=b.x+b.width,E=b.y+b.height),[_,p,S,l]}function n(s){if(typeof s=="number")return[s,s,s,s];if(s.length===2)return[s[0],s[1],s[0],s[1]];{let c=t(s);return[c.x,c.y,c.x+c.width,c.y+c.height]}}}}),xV=Ye({"src/traces/splom/plot.js"(X,H){"use strict";var g=_V(),x=ta(),A=Xc(),M=Jd().selectMode;H.exports=function(r,o,a){if(a.length)for(var i=0;i-1,B=M(p)||!!i.selectedpoints||F,O=!0;if(B){var I=i._length;if(i.selectedpoints){s.selectBatch=i.selectedpoints;var N=i.selectedpoints,U={};for(_=0;_=W[Q][0]&&U<=W[Q][1])return!0;return!1}function c(U){U.attr("x",-g.bar.captureWidth/2).attr("width",g.bar.captureWidth)}function h(U){U.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function v(U){if(!U.brush.filterSpecified)return"0,"+U.height;for(var W=p(U.brush.filter.getConsolidated(),U.height),Q=[0],ue,se,he,G=W.length?W[0][0]:null,$=0;$U[1]+Q||W=.9*U[1]+.1*U[0]?"n":W<=.9*U[0]+.1*U[1]?"s":"ns"}function l(){x.select(document.body).style("cursor",null)}function _(U){U.attr("stroke-dasharray",v)}function w(U,W){var Q=x.select(U).selectAll(".highlight, .highlight-shadow"),ue=W?Q.transition().duration(g.bar.snapDuration).each("end",W):Q;_(ue)}function S(U,W){var Q=U.brush,ue=Q.filterSpecified,se=NaN,he={},G;if(ue){var $=U.height,J=Q.filter.getConsolidated(),Z=p(J,$),re=NaN,ne=NaN,j=NaN;for(G=0;G<=Z.length;G++){var ee=Z[G];if(ee&&ee[0]<=W&&W<=ee[1]){re=G;break}else if(ne=G?G-1:NaN,ee&&ee[0]>W){j=G;break}}if(se=re,isNaN(se)&&(isNaN(ne)||isNaN(j)?se=isNaN(ne)?j:ne:se=W-Z[ne][1]=Be[0]&&Ae<=Be[1]){he.clickableOrdinalRange=Be;break}}}return he}function E(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.unitToPaddedPx.invert(Q),se=W.brush,he=S(W,Q),G=he.interval,$=se.svgBrush;if($.wasDragged=!1,$.grabbingBar=he.region==="ns",$.grabbingBar){var J=G.map(W.unitToPaddedPx);$.grabPoint=Q-J[0]-g.verticalPadding,$.barLength=J[1]-J[0]}$.clickableOrdinalRange=he.clickableOrdinalRange,$.stayingIntervals=W.multiselect&&se.filterSpecified?se.filter.getConsolidated():[],G&&($.stayingIntervals=$.stayingIntervals.filter(function(Z){return Z[0]!==G[0]&&Z[1]!==G[1]})),$.startExtent=he.region?G[he.region==="s"?1:0]:ue,W.parent.inBrushDrag=!0,$.brushStartCallback()}function m(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.brush.svgBrush;ue.wasDragged=!0,ue._dragging=!0,ue.grabbingBar?ue.newExtent=[Q-ue.grabPoint,Q+ue.barLength-ue.grabPoint].map(W.unitToPaddedPx.invert):ue.newExtent=[ue.startExtent,W.unitToPaddedPx.invert(Q)].sort(e),W.brush.filterSpecified=!0,ue.extent=ue.stayingIntervals.concat([ue.newExtent]),ue.brushCallback(W),w(U.parentNode)}function b(U,W){var Q=W.brush,ue=Q.filter,se=Q.svgBrush;se._dragging||(d(U,W),m(U,W),W.brush.svgBrush.wasDragged=!1),se._dragging=!1;var he=x.event;he.sourceEvent.stopPropagation();var G=se.grabbingBar;if(se.grabbingBar=!1,se.grabLocation=void 0,W.parent.inBrushDrag=!1,l(),!se.wasDragged){se.wasDragged=void 0,se.clickableOrdinalRange?Q.filterSpecified&&W.multiselect?se.extent.push(se.clickableOrdinalRange):(se.extent=[se.clickableOrdinalRange],Q.filterSpecified=!0):G?(se.extent=se.stayingIntervals,se.extent.length===0&&z(Q)):z(Q),se.brushCallback(W),w(U.parentNode),se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[]);return}var $=function(){ue.set(ue.getConsolidated())};if(W.ordinal){var J=W.unitTickvals;J[J.length-1]se.newExtent[0];se.extent=se.stayingIntervals.concat(Z?[se.newExtent]:[]),se.extent.length||z(Q),se.brushCallback(W),Z?w(U.parentNode,$):($(),w(U.parentNode))}else $();se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[])}function d(U,W){var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=S(W,Q),se="crosshair";ue.clickableOrdinalRange?se="pointer":ue.region&&(se=ue.region+"-resize"),x.select(document.body).style("cursor",se)}function u(U){U.on("mousemove",function(W){x.event.preventDefault(),W.parent.inBrushDrag||d(this,W)}).on("mouseleave",function(W){W.parent.inBrushDrag||l()}).call(x.behavior.drag().on("dragstart",function(W){E(this,W)}).on("drag",function(W){m(this,W)}).on("dragend",function(W){b(this,W)}))}function y(U,W){return U[0]-W[0]}function f(U,W,Q){var ue=Q._context.staticPlot,se=U.selectAll(".background").data(M);se.enter().append("rect").classed("background",!0).call(c).call(h).style("pointer-events",ue?"none":"auto").attr("transform",t(0,g.verticalPadding)),se.call(u).attr("height",function($){return $.height-g.verticalPadding});var he=U.selectAll(".highlight-shadow").data(M);he.enter().append("line").classed("highlight-shadow",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width+g.bar.strokeWidth).attr("stroke",W).attr("opacity",g.bar.strokeOpacity).attr("stroke-linecap","butt"),he.attr("y1",function($){return $.height}).call(_);var G=U.selectAll(".highlight").data(M);G.enter().append("line").classed("highlight",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width-g.bar.strokeWidth).attr("stroke",g.bar.fillColor).attr("opacity",g.bar.fillOpacity).attr("stroke-linecap","butt"),G.attr("y1",function($){return $.height}).call(_)}function P(U,W,Q){var ue=U.selectAll("."+g.cn.axisBrush).data(M,A);ue.enter().append("g").classed(g.cn.axisBrush,!0),f(ue,W,Q)}function L(U){return U.svgBrush.extent.map(function(W){return W.slice()})}function z(U){U.filterSpecified=!1,U.svgBrush.extent=[[-1/0,1/0]]}function F(U){return function(Q){var ue=Q.brush,se=L(ue),he=se.slice();ue.filter.set(he),U()}}function B(U){for(var W=U.slice(),Q=[],ue,se=W.shift();se;){for(ue=se.slice();(se=W.shift())&&se[0]<=ue[1];)ue[1]=Math.max(ue[1],se[1]);Q.push(ue)}return Q.length===1&&Q[0][0]>Q[0][1]&&(Q=[]),Q}function O(){var U=[],W,Q;return{set:function(ue){U=ue.map(function(se){return se.slice().sort(e)}).sort(y),U.length===1&&U[0][0]===-1/0&&U[0][1]===1/0&&(U=[[0,-1]]),W=B(U),Q=U.reduce(function(se,he){return[Math.min(se[0],he[0]),Math.max(se[1],he[1])]},[1/0,-1/0])},get:function(){return U.slice()},getConsolidated:function(){return W},getBounds:function(){return Q}}}function I(U,W,Q,ue,se,he){var G=O();return G.set(Q),{filter:G,filterSpecified:W,svgBrush:{extent:[],brushStartCallback:ue,brushCallback:F(se),brushEndCallback:he}}}function N(U,W){if(Array.isArray(U[0])?(U=U.map(function(ue){return ue.sort(e)}),W.multiselect?U=B(U.sort(y)):U=[U[0]]):U=[U.sort(e)],W.tickvals){var Q=W.tickvals.slice().sort(e);if(U=U.map(function(ue){var se=[n(0,Q,ue[0],[]),n(1,Q,ue[1],[])];if(se[1]>se[0])return se}).filter(function(ue){return ue}),!U.length)return}return U.length>1?U:U[0]}H.exports={makeBrush:I,ensureAxisBrush:P,cleanRanges:N}}}),kV=Ye({"src/traces/parcoords/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=Co(),r=fk(),o=hk(),a=wx().maxDimensionCount,i=xT();function n(c,h,v,p,T){var l=T("line.color",v);if(x(c,"line")&&g.isArrayOrTypedArray(l)){if(l.length)return T("line.colorscale"),A(c,h,p,T,{prefix:"line.",cLetter:"c"}),l.length;h.line.color=v}return 1/0}function s(c,h,v,p){function T(E,m){return g.coerce(c,h,r.dimensions,E,m)}var l=T("values"),_=T("visible");if(l&&l.length||(_=h.visible=!1),_){T("label"),T("tickvals"),T("ticktext"),T("tickformat");var w=T("range");h._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:w},t.setConvert(h._ax,p.layout),T("multiselect");var S=T("constraintrange");S&&(h.constraintrange=o.cleanRanges(S,h))}}H.exports=function(h,v,p,T){function l(m,b){return g.coerce(h,v,r,m,b)}var _=h.dimensions;Array.isArray(_)&&_.length>a&&(g.log("parcoords traces support up to "+a+" dimensions at the moment"),_.splice(a));var w=e(h,v,{name:"dimensions",layout:T,handleItemDefaults:s}),S=n(h,v,p,T,l);M(v,T,l),(!Array.isArray(w)||!w.length)&&(v.visible=!1),i(v,w,"values",S);var E=g.extendFlat({},T.font,{size:Math.round(T.font.size/1.2)});g.coerceFont(l,"labelfont",E),g.coerceFont(l,"tickfont",E,{autoShadowDflt:!0}),g.coerceFont(l,"rangefont",E),l("labelangle"),l("labelside"),l("unselected.line.color"),l("unselected.line.opacity")}}}),CV=Ye({"src/traces/parcoords/calc.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Su(),A=kv().wrap;H.exports=function(t,r){var o,a;return x.hasColorscale(r,"line")&&g(r.line.color)?(o=r.line.color,a=x.extractOpts(r.line).colorscale,x.calc(t,r,{vals:o,containerStr:"line",cLetter:"c"})):(o=M(r._length),a=[[0,r.line.color],[1,r.line.color]]),A({lineColor:o,cscale:a})};function M(e){for(var t=new Array(e),r=0;r>>16,(X&65280)>>>8,X&255],alpha:1};if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(X=String(X).toLowerCase(),bT.default[X])A=bT.default[X].slice(),e="rgb";else if(X==="transparent")M=0,e="rgb",A=[0,0,0];else if(X[0]==="#"){var t=X.slice(1),r=t.length,o=r<=4;M=1,o?(A=[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16)],r===4&&(M=parseInt(t[3]+t[3],16)/255)):(A=[parseInt(t[0]+t[1],16),parseInt(t[2]+t[3],16),parseInt(t[4]+t[5],16)],r===8&&(M=parseInt(t[6]+t[7],16)/255)),A[0]||(A[0]=0),A[1]||(A[1]=0),A[2]||(A[2]=0),e="rgb"}else if(x=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(X)){var a=x[1];e=a.replace(/a$/,"");var i=e==="cmyk"?4:e==="gray"?1:3;A=x[2].trim().split(/\s*[,\/]\s*|\s+/),e==="color"&&(e=A.shift()),A=A.map(function(n,s){if(n[n.length-1]==="%")return n=parseFloat(n)/100,s===3?n:e==="rgb"?n*255:e[0]==="h"||e[0]==="l"&&!s?n*100:e==="lab"?n*125:e==="lch"?s<2?n*150:n*360:e[0]==="o"&&!s?n:e==="oklab"?n*.4:e==="oklch"?s<2?n*.4:n*360:n;if(e[s]==="h"||s===2&&e[e.length-1]==="h"){if(wT[n]!==void 0)return wT[n];if(n.endsWith("deg"))return parseFloat(n);if(n.endsWith("turn"))return parseFloat(n)*360;if(n.endsWith("grad"))return parseFloat(n)*360/400;if(n.endsWith("rad"))return parseFloat(n)*180/Math.PI}return n==="none"?0:parseFloat(n)}),M=A.length>i?A.pop():1}else/[0-9](?:\s|\/|,)/.test(X)&&(A=X.match(/([0-9]+)/g).map(function(n){return parseFloat(n)}),e=((g=(H=X.match(/([a-z])/ig))==null?void 0:H.join(""))==null?void 0:g.toLowerCase())||"rgb");return{space:e,values:A,alpha:M}}var bT,pk,wT,PV=Qn({"node_modules/color-parse/index.js"(){bT=Ul(d5(),1),pk=LV,wT={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Tx,dk=Qn({"node_modules/color-space/rgb.js"(){Tx={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),Ax,IV=Qn({"node_modules/color-space/hsl.js"(){dk(),Ax={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(X){var H=X[0]/360,g=X[1]/100,x=X[2]/100,A,M,e,t,r,o=0;if(g===0)return r=x*255,[r,r,r];for(M=x<.5?x*(1+g):x+g-x*g,A=2*x-M,t=[0,0,0];o<3;)e=H+1/3*-(o-1),e<0?e++:e>1&&e--,r=6*e<1?A+(M-A)*6*e:2*e<1?M:3*e<2?A+(M-A)*(2/3-e)*6:A,t[o++]=r*255;return t}},Tx.hsl=function(X){var H=X[0]/255,g=X[1]/255,x=X[2]/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=M-A,t,r,o;return M===A?t=0:H===M?t=(g-x)/e:g===M?t=2+(x-H)/e:x===M&&(t=4+(H-g)/e),t=Math.min(t*60,360),t<0&&(t+=360),o=(A+M)/2,M===A?r=0:o<=.5?r=e/(M+A):r=e/(2-M-A),[t,r*100,o*100]}}}),vk={};Ps(vk,{default:()=>RV});function RV(X){Array.isArray(X)&&X.raw&&(X=String.raw(...arguments)),X instanceof Number&&(X=+X);var H,g,x,A=pk(X);if(!A.space)return[];let M=A.space[0]==="h"?Ax.min:Tx.min,e=A.space[0]==="h"?Ax.max:Tx.max;return H=Array(3),H[0]=Math.min(Math.max(A.values[0],M[0]),e[0]),H[1]=Math.min(Math.max(A.values[1],M[1]),e[1]),H[2]=Math.min(Math.max(A.values[2],M[2]),e[2]),A.space[0]==="h"&&(H=Ax.rgb(H)),H.push(Math.min(Math.max(A.alpha,0),1)),H}var DV=Qn({"node_modules/color-rgba/index.js"(){PV(),dk(),IV()}}),mk=Ye({"src/traces/parcoords/helpers.js"(X){"use strict";var H=ta().isTypedArray;X.convertTypedArray=function(g){return H(g)?Array.prototype.slice.call(g):g},X.isOrdinal=function(g){return!!g.tickvals},X.isVisible=function(g){return g.visible||!("visible"in g)}}}),zV=Ye({"src/traces/parcoords/lines.js"(X,H){"use strict";var g=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` +`),x=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(` +`),A=wx().maxDimensionCount,M=ta(),e=1e-6,t=2048,r=new Uint8Array(4),o=new Uint8Array(4),a={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function i(b){b.read({x:0,y:0,width:1,height:1,data:r})}function n(b,d,u,y,f){var P=b._gl;P.enable(P.SCISSOR_TEST),P.scissor(d,u,y,f),b.clear({color:[0,0,0,0],depth:1})}function s(b,d,u,y,f,P){var L=P.key;function z(F){var B=Math.min(y,f-F*y);F===0&&(window.cancelAnimationFrame(u.currentRafs[L]),delete u.currentRafs[L],n(b,P.scissorX,P.scissorY,P.scissorWidth,P.viewBoxSize[1])),!u.clearOnly&&(P.count=2*B,P.offset=2*F*y,d(P),F*y+B>>8*d)%256/255}function p(b,d,u){for(var y=new Array(b*(A+4)),f=0,P=0;PIe&&(Ie=ne[fe].dim1.canvasX,Ae=fe);ie===0&&n(f,0,0,B.canvasWidth,B.canvasHeight);var Ze=G(u);for(fe=0;fefe._length&&(lt=lt.slice(0,fe._length));var Me=fe.tickvals,ge;function ce(Ct,St){return{val:Ct,text:ge[St]}}function ze(Ct,St){return Ct.val-St.val}if(A(Me)&&Me.length){x.isTypedArray(Me)&&(Me=Array.from(Me)),ge=fe.ticktext,!A(ge)||!ge.length?ge=Me.map(M(fe.tickformat)):ge.length>Me.length?ge=ge.slice(0,Me.length):Me.length>ge.length&&(Me=Me.slice(0,ge.length));for(var tt=1;tt=St||ar>=Ot)return;var Cr=Qe.lineLayer.readPixel(ur,Ot-1-ar),vr=Cr[3]!==0,_r=vr?Cr[2]+256*(Cr[1]+256*Cr[0]):null,yt={x:ur,y:ar,clientX:Ct.clientX,clientY:Ct.clientY,dataIndex:Qe.model.key,curveNumber:_r};_r!==Ae&&(vr?$.hover(yt):$.unhover&&$.unhover(yt),Ae=_r)}}),be.style("opacity",function(Qe){return Qe.pick?0:1}),re.style("background","rgba(255, 255, 255, 0)");var Ie=re.selectAll("."+T.cn.parcoords).data(fe,c);Ie.exit().remove(),Ie.enter().append("g").classed(T.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),Ie.attr("transform",function(Qe){return o(Qe.model.translateX,Qe.model.translateY)});var Ze=Ie.selectAll("."+T.cn.parcoordsControlView).data(h,c);Ze.enter().append("g").classed(T.cn.parcoordsControlView,!0),Ze.attr("transform",function(Qe){return o(Qe.model.pad.l,Qe.model.pad.t)});var at=Ze.selectAll("."+T.cn.yAxis).data(function(Qe){return Qe.dimensions},c);at.enter().append("g").classed(T.cn.yAxis,!0),Ze.each(function(Qe){N(at,Qe,j)}),be.each(function(Qe){if(Qe.viewModel){!Qe.lineLayer||$?Qe.lineLayer=_(this,Qe):Qe.lineLayer.update(Qe),(Qe.key||Qe.key===0)&&(Qe.viewModel[Qe.key]=Qe.lineLayer);var Ct=!Qe.context||$;Qe.lineLayer.render(Qe.viewModel.panels,Ct)}}),at.attr("transform",function(Qe){return o(Qe.xScale(Qe.xIndex),0)}),at.call(g.behavior.drag().origin(function(Qe){return Qe}).on("drag",function(Qe){var Ct=Qe.parent;ie.linePickActive(!1),Qe.x=Math.max(-T.overdrag,Math.min(Qe.model.width+T.overdrag,g.event.x)),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,at.sort(function(St,Ot){return St.x-Ot.x}).each(function(St,Ot){St.xIndex=Ot,St.x=Qe===St?St.x:St.xScale(St.xIndex),St.canvasX=St.x*St.model.canvasPixelRatio}),N(at,Ct,j),at.filter(function(St){return Math.abs(Qe.xIndex-St.xIndex)!==0}).attr("transform",function(St){return o(St.xScale(St.xIndex),0)}),g.select(this).attr("transform",o(Qe.x,0)),at.each(function(St,Ot,jt){jt===Qe.parent.key&&(Ct.dimensions[Ot]=St)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer.render&&Ct.focusLayer.render(Ct.panels)}).on("dragend",function(Qe){var Ct=Qe.parent;Qe.x=Qe.xScale(Qe.xIndex),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,N(at,Ct,j),g.select(this).attr("transform",function(St){return o(St.x,0)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer&&Ct.focusLayer.render(Ct.panels),Ct.pickLayer&&Ct.pickLayer.render(Ct.panels,!0),ie.linePickActive(!0),$&&$.axesMoved&&$.axesMoved(Ct.key,Ct.dimensions.map(function(St){return St.crossfilterDimensionIndex}))})),at.exit().remove();var it=at.selectAll("."+T.cn.axisOverlays).data(h,c);it.enter().append("g").classed(T.cn.axisOverlays,!0),it.selectAll("."+T.cn.axis).remove();var et=it.selectAll("."+T.cn.axis).data(h,c);et.enter().append("g").classed(T.cn.axis,!0),et.each(function(Qe){var Ct=Qe.model.height/Qe.model.tickDistance,St=Qe.domainScale,Ot=St.domain();g.select(this).call(g.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(Ct,Qe.tickFormat).tickValues(Qe.ordinal?Ot:null).tickFormat(function(jt){return p.isOrdinal(Qe)?jt:W(Qe.model.dimensions[Qe.visibleIndex],jt)}).scale(St)),i.font(et.selectAll("text"),Qe.model.tickFont)}),et.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),et.selectAll("text").style("cursor","default");var lt=it.selectAll("."+T.cn.axisHeading).data(h,c);lt.enter().append("g").classed(T.cn.axisHeading,!0);var Me=lt.selectAll("."+T.cn.axisTitle).data(h,c);Me.enter().append("text").classed(T.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",J?"none":"auto"),Me.text(function(Qe){return Qe.label}).each(function(Qe){var Ct=g.select(this);i.font(Ct,Qe.model.labelFont),a.convertToTspans(Ct,se)}).attr("transform",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=T.axisTitleOffset;return(Ct.dir>0?"":o(0,2*St+Qe.model.height))+r(Ct.degrees)+o(-St*Ct.dx,-St*Ct.dy)}).attr("text-anchor",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=Math.abs(Ct.dx),Ot=Math.abs(Ct.dy);return 2*St>Ot?Ct.dir*Ct.dx<0?"start":"end":"middle"});var ge=it.selectAll("."+T.cn.axisExtent).data(h,c);ge.enter().append("g").classed(T.cn.axisExtent,!0);var ce=ge.selectAll("."+T.cn.axisExtentTop).data(h,c);ce.enter().append("g").classed(T.cn.axisExtentTop,!0),ce.attr("transform",o(0,-T.axisExtentOffset));var ze=ce.selectAll("."+T.cn.axisExtentTopText).data(h,c);ze.enter().append("text").classed(T.cn.axisExtentTopText,!0).call(B),ze.text(function(Qe){return Q(Qe,!0)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)});var tt=ge.selectAll("."+T.cn.axisExtentBottom).data(h,c);tt.enter().append("g").classed(T.cn.axisExtentBottom,!0),tt.attr("transform",function(Qe){return o(0,Qe.model.height+T.axisExtentOffset)});var nt=tt.selectAll("."+T.cn.axisExtentBottomText).data(h,c);nt.enter().append("text").classed(T.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(B),nt.text(function(Qe){return Q(Qe,!1)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)}),l.ensureAxisBrush(it,ee,se)}}}),gk=Ye({"src/traces/parcoords/plot.js"(r,H){"use strict";var g=FV(),x=_T(),A=mk().isVisible,M={};function e(o,a,i){var n=a.indexOf(i),s=o.indexOf(n);return s===-1&&(s+=a.length),s}function t(o,a){return function(n,s){return e(o,a,n)-e(o,a,s)}}var r=H.exports=function(a,i){var n=a._fullLayout,s=x(a,[],M);if(s){var c={},h={},v={},p={},T=n._size;i.forEach(function(E,m){var b=E[0].trace;v[m]=b.index;var d=p[m]=b.index;c[m]=a.data[d].dimensions,h[m]=a.data[d].dimensions.slice()});var l=function(E,m,b){var d=h[E][m],u=b.map(function(F){return F.slice()}),y="dimensions["+m+"].constraintrange",f=n._tracePreGUI[a._fullData[v[E]]._fullInput.uid];if(f[y]===void 0){var P=d.constraintrange;f[y]=P||null}var L=a._fullData[v[E]].dimensions[m];u.length?(u.length===1&&(u=u[0]),d.constraintrange=u,L.constraintrange=u.slice(),u=[u]):(delete d.constraintrange,delete L.constraintrange,u=null);var z={};z[y]=u,a.emit("plotly_restyle",[z,[p[E]]])},_=function(E){a.emit("plotly_hover",E)},w=function(E){a.emit("plotly_unhover",E)},S=function(E,m){var b=t(m,h[E].filter(A));c[E].sort(b),h[E].filter(function(d){return!A(d)}).sort(function(d){return h[E].indexOf(d)}).forEach(function(d){c[E].splice(c[E].indexOf(d),1),c[E].splice(h[E].indexOf(d),0,d)}),a.emit("plotly_restyle",[{dimensions:[c[E]]},[p[E]]])};g(a,i,{width:T.w,height:T.h,margin:{t:T.t,r:T.r,b:T.b,l:T.l}},{filterChanged:l,hover:_,unhover:w,axesMoved:S})}};r.reglPrecompiled=M}}),OV=Ye({"src/traces/parcoords/base_plot.js"(X){"use strict";var H=_n(),g=jh().getModuleCalcData,x=gk(),A=vd();X.name="parcoords",X.plot=function(M){var e=g(M.calcdata,"parcoords")[0];e.length&&x(M,e)},X.clean=function(M,e,t,r){var o=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");o&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},X.toSVG=function(M){var e=M._fullLayout._glimages,t=H.select(M).selectAll(".svg-container"),r=t.filter(function(a,i){return i===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function o(){var a=this,i=a.toDataURL("image/png"),n=e.append("svg:image");n.attr({xmlns:A.svg,"xlink:href":i,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}r.each(o),window.setTimeout(function(){H.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}}}),BV=Ye({"src/traces/parcoords/base_index.js"(X,H){"use strict";H.exports={attributes:fk(),supplyDefaults:kV(),calc:CV(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:OV(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),NV=Ye({"src/traces/parcoords/index.js"(X,H){"use strict";var g=BV();g.plot=gk(),H.exports=g}}),UV=Ye({"lib/parcoords.js"(X,H){"use strict";H.exports=NV()}}),yk=Ye({"src/traces/parcats/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Pl(),A=Au(),M=tu(),e=xs().hovertemplateAttrs,t=Wu().attributes,r=g({editType:"calc"},M("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});H.exports={domain:t({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:g({},x.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:A({editType:"calc"}),tickfont:A({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:r,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),jV=Ye({"src/traces/parcats/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=yk(),r=xT(),o=xp().isTypedArraySpec;function a(n,s,c,h,v){v("line.shape"),v("line.hovertemplate");var p=v("line.color",h.colorway[0]);if(x(n,"line")&&g.isArrayOrTypedArray(p)){if(p.length)return v("line.colorscale"),A(n,s,h,v,{prefix:"line.",cLetter:"c"}),p.length;s.line.color=c}return 1/0}function i(n,s){function c(w,S){return g.coerce(n,s,t.dimensions,w,S)}var h=c("values"),v=c("visible");if(h&&h.length||(v=s.visible=!1),v){c("label"),c("displayindex",s._index);var p=n.categoryarray,T=g.isArrayOrTypedArray(p)&&p.length>0||o(p),l;T&&(l="array");var _=c("categoryorder",l);_==="array"?(c("categoryarray"),c("ticktext")):(delete n.categoryarray,delete n.ticktext),!T&&_==="array"&&(s.categoryorder="trace")}}H.exports=function(s,c,h,v){function p(w,S){return g.coerce(s,c,t,w,S)}var T=e(s,c,{name:"dimensions",handleItemDefaults:i}),l=a(s,c,h,v,p);M(c,v,p),(!Array.isArray(T)||!T.length)&&(c.visible=!1),r(c,T,"values",l),p("hoveron"),p("hovertemplate"),p("arrangement"),p("bundlecolors"),p("sortpaths"),p("counts");var _=v.font;g.coerceFont(p,"labelfont",_,{overrideDflt:{size:Math.round(_.size)}}),g.coerceFont(p,"tickfont",_,{autoShadowDflt:!0,overrideDflt:{size:Math.round(_.size/1.2)}})}}}),VV=Ye({"src/traces/parcats/calc.js"(X,H){"use strict";var g=kv().wrap,x=Up().hasColorscale,A=jp(),M=tS(),e=Bo(),t=ta(),r=jo();H.exports=function(_,w){var S=t.filterVisible(w.dimensions);if(S.length===0)return[];var E=S.map(function(G){var $;if(G.categoryorder==="trace")$=null;else if(G.categoryorder==="array")$=G.categoryarray;else{$=M(G.values);for(var J=!0,Z=0;Z<$.length;Z++)if(!r($[Z])){J=!1;break}$.sort(J?t.sorterAsc:void 0),G.categoryorder==="category descending"&&($=$.reverse())}return h(G.values,$)}),m,b,d;t.isArrayOrTypedArray(w.counts)?m=w.counts:m=[w.counts],v(S),S.forEach(function(G,$){p(G,E[$])});var u=w.line,y;u?(x(w,"line")&&A(_,w,{vals:w.line.color,containerStr:"line",cLetter:"c"}),y=e.tryColorscale(u)):y=t.identity;function f(G){var $,J;return t.isArrayOrTypedArray(u.color)?($=u.color[G%u.color.length],J=$):$=u.color,{color:y($),rawColor:J}}var P=S[0].values.length,L={},z=E.map(function(G){return G.inds});d=0;var F,B;for(F=0;F=l.length||_[l[w]]!==void 0)return!1;_[l[w]]=!0}return!0}}}),qV=Ye({"src/traces/parcats/parcats.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolateNumber,A=E2(),M=Lc(),e=ta(),t=e.strTranslate,r=Bo(),o=bh(),a=jl();function i(Z,re,ne,j){var ee=re._context.staticPlot,ie=Z.map(se.bind(0,re,ne)),fe=j.selectAll("g.parcatslayer").data([null]);fe.enter().append("g").attr("class","parcatslayer").style("pointer-events",ee?"none":"all");var be=fe.selectAll("g.trace.parcats").data(ie,n),Ae=be.enter().append("g").attr("class","trace parcats");be.attr("transform",function(ce){return t(ce.x,ce.y)}),Ae.append("g").attr("class","paths");var Be=be.select("g.paths"),Ie=Be.selectAll("path.path").data(function(ce){return ce.paths},n);Ie.attr("fill",function(ce){return ce.model.color});var Ze=Ie.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(ce){return ce.model.color}).attr("fill-opacity",0);_(Ze),Ie.attr("d",function(ce){return ce.svgD}),Ze.empty()||Ie.sort(c),Ie.exit().remove(),Ie.on("mouseover",h).on("mouseout",v).on("click",l),Ae.append("g").attr("class","dimensions");var at=be.select("g.dimensions"),it=at.selectAll("g.dimension").data(function(ce){return ce.dimensions},n);it.enter().append("g").attr("class","dimension"),it.attr("transform",function(ce){return t(ce.x,0)}),it.exit().remove();var et=it.selectAll("g.category").data(function(ce){return ce.categories},n),lt=et.enter().append("g").attr("class","category");et.attr("transform",function(ce){return t(0,ce.y)}),lt.append("rect").attr("class","catrect").attr("pointer-events","none"),et.select("rect.catrect").attr("fill","none").attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}),E(lt);var Me=et.selectAll("rect.bandrect").data(function(ce){return ce.bands},n);Me.each(function(){e.raiseToTop(this)}),Me.attr("fill",function(ce){return ce.color});var ge=Me.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(ce){return ce.color}).attr("fill-opacity",0);Me.attr("fill",function(ce){return ce.color}).attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}).attr("y",function(ce){return ce.y}).attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":ce.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),b(ge),Me.exit().remove(),lt.append("text").attr("class","catlabel").attr("pointer-events","none"),et.select("text.catlabel").attr("text-anchor",function(ce){return s(ce)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(ce){return s(ce)?ce.width+5:-5}).attr("y",function(ce){return ce.height/2}).text(function(ce){return ce.model.categoryLabel}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.categorylabelfont),a.convertToTspans(g.select(this),re)}),lt.append("text").attr("class","dimlabel"),et.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(ce){return ce.width/2}).attr("y",-5).text(function(ce,ze){return ze===0?ce.parcatsViewModel.model.dimensions[ce.model.dimensionInd].dimensionLabel:null}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.labelfont)}),et.selectAll("rect.bandrect").on("mouseover",B).on("mouseout",O),et.exit().remove(),it.call(g.behavior.drag().origin(function(ce){return{x:ce.x,y:0}}).on("dragstart",I).on("drag",N).on("dragend",U)),be.each(function(ce){ce.traceSelection=g.select(this),ce.pathSelection=g.select(this).selectAll("g.paths").selectAll("path.path"),ce.dimensionSelection=g.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),be.exit().remove()}H.exports=function(Z,re,ne,j){i(ne,Z,j,re)};function n(Z){return Z.key}function s(Z){var re=Z.parcatsViewModel.dimensions.length,ne=Z.parcatsViewModel.dimensions[re-1].model.dimensionInd;return Z.model.dimensionInd===ne}function c(Z,re){return Z.model.rawColor>re.model.rawColor?1:Z.model.rawColor"),Qe=g.mouse(ee)[0];M.loneHover({trace:ie,x:et-be.left+Ae.left,y:lt-be.top+Ae.top,text:nt,color:Z.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:Qe1&&Be.displayInd===Ae.dimensions.length-1?(at=fe.left,it="left"):(at=fe.left+fe.width,it="right");var et=be.model.count,lt=be.model.categoryLabel,Me=et/be.parcatsViewModel.model.count,ge={countLabel:et,categoryLabel:lt,probabilityLabel:Me.toFixed(3)},ce=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&ce.push(["Count:",ge.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&ce.push(["P("+ge.categoryLabel+"):",ge.probabilityLabel].join(" "));var ze=ce.join("
");return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:ze,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:ge,eventData:[{data:Ie._input,fullData:Ie,count:et,category:lt,probability:Me}]}}function z(Z,re,ne){var j=[];return g.select(ne.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var ee=this;j.push(L(Z,re,ee))}),j}function F(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=ne.getBoundingClientRect(),fe=g.select(ne).datum(),be=fe.categoryViewModel,Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=ie.y+ie.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=ie.left,it="left"):(at=ie.left+ie.width,it="right");var et=be.model.categoryLabel,lt=fe.parcatsViewModel.model.count,Me=0;fe.categoryViewModel.bands.forEach(function(jt){jt.color===fe.color&&(Me+=jt.count)});var ge=be.model.count,ce=0;Ae.pathSelection.each(function(jt){jt.model.color===fe.color&&(ce+=jt.model.count)});var ze=Me/lt,tt=Me/ce,nt=Me/ge,Qe={countLabel:Me,categoryLabel:et,probabilityLabel:ze.toFixed(3)},Ct=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&Ct.push(["Count:",Qe.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(Ct.push("P(color \u2229 "+et+"): "+Qe.probabilityLabel),Ct.push("P("+et+" | color): "+tt.toFixed(3)),Ct.push("P(color | "+et+"): "+nt.toFixed(3)));var St=Ct.join("
"),Ot=o.mostReadable(fe.color,["black","white"]);return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:St,color:fe.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:Ot,fontSize:10,idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:Qe,eventData:[{data:Ie._input,fullData:Ie,category:et,count:lt,probability:ze,categorycount:ge,colorcount:ce,bandcolorcount:Me}]}}function B(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=g.mouse(this)[1];if(re<-1)return;var ne=Z.parcatsViewModel.graphDiv,j=ne._fullLayout,ee=j._paperdiv.node().getBoundingClientRect(),ie=Z.parcatsViewModel.hoveron,fe=this;if(ie==="color"?(y(fe),P(fe,"plotly_hover",g.event)):(u(fe),f(fe,"plotly_hover",g.event)),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var be;ie==="category"?be=L(ne,ee,fe):ie==="color"?be=F(ne,ee,fe):ie==="dimension"&&(be=z(ne,ee,fe)),be&&M.loneHover(be,{container:j._hoverlayer.node(),outerContainer:j._paper.node(),gd:ne})}}}function O(Z){var re=Z.parcatsViewModel;if(!re.dragDimension&&(_(re.pathSelection),E(re.dimensionSelection.selectAll("g.category")),b(re.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),M.loneUnhover(re.graphDiv._fullLayout._hoverlayer.node()),re.pathSelection.sort(c),re.hoverinfoItems.indexOf("skip")===-1)){var ne=Z.parcatsViewModel.hoveron,j=this;ne==="color"?P(j,"plotly_unhover",g.event):f(j,"plotly_unhover",g.event)}}function I(Z){Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragDimensionDisplayInd=Z.model.displayInd,Z.initialDragDimensionDisplayInds=Z.parcatsViewModel.model.dimensions.map(function(re){return re.displayInd}),Z.dragHasMoved=!1,Z.dragCategoryDisplayInd=null,g.select(this).selectAll("g.category").select("rect.catrect").each(function(re){var ne=g.mouse(this)[0],j=g.mouse(this)[1];-2<=ne&&ne<=re.width+2&&-2<=j&&j<=re.height+2&&(Z.dragCategoryDisplayInd=re.model.displayInd,Z.initialDragCategoryDisplayInds=Z.model.categories.map(function(ee){return ee.displayInd}),re.model.dragY=re.y,e.raiseToTop(this.parentNode),g.select(this.parentNode).selectAll("rect.bandrect").each(function(ee){ee.yIe.y+Ie.height/2&&(ie.model.displayInd=Ie.model.displayInd,Ie.model.displayInd=be),Z.dragCategoryDisplayInd=ie.model.displayInd}if(Z.dragCategoryDisplayInd===null||Z.parcatsViewModel.arrangement==="freeform"){ee.model.dragX=g.event.x;var Ze=Z.parcatsViewModel.dimensions[ne],at=Z.parcatsViewModel.dimensions[j];Ze!==void 0&&ee.model.dragXat.x&&(ee.model.displayInd=at.model.displayInd,at.model.displayInd=Z.dragDimensionDisplayInd),Z.dragDimensionDisplayInd=ee.model.displayInd}$(Z.parcatsViewModel),G(Z.parcatsViewModel),ue(Z.parcatsViewModel),Q(Z.parcatsViewModel)}}function U(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&Z.dragDimensionDisplayInd!==null){g.select(this).selectAll("text").attr("font-weight","normal");var re={},ne=W(Z.parcatsViewModel),j=Z.parcatsViewModel.model.dimensions.map(function(at){return at.displayInd}),ee=Z.initialDragDimensionDisplayInds.some(function(at,it){return at!==j[it]});ee&&j.forEach(function(at,it){var et=Z.parcatsViewModel.model.dimensions[it].containerInd;re["dimensions["+et+"].displayindex"]=at});var ie=!1;if(Z.dragCategoryDisplayInd!==null){var fe=Z.model.categories.map(function(at){return at.displayInd});if(ie=Z.initialDragCategoryDisplayInds.some(function(at,it){return at!==fe[it]}),ie){var be=Z.model.categories.slice().sort(function(at,it){return at.displayInd-it.displayInd}),Ae=be.map(function(at){return at.categoryValue}),Be=be.map(function(at){return at.categoryLabel});re["dimensions["+Z.model.containerInd+"].categoryarray"]=[Ae],re["dimensions["+Z.model.containerInd+"].ticktext"]=[Be],re["dimensions["+Z.model.containerInd+"].categoryorder"]="array"}}if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!Z.dragHasMoved&&Z.potentialClickBand&&(Z.parcatsViewModel.hoveron==="color"?P(Z.potentialClickBand,"plotly_click",g.event.sourceEvent):f(Z.potentialClickBand,"plotly_click",g.event.sourceEvent)),Z.model.dragX=null,Z.dragCategoryDisplayInd!==null){var Ie=Z.parcatsViewModel.dimensions[Z.dragDimensionDisplayInd].categories[Z.dragCategoryDisplayInd];Ie.model.dragY=null,Z.dragCategoryDisplayInd=null}Z.dragDimensionDisplayInd=null,Z.parcatsViewModel.dragDimension=null,Z.dragHasMoved=null,Z.potentialClickBand=null,$(Z.parcatsViewModel),G(Z.parcatsViewModel);var Ze=g.transition().duration(300).ease("cubic-in-out");Ze.each(function(){ue(Z.parcatsViewModel,!0),Q(Z.parcatsViewModel,!0)}).each("end",function(){(ee||ie)&&A.restyle(Z.parcatsViewModel.graphDiv,re,[ne])})}}function W(Z){for(var re,ne=Z.graphDiv._fullData,j=0;j=0;Ae--)Be+="C"+fe[Ae]+","+(re[Ae+1]+j)+" "+ie[Ae]+","+(re[Ae]+j)+" "+(Z[Ae]+ne[Ae])+","+(re[Ae]+j),Be+="l-"+ne[Ae]+",0 ";return Be+="Z",Be}function G(Z){var re=Z.dimensions,ne=Z.model,j=re.map(function(Cr){return Cr.categories.map(function(vr){return vr.y})}),ee=Z.model.dimensions.map(function(Cr){return Cr.categories.map(function(vr){return vr.displayInd})}),ie=Z.model.dimensions.map(function(Cr){return Cr.displayInd}),fe=Z.dimensions.map(function(Cr){return Cr.model.dimensionInd}),be=re.map(function(Cr){return Cr.x}),Ae=re.map(function(Cr){return Cr.width}),Be=[];for(var Ie in ne.paths)ne.paths.hasOwnProperty(Ie)&&Be.push(ne.paths[Ie]);function Ze(Cr){var vr=Cr.categoryInds.map(function(yt,Fe){return ee[Fe][yt]}),_r=fe.map(function(yt){return vr[yt]});return _r}Be.sort(function(Cr,vr){var _r=Ze(Cr),yt=Ze(vr);return Z.sortpaths==="backward"&&(_r.reverse(),yt.reverse()),_r.push(Cr.valueInds[0]),yt.push(vr.valueInds[0]),Z.bundlecolors&&(_r.unshift(Cr.rawColor),yt.unshift(vr.rawColor)),_ryt?1:0});for(var at=new Array(Be.length),it=re[0].model.count,et=re[0].categories.map(function(Cr){return Cr.height}).reduce(function(Cr,vr){return Cr+vr}),lt=0;lt0?ge=et*(Me.count/it):ge=0;for(var ce=new Array(j.length),ze=0;ze1?fe=(Z.width-2*ne-j)/(ee-1):fe=0,be=ne,Ae=be+fe*ie;var Be=[],Ie=Z.model.maxCats,Ze=re.categories.length,at=8,it=re.count,et=Z.height-at*(Ie-1),lt,Me,ge,ce,ze,tt=(Ie-Ze)*at/2,nt=re.categories.map(function(Qe){return{displayInd:Qe.displayInd,categoryInd:Qe.categoryInd}});for(nt.sort(function(Qe,Ct){return Qe.displayInd-Ct.displayInd}),ze=0;ze0?lt=Me.count/it*et:lt=0,ge={key:Me.valueInds[0],model:Me,width:j,height:lt,y:Me.dragY!==null?Me.dragY:tt,bands:[],parcatsViewModel:Z},tt=tt+lt+at,Be.push(ge);return{key:re.dimensionInd,x:re.dragX!==null?re.dragX:Ae,y:0,width:j,model:re,categories:Be,parcatsViewModel:Z,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}}}),_k=Ye({"src/traces/parcats/plot.js"(X,H){"use strict";var g=qV();H.exports=function(A,M,e,t){var r=A._fullLayout,o=r._paper,a=r._size;g(A,o,M,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},e,t)}}}),HV=Ye({"src/traces/parcats/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=_k(),x="parcats";X.name=x,X.plot=function(A,M,e,t){var r=H(A.calcdata,x);if(r.length){var o=r[0];g(A,o,e,t)}},X.clean=function(A,M,e,t){var r=t._has&&t._has("parcats"),o=M._has&&M._has("parcats");r&&!o&&t._paperdiv.selectAll(".parcats").remove()}}}),GV=Ye({"src/traces/parcats/index.js"(X,H){"use strict";H.exports={attributes:yk(),supplyDefaults:jV(),calc:VV(),plot:_k(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:HV(),categories:["noOpacity"],meta:{}}}}),WV=Ye({"lib/parcats.js"(X,H){"use strict";H.exports=GV()}}),am=Ye({"src/plots/mapbox/constants.js"(X,H){"use strict";var g=Km(),x="1.13.4",A='\xA9
OpenStreetMap contributors',M=['\xA9 Carto',A].join(" "),e=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),t=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),r={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:A,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:t,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},o=g(r);H.exports={requiredVersion:x,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:r,styleValuesNonMapbox:o,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+x+"."].join(` +`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(` +`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",o.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` +`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(` +`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}}}),Sx=Ye({"src/plots/mapbox/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=am(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("mapbox",".layers",!0)],domain:A({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:o.styleValuesMapbox.concat(o.styleValuesNonMapbox),dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),TT=Ye({"src/traces/scattermapbox/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Sx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Sx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),xk=Ye({"src/traces/scattermapbox/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),ZV=Ye({"src/traces/scattermapbox/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=TT(),o=xk().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),bk=Ye({"src/traces/scattermapbox/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),wk=Ye({"src/plots/mapbox/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),XV=Ye({"src/traces/scattermapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=xk().isSupportedFont,i=wk(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),YV=Ye({"src/traces/scattermapbox/plot.js"(X,H){"use strict";var g=ta(),x=XV(),A=am().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermapbox",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("
")}H.exports={hoverPoints:r,getExtraText:o}}}),KV=Ye({"src/traces/scattermapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),JV=Ye({"src/traces/scattermapbox/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s"u"&&(C=1e-6);var V,oe,_e,Pe,je;for(_e=k,je=0;je<8;je++){if(Pe=this.sampleCurveX(_e)-k,Math.abs(Pe)oe)return oe;for(;VPe?V=_e:oe=_e,_e=(oe-V)*.5+V}return _e},a.prototype.solve=function(k,C){return this.sampleCurveY(this.solveCurveX(k,C))};var i=n;function n(k,C){this.x=k,this.y=C}n.prototype={clone:function(){return new n(this.x,this.y)},add:function(k){return this.clone()._add(k)},sub:function(k){return this.clone()._sub(k)},multByPoint:function(k){return this.clone()._multByPoint(k)},divByPoint:function(k){return this.clone()._divByPoint(k)},mult:function(k){return this.clone()._mult(k)},div:function(k){return this.clone()._div(k)},rotate:function(k){return this.clone()._rotate(k)},rotateAround:function(k,C){return this.clone()._rotateAround(k,C)},matMult:function(k){return this.clone()._matMult(k)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(k){return this.x===k.x&&this.y===k.y},dist:function(k){return Math.sqrt(this.distSqr(k))},distSqr:function(k){var C=k.x-this.x,V=k.y-this.y;return C*C+V*V},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(k){return Math.atan2(this.y-k.y,this.x-k.x)},angleWith:function(k){return this.angleWithSep(k.x,k.y)},angleWithSep:function(k,C){return Math.atan2(this.x*C-this.y*k,this.x*k+this.y*C)},_matMult:function(k){var C=k[0]*this.x+k[1]*this.y,V=k[2]*this.x+k[3]*this.y;return this.x=C,this.y=V,this},_add:function(k){return this.x+=k.x,this.y+=k.y,this},_sub:function(k){return this.x-=k.x,this.y-=k.y,this},_mult:function(k){return this.x*=k,this.y*=k,this},_div:function(k){return this.x/=k,this.y/=k,this},_multByPoint:function(k){return this.x*=k.x,this.y*=k.y,this},_divByPoint:function(k){return this.x/=k.x,this.y/=k.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var k=this.y;return this.y=this.x,this.x=-k,this},_rotate:function(k){var C=Math.cos(k),V=Math.sin(k),oe=C*this.x-V*this.y,_e=V*this.x+C*this.y;return this.x=oe,this.y=_e,this},_rotateAround:function(k,C){var V=Math.cos(k),oe=Math.sin(k),_e=C.x+V*(this.x-C.x)-oe*(this.y-C.y),Pe=C.y+oe*(this.x-C.x)+V*(this.y-C.y);return this.x=_e,this.y=Pe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},n.convert=function(k){return k instanceof n?k:Array.isArray(k)?new n(k[0],k[1]):k};var s=typeof self<"u"?self:{};function c(k,C){if(Array.isArray(k)){if(!Array.isArray(C)||k.length!==C.length)return!1;for(var V=0;V=1)return 1;var C=k*k,V=C*k;return 4*(k<.5?V:3*(k-C)+V-.75)}function p(k,C,V,oe){var _e=new o(k,C,V,oe);return function(Pe){return _e.solve(Pe)}}var T=p(.25,.1,.25,1);function l(k,C,V){return Math.min(V,Math.max(C,k))}function _(k,C,V){var oe=V-C,_e=((k-C)%oe+oe)%oe+C;return _e===C?V:_e}function w(k,C,V){if(!k.length)return V(null,[]);var oe=k.length,_e=new Array(k.length),Pe=null;k.forEach(function(je,ct){C(je,function(Lt,Nt){Lt&&(Pe=Lt),_e[ct]=Nt,--oe===0&&V(Pe,_e)})})}function S(k){var C=[];for(var V in k)C.push(k[V]);return C}function E(k,C){var V=[];for(var oe in k)oe in C||V.push(oe);return V}function m(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function b(k,C){for(var V={},oe=0;oe>C/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,k)}return k()}function f(k){return k<=1?1:Math.pow(2,Math.ceil(Math.log(k)/Math.LN2))}function P(k){return k?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(k):!1}function L(k,C){k.forEach(function(V){C[V]&&(C[V]=C[V].bind(C))})}function z(k,C){return k.indexOf(C,k.length-C.length)!==-1}function F(k,C,V){var oe={};for(var _e in k)oe[_e]=C.call(V||this,k[_e],_e,k);return oe}function B(k,C,V){var oe={};for(var _e in k)C.call(V||this,k[_e],_e,k)&&(oe[_e]=k[_e]);return oe}function O(k){return Array.isArray(k)?k.map(O):typeof k=="object"&&k?F(k,O):k}function I(k,C){for(var V=0;V=0)return!0;return!1}var N={};function U(k){N[k]||(typeof console<"u"&&console.warn(k),N[k]=!0)}function W(k,C,V){return(V.y-k.y)*(C.x-k.x)>(C.y-k.y)*(V.x-k.x)}function Q(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe=void 0,je=void 0;V@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,V={};if(k.replace(C,function(_e,Pe,je,ct){var Lt=je||ct;return V[Pe]=Lt?Lt.toLowerCase():!0,""}),V["max-age"]){var oe=parseInt(V["max-age"],10);isNaN(oe)?delete V["max-age"]:V["max-age"]=oe}return V}var G=null;function $(k){if(G==null){var C=k.navigator?k.navigator.userAgent:null;G=!!k.safari||!!(C&&(/\b(iPad|iPhone|iPod)\b/.test(C)||C.match("Safari")&&!C.match("Chrome")))}return G}function J(k){try{var C=s[k];return C.setItem("_mapbox_test_",1),C.removeItem("_mapbox_test_"),!0}catch{return!1}}function Z(k){return s.btoa(encodeURIComponent(k).replace(/%([0-9A-F]{2})/g,function(C,V){return String.fromCharCode(+("0x"+V))}))}function re(k){return decodeURIComponent(s.atob(k).split("").map(function(C){return"%"+("00"+C.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var ne=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),j=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,ee=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,ie,fe,be={now:ne,frame:function(C){var V=j(C);return{cancel:function(){return ee(V)}}},getImageData:function(C,V){V===void 0&&(V=0);var oe=s.document.createElement("canvas"),_e=oe.getContext("2d");if(!_e)throw new Error("failed to create canvas 2d context");return oe.width=C.width,oe.height=C.height,_e.drawImage(C,0,0,C.width,C.height),_e.getImageData(-V,-V,C.width+2*V,C.height+2*V)},resolveURL:function(C){return ie||(ie=s.document.createElement("a")),ie.href=C,ie.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return s.matchMedia?(fe==null&&(fe=s.matchMedia("(prefers-reduced-motion: reduce)")),fe.matches):!1}},Ae={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Be={supported:!1,testSupport:et},Ie,Ze=!1,at,it=!1;s.document&&(at=s.document.createElement("img"),at.onload=function(){Ie&<(Ie),Ie=null,it=!0},at.onerror=function(){Ze=!0,Ie=null},at.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function et(k){Ze||!at||(it?lt(k):Ie=k)}function lt(k){var C=k.createTexture();k.bindTexture(k.TEXTURE_2D,C);try{if(k.texImage2D(k.TEXTURE_2D,0,k.RGBA,k.RGBA,k.UNSIGNED_BYTE,at),k.isContextLost())return;Be.supported=!0}catch{}k.deleteTexture(C),Ze=!0}var Me="01";function ge(){for(var k="1",C="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",V="",oe=0;oe<10;oe++)V+=C[Math.floor(Math.random()*62)];var _e=12*60*60*1e3,Pe=[k,Me,V].join(""),je=Date.now()+_e;return{token:Pe,tokenExpiresAt:je}}var ce=function(C,V){this._transformRequestFn=C,this._customAccessToken=V,this._createSkuToken()};ce.prototype._createSkuToken=function(){var C=ge();this._skuToken=C.token,this._skuTokenExpiresAt=C.tokenExpiresAt},ce.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ce.prototype.transformRequest=function(C,V){return this._transformRequestFn?this._transformRequestFn(C,V)||{url:C}:{url:C}},ce.prototype.normalizeStyleURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/styles/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeGlyphsURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/fonts/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSourceURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/v4/"+oe.authority+".json",oe.params.push("secure"),this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSpriteURL=function(C,V,oe,_e){var Pe=Ot(C);return ze(C)?(Pe.path="/styles/v1"+Pe.path+"/sprite"+V+oe,this._makeAPIURL(Pe,this._customAccessToken||_e)):(Pe.path+=""+V+oe,jt(Pe))},ce.prototype.normalizeTileURL=function(C,V){if(this._isSkuTokenExpired()&&this._createSkuToken(),C&&!ze(C))return C;var oe=Ot(C),_e=/(\.(png|jpg)\d*)(?=$)/,Pe=/^.+\/v4\//,je=be.devicePixelRatio>=2||V===512?"@2x":"",ct=Be.supported?".webp":"$1";oe.path=oe.path.replace(_e,""+je+ct),oe.path=oe.path.replace(Pe,"/"),oe.path="/v4"+oe.path;var Lt=this._customAccessToken||Ct(oe.params)||Ae.ACCESS_TOKEN;return Ae.REQUIRE_ACCESS_TOKEN&&Lt&&this._skuToken&&oe.params.push("sku="+this._skuToken),this._makeAPIURL(oe,Lt)},ce.prototype.canonicalizeTileURL=function(C,V){var oe="/v4/",_e=/\.[\w]+$/,Pe=Ot(C);if(!Pe.path.match(/(^\/v4\/)/)||!Pe.path.match(_e))return C;var je="mapbox://tiles/";je+=Pe.path.replace(oe,"");var ct=Pe.params;return V&&(ct=ct.filter(function(Lt){return!Lt.match(/^access_token=/)})),ct.length&&(je+="?"+ct.join("&")),je},ce.prototype.canonicalizeTileset=function(C,V){for(var oe=V?ze(V):!1,_e=[],Pe=0,je=C.tiles||[];Pe=0&&C.params.splice(Pe,1)}if(_e.path!=="/"&&(C.path=""+_e.path+C.path),!Ae.REQUIRE_ACCESS_TOKEN)return jt(C);if(V=V||Ae.ACCESS_TOKEN,!V)throw new Error("An API access token is required to use Mapbox GL. "+oe);if(V[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+oe);return C.params=C.params.filter(function(je){return je.indexOf("access_token")===-1}),C.params.push("access_token="+V),jt(C)};function ze(k){return k.indexOf("mapbox:")===0}var tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function nt(k){return tt.test(k)}function Qe(k){return k.indexOf("sku=")>0&&nt(k)}function Ct(k){for(var C=0,V=k;C=1&&s.localStorage.setItem(V,JSON.stringify(this.eventData))}catch{U("Unable to write to LocalStorage")}},Cr.prototype.processRequests=function(C){},Cr.prototype.postEvent=function(C,V,oe,_e){var Pe=this;if(Ae.EVENTS_URL){var je=Ot(Ae.EVENTS_URL);je.params.push("access_token="+(_e||Ae.ACCESS_TOKEN||""));var ct={event:this.type,created:new Date(C).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:Me,userId:this.anonId},Lt=V?m(ct,V):ct,Nt={url:jt(je),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Lt])};this.pendingRequest=Xr(Nt,function(Xt){Pe.pendingRequest=null,oe(Xt),Pe.saveEventData(),Pe.processRequests(_e)})}},Cr.prototype.queueRequest=function(C,V){this.queue.push(C),this.processRequests(V)};var vr=function(k){function C(){k.call(this,"map.load"),this.success={},this.skuToken=""}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postMapLoadEvent=function(oe,_e,Pe,je){this.skuToken=Pe,(Ae.EVENTS_URL&&je||Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(ct){return ze(ct)||nt(ct)}))&&this.queueRequest({id:_e,timestamp:Date.now()},je)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){var Pe=this.queue.shift(),je=Pe.id,ct=Pe.timestamp;je&&this.success[je]||(this.anonId||this.fetchEventData(),P(this.anonId)||(this.anonId=y()),this.postEvent(ct,{skuToken:this.skuToken},function(Lt){Lt||je&&(_e.success[je]=!0)},oe))}},C}(Cr),_r=function(k){function C(V){k.call(this,"appUserTurnstile"),this._customAccessToken=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postTurnstileEvent=function(oe,_e){Ae.EVENTS_URL&&Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(Pe){return ze(Pe)||nt(Pe)})&&this.queueRequest(Date.now(),_e)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var Pe=ar(Ae.ACCESS_TOKEN),je=Pe?Pe.u:Ae.ACCESS_TOKEN,ct=je!==this.eventData.tokenU;P(this.anonId)||(this.anonId=y(),ct=!0);var Lt=this.queue.shift();if(this.eventData.lastSuccess){var Nt=new Date(this.eventData.lastSuccess),Xt=new Date(Lt),gr=(Lt-this.eventData.lastSuccess)/(24*60*60*1e3);ct=ct||gr>=1||gr<-1||Nt.getDate()!==Xt.getDate()}else ct=!0;if(!ct)return this.processRequests();this.postEvent(Lt,{"enabled.telemetry":!1},function(Br){Br||(_e.eventData.lastSuccess=Lt,_e.eventData.tokenU=je)},oe)}},C}(Cr),yt=new _r,Fe=yt.postTurnstileEvent.bind(yt),Ke=new vr,Ne=Ke.postMapLoadEvent.bind(Ke),Ee="mapbox-tiles",Ve=500,ke=50,Te=1e3*60*7,Le;function rt(){s.caches&&!Le&&(Le=s.caches.open(Ee))}var dt;function xt(k,C){if(dt===void 0)try{new Response(new ReadableStream),dt=!0}catch{dt=!1}dt?C(k.body):k.blob().then(C)}function It(k,C,V){if(rt(),!!Le){var oe={status:C.status,statusText:C.statusText,headers:new s.Headers};C.headers.forEach(function(je,ct){return oe.headers.set(ct,je)});var _e=he(C.headers.get("Cache-Control")||"");if(!_e["no-store"]){_e["max-age"]&&oe.headers.set("Expires",new Date(V+_e["max-age"]*1e3).toUTCString());var Pe=new Date(oe.headers.get("Expires")).getTime()-V;PeDate.now()&&!V["no-cache"]}var sr=1/0;function sa(k){sr++,sr>ke&&(k.getActor().send("enforceCacheSizeLimit",Ve),sr=0)}function Aa(k){rt(),Le&&Le.then(function(C){C.keys().then(function(V){for(var oe=0;oe=200&&V.status<300||V.status===0)&&V.response!==null){var _e=V.response;if(k.type==="json")try{_e=JSON.parse(V.response)}catch(Pe){return C(Pe)}C(null,_e,V.getResponseHeader("Cache-Control"),V.getResponseHeader("Expires"))}else C(new ni(V.statusText,V.status,k.url))},V.send(k.body),{cancel:function(){return V.abort()}}}var xr=function(k,C){if(!zt(k.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return Vt(k,C);if(se()&&self.worker&&self.worker.actor){var V=!0;return self.worker.actor.send("getResource",k,C,void 0,V)}}return Ut(k,C)},Zr=function(k,C){return xr(m(k,{type:"json"}),C)},pa=function(k,C){return xr(m(k,{type:"arrayBuffer"}),C)},Xr=function(k,C){return xr(m(k,{method:"POST"}),C)};function Ea(k){var C=s.document.createElement("a");return C.href=k,C.protocol===s.document.location.protocol&&C.host===s.document.location.host}var Fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function qa(k,C,V,oe){var _e=new s.Image,Pe=s.URL;_e.onload=function(){C(null,_e),Pe.revokeObjectURL(_e.src),_e.onload=null,s.requestAnimationFrame(function(){_e.src=Fa})},_e.onerror=function(){return C(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var je=new s.Blob([new Uint8Array(k)],{type:"image/png"});_e.cacheControl=V,_e.expires=oe,_e.src=k.byteLength?Pe.createObjectURL(je):Fa}function ya(k,C){var V=new s.Blob([new Uint8Array(k)],{type:"image/png"});s.createImageBitmap(V).then(function(oe){C(null,oe)}).catch(function(oe){C(new Error("Could not load image because of "+oe.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var $a,mt,gt=function(){$a=[],mt=0};gt();var Er=function(k,C){if(Be.supported&&(k.headers||(k.headers={}),k.headers.accept="image/webp,*/*"),mt>=Ae.MAX_PARALLEL_IMAGE_REQUESTS){var V={requestParameters:k,callback:C,cancelled:!1,cancel:function(){this.cancelled=!0}};return $a.push(V),V}mt++;var oe=!1,_e=function(){if(!oe)for(oe=!0,mt--;$a.length&&mt0||this._oneTimeListeners&&this._oneTimeListeners[C]&&this._oneTimeListeners[C].length>0||this._eventedParent&&this._eventedParent.listens(C)},Lr.prototype.setEventedParent=function(C,V){return this._eventedParent=C,this._eventedParentData=V,this};var Jr=8,oa={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},ca={"*":{type:"source"}},kt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],ir={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},mr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},$r={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ma={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ba={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Ca={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},da={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Sa=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],Ti={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ai={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},an={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},sn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},On={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},$n={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Cn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={type:"array",value:"*"},Xi={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Jo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},zo={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},as={type:"array",value:"*",minimum:1},Pn={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},go=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],In={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},Do={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ho={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},Qo={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Xn={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},po={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},ys={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Is={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Fs={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},$o={"*":{type:"string"}},fi={$version:Jr,$root:oa,sources:ca,source:kt,source_vector:ir,source_raster:mr,source_raster_dem:$r,source_geojson:ma,source_video:Ba,source_image:Ca,layer:da,layout:Sa,layout_background:Ti,layout_fill:ai,layout_circle:an,layout_heatmap:sn,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Mn,layout_symbol:On,layout_raster:$n,layout_hillshade:Cn,filter:Lo,filter_operator:Xi,geometry_type:Jo,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:zo,expression:as,light:Pn,paint:go,paint_fill:In,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:Do,paint_circle:Ho,paint_heatmap:Qo,paint_symbol:Xn,paint_raster:po,paint_hillshade:ys,paint_background:Is,transition:Fs,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:$o},mn=function(C,V,oe,_e){this.message=(C?C+": ":"")+oe,_e&&(this.identifier=_e),V!=null&&V.__line__&&(this.line=V.__line__)};function ol(k){var C=k.key,V=k.value;return V?[new mn(C,V,"constants have been deprecated as of v8")]:[]}function Os(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function so(k){return k instanceof Number||k instanceof String||k instanceof Boolean?k.valueOf():k}function Ns(k){if(Array.isArray(k))return k.map(Ns);if(k instanceof Object&&!(k instanceof Number||k instanceof String||k instanceof Boolean)){var C={};for(var V in k)C[V]=Ns(k[V]);return C}return so(k)}var fs=function(k){function C(V,oe){k.call(this,oe),this.message=oe,this.key=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Error),al=function(C,V){V===void 0&&(V=[]),this.parent=C,this.bindings={};for(var oe=0,_e=V;oe<_e.length;oe+=1){var Pe=_e[oe],je=Pe[0],ct=Pe[1];this.bindings[je]=ct}};al.prototype.concat=function(C){return new al(this,C)},al.prototype.get=function(C){if(this.bindings[C])return this.bindings[C];if(this.parent)return this.parent.get(C);throw new Error(C+" not found in scope.")},al.prototype.has=function(C){return this.bindings[C]?!0:this.parent?this.parent.has(C):!1};var vl={kind:"null"},ji={kind:"number"},To={kind:"string"},Yn={kind:"boolean"},_s={kind:"color"},Yo={kind:"object"},Nn={kind:"value"},Wl={kind:"error"},Zu={kind:"collator"},ml={kind:"formatted"},Bu={kind:"resolvedImage"};function El(k,C){return{kind:"array",itemType:k,N:C}}function qs(k){if(k.kind==="array"){var C=qs(k.itemType);return typeof k.N=="number"?"array<"+C+", "+k.N+">":k.itemType.kind==="value"?"array":"array<"+C+">"}else return k.kind}var Jl=[vl,ji,To,Yn,_s,ml,Yo,El(Nn),Bu];function Nu(k,C){if(C.kind==="error")return null;if(k.kind==="array"){if(C.kind==="array"&&(C.N===0&&C.itemType.kind==="value"||!Nu(k.itemType,C.itemType))&&(typeof k.N!="number"||k.N===C.N))return null}else{if(k.kind===C.kind)return null;if(k.kind==="value")for(var V=0,oe=Jl;V255?255:Nt}function _e(Nt){return Nt<0?0:Nt>1?1:Nt}function Pe(Nt){return Nt[Nt.length-1]==="%"?oe(parseFloat(Nt)/100*255):oe(parseInt(Nt))}function je(Nt){return Nt[Nt.length-1]==="%"?_e(parseFloat(Nt)/100):_e(parseFloat(Nt))}function ct(Nt,Xt,gr){return gr<0?gr+=1:gr>1&&(gr-=1),gr*6<1?Nt+(Xt-Nt)*gr*6:gr*2<1?Xt:gr*3<2?Nt+(Xt-Nt)*(2/3-gr)*6:Nt}function Lt(Nt){var Xt=Nt.replace(/ /g,"").toLowerCase();if(Xt in V)return V[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=4095?[(gr&3840)>>4|(gr&3840)>>8,gr&240|(gr&240)>>4,gr&15|(gr&15)<<4,1]:null}else if(Xt.length===7){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=16777215?[(gr&16711680)>>16,(gr&65280)>>8,gr&255,1]:null}return null}var Br=Xt.indexOf("("),Rr=Xt.indexOf(")");if(Br!==-1&&Rr+1===Xt.length){var na=Xt.substr(0,Br),Ia=Xt.substr(Br+1,Rr-(Br+1)).split(","),ii=1;switch(na){case"rgba":if(Ia.length!==4)return null;ii=je(Ia.pop());case"rgb":return Ia.length!==3?null:[Pe(Ia[0]),Pe(Ia[1]),Pe(Ia[2]),ii];case"hsla":if(Ia.length!==4)return null;ii=je(Ia.pop());case"hsl":if(Ia.length!==3)return null;var Wa=(parseFloat(Ia[0])%360+360)%360/360,Si=je(Ia[1]),ci=je(Ia[2]),Ai=ci<=.5?ci*(Si+1):ci+Si-ci*Si,Li=ci*2-Ai;return[oe(ct(Li,Ai,Wa+1/3)*255),oe(ct(Li,Ai,Wa)*255),oe(ct(Li,Ai,Wa-1/3)*255),ii];default:return null}}return null}try{C.parseCSSColor=Lt}catch{}}),bf=Th.parseCSSColor,Rs=function(C,V,oe,_e){_e===void 0&&(_e=1),this.r=C,this.g=V,this.b=oe,this.a=_e};Rs.parse=function(C){if(C){if(C instanceof Rs)return C;if(typeof C=="string"){var V=bf(C);if(V)return new Rs(V[0]/255*V[3],V[1]/255*V[3],V[2]/255*V[3],V[3])}}},Rs.prototype.toString=function(){var C=this.toArray(),V=C[0],oe=C[1],_e=C[2],Pe=C[3];return"rgba("+Math.round(V)+","+Math.round(oe)+","+Math.round(_e)+","+Pe+")"},Rs.prototype.toArray=function(){var C=this,V=C.r,oe=C.g,_e=C.b,Pe=C.a;return Pe===0?[0,0,0,0]:[V*255/Pe,oe*255/Pe,_e*255/Pe,Pe]},Rs.black=new Rs(0,0,0,1),Rs.white=new Rs(1,1,1,1),Rs.transparent=new Rs(0,0,0,0),Rs.red=new Rs(1,0,0,1);var Yc=function(C,V,oe){C?this.sensitivity=V?"variant":"case":this.sensitivity=V?"accent":"base",this.locale=oe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Yc.prototype.compare=function(C,V){return this.collator.compare(C,V)},Yc.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var If=function(C,V,oe,_e,Pe){this.text=C,this.image=V,this.scale=oe,this.fontStack=_e,this.textColor=Pe},Zl=function(C){this.sections=C};Zl.fromString=function(C){return new Zl([new If(C,null,null,null,null)])},Zl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(C){return C.text.length!==0||C.image&&C.image.name.length!==0})},Zl.factory=function(C){return C instanceof Zl?C:Zl.fromString(C)},Zl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(C){return C.text}).join("")},Zl.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V=0&&k<=255&&typeof C=="number"&&C>=0&&C<=255&&typeof V=="number"&&V>=0&&V<=255)){var _e=typeof oe=="number"?[k,C,V,oe]:[k,C,V];return"Invalid rgba value ["+_e.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof oe>"u"||typeof oe=="number"&&oe>=0&&oe<=1?null:"Invalid rgba value ["+[k,C,V,oe].join(", ")+"]: 'a' must be between 0 and 1."}function _c(k){if(k===null)return!0;if(typeof k=="string")return!0;if(typeof k=="boolean")return!0;if(typeof k=="number")return!0;if(k instanceof Rs)return!0;if(k instanceof Yc)return!0;if(k instanceof Zl)return!0;if(k instanceof yl)return!0;if(Array.isArray(k)){for(var C=0,V=k;C2){var ct=C[1];if(typeof ct!="string"||!(ct in sc)||ct==="object")return V.error('The item type argument of "array" must be one of string, number, boolean',1);je=sc[ct],oe++}else je=Nn;var Lt;if(C.length>3){if(C[2]!==null&&(typeof C[2]!="number"||C[2]<0||C[2]!==Math.floor(C[2])))return V.error('The length argument to "array" must be a positive integer literal',2);Lt=C[2],oe++}_e=El(je,Lt)}else _e=sc[Pe];for(var Nt=[];oe1)&&V.push(_e)}}return V.concat(this.args.map(function(Pe){return Pe.serialize()}))};var Yu=function(C){this.type=ml,this.sections=C};Yu.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[1];if(!Array.isArray(oe)&&typeof oe=="object")return V.error("First argument must be an image or text section.");for(var _e=[],Pe=!1,je=1;je<=C.length-1;++je){var ct=C[je];if(Pe&&typeof ct=="object"&&!Array.isArray(ct)){Pe=!1;var Lt=null;if(ct["font-scale"]&&(Lt=V.parse(ct["font-scale"],1,ji),!Lt))return null;var Nt=null;if(ct["text-font"]&&(Nt=V.parse(ct["text-font"],1,El(To)),!Nt))return null;var Xt=null;if(ct["text-color"]&&(Xt=V.parse(ct["text-color"],1,_s),!Xt))return null;var gr=_e[_e.length-1];gr.scale=Lt,gr.font=Nt,gr.textColor=Xt}else{var Br=V.parse(C[je],1,Nn);if(!Br)return null;var Rr=Br.type.kind;if(Rr!=="string"&&Rr!=="value"&&Rr!=="null"&&Rr!=="resolvedImage")return V.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Pe=!0,_e.push({content:Br,scale:null,font:null,textColor:null})}}return new Yu(_e)},Yu.prototype.evaluate=function(C){var V=function(oe){var _e=oe.content.evaluate(C);return Zs(_e)===Bu?new If("",_e,null,null,null):new If(_l(_e),null,oe.scale?oe.scale.evaluate(C):null,oe.font?oe.font.evaluate(C).join(","):null,oe.textColor?oe.textColor.evaluate(C):null)};return new Zl(this.sections.map(V))},Yu.prototype.eachChild=function(C){for(var V=0,oe=this.sections;V-1),oe},Qs.prototype.eachChild=function(C){C(this.input)},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["image",this.input.serialize()]};var fp={"to-boolean":Yn,"to-color":_s,"to-number":ji,"to-string":To},es=function(C,V){this.type=C,this.args=V};es.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[0];if((oe==="to-boolean"||oe==="to-string")&&C.length!==2)return V.error("Expected one argument.");for(var _e=fp[oe],Pe=[],je=1;je4?oe="Invalid rbga value "+JSON.stringify(V)+": expected an array containing either three or four numeric values.":oe=oc(V[0],V[1],V[2],V[3]),!oe))return new Rs(V[0]/255,V[1]/255,V[2]/255,V[3])}throw new $s(oe||"Could not parse color from value '"+(typeof V=="string"?V:String(JSON.stringify(V)))+"'")}else if(this.type.kind==="number"){for(var Lt=null,Nt=0,Xt=this.args;Nt=C[2]||k[1]<=C[1]||k[3]>=C[3])}function lh(k,C){var V=Rc(k[0]),oe=pf(k[1]),_e=Math.pow(2,C.z);return[Math.round(V*_e*cu),Math.round(oe*_e*cu)]}function Xf(k,C,V){var oe=k[0]-C[0],_e=k[1]-C[1],Pe=k[0]-V[0],je=k[1]-V[1];return oe*je-Pe*_e===0&&oe*Pe<=0&&_e*je<=0}function Rf(k,C,V){return C[1]>k[1]!=V[1]>k[1]&&k[0]<(V[0]-C[0])*(k[1]-C[1])/(V[1]-C[1])+C[0]}function Kc(k,C){for(var V=!1,oe=0,_e=C.length;oe<_e;oe++)for(var Pe=C[oe],je=0,ct=Pe.length;je0&&gr<0||Xt<0&&gr>0}function Df(k,C,V,oe){var _e=[C[0]-k[0],C[1]-k[1]],Pe=[oe[0]-V[0],oe[1]-V[1]];return uh(Pe,_e)===0?!1:!!(Ju(k,C,V,oe)&&Ju(V,oe,k,C))}function Dc(k,C,V){for(var oe=0,_e=V;oe<_e.length;oe+=1)for(var Pe=_e[oe],je=0;jeV[2]){var _e=oe*.5,Pe=k[0]-V[0]>_e?-oe:V[0]-k[0]>_e?oe:0;Pe===0&&(Pe=k[0]-V[2]>_e?-oe:V[2]-k[0]>_e?oe:0),k[0]+=Pe}Zf(C,k)}function Kf(k){k[0]=k[1]=1/0,k[2]=k[3]=-1/0}function Zh(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct=0)return!1;var V=!0;return k.eachChild(function(oe){V&&!Cu(oe,C)&&(V=!1)}),V}var xc=function(C,V){this.type=V.type,this.name=C,this.boundExpression=V};xc.parse=function(C,V){if(C.length!==2||typeof C[1]!="string")return V.error("'var' expression requires exactly one string literal argument.");var oe=C[1];return V.scope.has(oe)?new xc(oe,V.scope.get(oe)):V.error('Unknown variable "'+oe+'". Make sure "'+oe+'" has been bound in an enclosing "let" expression before using it.',1)},xc.prototype.evaluate=function(C){return this.boundExpression.evaluate(C)},xc.prototype.eachChild=function(){},xc.prototype.outputDefined=function(){return!1},xc.prototype.serialize=function(){return["var",this.name]};var kl=function(C,V,oe,_e,Pe){V===void 0&&(V=[]),_e===void 0&&(_e=new al),Pe===void 0&&(Pe=[]),this.registry=C,this.path=V,this.key=V.map(function(je){return"["+je+"]"}).join(""),this.scope=_e,this.errors=Pe,this.expectedType=oe};kl.prototype.parse=function(C,V,oe,_e,Pe){return Pe===void 0&&(Pe={}),V?this.concat(V,oe,_e)._parse(C,Pe):this._parse(C,Pe)},kl.prototype._parse=function(C,V){(C===null||typeof C=="string"||typeof C=="boolean"||typeof C=="number")&&(C=["literal",C]);function oe(Xt,gr,Br){return Br==="assert"?new zl(gr,[Xt]):Br==="coerce"?new es(gr,[Xt]):Xt}if(Array.isArray(C)){if(C.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var _e=C[0];if(typeof _e!="string")return this.error("Expression name must be a string, but found "+typeof _e+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Pe=this.registry[_e];if(Pe){var je=Pe.parse(C,this);if(!je)return null;if(this.expectedType){var ct=this.expectedType,Lt=je.type;if((ct.kind==="string"||ct.kind==="number"||ct.kind==="boolean"||ct.kind==="object"||ct.kind==="array")&&Lt.kind==="value")je=oe(je,ct,V.typeAnnotation||"assert");else if((ct.kind==="color"||ct.kind==="formatted"||ct.kind==="resolvedImage")&&(Lt.kind==="value"||Lt.kind==="string"))je=oe(je,ct,V.typeAnnotation||"coerce");else if(this.checkSubtype(ct,Lt))return null}if(!(je instanceof Bs)&&je.type.kind!=="resolvedImage"&&Fc(je)){var Nt=new Ss;try{je=new Bs(je.type,je.evaluate(Nt))}catch(Xt){return this.error(Xt.message),null}}return je}return this.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof C>"u"?this.error("'undefined' value invalid. Use null instead."):typeof C=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof C+" instead.")},kl.prototype.concat=function(C,V,oe){var _e=typeof C=="number"?this.path.concat(C):this.path,Pe=oe?this.scope.concat(oe):this.scope;return new kl(this.registry,_e,V||null,Pe,this.errors)},kl.prototype.error=function(C){for(var V=[],oe=arguments.length-1;oe-- >0;)V[oe]=arguments[oe+1];var _e=""+this.key+V.map(function(Pe){return"["+Pe+"]"}).join("");this.errors.push(new fs(_e,C))},kl.prototype.checkSubtype=function(C,V){var oe=Nu(C,V);return oe&&this.error(oe),oe};function Fc(k){if(k instanceof xc)return Fc(k.boundExpression);if(k instanceof So&&k.name==="error")return!1;if(k instanceof Ku)return!1;if(k instanceof ku)return!1;var C=k instanceof es||k instanceof zl,V=!0;return k.eachChild(function(oe){C?V=V&&Fc(oe):V=V&&oe instanceof Bs}),V?fh(k)&&Cu(k,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function $u(k,C){for(var V=k.length-1,oe=0,_e=V,Pe=0,je,ct;oe<=_e;)if(Pe=Math.floor((oe+_e)/2),je=k[Pe],ct=k[Pe+1],je<=C){if(Pe===V||CC)_e=Pe-1;else throw new $s("Input is not a number.");return 0}var vu=function(C,V,oe){this.type=C,this.input=V,this.labels=[],this.outputs=[];for(var _e=0,Pe=oe;_e=ct)return V.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Nt);var gr=V.parse(Lt,Xt,Pe);if(!gr)return null;Pe=Pe||gr.type,_e.push([ct,gr])}return new vu(Pe,oe,_e)},vu.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e);return oe[je].evaluate(C)},vu.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V0&&C.push(this.labels[V]),C.push(this.outputs[V].serialize());return C};function xl(k,C,V){return k*(1-V)+C*V}function hh(k,C,V){return new Rs(xl(k.r,C.r,V),xl(k.g,C.g,V),xl(k.b,C.b,V),xl(k.a,C.a,V))}function Sh(k,C,V){return k.map(function(oe,_e){return xl(oe,C[_e],V)})}var Uu=Object.freeze({__proto__:null,number:xl,color:hh,array:Sh}),bc=.95047,lc=1,hp=1.08883,vf=4/29,Tf=6/29,Lu=3*Tf*Tf,zf=Tf*Tf*Tf,au=Math.PI/180,$c=180/Math.PI;function Mh(k){return k>zf?Math.pow(k,1/3):k/Lu+vf}function Ff(k){return k>Tf?k*k*k:Lu*(k-vf)}function il(k){return 255*(k<=.0031308?12.92*k:1.055*Math.pow(k,1/2.4)-.055)}function mu(k){return k/=255,k<=.04045?k/12.92:Math.pow((k+.055)/1.055,2.4)}function gu(k){var C=mu(k.r),V=mu(k.g),oe=mu(k.b),_e=Mh((.4124564*C+.3575761*V+.1804375*oe)/bc),Pe=Mh((.2126729*C+.7151522*V+.072175*oe)/lc),je=Mh((.0193339*C+.119192*V+.9503041*oe)/hp);return{l:116*Pe-16,a:500*(_e-Pe),b:200*(Pe-je),alpha:k.a}}function Jf(k){var C=(k.l+16)/116,V=isNaN(k.a)?C:C+k.a/500,oe=isNaN(k.b)?C:C-k.b/200;return C=lc*Ff(C),V=bc*Ff(V),oe=hp*Ff(oe),new Rs(il(3.2404542*V-1.5371385*C-.4985314*oe),il(-.969266*V+1.8760108*C+.041556*oe),il(.0556434*V-.2040259*C+1.0572252*oe),k.alpha)}function el(k,C,V){return{l:xl(k.l,C.l,V),a:xl(k.a,C.a,V),b:xl(k.b,C.b,V),alpha:xl(k.alpha,C.alpha,V)}}function mf(k){var C=gu(k),V=C.l,oe=C.a,_e=C.b,Pe=Math.atan2(_e,oe)*$c;return{h:Pe<0?Pe+360:Pe,c:Math.sqrt(oe*oe+_e*_e),l:V,alpha:k.a}}function wc(k){var C=k.h*au,V=k.c,oe=k.l;return Jf({l:oe,a:Math.cos(C)*V,b:Math.sin(C)*V,alpha:k.alpha})}function ju(k,C,V){var oe=C-k;return k+V*(oe>180||oe<-180?oe-360*Math.round(oe/360):oe)}function Af(k,C,V){return{h:ju(k.h,C.h,V),c:xl(k.c,C.c,V),l:xl(k.l,C.l,V),alpha:xl(k.alpha,C.alpha,V)}}var uc={forward:gu,reverse:Jf,interpolate:el},Qc={forward:mf,reverse:wc,interpolate:Af},$f=Object.freeze({__proto__:null,lab:uc,hcl:Qc}),Vl=function(C,V,oe,_e,Pe){this.type=C,this.operator=V,this.interpolation=oe,this.input=_e,this.labels=[],this.outputs=[];for(var je=0,ct=Pe;je1}))return V.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);_e={name:"cubic-bezier",controlPoints:Lt}}else return V.error("Unknown interpolation type "+String(_e[0]),1,0);if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");if(Pe=V.parse(Pe,2,ji),!Pe)return null;var Nt=[],Xt=null;oe==="interpolate-hcl"||oe==="interpolate-lab"?Xt=_s:V.expectedType&&V.expectedType.kind!=="value"&&(Xt=V.expectedType);for(var gr=0;gr=Br)return V.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',na);var ii=V.parse(Rr,Ia,Xt);if(!ii)return null;Xt=Xt||ii.type,Nt.push([Br,ii])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?V.error("Type "+qs(Xt)+" is not interpolatable."):new Vl(Xt,oe,_e,Pe,Nt)},Vl.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e),ct=V[je],Lt=V[je+1],Nt=Vl.interpolationFactor(this.interpolation,_e,ct,Lt),Xt=oe[je].evaluate(C),gr=oe[je+1].evaluate(C);return this.operator==="interpolate"?Uu[this.type.kind.toLowerCase()](Xt,gr,Nt):this.operator==="interpolate-hcl"?Qc.reverse(Qc.interpolate(Qc.forward(Xt),Qc.forward(gr),Nt)):uc.reverse(uc.interpolate(uc.forward(Xt),uc.forward(gr),Nt))},Vl.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V=oe.length)throw new $s("Array index out of bounds: "+V+" > "+(oe.length-1)+".");if(V!==Math.floor(V))throw new $s("Array index must be an integer, but found "+V+" instead.");return oe[V]},cc.prototype.eachChild=function(C){C(this.index),C(this.input)},cc.prototype.outputDefined=function(){return!1},cc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(C,V){this.type=Yn,this.needle=C,this.haystack=V};Cl.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);return!oe||!_e?null:Ic(oe.type,[Yn,To,ji,vl,Nn])?new Cl(oe,_e):V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead")},Cl.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!oe)return!1;if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");return oe.indexOf(V)>=0},Cl.prototype.eachChild=function(C){C(this.needle),C(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var iu=function(C,V,oe){this.type=ji,this.needle=C,this.haystack=V,this.fromIndex=oe};iu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);if(!oe||!_e)return null;if(!Ic(oe.type,[Yn,To,ji,vl,Nn]))return V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new iu(oe,_e,Pe):null}else return new iu(oe,_e)},iu.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");if(this.fromIndex){var _e=this.fromIndex.evaluate(C);return oe.indexOf(V,_e)}return oe.indexOf(V)},iu.prototype.eachChild=function(C){C(this.needle),C(this.haystack),this.fromIndex&&C(this.fromIndex)},iu.prototype.outputDefined=function(){return!1},iu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var C=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),C]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var fc=function(C,V,oe,_e,Pe,je){this.inputType=C,this.type=V,this.input=oe,this.cases=_e,this.outputs=Pe,this.otherwise=je};fc.parse=function(C,V){if(C.length<5)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if(C.length%2!==1)return V.error("Expected an even number of arguments.");var oe,_e;V.expectedType&&V.expectedType.kind!=="value"&&(_e=V.expectedType);for(var Pe={},je=[],ct=2;ctNumber.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Rr=="number"&&Math.floor(Rr)!==Rr)return Xt.error("Numeric branch labels must be integer values.");if(!oe)oe=Zs(Rr);else if(Xt.checkSubtype(oe,Zs(Rr)))return null;if(typeof Pe[String(Rr)]<"u")return Xt.error("Branch labels must be unique.");Pe[String(Rr)]=je.length}var na=V.parse(Nt,ct,_e);if(!na)return null;_e=_e||na.type,je.push(na)}var Ia=V.parse(C[1],1,Nn);if(!Ia)return null;var ii=V.parse(C[C.length-1],C.length-1,_e);return!ii||Ia.type.kind!=="value"&&V.concat(1).checkSubtype(oe,Ia.type)?null:new fc(oe,_e,Ia,Pe,je,ii)},fc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=Zs(V)===this.inputType&&this.outputs[this.cases[V]]||this.otherwise;return oe.evaluate(C)},fc.prototype.eachChild=function(C){C(this.input),this.outputs.forEach(C),C(this.otherwise)},fc.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})&&this.otherwise.outputDefined()},fc.prototype.serialize=function(){for(var C=this,V=["match",this.input.serialize()],oe=Object.keys(this.cases).sort(),_e=[],Pe={},je=0,ct=oe;je=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,ji);if(!oe||!_e)return null;if(!Ic(oe.type,[El(Nn),To,Nn]))return V.error("Expected first argument to be of type array or string, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new Qu(oe.type,oe,_e,Pe):null}else return new Qu(oe.type,oe,_e)},Qu.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=this.beginIndex.evaluate(C);if(!Xu(V,["string","array"]))throw new $s("Expected first argument to be of type array or string, but found "+qs(Zs(V))+" instead.");if(this.endIndex){var _e=this.endIndex.evaluate(C);return V.slice(oe,_e)}return V.slice(oe)},Qu.prototype.eachChild=function(C){C(this.input),C(this.beginIndex),this.endIndex&&C(this.endIndex)},Qu.prototype.outputDefined=function(){return!1},Qu.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var C=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),C]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function ef(k,C){return k==="=="||k==="!="?C.kind==="boolean"||C.kind==="string"||C.kind==="number"||C.kind==="null"||C.kind==="value":C.kind==="string"||C.kind==="number"||C.kind==="value"}function Zt(k,C,V){return C===V}function fr(k,C,V){return C!==V}function Yr(k,C,V){return CV}function ba(k,C,V){return C<=V}function Ka(k,C,V){return C>=V}function oi(k,C,V,oe){return oe.compare(C,V)===0}function yi(k,C,V,oe){return!oi(k,C,V,oe)}function ki(k,C,V,oe){return oe.compare(C,V)<0}function Bi(k,C,V,oe){return oe.compare(C,V)>0}function li(k,C,V,oe){return oe.compare(C,V)<=0}function _i(k,C,V,oe){return oe.compare(C,V)>=0}function vi(k,C,V){var oe=k!=="=="&&k!=="!=";return function(){function _e(Pe,je,ct){this.type=Yn,this.lhs=Pe,this.rhs=je,this.collator=ct,this.hasUntypedArgument=Pe.type.kind==="value"||je.type.kind==="value"}return _e.parse=function(je,ct){if(je.length!==3&&je.length!==4)return ct.error("Expected two or three arguments.");var Lt=je[0],Nt=ct.parse(je[1],1,Nn);if(!Nt)return null;if(!ef(Lt,Nt.type))return ct.concat(1).error('"'+Lt+`" comparisons are not supported for type '`+qs(Nt.type)+"'.");var Xt=ct.parse(je[2],2,Nn);if(!Xt)return null;if(!ef(Lt,Xt.type))return ct.concat(2).error('"'+Lt+`" comparisons are not supported for type '`+qs(Xt.type)+"'.");if(Nt.type.kind!==Xt.type.kind&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot compare types '"+qs(Nt.type)+"' and '"+qs(Xt.type)+"'.");oe&&(Nt.type.kind==="value"&&Xt.type.kind!=="value"?Nt=new zl(Xt.type,[Nt]):Nt.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new zl(Nt.type,[Xt])));var gr=null;if(je.length===4){if(Nt.type.kind!=="string"&&Xt.type.kind!=="string"&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot use collator to compare non-string types.");if(gr=ct.parse(je[3],3,Zu),!gr)return null}return new _e(Nt,Xt,gr)},_e.prototype.evaluate=function(je){var ct=this.lhs.evaluate(je),Lt=this.rhs.evaluate(je);if(oe&&this.hasUntypedArgument){var Nt=Zs(ct),Xt=Zs(Lt);if(Nt.kind!==Xt.kind||!(Nt.kind==="string"||Nt.kind==="number"))throw new $s('Expected arguments for "'+k+'" to be (string, string) or (number, number), but found ('+Nt.kind+", "+Xt.kind+") instead.")}if(this.collator&&!oe&&this.hasUntypedArgument){var gr=Zs(ct),Br=Zs(Lt);if(gr.kind!=="string"||Br.kind!=="string")return C(je,ct,Lt)}return this.collator?V(je,ct,Lt,this.collator.evaluate(je)):C(je,ct,Lt)},_e.prototype.eachChild=function(je){je(this.lhs),je(this.rhs),this.collator&&je(this.collator)},_e.prototype.outputDefined=function(){return!0},_e.prototype.serialize=function(){var je=[k];return this.eachChild(function(ct){je.push(ct.serialize())}),je},_e}()}var ti=vi("==",Zt,oi),rn=vi("!=",fr,yi),Kn=vi("<",Yr,ki),Wn=vi(">",qr,Bi),Jn=vi("<=",ba,li),no=vi(">=",Ka,_i),en=function(C,V,oe,_e,Pe){this.type=To,this.number=C,this.locale=V,this.currency=oe,this.minFractionDigits=_e,this.maxFractionDigits=Pe};en.parse=function(C,V){if(C.length!==3)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=C[2];if(typeof _e!="object"||Array.isArray(_e))return V.error("NumberFormat options argument must be an object.");var Pe=null;if(_e.locale&&(Pe=V.parse(_e.locale,1,To),!Pe))return null;var je=null;if(_e.currency&&(je=V.parse(_e.currency,1,To),!je))return null;var ct=null;if(_e["min-fraction-digits"]&&(ct=V.parse(_e["min-fraction-digits"],1,ji),!ct))return null;var Lt=null;return _e["max-fraction-digits"]&&(Lt=V.parse(_e["max-fraction-digits"],1,ji),!Lt)?null:new en(oe,Pe,je,ct,Lt)},en.prototype.evaluate=function(C){return new Intl.NumberFormat(this.locale?this.locale.evaluate(C):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(C):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(C):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(C):void 0}).format(this.number.evaluate(C))},en.prototype.eachChild=function(C){C(this.number),this.locale&&C(this.locale),this.currency&&C(this.currency),this.minFractionDigits&&C(this.minFractionDigits),this.maxFractionDigits&&C(this.maxFractionDigits)},en.prototype.outputDefined=function(){return!1},en.prototype.serialize=function(){var C={};return this.locale&&(C.locale=this.locale.serialize()),this.currency&&(C.currency=this.currency.serialize()),this.minFractionDigits&&(C["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(C["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),C]};var Ri=function(C){this.type=ji,this.input=C};Ri.parse=function(C,V){if(C.length!==2)return V.error("Expected 1 argument, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1);return oe?oe.type.kind!=="array"&&oe.type.kind!=="string"&&oe.type.kind!=="value"?V.error("Expected argument of type string or array, but found "+qs(oe.type)+" instead."):new Ri(oe):null},Ri.prototype.evaluate=function(C){var V=this.input.evaluate(C);if(typeof V=="string")return V.length;if(Array.isArray(V))return V.length;throw new $s("Expected value to be of type string or array, but found "+qs(Zs(V))+" instead.")},Ri.prototype.eachChild=function(C){C(this.input)},Ri.prototype.outputDefined=function(){return!1},Ri.prototype.serialize=function(){var C=["length"];return this.eachChild(function(V){C.push(V.serialize())}),C};var co={"==":ti,"!=":rn,">":Wn,"<":Kn,">=":no,"<=":Jn,array:zl,at:cc,boolean:zl,case:Oc,coalesce:Vu,collator:Ku,format:Yu,image:Qs,in:Cl,"index-of":iu,interpolate:Vl,"interpolate-hcl":Vl,"interpolate-lab":Vl,length:Ri,let:Tc,literal:Bs,match:fc,number:zl,"number-format":en,object:zl,slice:Qu,step:vu,string:zl,"to-boolean":es,"to-color":es,"to-number":es,"to-string":es,var:xc,within:ku};function Wo(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3];V=V.evaluate(k),oe=oe.evaluate(k),_e=_e.evaluate(k);var je=Pe?Pe.evaluate(k):1,ct=oc(V,oe,_e,je);if(ct)throw new $s(ct);return new Rs(V/255*je,oe/255*je,_e/255*je,je)}function bs(k,C){return k in C}function Xs(k,C){var V=C[k];return typeof V>"u"?null:V}function Ms(k,C,V,oe){for(;V<=oe;){var _e=V+oe>>1;if(C[_e]===k)return!0;C[_e]>k?oe=_e-1:V=_e+1}return!1}function Hs(k){return{type:k}}So.register(co,{error:[Wl,[To],function(k,C){var V=C[0];throw new $s(V.evaluate(k))}],typeof:[To,[Nn],function(k,C){var V=C[0];return qs(Zs(V.evaluate(k)))}],"to-rgba":[El(ji,4),[_s],function(k,C){var V=C[0];return V.evaluate(k).toArray()}],rgb:[_s,[ji,ji,ji],Wo],rgba:[_s,[ji,ji,ji,ji],Wo],has:{type:Yn,overloads:[[[To],function(k,C){var V=C[0];return bs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return bs(V.evaluate(k),oe.evaluate(k))}]]},get:{type:Nn,overloads:[[[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return Xs(V.evaluate(k),oe.evaluate(k))}]]},"feature-state":[Nn,[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.featureState||{})}],properties:[Yo,[],function(k){return k.properties()}],"geometry-type":[To,[],function(k){return k.geometryType()}],id:[Nn,[],function(k){return k.id()}],zoom:[ji,[],function(k){return k.globals.zoom}],"heatmap-density":[ji,[],function(k){return k.globals.heatmapDensity||0}],"line-progress":[ji,[],function(k){return k.globals.lineProgress||0}],accumulated:[Nn,[],function(k){return k.globals.accumulated===void 0?null:k.globals.accumulated}],"+":[ji,Hs(ji),function(k,C){for(var V=0,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V+=Pe.evaluate(k)}return V}],"*":[ji,Hs(ji),function(k,C){for(var V=1,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V*=Pe.evaluate(k)}return V}],"-":{type:ji,overloads:[[[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)-oe.evaluate(k)}],[[ji],function(k,C){var V=C[0];return-V.evaluate(k)}]]},"/":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)/oe.evaluate(k)}],"%":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)%oe.evaluate(k)}],ln2:[ji,[],function(){return Math.LN2}],pi:[ji,[],function(){return Math.PI}],e:[ji,[],function(){return Math.E}],"^":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return Math.pow(V.evaluate(k),oe.evaluate(k))}],sqrt:[ji,[ji],function(k,C){var V=C[0];return Math.sqrt(V.evaluate(k))}],log10:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN10}],ln:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))}],log2:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN2}],sin:[ji,[ji],function(k,C){var V=C[0];return Math.sin(V.evaluate(k))}],cos:[ji,[ji],function(k,C){var V=C[0];return Math.cos(V.evaluate(k))}],tan:[ji,[ji],function(k,C){var V=C[0];return Math.tan(V.evaluate(k))}],asin:[ji,[ji],function(k,C){var V=C[0];return Math.asin(V.evaluate(k))}],acos:[ji,[ji],function(k,C){var V=C[0];return Math.acos(V.evaluate(k))}],atan:[ji,[ji],function(k,C){var V=C[0];return Math.atan(V.evaluate(k))}],min:[ji,Hs(ji),function(k,C){return Math.min.apply(Math,C.map(function(V){return V.evaluate(k)}))}],max:[ji,Hs(ji),function(k,C){return Math.max.apply(Math,C.map(function(V){return V.evaluate(k)}))}],abs:[ji,[ji],function(k,C){var V=C[0];return Math.abs(V.evaluate(k))}],round:[ji,[ji],function(k,C){var V=C[0],oe=V.evaluate(k);return oe<0?-Math.round(-oe):Math.round(oe)}],floor:[ji,[ji],function(k,C){var V=C[0];return Math.floor(V.evaluate(k))}],ceil:[ji,[ji],function(k,C){var V=C[0];return Math.ceil(V.evaluate(k))}],"filter-==":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1];return k.properties()[V.value]===oe.value}],"filter-id-==":[Yn,[Nn],function(k,C){var V=C[0];return k.id()===V.value}],"filter-type-==":[Yn,[To],function(k,C){var V=C[0];return k.geometryType()===V.value}],"filter-<":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>Pe}],"filter-id->":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>_e}],"filter-<=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<=Pe}],"filter-id-<=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<=_e}],"filter->=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>=Pe}],"filter-id->=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>=_e}],"filter-has":[Yn,[Nn],function(k,C){var V=C[0];return V.value in k.properties()}],"filter-has-id":[Yn,[],function(k){return k.id()!==null&&k.id()!==void 0}],"filter-type-in":[Yn,[El(To)],function(k,C){var V=C[0];return V.value.indexOf(k.geometryType())>=0}],"filter-id-in":[Yn,[El(Nn)],function(k,C){var V=C[0];return V.value.indexOf(k.id())>=0}],"filter-in-small":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return oe.value.indexOf(k.properties()[V.value])>=0}],"filter-in-large":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return Ms(k.properties()[V.value],oe.value,0,oe.value.length-1)}],all:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)&&oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V-1}function Ln(k){return!!k.expression&&k.expression.interpolated}function Ao(k){return k instanceof Number?"number":k instanceof String?"string":k instanceof Boolean?"boolean":Array.isArray(k)?"array":k===null?"null":typeof k}function js(k){return typeof k=="object"&&k!==null&&!Array.isArray(k)}function Ts(k){return k}function nu(k,C){var V=C.type==="color",oe=k.stops&&typeof k.stops[0][0]=="object",_e=oe||k.property!==void 0,Pe=oe||!_e,je=k.type||(Ln(C)?"exponential":"interval");if(V&&(k=Os({},k),k.stops&&(k.stops=k.stops.map(function(Tn){return[Tn[0],Rs.parse(Tn[1])]})),k.default?k.default=Rs.parse(k.default):k.default=Rs.parse(C.default)),k.colorSpace&&k.colorSpace!=="rgb"&&!$f[k.colorSpace])throw new Error("Unknown color space: "+k.colorSpace);var ct,Lt,Nt;if(je==="exponential")ct=yu;else if(je==="interval")ct=tf;else if(je==="categorical"){ct=ec,Lt=Object.create(null);for(var Xt=0,gr=k.stops;Xt=k.stops[oe-1][0])return k.stops[oe-1][1];var _e=$u(k.stops.map(function(Pe){return Pe[0]}),V);return k.stops[_e][1]}function yu(k,C,V){var oe=k.base!==void 0?k.base:1;if(Ao(V)!=="number")return Pu(k.default,C.default);var _e=k.stops.length;if(_e===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[_e-1][0])return k.stops[_e-1][1];var Pe=$u(k.stops.map(function(gr){return gr[0]}),V),je=Iu(V,oe,k.stops[Pe][0],k.stops[Pe+1][0]),ct=k.stops[Pe][1],Lt=k.stops[Pe+1][1],Nt=Uu[C.type]||Ts;if(k.colorSpace&&k.colorSpace!=="rgb"){var Xt=$f[k.colorSpace];Nt=function(gr,Br){return Xt.reverse(Xt.interpolate(Xt.forward(gr),Xt.forward(Br),je))}}return typeof ct.evaluate=="function"?{evaluate:function(){for(var Br=[],Rr=arguments.length;Rr--;)Br[Rr]=arguments[Rr];var na=ct.evaluate.apply(void 0,Br),Ia=Lt.evaluate.apply(void 0,Br);if(!(na===void 0||Ia===void 0))return Nt(na,Ia,je)}}:Nt(ct,Lt,je)}function Bc(k,C,V){return C.type==="color"?V=Rs.parse(V):C.type==="formatted"?V=Zl.fromString(V.toString()):C.type==="resolvedImage"?V=yl.fromString(V.toString()):Ao(V)!==C.type&&(C.type!=="enum"||!C.values[V])&&(V=void 0),Pu(V,k.default,C.default)}function Iu(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Ac=function(C,V){this.expression=C,this._warningHistory={},this._evaluator=new Ss,this._defaultValue=V?Se(V):null,this._enumValues=V&&V.type==="enum"?V.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._evaluator.globals=C,this._evaluator.feature=V,this._evaluator.featureState=oe,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(C,V,oe,_e,Pe,je){this._evaluator.globals=C,this._evaluator.feature=V||null,this._evaluator.featureState=oe||null,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je||null;try{var ct=this.expression.evaluate(this._evaluator);if(ct==null||typeof ct=="number"&&ct!==ct)return this._defaultValue;if(this._enumValues&&!(ct in this._enumValues))throw new $s("Expected value to be one of "+Object.keys(this._enumValues).map(function(Lt){return JSON.stringify(Lt)}).join(", ")+", but found "+JSON.stringify(ct)+" instead.");return ct}catch(Lt){return this._warningHistory[Lt.message]||(this._warningHistory[Lt.message]=!0,typeof console<"u"&&console.warn(Lt.message)),this._defaultValue}};function ro(k){return Array.isArray(k)&&k.length>0&&typeof k[0]=="string"&&k[0]in co}function Po(k,C){var V=new kl(co,[],C?we(C):void 0),oe=V.parse(k,void 0,void 0,void 0,C&&C.type==="string"?{typeAnnotation:"coerce"}:void 0);return oe?vs(new Ac(oe,C)):Il(V.errors)}var Nc=function(C,V){this.kind=C,this._styleExpression=V,this.isStateDependent=C!=="constant"&&!ru(V.expression)};Nc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},Nc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)};var hc=function(C,V,oe,_e){this.kind=C,this.zoomStops=oe,this._styleExpression=V,this.isStateDependent=C!=="camera"&&!ru(V.expression),this.interpolationType=_e};hc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},hc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)},hc.prototype.interpolationFactor=function(C,V,oe){return this.interpolationType?Vl.interpolationFactor(this.interpolationType,C,V,oe):0};function pc(k,C){if(k=Po(k,C),k.result==="error")return k;var V=k.value.expression,oe=fh(V);if(!oe&&!fl(C))return Il([new fs("","data expressions not supported")]);var _e=Cu(V,["zoom"]);if(!_e&&!tl(C))return Il([new fs("","zoom expressions not supported")]);var Pe=ae(V);if(!Pe&&!_e)return Il([new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Pe instanceof fs)return Il([Pe]);if(Pe instanceof Vl&&!Ln(C))return Il([new fs("",'"interpolate" expressions cannot be used with this property')]);if(!Pe)return vs(oe?new Nc("constant",k.value):new Nc("source",k.value));var je=Pe instanceof Vl?Pe.interpolation:void 0;return vs(oe?new hc("camera",k.value,Pe.labels,je):new hc("composite",k.value,Pe.labels,je))}var Oe=function(C,V){this._parameters=C,this._specification=V,Os(this,nu(this._parameters,this._specification))};Oe.deserialize=function(C){return new Oe(C._parameters,C._specification)},Oe.serialize=function(C){return{_parameters:C._parameters,_specification:C._specification}};function R(k,C){if(js(k))return new Oe(k,C);if(ro(k)){var V=pc(k,C);if(V.result==="error")throw new Error(V.value.map(function(_e){return _e.key+": "+_e.message}).join(", "));return V.value}else{var oe=k;return typeof k=="string"&&C.type==="color"&&(oe=Rs.parse(k)),{kind:"constant",evaluate:function(){return oe}}}}function ae(k){var C=null;if(k instanceof Tc)C=ae(k.result);else if(k instanceof Vu)for(var V=0,oe=k.args;Voe.maximum?[new mn(C,V,V+" is greater than the maximum value "+oe.maximum)]:[]}function Dt(k){var C=k.valueSpec,V=so(k.value.type),oe,_e={},Pe,je,ct=V!=="categorical"&&k.value.property===void 0,Lt=!ct,Nt=Ao(k.value.stops)==="array"&&Ao(k.value.stops[0])==="array"&&Ao(k.value.stops[0][0])==="object",Xt=De({key:k.key,value:k.value,valueSpec:k.styleSpec.function,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{stops:gr,default:na}});return V==="identity"&&ct&&Xt.push(new mn(k.key,k.value,'missing required property "property"')),V!=="identity"&&!k.value.stops&&Xt.push(new mn(k.key,k.value,'missing required property "stops"')),V==="exponential"&&k.valueSpec.expression&&!Ln(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"exponential functions not supported")),k.styleSpec.$version>=8&&(Lt&&!fl(k.valueSpec)?Xt.push(new mn(k.key,k.value,"property functions not supported")):ct&&!tl(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"zoom functions not supported"))),(V==="categorical"||Nt)&&k.value.property===void 0&&Xt.push(new mn(k.key,k.value,'"property" property is required')),Xt;function gr(Ia){if(V==="identity")return[new mn(Ia.key,Ia.value,'identity function may not have a "stops" property')];var ii=[],Wa=Ia.value;return ii=ii.concat(ft({key:Ia.key,value:Wa,valueSpec:Ia.valueSpec,style:Ia.style,styleSpec:Ia.styleSpec,arrayElementValidator:Br})),Ao(Wa)==="array"&&Wa.length===0&&ii.push(new mn(Ia.key,Wa,"array must have at least one stop")),ii}function Br(Ia){var ii=[],Wa=Ia.value,Si=Ia.key;if(Ao(Wa)!=="array")return[new mn(Si,Wa,"array expected, "+Ao(Wa)+" found")];if(Wa.length!==2)return[new mn(Si,Wa,"array length 2 expected, length "+Wa.length+" found")];if(Nt){if(Ao(Wa[0])!=="object")return[new mn(Si,Wa,"object expected, "+Ao(Wa[0])+" found")];if(Wa[0].zoom===void 0)return[new mn(Si,Wa,"object stop key must have zoom")];if(Wa[0].value===void 0)return[new mn(Si,Wa,"object stop key must have value")];if(je&&je>so(Wa[0].zoom))return[new mn(Si,Wa[0].zoom,"stop zoom values must appear in ascending order")];so(Wa[0].zoom)!==je&&(je=so(Wa[0].zoom),Pe=void 0,_e={}),ii=ii.concat(De({key:Si+"[0]",value:Wa[0],valueSpec:{zoom:{}},style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{zoom:bt,value:Rr}}))}else ii=ii.concat(Rr({key:Si+"[0]",value:Wa[0],valueSpec:{},style:Ia.style,styleSpec:Ia.styleSpec},Wa));return ro(Ns(Wa[1]))?ii.concat([new mn(Si+"[1]",Wa[1],"expressions are not allowed in function stops.")]):ii.concat(yo({key:Si+"[1]",value:Wa[1],valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec}))}function Rr(Ia,ii){var Wa=Ao(Ia.value),Si=so(Ia.value),ci=Ia.value!==null?Ia.value:ii;if(!oe)oe=Wa;else if(Wa!==oe)return[new mn(Ia.key,ci,Wa+" stop domain type must match previous stop domain type "+oe)];if(Wa!=="number"&&Wa!=="string"&&Wa!=="boolean")return[new mn(Ia.key,ci,"stop domain value must be a number, string, or boolean")];if(Wa!=="number"&&V!=="categorical"){var Ai="number expected, "+Wa+" found";return fl(C)&&V===void 0&&(Ai+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new mn(Ia.key,ci,Ai)]}return V==="categorical"&&Wa==="number"&&(!isFinite(Si)||Math.floor(Si)!==Si)?[new mn(Ia.key,ci,"integer expected, found "+Si)]:V!=="categorical"&&Wa==="number"&&Pe!==void 0&&Si=2&&k[1]!=="$id"&&k[1]!=="$type";case"in":return k.length>=3&&(typeof k[1]!="string"||Array.isArray(k[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return k.length!==3||Array.isArray(k[1])||Array.isArray(k[2]);case"any":case"all":for(var C=0,V=k.slice(1);CC?1:0}function ht(k){if(!Array.isArray(k))return!1;if(k[0]==="within")return!0;for(var C=1;C"||C==="<="||C===">="?_t(k[1],k[2],C):C==="any"?Pt(k.slice(1)):C==="all"?["all"].concat(k.slice(1).map(At)):C==="none"?["all"].concat(k.slice(1).map(At).map(pr)):C==="in"?er(k[1],k.slice(2)):C==="!in"?pr(er(k[1],k.slice(2))):C==="has"?nr(k[1]):C==="!has"?pr(nr(k[1])):C==="within"?k:!0;return V}function _t(k,C,V){switch(k){case"$type":return["filter-type-"+V,C];case"$id":return["filter-id-"+V,C];default:return["filter-"+V,k,C]}}function Pt(k){return["any"].concat(k.map(At))}function er(k,C){if(C.length===0)return!1;switch(k){case"$type":return["filter-type-in",["literal",C]];case"$id":return["filter-id-in",["literal",C]];default:return C.length>200&&!C.some(function(V){return typeof V!=typeof C[0]})?["filter-in-large",k,["literal",C.sort(ot)]]:["filter-in-small",k,["literal",C]]}}function nr(k){switch(k){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",k]}}function pr(k){return["!",k]}function Sr(k){return ea(Ns(k.value))?Yt(Os({},k,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Wr(k)}function Wr(k){var C=k.value,V=k.key;if(Ao(C)!=="array")return[new mn(V,C,"array expected, "+Ao(C)+" found")];var oe=k.styleSpec,_e,Pe=[];if(C.length<1)return[new mn(V,C,"filter array must have at least 1 element")];switch(Pe=Pe.concat(jr({key:V+"[0]",value:C[0],valueSpec:oe.filter_operator,style:k.style,styleSpec:k.styleSpec})),so(C[0])){case"<":case"<=":case">":case">=":C.length>=2&&so(C[1])==="$type"&&Pe.push(new mn(V,C,'"$type" cannot be use with operator "'+C[0]+'"'));case"==":case"!=":C.length!==3&&Pe.push(new mn(V,C,'filter array for operator "'+C[0]+'" must have 3 elements'));case"in":case"!in":C.length>=2&&(_e=Ao(C[1]),_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found")));for(var je=2;je=Xt[Rr+0]&&oe>=Xt[Rr+1])?(je[Br]=!0,Pe.push(Nt[Br])):je[Br]=!1}}},ou.prototype._forEachCell=function(k,C,V,oe,_e,Pe,je,ct){for(var Lt=this._convertToCellCoord(k),Nt=this._convertToCellCoord(C),Xt=this._convertToCellCoord(V),gr=this._convertToCellCoord(oe),Br=Lt;Br<=Xt;Br++)for(var Rr=Nt;Rr<=gr;Rr++){var na=this.d*Rr+Br;if(!(ct&&!ct(this._convertFromCellCoord(Br),this._convertFromCellCoord(Rr),this._convertFromCellCoord(Br+1),this._convertFromCellCoord(Rr+1)))&&_e.call(this,k,C,V,oe,na,Pe,je,ct))return}},ou.prototype._convertFromCellCoord=function(k){return(k-this.padding)/this.scale},ou.prototype._convertToCellCoord=function(k){return Math.max(0,Math.min(this.d-1,Math.floor(k*this.scale)+this.padding))},ou.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var k=this.cells,C=bl+this.cells.length+1+1,V=0,oe=0;oe=0)){var gr=k[Xt];Nt[Xt]=Hl[Lt].shallow.indexOf(Xt)>=0?gr:vt(gr,C)}k instanceof Error&&(Nt.message=k.message)}if(Nt.$name)throw new Error("$name property is reserved for worker serialization logic.");return Lt!=="Object"&&(Nt.$name=Lt),Nt}throw new Error("can't serialize object of type "+typeof k)}function wt(k){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp||$e(k)||pt(k)||ArrayBuffer.isView(k)||k instanceof Sc)return k;if(Array.isArray(k))return k.map(wt);if(typeof k=="object"){var C=k.$name||"Object",V=Hl[C],oe=V.klass;if(!oe)throw new Error("can't deserialize unregistered class "+C);if(oe.deserialize)return oe.deserialize(k);for(var _e=Object.create(oe.prototype),Pe=0,je=Object.keys(k);Pe=0?Lt:wt(Lt)}}return _e}throw new Error("can't deserialize object of type "+typeof k)}var Jt=function(){this.first=!0};Jt.prototype.update=function(C,V){var oe=Math.floor(C);return this.first?(this.first=!1,this.lastIntegerZoom=oe,this.lastIntegerZoomTime=0,this.lastZoom=C,this.lastFloorZoom=oe,!0):(this.lastFloorZoom>oe?(this.lastIntegerZoom=oe+1,this.lastIntegerZoomTime=V):this.lastFloorZoom=128&&k<=255},Arabic:function(k){return k>=1536&&k<=1791},"Arabic Supplement":function(k){return k>=1872&&k<=1919},"Arabic Extended-A":function(k){return k>=2208&&k<=2303},"Hangul Jamo":function(k){return k>=4352&&k<=4607},"Unified Canadian Aboriginal Syllabics":function(k){return k>=5120&&k<=5759},Khmer:function(k){return k>=6016&&k<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(k){return k>=6320&&k<=6399},"General Punctuation":function(k){return k>=8192&&k<=8303},"Letterlike Symbols":function(k){return k>=8448&&k<=8527},"Number Forms":function(k){return k>=8528&&k<=8591},"Miscellaneous Technical":function(k){return k>=8960&&k<=9215},"Control Pictures":function(k){return k>=9216&&k<=9279},"Optical Character Recognition":function(k){return k>=9280&&k<=9311},"Enclosed Alphanumerics":function(k){return k>=9312&&k<=9471},"Geometric Shapes":function(k){return k>=9632&&k<=9727},"Miscellaneous Symbols":function(k){return k>=9728&&k<=9983},"Miscellaneous Symbols and Arrows":function(k){return k>=11008&&k<=11263},"CJK Radicals Supplement":function(k){return k>=11904&&k<=12031},"Kangxi Radicals":function(k){return k>=12032&&k<=12255},"Ideographic Description Characters":function(k){return k>=12272&&k<=12287},"CJK Symbols and Punctuation":function(k){return k>=12288&&k<=12351},Hiragana:function(k){return k>=12352&&k<=12447},Katakana:function(k){return k>=12448&&k<=12543},Bopomofo:function(k){return k>=12544&&k<=12591},"Hangul Compatibility Jamo":function(k){return k>=12592&&k<=12687},Kanbun:function(k){return k>=12688&&k<=12703},"Bopomofo Extended":function(k){return k>=12704&&k<=12735},"CJK Strokes":function(k){return k>=12736&&k<=12783},"Katakana Phonetic Extensions":function(k){return k>=12784&&k<=12799},"Enclosed CJK Letters and Months":function(k){return k>=12800&&k<=13055},"CJK Compatibility":function(k){return k>=13056&&k<=13311},"CJK Unified Ideographs Extension A":function(k){return k>=13312&&k<=19903},"Yijing Hexagram Symbols":function(k){return k>=19904&&k<=19967},"CJK Unified Ideographs":function(k){return k>=19968&&k<=40959},"Yi Syllables":function(k){return k>=40960&&k<=42127},"Yi Radicals":function(k){return k>=42128&&k<=42191},"Hangul Jamo Extended-A":function(k){return k>=43360&&k<=43391},"Hangul Syllables":function(k){return k>=44032&&k<=55215},"Hangul Jamo Extended-B":function(k){return k>=55216&&k<=55295},"Private Use Area":function(k){return k>=57344&&k<=63743},"CJK Compatibility Ideographs":function(k){return k>=63744&&k<=64255},"Arabic Presentation Forms-A":function(k){return k>=64336&&k<=65023},"Vertical Forms":function(k){return k>=65040&&k<=65055},"CJK Compatibility Forms":function(k){return k>=65072&&k<=65103},"Small Form Variants":function(k){return k>=65104&&k<=65135},"Arabic Presentation Forms-B":function(k){return k>=65136&&k<=65279},"Halfwidth and Fullwidth Forms":function(k){return k>=65280&&k<=65519}};function or(k){for(var C=0,V=k;C=65097&&k<=65103)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)&&!(k>=12296&&k<=12305)&&!(k>=12308&&k<=12319)&&k!==12336||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Hangul Compatibility Jamo"](k)||Rt["Hangul Jamo Extended-A"](k)||Rt["Hangul Jamo Extended-B"](k)||Rt["Hangul Jamo"](k)||Rt["Hangul Syllables"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt.Kanbun(k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)&&k!==12540||Rt["Halfwidth and Fullwidth Forms"](k)&&k!==65288&&k!==65289&&k!==65293&&!(k>=65306&&k<=65310)&&k!==65339&&k!==65341&&k!==65343&&!(k>=65371&&k<=65503)&&k!==65507&&!(k>=65512&&k<=65519)||Rt["Small Form Variants"](k)&&!(k>=65112&&k<=65118)&&!(k>=65123&&k<=65126)||Rt["Unified Canadian Aboriginal Syllabics"](k)||Rt["Unified Canadian Aboriginal Syllabics Extended"](k)||Rt["Vertical Forms"](k)||Rt["Yijing Hexagram Symbols"](k)||Rt["Yi Syllables"](k)||Rt["Yi Radicals"](k))}function Va(k){return!!(Rt["Latin-1 Supplement"](k)&&(k===167||k===169||k===174||k===177||k===188||k===189||k===190||k===215||k===247)||Rt["General Punctuation"](k)&&(k===8214||k===8224||k===8225||k===8240||k===8241||k===8251||k===8252||k===8258||k===8263||k===8264||k===8265||k===8273)||Rt["Letterlike Symbols"](k)||Rt["Number Forms"](k)||Rt["Miscellaneous Technical"](k)&&(k>=8960&&k<=8967||k>=8972&&k<=8991||k>=8996&&k<=9e3||k===9003||k>=9085&&k<=9114||k>=9150&&k<=9165||k===9167||k>=9169&&k<=9179||k>=9186&&k<=9215)||Rt["Control Pictures"](k)&&k!==9251||Rt["Optical Character Recognition"](k)||Rt["Enclosed Alphanumerics"](k)||Rt["Geometric Shapes"](k)||Rt["Miscellaneous Symbols"](k)&&!(k>=9754&&k<=9759)||Rt["Miscellaneous Symbols and Arrows"](k)&&(k>=11026&&k<=11055||k>=11088&&k<=11097||k>=11192&&k<=11243)||Rt["CJK Symbols and Punctuation"](k)||Rt.Katakana(k)||Rt["Private Use Area"](k)||Rt["CJK Compatibility Forms"](k)||Rt["Small Form Variants"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||k===8734||k===8756||k===8757||k>=9984&&k<=10087||k>=10102&&k<=10131||k===65532||k===65533)}function Xa(k){return!(fa(k)||Va(k))}function _a(k){return Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Ra(k){return k>=1424&&k<=2303||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Na(k,C){return!(!C&&Ra(k)||k>=2304&&k<=3583||k>=3840&&k<=4255||Rt.Khmer(k))}function Qa(k){for(var C=0,V=k;C-1&&(Ni=Da.error),zi&&zi(k)};function Un(){Vn.fire(new Mr("pluginStateChange",{pluginStatus:Ni,pluginURL:Qi}))}var Vn=new Lr,No=function(){return Ni},Gn=function(k){return k({pluginStatus:Ni,pluginURL:Qi}),Vn.on("pluginStateChange",k),k},Fo=function(k,C,V){if(V===void 0&&(V=!1),Ni===Da.deferred||Ni===Da.loading||Ni===Da.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Qi=be.resolveURL(k),Ni=Da.deferred,zi=C,Un(),V||Ks()},Ks=function(){if(Ni!==Da.deferred||!Qi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Ni=Da.loading,Un(),Qi&&pa({url:Qi},function(k){k?hn(k):(Ni=Da.loaded,Un())})},Gs={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Ni===Da.loaded||Gs.applyArabicShaping!=null},isLoading:function(){return Ni===Da.loading},setState:function(C){Ni=C.pluginStatus,Qi=C.pluginURL},isParsed:function(){return Gs.applyArabicShaping!=null&&Gs.processBidirectionalText!=null&&Gs.processStyledBidirectionalText!=null},getPluginURL:function(){return Qi}},sl=function(){!Gs.isLoading()&&!Gs.isLoaded()&&No()==="deferred"&&Ks()},Vi=function(C,V){this.zoom=C,V?(this.now=V.now,this.fadeDuration=V.fadeDuration,this.zoomHistory=V.zoomHistory,this.transition=V.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Jt,this.transition={})};Vi.prototype.isSupportedScript=function(C){return Ya(C,Gs.isLoaded())},Vi.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Vi.prototype.getCrossfadeParameters=function(){var C=this.zoom,V=C-Math.floor(C),oe=this.crossFadingFactor();return C>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:V+(1-V)*oe}:{fromScale:.5,toScale:1,t:1-(1-oe)*V}};var ao=function(C,V){this.property=C,this.value=V,this.expression=R(V===void 0?C.specification.default:V,C.specification)};ao.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ao.prototype.possiblyEvaluate=function(C,V,oe){return this.property.possiblyEvaluate(this,C,V,oe)};var ns=function(C){this.property=C,this.value=new ao(C,void 0)};ns.prototype.transitioned=function(C,V){return new hl(this.property,this.value,V,m({},C.transition,this.transition),C.now)},ns.prototype.untransitioned=function(){return new hl(this.property,this.value,null,{},0)};var hs=function(C){this._properties=C,this._values=Object.create(C.defaultTransitionablePropertyValues)};hs.prototype.getValue=function(C){return O(this._values[C].value.value)},hs.prototype.setValue=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].value=new ao(this._values[C].property,V===null?void 0:O(V))},hs.prototype.getTransition=function(C){return O(this._values[C].transition)},hs.prototype.setTransition=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].transition=O(V)||void 0},hs.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);Vthis.end)return this.prior=null,Pe;if(this.value.isDataDriven())return this.prior=null,Pe;if(_eje.zoomHistory.lastIntegerZoom?{from:oe,to:_e}:{from:Pe,to:_e}},C.prototype.interpolate=function(oe){return oe},C}(ra),si=function(C){this.specification=C};si.prototype.possiblyEvaluate=function(C,V,oe,_e){if(C.value!==void 0)if(C.expression.kind==="constant"){var Pe=C.expression.evaluate(V,null,{},oe,_e);return this._calculate(Pe,Pe,Pe,V)}else return this._calculate(C.expression.evaluate(new Vi(Math.floor(V.zoom-1),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom+1),V)),V)},si.prototype._calculate=function(C,V,oe,_e){var Pe=_e.zoom;return Pe>_e.zoomHistory.lastIntegerZoom?{from:C,to:V}:{from:oe,to:V}},si.prototype.interpolate=function(C){return C};var wi=function(C){this.specification=C};wi.prototype.possiblyEvaluate=function(C,V,oe,_e){return!!C.expression.evaluate(V,null,{},oe,_e)},wi.prototype.interpolate=function(){return!1};var xi=function(C){this.properties=C,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var V in C){var oe=C[V];oe.specification.overridable&&this.overridableProperties.push(V);var _e=this.defaultPropertyValues[V]=new ao(oe,void 0),Pe=this.defaultTransitionablePropertyValues[V]=new ns(oe);this.defaultTransitioningPropertyValues[V]=Pe.untransitioned(),this.defaultPossiblyEvaluatedValues[V]=_e.possiblyEvaluate({})}};de("DataDrivenProperty",ra),de("DataConstantProperty",Qt),de("CrossFadedDataDrivenProperty",Ta),de("CrossFadedProperty",si),de("ColorRampProperty",wi);var bi="-transition",Fi=function(k){function C(V,oe){if(k.call(this),this.id=V.id,this.type=V.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},V.type!=="custom"&&(V=V,this.metadata=V.metadata,this.minzoom=V.minzoom,this.maxzoom=V.maxzoom,V.type!=="background"&&(this.source=V.source,this.sourceLayer=V["source-layer"],this.filter=V.filter),oe.layout&&(this._unevaluatedLayout=new hu(oe.layout)),oe.paint)){this._transitionablePaint=new hs(oe.paint);for(var _e in V.paint)this.setPaintProperty(_e,V.paint[_e],{validate:!1});for(var Pe in V.layout)this.setLayoutProperty(Pe,V.layout[Pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new dc(oe.paint)}}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},C.prototype.getLayoutProperty=function(oe){return oe==="visibility"?this.visibility:this._unevaluatedLayout.getValue(oe)},C.prototype.setLayoutProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".layout."+oe;if(this._validate(Xl,je,oe,_e,Pe))return}if(oe==="visibility"){this.visibility=_e;return}this._unevaluatedLayout.setValue(oe,_e)},C.prototype.getPaintProperty=function(oe){return z(oe,bi)?this._transitionablePaint.getTransition(oe.slice(0,-bi.length)):this._transitionablePaint.getValue(oe)},C.prototype.setPaintProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".paint."+oe;if(this._validate(Rl,je,oe,_e,Pe))return!1}if(z(oe,bi))return this._transitionablePaint.setTransition(oe.slice(0,-bi.length),_e||void 0),!1;var ct=this._transitionablePaint._values[oe],Lt=ct.property.specification["property-type"]==="cross-faded-data-driven",Nt=ct.value.isDataDriven(),Xt=ct.value;this._transitionablePaint.setValue(oe,_e),this._handleSpecialPaintPropertyUpdate(oe);var gr=this._transitionablePaint._values[oe].value,Br=gr.isDataDriven();return Br||Nt||Lt||this._handleOverridablePaintPropertyUpdate(oe,Xt,gr)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!1},C.prototype.isHidden=function(oe){return this.minzoom&&oe=this.maxzoom?!0:this.visibility==="none"},C.prototype.updateTransitions=function(oe){this._transitioningPaint=this._transitionablePaint.transitioned(oe,this._transitioningPaint)},C.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},C.prototype.recalculate=function(oe,_e){oe.getCrossfadeParameters&&(this._crossfadeParameters=oe.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(oe,void 0,_e)),this.paint=this._transitioningPaint.possiblyEvaluate(oe,void 0,_e)},C.prototype.serialize=function(){var oe={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(oe.layout=oe.layout||{},oe.layout.visibility=this.visibility),B(oe,function(_e,Pe){return _e!==void 0&&!(Pe==="layout"&&!Object.keys(_e).length)&&!(Pe==="paint"&&!Object.keys(_e).length)})},C.prototype._validate=function(oe,_e,Pe,je,ct){return ct===void 0&&(ct={}),ct&&ct.validate===!1?!1:qu(this,oe.call(Zo,{key:_e,layerType:this.type,objectKey:Pe,value:je,styleSpec:fi,style:{glyphs:!0,sprite:!0}}))},C.prototype.is3D=function(){return!1},C.prototype.isTileClipped=function(){return!1},C.prototype.hasOffscreenPass=function(){return!1},C.prototype.resize=function(){},C.prototype.isStateDependent=function(){for(var oe in this.paint._values){var _e=this.paint.get(oe);if(!(!(_e instanceof Ll)||!fl(_e.property.specification))&&(_e.value.kind==="source"||_e.value.kind==="composite")&&_e.value.isStateDependent)return!0}return!1},C}(Lr),cn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},fn=function(C,V){this._structArray=C,this._pos1=V*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Gi=128,Io=5,nn=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};nn.serialize=function(C,V){return C._trim(),V&&(C.isTransferred=!0,V.push(C.arrayBuffer)),{length:C.length,arrayBuffer:C.arrayBuffer}},nn.deserialize=function(C){var V=Object.create(this.prototype);return V.arrayBuffer=C.arrayBuffer,V.length=C.length,V.capacity=C.arrayBuffer.byteLength/V.bytesPerElement,V._refreshViews(),V},nn.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},nn.prototype.clear=function(){this.length=0},nn.prototype.resize=function(C){this.reserve(C),this.length=C},nn.prototype.reserve=function(C){if(C>this.capacity){this.capacity=Math.max(C,Math.floor(this.capacity*Io),Gi),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var V=this.uint8;this._refreshViews(),V&&this.uint8.set(V)}},nn.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function on(k,C){C===void 0&&(C=1);var V=0,oe=0,_e=k.map(function(je){var ct=Oi(je.type),Lt=V=ui(V,Math.max(C,ct)),Nt=je.components||1;return oe=Math.max(oe,ct),V+=ct*Nt,{name:je.name,type:je.type,components:Nt,offset:Lt}}),Pe=ui(V,Math.max(oe,C));return{members:_e,size:Pe,alignment:C}}function Oi(k){return cn[k].BYTES_PER_ELEMENT}function ui(k,C){return Math.ceil(k/C)*C}var Mi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.int16[je+0]=_e,this.int16[je+1]=Pe,oe},C}(nn);Mi.prototype.bytesPerElement=4,de("StructArrayLayout2i4",Mi);var tn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.int16[Lt+0]=_e,this.int16[Lt+1]=Pe,this.int16[Lt+2]=je,this.int16[Lt+3]=ct,oe},C}(nn);tn.prototype.bytesPerElement=8,de("StructArrayLayout4i8",tn);var pn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);pn.prototype.bytesPerElement=12,de("StructArrayLayout2i4i12",pn);var qi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*4,gr=oe*8;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.uint8[gr+4]=je,this.uint8[gr+5]=ct,this.uint8[gr+6]=Lt,this.uint8[gr+7]=Nt,oe},C}(nn);qi.prototype.bytesPerElement=8,de("StructArrayLayout2i4ub8",qi);var Dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.float32[je+0]=_e,this.float32[je+1]=Pe,oe},C}(nn);Dn.prototype.bytesPerElement=8,de("StructArrayLayout2f8",Dn);var bn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=this.length;return this.resize(Rr+1),this.emplace(Rr,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr){var na=oe*10;return this.uint16[na+0]=_e,this.uint16[na+1]=Pe,this.uint16[na+2]=je,this.uint16[na+3]=ct,this.uint16[na+4]=Lt,this.uint16[na+5]=Nt,this.uint16[na+6]=Xt,this.uint16[na+7]=gr,this.uint16[na+8]=Br,this.uint16[na+9]=Rr,oe},C}(nn);bn.prototype.bytesPerElement=20,de("StructArrayLayout10ui20",bn);var _o=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=this.length;return this.resize(Ia+1),this.emplace(Ia,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=oe*12;return this.int16[ii+0]=_e,this.int16[ii+1]=Pe,this.int16[ii+2]=je,this.int16[ii+3]=ct,this.uint16[ii+4]=Lt,this.uint16[ii+5]=Nt,this.uint16[ii+6]=Xt,this.uint16[ii+7]=gr,this.int16[ii+8]=Br,this.int16[ii+9]=Rr,this.int16[ii+10]=na,this.int16[ii+11]=Ia,oe},C}(nn);_o.prototype.bytesPerElement=24,de("StructArrayLayout4i4ui4i24",_o);var Zi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.float32[ct+0]=_e,this.float32[ct+1]=Pe,this.float32[ct+2]=je,oe},C}(nn);Zi.prototype.bytesPerElement=12,de("StructArrayLayout3f12",Zi);var Ui=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint32[Pe+0]=_e,oe},C}(nn);Ui.prototype.bytesPerElement=4,de("StructArrayLayout1ul4",Ui);var Zn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.length;return this.resize(Br+1),this.emplace(Br,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=oe*10,na=oe*5;return this.int16[Rr+0]=_e,this.int16[Rr+1]=Pe,this.int16[Rr+2]=je,this.int16[Rr+3]=ct,this.int16[Rr+4]=Lt,this.int16[Rr+5]=Nt,this.uint32[na+3]=Xt,this.uint16[Rr+8]=gr,this.uint16[Rr+9]=Br,oe},C}(nn);Zn.prototype.bytesPerElement=20,de("StructArrayLayout6i1ul2ui20",Zn);var Rn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);Rn.prototype.bytesPerElement=12,de("StructArrayLayout2i2i2i12",Rn);var xn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct){var Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,oe,_e,Pe,je,ct)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt){var Nt=oe*4,Xt=oe*8;return this.float32[Nt+0]=_e,this.float32[Nt+1]=Pe,this.float32[Nt+2]=je,this.int16[Xt+6]=ct,this.int16[Xt+7]=Lt,oe},C}(nn);xn.prototype.bytesPerElement=16,de("StructArrayLayout2f1f2i16",xn);var dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*12,Nt=oe*3;return this.uint8[Lt+0]=_e,this.uint8[Lt+1]=Pe,this.float32[Nt+1]=je,this.float32[Nt+2]=ct,oe},C}(nn);dn.prototype.bytesPerElement=12,de("StructArrayLayout2ub2f12",dn);var jn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.uint16[ct+0]=_e,this.uint16[ct+1]=Pe,this.uint16[ct+2]=je,oe},C}(nn);jn.prototype.bytesPerElement=6,de("StructArrayLayout3ui6",jn);var Ro=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci){var Ai=this.length;return this.resize(Ai+1),this.emplace(Ai,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai){var Li=oe*24,Ki=oe*12,kn=oe*48;return this.int16[Li+0]=_e,this.int16[Li+1]=Pe,this.uint16[Li+2]=je,this.uint16[Li+3]=ct,this.uint32[Ki+2]=Lt,this.uint32[Ki+3]=Nt,this.uint32[Ki+4]=Xt,this.uint16[Li+10]=gr,this.uint16[Li+11]=Br,this.uint16[Li+12]=Rr,this.float32[Ki+7]=na,this.float32[Ki+8]=Ia,this.uint8[kn+36]=ii,this.uint8[kn+37]=Wa,this.uint8[kn+38]=Si,this.uint32[Ki+10]=ci,this.int16[Li+22]=Ai,oe},C}(nn);Ro.prototype.bytesPerElement=48,de("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Ro);var rs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo){var zs=this.length;return this.resize(zs+1),this.emplace(zs,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo,zs){var cs=oe*34,Tl=oe*17;return this.int16[cs+0]=_e,this.int16[cs+1]=Pe,this.int16[cs+2]=je,this.int16[cs+3]=ct,this.int16[cs+4]=Lt,this.int16[cs+5]=Nt,this.int16[cs+6]=Xt,this.int16[cs+7]=gr,this.uint16[cs+8]=Br,this.uint16[cs+9]=Rr,this.uint16[cs+10]=na,this.uint16[cs+11]=Ia,this.uint16[cs+12]=ii,this.uint16[cs+13]=Wa,this.uint16[cs+14]=Si,this.uint16[cs+15]=ci,this.uint16[cs+16]=Ai,this.uint16[cs+17]=Li,this.uint16[cs+18]=Ki,this.uint16[cs+19]=kn,this.uint16[cs+20]=Tn,this.uint16[cs+21]=lo,this.uint16[cs+22]=qn,this.uint32[Tl+12]=to,this.float32[Tl+13]=ds,this.float32[Tl+14]=uo,this.float32[Tl+15]=vo,this.float32[Tl+16]=zs,oe},C}(nn);rs.prototype.bytesPerElement=68,de("StructArrayLayout8i15ui1ul4f68",rs);var wn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.float32[Pe+0]=_e,oe},C}(nn);wn.prototype.bytesPerElement=4,de("StructArrayLayout1f4",wn);var oo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.int16[ct+0]=_e,this.int16[ct+1]=Pe,this.int16[ct+2]=je,oe},C}(nn);oo.prototype.bytesPerElement=6,de("StructArrayLayout3i6",oo);var Xo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*2,Lt=oe*4;return this.uint32[ct+0]=_e,this.uint16[Lt+2]=Pe,this.uint16[Lt+3]=je,oe},C}(nn);Xo.prototype.bytesPerElement=8,de("StructArrayLayout1ul2ui8",Xo);var os=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.uint16[je+0]=_e,this.uint16[je+1]=Pe,oe},C}(nn);os.prototype.bytesPerElement=4,de("StructArrayLayout2ui4",os);var As=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint16[Pe+0]=_e,oe},C}(nn);As.prototype.bytesPerElement=2,de("StructArrayLayout1ui2",As);var $l=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.float32[Lt+0]=_e,this.float32[Lt+1]=Pe,this.float32[Lt+2]=je,this.float32[Lt+3]=ct,oe},C}(nn);$l.prototype.bytesPerElement=16,de("StructArrayLayout4f16",$l);var Uc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return V.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},V.x1.get=function(){return this._structArray.int16[this._pos2+2]},V.y1.get=function(){return this._structArray.int16[this._pos2+3]},V.x2.get=function(){return this._structArray.int16[this._pos2+4]},V.y2.get=function(){return this._structArray.int16[this._pos2+5]},V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.anchorPoint.get=function(){return new i(this.anchorPointX,this.anchorPointY)},Object.defineProperties(C.prototype,V),C}(fn);Uc.prototype.size=20;var Ws=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Uc(this,oe)},C}(Zn);de("CollisionBoxArray",Ws);var jc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},V.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},V.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},V.segment.get=function(){return this._structArray.uint16[this._pos2+10]},V.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},V.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},V.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},V.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},V.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},V.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},V.placedOrientation.set=function(oe){this._structArray.uint8[this._pos1+37]=oe},V.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},V.hidden.set=function(oe){this._structArray.uint8[this._pos1+38]=oe},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+10]=oe},V.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(C.prototype,V),C}(fn);jc.prototype.size=48;var Ol=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new jc(this,oe)},C}(Ro);de("PlacedSymbolArray",Ol);var vc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},V.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},V.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},V.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},V.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},V.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},V.key.get=function(){return this._structArray.uint16[this._pos2+8]},V.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},V.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},V.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},V.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},V.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},V.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},V.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},V.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},V.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},V.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},V.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},V.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},V.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+12]=oe},V.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},V.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},V.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},V.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(C.prototype,V),C}(fn);vc.prototype.size=68;var mc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new vc(this,oe)},C}(rs);de("SymbolInstanceArray",mc);var rf=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getoffsetX=function(oe){return this.float32[oe*1+0]},C}(wn);de("GlyphOffsetArray",rf);var Yl=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getx=function(oe){return this.int16[oe*3+0]},C.prototype.gety=function(oe){return this.int16[oe*3+1]},C.prototype.gettileUnitDistanceFromAnchor=function(oe){return this.int16[oe*3+2]},C}(oo);de("SymbolLineVertexArray",Yl);var Mc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(C.prototype,V),C}(fn);Mc.prototype.size=8;var Vc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Mc(this,oe)},C}(Xo);de("FeatureIndexArray",Vc);var Ds=on([{name:"a_pos",components:2,type:"Int16"}],4),af=Ds.members,Cs=function(C){C===void 0&&(C=[]),this.segments=C};Cs.prototype.prepareSegment=function(C,V,oe,_e){var Pe=this.segments[this.segments.length-1];return C>Cs.MAX_VERTEX_ARRAY_LENGTH&&U("Max vertices per segment is "+Cs.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+C),(!Pe||Pe.vertexLength+C>Cs.MAX_VERTEX_ARRAY_LENGTH||Pe.sortKey!==_e)&&(Pe={vertexOffset:V.length,primitiveOffset:oe.length,vertexLength:0,primitiveLength:0},_e!==void 0&&(Pe.sortKey=_e),this.segments.push(Pe)),Pe},Cs.prototype.get=function(){return this.segments},Cs.prototype.destroy=function(){for(var C=0,V=this.segments;C>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt,je=je<<13|je>>>19,ct=(je&65535)*5+(((je>>>16)*5&65535)<<16)&4294967295,je=(ct&65535)+27492+(((ct>>>16)+58964&65535)<<16);switch(Xt=0,_e){case 3:Xt^=(V.charCodeAt(gr+2)&255)<<16;case 2:Xt^=(V.charCodeAt(gr+1)&255)<<8;case 1:Xt^=V.charCodeAt(gr)&255,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt}return je^=V.length,je^=je>>>16,je=(je&65535)*2246822507+(((je>>>16)*2246822507&65535)<<16)&4294967295,je^=je>>>13,je=(je&65535)*3266489909+(((je>>>16)*3266489909&65535)<<16)&4294967295,je^=je>>>16,je>>>0}k.exports=C}),te=t(function(k){function C(V,oe){for(var _e=V.length,Pe=oe^_e,je=0,ct;_e>=4;)ct=V.charCodeAt(je)&255|(V.charCodeAt(++je)&255)<<8|(V.charCodeAt(++je)&255)<<16|(V.charCodeAt(++je)&255)<<24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),ct^=ct>>>24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)^ct,_e-=4,++je;switch(_e){case 3:Pe^=(V.charCodeAt(je+2)&255)<<16;case 2:Pe^=(V.charCodeAt(je+1)&255)<<8;case 1:Pe^=V.charCodeAt(je)&255,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)}return Pe^=Pe>>>13,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16),Pe^=Pe>>>15,Pe>>>0}k.exports=C}),xe=ye,We=ye,He=te;xe.murmur3=We,xe.murmur2=He;var st=function(){this.ids=[],this.positions=[],this.indexed=!1};st.prototype.add=function(C,V,oe,_e){this.ids.push(Ht(C)),this.positions.push(V,oe,_e)},st.prototype.getPositions=function(C){for(var V=Ht(C),oe=0,_e=this.ids.length-1;oe<_e;){var Pe=oe+_e>>1;this.ids[Pe]>=V?_e=Pe:oe=Pe+1}for(var je=[];this.ids[oe]===V;){var ct=this.positions[3*oe],Lt=this.positions[3*oe+1],Nt=this.positions[3*oe+2];je.push({index:ct,start:Lt,end:Nt}),oe++}return je},st.serialize=function(C,V){var oe=new Float64Array(C.ids),_e=new Uint32Array(C.positions);return yr(oe,_e,0,oe.length-1),V&&V.push(oe.buffer,_e.buffer),{ids:oe,positions:_e}},st.deserialize=function(C){var V=new st;return V.ids=C.ids,V.positions=C.positions,V.indexed=!0,V};var Et=Math.pow(2,53)-1;function Ht(k){var C=+k;return!isNaN(C)&&C<=Et?C:xe(String(k))}function yr(k,C,V,oe){for(;V>1],Pe=V-1,je=oe+1;;){do Pe++;while(k[Pe]<_e);do je--;while(k[je]>_e);if(Pe>=je)break;Ir(k,Pe,je),Ir(C,3*Pe,3*je),Ir(C,3*Pe+1,3*je+1),Ir(C,3*Pe+2,3*je+2)}je-Vje.x+1||Ltje.y+1)&&U("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return V}function ms(k,C){return{type:k.type,id:k.id,properties:k.properties,geometry:C?zn(k):[]}}function us(k,C,V,oe,_e){k.emplaceBack(C*2+(oe+1)/2,V*2+(_e+1)/2)}var Vs=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Mi,this.indexArray=new jn,this.segments=new Cs,this.programConfigurations=new mi(C.layers,C.zoom),this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};Vs.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=[],je=null;_e.type==="circle"&&(je=_e.layout.get("circle-sort-key"));for(var ct=0,Lt=C;ct=Ii||Br<0||Br>=Ii)){var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,C.sortKey),na=Rr.vertexLength;us(this.layoutVertexArray,gr,Br,-1,-1),us(this.layoutVertexArray,gr,Br,1,-1),us(this.layoutVertexArray,gr,Br,1,1),us(this.layoutVertexArray,gr,Br,-1,1),this.indexArray.emplaceBack(na,na+1,na+2),this.indexArray.emplaceBack(na,na+3,na+2),Rr.vertexLength+=4,Rr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,{},_e)},de("CircleBucket",Vs,{omit:["layers"]});function qo(k,C){for(var V=0;V=3){for(var Pe=0;Pe<_e.length;Pe++)if(kh(k,_e[Pe]))return!0}if(Ap(k,_e,V))return!0}return!1}function Ap(k,C,V){if(k.length>1){if(Sp(k,C))return!0;for(var oe=0;oe1?k.distSqr(V):k.distSqr(V.sub(C)._mult(_e)._add(C))}function td(k,C){for(var V=!1,oe,_e,Pe,je=0;jeC.y!=Pe.y>C.y&&C.x<(Pe.x-_e.x)*(C.y-_e.y)/(Pe.y-_e.y)+_e.x&&(V=!V)}return V}function kh(k,C){for(var V=!1,oe=0,_e=k.length-1;oeC.y!=je.y>C.y&&C.x<(je.x-Pe.x)*(C.y-Pe.y)/(je.y-Pe.y)+Pe.x&&(V=!V)}return V}function rd(k,C,V,oe,_e){for(var Pe=0,je=k;Pe=ct.x&&_e>=ct.y)return!0}var Lt=[new i(C,V),new i(C,_e),new i(oe,_e),new i(oe,V)];if(k.length>2)for(var Nt=0,Xt=Lt;Nt_e.x&&C.x>_e.x||k.y_e.y&&C.y>_e.y)return!1;var Pe=W(k,C,V[0]);return Pe!==W(k,C,V[1])||Pe!==W(k,C,V[2])||Pe!==W(k,C,V[3])}function Ch(k,C,V){var oe=C.paint.get(k).value;return oe.kind==="constant"?oe.value:V.programConfigurations.get(C.id).getMaxValue(k)}function Mp(k){return Math.sqrt(k[0]*k[0]+k[1]*k[1])}function qp(k,C,V,oe,_e){if(!C[0]&&!C[1])return k;var Pe=i.convert(C)._mult(_e);V==="viewport"&&Pe._rotate(-oe);for(var je=[],ct=0;ct0&&(Pe=1/Math.sqrt(Pe)),k[0]=C[0]*Pe,k[1]=C[1]*Pe,k[2]=C[2]*Pe,k}function NT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]}function UT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=V[0],ct=V[1],Lt=V[2];return k[0]=_e*Lt-Pe*ct,k[1]=Pe*je-oe*Lt,k[2]=oe*ct-_e*je,k}function jT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2];return k[0]=oe*V[0]+_e*V[3]+Pe*V[6],k[1]=oe*V[1]+_e*V[4]+Pe*V[7],k[2]=oe*V[2]+_e*V[5]+Pe*V[8],k}var VT=lv,cC=function(){var k=sv();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=3),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ctk.width||_e.height>k.height||V.x>k.width-_e.width||V.y>k.height-_e.height)throw new RangeError("out of range source coordinates for image copy");if(_e.width>C.width||_e.height>C.height||oe.x>C.width-_e.width||oe.y>C.height-_e.height)throw new RangeError("out of range destination coordinates for image copy");for(var je=k.data,ct=C.data,Lt=0;Lt<_e.height;Lt++)for(var Nt=((V.y+Lt)*k.width+V.x)*Pe,Xt=((oe.y+Lt)*C.width+oe.x)*Pe,gr=0;gr<_e.width*Pe;gr++)ct[Xt+gr]=je[Nt+gr];return C}var Cp=function(C,V){Ph(this,C,1,V)};Cp.prototype.resize=function(C){x0(this,C,1)},Cp.prototype.clone=function(){return new Cp({width:this.width,height:this.height},new Uint8Array(this.data))},Cp.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,1)};var Of=function(C,V){Ph(this,C,4,V)};Of.prototype.resize=function(C){x0(this,C,4)},Of.prototype.replace=function(C,V){V?this.data.set(C):C instanceof Uint8ClampedArray?this.data=new Uint8Array(C.buffer):this.data=C},Of.prototype.clone=function(){return new Of({width:this.width,height:this.height},new Uint8Array(this.data))},Of.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,4)},de("AlphaImage",Cp),de("RGBAImage",Of);var Tg=new xi({"heatmap-radius":new ra(fi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new ra(fi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Qt(fi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new wi(fi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Qt(fi.paint_heatmap["heatmap-opacity"])}),sm={paint:Tg};function Ag(k){var C={},V=k.resolution||256,oe=k.clips?k.clips.length:1,_e=k.image||new Of({width:V,height:oe}),Pe=function(Si,ci,Ai){C[k.evaluationKey]=Ai;var Li=k.expression.evaluate(C);_e.data[Si+ci+0]=Math.floor(Li.r*255/Li.a),_e.data[Si+ci+1]=Math.floor(Li.g*255/Li.a),_e.data[Si+ci+2]=Math.floor(Li.b*255/Li.a),_e.data[Si+ci+3]=Math.floor(Li.a*255)};if(k.clips)for(var Nt=0,Xt=0;Nt80*V){ct=Nt=k[0],Lt=Xt=k[1];for(var na=V;na<_e;na+=V)gr=k[na],Br=k[na+1],grNt&&(Nt=gr),Br>Xt&&(Xt=Br);Rr=Math.max(Nt-ct,Xt-Lt),Rr=Rr!==0?1/Rr:0}return Sg(Pe,je,V,ct,Lt,Rr),je}function A0(k,C,V,oe,_e){var Pe,je;if(_e===B1(k,C,V,oe)>0)for(Pe=C;Pe=C;Pe-=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);return je&&Eg(je,je.next)&&(Lg(je),je=je.next),je}function uv(k,C){if(!k)return k;C||(C=k);var V=k,oe;do if(oe=!1,!V.steiner&&(Eg(V,V.next)||qc(V.prev,V,V.next)===0)){if(Lg(V),V=C=V.prev,V===V.next)break;oe=!0}else V=V.next;while(oe||V!==C);return C}function Sg(k,C,V,oe,_e,Pe,je){if(k){!je&&Pe&&S0(k,oe,_e,Pe);for(var ct=k,Lt,Nt;k.prev!==k.next;){if(Lt=k.prev,Nt=k.next,Pe?zx(k,oe,_e,Pe):Dx(k)){C.push(Lt.i/V),C.push(k.i/V),C.push(Nt.i/V),Lg(k),k=Nt.next,ct=Nt.next;continue}if(k=Nt,k===ct){je?je===1?(k=Mg(uv(k),C,V),Sg(k,C,V,oe,_e,Pe,2)):je===2&&yd(k,C,V,oe,_e,Pe):Sg(uv(k),C,V,oe,_e,Pe,1);break}}}}function Dx(k){var C=k.prev,V=k,oe=k.next;if(qc(C,V,oe)>=0)return!1;for(var _e=k.next.next;_e!==k.prev;){if(fv(C.x,C.y,V.x,V.y,oe.x,oe.y,_e.x,_e.y)&&qc(_e.prev,_e,_e.next)>=0)return!1;_e=_e.next}return!0}function zx(k,C,V,oe){var _e=k.prev,Pe=k,je=k.next;if(qc(_e,Pe,je)>=0)return!1;for(var ct=_e.xPe.x?_e.x>je.x?_e.x:je.x:Pe.x>je.x?Pe.x:je.x,Xt=_e.y>Pe.y?_e.y>je.y?_e.y:je.y:Pe.y>je.y?Pe.y:je.y,gr=D1(ct,Lt,C,V,oe),Br=D1(Nt,Xt,C,V,oe),Rr=k.prevZ,na=k.nextZ;Rr&&Rr.z>=gr&&na&&na.z<=Br;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0||(Rr=Rr.prevZ,na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0))return!1;na=na.nextZ}for(;Rr&&Rr.z>=gr;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0)return!1;Rr=Rr.prevZ}for(;na&&na.z<=Br;){if(na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0)return!1;na=na.nextZ}return!0}function Mg(k,C,V){var oe=k;do{var _e=oe.prev,Pe=oe.next.next;!Eg(_e,Pe)&&M0(_e,oe,oe.next,Pe)&&Cg(_e,Pe)&&Cg(Pe,_e)&&(C.push(_e.i/V),C.push(oe.i/V),C.push(Pe.i/V),Lg(oe),Lg(oe.next),oe=k=Pe),oe=oe.next}while(oe!==k);return uv(oe)}function yd(k,C,V,oe,_e,Pe){var je=k;do{for(var ct=je.next.next;ct!==je.prev;){if(je.i!==ct.i&&um(je,ct)){var Lt=F1(je,ct);je=uv(je,je.next),Lt=uv(Lt,Lt.next),Sg(je,C,V,oe,_e,Pe),Sg(Lt,C,V,oe,_e,Pe);return}ct=ct.next}je=je.next}while(je!==k)}function cv(k,C,V,oe){var _e=[],Pe,je,ct,Lt,Nt;for(Pe=0,je=C.length;Pe=V.next.y&&V.next.y!==V.y){var ct=V.x+(_e-V.y)*(V.next.x-V.x)/(V.next.y-V.y);if(ct<=oe&&ct>Pe){if(Pe=ct,ct===oe){if(_e===V.y)return V;if(_e===V.next.y)return V.next}je=V.x=V.x&&V.x>=Nt&&oe!==V.x&&fv(_eje.x||V.x===je.x&&JT(je,V)))&&(je=V,gr=Br)),V=V.next;while(V!==Lt);return je}function JT(k,C){return qc(k.prev,k,C.prev)<0&&qc(C.next,k,k.next)<0}function S0(k,C,V,oe){var _e=k;do _e.z===null&&(_e.z=D1(_e.x,_e.y,C,V,oe)),_e.prevZ=_e.prev,_e.nextZ=_e.next,_e=_e.next;while(_e!==k);_e.prevZ.nextZ=null,_e.prevZ=null,R1(_e)}function R1(k){var C,V,oe,_e,Pe,je,ct,Lt,Nt=1;do{for(V=k,k=null,Pe=null,je=0;V;){for(je++,oe=V,ct=0,C=0;C0||Lt>0&&oe;)ct!==0&&(Lt===0||!oe||V.z<=oe.z)?(_e=V,V=V.nextZ,ct--):(_e=oe,oe=oe.nextZ,Lt--),Pe?Pe.nextZ=_e:k=_e,_e.prevZ=Pe,Pe=_e;V=oe}Pe.nextZ=null,Nt*=2}while(je>1);return k}function D1(k,C,V,oe,_e){return k=32767*(k-V)*_e,C=32767*(C-oe)*_e,k=(k|k<<8)&16711935,k=(k|k<<4)&252645135,k=(k|k<<2)&858993459,k=(k|k<<1)&1431655765,C=(C|C<<8)&16711935,C=(C|C<<4)&252645135,C=(C|C<<2)&858993459,C=(C|C<<1)&1431655765,k|C<<1}function z1(k){var C=k,V=k;do(C.x=0&&(k-je)*(oe-ct)-(V-je)*(C-ct)>=0&&(V-je)*(Pe-ct)-(_e-je)*(oe-ct)>=0}function um(k,C){return k.next.i!==C.i&&k.prev.i!==C.i&&!Ox(k,C)&&(Cg(k,C)&&Cg(C,k)&&$T(k,C)&&(qc(k.prev,k,C.prev)||qc(k,C.prev,C))||Eg(k,C)&&qc(k.prev,k,k.next)>0&&qc(C.prev,C,C.next)>0)}function qc(k,C,V){return(C.y-k.y)*(V.x-C.x)-(C.x-k.x)*(V.y-C.y)}function Eg(k,C){return k.x===C.x&&k.y===C.y}function M0(k,C,V,oe){var _e=Dv(qc(k,C,V)),Pe=Dv(qc(k,C,oe)),je=Dv(qc(V,oe,k)),ct=Dv(qc(V,oe,C));return!!(_e!==Pe&&je!==ct||_e===0&&kg(k,V,C)||Pe===0&&kg(k,oe,C)||je===0&&kg(V,k,oe)||ct===0&&kg(V,C,oe))}function kg(k,C,V){return C.x<=Math.max(k.x,V.x)&&C.x>=Math.min(k.x,V.x)&&C.y<=Math.max(k.y,V.y)&&C.y>=Math.min(k.y,V.y)}function Dv(k){return k>0?1:k<0?-1:0}function Ox(k,C){var V=k;do{if(V.i!==k.i&&V.next.i!==k.i&&V.i!==C.i&&V.next.i!==C.i&&M0(V,V.next,k,C))return!0;V=V.next}while(V!==k);return!1}function Cg(k,C){return qc(k.prev,k,k.next)<0?qc(k,C,k.next)>=0&&qc(k,k.prev,C)>=0:qc(k,C,k.prev)<0||qc(k,k.next,C)<0}function $T(k,C){var V=k,oe=!1,_e=(k.x+C.x)/2,Pe=(k.y+C.y)/2;do V.y>Pe!=V.next.y>Pe&&V.next.y!==V.y&&_e<(V.next.x-V.x)*(Pe-V.y)/(V.next.y-V.y)+V.x&&(oe=!oe),V=V.next;while(V!==k);return oe}function F1(k,C){var V=new O1(k.i,k.x,k.y),oe=new O1(C.i,C.x,C.y),_e=k.next,Pe=C.prev;return k.next=C,C.prev=k,V.next=_e,_e.prev=V,oe.next=V,V.prev=oe,Pe.next=oe,oe.prev=Pe,oe}function Bx(k,C,V,oe){var _e=new O1(k,C,V);return oe?(_e.next=oe.next,_e.prev=oe,oe.next.prev=_e,oe.next=_e):(_e.prev=_e,_e.next=_e),_e}function Lg(k){k.next.prev=k.prev,k.prev.next=k.next,k.prevZ&&(k.prevZ.nextZ=k.nextZ),k.nextZ&&(k.nextZ.prevZ=k.prevZ)}function O1(k,C,V){this.i=k,this.x=C,this.y=V,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}lm.deviation=function(k,C,V,oe){var _e=C&&C.length,Pe=_e?C[0]*V:k.length,je=Math.abs(B1(k,0,Pe,V));if(_e)for(var ct=0,Lt=C.length;ct0&&(oe+=k[_e-1].length,V.holes.push(oe))}return V},T0.default=Rx;function N1(k,C,V,oe,_e){Gd(k,C,V||0,oe||k.length-1,_e||Nx)}function Gd(k,C,V,oe,_e){for(;oe>V;){if(oe-V>600){var Pe=oe-V+1,je=C-V+1,ct=Math.log(Pe),Lt=.5*Math.exp(2*ct/3),Nt=.5*Math.sqrt(ct*Lt*(Pe-Lt)/Pe)*(je-Pe/2<0?-1:1),Xt=Math.max(V,Math.floor(C-je*Lt/Pe+Nt)),gr=Math.min(oe,Math.floor(C+(Pe-je)*Lt/Pe+Nt));Gd(k,C,Xt,gr,_e)}var Br=k[C],Rr=V,na=oe;for(cm(k,V,C),_e(k[oe],Br)>0&&cm(k,V,oe);Rr0;)na--}_e(k[V],Br)===0?cm(k,V,na):(na++,cm(k,na,oe)),na<=C&&(V=na+1),C<=na&&(oe=na-1)}}function cm(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}function Nx(k,C){return kC?1:0}function E0(k,C){var V=k.length;if(V<=1)return[k];for(var oe=[],_e,Pe,je=0;je1)for(var Lt=0;Lt>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),V===1&&(ct&&je.push(ct),ct=[]),ct.push(new i(_e,Pe));else if(V===7)ct&&ct.push(ct[0].clone());else throw new Error("unknown command "+V)}return ct&&je.push(ct),je},zv.prototype.bbox=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=1/0,ct=-1/0,Lt=1/0,Nt=-1/0;k.pos>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),_ect&&(ct=_e),PeNt&&(Nt=Pe);else if(V!==7)throw new Error("unknown command "+V)}return[je,Lt,ct,Nt]},zv.prototype.toGeoJSON=function(k,C,V){var oe=this.extent*Math.pow(2,V),_e=this.extent*k,Pe=this.extent*C,je=this.loadGeometry(),ct=zv.types[this.type],Lt,Nt;function Xt(Rr){for(var na=0;na>3;C=oe===1?k.readString():oe===2?k.readFloat():oe===3?k.readDouble():oe===4?k.readVarint64():oe===5?k.readVarint():oe===6?k.readSVarint():oe===7?k.readBoolean():null}return C}V1.prototype.feature=function(k){if(k<0||k>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[k];var C=this._pbf.readVarint()+this._pbf.pos;return new j1(this._pbf,C,this.extent,this._keys,this._values)};var Yx=eA;function eA(k,C){this.layers=k.readFields(tA,{},C)}function tA(k,C,V){if(k===3){var oe=new Wd(V,V.readVarint()+V.pos);oe.length&&(C[oe.name]=oe)}}var Kx=Yx,fm=j1,Jx=Wd,Zd={VectorTile:Kx,VectorTileFeature:fm,VectorTileLayer:Jx},$x=Zd.VectorTileFeature.types,C0=500,hm=Math.pow(2,13);function hv(k,C,V,oe,_e,Pe,je,ct){k.emplaceBack(C,V,Math.floor(oe*hm)*2+je,_e*hm*2,Pe*hm*2,Math.round(ct))}var fd=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new pn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};fd.prototype.populate=function(C,V,oe){this.features=[],this.hasPattern=k0("fill-extrusion",this.layers,V);for(var _e=0,Pe=C;_e=1){var Ai=ii[Si-1];if(!rA(ci,Ai)){Rr.vertexLength+4>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Li=ci.sub(Ai)._perp()._unit(),Ki=Ai.dist(ci);Wa+Ki>32768&&(Wa=0),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,1,Wa),Wa+=Ki,hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,1,Wa);var kn=Rr.vertexLength;this.indexArray.emplaceBack(kn,kn+2,kn+1),this.indexArray.emplaceBack(kn+1,kn+2,kn+3),Rr.vertexLength+=4,Rr.primitiveLength+=2}}}}if(Rr.vertexLength+Nt>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray)),$x[C.type]==="Polygon"){for(var Tn=[],lo=[],qn=Rr.vertexLength,to=0,ds=Lt;toIi)||k.y===C.y&&(k.y<0||k.y>Ii)}function aA(k){return k.every(function(C){return C.x<0})||k.every(function(C){return C.x>Ii})||k.every(function(C){return C.y<0})||k.every(function(C){return C.y>Ii})}var pm=new xi({"fill-extrusion-opacity":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new ra(fi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ta(fi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new ra(fi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new ra(fi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ph={paint:pm},pv=function(k){function C(V){k.call(this,V,ph)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new fd(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-extrusion-translate"))},C.prototype.is3D=function(){return!0},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=qp(oe,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("fill-extrusion-height").evaluate(_e,Pe),Rr=this.paint.get("fill-extrusion-base").evaluate(_e,Pe),na=iA(gr,Xt,Lt,0),Ia=H1(je,Rr,Br,Xt),ii=Ia[0],Wa=Ia[1];return Qx(ii,Wa,na)},C}(Fi);function Fv(k,C){return k.x*C.x+k.y*C.y}function q1(k,C){if(k.length===1){for(var V=0,oe=C[V++],_e;!_e||oe.equals(_e);)if(_e=C[V++],!_e)return 1/0;for(;V=2&&C[Nt-1].equals(C[Nt-2]);)Nt--;for(var Xt=0;Xt0;if(Tn&&Si>Xt){var qn=Rr.dist(na);if(qn>2*gr){var to=Rr.sub(Rr.sub(na)._mult(gr/qn)._round());this.updateDistance(na,to),this.addCurrentVertex(to,ii,0,0,Br),na=to}}var ds=na&&Ia,uo=ds?oe:Lt?"butt":_e;if(ds&&uo==="round"&&(KiPe&&(uo="bevel"),uo==="bevel"&&(Ki>2&&(uo="flipbevel"),Ki100)ci=Wa.mult(-1);else{var vo=Ki*ii.add(Wa).mag()/ii.sub(Wa).mag();ci._perp()._mult(vo*(lo?-1:1))}this.addCurrentVertex(Rr,ci,0,0,Br),this.addCurrentVertex(Rr,ci.mult(-1),0,0,Br)}else if(uo==="bevel"||uo==="fakeround"){var zs=-Math.sqrt(Ki*Ki-1),cs=lo?zs:0,Tl=lo?0:zs;if(na&&this.addCurrentVertex(Rr,ii,cs,Tl,Br),uo==="fakeround")for(var lu=Math.round(kn*180/Math.PI/W1),Al=1;Al2*gr){var Cf=Rr.add(Ia.sub(Rr)._mult(gr/ih)._round());this.updateDistance(Rr,Cf),this.addCurrentVertex(Cf,Wa,0,0,Br),Rr=Cf}}}}},Mf.prototype.addCurrentVertex=function(C,V,oe,_e,Pe,je){je===void 0&&(je=!1);var ct=V.x+V.y*oe,Lt=V.y-V.x*oe,Nt=-V.x+V.y*_e,Xt=-V.y-V.x*_e;this.addHalfVertex(C,ct,Lt,je,!1,oe,Pe),this.addHalfVertex(C,Nt,Xt,je,!0,-_e,Pe),this.distance>zg/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(C,V,oe,_e,Pe,je))},Mf.prototype.addHalfVertex=function(C,V,oe,_e,Pe,je,ct){var Lt=C.x,Nt=C.y,Xt=this.lineClips?this.scaledDistance*(zg-1):this.scaledDistance,gr=Xt*P0;if(this.layoutVertexArray.emplaceBack((Lt<<1)+(_e?1:0),(Nt<<1)+(Pe?1:0),Math.round(L0*V)+128,Math.round(L0*oe)+128,(je===0?0:je<0?-1:1)+1|(gr&63)<<2,gr>>6),this.lineClips){var Br=this.scaledDistance-this.lineClips.start,Rr=this.lineClips.end-this.lineClips.start,na=Br/Rr;this.layoutVertexArray2.emplaceBack(na,this.lineClipsArray.length)}var Ia=ct.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Ia),ct.primitiveLength++),Pe?this.e2=Ia:this.e1=Ia},Mf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Mf.prototype.updateDistance=function(C,V){this.distance+=C.dist(V),this.updateScaledDistance()},de("LineBucket",Mf,{omit:["layers","patternFeatures"]});var Z1=new xi({"line-cap":new Qt(fi.layout_line["line-cap"]),"line-join":new ra(fi.layout_line["line-join"]),"line-miter-limit":new Qt(fi.layout_line["line-miter-limit"]),"line-round-limit":new Qt(fi.layout_line["line-round-limit"]),"line-sort-key":new ra(fi.layout_line["line-sort-key"])}),X1=new xi({"line-opacity":new ra(fi.paint_line["line-opacity"]),"line-color":new ra(fi.paint_line["line-color"]),"line-translate":new Qt(fi.paint_line["line-translate"]),"line-translate-anchor":new Qt(fi.paint_line["line-translate-anchor"]),"line-width":new ra(fi.paint_line["line-width"]),"line-gap-width":new ra(fi.paint_line["line-gap-width"]),"line-offset":new ra(fi.paint_line["line-offset"]),"line-blur":new ra(fi.paint_line["line-blur"]),"line-dasharray":new si(fi.paint_line["line-dasharray"]),"line-pattern":new Ta(fi.paint_line["line-pattern"]),"line-gradient":new wi(fi.paint_line["line-gradient"])}),I0={paint:X1,layout:Z1},oA=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e){return _e=new Vi(Math.floor(_e.zoom),{now:_e.now,fadeDuration:_e.fadeDuration,zoomHistory:_e.zoomHistory,transition:_e.transition}),k.prototype.possiblyEvaluate.call(this,oe,_e)},C.prototype.evaluate=function(oe,_e,Pe,je){return _e=m({},_e,{zoom:Math.floor(_e.zoom)}),k.prototype.evaluate.call(this,oe,_e,Pe,je)},C}(ra),q=new oA(I0.paint.properties["line-width"].specification);q.useIntegerZoom=!0;var D=function(k){function C(V){k.call(this,V,I0),this.gradientVersion=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._handleSpecialPaintPropertyUpdate=function(oe){if(oe==="line-gradient"){var _e=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=_e._styleExpression.expression instanceof vu,this.gradientVersion=(this.gradientVersion+1)%h}},C.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e),this.paint._values["line-floorwidth"]=q.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,oe)},C.prototype.createBucket=function(oe){return new Mf(oe)},C.prototype.queryRadius=function(oe){var _e=oe,Pe=Y(Ch("line-width",this,_e),Ch("line-gap-width",this,_e)),je=Ch("line-offset",this,_e);return Pe/2+Math.abs(je)+Mp(this.paint.get("line-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Lt.angle,Nt),gr=Nt/2*Y(this.paint.get("line-width").evaluate(_e,Pe),this.paint.get("line-gap-width").evaluate(_e,Pe)),Br=this.paint.get("line-offset").evaluate(_e,Pe);return Br&&(je=pe(je,Br*Nt)),Ru(Xt,je,gr)},C.prototype.isTileClipped=function(){return!0},C}(Fi);function Y(k,C){return C>0?C+2*k:k}function pe(k,C){for(var V=[],oe=new i(0,0),_e=0;_e":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function hi(k){for(var C="",V=0;V>1,Xt=-7,gr=V?_e-1:0,Br=V?-1:1,Rr=k[C+gr];for(gr+=Br,Pe=Rr&(1<<-Xt)-1,Rr>>=-Xt,Xt+=ct;Xt>0;Pe=Pe*256+k[C+gr],gr+=Br,Xt-=8);for(je=Pe&(1<<-Xt)-1,Pe>>=-Xt,Xt+=oe;Xt>0;je=je*256+k[C+gr],gr+=Br,Xt-=8);if(Pe===0)Pe=1-Nt;else{if(Pe===Lt)return je?NaN:(Rr?-1:1)*(1/0);je=je+Math.pow(2,oe),Pe=Pe-Nt}return(Rr?-1:1)*je*Math.pow(2,Pe-oe)},fo=function(k,C,V,oe,_e,Pe){var je,ct,Lt,Nt=Pe*8-_e-1,Xt=(1<>1,Br=_e===23?Math.pow(2,-24)-Math.pow(2,-77):0,Rr=oe?0:Pe-1,na=oe?1:-1,Ia=C<0||C===0&&1/C<0?1:0;for(C=Math.abs(C),isNaN(C)||C===1/0?(ct=isNaN(C)?1:0,je=Xt):(je=Math.floor(Math.log(C)/Math.LN2),C*(Lt=Math.pow(2,-je))<1&&(je--,Lt*=2),je+gr>=1?C+=Br/Lt:C+=Br*Math.pow(2,1-gr),C*Lt>=2&&(je++,Lt/=2),je+gr>=Xt?(ct=0,je=Xt):je+gr>=1?(ct=(C*Lt-1)*Math.pow(2,_e),je=je+gr):(ct=C*Math.pow(2,gr-1)*Math.pow(2,_e),je=0));_e>=8;k[V+Rr]=ct&255,Rr+=na,ct/=256,_e-=8);for(je=je<<_e|ct,Nt+=_e;Nt>0;k[V+Rr]=je&255,Rr+=na,je/=256,Nt-=8);k[V+Rr-na]|=Ia*128},ss={read:En,write:fo},eo=vn;function vn(k){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(k)?k:new Uint8Array(k||0),this.pos=0,this.type=0,this.length=this.buf.length}vn.Varint=0,vn.Fixed64=1,vn.Bytes=2,vn.Fixed32=5;var Uo=65536*65536,Mo=1/Uo,xo=12,Yi=typeof TextDecoder>"u"?null:new TextDecoder("utf8");vn.prototype={destroy:function(){this.buf=null},readFields:function(k,C,V){for(V=V||this.length;this.pos>3,Pe=this.pos;this.type=oe&7,k(_e,C,this),this.pos===Pe&&this.skip(oe)}return C},readMessage:function(k,C){return this.readFields(k,C,this.readVarint()+this.pos)},readFixed32:function(){var k=th(this.buf,this.pos);return this.pos+=4,k},readSFixed32:function(){var k=Lp(this.buf,this.pos);return this.pos+=4,k},readFixed64:function(){var k=th(this.buf,this.pos)+th(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readSFixed64:function(){var k=th(this.buf,this.pos)+Lp(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readFloat:function(){var k=ss.read(this.buf,this.pos,!0,23,4);return this.pos+=4,k},readDouble:function(){var k=ss.read(this.buf,this.pos,!0,52,8);return this.pos+=8,k},readVarint:function(k){var C=this.buf,V,oe;return oe=C[this.pos++],V=oe&127,oe<128||(oe=C[this.pos++],V|=(oe&127)<<7,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<14,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<21,oe<128)?V:(oe=C[this.pos],V|=(oe&15)<<28,Ko(V,k,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var k=this.readVarint();return k%2===1?(k+1)/-2:k/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var k=this.readVarint()+this.pos,C=this.pos;return this.pos=k,k-C>=xo&&Yi?Nl(this.buf,C,k):pp(this.buf,C,k)},readBytes:function(){var k=this.readVarint()+this.pos,C=this.buf.subarray(this.pos,k);return this.pos=k,C},readPackedVarint:function(k,C){if(this.type!==vn.Bytes)return k.push(this.readVarint(C));var V=bo(this);for(k=k||[];this.pos127;);else if(C===vn.Bytes)this.pos=this.readVarint()+this.pos;else if(C===vn.Fixed32)this.pos+=4;else if(C===vn.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+C)},writeTag:function(k,C){this.writeVarint(k<<3|C)},realloc:function(k){for(var C=this.length||16;C268435455||k<0){_u(k,this);return}this.realloc(4),this.buf[this.pos++]=k&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=k>>>7&127)))},writeSVarint:function(k){this.writeVarint(k<0?-k*2-1:k*2)},writeBoolean:function(k){this.writeVarint(!!k)},writeString:function(k){k=String(k),this.realloc(k.length*4),this.pos++;var C=this.pos;this.pos=zu(this.buf,k,this.pos);var V=this.pos-C;V>=128&&Gp(C,V,this),this.pos=C-1,this.writeVarint(V),this.pos+=V},writeFloat:function(k){this.realloc(4),ss.write(this.buf,k,this.pos,!0,23,4),this.pos+=4},writeDouble:function(k){this.realloc(8),ss.write(this.buf,k,this.pos,!0,52,8),this.pos+=8},writeBytes:function(k){var C=k.length;this.writeVarint(C),this.realloc(C);for(var V=0;V=128&&Gp(V,oe,this),this.pos=V-1,this.writeVarint(oe),this.pos+=oe},writeMessage:function(k,C,V){this.writeTag(k,vn.Bytes),this.writeRawMessage(C,V)},writePackedVarint:function(k,C){C.length&&this.writeMessage(k,dh,C)},writePackedSVarint:function(k,C){C.length&&this.writeMessage(k,Nf,C)},writePackedBoolean:function(k,C){C.length&&this.writeMessage(k,Jh,C)},writePackedFloat:function(k,C){C.length&&this.writeMessage(k,Yh,C)},writePackedDouble:function(k,C){C.length&&this.writeMessage(k,Kh,C)},writePackedFixed32:function(k,C){C.length&&this.writeMessage(k,Hc,C)},writePackedSFixed32:function(k,C){C.length&&this.writeMessage(k,Uf,C)},writePackedFixed64:function(k,C){C.length&&this.writeMessage(k,Ih,C)},writePackedSFixed64:function(k,C){C.length&&this.writeMessage(k,vh,C)},writeBytesField:function(k,C){this.writeTag(k,vn.Bytes),this.writeBytes(C)},writeFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFixed32(C)},writeSFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeSFixed32(C)},writeFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeFixed64(C)},writeSFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeSFixed64(C)},writeVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeVarint(C)},writeSVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeSVarint(C)},writeStringField:function(k,C){this.writeTag(k,vn.Bytes),this.writeString(C)},writeFloatField:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFloat(C)},writeDoubleField:function(k,C){this.writeTag(k,vn.Fixed64),this.writeDouble(C)},writeBooleanField:function(k,C){this.writeVarintField(k,!!C)}};function Ko(k,C,V){var oe=V.buf,_e,Pe;if(Pe=oe[V.pos++],_e=(Pe&112)>>4,Pe<128||(Pe=oe[V.pos++],_e|=(Pe&127)<<3,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<10,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<17,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<24,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&1)<<31,Pe<128))return gs(k,_e,C);throw new Error("Expected varint not more than 10 bytes")}function bo(k){return k.type===vn.Bytes?k.readVarint()+k.pos:k.pos+1}function gs(k,C,V){return V?C*4294967296+(k>>>0):(C>>>0)*4294967296+(k>>>0)}function _u(k,C){var V,oe;if(k>=0?(V=k%4294967296|0,oe=k/4294967296|0):(V=~(-k%4294967296),oe=~(-k/4294967296),V^4294967295?V=V+1|0:(V=0,oe=oe+1|0)),k>=18446744073709552e3||k<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");C.realloc(10),pu(V,oe,C),Bf(oe,C)}function pu(k,C,V){V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos]=k&127}function Bf(k,C){var V=(k&7)<<4;C.buf[C.pos++]|=V|((k>>>=3)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127)))))}function Gp(k,C,V){var oe=C<=16383?1:C<=2097151?2:C<=268435455?3:Math.floor(Math.log(C)/(Math.LN2*7));V.realloc(oe);for(var _e=V.pos-1;_e>=k;_e--)V.buf[_e+oe]=V.buf[_e]}function dh(k,C){for(var V=0;V>>8,k[V+2]=C>>>16,k[V+3]=C>>>24}function Lp(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+(k[C+3]<<24)}function pp(k,C,V){for(var oe="",_e=C;_e239?4:Pe>223?3:Pe>191?2:1;if(_e+ct>V)break;var Lt,Nt,Xt;ct===1?Pe<128&&(je=Pe):ct===2?(Lt=k[_e+1],(Lt&192)===128&&(je=(Pe&31)<<6|Lt&63,je<=127&&(je=null))):ct===3?(Lt=k[_e+1],Nt=k[_e+2],(Lt&192)===128&&(Nt&192)===128&&(je=(Pe&15)<<12|(Lt&63)<<6|Nt&63,(je<=2047||je>=55296&&je<=57343)&&(je=null))):ct===4&&(Lt=k[_e+1],Nt=k[_e+2],Xt=k[_e+3],(Lt&192)===128&&(Nt&192)===128&&(Xt&192)===128&&(je=(Pe&15)<<18|(Lt&63)<<12|(Nt&63)<<6|Xt&63,(je<=65535||je>=1114112)&&(je=null))),je===null?(je=65533,ct=1):je>65535&&(je-=65536,oe+=String.fromCharCode(je>>>10&1023|55296),je=56320|je&1023),oe+=String.fromCharCode(je),_e+=ct}return oe}function Nl(k,C,V){return Yi.decode(k.subarray(C,V))}function zu(k,C,V){for(var oe=0,_e,Pe;oe55295&&_e<57344)if(Pe)if(_e<56320){k[V++]=239,k[V++]=191,k[V++]=189,Pe=_e;continue}else _e=Pe-55296<<10|_e-56320|65536,Pe=null;else{_e>56319||oe+1===C.length?(k[V++]=239,k[V++]=191,k[V++]=189):Pe=_e;continue}else Pe&&(k[V++]=239,k[V++]=191,k[V++]=189,Pe=null);_e<128?k[V++]=_e:(_e<2048?k[V++]=_e>>6|192:(_e<65536?k[V++]=_e>>12|224:(k[V++]=_e>>18|240,k[V++]=_e>>12&63|128),k[V++]=_e>>6&63|128),k[V++]=_e&63|128)}return V}var xu=3;function Pp(k,C,V){k===1&&V.readMessage(Ec,C)}function Ec(k,C,V){if(k===3){var oe=V.readMessage(dm,{}),_e=oe.id,Pe=oe.bitmap,je=oe.width,ct=oe.height,Lt=oe.left,Nt=oe.top,Xt=oe.advance;C.push({id:_e,bitmap:new Cp({width:je+2*xu,height:ct+2*xu},Pe),metrics:{width:je,height:ct,left:Lt,top:Nt,advance:Xt}})}}function dm(k,C,V){k===1?C.id=V.readVarint():k===2?C.bitmap=V.readBytes():k===3?C.width=V.readVarint():k===4?C.height=V.readVarint():k===5?C.left=V.readSVarint():k===6?C.top=V.readSVarint():k===7&&(C.advance=V.readVarint())}function _d(k){return new eo(k).readFields(Pp,[])}var hd=xu;function Wp(k){for(var C=0,V=0,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe];C+=Pe.w*Pe.h,V=Math.max(V,Pe.w)}k.sort(function(ii,Wa){return Wa.h-ii.h});for(var je=Math.max(Math.ceil(Math.sqrt(C/.95)),V),ct=[{x:0,y:0,w:je,h:1/0}],Lt=0,Nt=0,Xt=0,gr=k;Xt=0;Rr--){var na=ct[Rr];if(!(Br.w>na.w||Br.h>na.h)){if(Br.x=na.x,Br.y=na.y,Nt=Math.max(Nt,Br.y+Br.h),Lt=Math.max(Lt,Br.x+Br.w),Br.w===na.w&&Br.h===na.h){var Ia=ct.pop();Rr=0&&_e>=C&&bd[this.text.charCodeAt(_e)];_e--)oe--;this.text=this.text.substring(C,oe),this.sectionIndex=this.sectionIndex.slice(C,oe)},rh.prototype.substring=function(C,V){var oe=new rh;return oe.text=this.text.substring(C,V),oe.sectionIndex=this.sectionIndex.slice(C,V),oe.sections=this.sections,oe},rh.prototype.toString=function(){return this.text},rh.prototype.getMaxScale=function(){var C=this;return this.sectionIndex.reduce(function(V,oe){return Math.max(V,C.sections[oe].scale)},0)},rh.prototype.addTextSection=function(C,V){this.text+=C.text,this.sections.push(Ov.forText(C.scale,C.fontStack||V));for(var oe=this.sections.length-1,_e=0;_e=xd?null:++this.imageSectionID:(this.imageSectionID=R0,this.imageSectionID)};function sA(k,C){for(var V=[],oe=k.text,_e=0,Pe=0,je=C;Pe=0,Xt=0,gr=0;gr0&&Cf>lo&&(lo=Cf)}else{var Sl=V[to.fontStack],pl=Sl&&Sl[uo];if(pl&&pl.rect)cs=pl.rect,zs=pl.metrics;else{var bu=C[to.fontStack],Fu=bu&&bu[uo];if(!Fu)continue;zs=Fu.metrics}vo=(Li-to.scale)*Ei}Al?(k.verticalizable=!0,Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=lu*to.scale+Nt):(Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=zs.advance*to.scale+Nt)}if(Tn.length!==0){var Qh=Br-Nt;na=Math.max(Qh,na),fA(Tn,0,Tn.length-1,ii,lo)}Br=0;var ep=Pe*Li+lo;kn.lineOffset=Math.max(lo,Ki),Rr+=ep,Ia=Math.max(ep,Ia),++Wa}var nh=Rr-vm,mp=K1(je),gp=mp.horizontalAlign,jf=mp.verticalAlign;Rh(k.positionedLines,ii,gp,jf,na,Ia,Pe,nh,_e.length),k.top+=-jf*nh,k.bottom=k.top+nh,k.left+=-gp*na,k.right=k.left+na}function fA(k,C,V,oe,_e){if(!(!oe&&!_e))for(var Pe=k[V],je=Pe.metrics.advance*Pe.scale,ct=(k[V].x+je)*oe,Lt=C;Lt<=V;Lt++)k[Lt].x-=ct,k[Lt].y+=_e}function Rh(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=(C-V)*_e,Xt=0;Pe!==je?Xt=-ct*oe-vm:Xt=(-oe*Lt+.5)*je;for(var gr=0,Br=k;gr-V/2;){if(je--,je<0)return!1;ct-=k[je].dist(Pe),Pe=k[je]}ct+=k[je].dist(k[je+1]),je++;for(var Lt=[],Nt=0;ctoe;)Nt-=Lt.shift().angleDelta;if(Nt>_e)return!1;je++,ct+=gr.dist(Br)}return!0}function vC(k){for(var C=0,V=0;VNt){var na=(Nt-Lt)/Rr,Ia=xl(gr.x,Br.x,na),ii=xl(gr.y,Br.y,na),Wa=new $h(Ia,ii,Br.angleTo(gr),Xt);return Wa._round(),!je||dC(k,Wa,ct,je,C)?Wa:void 0}Lt+=Rr}}function eW(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=mC(oe,Pe,je),Xt=gC(oe,_e),gr=Xt*je,Br=k[0].x===0||k[0].x===Lt||k[0].y===0||k[0].y===Lt;C-gr=0&&Ai=0&&Li=0&&Br+Nt<=Xt){var Ki=new $h(Ai,Li,Si,na);Ki._round(),(!oe||dC(k,Ki,Pe,oe,_e))&&Rr.push(Ki)}}gr+=Wa}return!ct&&!Rr.length&&!je&&(Rr=yC(k,gr/2,V,oe,_e,Pe,je,!0,Lt)),Rr}function _C(k,C,V,oe,_e){for(var Pe=[],je=0;je=oe&&gr.x>=oe)&&(Xt.x>=oe?Xt=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round():gr.x>=oe&&(gr=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y>=_e&&gr.y>=_e)&&(Xt.y>=_e?Xt=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round():gr.y>=_e&&(gr=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round()),(!Lt||!Xt.equals(Lt[Lt.length-1]))&&(Lt=[Xt],Pe.push(Lt)),Lt.push(gr)))))}return Pe}var F0=tc;function xC(k,C,V,oe){var _e=[],Pe=k.image,je=Pe.pixelRatio,ct=Pe.paddedRect.w-2*F0,Lt=Pe.paddedRect.h-2*F0,Nt=k.right-k.left,Xt=k.bottom-k.top,gr=Pe.stretchX||[[0,ct]],Br=Pe.stretchY||[[0,Lt]],Rr=function(Sl,pl){return Sl+pl[1]-pl[0]},na=gr.reduce(Rr,0),Ia=Br.reduce(Rr,0),ii=ct-na,Wa=Lt-Ia,Si=0,ci=na,Ai=0,Li=Ia,Ki=0,kn=ii,Tn=0,lo=Wa;if(Pe.content&&oe){var qn=Pe.content;Si=sb(gr,0,qn[0]),Ai=sb(Br,0,qn[1]),ci=sb(gr,qn[0],qn[2]),Li=sb(Br,qn[1],qn[3]),Ki=qn[0]-Si,Tn=qn[1]-Ai,kn=qn[2]-qn[0]-ci,lo=qn[3]-qn[1]-Li}var to=function(Sl,pl,bu,Fu){var Gc=lb(Sl.stretch-Si,ci,Nt,k.left),of=ub(Sl.fixed-Ki,kn,Sl.stretch,na),ih=lb(pl.stretch-Ai,Li,Xt,k.top),Cf=ub(pl.fixed-Tn,lo,pl.stretch,Ia),Qh=lb(bu.stretch-Si,ci,Nt,k.left),ep=ub(bu.fixed-Ki,kn,bu.stretch,na),nh=lb(Fu.stretch-Ai,Li,Xt,k.top),mp=ub(Fu.fixed-Tn,lo,Fu.stretch,Ia),gp=new i(Gc,ih),jf=new i(Qh,ih),yp=new i(Qh,nh),od=new i(Gc,nh),Uv=new i(of/je,Cf/je),ym=new i(ep/je,mp/je),_m=C*Math.PI/180;if(_m){var xm=Math.sin(_m),H0=Math.cos(_m),wd=[H0,-xm,xm,H0];gp._matMult(wd),jf._matMult(wd),od._matMult(wd),yp._matMult(wd)}var vb=Sl.stretch+Sl.fixed,_A=bu.stretch+bu.fixed,mb=pl.stretch+pl.fixed,xA=Fu.stretch+Fu.fixed,pd={x:Pe.paddedRect.x+F0+vb,y:Pe.paddedRect.y+F0+mb,w:_A-vb,h:xA-mb},G0=kn/je/Nt,gb=lo/je/Xt;return{tl:gp,tr:jf,bl:od,br:yp,tex:pd,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Uv,pixelOffsetBR:ym,minFontScaleX:G0,minFontScaleY:gb,isSDF:V}};if(!oe||!Pe.stretchX&&!Pe.stretchY)_e.push(to({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ct+1},{fixed:0,stretch:Lt+1}));else for(var ds=bC(gr,ii,na),uo=bC(Br,Wa,Ia),vo=0;vo0&&(na=Math.max(10,na),this.circleDiameter=na)}else{var Ia=je.top*ct-Lt,ii=je.bottom*ct+Lt,Wa=je.left*ct-Lt,Si=je.right*ct+Lt,ci=je.collisionPadding;if(ci&&(Wa-=ci[0]*ct,Ia-=ci[1]*ct,Si+=ci[2]*ct,ii+=ci[3]*ct),Xt){var Ai=new i(Wa,Ia),Li=new i(Si,Ia),Ki=new i(Wa,ii),kn=new i(Si,ii),Tn=Xt*Math.PI/180;Ai._rotate(Tn),Li._rotate(Tn),Ki._rotate(Tn),kn._rotate(Tn),Wa=Math.min(Ai.x,Li.x,Ki.x,kn.x),Si=Math.max(Ai.x,Li.x,Ki.x,kn.x),Ia=Math.min(Ai.y,Li.y,Ki.y,kn.y),ii=Math.max(Ai.y,Li.y,Ki.y,kn.y)}C.emplaceBack(V.x,V.y,Wa,Ia,Si,ii,oe,_e,Pe)}this.boxEndIndex=C.length},O0=function(C,V){if(C===void 0&&(C=[]),V===void 0&&(V=rW),this.data=C,this.length=this.data.length,this.compare=V,this.length>0)for(var oe=(this.length>>1)-1;oe>=0;oe--)this._down(oe)};O0.prototype.push=function(C){this.data.push(C),this.length++,this._up(this.length-1)},O0.prototype.pop=function(){if(this.length!==0){var C=this.data[0],V=this.data.pop();return this.length--,this.length>0&&(this.data[0]=V,this._down(0)),C}},O0.prototype.peek=function(){return this.data[0]},O0.prototype._up=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=oe[C];C>0;){var je=C-1>>1,ct=oe[je];if(_e(Pe,ct)>=0)break;oe[C]=ct,C=je}oe[C]=Pe},O0.prototype._down=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=this.length>>1,je=oe[C];C=0)break;oe[C]=Lt,C=ct}oe[C]=je};function rW(k,C){return kC?1:0}function aW(k,C,V){C===void 0&&(C=1),V===void 0&&(V=!1);for(var oe=1/0,_e=1/0,Pe=-1/0,je=-1/0,ct=k[0],Lt=0;LtPe)&&(Pe=Nt.x),(!Lt||Nt.y>je)&&(je=Nt.y)}var Xt=Pe-oe,gr=je-_e,Br=Math.min(Xt,gr),Rr=Br/2,na=new O0([],iW);if(Br===0)return new i(oe,_e);for(var Ia=oe;IaWa.d||!Wa.d)&&(Wa=ci,V&&console.log("found best %d after %d probes",Math.round(1e4*ci.d)/1e4,Si)),!(ci.max-Wa.d<=C)&&(Rr=ci.h/2,na.push(new B0(ci.p.x-Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x-Rr,ci.p.y+Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y+Rr,Rr,k)),Si+=4)}return V&&(console.log("num probes: "+Si),console.log("best distance: "+Wa.d)),Wa.p}function iW(k,C){return C.max-k.max}function B0(k,C,V,oe){this.p=new i(k,C),this.h=V,this.d=nW(this.p,oe),this.max=this.d+this.h*Math.SQRT2}function nW(k,C){for(var V=!1,oe=1/0,_e=0;_ek.y!=Xt.y>k.y&&k.x<(Xt.x-Nt.x)*(k.y-Nt.y)/(Xt.y-Nt.y)+Nt.x&&(V=!V),oe=Math.min(oe,Vd(k,Nt,Xt))}return(V?1:-1)*Math.sqrt(oe)}function oW(k){for(var C=0,V=0,oe=0,_e=k[0],Pe=0,je=_e.length,ct=je-1;Pe=Ii||wd.y<0||wd.y>=Ii||uW(k,wd,H0,V,oe,_e,uo,k.layers[0],k.collisionBoxArray,C.index,C.sourceLayerIndex,k.index,Wa,Li,Tn,Lt,ci,Ki,lo,Rr,C,Pe,Nt,Xt,je)};if(qn==="line")for(var zs=0,cs=_C(C.geometry,0,0,Ii,Ii);zs1){var ih=QG(of,kn,V.vertical||na,oe,Ia,Si);ih&&vo(of,ih)}}else if(C.type==="Polygon")for(var Cf=0,Qh=E0(C.geometry,0);Cfmm&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')):ii.kind==="composite"&&(Wa=[Dh*Rr.compositeTextSizes[0].evaluate(je,{},na),Dh*Rr.compositeTextSizes[1].evaluate(je,{},na)],(Wa[0]>mm||Wa[1]>mm)&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')),k.addSymbols(k.text,Ia,Wa,ct,Pe,je,Nt,C,Lt.lineStartIndex,Lt.lineLength,Br,na);for(var Si=0,ci=Xt;Simm&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')):gp.kind==="composite"&&(jf=[Dh*Li.compositeIconSizes[0].evaluate(Ai,{},kn),Dh*Li.compositeIconSizes[1].evaluate(Ai,{},kn)],(jf[0]>mm||jf[1]>mm)&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')),k.addSymbols(k.icon,nh,jf,ci,Si,Ai,!1,C,qn.lineStartIndex,qn.lineLength,-1,kn),Al=k.icon.placedSymbolArray.length-1,mp&&(cs=mp.length*4,k.addSymbols(k.icon,mp,jf,ci,Si,Ai,dp.vertical,C,qn.lineStartIndex,qn.lineLength,-1,kn),Sl=k.icon.placedSymbolArray.length-1)}for(var yp in oe.horizontal){var od=oe.horizontal[yp];if(!to){bu=xe(od.text);var Uv=ct.layout.get("text-rotate").evaluate(Ai,{},kn);to=new cb(Lt,C,Nt,Xt,gr,od,Br,Rr,na,Uv)}var ym=od.positionedLines.length===1;if(Tl+=TC(k,C,od,Pe,ct,na,Ai,Ia,qn,oe.vertical?dp.horizontal:dp.horizontalOnly,ym?Object.keys(oe.horizontal):[yp],pl,Al,Li,kn),ym)break}oe.vertical&&(lu+=TC(k,C,oe.vertical,Pe,ct,na,Ai,Ia,qn,dp.vertical,["vertical"],pl,Sl,Li,kn));var _m=to?to.boxStartIndex:k.collisionBoxArray.length,xm=to?to.boxEndIndex:k.collisionBoxArray.length,H0=uo?uo.boxStartIndex:k.collisionBoxArray.length,wd=uo?uo.boxEndIndex:k.collisionBoxArray.length,vb=ds?ds.boxStartIndex:k.collisionBoxArray.length,_A=ds?ds.boxEndIndex:k.collisionBoxArray.length,mb=vo?vo.boxStartIndex:k.collisionBoxArray.length,xA=vo?vo.boxEndIndex:k.collisionBoxArray.length,pd=-1,G0=function(e_,UC){return e_&&e_.circleDiameter?Math.max(e_.circleDiameter,UC):UC};pd=G0(to,pd),pd=G0(uo,pd),pd=G0(ds,pd),pd=G0(vo,pd);var gb=pd>-1?1:0;gb&&(pd*=Tn/Ei),k.glyphOffsetArray.length>=su.MAX_GLYPHS&&U("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Ai.sortKey!==void 0&&k.addToSortKeyRanges(k.symbolInstances.length,Ai.sortKey),k.symbolInstances.emplaceBack(C.x,C.y,pl.right>=0?pl.right:-1,pl.center>=0?pl.center:-1,pl.left>=0?pl.left:-1,pl.vertical||-1,Al,Sl,bu,_m,xm,H0,wd,vb,_A,mb,xA,Nt,Tl,lu,zs,cs,gb,0,Br,Fu,Gc,pd)}function cW(k,C,V,oe){var _e=k.compareText;if(!(C in _e))_e[C]=[];else for(var Pe=_e[C],je=Pe.length-1;je>=0;je--)if(oe.dist(Pe[je])0)&&(je.value.kind!=="constant"||je.value.value.length>0),Xt=Lt.value.kind!=="constant"||!!Lt.value.value||Object.keys(Lt.parameters).length>0,gr=Pe.get("symbol-sort-key");if(this.features=[],!(!Nt&&!Xt)){for(var Br=V.iconDependencies,Rr=V.glyphDependencies,na=V.availableImages,Ia=new Vi(this.zoom),ii=0,Wa=C;ii=0;for(var lu=0,Al=lo.sections;lu=0;Lt--)je[Lt]={x:V[Lt].x,y:V[Lt].y,tileUnitDistanceFromAnchor:Pe},Lt>0&&(Pe+=V[Lt-1].dist(V[Lt]));for(var Nt=0;Nt0},su.prototype.hasIconData=function(){return this.icon.segments.get().length>0},su.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},su.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},su.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},su.prototype.addIndicesForPlacedSymbol=function(C,V){for(var oe=C.placedSymbolArray.get(V),_e=oe.vertexStartIndex+oe.numGlyphs*4,Pe=oe.vertexStartIndex;Pe<_e;Pe+=4)C.indexArray.emplaceBack(Pe,Pe+1,Pe+2),C.indexArray.emplaceBack(Pe+1,Pe+2,Pe+3)},su.prototype.getSortedSymbolIndexes=function(C){if(this.sortedAngle===C&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var V=Math.sin(C),oe=Math.cos(C),_e=[],Pe=[],je=[],ct=0;ct1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(C),this.sortedAngle=C,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var oe=0,_e=this.symbolInstanceIndexes;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.symbolInstances.get(Pe);this.featureSortOrder.push(je.featureIndex),[je.rightJustifiedTextSymbolIndex,je.centerJustifiedTextSymbolIndex,je.leftJustifiedTextSymbolIndex].forEach(function(ct,Lt,Nt){ct>=0&&Nt.indexOf(ct)===Lt&&V.addIndicesForPlacedSymbol(V.text,ct)}),je.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,je.verticalPlacedTextSymbolIndex),je.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.placedIconSymbolIndex),je.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},de("SymbolBucket",su,{omit:["layers","collisionBoxArray","features","compareText"]}),su.MAX_GLYPHS=65535,su.addDynamicAttributes=dA;function dW(k,C){return C.replace(/{([^{}]+)}/g,function(V,oe){return oe in k?String(k[oe]):""})}var vW=new xi({"symbol-placement":new Qt(fi.layout_symbol["symbol-placement"]),"symbol-spacing":new Qt(fi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Qt(fi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ra(fi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Qt(fi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Qt(fi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Qt(fi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Qt(fi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Qt(fi.layout_symbol["icon-rotation-alignment"]),"icon-size":new ra(fi.layout_symbol["icon-size"]),"icon-text-fit":new Qt(fi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Qt(fi.layout_symbol["icon-text-fit-padding"]),"icon-image":new ra(fi.layout_symbol["icon-image"]),"icon-rotate":new ra(fi.layout_symbol["icon-rotate"]),"icon-padding":new Qt(fi.layout_symbol["icon-padding"]),"icon-keep-upright":new Qt(fi.layout_symbol["icon-keep-upright"]),"icon-offset":new ra(fi.layout_symbol["icon-offset"]),"icon-anchor":new ra(fi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Qt(fi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Qt(fi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Qt(fi.layout_symbol["text-rotation-alignment"]),"text-field":new ra(fi.layout_symbol["text-field"]),"text-font":new ra(fi.layout_symbol["text-font"]),"text-size":new ra(fi.layout_symbol["text-size"]),"text-max-width":new ra(fi.layout_symbol["text-max-width"]),"text-line-height":new Qt(fi.layout_symbol["text-line-height"]),"text-letter-spacing":new ra(fi.layout_symbol["text-letter-spacing"]),"text-justify":new ra(fi.layout_symbol["text-justify"]),"text-radial-offset":new ra(fi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Qt(fi.layout_symbol["text-variable-anchor"]),"text-anchor":new ra(fi.layout_symbol["text-anchor"]),"text-max-angle":new Qt(fi.layout_symbol["text-max-angle"]),"text-writing-mode":new Qt(fi.layout_symbol["text-writing-mode"]),"text-rotate":new ra(fi.layout_symbol["text-rotate"]),"text-padding":new Qt(fi.layout_symbol["text-padding"]),"text-keep-upright":new Qt(fi.layout_symbol["text-keep-upright"]),"text-transform":new ra(fi.layout_symbol["text-transform"]),"text-offset":new ra(fi.layout_symbol["text-offset"]),"text-allow-overlap":new Qt(fi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Qt(fi.layout_symbol["text-ignore-placement"]),"text-optional":new Qt(fi.layout_symbol["text-optional"])}),mW=new xi({"icon-opacity":new ra(fi.paint_symbol["icon-opacity"]),"icon-color":new ra(fi.paint_symbol["icon-color"]),"icon-halo-color":new ra(fi.paint_symbol["icon-halo-color"]),"icon-halo-width":new ra(fi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ra(fi.paint_symbol["icon-halo-blur"]),"icon-translate":new Qt(fi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Qt(fi.paint_symbol["icon-translate-anchor"]),"text-opacity":new ra(fi.paint_symbol["text-opacity"]),"text-color":new ra(fi.paint_symbol["text-color"],{runtimeType:_s,getOverride:function(k){return k.textColor},hasOverride:function(k){return!!k.textColor}}),"text-halo-color":new ra(fi.paint_symbol["text-halo-color"]),"text-halo-width":new ra(fi.paint_symbol["text-halo-width"]),"text-halo-blur":new ra(fi.paint_symbol["text-halo-blur"]),"text-translate":new Qt(fi.paint_symbol["text-translate"]),"text-translate-anchor":new Qt(fi.paint_symbol["text-translate-anchor"])}),vA={paint:mW,layout:vW},j0=function(C){this.type=C.property.overrides?C.property.overrides.runtimeType:vl,this.defaultValue=C};j0.prototype.evaluate=function(C){if(C.formattedSection){var V=this.defaultValue.property.overrides;if(V&&V.hasOverride(C.formattedSection))return V.getOverride(C.formattedSection)}return C.feature&&C.featureState?this.defaultValue.evaluate(C.feature,C.featureState):this.defaultValue.property.specification.default},j0.prototype.eachChild=function(C){if(!this.defaultValue.isConstant()){var V=this.defaultValue.value;C(V._styleExpression.expression)}},j0.prototype.outputDefined=function(){return!1},j0.prototype.serialize=function(){return null},de("FormatSectionOverride",j0,{omit:["defaultValue"]});var gW=function(k){function C(V){k.call(this,V,vA)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){if(k.prototype.recalculate.call(this,oe,_e),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Pe=this.layout.get("text-writing-mode");if(Pe){for(var je=[],ct=0,Lt=Pe;ct",targetMapId:_e,sourceMapId:je.mapId})}}},V0.prototype.receive=function(C){var V=C.data,oe=V.id;if(oe&&!(V.targetMapId&&this.mapId!==V.targetMapId))if(V.type===""){delete this.tasks[oe];var _e=this.cancelCallbacks[oe];delete this.cancelCallbacks[oe],_e&&_e()}else se()||V.mustQueue?(this.tasks[oe]=V,this.taskQueue.push(oe),this.invoker.trigger()):this.processTask(oe,V)},V0.prototype.process=function(){if(this.taskQueue.length){var C=this.taskQueue.shift(),V=this.tasks[C];delete this.tasks[C],this.taskQueue.length&&this.invoker.trigger(),V&&this.processTask(C,V)}},V0.prototype.processTask=function(C,V){var oe=this;if(V.type===""){var _e=this.callbacks[C];delete this.callbacks[C],_e&&(V.error?_e(wt(V.error)):_e(null,wt(V.data)))}else{var Pe=!1,je=$(this.globalScope)?void 0:[],ct=V.hasCallback?function(Br,Rr){Pe=!0,delete oe.cancelCallbacks[C],oe.target.postMessage({id:C,type:"",sourceMapId:oe.mapId,error:Br?vt(Br):null,data:vt(Rr,je)},je)}:function(Br){Pe=!0},Lt=null,Nt=wt(V.data);if(this.parent[V.type])Lt=this.parent[V.type](V.sourceMapId,Nt,ct);else if(this.parent.getWorkerSource){var Xt=V.type.split("."),gr=this.parent.getWorkerSource(V.sourceMapId,Xt[0],Nt.source);Lt=gr[Xt[1]](Nt,ct)}else ct(new Error("Could not find function "+V.type));!Pe&&Lt&&Lt.cancel&&(this.cancelCallbacks[C]=Lt.cancel)}},V0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function kW(k,C,V){C=Math.pow(2,V)-C-1;var oe=CC(k*256,C*256,V),_e=CC((k+1)*256,(C+1)*256,V);return oe[0]+","+oe[1]+","+_e[0]+","+_e[1]}function CC(k,C,V){var oe=2*Math.PI*6378137/256/Math.pow(2,V),_e=k*oe-2*Math.PI*6378137/2,Pe=C*oe-2*Math.PI*6378137/2;return[_e,Pe]}var Ef=function(C,V){C&&(V?this.setSouthWest(C).setNorthEast(V):C.length===4?this.setSouthWest([C[0],C[1]]).setNorthEast([C[2],C[3]]):this.setSouthWest(C[0]).setNorthEast(C[1]))};Ef.prototype.setNorthEast=function(C){return this._ne=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.setSouthWest=function(C){return this._sw=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.extend=function(C){var V=this._sw,oe=this._ne,_e,Pe;if(C instanceof rc)_e=C,Pe=C;else if(C instanceof Ef){if(_e=C._sw,Pe=C._ne,!_e||!Pe)return this}else{if(Array.isArray(C))if(C.length===4||C.every(Array.isArray)){var je=C;return this.extend(Ef.convert(je))}else{var ct=C;return this.extend(rc.convert(ct))}return this}return!V&&!oe?(this._sw=new rc(_e.lng,_e.lat),this._ne=new rc(Pe.lng,Pe.lat)):(V.lng=Math.min(_e.lng,V.lng),V.lat=Math.min(_e.lat,V.lat),oe.lng=Math.max(Pe.lng,oe.lng),oe.lat=Math.max(Pe.lat,oe.lat)),this},Ef.prototype.getCenter=function(){return new rc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Ef.prototype.getSouthWest=function(){return this._sw},Ef.prototype.getNorthEast=function(){return this._ne},Ef.prototype.getNorthWest=function(){return new rc(this.getWest(),this.getNorth())},Ef.prototype.getSouthEast=function(){return new rc(this.getEast(),this.getSouth())},Ef.prototype.getWest=function(){return this._sw.lng},Ef.prototype.getSouth=function(){return this._sw.lat},Ef.prototype.getEast=function(){return this._ne.lng},Ef.prototype.getNorth=function(){return this._ne.lat},Ef.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Ef.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Ef.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Ef.prototype.contains=function(C){var V=rc.convert(C),oe=V.lng,_e=V.lat,Pe=this._sw.lat<=_e&&_e<=this._ne.lat,je=this._sw.lng<=oe&&oe<=this._ne.lng;return this._sw.lng>this._ne.lng&&(je=this._sw.lng>=oe&&oe>=this._ne.lng),Pe&&je},Ef.convert=function(C){return!C||C instanceof Ef?C:new Ef(C)};var LC=63710088e-1,rc=function(C,V){if(isNaN(C)||isNaN(V))throw new Error("Invalid LngLat object: ("+C+", "+V+")");if(this.lng=+C,this.lat=+V,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};rc.prototype.wrap=function(){return new rc(_(this.lng,-180,180),this.lat)},rc.prototype.toArray=function(){return[this.lng,this.lat]},rc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},rc.prototype.distanceTo=function(C){var V=Math.PI/180,oe=this.lat*V,_e=C.lat*V,Pe=Math.sin(oe)*Math.sin(_e)+Math.cos(oe)*Math.cos(_e)*Math.cos((C.lng-this.lng)*V),je=LC*Math.acos(Math.min(Pe,1));return je},rc.prototype.toBounds=function(C){C===void 0&&(C=0);var V=40075017,oe=360*C/V,_e=oe/Math.cos(Math.PI/180*this.lat);return new Ef(new rc(this.lng-_e,this.lat-oe),new rc(this.lng+_e,this.lat+oe))},rc.convert=function(C){if(C instanceof rc)return C;if(Array.isArray(C)&&(C.length===2||C.length===3))return new rc(Number(C[0]),Number(C[1]));if(!Array.isArray(C)&&typeof C=="object"&&C!==null)return new rc(Number("lng"in C?C.lng:C.lon),Number(C.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var PC=2*Math.PI*LC;function IC(k){return PC*Math.cos(k*Math.PI/180)}function RC(k){return(180+k)/360}function DC(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function zC(k,C){return k/IC(C)}function CW(k){return k*360-180}function gA(k){var C=180-k*360;return 360/Math.PI*Math.atan(Math.exp(C*Math.PI/180))-90}function LW(k,C){return k*IC(gA(C))}function PW(k){return 1/Math.cos(k*Math.PI/180)}var Bg=function(C,V,oe){oe===void 0&&(oe=0),this.x=+C,this.y=+V,this.z=+oe};Bg.fromLngLat=function(C,V){V===void 0&&(V=0);var oe=rc.convert(C);return new Bg(RC(oe.lng),DC(oe.lat),zC(V,oe.lat))},Bg.prototype.toLngLat=function(){return new rc(CW(this.x),gA(this.y))},Bg.prototype.toAltitude=function(){return LW(this.z,this.y)},Bg.prototype.meterInMercatorCoordinateUnits=function(){return 1/PC*PW(gA(this.y))};var Ng=function(C,V,oe){this.z=C,this.x=V,this.y=oe,this.key=Q1(0,C,C,V,oe)};Ng.prototype.equals=function(C){return this.z===C.z&&this.x===C.x&&this.y===C.y},Ng.prototype.url=function(C,V){var oe=kW(this.x,this.y,this.z),_e=IW(this.z,this.x,this.y);return C[(this.x+this.y)%C.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(V==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",_e).replace("{bbox-epsg-3857}",oe)},Ng.prototype.getTilePoint=function(C){var V=Math.pow(2,this.z);return new i((C.x*V-this.x)*Ii,(C.y*V-this.y)*Ii)},Ng.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var FC=function(C,V){this.wrap=C,this.canonical=V,this.key=Q1(C,V.z,V.z,V.x,V.y)},kf=function(C,V,oe,_e,Pe){this.overscaledZ=C,this.wrap=V,this.canonical=new Ng(oe,+_e,+Pe),this.key=Q1(V,C,oe,_e,Pe)};kf.prototype.equals=function(C){return this.overscaledZ===C.overscaledZ&&this.wrap===C.wrap&&this.canonical.equals(C.canonical)},kf.prototype.scaledTo=function(C){var V=this.canonical.z-C;return C>this.canonical.z?new kf(C,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new kf(C,this.wrap,C,this.canonical.x>>V,this.canonical.y>>V)},kf.prototype.calculateScaledKey=function(C,V){var oe=this.canonical.z-C;return C>this.canonical.z?Q1(this.wrap*+V,C,this.canonical.z,this.canonical.x,this.canonical.y):Q1(this.wrap*+V,C,C,this.canonical.x>>oe,this.canonical.y>>oe)},kf.prototype.isChildOf=function(C){if(C.wrap!==this.wrap)return!1;var V=this.canonical.z-C.canonical.z;return C.overscaledZ===0||C.overscaledZ>V&&C.canonical.y===this.canonical.y>>V},kf.prototype.children=function(C){if(this.overscaledZ>=C)return[new kf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var V=this.canonical.z+1,oe=this.canonical.x*2,_e=this.canonical.y*2;return[new kf(V,this.wrap,V,oe,_e),new kf(V,this.wrap,V,oe+1,_e),new kf(V,this.wrap,V,oe,_e+1),new kf(V,this.wrap,V,oe+1,_e+1)]},kf.prototype.isLessThan=function(C){return this.wrapC.wrap?!1:this.overscaledZC.overscaledZ?!1:this.canonical.xC.canonical.x?!1:this.canonical.y0;Pe--)_e=1<=this.dim+1||V<-1||V>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(V+1)*this.stride+(C+1)},Bv.prototype._unpackMapbox=function(C,V,oe){return(C*256*256+V*256+oe)/10-1e4},Bv.prototype._unpackTerrarium=function(C,V,oe){return C*256+V+oe/256-32768},Bv.prototype.getPixels=function(){return new Of({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bv.prototype.backfillBorder=function(C,V,oe){if(this.dim!==C.dim)throw new Error("dem dimension mismatch");var _e=V*this.dim,Pe=V*this.dim+this.dim,je=oe*this.dim,ct=oe*this.dim+this.dim;switch(V){case-1:_e=Pe-1;break;case 1:Pe=_e+1;break}switch(oe){case-1:je=ct-1;break;case 1:ct=je+1;break}for(var Lt=-V*this.dim,Nt=-oe*this.dim,Xt=je;Xt=0&&gr[3]>=0&&Lt.insert(ct,gr[0],gr[1],gr[2],gr[3])}},Nv.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Zd.VectorTile(new eo(this.rawTileData)).layers,this.sourceLayerCoder=new pb(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Nv.prototype.query=function(C,V,oe,_e){var Pe=this;this.loadVTLayers();for(var je=C.params||{},ct=Ii/C.tileSize/C.scale,Lt=Je(je.filter),Nt=C.queryGeometry,Xt=C.queryPadding*ct,gr=BC(Nt),Br=this.grid.query(gr.minX-Xt,gr.minY-Xt,gr.maxX+Xt,gr.maxY+Xt),Rr=BC(C.cameraQueryGeometry),na=this.grid3D.query(Rr.minX-Xt,Rr.minY-Xt,Rr.maxX+Xt,Rr.maxY+Xt,function(Ki,kn,Tn,lo){return rd(C.cameraQueryGeometry,Ki-Xt,kn-Xt,Tn+Xt,lo+Xt)}),Ia=0,ii=na;Ia_e)Pe=!1;else if(!V)Pe=!0;else if(this.expirationTime=Jr.maxzoom)&&Jr.visibility!=="none"){c(Lr,this.zoom,Ut);var oa=Fa[Jr.id]=Jr.createBucket({index:Ea.bucketLayerIDs.length,layers:Lr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:gt,sourceID:this.source});oa.populate(Er,qa,this.tileID.canonical),Ea.bucketLayerIDs.push(Lr.map(function(da){return da.id}))}}}}var ca,kt,ir,mr,$r=e.mapObject(qa.glyphDependencies,function(da){return Object.keys(da).map(Number)});Object.keys($r).length?xr.send("getGlyphs",{uid:this.uid,stacks:$r},function(da,Sa){ca||(ca=da,kt=Sa,Ca.call(pa))}):kt={};var ma=Object.keys(qa.iconDependencies);ma.length?xr.send("getImages",{icons:ma,source:this.source,tileID:this.tileID,type:"icons"},function(da,Sa){ca||(ca=da,ir=Sa,Ca.call(pa))}):ir={};var Ba=Object.keys(qa.patternDependencies);Ba.length?xr.send("getImages",{icons:Ba,source:this.source,tileID:this.tileID,type:"patterns"},function(da,Sa){ca||(ca=da,mr=Sa,Ca.call(pa))}):mr={},Ca.call(this);function Ca(){if(ca)return Zr(ca);if(kt&&ir&&mr){var da=new n(kt),Sa=new e.ImageAtlas(ir,mr);for(var Ti in Fa){var ai=Fa[Ti];ai instanceof e.SymbolBucket?(c(ai.layers,this.zoom,Ut),e.performSymbolLayout(ai,kt,da.positions,ir,Sa.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):ai.hasPattern&&(ai instanceof e.LineBucket||ai instanceof e.FillBucket||ai instanceof e.FillExtrusionBucket)&&(c(ai.layers,this.zoom,Ut),ai.addFeatures(qa,this.tileID.canonical,Sa.patternPositions))}this.status="done",Zr(null,{buckets:e.values(Fa).filter(function(an){return!an.isEmpty()}),featureIndex:Ea,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:da.image,imageAtlas:Sa,glyphMap:this.returnDependencies?kt:null,iconMap:this.returnDependencies?ir:null,glyphPositions:this.returnDependencies?da.positions:null})}}};function c(Wt,zt,Vt){for(var Ut=new e.EvaluationParameters(zt),xr=0,Zr=Wt;xr=0!=!!zt&&Wt.reverse()}var E=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(zt){this._feature=zt,this.extent=e.EXTENT,this.type=zt.type,this.properties=zt.tags,"id"in zt&&!isNaN(zt.id)&&(this.id=parseInt(zt.id,10))};m.prototype.loadGeometry=function(){if(this._feature.type===1){for(var zt=[],Vt=0,Ut=this._feature.geometry;Vt"u"&&(Ut.push(Xr),Ea=Ut.length-1,Zr[Xr]=Ea),zt.writeVarint(Ea);var Fa=Vt.properties[Xr],qa=typeof Fa;qa!=="string"&&qa!=="boolean"&&qa!=="number"&&(Fa=JSON.stringify(Fa));var ya=qa+":"+Fa,$a=pa[ya];typeof $a>"u"&&(xr.push(Fa),$a=xr.length-1,pa[ya]=$a),zt.writeVarint($a)}}function Q(Wt,zt){return(zt<<3)+(Wt&7)}function ue(Wt){return Wt<<1^Wt>>31}function se(Wt,zt){for(var Vt=Wt.loadGeometry(),Ut=Wt.type,xr=0,Zr=0,pa=Vt.length,Xr=0;Xr>1;$(Wt,zt,pa,Ut,xr,Zr%2),G(Wt,zt,Vt,Ut,pa-1,Zr+1),G(Wt,zt,Vt,pa+1,xr,Zr+1)}}function $(Wt,zt,Vt,Ut,xr,Zr){for(;xr>Ut;){if(xr-Ut>600){var pa=xr-Ut+1,Xr=Vt-Ut+1,Ea=Math.log(pa),Fa=.5*Math.exp(2*Ea/3),qa=.5*Math.sqrt(Ea*Fa*(pa-Fa)/pa)*(Xr-pa/2<0?-1:1),ya=Math.max(Ut,Math.floor(Vt-Xr*Fa/pa+qa)),$a=Math.min(xr,Math.floor(Vt+(pa-Xr)*Fa/pa+qa));$(Wt,zt,Vt,ya,$a,Zr)}var mt=zt[2*Vt+Zr],gt=Ut,Er=xr;for(J(Wt,zt,Ut,Vt),zt[2*xr+Zr]>mt&&J(Wt,zt,Ut,xr);gtmt;)Er--}zt[2*Ut+Zr]===mt?J(Wt,zt,Ut,Er):(Er++,J(Wt,zt,Er,xr)),Er<=Vt&&(Ut=Er+1),Vt<=Er&&(xr=Er-1)}}function J(Wt,zt,Vt,Ut){Z(Wt,Vt,Ut),Z(zt,2*Vt,2*Ut),Z(zt,2*Vt+1,2*Ut+1)}function Z(Wt,zt,Vt){var Ut=Wt[zt];Wt[zt]=Wt[Vt],Wt[Vt]=Ut}function re(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[0,Wt.length-1,0],Ea=[],Fa,qa;Xr.length;){var ya=Xr.pop(),$a=Xr.pop(),mt=Xr.pop();if($a-mt<=pa){for(var gt=mt;gt<=$a;gt++)Fa=zt[2*gt],qa=zt[2*gt+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[gt]);continue}var Er=Math.floor((mt+$a)/2);Fa=zt[2*Er],qa=zt[2*Er+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[Er]);var kr=(ya+1)%2;(ya===0?Vt<=Fa:Ut<=qa)&&(Xr.push(mt),Xr.push(Er-1),Xr.push(kr)),(ya===0?xr>=Fa:Zr>=qa)&&(Xr.push(Er+1),Xr.push($a),Xr.push(kr))}return Ea}function ne(Wt,zt,Vt,Ut,xr,Zr){for(var pa=[0,Wt.length-1,0],Xr=[],Ea=xr*xr;pa.length;){var Fa=pa.pop(),qa=pa.pop(),ya=pa.pop();if(qa-ya<=Zr){for(var $a=ya;$a<=qa;$a++)j(zt[2*$a],zt[2*$a+1],Vt,Ut)<=Ea&&Xr.push(Wt[$a]);continue}var mt=Math.floor((ya+qa)/2),gt=zt[2*mt],Er=zt[2*mt+1];j(gt,Er,Vt,Ut)<=Ea&&Xr.push(Wt[mt]);var kr=(Fa+1)%2;(Fa===0?Vt-xr<=gt:Ut-xr<=Er)&&(pa.push(ya),pa.push(mt-1),pa.push(kr)),(Fa===0?Vt+xr>=gt:Ut+xr>=Er)&&(pa.push(mt+1),pa.push(qa),pa.push(kr))}return Xr}function j(Wt,zt,Vt,Ut){var xr=Wt-Vt,Zr=zt-Ut;return xr*xr+Zr*Zr}var ee=function(Wt){return Wt[0]},ie=function(Wt){return Wt[1]},fe=function(zt,Vt,Ut,xr,Zr){Vt===void 0&&(Vt=ee),Ut===void 0&&(Ut=ie),xr===void 0&&(xr=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=xr,this.points=zt;for(var pa=zt.length<65536?Uint16Array:Uint32Array,Xr=this.ids=new pa(zt.length),Ea=this.coords=new Zr(zt.length*2),Fa=0;Fa=xr;qa--){var ya=+Date.now();Ea=this._cluster(Ea,qa),this.trees[qa]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.log("z%d: %d clusters in %dms",qa,Ea.length,+Date.now()-ya)}return Ut&&console.timeEnd("total time"),this},Ae.prototype.getClusters=function(zt,Vt){var Ut=((zt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,zt[1])),Zr=zt[2]===180?180:((zt[2]+180)%360+360)%360-180,pa=Math.max(-90,Math.min(90,zt[3]));if(zt[2]-zt[0]>=360)Ut=-180,Zr=180;else if(Ut>Zr){var Xr=this.getClusters([Ut,xr,180,pa],Vt),Ea=this.getClusters([-180,xr,Zr,pa],Vt);return Xr.concat(Ea)}for(var Fa=this.trees[this._limitZoom(Vt)],qa=Fa.range(it(Ut),et(pa),it(Zr),et(xr)),ya=[],$a=0,mt=qa;$aVt&&(Er+=Mr.numPoints||1)}if(Er>=Ea){for(var Fr=ya.x*gt,Lr=ya.y*gt,Jr=Xr&>>1?this._map(ya,!0):null,oa=(qa<<5)+(Vt+1)+this.points.length,ca=0,kt=mt;ca1)for(var ma=0,Ba=mt;ma>5},Ae.prototype._getOriginZoom=function(zt){return(zt-this.points.length)%32},Ae.prototype._map=function(zt,Vt){if(zt.numPoints)return Vt?ge({},zt.properties):zt.properties;var Ut=this.points[zt.index].properties,xr=this.options.map(Ut);return Vt&&xr===Ut?ge({},xr):xr};function Be(Wt,zt,Vt,Ut,xr){return{x:Wt,y:zt,zoom:1/0,id:Vt,parentId:-1,numPoints:Ut,properties:xr}}function Ie(Wt,zt){var Vt=Wt.geometry.coordinates,Ut=Vt[0],xr=Vt[1];return{x:it(Ut),y:et(xr),zoom:1/0,index:zt,parentId:-1}}function Ze(Wt){return{type:"Feature",id:Wt.id,properties:at(Wt),geometry:{type:"Point",coordinates:[lt(Wt.x),Me(Wt.y)]}}}function at(Wt){var zt=Wt.numPoints,Vt=zt>=1e4?Math.round(zt/1e3)+"k":zt>=1e3?Math.round(zt/100)/10+"k":zt;return ge(ge({},Wt.properties),{cluster:!0,cluster_id:Wt.id,point_count:zt,point_count_abbreviated:Vt})}function it(Wt){return Wt/360+.5}function et(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function lt(Wt){return(Wt-.5)*360}function Me(Wt){var zt=(180-Wt*360)*Math.PI/180;return 360*Math.atan(Math.exp(zt))/Math.PI-90}function ge(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function ce(Wt){return Wt.x}function ze(Wt){return Wt.y}function tt(Wt,zt,Vt,Ut){for(var xr=Ut,Zr=Vt-zt>>1,pa=Vt-zt,Xr,Ea=Wt[zt],Fa=Wt[zt+1],qa=Wt[Vt],ya=Wt[Vt+1],$a=zt+3;$axr)Xr=$a,xr=mt;else if(mt===xr){var gt=Math.abs($a-Zr);gtUt&&(Xr-zt>3&&tt(Wt,zt,Xr,Ut),Wt[Xr+2]=xr,Vt-Xr>3&&tt(Wt,Xr,Vt,Ut))}function nt(Wt,zt,Vt,Ut,xr,Zr){var pa=xr-Vt,Xr=Zr-Ut;if(pa!==0||Xr!==0){var Ea=((Wt-Vt)*pa+(zt-Ut)*Xr)/(pa*pa+Xr*Xr);Ea>1?(Vt=xr,Ut=Zr):Ea>0&&(Vt+=pa*Ea,Ut+=Xr*Ea)}return pa=Wt-Vt,Xr=zt-Ut,pa*pa+Xr*Xr}function Qe(Wt,zt,Vt,Ut){var xr={id:typeof Wt>"u"?null:Wt,type:zt,geometry:Vt,tags:Ut,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return Ct(xr),xr}function Ct(Wt){var zt=Wt.geometry,Vt=Wt.type;if(Vt==="Point"||Vt==="MultiPoint"||Vt==="LineString")St(Wt,zt);else if(Vt==="Polygon"||Vt==="MultiLineString")for(var Ut=0;Ut0&&(Ut?pa+=(xr*Fa-Ea*Zr)/2:pa+=Math.sqrt(Math.pow(Ea-xr,2)+Math.pow(Fa-Zr,2))),xr=Ea,Zr=Fa}var qa=zt.length-3;zt[2]=1,tt(zt,0,qa,Vt),zt[qa+2]=1,zt.size=Math.abs(pa),zt.start=0,zt.end=zt.size}function Cr(Wt,zt,Vt,Ut){for(var xr=0;xr1?1:Vt}function yt(Wt,zt,Vt,Ut,xr,Zr,pa,Xr){if(Vt/=zt,Ut/=zt,Zr>=Vt&&pa=Ut)return null;for(var Ea=[],Fa=0;Fa=Vt&>=Ut)continue;var Er=[];if($a==="Point"||$a==="MultiPoint")Fe(ya,Er,Vt,Ut,xr);else if($a==="LineString")Ke(ya,Er,Vt,Ut,xr,!1,Xr.lineMetrics);else if($a==="MultiLineString")Ee(ya,Er,Vt,Ut,xr,!1);else if($a==="Polygon")Ee(ya,Er,Vt,Ut,xr,!0);else if($a==="MultiPolygon")for(var kr=0;kr=Vt&&pa<=Ut&&(zt.push(Wt[Zr]),zt.push(Wt[Zr+1]),zt.push(Wt[Zr+2]))}}function Ke(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=Ne(Wt),Ea=xr===0?ke:Te,Fa=Wt.start,qa,ya,$a=0;$aVt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),pa&&(Xr.start=Fa+qa*ya)):Tr>Ut?Mr=Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),Fr=!0),Mr>Ut&&Tr<=Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),Fr=!0),!Zr&&Fr&&(pa&&(Xr.end=Fa+qa*ya),zt.push(Xr),Xr=Ne(Wt)),pa&&(Fa+=qa)}var Lr=Wt.length-3;mt=Wt[Lr],gt=Wt[Lr+1],Er=Wt[Lr+2],Tr=xr===0?mt:gt,Tr>=Vt&&Tr<=Ut&&Ve(Xr,mt,gt,Er),Lr=Xr.length-3,Zr&&Lr>=3&&(Xr[Lr]!==Xr[0]||Xr[Lr+1]!==Xr[1])&&Ve(Xr,Xr[0],Xr[1],Xr[2]),Xr.length&&zt.push(Xr)}function Ne(Wt){var zt=[];return zt.size=Wt.size,zt.start=Wt.start,zt.end=Wt.end,zt}function Ee(Wt,zt,Vt,Ut,xr,Zr){for(var pa=0;papa.maxX&&(pa.maxX=qa),ya>pa.maxY&&(pa.maxY=ya)}return pa}function Gt(Wt,zt,Vt,Ut){var xr=zt.geometry,Zr=zt.type,pa=[];if(Zr==="Point"||Zr==="MultiPoint")for(var Xr=0;Xr0&&zt.size<(xr?pa:Ut)){Vt.numPoints+=zt.length/3;return}for(var Xr=[],Ea=0;Eapa)&&(Vt.numSimplified++,Xr.push(zt[Ea]),Xr.push(zt[Ea+1])),Vt.numPoints++;xr&&sr(Xr,Zr),Wt.push(Xr)}function sr(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-2;Ut0===zt)for(Ut=0,xr=Wt.length;Ut24)throw new Error("maxZoom should be in the 0-24 range");if(zt.promoteId&&zt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Ut=Ot(Wt,zt);this.tiles={},this.tileCoords=[],Vt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",zt.indexMaxZoom,zt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ut=Le(Ut,zt),Ut.length&&this.splitTile(Ut,0,0,0),Vt&&(Ut.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Aa.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Aa.prototype.splitTile=function(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[Wt,zt,Vt,Ut],Ea=this.options,Fa=Ea.debug;Xr.length;){Ut=Xr.pop(),Vt=Xr.pop(),zt=Xr.pop(),Wt=Xr.pop();var qa=1<1&&console.time("creation"),$a=this.tiles[ya]=Bt(Wt,zt,Vt,Ut,Ea),this.tileCoords.push({z:zt,x:Vt,y:Ut}),Fa)){Fa>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",zt,Vt,Ut,$a.numFeatures,$a.numPoints,$a.numSimplified),console.timeEnd("creation"));var mt="z"+zt;this.stats[mt]=(this.stats[mt]||0)+1,this.total++}if($a.source=Wt,xr){if(zt===Ea.maxZoom||zt===xr)continue;var gt=1<1&&console.time("clipping");var Er=.5*Ea.buffer/Ea.extent,kr=.5-Er,br=.5+Er,Tr=1+Er,Mr,Fr,Lr,Jr,oa,ca;Mr=Fr=Lr=Jr=null,oa=yt(Wt,qa,Vt-Er,Vt+br,0,$a.minX,$a.maxX,Ea),ca=yt(Wt,qa,Vt+kr,Vt+Tr,0,$a.minX,$a.maxX,Ea),Wt=null,oa&&(Mr=yt(oa,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Fr=yt(oa,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),oa=null),ca&&(Lr=yt(ca,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Jr=yt(ca,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),ca=null),Fa>1&&console.timeEnd("clipping"),Xr.push(Mr||[],zt+1,Vt*2,Ut*2),Xr.push(Fr||[],zt+1,Vt*2,Ut*2+1),Xr.push(Lr||[],zt+1,Vt*2+1,Ut*2),Xr.push(Jr||[],zt+1,Vt*2+1,Ut*2+1)}}},Aa.prototype.getTile=function(Wt,zt,Vt){var Ut=this.options,xr=Ut.extent,Zr=Ut.debug;if(Wt<0||Wt>24)return null;var pa=1<1&&console.log("drilling down to z%d-%d-%d",Wt,zt,Vt);for(var Ea=Wt,Fa=zt,qa=Vt,ya;!ya&&Ea>0;)Ea--,Fa=Math.floor(Fa/2),qa=Math.floor(qa/2),ya=this.tiles[La(Ea,Fa,qa)];return!ya||!ya.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",Ea,Fa,qa),Zr>1&&console.time("drilling down"),this.splitTile(ya.source,Ea,Fa,qa,Wt,zt,Vt),Zr>1&&console.timeEnd("drilling down"),this.tiles[Xr]?xt(this.tiles[Xr],xr):null)};function La(Wt,zt,Vt){return((1<=0?0:ve.button},r.remove=function(ve){ve.parentNode&&ve.parentNode.removeChild(ve)};function p(ve,K,ye){var te,xe,We,He=e.browser.devicePixelRatio>1?"@2x":"",st=e.getJSON(K.transformRequest(K.normalizeSpriteURL(ve,He,".json"),e.ResourceType.SpriteJSON),function(yr,Ir){st=null,We||(We=yr,te=Ir,Ht())}),Et=e.getImage(K.transformRequest(K.normalizeSpriteURL(ve,He,".png"),e.ResourceType.SpriteImage),function(yr,Ir){Et=null,We||(We=yr,xe=Ir,Ht())});function Ht(){if(We)ye(We);else if(te&&xe){var yr=e.browser.getImageData(xe),Ir={};for(var wr in te){var qt=te[wr],tr=qt.width,dr=qt.height,Pr=qt.x,Vr=qt.y,Hr=qt.sdf,aa=qt.pixelRatio,Qr=qt.stretchX,Gr=qt.stretchY,ia=qt.content,Ur=new e.RGBAImage({width:tr,height:dr});e.RGBAImage.copy(yr,Ur,{x:Pr,y:Vr},{x:0,y:0},{width:tr,height:dr}),Ir[wr]={data:Ur,pixelRatio:aa,sdf:Hr,stretchX:Qr,stretchY:Gr,content:ia}}ye(null,Ir)}}return{cancel:function(){st&&(st.cancel(),st=null),Et&&(Et.cancel(),Et=null)}}}function T(ve){var K=ve.userImage;if(K&&K.render){var ye=K.render();if(ye)return ve.data.replace(new Uint8Array(K.data.buffer)),!0}return!1}var l=1,_=function(ve){function K(){ve.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.isLoaded=function(){return this.loaded},K.prototype.setLoaded=function(te){if(this.loaded!==te&&(this.loaded=te,te)){for(var xe=0,We=this.requestors;xe=0?1.2:1))}b.prototype.draw=function(ve){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(ve,this.buffer,this.middle);for(var K=this.ctx.getImageData(0,0,this.size,this.size),ye=new Uint8ClampedArray(this.size*this.size),te=0;te65535){yr(new Error("glyphs > 65535 not supported"));return}if(qt.ranges[dr]){yr(null,{stack:Ir,id:wr,glyph:tr});return}var Pr=qt.requests[dr];Pr||(Pr=qt.requests[dr]=[],y.loadGlyphRange(Ir,dr,te.url,te.requestManager,function(Vr,Hr){if(Hr){for(var aa in Hr)te._doesCharSupportLocalGlyph(+aa)||(qt.glyphs[+aa]=Hr[+aa]);qt.ranges[dr]=!0}for(var Qr=0,Gr=Pr;Qr1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=void 0,dr=We/te*(xe+1);if(Ht.isDash){var Pr=xe-Math.abs(dr);tr=Math.sqrt(qt*qt+Pr*Pr)}else tr=xe-Math.sqrt(qt*qt+dr*dr);this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addRegularDash=function(K){for(var ye=K.length-1;ye>=0;--ye){var te=K[ye],xe=K[ye+1];te.zeroLength?K.splice(ye,1):xe&&xe.isDash===te.isDash&&(xe.left=te.left,K.splice(ye,1))}var We=K[0],He=K[K.length-1];We.isDash===He.isDash&&(We.left=He.left-this.width,He.right=We.right+this.width);for(var st=this.width*this.nextRow,Et=0,Ht=K[Et],yr=0;yr1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=Ht.isDash?qt:-qt;this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addDash=function(K,ye){var te=ye?7:0,xe=2*te+1;if(this.nextRow+xe>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var We=0,He=0;He=te.minX&&K.x=te.minY&&K.y0&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y-1).key]={backfilled:!1}),xe.y+10&&(We.resourceTiming=te._resourceTiming,te._resourceTiming=[]),te.fire(new e.Event("data",We))})},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setData=function(te){var xe=this;return this._data=te,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(We){if(We){xe.fire(new e.ErrorEvent(We));return}var He={dataType:"source",sourceDataType:"content"};xe._collectResourceTiming&&xe._resourceTiming&&xe._resourceTiming.length>0&&(He.resourceTiming=xe._resourceTiming,xe._resourceTiming=[]),xe.fire(new e.Event("data",He))}),this},K.prototype.getClusterExpansionZoom=function(te,xe){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterChildren=function(te,xe){return this.actor.send("geojson.getClusterChildren",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterLeaves=function(te,xe,We,He){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:te,limit:xe,offset:We},He),this},K.prototype._updateWorkerData=function(te){var xe=this;this._loaded=!1;var We=e.extend({},this.workerOptions),He=this._data;typeof He=="string"?(We.request=this.map._requestManager.transformRequest(e.browser.resolveURL(He),e.ResourceType.Source),We.request.collectResourceTiming=this._collectResourceTiming):We.data=JSON.stringify(He),this.actor.send(this.type+".loadData",We,function(st,Et){xe._removed||Et&&Et.abandoned||(xe._loaded=!0,Et&&Et.resourceTiming&&Et.resourceTiming[xe.id]&&(xe._resourceTiming=Et.resourceTiming[xe.id].slice(0)),xe.actor.send(xe.type+".coalesce",{source:We.source},null),te(st))})},K.prototype.loaded=function(){return this._loaded},K.prototype.loadTile=function(te,xe){var We=this,He=te.actor?"reloadTile":"loadTile";te.actor=this.actor;var st={type:this.type,uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};te.request=this.actor.send(He,st,function(Et,Ht){return delete te.request,te.unloadVectorData(),te.aborted?xe(null):Et?xe(Et):(te.loadVectorData(Ht,We.map.painter,He==="reloadTile"),xe(null))})},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.aborted=!0},K.prototype.unloadTile=function(te){te.unloadVectorData(),this.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id})},K.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},K.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},K.prototype.hasTransition=function(){return!1},K}(e.Evented),ue=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),se=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.coordinates=te.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(We),this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(te,xe){var We=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),function(He,st){We._loaded=!0,He?We.fire(new e.ErrorEvent(He)):st&&(We.image=st,te&&(We.coordinates=te),xe&&xe(),We._finishLoading())})},K.prototype.loaded=function(){return this._loaded},K.prototype.updateImage=function(te){var xe=this;return!this.image||!te.url?this:(this.options.url=te.url,this.load(te.coordinates,function(){xe.texture=null}),this)},K.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setCoordinates=function(te){var xe=this;this.coordinates=te;var We=te.map(e.MercatorCoordinate.fromLngLat);this.tileID=he(We),this.minzoom=this.maxzoom=this.tileID.z;var He=We.map(function(st){return xe.tileID.getTilePoint(st)._round()});return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(He[0].x,He[0].y,0,0),this._boundsArray.emplaceBack(He[1].x,He[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(He[3].x,He[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(He[2].x,He[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(te,this.image,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.loadTile=function(te,xe){this.tileID&&this.tileID.equals(te.tileID.canonical)?(this.tiles[String(te.tileID.wrap)]=te,te.buckets={},xe(null)):(te.state="errored",xe(null))},K.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return!1},K}(e.Evented);function he(ve){for(var K=1/0,ye=1/0,te=-1/0,xe=-1/0,We=0,He=ve;Wexe.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+xe.start(0)+" and "+xe.end(0)+"-second mark."))):this.video.currentTime=te}},K.prototype.getVideo=function(){return this.video},K.prototype.onAdd=function(te){this.map||(this.map=te,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),xe.texSubImage2D(xe.TEXTURE_2D,0,0,0,xe.RGBA,xe.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(te,this.video,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this.video&&!this.video.paused},K}(se),$=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),te.coordinates?(!Array.isArray(te.coordinates)||te.coordinates.length!==4||te.coordinates.some(function(He){return!Array.isArray(He)||He.length!==2||He.some(function(st){return typeof st!="number"})}))&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "coordinates"'))),te.animate&&typeof te.animate!="boolean"&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'optional "animate" property must be a boolean value'))),te.canvas?typeof te.canvas!="string"&&!(te.canvas instanceof e.window.HTMLCanvasElement)&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "canvas"'))),this.options=te,this.animate=te.animate!==void 0?te.animate:!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},K.prototype.getCanvas=function(){return this.canvas},K.prototype.onAdd=function(te){this.map=te,this.load(),this.canvas&&this.animate&&this.play()},K.prototype.onRemove=function(){this.pause()},K.prototype.prepare=function(){var te=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,te=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,te=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var xe=this.map.painter.context,We=xe.gl;this.boundsBuffer||(this.boundsBuffer=xe.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(te||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(xe,this.canvas,We.RGBA,{premultiply:!0});for(var He in this.tiles){var st=this.tiles[He];st.state!=="loaded"&&(st.state="loaded",st.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this._playing},K.prototype._hasInvalidDimensions=function(){for(var te=0,xe=[this.canvas.width,this.canvas.height];tethis.max){var st=this._getAndRemoveByKey(this.order[0]);st&&this.onRemove(st)}return this},Ie.prototype.has=function(K){return K.wrapped().key in this.data},Ie.prototype.getAndRemove=function(K){return this.has(K)?this._getAndRemoveByKey(K.wrapped().key):null},Ie.prototype._getAndRemoveByKey=function(K){var ye=this.data[K].shift();return ye.timeout&&clearTimeout(ye.timeout),this.data[K].length===0&&delete this.data[K],this.order.splice(this.order.indexOf(K),1),ye.value},Ie.prototype.getByKey=function(K){var ye=this.data[K];return ye?ye[0].value:null},Ie.prototype.get=function(K){if(!this.has(K))return null;var ye=this.data[K.wrapped().key][0];return ye.value},Ie.prototype.remove=function(K,ye){if(!this.has(K))return this;var te=K.wrapped().key,xe=ye===void 0?0:this.data[te].indexOf(ye),We=this.data[te][xe];return this.data[te].splice(xe,1),We.timeout&&clearTimeout(We.timeout),this.data[te].length===0&&delete this.data[te],this.onRemove(We.value),this.order.splice(this.order.indexOf(te),1),this},Ie.prototype.setMaxSize=function(K){for(this.max=K;this.order.length>this.max;){var ye=this._getAndRemoveByKey(this.order[0]);ye&&this.onRemove(ye)}return this},Ie.prototype.filter=function(K){var ye=[];for(var te in this.data)for(var xe=0,We=this.data[te];xe1||(Math.abs(Ir)>1&&(Math.abs(Ir+qt)===1?Ir+=qt:Math.abs(Ir-qt)===1&&(Ir-=qt)),!(!yr.dem||!Ht.dem)&&(Ht.dem.backfillBorder(yr.dem,Ir,wr),Ht.neighboringTiles&&Ht.neighboringTiles[tr]&&(Ht.neighboringTiles[tr].backfilled=!0)))}},K.prototype.getTile=function(te){return this.getTileByID(te.key)},K.prototype.getTileByID=function(te){return this._tiles[te]},K.prototype._retainLoadedChildren=function(te,xe,We,He){for(var st in this._tiles){var Et=this._tiles[st];if(!(He[st]||!Et.hasData()||Et.tileID.overscaledZ<=xe||Et.tileID.overscaledZ>We)){for(var Ht=Et.tileID;Et&&Et.tileID.overscaledZ>xe+1;){var yr=Et.tileID.scaledTo(Et.tileID.overscaledZ-1);Et=this._tiles[yr.key],Et&&Et.hasData()&&(Ht=yr)}for(var Ir=Ht;Ir.overscaledZ>xe;)if(Ir=Ir.scaledTo(Ir.overscaledZ-1),te[Ir.key]){He[Ht.key]=Ht;break}}}},K.prototype.findLoadedParent=function(te,xe){if(te.key in this._loadedParentTiles){var We=this._loadedParentTiles[te.key];return We&&We.tileID.overscaledZ>=xe?We:null}for(var He=te.overscaledZ-1;He>=xe;He--){var st=te.scaledTo(He),Et=this._getLoadedTile(st);if(Et)return Et}},K.prototype._getLoadedTile=function(te){var xe=this._tiles[te.key];if(xe&&xe.hasData())return xe;var We=this._cache.getByKey(te.wrapped().key);return We},K.prototype.updateCacheSize=function(te){var xe=Math.ceil(te.width/this._source.tileSize)+1,We=Math.ceil(te.height/this._source.tileSize)+1,He=xe*We,st=5,Et=Math.floor(He*st),Ht=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Et):Et;this._cache.setMaxSize(Ht)},K.prototype.handleWrapJump=function(te){var xe=this._prevLng===void 0?te:this._prevLng,We=te-xe,He=We/360,st=Math.round(He);if(this._prevLng=te,st){var Et={};for(var Ht in this._tiles){var yr=this._tiles[Ht];yr.tileID=yr.tileID.unwrapTo(yr.tileID.wrap+st),Et[yr.tileID.key]=yr}this._tiles=Et;for(var Ir in this._timers)clearTimeout(this._timers[Ir]),delete this._timers[Ir];for(var wr in this._tiles){var qt=this._tiles[wr];this._setTileReloadTimer(wr,qt)}}},K.prototype.update=function(te){var xe=this;if(this.transform=te,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(te),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var We;this.used?this._source.tileID?We=te.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(ri){return new e.OverscaledTileID(ri.canonical.z,ri.wrap,ri.canonical.z,ri.canonical.x,ri.canonical.y)}):(We=te.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(We=We.filter(function(ri){return xe._source.hasTile(ri)}))):We=[];var He=te.coveringZoomLevel(this._source),st=Math.max(He-K.maxOverzooming,this._source.minzoom),Et=Math.max(He+K.maxUnderzooming,this._source.minzoom),Ht=this._updateRetainedTiles(We,He);if(Ea(this._source.type)){for(var yr={},Ir={},wr=Object.keys(Ht),qt=0,tr=wr;qtthis._source.maxzoom){var Hr=Pr.children(this._source.maxzoom)[0],aa=this.getTile(Hr);if(aa&&aa.hasData()){We[Hr.key]=Hr;continue}}else{var Qr=Pr.children(this._source.maxzoom);if(We[Qr[0].key]&&We[Qr[1].key]&&We[Qr[2].key]&&We[Qr[3].key])continue}for(var Gr=Vr.wasRequested(),ia=Pr.overscaledZ-1;ia>=st;--ia){var Ur=Pr.scaledTo(ia);if(He[Ur.key]||(He[Ur.key]=!0,Vr=this.getTile(Ur),!Vr&&Gr&&(Vr=this._addTile(Ur)),Vr&&(We[Ur.key]=Ur,Gr=Vr.wasRequested(),Vr.hasData())))break}}}return We},K.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var te in this._tiles){for(var xe=[],We=void 0,He=this._tiles[te].tileID;He.overscaledZ>0;){if(He.key in this._loadedParentTiles){We=this._loadedParentTiles[He.key];break}xe.push(He.key);var st=He.scaledTo(He.overscaledZ-1);if(We=this._getLoadedTile(st),We)break;He=st}for(var Et=0,Ht=xe;Et0)&&(xe.hasData()&&xe.state!=="reloading"?this._cache.add(xe.tileID,xe,xe.getExpiryTimeout()):(xe.aborted=!0,this._abortTile(xe),this._unloadTile(xe))))},K.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var te in this._tiles)this._removeTile(te);this._cache.reset()},K.prototype.tilesIn=function(te,xe,We){var He=this,st=[],Et=this.transform;if(!Et)return st;for(var Ht=We?Et.getCameraQueryGeometry(te):te,yr=te.map(function(ia){return Et.pointCoordinate(ia)}),Ir=Ht.map(function(ia){return Et.pointCoordinate(ia)}),wr=this.getIds(),qt=1/0,tr=1/0,dr=-1/0,Pr=-1/0,Vr=0,Hr=Ir;Vr=0&&Pi[1].y+ri>=0){var mi=yr.map(function(An){return wa.getTilePoint(An)}),Di=Ir.map(function(An){return wa.getTilePoint(An)});st.push({tile:Ur,tileID:wa,queryGeometry:mi,cameraQueryGeometry:Di,scale:Oa})}}},Gr=0;Gr=e.browser.now())return!0}return!1},K.prototype.setFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.updateState(te,xe,We)},K.prototype.removeFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.removeFeatureState(te,xe,We)},K.prototype.getFeatureState=function(te,xe){return te=te||"_geojsonTileLayer",this._state.getState(te,xe)},K.prototype.setDependencies=function(te,xe,We){var He=this._tiles[te];He&&He.setDependencies(xe,We)},K.prototype.reloadTilesForDependencies=function(te,xe){for(var We in this._tiles){var He=this._tiles[We];He.hasDependency(te,xe)&&this._reloadTile(We,"reloading")}this._cache.filter(function(st){return!st.hasDependency(te,xe)})},K}(e.Evented);pa.maxOverzooming=10,pa.maxUnderzooming=3;function Xr(ve,K){var ye=Math.abs(ve.wrap*2)-+(ve.wrap<0),te=Math.abs(K.wrap*2)-+(K.wrap<0);return ve.overscaledZ-K.overscaledZ||te-ye||K.canonical.y-ve.canonical.y||K.canonical.x-ve.canonical.x}function Ea(ve){return ve==="raster"||ve==="image"||ve==="video"}function Fa(){return new e.window.Worker(Cs.workerUrl)}var qa="mapboxgl_preloaded_worker_pool",ya=function(){this.active={}};ya.prototype.acquire=function(K){if(!this.workers)for(this.workers=[];this.workers.length0?(xe-He)/st:0;return this.points[We].mult(1-Et).add(this.points[ye].mult(Et))};var da=function(K,ye,te){var xe=this.boxCells=[],We=this.circleCells=[];this.xCellCount=Math.ceil(K/te),this.yCellCount=Math.ceil(ye/te);for(var He=0;Hethis.width||xe<0||ye>this.height)return We?!1:[];var st=[];if(K<=0&&ye<=0&&this.width<=te&&this.height<=xe){if(We)return!0;for(var Et=0;Et0:st}},da.prototype._queryCircle=function(K,ye,te,xe,We){var He=K-te,st=K+te,Et=ye-te,Ht=ye+te;if(st<0||He>this.width||Ht<0||Et>this.height)return xe?!1:[];var yr=[],Ir={hitTest:xe,circle:{x:K,y:ye,radius:te},seenUids:{box:{},circle:{}}};return this._forEachCell(He,Et,st,Ht,this._queryCellCircle,yr,Ir,We),xe?yr.length>0:yr},da.prototype.query=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!1,We)},da.prototype.hitTest=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!0,We)},da.prototype.hitTestCircle=function(K,ye,te,xe){return this._queryCircle(K,ye,te,!0,xe)},da.prototype._queryCell=function(K,ye,te,xe,We,He,st,Et){var Ht=st.seenUids,yr=this.boxCells[We];if(yr!==null)for(var Ir=this.bboxes,wr=0,qt=yr;wr=Ir[dr+0]&&xe>=Ir[dr+1]&&(!Et||Et(this.boxKeys[tr]))){if(st.hitTest)return He.push(!0),!0;He.push({key:this.boxKeys[tr],x1:Ir[dr],y1:Ir[dr+1],x2:Ir[dr+2],y2:Ir[dr+3]})}}}var Pr=this.circleCells[We];if(Pr!==null)for(var Vr=this.circles,Hr=0,aa=Pr;Hrst*st+Et*Et},da.prototype._circleAndRectCollide=function(K,ye,te,xe,We,He,st){var Et=(He-xe)/2,Ht=Math.abs(K-(xe+Et));if(Ht>Et+te)return!1;var yr=(st-We)/2,Ir=Math.abs(ye-(We+yr));if(Ir>yr+te)return!1;if(Ht<=Et||Ir<=yr)return!0;var wr=Ht-Et,qt=Ir-yr;return wr*wr+qt*qt<=te*te};function Sa(ve,K,ye,te,xe){var We=e.create();return K?(e.scale(We,We,[1/xe,1/xe,1]),ye||e.rotateZ(We,We,te.angle)):e.multiply(We,te.labelPlaneMatrix,ve),We}function Ti(ve,K,ye,te,xe){if(K){var We=e.clone(ve);return e.scale(We,We,[xe,xe,1]),ye||e.rotateZ(We,We,-te.angle),We}else return te.glCoordMatrix}function ai(ve,K){var ye=[ve.x,ve.y,0,1];as(ye,ye,K);var te=ye[3];return{point:new e.Point(ye[0]/te,ye[1]/te),signedDistanceFromCamera:te}}function an(ve,K){return .5+.5*(ve/K)}function sn(ve,K){var ye=ve[0]/ve[3],te=ve[1]/ve[3],xe=ye>=-K[0]&&ye<=K[0]&&te>=-K[1]&&te<=K[1];return xe}function Mn(ve,K,ye,te,xe,We,He,st){var Et=te?ve.textSizeData:ve.iconSizeData,Ht=e.evaluateSizeForZoom(Et,ye.transform.zoom),yr=[256/ye.width*2+1,256/ye.height*2+1],Ir=te?ve.text.dynamicLayoutVertexArray:ve.icon.dynamicLayoutVertexArray;Ir.clear();for(var wr=ve.lineVertexArray,qt=te?ve.text.placedSymbolArray:ve.icon.placedSymbolArray,tr=ye.transform.width/ye.transform.height,dr=!1,Pr=0;PrWe)return{useVertical:!0}}return(ve===e.WritingMode.vertical?K.yye.x)?{needsFlipping:!0}:null}function Cn(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=K/24,dr=ve.lineOffsetX*tr,Pr=ve.lineOffsetY*tr,Vr;if(ve.numGlyphs>1){var Hr=ve.glyphStartIndex+ve.numGlyphs,aa=ve.lineStartIndex,Qr=ve.lineStartIndex+ve.lineLength,Gr=On(tr,st,dr,Pr,ye,yr,Ir,ve,Et,We,wr);if(!Gr)return{notEnoughRoom:!0};var ia=ai(Gr.first.point,He).point,Ur=ai(Gr.last.point,He).point;if(te&&!ye){var wa=$n(ve.writingMode,ia,Ur,qt);if(wa)return wa}Vr=[Gr.first];for(var Oa=ve.glyphStartIndex+1;Oa0?Di.point:Lo(Ir,mi,ri,1,xe),ln=$n(ve.writingMode,ri,An,qt);if(ln)return ln}var Ii=Xi(tr*st.getoffsetX(ve.glyphStartIndex),dr,Pr,ye,yr,Ir,ve.segment,ve.lineStartIndex,ve.lineStartIndex+ve.lineLength,Et,We,wr);if(!Ii)return{notEnoughRoom:!0};Vr=[Ii]}for(var Wi=0,Hi=Vr;Wi0?1:-1,tr=0;te&&(qt*=-1,tr=Math.PI),qt<0&&(tr+=Math.PI);for(var dr=qt>0?st+He:st+He+1,Pr=xe,Vr=xe,Hr=0,aa=0,Qr=Math.abs(wr),Gr=[];Hr+aa<=Qr;){if(dr+=qt,dr=Et)return null;if(Vr=Pr,Gr.push(Pr),Pr=Ir[dr],Pr===void 0){var ia=new e.Point(Ht.getx(dr),Ht.gety(dr)),Ur=ai(ia,yr);if(Ur.signedDistanceFromCamera>0)Pr=Ir[dr]=Ur.point;else{var wa=dr-qt,Oa=Hr===0?We:new e.Point(Ht.getx(wa),Ht.gety(wa));Pr=Lo(Oa,ia,Vr,Qr-Hr+1,yr)}}Hr+=aa,aa=Vr.dist(Pr)}var ri=(Qr-Hr)/aa,Pi=Pr.sub(Vr),mi=Pi.mult(ri)._add(Vr);mi._add(Pi._unit()._perp()._mult(ye*qt));var Di=tr+Math.atan2(Pr.y-Vr.y,Pr.x-Vr.x);return Gr.push(mi),{point:mi,angle:Di,path:Gr}}var Jo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function zo(ve,K){for(var ye=0;ye=1;yn--)Hi.push(Ii.path[yn]);for(var zn=1;zn0){for(var qo=Hi[0].clone(),Ls=Hi[0].clone(),wl=1;wl=Di.x&&Ls.x<=An.x&&qo.y>=Di.y&&Ls.y<=An.y?Vs=[Hi]:Ls.xAn.x||Ls.yAn.y?Vs=[]:Vs=e.clipLine([Hi],Di.x,Di.y,An.x,An.y)}for(var Ru=0,Ap=Vs;Ru=this.screenRightBoundary||xethis.screenBottomBoundary},go.prototype.isInsideGrid=function(K,ye,te,xe){return te>=0&&K=0&&ye0){var Qr;return this.prevPlacement&&this.prevPlacement.variableOffsets[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID].text&&(Qr=this.prevPlacement.variableOffsets[wr.crossTileID].anchor),this.variableOffsets[wr.crossTileID]={textOffset:Pr,width:te,height:xe,anchor:K,textBoxScale:We,prevAnchor:Qr},this.markUsedJustification(qt,K,wr,tr),qt.allowVerticalPlacement&&(this.markUsedOrientation(qt,tr,wr),this.placedOrientations[wr.crossTileID]=tr),{shift:Vr,placedGlyphBoxes:Hr}}},$o.prototype.placeLayerBucketPart=function(K,ye,te){var xe=this,We=K.parameters,He=We.bucket,st=We.layout,Et=We.posMatrix,Ht=We.textLabelPlaneMatrix,yr=We.labelToScreenMatrix,Ir=We.textPixelRatio,wr=We.holdingForFade,qt=We.collisionBoxArray,tr=We.partiallyEvaluatedTextSize,dr=We.collisionGroup,Pr=st.get("text-optional"),Vr=st.get("icon-optional"),Hr=st.get("text-allow-overlap"),aa=st.get("icon-allow-overlap"),Qr=st.get("text-rotation-alignment")==="map",Gr=st.get("text-pitch-alignment")==="map",ia=st.get("icon-text-fit")!=="none",Ur=st.get("symbol-z-order")==="viewport-y",wa=Hr&&(aa||!He.hasIconData()||Vr),Oa=aa&&(Hr||!He.hasTextData()||Pr);!He.collisionArrays&&qt&&He.deserializeCollisionBoxes(qt);var ri=function(Ii,Wi){if(!ye[Ii.crossTileID]){if(wr){xe.placements[Ii.crossTileID]=new Qo(!1,!1,!1);return}var Hi=!1,yn=!1,zn=!0,ms=null,us={box:null,offscreen:null},Vs={box:null,offscreen:null},qo=null,Ls=null,wl=null,Ru=0,Ap=0,Sp=0;Wi.textFeatureIndex?Ru=Wi.textFeatureIndex:Ii.useRuntimeCollisionCircles&&(Ru=Ii.featureIndex),Wi.verticalTextFeatureIndex&&(Ap=Wi.verticalTextFeatureIndex);var Eh=Wi.textBox;if(Eh){var Vp=function(Du){var Bl=e.WritingMode.horizontal;if(He.allowVerticalPlacement&&!Du&&xe.prevPlacement){var Lh=xe.prevPlacement.placedOrientations[Ii.crossTileID];Lh&&(xe.placedOrientations[Ii.crossTileID]=Lh,Bl=Lh,xe.markUsedOrientation(He,Bl,Ii))}return Bl},Vd=function(Du,Bl){if(He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Wi.verticalTextBox)for(var Lh=0,Iv=He.writingModes;Lh0&&(Xh=Xh.filter(function(Du){return Du!==Ch.anchor}),Xh.unshift(Ch.anchor))}var Mp=function(Du,Bl,Lh){for(var Iv=Du.x2-Du.x1,om=Du.y2-Du.y1,Ql=Ii.textBoxScale,xg=ia&&!aa?Bl:null,sv={box:[],offscreen:!1},y0=Hr?Xh.length*2:Xh.length,kp=0;kp=Xh.length,bg=xe.attemptAnchorPlacement(lv,Du,Iv,om,Ql,Qr,Gr,Ir,Et,dr,_0,Ii,He,Lh,xg);if(bg&&(sv=bg.placedGlyphBoxes,sv&&sv.box&&sv.box.length)){Hi=!0,ms=bg.shift;break}}return sv},qp=function(){return Mp(Eh,Wi.iconBox,e.WritingMode.horizontal)},Ep=function(){var Du=Wi.verticalTextBox,Bl=us&&us.box&&us.box.length;return He.allowVerticalPlacement&&!Bl&&Ii.numVerticalGlyphVertices>0&&Du?Mp(Du,Wi.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(qp,Ep),us&&(Hi=us.box,zn=us.offscreen);var Cv=Vp(us&&us.box);if(!Hi&&xe.prevPlacement){var qd=xe.prevPlacement.variableOffsets[Ii.crossTileID];qd&&(xe.variableOffsets[Ii.crossTileID]=qd,xe.markUsedJustification(He,qd.anchor,Ii,Cv))}}else{var td=function(Du,Bl){var Lh=xe.collisionIndex.placeCollisionBox(Du,Hr,Ir,Et,dr.predicate);return Lh&&Lh.box&&Lh.box.length&&(xe.markUsedOrientation(He,Bl,Ii),xe.placedOrientations[Ii.crossTileID]=Bl),Lh},kh=function(){return td(Eh,e.WritingMode.horizontal)},rd=function(){var Du=Wi.verticalTextBox;return He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Du?td(Du,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(kh,rd),Vp(us&&us.box&&us.box.length)}}if(qo=us,Hi=qo&&qo.box&&qo.box.length>0,zn=qo&&qo.offscreen,Ii.useRuntimeCollisionCircles){var Sf=He.text.placedSymbolArray.get(Ii.centerJustifiedTextSymbolIndex),Hd=e.evaluateSizeForFeature(He.textSizeData,tr,Sf),Lv=st.get("text-padding"),eh=Ii.collisionCircleDiameter;Ls=xe.collisionIndex.placeCollisionCircles(Hr,Sf,He.lineVertexArray,He.glyphOffsetArray,Hd,Et,Ht,yr,te,Gr,dr.predicate,eh,Lv),Hi=Hr||Ls.circles.length>0&&!Ls.collisionDetected,zn=zn&&Ls.offscreen}if(Wi.iconFeatureIndex&&(Sp=Wi.iconFeatureIndex),Wi.iconBox){var iv=function(Du){var Bl=ia&&ms?Fs(Du,ms.x,ms.y,Qr,Gr,xe.transform.angle):Du;return xe.collisionIndex.placeCollisionBox(Bl,aa,Ir,Et,dr.predicate)};Vs&&Vs.box&&Vs.box.length&&Wi.verticalIconBox?(wl=iv(Wi.verticalIconBox),yn=wl.box.length>0):(wl=iv(Wi.iconBox),yn=wl.box.length>0),zn=zn&&wl.offscreen}var im=Pr||Ii.numHorizontalGlyphVertices===0&&Ii.numVerticalGlyphVertices===0,nm=Vr||Ii.numIconVertices===0;if(!im&&!nm?yn=Hi=yn&&Hi:nm?im||(yn=yn&&Hi):Hi=yn&&Hi,Hi&&qo&&qo.box&&(Vs&&Vs.box&&Ap?xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ap,dr.ID):xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID)),yn&&wl&&xe.collisionIndex.insertCollisionBox(wl.box,st.get("icon-ignore-placement"),He.bucketInstanceId,Sp,dr.ID),Ls&&(Hi&&xe.collisionIndex.insertCollisionCircles(Ls.circles,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID),te)){var Pv=He.bucketInstanceId,nv=xe.collisionCircleArrays[Pv];nv===void 0&&(nv=xe.collisionCircleArrays[Pv]=new Xn);for(var ov=0;ov=0;--mi){var Di=Pi[mi];ri(He.symbolInstances.get(Di),He.collisionArrays[Di])}else for(var An=K.symbolInstanceStart;An=0&&(He>=0&&yr!==He?K.text.placedSymbolArray.get(yr).crossTileID=0:K.text.placedSymbolArray.get(yr).crossTileID=te.crossTileID)}},$o.prototype.markUsedOrientation=function(K,ye,te){for(var xe=ye===e.WritingMode.horizontal||ye===e.WritingMode.horizontalOnly?ye:0,We=ye===e.WritingMode.vertical?ye:0,He=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex],st=0,Et=He;st0||Gr>0,ri=aa.numIconVertices>0,Pi=xe.placedOrientations[aa.crossTileID],mi=Pi===e.WritingMode.vertical,Di=Pi===e.WritingMode.horizontal||Pi===e.WritingMode.horizontalOnly;if(Oa){var An=vl(wa.text),ln=mi?ji:An;tr(K.text,Qr,ln);var Ii=Di?ji:An;tr(K.text,Gr,Ii);var Wi=wa.text.isHidden();[aa.rightJustifiedTextSymbolIndex,aa.centerJustifiedTextSymbolIndex,aa.leftJustifiedTextSymbolIndex].forEach(function(Sp){Sp>=0&&(K.text.placedSymbolArray.get(Sp).hidden=Wi||mi?1:0)}),aa.verticalPlacedTextSymbolIndex>=0&&(K.text.placedSymbolArray.get(aa.verticalPlacedTextSymbolIndex).hidden=Wi||Di?1:0);var Hi=xe.variableOffsets[aa.crossTileID];Hi&&xe.markUsedJustification(K,Hi.anchor,aa,Pi);var yn=xe.placedOrientations[aa.crossTileID];yn&&(xe.markUsedJustification(K,"left",aa,yn),xe.markUsedOrientation(K,yn,aa))}if(ri){var zn=vl(wa.icon),ms=!(wr&&aa.verticalPlacedIconSymbolIndex&&mi);if(aa.placedIconSymbolIndex>=0){var us=ms?zn:ji;tr(K.icon,aa.numIconVertices,us),K.icon.placedSymbolArray.get(aa.placedIconSymbolIndex).hidden=wa.icon.isHidden()}if(aa.verticalPlacedIconSymbolIndex>=0){var Vs=ms?ji:zn;tr(K.icon,aa.numVerticalIconVertices,Vs),K.icon.placedSymbolArray.get(aa.verticalPlacedIconSymbolIndex).hidden=wa.icon.isHidden()}}if(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData()){var qo=K.collisionArrays[Hr];if(qo){var Ls=new e.Point(0,0);if(qo.textBox||qo.verticalTextBox){var wl=!0;if(Ht){var Ru=xe.variableOffsets[ia];Ru?(Ls=Is(Ru.anchor,Ru.width,Ru.height,Ru.textOffset,Ru.textBoxScale),yr&&Ls._rotate(Ir?xe.transform.angle:-xe.transform.angle)):wl=!1}qo.textBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||mi,Ls.x,Ls.y),qo.verticalTextBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||Di,Ls.x,Ls.y)}var Ap=!!(!Di&&qo.verticalIconBox);qo.iconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,Ap,wr?Ls.x:0,wr?Ls.y:0),qo.verticalIconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,!Ap,wr?Ls.x:0,wr?Ls.y:0)}}},Pr=0;PrK},$o.prototype.setStale=function(){this.stale=!0};function fi(ve,K,ye,te,xe){ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0)}var mn=Math.pow(2,25),ol=Math.pow(2,24),Os=Math.pow(2,17),so=Math.pow(2,16),Ns=Math.pow(2,9),fs=Math.pow(2,8),al=Math.pow(2,1);function vl(ve){if(ve.opacity===0&&!ve.placed)return 0;if(ve.opacity===1&&ve.placed)return 4294967295;var K=ve.placed?1:0,ye=Math.floor(ve.opacity*127);return ye*mn+K*ol+ye*Os+K*so+ye*Ns+K*fs+ye*al+K}var ji=0,To=function(K){this._sortAcrossTiles=K.layout.get("symbol-z-order")!=="viewport-y"&&K.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};To.prototype.continuePlacement=function(K,ye,te,xe,We){for(var He=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var st=K[this._currentPlacementIndex],Et=ye[st],Ht=this.placement.collisionIndex.transform.zoom;if(Et.type==="symbol"&&(!Et.minzoom||Et.minzoom<=Ht)&&(!Et.maxzoom||Et.maxzoom>Ht)){this._inProgressLayer||(this._inProgressLayer=new To(Et));var yr=this._inProgressLayer.continuePlacement(te[Et.source],this.placement,this._showCollisionBoxes,Et,He);if(yr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Yn.prototype.commit=function(K){return this.placement.commit(K),this.placement};var _s=512/e.EXTENT/2,Yo=function(K,ye,te){this.tileID=K,this.indexedSymbolInstances={},this.bucketInstanceId=te;for(var xe=0;xeK.overscaledZ)for(var Ht in Et){var yr=Et[Ht];yr.tileID.isChildOf(K)&&yr.findMatches(ye.symbolInstances,K,He)}else{var Ir=K.scaledTo(Number(st)),wr=Et[Ir.key];wr&&wr.findMatches(ye.symbolInstances,K,He)}}for(var qt=0;qt0)throw new Error("Unimplemented: "+He.map(function(st){return st.command}).join(", ")+".");return We.forEach(function(st){st.command!=="setTransition"&&xe[st.command].apply(xe,st.args)}),this.stylesheet=te,!0},K.prototype.addImage=function(te,xe){if(this.getImage(te))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(te,xe),this._afterImageUpdated(te)},K.prototype.updateImage=function(te,xe){this.imageManager.updateImage(te,xe)},K.prototype.getImage=function(te){return this.imageManager.getImage(te)},K.prototype.removeImage=function(te){if(!this.getImage(te))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(te),this._afterImageUpdated(te)},K.prototype._afterImageUpdated=function(te){this._availableImages=this.imageManager.listImages(),this._changedImages[te]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))},K.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},K.prototype.addSource=function(te,xe,We){var He=this;if(We===void 0&&(We={}),this._checkLoaded(),this.sourceCaches[te]!==void 0)throw new Error("There is already a source with this ID");if(!xe.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(xe).join(", ")+".");var st=["vector","raster","geojson","video","image"],Et=st.indexOf(xe.type)>=0;if(!(Et&&this._validate(e.validateStyle.source,"sources."+te,xe,null,We))){this.map&&this.map._collectResourceTiming&&(xe.collectResourceTiming=!0);var Ht=this.sourceCaches[te]=new pa(te,xe,this.dispatcher);Ht.style=this,Ht.setEventedParent(this,function(){return{isSourceLoaded:He.loaded(),source:Ht.serialize(),sourceId:te}}),Ht.onAdd(this.map),this._changed=!0}},K.prototype.removeSource=function(te){if(this._checkLoaded(),this.sourceCaches[te]===void 0)throw new Error("There is no source with this ID");for(var xe in this._layers)if(this._layers[xe].source===te)return this.fire(new e.ErrorEvent(new Error('Source "'+te+'" cannot be removed while layer "'+xe+'" is using it.')));var We=this.sourceCaches[te];delete this.sourceCaches[te],delete this._updatedSources[te],We.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:te})),We.setEventedParent(null),We.clearTiles(),We.onRemove&&We.onRemove(this.map),this._changed=!0},K.prototype.setGeoJSONSourceData=function(te,xe){this._checkLoaded();var We=this.sourceCaches[te].getSource();We.setData(xe),this._changed=!0},K.prototype.getSource=function(te){return this.sourceCaches[te]&&this.sourceCaches[te].getSource()},K.prototype.addLayer=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=te.id;if(this.getLayer(He)){this.fire(new e.ErrorEvent(new Error('Layer with id "'+He+'" already exists on this map')));return}var st;if(te.type==="custom"){if(ml(this,e.validateCustomStyleLayer(te)))return;st=e.createStyleLayer(te)}else{if(typeof te.source=="object"&&(this.addSource(He,te.source),te=e.clone$1(te),te=e.extend(te,{source:He})),this._validate(e.validateStyle.layer,"layers."+He,te,{arrayIndex:-1},We))return;st=e.createStyleLayer(te),this._validateLayer(st),st.setEventedParent(this,{layer:{id:He}}),this._serializedLayers[st.id]=st.serialize()}var Et=xe?this._order.indexOf(xe):this._order.length;if(xe&&Et===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}if(this._order.splice(Et,0,He),this._layerOrderChanged=!0,this._layers[He]=st,this._removedLayers[He]&&st.source&&st.type!=="custom"){var Ht=this._removedLayers[He];delete this._removedLayers[He],Ht.type!==st.type?this._updatedSources[st.source]="clear":(this._updatedSources[st.source]="reload",this.sourceCaches[st.source].pause())}this._updateLayer(st),st.onAdd&&st.onAdd(this.map)},K.prototype.moveLayer=function(te,xe){this._checkLoaded(),this._changed=!0;var We=this._layers[te];if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be moved.")));return}if(te!==xe){var He=this._order.indexOf(te);this._order.splice(He,1);var st=xe?this._order.indexOf(xe):this._order.length;if(xe&&st===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}this._order.splice(st,0,te),this._layerOrderChanged=!0}},K.prototype.removeLayer=function(te){this._checkLoaded();var xe=this._layers[te];if(!xe){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be removed.")));return}xe.setEventedParent(null);var We=this._order.indexOf(te);this._order.splice(We,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[te]=xe,delete this._layers[te],delete this._serializedLayers[te],delete this._updatedLayers[te],delete this._updatedPaintProps[te],xe.onRemove&&xe.onRemove(this.map)},K.prototype.getLayer=function(te){return this._layers[te]},K.prototype.hasLayer=function(te){return te in this._layers},K.prototype.setLayerZoomRange=function(te,xe,We){this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot have zoom extent.")));return}He.minzoom===xe&&He.maxzoom===We||(xe!=null&&(He.minzoom=xe),We!=null&&(He.maxzoom=We),this._updateLayer(He))},K.prototype.setFilter=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be filtered.")));return}if(!e.deepEqual(He.filter,xe)){if(xe==null){He.filter=void 0,this._updateLayer(He);return}this._validate(e.validateStyle.filter,"layers."+He.id+".filter",xe,null,We)||(He.filter=e.clone$1(xe),this._updateLayer(He))}},K.prototype.getFilter=function(te){return e.clone$1(this.getLayer(te).filter)},K.prototype.setLayoutProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}e.deepEqual(st.getLayoutProperty(xe),We)||(st.setLayoutProperty(xe,We,He),this._updateLayer(st))},K.prototype.getLayoutProperty=function(te,xe){var We=this.getLayer(te);if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style.")));return}return We.getLayoutProperty(xe)},K.prototype.setPaintProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}if(!e.deepEqual(st.getPaintProperty(xe),We)){var Et=st.setPaintProperty(xe,We,He);Et&&this._updateLayer(st),this._changed=!0,this._updatedPaintProps[te]=!0}},K.prototype.getPaintProperty=function(te,xe){return this.getLayer(te).getPaintProperty(xe)},K.prototype.setFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=te.sourceLayer,st=this.sourceCaches[We];if(st===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var Et=st.getSource().type;if(Et==="geojson"&&He){this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Et==="vector"&&!He){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),st.setFeatureState(He,te.id,xe)},K.prototype.removeFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=this.sourceCaches[We];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var st=He.getSource().type,Et=st==="vector"?te.sourceLayer:void 0;if(st==="vector"&&!Et){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(xe&&typeof te.id!="string"&&typeof te.id!="number"){this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}He.removeFeatureState(Et,te.id,xe)},K.prototype.getFeatureState=function(te){this._checkLoaded();var xe=te.source,We=te.sourceLayer,He=this.sourceCaches[xe];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+xe+"' does not exist in the map's style.")));return}var st=He.getSource().type;if(st==="vector"&&!We){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),He.getFeatureState(We,te.id)},K.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},K.prototype.serialize=function(){return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:e.mapObject(this.sourceCaches,function(te){return te.serialize()}),layers:this._serializeLayers(this._order)},function(te){return te!==void 0})},K.prototype._updateLayer=function(te){this._updatedLayers[te.id]=!0,te.source&&!this._updatedSources[te.source]&&this.sourceCaches[te.source].getSource().type!=="raster"&&(this._updatedSources[te.source]="reload",this.sourceCaches[te.source].pause()),this._changed=!0},K.prototype._flattenAndSortRenderedFeatures=function(te){for(var xe=this,We=function(Di){return xe._layers[Di].type==="fill-extrusion"},He={},st=[],Et=this._order.length-1;Et>=0;Et--){var Ht=this._order[Et];if(We(Ht)){He[Ht]=Et;for(var yr=0,Ir=te;yr=0;Hr--){var aa=this._order[Hr];if(We(aa))for(var Qr=st.length-1;Qr>=0;Qr--){var Gr=st[Qr].feature;if(He[Gr.layer.id] 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`,Fl=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,lh=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0 +? a_pos +: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`,Xf=`#ifdef GL_ES +precision highp float; +#endif +uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Rf="uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}",Kc=`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent; +#define PI 3.141592653589793 +void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Yf="uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}",uh=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Ju=` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Df=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Dc=` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Jc=`uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Eu=` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`,wf=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,zc=` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`,Us=`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Kf="uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}",Zh=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,ch=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}`,df=`#define SDF_PX 8.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,Ah=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`,ku=`#define SDF_PX 8.0 +#define SDF 1.0 +#define ICON 0.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,fh=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,ru=el(Ic,Xu),Cu=el(Th,bf),xc=el(Rs,Yc),kl=el(If,Zl),Fc=el(yl,oc),$u=el(_c,Zs),vu=el(_l,Bs),xl=el($s,sc),hh=el(zl,Yu),Sh=el(Qs,fp),Uu=el(es,Wh),bc=el(Ss,So),lc=el(hf,Ku),hp=el(cu,Zf),vf=el(Rc,pf),Tf=el(Fl,lh),Lu=el(Xf,Rf),zf=el(Kc,Yf),au=el(uh,Ju),$c=el(Df,Dc),Mh=el(Jc,Eu),Ff=el(wf,zc),il=el(Us,Kf),mu=el(Zh,ch),gu=el(df,Ah),Jf=el(ku,fh);function el(ve,K){var ye=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,te=K.match(/attribute ([\w]+) ([\w]+)/g),xe=ve.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),We=K.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),He=We?We.concat(xe):xe,st={};return ve=ve.replace(ye,function(Et,Ht,yr,Ir,wr){return st[wr]=!0,Ht==="define"?` +#ifndef HAS_UNIFORM_u_`+wr+` +varying `+yr+" "+Ir+" "+wr+`; +#else +uniform `+yr+" "+Ir+" u_"+wr+`; +#endif +`:` +#ifdef HAS_UNIFORM_u_`+wr+` + `+yr+" "+Ir+" "+wr+" = u_"+wr+`; +#endif +`}),K=K.replace(ye,function(Et,Ht,yr,Ir,wr){var qt=Ir==="float"?"vec2":"vec4",tr=wr.match(/color/)?"color":qt;return st[wr]?Ht==="define"?` +#ifndef HAS_UNIFORM_u_`+wr+` +uniform lowp float u_`+wr+`_t; +attribute `+yr+" "+qt+" a_"+wr+`; +varying `+yr+" "+Ir+" "+wr+`; +#else +uniform `+yr+" "+Ir+" u_"+wr+`; +#endif +`:tr==="vec4"?` +#ifndef HAS_UNIFORM_u_`+wr+` + `+wr+" = a_"+wr+`; +#else + `+yr+" "+Ir+" "+wr+" = u_"+wr+`; +#endif +`:` +#ifndef HAS_UNIFORM_u_`+wr+` + `+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t); +#else + `+yr+" "+Ir+" "+wr+" = u_"+wr+`; +#endif +`:Ht==="define"?` +#ifndef HAS_UNIFORM_u_`+wr+` +uniform lowp float u_`+wr+`_t; +attribute `+yr+" "+qt+" a_"+wr+`; +#else +uniform `+yr+" "+Ir+" u_"+wr+`; +#endif +`:tr==="vec4"?` +#ifndef HAS_UNIFORM_u_`+wr+` + `+yr+" "+Ir+" "+wr+" = a_"+wr+`; +#else + `+yr+" "+Ir+" "+wr+" = u_"+wr+`; +#endif +`:` +#ifndef HAS_UNIFORM_u_`+wr+` + `+yr+" "+Ir+" "+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t); +#else + `+yr+" "+Ir+" "+wr+" = u_"+wr+`; +#endif +`}),{fragmentSource:ve,vertexSource:K,staticAttributes:te,staticUniforms:He}}var mf=Object.freeze({__proto__:null,prelude:ru,background:Cu,backgroundPattern:xc,circle:kl,clippingMask:Fc,heatmap:$u,heatmapTexture:vu,collisionBox:xl,collisionCircle:hh,debug:Sh,fill:Uu,fillOutline:bc,fillOutlinePattern:lc,fillPattern:hp,fillExtrusion:vf,fillExtrusionPattern:Tf,hillshadePrepare:Lu,hillshade:zf,line:au,lineGradient:$c,linePattern:Mh,lineSDF:Ff,raster:il,symbolIcon:mu,symbolSDF:gu,symbolTextAndIcon:Jf}),wc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};wc.prototype.bind=function(K,ye,te,xe,We,He,st,Et){this.context=K;for(var Ht=this.boundPaintVertexBuffers.length!==xe.length,yr=0;!Ht&&yr>16,st>>16],u_pixel_coord_lower:[He&65535,st&65535]}}function Qc(ve,K,ye,te){var xe=ye.imageManager.getPattern(ve.from.toString()),We=ye.imageManager.getPattern(ve.to.toString()),He=ye.imageManager.getPixelSize(),st=He.width,Et=He.height,Ht=Math.pow(2,te.tileID.overscaledZ),yr=te.tileSize*Math.pow(2,ye.transform.tileZoom)/Ht,Ir=yr*(te.tileID.canonical.x+te.tileID.wrap*Ht),wr=yr*te.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:xe.tl,u_pattern_br_a:xe.br,u_pattern_tl_b:We.tl,u_pattern_br_b:We.br,u_texsize:[st,Et],u_mix:K.t,u_pattern_size_a:xe.displaySize,u_pattern_size_b:We.displaySize,u_scale_a:K.fromScale,u_scale_b:K.toScale,u_tile_units_to_pixels:1/In(te,1,ye.transform.tileZoom),u_pixel_coord_upper:[Ir>>16,wr>>16],u_pixel_coord_lower:[Ir&65535,wr&65535]}}var $f=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Vl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_height_factor:new e.Uniform1f(ve,K.u_height_factor),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Qf=function(ve,K,ye,te){var xe=K.style.light,We=xe.properties.get("position"),He=[We.x,We.y,We.z],st=e.create$1();xe.properties.get("anchor")==="viewport"&&e.fromRotation(st,-K.transform.angle),e.transformMat3(He,He,st);var Et=xe.properties.get("color");return{u_matrix:ve,u_lightpos:He,u_lightintensity:xe.properties.get("intensity"),u_lightcolor:[Et.r,Et.g,Et.b],u_vertical_gradient:+ye,u_opacity:te}},Vu=function(ve,K,ye,te,xe,We,He){return e.extend(Qf(ve,K,ye,te),uc(We,K,He),{u_height_factor:-Math.pow(2,xe.overscaledZ)/He.tileSize/8})},Tc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},cc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Cl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world)}},iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},fc=function(ve){return{u_matrix:ve}},Oc=function(ve,K,ye,te){return e.extend(fc(ve),uc(ye,K,te))},Qu=function(ve,K){return{u_matrix:ve,u_world:K}},ef=function(ve,K,ye,te,xe){return e.extend(Oc(ve,K,ye,te),{u_world:xe})},Zt=function(ve,K){return{u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(ve,K.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},fr=function(ve,K,ye,te){var xe=ve.transform,We,He;if(te.paint.get("circle-pitch-alignment")==="map"){var st=In(ye,1,xe.zoom);We=!0,He=[st,st]}else We=!1,He=xe.pixelsToGLUnits;return{u_camera_to_center_distance:xe.cameraToCenterDistance,u_scale_with_map:+(te.paint.get("circle-pitch-scale")==="map"),u_matrix:ve.translatePosMatrix(K.posMatrix,ye,te.paint.get("circle-translate"),te.paint.get("circle-translate-anchor")),u_pitch_with_map:+We,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:He}},Yr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(ve,K.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_overscale_factor:new e.Uniform1f(ve,K.u_overscale_factor)}},qr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_inv_matrix:new e.UniformMatrix4f(ve,K.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(ve,K.u_viewport_size)}},ba=function(ve,K,ye){var te=In(ye,1,K.zoom),xe=Math.pow(2,K.zoom-ye.tileID.overscaledZ),We=ye.tileID.overscaleFactor();return{u_matrix:ve,u_camera_to_center_distance:K.cameraToCenterDistance,u_pixels_to_tile_units:te,u_extrude_scale:[K.pixelsToGLUnits[0]/(te*xe),K.pixelsToGLUnits[1]/(te*xe)],u_overscale_factor:We}},Ka=function(ve,K,ye){return{u_matrix:ve,u_inv_matrix:K,u_camera_to_center_distance:ye.cameraToCenterDistance,u_viewport_size:[ye.width,ye.height]}},oi=function(ve,K){return{u_color:new e.UniformColor(ve,K.u_color),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_overlay:new e.Uniform1i(ve,K.u_overlay),u_overlay_scale:new e.Uniform1f(ve,K.u_overlay_scale)}},yi=function(ve,K,ye){return ye===void 0&&(ye=1),{u_matrix:ve,u_color:K,u_overlay:0,u_overlay_scale:ye}},ki=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},Bi=function(ve){return{u_matrix:ve}},li=function(ve,K){return{u_extrude_scale:new e.Uniform1f(ve,K.u_extrude_scale),u_intensity:new e.Uniform1f(ve,K.u_intensity),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},_i=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_color_ramp:new e.Uniform1i(ve,K.u_color_ramp),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},vi=function(ve,K,ye,te){return{u_matrix:ve,u_extrude_scale:In(K,1,ye),u_intensity:te}},ti=function(ve,K,ye,te){var xe=e.create();e.ortho(xe,0,ve.width,ve.height,0,0,1);var We=ve.context.gl;return{u_matrix:xe,u_world:[We.drawingBufferWidth,We.drawingBufferHeight],u_image:ye,u_color_ramp:te,u_opacity:K.paint.get("heatmap-opacity")}},rn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_latrange:new e.Uniform2f(ve,K.u_latrange),u_light:new e.Uniform2f(ve,K.u_light),u_shadow:new e.UniformColor(ve,K.u_shadow),u_highlight:new e.UniformColor(ve,K.u_highlight),u_accent:new e.UniformColor(ve,K.u_accent)}},Kn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_dimension:new e.Uniform2f(ve,K.u_dimension),u_zoom:new e.Uniform1f(ve,K.u_zoom),u_unpack:new e.Uniform4f(ve,K.u_unpack)}},Wn=function(ve,K,ye){var te=ye.paint.get("hillshade-shadow-color"),xe=ye.paint.get("hillshade-highlight-color"),We=ye.paint.get("hillshade-accent-color"),He=ye.paint.get("hillshade-illumination-direction")*(Math.PI/180);ye.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=ve.transform.angle);var st=!ve.options.moving;return{u_matrix:ve.transform.calculatePosMatrix(K.tileID.toUnwrapped(),st),u_image:0,u_latrange:no(ve,K.tileID),u_light:[ye.paint.get("hillshade-exaggeration"),He],u_shadow:te,u_highlight:xe,u_accent:We}},Jn=function(ve,K){var ye=K.stride,te=e.create();return e.ortho(te,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(te,te,[0,-e.EXTENT,0]),{u_matrix:te,u_image:1,u_dimension:[ye,ye],u_zoom:ve.overscaledZ,u_unpack:K.getUnpackVector()}};function no(ve,K){var ye=Math.pow(2,K.canonical.z),te=K.canonical.y;return[new e.MercatorCoordinate(0,te/ye).toLngLat().lat,new e.MercatorCoordinate(0,(te+1)/ye).toLngLat().lat]}var en=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels)}},Ri=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_image:new e.Uniform1i(ve,K.u_image),u_image_height:new e.Uniform1f(ve,K.u_image_height)}},co=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_image:new e.Uniform1i(ve,K.u_image),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Wo=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(ve,K.u_patternscale_a),u_patternscale_b:new e.Uniform2f(ve,K.u_patternscale_b),u_sdfgamma:new e.Uniform1f(ve,K.u_sdfgamma),u_image:new e.Uniform1i(ve,K.u_image),u_tex_y_a:new e.Uniform1f(ve,K.u_tex_y_a),u_tex_y_b:new e.Uniform1f(ve,K.u_tex_y_b),u_mix:new e.Uniform1f(ve,K.u_mix)}},bs=function(ve,K,ye){var te=ve.transform;return{u_matrix:Il(ve,K,ye),u_ratio:1/In(K,1,te.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/te.pixelsToGLUnits[0],1/te.pixelsToGLUnits[1]]}},Xs=function(ve,K,ye,te){return e.extend(bs(ve,K,ye),{u_image:0,u_image_height:te})},Ms=function(ve,K,ye,te){var xe=ve.transform,We=vs(K,xe);return{u_matrix:Il(ve,K,ye),u_texsize:K.imageAtlasTexture.size,u_ratio:1/In(K,1,xe.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[We,te.fromScale,te.toScale],u_fade:te.t,u_units_to_pixels:[1/xe.pixelsToGLUnits[0],1/xe.pixelsToGLUnits[1]]}},Hs=function(ve,K,ye,te,xe){var We=ve.transform,He=ve.lineAtlas,st=vs(K,We),Et=ye.layout.get("line-cap")==="round",Ht=He.getDash(te.from,Et),yr=He.getDash(te.to,Et),Ir=Ht.width*xe.fromScale,wr=yr.width*xe.toScale;return e.extend(bs(ve,K,ye),{u_patternscale_a:[st/Ir,-Ht.height/2],u_patternscale_b:[st/wr,-yr.height/2],u_sdfgamma:He.width/(Math.min(Ir,wr)*256*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:Ht.y,u_tex_y_b:yr.y,u_mix:xe.t})};function vs(ve,K){return 1/In(ve,1,K.tileZoom)}function Il(ve,K,ye){return ve.translatePosMatrix(K.tileID.posMatrix,K,ye.paint.get("line-translate"),ye.paint.get("line-translate-anchor"))}var fl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_tl_parent:new e.Uniform2f(ve,K.u_tl_parent),u_scale_parent:new e.Uniform1f(ve,K.u_scale_parent),u_buffer_scale:new e.Uniform1f(ve,K.u_buffer_scale),u_fade_t:new e.Uniform1f(ve,K.u_fade_t),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image0:new e.Uniform1i(ve,K.u_image0),u_image1:new e.Uniform1i(ve,K.u_image1),u_brightness_low:new e.Uniform1f(ve,K.u_brightness_low),u_brightness_high:new e.Uniform1f(ve,K.u_brightness_high),u_saturation_factor:new e.Uniform1f(ve,K.u_saturation_factor),u_contrast_factor:new e.Uniform1f(ve,K.u_contrast_factor),u_spin_weights:new e.Uniform3f(ve,K.u_spin_weights)}},tl=function(ve,K,ye,te,xe){return{u_matrix:ve,u_tl_parent:K,u_scale_parent:ye,u_buffer_scale:1,u_fade_t:te.mix,u_opacity:te.opacity*xe.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:xe.paint.get("raster-brightness-min"),u_brightness_high:xe.paint.get("raster-brightness-max"),u_saturation_factor:js(xe.paint.get("raster-saturation")),u_contrast_factor:Ao(xe.paint.get("raster-contrast")),u_spin_weights:Ln(xe.paint.get("raster-hue-rotate"))}};function Ln(ve){ve*=Math.PI/180;var K=Math.sin(ve),ye=Math.cos(ve);return[(2*ye+1)/3,(-Math.sqrt(3)*K-ye+1)/3,(Math.sqrt(3)*K-ye+1)/3]}function Ao(ve){return ve>0?1/(1-ve):1+ve}function js(ve){return ve>0?1-1/(1.001-ve):-ve}var Ts=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture)}},nu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},Pu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texsize_icon:new e.Uniform2f(ve,K.u_texsize_icon),u_texture:new e.Uniform1i(ve,K.u_texture),u_texture_icon:new e.Uniform1i(ve,K.u_texture_icon),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},ec=function(ve,K,ye,te,xe,We,He,st,Et,Ht){var yr=xe.transform;return{u_is_size_zoom_constant:+(ve==="constant"||ve==="source"),u_is_size_feature_constant:+(ve==="constant"||ve==="camera"),u_size_t:K?K.uSizeT:0,u_size:K?K.uSize:0,u_camera_to_center_distance:yr.cameraToCenterDistance,u_pitch:yr.pitch/360*2*Math.PI,u_rotate_symbol:+ye,u_aspect_ratio:yr.width/yr.height,u_fade_change:xe.options.fadeDuration?xe.symbolFadeChange:1,u_matrix:We,u_label_plane_matrix:He,u_coord_matrix:st,u_is_text:+Et,u_pitch_with_map:+te,u_texsize:Ht,u_texture:0}},tf=function(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=xe.transform;return e.extend(ec(ve,K,ye,te,xe,We,He,st,Et,Ht),{u_gamma_scale:te?Math.cos(Ir._pitch)*Ir.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+yr})},yu=function(ve,K,ye,te,xe,We,He,st,Et,Ht){return e.extend(tf(ve,K,ye,te,xe,We,He,st,!0,Et,!0),{u_texsize_icon:Ht,u_texture_icon:1})},Bc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_color:new e.UniformColor(ve,K.u_color)}},Iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image:new e.Uniform1i(ve,K.u_image),u_pattern_tl_a:new e.Uniform2f(ve,K.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(ve,K.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(ve,K.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(ve,K.u_pattern_br_b),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_mix:new e.Uniform1f(ve,K.u_mix),u_pattern_size_a:new e.Uniform2f(ve,K.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(ve,K.u_pattern_size_b),u_scale_a:new e.Uniform1f(ve,K.u_scale_a),u_scale_b:new e.Uniform1f(ve,K.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(ve,K.u_tile_units_to_pixels)}},Ac=function(ve,K,ye){return{u_matrix:ve,u_opacity:K,u_color:ye}},ro=function(ve,K,ye,te,xe,We){return e.extend(Qc(te,We,ye,xe),{u_matrix:ve,u_opacity:K})},Po={fillExtrusion:$f,fillExtrusionPattern:Vl,fill:Tc,fillPattern:cc,fillOutline:Cl,fillOutlinePattern:iu,circle:Zt,collisionBox:Yr,collisionCircle:qr,debug:oi,clippingMask:ki,heatmap:li,heatmapTexture:_i,hillshade:rn,hillshadePrepare:Kn,line:en,lineGradient:Ri,linePattern:co,lineSDF:Wo,raster:fl,symbolIcon:Ts,symbolSDF:nu,symbolTextAndIcon:Pu,background:Bc,backgroundPattern:Iu},Nc;function hc(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ve.useProgram("collisionBox"),yr=[],Ir=0,wr=0,qt=0;qt0){var Qr=e.create(),Gr=Vr;e.mul(Qr,Pr.placementInvProjMatrix,ve.transform.glCoordMatrix),e.mul(Qr,Qr,Pr.placementViewportMatrix),yr.push({circleArray:aa,circleOffset:wr,transform:Gr,invTransform:Qr}),Ir+=aa.length/4,wr=Ir}Hr&&Ht.draw(st,Et.LINES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ba(Vr,ve.transform,dr),ye.id,Hr.layoutVertexBuffer,Hr.indexBuffer,Hr.segments,null,ve.transform.zoom,null,null,Hr.collisionVertexBuffer)}}if(!(!He||!yr.length)){var ia=ve.useProgram("collisionCircle"),Ur=new e.StructArrayLayout2f1f2i16;Ur.resize(Ir*4),Ur._trim();for(var wa=0,Oa=0,ri=yr;Oa=0&&(tr[Pr.associatedIconIndex]={shiftedAnchor:Di,angle:An})}}if(yr){qt.clear();for(var Ii=ve.icon.placedSymbolArray,Wi=0;Wi0){var He=e.browser.now(),st=(He-ve.timeAdded)/We,Et=K?(He-K.timeAdded)/We:-1,Ht=ye.getSource(),yr=xe.coveringZoomLevel({tileSize:Ht.tileSize,roundZoom:Ht.roundZoom}),Ir=!K||Math.abs(K.tileID.overscaledZ-yr)>Math.abs(ve.tileID.overscaledZ-yr),wr=Ir&&ve.refreshedUponExpiration?1:e.clamp(Ir?st:1-Et,0,1);return ve.refreshedUponExpiration&&st>=1&&(ve.refreshedUponExpiration=!1),K?{opacity:1,mix:1-wr}:{opacity:wr,mix:0}}else return{opacity:1,mix:0}}function pr(ve,K,ye){var te=ye.paint.get("background-color"),xe=ye.paint.get("background-opacity");if(xe!==0){var We=ve.context,He=We.gl,st=ve.transform,Et=st.tileSize,Ht=ye.paint.get("background-pattern");if(!ve.isPatternMissing(Ht)){var yr=!Ht&&te.a===1&&xe===1&&ve.opaquePassEnabledForLayer()?"opaque":"translucent";if(ve.renderPass===yr){var Ir=Ma.disabled,wr=ve.depthModeForSublayer(0,yr==="opaque"?La.ReadWrite:La.ReadOnly),qt=ve.colorModeForRenderPass(),tr=ve.useProgram(Ht?"backgroundPattern":"background"),dr=st.coveringTiles({tileSize:Et});Ht&&(We.activeTexture.set(He.TEXTURE0),ve.imageManager.bind(ve.context));for(var Pr=ye.getCrossfadeParameters(),Vr=0,Hr=dr;Vr "+ye.overscaledZ);var Vr=Pr+" "+qt+"kb";ho(ve,Vr),He.draw(te,xe.TRIANGLES,st,Et,zt.alphaBlended,xr.disabled,yi(We,e.Color.transparent,dr),yr,ve.debugBuffer,ve.quadTriangleIndexBuffer,ve.debugSegments)}function ho(ve,K){ve.initDebugOverlayCanvas();var ye=ve.debugOverlayCanvas,te=ve.context.gl,xe=ve.debugOverlayCanvas.getContext("2d");xe.clearRect(0,0,ye.width,ye.height),xe.shadowColor="white",xe.shadowBlur=2,xe.lineWidth=1.5,xe.strokeStyle="white",xe.textBaseline="top",xe.font="bold 36px Open Sans, sans-serif",xe.fillText(K,5,5),xe.strokeText(K,5,5),ve.debugOverlayTexture.update(ye),ve.debugOverlayTexture.bind(te.LINEAR,te.CLAMP_TO_EDGE)}function ts(ve,K,ye){var te=ve.context,xe=ye.implementation;if(ve.renderPass==="offscreen"){var We=xe.prerender;We&&(ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),We.call(xe,te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState())}else if(ve.renderPass==="translucent"){ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),te.setStencilMode(Ma.disabled);var He=xe.renderingMode==="3d"?new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D):ve.depthModeForSublayer(0,La.ReadOnly);te.setDepthMode(He),xe.render(te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState(),te.bindFramebuffer.set(null)}}var yo={symbol:R,circle:Dt,heatmap:Yt,line:ea,fill:qe,"fill-extrusion":ot,hillshade:At,raster:er,background:pr,debug:Bn,custom:ts},Vo=function(K,ye){this.context=new Zr(K),this.transform=ye,this._tileTextures={},this.setup(),this.numSublayers=pa.maxUnderzooming+pa.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Zu,this.gpuTimers={}};Vo.prototype.resize=function(K,ye){if(this.width=K*e.browser.devicePixelRatio,this.height=ye*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var te=0,xe=this.style._order;te256&&this.clearStencil(),te.setColorMode(zt.disabled),te.setDepthMode(La.disabled);var We=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var He=0,st=ye;He256&&this.clearStencil();var K=this.nextStencilID++,ye=this.context.gl;return new Ma({func:ye.NOTEQUAL,mask:255},K,255,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilModeForClipping=function(K){var ye=this.context.gl;return new Ma({func:ye.EQUAL,mask:255},this._tileClippingMaskIDs[K.key],0,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilConfigForOverlap=function(K){var ye,te=this.context.gl,xe=K.sort(function(Ht,yr){return yr.overscaledZ-Ht.overscaledZ}),We=xe[xe.length-1].overscaledZ,He=xe[0].overscaledZ-We+1;if(He>1){this.currentStencilSource=void 0,this.nextStencilID+He>256&&this.clearStencil();for(var st={},Et=0;Et=0;this.currentLayer--){var Qr=this.style._layers[xe[this.currentLayer]],Gr=We[Qr.source],ia=Et[Qr.source];this._renderTileClippingMasks(Qr,ia),this.renderLayer(this,Gr,Qr,ia)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?ye.pop():null},Vo.prototype.isPatternMissing=function(K){if(!K)return!1;if(!K.from||!K.to)return!0;var ye=this.imageManager.getPattern(K.from.toString()),te=this.imageManager.getPattern(K.to.toString());return!ye||!te},Vo.prototype.useProgram=function(K,ye){this.cache=this.cache||{};var te=""+K+(ye?ye.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[te]||(this.cache[te]=new Af(this.context,K,mf[K],ye,Po[K],this._showOverdrawInspector)),this.cache[te]},Vo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Vo.prototype.setBaseState=function(){var K=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(K.FUNC_ADD)},Vo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var K=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,K.RGBA)}},Vo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var ls=function(K,ye){this.points=K,this.planes=ye};ls.fromInvProjectionMatrix=function(K,ye,te){var xe=[[-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]],We=Math.pow(2,te),He=xe.map(function(Ht){return e.transformMat4([],Ht,K)}).map(function(Ht){return e.scale$1([],Ht,1/Ht[3]/ye*We)}),st=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Et=st.map(function(Ht){var yr=e.sub([],He[Ht[0]],He[Ht[1]]),Ir=e.sub([],He[Ht[2]],He[Ht[1]]),wr=e.normalize([],e.cross([],yr,Ir)),qt=-e.dot(wr,He[Ht[1]]);return wr.concat(qt)});return new ls(He,Et)};var rl=function(K,ye){this.min=K,this.max=ye,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};rl.prototype.quadrant=function(K){for(var ye=[K%2===0,K<2],te=e.clone$2(this.min),xe=e.clone$2(this.max),We=0;We=0;if(He===0)return 0;He!==ye.length&&(te=!1)}if(te)return 2;for(var Et=0;Et<3;Et++){for(var Ht=Number.MAX_VALUE,yr=-Number.MAX_VALUE,Ir=0;Irthis.max[Et]-this.min[Et])return 0}return 1};var Ys=function(K,ye,te,xe){if(K===void 0&&(K=0),ye===void 0&&(ye=0),te===void 0&&(te=0),xe===void 0&&(xe=0),isNaN(K)||K<0||isNaN(ye)||ye<0||isNaN(te)||te<0||isNaN(xe)||xe<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=K,this.bottom=ye,this.left=te,this.right=xe};Ys.prototype.interpolate=function(K,ye,te){return ye.top!=null&&K.top!=null&&(this.top=e.number(K.top,ye.top,te)),ye.bottom!=null&&K.bottom!=null&&(this.bottom=e.number(K.bottom,ye.bottom,te)),ye.left!=null&&K.left!=null&&(this.left=e.number(K.left,ye.left,te)),ye.right!=null&&K.right!=null&&(this.right=e.number(K.right,ye.right,te)),this},Ys.prototype.getCenter=function(K,ye){var te=e.clamp((this.left+K-this.right)/2,0,K),xe=e.clamp((this.top+ye-this.bottom)/2,0,ye);return new e.Point(te,xe)},Ys.prototype.equals=function(K){return this.top===K.top&&this.bottom===K.bottom&&this.left===K.left&&this.right===K.right},Ys.prototype.clone=function(){return new Ys(this.top,this.bottom,this.left,this.right)},Ys.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var Zo=function(K,ye,te,xe,We){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=We===void 0?!0:We,this._minZoom=K||0,this._maxZoom=ye||22,this._minPitch=te??0,this._maxPitch=xe??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ys,this._posMatrixCache={},this._alignedPosMatrixCache={}},Go={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};Zo.prototype.clone=function(){var K=new Zo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return K.tileSize=this.tileSize,K.latRange=this.latRange,K.width=this.width,K.height=this.height,K._center=this._center,K.zoom=this.zoom,K.angle=this.angle,K._fov=this._fov,K._pitch=this._pitch,K._unmodified=this._unmodified,K._edgeInsets=this._edgeInsets.clone(),K._calcMatrices(),K},Go.minZoom.get=function(){return this._minZoom},Go.minZoom.set=function(ve){this._minZoom!==ve&&(this._minZoom=ve,this.zoom=Math.max(this.zoom,ve))},Go.maxZoom.get=function(){return this._maxZoom},Go.maxZoom.set=function(ve){this._maxZoom!==ve&&(this._maxZoom=ve,this.zoom=Math.min(this.zoom,ve))},Go.minPitch.get=function(){return this._minPitch},Go.minPitch.set=function(ve){this._minPitch!==ve&&(this._minPitch=ve,this.pitch=Math.max(this.pitch,ve))},Go.maxPitch.get=function(){return this._maxPitch},Go.maxPitch.set=function(ve){this._maxPitch!==ve&&(this._maxPitch=ve,this.pitch=Math.min(this.pitch,ve))},Go.renderWorldCopies.get=function(){return this._renderWorldCopies},Go.renderWorldCopies.set=function(ve){ve===void 0?ve=!0:ve===null&&(ve=!1),this._renderWorldCopies=ve},Go.worldSize.get=function(){return this.tileSize*this.scale},Go.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Go.size.get=function(){return new e.Point(this.width,this.height)},Go.bearing.get=function(){return-this.angle/Math.PI*180},Go.bearing.set=function(ve){var K=-e.wrap(ve,-180,180)*Math.PI/180;this.angle!==K&&(this._unmodified=!1,this.angle=K,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Go.pitch.get=function(){return this._pitch/Math.PI*180},Go.pitch.set=function(ve){var K=e.clamp(ve,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==K&&(this._unmodified=!1,this._pitch=K,this._calcMatrices())},Go.fov.get=function(){return this._fov/Math.PI*180},Go.fov.set=function(ve){ve=Math.max(.01,Math.min(60,ve)),this._fov!==ve&&(this._unmodified=!1,this._fov=ve/180*Math.PI,this._calcMatrices())},Go.zoom.get=function(){return this._zoom},Go.zoom.set=function(ve){var K=Math.min(Math.max(ve,this.minZoom),this.maxZoom);this._zoom!==K&&(this._unmodified=!1,this._zoom=K,this.scale=this.zoomScale(K),this.tileZoom=Math.floor(K),this.zoomFraction=K-this.tileZoom,this._constrain(),this._calcMatrices())},Go.center.get=function(){return this._center},Go.center.set=function(ve){ve.lat===this._center.lat&&ve.lng===this._center.lng||(this._unmodified=!1,this._center=ve,this._constrain(),this._calcMatrices())},Go.padding.get=function(){return this._edgeInsets.toJSON()},Go.padding.set=function(ve){this._edgeInsets.equals(ve)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,ve,1),this._calcMatrices())},Go.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},Zo.prototype.isPaddingEqual=function(K){return this._edgeInsets.equals(K)},Zo.prototype.interpolatePadding=function(K,ye,te){this._unmodified=!1,this._edgeInsets.interpolate(K,ye,te),this._constrain(),this._calcMatrices()},Zo.prototype.coveringZoomLevel=function(K){var ye=(K.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/K.tileSize));return Math.max(0,ye)},Zo.prototype.getVisibleUnwrappedCoordinates=function(K){var ye=[new e.UnwrappedTileID(0,K)];if(this._renderWorldCopies)for(var te=this.pointCoordinate(new e.Point(0,0)),xe=this.pointCoordinate(new e.Point(this.width,0)),We=this.pointCoordinate(new e.Point(this.width,this.height)),He=this.pointCoordinate(new e.Point(0,this.height)),st=Math.floor(Math.min(te.x,xe.x,We.x,He.x)),Et=Math.floor(Math.max(te.x,xe.x,We.x,He.x)),Ht=1,yr=st-Ht;yr<=Et+Ht;yr++)yr!==0&&ye.push(new e.UnwrappedTileID(yr,K));return ye},Zo.prototype.coveringTiles=function(K){var ye=this.coveringZoomLevel(K),te=ye;if(K.minzoom!==void 0&&yeK.maxzoom&&(ye=K.maxzoom);var xe=e.MercatorCoordinate.fromLngLat(this.center),We=Math.pow(2,ye),He=[We*xe.x,We*xe.y,0],st=ls.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,ye),Et=K.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Et=ye);var Ht=3,yr=function(mi){return{aabb:new rl([mi*We,0,0],[(mi+1)*We,We,0]),zoom:0,x:0,y:0,wrap:mi,fullyVisible:!1}},Ir=[],wr=[],qt=ye,tr=K.reparseOverscaled?te:ye;if(this._renderWorldCopies)for(var dr=1;dr<=3;dr++)Ir.push(yr(-dr)),Ir.push(yr(dr));for(Ir.push(yr(0));Ir.length>0;){var Pr=Ir.pop(),Vr=Pr.x,Hr=Pr.y,aa=Pr.fullyVisible;if(!aa){var Qr=Pr.aabb.intersects(st);if(Qr===0)continue;aa=Qr===2}var Gr=Pr.aabb.distanceX(He),ia=Pr.aabb.distanceY(He),Ur=Math.max(Math.abs(Gr),Math.abs(ia)),wa=Ht+(1<wa&&Pr.zoom>=Et){wr.push({tileID:new e.OverscaledTileID(Pr.zoom===qt?tr:Pr.zoom,Pr.wrap,Pr.zoom,Vr,Hr),distanceSq:e.sqrLen([He[0]-.5-Vr,He[1]-.5-Hr])});continue}for(var Oa=0;Oa<4;Oa++){var ri=(Vr<<1)+Oa%2,Pi=(Hr<<1)+(Oa>>1);Ir.push({aabb:Pr.aabb.quadrant(Oa),zoom:Pr.zoom+1,x:ri,y:Pi,wrap:Pr.wrap,fullyVisible:aa})}}return wr.sort(function(mi,Di){return mi.distanceSq-Di.distanceSq}).map(function(mi){return mi.tileID})},Zo.prototype.resize=function(K,ye){this.width=K,this.height=ye,this.pixelsToGLUnits=[2/K,-2/ye],this._constrain(),this._calcMatrices()},Go.unmodified.get=function(){return this._unmodified},Zo.prototype.zoomScale=function(K){return Math.pow(2,K)},Zo.prototype.scaleZoom=function(K){return Math.log(K)/Math.LN2},Zo.prototype.project=function(K){var ye=e.clamp(K.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(K.lng)*this.worldSize,e.mercatorYfromLat(ye)*this.worldSize)},Zo.prototype.unproject=function(K){return new e.MercatorCoordinate(K.x/this.worldSize,K.y/this.worldSize).toLngLat()},Go.point.get=function(){return this.project(this.center)},Zo.prototype.setLocationAtPoint=function(K,ye){var te=this.pointCoordinate(ye),xe=this.pointCoordinate(this.centerPoint),We=this.locationCoordinate(K),He=new e.MercatorCoordinate(We.x-(te.x-xe.x),We.y-(te.y-xe.y));this.center=this.coordinateLocation(He),this._renderWorldCopies&&(this.center=this.center.wrap())},Zo.prototype.locationPoint=function(K){return this.coordinatePoint(this.locationCoordinate(K))},Zo.prototype.pointLocation=function(K){return this.coordinateLocation(this.pointCoordinate(K))},Zo.prototype.locationCoordinate=function(K){return e.MercatorCoordinate.fromLngLat(K)},Zo.prototype.coordinateLocation=function(K){return K.toLngLat()},Zo.prototype.pointCoordinate=function(K){var ye=0,te=[K.x,K.y,0,1],xe=[K.x,K.y,1,1];e.transformMat4(te,te,this.pixelMatrixInverse),e.transformMat4(xe,xe,this.pixelMatrixInverse);var We=te[3],He=xe[3],st=te[0]/We,Et=xe[0]/He,Ht=te[1]/We,yr=xe[1]/He,Ir=te[2]/We,wr=xe[2]/He,qt=Ir===wr?0:(ye-Ir)/(wr-Ir);return new e.MercatorCoordinate(e.number(st,Et,qt)/this.worldSize,e.number(Ht,yr,qt)/this.worldSize)},Zo.prototype.coordinatePoint=function(K){var ye=[K.x*this.worldSize,K.y*this.worldSize,0,1];return e.transformMat4(ye,ye,this.pixelMatrix),new e.Point(ye[0]/ye[3],ye[1]/ye[3])},Zo.prototype.getBounds=function(){return new e.LngLatBounds().extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},Zo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},Zo.prototype.setMaxBounds=function(K){K?(this.lngRange=[K.getWest(),K.getEast()],this.latRange=[K.getSouth(),K.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},Zo.prototype.calculatePosMatrix=function(K,ye){ye===void 0&&(ye=!1);var te=K.key,xe=ye?this._alignedPosMatrixCache:this._posMatrixCache;if(xe[te])return xe[te];var We=K.canonical,He=this.worldSize/this.zoomScale(We.z),st=We.x+Math.pow(2,We.z)*K.wrap,Et=e.identity(new Float64Array(16));return e.translate(Et,Et,[st*He,We.y*He,0]),e.scale(Et,Et,[He/e.EXTENT,He/e.EXTENT,1]),e.multiply(Et,ye?this.alignedProjMatrix:this.projMatrix,Et),xe[te]=new Float32Array(Et),xe[te]},Zo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},Zo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var K=-90,ye=90,te=-180,xe=180,We,He,st,Et,Ht=this.size,yr=this._unmodified;if(this.latRange){var Ir=this.latRange;K=e.mercatorYfromLat(Ir[1])*this.worldSize,ye=e.mercatorYfromLat(Ir[0])*this.worldSize,We=ye-Kye&&(Et=ye-Pr)}if(this.lngRange){var Vr=qt.x,Hr=Ht.x/2;Vr-Hrxe&&(st=xe-Hr)}(st!==void 0||Et!==void 0)&&(this.center=this.unproject(new e.Point(st!==void 0?st:qt.x,Et!==void 0?Et:qt.y))),this._unmodified=yr,this._constraining=!1}},Zo.prototype._calcMatrices=function(){if(this.height){var K=this._fov/2,ye=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(K)*this.height;var te=Math.PI/2+this._pitch,xe=this._fov*(.5+ye.y/this.height),We=Math.sin(xe)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-te-xe,.01,Math.PI-.01)),He=this.point,st=He.x,Et=He.y,Ht=Math.cos(Math.PI/2-this._pitch)*We+this.cameraToCenterDistance,yr=Ht*1.01,Ir=this.height/50,wr=new Float64Array(16);e.perspective(wr,this._fov,this.width/this.height,Ir,yr),wr[8]=-ye.x*2/this.width,wr[9]=ye.y*2/this.height,e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[0,0,-this.cameraToCenterDistance]),e.rotateX(wr,wr,this._pitch),e.rotateZ(wr,wr,this.angle),e.translate(wr,wr,[-st,-Et,0]),this.mercatorMatrix=e.scale([],wr,[this.worldSize,this.worldSize,this.worldSize]),e.scale(wr,wr,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=wr,this.invProjMatrix=e.invert([],this.projMatrix);var qt=this.width%2/2,tr=this.height%2/2,dr=Math.cos(this.angle),Pr=Math.sin(this.angle),Vr=st-Math.round(st)+dr*qt+Pr*tr,Hr=Et-Math.round(Et)+dr*tr+Pr*qt,aa=new Float64Array(wr);if(e.translate(aa,aa,[Vr>.5?Vr-1:Vr,Hr>.5?Hr-1:Hr,0]),this.alignedProjMatrix=aa,wr=e.create(),e.scale(wr,wr,[this.width/2,-this.height/2,1]),e.translate(wr,wr,[1,-1,0]),this.labelPlaneMatrix=wr,wr=e.create(),e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[-1,-1,0]),e.scale(wr,wr,[2/this.width,2/this.height,1]),this.glCoordMatrix=wr,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),wr=e.invert(new Float64Array(16),this.pixelMatrix),!wr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=wr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},Zo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var K=this.pointCoordinate(new e.Point(0,0)),ye=[K.x*this.worldSize,K.y*this.worldSize,0,1],te=e.transformMat4(ye,ye,this.pixelMatrix);return te[3]/this.cameraToCenterDistance},Zo.prototype.getCameraPoint=function(){var K=this._pitch,ye=Math.tan(K)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,ye))},Zo.prototype.getCameraQueryGeometry=function(K){var ye=this.getCameraPoint();if(K.length===1)return[K[0],ye];for(var te=ye.x,xe=ye.y,We=ye.x,He=ye.y,st=0,Et=K;st=3&&!K.some(function(te){return isNaN(te)})){var ye=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(K[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+K[2],+K[1]],zoom:+K[0],bearing:ye,pitch:+(K[4]||0)}),!0}return!1},Xl.prototype._updateHashUnthrottled=function(){var K=e.window.location.href.replace(/(#.+)?$/,this.getHashString());try{e.window.history.replaceState(e.window.history.state,null,K)}catch{}};var qu={linearity:.3,easing:e.bezier(0,0,.3,1)},fu=e.extend({deceleration:2500,maxSpeed:1400},qu),bl=e.extend({deceleration:20,maxSpeed:1400},qu),ou=e.extend({deceleration:1e3,maxSpeed:360},qu),Sc=e.extend({deceleration:1e3,maxSpeed:90},qu),ql=function(K){this._map=K,this.clear()};ql.prototype.clear=function(){this._inertiaBuffer=[]},ql.prototype.record=function(K){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.browser.now(),settings:K})},ql.prototype._drainInertiaBuffer=function(){for(var K=this._inertiaBuffer,ye=e.browser.now(),te=160;K.length>0&&ye-K[0].time>te;)K.shift()},ql.prototype._onMoveEnd=function(K){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var ye={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},te=0,xe=this._inertiaBuffer;te=this._clickTolerance||this._map.fire(new Re(K.type,this._map,K))},vt.prototype.dblclick=function(K){return this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseover=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.mouseout=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.touchstart=function(K){return this._firePreventable(new $e(K.type,this._map,K))},vt.prototype.touchmove=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchend=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchcancel=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype._firePreventable=function(K){if(this._map.fire(K),K.defaultPrevented)return{}},vt.prototype.isEnabled=function(){return!0},vt.prototype.isActive=function(){return!1},vt.prototype.enable=function(){},vt.prototype.disable=function(){};var wt=function(K){this._map=K};wt.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},wt.prototype.mousemove=function(K){this._map.fire(new Re(K.type,this._map,K))},wt.prototype.mousedown=function(){this._delayContextMenu=!0},wt.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Re("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},wt.prototype.contextmenu=function(K){this._delayContextMenu?this._contextMenuEvent=K:this._map.fire(new Re(K.type,this._map,K)),this._map.listens("contextmenu")&&K.preventDefault()},wt.prototype.isEnabled=function(){return!0},wt.prototype.isActive=function(){return!1},wt.prototype.enable=function(){},wt.prototype.disable=function(){};var Jt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._container=K.getContainer(),this._clickTolerance=ye.clickTolerance||1};Jt.prototype.isEnabled=function(){return!!this._enabled},Jt.prototype.isActive=function(){return!!this._active},Jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Jt.prototype.mousedown=function(K,ye){this.isEnabled()&&K.shiftKey&&K.button===0&&(r.disableDrag(),this._startPos=this._lastPos=ye,this._active=!0)},Jt.prototype.mousemoveWindow=function(K,ye){if(this._active){var te=ye;if(!(this._lastPos.equals(te)||!this._box&&te.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=K.timeStamp),te.length===this.numTouches&&(this.centroid=or(ye),this.touches=Rt(te,ye)))},fa.prototype.touchmove=function(K,ye,te){if(!(this.aborted||!this.centroid)){var xe=Rt(te,ye);for(var We in this.touches){var He=this.touches[We],st=xe[We];(!st||st.dist(He)>va)&&(this.aborted=!0)}}},fa.prototype.touchend=function(K,ye,te){if((!this.centroid||K.timeStamp-this.startTime>Or)&&(this.aborted=!0),te.length===0){var xe=!this.aborted&&this.centroid;if(this.reset(),xe)return xe}};var Va=function(K){this.singleTap=new fa(K),this.numTaps=K.numTaps,this.reset()};Va.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Va.prototype.touchstart=function(K,ye,te){this.singleTap.touchstart(K,ye,te)},Va.prototype.touchmove=function(K,ye,te){this.singleTap.touchmove(K,ye,te)},Va.prototype.touchend=function(K,ye,te){var xe=this.singleTap.touchend(K,ye,te);if(xe){var We=K.timeStamp-this.lastTime0&&(this._active=!0);var xe=Rt(te,ye),We=new e.Point(0,0),He=new e.Point(0,0),st=0;for(var Et in xe){var Ht=xe[Et],yr=this._touches[Et];yr&&(We._add(Ht),He._add(Ht.sub(yr)),st++,xe[Et]=Ht)}if(this._touches=xe,!(stMath.abs(ve.x)}var Vi=100,ao=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},K.prototype._start=function(te){this._lastPoints=te,sl(te[0].sub(te[1]))&&(this._valid=!1)},K.prototype._move=function(te,xe,We){var He=te[0].sub(this._lastPoints[0]),st=te[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(He,st,We.timeStamp),!!this._valid){this._lastPoints=te,this._active=!0;var Et=(He.y+st.y)/2,Ht=-.5;return{pitchDelta:Et*Ht}}},K.prototype.gestureBeginsVertically=function(te,xe,We){if(this._valid!==void 0)return this._valid;var He=2,st=te.mag()>=He,Et=xe.mag()>=He;if(!(!st&&!Et)){if(!st||!Et)return this._firstMove===void 0&&(this._firstMove=We),We-this._firstMove0==xe.y>0;return sl(te)&&sl(xe)&&Ht}},K}(hn),ns={panStep:100,bearingStep:15,pitchStep:10},hs=function(){var K=ns;this._panStep=K.panStep,this._bearingStep=K.bearingStep,this._pitchStep=K.pitchStep,this._rotationDisabled=!1};hs.prototype.reset=function(){this._active=!1},hs.prototype.keydown=function(K){var ye=this;if(!(K.altKey||K.ctrlKey||K.metaKey)){var te=0,xe=0,We=0,He=0,st=0;switch(K.keyCode){case 61:case 107:case 171:case 187:te=1;break;case 189:case 109:case 173:te=-1;break;case 37:K.shiftKey?xe=-1:(K.preventDefault(),He=-1);break;case 39:K.shiftKey?xe=1:(K.preventDefault(),He=1);break;case 38:K.shiftKey?We=1:(K.preventDefault(),st=-1);break;case 40:K.shiftKey?We=-1:(K.preventDefault(),st=1);break;default:return}return this._rotationDisabled&&(xe=0,We=0),{cameraAnimation:function(Et){var Ht=Et.getZoom();Et.easeTo({duration:300,easeId:"keyboardHandler",easing:hl,zoom:te?Math.round(Ht)+te*(K.shiftKey?2:1):Ht,bearing:Et.getBearing()+xe*ye._bearingStep,pitch:Et.getPitch()+We*ye._pitchStep,offset:[-He*ye._panStep,-st*ye._panStep],center:Et.getCenter()},{originalEvent:K})}}}},hs.prototype.enable=function(){this._enabled=!0},hs.prototype.disable=function(){this._enabled=!1,this.reset()},hs.prototype.isEnabled=function(){return this._enabled},hs.prototype.isActive=function(){return this._active},hs.prototype.disableRotation=function(){this._rotationDisabled=!0},hs.prototype.enableRotation=function(){this._rotationDisabled=!1};function hl(ve){return ve*(2-ve)}var Dl=4.000244140625,hu=1/100,Ll=1/450,dc=2,Qt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._handler=ye,this._delta=0,this._defaultZoomRate=hu,this._wheelZoomRate=Ll,e.bindAll(["_onTimeout"],this)};Qt.prototype.setZoomRate=function(K){this._defaultZoomRate=K},Qt.prototype.setWheelZoomRate=function(K){this._wheelZoomRate=K},Qt.prototype.isEnabled=function(){return!!this._enabled},Qt.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Qt.prototype.isZooming=function(){return!!this._zooming},Qt.prototype.enable=function(K){this.isEnabled()||(this._enabled=!0,this._aroundCenter=K&&K.around==="center")},Qt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Qt.prototype.wheel=function(K){if(this.isEnabled()){var ye=K.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?K.deltaY*40:K.deltaY,te=e.browser.now(),xe=te-(this._lastWheelEventTime||0);this._lastWheelEventTime=te,ye!==0&&ye%Dl===0?this._type="wheel":ye!==0&&Math.abs(ye)<4?this._type="trackpad":xe>400?(this._type=null,this._lastValue=ye,this._timeout=setTimeout(this._onTimeout,40,K)):this._type||(this._type=Math.abs(xe*ye)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ye+=this._lastValue)),K.shiftKey&&ye&&(ye=ye/4),this._type&&(this._lastWheelEvent=K,this._delta-=ye,this._active||this._start(K)),K.preventDefault()}},Qt.prototype._onTimeout=function(K){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(K)},Qt.prototype._start=function(K){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var ye=r.mousePos(this._el,K);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(ye)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Qt.prototype.renderFrame=function(){var K=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var ye=this._map.transform;if(this._delta!==0){var te=this._type==="wheel"&&Math.abs(this._delta)>Dl?this._wheelZoomRate:this._defaultZoomRate,xe=dc/(1+Math.exp(-Math.abs(this._delta*te)));this._delta<0&&xe!==0&&(xe=1/xe);var We=typeof this._targetZoom=="number"?ye.zoomScale(this._targetZoom):ye.scale;this._targetZoom=Math.min(ye.maxZoom,Math.max(ye.minZoom,ye.scaleZoom(We*xe))),this._type==="wheel"&&(this._startZoom=ye.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var He=typeof this._targetZoom=="number"?this._targetZoom:ye.zoom,st=this._startZoom,Et=this._easing,Ht=!1,yr;if(this._type==="wheel"&&st&&Et){var Ir=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),wr=Et(Ir);yr=e.number(st,He,wr),Ir<1?this._frameId||(this._frameId=!0):Ht=!0}else yr=He,Ht=!0;return this._active=!0,Ht&&(this._active=!1,this._finishTimeout=setTimeout(function(){K._zooming=!1,K._handler._triggerRenderFrame(),delete K._targetZoom,delete K._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ht,zoomDelta:yr-ye.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Qt.prototype._smoothOutEasing=function(K){var ye=e.ease;if(this._prevEase){var te=this._prevEase,xe=(e.browser.now()-te.start)/te.duration,We=te.easing(xe+.01)-te.easing(xe),He=.27/Math.sqrt(We*We+1e-4)*.01,st=Math.sqrt(.27*.27-He*He);ye=e.bezier(He,st,.25,1)}return this._prevEase={start:e.browser.now(),duration:K,easing:ye},ye},Qt.prototype.reset=function(){this._active=!1};var ra=function(K,ye){this._clickZoom=K,this._tapZoom=ye};ra.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},ra.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},ra.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},ra.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ta=function(){this.reset()};Ta.prototype.reset=function(){this._active=!1},Ta.prototype.dblclick=function(K,ye){return K.preventDefault(),{cameraAnimation:function(te){te.easeTo({duration:300,zoom:te.getZoom()+(K.shiftKey?-1:1),around:te.unproject(ye)},{originalEvent:K})}}},Ta.prototype.enable=function(){this._enabled=!0},Ta.prototype.disable=function(){this._enabled=!1,this.reset()},Ta.prototype.isEnabled=function(){return this._enabled},Ta.prototype.isActive=function(){return this._active};var si=function(){this._tap=new Va({numTouches:1,numTaps:1}),this.reset()};si.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},si.prototype.touchstart=function(K,ye,te){this._swipePoint||(this._tapTime&&K.timeStamp-this._tapTime>Dr&&this.reset(),this._tapTime?te.length>0&&(this._swipePoint=ye[0],this._swipeTouch=te[0].identifier):this._tap.touchstart(K,ye,te))},si.prototype.touchmove=function(K,ye,te){if(!this._tapTime)this._tap.touchmove(K,ye,te);else if(this._swipePoint){if(te[0].identifier!==this._swipeTouch)return;var xe=ye[0],We=xe.y-this._swipePoint.y;return this._swipePoint=xe,K.preventDefault(),this._active=!0,{zoomDelta:We/128}}},si.prototype.touchend=function(K,ye,te){if(this._tapTime)this._swipePoint&&te.length===0&&this.reset();else{var xe=this._tap.touchend(K,ye,te);xe&&(this._tapTime=K.timeStamp)}},si.prototype.touchcancel=function(){this.reset()},si.prototype.enable=function(){this._enabled=!0},si.prototype.disable=function(){this._enabled=!1,this.reset()},si.prototype.isEnabled=function(){return this._enabled},si.prototype.isActive=function(){return this._active};var wi=function(K,ye,te){this._el=K,this._mousePan=ye,this._touchPan=te};wi.prototype.enable=function(K){this._inertiaOptions=K||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},wi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},wi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},wi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xi=function(K,ye,te){this._pitchWithRotate=K.pitchWithRotate,this._mouseRotate=ye,this._mousePitch=te};xi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var bi=function(K,ye,te,xe){this._el=K,this._touchZoom=ye,this._touchRotate=te,this._tapDragZoom=xe,this._rotationDisabled=!1,this._enabled=!0};bi.prototype.enable=function(K){this._touchZoom.enable(K),this._rotationDisabled||this._touchRotate.enable(K),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},bi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},bi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},bi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},bi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},bi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Fi=function(ve){return ve.zoom||ve.drag||ve.pitch||ve.rotate},cn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K}(e.Event);function fn(ve){return ve.panDelta&&ve.panDelta.mag()||ve.zoomDelta||ve.bearingDelta||ve.pitchDelta}var Gi=function(K,ye){this._map=K,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new ql(K),this._bearingSnap=ye.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ye),e.bindAll(["handleEvent","handleWindowEvent"],this);var te=this._el;this._listeners=[[te,"touchstart",{passive:!0}],[te,"touchmove",{passive:!1}],[te,"touchend",void 0],[te,"touchcancel",void 0],[te,"mousedown",void 0],[te,"mousemove",void 0],[te,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[te,"mouseover",void 0],[te,"mouseout",void 0],[te,"dblclick",void 0],[te,"click",void 0],[te,"keydown",{capture:!1}],[te,"keyup",void 0],[te,"wheel",{passive:!1}],[te,"contextmenu",void 0],[e.window,"blur",void 0]];for(var xe=0,We=this._listeners;xest?Math.min(2,Gr):Math.max(.5,Gr),mi=Math.pow(Pi,1-Oa),Di=He.unproject(aa.add(Qr.mult(Oa*mi)).mult(ri));He.setLocationAtPoint(He.renderWorldCopies?Di.wrap():Di,Pr)}We._fireMoveEvents(xe)},function(Oa){We._afterEase(xe,Oa)},te),this},K.prototype._prepareEase=function(te,xe,We){We===void 0&&(We={}),this._moving=!0,!xe&&!We.moving&&this.fire(new e.Event("movestart",te)),this._zooming&&!We.zooming&&this.fire(new e.Event("zoomstart",te)),this._rotating&&!We.rotating&&this.fire(new e.Event("rotatestart",te)),this._pitching&&!We.pitching&&this.fire(new e.Event("pitchstart",te))},K.prototype._fireMoveEvents=function(te){this.fire(new e.Event("move",te)),this._zooming&&this.fire(new e.Event("zoom",te)),this._rotating&&this.fire(new e.Event("rotate",te)),this._pitching&&this.fire(new e.Event("pitch",te))},K.prototype._afterEase=function(te,xe){if(!(this._easeId&&xe&&this._easeId===xe)){delete this._easeId;var We=this._zooming,He=this._rotating,st=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,We&&this.fire(new e.Event("zoomend",te)),He&&this.fire(new e.Event("rotateend",te)),st&&this.fire(new e.Event("pitchend",te)),this.fire(new e.Event("moveend",te))}},K.prototype.flyTo=function(te,xe){var We=this;if(!te.essential&&e.browser.prefersReducedMotion){var He=e.pick(te,["center","zoom","bearing","pitch","around"]);return this.jumpTo(He,xe)}this.stop(),te=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},te);var st=this.transform,Et=this.getZoom(),Ht=this.getBearing(),yr=this.getPitch(),Ir=this.getPadding(),wr="zoom"in te?e.clamp(+te.zoom,st.minZoom,st.maxZoom):Et,qt="bearing"in te?this._normalizeBearing(te.bearing,Ht):Ht,tr="pitch"in te?+te.pitch:yr,dr="padding"in te?te.padding:st.padding,Pr=st.zoomScale(wr-Et),Vr=e.Point.convert(te.offset),Hr=st.centerPoint.add(Vr),aa=st.pointLocation(Hr),Qr=e.LngLat.convert(te.center||aa);this._normalizeCenter(Qr);var Gr=st.project(aa),ia=st.project(Qr).sub(Gr),Ur=te.curve,wa=Math.max(st.width,st.height),Oa=wa/Pr,ri=ia.mag();if("minZoom"in te){var Pi=e.clamp(Math.min(te.minZoom,Et,wr),st.minZoom,st.maxZoom),mi=wa/st.zoomScale(Pi-Et);Ur=Math.sqrt(mi/ri*2)}var Di=Ur*Ur;function An(qo){var Ls=(Oa*Oa-wa*wa+(qo?-1:1)*Di*Di*ri*ri)/(2*(qo?Oa:wa)*Di*ri);return Math.log(Math.sqrt(Ls*Ls+1)-Ls)}function ln(qo){return(Math.exp(qo)-Math.exp(-qo))/2}function Ii(qo){return(Math.exp(qo)+Math.exp(-qo))/2}function Wi(qo){return ln(qo)/Ii(qo)}var Hi=An(0),yn=function(qo){return Ii(Hi)/Ii(Hi+Ur*qo)},zn=function(qo){return wa*((Ii(Hi)*Wi(Hi+Ur*qo)-ln(Hi))/Di)/ri},ms=(An(1)-Hi)/Ur;if(Math.abs(ri)<1e-6||!isFinite(ms)){if(Math.abs(wa-Oa)<1e-6)return this.easeTo(te,xe);var us=Oate.maxDuration&&(te.duration=0),this._zooming=!0,this._rotating=Ht!==qt,this._pitching=tr!==yr,this._padding=!st.isPaddingEqual(dr),this._prepareEase(xe,!1),this._ease(function(qo){var Ls=qo*ms,wl=1/yn(Ls);st.zoom=qo===1?wr:Et+st.scaleZoom(wl),We._rotating&&(st.bearing=e.number(Ht,qt,qo)),We._pitching&&(st.pitch=e.number(yr,tr,qo)),We._padding&&(st.interpolatePadding(Ir,dr,qo),Hr=st.centerPoint.add(Vr));var Ru=qo===1?Qr:st.unproject(Gr.add(ia.mult(zn(Ls))).mult(wl));st.setLocationAtPoint(st.renderWorldCopies?Ru.wrap():Ru,Hr),We._fireMoveEvents(xe)},function(){return We._afterEase(xe)},te),this},K.prototype.isEasing=function(){return!!this._easeFrameId},K.prototype.stop=function(){return this._stop()},K.prototype._stop=function(te,xe){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var We=this._onEaseEnd;delete this._onEaseEnd,We.call(this,xe)}if(!te){var He=this.handlers;He&&He.stop(!1)}return this},K.prototype._ease=function(te,xe,We){We.animate===!1||We.duration===0?(te(1),xe()):(this._easeStart=e.browser.now(),this._easeOptions=We,this._onEaseFrame=te,this._onEaseEnd=xe,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},K.prototype._renderFrameCallback=function(){var te=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(te)),te<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},K.prototype._normalizeBearing=function(te,xe){te=e.wrap(te,-180,180);var We=Math.abs(te-xe);return Math.abs(te-360-xe)180?-360:We<-180?360:0}},K}(e.Evented),nn=function(K){K===void 0&&(K={}),this.options=K,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};nn.prototype.getDefaultPosition=function(){return"bottom-right"},nn.prototype.onAdd=function(K){var ye=this.options&&this.options.compact;return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),ye&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),ye===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},nn.prototype.onRemove=function(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},nn.prototype._setElementTitle=function(K,ye){var te=this._map._getUIString("AttributionControl."+ye);K.title=te,K.setAttribute("aria-label",te)},nn.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},nn.prototype._updateEditLink=function(){var K=this._editLink;K||(K=this._editLink=this._container.querySelector(".mapbox-improve-map"));var ye=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(K){var te=ye.reduce(function(xe,We,He){return We.value&&(xe+=We.key+"="+We.value+(He=0)return!1;return!0});var st=K.join(" | ");st!==this._attribHTML&&(this._attribHTML=st,K.length?(this._innerContainer.innerHTML=st,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},nn.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var on=function(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};on.prototype.onAdd=function(K){this._map=K,this._container=r.create("div","mapboxgl-ctrl");var ye=r.create("a","mapboxgl-ctrl-logo");return ye.target="_blank",ye.rel="noopener nofollow",ye.href="https://www.mapbox.com/",ye.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ye.setAttribute("rel","noopener nofollow"),this._container.appendChild(ye),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},on.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},on.prototype.getDefaultPosition=function(){return"bottom-left"},on.prototype._updateLogo=function(K){(!K||K.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},on.prototype._logoRequired=function(){if(this._map.style){var K=this._map.style.sourceCaches;for(var ye in K){var te=K[ye].getSource();if(te.mapbox_logo)return!0}return!1}},on.prototype._updateCompact=function(){var K=this._container.children;if(K.length){var ye=K[0];this._map.getCanvasContainer().offsetWidth<250?ye.classList.add("mapboxgl-compact"):ye.classList.remove("mapboxgl-compact")}};var Oi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Oi.prototype.add=function(K){var ye=++this._id,te=this._queue;return te.push({callback:K,id:ye,cancelled:!1}),ye},Oi.prototype.remove=function(K){for(var ye=this._currentlyRunning,te=ye?this._queue.concat(ye):this._queue,xe=0,We=te;xete.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(te.minPitch!=null&&te.maxPitch!=null&&te.minPitch>te.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(te.minPitch!=null&&te.minPitch_o)throw new Error("maxPitch must be less than or equal to "+_o);var We=new Zo(te.minZoom,te.maxZoom,te.minPitch,te.maxPitch,te.renderWorldCopies);if(ve.call(this,We,te),this._interactive=te.interactive,this._maxTileCacheSize=te.maxTileCacheSize,this._failIfMajorPerformanceCaveat=te.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=te.preserveDrawingBuffer,this._antialias=te.antialias,this._trackResize=te.trackResize,this._bearingSnap=te.bearingSnap,this._refreshExpiredTiles=te.refreshExpiredTiles,this._fadeDuration=te.fadeDuration,this._crossSourceCollisions=te.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=te.collectResourceTiming,this._renderTaskQueue=new Oi,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},ui,te.locale),this._clickTolerance=te.clickTolerance,this._requestManager=new e.RequestManager(te.transformRequest,te.accessToken),typeof te.container=="string"){if(this._container=e.window.document.getElementById(te.container),!this._container)throw new Error("Container '"+te.container+"' not found.")}else if(te.container instanceof tn)this._container=te.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(te.maxBounds&&this.setMaxBounds(te.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return xe._update(!1)}),this.on("moveend",function(){return xe._update(!1)}),this.on("zoom",function(){return xe._update(!0)}),typeof e.window<"u"&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Gi(this,te);var He=typeof te.hash=="string"&&te.hash||void 0;this._hash=te.hash&&new Xl(He).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:te.center,zoom:te.zoom,bearing:te.bearing,pitch:te.pitch}),te.bounds&&(this.resize(),this.fitBounds(te.bounds,e.extend({},te.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=te.localIdeographFontFamily,te.style&&this.setStyle(te.style,{localIdeographFontFamily:te.localIdeographFontFamily}),te.attributionControl&&this.addControl(new nn({customAttribution:te.customAttribution})),this.addControl(new on,te.logoPosition),this.on("style.load",function(){xe.transform.unmodified&&xe.jumpTo(xe.style.stylesheet)}),this.on("data",function(st){xe._update(st.dataType==="style"),xe.fire(new e.Event(st.dataType+"data",st))}),this.on("dataloading",function(st){xe.fire(new e.Event(st.dataType+"dataloading",st))})}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return K.prototype._getMapId=function(){return this._mapId},K.prototype.addControl=function(xe,We){if(We===void 0&&(xe.getDefaultPosition?We=xe.getDefaultPosition():We="top-right"),!xe||!xe.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var He=xe.onAdd(this);this._controls.push(xe);var st=this._controlPositions[We];return We.indexOf("bottom")!==-1?st.insertBefore(He,st.firstChild):st.appendChild(He),this},K.prototype.removeControl=function(xe){if(!xe||!xe.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var We=this._controls.indexOf(xe);return We>-1&&this._controls.splice(We,1),xe.onRemove(this),this},K.prototype.hasControl=function(xe){return this._controls.indexOf(xe)>-1},K.prototype.resize=function(xe){var We=this._containerDimensions(),He=We[0],st=We[1];this._resizeCanvas(He,st),this.transform.resize(He,st),this.painter.resize(He,st);var Et=!this._moving;return Et&&(this.stop(),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe))),this.fire(new e.Event("resize",xe)),Et&&this.fire(new e.Event("moveend",xe)),this},K.prototype.getBounds=function(){return this.transform.getBounds()},K.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},K.prototype.setMaxBounds=function(xe){return this.transform.setMaxBounds(e.LngLatBounds.convert(xe)),this._update()},K.prototype.setMinZoom=function(xe){if(xe=xe??qi,xe>=qi&&xe<=this.transform.maxZoom)return this.transform.minZoom=xe,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=xe,this._update(),this.getZoom()>xe&&this.setZoom(xe),this;throw new Error("maxZoom must be greater than the current minZoom")},K.prototype.getMaxZoom=function(){return this.transform.maxZoom},K.prototype.setMinPitch=function(xe){if(xe=xe??bn,xe=bn&&xe<=this.transform.maxPitch)return this.transform.minPitch=xe,this._update(),this.getPitch()_o)throw new Error("maxPitch must be less than or equal to "+_o);if(xe>=this.transform.minPitch)return this.transform.maxPitch=xe,this._update(),this.getPitch()>xe&&this.setPitch(xe),this;throw new Error("maxPitch must be greater than the current minPitch")},K.prototype.getMaxPitch=function(){return this.transform.maxPitch},K.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},K.prototype.setRenderWorldCopies=function(xe){return this.transform.renderWorldCopies=xe,this._update()},K.prototype.project=function(xe){return this.transform.locationPoint(e.LngLat.convert(xe))},K.prototype.unproject=function(xe){return this.transform.pointLocation(e.Point.convert(xe))},K.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},K.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},K.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},K.prototype._createDelegatedListener=function(xe,We,He){var st=this,Et;if(xe==="mouseenter"||xe==="mouseover"){var Ht=!1,yr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?Ht||(Ht=!0,He.call(st,new Re(xe,st,Pr.originalEvent,{features:Vr}))):Ht=!1},Ir=function(){Ht=!1};return{layer:We,listener:He,delegates:{mousemove:yr,mouseout:Ir}}}else if(xe==="mouseleave"||xe==="mouseout"){var wr=!1,qt=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?wr=!0:wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))},tr=function(Pr){wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))};return{layer:We,listener:He,delegates:{mousemove:qt,mouseout:tr}}}else{var dr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length&&(Pr.features=Vr,He.call(st,Pr),delete Pr.features)};return{layer:We,listener:He,delegates:(Et={},Et[xe]=dr,Et)}}},K.prototype.on=function(xe,We,He){if(He===void 0)return ve.prototype.on.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[xe]=this._delegatedListeners[xe]||[],this._delegatedListeners[xe].push(st);for(var Et in st.delegates)this.on(Et,st.delegates[Et]);return this},K.prototype.once=function(xe,We,He){if(He===void 0)return ve.prototype.once.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);for(var Et in st.delegates)this.once(Et,st.delegates[Et]);return this},K.prototype.off=function(xe,We,He){var st=this;if(He===void 0)return ve.prototype.off.call(this,xe,We);var Et=function(Ht){for(var yr=Ht[xe],Ir=0;Ir180;){var He=ye.locationPoint(ve);if(He.x>=0&&He.y>=0&&He.x<=ye.width&&He.y<=ye.height)break;ve.lng>ye.center.lng?ve.lng-=360:ve.lng+=360}return ve}var Ro={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function rs(ve,K,ye){var te=ve.classList;for(var xe in Ro)te.remove("mapboxgl-"+ye+"-anchor-"+xe);te.add("mapboxgl-"+ye+"-anchor-"+K)}var wn=function(ve){function K(ye,te){if(ve.call(this),(ye instanceof e.window.HTMLElement||te)&&(ye=e.extend({element:ye},te)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=ye&&ye.anchor||"center",this._color=ye&&ye.color||"#3FB1CE",this._scale=ye&&ye.scale||1,this._draggable=ye&&ye.draggable||!1,this._clickTolerance=ye&&ye.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=ye&&ye.rotation||0,this._rotationAlignment=ye&&ye.rotationAlignment||"auto",this._pitchAlignment=ye&&ye.pitchAlignment&&ye.pitchAlignment!=="auto"?ye.pitchAlignment:this._rotationAlignment,!ye||!ye.element){this._defaultMarker=!0,this._element=r.create("div"),this._element.setAttribute("aria-label","Map marker");var xe=r.createNS("http://www.w3.org/2000/svg","svg"),We=41,He=27;xe.setAttributeNS(null,"display","block"),xe.setAttributeNS(null,"height",We+"px"),xe.setAttributeNS(null,"width",He+"px"),xe.setAttributeNS(null,"viewBox","0 0 "+He+" "+We);var st=r.createNS("http://www.w3.org/2000/svg","g");st.setAttributeNS(null,"stroke","none"),st.setAttributeNS(null,"stroke-width","1"),st.setAttributeNS(null,"fill","none"),st.setAttributeNS(null,"fill-rule","evenodd");var Et=r.createNS("http://www.w3.org/2000/svg","g");Et.setAttributeNS(null,"fill-rule","nonzero");var Ht=r.createNS("http://www.w3.org/2000/svg","g");Ht.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Ht.setAttributeNS(null,"fill","#000000");for(var yr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Ir=0,wr=yr;Ir=xe}this._isDragging&&(this._pos=te.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))},K.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new e.Event("dragend")),this._state="inactive"},K.prototype._addDragHandler=function(te){this._element.contains(te.originalEvent.target)&&(te.preventDefault(),this._positionDelta=te.point.sub(this._pos).add(this._offset),this._pointerdownPos=te.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},K.prototype.setDraggable=function(te){return this._draggable=!!te,this._map&&(te?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},K.prototype.isDraggable=function(){return this._draggable},K.prototype.setRotation=function(te){return this._rotation=te||0,this._update(),this},K.prototype.getRotation=function(){return this._rotation},K.prototype.setRotationAlignment=function(te){return this._rotationAlignment=te||"auto",this._update(),this},K.prototype.getRotationAlignment=function(){return this._rotationAlignment},K.prototype.setPitchAlignment=function(te){return this._pitchAlignment=te&&te!=="auto"?te:this._rotationAlignment,this._update(),this},K.prototype.getPitchAlignment=function(){return this._pitchAlignment},K}(e.Evented),oo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Xo;function os(ve){Xo!==void 0?ve(Xo):e.window.navigator.permissions!==void 0?e.window.navigator.permissions.query({name:"geolocation"}).then(function(K){Xo=K.state!=="denied",ve(Xo)}):(Xo=!!e.window.navigator.geolocation,ve(Xo))}var As=0,$l=!1,Uc=function(ve){function K(ye){ve.call(this),this.options=e.extend({},oo,ye),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){return this._map=te,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),os(this._setupUI),this._container},K.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,As=0,$l=!1},K.prototype._isOutOfMapMaxBounds=function(te){var xe=this._map.getMaxBounds(),We=te.coords;return xe&&(We.longitudexe.getEast()||We.latitudexe.getNorth())},K.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},K.prototype._onSuccess=function(te){if(this._map){if(this._isOutOfMapMaxBounds(te)){this._setErrorState(),this.fire(new e.Event("outofmaxbounds",te)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=te,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(te),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(te),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",te)),this._finish()}},K.prototype._updateCamera=function(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude),We=te.coords.accuracy,He=this._map.getBearing(),st=e.extend({bearing:He},this.options.fitBoundsOptions);this._map.fitBounds(xe.toBounds(We),st,{geolocateSource:!0})},K.prototype._updateMarker=function(te){if(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude);this._accuracyCircleMarker.setLngLat(xe).addTo(this._map),this._userLocationDotMarker.setLngLat(xe).addTo(this._map),this._accuracy=te.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},K.prototype._updateCircleRadius=function(){var te=this._map._container.clientHeight/2,xe=this._map.unproject([0,te]),We=this._map.unproject([1,te]),He=xe.distanceTo(We),st=Math.ceil(2*this._accuracy/He);this._circleElement.style.width=st+"px",this._circleElement.style.height=st+"px"},K.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},K.prototype._onError=function(te){if(this._map){if(this.options.trackUserLocation)if(te.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var xe=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=xe,this._geolocateButton.setAttribute("aria-label",xe),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(te.code===3&&$l)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",te)),this._finish()}},K.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},K.prototype._setupUI=function(te){var xe=this;if(this._container.addEventListener("contextmenu",function(st){return st.preventDefault()}),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",te===!1){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var We=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=We,this._geolocateButton.setAttribute("aria-label",We)}else{var He=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=He,this._geolocateButton.setAttribute("aria-label",He)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new wn(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new wn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(st){var Et=st.originalEvent&&st.originalEvent.type==="resize";!st.geolocateSource&&xe._watchState==="ACTIVE_LOCK"&&!Et&&(xe._watchState="BACKGROUND",xe._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),xe._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),xe.fire(new e.Event("trackuserlocationend")))})},K.prototype.trigger=function(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":As--,$l=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),As++;var te;As>1?(te={maximumAge:6e5,timeout:0},$l=!0):(te=this.options.positionOptions,$l=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,te)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},K.prototype._clearWatch=function(){e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},K}(e.Evented),Ws={maxWidth:100,unit:"metric"},jc=function(K){this.options=e.extend({},Ws,K),e.bindAll(["_onMove","setUnit"],this)};jc.prototype.getDefaultPosition=function(){return"bottom-left"},jc.prototype._onMove=function(){Ol(this._map,this._container,this.options)},jc.prototype.onAdd=function(K){return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",K.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},jc.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},jc.prototype.setUnit=function(K){this.options.unit=K,Ol(this._map,this._container,this.options)};function Ol(ve,K,ye){var te=ye&&ye.maxWidth||100,xe=ve._container.clientHeight/2,We=ve.unproject([0,xe]),He=ve.unproject([te,xe]),st=We.distanceTo(He);if(ye&&ye.unit==="imperial"){var Et=3.2808*st;if(Et>5280){var Ht=Et/5280;vc(K,te,Ht,ve._getUIString("ScaleControl.Miles"))}else vc(K,te,Et,ve._getUIString("ScaleControl.Feet"))}else if(ye&&ye.unit==="nautical"){var yr=st/1852;vc(K,te,yr,ve._getUIString("ScaleControl.NauticalMiles"))}else st>=1e3?vc(K,te,st/1e3,ve._getUIString("ScaleControl.Kilometers")):vc(K,te,st,ve._getUIString("ScaleControl.Meters"))}function vc(ve,K,ye,te){var xe=rf(ye),We=xe/ye;ve.style.width=K*We+"px",ve.innerHTML=xe+" "+te}function mc(ve){var K=Math.pow(10,Math.ceil(-Math.log(ve)/Math.LN10));return Math.round(ve*K)/K}function rf(ve){var K=Math.pow(10,(""+Math.floor(ve)).length-1),ye=ve/K;return ye=ye>=10?10:ye>=5?5:ye>=3?3:ye>=2?2:ye>=1?1:mc(ye),K*ye}var Yl=function(K){this._fullscreen=!1,K&&K.container&&(K.container instanceof e.window.HTMLElement?this._container=K.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};Yl.prototype.onAdd=function(K){return this._map=K,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Yl.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},Yl.prototype._setupUI=function(){var K=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",K).setAttribute("aria-hidden",!0),K.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._updateTitle=function(){var K=this._getTitle();this._fullscreenButton.setAttribute("aria-label",K),this._fullscreenButton.title=K},Yl.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Yl.prototype._isFullscreen=function(){return this._fullscreen},Yl.prototype._changeIcon=function(){var K=e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.window.document.msFullscreenElement;K===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Yl.prototype._onClickFullscreen=function(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Mc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ds=function(ve){function K(ye){ve.call(this),this.options=e.extend(Object.create(Mc),ye),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this._map&&this.remove(),this._map=te,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this},K.prototype.isOpen=function(){return!!this._map},K.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new e.Event("close")),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},K.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},K.prototype.getElement=function(){return this._container},K.prototype.setText=function(te){return this.setDOMContent(e.window.document.createTextNode(te))},K.prototype.setHTML=function(te){var xe=e.window.document.createDocumentFragment(),We=e.window.document.createElement("body"),He;for(We.innerHTML=te;He=We.firstChild,!!He;)xe.appendChild(He);return this.setDOMContent(xe)},K.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},K.prototype.setMaxWidth=function(te){return this.options.maxWidth=te,this._update(),this},K.prototype.setDOMContent=function(te){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(te),this._createCloseButton(),this._update(),this._focusFirstElement(),this},K.prototype.addClassName=function(te){this._container&&this._container.classList.add(te)},K.prototype.removeClassName=function(te){this._container&&this._container.classList.remove(te)},K.prototype.setOffset=function(te){return this.options.offset=te,this._update(),this},K.prototype.toggleClassName=function(te){if(this._container)return this._container.classList.toggle(te)},K.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=r.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},K.prototype._onMouseUp=function(te){this._update(te.point)},K.prototype._onMouseMove=function(te){this._update(te.point)},K.prototype._onDrag=function(te){this._update(te.point)},K.prototype._update=function(te){var xe=this,We=this._lngLat||this._trackPointer;if(!(!this._map||!We||!this._content)&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(qt){return xe._container.classList.add(qt)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!te))){var He=this._pos=this._trackPointer&&te?te:this._map.project(this._lngLat),st=this.options.anchor,Et=af(this.options.offset);if(!st){var Ht=this._container.offsetWidth,yr=this._container.offsetHeight,Ir;He.y+Et.bottom.ythis._map.transform.height-yr?Ir=["bottom"]:Ir=[],He.xthis._map.transform.width-Ht/2&&Ir.push("right"),Ir.length===0?st="bottom":st=Ir.join("-")}var wr=He.add(Et[st]).round();r.setTransform(this._container,Ro[st]+" translate("+wr.x+"px,"+wr.y+"px)"),rs(this._container,st,"popup")}},K.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var te=this._container.querySelector(Vc);te&&te.focus()}},K.prototype._onClose=function(){this.remove()},K}(e.Evented);function af(ve){if(ve)if(typeof ve=="number"){var K=Math.round(Math.sqrt(.5*Math.pow(ve,2)));return{center:new e.Point(0,0),top:new e.Point(0,ve),"top-left":new e.Point(K,K),"top-right":new e.Point(-K,K),bottom:new e.Point(0,-ve),"bottom-left":new e.Point(K,-K),"bottom-right":new e.Point(-K,-K),left:new e.Point(ve,0),right:new e.Point(-ve,0)}}else if(ve instanceof e.Point||Array.isArray(ve)){var ye=e.Point.convert(ve);return{center:ye,top:ye,"top-left":ye,"top-right":ye,bottom:ye,"bottom-left":ye,"bottom-right":ye,left:ye,right:ye}}else return{center:e.Point.convert(ve.center||[0,0]),top:e.Point.convert(ve.top||[0,0]),"top-left":e.Point.convert(ve["top-left"]||[0,0]),"top-right":e.Point.convert(ve["top-right"]||[0,0]),bottom:e.Point.convert(ve.bottom||[0,0]),"bottom-left":e.Point.convert(ve["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(ve["bottom-right"]||[0,0]),left:e.Point.convert(ve.left||[0,0]),right:e.Point.convert(ve.right||[0,0])};else return af(new e.Point(0,0))}var Cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Ui,NavigationControl:xn,GeolocateControl:Uc,AttributionControl:nn,ScaleControl:jc,FullscreenControl:Yl,Popup:Ds,Marker:wn,Style:Jl,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:Er,clearPrewarmedResources:kr,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(ve){e.config.ACCESS_TOKEN=ve},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(ve){e.config.API_URL=ve},get workerCount(){return ya.workerCount},set workerCount(ve){ya.workerCount=ve},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(ve){e.config.MAX_PARALLEL_IMAGE_REQUESTS=ve},clearStorage:function(K){e.clearTileCache(K)},workerUrl:""};return Cs}),A})}}),$V=Ye({"src/plots/mapbox/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=wk(),M=am();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapboxLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapboxLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s0){for(var s=0;s0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),QV=Ye({"src/plots/mapbox/mapbox.js"(X,H){"use strict";var g=Tk(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=am(),p=$V();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y=b[u.id];u.map&&y.accesstoken!==u.accessToken&&(u.map.remove(),u.map=null,u.styleObj=null,u.traceHash={},u.layerList=[]);var f;u.map?f=new Promise(function(P,L){u.updateMap(m,b,P,L)}):f=new Promise(function(P,L){u.createMap(m,b,P,L)}),d.push(f)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style,b);y.accessToken=f.accesstoken;var L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0}));F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var B=[];B.push(new Promise(function(O){F.once("load",O)})),B=B.concat(A.fetchTraceGeoData(m)),Promise.all(B).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style,b);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y1)for(y=0;y-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;yB/2){var O=P.split("|").join("
");z.text(O).attr("data-unformatted",O).call(o.convertToTspans,p),F=r.bBox(z.node())}z.attr("transform",x(-3,-F.height+8)),L.insert("rect",".static-attribution").attr({x:-F.width-6,y:-F.height-3,width:F.width+6,height:F.height+3,fill:"rgba(255, 255, 255, 0.75)"});var I=1;F.width+6>B&&(I=B/(F.width+6));var N=[_.l+_.w*E.x[1],_.t+_.h*(1-E.y[0])];L.attr("transform",x(N[0],N[1])+A(I))}};function h(p,T){var l=p._fullLayout,_=p._context;if(_.mapboxAccessToken==="")return"";for(var w=[],S=[],E=!1,m=!1,b=0;b1&&g.warn(n.multipleTokensErrorMsg),w[0]):(S.length&&g.log(["Listed mapbox access token(s)",S.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function v(p){return typeof p=="string"&&(n.styleValuesMapbox.indexOf(p)!==-1||p.indexOf("mapbox://")===0||p.indexOf("stamen")===0)}X.updateFx=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=0;_=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),nq=Ye({"src/traces/choroplethmapbox/index.js"(X,H){"use strict";var g=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Ak(),supplyDefaults:aq(),colorbar:ag(),calc:sT(),plot:iq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.updateOnSelect(A)}},getBelow:function(x,A){for(var M=A.getMapLayers(),e=M.length-2;e>=0;e--){var t=M[e].id;if(typeof t=="string"&&t.indexOf("water")===0){for(var r=e+1;r0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),fq=Ye({"src/traces/densitymapbox/hover.js"(X,H){"use strict";var g=Co(),x=AT().hoverPoints,A=AT().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),hq=Ye({"src/traces/densitymapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),pq=Ye({"src/traces/densitymapbox/index.js"(X,H){"use strict";var g=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Mk(),supplyDefaults:sq(),colorbar:ag(),formatLabels:bk(),calc:lq(),plot:cq(),hoverPoints:fq(),eventData:hq(),getBelow:function(x,A){for(var M=A.getMapLayers(),e=0;eESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} +{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin} +{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} +{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),mq=Ye({"src/plots/map/styles/arcgis-sat.js"(X,H){H.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),_g=Ye({"src/plots/map/constants.js"(X,H){"use strict";var g=Km(),x=vq(),A=mq(),M='\xA9 OpenStreetMap contributors',e="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",t="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",a="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",i="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",n={basic:r,streets:r,outdoors:r,light:e,dark:t,satellite:A,"satellite-streets":x,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:M,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":e,"carto-darkmatter":t,"carto-voyager":r,"carto-positron-nolabels":o,"carto-darkmatter-nolabels":a,"carto-voyager-nolabels":i},s=g(n);H.exports={styleValueDflt:"basic",stylesMap:n,styleValuesMap:s,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",s.join(", "),"or use a tile service."].join(` +`),mapOnErrorMsg:"Map error."}}}),Mx=Ye({"src/plots/map/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=_g(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("map",".layers",!0)],domain:A({name:"map"}),style:{valType:"any",values:o.styleValuesMap,dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),MT=Ye({"src/traces/scattermap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Mx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Mx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),Ek=Ye({"src/traces/scattermap/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),gq=Ye({"src/traces/scattermap/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=MT(),o=Ek().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),kk=Ye({"src/traces/scattermap/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),Ck=Ye({"src/plots/map/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),yq=Ye({"src/traces/scattermap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=Ek().isSupportedFont,i=Ck(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),_q=Ye({"src/traces/scattermap/plot.js"(X,H){"use strict";var g=ta(),x=yq(),A=_g().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermap",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("
")}H.exports={hoverPoints:r,getExtraText:o}}}),xq=Ye({"src/traces/scattermap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),bq=Ye({"src/traces/scattermap/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var c=r(n);let h,v;function p(){return h==null&&(h=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),h}function T(){if(v==null&&(v=!1,p())){let D=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(D){for(let pe=0;pe<5*5;pe++){let Ce=4*pe;D.fillStyle=`rgb(${Ce},${Ce+1},${Ce+2})`,D.fillRect(pe%5,Math.floor(pe/5),1,1)}let Y=D.getImageData(0,0,5,5).data;for(let pe=0;pe<5*5*4;pe++)if(pe%4!=3&&Y[pe]!==pe){v=!0;break}}}return v||!1}function l(q,D,Y,pe){let Ce=new c(q,D,Y,pe);return Ue=>Ce.solve(Ue)}let _=l(.25,.1,.25,1);function w(q,D,Y){return Math.min(Y,Math.max(D,q))}function S(q,D,Y){let pe=Y-D,Ce=((q-D)%pe+pe)%pe+D;return Ce===D?Y:Ce}function E(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}let m=1;function b(q,D,Y){let pe={};for(let Ce in q)pe[Ce]=D.call(this,q[Ce],Ce,q);return pe}function d(q,D,Y){let pe={};for(let Ce in q)D.call(this,q[Ce],Ce,q)&&(pe[Ce]=q[Ce]);return pe}function u(q){return Array.isArray(q)?q.map(u):typeof q=="object"&&q?b(q,u):q}let y={};function f(q){y[q]||(typeof console<"u"&&console.warn(q),y[q]=!0)}function P(q,D,Y){return(Y.y-q.y)*(D.x-q.x)>(D.y-q.y)*(Y.x-q.x)}function L(q){return typeof WorkerGlobalScope<"u"&&q!==void 0&&q instanceof WorkerGlobalScope}let z=null;function F(q){return typeof ImageBitmap<"u"&&q instanceof ImageBitmap}let B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function O(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let Ue=new VideoFrame(q,{timestamp:0});try{let Ge=Ue?.format;if(!Ge||!Ge.startsWith("BGR")&&!Ge.startsWith("RGB"))throw new Error(`Unrecognized format ${Ge}`);let ut=Ge.startsWith("BGR"),Tt=new Uint8ClampedArray(pe*Ce*4);if(yield Ue.copyTo(Tt,function(Ft,$t,lr,Ar,zr){let Kr=4*Math.max(-$t,0),la=(Math.max(0,lr)-lr)*Ar*4+Kr,za=4*Ar,ja=Math.max(0,$t),gi=Math.max(0,lr);return{rect:{x:ja,y:gi,width:Math.min(Ft.width,$t+Ar)-ja,height:Math.min(Ft.height,lr+zr)-gi},layout:[{offset:la,stride:za}]}}(q,D,Y,pe,Ce)),ut)for(let Ft=0;FtL(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,$=function(q,D){if(/:\/\//.test(q.url)&&!/^https?:|^file:/.test(q.url)){let pe=ue(q.url);if(pe)return pe(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,targetMapId:se},D)}if(!(/^file:/.test(Y=q.url)||/^file:/.test(G())&&!/^\w+:/.test(Y))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(pe,Ce){return t(this,void 0,void 0,function*(){let Ue=new Request(pe.url,{method:pe.method||"GET",body:pe.body,credentials:pe.credentials,headers:pe.headers,cache:pe.cache,referrer:G(),signal:Ce.signal});pe.type!=="json"||Ue.headers.has("Accept")||Ue.headers.set("Accept","application/json");let Ge=yield fetch(Ue);if(!Ge.ok){let Ft=yield Ge.blob();throw new he(Ge.status,Ge.statusText,pe.url,Ft)}let ut;ut=pe.type==="arrayBuffer"||pe.type==="image"?Ge.arrayBuffer():pe.type==="json"?Ge.json():Ge.text();let Tt=yield ut;if(Ce.signal.aborted)throw W();return{data:Tt,cacheControl:Ge.headers.get("Cache-Control"),expires:Ge.headers.get("Expires")}})}(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,mustQueue:!0,targetMapId:se},D)}var Y;return function(pe,Ce){return new Promise((Ue,Ge)=>{var ut;let Tt=new XMLHttpRequest;Tt.open(pe.method||"GET",pe.url,!0),pe.type!=="arrayBuffer"&&pe.type!=="image"||(Tt.responseType="arraybuffer");for(let Ft in pe.headers)Tt.setRequestHeader(Ft,pe.headers[Ft]);pe.type==="json"&&(Tt.responseType="text",!((ut=pe.headers)===null||ut===void 0)&&ut.Accept||Tt.setRequestHeader("Accept","application/json")),Tt.withCredentials=pe.credentials==="include",Tt.onerror=()=>{Ge(new Error(Tt.statusText))},Tt.onload=()=>{if(!Ce.signal.aborted)if((Tt.status>=200&&Tt.status<300||Tt.status===0)&&Tt.response!==null){let Ft=Tt.response;if(pe.type==="json")try{Ft=JSON.parse(Tt.response)}catch($t){return void Ge($t)}Ue({data:Ft,cacheControl:Tt.getResponseHeader("Cache-Control"),expires:Tt.getResponseHeader("Expires")})}else{let Ft=new Blob([Tt.response],{type:Tt.getResponseHeader("Content-Type")});Ge(new he(Tt.status,Tt.statusText,pe.url,Ft))}},Ce.signal.addEventListener("abort",()=>{Tt.abort(),Ge(W())}),Tt.send(pe.body)})}(q,D)};function J(q){if(!q||q.indexOf("://")<=0||q.indexOf("data:image/")===0||q.indexOf("blob:")===0)return!0;let D=new URL(q),Y=window.location;return D.protocol===Y.protocol&&D.host===Y.host}function Z(q,D,Y){Y[q]&&Y[q].indexOf(D)!==-1||(Y[q]=Y[q]||[],Y[q].push(D))}function re(q,D,Y){if(Y&&Y[q]){let pe=Y[q].indexOf(D);pe!==-1&&Y[q].splice(pe,1)}}class ne{constructor(D,Y={}){E(this,Y),this.type=D}}class j extends ne{constructor(D,Y={}){super("error",E({error:D},Y))}}class ee{on(D,Y){return this._listeners=this._listeners||{},Z(D,Y,this._listeners),this}off(D,Y){return re(D,Y,this._listeners),re(D,Y,this._oneTimeListeners),this}once(D,Y){return Y?(this._oneTimeListeners=this._oneTimeListeners||{},Z(D,Y,this._oneTimeListeners),this):new Promise(pe=>this.once(D,pe))}fire(D,Y){typeof D=="string"&&(D=new ne(D,Y||{}));let pe=D.type;if(this.listens(pe)){D.target=this;let Ce=this._listeners&&this._listeners[pe]?this._listeners[pe].slice():[];for(let ut of Ce)ut.call(this,D);let Ue=this._oneTimeListeners&&this._oneTimeListeners[pe]?this._oneTimeListeners[pe].slice():[];for(let ut of Ue)re(pe,ut,this._oneTimeListeners),ut.call(this,D);let Ge=this._eventedParent;Ge&&(E(D,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Ge.fire(D))}else D instanceof j&&console.error(D.error);return this}listens(D){return this._listeners&&this._listeners[D]&&this._listeners[D].length>0||this._oneTimeListeners&&this._oneTimeListeners[D]&&this._oneTimeListeners[D].length>0||this._eventedParent&&this._eventedParent.listens(D)}setEventedParent(D,Y){return this._eventedParent=D,this._eventedParentData=Y,this}}var ie={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let fe=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function be(q,D){let Y={};for(let pe in q)pe!=="ref"&&(Y[pe]=q[pe]);return fe.forEach(pe=>{pe in D&&(Y[pe]=D[pe])}),Y}function Ae(q,D){if(Array.isArray(q)){if(!Array.isArray(D)||q.length!==D.length)return!1;for(let Y=0;Y`:q.itemType.kind==="value"?"array":`array<${D}>`}return q.kind}let Ne=[nt,Qe,Ct,St,Ot,Cr,jt,Fe(ur),vr,_r,yt];function Ee(q,D){if(D.kind==="error")return null;if(q.kind==="array"){if(D.kind==="array"&&(D.N===0&&D.itemType.kind==="value"||!Ee(q.itemType,D.itemType))&&(typeof q.N!="number"||q.N===D.N))return null}else{if(q.kind===D.kind)return null;if(q.kind==="value"){for(let Y of Ne)if(!Ee(Y,D))return null}}return`Expected ${Ke(q)} but found ${Ke(D)} instead.`}function Ve(q,D){return D.some(Y=>Y.kind===q.kind)}function ke(q,D){return D.some(Y=>Y==="null"?q===null:Y==="array"?Array.isArray(q):Y==="object"?q&&!Array.isArray(q)&&typeof q=="object":Y===typeof q)}function Te(q,D){return q.kind==="array"&&D.kind==="array"?q.itemType.kind===D.itemType.kind&&typeof q.N=="number":q.kind===D.kind}let Le=.96422,rt=.82521,dt=4/29,xt=6/29,It=3*xt*xt,Bt=xt*xt*xt,Gt=Math.PI/180,Kt=180/Math.PI;function sr(q){return(q%=360)<0&&(q+=360),q}function sa([q,D,Y,pe]){let Ce,Ue,Ge=La((.2225045*(q=Aa(q))+.7168786*(D=Aa(D))+.0606169*(Y=Aa(Y)))/1);q===D&&D===Y?Ce=Ue=Ge:(Ce=La((.4360747*q+.3850649*D+.1430804*Y)/Le),Ue=La((.0139322*q+.0971045*D+.7141733*Y)/rt));let ut=116*Ge-16;return[ut<0?0:ut,500*(Ce-Ge),200*(Ge-Ue),pe]}function Aa(q){return q<=.04045?q/12.92:Math.pow((q+.055)/1.055,2.4)}function La(q){return q>Bt?Math.pow(q,1/3):q/It+dt}function ka([q,D,Y,pe]){let Ce=(q+16)/116,Ue=isNaN(D)?Ce:Ce+D/500,Ge=isNaN(Y)?Ce:Ce-Y/200;return Ce=1*Ma(Ce),Ue=Le*Ma(Ue),Ge=rt*Ma(Ge),[Ga(3.1338561*Ue-1.6168667*Ce-.4906146*Ge),Ga(-.9787684*Ue+1.9161415*Ce+.033454*Ge),Ga(.0719453*Ue-.2289914*Ce+1.4052427*Ge),pe]}function Ga(q){return(q=q<=.00304?12.92*q:1.055*Math.pow(q,1/2.4)-.055)<0?0:q>1?1:q}function Ma(q){return q>xt?q*q*q:It*(q-dt)}function Ua(q){return parseInt(q.padEnd(2,q),16)/255}function ni(q,D){return Wt(D?q/100:q,0,1)}function Wt(q,D,Y){return Math.min(Math.max(D,q),Y)}function zt(q){return!q.some(Number.isNaN)}let Vt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Ut{constructor(D,Y,pe,Ce=1,Ue=!0){this.r=D,this.g=Y,this.b=pe,this.a=Ce,Ue||(this.r*=Ce,this.g*=Ce,this.b*=Ce,Ce||this.overwriteGetter("rgb",[D,Y,pe,Ce]))}static parse(D){if(D instanceof Ut)return D;if(typeof D!="string")return;let Y=function(pe){if((pe=pe.toLowerCase().trim())==="transparent")return[0,0,0,0];let Ce=Vt[pe];if(Ce){let[Ge,ut,Tt]=Ce;return[Ge/255,ut/255,Tt/255,1]}if(pe.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(pe)){let Ge=pe.length<6?1:2,ut=1;return[Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+Ge)||"ff")]}if(pe.startsWith("rgb")){let Ge=pe.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ge){let[ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi]=Ge,ei=[$t||" ",zr||" ",za].join("");if(ei===" "||ei===" /"||ei===",,"||ei===",,,"){let hi=[Ft,Ar,la].join(""),Ei=hi==="%%%"?100:hi===""?255:0;if(Ei){let En=[Wt(+Tt/Ei,0,1),Wt(+lr/Ei,0,1),Wt(+Kr/Ei,0,1),ja?ni(+ja,gi):1];if(zt(En))return En}}return}}let Ue=pe.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ue){let[Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr]=Ue,la=[Tt||" ",$t||" ",Ar].join("");if(la===" "||la===" /"||la===",,"||la===",,,"){let za=[+ut,Wt(+Ft,0,100),Wt(+lr,0,100),zr?ni(+zr,Kr):1];if(zt(za))return function([ja,gi,ei,hi]){function Ei(En){let fo=(En+ja/30)%12,ss=gi*Math.min(ei,1-ei);return ei-ss*Math.max(-1,Math.min(fo-3,9-fo,1))}return ja=sr(ja),gi/=100,ei/=100,[Ei(0),Ei(8),Ei(4),hi]}(za)}}}(D);return Y?new Ut(...Y,!1):void 0}get rgb(){let{r:D,g:Y,b:pe,a:Ce}=this,Ue=Ce||1/0;return this.overwriteGetter("rgb",[D/Ue,Y/Ue,pe/Ue,Ce])}get hcl(){return this.overwriteGetter("hcl",function(D){let[Y,pe,Ce,Ue]=sa(D),Ge=Math.sqrt(pe*pe+Ce*Ce);return[Math.round(1e4*Ge)?sr(Math.atan2(Ce,pe)*Kt):NaN,Ge,Y,Ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",sa(this.rgb))}overwriteGetter(D,Y){return Object.defineProperty(this,D,{value:Y}),Y}toString(){let[D,Y,pe,Ce]=this.rgb;return`rgba(${[D,Y,pe].map(Ue=>Math.round(255*Ue)).join(",")},${Ce})`}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1);class xr{constructor(D,Y,pe){this.sensitivity=D?Y?"variant":"case":Y?"accent":"base",this.locale=pe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(D,Y){return this.collator.compare(D,Y)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(D,Y,pe,Ce,Ue){this.text=D,this.image=Y,this.scale=pe,this.fontStack=Ce,this.textColor=Ue}}class pa{constructor(D){this.sections=D}static fromString(D){return new pa([new Zr(D,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(D=>D.text.length!==0||D.image&&D.image.name.length!==0)}static factory(D){return D instanceof pa?D:pa.fromString(D)}toString(){return this.sections.length===0?"":this.sections.map(D=>D.text).join("")}}class Xr{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Xr)return D;if(typeof D=="number")return new Xr([D,D,D,D]);if(Array.isArray(D)&&!(D.length<1||D.length>4)){for(let Y of D)if(typeof Y!="number")return;switch(D.length){case 1:D=[D[0],D[0],D[0],D[0]];break;case 2:D=[D[0],D[1],D[0],D[1]];break;case 3:D=[D[0],D[1],D[2],D[1]]}return new Xr(D)}}toString(){return JSON.stringify(this.values)}}let Ea=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Fa{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Fa)return D;if(Array.isArray(D)&&!(D.length<1)&&D.length%2==0){for(let Y=0;Y=0&&q<=255&&typeof D=="number"&&D>=0&&D<=255&&typeof Y=="number"&&Y>=0&&Y<=255?pe===void 0||typeof pe=="number"&&pe>=0&&pe<=1?null:`Invalid rgba value [${[q,D,Y,pe].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof pe=="number"?[q,D,Y,pe]:[q,D,Y]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function $a(q){if(q===null||typeof q=="string"||typeof q=="boolean"||typeof q=="number"||q instanceof Ut||q instanceof xr||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa)return!0;if(Array.isArray(q)){for(let D of q)if(!$a(D))return!1;return!0}if(typeof q=="object"){for(let D in q)if(!$a(q[D]))return!1;return!0}return!1}function mt(q){if(q===null)return nt;if(typeof q=="string")return Ct;if(typeof q=="boolean")return St;if(typeof q=="number")return Qe;if(q instanceof Ut)return Ot;if(q instanceof xr)return ar;if(q instanceof pa)return Cr;if(q instanceof Xr)return vr;if(q instanceof Fa)return yt;if(q instanceof qa)return _r;if(Array.isArray(q)){let D=q.length,Y;for(let pe of q){let Ce=mt(pe);if(Y){if(Y===Ce)continue;Y=ur;break}Y=Ce}return Fe(Y||ur,D)}return jt}function gt(q){let D=typeof q;return q===null?"":D==="string"||D==="number"||D==="boolean"?String(q):q instanceof Ut||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa?q.toString():JSON.stringify(q)}class Er{constructor(D,Y){this.type=D,this.value=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'literal' expression requires exactly one argument, but found ${D.length-1} instead.`);if(!$a(D[1]))return Y.error("invalid value");let pe=D[1],Ce=mt(pe),Ue=Y.expectedType;return Ce.kind!=="array"||Ce.N!==0||!Ue||Ue.kind!=="array"||typeof Ue.N=="number"&&Ue.N!==0||(Ce=Ue),new Er(Ce,pe)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class kr{constructor(D){this.name="ExpressionEvaluationError",this.message=D}toJSON(){return this.message}}let br={string:Ct,number:Qe,boolean:St,object:jt};class Tr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe,Ce=1,Ue=D[0];if(Ue==="array"){let ut,Tt;if(D.length>2){let Ft=D[1];if(typeof Ft!="string"||!(Ft in br)||Ft==="object")return Y.error('The item type argument of "array" must be one of string, number, boolean',1);ut=br[Ft],Ce++}else ut=ur;if(D.length>3){if(D[2]!==null&&(typeof D[2]!="number"||D[2]<0||D[2]!==Math.floor(D[2])))return Y.error('The length argument to "array" must be a positive integer literal',2);Tt=D[2],Ce++}pe=Fe(ut,Tt)}else{if(!br[Ue])throw new Error(`Types doesn't contain name = ${Ue}`);pe=br[Ue]}let Ge=[];for(;CeD.outputDefined())}}let Mr={"to-boolean":St,"to-color":Ot,"to-number":Qe,"to-string":Ct};class Fr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[0];if(!Mr[pe])throw new Error(`Can't parse ${pe} as it is not part of the known types`);if((pe==="to-boolean"||pe==="to-string")&&D.length!==2)return Y.error("Expected one argument.");let Ce=Mr[pe],Ue=[];for(let Ge=1;Ge4?`Invalid rbga value ${JSON.stringify(Y)}: expected an array containing either three or four numeric values.`:ya(Y[0],Y[1],Y[2],Y[3]),!pe))return new Ut(Y[0]/255,Y[1]/255,Y[2]/255,Y[3])}throw new kr(pe||`Could not parse color from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"padding":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Xr.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse padding from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"variableAnchorOffsetCollection":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Fa.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse variableAnchorOffsetCollection from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"number":{let Y=null;for(let pe of this.args){if(Y=pe.evaluate(D),Y===null)return 0;let Ce=Number(Y);if(!isNaN(Ce))return Ce}throw new kr(`Could not convert ${JSON.stringify(Y)} to number.`)}case"formatted":return pa.fromString(gt(this.args[0].evaluate(D)));case"resolvedImage":return qa.fromString(gt(this.args[0].evaluate(D)));default:return gt(this.args[0].evaluate(D))}}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Lr=["Unknown","Point","LineString","Polygon"];class Jr{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Lr[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(D){let Y=this._parseColorCache[D];return Y||(Y=this._parseColorCache[D]=Ut.parse(D)),Y}}class oa{constructor(D,Y,pe=[],Ce,Ue=new tt,Ge=[]){this.registry=D,this.path=pe,this.key=pe.map(ut=>`[${ut}]`).join(""),this.scope=Ue,this.errors=Ge,this.expectedType=Ce,this._isConstant=Y}parse(D,Y,pe,Ce,Ue={}){return Y?this.concat(Y,pe,Ce)._parse(D,Ue):this._parse(D,Ue)}_parse(D,Y){function pe(Ce,Ue,Ge){return Ge==="assert"?new Tr(Ue,[Ce]):Ge==="coerce"?new Fr(Ue,[Ce]):Ce}if(D!==null&&typeof D!="string"&&typeof D!="boolean"&&typeof D!="number"||(D=["literal",D]),Array.isArray(D)){if(D.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let Ce=D[0];if(typeof Ce!="string")return this.error(`Expression name must be a string, but found ${typeof Ce} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let Ue=this.registry[Ce];if(Ue){let Ge=Ue.parse(D,this);if(!Ge)return null;if(this.expectedType){let ut=this.expectedType,Tt=Ge.type;if(ut.kind!=="string"&&ut.kind!=="number"&&ut.kind!=="boolean"&&ut.kind!=="object"&&ut.kind!=="array"||Tt.kind!=="value")if(ut.kind!=="color"&&ut.kind!=="formatted"&&ut.kind!=="resolvedImage"||Tt.kind!=="value"&&Tt.kind!=="string")if(ut.kind!=="padding"||Tt.kind!=="value"&&Tt.kind!=="number"&&Tt.kind!=="array")if(ut.kind!=="variableAnchorOffsetCollection"||Tt.kind!=="value"&&Tt.kind!=="array"){if(this.checkSubtype(ut,Tt))return null}else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"assert")}if(!(Ge instanceof Er)&&Ge.type.kind!=="resolvedImage"&&this._isConstant(Ge)){let ut=new Jr;try{Ge=new Er(Ge.type,Ge.evaluate(ut))}catch(Tt){return this.error(Tt.message),null}}return Ge}return this.error(`Unknown expression "${Ce}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(D===void 0?"'undefined' value invalid. Use null instead.":typeof D=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof D} instead.`)}concat(D,Y,pe){let Ce=typeof D=="number"?this.path.concat(D):this.path,Ue=pe?this.scope.concat(pe):this.scope;return new oa(this.registry,this._isConstant,Ce,Y||null,Ue,this.errors)}error(D,...Y){let pe=`${this.key}${Y.map(Ce=>`[${Ce}]`).join("")}`;this.errors.push(new ze(pe,D))}checkSubtype(D,Y){let pe=Ee(D,Y);return pe&&this.error(pe),pe}}class ca{constructor(D,Y){this.type=Y.type,this.bindings=[].concat(D),this.result=Y}evaluate(D){return this.result.evaluate(D)}eachChild(D){for(let Y of this.bindings)D(Y[1]);D(this.result)}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found ${D.length-1} instead.`);let pe=[];for(let Ue=1;Ue=pe.length)throw new kr(`Array index out of bounds: ${Y} > ${pe.length-1}.`);if(Y!==Math.floor(Y))throw new kr(`Array index must be an integer, but found ${Y} instead.`);return pe[Y]}eachChild(D){D(this.index),D(this.input)}outputDefined(){return!1}}class mr{constructor(D,Y){this.type=St,this.needle=D,this.haystack=Y}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);return pe&&Ce?Ve(pe.type,[St,Ct,Qe,nt,ur])?new mr(pe,Ce):Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`):null}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!pe)return!1;if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);if(!ke(pe,["string","array"]))throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`);return pe.indexOf(Y)>=0}eachChild(D){D(this.needle),D(this.haystack)}outputDefined(){return!0}}class $r{constructor(D,Y,pe){this.type=Qe,this.needle=D,this.haystack=Y,this.fromIndex=pe}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);if(!pe||!Ce)return null;if(!Ve(pe.type,[St,Ct,Qe,nt,ur]))return Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new $r(pe,Ce,Ue):null}return new $r(pe,Ce)}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);let Ce;if(this.fromIndex&&(Ce=this.fromIndex.evaluate(D)),ke(pe,["string"])){let Ue=pe.indexOf(Y,Ce);return Ue===-1?-1:[...pe.slice(0,Ue)].length}if(ke(pe,["array"]))return pe.indexOf(Y,Ce);throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`)}eachChild(D){D(this.needle),D(this.haystack),this.fromIndex&&D(this.fromIndex)}outputDefined(){return!1}}class ma{constructor(D,Y,pe,Ce,Ue,Ge){this.inputType=D,this.type=Y,this.input=pe,this.cases=Ce,this.outputs=Ue,this.otherwise=Ge}static parse(D,Y){if(D.length<5)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if(D.length%2!=1)return Y.error("Expected an even number of arguments.");let pe,Ce;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ce=Y.expectedType);let Ue={},Ge=[];for(let Ft=2;FtNumber.MAX_SAFE_INTEGER)return Ar.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Kr=="number"&&Math.floor(Kr)!==Kr)return Ar.error("Numeric branch labels must be integer values.");if(pe){if(Ar.checkSubtype(pe,mt(Kr)))return null}else pe=mt(Kr);if(Ue[String(Kr)]!==void 0)return Ar.error("Branch labels must be unique.");Ue[String(Kr)]=Ge.length}let zr=Y.parse(lr,Ft,Ce);if(!zr)return null;Ce=Ce||zr.type,Ge.push(zr)}let ut=Y.parse(D[1],1,ur);if(!ut)return null;let Tt=Y.parse(D[D.length-1],D.length-1,Ce);return Tt?ut.type.kind!=="value"&&Y.concat(1).checkSubtype(pe,ut.type)?null:new ma(pe,Ce,ut,Ue,Ge,Tt):null}evaluate(D){let Y=this.input.evaluate(D);return(mt(Y)===this.inputType&&this.outputs[this.cases[Y]]||this.otherwise).evaluate(D)}eachChild(D){D(this.input),this.outputs.forEach(D),D(this.otherwise)}outputDefined(){return this.outputs.every(D=>D.outputDefined())&&this.otherwise.outputDefined()}}class Ba{constructor(D,Y,pe){this.type=D,this.branches=Y,this.otherwise=pe}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found only ${D.length-1}.`);if(D.length%2!=0)return Y.error("Expected an odd number of arguments.");let pe;Y.expectedType&&Y.expectedType.kind!=="value"&&(pe=Y.expectedType);let Ce=[];for(let Ge=1;GeY.outputDefined())&&this.otherwise.outputDefined()}}class Ca{constructor(D,Y,pe,Ce){this.type=D,this.input=Y,this.beginIndex=pe,this.endIndex=Ce}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,Qe);if(!pe||!Ce)return null;if(!Ve(pe.type,[Fe(ur),Ct,ur]))return Y.error(`Expected first argument to be of type array or string, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new Ca(pe.type,pe,Ce,Ue):null}return new Ca(pe.type,pe,Ce)}evaluate(D){let Y=this.input.evaluate(D),pe=this.beginIndex.evaluate(D),Ce;if(this.endIndex&&(Ce=this.endIndex.evaluate(D)),ke(Y,["string"]))return[...Y].slice(pe,Ce).join("");if(ke(Y,["array"]))return Y.slice(pe,Ce);throw new kr(`Expected first argument to be of type array or string, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input),D(this.beginIndex),this.endIndex&&D(this.endIndex)}outputDefined(){return!1}}function da(q,D){let Y=q.length-1,pe,Ce,Ue=0,Ge=Y,ut=0;for(;Ue<=Ge;)if(ut=Math.floor((Ue+Ge)/2),pe=q[ut],Ce=q[ut+1],pe<=D){if(ut===Y||DD))throw new kr("Input is not a number.");Ge=ut-1}return 0}class Sa{constructor(D,Y,pe){this.type=D,this.input=Y,this.labels=[],this.outputs=[];for(let[Ce,Ue]of pe)this.labels.push(Ce),this.outputs.push(Ue)}static parse(D,Y){if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=[],Ue=null;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ue=Y.expectedType);for(let Ge=1;Ge=ut)return Y.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);let lr=Y.parse(Tt,$t,Ue);if(!lr)return null;Ue=Ue||lr.type,Ce.push([ut,lr])}return new Sa(Ue,pe,Ce)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;return Ce>=Y[Ue-1]?pe[Ue-1].evaluate(D):pe[da(Y,Ce)].evaluate(D)}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Ti(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}var ai=an;function an(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}an.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var sn=Ti(ai);function Mn(q,D,Y){return q+Y*(D-q)}function On(q,D,Y){return q.map((pe,Ce)=>Mn(pe,D[Ce],Y))}let $n={number:Mn,color:function(q,D,Y,pe="rgb"){switch(pe){case"rgb":{let[Ce,Ue,Ge,ut]=On(q.rgb,D.rgb,Y);return new Ut(Ce,Ue,Ge,ut,!1)}case"hcl":{let[Ce,Ue,Ge,ut]=q.hcl,[Tt,Ft,$t,lr]=D.hcl,Ar,zr;if(isNaN(Ce)||isNaN(Tt))isNaN(Ce)?isNaN(Tt)?Ar=NaN:(Ar=Tt,Ge!==1&&Ge!==0||(zr=Ft)):(Ar=Ce,$t!==1&&$t!==0||(zr=Ue));else{let gi=Tt-Ce;Tt>Ce&&gi>180?gi-=360:Tt180&&(gi+=360),Ar=Ce+Y*gi}let[Kr,la,za,ja]=function([gi,ei,hi,Ei]){return gi=isNaN(gi)?0:gi*Gt,ka([hi,Math.cos(gi)*ei,Math.sin(gi)*ei,Ei])}([Ar,zr??Mn(Ue,Ft,Y),Mn(Ge,$t,Y),Mn(ut,lr,Y)]);return new Ut(Kr,la,za,ja,!1)}case"lab":{let[Ce,Ue,Ge,ut]=ka(On(q.lab,D.lab,Y));return new Ut(Ce,Ue,Ge,ut,!1)}}},array:On,padding:function(q,D,Y){return new Xr(On(q.values,D.values,Y))},variableAnchorOffsetCollection:function(q,D,Y){let pe=q.values,Ce=D.values;if(pe.length!==Ce.length)throw new kr(`Cannot interpolate values of different length. from: ${q.toString()}, to: ${D.toString()}`);let Ue=[];for(let Ge=0;Getypeof $t!="number"||$t<0||$t>1))return Y.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);Ce={name:"cubic-bezier",controlPoints:Ft}}}if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");if(Ue=Y.parse(Ue,2,Qe),!Ue)return null;let ut=[],Tt=null;pe==="interpolate-hcl"||pe==="interpolate-lab"?Tt=Ot:Y.expectedType&&Y.expectedType.kind!=="value"&&(Tt=Y.expectedType);for(let Ft=0;Ft=$t)return Y.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Ar);let Kr=Y.parse(lr,zr,Tt);if(!Kr)return null;Tt=Tt||Kr.type,ut.push([$t,Kr])}return Te(Tt,Qe)||Te(Tt,Ot)||Te(Tt,vr)||Te(Tt,yt)||Te(Tt,Fe(Qe))?new Cn(Tt,pe,Ce,Ue,ut):Y.error(`Type ${Ke(Tt)} is not interpolatable.`)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;if(Ce>=Y[Ue-1])return pe[Ue-1].evaluate(D);let Ge=da(Y,Ce),ut=Cn.interpolationFactor(this.interpolation,Ce,Y[Ge],Y[Ge+1]),Tt=pe[Ge].evaluate(D),Ft=pe[Ge+1].evaluate(D);switch(this.operator){case"interpolate":return $n[this.type.kind](Tt,Ft,ut);case"interpolate-hcl":return $n.color(Tt,Ft,ut,"hcl");case"interpolate-lab":return $n.color(Tt,Ft,ut,"lab")}}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Lo(q,D,Y,pe){let Ce=pe-Y,Ue=q-Y;return Ce===0?0:D===1?Ue/Ce:(Math.pow(D,Ue)-1)/(Math.pow(D,Ce)-1)}class Xi{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expectected at least one argument.");let pe=null,Ce=Y.expectedType;Ce&&Ce.kind!=="value"&&(pe=Ce);let Ue=[];for(let ut of D.slice(1)){let Tt=Y.parse(ut,1+Ue.length,pe,void 0,{typeAnnotation:"omit"});if(!Tt)return null;pe=pe||Tt.type,Ue.push(Tt)}if(!pe)throw new Error("No output type");let Ge=Ce&&Ue.some(ut=>Ee(Ce,ut.type));return new Xi(Ge?ur:pe,Ue)}evaluate(D){let Y,pe=null,Ce=0;for(let Ue of this.args)if(Ce++,pe=Ue.evaluate(D),pe&&pe instanceof qa&&!pe.available&&(Y||(Y=pe.name),pe=null,Ce===this.args.length&&(pe=Y)),pe!==null)break;return pe}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}function Jo(q,D){return q==="=="||q==="!="?D.kind==="boolean"||D.kind==="string"||D.kind==="number"||D.kind==="null"||D.kind==="value":D.kind==="string"||D.kind==="number"||D.kind==="value"}function zo(q,D,Y,pe){return pe.compare(D,Y)===0}function as(q,D,Y){let pe=q!=="=="&&q!=="!=";return class K8{constructor(Ue,Ge,ut){this.type=St,this.lhs=Ue,this.rhs=Ge,this.collator=ut,this.hasUntypedArgument=Ue.type.kind==="value"||Ge.type.kind==="value"}static parse(Ue,Ge){if(Ue.length!==3&&Ue.length!==4)return Ge.error("Expected two or three arguments.");let ut=Ue[0],Tt=Ge.parse(Ue[1],1,ur);if(!Tt)return null;if(!Jo(ut,Tt.type))return Ge.concat(1).error(`"${ut}" comparisons are not supported for type '${Ke(Tt.type)}'.`);let Ft=Ge.parse(Ue[2],2,ur);if(!Ft)return null;if(!Jo(ut,Ft.type))return Ge.concat(2).error(`"${ut}" comparisons are not supported for type '${Ke(Ft.type)}'.`);if(Tt.type.kind!==Ft.type.kind&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error(`Cannot compare types '${Ke(Tt.type)}' and '${Ke(Ft.type)}'.`);pe&&(Tt.type.kind==="value"&&Ft.type.kind!=="value"?Tt=new Tr(Ft.type,[Tt]):Tt.type.kind!=="value"&&Ft.type.kind==="value"&&(Ft=new Tr(Tt.type,[Ft])));let $t=null;if(Ue.length===4){if(Tt.type.kind!=="string"&&Ft.type.kind!=="string"&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if($t=Ge.parse(Ue[3],3,ar),!$t)return null}return new K8(Tt,Ft,$t)}evaluate(Ue){let Ge=this.lhs.evaluate(Ue),ut=this.rhs.evaluate(Ue);if(pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!==Ft.kind||Tt.kind!=="string"&&Tt.kind!=="number")throw new kr(`Expected arguments for "${q}" to be (string, string) or (number, number), but found (${Tt.kind}, ${Ft.kind}) instead.`)}if(this.collator&&!pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!=="string"||Ft.kind!=="string")return D(Ue,Ge,ut)}return this.collator?Y(Ue,Ge,ut,this.collator.evaluate(Ue)):D(Ue,Ge,ut)}eachChild(Ue){Ue(this.lhs),Ue(this.rhs),this.collator&&Ue(this.collator)}outputDefined(){return!0}}}let Pn=as("==",function(q,D,Y){return D===Y},zo),go=as("!=",function(q,D,Y){return D!==Y},function(q,D,Y,pe){return!zo(0,D,Y,pe)}),In=as("<",function(q,D,Y){return D",function(q,D,Y){return D>Y},function(q,D,Y,pe){return pe.compare(D,Y)>0}),Ho=as("<=",function(q,D,Y){return D<=Y},function(q,D,Y,pe){return pe.compare(D,Y)<=0}),Qo=as(">=",function(q,D,Y){return D>=Y},function(q,D,Y,pe){return pe.compare(D,Y)>=0});class Xn{constructor(D,Y,pe){this.type=ar,this.locale=pe,this.caseSensitive=D,this.diacriticSensitive=Y}static parse(D,Y){if(D.length!==2)return Y.error("Expected one argument.");let pe=D[1];if(typeof pe!="object"||Array.isArray(pe))return Y.error("Collator options argument must be an object.");let Ce=Y.parse(pe["case-sensitive"]!==void 0&&pe["case-sensitive"],1,St);if(!Ce)return null;let Ue=Y.parse(pe["diacritic-sensitive"]!==void 0&&pe["diacritic-sensitive"],1,St);if(!Ue)return null;let Ge=null;return pe.locale&&(Ge=Y.parse(pe.locale,1,Ct),!Ge)?null:new Xn(Ce,Ue,Ge)}evaluate(D){return new xr(this.caseSensitive.evaluate(D),this.diacriticSensitive.evaluate(D),this.locale?this.locale.evaluate(D):null)}eachChild(D){D(this.caseSensitive),D(this.diacriticSensitive),this.locale&&D(this.locale)}outputDefined(){return!1}}class po{constructor(D,Y,pe,Ce,Ue){this.type=Ct,this.number=D,this.locale=Y,this.currency=pe,this.minFractionDigits=Ce,this.maxFractionDigits=Ue}static parse(D,Y){if(D.length!==3)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=D[2];if(typeof Ce!="object"||Array.isArray(Ce))return Y.error("NumberFormat options argument must be an object.");let Ue=null;if(Ce.locale&&(Ue=Y.parse(Ce.locale,1,Ct),!Ue))return null;let Ge=null;if(Ce.currency&&(Ge=Y.parse(Ce.currency,1,Ct),!Ge))return null;let ut=null;if(Ce["min-fraction-digits"]&&(ut=Y.parse(Ce["min-fraction-digits"],1,Qe),!ut))return null;let Tt=null;return Ce["max-fraction-digits"]&&(Tt=Y.parse(Ce["max-fraction-digits"],1,Qe),!Tt)?null:new po(pe,Ue,Ge,ut,Tt)}evaluate(D){return new Intl.NumberFormat(this.locale?this.locale.evaluate(D):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(D):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(D):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(D):void 0}).format(this.number.evaluate(D))}eachChild(D){D(this.number),this.locale&&D(this.locale),this.currency&&D(this.currency),this.minFractionDigits&&D(this.minFractionDigits),this.maxFractionDigits&&D(this.maxFractionDigits)}outputDefined(){return!1}}class ys{constructor(D){this.type=Cr,this.sections=D}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[1];if(!Array.isArray(pe)&&typeof pe=="object")return Y.error("First argument must be an image or text section.");let Ce=[],Ue=!1;for(let Ge=1;Ge<=D.length-1;++Ge){let ut=D[Ge];if(Ue&&typeof ut=="object"&&!Array.isArray(ut)){Ue=!1;let Tt=null;if(ut["font-scale"]&&(Tt=Y.parse(ut["font-scale"],1,Qe),!Tt))return null;let Ft=null;if(ut["text-font"]&&(Ft=Y.parse(ut["text-font"],1,Fe(Ct)),!Ft))return null;let $t=null;if(ut["text-color"]&&($t=Y.parse(ut["text-color"],1,Ot),!$t))return null;let lr=Ce[Ce.length-1];lr.scale=Tt,lr.font=Ft,lr.textColor=$t}else{let Tt=Y.parse(D[Ge],1,ur);if(!Tt)return null;let Ft=Tt.type.kind;if(Ft!=="string"&&Ft!=="value"&&Ft!=="null"&&Ft!=="resolvedImage")return Y.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Ue=!0,Ce.push({content:Tt,scale:null,font:null,textColor:null})}}return new ys(Ce)}evaluate(D){return new pa(this.sections.map(Y=>{let pe=Y.content.evaluate(D);return mt(pe)===_r?new Zr("",pe,null,null,null):new Zr(gt(pe),null,Y.scale?Y.scale.evaluate(D):null,Y.font?Y.font.evaluate(D).join(","):null,Y.textColor?Y.textColor.evaluate(D):null)}))}eachChild(D){for(let Y of this.sections)D(Y.content),Y.scale&&D(Y.scale),Y.font&&D(Y.font),Y.textColor&&D(Y.textColor)}outputDefined(){return!1}}class Is{constructor(D){this.type=_r,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Ct);return pe?new Is(pe):Y.error("No image name provided.")}evaluate(D){let Y=this.input.evaluate(D),pe=qa.fromString(Y);return pe&&D.availableImages&&(pe.available=D.availableImages.indexOf(Y)>-1),pe}eachChild(D){D(this.input)}outputDefined(){return!1}}class Fs{constructor(D){this.type=Qe,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error(`Expected 1 argument, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1);return pe?pe.type.kind!=="array"&&pe.type.kind!=="string"&&pe.type.kind!=="value"?Y.error(`Expected argument of type string or array, but found ${Ke(pe.type)} instead.`):new Fs(pe):null}evaluate(D){let Y=this.input.evaluate(D);if(typeof Y=="string")return[...Y].length;if(Array.isArray(Y))return Y.length;throw new kr(`Expected value to be of type string or array, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input)}outputDefined(){return!1}}let $o=8192;function fi(q,D){let Y=(180+q[0])/360,pe=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q[1]*Math.PI/360)))/360,Ce=Math.pow(2,D.z);return[Math.round(Y*Ce*$o),Math.round(pe*Ce*$o)]}function mn(q,D){let Y=Math.pow(2,D.z);return[(Ce=(q[0]/$o+D.x)/Y,360*Ce-180),(pe=(q[1]/$o+D.y)/Y,360/Math.PI*Math.atan(Math.exp((180-360*pe)*Math.PI/180))-90)];var pe,Ce}function ol(q,D){q[0]=Math.min(q[0],D[0]),q[1]=Math.min(q[1],D[1]),q[2]=Math.max(q[2],D[0]),q[3]=Math.max(q[3],D[1])}function Os(q,D){return!(q[0]<=D[0]||q[2]>=D[2]||q[1]<=D[1]||q[3]>=D[3])}function so(q,D,Y){let pe=q[0]-D[0],Ce=q[1]-D[1],Ue=q[0]-Y[0],Ge=q[1]-Y[1];return pe*Ge-Ue*Ce==0&&pe*Ue<=0&&Ce*Ge<=0}function Ns(q,D,Y,pe){return(Ce=[pe[0]-Y[0],pe[1]-Y[1]])[0]*(Ue=[D[0]-q[0],D[1]-q[1]])[1]-Ce[1]*Ue[0]!=0&&!(!Yn(q,D,Y,pe)||!Yn(Y,pe,q,D));var Ce,Ue}function fs(q,D,Y){for(let pe of Y)for(let Ce=0;Ce(Ce=q)[1]!=(Ge=ut[Tt+1])[1]>Ce[1]&&Ce[0]<(Ge[0]-Ue[0])*(Ce[1]-Ue[1])/(Ge[1]-Ue[1])+Ue[0]&&(pe=!pe)}var Ce,Ue,Ge;return pe}function vl(q,D){for(let Y of D)if(al(q,Y))return!0;return!1}function ji(q,D){for(let Y of q)if(!al(Y,D))return!1;for(let Y=0;Y0&&ut<0||Ge<0&&ut>0}function _s(q,D,Y){let pe=[];for(let Ce=0;CeY[2]){let Ce=.5*pe,Ue=q[0]-Y[0]>Ce?-pe:Y[0]-q[0]>Ce?pe:0;Ue===0&&(Ue=q[0]-Y[2]>Ce?-pe:Y[2]-q[0]>Ce?pe:0),q[0]+=Ue}ol(D,q)}function Wl(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let ut of q)for(let Tt of ut){let Ft=[Tt.x+Ue[0],Tt.y+Ue[1]];Nn(Ft,D,Y,Ce),Ge.push(Ft)}return Ge}function Zu(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let Tt of q){let Ft=[];for(let $t of Tt){let lr=[$t.x+Ue[0],$t.y+Ue[1]];ol(D,lr),Ft.push(lr)}Ge.push(Ft)}if(D[2]-D[0]<=Ce/2){(ut=D)[0]=ut[1]=1/0,ut[2]=ut[3]=-1/0;for(let Tt of Ge)for(let Ft of Tt)Nn(Ft,D,Y,Ce)}var ut;return Ge}class ml{constructor(D,Y){this.type=St,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'within' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection"){let Ce=[];for(let Ue of pe.features){let{type:Ge,coordinates:ut}=Ue.geometry;Ge==="Polygon"&&Ce.push(ut),Ge==="MultiPolygon"&&Ce.push(...ut)}if(Ce.length)return new ml(pe,{type:"MultiPolygon",coordinates:Ce})}else if(pe.type==="Feature"){let Ce=pe.geometry.type;if(Ce==="Polygon"||Ce==="MultiPolygon")return new ml(pe,pe.geometry)}else if(pe.type==="Polygon"||pe.type==="MultiPolygon")return new ml(pe,pe)}return Y.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!al(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!vl(Ft,ut))return!1}return!0}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!ji(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!To(Ft,ut))return!1}return!0}(D,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Bu=class{constructor(q=[],D=(Y,pe)=>Ype?1:0){if(this.data=q,this.length=this.data.length,this.compare=D,this.length>0)for(let Y=(this.length>>1)-1;Y>=0;Y--)this._down(Y)}push(q){this.data.push(q),this._up(this.length++)}pop(){if(this.length===0)return;let q=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),q}peek(){return this.data[0]}_up(q){let{data:D,compare:Y}=this,pe=D[q];for(;q>0;){let Ce=q-1>>1,Ue=D[Ce];if(Y(pe,Ue)>=0)break;D[q]=Ue,q=Ce}D[q]=pe}_down(q){let{data:D,compare:Y}=this,pe=this.length>>1,Ce=D[q];for(;q=0)break;D[q]=D[Ue],q=Ue}D[q]=Ce}};function El(q,D,Y,pe,Ce){qs(q,D,Y,pe||q.length-1,Ce||Nu)}function qs(q,D,Y,pe,Ce){for(;pe>Y;){if(pe-Y>600){var Ue=pe-Y+1,Ge=D-Y+1,ut=Math.log(Ue),Tt=.5*Math.exp(2*ut/3),Ft=.5*Math.sqrt(ut*Tt*(Ue-Tt)/Ue)*(Ge-Ue/2<0?-1:1);qs(q,D,Math.max(Y,Math.floor(D-Ge*Tt/Ue+Ft)),Math.min(pe,Math.floor(D+(Ue-Ge)*Tt/Ue+Ft)),Ce)}var $t=q[D],lr=Y,Ar=pe;for(Jl(q,Y,D),Ce(q[pe],$t)>0&&Jl(q,Y,pe);lr0;)Ar--}Ce(q[Y],$t)===0?Jl(q,Y,Ar):Jl(q,++Ar,pe),Ar<=D&&(Y=Ar+1),D<=Ar&&(pe=Ar-1)}}function Jl(q,D,Y){var pe=q[D];q[D]=q[Y],q[Y]=pe}function Nu(q,D){return qD?1:0}function Ic(q,D){if(q.length<=1)return[q];let Y=[],pe,Ce;for(let Ue of q){let Ge=Th(Ue);Ge!==0&&(Ue.area=Math.abs(Ge),Ce===void 0&&(Ce=Ge<0),Ce===Ge<0?(pe&&Y.push(pe),pe=[Ue]):pe.push(Ue))}if(pe&&Y.push(pe),D>1)for(let Ue=0;Ue1?(Ft=D[Tt+1][0],$t=D[Tt+1][1]):zr>0&&(Ft+=lr/this.kx*zr,$t+=Ar/this.ky*zr)),lr=this.wrap(Y[0]-Ft)*this.kx,Ar=(Y[1]-$t)*this.ky;let Kr=lr*lr+Ar*Ar;Kr180;)D-=360;return D}}function Zl(q,D){return D[0]-q[0]}function yl(q){return q[1]-q[0]+1}function oc(q,D){return q[1]>=q[0]&&q[1]q[1])return[null,null];let Y=yl(q);if(D){if(Y===2)return[q,null];let Ce=Math.floor(Y/2);return[[q[0],q[0]+Ce],[q[0]+Ce,q[1]]]}if(Y===1)return[q,null];let pe=Math.floor(Y/2)-1;return[[q[0],q[0]+pe],[q[0]+pe+1,q[1]]]}function Zs(q,D){if(!oc(D,q.length))return[1/0,1/0,-1/0,-1/0];let Y=[1/0,1/0,-1/0,-1/0];for(let pe=D[0];pe<=D[1];++pe)ol(Y,q[pe]);return Y}function _l(q){let D=[1/0,1/0,-1/0,-1/0];for(let Y of q)for(let pe of Y)ol(D,pe);return D}function Bs(q){return q[0]!==-1/0&&q[1]!==-1/0&&q[2]!==1/0&&q[3]!==1/0}function $s(q,D,Y){if(!Bs(q)||!Bs(D))return NaN;let pe=0,Ce=0;return q[2]D[2]&&(pe=q[0]-D[2]),q[1]>D[3]&&(Ce=q[1]-D[3]),q[3]=pe)return pe;if(Os(Ce,Ue)){if(Wh(q,D))return 0}else if(Wh(D,q))return 0;let Ge=1/0;for(let ut of q)for(let Tt=0,Ft=ut.length,$t=Ft-1;Tt0;){let Tt=Ge.pop();if(Tt[0]>=Ue)continue;let Ft=Tt[1],$t=D?50:100;if(yl(Ft)<=$t){if(!oc(Ft,q.length))return NaN;if(D){let lr=es(q,Ft,Y,pe);if(isNaN(lr)||lr===0)return lr;Ue=Math.min(Ue,lr)}else for(let lr=Ft[0];lr<=Ft[1];++lr){let Ar=fp(q[lr],Y,pe);if(Ue=Math.min(Ue,Ar),Ue===0)return 0}}else{let lr=_c(Ft,D);So(Ge,Ue,pe,q,ut,lr[0]),So(Ge,Ue,pe,q,ut,lr[1])}}return Ue}function cu(q,D,Y,pe,Ce,Ue=1/0){let Ge=Math.min(Ue,Ce.distance(q[0],Y[0]));if(Ge===0)return Ge;let ut=new Bu([[0,[0,q.length-1],[0,Y.length-1]]],Zl);for(;ut.length>0;){let Tt=ut.pop();if(Tt[0]>=Ge)continue;let Ft=Tt[1],$t=Tt[2],lr=D?50:100,Ar=pe?50:100;if(yl(Ft)<=lr&&yl($t)<=Ar){if(!oc(Ft,q.length)&&oc($t,Y.length))return NaN;let zr;if(D&&pe)zr=Yu(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr);else if(D&&!pe){let Kr=q.slice(Ft[0],Ft[1]+1);for(let la=$t[0];la<=$t[1];++la)if(zr=sc(Y[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else if(!D&&pe){let Kr=Y.slice($t[0],$t[1]+1);for(let la=Ft[0];la<=Ft[1];++la)if(zr=sc(q[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else zr=Qs(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr)}else{let zr=_c(Ft,D),Kr=_c($t,pe);hf(ut,Ge,Ce,q,Y,zr[0],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[0],Kr[1]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[1])}}return Ge}function Zf(q){return q.type==="MultiPolygon"?q.coordinates.map(D=>({type:"Polygon",coordinates:D})):q.type==="MultiLineString"?q.coordinates.map(D=>({type:"LineString",coordinates:D})):q.type==="MultiPoint"?q.coordinates.map(D=>({type:"Point",coordinates:D})):[q]}class Rc{constructor(D,Y){this.type=Qe,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'distance' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection")return new Rc(pe,pe.features.map(Ce=>Zf(Ce.geometry)).flat());if(pe.type==="Feature")return new Rc(pe,Zf(pe.geometry));if("type"in pe&&"coordinates"in pe)return new Rc(pe,Zf(pe))}return Y.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!1,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!1,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!1,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!0,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!0,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!0,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="Polygon")return function(Y,pe){let Ce=Y.geometry();if(Ce.length===0||Ce[0].length===0)return NaN;let Ue=Ic(Ce,0).map(Tt=>Tt.map(Ft=>Ft.map($t=>mn([$t.x,$t.y],Y.canonical)))),Ge=new If(Ue[0][0][0][1]),ut=1/0;for(let Tt of pe)for(let Ft of Ue){switch(Tt.type){case"Point":ut=Math.min(ut,Ku([Tt.coordinates],!1,Ft,Ge,ut));break;case"LineString":ut=Math.min(ut,Ku(Tt.coordinates,!0,Ft,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ss(Ft,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let pf={"==":Pn,"!=":go,">":Do,"<":In,">=":Qo,"<=":Ho,array:Tr,at:ir,boolean:Tr,case:Ba,coalesce:Xi,collator:Xn,format:ys,image:Is,in:mr,"index-of":$r,interpolate:Cn,"interpolate-hcl":Cn,"interpolate-lab":Cn,length:Fs,let:ca,literal:Er,match:ma,number:Tr,"number-format":po,object:Tr,slice:Ca,step:Sa,string:Tr,"to-boolean":Fr,"to-color":Fr,"to-number":Fr,"to-string":Fr,var:kt,within:ml,distance:Rc};class Fl{constructor(D,Y,pe,Ce){this.name=D,this.type=Y,this._evaluate=pe,this.args=Ce}evaluate(D){return this._evaluate(D,this.args)}eachChild(D){this.args.forEach(D)}outputDefined(){return!1}static parse(D,Y){let pe=D[0],Ce=Fl.definitions[pe];if(!Ce)return Y.error(`Unknown expression "${pe}". If you wanted a literal array, use ["literal", [...]].`,0);let Ue=Array.isArray(Ce)?Ce[0]:Ce.type,Ge=Array.isArray(Ce)?[[Ce[1],Ce[2]]]:Ce.overloads,ut=Ge.filter(([Ft])=>!Array.isArray(Ft)||Ft.length===D.length-1),Tt=null;for(let[Ft,$t]of ut){Tt=new oa(Y.registry,Yf,Y.path,null,Y.scope);let lr=[],Ar=!1;for(let zr=1;zr{return Ar=lr,Array.isArray(Ar)?`(${Ar.map(Ke).join(", ")})`:`(${Ke(Ar.type)}...)`;var Ar}).join(" | "),$t=[];for(let lr=1;lr{Y=D?Y&&Yf(pe):Y&&pe instanceof Er}),!!Y&&uh(q)&&Df(q,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function uh(q){if(q instanceof Fl&&(q.name==="get"&&q.args.length===1||q.name==="feature-state"||q.name==="has"&&q.args.length===1||q.name==="properties"||q.name==="geometry-type"||q.name==="id"||/^filter-/.test(q.name))||q instanceof ml||q instanceof Rc)return!1;let D=!0;return q.eachChild(Y=>{D&&!uh(Y)&&(D=!1)}),D}function Ju(q){if(q instanceof Fl&&q.name==="feature-state")return!1;let D=!0;return q.eachChild(Y=>{D&&!Ju(Y)&&(D=!1)}),D}function Df(q,D){if(q instanceof Fl&&D.indexOf(q.name)>=0)return!1;let Y=!0;return q.eachChild(pe=>{Y&&!Df(pe,D)&&(Y=!1)}),Y}function Dc(q){return{result:"success",value:q}}function Jc(q){return{result:"error",value:q}}function Eu(q){return q["property-type"]==="data-driven"||q["property-type"]==="cross-faded-data-driven"}function wf(q){return!!q.expression&&q.expression.parameters.indexOf("zoom")>-1}function zc(q){return!!q.expression&&q.expression.interpolated}function Us(q){return q instanceof Number?"number":q instanceof String?"string":q instanceof Boolean?"boolean":Array.isArray(q)?"array":q===null?"null":typeof q}function Kf(q){return typeof q=="object"&&q!==null&&!Array.isArray(q)}function Zh(q){return q}function ch(q,D){let Y=D.type==="color",pe=q.stops&&typeof q.stops[0][0]=="object",Ce=pe||!(pe||q.property!==void 0),Ue=q.type||(zc(D)?"exponential":"interval");if(Y||D.type==="padding"){let $t=Y?Ut.parse:Xr.parse;(q=ce({},q)).stops&&(q.stops=q.stops.map(lr=>[lr[0],$t(lr[1])])),q.default=$t(q.default?q.default:D.default)}if(q.colorSpace&&(Ge=q.colorSpace)!=="rgb"&&Ge!=="hcl"&&Ge!=="lab")throw new Error(`Unknown color space: "${q.colorSpace}"`);var Ge;let ut,Tt,Ft;if(Ue==="exponential")ut=fh;else if(Ue==="interval")ut=ku;else if(Ue==="categorical"){ut=Ah,Tt=Object.create(null);for(let $t of q.stops)Tt[$t[0]]=$t[1];Ft=typeof q.stops[0][0]}else{if(Ue!=="identity")throw new Error(`Unknown function type "${Ue}"`);ut=ru}if(pe){let $t={},lr=[];for(let Kr=0;KrKr[0]),evaluate:({zoom:Kr},la)=>fh({stops:Ar,base:q.base},D,Kr).evaluate(Kr,la)}}if(Ce){let $t=Ue==="exponential"?{name:"exponential",base:q.base!==void 0?q.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:Cn.interpolationFactor.bind(void 0,$t),zoomStops:q.stops.map(lr=>lr[0]),evaluate:({zoom:lr})=>ut(q,D,lr,Tt,Ft)}}return{kind:"source",evaluate($t,lr){let Ar=lr&&lr.properties?lr.properties[q.property]:void 0;return Ar===void 0?df(q.default,D.default):ut(q,D,Ar,Tt,Ft)}}}function df(q,D,Y){return q!==void 0?q:D!==void 0?D:Y!==void 0?Y:void 0}function Ah(q,D,Y,pe,Ce){return df(typeof Y===Ce?pe[Y]:void 0,q.default,D.default)}function ku(q,D,Y){if(Us(Y)!=="number")return df(q.default,D.default);let pe=q.stops.length;if(pe===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[pe-1][0])return q.stops[pe-1][1];let Ce=da(q.stops.map(Ue=>Ue[0]),Y);return q.stops[Ce][1]}function fh(q,D,Y){let pe=q.base!==void 0?q.base:1;if(Us(Y)!=="number")return df(q.default,D.default);let Ce=q.stops.length;if(Ce===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[Ce-1][0])return q.stops[Ce-1][1];let Ue=da(q.stops.map($t=>$t[0]),Y),Ge=function($t,lr,Ar,zr){let Kr=zr-Ar,la=$t-Ar;return Kr===0?0:lr===1?la/Kr:(Math.pow(lr,la)-1)/(Math.pow(lr,Kr)-1)}(Y,pe,q.stops[Ue][0],q.stops[Ue+1][0]),ut=q.stops[Ue][1],Tt=q.stops[Ue+1][1],Ft=$n[D.type]||Zh;return typeof ut.evaluate=="function"?{evaluate(...$t){let lr=ut.evaluate.apply(void 0,$t),Ar=Tt.evaluate.apply(void 0,$t);if(lr!==void 0&&Ar!==void 0)return Ft(lr,Ar,Ge,q.colorSpace)}}:Ft(ut,Tt,Ge,q.colorSpace)}function ru(q,D,Y){switch(D.type){case"color":Y=Ut.parse(Y);break;case"formatted":Y=pa.fromString(Y.toString());break;case"resolvedImage":Y=qa.fromString(Y.toString());break;case"padding":Y=Xr.parse(Y);break;default:Us(Y)===D.type||D.type==="enum"&&D.values[Y]||(Y=void 0)}return df(Y,q.default,D.default)}Fl.register(pf,{error:[{kind:"error"},[Ct],(q,[D])=>{throw new kr(D.evaluate(q))}],typeof:[Ct,[ur],(q,[D])=>Ke(mt(D.evaluate(q)))],"to-rgba":[Fe(Qe,4),[Ot],(q,[D])=>{let[Y,pe,Ce,Ue]=D.evaluate(q).rgb;return[255*Y,255*pe,255*Ce,Ue]}],rgb:[Ot,[Qe,Qe,Qe],lh],rgba:[Ot,[Qe,Qe,Qe,Qe],lh],has:{type:St,overloads:[[[Ct],(q,[D])=>Xf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Xf(D.evaluate(q),Y.evaluate(q))]]},get:{type:ur,overloads:[[[Ct],(q,[D])=>Rf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Rf(D.evaluate(q),Y.evaluate(q))]]},"feature-state":[ur,[Ct],(q,[D])=>Rf(D.evaluate(q),q.featureState||{})],properties:[jt,[],q=>q.properties()],"geometry-type":[Ct,[],q=>q.geometryType()],id:[ur,[],q=>q.id()],zoom:[Qe,[],q=>q.globals.zoom],"heatmap-density":[Qe,[],q=>q.globals.heatmapDensity||0],"line-progress":[Qe,[],q=>q.globals.lineProgress||0],accumulated:[ur,[],q=>q.globals.accumulated===void 0?null:q.globals.accumulated],"+":[Qe,Kc(Qe),(q,D)=>{let Y=0;for(let pe of D)Y+=pe.evaluate(q);return Y}],"*":[Qe,Kc(Qe),(q,D)=>{let Y=1;for(let pe of D)Y*=pe.evaluate(q);return Y}],"-":{type:Qe,overloads:[[[Qe,Qe],(q,[D,Y])=>D.evaluate(q)-Y.evaluate(q)],[[Qe],(q,[D])=>-D.evaluate(q)]]},"/":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)/Y.evaluate(q)],"%":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)%Y.evaluate(q)],ln2:[Qe,[],()=>Math.LN2],pi:[Qe,[],()=>Math.PI],e:[Qe,[],()=>Math.E],"^":[Qe,[Qe,Qe],(q,[D,Y])=>Math.pow(D.evaluate(q),Y.evaluate(q))],sqrt:[Qe,[Qe],(q,[D])=>Math.sqrt(D.evaluate(q))],log10:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN10],ln:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))],log2:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN2],sin:[Qe,[Qe],(q,[D])=>Math.sin(D.evaluate(q))],cos:[Qe,[Qe],(q,[D])=>Math.cos(D.evaluate(q))],tan:[Qe,[Qe],(q,[D])=>Math.tan(D.evaluate(q))],asin:[Qe,[Qe],(q,[D])=>Math.asin(D.evaluate(q))],acos:[Qe,[Qe],(q,[D])=>Math.acos(D.evaluate(q))],atan:[Qe,[Qe],(q,[D])=>Math.atan(D.evaluate(q))],min:[Qe,Kc(Qe),(q,D)=>Math.min(...D.map(Y=>Y.evaluate(q)))],max:[Qe,Kc(Qe),(q,D)=>Math.max(...D.map(Y=>Y.evaluate(q)))],abs:[Qe,[Qe],(q,[D])=>Math.abs(D.evaluate(q))],round:[Qe,[Qe],(q,[D])=>{let Y=D.evaluate(q);return Y<0?-Math.round(-Y):Math.round(Y)}],floor:[Qe,[Qe],(q,[D])=>Math.floor(D.evaluate(q))],ceil:[Qe,[Qe],(q,[D])=>Math.ceil(D.evaluate(q))],"filter-==":[St,[Ct,ur],(q,[D,Y])=>q.properties()[D.value]===Y.value],"filter-id-==":[St,[ur],(q,[D])=>q.id()===D.value],"filter-type-==":[St,[Ct],(q,[D])=>q.geometryType()===D.value],"filter-<":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>Ce}],"filter-id->":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>pe}],"filter-<=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<=Ce}],"filter-id-<=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<=pe}],"filter->=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>=Ce}],"filter-id->=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>=pe}],"filter-has":[St,[ur],(q,[D])=>D.value in q.properties()],"filter-has-id":[St,[],q=>q.id()!==null&&q.id()!==void 0],"filter-type-in":[St,[Fe(Ct)],(q,[D])=>D.value.indexOf(q.geometryType())>=0],"filter-id-in":[St,[Fe(ur)],(q,[D])=>D.value.indexOf(q.id())>=0],"filter-in-small":[St,[Ct,Fe(ur)],(q,[D,Y])=>Y.value.indexOf(q.properties()[D.value])>=0],"filter-in-large":[St,[Ct,Fe(ur)],(q,[D,Y])=>function(pe,Ce,Ue,Ge){for(;Ue<=Ge;){let ut=Ue+Ge>>1;if(Ce[ut]===pe)return!0;Ce[ut]>pe?Ge=ut-1:Ue=ut+1}return!1}(q.properties()[D.value],Y.value,0,Y.value.length-1)],all:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)&&Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(!Y.evaluate(q))return!1;return!0}]]},any:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)||Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(Y.evaluate(q))return!0;return!1}]]},"!":[St,[St],(q,[D])=>!D.evaluate(q)],"is-supported-script":[St,[Ct],(q,[D])=>{let Y=q.globals&&q.globals.isSupportedScript;return!Y||Y(D.evaluate(q))}],upcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toUpperCase()],downcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toLowerCase()],concat:[Ct,Kc(ur),(q,D)=>D.map(Y=>gt(Y.evaluate(q))).join("")],"resolved-locale":[Ct,[ar],(q,[D])=>D.evaluate(q).resolvedLocale()]});class Cu{constructor(D,Y){var pe;this.expression=D,this._warningHistory={},this._evaluator=new Jr,this._defaultValue=Y?(pe=Y).type==="color"&&Kf(pe.default)?new Ut(0,0,0,0):pe.type==="color"?Ut.parse(pe.default)||null:pe.type==="padding"?Xr.parse(pe.default)||null:pe.type==="variableAnchorOffsetCollection"?Fa.parse(pe.default)||null:pe.default===void 0?null:pe.default:null,this._enumValues=Y&&Y.type==="enum"?Y.values:null}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._evaluator.globals=D,this._evaluator.feature=Y,this._evaluator.featureState=pe,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge,this.expression.evaluate(this._evaluator)}evaluate(D,Y,pe,Ce,Ue,Ge){this._evaluator.globals=D,this._evaluator.feature=Y||null,this._evaluator.featureState=pe||null,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge||null;try{let ut=this.expression.evaluate(this._evaluator);if(ut==null||typeof ut=="number"&&ut!=ut)return this._defaultValue;if(this._enumValues&&!(ut in this._enumValues))throw new kr(`Expected value to be one of ${Object.keys(this._enumValues).map(Tt=>JSON.stringify(Tt)).join(", ")}, but found ${JSON.stringify(ut)} instead.`);return ut}catch(ut){return this._warningHistory[ut.message]||(this._warningHistory[ut.message]=!0,typeof console<"u"&&console.warn(ut.message)),this._defaultValue}}}function xc(q){return Array.isArray(q)&&q.length>0&&typeof q[0]=="string"&&q[0]in pf}function kl(q,D){let Y=new oa(pf,Yf,[],D?function(Ce){let Ue={color:Ot,string:Ct,number:Qe,enum:Ct,boolean:St,formatted:Cr,padding:vr,resolvedImage:_r,variableAnchorOffsetCollection:yt};return Ce.type==="array"?Fe(Ue[Ce.value]||ur,Ce.length):Ue[Ce.type]}(D):void 0),pe=Y.parse(q,void 0,void 0,void 0,D&&D.type==="string"?{typeAnnotation:"coerce"}:void 0);return pe?Dc(new Cu(pe,D)):Jc(Y.errors)}class Fc{constructor(D,Y){this.kind=D,this._styleExpression=Y,this.isStateDependent=D!=="constant"&&!Ju(Y.expression)}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}}class $u{constructor(D,Y,pe,Ce){this.kind=D,this.zoomStops=pe,this._styleExpression=Y,this.isStateDependent=D!=="camera"&&!Ju(Y.expression),this.interpolationType=Ce}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}interpolationFactor(D,Y,pe){return this.interpolationType?Cn.interpolationFactor(this.interpolationType,D,Y,pe):0}}function vu(q,D){let Y=kl(q,D);if(Y.result==="error")return Y;let pe=Y.value.expression,Ce=uh(pe);if(!Ce&&!Eu(D))return Jc([new ze("","data expressions not supported")]);let Ue=Df(pe,["zoom"]);if(!Ue&&!wf(D))return Jc([new ze("","zoom expressions not supported")]);let Ge=hh(pe);return Ge||Ue?Ge instanceof ze?Jc([Ge]):Ge instanceof Cn&&!zc(D)?Jc([new ze("",'"interpolate" expressions cannot be used with this property')]):Dc(Ge?new $u(Ce?"camera":"composite",Y.value,Ge.labels,Ge instanceof Cn?Ge.interpolation:void 0):new Fc(Ce?"constant":"source",Y.value)):Jc([new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class xl{constructor(D,Y){this._parameters=D,this._specification=Y,ce(this,ch(this._parameters,this._specification))}static deserialize(D){return new xl(D._parameters,D._specification)}static serialize(D){return{_parameters:D._parameters,_specification:D._specification}}}function hh(q){let D=null;if(q instanceof ca)D=hh(q.result);else if(q instanceof Xi){for(let Y of q.args)if(D=hh(Y),D)break}else(q instanceof Sa||q instanceof Cn)&&q.input instanceof Fl&&q.input.name==="zoom"&&(D=q);return D instanceof ze||q.eachChild(Y=>{let pe=hh(Y);pe instanceof ze?D=pe:!D&&pe?D=new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):D&&pe&&D!==pe&&(D=new ze("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),D}function Sh(q){if(q===!0||q===!1)return!0;if(!Array.isArray(q)||q.length===0)return!1;switch(q[0]){case"has":return q.length>=2&&q[1]!=="$id"&&q[1]!=="$type";case"in":return q.length>=3&&(typeof q[1]!="string"||Array.isArray(q[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return q.length!==3||Array.isArray(q[1])||Array.isArray(q[2]);case"any":case"all":for(let D of q.slice(1))if(!Sh(D)&&typeof D!="boolean")return!1;return!0;default:return!0}}let Uu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function bc(q){if(q==null)return{filter:()=>!0,needGeometry:!1};Sh(q)||(q=vf(q));let D=kl(q,Uu);if(D.result==="error")throw new Error(D.value.map(Y=>`${Y.key}: ${Y.message}`).join(", "));return{filter:(Y,pe,Ce)=>D.value.evaluate(Y,pe,{},Ce),needGeometry:hp(q)}}function lc(q,D){return qD?1:0}function hp(q){if(!Array.isArray(q))return!1;if(q[0]==="within"||q[0]==="distance")return!0;for(let D=1;D"||D==="<="||D===">="?Tf(q[1],q[2],D):D==="any"?(Y=q.slice(1),["any"].concat(Y.map(vf))):D==="all"?["all"].concat(q.slice(1).map(vf)):D==="none"?["all"].concat(q.slice(1).map(vf).map(au)):D==="in"?Lu(q[1],q.slice(2)):D==="!in"?au(Lu(q[1],q.slice(2))):D==="has"?zf(q[1]):D!=="!has"||au(zf(q[1]));var Y}function Tf(q,D,Y){switch(q){case"$type":return[`filter-type-${Y}`,D];case"$id":return[`filter-id-${Y}`,D];default:return[`filter-${Y}`,q,D]}}function Lu(q,D){if(D.length===0)return!1;switch(q){case"$type":return["filter-type-in",["literal",D]];case"$id":return["filter-id-in",["literal",D]];default:return D.length>200&&!D.some(Y=>typeof Y!=typeof D[0])?["filter-in-large",q,["literal",D.sort(lc)]]:["filter-in-small",q,["literal",D]]}}function zf(q){switch(q){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",q]}}function au(q){return["!",q]}function $c(q){let D=typeof q;if(D==="number"||D==="boolean"||D==="string"||q==null)return JSON.stringify(q);if(Array.isArray(q)){let Ce="[";for(let Ue of q)Ce+=`${$c(Ue)},`;return`${Ce}]`}let Y=Object.keys(q).sort(),pe="{";for(let Ce=0;Cepe.maximum?[new ge(D,Y,`${Y} is greater than the maximum value ${pe.maximum}`)]:[]}function mf(q){let D=q.valueSpec,Y=il(q.value.type),pe,Ce,Ue,Ge={},ut=Y!=="categorical"&&q.value.property===void 0,Tt=!ut,Ft=Us(q.value.stops)==="array"&&Us(q.value.stops[0])==="array"&&Us(q.value.stops[0][0])==="object",$t=gu({key:q.key,value:q.value,valueSpec:q.styleSpec.function,validateSpec:q.validateSpec,style:q.style,styleSpec:q.styleSpec,objectElementValidators:{stops:function(zr){if(Y==="identity")return[new ge(zr.key,zr.value,'identity function may not have a "stops" property')];let Kr=[],la=zr.value;return Kr=Kr.concat(Jf({key:zr.key,value:la,valueSpec:zr.valueSpec,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,arrayElementValidator:lr})),Us(la)==="array"&&la.length===0&&Kr.push(new ge(zr.key,la,"array must have at least one stop")),Kr},default:function(zr){return zr.validateSpec({key:zr.key,value:zr.value,valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec})}}});return Y==="identity"&&ut&&$t.push(new ge(q.key,q.value,'missing required property "property"')),Y==="identity"||q.value.stops||$t.push(new ge(q.key,q.value,'missing required property "stops"')),Y==="exponential"&&q.valueSpec.expression&&!zc(q.valueSpec)&&$t.push(new ge(q.key,q.value,"exponential functions not supported")),q.styleSpec.$version>=8&&(Tt&&!Eu(q.valueSpec)?$t.push(new ge(q.key,q.value,"property functions not supported")):ut&&!wf(q.valueSpec)&&$t.push(new ge(q.key,q.value,"zoom functions not supported"))),Y!=="categorical"&&!Ft||q.value.property!==void 0||$t.push(new ge(q.key,q.value,'"property" property is required')),$t;function lr(zr){let Kr=[],la=zr.value,za=zr.key;if(Us(la)!=="array")return[new ge(za,la,`array expected, ${Us(la)} found`)];if(la.length!==2)return[new ge(za,la,`array length 2 expected, length ${la.length} found`)];if(Ft){if(Us(la[0])!=="object")return[new ge(za,la,`object expected, ${Us(la[0])} found`)];if(la[0].zoom===void 0)return[new ge(za,la,"object stop key must have zoom")];if(la[0].value===void 0)return[new ge(za,la,"object stop key must have value")];if(Ue&&Ue>il(la[0].zoom))return[new ge(za,la[0].zoom,"stop zoom values must appear in ascending order")];il(la[0].zoom)!==Ue&&(Ue=il(la[0].zoom),Ce=void 0,Ge={}),Kr=Kr.concat(gu({key:`${za}[0]`,value:la[0],valueSpec:{zoom:{}},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,objectElementValidators:{zoom:el,value:Ar}}))}else Kr=Kr.concat(Ar({key:`${za}[0]`,value:la[0],valueSpec:{},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec},la));return xc(mu(la[1]))?Kr.concat([new ge(`${za}[1]`,la[1],"expressions are not allowed in function stops.")]):Kr.concat(zr.validateSpec({key:`${za}[1]`,value:la[1],valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec}))}function Ar(zr,Kr){let la=Us(zr.value),za=il(zr.value),ja=zr.value!==null?zr.value:Kr;if(pe){if(la!==pe)return[new ge(zr.key,ja,`${la} stop domain type must match previous stop domain type ${pe}`)]}else pe=la;if(la!=="number"&&la!=="string"&&la!=="boolean")return[new ge(zr.key,ja,"stop domain value must be a number, string, or boolean")];if(la!=="number"&&Y!=="categorical"){let gi=`number expected, ${la} found`;return Eu(D)&&Y===void 0&&(gi+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ge(zr.key,ja,gi)]}return Y!=="categorical"||la!=="number"||isFinite(za)&&Math.floor(za)===za?Y!=="categorical"&&la==="number"&&Ce!==void 0&&zanew ge(`${q.key}${pe.key}`,q.value,pe.message));let Y=D.value.expression||D.value._styleExpression.expression;if(q.expressionContext==="property"&&q.propertyKey==="text-font"&&!Y.outputDefined())return[new ge(q.key,q.value,`Invalid data expression for "${q.propertyKey}". Output values must be contained as literals within the expression.`)];if(q.expressionContext==="property"&&q.propertyType==="layout"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with layout properties.')];if(q.expressionContext==="filter"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with filters.')];if(q.expressionContext&&q.expressionContext.indexOf("cluster")===0){if(!Df(Y,["zoom","feature-state"]))return[new ge(q.key,q.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(q.expressionContext==="cluster-initial"&&!uh(Y))return[new ge(q.key,q.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ju(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=[];return Array.isArray(pe.values)?pe.values.indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${pe.values.join(", ")}], ${JSON.stringify(Y)} found`)):Object.keys(pe.values).indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${Object.keys(pe.values).join(", ")}], ${JSON.stringify(Y)} found`)),Ce}function Af(q){return Sh(mu(q.value))?wc(ce({},q,{expressionContext:"filter",valueSpec:{value:"boolean"}})):uc(q)}function uc(q){let D=q.value,Y=q.key;if(Us(D)!=="array")return[new ge(Y,D,`array expected, ${Us(D)} found`)];let pe=q.styleSpec,Ce,Ue=[];if(D.length<1)return[new ge(Y,D,"filter array must have at least 1 element")];switch(Ue=Ue.concat(ju({key:`${Y}[0]`,value:D[0],valueSpec:pe.filter_operator,style:q.style,styleSpec:q.styleSpec})),il(D[0])){case"<":case"<=":case">":case">=":D.length>=2&&il(D[1])==="$type"&&Ue.push(new ge(Y,D,`"$type" cannot be use with operator "${D[0]}"`));case"==":case"!=":D.length!==3&&Ue.push(new ge(Y,D,`filter array for operator "${D[0]}" must have 3 elements`));case"in":case"!in":D.length>=2&&(Ce=Us(D[1]),Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`)));for(let Ge=2;Ge{Ft in Y&&D.push(new ge(pe,Y[Ft],`"${Ft}" is prohibited for ref layers`))}),Ce.layers.forEach(Ft=>{il(Ft.id)===ut&&(Tt=Ft)}),Tt?Tt.ref?D.push(new ge(pe,Y.ref,"ref cannot reference another ref layer")):Ge=il(Tt.type):D.push(new ge(pe,Y.ref,`ref layer "${ut}" not found`))}else if(Ge!=="background")if(Y.source){let Tt=Ce.sources&&Ce.sources[Y.source],Ft=Tt&&il(Tt.type);Tt?Ft==="vector"&&Ge==="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster source`)):Ft!=="raster-dem"&&Ge==="hillshade"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster-dem source`)):Ft==="raster"&&Ge!=="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a vector source`)):Ft!=="vector"||Y["source-layer"]?Ft==="raster-dem"&&Ge!=="hillshade"?D.push(new ge(pe,Y.source,"raster-dem source can only be used with layer type 'hillshade'.")):Ge!=="line"||!Y.paint||!Y.paint["line-gradient"]||Ft==="geojson"&&Tt.lineMetrics||D.push(new ge(pe,Y,`layer "${Y.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):D.push(new ge(pe,Y,`layer "${Y.id}" must specify a "source-layer"`)):D.push(new ge(pe,Y.source,`source "${Y.source}" not found`))}else D.push(new ge(pe,Y,'missing required property "source"'));return D=D.concat(gu({key:pe,value:Y,valueSpec:Ue.layer,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,objectElementValidators:{"*":()=>[],type:()=>q.validateSpec({key:`${pe}.type`,value:Y.type,valueSpec:Ue.layer.type,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,object:Y,objectKey:"type"}),filter:Af,layout:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>Vl(ce({layerType:Ge},Ft))}}),paint:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>$f(ce({layerType:Ge},Ft))}})}})),D}function Vu(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="string"?[new ge(Y,D,`string expected, ${pe} found`)]:[]}let Tc={promoteId:function({key:q,value:D}){if(Us(D)==="string")return Vu({key:q,value:D});{let Y=[];for(let pe in D)Y.push(...Vu({key:`${q}.${pe}`,value:D[pe]}));return Y}}};function cc(q){let D=q.value,Y=q.key,pe=q.styleSpec,Ce=q.style,Ue=q.validateSpec;if(!D.type)return[new ge(Y,D,'"type" is required')];let Ge=il(D.type),ut;switch(Ge){case"vector":case"raster":return ut=gu({key:Y,value:D,valueSpec:pe[`source_${Ge.replace("-","_")}`],style:q.style,styleSpec:pe,objectElementValidators:Tc,validateSpec:Ue}),ut;case"raster-dem":return ut=function(Tt){var Ft;let $t=(Ft=Tt.sourceName)!==null&&Ft!==void 0?Ft:"",lr=Tt.value,Ar=Tt.styleSpec,zr=Ar.source_raster_dem,Kr=Tt.style,la=[],za=Us(lr);if(lr===void 0)return la;if(za!=="object")return la.push(new ge("source_raster_dem",lr,`object expected, ${za} found`)),la;let ja=il(lr.encoding)==="custom",gi=["redFactor","greenFactor","blueFactor","baseShift"],ei=Tt.value.encoding?`"${Tt.value.encoding}"`:"Default";for(let hi in lr)!ja&&gi.includes(hi)?la.push(new ge(hi,lr[hi],`In "${$t}": "${hi}" is only valid when "encoding" is set to "custom". ${ei} encoding found`)):zr[hi]?la=la.concat(Tt.validateSpec({key:hi,value:lr[hi],valueSpec:zr[hi],validateSpec:Tt.validateSpec,style:Kr,styleSpec:Ar})):la.push(new ge(hi,lr[hi],`unknown property "${hi}"`));return la}({sourceName:Y,value:D,style:q.style,styleSpec:pe,validateSpec:Ue}),ut;case"geojson":if(ut=gu({key:Y,value:D,valueSpec:pe.source_geojson,style:Ce,styleSpec:pe,validateSpec:Ue,objectElementValidators:Tc}),D.cluster)for(let Tt in D.clusterProperties){let[Ft,$t]=D.clusterProperties[Tt],lr=typeof Ft=="string"?[Ft,["accumulated"],["get",Tt]]:Ft;ut.push(...wc({key:`${Y}.${Tt}.map`,value:$t,validateSpec:Ue,expressionContext:"cluster-map"})),ut.push(...wc({key:`${Y}.${Tt}.reduce`,value:lr,validateSpec:Ue,expressionContext:"cluster-reduce"}))}return ut;case"video":return gu({key:Y,value:D,valueSpec:pe.source_video,style:Ce,validateSpec:Ue,styleSpec:pe});case"image":return gu({key:Y,value:D,valueSpec:pe.source_image,style:Ce,validateSpec:Ue,styleSpec:pe});case"canvas":return[new ge(Y,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return ju({key:`${Y}.type`,value:D.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:Ce,validateSpec:Ue,styleSpec:pe})}}function Cl(q){let D=q.value,Y=q.styleSpec,pe=Y.light,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("light",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D){let Tt=ut.match(/^(.*)-transition$/);Ue=Ue.concat(Tt&&pe[Tt[1]]&&pe[Tt[1]].transition?q.validateSpec({key:ut,value:D[ut],valueSpec:Y.transition,validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)])}return Ue}function iu(q){let D=q.value,Y=q.styleSpec,pe=Y.sky,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("sky",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge}function fc(q){let D=q.value,Y=q.styleSpec,pe=Y.terrain,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("terrain",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D)Ue=Ue.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ue}function Oc(q){let D=[],Y=q.value,pe=q.key;if(Array.isArray(Y)){let Ce=[],Ue=[];for(let Ge in Y)Y[Ge].id&&Ce.includes(Y[Ge].id)&&D.push(new ge(pe,Y,`all the sprites' ids must be unique, but ${Y[Ge].id} is duplicated`)),Ce.push(Y[Ge].id),Y[Ge].url&&Ue.includes(Y[Ge].url)&&D.push(new ge(pe,Y,`all the sprites' URLs must be unique, but ${Y[Ge].url} is duplicated`)),Ue.push(Y[Ge].url),D=D.concat(gu({key:`${pe}[${Ge}]`,value:Y[Ge],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:q.validateSpec}));return D}return Vu({key:pe,value:Y})}let Qu={"*":()=>[],array:Jf,boolean:function(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="boolean"?[new ge(Y,D,`boolean expected, ${pe} found`)]:[]},number:el,color:function(q){let D=q.key,Y=q.value,pe=Us(Y);return pe!=="string"?[new ge(D,Y,`color expected, ${pe} found`)]:Ut.parse(String(Y))?[]:[new ge(D,Y,`color expected, "${Y}" found`)]},constants:Ff,enum:ju,filter:Af,function:mf,layer:Qf,object:gu,source:cc,light:Cl,sky:iu,terrain:fc,projection:function(q){let D=q.value,Y=q.styleSpec,pe=Y.projection,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("projection",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge},string:Vu,formatted:function(q){return Vu(q).length===0?[]:wc(q)},resolvedImage:function(q){return Vu(q).length===0?[]:wc(q)},padding:function(q){let D=q.key,Y=q.value;if(Us(Y)==="array"){if(Y.length<1||Y.length>4)return[new ge(D,Y,`padding requires 1 to 4 values; ${Y.length} values found`)];let pe={type:"number"},Ce=[];for(let Ue=0;Ue[]}})),q.constants&&(Y=Y.concat(Ff({key:"constants",value:q.constants,style:q,styleSpec:D,validateSpec:ef}))),qr(Y)}function Yr(q){return function(D){return q(ps(wo({},D),{validateSpec:ef}))}}function qr(q){return[].concat(q).sort((D,Y)=>D.line-Y.line)}function ba(q){return function(...D){return qr(q.apply(this,D))}}fr.source=ba(Yr(cc)),fr.sprite=ba(Yr(Oc)),fr.glyphs=ba(Yr(Zt)),fr.light=ba(Yr(Cl)),fr.sky=ba(Yr(iu)),fr.terrain=ba(Yr(fc)),fr.layer=ba(Yr(Qf)),fr.filter=ba(Yr(Af)),fr.paintProperty=ba(Yr($f)),fr.layoutProperty=ba(Yr(Vl));let Ka=fr,oi=Ka.light,yi=Ka.sky,ki=Ka.paintProperty,Bi=Ka.layoutProperty;function li(q,D){let Y=!1;if(D&&D.length)for(let pe of D)q.fire(new j(new Error(pe.message))),Y=!0;return Y}class _i{constructor(D,Y,pe){let Ce=this.cells=[];if(D instanceof ArrayBuffer){this.arrayBuffer=D;let Ge=new Int32Array(this.arrayBuffer);D=Ge[0],this.d=(Y=Ge[1])+2*(pe=Ge[2]);for(let Tt=0;Tt=lr[Kr+0]&&Ce>=lr[Kr+1])?(ut[zr]=!0,Ge.push($t[zr])):ut[zr]=!1}}}}_forEachCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this._convertToCellCoord(D),$t=this._convertToCellCoord(Y),lr=this._convertToCellCoord(pe),Ar=this._convertToCellCoord(Ce);for(let zr=Ft;zr<=lr;zr++)for(let Kr=$t;Kr<=Ar;Kr++){let la=this.d*Kr+zr;if((!Tt||Tt(this._convertFromCellCoord(zr),this._convertFromCellCoord(Kr),this._convertFromCellCoord(zr+1),this._convertFromCellCoord(Kr+1)))&&Ue.call(this,D,Y,pe,Ce,la,Ge,ut,Tt))return}}_convertFromCellCoord(D){return(D-this.padding)/this.scale}_convertToCellCoord(D){return Math.max(0,Math.min(this.d-1,Math.floor(D*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let D=this.cells,Y=3+this.cells.length+1+1,pe=0;for(let Ge=0;Ge=0)continue;let Ge=q[Ue];Ce[Ue]=vi[Y].shallow.indexOf(Ue)>=0?Ge:Jn(Ge,D)}q instanceof Error&&(Ce.message=q.message)}if(Ce.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(Ce.$name=Y),Ce}function no(q){if(Wn(q))return q;if(Array.isArray(q))return q.map(no);if(typeof q!="object")throw new Error("can't deserialize object of type "+typeof q);let D=Kn(q)||"Object";if(!vi[D])throw new Error(`can't deserialize unregistered class ${D}`);let{klass:Y}=vi[D];if(!Y)throw new Error(`can't deserialize unregistered class ${D}`);if(Y.deserialize)return Y.deserialize(q);let pe=Object.create(Y.prototype);for(let Ce of Object.keys(q)){if(Ce==="$name")continue;let Ue=q[Ce];pe[Ce]=vi[D].shallow.indexOf(Ce)>=0?Ue:no(Ue)}return pe}class en{constructor(){this.first=!0}update(D,Y){let pe=Math.floor(D);return this.first?(this.first=!1,this.lastIntegerZoom=pe,this.lastIntegerZoomTime=0,this.lastZoom=D,this.lastFloorZoom=pe,!0):(this.lastFloorZoom>pe?(this.lastIntegerZoom=pe+1,this.lastIntegerZoomTime=Y):this.lastFloorZoomq>=128&&q<=255,"Hangul Jamo":q=>q>=4352&&q<=4607,Khmer:q=>q>=6016&&q<=6143,"General Punctuation":q=>q>=8192&&q<=8303,"Letterlike Symbols":q=>q>=8448&&q<=8527,"Number Forms":q=>q>=8528&&q<=8591,"Miscellaneous Technical":q=>q>=8960&&q<=9215,"Control Pictures":q=>q>=9216&&q<=9279,"Optical Character Recognition":q=>q>=9280&&q<=9311,"Enclosed Alphanumerics":q=>q>=9312&&q<=9471,"Geometric Shapes":q=>q>=9632&&q<=9727,"Miscellaneous Symbols":q=>q>=9728&&q<=9983,"Miscellaneous Symbols and Arrows":q=>q>=11008&&q<=11263,"Ideographic Description Characters":q=>q>=12272&&q<=12287,"CJK Symbols and Punctuation":q=>q>=12288&&q<=12351,Katakana:q=>q>=12448&&q<=12543,Kanbun:q=>q>=12688&&q<=12703,"CJK Strokes":q=>q>=12736&&q<=12783,"Enclosed CJK Letters and Months":q=>q>=12800&&q<=13055,"CJK Compatibility":q=>q>=13056&&q<=13311,"Yijing Hexagram Symbols":q=>q>=19904&&q<=19967,"Private Use Area":q=>q>=57344&&q<=63743,"Vertical Forms":q=>q>=65040&&q<=65055,"CJK Compatibility Forms":q=>q>=65072&&q<=65103,"Small Form Variants":q=>q>=65104&&q<=65135,"Halfwidth and Fullwidth Forms":q=>q>=65280&&q<=65519};function co(q){for(let D of q)if(vs(D.charCodeAt(0)))return!0;return!1}function Wo(q){for(let D of q)if(!Ms(D.charCodeAt(0)))return!1;return!0}function bs(q){let D=q.map(Y=>{try{return new RegExp(`\\p{sc=${Y}}`,"u").source}catch{return null}}).filter(Y=>Y);return new RegExp(D.join("|"),"u")}let Xs=bs(["Arab","Dupl","Mong","Ougr","Syrc"]);function Ms(q){return!Xs.test(String.fromCodePoint(q))}let Hs=bs(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function vs(q){return!(q!==746&&q!==747&&(q<4352||!(Ri["CJK Compatibility Forms"](q)&&!(q>=65097&&q<=65103)||Ri["CJK Compatibility"](q)||Ri["CJK Strokes"](q)||!(!Ri["CJK Symbols and Punctuation"](q)||q>=12296&&q<=12305||q>=12308&&q<=12319||q===12336)||Ri["Enclosed CJK Letters and Months"](q)||Ri["Ideographic Description Characters"](q)||Ri.Kanbun(q)||Ri.Katakana(q)&&q!==12540||!(!Ri["Halfwidth and Fullwidth Forms"](q)||q===65288||q===65289||q===65293||q>=65306&&q<=65310||q===65339||q===65341||q===65343||q>=65371&&q<=65503||q===65507||q>=65512&&q<=65519)||!(!Ri["Small Form Variants"](q)||q>=65112&&q<=65118||q>=65123&&q<=65126)||Ri["Vertical Forms"](q)||Ri["Yijing Hexagram Symbols"](q)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(q))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(q))||Hs.test(String.fromCodePoint(q)))))}function Il(q){return!(vs(q)||function(D){return!!(Ri["Latin-1 Supplement"](D)&&(D===167||D===169||D===174||D===177||D===188||D===189||D===190||D===215||D===247)||Ri["General Punctuation"](D)&&(D===8214||D===8224||D===8225||D===8240||D===8241||D===8251||D===8252||D===8258||D===8263||D===8264||D===8265||D===8273)||Ri["Letterlike Symbols"](D)||Ri["Number Forms"](D)||Ri["Miscellaneous Technical"](D)&&(D>=8960&&D<=8967||D>=8972&&D<=8991||D>=8996&&D<=9e3||D===9003||D>=9085&&D<=9114||D>=9150&&D<=9165||D===9167||D>=9169&&D<=9179||D>=9186&&D<=9215)||Ri["Control Pictures"](D)&&D!==9251||Ri["Optical Character Recognition"](D)||Ri["Enclosed Alphanumerics"](D)||Ri["Geometric Shapes"](D)||Ri["Miscellaneous Symbols"](D)&&!(D>=9754&&D<=9759)||Ri["Miscellaneous Symbols and Arrows"](D)&&(D>=11026&&D<=11055||D>=11088&&D<=11097||D>=11192&&D<=11243)||Ri["CJK Symbols and Punctuation"](D)||Ri.Katakana(D)||Ri["Private Use Area"](D)||Ri["CJK Compatibility Forms"](D)||Ri["Small Form Variants"](D)||Ri["Halfwidth and Fullwidth Forms"](D)||D===8734||D===8756||D===8757||D>=9984&&D<=10087||D>=10102&&D<=10131||D===65532||D===65533)}(q))}let fl=bs(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function tl(q){return fl.test(String.fromCodePoint(q))}function Ln(q,D){return!(!D&&tl(q)||q>=2304&&q<=3583||q>=3840&&q<=4255||Ri.Khmer(q))}function Ao(q){for(let D of q)if(tl(D.charCodeAt(0)))return!0;return!1}let js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(q){this.pluginStatus=q.pluginStatus,this.pluginURL=q.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(q){this.applyArabicShaping=q.applyArabicShaping,this.processBidirectionalText=q.processBidirectionalText,this.processStyledBidirectionalText=q.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ts{constructor(D,Y){this.zoom=D,Y?(this.now=Y.now,this.fadeDuration=Y.fadeDuration,this.zoomHistory=Y.zoomHistory,this.transition=Y.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new en,this.transition={})}isSupportedScript(D){return function(Y,pe){for(let Ce of Y)if(!Ln(Ce.charCodeAt(0),pe))return!1;return!0}(D,js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let D=this.zoom,Y=D-Math.floor(D),pe=this.crossFadingFactor();return D>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:Y+(1-Y)*pe}:{fromScale:.5,toScale:1,t:1-(1-pe)*Y}}}class nu{constructor(D,Y){this.property=D,this.value=Y,this.expression=function(pe,Ce){if(Kf(pe))return new xl(pe,Ce);if(xc(pe)){let Ue=vu(pe,Ce);if(Ue.result==="error")throw new Error(Ue.value.map(Ge=>`${Ge.key}: ${Ge.message}`).join(", "));return Ue.value}{let Ue=pe;return Ce.type==="color"&&typeof pe=="string"?Ue=Ut.parse(pe):Ce.type!=="padding"||typeof pe!="number"&&!Array.isArray(pe)?Ce.type==="variableAnchorOffsetCollection"&&Array.isArray(pe)&&(Ue=Fa.parse(pe)):Ue=Xr.parse(pe),{kind:"constant",evaluate:()=>Ue}}}(Y===void 0?D.specification.default:Y,D.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(D,Y,pe){return this.property.possiblyEvaluate(this,D,Y,pe)}}class Pu{constructor(D){this.property=D,this.value=new nu(D,void 0)}transitioned(D,Y){return new tf(this.property,this.value,Y,E({},D.transition,this.transition),D.now)}untransitioned(){return new tf(this.property,this.value,null,{},0)}}class ec{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitionablePropertyValues)}getValue(D){return u(this._values[D].value.value)}setValue(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].value=new nu(this._values[D].property,Y===null?void 0:u(Y))}getTransition(D){return u(this._values[D].transition)}setTransition(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].transition=u(Y)||void 0}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe);let Ce=this.getTransition(Y);Ce!==void 0&&(D[`${Y}-transition`]=Ce)}return D}transitioned(D,Y){let pe=new yu(this._properties);for(let Ce of Object.keys(this._values))pe._values[Ce]=this._values[Ce].transitioned(D,Y._values[Ce]);return pe}untransitioned(){let D=new yu(this._properties);for(let Y of Object.keys(this._values))D._values[Y]=this._values[Y].untransitioned();return D}}class tf{constructor(D,Y,pe,Ce,Ue){this.property=D,this.value=Y,this.begin=Ue+Ce.delay||0,this.end=this.begin+Ce.duration||0,D.specification.transition&&(Ce.delay||Ce.duration)&&(this.prior=pe)}possiblyEvaluate(D,Y,pe){let Ce=D.now||0,Ue=this.value.possiblyEvaluate(D,Y,pe),Ge=this.prior;if(Ge){if(Ce>this.end)return this.prior=null,Ue;if(this.value.isDataDriven())return this.prior=null,Ue;if(Ce=1)return 1;let Ft=Tt*Tt,$t=Ft*Tt;return 4*(Tt<.5?$t:3*(Tt-Ft)+$t-.75)}(ut))}}return Ue}}class yu{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitioningPropertyValues)}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}hasTransition(){for(let D of Object.keys(this._values))if(this._values[D].prior)return!0;return!1}}class Bc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPropertyValues)}hasValue(D){return this._values[D].value!==void 0}getValue(D){return u(this._values[D].value)}setValue(D,Y){this._values[D]=new nu(this._values[D].property,Y===null?void 0:u(Y))}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe)}return D}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}}class Iu{constructor(D,Y,pe){this.property=D,this.value=Y,this.parameters=pe}isConstant(){return this.value.kind==="constant"}constantOr(D){return this.value.kind==="constant"?this.value.value:D}evaluate(D,Y,pe,Ce){return this.property.evaluate(this.value,this.parameters,D,Y,pe,Ce)}}class Ac{constructor(D){this._properties=D,this._values=Object.create(D.defaultPossiblyEvaluatedValues)}get(D){return this._values[D]}}class ro{constructor(D){this.specification=D}possiblyEvaluate(D,Y){if(D.isDataDriven())throw new Error("Value should not be data driven");return D.expression.evaluate(Y)}interpolate(D,Y,pe){let Ce=$n[this.specification.type];return Ce?Ce(D,Y,pe):D}}class Po{constructor(D,Y){this.specification=D,this.overrides=Y}possiblyEvaluate(D,Y,pe,Ce){return new Iu(this,D.expression.kind==="constant"||D.expression.kind==="camera"?{kind:"constant",value:D.expression.evaluate(Y,null,{},pe,Ce)}:D.expression,Y)}interpolate(D,Y,pe){if(D.value.kind!=="constant"||Y.value.kind!=="constant")return D;if(D.value.value===void 0||Y.value.value===void 0)return new Iu(this,{kind:"constant",value:void 0},D.parameters);let Ce=$n[this.specification.type];if(Ce){let Ue=Ce(D.value.value,Y.value.value,pe);return new Iu(this,{kind:"constant",value:Ue},D.parameters)}return D}evaluate(D,Y,pe,Ce,Ue,Ge){return D.kind==="constant"?D.value:D.evaluate(Y,pe,Ce,Ue,Ge)}}class Nc extends Po{possiblyEvaluate(D,Y,pe,Ce){if(D.value===void 0)return new Iu(this,{kind:"constant",value:void 0},Y);if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce),Ge=D.property.specification.type==="resolvedImage"&&typeof Ue!="string"?Ue.name:Ue,ut=this._calculate(Ge,Ge,Ge,Y);return new Iu(this,{kind:"constant",value:ut},Y)}if(D.expression.kind==="camera"){let Ue=this._calculate(D.expression.evaluate({zoom:Y.zoom-1}),D.expression.evaluate({zoom:Y.zoom}),D.expression.evaluate({zoom:Y.zoom+1}),Y);return new Iu(this,{kind:"constant",value:Ue},Y)}return new Iu(this,D.expression,Y)}evaluate(D,Y,pe,Ce,Ue,Ge){if(D.kind==="source"){let ut=D.evaluate(Y,pe,Ce,Ue,Ge);return this._calculate(ut,ut,ut,Y)}return D.kind==="composite"?this._calculate(D.evaluate({zoom:Math.floor(Y.zoom)-1},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)+1},pe,Ce),Y):D.value}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class hc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){if(D.value!==void 0){if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce);return this._calculate(Ue,Ue,Ue,Y)}return this._calculate(D.expression.evaluate(new Ts(Math.floor(Y.zoom-1),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom+1),Y)),Y)}}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class pc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){return!!D.expression.evaluate(Y,null,{},pe,Ce)}interpolate(){return!1}}class Oe{constructor(D){this.properties=D,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let Y in D){let pe=D[Y];pe.specification.overridable&&this.overridableProperties.push(Y);let Ce=this.defaultPropertyValues[Y]=new nu(pe,void 0),Ue=this.defaultTransitionablePropertyValues[Y]=new Pu(pe);this.defaultTransitioningPropertyValues[Y]=Ue.untransitioned(),this.defaultPossiblyEvaluatedValues[Y]=Ce.possiblyEvaluate({})}}}ti("DataDrivenProperty",Po),ti("DataConstantProperty",ro),ti("CrossFadedDataDrivenProperty",Nc),ti("CrossFadedProperty",hc),ti("ColorRampProperty",pc);let R="-transition";class ae extends ee{constructor(D,Y){if(super(),this.id=D.id,this.type=D.type,this._featureFilter={filter:()=>!0,needGeometry:!1},D.type!=="custom"&&(this.metadata=D.metadata,this.minzoom=D.minzoom,this.maxzoom=D.maxzoom,D.type!=="background"&&(this.source=D.source,this.sourceLayer=D["source-layer"],this.filter=D.filter),Y.layout&&(this._unevaluatedLayout=new Bc(Y.layout)),Y.paint)){this._transitionablePaint=new ec(Y.paint);for(let pe in D.paint)this.setPaintProperty(pe,D.paint[pe],{validate:!1});for(let pe in D.layout)this.setLayoutProperty(pe,D.layout[pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(Y.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(D){return D==="visibility"?this.visibility:this._unevaluatedLayout.getValue(D)}setLayoutProperty(D,Y,pe={}){Y!=null&&this._validate(Bi,`layers.${this.id}.layout.${D}`,D,Y,pe)||(D!=="visibility"?this._unevaluatedLayout.setValue(D,Y):this.visibility=Y)}getPaintProperty(D){return D.endsWith(R)?this._transitionablePaint.getTransition(D.slice(0,-11)):this._transitionablePaint.getValue(D)}setPaintProperty(D,Y,pe={}){if(Y!=null&&this._validate(ki,`layers.${this.id}.paint.${D}`,D,Y,pe))return!1;if(D.endsWith(R))return this._transitionablePaint.setTransition(D.slice(0,-11),Y||void 0),!1;{let Ce=this._transitionablePaint._values[D],Ue=Ce.property.specification["property-type"]==="cross-faded-data-driven",Ge=Ce.value.isDataDriven(),ut=Ce.value;this._transitionablePaint.setValue(D,Y),this._handleSpecialPaintPropertyUpdate(D);let Tt=this._transitionablePaint._values[D].value;return Tt.isDataDriven()||Ge||Ue||this._handleOverridablePaintPropertyUpdate(D,ut,Tt)}}_handleSpecialPaintPropertyUpdate(D){}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!1}isHidden(D){return!!(this.minzoom&&D=this.maxzoom)||this.visibility==="none"}updateTransitions(D){this._transitioningPaint=this._transitionablePaint.transitioned(D,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(D,Y){D.getCrossfadeParameters&&(this._crossfadeParameters=D.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(D,void 0,Y)),this.paint=this._transitioningPaint.possiblyEvaluate(D,void 0,Y)}serialize(){let D={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(D.layout=D.layout||{},D.layout.visibility=this.visibility),d(D,(Y,pe)=>!(Y===void 0||pe==="layout"&&!Object.keys(Y).length||pe==="paint"&&!Object.keys(Y).length))}_validate(D,Y,pe,Ce,Ue={}){return(!Ue||Ue.validate!==!1)&&li(this,D.call(Ka,{key:Y,layerType:this.type,objectKey:pe,value:Ce,styleSpec:ie,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let D in this.paint._values){let Y=this.paint.get(D);if(Y instanceof Iu&&Eu(Y.property.specification)&&(Y.value.kind==="source"||Y.value.kind==="composite")&&Y.value.isStateDependent)return!0}return!1}}let we={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Se{constructor(D,Y){this._structArray=D,this._pos1=Y*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class De{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(D,Y){return D._trim(),Y&&(D.isTransferred=!0,Y.push(D.arrayBuffer)),{length:D.length,arrayBuffer:D.arrayBuffer}}static deserialize(D){let Y=Object.create(this.prototype);return Y.arrayBuffer=D.arrayBuffer,Y.length=D.length,Y.capacity=D.arrayBuffer.byteLength/Y.bytesPerElement,Y._refreshViews(),Y}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(D){this.reserve(D),this.length=D}reserve(D){if(D>this.capacity){this.capacity=Math.max(D,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let Y=this.uint8;this._refreshViews(),Y&&this.uint8.set(Y)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ft(q,D=1){let Y=0,pe=0;return{members:q.map(Ce=>{let Ue=we[Ce.type].BYTES_PER_ELEMENT,Ge=Y=bt(Y,Math.max(D,Ue)),ut=Ce.components||1;return pe=Math.max(pe,Ue),Y+=Ue*ut,{name:Ce.name,type:Ce.type,components:ut,offset:Ge}}),size:bt(Y,Math.max(pe,D)),alignment:D}}function bt(q,D){return Math.ceil(q/D)*D}class Dt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.int16[Ce+0]=Y,this.int16[Ce+1]=pe,D}}Dt.prototype.bytesPerElement=4,ti("StructArrayLayout2i4",Dt);class Yt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.int16[Ue+0]=Y,this.int16[Ue+1]=pe,this.int16[Ue+2]=Ce,D}}Yt.prototype.bytesPerElement=6,ti("StructArrayLayout3i6",Yt);class cr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.int16[Ge+0]=Y,this.int16[Ge+1]=pe,this.int16[Ge+2]=Ce,this.int16[Ge+3]=Ue,D}}cr.prototype.bytesPerElement=8,ti("StructArrayLayout4i8",cr);class hr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}hr.prototype.bytesPerElement=12,ti("StructArrayLayout2i4i12",hr);class jr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=4*D,Ft=8*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.uint8[Ft+4]=Ce,this.uint8[Ft+5]=Ue,this.uint8[Ft+6]=Ge,this.uint8[Ft+7]=ut,D}}jr.prototype.bytesPerElement=8,ti("StructArrayLayout2i4ub8",jr);class ea extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.float32[Ce+0]=Y,this.float32[Ce+1]=pe,D}}ea.prototype.bytesPerElement=8,ti("StructArrayLayout2f8",ea);class qe extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=this.length;return this.resize(lr+1),this.emplace(lr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=10*D;return this.uint16[Ar+0]=Y,this.uint16[Ar+1]=pe,this.uint16[Ar+2]=Ce,this.uint16[Ar+3]=Ue,this.uint16[Ar+4]=Ge,this.uint16[Ar+5]=ut,this.uint16[Ar+6]=Tt,this.uint16[Ar+7]=Ft,this.uint16[Ar+8]=$t,this.uint16[Ar+9]=lr,D}}qe.prototype.bytesPerElement=20,ti("StructArrayLayout10ui20",qe);class Je extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=this.length;return this.resize(zr+1),this.emplace(zr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr){let Kr=12*D;return this.int16[Kr+0]=Y,this.int16[Kr+1]=pe,this.int16[Kr+2]=Ce,this.int16[Kr+3]=Ue,this.uint16[Kr+4]=Ge,this.uint16[Kr+5]=ut,this.uint16[Kr+6]=Tt,this.uint16[Kr+7]=Ft,this.int16[Kr+8]=$t,this.int16[Kr+9]=lr,this.int16[Kr+10]=Ar,this.int16[Kr+11]=zr,D}}Je.prototype.bytesPerElement=24,ti("StructArrayLayout4i4ui4i24",Je);class ot extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.float32[Ue+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ot.prototype.bytesPerElement=12,ti("StructArrayLayout3f12",ot);class ht extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint32[1*D+0]=Y,D}}ht.prototype.bytesPerElement=4,ti("StructArrayLayout1ul4",ht);class At extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t=this.length;return this.resize($t+1),this.emplace($t,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=10*D,Ar=5*D;return this.int16[lr+0]=Y,this.int16[lr+1]=pe,this.int16[lr+2]=Ce,this.int16[lr+3]=Ue,this.int16[lr+4]=Ge,this.int16[lr+5]=ut,this.uint32[Ar+3]=Tt,this.uint16[lr+8]=Ft,this.uint16[lr+9]=$t,D}}At.prototype.bytesPerElement=20,ti("StructArrayLayout6i1ul2ui20",At);class _t extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}_t.prototype.bytesPerElement=12,ti("StructArrayLayout2i2i2i12",_t);class Pt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue){let Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,D,Y,pe,Ce,Ue)}emplace(D,Y,pe,Ce,Ue,Ge){let ut=4*D,Tt=8*D;return this.float32[ut+0]=Y,this.float32[ut+1]=pe,this.float32[ut+2]=Ce,this.int16[Tt+6]=Ue,this.int16[Tt+7]=Ge,D}}Pt.prototype.bytesPerElement=16,ti("StructArrayLayout2f1f2i16",Pt);class er extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=16*D,Ft=4*D,$t=8*D;return this.uint8[Tt+0]=Y,this.uint8[Tt+1]=pe,this.float32[Ft+1]=Ce,this.float32[Ft+2]=Ue,this.int16[$t+6]=Ge,this.int16[$t+7]=ut,D}}er.prototype.bytesPerElement=16,ti("StructArrayLayout2ub2f2i16",er);class nr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[Ue+0]=Y,this.uint16[Ue+1]=pe,this.uint16[Ue+2]=Ce,D}}nr.prototype.bytesPerElement=6,ti("StructArrayLayout3ui6",nr);class pr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja){let gi=this.length;return this.resize(gi+1),this.emplace(gi,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi){let ei=24*D,hi=12*D,Ei=48*D;return this.int16[ei+0]=Y,this.int16[ei+1]=pe,this.uint16[ei+2]=Ce,this.uint16[ei+3]=Ue,this.uint32[hi+2]=Ge,this.uint32[hi+3]=ut,this.uint32[hi+4]=Tt,this.uint16[ei+10]=Ft,this.uint16[ei+11]=$t,this.uint16[ei+12]=lr,this.float32[hi+7]=Ar,this.float32[hi+8]=zr,this.uint8[Ei+36]=Kr,this.uint8[Ei+37]=la,this.uint8[Ei+38]=za,this.uint32[hi+10]=ja,this.int16[ei+22]=gi,D}}pr.prototype.bytesPerElement=48,ti("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",pr);class Sr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo){let xo=this.length;return this.resize(xo+1),this.emplace(xo,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo,xo){let Yi=32*D,Ko=16*D;return this.int16[Yi+0]=Y,this.int16[Yi+1]=pe,this.int16[Yi+2]=Ce,this.int16[Yi+3]=Ue,this.int16[Yi+4]=Ge,this.int16[Yi+5]=ut,this.int16[Yi+6]=Tt,this.int16[Yi+7]=Ft,this.uint16[Yi+8]=$t,this.uint16[Yi+9]=lr,this.uint16[Yi+10]=Ar,this.uint16[Yi+11]=zr,this.uint16[Yi+12]=Kr,this.uint16[Yi+13]=la,this.uint16[Yi+14]=za,this.uint16[Yi+15]=ja,this.uint16[Yi+16]=gi,this.uint16[Yi+17]=ei,this.uint16[Yi+18]=hi,this.uint16[Yi+19]=Ei,this.uint16[Yi+20]=En,this.uint16[Yi+21]=fo,this.uint16[Yi+22]=ss,this.uint32[Ko+12]=eo,this.float32[Ko+13]=vn,this.float32[Ko+14]=Uo,this.uint16[Yi+30]=Mo,this.uint16[Yi+31]=xo,D}}Sr.prototype.bytesPerElement=64,ti("StructArrayLayout8i15ui1ul2f2ui64",Sr);class Wr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.float32[1*D+0]=Y,D}}Wr.prototype.bytesPerElement=4,ti("StructArrayLayout1f4",Wr);class ha extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[6*D+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ha.prototype.bytesPerElement=12,ti("StructArrayLayout1ui2f12",ha);class ga extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=4*D;return this.uint32[2*D+0]=Y,this.uint16[Ue+2]=pe,this.uint16[Ue+3]=Ce,D}}ga.prototype.bytesPerElement=8,ti("StructArrayLayout1ul2ui8",ga);class Pa extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.uint16[Ce+0]=Y,this.uint16[Ce+1]=pe,D}}Pa.prototype.bytesPerElement=4,ti("StructArrayLayout2ui4",Pa);class Ja extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint16[1*D+0]=Y,D}}Ja.prototype.bytesPerElement=2,ti("StructArrayLayout1ui2",Ja);class di extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.float32[Ge+0]=Y,this.float32[Ge+1]=pe,this.float32[Ge+2]=Ce,this.float32[Ge+3]=Ue,D}}di.prototype.bytesPerElement=16,ti("StructArrayLayout4f16",di);class pi extends Se{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new i(this.anchorPointX,this.anchorPointY)}}pi.prototype.size=20;class Ci extends At{get(D){return new pi(this,D)}}ti("CollisionBoxArray",Ci);class $i extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(D){this._structArray.uint8[this._pos1+37]=D}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(D){this._structArray.uint8[this._pos1+38]=D}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(D){this._structArray.uint32[this._pos4+10]=D}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}$i.prototype.size=48;class Bn extends pr{get(D){return new $i(this,D)}}ti("PlacedSymbolArray",Bn);class Sn extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(D){this._structArray.uint32[this._pos4+12]=D}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Sn.prototype.size=64;class ho extends Sr{get(D){return new Sn(this,D)}}ti("SymbolInstanceArray",ho);class ts extends Wr{getoffsetX(D){return this.float32[1*D+0]}}ti("GlyphOffsetArray",ts);class yo extends Yt{getx(D){return this.int16[3*D+0]}gety(D){return this.int16[3*D+1]}gettileUnitDistanceFromAnchor(D){return this.int16[3*D+2]}}ti("SymbolLineVertexArray",yo);class Vo extends Se{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Vo.prototype.size=12;class ls extends ha{get(D){return new Vo(this,D)}}ti("TextAnchorOffsetArray",ls);class rl extends Se{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}rl.prototype.size=8;class Ys extends ga{get(D){return new rl(this,D)}}ti("FeatureIndexArray",Ys);class Zo extends Dt{}class Go extends Dt{}class Rl extends Dt{}class Xl extends hr{}class qu extends jr{}class fu extends ea{}class bl extends qe{}class ou extends Je{}class Sc extends ot{}class ql extends ht{}class Hl extends _t{}class de extends er{}class Re extends nr{}class $e extends Pa{}let pt=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:vt}=pt;class wt{constructor(D=[]){this.segments=D}prepareSegment(D,Y,pe,Ce){let Ue=this.segments[this.segments.length-1];return D>wt.MAX_VERTEX_ARRAY_LENGTH&&f(`Max vertices per segment is ${wt.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${D}`),(!Ue||Ue.vertexLength+D>wt.MAX_VERTEX_ARRAY_LENGTH||Ue.sortKey!==Ce)&&(Ue={vertexOffset:Y.length,primitiveOffset:pe.length,vertexLength:0,primitiveLength:0},Ce!==void 0&&(Ue.sortKey=Ce),this.segments.push(Ue)),Ue}get(){return this.segments}destroy(){for(let D of this.segments)for(let Y in D.vaos)D.vaos[Y].destroy()}static simpleSegment(D,Y,pe,Ce){return new wt([{vertexOffset:D,primitiveOffset:Y,vertexLength:pe,primitiveLength:Ce,vaos:{},sortKey:0}])}}function Jt(q,D){return 256*(q=w(Math.floor(q),0,255))+w(Math.floor(D),0,255)}wt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,ti("SegmentVector",wt);let Rt=ft([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var or={exports:{}},Dr={exports:{}};Dr.exports=function(q,D){var Y,pe,Ce,Ue,Ge,ut,Tt,Ft;for(pe=q.length-(Y=3&q.length),Ce=D,Ge=3432918353,ut=461845907,Ft=0;Ft>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295)<<13|Ce>>>19))+((5*(Ce>>>16)&65535)<<16)&4294967295))+((58964+(Ue>>>16)&65535)<<16);switch(Tt=0,Y){case 3:Tt^=(255&q.charCodeAt(Ft+2))<<16;case 2:Tt^=(255&q.charCodeAt(Ft+1))<<8;case 1:Ce^=Tt=(65535&(Tt=(Tt=(65535&(Tt^=255&q.charCodeAt(Ft)))*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295}return Ce^=q.length,Ce=2246822507*(65535&(Ce^=Ce>>>16))+((2246822507*(Ce>>>16)&65535)<<16)&4294967295,Ce=3266489909*(65535&(Ce^=Ce>>>13))+((3266489909*(Ce>>>16)&65535)<<16)&4294967295,(Ce^=Ce>>>16)>>>0};var Or=Dr.exports,va={exports:{}};va.exports=function(q,D){for(var Y,pe=q.length,Ce=D^pe,Ue=0;pe>=4;)Y=1540483477*(65535&(Y=255&q.charCodeAt(Ue)|(255&q.charCodeAt(++Ue))<<8|(255&q.charCodeAt(++Ue))<<16|(255&q.charCodeAt(++Ue))<<24))+((1540483477*(Y>>>16)&65535)<<16),Ce=1540483477*(65535&Ce)+((1540483477*(Ce>>>16)&65535)<<16)^(Y=1540483477*(65535&(Y^=Y>>>24))+((1540483477*(Y>>>16)&65535)<<16)),pe-=4,++Ue;switch(pe){case 3:Ce^=(255&q.charCodeAt(Ue+2))<<16;case 2:Ce^=(255&q.charCodeAt(Ue+1))<<8;case 1:Ce=1540483477*(65535&(Ce^=255&q.charCodeAt(Ue)))+((1540483477*(Ce>>>16)&65535)<<16)}return Ce=1540483477*(65535&(Ce^=Ce>>>13))+((1540483477*(Ce>>>16)&65535)<<16),(Ce^=Ce>>>15)>>>0};var fa=Or,Va=va.exports;or.exports=fa,or.exports.murmur3=fa,or.exports.murmur2=Va;var Xa=r(or.exports);class _a{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(D,Y,pe,Ce){this.ids.push(Ra(D)),this.positions.push(Y,pe,Ce)}getPositions(D){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let Y=Ra(D),pe=0,Ce=this.ids.length-1;for(;pe>1;this.ids[Ge]>=Y?Ce=Ge:pe=Ge+1}let Ue=[];for(;this.ids[pe]===Y;)Ue.push({index:this.positions[3*pe],start:this.positions[3*pe+1],end:this.positions[3*pe+2]}),pe++;return Ue}static serialize(D,Y){let pe=new Float64Array(D.ids),Ce=new Uint32Array(D.positions);return Na(pe,Ce,0,pe.length-1),Y&&Y.push(pe.buffer,Ce.buffer),{ids:pe,positions:Ce}}static deserialize(D){let Y=new _a;return Y.ids=D.ids,Y.positions=D.positions,Y.indexed=!0,Y}}function Ra(q){let D=+q;return!isNaN(D)&&D<=Number.MAX_SAFE_INTEGER?D:Xa(String(q))}function Na(q,D,Y,pe){for(;Y>1],Ue=Y-1,Ge=pe+1;for(;;){do Ue++;while(q[Ue]Ce);if(Ue>=Ge)break;Qa(q,Ue,Ge),Qa(D,3*Ue,3*Ge),Qa(D,3*Ue+1,3*Ge+1),Qa(D,3*Ue+2,3*Ge+2)}Ge-Y`u_${Ce}`),this.type=pe}setUniform(D,Y,pe){D.set(pe.constantOr(this.value))}getBinding(D,Y,pe){return this.type==="color"?new Ni(D,Y):new Da(D,Y)}}class Vn{constructor(D,Y){this.uniformNames=Y.map(pe=>`u_${pe}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(D,Y){this.pixelRatioFrom=Y.pixelRatio,this.pixelRatioTo=D.pixelRatio,this.patternFrom=Y.tlbr,this.patternTo=D.tlbr}setUniform(D,Y,pe,Ce){let Ue=Ce==="u_pattern_to"?this.patternTo:Ce==="u_pattern_from"?this.patternFrom:Ce==="u_pixel_ratio_to"?this.pixelRatioTo:Ce==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Ue&&D.set(Ue)}getBinding(D,Y,pe){return pe.substr(0,9)==="u_pattern"?new zi(D,Y):new Da(D,Y)}}class No{constructor(D,Y,pe,Ce){this.expression=D,this.type=pe,this.maxValue=0,this.paintVertexAttributes=Y.map(Ue=>({name:`a_${Ue}`,type:"Float32",components:pe==="color"?2:1,offset:0})),this.paintVertexArray=new Ce}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.paintVertexArray.length,ut=this.expression.evaluate(new Ts(0),Y,{},Ce,[],Ue);this.paintVertexArray.resize(D),this._setPaintValue(Ge,D,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:0},pe,Ce);this._setPaintValue(D,Y,Ue)}_setPaintValue(D,Y,pe){if(this.type==="color"){let Ce=hn(pe);for(let Ue=D;Ue`u_${ut}_t`),this.type=pe,this.useIntegerZoom=Ce,this.zoom=Ue,this.maxValue=0,this.paintVertexAttributes=Y.map(ut=>({name:`a_${ut}`,type:"Float32",components:pe==="color"?4:2,offset:0})),this.paintVertexArray=new Ge}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.expression.evaluate(new Ts(this.zoom),Y,{},Ce,[],Ue),ut=this.expression.evaluate(new Ts(this.zoom+1),Y,{},Ce,[],Ue),Tt=this.paintVertexArray.length;this.paintVertexArray.resize(D),this._setPaintValue(Tt,D,Ge,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:this.zoom},pe,Ce),Ge=this.expression.evaluate({zoom:this.zoom+1},pe,Ce);this._setPaintValue(D,Y,Ue,Ge)}_setPaintValue(D,Y,pe,Ce){if(this.type==="color"){let Ue=hn(pe),Ge=hn(Ce);for(let ut=D;ut`#define HAS_UNIFORM_${Ce}`))}return D}getBinderAttributes(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof No||pe instanceof Gn)for(let Ce=0;Ce!0){this.programConfigurations={};for(let Ce of D)this.programConfigurations[Ce.id]=new Ks(Ce,Y,pe);this.needsUpload=!1,this._featureMap=new _a,this._bufferOffset=0}populatePaintArrays(D,Y,pe,Ce,Ue,Ge){for(let ut in this.programConfigurations)this.programConfigurations[ut].populatePaintArrays(D,Y,Ce,Ue,Ge);Y.id!==void 0&&this._featureMap.add(Y.id,pe,this._bufferOffset,D),this._bufferOffset=D,this.needsUpload=!0}updatePaintArrays(D,Y,pe,Ce){for(let Ue of pe)this.needsUpload=this.programConfigurations[Ue.id].updatePaintArrays(D,this._featureMap,Y,Ue,Ce)||this.needsUpload}get(D){return this.programConfigurations[D]}upload(D){if(this.needsUpload){for(let Y in this.programConfigurations)this.programConfigurations[Y].upload(D);this.needsUpload=!1}}destroy(){for(let D in this.programConfigurations)this.programConfigurations[D].destroy()}}function sl(q,D){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[q]||[q.replace(`${D}-`,"").replace(/-/g,"_")]}function Vi(q,D,Y){let pe={color:{source:ea,composite:di},number:{source:Wr,composite:ea}},Ce=function(Ue){return{"line-pattern":{source:bl,composite:bl},"fill-pattern":{source:bl,composite:bl},"fill-extrusion-pattern":{source:bl,composite:bl}}[Ue]}(q);return Ce&&Ce[Y]||pe[D][Y]}ti("ConstantBinder",Un),ti("CrossFadedConstantBinder",Vn),ti("SourceExpressionBinder",No),ti("CrossFadedCompositeBinder",Fo),ti("CompositeExpressionBinder",Gn),ti("ProgramConfiguration",Ks,{omit:["_buffers"]}),ti("ProgramConfigurationSet",Gs);let ao=8192,ns=Math.pow(2,14)-1,hs=-ns-1;function hl(q){let D=ao/q.extent,Y=q.loadGeometry();for(let pe=0;peGe.x+1||TtGe.y+1)&&f("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return Y}function Dl(q,D){return{type:q.type,id:q.id,properties:q.properties,geometry:D?hl(q):[]}}function hu(q,D,Y,pe,Ce){q.emplaceBack(2*D+(pe+1)/2,2*Y+(Ce+1)/2)}class Ll{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Go,this.indexArray=new Re,this.segments=new wt,this.programConfigurations=new Gs(D.layers,D.zoom),this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){let Ce=this.layers[0],Ue=[],Ge=null,ut=!1;Ce.type==="circle"&&(Ge=Ce.layout.get("circle-sort-key"),ut=!Ge.isConstant());for(let{feature:Tt,id:Ft,index:$t,sourceLayerIndex:lr}of D){let Ar=this.layers[0]._featureFilter.needGeometry,zr=Dl(Tt,Ar);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),zr,pe))continue;let Kr=ut?Ge.evaluate(zr,{},pe):void 0,la={id:Ft,properties:Tt.properties,type:Tt.type,sourceLayerIndex:lr,index:$t,geometry:Ar?zr.geometry:hl(Tt),patterns:{},sortKey:Kr};Ue.push(la)}ut&&Ue.sort((Tt,Ft)=>Tt.sortKey-Ft.sortKey);for(let Tt of Ue){let{geometry:Ft,index:$t,sourceLayerIndex:lr}=Tt,Ar=D[$t].feature;this.addFeature(Tt,Ft,$t,pe),Y.featureIndex.insert(Ar,Ft,$t,lr,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,vt),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(D,Y,pe,Ce){for(let Ue of Y)for(let Ge of Ue){let ut=Ge.x,Tt=Ge.y;if(ut<0||ut>=ao||Tt<0||Tt>=ao)continue;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,D.sortKey),$t=Ft.vertexLength;hu(this.layoutVertexArray,ut,Tt,-1,-1),hu(this.layoutVertexArray,ut,Tt,1,-1),hu(this.layoutVertexArray,ut,Tt,1,1),hu(this.layoutVertexArray,ut,Tt,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Ft.vertexLength+=4,Ft.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,{},Ce)}}function dc(q,D){for(let Y=0;Y1){if(si(q,D))return!0;for(let pe=0;pe1?Y:Y.sub(D)._mult(Ce)._add(D))}function Fi(q,D){let Y,pe,Ce,Ue=!1;for(let Ge=0;GeD.y!=Ce.y>D.y&&D.x<(Ce.x-pe.x)*(D.y-pe.y)/(Ce.y-pe.y)+pe.x&&(Ue=!Ue)}return Ue}function cn(q,D){let Y=!1;for(let pe=0,Ce=q.length-1;peD.y!=Ge.y>D.y&&D.x<(Ge.x-Ue.x)*(D.y-Ue.y)/(Ge.y-Ue.y)+Ue.x&&(Y=!Y)}return Y}function fn(q,D,Y){let pe=Y[0],Ce=Y[2];if(q.xCe.x&&D.x>Ce.x||q.yCe.y&&D.y>Ce.y)return!1;let Ue=P(q,D,Y[0]);return Ue!==P(q,D,Y[1])||Ue!==P(q,D,Y[2])||Ue!==P(q,D,Y[3])}function Gi(q,D,Y){let pe=D.paint.get(q).value;return pe.kind==="constant"?pe.value:Y.programConfigurations.get(D.id).getMaxValue(q)}function Io(q){return Math.sqrt(q[0]*q[0]+q[1]*q[1])}function nn(q,D,Y,pe,Ce){if(!D[0]&&!D[1])return q;let Ue=i.convert(D)._mult(Ce);Y==="viewport"&&Ue._rotate(-pe);let Ge=[];for(let ut=0;utUi(za,la))}(Ft,Tt),zr=lr?$t*ut:$t;for(let Kr of Ce)for(let la of Kr){let za=lr?la:Ui(la,Tt),ja=zr,gi=_o([],[la.x,la.y,0,1],Tt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?ja*=gi[3]/Ge.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(ja*=Ge.cameraToCenterDistance/gi[3]),Qt(Ar,za,ja))return!0}return!1}}function Ui(q,D){let Y=_o([],[q.x,q.y,0,1],D);return new i(Y[0]/Y[3],Y[1]/Y[3])}class Zn extends Ll{}let Rn;ti("HeatmapBucket",Zn,{omit:["layers"]});var xn={get paint(){return Rn=Rn||new Oe({"heatmap-radius":new Po(ie.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Po(ie.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ro(ie.paint_heatmap["heatmap-intensity"]),"heatmap-color":new pc(ie.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ro(ie.paint_heatmap["heatmap-opacity"])})}};function dn(q,{width:D,height:Y},pe,Ce){if(Ce){if(Ce instanceof Uint8ClampedArray)Ce=new Uint8Array(Ce.buffer);else if(Ce.length!==D*Y*pe)throw new RangeError(`mismatched image size. expected: ${Ce.length} but got: ${D*Y*pe}`)}else Ce=new Uint8Array(D*Y*pe);return q.width=D,q.height=Y,q.data=Ce,q}function jn(q,{width:D,height:Y},pe){if(D===q.width&&Y===q.height)return;let Ce=dn({},{width:D,height:Y},pe);Ro(q,Ce,{x:0,y:0},{x:0,y:0},{width:Math.min(q.width,D),height:Math.min(q.height,Y)},pe),q.width=D,q.height=Y,q.data=Ce.data}function Ro(q,D,Y,pe,Ce,Ue){if(Ce.width===0||Ce.height===0)return D;if(Ce.width>q.width||Ce.height>q.height||Y.x>q.width-Ce.width||Y.y>q.height-Ce.height)throw new RangeError("out of range source coordinates for image copy");if(Ce.width>D.width||Ce.height>D.height||pe.x>D.width-Ce.width||pe.y>D.height-Ce.height)throw new RangeError("out of range destination coordinates for image copy");let Ge=q.data,ut=D.data;if(Ge===ut)throw new Error("srcData equals dstData, so image is already copied");for(let Tt=0;Tt{D[q.evaluationKey]=Tt;let Ft=q.expression.evaluate(D);Ce.data[Ge+ut+0]=Math.floor(255*Ft.r/Ft.a),Ce.data[Ge+ut+1]=Math.floor(255*Ft.g/Ft.a),Ce.data[Ge+ut+2]=Math.floor(255*Ft.b/Ft.a),Ce.data[Ge+ut+3]=Math.floor(255*Ft.a)};if(q.clips)for(let Ge=0,ut=0;Ge80*Y){ut=1/0,Tt=1/0;let $t=-1/0,lr=-1/0;for(let Ar=Y;Ar$t&&($t=zr),Kr>lr&&(lr=Kr)}Ft=Math.max($t-ut,lr-Tt),Ft=Ft!==0?32767/Ft:0}return rf(Ue,Ge,Y,ut,Tt,Ft,0),Ge}function vc(q,D,Y,pe,Ce){let Ue;if(Ce===function(Ge,ut,Tt,Ft){let $t=0;for(let lr=ut,Ar=Tt-Ft;lr0)for(let Ge=D;Ge=D;Ge-=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);return Ue&&He(Ue,Ue.next)&&(qt(Ue),Ue=Ue.next),Ue}function mc(q,D){if(!q)return q;D||(D=q);let Y,pe=q;do if(Y=!1,pe.steiner||!He(pe,pe.next)&&We(pe.prev,pe,pe.next)!==0)pe=pe.next;else{if(qt(pe),pe=D=pe.prev,pe===pe.next)break;Y=!0}while(Y||pe!==D);return D}function rf(q,D,Y,pe,Ce,Ue,Ge){if(!q)return;!Ge&&Ue&&function(Tt,Ft,$t,lr){let Ar=Tt;do Ar.z===0&&(Ar.z=K(Ar.x,Ar.y,Ft,$t,lr)),Ar.prevZ=Ar.prev,Ar.nextZ=Ar.next,Ar=Ar.next;while(Ar!==Tt);Ar.prevZ.nextZ=null,Ar.prevZ=null,function(zr){let Kr,la=1;do{let za,ja=zr;zr=null;let gi=null;for(Kr=0;ja;){Kr++;let ei=ja,hi=0;for(let En=0;En0||Ei>0&&ei;)hi!==0&&(Ei===0||!ei||ja.z<=ei.z)?(za=ja,ja=ja.nextZ,hi--):(za=ei,ei=ei.nextZ,Ei--),gi?gi.nextZ=za:zr=za,za.prevZ=gi,gi=za;ja=ei}gi.nextZ=null,la*=2}while(Kr>1)}(Ar)}(q,pe,Ce,Ue);let ut=q;for(;q.prev!==q.next;){let Tt=q.prev,Ft=q.next;if(Ue?Mc(q,pe,Ce,Ue):Yl(q))D.push(Tt.i,q.i,Ft.i),qt(q),q=Ft.next,ut=Ft.next;else if((q=Ft)===ut){Ge?Ge===1?rf(q=Vc(mc(q),D),D,Y,pe,Ce,Ue,2):Ge===2&&Ds(q,D,Y,pe,Ce,Ue):rf(mc(q),D,Y,pe,Ce,Ue,1);break}}}function Yl(q){let D=q.prev,Y=q,pe=q.next;if(We(D,Y,pe)>=0)return!1;let Ce=D.x,Ue=Y.x,Ge=pe.x,ut=D.y,Tt=Y.y,Ft=pe.y,$t=CeUe?Ce>Ge?Ce:Ge:Ue>Ge?Ue:Ge,zr=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,Kr=pe.next;for(;Kr!==D;){if(Kr.x>=$t&&Kr.x<=Ar&&Kr.y>=lr&&Kr.y<=zr&&te(Ce,ut,Ue,Tt,Ge,Ft,Kr.x,Kr.y)&&We(Kr.prev,Kr,Kr.next)>=0)return!1;Kr=Kr.next}return!0}function Mc(q,D,Y,pe){let Ce=q.prev,Ue=q,Ge=q.next;if(We(Ce,Ue,Ge)>=0)return!1;let ut=Ce.x,Tt=Ue.x,Ft=Ge.x,$t=Ce.y,lr=Ue.y,Ar=Ge.y,zr=utTt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,za=$t>lr?$t>Ar?$t:Ar:lr>Ar?lr:Ar,ja=K(zr,Kr,D,Y,pe),gi=K(la,za,D,Y,pe),ei=q.prevZ,hi=q.nextZ;for(;ei&&ei.z>=ja&&hi&&hi.z<=gi;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0||(ei=ei.prevZ,hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0))return!1;hi=hi.nextZ}for(;ei&&ei.z>=ja;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0)return!1;ei=ei.prevZ}for(;hi&&hi.z<=gi;){if(hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0)return!1;hi=hi.nextZ}return!0}function Vc(q,D){let Y=q;do{let pe=Y.prev,Ce=Y.next.next;!He(pe,Ce)&&st(pe,Y,Y.next,Ce)&&yr(pe,Ce)&&yr(Ce,pe)&&(D.push(pe.i,Y.i,Ce.i),qt(Y),qt(Y.next),Y=q=Ce),Y=Y.next}while(Y!==q);return mc(Y)}function Ds(q,D,Y,pe,Ce,Ue){let Ge=q;do{let ut=Ge.next.next;for(;ut!==Ge.prev;){if(Ge.i!==ut.i&&xe(Ge,ut)){let Tt=Ir(Ge,ut);return Ge=mc(Ge,Ge.next),Tt=mc(Tt,Tt.next),rf(Ge,D,Y,pe,Ce,Ue,0),void rf(Tt,D,Y,pe,Ce,Ue,0)}ut=ut.next}Ge=Ge.next}while(Ge!==q)}function af(q,D){return q.x-D.x}function Cs(q,D){let Y=function(Ce,Ue){let Ge=Ue,ut=Ce.x,Tt=Ce.y,Ft,$t=-1/0;do{if(Tt<=Ge.y&&Tt>=Ge.next.y&&Ge.next.y!==Ge.y){let la=Ge.x+(Tt-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(la<=ut&&la>$t&&($t=la,Ft=Ge.x=Ge.x&&Ge.x>=Ar&&ut!==Ge.x&&te(TtFt.x||Ge.x===Ft.x&&ve(Ft,Ge)))&&(Ft=Ge,Kr=la)}Ge=Ge.next}while(Ge!==lr);return Ft}(q,D);if(!Y)return D;let pe=Ir(Y,q);return mc(pe,pe.next),mc(Y,Y.next)}function ve(q,D){return We(q.prev,q,D.prev)<0&&We(D.next,q,q.next)<0}function K(q,D,Y,pe,Ce){return(q=1431655765&((q=858993459&((q=252645135&((q=16711935&((q=(q-Y)*Ce|0)|q<<8))|q<<4))|q<<2))|q<<1))|(D=1431655765&((D=858993459&((D=252645135&((D=16711935&((D=(D-pe)*Ce|0)|D<<8))|D<<4))|D<<2))|D<<1))<<1}function ye(q){let D=q,Y=q;do(D.x=(q-Ge)*(Ue-ut)&&(q-Ge)*(pe-ut)>=(Y-Ge)*(D-ut)&&(Y-Ge)*(Ue-ut)>=(Ce-Ge)*(pe-ut)}function xe(q,D){return q.next.i!==D.i&&q.prev.i!==D.i&&!function(Y,pe){let Ce=Y;do{if(Ce.i!==Y.i&&Ce.next.i!==Y.i&&Ce.i!==pe.i&&Ce.next.i!==pe.i&&st(Ce,Ce.next,Y,pe))return!0;Ce=Ce.next}while(Ce!==Y);return!1}(q,D)&&(yr(q,D)&&yr(D,q)&&function(Y,pe){let Ce=Y,Ue=!1,Ge=(Y.x+pe.x)/2,ut=(Y.y+pe.y)/2;do Ce.y>ut!=Ce.next.y>ut&&Ce.next.y!==Ce.y&&Ge<(Ce.next.x-Ce.x)*(ut-Ce.y)/(Ce.next.y-Ce.y)+Ce.x&&(Ue=!Ue),Ce=Ce.next;while(Ce!==Y);return Ue}(q,D)&&(We(q.prev,q,D.prev)||We(q,D.prev,D))||He(q,D)&&We(q.prev,q,q.next)>0&&We(D.prev,D,D.next)>0)}function We(q,D,Y){return(D.y-q.y)*(Y.x-D.x)-(D.x-q.x)*(Y.y-D.y)}function He(q,D){return q.x===D.x&&q.y===D.y}function st(q,D,Y,pe){let Ce=Ht(We(q,D,Y)),Ue=Ht(We(q,D,pe)),Ge=Ht(We(Y,pe,q)),ut=Ht(We(Y,pe,D));return Ce!==Ue&&Ge!==ut||!(Ce!==0||!Et(q,Y,D))||!(Ue!==0||!Et(q,pe,D))||!(Ge!==0||!Et(Y,q,pe))||!(ut!==0||!Et(Y,D,pe))}function Et(q,D,Y){return D.x<=Math.max(q.x,Y.x)&&D.x>=Math.min(q.x,Y.x)&&D.y<=Math.max(q.y,Y.y)&&D.y>=Math.min(q.y,Y.y)}function Ht(q){return q>0?1:q<0?-1:0}function yr(q,D){return We(q.prev,q,q.next)<0?We(q,D,q.next)>=0&&We(q,q.prev,D)>=0:We(q,D,q.prev)<0||We(q,q.next,D)<0}function Ir(q,D){let Y=tr(q.i,q.x,q.y),pe=tr(D.i,D.x,D.y),Ce=q.next,Ue=D.prev;return q.next=D,D.prev=q,Y.next=Ce,Ce.prev=Y,pe.next=Y,Y.prev=pe,Ue.next=pe,pe.prev=Ue,pe}function wr(q,D,Y,pe){let Ce=tr(q,D,Y);return pe?(Ce.next=pe.next,Ce.prev=pe,pe.next.prev=Ce,pe.next=Ce):(Ce.prev=Ce,Ce.next=Ce),Ce}function qt(q){q.next.prev=q.prev,q.prev.next=q.next,q.prevZ&&(q.prevZ.nextZ=q.nextZ),q.nextZ&&(q.nextZ.prevZ=q.prevZ)}function tr(q,D,Y){return{i:q,x:D,y:Y,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function dr(q,D,Y){let pe=Y.patternDependencies,Ce=!1;for(let Ue of D){let Ge=Ue.paint.get(`${q}-pattern`);Ge.isConstant()||(Ce=!0);let ut=Ge.constantOr(null);ut&&(Ce=!0,pe[ut.to]=!0,pe[ut.from]=!0)}return Ce}function Pr(q,D,Y,pe,Ce){let Ue=Ce.patternDependencies;for(let Ge of D){let ut=Ge.paint.get(`${q}-pattern`).value;if(ut.kind!=="constant"){let Tt=ut.evaluate({zoom:pe-1},Y,{},Ce.availableImages),Ft=ut.evaluate({zoom:pe},Y,{},Ce.availableImages),$t=ut.evaluate({zoom:pe+1},Y,{},Ce.availableImages);Tt=Tt&&Tt.name?Tt.name:Tt,Ft=Ft&&Ft.name?Ft.name:Ft,$t=$t&&$t.name?$t.name:$t,Ue[Tt]=!0,Ue[Ft]=!0,Ue[$t]=!0,Y.patterns[Ge.id]={min:Tt,mid:Ft,max:$t}}}return Y}class Vr{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Rl,this.indexArray=new Re,this.indexArray2=new $e,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.segments2=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("fill",this.layers,Y);let Ce=this.layers[0].layout.get("fill-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe,Y.availableImages):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("fill",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,jc),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.indexBuffer2=D.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut=0;for(let zr of Ge)ut+=zr.length;let Tt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray),Ft=Tt.vertexLength,$t=[],lr=[];for(let zr of Ge){if(zr.length===0)continue;zr!==Ge[0]&&lr.push($t.length/2);let Kr=this.segments2.prepareSegment(zr.length,this.layoutVertexArray,this.indexArray2),la=Kr.vertexLength;this.layoutVertexArray.emplaceBack(zr[0].x,zr[0].y),this.indexArray2.emplaceBack(la+zr.length-1,la),$t.push(zr[0].x),$t.push(zr[0].y);for(let za=1;za>3}if(Ce--,pe===1||pe===2)Ue+=q.readSVarint(),Ge+=q.readSVarint(),pe===1&&(D&&ut.push(D),D=[]),D.push(new ri(Ue,Ge));else{if(pe!==7)throw new Error("unknown command "+pe);D&&D.push(D[0].clone())}}return D&&ut.push(D),ut},mi.prototype.bbox=function(){var q=this._pbf;q.pos=this._geometry;for(var D=q.readVarint()+q.pos,Y=1,pe=0,Ce=0,Ue=0,Ge=1/0,ut=-1/0,Tt=1/0,Ft=-1/0;q.pos>3}if(pe--,Y===1||Y===2)(Ce+=q.readSVarint())ut&&(ut=Ce),(Ue+=q.readSVarint())Ft&&(Ft=Ue);else if(Y!==7)throw new Error("unknown command "+Y)}return[Ge,Tt,ut,Ft]},mi.prototype.toGeoJSON=function(q,D,Y){var pe,Ce,Ue=this.extent*Math.pow(2,Y),Ge=this.extent*q,ut=this.extent*D,Tt=this.loadGeometry(),Ft=mi.types[this.type];function $t(zr){for(var Kr=0;Kr>3;Ce=Ge===1?pe.readString():Ge===2?pe.readFloat():Ge===3?pe.readDouble():Ge===4?pe.readVarint64():Ge===5?pe.readVarint():Ge===6?pe.readSVarint():Ge===7?pe.readBoolean():null}return Ce}(Y))}Wi.prototype.feature=function(q){if(q<0||q>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[q];var D=this._pbf.readVarint()+this._pbf.pos;return new ln(this._pbf,D,this.extent,this._keys,this._values)};var yn=Ii;function zn(q,D,Y){if(q===3){var pe=new yn(Y,Y.readVarint()+Y.pos);pe.length&&(D[pe.name]=pe)}}Oa.VectorTile=function(q,D){this.layers=q.readFields(zn,{},D)},Oa.VectorTileFeature=Pi,Oa.VectorTileLayer=Ii;let ms=Oa.VectorTileFeature.types,us=Math.pow(2,13);function Vs(q,D,Y,pe,Ce,Ue,Ge,ut){q.emplaceBack(D,Y,2*Math.floor(pe*us)+Ge,Ce*us*2,Ue*us*2,Math.round(ut))}class qo{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Xl,this.centroidVertexArray=new Zo,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.features=[],this.hasPattern=dr("fill-extrusion",this.layers,Y);for(let{feature:Ce,id:Ue,index:Ge,sourceLayerIndex:ut}of D){let Tt=this.layers[0]._featureFilter.needGeometry,Ft=Dl(Ce,Tt);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ft,pe))continue;let $t={id:Ue,sourceLayerIndex:ut,index:Ge,geometry:Tt?Ft.geometry:hl(Ce),properties:Ce.properties,type:Ce.type,patterns:{}};this.hasPattern?this.features.push(Pr("fill-extrusion",this.layers,$t,this.zoom,Y)):this.addFeature($t,$t.geometry,Ge,pe,{}),Y.featureIndex.insert(Ce,$t.geometry,Ge,ut,this.index,!0)}}addFeatures(D,Y,pe){for(let Ce of this.features){let{geometry:Ue}=Ce;this.addFeature(Ce,Ue,Ce.index,Y,pe)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,wa),this.centroidVertexBuffer=D.createVertexBuffer(this.centroidVertexArray,Ur.members,!0),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut={x:0,y:0,vertexCount:0},Tt=0;for(let Kr of Ge)Tt+=Kr.length;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Kr of Ge){if(Kr.length===0||wl(Kr))continue;let la=0;for(let za=0;za=1){let gi=Kr[za-1];if(!Ls(ja,gi)){Ft.vertexLength+4>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let ei=ja.sub(gi)._perp()._unit(),hi=gi.dist(ja);la+hi>32768&&(la=0),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,1,la),ut.x+=2*ja.x,ut.y+=2*ja.y,ut.vertexCount+=2,la+=hi,Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,1,la),ut.x+=2*gi.x,ut.y+=2*gi.y,ut.vertexCount+=2;let Ei=Ft.vertexLength;this.indexArray.emplaceBack(Ei,Ei+2,Ei+1),this.indexArray.emplaceBack(Ei+1,Ei+2,Ei+3),Ft.vertexLength+=4,Ft.primitiveLength+=2}}}}if(Ft.vertexLength+Tt>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(Tt,this.layoutVertexArray,this.indexArray)),ms[D.type]!=="Polygon")continue;let $t=[],lr=[],Ar=Ft.vertexLength;for(let Kr of Ge)if(Kr.length!==0){Kr!==Ge[0]&&lr.push($t.length/2);for(let la=0;laao)||q.y===D.y&&(q.y<0||q.y>ao)}function wl(q){return q.every(D=>D.x<0)||q.every(D=>D.x>ao)||q.every(D=>D.y<0)||q.every(D=>D.y>ao)}let Ru;ti("FillExtrusionBucket",qo,{omit:["layers","features"]});var Ap={get paint(){return Ru=Ru||new Oe({"fill-extrusion-opacity":new ro(ie["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Po(ie["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Nc(ie["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Po(ie["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Po(ie["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ro(ie["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Sp extends ae{constructor(D){super(D,Ap)}createBucket(D){return new qo(D)}queryRadius(){return Io(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ge.angle,ut),$t=this.paint.get("fill-extrusion-height").evaluate(Y,pe),lr=this.paint.get("fill-extrusion-base").evaluate(Y,pe),Ar=function(Kr,la,za,ja){let gi=[];for(let ei of Kr){let hi=[ei.x,ei.y,0,1];_o(hi,hi,la),gi.push(new i(hi[0]/hi[3],hi[1]/hi[3]))}return gi}(Ft,Tt),zr=function(Kr,la,za,ja){let gi=[],ei=[],hi=ja[8]*la,Ei=ja[9]*la,En=ja[10]*la,fo=ja[11]*la,ss=ja[8]*za,eo=ja[9]*za,vn=ja[10]*za,Uo=ja[11]*za;for(let Mo of Kr){let xo=[],Yi=[];for(let Ko of Mo){let bo=Ko.x,gs=Ko.y,_u=ja[0]*bo+ja[4]*gs+ja[12],pu=ja[1]*bo+ja[5]*gs+ja[13],Bf=ja[2]*bo+ja[6]*gs+ja[14],Gp=ja[3]*bo+ja[7]*gs+ja[15],dh=Bf+En,Nf=Gp+fo,Yh=_u+ss,Kh=pu+eo,Jh=Bf+vn,Hc=Gp+Uo,Uf=new i((_u+hi)/Nf,(pu+Ei)/Nf);Uf.z=dh/Nf,xo.push(Uf);let Ih=new i(Yh/Hc,Kh/Hc);Ih.z=Jh/Hc,Yi.push(Ih)}gi.push(xo),ei.push(Yi)}return[gi,ei]}(Ce,lr,$t,Tt);return function(Kr,la,za){let ja=1/0;ra(za,la)&&(ja=Vp(za,la[0]));for(let gi=0;giY.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(Y=>{this.gradients[Y.id]={}}),this.layoutVertexArray=new qu,this.layoutVertexArray2=new fu,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("line",this.layers,Y);let Ce=this.layers[0].layout.get("line-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("line",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=D.createVertexBuffer(this.layoutVertexArray2,rd)),this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,td),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(D){if(D.properties&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_end"))return{start:+D.properties.mapbox_clip_start,end:+D.properties.mapbox_clip_end}}addFeature(D,Y,pe,Ce,Ue){let Ge=this.layers[0].layout,ut=Ge.get("line-join").evaluate(D,{}),Tt=Ge.get("line-cap"),Ft=Ge.get("line-miter-limit"),$t=Ge.get("line-round-limit");this.lineClips=this.lineFeatureClips(D);for(let lr of Y)this.addLine(lr,D,ut,Tt,Ft,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}addLine(D,Y,pe,Ce,Ue,Ge){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let ja=0;ja=2&&D[Tt-1].equals(D[Tt-2]);)Tt--;let Ft=0;for(;Ft0;if(fo&&ja>Ft){let Uo=Ar.dist(zr);if(Uo>2*$t){let Mo=Ar.sub(Ar.sub(zr)._mult($t/Uo)._round());this.updateDistance(zr,Mo),this.addCurrentVertex(Mo,la,0,0,lr),zr=Mo}}let eo=zr&&Kr,vn=eo?pe:ut?"butt":Ce;if(eo&&vn==="round"&&(EiUe&&(vn="bevel"),vn==="bevel"&&(Ei>2&&(vn="flipbevel"),Ei100)gi=za.mult(-1);else{let Uo=Ei*la.add(za).mag()/la.sub(za).mag();gi._perp()._mult(Uo*(ss?-1:1))}this.addCurrentVertex(Ar,gi,0,0,lr),this.addCurrentVertex(Ar,gi.mult(-1),0,0,lr)}else if(vn==="bevel"||vn==="fakeround"){let Uo=-Math.sqrt(Ei*Ei-1),Mo=ss?Uo:0,xo=ss?0:Uo;if(zr&&this.addCurrentVertex(Ar,la,Mo,xo,lr),vn==="fakeround"){let Yi=Math.round(180*En/Math.PI/20);for(let Ko=1;Ko2*$t){let Mo=Ar.add(Kr.sub(Ar)._mult($t/Uo)._round());this.updateDistance(Ar,Mo),this.addCurrentVertex(Mo,za,0,0,lr),Ar=Mo}}}}addCurrentVertex(D,Y,pe,Ce,Ue,Ge=!1){let ut=Y.y*Ce-Y.x,Tt=-Y.y-Y.x*Ce;this.addHalfVertex(D,Y.x+Y.y*pe,Y.y-Y.x*pe,Ge,!1,pe,Ue),this.addHalfVertex(D,ut,Tt,Ge,!0,-Ce,Ue),this.distance>Mp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(D,Y,pe,Ce,Ue,Ge))}addHalfVertex({x:D,y:Y},pe,Ce,Ue,Ge,ut,Tt){let Ft=.5*(this.lineClips?this.scaledDistance*(Mp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((D<<1)+(Ue?1:0),(Y<<1)+(Ge?1:0),Math.round(63*pe)+128,Math.round(63*Ce)+128,1+(ut===0?0:ut<0?-1:1)|(63&Ft)<<2,Ft>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=Tt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),Tt.primitiveLength++),Ge?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(D,Y){this.distance+=D.dist(Y),this.updateScaledDistance()}}let Ep,Cv;ti("LineBucket",qp,{omit:["layers","patternFeatures"]});var qd={get paint(){return Cv=Cv||new Oe({"line-opacity":new Po(ie.paint_line["line-opacity"]),"line-color":new Po(ie.paint_line["line-color"]),"line-translate":new ro(ie.paint_line["line-translate"]),"line-translate-anchor":new ro(ie.paint_line["line-translate-anchor"]),"line-width":new Po(ie.paint_line["line-width"]),"line-gap-width":new Po(ie.paint_line["line-gap-width"]),"line-offset":new Po(ie.paint_line["line-offset"]),"line-blur":new Po(ie.paint_line["line-blur"]),"line-dasharray":new hc(ie.paint_line["line-dasharray"]),"line-pattern":new Nc(ie.paint_line["line-pattern"]),"line-gradient":new pc(ie.paint_line["line-gradient"])})},get layout(){return Ep=Ep||new Oe({"line-cap":new ro(ie.layout_line["line-cap"]),"line-join":new Po(ie.layout_line["line-join"]),"line-miter-limit":new ro(ie.layout_line["line-miter-limit"]),"line-round-limit":new ro(ie.layout_line["line-round-limit"]),"line-sort-key":new Po(ie.layout_line["line-sort-key"])})}};class Sf extends Po{possiblyEvaluate(D,Y){return Y=new Ts(Math.floor(Y.zoom),{now:Y.now,fadeDuration:Y.fadeDuration,zoomHistory:Y.zoomHistory,transition:Y.transition}),super.possiblyEvaluate(D,Y)}evaluate(D,Y,pe,Ce){return Y=E({},Y,{zoom:Math.floor(Y.zoom)}),super.evaluate(D,Y,pe,Ce)}}let Hd;class Lv extends ae{constructor(D){super(D,qd),this.gradientVersion=0,Hd||(Hd=new Sf(qd.paint.properties["line-width"].specification),Hd.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(D){if(D==="line-gradient"){let Y=this.gradientExpression();this.stepInterpolant=!!function(pe){return pe._styleExpression!==void 0}(Y)&&Y._styleExpression.expression instanceof Sa,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(D,Y){super.recalculate(D,Y),this.paint._values["line-floorwidth"]=Hd.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,D)}createBucket(D){return new qp(D)}queryRadius(D){let Y=D,pe=eh(Gi("line-width",this,Y),Gi("line-gap-width",this,Y)),Ce=Gi("line-offset",this,Y);return pe/2+Math.abs(Ce)+Io(this.paint.get("line-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){let Tt=nn(D,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ge.angle,ut),Ft=ut/2*eh(this.paint.get("line-width").evaluate(Y,pe),this.paint.get("line-gap-width").evaluate(Y,pe)),$t=this.paint.get("line-offset").evaluate(Y,pe);return $t&&(Ce=function(lr,Ar){let zr=[];for(let Kr=0;Kr=3){for(let za=0;za0?D+2*q:q}let iv=ft([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),im=ft([{name:"a_projected_pos",components:3,type:"Float32"}],4);ft([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let nm=ft([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ft([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let Pv=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nv=ft([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ov(q,D,Y){return q.sections.forEach(pe=>{pe.text=function(Ce,Ue,Ge){let ut=Ue.layout.get("text-transform").evaluate(Ge,{});return ut==="uppercase"?Ce=Ce.toLocaleUpperCase():ut==="lowercase"&&(Ce=Ce.toLocaleLowerCase()),js.applyArabicShaping&&(Ce=js.applyArabicShaping(Ce)),Ce}(pe.text,D,Y)}),q}ft([{name:"triangle",components:3,type:"Uint16"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ft([{type:"Float32",name:"offsetX"}]),ft([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ft([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Du={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Bl=24,Lh=Ql,Iv=function(q,D,Y,pe,Ce){var Ue,Ge,ut=8*Ce-pe-1,Tt=(1<>1,$t=-7,lr=Y?Ce-1:0,Ar=Y?-1:1,zr=q[D+lr];for(lr+=Ar,Ue=zr&(1<<-$t)-1,zr>>=-$t,$t+=ut;$t>0;Ue=256*Ue+q[D+lr],lr+=Ar,$t-=8);for(Ge=Ue&(1<<-$t)-1,Ue>>=-$t,$t+=pe;$t>0;Ge=256*Ge+q[D+lr],lr+=Ar,$t-=8);if(Ue===0)Ue=1-Ft;else{if(Ue===Tt)return Ge?NaN:1/0*(zr?-1:1);Ge+=Math.pow(2,pe),Ue-=Ft}return(zr?-1:1)*Ge*Math.pow(2,Ue-pe)},om=function(q,D,Y,pe,Ce,Ue){var Ge,ut,Tt,Ft=8*Ue-Ce-1,$t=(1<>1,Ar=Ce===23?Math.pow(2,-24)-Math.pow(2,-77):0,zr=pe?0:Ue-1,Kr=pe?1:-1,la=D<0||D===0&&1/D<0?1:0;for(D=Math.abs(D),isNaN(D)||D===1/0?(ut=isNaN(D)?1:0,Ge=$t):(Ge=Math.floor(Math.log(D)/Math.LN2),D*(Tt=Math.pow(2,-Ge))<1&&(Ge--,Tt*=2),(D+=Ge+lr>=1?Ar/Tt:Ar*Math.pow(2,1-lr))*Tt>=2&&(Ge++,Tt/=2),Ge+lr>=$t?(ut=0,Ge=$t):Ge+lr>=1?(ut=(D*Tt-1)*Math.pow(2,Ce),Ge+=lr):(ut=D*Math.pow(2,lr-1)*Math.pow(2,Ce),Ge=0));Ce>=8;q[Y+zr]=255&ut,zr+=Kr,ut/=256,Ce-=8);for(Ge=Ge<0;q[Y+zr]=255&Ge,zr+=Kr,Ge/=256,Ft-=8);q[Y+zr-Kr]|=128*la};function Ql(q){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(q)?q:new Uint8Array(q||0),this.pos=0,this.type=0,this.length=this.buf.length}Ql.Varint=0,Ql.Fixed64=1,Ql.Bytes=2,Ql.Fixed32=5;var xg=4294967296,sv=1/xg,y0=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function kp(q){return q.type===Ql.Bytes?q.readVarint()+q.pos:q.pos+1}function lv(q,D,Y){return Y?4294967296*D+(q>>>0):4294967296*(D>>>0)+(q>>>0)}function _0(q,D,Y){var pe=D<=16383?1:D<=2097151?2:D<=268435455?3:Math.floor(Math.log(D)/(7*Math.LN2));Y.realloc(pe);for(var Ce=Y.pos-1;Ce>=q;Ce--)Y.buf[Ce+pe]=Y.buf[Ce]}function bg(q,D){for(var Y=0;Y>>8,q[Y+2]=D>>>16,q[Y+3]=D>>>24}function kx(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+(q[D+3]<<24)}Ql.prototype={destroy:function(){this.buf=null},readFields:function(q,D,Y){for(Y=Y||this.length;this.pos>3,Ue=this.pos;this.type=7&pe,q(Ce,D,this),this.pos===Ue&&this.skip(pe)}return D},readMessage:function(q,D){return this.readFields(q,D,this.readVarint()+this.pos)},readFixed32:function(){var q=Rv(this.buf,this.pos);return this.pos+=4,q},readSFixed32:function(){var q=kx(this.buf,this.pos);return this.pos+=4,q},readFixed64:function(){var q=Rv(this.buf,this.pos)+Rv(this.buf,this.pos+4)*xg;return this.pos+=8,q},readSFixed64:function(){var q=Rv(this.buf,this.pos)+kx(this.buf,this.pos+4)*xg;return this.pos+=8,q},readFloat:function(){var q=Iv(this.buf,this.pos,!0,23,4);return this.pos+=4,q},readDouble:function(){var q=Iv(this.buf,this.pos,!0,52,8);return this.pos+=8,q},readVarint:function(q){var D,Y,pe=this.buf;return D=127&(Y=pe[this.pos++]),Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<7,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<14,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<21,Y<128?D:function(Ce,Ue,Ge){var ut,Tt,Ft=Ge.buf;if(ut=(112&(Tt=Ft[Ge.pos++]))>>4,Tt<128||(ut|=(127&(Tt=Ft[Ge.pos++]))<<3,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<10,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<17,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<24,Tt<128)||(ut|=(1&(Tt=Ft[Ge.pos++]))<<31,Tt<128))return lv(Ce,ut,Ue);throw new Error("Expected varint not more than 10 bytes")}(D|=(15&(Y=pe[this.pos]))<<28,q,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var q=this.readVarint();return q%2==1?(q+1)/-2:q/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var q=this.readVarint()+this.pos,D=this.pos;return this.pos=q,q-D>=12&&y0?function(Y,pe,Ce){return y0.decode(Y.subarray(pe,Ce))}(this.buf,D,q):function(Y,pe,Ce){for(var Ue="",Ge=pe;Ge239?4:$t>223?3:$t>191?2:1;if(Ge+Ar>Ce)break;Ar===1?$t<128&&(lr=$t):Ar===2?(192&(ut=Y[Ge+1]))==128&&(lr=(31&$t)<<6|63&ut)<=127&&(lr=null):Ar===3?(Tt=Y[Ge+2],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&((lr=(15&$t)<<12|(63&ut)<<6|63&Tt)<=2047||lr>=55296&&lr<=57343)&&(lr=null)):Ar===4&&(Tt=Y[Ge+2],Ft=Y[Ge+3],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&(192&Ft)==128&&((lr=(15&$t)<<18|(63&ut)<<12|(63&Tt)<<6|63&Ft)<=65535||lr>=1114112)&&(lr=null)),lr===null?(lr=65533,Ar=1):lr>65535&&(lr-=65536,Ue+=String.fromCharCode(lr>>>10&1023|55296),lr=56320|1023&lr),Ue+=String.fromCharCode(lr),Ge+=Ar}return Ue}(this.buf,D,q)},readBytes:function(){var q=this.readVarint()+this.pos,D=this.buf.subarray(this.pos,q);return this.pos=q,D},readPackedVarint:function(q,D){if(this.type!==Ql.Bytes)return q.push(this.readVarint(D));var Y=kp(this);for(q=q||[];this.pos127;);else if(D===Ql.Bytes)this.pos=this.readVarint()+this.pos;else if(D===Ql.Fixed32)this.pos+=4;else{if(D!==Ql.Fixed64)throw new Error("Unimplemented type: "+D);this.pos+=8}},writeTag:function(q,D){this.writeVarint(q<<3|D)},realloc:function(q){for(var D=this.length||16;D268435455||q<0?function(D,Y){var pe,Ce;if(D>=0?(pe=D%4294967296|0,Ce=D/4294967296|0):(Ce=~(-D/4294967296),4294967295^(pe=~(-D%4294967296))?pe=pe+1|0:(pe=0,Ce=Ce+1|0)),D>=18446744073709552e3||D<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");Y.realloc(10),function(Ue,Ge,ut){ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,ut.buf[ut.pos]=127&(Ue>>>=7)}(pe,0,Y),function(Ue,Ge){var ut=(7&Ue)<<4;Ge.buf[Ge.pos++]|=ut|((Ue>>>=3)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue)))))}(Ce,Y)}(q,this):(this.realloc(4),this.buf[this.pos++]=127&q|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=q>>>7&127))))},writeSVarint:function(q){this.writeVarint(q<0?2*-q-1:2*q)},writeBoolean:function(q){this.writeVarint(!!q)},writeString:function(q){q=String(q),this.realloc(4*q.length),this.pos++;var D=this.pos;this.pos=function(pe,Ce,Ue){for(var Ge,ut,Tt=0;Tt55295&&Ge<57344){if(!ut){Ge>56319||Tt+1===Ce.length?(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189):ut=Ge;continue}if(Ge<56320){pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=Ge;continue}Ge=ut-55296<<10|Ge-56320|65536,ut=null}else ut&&(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=null);Ge<128?pe[Ue++]=Ge:(Ge<2048?pe[Ue++]=Ge>>6|192:(Ge<65536?pe[Ue++]=Ge>>12|224:(pe[Ue++]=Ge>>18|240,pe[Ue++]=Ge>>12&63|128),pe[Ue++]=Ge>>6&63|128),pe[Ue++]=63&Ge|128)}return Ue}(this.buf,q,this.pos);var Y=this.pos-D;Y>=128&&_0(D,Y,this),this.pos=D-1,this.writeVarint(Y),this.pos+=Y},writeFloat:function(q){this.realloc(4),om(this.buf,q,this.pos,!0,23,4),this.pos+=4},writeDouble:function(q){this.realloc(8),om(this.buf,q,this.pos,!0,52,8),this.pos+=8},writeBytes:function(q){var D=q.length;this.writeVarint(D),this.realloc(D);for(var Y=0;Y=128&&_0(Y,pe,this),this.pos=Y-1,this.writeVarint(pe),this.pos+=pe},writeMessage:function(q,D,Y){this.writeTag(q,Ql.Bytes),this.writeRawMessage(D,Y)},writePackedVarint:function(q,D){D.length&&this.writeMessage(q,bg,D)},writePackedSVarint:function(q,D){D.length&&this.writeMessage(q,NT,D)},writePackedBoolean:function(q,D){D.length&&this.writeMessage(q,VT,D)},writePackedFloat:function(q,D){D.length&&this.writeMessage(q,UT,D)},writePackedDouble:function(q,D){D.length&&this.writeMessage(q,jT,D)},writePackedFixed32:function(q,D){D.length&&this.writeMessage(q,cC,D)},writePackedSFixed32:function(q,D){D.length&&this.writeMessage(q,qT,D)},writePackedFixed64:function(q,D){D.length&&this.writeMessage(q,HT,D)},writePackedSFixed64:function(q,D){D.length&&this.writeMessage(q,GT,D)},writeBytesField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeBytes(D)},writeFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFixed32(D)},writeSFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeSFixed32(D)},writeFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeFixed64(D)},writeSFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeSFixed64(D)},writeVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeVarint(D)},writeSVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeSVarint(D)},writeStringField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeString(D)},writeFloatField:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFloat(D)},writeDoubleField:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeDouble(D)},writeBooleanField:function(q,D){this.writeVarintField(q,!!D)}};var C1=r(Lh);let L1=3;function fC(q,D,Y){q===1&&Y.readMessage(WT,D)}function WT(q,D,Y){if(q===3){let{id:pe,bitmap:Ce,width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}=Y.readMessage(Cx,{});D.push({id:pe,bitmap:new rs({width:Ue+2*L1,height:Ge+2*L1},Ce),metrics:{width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}})}}function Cx(q,D,Y){q===1?D.id=Y.readVarint():q===2?D.bitmap=Y.readBytes():q===3?D.width=Y.readVarint():q===4?D.height=Y.readVarint():q===5?D.left=Y.readSVarint():q===6?D.top=Y.readSVarint():q===7&&(D.advance=Y.readVarint())}let Lx=L1;function P1(q){let D=0,Y=0;for(let Ge of q)D+=Ge.w*Ge.h,Y=Math.max(Y,Ge.w);q.sort((Ge,ut)=>ut.h-Ge.h);let pe=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(D/.95)),Y),h:1/0}],Ce=0,Ue=0;for(let Ge of q)for(let ut=pe.length-1;ut>=0;ut--){let Tt=pe[ut];if(!(Ge.w>Tt.w||Ge.h>Tt.h)){if(Ge.x=Tt.x,Ge.y=Tt.y,Ue=Math.max(Ue,Ge.y+Ge.h),Ce=Math.max(Ce,Ge.x+Ge.w),Ge.w===Tt.w&&Ge.h===Tt.h){let Ft=pe.pop();ut=0&&pe>=D&&w0[this.text.charCodeAt(pe)];pe--)Y--;this.text=this.text.substring(D,Y),this.sectionIndex=this.sectionIndex.slice(D,Y)}substring(D,Y){let pe=new sm;return pe.text=this.text.substring(D,Y),pe.sectionIndex=this.sectionIndex.slice(D,Y),pe.sections=this.sections,pe}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((D,Y)=>Math.max(D,this.sections[Y].scale),0)}addTextSection(D,Y){this.text+=D.text,this.sections.push(Tg.forText(D.scale,D.fontStack||Y));let pe=this.sections.length-1;for(let Ce=0;Ce=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Ag(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=sm.fromFeature(q,Ce),za;lr===e.ah.vertical&&la.verticalizePunctuation();let{processBidirectionalText:ja,processStyledBidirectionalText:gi}=js;if(ja&&la.sections.length===1){za=[];let Ei=ja(la.toString(),lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En,fo.sections=la.sections;for(let ss=0;ss0&&Zp>nf&&(nf=Zp)}else{let tc=fo[Nl.fontStack],gf=tc&&tc[xu];if(gf&&gf.rect)dm=gf.rect,Ec=gf.metrics;else{let Zp=En[Nl.fontStack],Xd=Zp&&Zp[xu];if(!Xd)continue;Ec=Xd.metrics}Pp=(Uf-Nl.scale)*Bl}Wp?(Ei.verticalizable=!0,th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=hd*Nl.scale+Yi):(th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=Ec.advance*Nl.scale+Yi)}th.length!==0&&(pu=Math.max(gs-Yi,pu),uv(th,0,th.length-1,Gp,nf)),gs=0;let Lp=vn*Uf+nf;vh.lineOffset=Math.max(nf,Ih),_u+=Lp,Bf=Math.max(Lp,Bf),++dh}var Nf;let Yh=_u-Of,{horizontalAlign:Kh,verticalAlign:Jh}=A0(Uo);(function(Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl){let zu=(Uf-Ih)*th,xu=0;xu=nf!==Lp?-pp*vh-Of:(-vh*Nl+.5)*Lp;for(let Pp of Hc)for(let Ec of Pp.positionedGlyphs)Ec.x+=zu,Ec.y+=xu})(Ei.positionedLines,Gp,Kh,Jh,pu,Bf,vn,Yh,eo.length),Ei.top+=-Jh*Yh,Ei.bottom=Ei.top+Yh,Ei.left+=-Kh*pu,Ei.right=Ei.left+pu}(hi,D,Y,pe,za,Ge,ut,Tt,lr,Ft,Ar,Kr),!function(Ei){for(let En of Ei)if(En.positionedGlyphs.length!==0)return!1;return!0}(ei)&&hi}let w0={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},ZT={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},XT={40:!0};function Px(q,D,Y,pe,Ce,Ue){if(D.imageName){let Ge=pe[D.imageName];return Ge?Ge.displaySize[0]*D.scale*Bl/Ue+Ce:0}{let Ge=Y[D.fontStack],ut=Ge&&Ge[q];return ut?ut.metrics.advance*D.scale+Ce:0}}function Ix(q,D,Y,pe){let Ce=Math.pow(q-D,2);return pe?q=0,Ft=0;for(let lr=0;lrFt){let $t=Math.ceil(Ue/Ft);Ce*=$t/Ge,Ge=$t}return{x1:pe,y1:Ce,x2:pe+Ue,y2:Ce+Ge}}function zx(q,D,Y,pe,Ce,Ue){let Ge=q.image,ut;if(Ge.content){let za=Ge.content,ja=Ge.pixelRatio||1;ut=[za[0]/ja,za[1]/ja,Ge.displaySize[0]-za[2]/ja,Ge.displaySize[1]-za[3]/ja]}let Tt=D.left*Ue,Ft=D.right*Ue,$t,lr,Ar,zr;Y==="width"||Y==="both"?(zr=Ce[0]+Tt-pe[3],lr=Ce[0]+Ft+pe[1]):(zr=Ce[0]+(Tt+Ft-Ge.displaySize[0])/2,lr=zr+Ge.displaySize[0]);let Kr=D.top*Ue,la=D.bottom*Ue;return Y==="height"||Y==="both"?($t=Ce[1]+Kr-pe[0],Ar=Ce[1]+la+pe[2]):($t=Ce[1]+(Kr+la-Ge.displaySize[1])/2,Ar=$t+Ge.displaySize[1]),{image:Ge,top:$t,right:lr,bottom:Ar,left:zr,collisionPadding:ut}}let Mg=255,yd=128,cv=Mg*yd;function Fx(q,D){let{expression:Y}=D;if(Y.kind==="constant")return{kind:"constant",layoutSize:Y.evaluate(new Ts(q+1))};if(Y.kind==="source")return{kind:"source"};{let{zoomStops:pe,interpolationType:Ce}=Y,Ue=0;for(;UeGe.id),this.index=D.index,this.pixelRatio=D.pixelRatio,this.sourceLayerIndex=D.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=pn([]),this.placementViewportMatrix=pn([]);let Y=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Fx(this.zoom,Y["text-size"]),this.iconSizeData=Fx(this.zoom,Y["icon-size"]);let pe=this.layers[0].layout,Ce=pe.get("symbol-sort-key"),Ue=pe.get("symbol-z-order");this.canOverlap=I1(pe,"text-overlap","text-allow-overlap")!=="never"||I1(pe,"icon-overlap","icon-allow-overlap")!=="never"||pe.get("text-ignore-placement")||pe.get("icon-ignore-placement"),this.sortFeaturesByKey=Ue!=="viewport-y"&&!Ce.isConstant(),this.sortFeaturesByY=(Ue==="viewport-y"||Ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,pe.get("symbol-placement")==="point"&&(this.writingModes=pe.get("text-writing-mode").map(Ge=>e.ah[Ge])),this.stateDependentLayerIds=this.layers.filter(Ge=>Ge.isStateDependent()).map(Ge=>Ge.id),this.sourceID=D.sourceID}createArrays(){this.text=new z1(new Gs(this.layers,this.zoom,D=>/^text/.test(D))),this.icon=new z1(new Gs(this.layers,this.zoom,D=>/^icon/.test(D))),this.glyphOffsetArray=new ts,this.lineVertexArray=new yo,this.symbolInstances=new ho,this.textAnchorOffsets=new ls}calculateGlyphDependencies(D,Y,pe,Ce,Ue){for(let Ge=0;Ge0)&&(Ge.value.kind!=="constant"||Ge.value.value.length>0),$t=Tt.value.kind!=="constant"||!!Tt.value.value||Object.keys(Tt.parameters).length>0,lr=Ue.get("symbol-sort-key");if(this.features=[],!Ft&&!$t)return;let Ar=Y.iconDependencies,zr=Y.glyphDependencies,Kr=Y.availableImages,la=new Ts(this.zoom);for(let{feature:za,id:ja,index:gi,sourceLayerIndex:ei}of D){let hi=Ce._featureFilter.needGeometry,Ei=Dl(za,hi);if(!Ce._featureFilter.filter(la,Ei,pe))continue;let En,fo;if(hi||(Ei.geometry=hl(za)),Ft){let eo=Ce.getValueAndResolveTokens("text-field",Ei,pe,Kr),vn=pa.factory(eo),Uo=this.hasRTLText=this.hasRTLText||D1(vn);(!Uo||js.getRTLTextPluginStatus()==="unavailable"||Uo&&js.isParsed())&&(En=ov(vn,Ce,Ei))}if($t){let eo=Ce.getValueAndResolveTokens("icon-image",Ei,pe,Kr);fo=eo instanceof qa?eo:qa.fromString(eo)}if(!En&&!fo)continue;let ss=this.sortFeaturesByKey?lr.evaluate(Ei,{},pe):void 0;if(this.features.push({id:ja,text:En,icon:fo,index:gi,sourceLayerIndex:ei,geometry:Ei.geometry,properties:za.properties,type:KT[za.type],sortKey:ss}),fo&&(Ar[fo.name]=!0),En){let eo=Ge.evaluate(Ei,{},pe).join(","),vn=Ue.get("text-rotation-alignment")!=="viewport"&&Ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(e.ah.vertical)>=0;for(let Uo of En.sections)if(Uo.image)Ar[Uo.image.name]=!0;else{let Mo=co(En.toString()),xo=Uo.fontStack||eo,Yi=zr[xo]=zr[xo]||{};this.calculateGlyphDependencies(Uo.text,Yi,vn,this.allowVerticalPlacement,Mo)}}}Ue.get("symbol-placement")==="line"&&(this.features=function(za){let ja={},gi={},ei=[],hi=0;function Ei(eo){ei.push(za[eo]),hi++}function En(eo,vn,Uo){let Mo=gi[eo];return delete gi[eo],gi[vn]=Mo,ei[Mo].geometry[0].pop(),ei[Mo].geometry[0]=ei[Mo].geometry[0].concat(Uo[0]),Mo}function fo(eo,vn,Uo){let Mo=ja[vn];return delete ja[vn],ja[eo]=Mo,ei[Mo].geometry[0].shift(),ei[Mo].geometry[0]=Uo[0].concat(ei[Mo].geometry[0]),Mo}function ss(eo,vn,Uo){let Mo=Uo?vn[0][vn[0].length-1]:vn[0][0];return`${eo}:${Mo.x}:${Mo.y}`}for(let eo=0;eoeo.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((za,ja)=>za.sortKey-ja.sortKey)}update(D,Y,pe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(D,Y,this.layers,pe),this.icon.programConfigurations.updatePaintArrays(D,Y,this.layers,pe))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(D){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(D),this.iconCollisionBox.upload(D)),this.text.upload(D,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(D,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(D,Y){let pe=this.lineVertexArray.length;if(D.segment!==void 0){let Ce=D.dist(Y[D.segment+1]),Ue=D.dist(Y[D.segment]),Ge={};for(let ut=D.segment+1;ut=0;ut--)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ue},ut>0&&(Ue+=Y[ut-1].dist(Y[ut]));for(let ut=0;ut0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(D,Y){let pe=D.placedSymbolArray.get(Y),Ce=pe.vertexStartIndex+4*pe.numGlyphs;for(let Ue=pe.vertexStartIndex;UeCe[ut]-Ce[Tt]||Ue[Tt]-Ue[ut]),Ge}addToSortKeyRanges(D,Y){let pe=this.sortKeyRanges[this.sortKeyRanges.length-1];pe&&pe.sortKey===Y?pe.symbolInstanceEnd=D+1:this.sortKeyRanges.push({sortKey:Y,symbolInstanceStart:D,symbolInstanceEnd:D+1})}sortFeatures(D){if(this.sortFeaturesByY&&this.sortedAngle!==D&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(D),this.sortedAngle=D,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let Y of this.symbolInstanceIndexes){let pe=this.symbolInstances.get(Y);this.featureSortOrder.push(pe.featureIndex),[pe.rightJustifiedTextSymbolIndex,pe.centerJustifiedTextSymbolIndex,pe.leftJustifiedTextSymbolIndex].forEach((Ce,Ue,Ge)=>{Ce>=0&&Ge.indexOf(Ce)===Ue&&this.addIndicesForPlacedSymbol(this.text,Ce)}),pe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,pe.verticalPlacedTextSymbolIndex),pe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.placedIconSymbolIndex),pe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let qc,Eg;ti("SymbolBucket",um,{omit:["layers","collisionBoxArray","features","compareText"]}),um.MAX_GLYPHS=65535,um.addDynamicAttributes=R1;var M0={get paint(){return Eg=Eg||new Oe({"icon-opacity":new Po(ie.paint_symbol["icon-opacity"]),"icon-color":new Po(ie.paint_symbol["icon-color"]),"icon-halo-color":new Po(ie.paint_symbol["icon-halo-color"]),"icon-halo-width":new Po(ie.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Po(ie.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(ie.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(ie.paint_symbol["icon-translate-anchor"]),"text-opacity":new Po(ie.paint_symbol["text-opacity"]),"text-color":new Po(ie.paint_symbol["text-color"],{runtimeType:Ot,getOverride:q=>q.textColor,hasOverride:q=>!!q.textColor}),"text-halo-color":new Po(ie.paint_symbol["text-halo-color"]),"text-halo-width":new Po(ie.paint_symbol["text-halo-width"]),"text-halo-blur":new Po(ie.paint_symbol["text-halo-blur"]),"text-translate":new ro(ie.paint_symbol["text-translate"]),"text-translate-anchor":new ro(ie.paint_symbol["text-translate-anchor"])})},get layout(){return qc=qc||new Oe({"symbol-placement":new ro(ie.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(ie.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(ie.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Po(ie.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(ie.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(ie.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ro(ie.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ro(ie.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(ie.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(ie.layout_symbol["icon-rotation-alignment"]),"icon-size":new Po(ie.layout_symbol["icon-size"]),"icon-text-fit":new ro(ie.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(ie.layout_symbol["icon-text-fit-padding"]),"icon-image":new Po(ie.layout_symbol["icon-image"]),"icon-rotate":new Po(ie.layout_symbol["icon-rotate"]),"icon-padding":new Po(ie.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(ie.layout_symbol["icon-keep-upright"]),"icon-offset":new Po(ie.layout_symbol["icon-offset"]),"icon-anchor":new Po(ie.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(ie.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(ie.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(ie.layout_symbol["text-rotation-alignment"]),"text-field":new Po(ie.layout_symbol["text-field"]),"text-font":new Po(ie.layout_symbol["text-font"]),"text-size":new Po(ie.layout_symbol["text-size"]),"text-max-width":new Po(ie.layout_symbol["text-max-width"]),"text-line-height":new ro(ie.layout_symbol["text-line-height"]),"text-letter-spacing":new Po(ie.layout_symbol["text-letter-spacing"]),"text-justify":new Po(ie.layout_symbol["text-justify"]),"text-radial-offset":new Po(ie.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(ie.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Po(ie.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Po(ie.layout_symbol["text-anchor"]),"text-max-angle":new ro(ie.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(ie.layout_symbol["text-writing-mode"]),"text-rotate":new Po(ie.layout_symbol["text-rotate"]),"text-padding":new ro(ie.layout_symbol["text-padding"]),"text-keep-upright":new ro(ie.layout_symbol["text-keep-upright"]),"text-transform":new Po(ie.layout_symbol["text-transform"]),"text-offset":new Po(ie.layout_symbol["text-offset"]),"text-allow-overlap":new ro(ie.layout_symbol["text-allow-overlap"]),"text-overlap":new ro(ie.layout_symbol["text-overlap"]),"text-ignore-placement":new ro(ie.layout_symbol["text-ignore-placement"]),"text-optional":new ro(ie.layout_symbol["text-optional"])})}};class kg{constructor(D){if(D.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=D.property.overrides?D.property.overrides.runtimeType:nt,this.defaultValue=D}evaluate(D){if(D.formattedSection){let Y=this.defaultValue.property.overrides;if(Y&&Y.hasOverride(D.formattedSection))return Y.getOverride(D.formattedSection)}return D.feature&&D.featureState?this.defaultValue.evaluate(D.feature,D.featureState):this.defaultValue.property.specification.default}eachChild(D){this.defaultValue.isConstant()||D(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}ti("FormatSectionOverride",kg,{omit:["defaultValue"]});class Dv extends ae{constructor(D){super(D,M0)}recalculate(D,Y){if(super.recalculate(D,Y),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let pe=this.layout.get("text-writing-mode");if(pe){let Ce=[];for(let Ue of pe)Ce.indexOf(Ue)<0&&Ce.push(Ue);this.layout._values["text-writing-mode"]=Ce}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(D,Y,pe,Ce){let Ue=this.layout.get(D).evaluate(Y,{},pe,Ce),Ge=this._unevaluatedLayout._values[D];return Ge.isDataDriven()||xc(Ge.value)||!Ue?Ue:function(ut,Tt){return Tt.replace(/{([^{}]+)}/g,(Ft,$t)=>ut&&$t in ut?String(ut[$t]):"")}(Y.properties,Ue)}createBucket(D){return new um(D)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let D of M0.paint.overridableProperties){if(!Dv.hasPaintOverride(this.layout,D))continue;let Y=this.paint.get(D),pe=new kg(Y),Ce=new Cu(pe,Y.property.specification),Ue=null;Ue=Y.value.kind==="constant"||Y.value.kind==="source"?new Fc("source",Ce):new $u("composite",Ce,Y.value.zoomStops),this.paint._values[D]=new Iu(Y.property,Ue,Y.parameters)}}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!(!this.layout||Y.isDataDriven()||pe.isDataDriven())&&Dv.hasPaintOverride(this.layout,D)}static hasPaintOverride(D,Y){let pe=D.get("text-field"),Ce=M0.paint.properties[Y],Ue=!1,Ge=ut=>{for(let Tt of ut)if(Ce.overrides&&Ce.overrides.hasOverride(Tt))return void(Ue=!0)};if(pe.value.kind==="constant"&&pe.value.value instanceof pa)Ge(pe.value.value.sections);else if(pe.value.kind==="source"){let ut=Ft=>{Ue||(Ft instanceof Er&&mt(Ft.value)===Cr?Ge(Ft.value.sections):Ft instanceof ys?Ge(Ft.sections):Ft.eachChild(ut))},Tt=pe.value;Tt._styleExpression&&ut(Tt._styleExpression.expression)}return Ue}}let Ox;var Cg={get paint(){return Ox=Ox||new Oe({"background-color":new ro(ie.paint_background["background-color"]),"background-pattern":new hc(ie.paint_background["background-pattern"]),"background-opacity":new ro(ie.paint_background["background-opacity"])})}};class $T extends ae{constructor(D){super(D,Cg)}}let F1;var Bx={get paint(){return F1=F1||new Oe({"raster-opacity":new ro(ie.paint_raster["raster-opacity"]),"raster-hue-rotate":new ro(ie.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ro(ie.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ro(ie.paint_raster["raster-brightness-max"]),"raster-saturation":new ro(ie.paint_raster["raster-saturation"]),"raster-contrast":new ro(ie.paint_raster["raster-contrast"]),"raster-resampling":new ro(ie.paint_raster["raster-resampling"]),"raster-fade-duration":new ro(ie.paint_raster["raster-fade-duration"])})}};class Lg extends ae{constructor(D){super(D,Bx)}}class O1 extends ae{constructor(D){super(D,{}),this.onAdd=Y=>{this.implementation.onAdd&&this.implementation.onAdd(Y,Y.painter.context.gl)},this.onRemove=Y=>{this.implementation.onRemove&&this.implementation.onRemove(Y,Y.painter.context.gl)},this.implementation=D}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class B1{constructor(D){this._methodToThrottle=D,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let N1=63710088e-1;class Gd{constructor(D,Y){if(isNaN(D)||isNaN(Y))throw new Error(`Invalid LngLat object: (${D}, ${Y})`);if(this.lng=+D,this.lat=+Y,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Gd(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(D){let Y=Math.PI/180,pe=this.lat*Y,Ce=D.lat*Y,Ue=Math.sin(pe)*Math.sin(Ce)+Math.cos(pe)*Math.cos(Ce)*Math.cos((D.lng-this.lng)*Y);return N1*Math.acos(Math.min(Ue,1))}static convert(D){if(D instanceof Gd)return D;if(Array.isArray(D)&&(D.length===2||D.length===3))return new Gd(Number(D[0]),Number(D[1]));if(!Array.isArray(D)&&typeof D=="object"&&D!==null)return new Gd(Number("lng"in D?D.lng:D.lon),Number(D.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let cm=2*Math.PI*N1;function Nx(q){return cm*Math.cos(q*Math.PI/180)}function E0(q){return(180+q)/360}function Ux(q){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q*Math.PI/360)))/360}function k0(q,D){return q/Nx(D)}function Pg(q){return 360/Math.PI*Math.atan(Math.exp((180-360*q)*Math.PI/180))-90}class Ig{constructor(D,Y,pe=0){this.x=+D,this.y=+Y,this.z=+pe}static fromLngLat(D,Y=0){let pe=Gd.convert(D);return new Ig(E0(pe.lng),Ux(pe.lat),k0(Y,pe.lat))}toLngLat(){return new Gd(360*this.x-180,Pg(this.y))}toAltitude(){return this.z*Nx(Pg(this.y))}meterInMercatorCoordinateUnits(){return 1/cm*(D=Pg(this.y),1/Math.cos(D*Math.PI/180));var D}}function ad(q,D,Y){var pe=2*Math.PI*6378137/256/Math.pow(2,Y);return[q*pe-2*Math.PI*6378137/2,D*pe-2*Math.PI*6378137/2]}class U1{constructor(D,Y,pe){if(!function(Ce,Ue,Ge){return!(Ce<0||Ce>25||Ge<0||Ge>=Math.pow(2,Ce)||Ue<0||Ue>=Math.pow(2,Ce))}(D,Y,pe))throw new Error(`x=${Y}, y=${pe}, z=${D} outside of bounds. 0<=x<${Math.pow(2,D)}, 0<=y<${Math.pow(2,D)} 0<=z<=25 `);this.z=D,this.x=Y,this.y=pe,this.key=Rg(0,D,D,Y,pe)}equals(D){return this.z===D.z&&this.x===D.x&&this.y===D.y}url(D,Y,pe){let Ce=(Ge=this.y,ut=this.z,Tt=ad(256*(Ue=this.x),256*(Ge=Math.pow(2,ut)-Ge-1),ut),Ft=ad(256*(Ue+1),256*(Ge+1),ut),Tt[0]+","+Tt[1]+","+Ft[0]+","+Ft[1]);var Ue,Ge,ut,Tt,Ft;let $t=function(lr,Ar,zr){let Kr,la="";for(let za=lr;za>0;za--)Kr=1<1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,Ce)}isChildOf(D){let Y=this.z-D.z;return Y>0&&D.x===this.x>>Y&&D.y===this.y>>Y}getTilePoint(D){let Y=Math.pow(2,this.z);return new i((D.x*Y-this.x)*ao,(D.y*Y-this.y)*ao)}toString(){return`${this.z}/${this.x}/${this.y}`}}class jx{constructor(D,Y){this.wrap=D,this.canonical=Y,this.key=Rg(D,Y.z,Y.z,Y.x,Y.y)}}class Hp{constructor(D,Y,pe,Ce,Ue){if(D= z; overscaledZ = ${D}; z = ${pe}`);this.overscaledZ=D,this.wrap=Y,this.canonical=new U1(pe,+Ce,+Ue),this.key=Rg(Y,D,pe,Ce,Ue)}clone(){return new Hp(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(D){return this.overscaledZ===D.overscaledZ&&this.wrap===D.wrap&&this.canonical.equals(D.canonical)}scaledTo(D){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let Y=this.canonical.z-D;return D>this.canonical.z?new Hp(D,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Hp(D,this.wrap,D,this.canonical.x>>Y,this.canonical.y>>Y)}calculateScaledKey(D,Y){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let pe=this.canonical.z-D;return D>this.canonical.z?Rg(this.wrap*+Y,D,this.canonical.z,this.canonical.x,this.canonical.y):Rg(this.wrap*+Y,D,D,this.canonical.x>>pe,this.canonical.y>>pe)}isChildOf(D){if(D.wrap!==this.wrap)return!1;let Y=this.canonical.z-D.canonical.z;return D.overscaledZ===0||D.overscaledZ>Y&&D.canonical.y===this.canonical.y>>Y}children(D){if(this.overscaledZ>=D)return[new Hp(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let Y=this.canonical.z+1,pe=2*this.canonical.x,Ce=2*this.canonical.y;return[new Hp(Y,this.wrap,Y,pe,Ce),new Hp(Y,this.wrap,Y,pe+1,Ce),new Hp(Y,this.wrap,Y,pe,Ce+1),new Hp(Y,this.wrap,Y,pe+1,Ce+1)]}isLessThan(D){return this.wrapD.wrap)&&(this.overscaledZD.overscaledZ)&&(this.canonical.xD.canonical.x)&&this.canonical.ythis.max&&(this.max=lr),lr=this.dim+1||Y<-1||Y>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(Y+1)*this.stride+(D+1)}unpack(D,Y,pe){return D*this.redFactor+Y*this.greenFactor+pe*this.blueFactor-this.baseShift}getPixels(){return new wn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(D,Y,pe){if(this.dim!==D.dim)throw new Error("dem dimension mismatch");let Ce=Y*this.dim,Ue=Y*this.dim+this.dim,Ge=pe*this.dim,ut=pe*this.dim+this.dim;switch(Y){case-1:Ce=Ue-1;break;case 1:Ue=Ce+1}switch(pe){case-1:Ge=ut-1;break;case 1:ut=Ge+1}let Tt=-Y*this.dim,Ft=-pe*this.dim;for(let $t=Ge;$t=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${D} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[D]}}class j1{constructor(D,Y,pe,Ce,Ue){this.type="Feature",this._vectorTileFeature=D,D._z=Y,D._x=pe,D._y=Ce,this.properties=D.properties,this.id=Ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(D){this._geometry=D}toJSON(){let D={geometry:this.geometry};for(let Y in this)Y!=="_geometry"&&Y!=="_vectorTileFeature"&&(D[Y]=this[Y]);return D}}class zv{constructor(D,Y){this.tileID=D,this.x=D.canonical.x,this.y=D.canonical.y,this.z=D.canonical.z,this.grid=new _i(ao,16,0),this.grid3D=new _i(ao,16,0),this.featureIndexArray=new Ys,this.promoteId=Y}insert(D,Y,pe,Ce,Ue,Ge){let ut=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(pe,Ce,Ue);let Tt=Ge?this.grid3D:this.grid;for(let Ft=0;Ft=0&&lr[3]>=0&&Tt.insert(ut,lr[0],lr[1],lr[2],lr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Oa.VectorTile(new C1(this.rawTileData)).layers,this.sourceLayerCoder=new qx(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(D,Y,pe,Ce){this.loadVTLayers();let Ue=D.params||{},Ge=ao/D.tileSize/D.scale,ut=bc(Ue.filter),Tt=D.queryGeometry,Ft=D.queryPadding*Ge,$t=Gx(Tt),lr=this.grid.query($t.minX-Ft,$t.minY-Ft,$t.maxX+Ft,$t.maxY+Ft),Ar=Gx(D.cameraQueryGeometry),zr=this.grid3D.query(Ar.minX-Ft,Ar.minY-Ft,Ar.maxX+Ft,Ar.maxY+Ft,(za,ja,gi,ei)=>function(hi,Ei,En,fo,ss){for(let vn of hi)if(Ei<=vn.x&&En<=vn.y&&fo>=vn.x&&ss>=vn.y)return!0;let eo=[new i(Ei,En),new i(Ei,ss),new i(fo,ss),new i(fo,En)];if(hi.length>2){for(let vn of eo)if(cn(hi,vn))return!0}for(let vn=0;vn(ei||(ei=hl(hi)),Ei.queryIntersectsFeature(Tt,hi,En,ei,this.z,D.transform,Ge,D.pixelPosMatrix)))}return Kr}loadMatchingFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=this.bucketLayerIDs[Y];if(Ge&&!function(za,ja){for(let gi=0;gi=0)return!0;return!1}(Ge,Ar))return;let zr=this.sourceLayerCoder.decode(pe),Kr=this.vtLayers[zr].feature(Ce);if(Ue.needGeometry){let za=Dl(Kr,!0);if(!Ue.filter(new Ts(this.tileID.overscaledZ),za,this.tileID.canonical))return}else if(!Ue.filter(new Ts(this.tileID.overscaledZ),Kr))return;let la=this.getId(Kr,zr);for(let za=0;za{let ut=D instanceof Ac?D.get(Ge):null;return ut&&ut.evaluate?ut.evaluate(Y,pe,Ce):ut})}function Gx(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return{minX:D,minY:Y,maxX:pe,maxY:Ce}}function QT(q,D){return D-q}function Wx(q,D,Y,pe,Ce){let Ue=[];for(let Ge=0;Ge=pe&&lr.x>=pe||($t.x>=pe?$t=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x>=pe&&(lr=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y>=Ce&&lr.y>=Ce||($t.y>=Ce?$t=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round():lr.y>=Ce&&(lr=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round()),Tt&&$t.equals(Tt[Tt.length-1])||(Tt=[$t],Ue.push(Tt)),Tt.push(lr)))))}}return Ue}ti("FeatureIndex",zv,{omit:["rawTileData","sourceLayerCoder"]});class Wd extends i{constructor(D,Y,pe,Ce){super(D,Y),this.angle=pe,Ce!==void 0&&(this.segment=Ce)}clone(){return new Wd(this.x,this.y,this.angle,this.segment)}}function V1(q,D,Y,pe,Ce){if(D.segment===void 0||Y===0)return!0;let Ue=D,Ge=D.segment+1,ut=0;for(;ut>-Y/2;){if(Ge--,Ge<0)return!1;ut-=q[Ge].dist(Ue),Ue=q[Ge]}ut+=q[Ge].dist(q[Ge+1]),Ge++;let Tt=[],Ft=0;for(;utpe;)Ft-=Tt.shift().angleDelta;if(Ft>Ce)return!1;Ge++,ut+=$t.dist(lr)}return!0}function Zx(q){let D=0;for(let Y=0;YFt){let Kr=(Ft-Tt)/zr,la=$n.number(lr.x,Ar.x,Kr),za=$n.number(lr.y,Ar.y,Kr),ja=new Wd(la,za,Ar.angleTo(lr),$t);return ja._round(),!Ge||V1(q,ja,ut,Ge,D)?ja:void 0}Tt+=zr}}function tA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Xx(pe,Ue,Ge),$t=Yx(pe,Ce),lr=$t*Ge,Ar=q[0].x===0||q[0].x===Tt||q[0].y===0||q[0].y===Tt;return D-lr=0&&hi=0&&Ei=0&&Ar+Ft<=$t){let En=new Wd(hi,Ei,gi,Kr);En._round(),pe&&!V1(q,En,Ue,pe,Ce)||zr.push(En)}}lr+=ja}return ut||zr.length||Ge||(zr=Kx(q,lr/2,Y,pe,Ce,Ue,Ge,!0,Tt)),zr}ti("Anchor",Wd);let fm=Ph;function Jx(q,D,Y,pe){let Ce=[],Ue=q.image,Ge=Ue.pixelRatio,ut=Ue.paddedRect.w-2*fm,Tt=Ue.paddedRect.h-2*fm,Ft={x1:q.left,y1:q.top,x2:q.right,y2:q.bottom},$t=Ue.stretchX||[[0,ut]],lr=Ue.stretchY||[[0,Tt]],Ar=(Yi,Ko)=>Yi+Ko[1]-Ko[0],zr=$t.reduce(Ar,0),Kr=lr.reduce(Ar,0),la=ut-zr,za=Tt-Kr,ja=0,gi=zr,ei=0,hi=Kr,Ei=0,En=la,fo=0,ss=za;if(Ue.content&&pe){let Yi=Ue.content,Ko=Yi[2]-Yi[0],bo=Yi[3]-Yi[1];(Ue.textFitWidth||Ue.textFitHeight)&&(Ft=Dx(q)),ja=Zd($t,0,Yi[0]),ei=Zd(lr,0,Yi[1]),gi=Zd($t,Yi[0],Yi[2]),hi=Zd(lr,Yi[1],Yi[3]),Ei=Yi[0]-ja,fo=Yi[1]-ei,En=Ko-gi,ss=bo-hi}let eo=Ft.x1,vn=Ft.y1,Uo=Ft.x2-eo,Mo=Ft.y2-vn,xo=(Yi,Ko,bo,gs)=>{let _u=C0(Yi.stretch-ja,gi,Uo,eo),pu=hm(Yi.fixed-Ei,En,Yi.stretch,zr),Bf=C0(Ko.stretch-ei,hi,Mo,vn),Gp=hm(Ko.fixed-fo,ss,Ko.stretch,Kr),dh=C0(bo.stretch-ja,gi,Uo,eo),Nf=hm(bo.fixed-Ei,En,bo.stretch,zr),Yh=C0(gs.stretch-ei,hi,Mo,vn),Kh=hm(gs.fixed-fo,ss,gs.stretch,Kr),Jh=new i(_u,Bf),Hc=new i(dh,Bf),Uf=new i(dh,Yh),Ih=new i(_u,Yh),vh=new i(pu/Ge,Gp/Ge),th=new i(Nf/Ge,Kh/Ge),nf=D*Math.PI/180;if(nf){let Nl=Math.sin(nf),zu=Math.cos(nf),xu=[zu,-Nl,Nl,zu];Jh._matMult(xu),Hc._matMult(xu),Ih._matMult(xu),Uf._matMult(xu)}let Lp=Yi.stretch+Yi.fixed,pp=Ko.stretch+Ko.fixed;return{tl:Jh,tr:Hc,bl:Ih,br:Uf,tex:{x:Ue.paddedRect.x+fm+Lp,y:Ue.paddedRect.y+fm+pp,w:bo.stretch+bo.fixed-Lp,h:gs.stretch+gs.fixed-pp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:vh,pixelOffsetBR:th,minFontScaleX:En/Ge/Uo,minFontScaleY:ss/Ge/Mo,isSDF:Y}};if(pe&&(Ue.stretchX||Ue.stretchY)){let Yi=$x($t,la,zr),Ko=$x(lr,za,Kr);for(let bo=0;bo0&&(la=Math.max(10,la),this.circleDiameter=la)}else{let Ar=!((lr=Ge.image)===null||lr===void 0)&&lr.content&&(Ge.image.textFitWidth||Ge.image.textFitHeight)?Dx(Ge):{x1:Ge.left,y1:Ge.top,x2:Ge.right,y2:Ge.bottom};Ar.y1=Ar.y1*ut-Tt[0],Ar.y2=Ar.y2*ut+Tt[2],Ar.x1=Ar.x1*ut-Tt[3],Ar.x2=Ar.x2*ut+Tt[1];let zr=Ge.collisionPadding;if(zr&&(Ar.x1-=zr[0]*ut,Ar.y1-=zr[1]*ut,Ar.x2+=zr[2]*ut,Ar.y2+=zr[3]*ut),$t){let Kr=new i(Ar.x1,Ar.y1),la=new i(Ar.x2,Ar.y1),za=new i(Ar.x1,Ar.y2),ja=new i(Ar.x2,Ar.y2),gi=$t*Math.PI/180;Kr._rotate(gi),la._rotate(gi),za._rotate(gi),ja._rotate(gi),Ar.x1=Math.min(Kr.x,la.x,za.x,ja.x),Ar.x2=Math.max(Kr.x,la.x,za.x,ja.x),Ar.y1=Math.min(Kr.y,la.y,za.y,ja.y),Ar.y2=Math.max(Kr.y,la.y,za.y,ja.y)}D.emplaceBack(Y.x,Y.y,Ar.x1,Ar.y1,Ar.x2,Ar.y2,pe,Ce,Ue)}this.boxEndIndex=D.length}}class fd{constructor(D=[],Y=(pe,Ce)=>peCe?1:0){if(this.data=D,this.length=this.data.length,this.compare=Y,this.length>0)for(let pe=(this.length>>1)-1;pe>=0;pe--)this._down(pe)}push(D){this.data.push(D),this._up(this.length++)}pop(){if(this.length===0)return;let D=this.data[0],Y=this.data.pop();return--this.length>0&&(this.data[0]=Y,this._down(0)),D}peek(){return this.data[0]}_up(D){let{data:Y,compare:pe}=this,Ce=Y[D];for(;D>0;){let Ue=D-1>>1,Ge=Y[Ue];if(pe(Ce,Ge)>=0)break;Y[D]=Ge,D=Ue}Y[D]=Ce}_down(D){let{data:Y,compare:pe}=this,Ce=this.length>>1,Ue=Y[D];for(;D=0)break;Y[D]=Y[Ge],D=Ge}Y[D]=Ue}}function rA(q,D=1,Y=!1){let pe=1/0,Ce=1/0,Ue=-1/0,Ge=-1/0,ut=q[0];for(let zr=0;zrUe)&&(Ue=Kr.x),(!zr||Kr.y>Ge)&&(Ge=Kr.y)}let Tt=Math.min(Ue-pe,Ge-Ce),Ft=Tt/2,$t=new fd([],aA);if(Tt===0)return new i(pe,Ce);for(let zr=pe;zrlr.d||!lr.d)&&(lr=zr,Y&&console.log("found best %d after %d probes",Math.round(1e4*zr.d)/1e4,Ar)),zr.max-lr.d<=D||(Ft=zr.h/2,$t.push(new pm(zr.p.x-Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x-Ft,zr.p.y+Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y+Ft,Ft,q)),Ar+=4)}return Y&&(console.log(`num probes: ${Ar}`),console.log(`best distance: ${lr.d}`)),lr.p}function aA(q,D){return D.max-q.max}function pm(q,D,Y,pe){this.p=new i(q,D),this.h=Y,this.d=function(Ce,Ue){let Ge=!1,ut=1/0;for(let Tt=0;TtCe.y!=Kr.y>Ce.y&&Ce.x<(Kr.x-zr.x)*(Ce.y-zr.y)/(Kr.y-zr.y)+zr.x&&(Ge=!Ge),ut=Math.min(ut,bi(Ce,zr,Kr))}}return(Ge?1:-1)*Math.sqrt(ut)}(this.p,pe),this.max=this.d+this.h*Math.SQRT2}var ph;e.aq=void 0,(ph=e.aq||(e.aq={}))[ph.center=1]="center",ph[ph.left=2]="left",ph[ph.right=3]="right",ph[ph.top=4]="top",ph[ph.bottom=5]="bottom",ph[ph["top-left"]=6]="top-left",ph[ph["top-right"]=7]="top-right",ph[ph["bottom-left"]=8]="bottom-left",ph[ph["bottom-right"]=9]="bottom-right";let pv=7,Fv=Number.POSITIVE_INFINITY;function q1(q,D){return D[1]!==Fv?function(Y,pe,Ce){let Ue=0,Ge=0;switch(pe=Math.abs(pe),Ce=Math.abs(Ce),Y){case"top-right":case"top-left":case"top":Ge=Ce-pv;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-Ce+pv}switch(Y){case"top-right":case"bottom-right":case"right":Ue=-pe;break;case"top-left":case"bottom-left":case"left":Ue=pe}return[Ue,Ge]}(q,D[0],D[1]):function(Y,pe){let Ce=0,Ue=0;pe<0&&(pe=0);let Ge=pe/Math.SQRT2;switch(Y){case"top-right":case"top-left":Ue=Ge-pv;break;case"bottom-right":case"bottom-left":Ue=-Ge+pv;break;case"bottom":Ue=-pe+pv;break;case"top":Ue=pe-pv}switch(Y){case"top-right":case"bottom-right":Ce=-Ge;break;case"top-left":case"bottom-left":Ce=Ge;break;case"left":Ce=pe;break;case"right":Ce=-pe}return[Ce,Ue]}(q,D[0])}function Qx(q,D,Y){var pe;let Ce=q.layout,Ue=(pe=Ce.get("text-variable-anchor-offset"))===null||pe===void 0?void 0:pe.evaluate(D,{},Y);if(Ue){let ut=Ue.values,Tt=[];for(let Ft=0;FtAr*Bl);$t.startsWith("top")?lr[1]-=pv:$t.startsWith("bottom")&&(lr[1]+=pv),Tt[Ft+1]=lr}return new Fa(Tt)}let Ge=Ce.get("text-variable-anchor");if(Ge){let ut;ut=q._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[Ce.get("text-radial-offset").evaluate(D,{},Y)*Bl,Fv]:Ce.get("text-offset").evaluate(D,{},Y).map(Ft=>Ft*Bl);let Tt=[];for(let Ft of Ge)Tt.push(Ft,q1(Ft,ut));return new Fa(Tt)}return null}function H1(q){switch(q){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=Ue.textMaxSize.evaluate(D,{});lr===void 0&&(lr=Ge);let Ar=q.layers[0].layout,zr=Ar.get("icon-offset").evaluate(D,{},$t),Kr=tb(Y.horizontal),la=Ge/24,za=q.tilePixelRatio*la,ja=q.tilePixelRatio*lr/24,gi=q.tilePixelRatio*ut,ei=q.tilePixelRatio*Ar.get("symbol-spacing"),hi=Ar.get("text-padding")*q.tilePixelRatio,Ei=function(Yi,Ko,bo,gs=1){let _u=Yi.get("icon-padding").evaluate(Ko,{},bo),pu=_u&&_u.values;return[pu[0]*gs,pu[1]*gs,pu[2]*gs,pu[3]*gs]}(Ar,D,$t,q.tilePixelRatio),En=Ar.get("text-max-angle")/180*Math.PI,fo=Ar.get("text-rotation-alignment")!=="viewport"&&Ar.get("symbol-placement")!=="point",ss=Ar.get("icon-rotation-alignment")==="map"&&Ar.get("symbol-placement")!=="point",eo=Ar.get("symbol-placement"),vn=ei/2,Uo=Ar.get("icon-text-fit"),Mo;pe&&Uo!=="none"&&(q.allowVerticalPlacement&&Y.vertical&&(Mo=zx(pe,Y.vertical,Uo,Ar.get("icon-text-fit-padding"),zr,la)),Kr&&(pe=zx(pe,Kr,Uo,Ar.get("icon-text-fit-padding"),zr,la)));let xo=(Yi,Ko)=>{Ko.x<0||Ko.x>=ao||Ko.y<0||Ko.y>=ao||function(bo,gs,_u,pu,Bf,Gp,dh,Nf,Yh,Kh,Jh,Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl,zu,xu,Pp,Ec,dm){let _d=bo.addToLineVertexArray(gs,_u),hd,Wp,tc,gf,Zp=0,Xd=0,dp=0,vm=0,Y1=-1,R0=-1,xd={},Ov=Xa("");if(bo.allowVerticalPlacement&&pu.vertical){let Rh=Nf.layout.get("text-rotate").evaluate(zu,{},Ec)+90;tc=new hv(Yh,gs,Kh,Jh,Hc,pu.vertical,Uf,Ih,vh,Rh),dh&&(gf=new hv(Yh,gs,Kh,Jh,Hc,dh,nf,Lp,vh,Rh))}if(Bf){let Rh=Nf.layout.get("icon-rotate").evaluate(zu,{}),Xp=Nf.layout.get("icon-text-fit")!=="none",dv=Jx(Bf,Rh,Pp,Xp),$h=dh?Jx(dh,Rh,Pp,Xp):void 0;Wp=new hv(Yh,gs,Kh,Jh,Hc,Bf,nf,Lp,!1,Rh),Zp=4*dv.length;let Dh=bo.iconSizeData,nd=null;Dh.kind==="source"?(nd=[yd*Nf.layout.get("icon-size").evaluate(zu,{})],nd[0]>cv&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)):Dh.kind==="composite"&&(nd=[yd*xu.compositeIconSizes[0].evaluate(zu,{},Ec),yd*xu.compositeIconSizes[1].evaluate(zu,{},Ec)],(nd[0]>cv||nd[1]>cv)&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)),bo.addSymbols(bo.icon,dv,nd,Nl,pp,zu,e.ah.none,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),Y1=bo.icon.placedSymbolArray.length-1,$h&&(Xd=4*$h.length,bo.addSymbols(bo.icon,$h,nd,Nl,pp,zu,e.ah.vertical,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),R0=bo.icon.placedSymbolArray.length-1)}let rh=Object.keys(pu.horizontal);for(let Rh of rh){let Xp=pu.horizontal[Rh];if(!hd){Ov=Xa(Xp.text);let $h=Nf.layout.get("text-rotate").evaluate(zu,{},Ec);hd=new hv(Yh,gs,Kh,Jh,Hc,Xp,Uf,Ih,vh,$h)}let dv=Xp.positionedLines.length===1;if(dp+=eb(bo,gs,Xp,Gp,Nf,vh,zu,th,_d,pu.vertical?e.ah.horizontal:e.ah.horizontalOnly,dv?rh:[Rh],xd,Y1,xu,Ec),dv)break}pu.vertical&&(vm+=eb(bo,gs,pu.vertical,Gp,Nf,vh,zu,th,_d,e.ah.vertical,["vertical"],xd,R0,xu,Ec));let sA=hd?hd.boxStartIndex:bo.collisionBoxArray.length,D0=hd?hd.boxEndIndex:bo.collisionBoxArray.length,bd=tc?tc.boxStartIndex:bo.collisionBoxArray.length,vp=tc?tc.boxEndIndex:bo.collisionBoxArray.length,nb=Wp?Wp.boxStartIndex:bo.collisionBoxArray.length,lA=Wp?Wp.boxEndIndex:bo.collisionBoxArray.length,ob=gf?gf.boxStartIndex:bo.collisionBoxArray.length,uA=gf?gf.boxEndIndex:bo.collisionBoxArray.length,id=-1,Fg=(Rh,Xp)=>Rh&&Rh.circleDiameter?Math.max(Rh.circleDiameter,Xp):Xp;id=Fg(hd,id),id=Fg(tc,id),id=Fg(Wp,id),id=Fg(gf,id);let z0=id>-1?1:0;z0&&(id*=dm/Bl),bo.glyphOffsetArray.length>=um.MAX_GLYPHS&&f("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),zu.sortKey!==void 0&&bo.addToSortKeyRanges(bo.symbolInstances.length,zu.sortKey);let K1=Qx(Nf,zu,Ec),[cA,fA]=function(Rh,Xp){let dv=Rh.length,$h=Xp?.values;if($h?.length>0)for(let Dh=0;Dh<$h.length;Dh+=2){let nd=$h[Dh+1];Rh.emplaceBack(e.aq[$h[Dh]],nd[0],nd[1])}return[dv,Rh.length]}(bo.textAnchorOffsets,K1);bo.symbolInstances.emplaceBack(gs.x,gs.y,xd.right>=0?xd.right:-1,xd.center>=0?xd.center:-1,xd.left>=0?xd.left:-1,xd.vertical||-1,Y1,R0,Ov,sA,D0,bd,vp,nb,lA,ob,uA,Kh,dp,vm,Zp,Xd,z0,0,Uf,id,cA,fA)}(q,Ko,Yi,Y,pe,Ce,Mo,q.layers[0],q.collisionBoxArray,D.index,D.sourceLayerIndex,q.index,za,[hi,hi,hi,hi],fo,Tt,gi,Ei,ss,zr,D,Ue,Ft,$t,Ge)};if(eo==="line")for(let Yi of Wx(D.geometry,0,0,ao,ao)){let Ko=tA(Yi,ei,En,Y.vertical||Kr,pe,24,ja,q.overscaling,ao);for(let bo of Ko)Kr&&nA(q,Kr.text,vn,bo)||xo(Yi,bo)}else if(eo==="line-center"){for(let Yi of D.geometry)if(Yi.length>1){let Ko=eA(Yi,En,Y.vertical||Kr,pe,24,ja);Ko&&xo(Yi,Ko)}}else if(D.type==="Polygon")for(let Yi of Ic(D.geometry,0)){let Ko=rA(Yi,16);xo(Yi[0],new Wd(Ko.x,Ko.y,0))}else if(D.type==="LineString")for(let Yi of D.geometry)xo(Yi,new Wd(Yi[0].x,Yi[0].y,0));else if(D.type==="Point")for(let Yi of D.geometry)for(let Ko of Yi)xo([Ko],new Wd(Ko.x,Ko.y,0))}function eb(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=function(gi,ei,hi,Ei,En,fo,ss,eo){let vn=Ei.layout.get("text-rotate").evaluate(fo,{})*Math.PI/180,Uo=[];for(let Mo of ei.positionedLines)for(let xo of Mo.positionedGlyphs){if(!xo.rect)continue;let Yi=xo.rect||{},Ko=Lx+1,bo=!0,gs=1,_u=0,pu=(En||eo)&&xo.vertical,Bf=xo.metrics.advance*xo.scale/2;if(eo&&ei.verticalizable&&(_u=Mo.lineOffset/2-(xo.imageName?-(Bl-xo.metrics.width*xo.scale)/2:(xo.scale-1)*Bl)),xo.imageName){let Nl=ss[xo.imageName];bo=Nl.sdf,gs=Nl.pixelRatio,Ko=Ph/gs}let Gp=En?[xo.x+Bf,xo.y]:[0,0],dh=En?[0,0]:[xo.x+Bf+hi[0],xo.y+hi[1]-_u],Nf=[0,0];pu&&(Nf=dh,dh=[0,0]);let Yh=xo.metrics.isDoubleResolution?2:1,Kh=(xo.metrics.left-Ko)*xo.scale-Bf+dh[0],Jh=(-xo.metrics.top-Ko)*xo.scale+dh[1],Hc=Kh+Yi.w/Yh*xo.scale/gs,Uf=Jh+Yi.h/Yh*xo.scale/gs,Ih=new i(Kh,Jh),vh=new i(Hc,Jh),th=new i(Kh,Uf),nf=new i(Hc,Uf);if(pu){let Nl=new i(-Bf,Bf-Of),zu=-Math.PI/2,xu=Bl/2-Bf,Pp=new i(5-Of-xu,-(xo.imageName?xu:0)),Ec=new i(...Nf);Ih._rotateAround(zu,Nl)._add(Pp)._add(Ec),vh._rotateAround(zu,Nl)._add(Pp)._add(Ec),th._rotateAround(zu,Nl)._add(Pp)._add(Ec),nf._rotateAround(zu,Nl)._add(Pp)._add(Ec)}if(vn){let Nl=Math.sin(vn),zu=Math.cos(vn),xu=[zu,-Nl,Nl,zu];Ih._matMult(xu),vh._matMult(xu),th._matMult(xu),nf._matMult(xu)}let Lp=new i(0,0),pp=new i(0,0);Uo.push({tl:Ih,tr:vh,bl:th,br:nf,tex:Yi,writingMode:ei.writingMode,glyphOffset:Gp,sectionIndex:xo.sectionIndex,isSDF:bo,pixelOffsetTL:Lp,pixelOffsetBR:pp,minFontScaleX:0,minFontScaleY:0})}return Uo}(0,Y,ut,Ce,Ue,Ge,pe,q.allowVerticalPlacement),za=q.textSizeData,ja=null;za.kind==="source"?(ja=[yd*Ce.layout.get("text-size").evaluate(Ge,{})],ja[0]>cv&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)):za.kind==="composite"&&(ja=[yd*zr.compositeTextSizes[0].evaluate(Ge,{},Kr),yd*zr.compositeTextSizes[1].evaluate(Ge,{},Kr)],(ja[0]>cv||ja[1]>cv)&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)),q.addSymbols(q.text,la,ja,ut,Ue,Ge,Ft,D,Tt.lineStartIndex,Tt.lineLength,Ar,Kr);for(let gi of $t)lr[gi]=q.text.placedSymbolArray.length-1;return 4*la.length}function tb(q){for(let D in q)return q[D];return null}function nA(q,D,Y,pe){let Ce=q.compareText;if(D in Ce){let Ue=Ce[D];for(let Ge=Ue.length-1;Ge>=0;Ge--)if(pe.dist(Ue[Ge])>4;if(Ce!==1)throw new Error(`Got v${Ce} data when expected v1.`);let Ue=rb[15&pe];if(!Ue)throw new Error("Unrecognized array type.");let[Ge]=new Uint16Array(D,2,1),[ut]=new Uint32Array(D,4,1);return new G1(ut,Ge,Ue,D)}constructor(D,Y=64,pe=Float64Array,Ce){if(isNaN(D)||D<0)throw new Error(`Unpexpected numItems value: ${D}.`);this.numItems=+D,this.nodeSize=Math.min(Math.max(+Y,2),65535),this.ArrayType=pe,this.IndexArrayType=D<65536?Uint16Array:Uint32Array;let Ue=rb.indexOf(this.ArrayType),Ge=2*D*this.ArrayType.BYTES_PER_ELEMENT,ut=D*this.IndexArrayType.BYTES_PER_ELEMENT,Tt=(8-ut%8)%8;if(Ue<0)throw new Error(`Unexpected typed array class: ${pe}.`);Ce&&Ce instanceof ArrayBuffer?(this.data=Ce,this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=2*D,this._finished=!0):(this.data=new ArrayBuffer(8+Ge+ut+Tt),this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+Ue]),new Uint16Array(this.data,2,1)[0]=Y,new Uint32Array(this.data,4,1)[0]=D)}add(D,Y){let pe=this._pos>>1;return this.ids[pe]=pe,this.coords[this._pos++]=D,this.coords[this._pos++]=Y,pe}finish(){let D=this._pos>>1;if(D!==this.numItems)throw new Error(`Added ${D} items when expected ${this.numItems}.`);return L0(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(D,Y,pe,Ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ue,coords:Ge,nodeSize:ut}=this,Tt=[0,Ue.length-1,0],Ft=[];for(;Tt.length;){let $t=Tt.pop()||0,lr=Tt.pop()||0,Ar=Tt.pop()||0;if(lr-Ar<=ut){for(let za=Ar;za<=lr;za++){let ja=Ge[2*za],gi=Ge[2*za+1];ja>=D&&ja<=pe&&gi>=Y&&gi<=Ce&&Ft.push(Ue[za])}continue}let zr=Ar+lr>>1,Kr=Ge[2*zr],la=Ge[2*zr+1];Kr>=D&&Kr<=pe&&la>=Y&&la<=Ce&&Ft.push(Ue[zr]),($t===0?D<=Kr:Y<=la)&&(Tt.push(Ar),Tt.push(zr-1),Tt.push(1-$t)),($t===0?pe>=Kr:Ce>=la)&&(Tt.push(zr+1),Tt.push(lr),Tt.push(1-$t))}return Ft}within(D,Y,pe){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ce,coords:Ue,nodeSize:Ge}=this,ut=[0,Ce.length-1,0],Tt=[],Ft=pe*pe;for(;ut.length;){let $t=ut.pop()||0,lr=ut.pop()||0,Ar=ut.pop()||0;if(lr-Ar<=Ge){for(let za=Ar;za<=lr;za++)ib(Ue[2*za],Ue[2*za+1],D,Y)<=Ft&&Tt.push(Ce[za]);continue}let zr=Ar+lr>>1,Kr=Ue[2*zr],la=Ue[2*zr+1];ib(Kr,la,D,Y)<=Ft&&Tt.push(Ce[zr]),($t===0?D-pe<=Kr:Y-pe<=la)&&(ut.push(Ar),ut.push(zr-1),ut.push(1-$t)),($t===0?D+pe>=Kr:Y+pe>=la)&&(ut.push(zr+1),ut.push(lr),ut.push(1-$t))}return Tt}}function L0(q,D,Y,pe,Ce,Ue){if(Ce-pe<=Y)return;let Ge=pe+Ce>>1;ab(q,D,Ge,pe,Ce,Ue),L0(q,D,Y,pe,Ge-1,1-Ue),L0(q,D,Y,Ge+1,Ce,1-Ue)}function ab(q,D,Y,pe,Ce,Ue){for(;Ce>pe;){if(Ce-pe>600){let Ft=Ce-pe+1,$t=Y-pe+1,lr=Math.log(Ft),Ar=.5*Math.exp(2*lr/3),zr=.5*Math.sqrt(lr*Ar*(Ft-Ar)/Ft)*($t-Ft/2<0?-1:1);ab(q,D,Y,Math.max(pe,Math.floor(Y-$t*Ar/Ft+zr)),Math.min(Ce,Math.floor(Y+(Ft-$t)*Ar/Ft+zr)),Ue)}let Ge=D[2*Y+Ue],ut=pe,Tt=Ce;for(Dg(q,D,pe,Y),D[2*Ce+Ue]>Ge&&Dg(q,D,pe,Ce);utGe;)Tt--}D[2*pe+Ue]===Ge?Dg(q,D,pe,Tt):(Tt++,Dg(q,D,Tt,Ce)),Tt<=Y&&(pe=Tt+1),Y<=Tt&&(Ce=Tt-1)}}function Dg(q,D,Y,pe){W1(q,Y,pe),W1(D,2*Y,2*pe),W1(D,2*Y+1,2*pe+1)}function W1(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}function ib(q,D,Y,pe){let Ce=q-Y,Ue=D-pe;return Ce*Ce+Ue*Ue}var P0;e.bg=void 0,(P0=e.bg||(e.bg={})).create="create",P0.load="load",P0.fullLoad="fullLoad";let zg=null,Mf=[],Z1=1e3/60,X1="loadTime",I0="fullLoadTime",oA={mark(q){performance.mark(q)},frame(q){let D=q;zg!=null&&Mf.push(D-zg),zg=D},clearMetrics(){zg=null,Mf=[],performance.clearMeasures(X1),performance.clearMeasures(I0);for(let q in e.bg)performance.clearMarks(e.bg[q])},getPerformanceMetrics(){performance.measure(X1,e.bg.create,e.bg.load),performance.measure(I0,e.bg.create,e.bg.fullLoad);let q=performance.getEntriesByName(X1)[0].duration,D=performance.getEntriesByName(I0)[0].duration,Y=Mf.length,pe=1/(Mf.reduce((Ue,Ge)=>Ue+Ge,0)/Y/1e3),Ce=Mf.filter(Ue=>Ue>Z1).reduce((Ue,Ge)=>Ue+(Ge-Z1)/Z1,0);return{loadTime:q,fullLoadTime:D,fps:pe,percentDroppedFrames:Ce/(Y+Ce)*100,totalFrames:Y}}};e.$=class extends cr{},e.A=tn,e.B=yi,e.C=function(q){if(z==null){let D=q.navigator?q.navigator.userAgent:null;z=!!q.safari||!(!D||!(/\b(iPad|iPhone|iPod)\b/.test(D)||D.match("Safari")&&!D.match("Chrome")))}return z},e.D=ro,e.E=ee,e.F=class{constructor(q,D){this.target=q,this.mapId=D,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new B1(()=>this.process()),this.subscription=function(Y,pe,Ce,Ue){return Y.addEventListener(pe,Ce,!1),{unsubscribe:()=>{Y.removeEventListener(pe,Ce,!1)}}}(this.target,"message",Y=>this.receive(Y)),this.globalScope=L(self)?q:window}registerMessageHandler(q,D){this.messageHandlers[q]=D}sendAsync(q,D){return new Promise((Y,pe)=>{let Ce=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[Ce]={resolve:Y,reject:pe},D&&D.signal.addEventListener("abort",()=>{delete this.resolveRejects[Ce];let ut={id:Ce,type:"",origin:location.origin,targetMapId:q.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ut)},{once:!0});let Ue=[],Ge=Object.assign(Object.assign({},q),{id:Ce,sourceMapId:this.mapId,origin:location.origin,data:Jn(q.data,Ue)});this.target.postMessage(Ge,{transfer:Ue})})}receive(q){let D=q.data,Y=D.id;if(!(D.origin!=="file://"&&location.origin!=="file://"&&D.origin!=="resource://android"&&location.origin!=="resource://android"&&D.origin!==location.origin||D.targetMapId&&this.mapId!==D.targetMapId)){if(D.type===""){delete this.tasks[Y];let pe=this.abortControllers[Y];return delete this.abortControllers[Y],void(pe&&pe.abort())}if(L(self)||D.mustQueue)return this.tasks[Y]=D,this.taskQueue.push(Y),void this.invoker.trigger();this.processTask(Y,D)}}process(){if(this.taskQueue.length===0)return;let q=this.taskQueue.shift(),D=this.tasks[q];delete this.tasks[q],this.taskQueue.length>0&&this.invoker.trigger(),D&&this.processTask(q,D)}processTask(q,D){return t(this,void 0,void 0,function*(){if(D.type===""){let Ce=this.resolveRejects[q];return delete this.resolveRejects[q],Ce?void(D.error?Ce.reject(no(D.error)):Ce.resolve(no(D.data))):void 0}if(!this.messageHandlers[D.type])return void this.completeTask(q,new Error(`Could not find a registered handler for ${D.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let Y=no(D.data),pe=new AbortController;this.abortControllers[q]=pe;try{let Ce=yield this.messageHandlers[D.type](D.sourceMapId,Y,pe);this.completeTask(q,null,Ce)}catch(Ce){this.completeTask(q,Ce)}})}completeTask(q,D,Y){let pe=[];delete this.abortControllers[q];let Ce={id:q,type:"",sourceMapId:this.mapId,origin:location.origin,error:D?Jn(D):null,data:Jn(Y,pe)};this.target.postMessage(Ce,{transfer:pe})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},e.G=se,e.H=function(){var q=new tn(16);return tn!=Float32Array&&(q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=0,q[12]=0,q[13]=0,q[14]=0),q[0]=1,q[5]=1,q[10]=1,q[15]=1,q},e.I=x0,e.J=function(q,D,Y){var pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la=Y[0],za=Y[1],ja=Y[2];return D===q?(q[12]=D[0]*la+D[4]*za+D[8]*ja+D[12],q[13]=D[1]*la+D[5]*za+D[9]*ja+D[13],q[14]=D[2]*la+D[6]*za+D[10]*ja+D[14],q[15]=D[3]*la+D[7]*za+D[11]*ja+D[15]):(Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],q[0]=pe=D[0],q[1]=Ce,q[2]=Ue,q[3]=Ge,q[4]=ut,q[5]=Tt,q[6]=Ft,q[7]=$t,q[8]=lr,q[9]=Ar,q[10]=zr,q[11]=Kr,q[12]=pe*la+ut*za+lr*ja+D[12],q[13]=Ce*la+Tt*za+Ar*ja+D[13],q[14]=Ue*la+Ft*za+zr*ja+D[14],q[15]=Ge*la+$t*za+Kr*ja+D[15]),q},e.K=function(q,D,Y){var pe=Y[0],Ce=Y[1],Ue=Y[2];return q[0]=D[0]*pe,q[1]=D[1]*pe,q[2]=D[2]*pe,q[3]=D[3]*pe,q[4]=D[4]*Ce,q[5]=D[5]*Ce,q[6]=D[6]*Ce,q[7]=D[7]*Ce,q[8]=D[8]*Ue,q[9]=D[9]*Ue,q[10]=D[10]*Ue,q[11]=D[11]*Ue,q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.L=qi,e.M=function(q,D){let Y={};for(let pe=0;pe{let D=window.document.createElement("video");return D.muted=!0,new Promise(Y=>{D.onloadstart=()=>{Y(D)};for(let pe of q){let Ce=window.document.createElement("source");J(pe)||(D.crossOrigin="Anonymous"),Ce.src=pe,D.appendChild(Ce)}})},e.a4=function(){return m++},e.a5=Ci,e.a6=um,e.a7=bc,e.a8=Dl,e.a9=j1,e.aA=function(q){if(q.type==="custom")return new O1(q);switch(q.type){case"background":return new $T(q);case"circle":return new Zi(q);case"fill":return new Gr(q);case"fill-extrusion":return new Sp(q);case"heatmap":return new os(q);case"hillshade":return new Uc(q);case"line":return new Lv(q);case"raster":return new Lg(q);case"symbol":return new Dv(q)}},e.aB=u,e.aC=function(q,D){if(!q)return[{command:"setStyle",args:[D]}];let Y=[];try{if(!Ae(q.version,D.version))return[{command:"setStyle",args:[D]}];Ae(q.center,D.center)||Y.push({command:"setCenter",args:[D.center]}),Ae(q.zoom,D.zoom)||Y.push({command:"setZoom",args:[D.zoom]}),Ae(q.bearing,D.bearing)||Y.push({command:"setBearing",args:[D.bearing]}),Ae(q.pitch,D.pitch)||Y.push({command:"setPitch",args:[D.pitch]}),Ae(q.sprite,D.sprite)||Y.push({command:"setSprite",args:[D.sprite]}),Ae(q.glyphs,D.glyphs)||Y.push({command:"setGlyphs",args:[D.glyphs]}),Ae(q.transition,D.transition)||Y.push({command:"setTransition",args:[D.transition]}),Ae(q.light,D.light)||Y.push({command:"setLight",args:[D.light]}),Ae(q.terrain,D.terrain)||Y.push({command:"setTerrain",args:[D.terrain]}),Ae(q.sky,D.sky)||Y.push({command:"setSky",args:[D.sky]}),Ae(q.projection,D.projection)||Y.push({command:"setProjection",args:[D.projection]});let pe={},Ce=[];(function(Ge,ut,Tt,Ft){let $t;for($t in ut=ut||{},Ge=Ge||{})Object.prototype.hasOwnProperty.call(Ge,$t)&&(Object.prototype.hasOwnProperty.call(ut,$t)||Ze($t,Tt,Ft));for($t in ut)Object.prototype.hasOwnProperty.call(ut,$t)&&(Object.prototype.hasOwnProperty.call(Ge,$t)?Ae(Ge[$t],ut[$t])||(Ge[$t].type==="geojson"&&ut[$t].type==="geojson"&&it(Ge,ut,$t)?Be(Tt,{command:"setGeoJSONSourceData",args:[$t,ut[$t].data]}):at($t,ut,Tt,Ft)):Ie($t,ut,Tt))})(q.sources,D.sources,Ce,pe);let Ue=[];q.layers&&q.layers.forEach(Ge=>{"source"in Ge&&pe[Ge.source]?Y.push({command:"removeLayer",args:[Ge.id]}):Ue.push(Ge)}),Y=Y.concat(Ce),function(Ge,ut,Tt){ut=ut||[];let Ft=(Ge=Ge||[]).map(lt),$t=ut.map(lt),lr=Ge.reduce(Me,{}),Ar=ut.reduce(Me,{}),zr=Ft.slice(),Kr=Object.create(null),la,za,ja,gi,ei;for(let hi=0,Ei=0;hi@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(Y,pe,Ce,Ue)=>{let Ge=Ce||Ue;return D[pe]=!Ge||Ge.toLowerCase(),""}),D["max-age"]){let Y=parseInt(D["max-age"],10);isNaN(Y)?delete D["max-age"]:D["max-age"]=Y}return D},e.ab=function(q,D){let Y=[];for(let pe in q)pe in D||Y.push(pe);return Y},e.ac=w,e.ad=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[0],Ge=D[1],ut=D[2],Tt=D[3],Ft=D[4],$t=D[5],lr=D[6],Ar=D[7];return D!==q&&(q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[0]=Ue*Ce+Ft*pe,q[1]=Ge*Ce+$t*pe,q[2]=ut*Ce+lr*pe,q[3]=Tt*Ce+Ar*pe,q[4]=Ft*Ce-Ue*pe,q[5]=$t*Ce-Ge*pe,q[6]=lr*Ce-ut*pe,q[7]=Ar*Ce-Tt*pe,q},e.ae=function(q){var D=new tn(16);return D[0]=q[0],D[1]=q[1],D[2]=q[2],D[3]=q[3],D[4]=q[4],D[5]=q[5],D[6]=q[6],D[7]=q[7],D[8]=q[8],D[9]=q[9],D[10]=q[10],D[11]=q[11],D[12]=q[12],D[13]=q[13],D[14]=q[14],D[15]=q[15],D},e.af=_o,e.ag=function(q,D){let Y=0,pe=0;if(q.kind==="constant")pe=q.layoutSize;else if(q.kind!=="source"){let{interpolationType:Ce,minZoom:Ue,maxZoom:Ge}=q,ut=Ce?w(Cn.interpolationFactor(Ce,D,Ue,Ge),0,1):0;q.kind==="camera"?pe=$n.number(q.minSize,q.maxSize,ut):Y=ut}return{uSizeT:Y,uSize:pe}},e.ai=function(q,{uSize:D,uSizeT:Y},{lowerSize:pe,upperSize:Ce}){return q.kind==="source"?pe/yd:q.kind==="composite"?$n.number(pe/yd,Ce/yd,Y):D},e.aj=R1,e.ak=function(q,D,Y,pe){let Ce=D.y-q.y,Ue=D.x-q.x,Ge=pe.y-Y.y,ut=pe.x-Y.x,Tt=Ge*Ue-ut*Ce;if(Tt===0)return null;let Ft=(ut*(q.y-Y.y)-Ge*(q.x-Y.x))/Tt;return new i(q.x+Ft*Ue,q.y+Ft*Ce)},e.al=Wx,e.am=dc,e.an=pn,e.ao=function(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return[D,Y,pe,Ce]},e.ap=Bl,e.ar=I1,e.as=function(q,D){var Y=D[0],pe=D[1],Ce=D[2],Ue=D[3],Ge=D[4],ut=D[5],Tt=D[6],Ft=D[7],$t=D[8],lr=D[9],Ar=D[10],zr=D[11],Kr=D[12],la=D[13],za=D[14],ja=D[15],gi=Y*ut-pe*Ge,ei=Y*Tt-Ce*Ge,hi=Y*Ft-Ue*Ge,Ei=pe*Tt-Ce*ut,En=pe*Ft-Ue*ut,fo=Ce*Ft-Ue*Tt,ss=$t*la-lr*Kr,eo=$t*za-Ar*Kr,vn=$t*ja-zr*Kr,Uo=lr*za-Ar*la,Mo=lr*ja-zr*la,xo=Ar*ja-zr*za,Yi=gi*xo-ei*Mo+hi*Uo+Ei*vn-En*eo+fo*ss;return Yi?(q[0]=(ut*xo-Tt*Mo+Ft*Uo)*(Yi=1/Yi),q[1]=(Ce*Mo-pe*xo-Ue*Uo)*Yi,q[2]=(la*fo-za*En+ja*Ei)*Yi,q[3]=(Ar*En-lr*fo-zr*Ei)*Yi,q[4]=(Tt*vn-Ge*xo-Ft*eo)*Yi,q[5]=(Y*xo-Ce*vn+Ue*eo)*Yi,q[6]=(za*hi-Kr*fo-ja*ei)*Yi,q[7]=($t*fo-Ar*hi+zr*ei)*Yi,q[8]=(Ge*Mo-ut*vn+Ft*ss)*Yi,q[9]=(pe*vn-Y*Mo-Ue*ss)*Yi,q[10]=(Kr*En-la*hi+ja*gi)*Yi,q[11]=(lr*hi-$t*En-zr*gi)*Yi,q[12]=(ut*eo-Ge*Uo-Tt*ss)*Yi,q[13]=(Y*Uo-pe*eo+Ce*ss)*Yi,q[14]=(la*ei-Kr*Ei-za*gi)*Yi,q[15]=($t*Ei-lr*ei+Ar*gi)*Yi,q):null},e.at=H1,e.au=A0,e.av=G1,e.aw=function(){let q={},D=ie.$version;for(let Y in ie.$root){let pe=ie.$root[Y];if(pe.required){let Ce=null;Ce=Y==="version"?D:pe.type==="array"?[]:{},Ce!=null&&(q[Y]=Ce)}}return q},e.ax=en,e.ay=G,e.az=function(q){q=q.slice();let D=Object.create(null);for(let Y=0;Y25||pe<0||pe>=1||Y<0||Y>=1)},e.bc=function(q,D){return q[0]=D[0],q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=D[1],q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=D[2],q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q},e.bd=class extends Yt{},e.be=N1,e.bf=oA,e.bh=he,e.bi=function(q,D){Q.REGISTERED_PROTOCOLS[q]=D},e.bj=function(q){delete Q.REGISTERED_PROTOCOLS[q]},e.bk=function(q,D){let Y={};for(let Ce=0;Cexo*Bl)}let eo=Ge?"center":Y.get("text-justify").evaluate(Ft,{},q.canonical),vn=Y.get("symbol-placement")==="point"?Y.get("text-max-width").evaluate(Ft,{},q.canonical)*Bl:1/0,Uo=()=>{q.bucket.allowVerticalPlacement&&co(hi)&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,"left",En,ja,e.ah.vertical,!0,Ar,lr))};if(!Ge&&ss){let Mo=new Set;if(eo==="auto")for(let Yi=0;Yit(void 0,void 0,void 0,function*(){if(q.byteLength===0)return createImageBitmap(new ImageData(1,1));let D=new Blob([new Uint8Array(q)],{type:"image/png"});try{return createImageBitmap(D)}catch(Y){throw new Error(`Could not load image because of ${Y.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),e.e=E,e.f=q=>new Promise((D,Y)=>{let pe=new Image;pe.onload=()=>{D(pe),URL.revokeObjectURL(pe.src),pe.onload=null,window.requestAnimationFrame(()=>{pe.src=B})},pe.onerror=()=>Y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let Ce=new Blob([new Uint8Array(q)],{type:"image/png"});pe.src=q.byteLength?URL.createObjectURL(Ce):B}),e.g=ue,e.h=(q,D)=>$(E(q,{type:"json"}),D),e.i=L,e.j=j,e.k=ne,e.l=(q,D)=>$(E(q,{type:"arrayBuffer"}),D),e.m=$,e.n=function(q){return new C1(q).readFields(fC,[])},e.o=rs,e.p=P1,e.q=Oe,e.r=oi,e.s=J,e.t=li,e.u=Ka,e.v=ie,e.w=f,e.x=function([q,D,Y]){return D+=90,D*=Math.PI/180,Y*=Math.PI/180,{x:q*Math.cos(D)*Math.sin(Y),y:q*Math.sin(D)*Math.sin(Y),z:q*Math.cos(Y)}},e.y=$n,e.z=Ts}),A("worker",["./shared"],function(e){"use strict";class t{constructor(Fe){this.keyCache={},Fe&&this.replace(Fe)}replace(Fe){this._layerConfigs={},this._layers={},this.update(Fe,[])}update(Fe,Ke){for(let Ee of Fe){this._layerConfigs[Ee.id]=Ee;let Ve=this._layers[Ee.id]=e.aA(Ee);Ve._featureFilter=e.a7(Ve.filter),this.keyCache[Ee.id]&&delete this.keyCache[Ee.id]}for(let Ee of Ke)delete this.keyCache[Ee],delete this._layerConfigs[Ee],delete this._layers[Ee];this.familiesBySource={};let Ne=e.bk(Object.values(this._layerConfigs),this.keyCache);for(let Ee of Ne){let Ve=Ee.map(xt=>this._layers[xt.id]),ke=Ve[0];if(ke.visibility==="none")continue;let Te=ke.source||"",Le=this.familiesBySource[Te];Le||(Le=this.familiesBySource[Te]={});let rt=ke.sourceLayer||"_geojsonTileLayer",dt=Le[rt];dt||(dt=Le[rt]=[]),dt.push(Ve)}}}class r{constructor(Fe){let Ke={},Ne=[];for(let Te in Fe){let Le=Fe[Te],rt=Ke[Te]={};for(let dt in Le){let xt=Le[+dt];if(!xt||xt.bitmap.width===0||xt.bitmap.height===0)continue;let It={x:0,y:0,w:xt.bitmap.width+2,h:xt.bitmap.height+2};Ne.push(It),rt[dt]={rect:It,metrics:xt.metrics}}}let{w:Ee,h:Ve}=e.p(Ne),ke=new e.o({width:Ee||1,height:Ve||1});for(let Te in Fe){let Le=Fe[Te];for(let rt in Le){let dt=Le[+rt];if(!dt||dt.bitmap.width===0||dt.bitmap.height===0)continue;let xt=Ke[Te][rt].rect;e.o.copy(dt.bitmap,ke,{x:0,y:0},{x:xt.x+1,y:xt.y+1},dt.bitmap)}}this.image=ke,this.positions=Ke}}e.bl("GlyphAtlas",r);class o{constructor(Fe){this.tileID=new e.S(Fe.tileID.overscaledZ,Fe.tileID.wrap,Fe.tileID.canonical.z,Fe.tileID.canonical.x,Fe.tileID.canonical.y),this.uid=Fe.uid,this.zoom=Fe.zoom,this.pixelRatio=Fe.pixelRatio,this.tileSize=Fe.tileSize,this.source=Fe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Fe.showCollisionBoxes,this.collectResourceTiming=!!Fe.collectResourceTiming,this.returnDependencies=!!Fe.returnDependencies,this.promoteId=Fe.promoteId,this.inFlightDependencies=[]}parse(Fe,Ke,Ne,Ee){return e._(this,void 0,void 0,function*(){this.status="parsing",this.data=Fe,this.collisionBoxArray=new e.a5;let Ve=new e.bm(Object.keys(Fe.layers).sort()),ke=new e.bn(this.tileID,this.promoteId);ke.bucketLayerIDs=[];let Te={},Le={featureIndex:ke,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ne},rt=Ke.familiesBySource[this.source];for(let Ga in rt){let Ma=Fe.layers[Ga];if(!Ma)continue;Ma.version===1&&e.w(`Vector tile source "${this.source}" layer "${Ga}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ua=Ve.encode(Ga),ni=[];for(let Wt=0;Wt=zt.maxzoom||zt.visibility!=="none"&&(a(Wt,this.zoom,Ne),(Te[zt.id]=zt.createBucket({index:ke.bucketLayerIDs.length,layers:Wt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ua,sourceID:this.source})).populate(ni,Le,this.tileID.canonical),ke.bucketLayerIDs.push(Wt.map(Vt=>Vt.id)))}}let dt=e.aF(Le.glyphDependencies,Ga=>Object.keys(Ga).map(Number));this.inFlightDependencies.forEach(Ga=>Ga?.abort()),this.inFlightDependencies=[];let xt=Promise.resolve({});if(Object.keys(dt).length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),xt=Ee.sendAsync({type:"GG",data:{stacks:dt,source:this.source,tileID:this.tileID,type:"glyphs"}},Ga)}let It=Object.keys(Le.iconDependencies),Bt=Promise.resolve({});if(It.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Bt=Ee.sendAsync({type:"GI",data:{icons:It,source:this.source,tileID:this.tileID,type:"icons"}},Ga)}let Gt=Object.keys(Le.patternDependencies),Kt=Promise.resolve({});if(Gt.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Kt=Ee.sendAsync({type:"GI",data:{icons:Gt,source:this.source,tileID:this.tileID,type:"patterns"}},Ga)}let[sr,sa,Aa]=yield Promise.all([xt,Bt,Kt]),La=new r(sr),ka=new e.bo(sa,Aa);for(let Ga in Te){let Ma=Te[Ga];Ma instanceof e.a6?(a(Ma.layers,this.zoom,Ne),e.bp({bucket:Ma,glyphMap:sr,glyphPositions:La.positions,imageMap:sa,imagePositions:ka.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Ma.hasPattern&&(Ma instanceof e.bq||Ma instanceof e.br||Ma instanceof e.bs)&&(a(Ma.layers,this.zoom,Ne),Ma.addFeatures(Le,this.tileID.canonical,ka.patternPositions))}return this.status="done",{buckets:Object.values(Te).filter(Ga=>!Ga.isEmpty()),featureIndex:ke,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:La.image,imageAtlas:ka,glyphMap:this.returnDependencies?sr:null,iconMap:this.returnDependencies?sa:null,glyphPositions:this.returnDependencies?La.positions:null}})}}function a(yt,Fe,Ke){let Ne=new e.z(Fe);for(let Ee of yt)Ee.recalculate(Ne,Ke)}class i{constructor(Fe,Ke,Ne){this.actor=Fe,this.layerIndex=Ke,this.availableImages=Ne,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield e.l(Fe.request,Ke);try{return{vectorTile:new e.bt.VectorTile(new e.bu(Ne.data)),rawData:Ne.data,cacheControl:Ne.cacheControl,expires:Ne.expires}}catch(Ee){let Ve=new Uint8Array(Ne.data),ke=`Unable to parse the tile at ${Fe.request.url}, `;throw ke+=Ve[0]===31&&Ve[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Ee.message}`,new Error(ke)}})}loadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid,Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request),Ee=new o(Fe);this.loading[Ke]=Ee;let Ve=new AbortController;Ee.abort=Ve;try{let ke=yield this.loadVectorTile(Fe,Ve);if(delete this.loading[Ke],!ke)return null;let Te=ke.rawData,Le={};ke.expires&&(Le.expires=ke.expires),ke.cacheControl&&(Le.cacheControl=ke.cacheControl);let rt={};if(Ne){let xt=Ne.finish();xt&&(rt.resourceTiming=JSON.parse(JSON.stringify(xt)))}Ee.vectorTile=ke.vectorTile;let dt=Ee.parse(ke.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ke]=Ee,this.fetching[Ke]={rawTileData:Te,cacheControl:Le,resourceTiming:rt};try{let xt=yield dt;return e.e({rawTileData:Te.slice(0)},xt,Le,rt)}finally{delete this.fetching[Ke]}}catch(ke){throw delete this.loading[Ke],Ee.status="done",this.loaded[Ke]=Ee,ke}})}reloadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid;if(!this.loaded||!this.loaded[Ke])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ne=this.loaded[Ke];if(Ne.showCollisionBoxes=Fe.showCollisionBoxes,Ne.status==="parsing"){let Ee=yield Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor),Ve;if(this.fetching[Ke]){let{rawTileData:ke,cacheControl:Te,resourceTiming:Le}=this.fetching[Ke];delete this.fetching[Ke],Ve=e.e({rawTileData:ke.slice(0)},Ee,Te,Le)}else Ve=Ee;return Ve}if(Ne.status==="done"&&Ne.vectorTile)return Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=this.loading,Ne=Fe.uid;Ke&&Ke[Ne]&&Ke[Ne].abort&&(Ke[Ne].abort.abort(),delete Ke[Ne])})}removeTile(Fe){return e._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Fe.uid]&&delete this.loaded[Fe.uid]})}}class n{constructor(){this.loaded={}}loadTile(Fe){return e._(this,void 0,void 0,function*(){let{uid:Ke,encoding:Ne,rawImageData:Ee,redFactor:Ve,greenFactor:ke,blueFactor:Te,baseShift:Le}=Fe,rt=Ee.width+2,dt=Ee.height+2,xt=e.b(Ee)?new e.R({width:rt,height:dt},yield e.bw(Ee,-1,-1,rt,dt)):Ee,It=new e.bx(Ke,xt,Ne,Ve,ke,Te,Le);return this.loaded=this.loaded||{},this.loaded[Ke]=It,It})}removeTile(Fe){let Ke=this.loaded,Ne=Fe.uid;Ke&&Ke[Ne]&&delete Ke[Ne]}}function s(yt,Fe){if(yt.length!==0){c(yt[0],Fe);for(var Ke=1;Ke=Math.abs(Te)?Ke-Le+Te:Te-Le+Ke,Ke=Le}Ke+Ne>=0!=!!Fe&&yt.reverse()}var h=e.by(function yt(Fe,Ke){var Ne,Ee=Fe&&Fe.type;if(Ee==="FeatureCollection")for(Ne=0;Ne>31}function L(yt,Fe){for(var Ke=yt.loadGeometry(),Ne=yt.type,Ee=0,Ve=0,ke=Ke.length,Te=0;Teyt},O=Math.fround||(I=new Float32Array(1),yt=>(I[0]=+yt,I[0]));var I;let N=3,U=5,W=6;class Q{constructor(Fe){this.options=Object.assign(Object.create(B),Fe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Fe){let{log:Ke,minZoom:Ne,maxZoom:Ee}=this.options;Ke&&console.time("total time");let Ve=`prepare ${Fe.length} points`;Ke&&console.time(Ve),this.points=Fe;let ke=[];for(let Le=0;Le=Ne;Le--){let rt=+Date.now();Te=this.trees[Le]=this._createTree(this._cluster(Te,Le)),Ke&&console.log("z%d: %d clusters in %dms",Le,Te.numItems,+Date.now()-rt)}return Ke&&console.timeEnd("total time"),this}getClusters(Fe,Ke){let Ne=((Fe[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,Fe[1])),Ve=Fe[2]===180?180:((Fe[2]+180)%360+360)%360-180,ke=Math.max(-90,Math.min(90,Fe[3]));if(Fe[2]-Fe[0]>=360)Ne=-180,Ve=180;else if(Ne>Ve){let xt=this.getClusters([Ne,Ee,180,ke],Ke),It=this.getClusters([-180,Ee,Ve,ke],Ke);return xt.concat(It)}let Te=this.trees[this._limitZoom(Ke)],Le=Te.range(he(Ne),G(ke),he(Ve),G(Ee)),rt=Te.data,dt=[];for(let xt of Le){let It=this.stride*xt;dt.push(rt[It+U]>1?ue(rt,It,this.clusterProps):this.points[rt[It+N]])}return dt}getChildren(Fe){let Ke=this._getOriginId(Fe),Ne=this._getOriginZoom(Fe),Ee="No cluster with the specified id.",Ve=this.trees[Ne];if(!Ve)throw new Error(Ee);let ke=Ve.data;if(Ke*this.stride>=ke.length)throw new Error(Ee);let Te=this.options.radius/(this.options.extent*Math.pow(2,Ne-1)),Le=Ve.within(ke[Ke*this.stride],ke[Ke*this.stride+1],Te),rt=[];for(let dt of Le){let xt=dt*this.stride;ke[xt+4]===Fe&&rt.push(ke[xt+U]>1?ue(ke,xt,this.clusterProps):this.points[ke[xt+N]])}if(rt.length===0)throw new Error(Ee);return rt}getLeaves(Fe,Ke,Ne){let Ee=[];return this._appendLeaves(Ee,Fe,Ke=Ke||10,Ne=Ne||0,0),Ee}getTile(Fe,Ke,Ne){let Ee=this.trees[this._limitZoom(Fe)],Ve=Math.pow(2,Fe),{extent:ke,radius:Te}=this.options,Le=Te/ke,rt=(Ne-Le)/Ve,dt=(Ne+1+Le)/Ve,xt={features:[]};return this._addTileFeatures(Ee.range((Ke-Le)/Ve,rt,(Ke+1+Le)/Ve,dt),Ee.data,Ke,Ne,Ve,xt),Ke===0&&this._addTileFeatures(Ee.range(1-Le/Ve,rt,1,dt),Ee.data,Ve,Ne,Ve,xt),Ke===Ve-1&&this._addTileFeatures(Ee.range(0,rt,Le/Ve,dt),Ee.data,-1,Ne,Ve,xt),xt.features.length?xt:null}getClusterExpansionZoom(Fe){let Ke=this._getOriginZoom(Fe)-1;for(;Ke<=this.options.maxZoom;){let Ne=this.getChildren(Fe);if(Ke++,Ne.length!==1)break;Fe=Ne[0].properties.cluster_id}return Ke}_appendLeaves(Fe,Ke,Ne,Ee,Ve){let ke=this.getChildren(Ke);for(let Te of ke){let Le=Te.properties;if(Le&&Le.cluster?Ve+Le.point_count<=Ee?Ve+=Le.point_count:Ve=this._appendLeaves(Fe,Le.cluster_id,Ne,Ee,Ve):Ve1,dt,xt,It;if(rt)dt=se(Ke,Le,this.clusterProps),xt=Ke[Le],It=Ke[Le+1];else{let Kt=this.points[Ke[Le+N]];dt=Kt.properties;let[sr,sa]=Kt.geometry.coordinates;xt=he(sr),It=G(sa)}let Bt={type:1,geometry:[[Math.round(this.options.extent*(xt*Ve-Ne)),Math.round(this.options.extent*(It*Ve-Ee))]],tags:dt},Gt;Gt=rt||this.options.generateId?Ke[Le+N]:this.points[Ke[Le+N]].id,Gt!==void 0&&(Bt.id=Gt),ke.features.push(Bt)}}_limitZoom(Fe){return Math.max(this.options.minZoom,Math.min(Math.floor(+Fe),this.options.maxZoom+1))}_cluster(Fe,Ke){let{radius:Ne,extent:Ee,reduce:Ve,minPoints:ke}=this.options,Te=Ne/(Ee*Math.pow(2,Ke)),Le=Fe.data,rt=[],dt=this.stride;for(let xt=0;xtKe&&(sr+=Le[Aa+U])}if(sr>Kt&&sr>=ke){let sa,Aa=It*Kt,La=Bt*Kt,ka=-1,Ga=((xt/dt|0)<<5)+(Ke+1)+this.points.length;for(let Ma of Gt){let Ua=Ma*dt;if(Le[Ua+2]<=Ke)continue;Le[Ua+2]=Ke;let ni=Le[Ua+U];Aa+=Le[Ua]*ni,La+=Le[Ua+1]*ni,Le[Ua+4]=Ga,Ve&&(sa||(sa=this._map(Le,xt,!0),ka=this.clusterProps.length,this.clusterProps.push(sa)),Ve(sa,this._map(Le,Ua)))}Le[xt+4]=Ga,rt.push(Aa/sr,La/sr,1/0,Ga,-1,sr),Ve&&rt.push(ka)}else{for(let sa=0;sa1)for(let sa of Gt){let Aa=sa*dt;if(!(Le[Aa+2]<=Ke)){Le[Aa+2]=Ke;for(let La=0;La>5}_getOriginZoom(Fe){return(Fe-this.points.length)%32}_map(Fe,Ke,Ne){if(Fe[Ke+U]>1){let ke=this.clusterProps[Fe[Ke+W]];return Ne?Object.assign({},ke):ke}let Ee=this.points[Fe[Ke+N]].properties,Ve=this.options.map(Ee);return Ne&&Ve===Ee?Object.assign({},Ve):Ve}}function ue(yt,Fe,Ke){return{type:"Feature",id:yt[Fe+N],properties:se(yt,Fe,Ke),geometry:{type:"Point",coordinates:[(Ne=yt[Fe],360*(Ne-.5)),$(yt[Fe+1])]}};var Ne}function se(yt,Fe,Ke){let Ne=yt[Fe+U],Ee=Ne>=1e4?`${Math.round(Ne/1e3)}k`:Ne>=1e3?Math.round(Ne/100)/10+"k":Ne,Ve=yt[Fe+W],ke=Ve===-1?{}:Object.assign({},Ke[Ve]);return Object.assign(ke,{cluster:!0,cluster_id:yt[Fe+N],point_count:Ne,point_count_abbreviated:Ee})}function he(yt){return yt/360+.5}function G(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function $(yt){let Fe=(180-360*yt)*Math.PI/180;return 360*Math.atan(Math.exp(Fe))/Math.PI-90}function J(yt,Fe,Ke,Ne){let Ee=Ne,Ve=Fe+(Ke-Fe>>1),ke,Te=Ke-Fe,Le=yt[Fe],rt=yt[Fe+1],dt=yt[Ke],xt=yt[Ke+1];for(let It=Fe+3;ItEe)ke=It,Ee=Bt;else if(Bt===Ee){let Gt=Math.abs(It-Ve);GtNe&&(ke-Fe>3&&J(yt,Fe,ke,Ne),yt[ke+2]=Ee,Ke-ke>3&&J(yt,ke,Ke,Ne))}function Z(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ee-Ke,Te=Ve-Ne;if(ke!==0||Te!==0){let Le=((yt-Ke)*ke+(Fe-Ne)*Te)/(ke*ke+Te*Te);Le>1?(Ke=Ee,Ne=Ve):Le>0&&(Ke+=ke*Le,Ne+=Te*Le)}return ke=yt-Ke,Te=Fe-Ne,ke*ke+Te*Te}function re(yt,Fe,Ke,Ne){let Ee={id:yt??null,type:Fe,geometry:Ke,tags:Ne,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Fe==="Point"||Fe==="MultiPoint"||Fe==="LineString")ne(Ee,Ke);else if(Fe==="Polygon")ne(Ee,Ke[0]);else if(Fe==="MultiLineString")for(let Ve of Ke)ne(Ee,Ve);else if(Fe==="MultiPolygon")for(let Ve of Ke)ne(Ee,Ve[0]);return Ee}function ne(yt,Fe){for(let Ke=0;Ke0&&(ke+=Ne?(Ee*dt-rt*Ve)/2:Math.sqrt(Math.pow(rt-Ee,2)+Math.pow(dt-Ve,2))),Ee=rt,Ve=dt}let Te=Fe.length-3;Fe[2]=1,J(Fe,0,Te,Ke),Fe[Te+2]=1,Fe.size=Math.abs(ke),Fe.start=0,Fe.end=Fe.size}function fe(yt,Fe,Ke,Ne){for(let Ee=0;Ee1?1:Ke}function Be(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){if(Ne/=Fe,Ve>=(Ke/=Fe)&&ke=Ne)return null;let Le=[];for(let rt of yt){let dt=rt.geometry,xt=rt.type,It=Ee===0?rt.minX:rt.minY,Bt=Ee===0?rt.maxX:rt.maxY;if(It>=Ke&&Bt=Ne)continue;let Gt=[];if(xt==="Point"||xt==="MultiPoint")Ie(dt,Gt,Ke,Ne,Ee);else if(xt==="LineString")Ze(dt,Gt,Ke,Ne,Ee,!1,Te.lineMetrics);else if(xt==="MultiLineString")it(dt,Gt,Ke,Ne,Ee,!1);else if(xt==="Polygon")it(dt,Gt,Ke,Ne,Ee,!0);else if(xt==="MultiPolygon")for(let Kt of dt){let sr=[];it(Kt,sr,Ke,Ne,Ee,!0),sr.length&&Gt.push(sr)}if(Gt.length){if(Te.lineMetrics&&xt==="LineString"){for(let Kt of Gt)Le.push(re(rt.id,xt,Kt,rt.tags));continue}xt!=="LineString"&&xt!=="MultiLineString"||(Gt.length===1?(xt="LineString",Gt=Gt[0]):xt="MultiLineString"),xt!=="Point"&&xt!=="MultiPoint"||(xt=Gt.length===3?"Point":"MultiPoint"),Le.push(re(rt.id,xt,Gt,rt.tags))}}return Le.length?Le:null}function Ie(yt,Fe,Ke,Ne,Ee){for(let Ve=0;Ve=Ke&&ke<=Ne&&et(Fe,yt[Ve],yt[Ve+1],yt[Ve+2])}}function Ze(yt,Fe,Ke,Ne,Ee,Ve,ke){let Te=at(yt),Le=Ee===0?lt:Me,rt,dt,xt=yt.start;for(let sr=0;srKe&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ke&&(Te.start=xt+rt*dt)):Ma>Ne?Ua=Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ni=!0),Ua>Ne&&Ma<=Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ni=!0),!Ve&&ni&&(ke&&(Te.end=xt+rt*dt),Fe.push(Te),Te=at(yt)),ke&&(xt+=rt)}let It=yt.length-3,Bt=yt[It],Gt=yt[It+1],Kt=Ee===0?Bt:Gt;Kt>=Ke&&Kt<=Ne&&et(Te,Bt,Gt,yt[It+2]),It=Te.length-3,Ve&&It>=3&&(Te[It]!==Te[0]||Te[It+1]!==Te[1])&&et(Te,Te[0],Te[1],Te[2]),Te.length&&Fe.push(Te)}function at(yt){let Fe=[];return Fe.size=yt.size,Fe.start=yt.start,Fe.end=yt.end,Fe}function it(yt,Fe,Ke,Ne,Ee,Ve){for(let ke of yt)Ze(ke,Fe,Ke,Ne,Ee,Ve,!1)}function et(yt,Fe,Ke,Ne){yt.push(Fe,Ke,Ne)}function lt(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Fe)/(Ne-Fe);return et(yt,Ve,Ke+(Ee-Ke)*ke,1),ke}function Me(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Ke)/(Ee-Ke);return et(yt,Fe+(Ne-Fe)*ke,Ve,1),ke}function ge(yt,Fe){let Ke=[];for(let Ne=0;Ne0&&Fe.size<(Ee?ke:Ne))return void(Ke.numPoints+=Fe.length/3);let Te=[];for(let Le=0;Leke)&&(Ke.numSimplified++,Te.push(Fe[Le],Fe[Le+1])),Ke.numPoints++;Ee&&function(Le,rt){let dt=0;for(let xt=0,It=Le.length,Bt=It-2;xt0===rt)for(let xt=0,It=Le.length;xt24)throw new Error("maxZoom should be in the 0-24 range");if(Ke.promoteId&&Ke.generateId)throw new Error("promoteId and generateId cannot be used together.");let Ee=function(Ve,ke){let Te=[];if(Ve.type==="FeatureCollection")for(let Le=0;Le1&&console.time("creation"),Bt=this.tiles[It]=nt(Fe,Ke,Ne,Ee,rt),this.tileCoords.push({z:Ke,x:Ne,y:Ee}),dt)){dt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ke,Ne,Ee,Bt.numFeatures,Bt.numPoints,Bt.numSimplified),console.timeEnd("creation"));let ni=`z${Ke}`;this.stats[ni]=(this.stats[ni]||0)+1,this.total++}if(Bt.source=Fe,Ve==null){if(Ke===rt.indexMaxZoom||Bt.numPoints<=rt.indexMaxPoints)continue}else{if(Ke===rt.maxZoom||Ke===Ve)continue;if(Ve!=null){let ni=Ve-Ke;if(Ne!==ke>>ni||Ee!==Te>>ni)continue}}if(Bt.source=null,Fe.length===0)continue;dt>1&&console.time("clipping");let Gt=.5*rt.buffer/rt.extent,Kt=.5-Gt,sr=.5+Gt,sa=1+Gt,Aa=null,La=null,ka=null,Ga=null,Ma=Be(Fe,xt,Ne-Gt,Ne+sr,0,Bt.minX,Bt.maxX,rt),Ua=Be(Fe,xt,Ne+Kt,Ne+sa,0,Bt.minX,Bt.maxX,rt);Fe=null,Ma&&(Aa=Be(Ma,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),La=Be(Ma,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ma=null),Ua&&(ka=Be(Ua,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),Ga=Be(Ua,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ua=null),dt>1&&console.timeEnd("clipping"),Le.push(Aa||[],Ke+1,2*Ne,2*Ee),Le.push(La||[],Ke+1,2*Ne,2*Ee+1),Le.push(ka||[],Ke+1,2*Ne+1,2*Ee),Le.push(Ga||[],Ke+1,2*Ne+1,2*Ee+1)}}getTile(Fe,Ke,Ne){Fe=+Fe,Ke=+Ke,Ne=+Ne;let Ee=this.options,{extent:Ve,debug:ke}=Ee;if(Fe<0||Fe>24)return null;let Te=1<1&&console.log("drilling down to z%d-%d-%d",Fe,Ke,Ne);let rt,dt=Fe,xt=Ke,It=Ne;for(;!rt&&dt>0;)dt--,xt>>=1,It>>=1,rt=this.tiles[jt(dt,xt,It)];return rt&&rt.source?(ke>1&&(console.log("found parent tile z%d-%d-%d",dt,xt,It),console.time("drilling down")),this.splitTile(rt.source,dt,xt,It,Fe,Ke,Ne),ke>1&&console.timeEnd("drilling down"),this.tiles[Le]?ze(this.tiles[Le],Ve):null):null}}function jt(yt,Fe,Ke){return 32*((1<{xt.properties=Bt;let Gt={};for(let Kt of It)Gt[Kt]=Le[Kt].evaluate(dt,xt);return Gt},ke.reduce=(Bt,Gt)=>{xt.properties=Gt;for(let Kt of It)dt.accumulated=Bt[Kt],Bt[Kt]=rt[Kt].evaluate(dt,xt)},ke}(Fe)).load((yield this._pendingData).features):(Ee=yield this._pendingData,new Ot(Ee,Fe.geojsonVtOptions)),this.loaded={};let Ve={};if(Ne){let ke=Ne.finish();ke&&(Ve.resourceTiming={},Ve.resourceTiming[Fe.source]=JSON.parse(JSON.stringify(ke)))}return Ve}catch(Ve){if(delete this._pendingRequest,e.bB(Ve))return{abandoned:!0};throw Ve}var Ee})}getData(){return e._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Fe){let Ke=this.loaded;return Ke&&Ke[Fe.uid]?super.reloadTile(Fe):this.loadTile(Fe)}loadAndProcessGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield this.loadGeoJSON(Fe,Ke);if(delete this._pendingRequest,typeof Ne!="object")throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(h(Ne,!0),Fe.filter){let Ee=e.bC(Fe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Ee.result==="error")throw new Error(Ee.value.map(ke=>`${ke.key}: ${ke.message}`).join(", "));Ne={type:"FeatureCollection",features:Ne.features.filter(ke=>Ee.value.evaluate({zoom:0},ke))}}return Ne})}loadGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let{promoteId:Ne}=Fe;if(Fe.request){let Ee=yield e.h(Fe.request,Ke);return this._dataUpdateable=ar(Ee.data,Ne)?Cr(Ee.data,Ne):void 0,Ee.data}if(typeof Fe.data=="string")try{let Ee=JSON.parse(Fe.data);return this._dataUpdateable=ar(Ee,Ne)?Cr(Ee,Ne):void 0,Ee}catch{throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`)}if(!Fe.dataDiff)throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Fe.source}`);return function(Ee,Ve,ke){var Te,Le,rt,dt;if(Ve.removeAll&&Ee.clear(),Ve.remove)for(let xt of Ve.remove)Ee.delete(xt);if(Ve.add)for(let xt of Ve.add){let It=ur(xt,ke);It!=null&&Ee.set(It,xt)}if(Ve.update)for(let xt of Ve.update){let It=Ee.get(xt.id);if(It==null)continue;let Bt=!xt.removeAllProperties&&(((Te=xt.removeProperties)===null||Te===void 0?void 0:Te.length)>0||((Le=xt.addOrUpdateProperties)===null||Le===void 0?void 0:Le.length)>0);if((xt.newGeometry||xt.removeAllProperties||Bt)&&(It=Object.assign({},It),Ee.set(xt.id,It),Bt&&(It.properties=Object.assign({},It.properties))),xt.newGeometry&&(It.geometry=xt.newGeometry),xt.removeAllProperties)It.properties={};else if(((rt=xt.removeProperties)===null||rt===void 0?void 0:rt.length)>0)for(let Gt of xt.removeProperties)Object.prototype.hasOwnProperty.call(It.properties,Gt)&&delete It.properties[Gt];if(((dt=xt.addOrUpdateProperties)===null||dt===void 0?void 0:dt.length)>0)for(let{key:Gt,value:Kt}of xt.addOrUpdateProperties)It.properties[Gt]=Kt}}(this._dataUpdateable,Fe.dataDiff,Ne),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Fe){return e._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Fe){return this._geoJSONIndex.getClusterExpansionZoom(Fe.clusterId)}getClusterChildren(Fe){return this._geoJSONIndex.getChildren(Fe.clusterId)}getClusterLeaves(Fe){return this._geoJSONIndex.getLeaves(Fe.clusterId,Fe.limit,Fe.offset)}}class _r{constructor(Fe){this.self=Fe,this.actor=new e.F(Fe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ke,Ne)=>{if(this.externalWorkerSourceTypes[Ke])throw new Error(`Worker source with name "${Ke}" already registered.`);this.externalWorkerSourceTypes[Ke]=Ne},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=Ke=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(Ke)},this.actor.registerMessageHandler("LDT",(Ke,Ne)=>this._getDEMWorkerSource(Ke,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RDT",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ke,Ne.source).removeTile(Ne)})),this.actor.registerMessageHandler("GCEZ",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterExpansionZoom(Ne)})),this.actor.registerMessageHandler("GCC",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterChildren(Ne)})),this.actor.registerMessageHandler("GCL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterLeaves(Ne)})),this.actor.registerMessageHandler("LD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadData(Ne)),this.actor.registerMessageHandler("GD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).getData()),this.actor.registerMessageHandler("LT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).reloadTile(Ne)),this.actor.registerMessageHandler("AT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).abortTile(Ne)),this.actor.registerMessageHandler("RMT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).removeTile(Ne)),this.actor.registerMessageHandler("RS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){if(!this.workerSources[Ke]||!this.workerSources[Ke][Ne.type]||!this.workerSources[Ke][Ne.type][Ne.source])return;let Ee=this.workerSources[Ke][Ne.type][Ne.source];delete this.workerSources[Ke][Ne.type][Ne.source],Ee.removeSource!==void 0&&Ee.removeSource(Ne)})),this.actor.registerMessageHandler("RM",Ke=>e._(this,void 0,void 0,function*(){delete this.layerIndexes[Ke],delete this.availableImages[Ke],delete this.workerSources[Ke],delete this.demWorkerSources[Ke]})),this.actor.registerMessageHandler("SR",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.referrer=Ne})),this.actor.registerMessageHandler("SRPS",(Ke,Ne)=>this._syncRTLPluginState(Ke,Ne)),this.actor.registerMessageHandler("IS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.self.importScripts(Ne)})),this.actor.registerMessageHandler("SI",(Ke,Ne)=>this._setImages(Ke,Ne)),this.actor.registerMessageHandler("UL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).update(Ne.layers,Ne.removedIds)})),this.actor.registerMessageHandler("SL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).replace(Ne)}))}_setImages(Fe,Ke){return e._(this,void 0,void 0,function*(){this.availableImages[Fe]=Ke;for(let Ne in this.workerSources[Fe]){let Ee=this.workerSources[Fe][Ne];for(let Ve in Ee)Ee[Ve].availableImages=Ke}})}_syncRTLPluginState(Fe,Ke){return e._(this,void 0,void 0,function*(){if(e.bD.isParsed())return e.bD.getState();if(Ke.pluginStatus!=="loading")return e.bD.setState(Ke),Ke;let Ne=Ke.pluginURL;if(this.self.importScripts(Ne),e.bD.isParsed()){let Ee={pluginStatus:"loaded",pluginURL:Ne};return e.bD.setState(Ee),Ee}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ne}`)})}_getAvailableImages(Fe){let Ke=this.availableImages[Fe];return Ke||(Ke=[]),Ke}_getLayerIndex(Fe){let Ke=this.layerIndexes[Fe];return Ke||(Ke=this.layerIndexes[Fe]=new t),Ke}_getWorkerSource(Fe,Ke,Ne){if(this.workerSources[Fe]||(this.workerSources[Fe]={}),this.workerSources[Fe][Ke]||(this.workerSources[Fe][Ke]={}),!this.workerSources[Fe][Ke][Ne]){let Ee={sendAsync:(Ve,ke)=>(Ve.targetMapId=Fe,this.actor.sendAsync(Ve,ke))};switch(Ke){case"vector":this.workerSources[Fe][Ke][Ne]=new i(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;case"geojson":this.workerSources[Fe][Ke][Ne]=new vr(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;default:this.workerSources[Fe][Ke][Ne]=new this.externalWorkerSourceTypes[Ke](Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe))}}return this.workerSources[Fe][Ke][Ne]}_getDEMWorkerSource(Fe,Ke){return this.demWorkerSources[Fe]||(this.demWorkerSources[Fe]={}),this.demWorkerSources[Fe][Ke]||(this.demWorkerSources[Fe][Ke]=new n),this.demWorkerSources[Fe][Ke]}}return e.i(self)&&(self.worker=new _r(self)),_r}),A("index",["exports","./shared"],function(e,t){"use strict";var r="4.7.1";let o,a,i={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:Oe=>new Promise((R,ae)=>{let we=requestAnimationFrame(R);Oe.signal.addEventListener("abort",()=>{cancelAnimationFrame(we),ae(t.c())})}),getImageData(Oe,R=0){return this.getImageCanvasContext(Oe).getImageData(-R,-R,Oe.width+2*R,Oe.height+2*R)},getImageCanvasContext(Oe){let R=window.document.createElement("canvas"),ae=R.getContext("2d",{willReadFrequently:!0});if(!ae)throw new Error("failed to create canvas 2d context");return R.width=Oe.width,R.height=Oe.height,ae.drawImage(Oe,0,0,Oe.width,Oe.height),ae},resolveURL:Oe=>(o||(o=document.createElement("a")),o.href=Oe,o.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(a==null&&(a=matchMedia("(prefers-reduced-motion: reduce)")),a.matches)}};class n{static testProp(R){if(!n.docStyle)return R[0];for(let ae=0;ae{window.removeEventListener("click",n.suppressClickInternal,!0)},0)}static getScale(R){let ae=R.getBoundingClientRect();return{x:ae.width/R.offsetWidth||1,y:ae.height/R.offsetHeight||1,boundingClientRect:ae}}static getPoint(R,ae,we){let Se=ae.boundingClientRect;return new t.P((we.clientX-Se.left)/ae.x-R.clientLeft,(we.clientY-Se.top)/ae.y-R.clientTop)}static mousePos(R,ae){let we=n.getScale(R);return n.getPoint(R,we,ae)}static touchPos(R,ae){let we=[],Se=n.getScale(R);for(let De=0;De{c&&T(c),c=null,p=!0},h.onerror=()=>{v=!0,c=null},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(Oe){let R,ae,we,Se;Oe.resetRequestQueue=()=>{R=[],ae=0,we=0,Se={}},Oe.addThrottleControl=Dt=>{let Yt=we++;return Se[Yt]=Dt,Yt},Oe.removeThrottleControl=Dt=>{delete Se[Dt],ft()},Oe.getImage=(Dt,Yt,cr=!0)=>new Promise((hr,jr)=>{s.supported&&(Dt.headers||(Dt.headers={}),Dt.headers.accept="image/webp,*/*"),t.e(Dt,{type:"image"}),R.push({abortController:Yt,requestParameters:Dt,supportImageRefresh:cr,state:"queued",onError:ea=>{jr(ea)},onSuccess:ea=>{hr(ea)}}),ft()});let De=Dt=>t._(this,void 0,void 0,function*(){Dt.state="running";let{requestParameters:Yt,supportImageRefresh:cr,onError:hr,onSuccess:jr,abortController:ea}=Dt,qe=cr===!1&&!t.i(self)&&!t.g(Yt.url)&&(!Yt.headers||Object.keys(Yt.headers).reduce((ht,At)=>ht&&At==="accept",!0));ae++;let Je=qe?bt(Yt,ea):t.m(Yt,ea);try{let ht=yield Je;delete Dt.abortController,Dt.state="completed",ht.data instanceof HTMLImageElement||t.b(ht.data)?jr(ht):ht.data&&jr({data:yield(ot=ht.data,typeof createImageBitmap=="function"?t.d(ot):t.f(ot)),cacheControl:ht.cacheControl,expires:ht.expires})}catch(ht){delete Dt.abortController,hr(ht)}finally{ae--,ft()}var ot}),ft=()=>{let Dt=(()=>{for(let Yt of Object.keys(Se))if(Se[Yt]())return!0;return!1})()?t.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:t.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Yt=ae;Yt0;Yt++){let cr=R.shift();cr.abortController.signal.aborted?Yt--:De(cr)}},bt=(Dt,Yt)=>new Promise((cr,hr)=>{let jr=new Image,ea=Dt.url,qe=Dt.credentials;qe&&qe==="include"?jr.crossOrigin="use-credentials":(qe&&qe==="same-origin"||!t.s(ea))&&(jr.crossOrigin="anonymous"),Yt.signal.addEventListener("abort",()=>{jr.src="",hr(t.c())}),jr.fetchPriority="high",jr.onload=()=>{jr.onerror=jr.onload=null,cr({data:jr})},jr.onerror=()=>{jr.onerror=jr.onload=null,Yt.signal.aborted||hr(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},jr.src=ea})}(l||(l={})),l.resetRequestQueue();class _{constructor(R){this._transformRequestFn=R}transformRequest(R,ae){return this._transformRequestFn&&this._transformRequestFn(R,ae)||{url:R}}setTransformRequest(R){this._transformRequestFn=R}}function w(Oe){var R=new t.A(3);return R[0]=Oe[0],R[1]=Oe[1],R[2]=Oe[2],R}var S,E=function(Oe,R,ae){return Oe[0]=R[0]-ae[0],Oe[1]=R[1]-ae[1],Oe[2]=R[2]-ae[2],Oe};S=new t.A(3),t.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var m=function(Oe){var R=Oe[0],ae=Oe[1];return R*R+ae*ae};function b(Oe){let R=[];if(typeof Oe=="string")R.push({id:"default",url:Oe});else if(Oe&&Oe.length>0){let ae=[];for(let{id:we,url:Se}of Oe){let De=`${we}${Se}`;ae.indexOf(De)===-1&&(ae.push(De),R.push({id:we,url:Se}))}}return R}function d(Oe,R,ae){let we=Oe.split("?");return we[0]+=`${R}${ae}`,we.join("?")}(function(){var Oe=new t.A(2);t.A!=Float32Array&&(Oe[0]=0,Oe[1]=0)})();class u{constructor(R,ae,we,Se){this.context=R,this.format=we,this.texture=R.gl.createTexture(),this.update(ae,Se)}update(R,ae,we){let{width:Se,height:De}=R,ft=!(this.size&&this.size[0]===Se&&this.size[1]===De||we),{context:bt}=this,{gl:Dt}=bt;if(this.useMipmap=!!(ae&&ae.useMipmap),Dt.bindTexture(Dt.TEXTURE_2D,this.texture),bt.pixelStoreUnpackFlipY.set(!1),bt.pixelStoreUnpack.set(1),bt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Dt.RGBA&&(!ae||ae.premultiply!==!1)),ft)this.size=[Se,De],R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,this.format,Dt.UNSIGNED_BYTE,R):Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,Se,De,0,this.format,Dt.UNSIGNED_BYTE,R.data);else{let{x:Yt,y:cr}=we||{x:0,y:0};R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Dt.RGBA,Dt.UNSIGNED_BYTE,R):Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Se,De,Dt.RGBA,Dt.UNSIGNED_BYTE,R.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Dt.generateMipmap(Dt.TEXTURE_2D)}bind(R,ae,we){let{context:Se}=this,{gl:De}=Se;De.bindTexture(De.TEXTURE_2D,this.texture),we!==De.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(we=De.LINEAR),R!==this.filter&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,R),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,we||R),this.filter=R),ae!==this.wrap&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,ae),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,ae),this.wrap=ae)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:R}=this.context;R.deleteTexture(this.texture),this.texture=null}}function y(Oe){let{userImage:R}=Oe;return!!(R&&R.render&&R.render())&&(Oe.data.replace(new Uint8Array(R.data.buffer)),!0)}class f extends t.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(R){if(this.loaded!==R&&(this.loaded=R,R)){for(let{ids:ae,promiseResolve:we}of this.requestors)we(this._getImagesForIds(ae));this.requestors=[]}}getImage(R){let ae=this.images[R];if(ae&&!ae.data&&ae.spriteData){let we=ae.spriteData;ae.data=new t.R({width:we.width,height:we.height},we.context.getImageData(we.x,we.y,we.width,we.height).data),ae.spriteData=null}return ae}addImage(R,ae){if(this.images[R])throw new Error(`Image id ${R} already exist, use updateImage instead`);this._validate(R,ae)&&(this.images[R]=ae)}_validate(R,ae){let we=!0,Se=ae.data||ae.spriteData;return this._validateStretch(ae.stretchX,Se&&Se.width)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchX" value`))),we=!1),this._validateStretch(ae.stretchY,Se&&Se.height)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchY" value`))),we=!1),this._validateContent(ae.content,ae)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "content" value`))),we=!1),we}_validateStretch(R,ae){if(!R)return!0;let we=0;for(let Se of R){if(Se[0]{let Se=!0;if(!this.isLoaded())for(let De of R)this.images[De]||(Se=!1);this.isLoaded()||Se?ae(this._getImagesForIds(R)):this.requestors.push({ids:R,promiseResolve:ae})})}_getImagesForIds(R){let ae={};for(let we of R){let Se=this.getImage(we);Se||(this.fire(new t.k("styleimagemissing",{id:we})),Se=this.getImage(we)),Se?ae[we]={data:Se.data.clone(),pixelRatio:Se.pixelRatio,sdf:Se.sdf,version:Se.version,stretchX:Se.stretchX,stretchY:Se.stretchY,content:Se.content,textFitWidth:Se.textFitWidth,textFitHeight:Se.textFitHeight,hasRenderCallback:!!(Se.userImage&&Se.userImage.render)}:t.w(`Image "${we}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return ae}getPixelSize(){let{width:R,height:ae}=this.atlasImage;return{width:R,height:ae}}getPattern(R){let ae=this.patterns[R],we=this.getImage(R);if(!we)return null;if(ae&&ae.position.version===we.version)return ae.position;if(ae)ae.position.version=we.version;else{let Se={w:we.data.width+2,h:we.data.height+2,x:0,y:0},De=new t.I(Se,we);this.patterns[R]={bin:Se,position:De}}return this._updatePatternAtlas(),this.patterns[R].position}bind(R){let ae=R.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new u(R,this.atlasImage,ae.RGBA),this.atlasTexture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE)}_updatePatternAtlas(){let R=[];for(let De in this.patterns)R.push(this.patterns[De].bin);let{w:ae,h:we}=t.p(R),Se=this.atlasImage;Se.resize({width:ae||1,height:we||1});for(let De in this.patterns){let{bin:ft}=this.patterns[De],bt=ft.x+1,Dt=ft.y+1,Yt=this.getImage(De).data,cr=Yt.width,hr=Yt.height;t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt},{width:cr,height:hr}),t.R.copy(Yt,Se,{x:0,y:hr-1},{x:bt,y:Dt-1},{width:cr,height:1}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt+hr},{width:cr,height:1}),t.R.copy(Yt,Se,{x:cr-1,y:0},{x:bt-1,y:Dt},{width:1,height:hr}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt+cr,y:Dt},{width:1,height:hr})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(R){for(let ae of R){if(this.callbackDispatchedThisFrame[ae])continue;this.callbackDispatchedThisFrame[ae]=!0;let we=this.getImage(ae);we||t.w(`Image with ID: "${ae}" was not found`),y(we)&&this.updateImage(ae,we)}}}let P=1e20;function L(Oe,R,ae,we,Se,De,ft,bt,Dt){for(let Yt=R;Yt-1);Dt++,De[Dt]=bt,ft[Dt]=Yt,ft[Dt+1]=P}for(let bt=0,Dt=0;bt65535)throw new Error("glyphs > 65535 not supported");if(we.ranges[De])return{stack:R,id:ae,glyph:Se};if(!this.url)throw new Error("glyphsUrl is not set");if(!we.requests[De]){let bt=F.loadGlyphRange(R,De,this.url,this.requestManager);we.requests[De]=bt}let ft=yield we.requests[De];for(let bt in ft)this._doesCharSupportLocalGlyph(+bt)||(we.glyphs[+bt]=ft[+bt]);return we.ranges[De]=!0,{stack:R,id:ae,glyph:ft[ae]||null}})}_doesCharSupportLocalGlyph(R){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(R))}_tinySDF(R,ae,we){let Se=this.localIdeographFontFamily;if(!Se||!this._doesCharSupportLocalGlyph(we))return;let De=R.tinySDF;if(!De){let bt="400";/bold/i.test(ae)?bt="900":/medium/i.test(ae)?bt="500":/light/i.test(ae)&&(bt="200"),De=R.tinySDF=new F.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:Se,fontWeight:bt})}let ft=De.draw(String.fromCharCode(we));return{id:we,bitmap:new t.o({width:ft.width||60,height:ft.height||60},ft.data),metrics:{width:ft.glyphWidth/2||24,height:ft.glyphHeight/2||24,left:ft.glyphLeft/2+.5||0,top:ft.glyphTop/2-27.5||-8,advance:ft.glyphAdvance/2||24,isDoubleResolution:!0}}}}F.loadGlyphRange=function(Oe,R,ae,we){return t._(this,void 0,void 0,function*(){let Se=256*R,De=Se+255,ft=we.transformRequest(ae.replace("{fontstack}",Oe).replace("{range}",`${Se}-${De}`),"Glyphs"),bt=yield t.l(ft,new AbortController);if(!bt||!bt.data)throw new Error(`Could not load glyph range. range: ${R}, ${Se}-${De}`);let Dt={};for(let Yt of t.n(bt.data))Dt[Yt.id]=Yt;return Dt})},F.TinySDF=class{constructor({fontSize:Oe=24,buffer:R=3,radius:ae=8,cutoff:we=.25,fontFamily:Se="sans-serif",fontWeight:De="normal",fontStyle:ft="normal"}={}){this.buffer=R,this.cutoff=we,this.radius=ae;let bt=this.size=Oe+4*R,Dt=this._createCanvas(bt),Yt=this.ctx=Dt.getContext("2d",{willReadFrequently:!0});Yt.font=`${ft} ${De} ${Oe}px ${Se}`,Yt.textBaseline="alphabetic",Yt.textAlign="left",Yt.fillStyle="black",this.gridOuter=new Float64Array(bt*bt),this.gridInner=new Float64Array(bt*bt),this.f=new Float64Array(bt),this.z=new Float64Array(bt+1),this.v=new Uint16Array(bt)}_createCanvas(Oe){let R=document.createElement("canvas");return R.width=R.height=Oe,R}draw(Oe){let{width:R,actualBoundingBoxAscent:ae,actualBoundingBoxDescent:we,actualBoundingBoxLeft:Se,actualBoundingBoxRight:De}=this.ctx.measureText(Oe),ft=Math.ceil(ae),bt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(De-Se))),Dt=Math.min(this.size-this.buffer,ft+Math.ceil(we)),Yt=bt+2*this.buffer,cr=Dt+2*this.buffer,hr=Math.max(Yt*cr,0),jr=new Uint8ClampedArray(hr),ea={data:jr,width:Yt,height:cr,glyphWidth:bt,glyphHeight:Dt,glyphTop:ft,glyphLeft:0,glyphAdvance:R};if(bt===0||Dt===0)return ea;let{ctx:qe,buffer:Je,gridInner:ot,gridOuter:ht}=this;qe.clearRect(Je,Je,bt,Dt),qe.fillText(Oe,Je,Je+ft);let At=qe.getImageData(Je,Je,bt,Dt);ht.fill(P,0,hr),ot.fill(0,0,hr);for(let _t=0;_t0?pr*pr:0,ot[nr]=pr<0?pr*pr:0}}L(ht,0,0,Yt,cr,Yt,this.f,this.v,this.z),L(ot,Je,Je,bt,Dt,Yt,this.f,this.v,this.z);for(let _t=0;_t1&&(Dt=R[++bt]);let cr=Math.abs(Yt-Dt.left),hr=Math.abs(Yt-Dt.right),jr=Math.min(cr,hr),ea,qe=De/we*(Se+1);if(Dt.isDash){let Je=Se-Math.abs(qe);ea=Math.sqrt(jr*jr+Je*Je)}else ea=Se-Math.sqrt(jr*jr+qe*qe);this.data[ft+Yt]=Math.max(0,Math.min(255,ea+128))}}}addRegularDash(R){for(let bt=R.length-1;bt>=0;--bt){let Dt=R[bt],Yt=R[bt+1];Dt.zeroLength?R.splice(bt,1):Yt&&Yt.isDash===Dt.isDash&&(Yt.left=Dt.left,R.splice(bt,1))}let ae=R[0],we=R[R.length-1];ae.isDash===we.isDash&&(ae.left=we.left-this.width,we.right=ae.right+this.width);let Se=this.width*this.nextRow,De=0,ft=R[De];for(let bt=0;bt1&&(ft=R[++De]);let Dt=Math.abs(bt-ft.left),Yt=Math.abs(bt-ft.right),cr=Math.min(Dt,Yt);this.data[Se+bt]=Math.max(0,Math.min(255,(ft.isDash?cr:-cr)+128))}}addDash(R,ae){let we=ae?7:0,Se=2*we+1;if(this.nextRow+Se>this.height)return t.w("LineAtlas out of space"),null;let De=0;for(let bt=0;bt{ae.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[Q]}numActive(){return Object.keys(this.active).length}}let se=Math.floor(i.hardwareConcurrency/2),he,G;function $(){return he||(he=new ue),he}ue.workerCount=t.C(globalThis)?Math.max(Math.min(se,3),1):1;class J{constructor(R,ae){this.workerPool=R,this.actors=[],this.currentActor=0,this.id=ae;let we=this.workerPool.acquire(ae);for(let Se=0;Se{ae.remove()}),this.actors=[],R&&this.workerPool.release(this.id)}registerMessageHandler(R,ae){for(let we of this.actors)we.registerMessageHandler(R,ae)}}function Z(){return G||(G=new J($(),t.G),G.registerMessageHandler("GR",(Oe,R,ae)=>t.m(R,ae))),G}function re(Oe,R){let ae=t.H();return t.J(ae,ae,[1,1,0]),t.K(ae,ae,[.5*Oe.width,.5*Oe.height,1]),t.L(ae,ae,Oe.calculatePosMatrix(R.toUnwrapped()))}function ne(Oe,R,ae,we,Se,De){let ft=function(hr,jr,ea){if(hr)for(let qe of hr){let Je=jr[qe];if(Je&&Je.source===ea&&Je.type==="fill-extrusion")return!0}else for(let qe in jr){let Je=jr[qe];if(Je.source===ea&&Je.type==="fill-extrusion")return!0}return!1}(Se&&Se.layers,R,Oe.id),bt=De.maxPitchScaleFactor(),Dt=Oe.tilesIn(we,bt,ft);Dt.sort(j);let Yt=[];for(let hr of Dt)Yt.push({wrappedTileID:hr.tileID.wrapped().key,queryResults:hr.tile.queryRenderedFeatures(R,ae,Oe._state,hr.queryGeometry,hr.cameraQueryGeometry,hr.scale,Se,De,bt,re(Oe.transform,hr.tileID))});let cr=function(hr){let jr={},ea={};for(let qe of hr){let Je=qe.queryResults,ot=qe.wrappedTileID,ht=ea[ot]=ea[ot]||{};for(let At in Je){let _t=Je[At],Pt=ht[At]=ht[At]||{},er=jr[At]=jr[At]||[];for(let nr of _t)Pt[nr.featureIndex]||(Pt[nr.featureIndex]=!0,er.push(nr))}}return jr}(Yt);for(let hr in cr)cr[hr].forEach(jr=>{let ea=jr.feature,qe=Oe.getFeatureState(ea.layer["source-layer"],ea.id);ea.source=ea.layer.source,ea.layer["source-layer"]&&(ea.sourceLayer=ea.layer["source-layer"]),ea.state=qe});return cr}function j(Oe,R){let ae=Oe.tileID,we=R.tileID;return ae.overscaledZ-we.overscaledZ||ae.canonical.y-we.canonical.y||ae.wrap-we.wrap||ae.canonical.x-we.canonical.x}function ee(Oe,R,ae){return t._(this,void 0,void 0,function*(){let we=Oe;if(Oe.url?we=(yield t.h(R.transformRequest(Oe.url,"Source"),ae)).data:yield i.frameAsync(ae),!we)return null;let Se=t.M(t.e(we,Oe),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in we&&we.vector_layers&&(Se.vectorLayerIds=we.vector_layers.map(De=>De.id)),Se})}class ie{constructor(R,ae){R&&(ae?this.setSouthWest(R).setNorthEast(ae):Array.isArray(R)&&(R.length===4?this.setSouthWest([R[0],R[1]]).setNorthEast([R[2],R[3]]):this.setSouthWest(R[0]).setNorthEast(R[1])))}setNorthEast(R){return this._ne=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}setSouthWest(R){return this._sw=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}extend(R){let ae=this._sw,we=this._ne,Se,De;if(R instanceof t.N)Se=R,De=R;else{if(!(R instanceof ie))return Array.isArray(R)?R.length===4||R.every(Array.isArray)?this.extend(ie.convert(R)):this.extend(t.N.convert(R)):R&&("lng"in R||"lon"in R)&&"lat"in R?this.extend(t.N.convert(R)):this;if(Se=R._sw,De=R._ne,!Se||!De)return this}return ae||we?(ae.lng=Math.min(Se.lng,ae.lng),ae.lat=Math.min(Se.lat,ae.lat),we.lng=Math.max(De.lng,we.lng),we.lat=Math.max(De.lat,we.lat)):(this._sw=new t.N(Se.lng,Se.lat),this._ne=new t.N(De.lng,De.lat)),this}getCenter(){return new t.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new t.N(this.getWest(),this.getNorth())}getSouthEast(){return new t.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(R){let{lng:ae,lat:we}=t.N.convert(R),Se=this._sw.lng<=ae&&ae<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Se=this._sw.lng>=ae&&ae>=this._ne.lng),this._sw.lat<=we&&we<=this._ne.lat&&Se}static convert(R){return R instanceof ie?R:R&&new ie(R)}static fromLngLat(R,ae=0){let we=360*ae/40075017,Se=we/Math.cos(Math.PI/180*R.lat);return new ie(new t.N(R.lng-Se,R.lat-we),new t.N(R.lng+Se,R.lat+we))}adjustAntiMeridian(){let R=new t.N(this._sw.lng,this._sw.lat),ae=new t.N(this._ne.lng,this._ne.lat);return new ie(R,R.lng>ae.lng?new t.N(ae.lng+360,ae.lat):ae)}}class fe{constructor(R,ae,we){this.bounds=ie.convert(this.validateBounds(R)),this.minzoom=ae||0,this.maxzoom=we||24}validateBounds(R){return Array.isArray(R)&&R.length===4?[Math.max(-180,R[0]),Math.max(-90,R[1]),Math.min(180,R[2]),Math.min(90,R[3])]:[-180,-90,180,90]}contains(R){let ae=Math.pow(2,R.z),we=Math.floor(t.O(this.bounds.getWest())*ae),Se=Math.floor(t.Q(this.bounds.getNorth())*ae),De=Math.ceil(t.O(this.bounds.getEast())*ae),ft=Math.ceil(t.Q(this.bounds.getSouth())*ae);return R.x>=we&&R.x=Se&&R.y{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return t.e({},this._options)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we={request:this.map._requestManager.transformRequest(ae,"Tile"),uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,tileSize:this.tileSize*R.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};we.request.collectResourceTiming=this._collectResourceTiming;let Se="RT";if(R.actor&&R.state!=="expired"){if(R.state==="loading")return new Promise((De,ft)=>{R.reloadPromise={resolve:De,reject:ft}})}else R.actor=this.dispatcher.getActor(),Se="LT";R.abortController=new AbortController;try{let De=yield R.actor.sendAsync({type:Se,data:we},R.abortController);if(delete R.abortController,R.aborted)return;this._afterTileLoadWorkerResponse(R,De)}catch(De){if(delete R.abortController,R.aborted)return;if(De&&De.status!==404)throw De;this._afterTileLoadWorkerResponse(R,null)}})}_afterTileLoadWorkerResponse(R,ae){if(ae&&ae.resourceTiming&&(R.resourceTiming=ae.resourceTiming),ae&&this.map._refreshExpiredTiles&&R.setExpiryData(ae),R.loadVectorData(ae,this.map.painter),R.reloadPromise){let we=R.reloadPromise;R.reloadPromise=null,this.loadTile(R).then(we.resolve).catch(we.reject)}}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.actor&&(yield R.actor.sendAsync({type:"AT",data:{uid:R.uid,type:this.type,source:this.id}}))})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),R.actor&&(yield R.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class Ae extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.setEventedParent(Se),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.e({type:"raster"},ae),t.e(this,t.M(ae,["url","scheme","tileSize"]))}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}onAdd(R){this.map=R,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(R){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}serialize(){return t.e({},this._options)}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);R.abortController=new AbortController;try{let we=yield l.getImage(this.map._requestManager.transformRequest(ae,"Tile"),R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(we&&we.data){this.map._refreshExpiredTiles&&we.cacheControl&&we.expires&&R.setExpiryData({cacheControl:we.cacheControl,expires:we.expires});let Se=this.map.painter.context,De=Se.gl,ft=we.data;R.texture=this.map.painter.getTileTexture(ft.width),R.texture?R.texture.update(ft,{useMipmap:!0}):(R.texture=new u(Se,ft,De.RGBA,{useMipmap:!0}),R.texture.bind(De.LINEAR,De.CLAMP_TO_EDGE,De.LINEAR_MIPMAP_NEAREST)),R.state="loaded"}}catch(we){if(delete R.abortController,R.aborted)R.state="unloaded";else if(we)throw R.state="errored",we}})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController)})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.texture&&this.map.painter.saveTileTexture(R.texture)})}hasTransition(){return!1}}class Be extends Ae{constructor(R,ae,we,Se){super(R,ae,we,Se),this.type="raster-dem",this.maxzoom=22,this._options=t.e({type:"raster-dem"},ae),this.encoding=ae.encoding||"mapbox",this.redFactor=ae.redFactor,this.greenFactor=ae.greenFactor,this.blueFactor=ae.blueFactor,this.baseShift=ae.baseShift}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we=this.map._requestManager.transformRequest(ae,"Tile");R.neighboringTiles=this._getNeighboringTiles(R.tileID),R.abortController=new AbortController;try{let Se=yield l.getImage(we,R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(Se&&Se.data){let De=Se.data;this.map._refreshExpiredTiles&&Se.cacheControl&&Se.expires&&R.setExpiryData({cacheControl:Se.cacheControl,expires:Se.expires});let ft=t.b(De)&&t.U()?De:yield this.readImageNow(De),bt={type:this.type,uid:R.uid,source:this.id,rawImageData:ft,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!R.actor||R.state==="expired"){R.actor=this.dispatcher.getActor();let Dt=yield R.actor.sendAsync({type:"LDT",data:bt});R.dem=Dt,R.needsHillshadePrepare=!0,R.needsTerrainPrepare=!0,R.state="loaded"}}}catch(Se){if(delete R.abortController,R.aborted)R.state="unloaded";else if(Se)throw R.state="errored",Se}})}readImageNow(R){return t._(this,void 0,void 0,function*(){if(typeof VideoFrame<"u"&&t.V()){let ae=R.width+2,we=R.height+2;try{return new t.R({width:ae,height:we},yield t.W(R,-1,-1,ae,we))}catch{}}return i.getImageData(R,1)})}_getNeighboringTiles(R){let ae=R.canonical,we=Math.pow(2,ae.z),Se=(ae.x-1+we)%we,De=ae.x===0?R.wrap-1:R.wrap,ft=(ae.x+1+we)%we,bt=ae.x+1===we?R.wrap+1:R.wrap,Dt={};return Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y).key]={backfilled:!1},ae.y>0&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y-1).key]={backfilled:!1}),ae.y+10&&t.e(De,{resourceTiming:Se}),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"metadata"}))),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"content"})))}catch(we){if(this._pendingLoads--,this._removed)return void this.fire(new t.k("dataabort",{dataType:"source"}));this.fire(new t.j(we))}})}loaded(){return this._pendingLoads===0}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.actor?"RT":"LT";R.actor=this.actor;let we={type:this.type,uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};R.abortController=new AbortController;let Se=yield this.actor.sendAsync({type:ae,data:we},R.abortController);delete R.abortController,R.unloadVectorData(),R.aborted||R.loadVectorData(Se,this.map.painter,ae==="RT")})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.aborted=!0})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return t.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ze=t.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class at extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.coordinates=ae.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Se),this.options=ae}load(R){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let ae=yield l.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,ae&&ae.data&&(this.image=ae.data,R&&(this.coordinates=R),this._finishLoading())}catch(ae){this._request=null,this._loaded=!0,this.fire(new t.j(ae))}})}loaded(){return this._loaded}updateImage(R){return R.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=R.url,this.load(R.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(R){this.map=R,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(R){this.coordinates=R;let ae=R.map(t.Z.fromLngLat);this.tileID=function(Se){let De=1/0,ft=1/0,bt=-1/0,Dt=-1/0;for(let jr of Se)De=Math.min(De,jr.x),ft=Math.min(ft,jr.y),bt=Math.max(bt,jr.x),Dt=Math.max(Dt,jr.y);let Yt=Math.max(bt-De,Dt-ft),cr=Math.max(0,Math.floor(-Math.log(Yt)/Math.LN2)),hr=Math.pow(2,cr);return new t.a1(cr,Math.floor((De+bt)/2*hr),Math.floor((ft+Dt)/2*hr))}(ae),this.minzoom=this.maxzoom=this.tileID.z;let we=ae.map(Se=>this.tileID.getTilePoint(Se)._round());return this._boundsArray=new t.$,this._boundsArray.emplaceBack(we[0].x,we[0].y,0,0),this._boundsArray.emplaceBack(we[1].x,we[1].y,t.X,0),this._boundsArray.emplaceBack(we[3].x,we[3].y,0,t.X),this._boundsArray.emplaceBack(we[2].x,we[2].y,t.X,t.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new u(R,this.image,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(R){return t._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(R.tileID.canonical)?(this.tiles[String(R.tileID.wrap)]=R,R.buckets={}):R.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class it extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),this.roundZoom=!0,this.type="video",this.options=ae}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1;let R=this.options;this.urls=[];for(let ae of R.urls)this.urls.push(this.map._requestManager.transformRequest(ae,"Source").url);try{let ae=yield t.a3(this.urls);if(this._loaded=!0,!ae)return;this.video=ae,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(ae){this.fire(new t.j(ae))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(R){if(this.video){let ae=this.video.seekable;Rae.end(0)?this.fire(new t.j(new t.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${ae.start(0)} and ${ae.end(0)}-second mark.`))):this.video.currentTime=R}}getVideo(){return this.video}onAdd(R){this.map||(this.map=R,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE),ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,ae.RGBA,ae.UNSIGNED_BYTE,this.video)):(this.texture=new u(R,this.video,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class et extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),ae.coordinates?Array.isArray(ae.coordinates)&&ae.coordinates.length===4&&!ae.coordinates.some(De=>!Array.isArray(De)||De.length!==2||De.some(ft=>typeof ft!="number"))||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "coordinates"'))),ae.animate&&typeof ae.animate!="boolean"&&this.fire(new t.j(new t.a2(`sources.${R}`,null,'optional "animate" property must be a boolean value'))),ae.canvas?typeof ae.canvas=="string"||ae.canvas instanceof HTMLCanvasElement||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "canvas"'))),this.options=ae,this.animate=ae.animate===void 0||ae.animate}load(){return t._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(R){this.map=R,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let R=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,R=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,R=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let ae=this.map.painter.context,we=ae.gl;this.boundsBuffer||(this.boundsBuffer=ae.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?(R||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new u(ae,this.canvas,we.RGBA,{premultiply:!0});let Se=!1;for(let De in this.tiles){let ft=this.tiles[De];ft.state!=="loaded"&&(ft.state="loaded",ft.texture=this.texture,Se=!0)}Se&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let R of[this.canvas.width,this.canvas.height])if(isNaN(R)||R<=0)return!0;return!1}}let lt={},Me=Oe=>{switch(Oe){case"geojson":return Ie;case"image":return at;case"raster":return Ae;case"raster-dem":return Be;case"vector":return be;case"video":return it;case"canvas":return et}return lt[Oe]},ge="RTLPluginLoaded";class ce extends t.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Z()}_syncState(R){return this.status=R,this.dispatcher.broadcast("SRPS",{pluginStatus:R,pluginURL:this.url}).catch(ae=>{throw this.status="error",ae})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(R){return t._(this,arguments,void 0,function*(ae,we=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=i.resolveURL(ae),!this.url)throw new Error(`requested url ${ae} is invalid`);if(this.status==="unavailable"){if(!we)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return t._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new t.k(ge))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ze=null;function tt(){return ze||(ze=new ce),ze}class nt{constructor(R,ae){this.timeAdded=0,this.fadeEndTime=0,this.tileID=R,this.uid=t.a4(),this.uses=0,this.tileSize=ae,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(R){let ae=R+this.timeAdded;aeDe.getLayer(Yt)).filter(Boolean);if(Dt.length!==0){bt.layers=Dt,bt.stateDependentLayerIds&&(bt.stateDependentLayers=bt.stateDependentLayerIds.map(Yt=>Dt.filter(cr=>cr.id===Yt)[0]));for(let Yt of Dt)ft[Yt.id]=bt}}return ft}(R.buckets,ae.style),this.hasSymbolBuckets=!1;for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6){if(this.hasSymbolBuckets=!0,!we)break;De.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6&&De.hasRTLText){this.hasRTLText=!0,tt().lazyLoad();break}}this.queryPadding=0;for(let Se in this.buckets){let De=this.buckets[Se];this.queryPadding=Math.max(this.queryPadding,ae.style.getLayer(Se).queryRadius(De))}R.imageAtlas&&(this.imageAtlas=R.imageAtlas),R.glyphAtlasImage&&(this.glyphAtlasImage=R.glyphAtlasImage)}else this.collisionBoxArray=new t.a5}unloadVectorData(){for(let R in this.buckets)this.buckets[R].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(R){return this.buckets[R.id]}upload(R){for(let we in this.buckets){let Se=this.buckets[we];Se.uploadPending()&&Se.upload(R)}let ae=R.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new u(R,this.imageAtlas.image,ae.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new u(R,this.glyphAtlasImage,ae.ALPHA),this.glyphAtlasImage=null)}prepare(R){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(R,this.imageAtlasTexture)}queryRenderedFeatures(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:Se,cameraQueryGeometry:De,scale:ft,tileSize:this.tileSize,pixelPosMatrix:cr,transform:Dt,params:bt,queryPadding:this.queryPadding*Yt},R,ae,we):{}}querySourceFeatures(R,ae){let we=this.latestFeatureIndex;if(!we||!we.rawTileData)return;let Se=we.loadVTLayers(),De=ae&&ae.sourceLayer?ae.sourceLayer:"",ft=Se._geojsonTileLayer||Se[De];if(!ft)return;let bt=t.a7(ae&&ae.filter),{z:Dt,x:Yt,y:cr}=this.tileID.canonical,hr={z:Dt,x:Yt,y:cr};for(let jr=0;jrwe)Se=!1;else if(ae)if(this.expirationTime{this.remove(R,De)},we)),this.data[Se].push(De),this.order.push(Se),this.order.length>this.max){let ft=this._getAndRemoveByKey(this.order[0]);ft&&this.onRemove(ft)}return this}has(R){return R.wrapped().key in this.data}getAndRemove(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null}_getAndRemoveByKey(R){let ae=this.data[R].shift();return ae.timeout&&clearTimeout(ae.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),ae.value}getByKey(R){let ae=this.data[R];return ae?ae[0].value:null}get(R){return this.has(R)?this.data[R.wrapped().key][0].value:null}remove(R,ae){if(!this.has(R))return this;let we=R.wrapped().key,Se=ae===void 0?0:this.data[we].indexOf(ae),De=this.data[we][Se];return this.data[we].splice(Se,1),De.timeout&&clearTimeout(De.timeout),this.data[we].length===0&&delete this.data[we],this.onRemove(De.value),this.order.splice(this.order.indexOf(we),1),this}setMaxSize(R){for(this.max=R;this.order.length>this.max;){let ae=this._getAndRemoveByKey(this.order[0]);ae&&this.onRemove(ae)}return this}filter(R){let ae=[];for(let we in this.data)for(let Se of this.data[we])R(Se.value)||ae.push(Se);for(let we of ae)this.remove(we.value.tileID,we)}}class Ct{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(R,ae,we){let Se=String(ae);if(this.stateChanges[R]=this.stateChanges[R]||{},this.stateChanges[R][Se]=this.stateChanges[R][Se]||{},t.e(this.stateChanges[R][Se],we),this.deletedStates[R]===null){this.deletedStates[R]={};for(let De in this.state[R])De!==Se&&(this.deletedStates[R][De]=null)}else if(this.deletedStates[R]&&this.deletedStates[R][Se]===null){this.deletedStates[R][Se]={};for(let De in this.state[R][Se])we[De]||(this.deletedStates[R][Se][De]=null)}else for(let De in we)this.deletedStates[R]&&this.deletedStates[R][Se]&&this.deletedStates[R][Se][De]===null&&delete this.deletedStates[R][Se][De]}removeFeatureState(R,ae,we){if(this.deletedStates[R]===null)return;let Se=String(ae);if(this.deletedStates[R]=this.deletedStates[R]||{},we&&ae!==void 0)this.deletedStates[R][Se]!==null&&(this.deletedStates[R][Se]=this.deletedStates[R][Se]||{},this.deletedStates[R][Se][we]=null);else if(ae!==void 0)if(this.stateChanges[R]&&this.stateChanges[R][Se])for(we in this.deletedStates[R][Se]={},this.stateChanges[R][Se])this.deletedStates[R][Se][we]=null;else this.deletedStates[R][Se]=null;else this.deletedStates[R]=null}getState(R,ae){let we=String(ae),Se=t.e({},(this.state[R]||{})[we],(this.stateChanges[R]||{})[we]);if(this.deletedStates[R]===null)return{};if(this.deletedStates[R]){let De=this.deletedStates[R][ae];if(De===null)return{};for(let ft in De)delete Se[ft]}return Se}initializeTileState(R,ae){R.setFeatureState(this.state,ae)}coalesceChanges(R,ae){let we={};for(let Se in this.stateChanges){this.state[Se]=this.state[Se]||{};let De={};for(let ft in this.stateChanges[Se])this.state[Se][ft]||(this.state[Se][ft]={}),t.e(this.state[Se][ft],this.stateChanges[Se][ft]),De[ft]=this.state[Se][ft];we[Se]=De}for(let Se in this.deletedStates){this.state[Se]=this.state[Se]||{};let De={};if(this.deletedStates[Se]===null)for(let ft in this.state[Se])De[ft]={},this.state[Se][ft]={};else for(let ft in this.deletedStates[Se]){if(this.deletedStates[Se][ft]===null)this.state[Se][ft]={};else for(let bt of Object.keys(this.deletedStates[Se][ft]))delete this.state[Se][ft][bt];De[ft]=this.state[Se][ft]}we[Se]=we[Se]||{},t.e(we[Se],De)}if(this.stateChanges={},this.deletedStates={},Object.keys(we).length!==0)for(let Se in R)R[Se].setFeatureState(we,ae)}}class St extends t.E{constructor(R,ae,we){super(),this.id=R,this.dispatcher=we,this.on("data",Se=>this._dataHandler(Se)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((Se,De,ft,bt)=>{let Dt=new(Me(De.type))(Se,De,ft,bt);if(Dt.id!==Se)throw new Error(`Expected Source id to be ${Se} instead of ${Dt.id}`);return Dt})(R,ae,we,this),this._tiles={},this._cache=new Qe(0,Se=>this._unloadTile(Se)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new Ct,this._didEmitContent=!1,this._updated=!1}onAdd(R){this.map=R,this._maxTileCacheSize=R?R._maxTileCacheSize:null,this._maxTileCacheZoomLevels=R?R._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(R)}onRemove(R){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(R)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let R in this._tiles){let ae=this._tiles[R];if(ae.state!=="loaded"&&ae.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let R=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,R&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(R,ae,we){return t._(this,void 0,void 0,function*(){try{yield this._source.loadTile(R),this._tileLoaded(R,ae,we)}catch(Se){R.state="errored",Se.status!==404?this._source.fire(new t.j(Se,{tile:R})):this.update(this.transform,this.terrain)}})}_unloadTile(R){this._source.unloadTile&&this._source.unloadTile(R)}_abortTile(R){this._source.abortTile&&this._source.abortTile(R),this._source.fire(new t.k("dataabort",{tile:R,coord:R.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(R){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let ae in this._tiles){let we=this._tiles[ae];we.upload(R),we.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(R=>R.tileID).sort(Ot).map(R=>R.key)}getRenderableIds(R){let ae=[];for(let we in this._tiles)this._isIdRenderable(we,R)&&ae.push(this._tiles[we]);return R?ae.sort((we,Se)=>{let De=we.tileID,ft=Se.tileID,bt=new t.P(De.canonical.x,De.canonical.y)._rotate(this.transform.angle),Dt=new t.P(ft.canonical.x,ft.canonical.y)._rotate(this.transform.angle);return De.overscaledZ-ft.overscaledZ||Dt.y-bt.y||Dt.x-bt.x}).map(we=>we.tileID.key):ae.map(we=>we.tileID).sort(Ot).map(we=>we.key)}hasRenderableParent(R){let ae=this.findLoadedParent(R,0);return!!ae&&this._isIdRenderable(ae.tileID.key)}_isIdRenderable(R,ae){return this._tiles[R]&&this._tiles[R].hasData()&&!this._coveredTiles[R]&&(ae||!this._tiles[R].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let R in this._tiles)this._tiles[R].state!=="errored"&&this._reloadTile(R,"reloading")}}_reloadTile(R,ae){return t._(this,void 0,void 0,function*(){let we=this._tiles[R];we&&(we.state!=="loading"&&(we.state=ae),yield this._loadTile(we,R,ae))})}_tileLoaded(R,ae,we){R.timeAdded=i.now(),we==="expired"&&(R.refreshedUponExpiration=!0),this._setTileReloadTimer(ae,R),this.getSource().type==="raster-dem"&&R.dem&&this._backfillDEM(R),this._state.initializeTileState(R,this.map?this.map.painter:null),R.aborted||this._source.fire(new t.k("data",{dataType:"source",tile:R,coord:R.tileID}))}_backfillDEM(R){let ae=this.getRenderableIds();for(let Se=0;Se1||(Math.abs(ft)>1&&(Math.abs(ft+Dt)===1?ft+=Dt:Math.abs(ft-Dt)===1&&(ft-=Dt)),De.dem&&Se.dem&&(Se.dem.backfillBorder(De.dem,ft,bt),Se.neighboringTiles&&Se.neighboringTiles[Yt]&&(Se.neighboringTiles[Yt].backfilled=!0)))}}getTile(R){return this.getTileByID(R.key)}getTileByID(R){return this._tiles[R]}_retainLoadedChildren(R,ae,we,Se){for(let De in this._tiles){let ft=this._tiles[De];if(Se[De]||!ft.hasData()||ft.tileID.overscaledZ<=ae||ft.tileID.overscaledZ>we)continue;let bt=ft.tileID;for(;ft&&ft.tileID.overscaledZ>ae+1;){let Yt=ft.tileID.scaledTo(ft.tileID.overscaledZ-1);ft=this._tiles[Yt.key],ft&&ft.hasData()&&(bt=Yt)}let Dt=bt;for(;Dt.overscaledZ>ae;)if(Dt=Dt.scaledTo(Dt.overscaledZ-1),R[Dt.key]){Se[bt.key]=bt;break}}}findLoadedParent(R,ae){if(R.key in this._loadedParentTiles){let we=this._loadedParentTiles[R.key];return we&&we.tileID.overscaledZ>=ae?we:null}for(let we=R.overscaledZ-1;we>=ae;we--){let Se=R.scaledTo(we),De=this._getLoadedTile(Se);if(De)return De}}findLoadedSibling(R){return this._getLoadedTile(R)}_getLoadedTile(R){let ae=this._tiles[R.key];return ae&&ae.hasData()?ae:this._cache.getByKey(R.wrapped().key)}updateCacheSize(R){let ae=Math.ceil(R.width/this._source.tileSize)+1,we=Math.ceil(R.height/this._source.tileSize)+1,Se=Math.floor(ae*we*(this._maxTileCacheZoomLevels===null?t.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),De=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Se):Se;this._cache.setMaxSize(De)}handleWrapJump(R){let ae=Math.round((R-(this._prevLng===void 0?R:this._prevLng))/360);if(this._prevLng=R,ae){let we={};for(let Se in this._tiles){let De=this._tiles[Se];De.tileID=De.tileID.unwrapTo(De.tileID.wrap+ae),we[De.tileID.key]=De}this._tiles=we;for(let Se in this._timers)clearTimeout(this._timers[Se]),delete this._timers[Se];for(let Se in this._tiles)this._setTileReloadTimer(Se,this._tiles[Se])}}_updateCoveredAndRetainedTiles(R,ae,we,Se,De,ft){let bt={},Dt={},Yt=Object.keys(R),cr=i.now();for(let hr of Yt){let jr=R[hr],ea=this._tiles[hr];if(!ea||ea.fadeEndTime!==0&&ea.fadeEndTime<=cr)continue;let qe=this.findLoadedParent(jr,ae),Je=this.findLoadedSibling(jr),ot=qe||Je||null;ot&&(this._addTile(ot.tileID),bt[ot.tileID.key]=ot.tileID),Dt[hr]=jr}this._retainLoadedChildren(Dt,Se,we,R);for(let hr in bt)R[hr]||(this._coveredTiles[hr]=!0,R[hr]=bt[hr]);if(ft){let hr={},jr={};for(let ea of De)this._tiles[ea.key].hasData()?hr[ea.key]=ea:jr[ea.key]=ea;for(let ea in jr){let qe=jr[ea].children(this._source.maxzoom);this._tiles[qe[0].key]&&this._tiles[qe[1].key]&&this._tiles[qe[2].key]&&this._tiles[qe[3].key]&&(hr[qe[0].key]=R[qe[0].key]=qe[0],hr[qe[1].key]=R[qe[1].key]=qe[1],hr[qe[2].key]=R[qe[2].key]=qe[2],hr[qe[3].key]=R[qe[3].key]=qe[3],delete jr[ea])}for(let ea in jr){let qe=jr[ea],Je=this.findLoadedParent(qe,this._source.minzoom),ot=this.findLoadedSibling(qe),ht=Je||ot||null;if(ht){hr[ht.tileID.key]=R[ht.tileID.key]=ht.tileID;for(let At in hr)hr[At].isChildOf(ht.tileID)&&delete hr[At]}}for(let ea in this._tiles)hr[ea]||(this._coveredTiles[ea]=!0)}}update(R,ae){if(!this._sourceLoaded||this._paused)return;let we;this.transform=R,this.terrain=ae,this.updateCacheSize(R),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?we=R.getVisibleUnwrappedCoordinates(this._source.tileID).map(cr=>new t.S(cr.canonical.z,cr.wrap,cr.canonical.z,cr.canonical.x,cr.canonical.y)):(we=R.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:ae}),this._source.hasTile&&(we=we.filter(cr=>this._source.hasTile(cr)))):we=[];let Se=R.coveringZoomLevel(this._source),De=Math.max(Se-St.maxOverzooming,this._source.minzoom),ft=Math.max(Se+St.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let cr={};for(let hr of we)if(hr.canonical.z>this._source.minzoom){let jr=hr.scaledTo(hr.canonical.z-1);cr[jr.key]=jr;let ea=hr.scaledTo(Math.max(this._source.minzoom,Math.min(hr.canonical.z,5)));cr[ea.key]=ea}we=we.concat(Object.values(cr))}let bt=we.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,bt&&this.fire(new t.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let Dt=this._updateRetainedTiles(we,Se);jt(this._source.type)&&this._updateCoveredAndRetainedTiles(Dt,De,ft,Se,we,ae);for(let cr in Dt)this._tiles[cr].clearFadeHold();let Yt=t.ab(this._tiles,Dt);for(let cr of Yt){let hr=this._tiles[cr];hr.hasSymbolBuckets&&!hr.holdingForFade()?hr.setHoldDuration(this.map._fadeDuration):hr.hasSymbolBuckets&&!hr.symbolFadeFinished()||this._removeTile(cr)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let R in this._tiles)this._tiles[R].holdingForFade()&&this._removeTile(R)}_updateRetainedTiles(R,ae){var we;let Se={},De={},ft=Math.max(ae-St.maxOverzooming,this._source.minzoom),bt=Math.max(ae+St.maxUnderzooming,this._source.minzoom),Dt={};for(let Yt of R){let cr=this._addTile(Yt);Se[Yt.key]=Yt,cr.hasData()||aethis._source.maxzoom){let jr=Yt.children(this._source.maxzoom)[0],ea=this.getTile(jr);if(ea&&ea.hasData()){Se[jr.key]=jr;continue}}else{let jr=Yt.children(this._source.maxzoom);if(Se[jr[0].key]&&Se[jr[1].key]&&Se[jr[2].key]&&Se[jr[3].key])continue}let hr=cr.wasRequested();for(let jr=Yt.overscaledZ-1;jr>=ft;--jr){let ea=Yt.scaledTo(jr);if(De[ea.key])break;if(De[ea.key]=!0,cr=this.getTile(ea),!cr&&hr&&(cr=this._addTile(ea)),cr){let qe=cr.hasData();if((qe||!(!((we=this.map)===null||we===void 0)&&we.cancelPendingTileRequestsWhileZooming)||hr)&&(Se[ea.key]=ea),hr=cr.wasRequested(),qe)break}}}return Se}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let R in this._tiles){let ae=[],we,Se=this._tiles[R].tileID;for(;Se.overscaledZ>0;){if(Se.key in this._loadedParentTiles){we=this._loadedParentTiles[Se.key];break}ae.push(Se.key);let De=Se.scaledTo(Se.overscaledZ-1);if(we=this._getLoadedTile(De),we)break;Se=De}for(let De of ae)this._loadedParentTiles[De]=we}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let R in this._tiles){let ae=this._tiles[R].tileID,we=this._getLoadedTile(ae);this._loadedSiblingTiles[ae.key]=we}}_addTile(R){let ae=this._tiles[R.key];if(ae)return ae;ae=this._cache.getAndRemove(R),ae&&(this._setTileReloadTimer(R.key,ae),ae.tileID=R,this._state.initializeTileState(ae,this.map?this.map.painter:null),this._cacheTimers[R.key]&&(clearTimeout(this._cacheTimers[R.key]),delete this._cacheTimers[R.key],this._setTileReloadTimer(R.key,ae)));let we=ae;return ae||(ae=new nt(R,this._source.tileSize*R.overscaleFactor()),this._loadTile(ae,R.key,ae.state)),ae.uses++,this._tiles[R.key]=ae,we||this._source.fire(new t.k("dataloading",{tile:ae,coord:ae.tileID,dataType:"source"})),ae}_setTileReloadTimer(R,ae){R in this._timers&&(clearTimeout(this._timers[R]),delete this._timers[R]);let we=ae.getExpiryTimeout();we&&(this._timers[R]=setTimeout(()=>{this._reloadTile(R,"expired"),delete this._timers[R]},we))}_removeTile(R){let ae=this._tiles[R];ae&&(ae.uses--,delete this._tiles[R],this._timers[R]&&(clearTimeout(this._timers[R]),delete this._timers[R]),ae.uses>0||(ae.hasData()&&ae.state!=="reloading"?this._cache.add(ae.tileID,ae,ae.getExpiryTimeout()):(ae.aborted=!0,this._abortTile(ae),this._unloadTile(ae))))}_dataHandler(R){let ae=R.sourceDataType;R.dataType==="source"&&ae==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&R.dataType==="source"&&ae==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let R in this._tiles)this._removeTile(R);this._cache.reset()}tilesIn(R,ae,we){let Se=[],De=this.transform;if(!De)return Se;let ft=we?De.getCameraQueryGeometry(R):R,bt=R.map(qe=>De.pointCoordinate(qe,this.terrain)),Dt=ft.map(qe=>De.pointCoordinate(qe,this.terrain)),Yt=this.getIds(),cr=1/0,hr=1/0,jr=-1/0,ea=-1/0;for(let qe of Dt)cr=Math.min(cr,qe.x),hr=Math.min(hr,qe.y),jr=Math.max(jr,qe.x),ea=Math.max(ea,qe.y);for(let qe=0;qe=0&&_t[1].y+At>=0){let Pt=bt.map(nr=>ot.getTilePoint(nr)),er=Dt.map(nr=>ot.getTilePoint(nr));Se.push({tile:Je,tileID:ot,queryGeometry:Pt,cameraQueryGeometry:er,scale:ht})}}return Se}getVisibleCoordinates(R){let ae=this.getRenderableIds(R).map(we=>this._tiles[we].tileID);for(let we of ae)we.posMatrix=this.transform.calculatePosMatrix(we.toUnwrapped());return ae}hasTransition(){if(this._source.hasTransition())return!0;if(jt(this._source.type)){let R=i.now();for(let ae in this._tiles)if(this._tiles[ae].fadeEndTime>=R)return!0}return!1}setFeatureState(R,ae,we){this._state.updateState(R=R||"_geojsonTileLayer",ae,we)}removeFeatureState(R,ae,we){this._state.removeFeatureState(R=R||"_geojsonTileLayer",ae,we)}getFeatureState(R,ae){return this._state.getState(R=R||"_geojsonTileLayer",ae)}setDependencies(R,ae,we){let Se=this._tiles[R];Se&&Se.setDependencies(ae,we)}reloadTilesForDependencies(R,ae){for(let we in this._tiles)this._tiles[we].hasDependency(R,ae)&&this._reloadTile(we,"reloading");this._cache.filter(we=>!we.hasDependency(R,ae))}}function Ot(Oe,R){let ae=Math.abs(2*Oe.wrap)-+(Oe.wrap<0),we=Math.abs(2*R.wrap)-+(R.wrap<0);return Oe.overscaledZ-R.overscaledZ||we-ae||R.canonical.y-Oe.canonical.y||R.canonical.x-Oe.canonical.x}function jt(Oe){return Oe==="raster"||Oe==="image"||Oe==="video"}St.maxOverzooming=10,St.maxUnderzooming=3;class ur{constructor(R,ae){this.reset(R,ae)}reset(R,ae){this.points=R||[],this._distances=[0];for(let we=1;we0?(Se-ft)/bt:0;return this.points[De].mult(1-Dt).add(this.points[ae].mult(Dt))}}function ar(Oe,R){let ae=!0;return Oe==="always"||Oe!=="never"&&R!=="never"||(ae=!1),ae}class Cr{constructor(R,ae,we){let Se=this.boxCells=[],De=this.circleCells=[];this.xCellCount=Math.ceil(R/we),this.yCellCount=Math.ceil(ae/we);for(let ft=0;ftthis.width||Se<0||ae>this.height)return[];let Dt=[];if(R<=0&&ae<=0&&this.width<=we&&this.height<=Se){if(De)return[{key:null,x1:R,y1:ae,x2:we,y2:Se}];for(let Yt=0;Yt0}hitTestCircle(R,ae,we,Se,De){let ft=R-we,bt=R+we,Dt=ae-we,Yt=ae+we;if(bt<0||ft>this.width||Yt<0||Dt>this.height)return!1;let cr=[];return this._forEachCell(ft,Dt,bt,Yt,this._queryCellCircle,cr,{hitTest:!0,overlapMode:Se,circle:{x:R,y:ae,radius:we},seenUids:{box:{},circle:{}}},De),cr.length>0}_queryCell(R,ae,we,Se,De,ft,bt,Dt){let{seenUids:Yt,hitTest:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!Yt.box[Je]){Yt.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(R<=qe[ot+2]&&ae<=qe[ot+3]&&we>=qe[ot+0]&&Se>=qe[ot+1]&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))&&(ft.push({key:ht,x1:qe[ot],y1:qe[ot+1],x2:qe[ot+2],y2:qe[ot+3]}),cr))return!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!Yt.circle[Je]){Yt.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circleAndRectCollide(qe[ot],qe[ot+1],qe[ot+2],R,ae,we,Se)&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))){let At=qe[ot],_t=qe[ot+1],Pt=qe[ot+2];if(ft.push({key:ht,x1:At-Pt,y1:_t-Pt,x2:At+Pt,y2:_t+Pt}),cr)return!0}}}return!1}_queryCellCircle(R,ae,we,Se,De,ft,bt,Dt){let{circle:Yt,seenUids:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!cr.box[Je]){cr.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(this._circleAndRectCollide(Yt.x,Yt.y,Yt.radius,qe[ot+0],qe[ot+1],qe[ot+2],qe[ot+3])&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!cr.circle[Je]){cr.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circlesCollide(qe[ot],qe[ot+1],qe[ot+2],Yt.x,Yt.y,Yt.radius)&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}}_forEachCell(R,ae,we,Se,De,ft,bt,Dt){let Yt=this._convertToXCellCoord(R),cr=this._convertToYCellCoord(ae),hr=this._convertToXCellCoord(we),jr=this._convertToYCellCoord(Se);for(let ea=Yt;ea<=hr;ea++)for(let qe=cr;qe<=jr;qe++)if(De.call(this,R,ae,we,Se,this.xCellCount*qe+ea,ft,bt,Dt))return}_convertToXCellCoord(R){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(R*this.xScale)))}_convertToYCellCoord(R){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(R*this.yScale)))}_circlesCollide(R,ae,we,Se,De,ft){let bt=Se-R,Dt=De-ae,Yt=we+ft;return Yt*Yt>bt*bt+Dt*Dt}_circleAndRectCollide(R,ae,we,Se,De,ft,bt){let Dt=(ft-Se)/2,Yt=Math.abs(R-(Se+Dt));if(Yt>Dt+we)return!1;let cr=(bt-De)/2,hr=Math.abs(ae-(De+cr));if(hr>cr+we)return!1;if(Yt<=Dt||hr<=cr)return!0;let jr=Yt-Dt,ea=hr-cr;return jr*jr+ea*ea<=we*we}}function vr(Oe,R,ae,we,Se){let De=t.H();return R?(t.K(De,De,[1/Se,1/Se,1]),ae||t.ad(De,De,we.angle)):t.L(De,we.labelPlaneMatrix,Oe),De}function _r(Oe,R,ae,we,Se){if(R){let De=t.ae(Oe);return t.K(De,De,[Se,Se,1]),ae||t.ad(De,De,-we.angle),De}return we.glCoordMatrix}function yt(Oe,R,ae,we){let Se;we?(Se=[Oe,R,we(Oe,R),1],t.af(Se,Se,ae)):(Se=[Oe,R,0,1],Kt(Se,Se,ae));let De=Se[3];return{point:new t.P(Se[0]/De,Se[1]/De),signedDistanceFromCamera:De,isOccluded:!1}}function Fe(Oe,R){return .5+Oe/R*.5}function Ke(Oe,R){return Oe.x>=-R[0]&&Oe.x<=R[0]&&Oe.y>=-R[1]&&Oe.y<=R[1]}function Ne(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe){let Je=we?Oe.textSizeData:Oe.iconSizeData,ot=t.ag(Je,ae.transform.zoom),ht=[256/ae.width*2+1,256/ae.height*2+1],At=we?Oe.text.dynamicLayoutVertexArray:Oe.icon.dynamicLayoutVertexArray;At.clear();let _t=Oe.lineVertexArray,Pt=we?Oe.text.placedSymbolArray:Oe.icon.placedSymbolArray,er=ae.transform.width/ae.transform.height,nr=!1;for(let pr=0;prMath.abs(ae.x-R.x)*we?{useVertical:!0}:(Oe===t.ah.vertical?R.yae.x)?{needsFlipping:!0}:null}function ke(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=ae/24,jr=R.lineOffsetX*hr,ea=R.lineOffsetY*hr,qe;if(R.numGlyphs>1){let Je=R.glyphStartIndex+R.numGlyphs,ot=R.lineStartIndex,ht=R.lineStartIndex+R.lineLength,At=Ee(hr,bt,jr,ea,we,R,cr,Oe);if(!At)return{notEnoughRoom:!0};let _t=yt(At.first.point.x,At.first.point.y,ft,Oe.getElevation).point,Pt=yt(At.last.point.x,At.last.point.y,ft,Oe.getElevation).point;if(Se&&!we){let er=Ve(R.writingMode,_t,Pt,Yt);if(er)return er}qe=[At.first];for(let er=R.glyphStartIndex+1;er0?_t.point:function(nr,pr,Sr,Wr,ha,ga){return Te(nr,pr,Sr,1,ha,ga)}(Oe.tileAnchorPoint,At,ot,0,De,Oe),er=Ve(R.writingMode,ot,Pt,Yt);if(er)return er}let Je=It(hr*bt.getoffsetX(R.glyphStartIndex),jr,ea,we,R.segment,R.lineStartIndex,R.lineStartIndex+R.lineLength,Oe,cr);if(!Je||Oe.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};qe=[Je]}for(let Je of qe)t.aj(Dt,Je.point,Je.angle);return{}}function Te(Oe,R,ae,we,Se,De){let ft=Oe.add(Oe.sub(R)._unit()),bt=Se!==void 0?yt(ft.x,ft.y,Se,De.getElevation).point:rt(ft.x,ft.y,De).point,Dt=ae.sub(bt);return ae.add(Dt._mult(we/Dt.mag()))}function Le(Oe,R,ae){let we=R.projectionCache;if(we.projections[Oe])return we.projections[Oe];let Se=new t.P(R.lineVertexArray.getx(Oe),R.lineVertexArray.gety(Oe)),De=rt(Se.x,Se.y,R);if(De.signedDistanceFromCamera>0)return we.projections[Oe]=De.point,we.anyProjectionOccluded=we.anyProjectionOccluded||De.isOccluded,De.point;let ft=Oe-ae.direction;return function(bt,Dt,Yt,cr,hr){return Te(bt,Dt,Yt,cr,void 0,hr)}(ae.distanceFromAnchor===0?R.tileAnchorPoint:new t.P(R.lineVertexArray.getx(ft),R.lineVertexArray.gety(ft)),Se,ae.previousVertex,ae.absOffsetX-ae.distanceFromAnchor+1,R)}function rt(Oe,R,ae){let we=Oe+ae.translation[0],Se=R+ae.translation[1],De;return!ae.pitchWithMap&&ae.projection.useSpecialProjectionForSymbols?(De=ae.projection.projectTileCoordinates(we,Se,ae.unwrappedTileID,ae.getElevation),De.point.x=(.5*De.point.x+.5)*ae.width,De.point.y=(.5*-De.point.y+.5)*ae.height):(De=yt(we,Se,ae.labelPlaneMatrix,ae.getElevation),De.isOccluded=!1),De}function dt(Oe,R,ae){return Oe._unit()._perp()._mult(R*ae)}function xt(Oe,R,ae,we,Se,De,ft,bt,Dt){if(bt.projectionCache.offsets[Oe])return bt.projectionCache.offsets[Oe];let Yt=ae.add(R);if(Oe+Dt.direction=Se)return bt.projectionCache.offsets[Oe]=Yt,Yt;let cr=Le(Oe+Dt.direction,bt,Dt),hr=dt(cr.sub(ae),ft,Dt.direction),jr=ae.add(hr),ea=cr.add(hr);return bt.projectionCache.offsets[Oe]=t.ak(De,Yt,jr,ea)||Yt,bt.projectionCache.offsets[Oe]}function It(Oe,R,ae,we,Se,De,ft,bt,Dt){let Yt=we?Oe-R:Oe+R,cr=Yt>0?1:-1,hr=0;we&&(cr*=-1,hr=Math.PI),cr<0&&(hr+=Math.PI);let jr,ea=cr>0?De+Se:De+Se+1;bt.projectionCache.cachedAnchorPoint?jr=bt.projectionCache.cachedAnchorPoint:(jr=rt(bt.tileAnchorPoint.x,bt.tileAnchorPoint.y,bt).point,bt.projectionCache.cachedAnchorPoint=jr);let qe,Je,ot=jr,ht=jr,At=0,_t=0,Pt=Math.abs(Yt),er=[],nr;for(;At+_t<=Pt;){if(ea+=cr,ea=ft)return null;At+=_t,ht=ot,Je=qe;let Wr={absOffsetX:Pt,direction:cr,distanceFromAnchor:At,previousVertex:ht};if(ot=Le(ea,bt,Wr),ae===0)er.push(ht),nr=ot.sub(ht);else{let ha,ga=ot.sub(ht);ha=ga.mag()===0?dt(Le(ea+cr,bt,Wr).sub(ot),ae,cr):dt(ga,ae,cr),Je||(Je=ht.add(ha)),qe=xt(ea,ha,ot,De,ft,Je,ae,bt,Wr),er.push(Je),nr=qe.sub(Je)}_t=nr.mag()}let pr=nr._mult((Pt-At)/_t)._add(Je||ht),Sr=hr+Math.atan2(ot.y-ht.y,ot.x-ht.x);return er.push(pr),{point:pr,angle:Dt?Sr:0,path:er}}let Bt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Gt(Oe,R){for(let ae=0;ae=1;Sn--)Ci.push(di.path[Sn]);for(let Sn=1;Snho.signedDistanceFromCamera<=0)?[]:Sn.map(ho=>ho.point)}let Bn=[];if(Ci.length>0){let Sn=Ci[0].clone(),ho=Ci[0].clone();for(let ts=1;ts=ga.x&&ho.x<=Pa.x&&Sn.y>=ga.y&&ho.y<=Pa.y?[Ci]:ho.xPa.x||ho.yPa.y?[]:t.al([Ci],ga.x,ga.y,Pa.x,Pa.y)}for(let Sn of Bn){Ja.reset(Sn,.25*ha);let ho=0;ho=Ja.length<=.5*ha?1:Math.ceil(Ja.paddedLength/$i)+1;for(let ts=0;tsyt(Se.x,Se.y,we,ae.getElevation))}queryRenderedSymbols(R){if(R.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let ae=[],we=1/0,Se=1/0,De=-1/0,ft=-1/0;for(let cr of R){let hr=new t.P(cr.x+sr,cr.y+sr);we=Math.min(we,hr.x),Se=Math.min(Se,hr.y),De=Math.max(De,hr.x),ft=Math.max(ft,hr.y),ae.push(hr)}let bt=this.grid.query(we,Se,De,ft).concat(this.ignoredGrid.query(we,Se,De,ft)),Dt={},Yt={};for(let cr of bt){let hr=cr.key;if(Dt[hr.bucketInstanceId]===void 0&&(Dt[hr.bucketInstanceId]={}),Dt[hr.bucketInstanceId][hr.featureIndex])continue;let jr=[new t.P(cr.x1,cr.y1),new t.P(cr.x2,cr.y1),new t.P(cr.x2,cr.y2),new t.P(cr.x1,cr.y2)];t.am(ae,jr)&&(Dt[hr.bucketInstanceId][hr.featureIndex]=!0,Yt[hr.bucketInstanceId]===void 0&&(Yt[hr.bucketInstanceId]=[]),Yt[hr.bucketInstanceId].push(hr.featureIndex))}return Yt}insertCollisionBox(R,ae,we,Se,De,ft){(we?this.ignoredGrid:this.grid).insert({bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae},R[0],R[1],R[2],R[3])}insertCollisionCircles(R,ae,we,Se,De,ft){let bt=we?this.ignoredGrid:this.grid,Dt={bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae};for(let Yt=0;Yt=this.screenRightBoundary||Sethis.screenBottomBoundary}isInsideGrid(R,ae,we,Se){return we>=0&&R=0&&aethis.projectAndGetPerspectiveRatio(we,ha.x,ha.y,Se,Yt));Sr=Wr.some(ha=>!ha.isOccluded),pr=Wr.map(ha=>ha.point)}else Sr=!0;return{box:t.ao(pr),allPointsOccluded:!Sr}}}function Aa(Oe,R,ae){return R*(t.X/(Oe.tileSize*Math.pow(2,ae-Oe.tileID.overscaledZ)))}class La{constructor(R,ae,we,Se){this.opacity=R?Math.max(0,Math.min(1,R.opacity+(R.placed?ae:-ae))):Se&&we?1:0,this.placed=we}isHidden(){return this.opacity===0&&!this.placed}}class ka{constructor(R,ae,we,Se,De){this.text=new La(R?R.text:null,ae,we,De),this.icon=new La(R?R.icon:null,ae,Se,De)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ga{constructor(R,ae,we){this.text=R,this.icon=ae,this.skipFade=we}}class Ma{constructor(){this.invProjMatrix=t.H(),this.viewportMatrix=t.H(),this.circles=[]}}class Ua{constructor(R,ae,we,Se,De){this.bucketInstanceId=R,this.featureIndex=ae,this.sourceLayerIndex=we,this.bucketIndex=Se,this.tileID=De}}class ni{constructor(R){this.crossSourceCollisions=R,this.maxGroupID=0,this.collisionGroups={}}get(R){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[R]){let ae=++this.maxGroupID;this.collisionGroups[R]={ID:ae,predicate:we=>we.collisionGroupID===ae}}return this.collisionGroups[R]}}function Wt(Oe,R,ae,we,Se){let{horizontalAlign:De,verticalAlign:ft}=t.au(Oe);return new t.P(-(De-.5)*R+we[0]*Se,-(ft-.5)*ae+we[1]*Se)}class zt{constructor(R,ae,we,Se,De,ft){this.transform=R.clone(),this.terrain=we,this.collisionIndex=new sa(this.transform,ae),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=Se,this.retainedQueryData={},this.collisionGroups=new ni(De),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=ft,ft&&(ft.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(R){let ae=this.terrain;return ae?(we,Se)=>ae.getElevation(R,we,Se):null}getBucketParts(R,ae,we,Se){let De=we.getBucket(ae),ft=we.latestFeatureIndex;if(!De||!ft||ae.id!==De.layerIds[0])return;let bt=we.collisionBoxArray,Dt=De.layers[0].layout,Yt=De.layers[0].paint,cr=Math.pow(2,this.transform.zoom-we.tileID.overscaledZ),hr=we.tileSize/t.X,jr=we.tileID.toUnwrapped(),ea=this.transform.calculatePosMatrix(jr),qe=Dt.get("text-pitch-alignment")==="map",Je=Dt.get("text-rotation-alignment")==="map",ot=Aa(we,1,this.transform.zoom),ht=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("text-translate"),Yt.get("text-translate-anchor")),At=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("icon-translate"),Yt.get("icon-translate-anchor")),_t=vr(ea,qe,Je,this.transform,ot),Pt=null;if(qe){let nr=_r(ea,qe,Je,this.transform,ot);Pt=t.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[De.bucketInstanceId]=new Ua(De.bucketInstanceId,ft,De.sourceLayerIndex,De.index,we.tileID);let er={bucket:De,layout:Dt,translationText:ht,translationIcon:At,posMatrix:ea,unwrappedTileID:jr,textLabelPlaneMatrix:_t,labelToScreenMatrix:Pt,scale:cr,textPixelRatio:hr,holdingForFade:we.holdingForFade(),collisionBoxArray:bt,partiallyEvaluatedTextSize:t.ag(De.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(De.sourceID)};if(Se)for(let nr of De.sortKeyRanges){let{sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr}=nr;R.push({sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr,parameters:er})}else R.push({symbolInstanceStart:0,symbolInstanceEnd:De.symbolInstances.length,parameters:er})}attemptAnchorPlacement(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At,_t){let Pt=t.aq[R.textAnchor],er=[R.textOffset0,R.textOffset1],nr=Wt(Pt,we,Se,er,De),pr=this.collisionIndex.placeCollisionBox(ae,jr,Dt,Yt,cr,bt,ft,ot,hr.predicate,_t,nr);if((!At||this.collisionIndex.placeCollisionBox(At,jr,Dt,Yt,cr,bt,ft,ht,hr.predicate,_t,nr).placeable)&&pr.placeable){let Sr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID].text&&(Sr=this.prevPlacement.variableOffsets[ea.crossTileID].anchor),ea.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[ea.crossTileID]={textOffset:er,width:we,height:Se,anchor:Pt,textBoxScale:De,prevAnchor:Sr},this.markUsedJustification(qe,Pt,ea,Je),qe.allowVerticalPlacement&&(this.markUsedOrientation(qe,Je,ea),this.placedOrientations[ea.crossTileID]=Je),{shift:nr,placedGlyphBoxes:pr}}}placeLayerBucketPart(R,ae,we){let{bucket:Se,layout:De,translationText:ft,translationIcon:bt,posMatrix:Dt,unwrappedTileID:Yt,textLabelPlaneMatrix:cr,labelToScreenMatrix:hr,textPixelRatio:jr,holdingForFade:ea,collisionBoxArray:qe,partiallyEvaluatedTextSize:Je,collisionGroup:ot}=R.parameters,ht=De.get("text-optional"),At=De.get("icon-optional"),_t=t.ar(De,"text-overlap","text-allow-overlap"),Pt=_t==="always",er=t.ar(De,"icon-overlap","icon-allow-overlap"),nr=er==="always",pr=De.get("text-rotation-alignment")==="map",Sr=De.get("text-pitch-alignment")==="map",Wr=De.get("icon-text-fit")!=="none",ha=De.get("symbol-z-order")==="viewport-y",ga=Pt&&(nr||!Se.hasIconData()||At),Pa=nr&&(Pt||!Se.hasTextData()||ht);!Se.collisionArrays&&qe&&Se.deserializeCollisionBoxes(qe);let Ja=this._getTerrainElevationFunc(this.retainedQueryData[Se.bucketInstanceId].tileID),di=(pi,Ci,$i)=>{var Bn,Sn;if(ae[pi.crossTileID])return;if(ea)return void(this.placements[pi.crossTileID]=new Ga(!1,!1,!1));let ho=!1,ts=!1,yo=!0,Vo=null,ls={box:null,placeable:!1,offscreen:null},rl={box:null,placeable:!1,offscreen:null},Ys=null,Zo=null,Go=null,Rl=0,Xl=0,qu=0;Ci.textFeatureIndex?Rl=Ci.textFeatureIndex:pi.useRuntimeCollisionCircles&&(Rl=pi.featureIndex),Ci.verticalTextFeatureIndex&&(Xl=Ci.verticalTextFeatureIndex);let fu=Ci.textBox;if(fu){let ql=$e=>{let pt=t.ah.horizontal;if(Se.allowVerticalPlacement&&!$e&&this.prevPlacement){let vt=this.prevPlacement.placedOrientations[pi.crossTileID];vt&&(this.placedOrientations[pi.crossTileID]=vt,pt=vt,this.markUsedOrientation(Se,pt,pi))}return pt},Hl=($e,pt)=>{if(Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&Ci.verticalTextBox){for(let vt of Se.writingModes)if(vt===t.ah.vertical?(ls=pt(),rl=ls):ls=$e(),ls&&ls.placeable)break}else ls=$e()},de=pi.textAnchorOffsetStartIndex,Re=pi.textAnchorOffsetEndIndex;if(Re===de){let $e=(pt,vt)=>{let wt=this.collisionIndex.placeCollisionBox(pt,_t,jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja);return wt&&wt.placeable&&(this.markUsedOrientation(Se,vt,pi),this.placedOrientations[pi.crossTileID]=vt),wt};Hl(()=>$e(fu,t.ah.horizontal),()=>{let pt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&pt?$e(pt,t.ah.vertical):{box:null,offscreen:null}}),ql(ls&&ls.placeable)}else{let $e=t.aq[(Sn=(Bn=this.prevPlacement)===null||Bn===void 0?void 0:Bn.variableOffsets[pi.crossTileID])===null||Sn===void 0?void 0:Sn.anchor],pt=(wt,Jt,Rt)=>{let or=wt.x2-wt.x1,Dr=wt.y2-wt.y1,Or=pi.textBoxScale,va=Wr&&er==="never"?Jt:null,fa=null,Va=_t==="never"?1:2,Xa="never";$e&&Va++;for(let _a=0;_apt(fu,Ci.iconBox,t.ah.horizontal),()=>{let wt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&(!ls||!ls.placeable)&&pi.numVerticalGlyphVertices>0&&wt?pt(wt,Ci.verticalIconBox,t.ah.vertical):{box:null,occluded:!0,offscreen:null}}),ls&&(ho=ls.placeable,yo=ls.offscreen);let vt=ql(ls&&ls.placeable);if(!ho&&this.prevPlacement){let wt=this.prevPlacement.variableOffsets[pi.crossTileID];wt&&(this.variableOffsets[pi.crossTileID]=wt,this.markUsedJustification(Se,wt.anchor,pi,vt))}}}if(Ys=ls,ho=Ys&&Ys.placeable,yo=Ys&&Ys.offscreen,pi.useRuntimeCollisionCircles){let ql=Se.text.placedSymbolArray.get(pi.centerJustifiedTextSymbolIndex),Hl=t.ai(Se.textSizeData,Je,ql),de=De.get("text-padding");Zo=this.collisionIndex.placeCollisionCircles(_t,ql,Se.lineVertexArray,Se.glyphOffsetArray,Hl,Dt,Yt,cr,hr,we,Sr,ot.predicate,pi.collisionCircleDiameter,de,ft,Ja),Zo.circles.length&&Zo.collisionDetected&&!we&&t.w("Collisions detected, but collision boxes are not shown"),ho=Pt||Zo.circles.length>0&&!Zo.collisionDetected,yo=yo&&Zo.offscreen}if(Ci.iconFeatureIndex&&(qu=Ci.iconFeatureIndex),Ci.iconBox){let ql=Hl=>this.collisionIndex.placeCollisionBox(Hl,er,jr,Dt,Yt,Sr,pr,bt,ot.predicate,Ja,Wr&&Vo?Vo:void 0);rl&&rl.placeable&&Ci.verticalIconBox?(Go=ql(Ci.verticalIconBox),ts=Go.placeable):(Go=ql(Ci.iconBox),ts=Go.placeable),yo=yo&&Go.offscreen}let bl=ht||pi.numHorizontalGlyphVertices===0&&pi.numVerticalGlyphVertices===0,ou=At||pi.numIconVertices===0;bl||ou?ou?bl||(ts=ts&&ho):ho=ts&&ho:ts=ho=ts&&ho;let Sc=ts&&Go.placeable;if(ho&&Ys.placeable&&this.collisionIndex.insertCollisionBox(Ys.box,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,rl&&rl.placeable&&Xl?Xl:Rl,ot.ID),Sc&&this.collisionIndex.insertCollisionBox(Go.box,er,De.get("icon-ignore-placement"),Se.bucketInstanceId,qu,ot.ID),Zo&&ho&&this.collisionIndex.insertCollisionCircles(Zo.circles,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,Rl,ot.ID),we&&this.storeCollisionData(Se.bucketInstanceId,$i,Ci,Ys,Go,Zo),pi.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(Se.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[pi.crossTileID]=new Ga(ho||ga,ts||Pa,yo||Se.justReloaded),ae[pi.crossTileID]=!0};if(ha){if(R.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let pi=Se.getSortedSymbolIndexes(this.transform.angle);for(let Ci=pi.length-1;Ci>=0;--Ci){let $i=pi[Ci];di(Se.symbolInstances.get($i),Se.collisionArrays[$i],$i)}}else for(let pi=R.symbolInstanceStart;pi=0&&(R.text.placedSymbolArray.get(bt).crossTileID=De>=0&&bt!==De?0:we.crossTileID)}markUsedOrientation(R,ae,we){let Se=ae===t.ah.horizontal||ae===t.ah.horizontalOnly?ae:0,De=ae===t.ah.vertical?ae:0,ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex];for(let bt of ft)R.text.placedSymbolArray.get(bt).placedOrientation=Se;we.verticalPlacedTextSymbolIndex&&(R.text.placedSymbolArray.get(we.verticalPlacedTextSymbolIndex).placedOrientation=De)}commit(R){this.commitTime=R,this.zoomAtLastRecencyCheck=this.transform.zoom;let ae=this.prevPlacement,we=!1;this.prevZoomAdjustment=ae?ae.zoomAdjustment(this.transform.zoom):0;let Se=ae?ae.symbolFadeChange(R):1,De=ae?ae.opacities:{},ft=ae?ae.variableOffsets:{},bt=ae?ae.placedOrientations:{};for(let Dt in this.placements){let Yt=this.placements[Dt],cr=De[Dt];cr?(this.opacities[Dt]=new ka(cr,Se,Yt.text,Yt.icon),we=we||Yt.text!==cr.text.placed||Yt.icon!==cr.icon.placed):(this.opacities[Dt]=new ka(null,Se,Yt.text,Yt.icon,Yt.skipFade),we=we||Yt.text||Yt.icon)}for(let Dt in De){let Yt=De[Dt];if(!this.opacities[Dt]){let cr=new ka(Yt,Se,!1,!1);cr.isHidden()||(this.opacities[Dt]=cr,we=we||Yt.text.placed||Yt.icon.placed)}}for(let Dt in ft)this.variableOffsets[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.variableOffsets[Dt]=ft[Dt]);for(let Dt in bt)this.placedOrientations[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.placedOrientations[Dt]=bt[Dt]);if(ae&&ae.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");we?this.lastPlacementChangeTime=R:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ae?ae.lastPlacementChangeTime:R)}updateLayerOpacities(R,ae){let we={};for(let Se of ae){let De=Se.getBucket(R);De&&Se.latestFeatureIndex&&R.id===De.layerIds[0]&&this.updateBucketOpacities(De,Se.tileID,we,Se.collisionBoxArray)}}updateBucketOpacities(R,ae,we,Se){R.hasTextData()&&(R.text.opacityVertexArray.clear(),R.text.hasVisibleVertices=!1),R.hasIconData()&&(R.icon.opacityVertexArray.clear(),R.icon.hasVisibleVertices=!1),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexArray.clear(),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexArray.clear();let De=R.layers[0],ft=De.layout,bt=new ka(null,0,!1,!1,!0),Dt=ft.get("text-allow-overlap"),Yt=ft.get("icon-allow-overlap"),cr=De._unevaluatedLayout.hasValue("text-variable-anchor")||De._unevaluatedLayout.hasValue("text-variable-anchor-offset"),hr=ft.get("text-rotation-alignment")==="map",jr=ft.get("text-pitch-alignment")==="map",ea=ft.get("icon-text-fit")!=="none",qe=new ka(null,0,Dt&&(Yt||!R.hasIconData()||ft.get("icon-optional")),Yt&&(Dt||!R.hasTextData()||ft.get("text-optional")),!0);!R.collisionArrays&&Se&&(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData())&&R.deserializeCollisionBoxes(Se);let Je=(ht,At,_t)=>{for(let Pt=0;Pt0,Sr=this.placedOrientations[At.crossTileID],Wr=Sr===t.ah.vertical,ha=Sr===t.ah.horizontal||Sr===t.ah.horizontalOnly;if(_t>0||Pt>0){let Pa=qa(nr.text);Je(R.text,_t,Wr?ya:Pa),Je(R.text,Pt,ha?ya:Pa);let Ja=nr.text.isHidden();[At.rightJustifiedTextSymbolIndex,At.centerJustifiedTextSymbolIndex,At.leftJustifiedTextSymbolIndex].forEach(Ci=>{Ci>=0&&(R.text.placedSymbolArray.get(Ci).hidden=Ja||Wr?1:0)}),At.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(At.verticalPlacedTextSymbolIndex).hidden=Ja||ha?1:0);let di=this.variableOffsets[At.crossTileID];di&&this.markUsedJustification(R,di.anchor,At,Sr);let pi=this.placedOrientations[At.crossTileID];pi&&(this.markUsedJustification(R,"left",At,pi),this.markUsedOrientation(R,pi,At))}if(pr){let Pa=qa(nr.icon),Ja=!(ea&&At.verticalPlacedIconSymbolIndex&&Wr);At.placedIconSymbolIndex>=0&&(Je(R.icon,At.numIconVertices,Ja?Pa:ya),R.icon.placedSymbolArray.get(At.placedIconSymbolIndex).hidden=nr.icon.isHidden()),At.verticalPlacedIconSymbolIndex>=0&&(Je(R.icon,At.numVerticalIconVertices,Ja?ya:Pa),R.icon.placedSymbolArray.get(At.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let ga=ot&&ot.has(ht)?ot.get(ht):{text:null,icon:null};if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){let Pa=R.collisionArrays[ht];if(Pa){let Ja=new t.P(0,0);if(Pa.textBox||Pa.verticalTextBox){let di=!0;if(cr){let pi=this.variableOffsets[er];pi?(Ja=Wt(pi.anchor,pi.width,pi.height,pi.textOffset,pi.textBoxScale),hr&&Ja._rotate(jr?this.transform.angle:-this.transform.angle)):di=!1}if(Pa.textBox||Pa.verticalTextBox){let pi;Pa.textBox&&(pi=Wr),Pa.verticalTextBox&&(pi=ha),Vt(R.textCollisionBox.collisionVertexArray,nr.text.placed,!di||pi,ga.text,Ja.x,Ja.y)}}if(Pa.iconBox||Pa.verticalIconBox){let di=!!(!ha&&Pa.verticalIconBox),pi;Pa.iconBox&&(pi=di),Pa.verticalIconBox&&(pi=!di),Vt(R.iconCollisionBox.collisionVertexArray,nr.icon.placed,pi,ga.icon,ea?Ja.x:0,ea?Ja.y:0)}}}}if(R.sortFeatures(this.transform.angle),this.retainedQueryData[R.bucketInstanceId]&&(this.retainedQueryData[R.bucketInstanceId].featureSortOrder=R.featureSortOrder),R.hasTextData()&&R.text.opacityVertexBuffer&&R.text.opacityVertexBuffer.updateData(R.text.opacityVertexArray),R.hasIconData()&&R.icon.opacityVertexBuffer&&R.icon.opacityVertexBuffer.updateData(R.icon.opacityVertexArray),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexBuffer&&R.iconCollisionBox.collisionVertexBuffer.updateData(R.iconCollisionBox.collisionVertexArray),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexBuffer&&R.textCollisionBox.collisionVertexBuffer.updateData(R.textCollisionBox.collisionVertexArray),R.text.opacityVertexArray.length!==R.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${R.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${R.text.layoutVertexArray.length}) / 4`);if(R.icon.opacityVertexArray.length!==R.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${R.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${R.icon.layoutVertexArray.length}) / 4`);if(R.bucketInstanceId in this.collisionCircleArrays){let ht=this.collisionCircleArrays[R.bucketInstanceId];R.placementInvProjMatrix=ht.invProjMatrix,R.placementViewportMatrix=ht.viewportMatrix,R.collisionCircleArray=ht.circles,delete this.collisionCircleArrays[R.bucketInstanceId]}}symbolFadeChange(R){return this.fadeDuration===0?1:(R-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(R){return Math.max(0,(this.transform.zoom-R)/1.5)}hasTransitions(R){return this.stale||R-this.lastPlacementChangeTimeR}setStale(){this.stale=!0}}function Vt(Oe,R,ae,we,Se,De){we&&we.length!==0||(we=[0,0,0,0]);let ft=we[0]-sr,bt=we[1]-sr,Dt=we[2]-sr,Yt=we[3]-sr;Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,Yt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,Yt)}let Ut=Math.pow(2,25),xr=Math.pow(2,24),Zr=Math.pow(2,17),pa=Math.pow(2,16),Xr=Math.pow(2,9),Ea=Math.pow(2,8),Fa=Math.pow(2,1);function qa(Oe){if(Oe.opacity===0&&!Oe.placed)return 0;if(Oe.opacity===1&&Oe.placed)return 4294967295;let R=Oe.placed?1:0,ae=Math.floor(127*Oe.opacity);return ae*Ut+R*xr+ae*Zr+R*pa+ae*Xr+R*Ea+ae*Fa+R}let ya=0;function $a(){return{isOccluded:(Oe,R,ae)=>!1,getPitchedTextCorrection:(Oe,R,ae)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(Oe,R,ae,we){throw new Error("Not implemented.")},translatePosition:(Oe,R,ae,we)=>function(Se,De,ft,bt,Dt=!1){if(!ft[0]&&!ft[1])return[0,0];let Yt=Dt?bt==="map"?Se.angle:0:bt==="viewport"?-Se.angle:0;if(Yt){let cr=Math.sin(Yt),hr=Math.cos(Yt);ft=[ft[0]*hr-ft[1]*cr,ft[0]*cr+ft[1]*hr]}return[Dt?ft[0]:Aa(De,ft[0],Se.zoom),Dt?ft[1]:Aa(De,ft[1],Se.zoom)]}(Oe,R,ae,we),getCircleRadiusCorrection:Oe=>1}}class mt{constructor(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&!R.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(R,ae,we,Se,De){let ft=this._bucketParts;for(;this._currentTileIndexbt.sortKey-Dt.sortKey));this._currentPartIndex!this._forceFullPlacement&&i.now()-Se>2;for(;this._currentPlacementIndex>=0;){let ft=ae[R[this._currentPlacementIndex]],bt=this.placement.collisionIndex.transform.zoom;if(ft.type==="symbol"&&(!ft.minzoom||ft.minzoom<=bt)&&(!ft.maxzoom||ft.maxzoom>bt)){if(this._inProgressLayer||(this._inProgressLayer=new mt(ft)),this._inProgressLayer.continuePlacement(we[ft.source],this.placement,this._showCollisionBoxes,ft,De))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(R){return this.placement.commit(R),this.placement}}let Er=512/t.X/2;class kr{constructor(R,ae,we){this.tileID=R,this.bucketInstanceId=we,this._symbolsByKey={};let Se=new Map;for(let De=0;De({x:Math.floor(Dt.anchorX*Er),y:Math.floor(Dt.anchorY*Er)})),crossTileIDs:ft.map(Dt=>Dt.crossTileID)};if(bt.positions.length>128){let Dt=new t.av(bt.positions.length,16,Uint16Array);for(let{x:Yt,y:cr}of bt.positions)Dt.add(Yt,cr);Dt.finish(),delete bt.positions,bt.index=Dt}this._symbolsByKey[De]=bt}}getScaledCoordinates(R,ae){let{x:we,y:Se,z:De}=this.tileID.canonical,{x:ft,y:bt,z:Dt}=ae.canonical,Yt=Er/Math.pow(2,Dt-De),cr=(bt*t.X+R.anchorY)*Yt,hr=Se*t.X*Er;return{x:Math.floor((ft*t.X+R.anchorX)*Yt-we*t.X*Er),y:Math.floor(cr-hr)}}findMatches(R,ae,we){let Se=this.tileID.canonical.zR)}}class br{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Tr{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(R){let ae=Math.round((R-this.lng)/360);if(ae!==0)for(let we in this.indexes){let Se=this.indexes[we],De={};for(let ft in Se){let bt=Se[ft];bt.tileID=bt.tileID.unwrapTo(bt.tileID.wrap+ae),De[bt.tileID.key]=bt}this.indexes[we]=De}this.lng=R}addBucket(R,ae,we){if(this.indexes[R.overscaledZ]&&this.indexes[R.overscaledZ][R.key]){if(this.indexes[R.overscaledZ][R.key].bucketInstanceId===ae.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(R.overscaledZ,this.indexes[R.overscaledZ][R.key])}for(let De=0;DeR.overscaledZ)for(let bt in ft){let Dt=ft[bt];Dt.tileID.isChildOf(R)&&Dt.findMatches(ae.symbolInstances,R,Se)}else{let bt=ft[R.scaledTo(Number(De)).key];bt&&bt.findMatches(ae.symbolInstances,R,Se)}}for(let De=0;De{ae[we]=!0});for(let we in this.layerIndexes)ae[we]||delete this.layerIndexes[we]}}let Fr=(Oe,R)=>t.t(Oe,R&&R.filter(ae=>ae.identifier!=="source.canvas")),Lr=t.aw();class Jr extends t.E{constructor(R,ae={}){super(),this._rtlPluginLoaded=()=>{for(let we in this.sourceCaches){let Se=this.sourceCaches[we].getSource().type;Se!=="vector"&&Se!=="geojson"||this.sourceCaches[we].reload()}},this.map=R,this.dispatcher=new J($(),R._getMapId()),this.dispatcher.registerMessageHandler("GG",(we,Se)=>this.getGlyphs(we,Se)),this.dispatcher.registerMessageHandler("GI",(we,Se)=>this.getImages(we,Se)),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new F(R._requestManager,ae.localIdeographFontFamily),this.lineAtlas=new W(256,512),this.crossTileSymbolIndex=new Mr,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",t.ay()),tt().on(ge,this._rtlPluginLoaded),this.on("data",we=>{if(we.dataType!=="source"||we.sourceDataType!=="metadata")return;let Se=this.sourceCaches[we.sourceId];if(!Se)return;let De=Se.getSource();if(De&&De.vectorLayerIds)for(let ft in this._layers){let bt=this._layers[ft];bt.source===De.id&&this._validateLayer(bt)}})}loadURL(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),ae.validate=typeof ae.validate!="boolean"||ae.validate;let Se=this.map._requestManager.transformRequest(R,"Style");this._loadStyleRequest=new AbortController;let De=this._loadStyleRequest;t.h(Se,this._loadStyleRequest).then(ft=>{this._loadStyleRequest=null,this._load(ft.data,ae,we)}).catch(ft=>{this._loadStyleRequest=null,ft&&!De.signal.aborted&&this.fire(new t.j(ft))})}loadJSON(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,ae.validate=ae.validate!==!1,this._load(R,ae,we)}).catch(()=>{})}loadEmpty(){this.fire(new t.k("dataloading",{dataType:"style"})),this._load(Lr,{validate:!1})}_load(R,ae,we){var Se;let De=ae.transformStyle?ae.transformStyle(we,R):R;if(!ae.validate||!Fr(this,t.u(De))){this._loaded=!0,this.stylesheet=De;for(let ft in De.sources)this.addSource(ft,De.sources[ft],{validate:!1});De.sprite?this._loadSprite(De.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(De.glyphs),this._createLayers(),this.light=new I(this.stylesheet.light),this.sky=new U(this.stylesheet.sky),this.map.setTerrain((Se=this.stylesheet.terrain)!==null&&Se!==void 0?Se:null),this.fire(new t.k("data",{dataType:"style"})),this.fire(new t.k("style.load"))}}_createLayers(){let R=t.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",R),this._order=R.map(ae=>ae.id),this._layers={},this._serializedLayers=null;for(let ae of R){let we=t.aA(ae);we.setEventedParent(this,{layer:{id:ae.id}}),this._layers[ae.id]=we}}_loadSprite(R,ae=!1,we=void 0){let Se;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(De,ft,bt,Dt){return t._(this,void 0,void 0,function*(){let Yt=b(De),cr=bt>1?"@2x":"",hr={},jr={};for(let{id:ea,url:qe}of Yt){let Je=ft.transformRequest(d(qe,cr,".json"),"SpriteJSON");hr[ea]=t.h(Je,Dt);let ot=ft.transformRequest(d(qe,cr,".png"),"SpriteImage");jr[ea]=l.getImage(ot,Dt)}return yield Promise.all([...Object.values(hr),...Object.values(jr)]),function(ea,qe){return t._(this,void 0,void 0,function*(){let Je={};for(let ot in ea){Je[ot]={};let ht=i.getImageCanvasContext((yield qe[ot]).data),At=(yield ea[ot]).data;for(let _t in At){let{width:Pt,height:er,x:nr,y:pr,sdf:Sr,pixelRatio:Wr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di}=At[_t];Je[ot][_t]={data:null,pixelRatio:Wr,sdf:Sr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di,spriteData:{width:Pt,height:er,x:nr,y:pr,context:ht}}}}return Je})}(hr,jr)})}(R,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(De=>{if(this._spriteRequest=null,De)for(let ft in De){this._spritesImagesIds[ft]=[];let bt=this._spritesImagesIds[ft]?this._spritesImagesIds[ft].filter(Dt=>!(Dt in De)):[];for(let Dt of bt)this.imageManager.removeImage(Dt),this._changedImages[Dt]=!0;for(let Dt in De[ft]){let Yt=ft==="default"?Dt:`${ft}:${Dt}`;this._spritesImagesIds[ft].push(Yt),Yt in this.imageManager.images?this.imageManager.updateImage(Yt,De[ft][Dt],!1):this.imageManager.addImage(Yt,De[ft][Dt]),ae&&(this._changedImages[Yt]=!0)}}}).catch(De=>{this._spriteRequest=null,Se=De,this.fire(new t.j(Se))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),ae&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"})),we&&we(Se)})}_unloadSprite(){for(let R of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(R),this._changedImages[R]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}_validateLayer(R){let ae=this.sourceCaches[R.source];if(!ae)return;let we=R.sourceLayer;if(!we)return;let Se=ae.getSource();(Se.type==="geojson"||Se.vectorLayerIds&&Se.vectorLayerIds.indexOf(we)===-1)&&this.fire(new t.j(new Error(`Source layer "${we}" does not exist on source "${Se.id}" as specified by style layer "${R.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let R in this.sourceCaches)if(!this.sourceCaches[R].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(R,ae=!1){let we=this._serializedAllLayers();if(!R||R.length===0)return Object.values(ae?t.aB(we):we);let Se=[];for(let De of R)if(we[De]){let ft=ae?t.aB(we[De]):we[De];Se.push(ft)}return Se}_serializedAllLayers(){let R=this._serializedLayers;if(R)return R;R=this._serializedLayers={};let ae=Object.keys(this._layers);for(let we of ae){let Se=this._layers[we];Se.type!=="custom"&&(R[we]=Se.serialize())}return R}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let R in this.sourceCaches)if(this.sourceCaches[R].hasTransition())return!0;for(let R in this._layers)if(this._layers[R].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(R){if(!this._loaded)return;let ae=this._changed;if(ae){let Se=Object.keys(this._updatedLayers),De=Object.keys(this._removedLayers);(Se.length||De.length)&&this._updateWorkerLayers(Se,De);for(let ft in this._updatedSources){let bt=this._updatedSources[ft];if(bt==="reload")this._reloadSource(ft);else{if(bt!=="clear")throw new Error(`Invalid action ${bt}`);this._clearSource(ft)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let ft in this._updatedPaintProps)this._layers[ft].updateTransitions(R);this.light.updateTransitions(R),this.sky.updateTransitions(R),this._resetUpdates()}let we={};for(let Se in this.sourceCaches){let De=this.sourceCaches[Se];we[Se]=De.used,De.used=!1}for(let Se of this._order){let De=this._layers[Se];De.recalculate(R,this._availableImages),!De.isHidden(R.zoom)&&De.source&&(this.sourceCaches[De.source].used=!0)}for(let Se in we){let De=this.sourceCaches[Se];!!we[Se]!=!!De.used&&De.fire(new t.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:Se}))}this.light.recalculate(R),this.sky.recalculate(R),this.z=R.zoom,ae&&this.fire(new t.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let R=Object.keys(this._changedImages);if(R.length){for(let ae in this.sourceCaches)this.sourceCaches[ae].reloadTilesForDependencies(["icons","patterns"],R);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let R in this.sourceCaches)this.sourceCaches[R].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(R,ae){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(R,!1),removedIds:ae})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(R,ae={}){var we;this._checkLoaded();let Se=this.serialize();if(R=ae.transformStyle?ae.transformStyle(Se,R):R,((we=ae.validate)===null||we===void 0||we)&&Fr(this,t.u(R)))return!1;(R=t.aB(R)).layers=t.az(R.layers);let De=t.aC(Se,R),ft=this._getOperationsToPerform(De);if(ft.unimplemented.length>0)throw new Error(`Unimplemented: ${ft.unimplemented.join(", ")}.`);if(ft.operations.length===0)return!1;for(let bt of ft.operations)bt();return this.stylesheet=R,this._serializedLayers=null,!0}_getOperationsToPerform(R){let ae=[],we=[];for(let Se of R)switch(Se.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":ae.push(()=>this.addLayer.apply(this,Se.args));break;case"removeLayer":ae.push(()=>this.removeLayer.apply(this,Se.args));break;case"setPaintProperty":ae.push(()=>this.setPaintProperty.apply(this,Se.args));break;case"setLayoutProperty":ae.push(()=>this.setLayoutProperty.apply(this,Se.args));break;case"setFilter":ae.push(()=>this.setFilter.apply(this,Se.args));break;case"addSource":ae.push(()=>this.addSource.apply(this,Se.args));break;case"removeSource":ae.push(()=>this.removeSource.apply(this,Se.args));break;case"setLayerZoomRange":ae.push(()=>this.setLayerZoomRange.apply(this,Se.args));break;case"setLight":ae.push(()=>this.setLight.apply(this,Se.args));break;case"setGeoJSONSourceData":ae.push(()=>this.setGeoJSONSourceData.apply(this,Se.args));break;case"setGlyphs":ae.push(()=>this.setGlyphs.apply(this,Se.args));break;case"setSprite":ae.push(()=>this.setSprite.apply(this,Se.args));break;case"setSky":ae.push(()=>this.setSky.apply(this,Se.args));break;case"setTerrain":ae.push(()=>this.map.setTerrain.apply(this,Se.args));break;case"setTransition":ae.push(()=>{});break;default:we.push(Se.command)}return{operations:ae,unimplemented:we}}addImage(R,ae){if(this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" already exists.`)));this.imageManager.addImage(R,ae),this._afterImageUpdated(R)}updateImage(R,ae){this.imageManager.updateImage(R,ae)}getImage(R){return this.imageManager.getImage(R)}removeImage(R){if(!this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" does not exist.`)));this.imageManager.removeImage(R),this._afterImageUpdated(R)}_afterImageUpdated(R){this._availableImages=this.imageManager.listImages(),this._changedImages[R]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(R,ae,we={}){if(this._checkLoaded(),this.sourceCaches[R]!==void 0)throw new Error(`Source "${R}" already exists.`);if(!ae.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(ae).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(ae.type)>=0&&this._validate(t.u.source,`sources.${R}`,ae,null,we))return;this.map&&this.map._collectResourceTiming&&(ae.collectResourceTiming=!0);let Se=this.sourceCaches[R]=new St(R,ae,this.dispatcher);Se.style=this,Se.setEventedParent(this,()=>({isSourceLoaded:Se.loaded(),source:Se.serialize(),sourceId:R})),Se.onAdd(this.map),this._changed=!0}removeSource(R){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error("There is no source with this ID");for(let we in this._layers)if(this._layers[we].source===R)return this.fire(new t.j(new Error(`Source "${R}" cannot be removed while layer "${we}" is using it.`)));let ae=this.sourceCaches[R];delete this.sourceCaches[R],delete this._updatedSources[R],ae.fire(new t.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:R})),ae.setEventedParent(null),ae.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(R,ae){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error(`There is no source with this ID=${R}`);let we=this.sourceCaches[R].getSource();if(we.type!=="geojson")throw new Error(`geojsonSource.type is ${we.type}, which is !== 'geojson`);we.setData(ae),this._changed=!0}getSource(R){return this.sourceCaches[R]&&this.sourceCaches[R].getSource()}addLayer(R,ae,we={}){this._checkLoaded();let Se=R.id;if(this.getLayer(Se))return void this.fire(new t.j(new Error(`Layer "${Se}" already exists on this map.`)));let De;if(R.type==="custom"){if(Fr(this,t.aD(R)))return;De=t.aA(R)}else{if("source"in R&&typeof R.source=="object"&&(this.addSource(Se,R.source),R=t.aB(R),R=t.e(R,{source:Se})),this._validate(t.u.layer,`layers.${Se}`,R,{arrayIndex:-1},we))return;De=t.aA(R),this._validateLayer(De),De.setEventedParent(this,{layer:{id:Se}})}let ft=ae?this._order.indexOf(ae):this._order.length;if(ae&&ft===-1)this.fire(new t.j(new Error(`Cannot add layer "${Se}" before non-existing layer "${ae}".`)));else{if(this._order.splice(ft,0,Se),this._layerOrderChanged=!0,this._layers[Se]=De,this._removedLayers[Se]&&De.source&&De.type!=="custom"){let bt=this._removedLayers[Se];delete this._removedLayers[Se],bt.type!==De.type?this._updatedSources[De.source]="clear":(this._updatedSources[De.source]="reload",this.sourceCaches[De.source].pause())}this._updateLayer(De),De.onAdd&&De.onAdd(this.map)}}moveLayer(R,ae){if(this._checkLoaded(),this._changed=!0,!this._layers[R])return void this.fire(new t.j(new Error(`The layer '${R}' does not exist in the map's style and cannot be moved.`)));if(R===ae)return;let we=this._order.indexOf(R);this._order.splice(we,1);let Se=ae?this._order.indexOf(ae):this._order.length;ae&&Se===-1?this.fire(new t.j(new Error(`Cannot move layer "${R}" before non-existing layer "${ae}".`))):(this._order.splice(Se,0,R),this._layerOrderChanged=!0)}removeLayer(R){this._checkLoaded();let ae=this._layers[R];if(!ae)return void this.fire(new t.j(new Error(`Cannot remove non-existing layer "${R}".`)));ae.setEventedParent(null);let we=this._order.indexOf(R);this._order.splice(we,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[R]=ae,delete this._layers[R],this._serializedLayers&&delete this._serializedLayers[R],delete this._updatedLayers[R],delete this._updatedPaintProps[R],ae.onRemove&&ae.onRemove(this.map)}getLayer(R){return this._layers[R]}getLayersOrder(){return[...this._order]}hasLayer(R){return R in this._layers}setLayerZoomRange(R,ae,we){this._checkLoaded();let Se=this.getLayer(R);Se?Se.minzoom===ae&&Se.maxzoom===we||(ae!=null&&(Se.minzoom=ae),we!=null&&(Se.maxzoom=we),this._updateLayer(Se)):this.fire(new t.j(new Error(`Cannot set the zoom range of non-existing layer "${R}".`)))}setFilter(R,ae,we={}){this._checkLoaded();let Se=this.getLayer(R);if(Se){if(!t.aE(Se.filter,ae))return ae==null?(Se.filter=void 0,void this._updateLayer(Se)):void(this._validate(t.u.filter,`layers.${Se.id}.filter`,ae,null,we)||(Se.filter=t.aB(ae),this._updateLayer(Se)))}else this.fire(new t.j(new Error(`Cannot filter non-existing layer "${R}".`)))}getFilter(R){return t.aB(this.getLayer(R).filter)}setLayoutProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getLayoutProperty(ae),we)||(De.setLayoutProperty(ae,we,Se),this._updateLayer(De)):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getLayoutProperty(R,ae){let we=this.getLayer(R);if(we)return we.getLayoutProperty(ae);this.fire(new t.j(new Error(`Cannot get style of non-existing layer "${R}".`)))}setPaintProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getPaintProperty(ae),we)||(De.setPaintProperty(ae,we,Se)&&this._updateLayer(De),this._changed=!0,this._updatedPaintProps[R]=!0,this._serializedLayers=null):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getPaintProperty(R,ae){return this.getLayer(R).getPaintProperty(ae)}setFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=R.sourceLayer,De=this.sourceCaches[we];if(De===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let ft=De.getSource().type;ft==="geojson"&&Se?this.fire(new t.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ft!=="vector"||Se?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),De.setFeatureState(Se,R.id,ae)):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=this.sourceCaches[we];if(Se===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let De=Se.getSource().type,ft=De==="vector"?R.sourceLayer:void 0;De!=="vector"||ft?ae&&typeof R.id!="string"&&typeof R.id!="number"?this.fire(new t.j(new Error("A feature id is required to remove its specific state property."))):Se.removeFeatureState(ft,R.id,ae):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(R){this._checkLoaded();let ae=R.source,we=R.sourceLayer,Se=this.sourceCaches[ae];if(Se!==void 0)return Se.getSource().type!=="vector"||we?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),Se.getFeatureState(we,R.id)):void this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.j(new Error(`The source '${ae}' does not exist in the map's style.`)))}getTransition(){return t.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let R=t.aF(this.sourceCaches,De=>De.serialize()),ae=this._serializeByIds(this._order,!0),we=this.map.getTerrain()||void 0,Se=this.stylesheet;return t.aG({version:Se.version,name:Se.name,metadata:Se.metadata,light:Se.light,sky:Se.sky,center:Se.center,zoom:Se.zoom,bearing:Se.bearing,pitch:Se.pitch,sprite:Se.sprite,glyphs:Se.glyphs,transition:Se.transition,sources:R,layers:ae,terrain:we},De=>De!==void 0)}_updateLayer(R){this._updatedLayers[R.id]=!0,R.source&&!this._updatedSources[R.source]&&this.sourceCaches[R.source].getSource().type!=="raster"&&(this._updatedSources[R.source]="reload",this.sourceCaches[R.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(R){let ae=ft=>this._layers[ft].type==="fill-extrusion",we={},Se=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt)){we[bt]=ft;for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)Se.push(cr)}}}Se.sort((ft,bt)=>bt.intersectionZ-ft.intersectionZ);let De=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt))for(let Dt=Se.length-1;Dt>=0;Dt--){let Yt=Se[Dt].feature;if(we[Yt.layer.id]{let Sr=ht.featureSortOrder;if(Sr){let Wr=Sr.indexOf(nr.featureIndex);return Sr.indexOf(pr.featureIndex)-Wr}return pr.featureIndex-nr.featureIndex});for(let nr of er)Pt.push(nr)}}for(let ht in qe)qe[ht].forEach(At=>{let _t=At.feature,Pt=Yt[bt[ht].source].getFeatureState(_t.layer["source-layer"],_t.id);_t.source=_t.layer.source,_t.layer["source-layer"]&&(_t.sourceLayer=_t.layer["source-layer"]),_t.state=Pt});return qe}(this._layers,ft,this.sourceCaches,R,ae,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(De)}querySourceFeatures(R,ae){ae&&ae.filter&&this._validate(t.u.filter,"querySourceFeatures.filter",ae.filter,null,ae);let we=this.sourceCaches[R];return we?function(Se,De){let ft=Se.getRenderableIds().map(Yt=>Se.getTileByID(Yt)),bt=[],Dt={};for(let Yt=0;Ytjr.getTileByID(ea)).sort((ea,qe)=>qe.tileID.overscaledZ-ea.tileID.overscaledZ||(ea.tileID.isLessThan(qe.tileID)?-1:1))}let hr=this.crossTileSymbolIndex.addLayer(cr,Dt[cr.source],R.center.lng);ft=ft||hr}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((De=De||this._layerOrderChanged||we===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.now(),R.zoom))&&(this.pauseablePlacement=new gt(R,this.map.terrain,this._order,De,ae,we,Se,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Dt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.now()),bt=!0),ft&&this.pauseablePlacement.placement.setStale()),bt||ft)for(let Yt of this._order){let cr=this._layers[Yt];cr.type==="symbol"&&this.placement.updateLayerOpacities(cr,Dt[cr.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.now())}_releaseSymbolFadeTiles(){for(let R in this.sourceCaches)this.sourceCaches[R].releaseSymbolFadeTiles()}getImages(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.imageManager.getImages(ae.icons);this._updateTilesForChangedImages();let Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,ae.icons),we})}getGlyphs(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.glyphManager.getGlyphs(ae.stacks),Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,[""]),we})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(R,ae={}){this._checkLoaded(),R&&this._validate(t.u.glyphs,"glyphs",R,null,ae)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=R,this.glyphManager.entries={},this.glyphManager.setURL(R))}addSprite(R,ae,we={},Se){this._checkLoaded();let De=[{id:R,url:ae}],ft=[...b(this.stylesheet.sprite),...De];this._validate(t.u.sprite,"sprite",ft,null,we)||(this.stylesheet.sprite=ft,this._loadSprite(De,!0,Se))}removeSprite(R){this._checkLoaded();let ae=b(this.stylesheet.sprite);if(ae.find(we=>we.id===R)){if(this._spritesImagesIds[R])for(let we of this._spritesImagesIds[R])this.imageManager.removeImage(we),this._changedImages[we]=!0;ae.splice(ae.findIndex(we=>we.id===R),1),this.stylesheet.sprite=ae.length>0?ae:void 0,delete this._spritesImagesIds[R],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}else this.fire(new t.j(new Error(`Sprite "${R}" doesn't exists on this map.`)))}getSprite(){return b(this.stylesheet.sprite)}setSprite(R,ae={},we){this._checkLoaded(),R&&this._validate(t.u.sprite,"sprite",R,null,ae)||(this.stylesheet.sprite=R,R?this._loadSprite(R,!0,we):(this._unloadSprite(),we&&we(null)))}}var oa=t.Y([{name:"a_pos",type:"Int16",components:2}]);let ca={prelude:kt(`#ifdef GL_ES +precision mediump float; +#else +#if !defined(lowp) +#define lowp +#endif +#if !defined(mediump) +#define mediump +#endif +#if !defined(highp) +#define highp +#endif +#endif +`,`#ifdef GL_ES +precision highp float; +#else +#if !defined(lowp) +#define lowp +#endif +#if !defined(mediump) +#define mediump +#endif +#if !defined(highp) +#define highp +#endif +#endif +vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0 +);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;} +#ifdef TERRAIN3D +uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth; +#endif +const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) { +#ifdef TERRAIN3D +highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0)); +#else +return 1.0; +#endif +}float calculate_visibility(vec4 pos) { +#ifdef TERRAIN3D +vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0; +#else +return 1.0; +#endif +}float ele(vec2 pos) { +#ifdef TERRAIN3D +vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a; +#else +return 0.0; +#endif +}float get_elevation(vec2 pos) { +#ifdef TERRAIN3D +vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration; +#else +return 0.0; +#endif +}`),background:kt(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:kt(`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:kt(`varying vec3 v_data;varying float v_visibility; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define mediump float radius +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define highp vec4 stroke_color +#pragma mapbox: define mediump float stroke_width +#pragma mapbox: define lowp float stroke_opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize mediump float radius +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize highp vec4 stroke_color +#pragma mapbox: initialize mediump float stroke_width +#pragma mapbox: initialize lowp float stroke_opacity +vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define mediump float radius +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define highp vec4 stroke_color +#pragma mapbox: define mediump float stroke_width +#pragma mapbox: define lowp float stroke_opacity +void main(void) { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize mediump float radius +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize highp vec4 stroke_color +#pragma mapbox: initialize mediump float stroke_width +#pragma mapbox: initialize lowp float stroke_opacity +vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:kt("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:kt(`uniform highp float u_intensity;varying vec2 v_extrude; +#pragma mapbox: define highp float weight +#define GAUSS_COEF 0.3989422804014327 +void main() { +#pragma mapbox: initialize highp float weight +float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude; +#pragma mapbox: define highp float weight +#pragma mapbox: define mediump float radius +const highp float ZERO=1.0/255.0/16.0; +#define GAUSS_COEF 0.3989422804014327 +void main(void) { +#pragma mapbox: initialize highp float weight +#pragma mapbox: initialize mediump float radius +vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:kt(`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(0.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:kt("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:kt("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:kt("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:kt(`#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float opacity +gl_FragColor=color*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec2 a_pos;uniform mat4 u_matrix; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float opacity +gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:kt(`varying vec2 v_pos; +#pragma mapbox: define highp vec4 outline_color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 outline_color +#pragma mapbox: initialize lowp float opacity +float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos; +#pragma mapbox: define highp vec4 outline_color +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 outline_color +#pragma mapbox: initialize lowp float opacity +gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:kt(`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillPattern:kt(`#ifdef GL_ES +precision highp float; +#endif +uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b; +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`),fillExtrusion:kt(`varying vec4 v_color;void main() {gl_FragColor=v_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed; +#ifdef TERRAIN3D +attribute vec2 a_centroid; +#endif +varying vec4 v_color; +#pragma mapbox: define highp float base +#pragma mapbox: define highp float height +#pragma mapbox: define highp vec4 color +void main() { +#pragma mapbox: initialize highp float base +#pragma mapbox: initialize highp float height +#pragma mapbox: initialize highp vec4 color +vec3 normal=a_normal_ed.xyz; +#ifdef TERRAIN3D +float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0); +#else +float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0; +#endif +base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`),fillExtrusionPattern:kt(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed; +#ifdef TERRAIN3D +attribute vec2 a_centroid; +#endif +varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting; +#pragma mapbox: define lowp float base +#pragma mapbox: define lowp float height +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float base +#pragma mapbox: initialize lowp float height +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to; +#ifdef TERRAIN3D +float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0); +#else +float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0; +#endif +base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0 +? a_pos +: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`),hillshadePrepare:kt(`#ifdef GL_ES +precision highp float; +#endif +uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:kt(`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent; +#define PI 3.141592653589793 +void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:kt(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_width2=vec2(outset,inset);}`),lineGradient:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_width2=vec2(outset,inset);}`),linePattern:kt(`#ifdef GL_ES +precision highp float; +#endif +uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width; +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +#pragma mapbox: define lowp vec4 pattern_from +#pragma mapbox: define lowp vec4 pattern_to +#pragma mapbox: define lowp float pixel_ratio_from +#pragma mapbox: define lowp float pixel_ratio_to +void main() { +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +#pragma mapbox: initialize mediump vec4 pattern_from +#pragma mapbox: initialize mediump vec4 pattern_to +#pragma mapbox: initialize lowp float pixel_ratio_from +#pragma mapbox: initialize lowp float pixel_ratio_to +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,` +#define scale 0.015873016 +#define LINE_DISTANCE_SCALE 2.0 +attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale; +#pragma mapbox: define highp vec4 color +#pragma mapbox: define lowp float blur +#pragma mapbox: define lowp float opacity +#pragma mapbox: define mediump float gapwidth +#pragma mapbox: define lowp float offset +#pragma mapbox: define mediump float width +#pragma mapbox: define lowp float floorwidth +void main() { +#pragma mapbox: initialize highp vec4 color +#pragma mapbox: initialize lowp float blur +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize mediump float gapwidth +#pragma mapbox: initialize lowp float offset +#pragma mapbox: initialize mediump float width +#pragma mapbox: initialize lowp float floorwidth +float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude; +#ifdef TERRAIN3D +v_gamma_scale=1.0; +#else +float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective; +#endif +v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`),raster:kt(`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:kt(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity; +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define lowp float opacity +void main() { +#pragma mapbox: initialize lowp float opacity +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:kt(`#define SDF_PX 8.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:kt(`#define SDF_PX 8.0 +#define SDF 1.0 +#define ICON 0.0 +uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1; +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha; +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity); +#ifdef OVERDRAW_INSPECTOR +gl_FragColor=vec4(1.0); +#endif +}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);} +#pragma mapbox: define highp vec4 fill_color +#pragma mapbox: define highp vec4 halo_color +#pragma mapbox: define lowp float opacity +#pragma mapbox: define lowp float halo_width +#pragma mapbox: define lowp float halo_blur +void main() { +#pragma mapbox: initialize highp vec4 fill_color +#pragma mapbox: initialize highp vec4 halo_color +#pragma mapbox: initialize lowp float opacity +#pragma mapbox: initialize lowp float halo_width +#pragma mapbox: initialize lowp float halo_blur +vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ? +camera_to_anchor_distance/u_camera_to_center_distance : +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`),terrain:kt("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:kt("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:kt("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:kt("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function kt(Oe,R){let ae=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,we=R.match(/attribute ([\w]+) ([\w]+)/g),Se=Oe.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),De=R.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ft=De?De.concat(Se):Se,bt={};return{fragmentSource:Oe=Oe.replace(ae,(Dt,Yt,cr,hr,jr)=>(bt[jr]=!0,Yt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +varying ${cr} ${hr} ${jr}; +#else +uniform ${cr} ${hr} u_${jr}; +#endif +`:` +#ifdef HAS_UNIFORM_u_${jr} + ${cr} ${hr} ${jr} = u_${jr}; +#endif +`)),vertexSource:R=R.replace(ae,(Dt,Yt,cr,hr,jr)=>{let ea=hr==="float"?"vec2":"vec4",qe=jr.match(/color/)?"color":ea;return bt[jr]?Yt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +uniform lowp float u_${jr}_t; +attribute ${cr} ${ea} a_${jr}; +varying ${cr} ${hr} ${jr}; +#else +uniform ${cr} ${hr} u_${jr}; +#endif +`:qe==="vec4"?` +#ifndef HAS_UNIFORM_u_${jr} + ${jr} = a_${jr}; +#else + ${cr} ${hr} ${jr} = u_${jr}; +#endif +`:` +#ifndef HAS_UNIFORM_u_${jr} + ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t); +#else + ${cr} ${hr} ${jr} = u_${jr}; +#endif +`:Yt==="define"?` +#ifndef HAS_UNIFORM_u_${jr} +uniform lowp float u_${jr}_t; +attribute ${cr} ${ea} a_${jr}; +#else +uniform ${cr} ${hr} u_${jr}; +#endif +`:qe==="vec4"?` +#ifndef HAS_UNIFORM_u_${jr} + ${cr} ${hr} ${jr} = a_${jr}; +#else + ${cr} ${hr} ${jr} = u_${jr}; +#endif +`:` +#ifndef HAS_UNIFORM_u_${jr} + ${cr} ${hr} ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t); +#else + ${cr} ${hr} ${jr} = u_${jr}; +#endif +`}),staticAttributes:we,staticUniforms:ft}}class ir{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(R,ae,we,Se,De,ft,bt,Dt,Yt){this.context=R;let cr=this.boundPaintVertexBuffers.length!==Se.length;for(let hr=0;!cr&&hr({u_matrix:Oe,u_texture:0,u_ele_delta:R,u_fog_matrix:ae,u_fog_color:we?we.properties.get("fog-color"):t.aM.white,u_fog_ground_blend:we?we.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:we?we.calculateFogBlendOpacity(Se):0,u_horizon_color:we?we.properties.get("horizon-color"):t.aM.white,u_horizon_fog_blend:we?we.properties.get("horizon-fog-blend"):1});function $r(Oe){let R=[];for(let ae=0;ae({u_depth:new t.aH(nr,pr.u_depth),u_terrain:new t.aH(nr,pr.u_terrain),u_terrain_dim:new t.aI(nr,pr.u_terrain_dim),u_terrain_matrix:new t.aJ(nr,pr.u_terrain_matrix),u_terrain_unpack:new t.aK(nr,pr.u_terrain_unpack),u_terrain_exaggeration:new t.aI(nr,pr.u_terrain_exaggeration)}))(R,er),this.binderUniforms=we?we.getUniforms(R,er):[]}draw(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At){let _t=R.gl;if(this.failedToCreate)return;if(R.program.set(this.program),R.setDepthMode(we),R.setStencilMode(Se),R.setColorMode(De),R.setCullFace(ft),Dt){R.activeTexture.set(_t.TEXTURE2),_t.bindTexture(_t.TEXTURE_2D,Dt.depthTexture),R.activeTexture.set(_t.TEXTURE3),_t.bindTexture(_t.TEXTURE_2D,Dt.texture);for(let er in this.terrainUniforms)this.terrainUniforms[er].set(Dt[er])}for(let er in this.fixedUniforms)this.fixedUniforms[er].set(bt[er]);Je&&Je.setUniforms(R,this.binderUniforms,ea,{zoom:qe});let Pt=0;switch(ae){case _t.LINES:Pt=2;break;case _t.TRIANGLES:Pt=3;break;case _t.LINE_STRIP:Pt=1}for(let er of jr.get()){let nr=er.vaos||(er.vaos={});(nr[Yt]||(nr[Yt]=new ir)).bind(R,this,cr,Je?Je.getPaintVertexBuffers():[],hr,er.vertexOffset,ot,ht,At),_t.drawElements(ae,er.primitiveLength*Pt,_t.UNSIGNED_SHORT,er.primitiveOffset*Pt*2)}}}function Ba(Oe,R,ae){let we=1/Aa(ae,1,R.transform.tileZoom),Se=Math.pow(2,ae.tileID.overscaledZ),De=ae.tileSize*Math.pow(2,R.transform.tileZoom)/Se,ft=De*(ae.tileID.canonical.x+ae.tileID.wrap*Se),bt=De*ae.tileID.canonical.y;return{u_image:0,u_texsize:ae.imageAtlasTexture.size,u_scale:[we,Oe.fromScale,Oe.toScale],u_fade:Oe.t,u_pixel_coord_upper:[ft>>16,bt>>16],u_pixel_coord_lower:[65535&ft,65535&bt]}}let Ca=(Oe,R,ae,we)=>{let Se=R.style.light,De=Se.properties.get("position"),ft=[De.x,De.y,De.z],bt=function(){var Yt=new t.A(9);return t.A!=Float32Array&&(Yt[1]=0,Yt[2]=0,Yt[3]=0,Yt[5]=0,Yt[6]=0,Yt[7]=0),Yt[0]=1,Yt[4]=1,Yt[8]=1,Yt}();Se.properties.get("anchor")==="viewport"&&function(Yt,cr){var hr=Math.sin(cr),jr=Math.cos(cr);Yt[0]=jr,Yt[1]=hr,Yt[2]=0,Yt[3]=-hr,Yt[4]=jr,Yt[5]=0,Yt[6]=0,Yt[7]=0,Yt[8]=1}(bt,-R.transform.angle),function(Yt,cr,hr){var jr=cr[0],ea=cr[1],qe=cr[2];Yt[0]=jr*hr[0]+ea*hr[3]+qe*hr[6],Yt[1]=jr*hr[1]+ea*hr[4]+qe*hr[7],Yt[2]=jr*hr[2]+ea*hr[5]+qe*hr[8]}(ft,ft,bt);let Dt=Se.properties.get("color");return{u_matrix:Oe,u_lightpos:ft,u_lightintensity:Se.properties.get("intensity"),u_lightcolor:[Dt.r,Dt.g,Dt.b],u_vertical_gradient:+ae,u_opacity:we}},da=(Oe,R,ae,we,Se,De,ft)=>t.e(Ca(Oe,R,ae,we),Ba(De,R,ft),{u_height_factor:-Math.pow(2,Se.overscaledZ)/ft.tileSize/8}),Sa=Oe=>({u_matrix:Oe}),Ti=(Oe,R,ae,we)=>t.e(Sa(Oe),Ba(ae,R,we)),ai=(Oe,R)=>({u_matrix:Oe,u_world:R}),an=(Oe,R,ae,we,Se)=>t.e(Ti(Oe,R,ae,we),{u_world:Se}),sn=(Oe,R,ae,we)=>{let Se=Oe.transform,De,ft;if(we.paint.get("circle-pitch-alignment")==="map"){let bt=Aa(ae,1,Se.zoom);De=!0,ft=[bt,bt]}else De=!1,ft=Se.pixelsToGLUnits;return{u_camera_to_center_distance:Se.cameraToCenterDistance,u_scale_with_map:+(we.paint.get("circle-pitch-scale")==="map"),u_matrix:Oe.translatePosMatrix(R.posMatrix,ae,we.paint.get("circle-translate"),we.paint.get("circle-translate-anchor")),u_pitch_with_map:+De,u_device_pixel_ratio:Oe.pixelRatio,u_extrude_scale:ft}},Mn=(Oe,R,ae)=>({u_matrix:Oe,u_inv_matrix:R,u_camera_to_center_distance:ae.cameraToCenterDistance,u_viewport_size:[ae.width,ae.height]}),On=(Oe,R,ae=1)=>({u_matrix:Oe,u_color:R,u_overlay:0,u_overlay_scale:ae}),$n=Oe=>({u_matrix:Oe}),Cn=(Oe,R,ae,we)=>({u_matrix:Oe,u_extrude_scale:Aa(R,1,ae),u_intensity:we}),Lo=(Oe,R,ae,we)=>{let Se=t.H();t.aP(Se,0,Oe.width,Oe.height,0,0,1);let De=Oe.context.gl;return{u_matrix:Se,u_world:[De.drawingBufferWidth,De.drawingBufferHeight],u_image:ae,u_color_ramp:we,u_opacity:R.paint.get("heatmap-opacity")}};function Xi(Oe,R){let ae=Math.pow(2,R.canonical.z),we=R.canonical.y;return[new t.Z(0,we/ae).toLngLat().lat,new t.Z(0,(we+1)/ae).toLngLat().lat]}let Jo=(Oe,R,ae,we)=>{let Se=Oe.transform;return{u_matrix:In(Oe,R,ae,we),u_ratio:1/Aa(R,1,Se.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_units_to_pixels:[1/Se.pixelsToGLUnits[0],1/Se.pixelsToGLUnits[1]]}},zo=(Oe,R,ae,we,Se)=>t.e(Jo(Oe,R,ae,Se),{u_image:0,u_image_height:we}),as=(Oe,R,ae,we,Se)=>{let De=Oe.transform,ft=go(R,De);return{u_matrix:In(Oe,R,ae,Se),u_texsize:R.imageAtlasTexture.size,u_ratio:1/Aa(R,1,De.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_image:0,u_scale:[ft,we.fromScale,we.toScale],u_fade:we.t,u_units_to_pixels:[1/De.pixelsToGLUnits[0],1/De.pixelsToGLUnits[1]]}},Pn=(Oe,R,ae,we,Se,De)=>{let ft=Oe.lineAtlas,bt=go(R,Oe.transform),Dt=ae.layout.get("line-cap")==="round",Yt=ft.getDash(we.from,Dt),cr=ft.getDash(we.to,Dt),hr=Yt.width*Se.fromScale,jr=cr.width*Se.toScale;return t.e(Jo(Oe,R,ae,De),{u_patternscale_a:[bt/hr,-Yt.height/2],u_patternscale_b:[bt/jr,-cr.height/2],u_sdfgamma:ft.width/(256*Math.min(hr,jr)*Oe.pixelRatio)/2,u_image:0,u_tex_y_a:Yt.y,u_tex_y_b:cr.y,u_mix:Se.t})};function go(Oe,R){return 1/Aa(Oe,1,R.tileZoom)}function In(Oe,R,ae,we){return Oe.translatePosMatrix(we?we.posMatrix:R.tileID.posMatrix,R,ae.paint.get("line-translate"),ae.paint.get("line-translate-anchor"))}let Do=(Oe,R,ae,we,Se)=>{return{u_matrix:Oe,u_tl_parent:R,u_scale_parent:ae,u_buffer_scale:1,u_fade_t:we.mix,u_opacity:we.opacity*Se.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:Se.paint.get("raster-brightness-min"),u_brightness_high:Se.paint.get("raster-brightness-max"),u_saturation_factor:(ft=Se.paint.get("raster-saturation"),ft>0?1-1/(1.001-ft):-ft),u_contrast_factor:(De=Se.paint.get("raster-contrast"),De>0?1/(1-De):1+De),u_spin_weights:Ho(Se.paint.get("raster-hue-rotate"))};var De,ft};function Ho(Oe){Oe*=Math.PI/180;let R=Math.sin(Oe),ae=Math.cos(Oe);return[(2*ae+1)/3,(-Math.sqrt(3)*R-ae+1)/3,(Math.sqrt(3)*R-ae+1)/3]}let Qo=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>{let qe=ft.transform;return{u_is_size_zoom_constant:+(Oe==="constant"||Oe==="source"),u_is_size_feature_constant:+(Oe==="constant"||Oe==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:qe.cameraToCenterDistance,u_pitch:qe.pitch/360*2*Math.PI,u_rotate_symbol:+ae,u_aspect_ratio:qe.width/qe.height,u_fade_change:ft.options.fadeDuration?ft.symbolFadeChange:1,u_matrix:bt,u_label_plane_matrix:Dt,u_coord_matrix:Yt,u_is_text:+hr,u_pitch_with_map:+we,u_is_along_line:Se,u_is_variable_anchor:De,u_texsize:jr,u_texture:0,u_translation:cr,u_pitched_scale:ea}},Xn=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe)=>{let Je=ft.transform;return t.e(Qo(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,qe),{u_gamma_scale:we?Math.cos(Je._pitch)*Je.cameraToCenterDistance:1,u_device_pixel_ratio:ft.pixelRatio,u_is_halo:+ea})},po=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>t.e(Xn(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,!0,hr,!0,ea),{u_texsize_icon:jr,u_texture_icon:1}),ys=(Oe,R,ae)=>({u_matrix:Oe,u_opacity:R,u_color:ae}),Is=(Oe,R,ae,we,Se,De)=>t.e(function(ft,bt,Dt,Yt){let cr=Dt.imageManager.getPattern(ft.from.toString()),hr=Dt.imageManager.getPattern(ft.to.toString()),{width:jr,height:ea}=Dt.imageManager.getPixelSize(),qe=Math.pow(2,Yt.tileID.overscaledZ),Je=Yt.tileSize*Math.pow(2,Dt.transform.tileZoom)/qe,ot=Je*(Yt.tileID.canonical.x+Yt.tileID.wrap*qe),ht=Je*Yt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:cr.tl,u_pattern_br_a:cr.br,u_pattern_tl_b:hr.tl,u_pattern_br_b:hr.br,u_texsize:[jr,ea],u_mix:bt.t,u_pattern_size_a:cr.displaySize,u_pattern_size_b:hr.displaySize,u_scale_a:bt.fromScale,u_scale_b:bt.toScale,u_tile_units_to_pixels:1/Aa(Yt,1,Dt.transform.tileZoom),u_pixel_coord_upper:[ot>>16,ht>>16],u_pixel_coord_lower:[65535&ot,65535&ht]}}(we,De,ae,Se),{u_matrix:Oe,u_opacity:R}),Fs={fillExtrusion:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_opacity:new t.aI(Oe,R.u_opacity)}),fillExtrusionPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_height_factor:new t.aI(Oe,R.u_height_factor),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade),u_opacity:new t.aI(Oe,R.u_opacity)}),fill:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),fillPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),fillOutline:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world)}),fillOutlinePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),circle:(Oe,R)=>({u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_scale_with_map:new t.aH(Oe,R.u_scale_with_map),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_extrude_scale:new t.aO(Oe,R.u_extrude_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_matrix:new t.aJ(Oe,R.u_matrix)}),collisionBox:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_pixel_extrude_scale:new t.aO(Oe,R.u_pixel_extrude_scale)}),collisionCircle:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_inv_matrix:new t.aJ(Oe,R.u_inv_matrix),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_viewport_size:new t.aO(Oe,R.u_viewport_size)}),debug:(Oe,R)=>({u_color:new t.aL(Oe,R.u_color),u_matrix:new t.aJ(Oe,R.u_matrix),u_overlay:new t.aH(Oe,R.u_overlay),u_overlay_scale:new t.aI(Oe,R.u_overlay_scale)}),clippingMask:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmap:(Oe,R)=>({u_extrude_scale:new t.aI(Oe,R.u_extrude_scale),u_intensity:new t.aI(Oe,R.u_intensity),u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmapTexture:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_color_ramp:new t.aH(Oe,R.u_color_ramp),u_opacity:new t.aI(Oe,R.u_opacity)}),hillshade:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_latrange:new t.aO(Oe,R.u_latrange),u_light:new t.aO(Oe,R.u_light),u_shadow:new t.aL(Oe,R.u_shadow),u_highlight:new t.aL(Oe,R.u_highlight),u_accent:new t.aL(Oe,R.u_accent)}),hillshadePrepare:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_dimension:new t.aO(Oe,R.u_dimension),u_zoom:new t.aI(Oe,R.u_zoom),u_unpack:new t.aK(Oe,R.u_unpack)}),line:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels)}),lineGradient:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_image:new t.aH(Oe,R.u_image),u_image_height:new t.aI(Oe,R.u_image_height)}),linePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texsize:new t.aO(Oe,R.u_texsize),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_image:new t.aH(Oe,R.u_image),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),lineSDF:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_patternscale_a:new t.aO(Oe,R.u_patternscale_a),u_patternscale_b:new t.aO(Oe,R.u_patternscale_b),u_sdfgamma:new t.aI(Oe,R.u_sdfgamma),u_image:new t.aH(Oe,R.u_image),u_tex_y_a:new t.aI(Oe,R.u_tex_y_a),u_tex_y_b:new t.aI(Oe,R.u_tex_y_b),u_mix:new t.aI(Oe,R.u_mix)}),raster:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_tl_parent:new t.aO(Oe,R.u_tl_parent),u_scale_parent:new t.aI(Oe,R.u_scale_parent),u_buffer_scale:new t.aI(Oe,R.u_buffer_scale),u_fade_t:new t.aI(Oe,R.u_fade_t),u_opacity:new t.aI(Oe,R.u_opacity),u_image0:new t.aH(Oe,R.u_image0),u_image1:new t.aH(Oe,R.u_image1),u_brightness_low:new t.aI(Oe,R.u_brightness_low),u_brightness_high:new t.aI(Oe,R.u_brightness_high),u_saturation_factor:new t.aI(Oe,R.u_saturation_factor),u_contrast_factor:new t.aI(Oe,R.u_contrast_factor),u_spin_weights:new t.aN(Oe,R.u_spin_weights)}),symbolIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolSDF:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolTextAndIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texsize_icon:new t.aO(Oe,R.u_texsize_icon),u_texture:new t.aH(Oe,R.u_texture),u_texture_icon:new t.aH(Oe,R.u_texture_icon),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),background:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_color:new t.aL(Oe,R.u_color)}),backgroundPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_image:new t.aH(Oe,R.u_image),u_pattern_tl_a:new t.aO(Oe,R.u_pattern_tl_a),u_pattern_br_a:new t.aO(Oe,R.u_pattern_br_a),u_pattern_tl_b:new t.aO(Oe,R.u_pattern_tl_b),u_pattern_br_b:new t.aO(Oe,R.u_pattern_br_b),u_texsize:new t.aO(Oe,R.u_texsize),u_mix:new t.aI(Oe,R.u_mix),u_pattern_size_a:new t.aO(Oe,R.u_pattern_size_a),u_pattern_size_b:new t.aO(Oe,R.u_pattern_size_b),u_scale_a:new t.aI(Oe,R.u_scale_a),u_scale_b:new t.aI(Oe,R.u_scale_b),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_tile_units_to_pixels:new t.aI(Oe,R.u_tile_units_to_pixels)}),terrain:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_ele_delta:new t.aI(Oe,R.u_ele_delta),u_fog_matrix:new t.aJ(Oe,R.u_fog_matrix),u_fog_color:new t.aL(Oe,R.u_fog_color),u_fog_ground_blend:new t.aI(Oe,R.u_fog_ground_blend),u_fog_ground_blend_opacity:new t.aI(Oe,R.u_fog_ground_blend_opacity),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon_fog_blend:new t.aI(Oe,R.u_horizon_fog_blend)}),terrainDepth:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),terrainCoords:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_terrain_coords_id:new t.aI(Oe,R.u_terrain_coords_id),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),sky:(Oe,R)=>({u_sky_color:new t.aL(Oe,R.u_sky_color),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon:new t.aI(Oe,R.u_horizon),u_sky_horizon_blend:new t.aI(Oe,R.u_sky_horizon_blend)})};class $o{constructor(R,ae,we){this.context=R;let Se=R.gl;this.buffer=Se.createBuffer(),this.dynamicDraw=!!we,this.context.unbindVAO(),R.bindElementBuffer.set(this.buffer),Se.bufferData(Se.ELEMENT_ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?Se.DYNAMIC_DRAW:Se.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(R){let ae=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),ae.bufferSubData(ae.ELEMENT_ARRAY_BUFFER,0,R.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let fi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class mn{constructor(R,ae,we,Se){this.length=ae.length,this.attributes=we,this.itemSize=ae.bytesPerElement,this.dynamicDraw=Se,this.context=R;let De=R.gl;this.buffer=De.createBuffer(),R.bindVertexBuffer.set(this.buffer),De.bufferData(De.ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?De.DYNAMIC_DRAW:De.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(R){if(R.length!==this.length)throw new Error(`Length of new data is ${R.length}, which doesn't match current length of ${this.length}`);let ae=this.context.gl;this.bind(),ae.bufferSubData(ae.ARRAY_BUFFER,0,R.arrayBuffer)}enableAttributes(R,ae){for(let we=0;we0){let nr=t.H();t.aQ(nr,_t.placementInvProjMatrix,Oe.transform.glCoordMatrix),t.aQ(nr,nr,_t.placementViewportMatrix),Dt.push({circleArray:er,circleOffset:cr,transform:At.posMatrix,invTransform:nr,coord:At}),Yt+=er.length/4,cr=Yt}Pt&&bt.draw(De,ft.LINES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,{u_matrix:At.posMatrix,u_pixel_extrude_scale:[1/(hr=Oe.transform).width,1/hr.height]},Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At),ae.id,Pt.layoutVertexBuffer,Pt.indexBuffer,Pt.segments,null,Oe.transform.zoom,null,null,Pt.collisionVertexBuffer)}var hr;if(!Se||!Dt.length)return;let jr=Oe.useProgram("collisionCircle"),ea=new t.aR;ea.resize(4*Yt),ea._trim();let qe=0;for(let ht of Dt)for(let At=0;At=0&&(ht[_t.associatedIconIndex]={shiftedAnchor:$i,angle:Bn})}else Gt(_t.numGlyphs,Je)}if(Yt){ot.clear();let At=Oe.icon.placedSymbolArray;for(let _t=0;_tOe.style.map.terrain.getElevation(ga,Rt,or):null,Jt=ae.layout.get("text-rotation-alignment")==="map";Ne(Ja,ga.posMatrix,Oe,Se,Xl,fu,ht,Yt,Jt,Je,ga.toUnwrapped(),qe.width,qe.height,bl,wt)}let ql=ga.posMatrix,Hl=Se&&Sr||Sc,de=At||Hl?cu:Xl,Re=qu,$e=Ci&&ae.paint.get(Se?"text-halo-width":"icon-halo-width").constantOr(1)!==0,pt;pt=Ci?Ja.iconsInText?po($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,yo,Ys,ha):Xn($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,!0,ha):Qo($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,ha);let vt={program:Sn,buffers:di,uniformValues:pt,atlasTexture:Vo,atlasTextureIcon:Zo,atlasInterpolation:ls,atlasInterpolationIcon:rl,isSDF:Ci,hasHalo:$e};if(er&&Ja.canOverlap){nr=!0;let wt=di.segments.get();for(let Jt of wt)Wr.push({segments:new t.a0([Jt]),sortKey:Jt.sortKey,state:vt,terrainData:ts})}else Wr.push({segments:di.segments,sortKey:0,state:vt,terrainData:ts})}nr&&Wr.sort((ga,Pa)=>ga.sortKey-Pa.sortKey);for(let ga of Wr){let Pa=ga.state;if(jr.activeTexture.set(ea.TEXTURE0),Pa.atlasTexture.bind(Pa.atlasInterpolation,ea.CLAMP_TO_EDGE),Pa.atlasTextureIcon&&(jr.activeTexture.set(ea.TEXTURE1),Pa.atlasTextureIcon&&Pa.atlasTextureIcon.bind(Pa.atlasInterpolationIcon,ea.CLAMP_TO_EDGE)),Pa.isSDF){let Ja=Pa.uniformValues;Pa.hasHalo&&(Ja.u_is_halo=1,Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Ja,ga.terrainData)),Ja.u_is_halo=0}Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Pa.uniformValues,ga.terrainData)}}function Xf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt){let cr=we.context;Se.draw(cr,cr.gl.TRIANGLES,De,ft,bt,So.disabled,Dt,Yt,ae.id,Oe.layoutVertexBuffer,Oe.indexBuffer,R,ae.paint,we.transform.zoom,Oe.programConfigurations.get(ae.id),Oe.dynamicLayoutVertexBuffer,Oe.opacityVertexBuffer)}function Rf(Oe,R,ae,we){let Se=Oe.context,De=Se.gl,ft=Ss.disabled,bt=new Qs([De.ONE,De.ONE],t.aM.transparent,[!0,!0,!0,!0]),Dt=R.getBucket(ae);if(!Dt)return;let Yt=we.key,cr=ae.heatmapFbos.get(Yt);cr||(cr=Yf(Se,R.tileSize,R.tileSize),ae.heatmapFbos.set(Yt,cr)),Se.bindFramebuffer.set(cr.framebuffer),Se.viewport.set([0,0,R.tileSize,R.tileSize]),Se.clear({color:t.aM.transparent});let hr=Dt.programConfigurations.get(ae.id),jr=Oe.useProgram("heatmap",hr),ea=Oe.style.map.terrain.getTerrainData(we);jr.draw(Se,De.TRIANGLES,es.disabled,ft,bt,So.disabled,Cn(we.posMatrix,R,Oe.transform.zoom,ae.paint.get("heatmap-intensity")),ea,ae.id,Dt.layoutVertexBuffer,Dt.indexBuffer,Dt.segments,ae.paint,Oe.transform.zoom,hr)}function Kc(Oe,R,ae){let we=Oe.context,Se=we.gl;we.setColorMode(Oe.colorModeForRenderPass());let De=uh(we,R),ft=ae.key,bt=R.heatmapFbos.get(ft);bt&&(we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,bt.colorAttachment.get()),we.activeTexture.set(Se.TEXTURE1),De.bind(Se.LINEAR,Se.CLAMP_TO_EDGE),Oe.useProgram("heatmapTexture").draw(we,Se.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,Lo(Oe,R,0,1),null,R.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments,R.paint,Oe.transform.zoom),bt.destroy(),R.heatmapFbos.delete(ft))}function Yf(Oe,R,ae){var we,Se;let De=Oe.gl,ft=De.createTexture();De.bindTexture(De.TEXTURE_2D,ft),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,De.LINEAR),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,De.LINEAR);let bt=(we=Oe.HALF_FLOAT)!==null&&we!==void 0?we:De.UNSIGNED_BYTE,Dt=(Se=Oe.RGBA16F)!==null&&Se!==void 0?Se:De.RGBA;De.texImage2D(De.TEXTURE_2D,0,Dt,R,ae,0,De.RGBA,bt,null);let Yt=Oe.createFramebuffer(R,ae,!1,!1);return Yt.colorAttachment.set(ft),Yt}function uh(Oe,R){return R.colorRampTexture||(R.colorRampTexture=new u(Oe,R.colorRamp,Oe.gl.RGBA)),R.colorRampTexture}function Ju(Oe,R,ae,we,Se){if(!ae||!we||!we.imageAtlas)return;let De=we.imageAtlas.patternPositions,ft=De[ae.to.toString()],bt=De[ae.from.toString()];if(!ft&&bt&&(ft=bt),!bt&&ft&&(bt=ft),!ft||!bt){let Dt=Se.getPaintProperty(R);ft=De[Dt],bt=De[Dt]}ft&&bt&&Oe.setConstantPatternPositions(ft,bt)}function Df(Oe,R,ae,we,Se,De,ft){let bt=Oe.context.gl,Dt="fill-pattern",Yt=ae.paint.get(Dt),cr=Yt&&Yt.constantOr(1),hr=ae.getCrossfadeParameters(),jr,ea,qe,Je,ot;ft?(ea=cr&&!ae.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",jr=bt.LINES):(ea=cr?"fillPattern":"fill",jr=bt.TRIANGLES);let ht=Yt.constantOr(null);for(let At of we){let _t=R.getTile(At);if(cr&&!_t.patternsLoaded())continue;let Pt=_t.getBucket(ae);if(!Pt)continue;let er=Pt.programConfigurations.get(ae.id),nr=Oe.useProgram(ea,er),pr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At);cr&&(Oe.context.activeTexture.set(bt.TEXTURE0),_t.imageAtlasTexture.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),er.updatePaintBuffers(hr)),Ju(er,Dt,ht,_t,ae);let Sr=pr?At:null,Wr=Oe.translatePosMatrix(Sr?Sr.posMatrix:At.posMatrix,_t,ae.paint.get("fill-translate"),ae.paint.get("fill-translate-anchor"));if(ft){Je=Pt.indexBuffer2,ot=Pt.segments2;let ha=[bt.drawingBufferWidth,bt.drawingBufferHeight];qe=ea==="fillOutlinePattern"&&cr?an(Wr,Oe,hr,_t,ha):ai(Wr,ha)}else Je=Pt.indexBuffer,ot=Pt.segments,qe=cr?Ti(Wr,Oe,hr,_t):Sa(Wr);nr.draw(Oe.context,jr,Se,Oe.stencilModeForClipping(At),De,So.disabled,qe,pr,ae.id,Pt.layoutVertexBuffer,Je,ot,ae.paint,Oe.transform.zoom,er)}}function Dc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt="fill-extrusion-pattern",cr=ae.paint.get(Yt),hr=cr.constantOr(1),jr=ae.getCrossfadeParameters(),ea=ae.paint.get("fill-extrusion-opacity"),qe=cr.constantOr(null);for(let Je of we){let ot=R.getTile(Je),ht=ot.getBucket(ae);if(!ht)continue;let At=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(Je),_t=ht.programConfigurations.get(ae.id),Pt=Oe.useProgram(hr?"fillExtrusionPattern":"fillExtrusion",_t);hr&&(Oe.context.activeTexture.set(Dt.TEXTURE0),ot.imageAtlasTexture.bind(Dt.LINEAR,Dt.CLAMP_TO_EDGE),_t.updatePaintBuffers(jr)),Ju(_t,Yt,qe,ot,ae);let er=Oe.translatePosMatrix(Je.posMatrix,ot,ae.paint.get("fill-extrusion-translate"),ae.paint.get("fill-extrusion-translate-anchor")),nr=ae.paint.get("fill-extrusion-vertical-gradient"),pr=hr?da(er,Oe,nr,ea,Je,jr,ot):Ca(er,Oe,nr,ea);Pt.draw(bt,bt.gl.TRIANGLES,Se,De,ft,So.backCCW,pr,At,ae.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,ae.paint,Oe.transform.zoom,_t,Oe.style.map.terrain&&ht.centroidVertexBuffer)}}function Jc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt=ae.fbo;if(!Yt)return;let cr=Oe.useProgram("hillshade"),hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(R);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,Yt.colorAttachment.get()),cr.draw(bt,Dt.TRIANGLES,Se,De,ft,So.disabled,((jr,ea,qe,Je)=>{let ot=qe.paint.get("hillshade-shadow-color"),ht=qe.paint.get("hillshade-highlight-color"),At=qe.paint.get("hillshade-accent-color"),_t=qe.paint.get("hillshade-illumination-direction")*(Math.PI/180);qe.paint.get("hillshade-illumination-anchor")==="viewport"&&(_t-=jr.transform.angle);let Pt=!jr.options.moving;return{u_matrix:Je?Je.posMatrix:jr.transform.calculatePosMatrix(ea.tileID.toUnwrapped(),Pt),u_image:0,u_latrange:Xi(0,ea.tileID),u_light:[qe.paint.get("hillshade-exaggeration"),_t],u_shadow:ot,u_highlight:ht,u_accent:At}})(Oe,ae,we,hr?R:null),hr,we.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments)}function Eu(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl,Dt=R.dem;if(Dt&&Dt.data){let Yt=Dt.dim,cr=Dt.stride,hr=Dt.getPixels();if(ft.activeTexture.set(bt.TEXTURE1),ft.pixelStoreUnpackPremultiplyAlpha.set(!1),R.demTexture=R.demTexture||Oe.getTileTexture(cr),R.demTexture){let ea=R.demTexture;ea.update(hr,{premultiply:!1}),ea.bind(bt.NEAREST,bt.CLAMP_TO_EDGE)}else R.demTexture=new u(ft,hr,bt.RGBA,{premultiply:!1}),R.demTexture.bind(bt.NEAREST,bt.CLAMP_TO_EDGE);ft.activeTexture.set(bt.TEXTURE0);let jr=R.fbo;if(!jr){let ea=new u(ft,{width:Yt,height:Yt,data:null},bt.RGBA);ea.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),jr=R.fbo=ft.createFramebuffer(Yt,Yt,!0,!1),jr.colorAttachment.set(ea.texture)}ft.bindFramebuffer.set(jr.framebuffer),ft.viewport.set([0,0,Yt,Yt]),Oe.useProgram("hillshadePrepare").draw(ft,bt.TRIANGLES,we,Se,De,So.disabled,((ea,qe)=>{let Je=qe.stride,ot=t.H();return t.aP(ot,0,t.X,-t.X,0,0,1),t.J(ot,ot,[0,-t.X,0]),{u_matrix:ot,u_image:1,u_dimension:[Je,Je],u_zoom:ea.overscaledZ,u_unpack:qe.getUnpackVector()}})(R.tileID,Dt),null,ae.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments),R.needsHillshadePrepare=!1}}function wf(Oe,R,ae,we,Se,De){let ft=we.paint.get("raster-fade-duration");if(!De&&ft>0){let bt=i.now(),Dt=(bt-Oe.timeAdded)/ft,Yt=R?(bt-R.timeAdded)/ft:-1,cr=ae.getSource(),hr=Se.coveringZoomLevel({tileSize:cr.tileSize,roundZoom:cr.roundZoom}),jr=!R||Math.abs(R.tileID.overscaledZ-hr)>Math.abs(Oe.tileID.overscaledZ-hr),ea=jr&&Oe.refreshedUponExpiration?1:t.ac(jr?Dt:1-Yt,0,1);return Oe.refreshedUponExpiration&&Dt>=1&&(Oe.refreshedUponExpiration=!1),R?{opacity:1,mix:1-ea}:{opacity:ea,mix:0}}return{opacity:1,mix:0}}let zc=new t.aM(1,0,0,1),Us=new t.aM(0,1,0,1),Kf=new t.aM(0,0,1,1),Zh=new t.aM(1,0,1,1),ch=new t.aM(0,1,1,1);function df(Oe,R,ae,we){ku(Oe,0,R+ae/2,Oe.transform.width,ae,we)}function Ah(Oe,R,ae,we){ku(Oe,R-ae/2,0,ae,Oe.transform.height,we)}function ku(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl;bt.enable(bt.SCISSOR_TEST),bt.scissor(R*Oe.pixelRatio,ae*Oe.pixelRatio,we*Oe.pixelRatio,Se*Oe.pixelRatio),ft.clear({color:De}),bt.disable(bt.SCISSOR_TEST)}function fh(Oe,R,ae){let we=Oe.context,Se=we.gl,De=ae.posMatrix,ft=Oe.useProgram("debug"),bt=es.disabled,Dt=Ss.disabled,Yt=Oe.colorModeForRenderPass(),cr="$debug",hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ae);we.activeTexture.set(Se.TEXTURE0);let jr=R.getTileByID(ae.key).latestRawTileData,ea=Math.floor((jr&&jr.byteLength||0)/1024),qe=R.getTile(ae).tileSize,Je=512/Math.min(qe,512)*(ae.overscaledZ/Oe.transform.zoom)*.5,ot=ae.canonical.toString();ae.overscaledZ!==ae.canonical.z&&(ot+=` => ${ae.overscaledZ}`),function(ht,At){ht.initDebugOverlayCanvas();let _t=ht.debugOverlayCanvas,Pt=ht.context.gl,er=ht.debugOverlayCanvas.getContext("2d");er.clearRect(0,0,_t.width,_t.height),er.shadowColor="white",er.shadowBlur=2,er.lineWidth=1.5,er.strokeStyle="white",er.textBaseline="top",er.font="bold 36px Open Sans, sans-serif",er.fillText(At,5,5),er.strokeText(At,5,5),ht.debugOverlayTexture.update(_t),ht.debugOverlayTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE)}(Oe,`${ot} ${ea}kB`),ft.draw(we,Se.TRIANGLES,bt,Dt,Qs.alphaBlended,So.disabled,On(De,t.aM.transparent,Je),null,cr,Oe.debugBuffer,Oe.quadTriangleIndexBuffer,Oe.debugSegments),ft.draw(we,Se.LINE_STRIP,bt,Dt,Yt,So.disabled,On(De,t.aM.red),hr,cr,Oe.debugBuffer,Oe.tileBorderIndexBuffer,Oe.debugSegments)}function ru(Oe,R,ae){let we=Oe.context,Se=we.gl,De=Oe.colorModeForRenderPass(),ft=new es(Se.LEQUAL,es.ReadWrite,Oe.depthRangeFor3D),bt=Oe.useProgram("terrain"),Dt=R.getTerrainMesh();we.bindFramebuffer.set(null),we.viewport.set([0,0,Oe.width,Oe.height]);for(let Yt of ae){let cr=Oe.renderToTexture.getTexture(Yt),hr=R.getTerrainData(Yt.tileID);we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,cr.texture);let jr=Oe.transform.calculatePosMatrix(Yt.tileID.toUnwrapped()),ea=R.getMeshFrameDelta(Oe.transform.zoom),qe=Oe.transform.calculateFogMatrix(Yt.tileID.toUnwrapped()),Je=mr(jr,ea,qe,Oe.style.sky,Oe.transform.pitch);bt.draw(we,Se.TRIANGLES,ft,Ss.disabled,De,So.backCCW,Je,hr,"terrain",Dt.vertexBuffer,Dt.indexBuffer,Dt.segments)}}class Cu{constructor(R,ae,we){this.vertexBuffer=R,this.indexBuffer=ae,this.segments=we}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class xc{constructor(R,ae){this.context=new fp(R),this.transform=ae,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:t.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=St.maxUnderzooming+St.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Mr}resize(R,ae,we){if(this.width=Math.floor(R*we),this.height=Math.floor(ae*we),this.pixelRatio=we,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let Se of this.style._order)this.style._layers[Se].resize()}setup(){let R=this.context,ae=new t.aX;ae.emplaceBack(0,0),ae.emplaceBack(t.X,0),ae.emplaceBack(0,t.X),ae.emplaceBack(t.X,t.X),this.tileExtentBuffer=R.createVertexBuffer(ae,oa.members),this.tileExtentSegments=t.a0.simpleSegment(0,0,4,2);let we=new t.aX;we.emplaceBack(0,0),we.emplaceBack(t.X,0),we.emplaceBack(0,t.X),we.emplaceBack(t.X,t.X),this.debugBuffer=R.createVertexBuffer(we,oa.members),this.debugSegments=t.a0.simpleSegment(0,0,4,5);let Se=new t.$;Se.emplaceBack(0,0,0,0),Se.emplaceBack(t.X,0,t.X,0),Se.emplaceBack(0,t.X,0,t.X),Se.emplaceBack(t.X,t.X,t.X,t.X),this.rasterBoundsBuffer=R.createVertexBuffer(Se,Ze.members),this.rasterBoundsSegments=t.a0.simpleSegment(0,0,4,2);let De=new t.aX;De.emplaceBack(0,0),De.emplaceBack(1,0),De.emplaceBack(0,1),De.emplaceBack(1,1),this.viewportBuffer=R.createVertexBuffer(De,oa.members),this.viewportSegments=t.a0.simpleSegment(0,0,4,2);let ft=new t.aZ;ft.emplaceBack(0),ft.emplaceBack(1),ft.emplaceBack(3),ft.emplaceBack(2),ft.emplaceBack(0),this.tileBorderIndexBuffer=R.createIndexBuffer(ft);let bt=new t.aY;bt.emplaceBack(0,1,2),bt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=R.createIndexBuffer(bt);let Dt=this.context.gl;this.stencilClearMode=new Ss({func:Dt.ALWAYS,mask:0},0,255,Dt.ZERO,Dt.ZERO,Dt.ZERO)}clearStencil(){let R=this.context,ae=R.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let we=t.H();t.aP(we,0,this.width,this.height,0,0,1),t.K(we,we,[ae.drawingBufferWidth,ae.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(R,ae.TRIANGLES,es.disabled,this.stencilClearMode,Qs.disabled,So.disabled,$n(we),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(R,ae){if(this.currentStencilSource===R.source||!R.isTileClipped()||!ae||!ae.length)return;this.currentStencilSource=R.source;let we=this.context,Se=we.gl;this.nextStencilID+ae.length>256&&this.clearStencil(),we.setColorMode(Qs.disabled),we.setDepthMode(es.disabled);let De=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let ft of ae){let bt=this._tileClippingMaskIDs[ft.key]=this.nextStencilID++,Dt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(ft);De.draw(we,Se.TRIANGLES,es.disabled,new Ss({func:Se.ALWAYS,mask:0},bt,255,Se.KEEP,Se.KEEP,Se.REPLACE),Qs.disabled,So.disabled,$n(ft.posMatrix),Dt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let R=this.nextStencilID++,ae=this.context.gl;return new Ss({func:ae.NOTEQUAL,mask:255},R,255,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilModeForClipping(R){let ae=this.context.gl;return new Ss({func:ae.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilConfigForOverlap(R){let ae=this.context.gl,we=R.sort((ft,bt)=>bt.overscaledZ-ft.overscaledZ),Se=we[we.length-1].overscaledZ,De=we[0].overscaledZ-Se+1;if(De>1){this.currentStencilSource=void 0,this.nextStencilID+De>256&&this.clearStencil();let ft={};for(let bt=0;bt({u_sky_color:ht.properties.get("sky-color"),u_horizon_color:ht.properties.get("horizon-color"),u_horizon:(At.height/2+At.getHorizon())*_t,u_sky_horizon_blend:ht.properties.get("sky-horizon-blend")*At.height/2*_t}))(Yt,Dt.style.map.transform,Dt.pixelRatio),ea=new es(hr.LEQUAL,es.ReadWrite,[0,1]),qe=Ss.disabled,Je=Dt.colorModeForRenderPass(),ot=Dt.useProgram("sky");if(!Yt.mesh){let ht=new t.aX;ht.emplaceBack(-1,-1),ht.emplaceBack(1,-1),ht.emplaceBack(1,1),ht.emplaceBack(-1,1);let At=new t.aY;At.emplaceBack(0,1,2),At.emplaceBack(0,2,3),Yt.mesh=new Cu(cr.createVertexBuffer(ht,oa.members),cr.createIndexBuffer(At),t.a0.simpleSegment(0,0,ht.length,At.length))}ot.draw(cr,hr.TRIANGLES,ea,qe,Je,So.disabled,jr,void 0,"sky",Yt.mesh.vertexBuffer,Yt.mesh.indexBuffer,Yt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=ae.showOverdrawInspector,this.depthRangeFor3D=[0,1-(R._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=we.length-1;this.currentLayer>=0;this.currentLayer--){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source],cr=De[Dt.source];this._renderTileClippingMasks(Dt,cr),this.renderLayer(this,Yt,Dt,cr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerot.source&&!ot.isHidden(cr)?[Yt.sourceCaches[ot.source]]:[]),ea=jr.filter(ot=>ot.getSource().type==="vector"),qe=jr.filter(ot=>ot.getSource().type!=="vector"),Je=ot=>{(!hr||hr.getSource().maxzoomJe(ot)),hr||qe.forEach(ot=>Je(ot)),hr}(this.style,this.transform.zoom);Dt&&function(Yt,cr,hr){for(let jr=0;jr0),Se&&(t.b0(ae,we),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.sourceCache.getRenderableTiles(),ea=De.useProgram("terrainDepth");bt.bindFramebuffer.set(ft.getFramebuffer("depth").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1});for(let qe of jr){let Je=ft.getTerrainData(qe.tileID),ot={u_matrix:De.transform.calculatePosMatrix(qe.tileID.toUnwrapped()),u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};ea.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ot,Je,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain),function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.getCoordsTexture(),ea=ft.sourceCache.getRenderableTiles(),qe=De.useProgram("terrainCoords");bt.bindFramebuffer.set(ft.getFramebuffer("coords").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1}),ft.coordsIndex=[];for(let Je of ea){let ot=ft.getTerrainData(Je.tileID);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,jr.texture);let ht={u_matrix:De.transform.calculatePosMatrix(Je.tileID.toUnwrapped()),u_terrain_coords_id:(255-ft.coordsIndex.length)/255,u_texture:0,u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};qe.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ht,ot,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments),ft.coordsIndex.push(Je.tileID.key)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain))}renderLayer(R,ae,we,Se){if(!we.isHidden(this.transform.zoom)&&(we.type==="background"||we.type==="custom"||(Se||[]).length))switch(this.id=we.id,we.type){case"symbol":(function(De,ft,bt,Dt,Yt){if(De.renderPass!=="translucent")return;let cr=Ss.disabled,hr=De.colorModeForRenderPass();(bt._unevaluatedLayout.hasValue("text-variable-anchor")||bt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(jr,ea,qe,Je,ot,ht,At,_t,Pt){let er=ea.transform,nr=$a(),pr=ot==="map",Sr=ht==="map";for(let Wr of jr){let ha=Je.getTile(Wr),ga=ha.getBucket(qe);if(!ga||!ga.text||!ga.text.segments.get().length)continue;let Pa=t.ag(ga.textSizeData,er.zoom),Ja=Aa(ha,1,ea.transform.zoom),di=vr(Wr.posMatrix,Sr,pr,ea.transform,Ja),pi=qe.layout.get("icon-text-fit")!=="none"&&ga.hasIconData();if(Pa){let Ci=Math.pow(2,er.zoom-ha.tileID.overscaledZ),$i=ea.style.map.terrain?(Sn,ho)=>ea.style.map.terrain.getElevation(Wr,Sn,ho):null,Bn=nr.translatePosition(er,ha,At,_t);pf(ga,pr,Sr,Pt,er,di,Wr.posMatrix,Ci,Pa,pi,nr,Bn,Wr.toUnwrapped(),$i)}}}(Dt,De,bt,ft,bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),Yt),bt.paint.get("icon-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!1,bt.paint.get("icon-translate"),bt.paint.get("icon-translate-anchor"),bt.layout.get("icon-rotation-alignment"),bt.layout.get("icon-pitch-alignment"),bt.layout.get("icon-keep-upright"),cr,hr),bt.paint.get("text-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!0,bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.layout.get("text-keep-upright"),cr,hr),ft.map.showCollisionBoxes&&(Ku(De,ft,bt,Dt,!0),Ku(De,ft,bt,Dt,!1))})(R,ae,we,Se,this.style.placement.variableOffsets);break;case"circle":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("circle-opacity"),cr=bt.paint.get("circle-stroke-width"),hr=bt.paint.get("circle-stroke-opacity"),jr=!bt.layout.get("circle-sort-key").isConstant();if(Yt.constantOr(1)===0&&(cr.constantOr(1)===0||hr.constantOr(1)===0))return;let ea=De.context,qe=ea.gl,Je=De.depthModeForSublayer(0,es.ReadOnly),ot=Ss.disabled,ht=De.colorModeForRenderPass(),At=[];for(let _t=0;_t_t.sortKey-Pt.sortKey);for(let _t of At){let{programConfiguration:Pt,program:er,layoutVertexBuffer:nr,indexBuffer:pr,uniformValues:Sr,terrainData:Wr}=_t.state;er.draw(ea,qe.TRIANGLES,Je,ot,ht,So.disabled,Sr,Wr,bt.id,nr,pr,_t.segments,bt.paint,De.transform.zoom,Pt)}})(R,ae,we,Se);break;case"heatmap":(function(De,ft,bt,Dt){if(bt.paint.get("heatmap-opacity")===0)return;let Yt=De.context;if(De.style.map.terrain){for(let cr of Dt){let hr=ft.getTile(cr);ft.hasRenderableParent(cr)||(De.renderPass==="offscreen"?Rf(De,hr,bt,cr):De.renderPass==="translucent"&&Kc(De,bt,cr))}Yt.viewport.set([0,0,De.width,De.height])}else De.renderPass==="offscreen"?function(cr,hr,jr,ea){let qe=cr.context,Je=qe.gl,ot=Ss.disabled,ht=new Qs([Je.ONE,Je.ONE],t.aM.transparent,[!0,!0,!0,!0]);(function(At,_t,Pt){let er=At.gl;At.activeTexture.set(er.TEXTURE1),At.viewport.set([0,0,_t.width/4,_t.height/4]);let nr=Pt.heatmapFbos.get(t.aU);nr?(er.bindTexture(er.TEXTURE_2D,nr.colorAttachment.get()),At.bindFramebuffer.set(nr.framebuffer)):(nr=Yf(At,_t.width/4,_t.height/4),Pt.heatmapFbos.set(t.aU,nr))})(qe,cr,jr),qe.clear({color:t.aM.transparent});for(let At=0;At20&&cr.texParameterf(cr.TEXTURE_2D,Yt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Yt.extTextureFilterAnisotropicMax);let ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(At),Pa=ga?At:null,Ja=Pa?Pa.posMatrix:De.transform.calculatePosMatrix(At.toUnwrapped(),ht),di=Do(Ja,Wr||[0,0],Sr||1,pr,bt);hr instanceof at?jr.draw(Yt,cr.TRIANGLES,_t,Ss.disabled,ea,So.disabled,di,ga,bt.id,hr.boundsBuffer,De.quadTriangleIndexBuffer,hr.boundsSegments):jr.draw(Yt,cr.TRIANGLES,_t,qe[At.overscaledZ],ea,So.disabled,di,ga,bt.id,De.rasterBoundsBuffer,De.quadTriangleIndexBuffer,De.rasterBoundsSegments)}})(R,ae,we,Se);break;case"background":(function(De,ft,bt,Dt){let Yt=bt.paint.get("background-color"),cr=bt.paint.get("background-opacity");if(cr===0)return;let hr=De.context,jr=hr.gl,ea=De.transform,qe=ea.tileSize,Je=bt.paint.get("background-pattern");if(De.isPatternMissing(Je))return;let ot=!Je&&Yt.a===1&&cr===1&&De.opaquePassEnabledForLayer()?"opaque":"translucent";if(De.renderPass!==ot)return;let ht=Ss.disabled,At=De.depthModeForSublayer(0,ot==="opaque"?es.ReadWrite:es.ReadOnly),_t=De.colorModeForRenderPass(),Pt=De.useProgram(Je?"backgroundPattern":"background"),er=Dt||ea.coveringTiles({tileSize:qe,terrain:De.style.map.terrain});Je&&(hr.activeTexture.set(jr.TEXTURE0),De.imageManager.bind(De.context));let nr=bt.getCrossfadeParameters();for(let pr of er){let Sr=Dt?pr.posMatrix:De.transform.calculatePosMatrix(pr.toUnwrapped()),Wr=Je?Is(Sr,cr,De,Je,{tileID:pr,tileSize:qe},nr):ys(Sr,cr,Yt),ha=De.style.map.terrain&&De.style.map.terrain.getTerrainData(pr);Pt.draw(hr,jr.TRIANGLES,At,ht,_t,So.disabled,Wr,ha,bt.id,De.tileExtentBuffer,De.quadTriangleIndexBuffer,De.tileExtentSegments)}})(R,0,we,Se);break;case"custom":(function(De,ft,bt){let Dt=De.context,Yt=bt.implementation;if(De.renderPass==="offscreen"){let cr=Yt.prerender;cr&&(De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),cr.call(Yt,Dt.gl,De.transform.customLayerMatrix()),Dt.setDirty(),De.setBaseState())}else if(De.renderPass==="translucent"){De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),Dt.setStencilMode(Ss.disabled);let cr=Yt.renderingMode==="3d"?new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D):De.depthModeForSublayer(0,es.ReadOnly);Dt.setDepthMode(cr),Yt.render(Dt.gl,De.transform.customLayerMatrix(),{farZ:De.transform.farZ,nearZ:De.transform.nearZ,fov:De.transform._fov,modelViewProjectionMatrix:De.transform.modelViewProjectionMatrix,projectionMatrix:De.transform.projectionMatrix}),Dt.setDirty(),De.setBaseState(),Dt.bindFramebuffer.set(null)}})(R,0,we)}}translatePosMatrix(R,ae,we,Se,De){if(!we[0]&&!we[1])return R;let ft=De?Se==="map"?this.transform.angle:0:Se==="viewport"?-this.transform.angle:0;if(ft){let Yt=Math.sin(ft),cr=Math.cos(ft);we=[we[0]*cr-we[1]*Yt,we[0]*Yt+we[1]*cr]}let bt=[De?we[0]:Aa(ae,we[0],this.transform.zoom),De?we[1]:Aa(ae,we[1],this.transform.zoom),0],Dt=new Float32Array(16);return t.J(Dt,R,bt),Dt}saveTileTexture(R){let ae=this._tileTextures[R.size[0]];ae?ae.push(R):this._tileTextures[R.size[0]]=[R]}getTileTexture(R){let ae=this._tileTextures[R];return ae&&ae.length>0?ae.pop():null}isPatternMissing(R){if(!R)return!1;if(!R.from||!R.to)return!0;let ae=this.imageManager.getPattern(R.from.toString()),we=this.imageManager.getPattern(R.to.toString());return!ae||!we}useProgram(R,ae){this.cache=this.cache||{};let we=R+(ae?ae.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[we]||(this.cache[we]=new ma(this.context,ca[R],ae,Fs[R],this._showOverdrawInspector,this.style.map.terrain)),this.cache[we]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new u(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:R,drawingBufferHeight:ae}=this.context.gl;return this.width!==R||this.height!==ae}}class kl{constructor(R,ae){this.points=R,this.planes=ae}static fromInvProjectionMatrix(R,ae,we){let Se=Math.pow(2,we),De=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(bt=>{let Dt=1/(bt=t.af([],bt,R))[3]/ae*Se;return t.b1(bt,bt,[Dt,Dt,1/bt[3],Dt])}),ft=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(bt=>{let Dt=function(jr,ea){var qe=ea[0],Je=ea[1],ot=ea[2],ht=qe*qe+Je*Je+ot*ot;return ht>0&&(ht=1/Math.sqrt(ht)),jr[0]=ea[0]*ht,jr[1]=ea[1]*ht,jr[2]=ea[2]*ht,jr}([],function(jr,ea,qe){var Je=ea[0],ot=ea[1],ht=ea[2],At=qe[0],_t=qe[1],Pt=qe[2];return jr[0]=ot*Pt-ht*_t,jr[1]=ht*At-Je*Pt,jr[2]=Je*_t-ot*At,jr}([],E([],De[bt[0]],De[bt[1]]),E([],De[bt[2]],De[bt[1]]))),Yt=-((cr=Dt)[0]*(hr=De[bt[1]])[0]+cr[1]*hr[1]+cr[2]*hr[2]);var cr,hr;return Dt.concat(Yt)});return new kl(De,ft)}}class Fc{constructor(R,ae){this.min=R,this.max=ae,this.center=function(we,Se,De){return we[0]=.5*Se[0],we[1]=.5*Se[1],we[2]=.5*Se[2],we}([],function(we,Se,De){return we[0]=Se[0]+De[0],we[1]=Se[1]+De[1],we[2]=Se[2]+De[2],we}([],this.min,this.max))}quadrant(R){let ae=[R%2==0,R<2],we=w(this.min),Se=w(this.max);for(let De=0;De=0&&ft++;if(ft===0)return 0;ft!==ae.length&&(we=!1)}if(we)return 2;for(let Se=0;Se<3;Se++){let De=Number.MAX_VALUE,ft=-Number.MAX_VALUE;for(let bt=0;btthis.max[Se]-this.min[Se])return 0}return 1}}class $u{constructor(R=0,ae=0,we=0,Se=0){if(isNaN(R)||R<0||isNaN(ae)||ae<0||isNaN(we)||we<0||isNaN(Se)||Se<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=ae,this.left=we,this.right=Se}interpolate(R,ae,we){return ae.top!=null&&R.top!=null&&(this.top=t.y.number(R.top,ae.top,we)),ae.bottom!=null&&R.bottom!=null&&(this.bottom=t.y.number(R.bottom,ae.bottom,we)),ae.left!=null&&R.left!=null&&(this.left=t.y.number(R.left,ae.left,we)),ae.right!=null&&R.right!=null&&(this.right=t.y.number(R.right,ae.right,we)),this}getCenter(R,ae){let we=t.ac((this.left+R-this.right)/2,0,R),Se=t.ac((this.top+ae-this.bottom)/2,0,ae);return new t.P(we,Se)}equals(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right}clone(){return new $u(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let vu=85.051129;class xl{constructor(R,ae,we,Se,De){this.tileSize=512,this._renderWorldCopies=De===void 0||!!De,this._minZoom=R||0,this._maxZoom=ae||22,this._minPitch=we??0,this._maxPitch=Se??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new $u,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let R=new xl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.apply(this),R}apply(R){this.tileSize=R.tileSize,this.latRange=R.latRange,this.lngRange=R.lngRange,this.width=R.width,this.height=R.height,this._center=R._center,this._elevation=R._elevation,this.minElevationForCurrentTile=R.minElevationForCurrentTile,this.zoom=R.zoom,this.angle=R.angle,this._fov=R._fov,this._pitch=R._pitch,this._unmodified=R._unmodified,this._edgeInsets=R._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(R){this._minZoom!==R&&(this._minZoom=R,this.zoom=Math.max(this.zoom,R))}get maxZoom(){return this._maxZoom}set maxZoom(R){this._maxZoom!==R&&(this._maxZoom=R,this.zoom=Math.min(this.zoom,R))}get minPitch(){return this._minPitch}set minPitch(R){this._minPitch!==R&&(this._minPitch=R,this.pitch=Math.max(this.pitch,R))}get maxPitch(){return this._maxPitch}set maxPitch(R){this._maxPitch!==R&&(this._maxPitch=R,this.pitch=Math.min(this.pitch,R))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(R){R===void 0?R=!0:R===null&&(R=!1),this._renderWorldCopies=R}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(R){let ae=-t.b3(R,-180,180)*Math.PI/180;this.angle!==ae&&(this._unmodified=!1,this.angle=ae,this._calcMatrices(),this.rotationMatrix=function(){var we=new t.A(4);return t.A!=Float32Array&&(we[1]=0,we[2]=0),we[0]=1,we[3]=1,we}(),function(we,Se,De){var ft=Se[0],bt=Se[1],Dt=Se[2],Yt=Se[3],cr=Math.sin(De),hr=Math.cos(De);we[0]=ft*hr+Dt*cr,we[1]=bt*hr+Yt*cr,we[2]=ft*-cr+Dt*hr,we[3]=bt*-cr+Yt*hr}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(R){let ae=t.ac(R,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==ae&&(this._unmodified=!1,this._pitch=ae,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(R){R=Math.max(.01,Math.min(60,R)),this._fov!==R&&(this._unmodified=!1,this._fov=R/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(R){let ae=Math.min(Math.max(R,this.minZoom),this.maxZoom);this._zoom!==ae&&(this._unmodified=!1,this._zoom=ae,this.tileZoom=Math.max(0,Math.floor(ae)),this.scale=this.zoomScale(ae),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(R){R.lat===this._center.lat&&R.lng===this._center.lng||(this._unmodified=!1,this._center=R,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(R){R!==this._elevation&&(this._elevation=R,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(R){this._edgeInsets.equals(R)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,R,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(R){return this._edgeInsets.equals(R)}interpolatePadding(R,ae,we){this._unmodified=!1,this._edgeInsets.interpolate(R,ae,we),this._constrain(),this._calcMatrices()}coveringZoomLevel(R){let ae=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,ae)}getVisibleUnwrappedCoordinates(R){let ae=[new t.b4(0,R)];if(this._renderWorldCopies){let we=this.pointCoordinate(new t.P(0,0)),Se=this.pointCoordinate(new t.P(this.width,0)),De=this.pointCoordinate(new t.P(this.width,this.height)),ft=this.pointCoordinate(new t.P(0,this.height)),bt=Math.floor(Math.min(we.x,Se.x,De.x,ft.x)),Dt=Math.floor(Math.max(we.x,Se.x,De.x,ft.x)),Yt=1;for(let cr=bt-Yt;cr<=Dt+Yt;cr++)cr!==0&&ae.push(new t.b4(cr,R))}return ae}coveringTiles(R){var ae,we;let Se=this.coveringZoomLevel(R),De=Se;if(R.minzoom!==void 0&&SeR.maxzoom&&(Se=R.maxzoom);let ft=this.pointCoordinate(this.getCameraPoint()),bt=t.Z.fromLngLat(this.center),Dt=Math.pow(2,Se),Yt=[Dt*ft.x,Dt*ft.y,0],cr=[Dt*bt.x,Dt*bt.y,0],hr=kl.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,Se),jr=R.minzoom||0;!R.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(jr=Se);let ea=R.terrain?2/Math.min(this.tileSize,R.tileSize)*this.tileSize:3,qe=_t=>({aabb:new Fc([_t*Dt,0,0],[(_t+1)*Dt,Dt,0]),zoom:0,x:0,y:0,wrap:_t,fullyVisible:!1}),Je=[],ot=[],ht=Se,At=R.reparseOverscaled?De:Se;if(this._renderWorldCopies)for(let _t=1;_t<=3;_t++)Je.push(qe(-_t)),Je.push(qe(_t));for(Je.push(qe(0));Je.length>0;){let _t=Je.pop(),Pt=_t.x,er=_t.y,nr=_t.fullyVisible;if(!nr){let ga=_t.aabb.intersects(hr);if(ga===0)continue;nr=ga===2}let pr=R.terrain?Yt:cr,Sr=_t.aabb.distanceX(pr),Wr=_t.aabb.distanceY(pr),ha=Math.max(Math.abs(Sr),Math.abs(Wr));if(_t.zoom===ht||ha>ea+(1<=jr){let ga=ht-_t.zoom,Pa=Yt[0]-.5-(Pt<>1),di=_t.zoom+1,pi=_t.aabb.quadrant(ga);if(R.terrain){let Ci=new t.S(di,_t.wrap,di,Pa,Ja),$i=R.terrain.getMinMaxElevation(Ci),Bn=(ae=$i.minElevation)!==null&&ae!==void 0?ae:this.elevation,Sn=(we=$i.maxElevation)!==null&&we!==void 0?we:this.elevation;pi=new Fc([pi.min[0],pi.min[1],Bn],[pi.max[0],pi.max[1],Sn])}Je.push({aabb:pi,zoom:di,x:Pa,y:Ja,wrap:_t.wrap,fullyVisible:nr})}}return ot.sort((_t,Pt)=>_t.distanceSq-Pt.distanceSq).map(_t=>_t.tileID)}resize(R,ae){this.width=R,this.height=ae,this.pixelsToGLUnits=[2/R,-2/ae],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(R){return Math.pow(2,R)}scaleZoom(R){return Math.log(R)/Math.LN2}project(R){let ae=t.ac(R.lat,-85.051129,vu);return new t.P(t.O(R.lng)*this.worldSize,t.Q(ae)*this.worldSize)}unproject(R){return new t.Z(R.x/this.worldSize,R.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(R){let ae=this.elevation,we=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,Se=this.pointLocation(this.centerPoint,R),De=R.getElevationForLngLatZoom(Se,this.tileZoom);if(!(this.elevation-De))return;let ft=we+ae-De,bt=Math.cos(this._pitch)*this.cameraToCenterDistance/ft/t.b5(1,Se.lat),Dt=this.scaleZoom(bt/this.tileSize);this._elevation=De,this._center=Se,this.zoom=Dt}setLocationAtPoint(R,ae){let we=this.pointCoordinate(ae),Se=this.pointCoordinate(this.centerPoint),De=this.locationCoordinate(R),ft=new t.Z(De.x-(we.x-Se.x),De.y-(we.y-Se.y));this.center=this.coordinateLocation(ft),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(R,ae){return ae?this.coordinatePoint(this.locationCoordinate(R),ae.getElevationForLngLatZoom(R,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(R))}pointLocation(R,ae){return this.coordinateLocation(this.pointCoordinate(R,ae))}locationCoordinate(R){return t.Z.fromLngLat(R)}coordinateLocation(R){return R&&R.toLngLat()}pointCoordinate(R,ae){if(ae){let jr=ae.pointCoordinate(R);if(jr!=null)return jr}let we=[R.x,R.y,0,1],Se=[R.x,R.y,1,1];t.af(we,we,this.pixelMatrixInverse),t.af(Se,Se,this.pixelMatrixInverse);let De=we[3],ft=Se[3],bt=we[1]/De,Dt=Se[1]/ft,Yt=we[2]/De,cr=Se[2]/ft,hr=Yt===cr?0:(0-Yt)/(cr-Yt);return new t.Z(t.y.number(we[0]/De,Se[0]/ft,hr)/this.worldSize,t.y.number(bt,Dt,hr)/this.worldSize)}coordinatePoint(R,ae=0,we=this.pixelMatrix){let Se=[R.x*this.worldSize,R.y*this.worldSize,ae,1];return t.af(Se,Se,we),new t.P(Se[0]/Se[3],Se[1]/Se[3])}getBounds(){let R=Math.max(0,this.height/2-this.getHorizon());return new ie().extend(this.pointLocation(new t.P(0,R))).extend(this.pointLocation(new t.P(this.width,R))).extend(this.pointLocation(new t.P(this.width,this.height))).extend(this.pointLocation(new t.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ie([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,vu])}calculateTileMatrix(R){let ae=R.canonical,we=this.worldSize/this.zoomScale(ae.z),Se=ae.x+Math.pow(2,ae.z)*R.wrap,De=t.an(new Float64Array(16));return t.J(De,De,[Se*we,ae.y*we,0]),t.K(De,De,[we/t.X,we/t.X,1]),De}calculatePosMatrix(R,ae=!1){let we=R.key,Se=ae?this._alignedPosMatrixCache:this._posMatrixCache;if(Se[we])return Se[we];let De=this.calculateTileMatrix(R);return t.L(De,ae?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,De),Se[we]=new Float32Array(De),Se[we]}calculateFogMatrix(R){let ae=R.key,we=this._fogMatrixCache;if(we[ae])return we[ae];let Se=this.calculateTileMatrix(R);return t.L(Se,this.fogMatrix,Se),we[ae]=new Float32Array(Se),we[ae]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(R,ae){ae=t.ac(+ae,this.minZoom,this.maxZoom);let we={center:new t.N(R.lng,R.lat),zoom:ae},Se=this.lngRange;if(!this._renderWorldCopies&&Se===null){let _t=179.9999999999;Se=[-_t,_t]}let De=this.tileSize*this.zoomScale(we.zoom),ft=0,bt=De,Dt=0,Yt=De,cr=0,hr=0,{x:jr,y:ea}=this.size;if(this.latRange){let _t=this.latRange;ft=t.Q(_t[1])*De,bt=t.Q(_t[0])*De,bt-ftbt&&(ht=bt-_t)}if(Se){let _t=(Dt+Yt)/2,Pt=qe;this._renderWorldCopies&&(Pt=t.b3(qe,_t-De/2,_t+De/2));let er=jr/2;Pt-erYt&&(ot=Yt-er)}if(ot!==void 0||ht!==void 0){let _t=new t.P(ot??qe,ht??Je);we.center=this.unproject.call({worldSize:De},_t).wrap()}return we}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let R=this._unmodified,{center:ae,zoom:we}=this.getConstrained(this.center,this.zoom);this.center=ae,this.zoom=we,this._unmodified=R,this._constraining=!1}_calcMatrices(){if(!this.height)return;let R=this.centerOffset,ae=this.point.x,we=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.b5(1,this.center.lat)*this.worldSize;let Se=t.an(new Float64Array(16));t.K(Se,Se,[this.width/2,-this.height/2,1]),t.J(Se,Se,[1,-1,0]),this.labelPlaneMatrix=Se,Se=t.an(new Float64Array(16)),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[-1,-1,0]),t.K(Se,Se,[2/this.width,2/this.height,1]),this.glCoordMatrix=Se;let De=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),ft=Math.min(this.elevation,this.minElevationForCurrentTile),bt=De-ft*this._pixelPerMeter/Math.cos(this._pitch),Dt=ft<0?bt:De,Yt=Math.PI/2+this._pitch,cr=this._fov*(.5+R.y/this.height),hr=Math.sin(cr)*Dt/Math.sin(t.ac(Math.PI-Yt-cr,.01,Math.PI-.01)),jr=this.getHorizon(),ea=2*Math.atan(jr/this.cameraToCenterDistance)*(.5+R.y/(2*jr)),qe=Math.sin(ea)*Dt/Math.sin(t.ac(Math.PI-Yt-ea,.01,Math.PI-.01)),Je=Math.min(hr,qe);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Je+Dt),this.nearZ=this.height/50,Se=new Float64Array(16),t.b6(Se,this._fov,this.width/this.height,this.nearZ,this.farZ),Se[8]=2*-R.x/this.width,Se[9]=2*R.y/this.height,this.projectionMatrix=t.ae(Se),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[0,0,-this.cameraToCenterDistance]),t.b7(Se,Se,this._pitch),t.ad(Se,Se,this.angle),t.J(Se,Se,[-ae,-we,0]),this.mercatorMatrix=t.K([],Se,[this.worldSize,this.worldSize,this.worldSize]),t.K(Se,Se,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.L(new Float64Array(16),this.labelPlaneMatrix,Se),t.J(Se,Se,[0,0,-this.elevation]),this.modelViewProjectionMatrix=Se,this.invModelViewProjectionMatrix=t.as([],Se),this.fogMatrix=new Float64Array(16),t.b6(this.fogMatrix,this._fov,this.width/this.height,De,this.farZ),this.fogMatrix[8]=2*-R.x/this.width,this.fogMatrix[9]=2*R.y/this.height,t.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),t.b7(this.fogMatrix,this.fogMatrix,this._pitch),t.ad(this.fogMatrix,this.fogMatrix,this.angle),t.J(this.fogMatrix,this.fogMatrix,[-ae,-we,0]),t.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=t.L(new Float64Array(16),this.labelPlaneMatrix,Se);let ot=this.width%2/2,ht=this.height%2/2,At=Math.cos(this.angle),_t=Math.sin(this.angle),Pt=ae-Math.round(ae)+At*ot+_t*ht,er=we-Math.round(we)+At*ht+_t*ot,nr=new Float64Array(Se);if(t.J(nr,nr,[Pt>.5?Pt-1:Pt,er>.5?er-1:er,0]),this.alignedModelViewProjectionMatrix=nr,Se=t.as(new Float64Array(16),this.pixelMatrix),!Se)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Se,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let R=this.pointCoordinate(new t.P(0,0)),ae=[R.x*this.worldSize,R.y*this.worldSize,0,1];return t.af(ae,ae,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let R=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.P(0,R))}getCameraQueryGeometry(R){let ae=this.getCameraPoint();if(R.length===1)return[R[0],ae];{let we=ae.x,Se=ae.y,De=ae.x,ft=ae.y;for(let bt of R)we=Math.min(we,bt.x),Se=Math.min(Se,bt.y),De=Math.max(De,bt.x),ft=Math.max(ft,bt.y);return[new t.P(we,Se),new t.P(De,Se),new t.P(De,ft),new t.P(we,ft),new t.P(we,Se)]}}lngLatToCameraDepth(R,ae){let we=this.locationCoordinate(R),Se=[we.x*this.worldSize,we.y*this.worldSize,ae,1];return t.af(Se,Se,this.modelViewProjectionMatrix),Se[2]/Se[3]}}function hh(Oe,R){let ae,we=!1,Se=null,De=null,ft=()=>{Se=null,we&&(Oe.apply(De,ae),Se=setTimeout(ft,R),we=!1)};return(...bt)=>(we=!0,De=this,ae=bt,Se||ft(),Se)}class Sh{constructor(R){this._getCurrentHash=()=>{let ae=window.location.hash.replace("#","");if(this._hashName){let we;return ae.split("&").map(Se=>Se.split("=")).forEach(Se=>{Se[0]===this._hashName&&(we=Se)}),(we&&we[1]||"").split("/")}return ae.split("/")},this._onHashChange=()=>{let ae=this._getCurrentHash();if(ae.length>=3&&!ae.some(we=>isNaN(we))){let we=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(ae[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+ae[2],+ae[1]],zoom:+ae[0],bearing:we,pitch:+(ae[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let ae=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,ae)},this._removeHash=()=>{let ae=this._getCurrentHash();if(ae.length===0)return;let we=ae.join("/"),Se=we;Se.split("&").length>0&&(Se=Se.split("&")[0]),this._hashName&&(Se=`${this._hashName}=${we}`);let De=window.location.hash.replace(Se,"");De.startsWith("#&")?De=De.slice(0,1)+De.slice(2):De==="#"&&(De="");let ft=window.location.href.replace(/(#.+)?$/,De);ft=ft.replace("&&","&"),window.history.replaceState(window.history.state,null,ft)},this._updateHash=hh(this._updateHashUnthrottled,300),this._hashName=R&&encodeURIComponent(R)}addTo(R){return this._map=R,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(R){let ae=this._map.getCenter(),we=Math.round(100*this._map.getZoom())/100,Se=Math.ceil((we*Math.LN2+Math.log(512/360/.5))/Math.LN10),De=Math.pow(10,Se),ft=Math.round(ae.lng*De)/De,bt=Math.round(ae.lat*De)/De,Dt=this._map.getBearing(),Yt=this._map.getPitch(),cr="";if(cr+=R?`/${ft}/${bt}/${we}`:`${we}/${bt}/${ft}`,(Dt||Yt)&&(cr+="/"+Math.round(10*Dt)/10),Yt&&(cr+=`/${Math.round(Yt)}`),this._hashName){let hr=this._hashName,jr=!1,ea=window.location.hash.slice(1).split("&").map(qe=>{let Je=qe.split("=")[0];return Je===hr?(jr=!0,`${Je}=${cr}`):qe}).filter(qe=>qe);return jr||ea.push(`${hr}=${cr}`),`#${ea.join("&")}`}return`#${cr}`}}let Uu={linearity:.3,easing:t.b8(0,0,.3,1)},bc=t.e({deceleration:2500,maxSpeed:1400},Uu),lc=t.e({deceleration:20,maxSpeed:1400},Uu),hp=t.e({deceleration:1e3,maxSpeed:360},Uu),vf=t.e({deceleration:1e3,maxSpeed:90},Uu);class Tf{constructor(R){this._map=R,this.clear()}clear(){this._inertiaBuffer=[]}record(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.now(),settings:R})}_drainInertiaBuffer(){let R=this._inertiaBuffer,ae=i.now();for(;R.length>0&&ae-R[0].time>160;)R.shift()}_onMoveEnd(R){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let ae={zoom:0,bearing:0,pitch:0,pan:new t.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:De}of this._inertiaBuffer)ae.zoom+=De.zoomDelta||0,ae.bearing+=De.bearingDelta||0,ae.pitch+=De.pitchDelta||0,De.panDelta&&ae.pan._add(De.panDelta),De.around&&(ae.around=De.around),De.pinchAround&&(ae.pinchAround=De.pinchAround);let we=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,Se={};if(ae.pan.mag()){let De=zf(ae.pan.mag(),we,t.e({},bc,R||{}));Se.offset=ae.pan.mult(De.amount/ae.pan.mag()),Se.center=this._map.transform.center,Lu(Se,De)}if(ae.zoom){let De=zf(ae.zoom,we,lc);Se.zoom=this._map.transform.zoom+De.amount,Lu(Se,De)}if(ae.bearing){let De=zf(ae.bearing,we,hp);Se.bearing=this._map.transform.bearing+t.ac(De.amount,-179,179),Lu(Se,De)}if(ae.pitch){let De=zf(ae.pitch,we,vf);Se.pitch=this._map.transform.pitch+De.amount,Lu(Se,De)}if(Se.zoom||Se.bearing){let De=ae.pinchAround===void 0?ae.around:ae.pinchAround;Se.around=De?this._map.unproject(De):this._map.getCenter()}return this.clear(),t.e(Se,{noMoveStart:!0})}}function Lu(Oe,R){(!Oe.duration||Oe.durationae.unproject(Dt)),bt=De.reduce((Dt,Yt,cr,hr)=>Dt.add(Yt.div(hr.length)),new t.P(0,0));super(R,{points:De,point:bt,lngLats:ft,lngLat:ae.unproject(bt),originalEvent:we}),this._defaultPrevented=!1}}class Mh extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){super(R,{originalEvent:we}),this._defaultPrevented=!1}}class Ff{constructor(R,ae){this._map=R,this._clickTolerance=ae.clickTolerance}reset(){delete this._mousedownPos}wheel(R){return this._firePreventable(new Mh(R.type,this._map,R))}mousedown(R,ae){return this._mousedownPos=ae,this._firePreventable(new au(R.type,this._map,R))}mouseup(R){this._map.fire(new au(R.type,this._map,R))}click(R,ae){this._mousedownPos&&this._mousedownPos.dist(ae)>=this._clickTolerance||this._map.fire(new au(R.type,this._map,R))}dblclick(R){return this._firePreventable(new au(R.type,this._map,R))}mouseover(R){this._map.fire(new au(R.type,this._map,R))}mouseout(R){this._map.fire(new au(R.type,this._map,R))}touchstart(R){return this._firePreventable(new $c(R.type,this._map,R))}touchmove(R){this._map.fire(new $c(R.type,this._map,R))}touchend(R){this._map.fire(new $c(R.type,this._map,R))}touchcancel(R){this._map.fire(new $c(R.type,this._map,R))}_firePreventable(R){if(this._map.fire(R),R.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class il{constructor(R){this._map=R}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(R){this._map.fire(new au(R.type,this._map,R))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new au("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(R){this._delayContextMenu?this._contextMenuEvent=R:this._ignoreContextMenu||this._map.fire(new au(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class mu{constructor(R){this._map=R}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(R){return this.transform.pointLocation(t.P.convert(R),this._map.terrain)}}class gu{constructor(R,ae){this._map=R,this._tr=new mu(R),this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=ae.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(R,ae){this.isEnabled()&&R.shiftKey&&R.button===0&&(n.disableDrag(),this._startPos=this._lastPos=ae,this._active=!0)}mousemoveWindow(R,ae){if(!this._active)return;let we=ae;if(this._lastPos.equals(we)||!this._box&&we.dist(this._startPos)De.fitScreenCoordinates(we,Se,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",R)}keydown(R){this._active&&R.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",R))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(n.remove(this._box),this._box=null),n.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(R,ae){return this._map.fire(new t.k(R,{originalEvent:ae}))}}function Jf(Oe,R){if(Oe.length!==R.length)throw new Error(`The number of touches and points are not equal - touches ${Oe.length}, points ${R.length}`);let ae={};for(let we=0;wethis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=R.timeStamp),we.length===this.numTouches&&(this.centroid=function(Se){let De=new t.P(0,0);for(let ft of Se)De._add(ft);return De.div(Se.length)}(ae),this.touches=Jf(we,ae)))}touchmove(R,ae,we){if(this.aborted||!this.centroid)return;let Se=Jf(we,ae);for(let De in this.touches){let ft=Se[De];(!ft||ft.dist(this.touches[De])>30)&&(this.aborted=!0)}}touchend(R,ae,we){if((!this.centroid||R.timeStamp-this.startTime>500)&&(this.aborted=!0),we.length===0){let Se=!this.aborted&&this.centroid;if(this.reset(),Se)return Se}}}class mf{constructor(R){this.singleTap=new el(R),this.numTaps=R.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(R,ae,we){this.singleTap.touchstart(R,ae,we)}touchmove(R,ae,we){this.singleTap.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this.singleTap.touchend(R,ae,we);if(Se){let De=R.timeStamp-this.lastTime<500,ft=!this.lastTap||this.lastTap.dist(Se)<30;if(De&&ft||this.reset(),this.count++,this.lastTime=R.timeStamp,this.lastTap=Se,this.count===this.numTaps)return this.reset(),Se}}}class wc{constructor(R){this._tr=new mu(R),this._zoomIn=new mf({numTouches:1,numTaps:2}),this._zoomOut=new mf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(R,ae,we){this._zoomIn.touchstart(R,ae,we),this._zoomOut.touchstart(R,ae,we)}touchmove(R,ae,we){this._zoomIn.touchmove(R,ae,we),this._zoomOut.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this._zoomIn.touchend(R,ae,we),De=this._zoomOut.touchend(R,ae,we),ft=this._tr;return Se?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom+1,around:ft.unproject(Se)},{originalEvent:R})}):De?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom-1,around:ft.unproject(De)},{originalEvent:R})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ju{constructor(R){this._enabled=!!R.enable,this._moveStateManager=R.moveStateManager,this._clickTolerance=R.clickTolerance||1,this._moveFunction=R.move,this._activateOnStart=!!R.activateOnStart,R.assignEvents(this),this.reset()}reset(R){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(R)}_move(...R){let ae=this._moveFunction(...R);if(ae.bearingDelta||ae.pitchDelta||ae.around||ae.panDelta)return this._active=!0,ae}dragStart(R,ae){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(R)&&(this._moveStateManager.startMove(R),this._lastPoint=ae.length?ae[0]:ae,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(R,ae){if(!this.isEnabled())return;let we=this._lastPoint;if(!we)return;if(R.preventDefault(),!this._moveStateManager.isValidMoveEvent(R))return void this.reset(R);let Se=ae.length?ae[0]:ae;return!this._moved&&Se.dist(we){Oe.mousedown=Oe.dragStart,Oe.mousemoveWindow=Oe.dragMove,Oe.mouseup=Oe.dragEnd,Oe.contextmenu=R=>{R.preventDefault()}},Vl=({enable:Oe,clickTolerance:R,bearingDegreesPerPixelMoved:ae=.8})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({bearingDelta:(De.x-Se.x)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})},Qf=({enable:Oe,clickTolerance:R,pitchDegreesPerPixelMoved:ae=-.5})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({pitchDelta:(De.y-Se.y)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})};class Vu{constructor(R,ae){this._clickTolerance=R.clickTolerance||1,this._map=ae,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new t.P(0,0)}_shouldBePrevented(R){return R<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(R,ae,we){return this._calculateTransform(R,ae,we)}touchmove(R,ae,we){if(this._active){if(!this._shouldBePrevented(we.length))return R.preventDefault(),this._calculateTransform(R,ae,we);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",R)}}touchend(R,ae,we){this._calculateTransform(R,ae,we),this._active&&this._shouldBePrevented(we.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(R,ae,we){we.length>0&&(this._active=!0);let Se=Jf(we,ae),De=new t.P(0,0),ft=new t.P(0,0),bt=0;for(let Yt in Se){let cr=Se[Yt],hr=this._touches[Yt];hr&&(De._add(cr),ft._add(cr.sub(hr)),bt++,Se[Yt]=cr)}if(this._touches=Se,this._shouldBePrevented(bt)||!ft.mag())return;let Dt=ft.div(bt);return this._sum._add(Dt),this._sum.mag()Math.abs(Oe.x)}class ef extends Tc{constructor(R){super(),this._currentTouchCount=0,this._map=R}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(R,ae,we){super.touchstart(R,ae,we),this._currentTouchCount=we.length}_start(R){this._lastPoints=R,Qu(R[0].sub(R[1]))&&(this._valid=!1)}_move(R,ae,we){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let Se=R[0].sub(this._lastPoints[0]),De=R[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(Se,De,we.timeStamp),this._valid?(this._lastPoints=R,this._active=!0,{pitchDelta:(Se.y+De.y)/2*-.5}):void 0}gestureBeginsVertically(R,ae,we){if(this._valid!==void 0)return this._valid;let Se=R.mag()>=2,De=ae.mag()>=2;if(!Se&&!De)return;if(!Se||!De)return this._firstMove===void 0&&(this._firstMove=we),we-this._firstMove<100&&void 0;let ft=R.y>0==ae.y>0;return Qu(R)&&Qu(ae)&&ft}}let Zt={panStep:100,bearingStep:15,pitchStep:10};class fr{constructor(R){this._tr=new mu(R);let ae=Zt;this._panStep=ae.panStep,this._bearingStep=ae.bearingStep,this._pitchStep=ae.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(R){if(R.altKey||R.ctrlKey||R.metaKey)return;let ae=0,we=0,Se=0,De=0,ft=0;switch(R.keyCode){case 61:case 107:case 171:case 187:ae=1;break;case 189:case 109:case 173:ae=-1;break;case 37:R.shiftKey?we=-1:(R.preventDefault(),De=-1);break;case 39:R.shiftKey?we=1:(R.preventDefault(),De=1);break;case 38:R.shiftKey?Se=1:(R.preventDefault(),ft=-1);break;case 40:R.shiftKey?Se=-1:(R.preventDefault(),ft=1);break;default:return}return this._rotationDisabled&&(we=0,Se=0),{cameraAnimation:bt=>{let Dt=this._tr;bt.easeTo({duration:300,easeId:"keyboardHandler",easing:Yr,zoom:ae?Math.round(Dt.zoom)+ae*(R.shiftKey?2:1):Dt.zoom,bearing:Dt.bearing+we*this._bearingStep,pitch:Dt.pitch+Se*this._pitchStep,offset:[-De*this._panStep,-ft*this._panStep],center:Dt.center},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Yr(Oe){return Oe*(2-Oe)}let qr=4.000244140625;class ba{constructor(R,ae){this._onTimeout=we=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(we)},this._map=R,this._tr=new mu(R),this._triggerRenderFrame=ae,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(R){this._defaultZoomRate=R}setWheelZoomRate(R){this._wheelZoomRate=R}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!R&&R.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(R){return!!this._map.cooperativeGestures.isEnabled()&&!(R.ctrlKey||this._map.cooperativeGestures.isBypassed(R))}wheel(R){if(!this.isEnabled())return;if(this._shouldBePrevented(R))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",R);let ae=R.deltaMode===WheelEvent.DOM_DELTA_LINE?40*R.deltaY:R.deltaY,we=i.now(),Se=we-(this._lastWheelEventTime||0);this._lastWheelEventTime=we,ae!==0&&ae%qr==0?this._type="wheel":ae!==0&&Math.abs(ae)<4?this._type="trackpad":Se>400?(this._type=null,this._lastValue=ae,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(Se*ae)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ae+=this._lastValue)),R.shiftKey&&ae&&(ae/=4),this._type&&(this._lastWheelEvent=R,this._delta-=ae,this._active||this._start(R)),R.preventDefault()}_start(R){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let ae=n.mousePos(this._map.getCanvas(),R),we=this._tr;this._around=ae.y>we.transform.height/2-we.transform.getHorizon()?t.N.convert(this._aroundCenter?we.center:we.unproject(ae)):t.N.convert(we.center),this._aroundPoint=we.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let R=this._tr.transform;if(this._delta!==0){let Dt=this._type==="wheel"&&Math.abs(this._delta)>qr?this._wheelZoomRate:this._defaultZoomRate,Yt=2/(1+Math.exp(-Math.abs(this._delta*Dt)));this._delta<0&&Yt!==0&&(Yt=1/Yt);let cr=typeof this._targetZoom=="number"?R.zoomScale(this._targetZoom):R.scale;this._targetZoom=Math.min(R.maxZoom,Math.max(R.minZoom,R.scaleZoom(cr*Yt))),this._type==="wheel"&&(this._startZoom=R.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let ae=typeof this._targetZoom=="number"?this._targetZoom:R.zoom,we=this._startZoom,Se=this._easing,De,ft=!1,bt=i.now()-this._lastWheelEventTime;if(this._type==="wheel"&&we&&Se&&bt){let Dt=Math.min(bt/200,1),Yt=Se(Dt);De=t.y.number(we,ae,Yt),Dt<1?this._frameId||(this._frameId=!0):ft=!0}else De=ae,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:De-R.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(R){let ae=t.b9;if(this._prevEase){let we=this._prevEase,Se=(i.now()-we.start)/we.duration,De=we.easing(Se+.01)-we.easing(Se),ft=.27/Math.sqrt(De*De+1e-4)*.01,bt=Math.sqrt(.0729-ft*ft);ae=t.b8(ft,bt,.25,1)}return this._prevEase={start:i.now(),duration:R,easing:ae},ae}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class Ka{constructor(R,ae){this._clickZoom=R,this._tapZoom=ae}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class oi{constructor(R){this._tr=new mu(R),this.reset()}reset(){this._active=!1}dblclick(R,ae){return R.preventDefault(),{cameraAnimation:we=>{we.easeTo({duration:300,zoom:this._tr.zoom+(R.shiftKey?-1:1),around:this._tr.unproject(ae)},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class yi{constructor(){this._tap=new mf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(R,ae,we){if(!this._swipePoint)if(this._tapTime){let Se=ae[0],De=R.timeStamp-this._tapTime<500,ft=this._tapPoint.dist(Se)<30;De&&ft?we.length>0&&(this._swipePoint=Se,this._swipeTouch=we[0].identifier):this.reset()}else this._tap.touchstart(R,ae,we)}touchmove(R,ae,we){if(this._tapTime){if(this._swipePoint){if(we[0].identifier!==this._swipeTouch)return;let Se=ae[0],De=Se.y-this._swipePoint.y;return this._swipePoint=Se,R.preventDefault(),this._active=!0,{zoomDelta:De/128}}}else this._tap.touchmove(R,ae,we)}touchend(R,ae,we){if(this._tapTime)this._swipePoint&&we.length===0&&this.reset();else{let Se=this._tap.touchend(R,ae,we);Se&&(this._tapTime=R.timeStamp,this._tapPoint=Se)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ki{constructor(R,ae,we){this._el=R,this._mousePan=ae,this._touchPan=we}enable(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Bi{constructor(R,ae,we){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=ae,this._mousePitch=we}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class li{constructor(R,ae,we,Se){this._el=R,this._touchZoom=ae,this._touchRotate=we,this._tapDragZoom=Se,this._rotationDisabled=!1,this._enabled=!0}enable(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class _i{constructor(R,ae){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=R,this._options=ae,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let R=this._map.getCanvasContainer();R.classList.add("maplibregl-cooperative-gestures"),this._container=n.create("div","maplibregl-cooperative-gesture-screen",R);let ae=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(ae=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let we=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),Se=document.createElement("div");Se.className="maplibregl-desktop-message",Se.textContent=ae,this._container.appendChild(Se);let De=document.createElement("div");De.className="maplibregl-mobile-message",De.textContent=we,this._container.appendChild(De),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(n.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(R){return R[this._bypassKey]}notifyGestureBlocked(R,ae){this._enabled&&(this._map.fire(new t.k("cooperativegestureprevented",{gestureType:R,originalEvent:ae})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let vi=Oe=>Oe.zoom||Oe.drag||Oe.pitch||Oe.rotate;class ti extends t.k{}function rn(Oe){return Oe.panDelta&&Oe.panDelta.mag()||Oe.zoomDelta||Oe.bearingDelta||Oe.pitchDelta}class Kn{constructor(R,ae){this.handleWindowEvent=Se=>{this.handleEvent(Se,`${Se.type}Window`)},this.handleEvent=(Se,De)=>{if(Se.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let ft=Se.type==="renderFrame"?void 0:Se,bt={needsRenderFrame:!1},Dt={},Yt={},cr=Se.touches,hr=cr?this._getMapTouches(cr):void 0,jr=hr?n.touchPos(this._map.getCanvas(),hr):n.mousePos(this._map.getCanvas(),Se);for(let{handlerName:Je,handler:ot,allowed:ht}of this._handlers){if(!ot.isEnabled())continue;let At;this._blockedByActive(Yt,ht,Je)?ot.reset():ot[De||Se.type]&&(At=ot[De||Se.type](Se,jr,hr),this.mergeHandlerResult(bt,Dt,At,Je,ft),At&&At.needsRenderFrame&&this._triggerRenderFrame()),(At||ot.isActive())&&(Yt[Je]=ot)}let ea={};for(let Je in this._previousActiveHandlers)Yt[Je]||(ea[Je]=ft);this._previousActiveHandlers=Yt,(Object.keys(ea).length||rn(bt))&&(this._changes.push([bt,Dt,ea]),this._triggerRenderFrame()),(Object.keys(Yt).length||rn(bt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:qe}=bt;qe&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],qe(this._map))},this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tf(R),this._bearingSnap=ae.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ae);let we=this._el;this._listeners=[[we,"touchstart",{passive:!0}],[we,"touchmove",{passive:!1}],[we,"touchend",void 0],[we,"touchcancel",void 0],[we,"mousedown",void 0],[we,"mousemove",void 0],[we,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[we,"mouseover",void 0],[we,"mouseout",void 0],[we,"dblclick",void 0],[we,"click",void 0],[we,"keydown",{capture:!1}],[we,"keyup",void 0],[we,"wheel",{passive:!1}],[we,"contextmenu",void 0],[window,"blur",void 0]];for(let[Se,De,ft]of this._listeners)n.addEventListener(Se,De,Se===document?this.handleWindowEvent:this.handleEvent,ft)}destroy(){for(let[R,ae,we]of this._listeners)n.removeEventListener(R,ae,R===document?this.handleWindowEvent:this.handleEvent,we)}_addDefaultHandlers(R){let ae=this._map,we=ae.getCanvasContainer();this._add("mapEvent",new Ff(ae,R));let Se=ae.boxZoom=new gu(ae,R);this._add("boxZoom",Se),R.interactive&&R.boxZoom&&Se.enable();let De=ae.cooperativeGestures=new _i(ae,R.cooperativeGestures);this._add("cooperativeGestures",De),R.cooperativeGestures&&De.enable();let ft=new wc(ae),bt=new oi(ae);ae.doubleClickZoom=new Ka(bt,ft),this._add("tapZoom",ft),this._add("clickZoom",bt),R.interactive&&R.doubleClickZoom&&ae.doubleClickZoom.enable();let Dt=new yi;this._add("tapDragZoom",Dt);let Yt=ae.touchPitch=new ef(ae);this._add("touchPitch",Yt),R.interactive&&R.touchPitch&&ae.touchPitch.enable(R.touchPitch);let cr=Vl(R),hr=Qf(R);ae.dragRotate=new Bi(R,cr,hr),this._add("mouseRotate",cr,["mousePitch"]),this._add("mousePitch",hr,["mouseRotate"]),R.interactive&&R.dragRotate&&ae.dragRotate.enable();let jr=(({enable:At,clickTolerance:_t})=>{let Pt=new uc({checkCorrectEvent:er=>n.mouseButton(er)===0&&!er.ctrlKey});return new ju({clickTolerance:_t,move:(er,nr)=>({around:nr,panDelta:nr.sub(er)}),activateOnStart:!0,moveStateManager:Pt,enable:At,assignEvents:$f})})(R),ea=new Vu(R,ae);ae.dragPan=new ki(we,jr,ea),this._add("mousePan",jr),this._add("touchPan",ea,["touchZoom","touchRotate"]),R.interactive&&R.dragPan&&ae.dragPan.enable(R.dragPan);let qe=new Oc,Je=new iu;ae.touchZoomRotate=new li(we,Je,qe,Dt),this._add("touchRotate",qe,["touchPan","touchZoom"]),this._add("touchZoom",Je,["touchPan","touchRotate"]),R.interactive&&R.touchZoomRotate&&ae.touchZoomRotate.enable(R.touchZoomRotate);let ot=ae.scrollZoom=new ba(ae,()=>this._triggerRenderFrame());this._add("scrollZoom",ot,["mousePan"]),R.interactive&&R.scrollZoom&&ae.scrollZoom.enable(R.scrollZoom);let ht=ae.keyboard=new fr(ae);this._add("keyboard",ht),R.interactive&&R.keyboard&&ae.keyboard.enable(),this._add("blockableMapEvent",new il(ae))}_add(R,ae,we){this._handlers.push({handlerName:R,handler:ae,allowed:we}),this._handlersById[R]=ae}stop(R){if(!this._updatingCamera){for(let{handler:ae}of this._handlers)ae.reset();this._inertia.clear(),this._fireEvents({},{},R),this._changes=[]}}isActive(){for(let{handler:R}of this._handlers)if(R.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!vi(this._eventsInProgress)||this.isZooming()}_blockedByActive(R,ae,we){for(let Se in R)if(Se!==we&&(!ae||ae.indexOf(Se)<0))return!0;return!1}_getMapTouches(R){let ae=[];for(let we of R)this._el.contains(we.target)&&ae.push(we);return ae}mergeHandlerResult(R,ae,we,Se,De){if(!we)return;t.e(R,we);let ft={handlerName:Se,originalEvent:we.originalEvent||De};we.zoomDelta!==void 0&&(ae.zoom=ft),we.panDelta!==void 0&&(ae.drag=ft),we.pitchDelta!==void 0&&(ae.pitch=ft),we.bearingDelta!==void 0&&(ae.rotate=ft)}_applyChanges(){let R={},ae={},we={};for(let[Se,De,ft]of this._changes)Se.panDelta&&(R.panDelta=(R.panDelta||new t.P(0,0))._add(Se.panDelta)),Se.zoomDelta&&(R.zoomDelta=(R.zoomDelta||0)+Se.zoomDelta),Se.bearingDelta&&(R.bearingDelta=(R.bearingDelta||0)+Se.bearingDelta),Se.pitchDelta&&(R.pitchDelta=(R.pitchDelta||0)+Se.pitchDelta),Se.around!==void 0&&(R.around=Se.around),Se.pinchAround!==void 0&&(R.pinchAround=Se.pinchAround),Se.noInertia&&(R.noInertia=Se.noInertia),t.e(ae,De),t.e(we,ft);this._updateMapTransform(R,ae,we),this._changes=[]}_updateMapTransform(R,ae,we){let Se=this._map,De=Se._getTransformForUpdate(),ft=Se.terrain;if(!(rn(R)||ft&&this._terrainMovement))return this._fireEvents(ae,we,!0);let{panDelta:bt,zoomDelta:Dt,bearingDelta:Yt,pitchDelta:cr,around:hr,pinchAround:jr}=R;jr!==void 0&&(hr=jr),Se._stop(!0),hr=hr||Se.transform.centerPoint;let ea=De.pointLocation(bt?hr.sub(bt):hr);Yt&&(De.bearing+=Yt),cr&&(De.pitch+=cr),Dt&&(De.zoom+=Dt),ft?this._terrainMovement||!ae.drag&&!ae.zoom?ae.drag&&this._terrainMovement?De.center=De.pointLocation(De.centerPoint.sub(bt)):De.setLocationAtPoint(ea,hr):(this._terrainMovement=!0,this._map._elevationFreeze=!0,De.setLocationAtPoint(ea,hr)):De.setLocationAtPoint(ea,hr),Se._applyUpdatedTransform(De),this._map._update(),R.noInertia||this._inertia.record(R),this._fireEvents(ae,we,!0)}_fireEvents(R,ae,we){let Se=vi(this._eventsInProgress),De=vi(R),ft={};for(let hr in R){let{originalEvent:jr}=R[hr];this._eventsInProgress[hr]||(ft[`${hr}start`]=jr),this._eventsInProgress[hr]=R[hr]}!Se&&De&&this._fireEvent("movestart",De.originalEvent);for(let hr in ft)this._fireEvent(hr,ft[hr]);De&&this._fireEvent("move",De.originalEvent);for(let hr in R){let{originalEvent:jr}=R[hr];this._fireEvent(hr,jr)}let bt={},Dt;for(let hr in this._eventsInProgress){let{handlerName:jr,originalEvent:ea}=this._eventsInProgress[hr];this._handlersById[jr].isActive()||(delete this._eventsInProgress[hr],Dt=ae[jr]||ea,bt[`${hr}end`]=Dt)}for(let hr in bt)this._fireEvent(hr,bt[hr]);let Yt=vi(this._eventsInProgress),cr=(Se||De)&&!Yt;if(cr&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let hr=this._map._getTransformForUpdate();hr.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(hr)}if(we&&cr){this._updatingCamera=!0;let hr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),jr=ea=>ea!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new ti("renderFrame",{timeStamp:R})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Wn extends t.E{constructor(R,ae){super(),this._renderFrameCallback=()=>{let we=Math.min((i.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(we)),we<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=R,this._bearingSnap=ae.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new t.N(this.transform.center.lng,this.transform.center.lat)}setCenter(R,ae){return this.jumpTo({center:R},ae)}panBy(R,ae,we){return R=t.P.convert(R).mult(-1),this.panTo(this.transform.center,t.e({offset:R},ae),we)}panTo(R,ae,we){return this.easeTo(t.e({center:R},ae),we)}getZoom(){return this.transform.zoom}setZoom(R,ae){return this.jumpTo({zoom:R},ae),this}zoomTo(R,ae,we){return this.easeTo(t.e({zoom:R},ae),we)}zoomIn(R,ae){return this.zoomTo(this.getZoom()+1,R,ae),this}zoomOut(R,ae){return this.zoomTo(this.getZoom()-1,R,ae),this}getBearing(){return this.transform.bearing}setBearing(R,ae){return this.jumpTo({bearing:R},ae),this}getPadding(){return this.transform.padding}setPadding(R,ae){return this.jumpTo({padding:R},ae),this}rotateTo(R,ae,we){return this.easeTo(t.e({bearing:R},ae),we)}resetNorth(R,ae){return this.rotateTo(0,t.e({duration:1e3},R),ae),this}resetNorthPitch(R,ae){return this.easeTo(t.e({bearing:0,pitch:0,duration:1e3},R),ae),this}snapToNorth(R,ae){return Math.abs(this.getBearing()){if(this._zooming&&(Se.zoom=t.y.number(De,ot,pr)),this._rotating&&(Se.bearing=t.y.number(ft,Yt,pr)),this._pitching&&(Se.pitch=t.y.number(bt,cr,pr)),this._padding&&(Se.interpolatePadding(Dt,hr,pr),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(pr),Pt)Se.setLocationAtPoint(Pt,er);else{let Sr=Se.zoomScale(Se.zoom-De),Wr=ot>De?Math.min(2,_t):Math.max(.5,_t),ha=Math.pow(Wr,1-pr),ga=Se.unproject(ht.add(At.mult(pr*ha)).mult(Sr));Se.setLocationAtPoint(Se.renderWorldCopies?ga.wrap():ga,ea)}this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},pr=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae,pr)},R),this}_prepareEase(R,ae,we={}){this._moving=!0,ae||we.moving||this.fire(new t.k("movestart",R)),this._zooming&&!we.zooming&&this.fire(new t.k("zoomstart",R)),this._rotating&&!we.rotating&&this.fire(new t.k("rotatestart",R)),this._pitching&&!we.pitching&&this.fire(new t.k("pitchstart",R))}_prepareElevation(R){this._elevationCenter=R,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(R,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(R){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let ae=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(R<1&&ae!==this._elevationTarget){let we=this._elevationTarget-this._elevationStart;this._elevationStart+=R*(we-(ae-(we*R+this._elevationStart))/(1-R)),this._elevationTarget=ae}this.transform.elevation=t.y.number(this._elevationStart,this._elevationTarget,R)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(R){let ae=R.getCameraPosition(),we=this.terrain.getElevationForLngLatZoom(ae.lngLat,R.zoom);if(ae.altitudethis._elevateCameraIfInsideTerrain(Se)),this.transformCameraUpdate&&ae.push(Se=>this.transformCameraUpdate(Se)),!ae.length)return;let we=R.clone();for(let Se of ae){let De=we.clone(),{center:ft,zoom:bt,pitch:Dt,bearing:Yt,elevation:cr}=Se(De);ft&&(De.center=ft),bt!==void 0&&(De.zoom=bt),Dt!==void 0&&(De.pitch=Dt),Yt!==void 0&&(De.bearing=Yt),cr!==void 0&&(De.elevation=cr),we.apply(De)}this.transform.apply(we)}_fireMoveEvents(R){this.fire(new t.k("move",R)),this._zooming&&this.fire(new t.k("zoom",R)),this._rotating&&this.fire(new t.k("rotate",R)),this._pitching&&this.fire(new t.k("pitch",R))}_afterEase(R,ae){if(this._easeId&&ae&&this._easeId===ae)return;delete this._easeId;let we=this._zooming,Se=this._rotating,De=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,we&&this.fire(new t.k("zoomend",R)),Se&&this.fire(new t.k("rotateend",R)),De&&this.fire(new t.k("pitchend",R)),this.fire(new t.k("moveend",R))}flyTo(R,ae){var we;if(!R.essential&&i.prefersReducedMotion){let Ci=t.M(R,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ci,ae)}this.stop(),R=t.e({offset:[0,0],speed:1.2,curve:1.42,easing:t.b9},R);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.zoomScale(ot-De),At=Se.project(qe),_t=Se.project(Je).sub(At),Pt=R.curve,er=Math.max(Se.width,Se.height),nr=er/ht,pr=_t.mag();if("minZoom"in R){let Ci=t.ac(Math.min(R.minZoom,De,ot),Se.minZoom,Se.maxZoom),$i=er/Se.zoomScale(Ci-De);Pt=Math.sqrt($i/pr*2)}let Sr=Pt*Pt;function Wr(Ci){let $i=(nr*nr-er*er+(Ci?-1:1)*Sr*Sr*pr*pr)/(2*(Ci?nr:er)*Sr*pr);return Math.log(Math.sqrt($i*$i+1)-$i)}function ha(Ci){return(Math.exp(Ci)-Math.exp(-Ci))/2}function ga(Ci){return(Math.exp(Ci)+Math.exp(-Ci))/2}let Pa=Wr(!1),Ja=function(Ci){return ga(Pa)/ga(Pa+Pt*Ci)},di=function(Ci){return er*((ga(Pa)*(ha($i=Pa+Pt*Ci)/ga($i))-ha(Pa))/Sr)/pr;var $i},pi=(Wr(!0)-Pa)/Pt;if(Math.abs(pr)<1e-6||!isFinite(pi)){if(Math.abs(er-nr)<1e-6)return this.easeTo(R,ae);let Ci=nr0,Ja=$i=>Math.exp(Ci*Pt*$i)}return R.duration="duration"in R?+R.duration:1e3*pi/("screenSpeed"in R?+R.screenSpeed/Pt:+R.speed),R.maxDuration&&R.duration>R.maxDuration&&(R.duration=0),this._zooming=!0,this._rotating=ft!==Yt,this._pitching=cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._prepareEase(ae,!1),this.terrain&&this._prepareElevation(Je),this._ease(Ci=>{let $i=Ci*pi,Bn=1/Ja($i);Se.zoom=Ci===1?ot:De+Se.scaleZoom(Bn),this._rotating&&(Se.bearing=t.y.number(ft,Yt,Ci)),this._pitching&&(Se.pitch=t.y.number(bt,cr,Ci)),this._padding&&(Se.interpolatePadding(Dt,hr,Ci),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(Ci);let Sn=Ci===1?Je:Se.unproject(At.add(_t.mult(di($i))).mult(Bn));Se.setLocationAtPoint(Se.renderWorldCopies?Sn.wrap():Sn,ea),this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},()=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae)},R),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(R,ae){var we;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let Se=this._onEaseEnd;delete this._onEaseEnd,Se.call(this,ae)}return R||(we=this.handlers)===null||we===void 0||we.stop(!1),this}_ease(R,ae,we){we.animate===!1||we.duration===0?(R(1),ae()):(this._easeStart=i.now(),this._easeOptions=we,this._onEaseFrame=R,this._onEaseEnd=ae,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(R,ae){R=t.b3(R,-180,180);let we=Math.abs(R-ae);return Math.abs(R-360-ae)180?-360:we<-180?360:0}queryTerrainElevation(R){return this.terrain?this.terrain.getElevationForLngLatZoom(t.N.convert(R),this.transform.tileZoom)-this.transform.elevation:null}}let Jn={compact:!0,customAttribution:'MapLibre'};class no{constructor(R=Jn){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=ae=>{!ae||ae.sourceDataType!=="metadata"&&ae.sourceDataType!=="visibility"&&ae.dataType!=="style"&&ae.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=R}getDefaultPosition(){return"bottom-right"}onAdd(R){return this._map=R,this._compact=this.options.compact,this._container=n.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=n.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=n.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){n.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(R,ae){let we=this._map._getUIString(`AttributionControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)}_updateAttributions(){if(!this._map.style)return;let R=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?R=R.concat(this.options.customAttribution.map(Se=>typeof Se!="string"?"":Se)):typeof this.options.customAttribution=="string"&&R.push(this.options.customAttribution)),this._map.style.stylesheet){let Se=this._map.style.stylesheet;this.styleOwner=Se.owner,this.styleId=Se.id}let ae=this._map.style.sourceCaches;for(let Se in ae){let De=ae[Se];if(De.used||De.usedForTerrain){let ft=De.getSource();ft.attribution&&R.indexOf(ft.attribution)<0&&R.push(ft.attribution)}}R=R.filter(Se=>String(Se).trim()),R.sort((Se,De)=>Se.length-De.length),R=R.filter((Se,De)=>{for(let ft=De+1;ft=0)return!1;return!0});let we=R.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,R.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class en{constructor(R={}){this._updateCompact=()=>{let ae=this._container.children;if(ae.length){let we=ae[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&we.classList.add("maplibregl-compact"):we.classList.remove("maplibregl-compact")}},this.options=R}getDefaultPosition(){return"bottom-left"}onAdd(R){this._map=R,this._compact=this.options&&this.options.compact,this._container=n.create("div","maplibregl-ctrl");let ae=n.create("a","maplibregl-ctrl-logo");return ae.target="_blank",ae.rel="noopener nofollow",ae.href="https://maplibre.org/",ae.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ae.setAttribute("rel","noopener nofollow"),this._container.appendChild(ae),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){n.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Ri{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(R){let ae=++this._id;return this._queue.push({callback:R,id:ae,cancelled:!1}),ae}remove(R){let ae=this._currentlyRunning,we=ae?this._queue.concat(ae):this._queue;for(let Se of we)if(Se.id===R)return void(Se.cancelled=!0)}run(R=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let ae=this._currentlyRunning=this._queue;this._queue=[];for(let we of ae)if(!we.cancelled&&(we.callback(R),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var co=t.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Wo extends t.E{constructor(R){super(),this.sourceCache=R,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,R.usedForTerrain=!0,R.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(R,ae){this.sourceCache.update(R,ae),this._renderableTilesKeys=[];let we={};for(let Se of R.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:ae}))we[Se.key]=!0,this._renderableTilesKeys.push(Se.key),this._tiles[Se.key]||(Se.posMatrix=new Float64Array(16),t.aP(Se.posMatrix,0,t.X,0,t.X,0,1),this._tiles[Se.key]=new nt(Se,this.tileSize));for(let Se in this._tiles)we[Se]||delete this._tiles[Se]}freeRtt(R){for(let ae in this._tiles){let we=this._tiles[ae];(!R||we.tileID.equals(R)||we.tileID.isChildOf(R)||R.isChildOf(we.tileID))&&(we.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(R=>this.getTileByID(R))}getTileByID(R){return this._tiles[R]}getTerrainCoords(R){let ae={};for(let we of this._renderableTilesKeys){let Se=this._tiles[we].tileID;if(Se.canonical.equals(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16),t.aP(De.posMatrix,0,t.X,0,t.X,0,1),ae[we]=De}else if(Se.canonical.isChildOf(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=Se.canonical.z-R.canonical.z,bt=Se.canonical.x-(Se.canonical.x>>ft<>ft<>ft;t.aP(De.posMatrix,0,Yt,0,Yt,0,1),t.J(De.posMatrix,De.posMatrix,[-bt*Yt,-Dt*Yt,0]),ae[we]=De}else if(R.canonical.isChildOf(Se.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=R.canonical.z-Se.canonical.z,bt=R.canonical.x-(R.canonical.x>>ft<>ft<>ft;t.aP(De.posMatrix,0,t.X,0,t.X,0,1),t.J(De.posMatrix,De.posMatrix,[bt*Yt,Dt*Yt,0]),t.K(De.posMatrix,De.posMatrix,[1/2**ft,1/2**ft,0]),ae[we]=De}}return ae}getSourceTile(R,ae){let we=this.sourceCache._source,Se=R.overscaledZ-this.deltaZoom;if(Se>we.maxzoom&&(Se=we.maxzoom),Se=we.minzoom&&(!De||!De.dem);)De=this.sourceCache.getTileByID(R.scaledTo(Se--).key);return De}tilesAfterTime(R=Date.now()){return Object.values(this._tiles).filter(ae=>ae.timeAdded>=R)}}class bs{constructor(R,ae,we){this.painter=R,this.sourceCache=new Wo(ae),this.options=we,this.exaggeration=typeof we.exaggeration=="number"?we.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(R,ae,we,Se=t.X){var De;if(!(ae>=0&&ae=0&&weR.canonical.z&&(R.canonical.z>=Se?De=R.canonical.z-Se:t.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let ft=R.canonical.x-(R.canonical.x>>De<>De<>8<<4|De>>8,ae[ft+3]=0;let we=new t.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(ae.buffer)),Se=new u(R,we,R.gl.RGBA,{premultiply:!1});return Se.bind(R.gl.NEAREST,R.gl.CLAMP_TO_EDGE),this._coordsTexture=Se,Se}pointCoordinate(R){this.painter.maybeDrawDepthAndCoords(!0);let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl,De=Math.round(R.x*this.painter.pixelRatio/devicePixelRatio),ft=Math.round(R.y*this.painter.pixelRatio/devicePixelRatio),bt=Math.round(this.painter.height/devicePixelRatio);we.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),Se.readPixels(De,bt-ft-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null);let Dt=ae[0]+(ae[2]>>4<<8),Yt=ae[1]+((15&ae[2])<<8),cr=this.coordsIndex[255-ae[3]],hr=cr&&this.sourceCache.getTileByID(cr);if(!hr)return null;let jr=this._coordsTextureSize,ea=(1<R.id!==ae),this._recentlyUsed.push(R.id)}stampObject(R){R.stamp=++this._stamp}getOrCreateFreeObject(){for(let ae of this._recentlyUsed)if(!this._objects[ae].inUse)return this._objects[ae];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let R=this._createObject(this._objects.length);return this._objects.push(R),R}freeObject(R){R.inUse=!1}freeAllObjects(){for(let R of this._objects)this.freeObject(R)}isFull(){return!(this._objects.length!R.inUse)===!1}}let Ms={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Hs{constructor(R,ae){this.painter=R,this.terrain=ae,this.pool=new Xs(R.context,30,ae.sourceCache.tileSize*ae.qualityFactor)}destruct(){this.pool.destruct()}getTexture(R){return this.pool.getObjectForId(R.rtt[this._stacks.length-1].id).texture}prepareForRender(R,ae){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=R._order.filter(we=>!R._layers[we].isHidden(ae)),this._coordsDescendingInv={};for(let we in R.sourceCaches){this._coordsDescendingInv[we]={};let Se=R.sourceCaches[we].getVisibleCoordinates();for(let De of Se){let ft=this.terrain.sourceCache.getTerrainCoords(De);for(let bt in ft)this._coordsDescendingInv[we][bt]||(this._coordsDescendingInv[we][bt]=[]),this._coordsDescendingInv[we][bt].push(ft[bt])}}this._coordsDescendingInvStr={};for(let we of R._order){let Se=R._layers[we],De=Se.source;if(Ms[Se.type]&&!this._coordsDescendingInvStr[De]){this._coordsDescendingInvStr[De]={};for(let ft in this._coordsDescendingInv[De])this._coordsDescendingInvStr[De][ft]=this._coordsDescendingInv[De][ft].map(bt=>bt.key).sort().join()}}for(let we of this._renderableTiles)for(let Se in this._coordsDescendingInvStr){let De=this._coordsDescendingInvStr[Se][we.tileID.key];De&&De!==we.rttCoords[Se]&&(we.rtt=[])}}renderLayer(R){if(R.isHidden(this.painter.transform.zoom))return!1;let ae=R.type,we=this.painter,Se=this._renderableLayerIds[this._renderableLayerIds.length-1]===R.id;if(Ms[ae]&&(this._prevType&&Ms[this._prevType]||this._stacks.push([]),this._prevType=ae,this._stacks[this._stacks.length-1].push(R.id),!Se))return!0;if(Ms[this._prevType]||Ms[ae]&&Se){this._prevType=ae;let De=this._stacks.length-1,ft=this._stacks[De]||[];for(let bt of this._renderableTiles){if(this.pool.isFull()&&(ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(bt),bt.rtt[De]){let Yt=this.pool.getObjectForId(bt.rtt[De].id);if(Yt.stamp===bt.rtt[De].stamp){this.pool.useObject(Yt);continue}}let Dt=this.pool.getOrCreateFreeObject();this.pool.useObject(Dt),this.pool.stampObject(Dt),bt.rtt[De]={id:Dt.id,stamp:Dt.stamp},we.context.bindFramebuffer.set(Dt.fbo.framebuffer),we.context.clear({color:t.aM.transparent,stencil:0}),we.currentStencilSource=void 0;for(let Yt=0;Yt{Oe.touchstart=Oe.dragStart,Oe.touchmoveWindow=Oe.dragMove,Oe.touchend=Oe.dragEnd},Ln={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ao{constructor(R,ae,we=!1){this.mousedown=ft=>{this.startMouse(t.e({},ft,{ctrlKey:!0,preventDefault:()=>ft.preventDefault()}),n.mousePos(this.element,ft)),n.addEventListener(window,"mousemove",this.mousemove),n.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=ft=>{this.moveMouse(ft,n.mousePos(this.element,ft))},this.mouseup=ft=>{this.mouseRotate.dragEnd(ft),this.mousePitch&&this.mousePitch.dragEnd(ft),this.offTemp()},this.touchstart=ft=>{ft.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.startTouch(ft,this._startPos),n.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.addEventListener(window,"touchend",this.touchend))},this.touchmove=ft=>{ft.targetTouches.length!==1?this.reset():(this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.moveTouch(ft,this._lastPos))},this.touchend=ft=>{ft.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let Se=R.dragRotate._mouseRotate.getClickTolerance(),De=R.dragRotate._mousePitch.getClickTolerance();this.element=ae,this.mouseRotate=Vl({clickTolerance:Se,enable:!0}),this.touchRotate=(({enable:ft,clickTolerance:bt,bearingDegreesPerPixelMoved:Dt=.8})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({bearingDelta:(hr.x-cr.x)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:Se,enable:!0}),this.map=R,we&&(this.mousePitch=Qf({clickTolerance:De,enable:!0}),this.touchPitch=(({enable:ft,clickTolerance:bt,pitchDegreesPerPixelMoved:Dt=-.5})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({pitchDelta:(hr.y-cr.y)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:De,enable:!0})),n.addEventListener(ae,"mousedown",this.mousedown),n.addEventListener(ae,"touchstart",this.touchstart,{passive:!1}),n.addEventListener(ae,"touchcancel",this.reset)}startMouse(R,ae){this.mouseRotate.dragStart(R,ae),this.mousePitch&&this.mousePitch.dragStart(R,ae),n.disableDrag()}startTouch(R,ae){this.touchRotate.dragStart(R,ae),this.touchPitch&&this.touchPitch.dragStart(R,ae),n.disableDrag()}moveMouse(R,ae){let we=this.map,{bearingDelta:Se}=this.mouseRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.mousePitch){let{pitchDelta:De}=this.mousePitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}moveTouch(R,ae){let we=this.map,{bearingDelta:Se}=this.touchRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.touchPitch){let{pitchDelta:De}=this.touchPitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}off(){let R=this.element;n.removeEventListener(R,"mousedown",this.mousedown),n.removeEventListener(R,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend),n.removeEventListener(R,"touchcancel",this.reset),this.offTemp()}offTemp(){n.enableDrag(),n.removeEventListener(window,"mousemove",this.mousemove),n.removeEventListener(window,"mouseup",this.mouseup),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend)}}let js;function Ts(Oe,R,ae){let we=new t.N(Oe.lng,Oe.lat);if(Oe=new t.N(Oe.lng,Oe.lat),R){let Se=new t.N(Oe.lng-360,Oe.lat),De=new t.N(Oe.lng+360,Oe.lat),ft=ae.locationPoint(Oe).distSqr(R);ae.locationPoint(Se).distSqr(R)180;){let Se=ae.locationPoint(Oe);if(Se.x>=0&&Se.y>=0&&Se.x<=ae.width&&Se.y<=ae.height)break;Oe.lng>ae.center.lng?Oe.lng-=360:Oe.lng+=360}return Oe.lng!==we.lng&&ae.locationPoint(Oe).y>ae.height/2-ae.getHorizon()?Oe:we}let nu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Pu(Oe,R,ae){let we=Oe.classList;for(let Se in nu)we.remove(`maplibregl-${ae}-anchor-${Se}`);we.add(`maplibregl-${ae}-anchor-${R}`)}class ec extends t.E{constructor(R){if(super(),this._onKeyPress=ae=>{let we=ae.code,Se=ae.charCode||ae.keyCode;we!=="Space"&&we!=="Enter"&&Se!==32&&Se!==13||this.togglePopup()},this._onMapClick=ae=>{let we=ae.originalEvent.target,Se=this._element;this._popup&&(we===Se||Se.contains(we))&&this.togglePopup()},this._update=ae=>{var we;if(!this._map)return;let Se=this._map.loaded()&&!this._map.isMoving();(ae?.type==="terrain"||ae?.type==="render"&&!Se)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Ts(this._lngLat,this._flatPos,this._map.transform):(we=this._lngLat)===null||we===void 0?void 0:we.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let De="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?De=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(De=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let ft="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ft="rotateX(0deg)":this._pitchAlignment==="map"&&(ft=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||ae&&ae.type!=="moveend"||(this._pos=this._pos.round()),n.setTransform(this._element,`${nu[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${ft} ${De}`),i.frameAsync(new AbortController).then(()=>{this._updateOpacity(ae&&ae.type==="moveend")}).catch(()=>{})},this._onMove=ae=>{if(!this._isDragging){let we=this._clickTolerance||this._map._clickTolerance;this._isDragging=ae.point.dist(this._pointerdownPos)>=we}this._isDragging&&(this._pos=ae.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new t.k("dragstart"))),this.fire(new t.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new t.k("dragend")),this._state="inactive"},this._addDragHandler=ae=>{this._element.contains(ae.originalEvent.target)&&(ae.preventDefault(),this._positionDelta=ae.point.sub(this._pos).add(this._offset),this._pointerdownPos=ae.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=R&&R.anchor||"center",this._color=R&&R.color||"#3FB1CE",this._scale=R&&R.scale||1,this._draggable=R&&R.draggable||!1,this._clickTolerance=R&&R.clickTolerance||0,this._subpixelPositioning=R&&R.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=R&&R.rotation||0,this._rotationAlignment=R&&R.rotationAlignment||"auto",this._pitchAlignment=R&&R.pitchAlignment&&R.pitchAlignment!=="auto"?R.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(R?.opacity,R?.opacityWhenCovered),R&&R.element)this._element=R.element,this._offset=t.P.convert(R&&R.offset||[0,0]);else{this._defaultMarker=!0,this._element=n.create("div");let ae=n.createNS("http://www.w3.org/2000/svg","svg"),we=41,Se=27;ae.setAttributeNS(null,"display","block"),ae.setAttributeNS(null,"height",`${we}px`),ae.setAttributeNS(null,"width",`${Se}px`),ae.setAttributeNS(null,"viewBox",`0 0 ${Se} ${we}`);let De=n.createNS("http://www.w3.org/2000/svg","g");De.setAttributeNS(null,"stroke","none"),De.setAttributeNS(null,"stroke-width","1"),De.setAttributeNS(null,"fill","none"),De.setAttributeNS(null,"fill-rule","evenodd");let ft=n.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"fill-rule","nonzero");let bt=n.createNS("http://www.w3.org/2000/svg","g");bt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),bt.setAttributeNS(null,"fill","#000000");let Dt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let ht of Dt){let At=n.createNS("http://www.w3.org/2000/svg","ellipse");At.setAttributeNS(null,"opacity","0.04"),At.setAttributeNS(null,"cx","10.5"),At.setAttributeNS(null,"cy","5.80029008"),At.setAttributeNS(null,"rx",ht.rx),At.setAttributeNS(null,"ry",ht.ry),bt.appendChild(At)}let Yt=n.createNS("http://www.w3.org/2000/svg","g");Yt.setAttributeNS(null,"fill",this._color);let cr=n.createNS("http://www.w3.org/2000/svg","path");cr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Yt.appendChild(cr);let hr=n.createNS("http://www.w3.org/2000/svg","g");hr.setAttributeNS(null,"opacity","0.25"),hr.setAttributeNS(null,"fill","#000000");let jr=n.createNS("http://www.w3.org/2000/svg","path");jr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),hr.appendChild(jr);let ea=n.createNS("http://www.w3.org/2000/svg","g");ea.setAttributeNS(null,"transform","translate(6.0, 7.0)"),ea.setAttributeNS(null,"fill","#FFFFFF");let qe=n.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Je=n.createNS("http://www.w3.org/2000/svg","circle");Je.setAttributeNS(null,"fill","#000000"),Je.setAttributeNS(null,"opacity","0.25"),Je.setAttributeNS(null,"cx","5.5"),Je.setAttributeNS(null,"cy","5.5"),Je.setAttributeNS(null,"r","5.4999962");let ot=n.createNS("http://www.w3.org/2000/svg","circle");ot.setAttributeNS(null,"fill","#FFFFFF"),ot.setAttributeNS(null,"cx","5.5"),ot.setAttributeNS(null,"cy","5.5"),ot.setAttributeNS(null,"r","5.4999962"),qe.appendChild(Je),qe.appendChild(ot),ft.appendChild(bt),ft.appendChild(Yt),ft.appendChild(hr),ft.appendChild(ea),ft.appendChild(qe),ae.appendChild(ft),ae.setAttributeNS(null,"height",we*this._scale+"px"),ae.setAttributeNS(null,"width",Se*this._scale+"px"),this._element.appendChild(ae),this._offset=t.P.convert(R&&R.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",ae=>{ae.preventDefault()}),this._element.addEventListener("mousedown",ae=>{ae.preventDefault()}),Pu(this._element,this._anchor,"marker"),R&&R.className)for(let ae of R.className.split(" "))this._element.classList.add(ae);this._popup=null}addTo(R){return this.remove(),this._map=R,this._element.setAttribute("aria-label",R._getUIString("Marker.Title")),R.getCanvasContainer().appendChild(this._element),R.on("move",this._update),R.on("moveend",this._update),R.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),n.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(R){return this._lngLat=t.N.convert(R),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(R){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),R){if(!("offset"in R.options)){let Se=Math.abs(13.5)/Math.SQRT2;R.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[Se,-1*(38.1-13.5+Se)],"bottom-right":[-Se,-1*(38.1-13.5+Se)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=R,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(R){return this._subpixelPositioning=R,this}getPopup(){return this._popup}togglePopup(){let R=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:R?(R.isOpen()?R.remove():(R.setLngLat(this._lngLat),R.addTo(this._map)),this):this}_updateOpacity(R=!1){var ae,we;if(!(!((ae=this._map)===null||ae===void 0)&&ae.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(R)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let Se=this._map,De=Se.terrain.depthAtPoint(this._pos),ft=Se.terrain.getElevationForLngLatZoom(this._lngLat,Se.transform.tileZoom);if(Se.transform.lngLatToCameraDepth(this._lngLat,ft)-De<.006)return void(this._element.style.opacity=this._opacity);let bt=-this._offset.y/Se.transform._pixelPerMeter,Dt=Math.sin(Se.getPitch()*Math.PI/180)*bt,Yt=Se.terrain.depthAtPoint(new t.P(this._pos.x,this._pos.y-this._offset.y)),cr=Se.transform.lngLatToCameraDepth(this._lngLat,ft+Dt)-Yt>.006;!((we=this._popup)===null||we===void 0)&&we.isOpen()&&cr&&this._popup.remove(),this._element.style.opacity=cr?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(R){return this._offset=t.P.convert(R),this._update(),this}addClassName(R){this._element.classList.add(R)}removeClassName(R){this._element.classList.remove(R)}toggleClassName(R){return this._element.classList.toggle(R)}setDraggable(R){return this._draggable=!!R,this._map&&(R?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(R){return this._rotation=R||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(R){return this._rotationAlignment=R||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(R){return this._pitchAlignment=R&&R!=="auto"?R:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(R,ae){return R===void 0&&ae===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),R!==void 0&&(this._opacity=R),ae!==void 0&&(this._opacityWhenCovered=ae),this._map&&this._updateOpacity(!0),this}}let tf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},yu=0,Bc=!1,Iu={maxWidth:100,unit:"metric"};function Ac(Oe,R,ae){let we=ae&&ae.maxWidth||100,Se=Oe._container.clientHeight/2,De=Oe.unproject([0,Se]),ft=Oe.unproject([we,Se]),bt=De.distanceTo(ft);if(ae&&ae.unit==="imperial"){let Dt=3.2808*bt;Dt>5280?ro(R,we,Dt/5280,Oe._getUIString("ScaleControl.Miles")):ro(R,we,Dt,Oe._getUIString("ScaleControl.Feet"))}else ae&&ae.unit==="nautical"?ro(R,we,bt/1852,Oe._getUIString("ScaleControl.NauticalMiles")):bt>=1e3?ro(R,we,bt/1e3,Oe._getUIString("ScaleControl.Kilometers")):ro(R,we,bt,Oe._getUIString("ScaleControl.Meters"))}function ro(Oe,R,ae,we){let Se=function(De){let ft=Math.pow(10,`${Math.floor(De)}`.length-1),bt=De/ft;return bt=bt>=10?10:bt>=5?5:bt>=3?3:bt>=2?2:bt>=1?1:function(Dt){let Yt=Math.pow(10,Math.ceil(-Math.log(Dt)/Math.LN10));return Math.round(Dt*Yt)/Yt}(bt),ft*bt}(ae);Oe.style.width=R*(Se/ae)+"px",Oe.innerHTML=`${Se} ${we}`}let Po={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Nc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(Oe){if(Oe){if(typeof Oe=="number"){let R=Math.round(Math.abs(Oe)/Math.SQRT2);return{center:new t.P(0,0),top:new t.P(0,Oe),"top-left":new t.P(R,R),"top-right":new t.P(-R,R),bottom:new t.P(0,-Oe),"bottom-left":new t.P(R,-R),"bottom-right":new t.P(-R,-R),left:new t.P(Oe,0),right:new t.P(-Oe,0)}}if(Oe instanceof t.P||Array.isArray(Oe)){let R=t.P.convert(Oe);return{center:R,top:R,"top-left":R,"top-right":R,bottom:R,"bottom-left":R,"bottom-right":R,left:R,right:R}}return{center:t.P.convert(Oe.center||[0,0]),top:t.P.convert(Oe.top||[0,0]),"top-left":t.P.convert(Oe["top-left"]||[0,0]),"top-right":t.P.convert(Oe["top-right"]||[0,0]),bottom:t.P.convert(Oe.bottom||[0,0]),"bottom-left":t.P.convert(Oe["bottom-left"]||[0,0]),"bottom-right":t.P.convert(Oe["bottom-right"]||[0,0]),left:t.P.convert(Oe.left||[0,0]),right:t.P.convert(Oe.right||[0,0])}}return hc(new t.P(0,0))}let pc=r;e.AJAXError=t.bh,e.Evented=t.E,e.LngLat=t.N,e.MercatorCoordinate=t.Z,e.Point=t.P,e.addProtocol=t.bi,e.config=t.a,e.removeProtocol=t.bj,e.AttributionControl=no,e.BoxZoomHandler=gu,e.CanvasSource=et,e.CooperativeGesturesHandler=_i,e.DoubleClickZoomHandler=Ka,e.DragPanHandler=ki,e.DragRotateHandler=Bi,e.EdgeInsets=$u,e.FullscreenControl=class extends t.E{constructor(Oe={}){super(),this._onFullscreenChange=()=>{var R;let ae=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((R=ae?.shadowRoot)===null||R===void 0)&&R.fullscreenElement;)ae=ae.shadowRoot.fullscreenElement;ae===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,Oe&&Oe.container&&(Oe.container instanceof HTMLElement?this._container=Oe.container:t.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(Oe){return this._map=Oe,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){n.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let Oe=this._fullscreenButton=n.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);n.create("span","maplibregl-ctrl-icon",Oe).setAttribute("aria-hidden","true"),Oe.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let Oe=this._getTitle();this._fullscreenButton.setAttribute("aria-label",Oe),this._fullscreenButton.title=Oe}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new t.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new t.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},e.GeoJSONSource=Ie,e.GeolocateControl=class extends t.E{constructor(Oe){super(),this._onSuccess=R=>{if(this._map){if(this._isOutOfMapMaxBounds(R))return this._setErrorState(),this.fire(new t.k("outofmaxbounds",R)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=R,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(R),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(R),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new t.k("geolocate",R)),this._finish()}},this._updateCamera=R=>{let ae=new t.N(R.coords.longitude,R.coords.latitude),we=R.coords.accuracy,Se=this._map.getBearing(),De=t.e({bearing:Se},this.options.fitBoundsOptions),ft=ie.fromLngLat(ae,we);this._map.fitBounds(ft,De,{geolocateSource:!0})},this._updateMarker=R=>{if(R){let ae=new t.N(R.coords.longitude,R.coords.latitude);this._accuracyCircleMarker.setLngLat(ae).addTo(this._map),this._userLocationDotMarker.setLngLat(ae).addTo(this._map),this._accuracy=R.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=R=>{if(this._map){if(this.options.trackUserLocation)if(R.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(R.code===3&&Bc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new t.k("error",R)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",R=>R.preventDefault()),this._geolocateButton=n.create("button","maplibregl-ctrl-geolocate",this._container),n.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=R=>{if(this._map){if(R===!1){t.w("Geolocation support is not available so the GeolocateControl will be disabled.");let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}else{let ae=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ec({element:this._dotElement}),this._circleElement=n.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ec({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",ae=>{ae.geolocateSource||this._watchState!=="ACTIVE_LOCK"||ae.originalEvent&&ae.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new t.k("trackuserlocationend")),this.fire(new t.k("userlocationlostfocus")))})}},this.options=t.e({},tf,Oe)}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return t._(this,arguments,void 0,function*(R=!1){if(js!==void 0&&!R)return js;if(window.navigator.permissions===void 0)return js=!!window.navigator.geolocation,js;try{js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{js=!!window.navigator.geolocation}return js})}().then(R=>this._finishSetupUI(R)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),n.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,yu=0,Bc=!1}_isOutOfMapMaxBounds(Oe){let R=this._map.getMaxBounds(),ae=Oe.coords;return R&&(ae.longitudeR.getEast()||ae.latitudeR.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let Oe=this._map.getBounds(),R=Oe.getSouthEast(),ae=Oe.getNorthEast(),we=R.distanceTo(ae),Se=Math.ceil(this._accuracy/(we/this._map._container.clientHeight)*2);this._circleElement.style.width=`${Se}px`,this._circleElement.style.height=`${Se}px`}trigger(){if(!this._setup)return t.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":yu--,Bc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new t.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.k("trackuserlocationstart")),this.fire(new t.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let Oe;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),yu++,yu>1?(Oe={maximumAge:6e5,timeout:0},Bc=!0):(Oe=this.options.positionOptions,Bc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,Oe)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},e.Hash=Sh,e.ImageSource=at,e.KeyboardHandler=fr,e.LngLatBounds=ie,e.LogoControl=en,e.Map=class extends Wn{constructor(Oe){t.bf.mark(t.bg.create);let R=Object.assign(Object.assign({},fl),Oe);if(R.minZoom!=null&&R.maxZoom!=null&&R.minZoom>R.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(R.minPitch!=null&&R.maxPitch!=null&&R.minPitch>R.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(R.minPitch!=null&&R.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(R.maxPitch!=null&&R.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new xl(R.minZoom,R.maxZoom,R.minPitch,R.maxPitch,R.renderWorldCopies),{bearingSnap:R.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Ri,this._controls=[],this._mapId=t.a4(),this._contextLost=ae=>{ae.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new t.k("webglcontextlost",{originalEvent:ae}))},this._contextRestored=ae=>{this._setupPainter(),this.resize(),this._update(),this.fire(new t.k("webglcontextrestored",{originalEvent:ae}))},this._onMapScroll=ae=>{if(ae.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=R.interactive,this._maxTileCacheSize=R.maxTileCacheSize,this._maxTileCacheZoomLevels=R.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=R.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=R.preserveDrawingBuffer===!0,this._antialias=R.antialias===!0,this._trackResize=R.trackResize===!0,this._bearingSnap=R.bearingSnap,this._refreshExpiredTiles=R.refreshExpiredTiles===!0,this._fadeDuration=R.fadeDuration,this._crossSourceCollisions=R.crossSourceCollisions===!0,this._collectResourceTiming=R.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},vs),R.locale),this._clickTolerance=R.clickTolerance,this._overridePixelRatio=R.pixelRatio,this._maxCanvasSize=R.maxCanvasSize,this.transformCameraUpdate=R.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=R.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=l.addThrottleControl(()=>this.isMoving()),this._requestManager=new _(R.transformRequest),typeof R.container=="string"){if(this._container=document.getElementById(R.container),!this._container)throw new Error(`Container '${R.container}' not found.`)}else{if(!(R.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=R.container}if(R.maxBounds&&this.setMaxBounds(R.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let ae=!1,we=hh(Se=>{this._trackResize&&!this._removed&&(this.resize(Se),this.redraw())},50);this._resizeObserver=new ResizeObserver(Se=>{ae?we(Se):ae=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Kn(this,R),this._hash=R.hash&&new Sh(typeof R.hash=="string"&&R.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:R.center,zoom:R.zoom,bearing:R.bearing,pitch:R.pitch}),R.bounds&&(this.resize(),this.fitBounds(R.bounds,t.e({},R.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=R.localIdeographFontFamily,this._validateStyle=R.validateStyle,R.style&&this.setStyle(R.style,{localIdeographFontFamily:R.localIdeographFontFamily}),R.attributionControl&&this.addControl(new no(typeof R.attributionControl=="boolean"?void 0:R.attributionControl)),R.maplibreLogo&&this.addControl(new en,R.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",ae=>{this._update(ae.dataType==="style"),this.fire(new t.k(`${ae.dataType}data`,ae))}),this.on("dataloading",ae=>{this.fire(new t.k(`${ae.dataType}dataloading`,ae))}),this.on("dataabort",ae=>{this.fire(new t.k("sourcedataabort",ae))})}_getMapId(){return this._mapId}addControl(Oe,R){if(R===void 0&&(R=Oe.getDefaultPosition?Oe.getDefaultPosition():"top-right"),!Oe||!Oe.onAdd)return this.fire(new t.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let ae=Oe.onAdd(this);this._controls.push(Oe);let we=this._controlPositions[R];return R.indexOf("bottom")!==-1?we.insertBefore(ae,we.firstChild):we.appendChild(ae),this}removeControl(Oe){if(!Oe||!Oe.onRemove)return this.fire(new t.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let R=this._controls.indexOf(Oe);return R>-1&&this._controls.splice(R,1),Oe.onRemove(this),this}hasControl(Oe){return this._controls.indexOf(Oe)>-1}calculateCameraOptionsFromTo(Oe,R,ae,we){return we==null&&this.terrain&&(we=this.terrain.getElevationForLngLatZoom(ae,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(Oe,R,ae,we)}resize(Oe){var R;let ae=this._containerDimensions(),we=ae[0],Se=ae[1],De=this._getClampedPixelRatio(we,Se);if(this._resizeCanvas(we,Se,De),this.painter.resize(we,Se,De),this.painter.overLimit()){let bt=this.painter.context.gl;this._maxCanvasSize=[bt.drawingBufferWidth,bt.drawingBufferHeight];let Dt=this._getClampedPixelRatio(we,Se);this._resizeCanvas(we,Se,Dt),this.painter.resize(we,Se,Dt)}this.transform.resize(we,Se),(R=this._requestedCameraState)===null||R===void 0||R.resize(we,Se);let ft=!this._moving;return ft&&(this.stop(),this.fire(new t.k("movestart",Oe)).fire(new t.k("move",Oe))),this.fire(new t.k("resize",Oe)),ft&&this.fire(new t.k("moveend",Oe)),this}_getClampedPixelRatio(Oe,R){let{0:ae,1:we}=this._maxCanvasSize,Se=this.getPixelRatio(),De=Oe*Se,ft=R*Se;return Math.min(De>ae?ae/De:1,ft>we?we/ft:1)*Se}getPixelRatio(){var Oe;return(Oe=this._overridePixelRatio)!==null&&Oe!==void 0?Oe:devicePixelRatio}setPixelRatio(Oe){this._overridePixelRatio=Oe,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(Oe){return this.transform.setMaxBounds(ie.convert(Oe)),this._update()}setMinZoom(Oe){if((Oe=Oe??-2)>=-2&&Oe<=this.transform.maxZoom)return this.transform.minZoom=Oe,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=Oe,this._update(),this.getZoom()>Oe&&this.setZoom(Oe),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(Oe){if((Oe=Oe??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Oe>=0&&Oe<=this.transform.maxPitch)return this.transform.minPitch=Oe,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(Oe>=this.transform.minPitch)return this.transform.maxPitch=Oe,this._update(),this.getPitch()>Oe&&this.setPitch(Oe),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(Oe){return this.transform.renderWorldCopies=Oe,this._update()}project(Oe){return this.transform.locationPoint(t.N.convert(Oe),this.style&&this.terrain)}unproject(Oe){return this.transform.pointLocation(t.P.convert(Oe),this.terrain)}isMoving(){var Oe;return this._moving||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isMoving())}isZooming(){var Oe;return this._zooming||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isZooming())}isRotating(){var Oe;return this._rotating||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isRotating())}_createDelegatedListener(Oe,R,ae){if(Oe==="mouseenter"||Oe==="mouseover"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:De=>{let ft=R.filter(Dt=>this.getLayer(Dt)),bt=ft.length!==0?this.queryRenderedFeatures(De.point,{layers:ft}):[];bt.length?we||(we=!0,ae.call(this,new au(Oe,this,De.originalEvent,{features:bt}))):we=!1},mouseout:()=>{we=!1}}}}if(Oe==="mouseleave"||Oe==="mouseout"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:ft=>{let bt=R.filter(Dt=>this.getLayer(Dt));(bt.length!==0?this.queryRenderedFeatures(ft.point,{layers:bt}):[]).length?we=!0:we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))},mouseout:ft=>{we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))}}}}{let we=Se=>{let De=R.filter(bt=>this.getLayer(bt)),ft=De.length!==0?this.queryRenderedFeatures(Se.point,{layers:De}):[];ft.length&&(Se.features=ft,ae.call(this,Se),delete Se.features)};return{layers:R,listener:ae,delegates:{[Oe]:we}}}}_saveDelegatedListener(Oe,R){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Oe]=this._delegatedListeners[Oe]||[],this._delegatedListeners[Oe].push(R)}_removeDelegatedListener(Oe,R,ae){if(!this._delegatedListeners||!this._delegatedListeners[Oe])return;let we=this._delegatedListeners[Oe];for(let Se=0;SeR.includes(ft))){for(let ft in De.delegates)this.off(ft,De.delegates[ft]);return void we.splice(Se,1)}}}on(Oe,R,ae){if(ae===void 0)return super.on(Oe,R);let we=this._createDelegatedListener(Oe,typeof R=="string"?[R]:R,ae);this._saveDelegatedListener(Oe,we);for(let Se in we.delegates)this.on(Se,we.delegates[Se]);return this}once(Oe,R,ae){if(ae===void 0)return super.once(Oe,R);let we=typeof R=="string"?[R]:R,Se=this._createDelegatedListener(Oe,we,ae);for(let De in Se.delegates){let ft=Se.delegates[De];Se.delegates[De]=(...bt)=>{this._removeDelegatedListener(Oe,we,ae),ft(...bt)}}this._saveDelegatedListener(Oe,Se);for(let De in Se.delegates)this.once(De,Se.delegates[De]);return this}off(Oe,R,ae){return ae===void 0?super.off(Oe,R):(this._removeDelegatedListener(Oe,typeof R=="string"?[R]:R,ae),this)}queryRenderedFeatures(Oe,R){if(!this.style)return[];let ae,we=Oe instanceof t.P||Array.isArray(Oe),Se=we?Oe:[[0,0],[this.transform.width,this.transform.height]];if(R=R||(we?{}:Oe)||{},Se instanceof t.P||typeof Se[0]=="number")ae=[t.P.convert(Se)];else{let De=t.P.convert(Se[0]),ft=t.P.convert(Se[1]);ae=[De,new t.P(ft.x,De.y),ft,new t.P(De.x,ft.y),De]}return this.style.queryRenderedFeatures(ae,R,this.transform)}querySourceFeatures(Oe,R){return this.style.querySourceFeatures(Oe,R)}setStyle(Oe,R){return(R=t.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},R)).diff!==!1&&R.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Oe?(this._diffStyle(Oe,R),this):(this._localIdeographFontFamily=R.localIdeographFontFamily,this._updateStyle(Oe,R))}setTransformRequest(Oe){return this._requestManager.setTransformRequest(Oe),this}_getUIString(Oe){let R=this._locale[Oe];if(R==null)throw new Error(`Missing UI string '${Oe}'`);return R}_updateStyle(Oe,R){if(R.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(Oe,R));let ae=this.style&&R.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!Oe)),Oe?(this.style=new Jr(this,R||{}),this.style.setEventedParent(this,{style:this.style}),typeof Oe=="string"?this.style.loadURL(Oe,R,ae):this.style.loadJSON(Oe,R,ae),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Jr(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(Oe,R){if(typeof Oe=="string"){let ae=this._requestManager.transformRequest(Oe,"Style");t.h(ae,new AbortController).then(we=>{this._updateDiff(we.data,R)}).catch(we=>{we&&this.fire(new t.j(we))})}else typeof Oe=="object"&&this._updateDiff(Oe,R)}_updateDiff(Oe,R){try{this.style.setState(Oe,R)&&this._update(!0)}catch(ae){t.w(`Unable to perform style diff: ${ae.message||ae.error||ae}. Rebuilding the style from scratch.`),this._updateStyle(Oe,R)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.w("There is no style added to the map.")}addSource(Oe,R){return this._lazyInitEmptyStyle(),this.style.addSource(Oe,R),this._update(!0)}isSourceLoaded(Oe){let R=this.style&&this.style.sourceCaches[Oe];if(R!==void 0)return R.loaded();this.fire(new t.j(new Error(`There is no source with ID '${Oe}'`)))}setTerrain(Oe){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),Oe){let R=this.style.sourceCaches[Oe.source];if(!R)throw new Error(`cannot load terrain, because there exists no source with ID: ${Oe.source}`);this.terrain===null&&R.reload();for(let ae in this.style._layers){let we=this.style._layers[ae];we.type==="hillshade"&&we.source===Oe.source&&t.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new bs(this.painter,R,Oe),this.painter.renderToTexture=new Hs(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=ae=>{ae.dataType==="style"?this.terrain.sourceCache.freeRtt():ae.dataType==="source"&&ae.tile&&(ae.sourceId!==Oe.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(ae.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new t.k("terrain",{terrain:Oe})),this}getTerrain(){var Oe,R;return(R=(Oe=this.terrain)===null||Oe===void 0?void 0:Oe.options)!==null&&R!==void 0?R:null}areTilesLoaded(){let Oe=this.style&&this.style.sourceCaches;for(let R in Oe){let ae=Oe[R]._tiles;for(let we in ae){let Se=ae[we];if(Se.state!=="loaded"&&Se.state!=="errored")return!1}}return!0}removeSource(Oe){return this.style.removeSource(Oe),this._update(!0)}getSource(Oe){return this.style.getSource(Oe)}addImage(Oe,R,ae={}){let{pixelRatio:we=1,sdf:Se=!1,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt}=ae;if(this._lazyInitEmptyStyle(),!(R instanceof HTMLImageElement||t.b(R))){if(R.width===void 0||R.height===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:cr,height:hr,data:jr}=R,ea=R;return this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},new Uint8Array(jr)),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0,userImage:ea}),ea.onAdd&&ea.onAdd(this,Oe),this}}{let{width:cr,height:hr,data:jr}=i.getImageData(R);this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},jr),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0})}}updateImage(Oe,R){let ae=this.style.getImage(Oe);if(!ae)return this.fire(new t.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let we=R instanceof HTMLImageElement||t.b(R)?i.getImageData(R):R,{width:Se,height:De,data:ft}=we;if(Se===void 0||De===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Se!==ae.data.width||De!==ae.data.height)return this.fire(new t.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let bt=!(R instanceof HTMLImageElement||t.b(R));return ae.data.replace(ft,bt),this.style.updateImage(Oe,ae),this}getImage(Oe){return this.style.getImage(Oe)}hasImage(Oe){return Oe?!!this.style.getImage(Oe):(this.fire(new t.j(new Error("Missing required image id"))),!1)}removeImage(Oe){this.style.removeImage(Oe)}loadImage(Oe){return l.getImage(this._requestManager.transformRequest(Oe,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(Oe,R){return this._lazyInitEmptyStyle(),this.style.addLayer(Oe,R),this._update(!0)}moveLayer(Oe,R){return this.style.moveLayer(Oe,R),this._update(!0)}removeLayer(Oe){return this.style.removeLayer(Oe),this._update(!0)}getLayer(Oe){return this.style.getLayer(Oe)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(Oe,R,ae){return this.style.setLayerZoomRange(Oe,R,ae),this._update(!0)}setFilter(Oe,R,ae={}){return this.style.setFilter(Oe,R,ae),this._update(!0)}getFilter(Oe){return this.style.getFilter(Oe)}setPaintProperty(Oe,R,ae,we={}){return this.style.setPaintProperty(Oe,R,ae,we),this._update(!0)}getPaintProperty(Oe,R){return this.style.getPaintProperty(Oe,R)}setLayoutProperty(Oe,R,ae,we={}){return this.style.setLayoutProperty(Oe,R,ae,we),this._update(!0)}getLayoutProperty(Oe,R){return this.style.getLayoutProperty(Oe,R)}setGlyphs(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(Oe,R),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(Oe,R,ae={}){return this._lazyInitEmptyStyle(),this.style.addSprite(Oe,R,ae,we=>{we||this._update(!0)}),this}removeSprite(Oe){return this._lazyInitEmptyStyle(),this.style.removeSprite(Oe),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setSprite(Oe,R,ae=>{ae||this._update(!0)}),this}setLight(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setLight(Oe,R),this._update(!0)}getLight(){return this.style.getLight()}setSky(Oe){return this._lazyInitEmptyStyle(),this.style.setSky(Oe),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(Oe,R){return this.style.setFeatureState(Oe,R),this._update()}removeFeatureState(Oe,R){return this.style.removeFeatureState(Oe,R),this._update()}getFeatureState(Oe){return this.style.getFeatureState(Oe)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let Oe=0,R=0;return this._container&&(Oe=this._container.clientWidth||400,R=this._container.clientHeight||300),[Oe,R]}_setupContainer(){let Oe=this._container;Oe.classList.add("maplibregl-map");let R=this._canvasContainer=n.create("div","maplibregl-canvas-container",Oe);this._interactive&&R.classList.add("maplibregl-interactive"),this._canvas=n.create("canvas","maplibregl-canvas",R),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let ae=this._containerDimensions(),we=this._getClampedPixelRatio(ae[0],ae[1]);this._resizeCanvas(ae[0],ae[1],we);let Se=this._controlContainer=n.create("div","maplibregl-control-container",Oe),De=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(ft=>{De[ft]=n.create("div",`maplibregl-ctrl-${ft} `,Se)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(Oe,R,ae){this._canvas.width=Math.floor(ae*Oe),this._canvas.height=Math.floor(ae*R),this._canvas.style.width=`${Oe}px`,this._canvas.style.height=`${R}px`}_setupPainter(){let Oe={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},R=null;this._canvas.addEventListener("webglcontextcreationerror",we=>{R={requestedAttributes:Oe},we&&(R.statusMessage=we.statusMessage,R.type=we.type)},{once:!0});let ae=this._canvas.getContext("webgl2",Oe)||this._canvas.getContext("webgl",Oe);if(!ae){let we="Failed to initialize WebGL";throw R?(R.message=we,new Error(JSON.stringify(R))):new Error(we)}this.painter=new xc(ae,this.transform),s.testSupport(ae)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(Oe){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||Oe,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(Oe){return this._update(),this._renderTaskQueue.add(Oe)}_cancelRenderFrame(Oe){this._renderTaskQueue.remove(Oe)}_render(Oe){let R=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Oe),this._removed)return;let ae=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let Se=this.transform.zoom,De=i.now();this.style.zoomHistory.update(Se,De);let ft=new t.z(Se,{now:De,fadeDuration:R,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),bt=ft.crossFadingFactor();bt===1&&bt===this._crossFadingFactor||(ae=!0,this._crossFadingFactor=bt),this.style.update(ft)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,R,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:R,showPadding:this.showPadding}),this.fire(new t.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.bf.mark(t.bg.load),this.fire(new t.k("load"))),this.style&&(this.style.hasTransitions()||ae)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let we=this._sourcesDirty||this._styleDirty||this._placementDirty;return we||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.k("idle")),!this._loaded||this._fullyLoaded||we||(this._fullyLoaded=!0,t.bf.mark(t.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var Oe;this._hash&&this._hash.remove();for(let ae of this._controls)ae.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),l.removeThrottleControl(this._imageQueueHandle),(Oe=this._resizeObserver)===null||Oe===void 0||Oe.disconnect();let R=this.painter.context.gl.getExtension("WEBGL_lose_context");R?.loseContext&&R.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),n.remove(this._canvasContainer),n.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),t.bf.clearMetrics(),this._removed=!0,this.fire(new t.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(Oe=>{t.bf.frame(Oe),this._frameRequest=null,this._render(Oe)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(Oe){this._showTileBoundaries!==Oe&&(this._showTileBoundaries=Oe,this._update())}get showPadding(){return!!this._showPadding}set showPadding(Oe){this._showPadding!==Oe&&(this._showPadding=Oe,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(Oe){this._showCollisionBoxes!==Oe&&(this._showCollisionBoxes=Oe,Oe?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(Oe){this._showOverdrawInspector!==Oe&&(this._showOverdrawInspector=Oe,this._update())}get repaint(){return!!this._repaint}set repaint(Oe){this._repaint!==Oe&&(this._repaint=Oe,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(Oe){this._vertices=Oe,this._update()}get version(){return Il}getCameraTargetElevation(){return this.transform.elevation}},e.MapMouseEvent=au,e.MapTouchEvent=$c,e.MapWheelEvent=Mh,e.Marker=ec,e.NavigationControl=class{constructor(Oe){this._updateZoomButtons=()=>{let R=this._map.getZoom(),ae=R===this._map.getMaxZoom(),we=R===this._map.getMinZoom();this._zoomInButton.disabled=ae,this._zoomOutButton.disabled=we,this._zoomInButton.setAttribute("aria-disabled",ae.toString()),this._zoomOutButton.setAttribute("aria-disabled",we.toString())},this._rotateCompassArrow=()=>{let R=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=R},this._setButtonTitle=(R,ae)=>{let we=this._map._getUIString(`NavigationControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)},this.options=t.e({},Ln,Oe),this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",R=>R.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",R=>this._map.zoomIn({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",R=>this._map.zoomOut({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",R=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:R}):this._map.resetNorth({},{originalEvent:R})}),this._compassIcon=n.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(Oe){return this._map=Oe,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ao(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){n.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(Oe,R){let ae=n.create("button",Oe,this._container);return ae.type="button",ae.addEventListener("click",R),ae}},e.Popup=class extends t.E{constructor(Oe){super(),this.remove=()=>(this._content&&n.remove(this._content),this._container&&(n.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new t.k("close"))),this),this._onMouseUp=R=>{this._update(R.point)},this._onMouseMove=R=>{this._update(R.point)},this._onDrag=R=>{this._update(R.point)},this._update=R=>{var ae;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=n.create("div","maplibregl-popup",this._map.getContainer()),this._tip=n.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let bt of this.options.className.split(" "))this._container.classList.add(bt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Ts(this._lngLat,this._flatPos,this._map.transform):(ae=this._lngLat)===null||ae===void 0?void 0:ae.wrap(),this._trackPointer&&!R)return;let we=this._flatPos=this._pos=this._trackPointer&&R?R:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&R?R:this._map.transform.locationPoint(this._lngLat));let Se=this.options.anchor,De=hc(this.options.offset);if(!Se){let bt=this._container.offsetWidth,Dt=this._container.offsetHeight,Yt;Yt=we.y+De.bottom.ythis._map.transform.height-Dt?["bottom"]:[],we.xthis._map.transform.width-bt/2&&Yt.push("right"),Se=Yt.length===0?"bottom":Yt.join("-")}let ft=we.add(De[Se]);this.options.subpixelPositioning||(ft=ft.round()),n.setTransform(this._container,`${nu[Se]} translate(${ft.x}px,${ft.y}px)`),Pu(this._container,Se,"popup")},this._onClose=()=>{this.remove()},this.options=t.e(Object.create(Po),Oe)}addTo(Oe){return this._map&&this.remove(),this._map=Oe,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new t.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(Oe){return this._lngLat=t.N.convert(Oe),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(Oe){return this.setDOMContent(document.createTextNode(Oe))}setHTML(Oe){let R=document.createDocumentFragment(),ae=document.createElement("body"),we;for(ae.innerHTML=Oe;we=ae.firstChild,we;)R.appendChild(we);return this.setDOMContent(R)}getMaxWidth(){var Oe;return(Oe=this._container)===null||Oe===void 0?void 0:Oe.style.maxWidth}setMaxWidth(Oe){return this.options.maxWidth=Oe,this._update(),this}setDOMContent(Oe){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=n.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(Oe),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(Oe){return this._container&&this._container.classList.add(Oe),this}removeClassName(Oe){return this._container&&this._container.classList.remove(Oe),this}setOffset(Oe){return this.options.offset=Oe,this._update(),this}toggleClassName(Oe){if(this._container)return this._container.classList.toggle(Oe)}setSubpixelPositioning(Oe){this.options.subpixelPositioning=Oe}_createCloseButton(){this.options.closeButton&&(this._closeButton=n.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let Oe=this._container.querySelector(Nc);Oe&&Oe.focus()}},e.RasterDEMTileSource=Be,e.RasterTileSource=Ae,e.ScaleControl=class{constructor(Oe){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=R=>{this.options.unit=R,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Iu),Oe)}getDefaultPosition(){return"bottom-left"}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-scale",Oe.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},e.ScrollZoomHandler=ba,e.Style=Jr,e.TerrainControl=class{constructor(Oe){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=Oe}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=n.create("button","maplibregl-ctrl-terrain",this._container),n.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){n.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},e.TwoFingersTouchPitchHandler=ef,e.TwoFingersTouchRotateHandler=Oc,e.TwoFingersTouchZoomHandler=iu,e.TwoFingersTouchZoomRotateHandler=li,e.VectorTileSource=be,e.VideoSource=it,e.addSourceType=(Oe,R)=>t._(void 0,void 0,void 0,function*(){if(Me(Oe))throw new Error(`A source type called "${Oe}" already exists.`);((ae,we)=>{lt[ae]=we})(Oe,R)}),e.clearPrewarmedResources=function(){let Oe=he;Oe&&(Oe.isPreloaded()&&Oe.numActive()===1?(Oe.release(Q),he=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},e.getMaxParallelImageRequests=function(){return t.a.MAX_PARALLEL_IMAGE_REQUESTS},e.getRTLTextPluginStatus=function(){return tt().getRTLTextPluginStatus()},e.getVersion=function(){return pc},e.getWorkerCount=function(){return ue.workerCount},e.getWorkerUrl=function(){return t.a.WORKER_URL},e.importScriptInWorkers=function(Oe){return Z().broadcast("IS",Oe)},e.prewarm=function(){$().acquire(Q)},e.setMaxParallelImageRequests=function(Oe){t.a.MAX_PARALLEL_IMAGE_REQUESTS=Oe},e.setRTLTextPlugin=function(Oe,R){return tt().setRTLTextPlugin(Oe,R)},e.setWorkerCount=function(Oe){ue.workerCount=Oe},e.setWorkerUrl=function(Oe){t.a.WORKER_URL=Oe}});var M=g;return M})}}),Tq=Ye({"src/plots/map/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=Ck(),M=_g();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s0){for(var s=0;s0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),Aq=Ye({"src/plots/map/map.js"(X,H){"use strict";var g=wq(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=_g(),p=Tq();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y;u.map?y=new Promise(function(f,P){u.updateMap(m,b,f,P)}):y=new Promise(function(f,P){u.createMap(m,b,f,P)}),d.push(y)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style),L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0})),B={};F.on("styleimagemissing",function(I){var N=I.id;if(!B[N]&&N.includes("-15")){B[N]=!0;var U=new Image(15,15);U.onload=function(){F.addImage(N,U)},U.crossOrigin="Anonymous",U.src="https://unpkg.com/maki@2.1.0/icons/"+N+".svg"}}),F.setTransformRequest(function(I){return I=I.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:I}}),F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var O=[];O.push(new Promise(function(I){F.once("load",I)})),O=O.concat(A.fetchTraceGeoData(m)),Promise.all(O).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y1)for(y=0;y-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;yd/2){var u=S.split("|").join("
");m.text(u).attr("data-unformatted",u).call(r.convertToTspans,i),b=t.bBox(m.node())}m.attr("transform",g(-3,-b.height+8)),E.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var y=1;b.width+6>d&&(y=d/(b.width+6));var f=[c.l+c.w*p.x[1],c.t+c.h*(1-p.y[0])];E.attr("transform",g(f[0],f[1])+x(y))}},X.updateFx=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=0;c=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),Lq=Ye({"src/traces/choroplethmap/index.js"(X,H){"use strict";H.exports={attributes:Lk(),supplyDefaults:kq(),colorbar:ag(),calc:sT(),plot:Cq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.updateOnSelect(x)}},getBelow:function(g,x){for(var A=x.getMapLayers(),M=A.length-2;M>=0;M--){var e=A[M].id;if(typeof e=="string"&&e.indexOf("water")===0){for(var t=M+1;t0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),Fq=Ye({"src/traces/densitymap/hover.js"(X,H){"use strict";var g=Co(),x=ET().hoverPoints,A=ET().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),Oq=Ye({"src/traces/densitymap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),Bq=Ye({"src/traces/densitymap/index.js"(X,H){"use strict";H.exports={attributes:Ik(),supplyDefaults:Iq(),colorbar:ag(),formatLabels:kk(),calc:Rq(),plot:zq(),hoverPoints:Fq(),eventData:Oq(),getBelow:function(g,x){for(var A=x.getMapLayers(),M=0;M0;){l=w[w.length-1];var S=x[l];if(r[l]=0&&a[l].push(o[m])}r[l]=E}else{if(e[l]===M[l]){for(var b=[],d=[],u=0,E=_.length-1;E>=0;--E){var y=_[E];if(t[y]=!1,b.push(y),d.push(a[y]),u+=a[y].length,o[y]=s.length,y===l){_.length=E;break}}s.push(b);for(var f=new Array(u),E=0;Em&&(m=n.source[_]),n.target[_]>m&&(m=n.target[_]);var b=m+1;a.node._count=b;var d,u=a.node.groups,y={};for(_=0;_0&&e(B,b)&&e(O,b)&&!(y.hasOwnProperty(B)&&y.hasOwnProperty(O)&&y[B]===y[O])){y.hasOwnProperty(O)&&(O=y[O]),y.hasOwnProperty(B)&&(B=y[B]),B=+B,O=+O,p[B]=p[O]=!0;var I="";n.label&&n.label[_]&&(I=n.label[_]);var N=null;I&&T.hasOwnProperty(I)&&(N=T[I]),s.push({pointNumber:_,label:I,color:c?n.color[_]:n.color,hovercolor:h?n.hovercolor[_]:n.hovercolor,customdata:v?n.customdata[_]:n.customdata,concentrationscale:N,source:B,target:O,value:+F}),z.source.push(B),z.target.push(O)}}var U=b+u.length,W=M(i.color),Q=M(i.customdata),ue=[];for(_=0;_b-1,childrenNodes:[],pointNumber:_,label:se,color:W?i.color[_]:i.color,customdata:Q?i.customdata[_]:i.customdata})}var he=!1;return o(U,z.source,z.target)&&(he=!0),{circular:he,links:s,nodes:ue,groups:u,groupLookup:y}}function o(a,i,n){for(var s=x.init2dArray(a,0),c=0;c1})}H.exports=function(i,n){var s=r(n);return A({circular:s.circular,_nodes:s.nodes,_links:s.links,_groups:s.groups,_groupLookup:s.groupLookup})}}}),Vq=Ye({"node_modules/d3-quadtree/dist/d3-quadtree.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){var d=+this._x.call(null,b),u=+this._y.call(null,b);return A(this.cover(d,u),d,u,b)}function A(b,d,u,y){if(isNaN(d)||isNaN(u))return b;var f,P=b._root,L={data:y},z=b._x0,F=b._y0,B=b._x1,O=b._y1,I,N,U,W,Q,ue,se,he;if(!P)return b._root=L,b;for(;P.length;)if((Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N,f=P,!(P=P[se=ue<<1|Q]))return f[se]=L,b;if(U=+b._x.call(null,P.data),W=+b._y.call(null,P.data),d===U&&u===W)return L.next=P,f?f[se]=L:b._root=L,b;do f=f?f[se]=new Array(4):b._root=new Array(4),(Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N;while((se=ue<<1|Q)===(he=(W>=N)<<1|U>=I));return f[he]=P,f[se]=L,b}function M(b){var d,u,y=b.length,f,P,L=new Array(y),z=new Array(y),F=1/0,B=1/0,O=-1/0,I=-1/0;for(u=0;uO&&(O=f),PI&&(I=P));if(F>O||B>I)return this;for(this.cover(F,B).cover(O,I),u=0;ub||b>=f||y>d||d>=P;)switch(B=(dO||(z=W.y0)>I||(F=W.x1)=se)<<1|b>=ue)&&(W=N[N.length-1],N[N.length-1]=N[N.length-1-Q],N[N.length-1-Q]=W)}else{var he=b-+this._x.call(null,U.data),G=d-+this._y.call(null,U.data),$=he*he+G*G;if($=(N=(L+F)/2))?L=N:F=N,(Q=I>=(U=(z+B)/2))?z=U:B=U,d=u,!(u=u[ue=Q<<1|W]))return this;if(!u.length)break;(d[ue+1&3]||d[ue+2&3]||d[ue+3&3])&&(y=d,se=ue)}for(;u.data!==b;)if(f=u,!(u=u.next))return this;return(P=u.next)&&delete u.next,f?(P?f.next=P:delete f.next,this):d?(P?d[ue]=P:delete d[ue],(u=d[0]||d[1]||d[2]||d[3])&&u===(d[3]||d[2]||d[1]||d[0])&&!u.length&&(y?y[se]=u:this._root=u),this):(this._root=P,this)}function n(b){for(var d=0,u=b.length;d=p.length)return l!=null&&m.sort(l),_!=null?_(m):m;for(var y=-1,f=m.length,P=p[b++],L,z,F=M(),B,O=d();++yp.length)return m;var d,u=T[b-1];return _!=null&&b>=p.length?d=m.entries():(d=[],m.each(function(y,f){d.push({key:f,values:E(y,b)})})),u!=null?d.sort(function(y,f){return u(y.key,f.key)}):d}return w={object:function(m){return S(m,0,t,r)},map:function(m){return S(m,0,o,a)},entries:function(m){return E(S(m,0,o,a),0)},key:function(m){return p.push(m),w},sortKeys:function(m){return T[p.length-1]=m,w},sortValues:function(m){return l=m,w},rollup:function(m){return _=m,w}}}function t(){return{}}function r(p,T,l){p[T]=l}function o(){return M()}function a(p,T,l){p.set(T,l)}function i(){}var n=M.prototype;i.prototype=s.prototype={constructor:i,has:n.has,add:function(p){return p+="",this[x+p]=p,this},remove:n.remove,clear:n.clear,values:n.keys,size:n.size,empty:n.empty,each:n.each};function s(p,T){var l=new i;if(p instanceof i)p.each(function(S){l.add(S)});else if(p){var _=-1,w=p.length;if(T==null)for(;++_=0&&(n=i.slice(s+1),i=i.slice(0,s)),i&&!a.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:n}})}M.prototype=A.prototype={constructor:M,on:function(o,a){var i=this._,n=e(o+"",i),s,c=-1,h=n.length;if(arguments.length<2){for(;++c0)for(var i=new Array(s),n=0,s,c;n=0&&b._call.call(null,d),b=b._next;--x}function l(){a=(o=n.now())+i,x=A=0;try{T()}finally{x=0,w(),a=0}}function _(){var b=n.now(),d=b-o;d>e&&(i-=d,o=b)}function w(){for(var b,d=t,u,y=1/0;d;)d._call?(y>d._time&&(y=d._time),b=d,d=d._next):(u=d._next,d._next=null,d=b?b._next=u:t=u);r=b,S(y)}function S(b){if(!x){A&&(A=clearTimeout(A));var d=b-a;d>24?(b<1/0&&(A=setTimeout(l,b-n.now()-i)),M&&(M=clearInterval(M))):(M||(o=n.now(),M=setInterval(_,e)),x=1,s(l))}}function E(b,d,u){var y=new v;return d=d==null?0:+d,y.restart(function(f){y.stop(),b(f+d)},d,u),y}function m(b,d,u){var y=new v,f=d;return d==null?(y.restart(b,d,u),y):(d=+d,u=u==null?c():+u,y.restart(function P(L){L+=f,y.restart(P,f+=d,u),b(L)},d,u),y)}g.interval=m,g.now=c,g.timeout=E,g.timer=p,g.timerFlush=T,Object.defineProperty(g,"__esModule",{value:!0})})}}),Gq=Ye({"node_modules/d3-force/dist/d3-force.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Vq(),CT(),qq(),Hq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,g.d3)})(X,function(g,x,A,M,e){"use strict";function t(b,d){var u;b==null&&(b=0),d==null&&(d=0);function y(){var f,P=u.length,L,z=0,F=0;for(f=0;fI.index){var ee=N-re.x-re.vx,ie=U-re.y-re.vy,fe=ee*ee+ie*ie;feN+j||JU+j||ZF.r&&(F.r=F[B].r)}function z(){if(d){var F,B=d.length,O;for(u=new Array(B),F=0;F1?(Q==null?z.remove(W):z.set(W,U(Q)),d):z.get(W)},find:function(W,Q,ue){var se=0,he=b.length,G,$,J,Z,re;for(ue==null?ue=1/0:ue*=ue,se=0;se1?(B.on(W,Q),d):B.on(W)}}}function w(){var b,d,u,y=r(-30),f,P=1,L=1/0,z=.81;function F(N){var U,W=b.length,Q=x.quadtree(b,v,p).visitAfter(O);for(u=N,U=0;U=L)return;(N.data!==d||N.next)&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),GM)if(!(Math.abs(l*v-p*T)>M)||!s)this._+="L"+(this._x1=o)+","+(this._y1=a);else{var w=i-c,S=n-h,E=v*v+p*p,m=w*w+S*S,b=Math.sqrt(E),d=Math.sqrt(_),u=s*Math.tan((x-Math.acos((E+_-m)/(2*b*d)))/2),y=u/d,f=u/b;Math.abs(y-1)>M&&(this._+="L"+(o+y*T)+","+(a+y*l)),this._+="A"+s+","+s+",0,0,"+ +(l*w>T*S)+","+(this._x1=o+f*v)+","+(this._y1=a+f*p)}},arc:function(o,a,i,n,s,c){o=+o,a=+a,i=+i,c=!!c;var h=i*Math.cos(n),v=i*Math.sin(n),p=o+h,T=a+v,l=1^c,_=c?n-s:s-n;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+p+","+T:(Math.abs(this._x1-p)>M||Math.abs(this._y1-T)>M)&&(this._+="L"+p+","+T),i&&(_<0&&(_=_%A+A),_>e?this._+="A"+i+","+i+",0,1,"+l+","+(o-h)+","+(a-v)+"A"+i+","+i+",0,1,"+l+","+(this._x1=p)+","+(this._y1=T):_>M&&(this._+="A"+i+","+i+",0,"+ +(_>=x)+","+l+","+(this._x1=o+i*Math.cos(s))+","+(this._y1=a+i*Math.sin(s))))},rect:function(o,a,i,n){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)+"h"+ +i+"v"+ +n+"h"+-i+"Z"},toString:function(){return this._}},g.path=r,Object.defineProperty(g,"__esModule",{value:!0})})}}),zk=Ye({"node_modules/d3-shape/dist/d3-shape.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Wq()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(kt){return function(){return kt}}var M=Math.abs,e=Math.atan2,t=Math.cos,r=Math.max,o=Math.min,a=Math.sin,i=Math.sqrt,n=1e-12,s=Math.PI,c=s/2,h=2*s;function v(kt){return kt>1?0:kt<-1?s:Math.acos(kt)}function p(kt){return kt>=1?c:kt<=-1?-c:Math.asin(kt)}function T(kt){return kt.innerRadius}function l(kt){return kt.outerRadius}function _(kt){return kt.startAngle}function w(kt){return kt.endAngle}function S(kt){return kt&&kt.padAngle}function E(kt,ir,mr,$r,ma,Ba,Ca,da){var Sa=mr-kt,Ti=$r-ir,ai=Ca-ma,an=da-Ba,sn=an*Sa-ai*Ti;if(!(sn*snys*ys+Is*Is&&(In=Ho,Do=Qo),{cx:In,cy:Do,x01:-ai,y01:-an,x11:In*(ma/as-1),y11:Do*(ma/as-1)}}function b(){var kt=T,ir=l,mr=A(0),$r=null,ma=_,Ba=w,Ca=S,da=null;function Sa(){var Ti,ai,an=+kt.apply(this,arguments),sn=+ir.apply(this,arguments),Mn=ma.apply(this,arguments)-c,On=Ba.apply(this,arguments)-c,$n=M(On-Mn),Cn=On>Mn;if(da||(da=Ti=x.path()),snn))da.moveTo(0,0);else if($n>h-n)da.moveTo(sn*t(Mn),sn*a(Mn)),da.arc(0,0,sn,Mn,On,!Cn),an>n&&(da.moveTo(an*t(On),an*a(On)),da.arc(0,0,an,On,Mn,Cn));else{var Lo=Mn,Xi=On,Jo=Mn,zo=On,as=$n,Pn=$n,go=Ca.apply(this,arguments)/2,In=go>n&&($r?+$r.apply(this,arguments):i(an*an+sn*sn)),Do=o(M(sn-an)/2,+mr.apply(this,arguments)),Ho=Do,Qo=Do,Xn,po;if(In>n){var ys=p(In/an*a(go)),Is=p(In/sn*a(go));(as-=ys*2)>n?(ys*=Cn?1:-1,Jo+=ys,zo-=ys):(as=0,Jo=zo=(Mn+On)/2),(Pn-=Is*2)>n?(Is*=Cn?1:-1,Lo+=Is,Xi-=Is):(Pn=0,Lo=Xi=(Mn+On)/2)}var Fs=sn*t(Lo),$o=sn*a(Lo),fi=an*t(zo),mn=an*a(zo);if(Do>n){var ol=sn*t(Xi),Os=sn*a(Xi),so=an*t(Jo),Ns=an*a(Jo),fs;if($nn?Qo>n?(Xn=m(so,Ns,Fs,$o,sn,Qo,Cn),po=m(ol,Os,fi,mn,sn,Qo,Cn),da.moveTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Qon)||!(as>n)?da.lineTo(fi,mn):Ho>n?(Xn=m(fi,mn,ol,Os,an,-Ho,Cn),po=m(Fs,$o,so,Ns,an,-Ho,Cn),da.lineTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Ho=sn;--Mn)da.point(Xi[Mn],Jo[Mn]);da.lineEnd(),da.areaEnd()}Cn&&(Xi[an]=+kt($n,an,ai),Jo[an]=+mr($n,an,ai),da.point(ir?+ir($n,an,ai):Xi[an],$r?+$r($n,an,ai):Jo[an]))}if(Lo)return da=null,Lo+""||null}function Ti(){return P().defined(ma).curve(Ca).context(Ba)}return Sa.x=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),ir=null,Sa):kt},Sa.x0=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),Sa):kt},Sa.x1=function(ai){return arguments.length?(ir=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):ir},Sa.y=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),$r=null,Sa):mr},Sa.y0=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),Sa):mr},Sa.y1=function(ai){return arguments.length?($r=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):$r},Sa.lineX0=Sa.lineY0=function(){return Ti().x(kt).y(mr)},Sa.lineY1=function(){return Ti().x(kt).y($r)},Sa.lineX1=function(){return Ti().x(ir).y(mr)},Sa.defined=function(ai){return arguments.length?(ma=typeof ai=="function"?ai:A(!!ai),Sa):ma},Sa.curve=function(ai){return arguments.length?(Ca=ai,Ba!=null&&(da=Ca(Ba)),Sa):Ca},Sa.context=function(ai){return arguments.length?(ai==null?Ba=da=null:da=Ca(Ba=ai),Sa):Ba},Sa}function z(kt,ir){return irkt?1:ir>=kt?0:NaN}function F(kt){return kt}function B(){var kt=F,ir=z,mr=null,$r=A(0),ma=A(h),Ba=A(0);function Ca(da){var Sa,Ti=da.length,ai,an,sn=0,Mn=new Array(Ti),On=new Array(Ti),$n=+$r.apply(this,arguments),Cn=Math.min(h,Math.max(-h,ma.apply(this,arguments)-$n)),Lo,Xi=Math.min(Math.abs(Cn)/Ti,Ba.apply(this,arguments)),Jo=Xi*(Cn<0?-1:1),zo;for(Sa=0;Sa0&&(sn+=zo);for(ir!=null?Mn.sort(function(as,Pn){return ir(On[as],On[Pn])}):mr!=null&&Mn.sort(function(as,Pn){return mr(da[as],da[Pn])}),Sa=0,an=sn?(Cn-Ti*Jo)/sn:0;Sa0?zo*an:0)+Jo,On[ai]={data:da[ai],index:Sa,value:zo,startAngle:$n,endAngle:Lo,padAngle:Xi};return On}return Ca.value=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.sortValues=function(da){return arguments.length?(ir=da,mr=null,Ca):ir},Ca.sort=function(da){return arguments.length?(mr=da,ir=null,Ca):mr},Ca.startAngle=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.endAngle=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.padAngle=function(da){return arguments.length?(Ba=typeof da=="function"?da:A(+da),Ca):Ba},Ca}var O=N(u);function I(kt){this._curve=kt}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(kt,ir){this._curve.point(ir*Math.sin(kt),ir*-Math.cos(kt))}};function N(kt){function ir(mr){return new I(kt(mr))}return ir._curve=kt,ir}function U(kt){var ir=kt.curve;return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt.curve=function(mr){return arguments.length?ir(N(mr)):ir()._curve},kt}function W(){return U(P().curve(O))}function Q(){var kt=L().curve(O),ir=kt.curve,mr=kt.lineX0,$r=kt.lineX1,ma=kt.lineY0,Ba=kt.lineY1;return kt.angle=kt.x,delete kt.x,kt.startAngle=kt.x0,delete kt.x0,kt.endAngle=kt.x1,delete kt.x1,kt.radius=kt.y,delete kt.y,kt.innerRadius=kt.y0,delete kt.y0,kt.outerRadius=kt.y1,delete kt.y1,kt.lineStartAngle=function(){return U(mr())},delete kt.lineX0,kt.lineEndAngle=function(){return U($r())},delete kt.lineX1,kt.lineInnerRadius=function(){return U(ma())},delete kt.lineY0,kt.lineOuterRadius=function(){return U(Ba())},delete kt.lineY1,kt.curve=function(Ca){return arguments.length?ir(N(Ca)):ir()._curve},kt}function ue(kt,ir){return[(ir=+ir)*Math.cos(kt-=Math.PI/2),ir*Math.sin(kt)]}var se=Array.prototype.slice;function he(kt){return kt.source}function G(kt){return kt.target}function $(kt){var ir=he,mr=G,$r=y,ma=f,Ba=null;function Ca(){var da,Sa=se.call(arguments),Ti=ir.apply(this,Sa),ai=mr.apply(this,Sa);if(Ba||(Ba=da=x.path()),kt(Ba,+$r.apply(this,(Sa[0]=Ti,Sa)),+ma.apply(this,Sa),+$r.apply(this,(Sa[0]=ai,Sa)),+ma.apply(this,Sa)),da)return Ba=null,da+""||null}return Ca.source=function(da){return arguments.length?(ir=da,Ca):ir},Ca.target=function(da){return arguments.length?(mr=da,Ca):mr},Ca.x=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.y=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.context=function(da){return arguments.length?(Ba=da??null,Ca):Ba},Ca}function J(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir=(ir+$r)/2,mr,ir,ma,$r,ma)}function Z(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir,mr=(mr+ma)/2,$r,mr,$r,ma)}function re(kt,ir,mr,$r,ma){var Ba=ue(ir,mr),Ca=ue(ir,mr=(mr+ma)/2),da=ue($r,mr),Sa=ue($r,ma);kt.moveTo(Ba[0],Ba[1]),kt.bezierCurveTo(Ca[0],Ca[1],da[0],da[1],Sa[0],Sa[1])}function ne(){return $(J)}function j(){return $(Z)}function ee(){var kt=$(re);return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt}var ie={draw:function(kt,ir){var mr=Math.sqrt(ir/s);kt.moveTo(mr,0),kt.arc(0,0,mr,0,h)}},fe={draw:function(kt,ir){var mr=Math.sqrt(ir/5)/2;kt.moveTo(-3*mr,-mr),kt.lineTo(-mr,-mr),kt.lineTo(-mr,-3*mr),kt.lineTo(mr,-3*mr),kt.lineTo(mr,-mr),kt.lineTo(3*mr,-mr),kt.lineTo(3*mr,mr),kt.lineTo(mr,mr),kt.lineTo(mr,3*mr),kt.lineTo(-mr,3*mr),kt.lineTo(-mr,mr),kt.lineTo(-3*mr,mr),kt.closePath()}},be=Math.sqrt(1/3),Ae=be*2,Be={draw:function(kt,ir){var mr=Math.sqrt(ir/Ae),$r=mr*be;kt.moveTo(0,-mr),kt.lineTo($r,0),kt.lineTo(0,mr),kt.lineTo(-$r,0),kt.closePath()}},Ie=.8908130915292852,Ze=Math.sin(s/10)/Math.sin(7*s/10),at=Math.sin(h/10)*Ze,it=-Math.cos(h/10)*Ze,et={draw:function(kt,ir){var mr=Math.sqrt(ir*Ie),$r=at*mr,ma=it*mr;kt.moveTo(0,-mr),kt.lineTo($r,ma);for(var Ba=1;Ba<5;++Ba){var Ca=h*Ba/5,da=Math.cos(Ca),Sa=Math.sin(Ca);kt.lineTo(Sa*mr,-da*mr),kt.lineTo(da*$r-Sa*ma,Sa*$r+da*ma)}kt.closePath()}},lt={draw:function(kt,ir){var mr=Math.sqrt(ir),$r=-mr/2;kt.rect($r,$r,mr,mr)}},Me=Math.sqrt(3),ge={draw:function(kt,ir){var mr=-Math.sqrt(ir/(Me*3));kt.moveTo(0,mr*2),kt.lineTo(-Me*mr,-mr),kt.lineTo(Me*mr,-mr),kt.closePath()}},ce=-.5,ze=Math.sqrt(3)/2,tt=1/Math.sqrt(12),nt=(tt/2+1)*3,Qe={draw:function(kt,ir){var mr=Math.sqrt(ir/nt),$r=mr/2,ma=mr*tt,Ba=$r,Ca=mr*tt+mr,da=-Ba,Sa=Ca;kt.moveTo($r,ma),kt.lineTo(Ba,Ca),kt.lineTo(da,Sa),kt.lineTo(ce*$r-ze*ma,ze*$r+ce*ma),kt.lineTo(ce*Ba-ze*Ca,ze*Ba+ce*Ca),kt.lineTo(ce*da-ze*Sa,ze*da+ce*Sa),kt.lineTo(ce*$r+ze*ma,ce*ma-ze*$r),kt.lineTo(ce*Ba+ze*Ca,ce*Ca-ze*Ba),kt.lineTo(ce*da+ze*Sa,ce*Sa-ze*da),kt.closePath()}},Ct=[ie,fe,Be,lt,et,ge,Qe];function St(){var kt=A(ie),ir=A(64),mr=null;function $r(){var ma;if(mr||(mr=ma=x.path()),kt.apply(this,arguments).draw(mr,+ir.apply(this,arguments)),ma)return mr=null,ma+""||null}return $r.type=function(ma){return arguments.length?(kt=typeof ma=="function"?ma:A(ma),$r):kt},$r.size=function(ma){return arguments.length?(ir=typeof ma=="function"?ma:A(+ma),$r):ir},$r.context=function(ma){return arguments.length?(mr=ma??null,$r):mr},$r}function Ot(){}function jt(kt,ir,mr){kt._context.bezierCurveTo((2*kt._x0+kt._x1)/3,(2*kt._y0+kt._y1)/3,(kt._x0+2*kt._x1)/3,(kt._y0+2*kt._y1)/3,(kt._x0+4*kt._x1+ir)/6,(kt._y0+4*kt._y1+mr)/6)}function ur(kt){this._context=kt}ur.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:jt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function ar(kt){return new ur(kt)}function Cr(kt){this._context=kt}Cr.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x2=kt,this._y2=ir;break;case 1:this._point=2,this._x3=kt,this._y3=ir;break;case 2:this._point=3,this._x4=kt,this._y4=ir,this._context.moveTo((this._x0+4*this._x1+kt)/6,(this._y0+4*this._y1+ir)/6);break;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function vr(kt){return new Cr(kt)}function _r(kt){this._context=kt}_r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var mr=(this._x0+4*this._x1+kt)/6,$r=(this._y0+4*this._y1+ir)/6;this._line?this._context.lineTo(mr,$r):this._context.moveTo(mr,$r);break;case 3:this._point=4;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function yt(kt){return new _r(kt)}function Fe(kt,ir){this._basis=new ur(kt),this._beta=ir}Fe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length-1;if(mr>0)for(var $r=kt[0],ma=ir[0],Ba=kt[mr]-$r,Ca=ir[mr]-ma,da=-1,Sa;++da<=mr;)Sa=da/mr,this._basis.point(this._beta*kt[da]+(1-this._beta)*($r+Sa*Ba),this._beta*ir[da]+(1-this._beta)*(ma+Sa*Ca));this._x=this._y=null,this._basis.lineEnd()},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};var Ke=function kt(ir){function mr($r){return ir===1?new ur($r):new Fe($r,ir)}return mr.beta=function($r){return kt(+$r)},mr}(.85);function Ne(kt,ir,mr){kt._context.bezierCurveTo(kt._x1+kt._k*(kt._x2-kt._x0),kt._y1+kt._k*(kt._y2-kt._y0),kt._x2+kt._k*(kt._x1-ir),kt._y2+kt._k*(kt._y1-mr),kt._x2,kt._y2)}function Ee(kt,ir){this._context=kt,this._k=(1-ir)/6}Ee.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ne(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2,this._x1=kt,this._y1=ir;break;case 2:this._point=3;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Ve=function kt(ir){function mr($r){return new Ee($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function ke(kt,ir){this._context=kt,this._k=(1-ir)/6}ke.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Te=function kt(ir){function mr($r){return new ke($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function Le(kt,ir){this._context=kt,this._k=(1-ir)/6}Le.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var rt=function kt(ir){function mr($r){return new Le($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function dt(kt,ir,mr){var $r=kt._x1,ma=kt._y1,Ba=kt._x2,Ca=kt._y2;if(kt._l01_a>n){var da=2*kt._l01_2a+3*kt._l01_a*kt._l12_a+kt._l12_2a,Sa=3*kt._l01_a*(kt._l01_a+kt._l12_a);$r=($r*da-kt._x0*kt._l12_2a+kt._x2*kt._l01_2a)/Sa,ma=(ma*da-kt._y0*kt._l12_2a+kt._y2*kt._l01_2a)/Sa}if(kt._l23_a>n){var Ti=2*kt._l23_2a+3*kt._l23_a*kt._l12_a+kt._l12_2a,ai=3*kt._l23_a*(kt._l23_a+kt._l12_a);Ba=(Ba*Ti+kt._x1*kt._l23_2a-ir*kt._l12_2a)/ai,Ca=(Ca*Ti+kt._y1*kt._l23_2a-mr*kt._l12_2a)/ai}kt._context.bezierCurveTo($r,ma,Ba,Ca,kt._x2,kt._y2)}function xt(kt,ir){this._context=kt,this._alpha=ir}xt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var It=function kt(ir){function mr($r){return ir?new xt($r,ir):new Ee($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Bt(kt,ir){this._context=kt,this._alpha=ir}Bt.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Gt=function kt(ir){function mr($r){return ir?new Bt($r,ir):new ke($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Kt(kt,ir){this._context=kt,this._alpha=ir}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var sr=function kt(ir){function mr($r){return ir?new Kt($r,ir):new Le($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function sa(kt){this._context=kt}sa.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(kt,ir){kt=+kt,ir=+ir,this._point?this._context.lineTo(kt,ir):(this._point=1,this._context.moveTo(kt,ir))}};function Aa(kt){return new sa(kt)}function La(kt){return kt<0?-1:1}function ka(kt,ir,mr){var $r=kt._x1-kt._x0,ma=ir-kt._x1,Ba=(kt._y1-kt._y0)/($r||ma<0&&-0),Ca=(mr-kt._y1)/(ma||$r<0&&-0),da=(Ba*ma+Ca*$r)/($r+ma);return(La(Ba)+La(Ca))*Math.min(Math.abs(Ba),Math.abs(Ca),.5*Math.abs(da))||0}function Ga(kt,ir){var mr=kt._x1-kt._x0;return mr?(3*(kt._y1-kt._y0)/mr-ir)/2:ir}function Ma(kt,ir,mr){var $r=kt._x0,ma=kt._y0,Ba=kt._x1,Ca=kt._y1,da=(Ba-$r)/3;kt._context.bezierCurveTo($r+da,ma+da*ir,Ba-da,Ca-da*mr,Ba,Ca)}function Ua(kt){this._context=kt}Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ma(this,this._t0,Ga(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){var mr=NaN;if(kt=+kt,ir=+ir,!(kt===this._x1&&ir===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,Ma(this,Ga(this,mr=ka(this,kt,ir)),mr);break;default:Ma(this,this._t0,mr=ka(this,kt,ir));break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir,this._t0=mr}}};function ni(kt){this._context=new Wt(kt)}(ni.prototype=Object.create(Ua.prototype)).point=function(kt,ir){Ua.prototype.point.call(this,ir,kt)};function Wt(kt){this._context=kt}Wt.prototype={moveTo:function(kt,ir){this._context.moveTo(ir,kt)},closePath:function(){this._context.closePath()},lineTo:function(kt,ir){this._context.lineTo(ir,kt)},bezierCurveTo:function(kt,ir,mr,$r,ma,Ba){this._context.bezierCurveTo(ir,kt,$r,mr,Ba,ma)}};function zt(kt){return new Ua(kt)}function Vt(kt){return new ni(kt)}function Ut(kt){this._context=kt}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length;if(mr)if(this._line?this._context.lineTo(kt[0],ir[0]):this._context.moveTo(kt[0],ir[0]),mr===2)this._context.lineTo(kt[1],ir[1]);else for(var $r=xr(kt),ma=xr(ir),Ba=0,Ca=1;Ca=0;--ir)ma[ir]=(Ca[ir]-ma[ir+1])/Ba[ir];for(Ba[mr-1]=(kt[mr]+ma[mr-1])/2,ir=0;ir=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ir),this._context.lineTo(kt,ir);else{var mr=this._x*(1-this._t)+kt*this._t;this._context.lineTo(mr,this._y),this._context.lineTo(mr,ir)}break}}this._x=kt,this._y=ir}};function Xr(kt){return new pa(kt,.5)}function Ea(kt){return new pa(kt,0)}function Fa(kt){return new pa(kt,1)}function qa(kt,ir){if((Ca=kt.length)>1)for(var mr=1,$r,ma,Ba=kt[ir[0]],Ca,da=Ba.length;mr=0;)mr[ir]=ir;return mr}function $a(kt,ir){return kt[ir]}function mt(){var kt=A([]),ir=ya,mr=qa,$r=$a;function ma(Ba){var Ca=kt.apply(this,arguments),da,Sa=Ba.length,Ti=Ca.length,ai=new Array(Ti),an;for(da=0;da0){for(var mr,$r,ma=0,Ba=kt[0].length,Ca;ma0)for(var mr,$r=0,ma,Ba,Ca,da,Sa,Ti=kt[ir[0]].length;$r0?(ma[0]=Ca,ma[1]=Ca+=Ba):Ba<0?(ma[1]=da,ma[0]=da+=Ba):(ma[0]=0,ma[1]=Ba)}function kr(kt,ir){if((ma=kt.length)>0){for(var mr=0,$r=kt[ir[0]],ma,Ba=$r.length;mr0)||!((Ba=(ma=kt[ir[0]]).length)>0))){for(var mr=0,$r=1,ma,Ba,Ca;$rBa&&(Ba=ma,mr=ir);return mr}function Fr(kt){var ir=kt.map(Lr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Lr(kt){for(var ir=0,mr=-1,$r=kt.length,ma;++mr<$r;)(ma=+kt[mr][1])&&(ir+=ma);return ir}function Jr(kt){return Fr(kt).reverse()}function oa(kt){var ir=kt.length,mr,$r,ma=kt.map(Lr),Ba=Tr(kt),Ca=0,da=0,Sa=[],Ti=[];for(mr=0;mr0;--re)ee(Z*=.99),ie(),j(Z),ie();function ne(){var fe=x.max(J,function(Be){return Be.length}),be=U*(P-y)/(fe-1);z>be&&(z=be);var Ae=x.min(J,function(Be){return(P-y-(Be.length-1)*z)/x.sum(Be,h)});J.forEach(function(Be){Be.forEach(function(Ie,Ze){Ie.y1=(Ie.y0=Ze)+Ie.value*Ae})}),$.links.forEach(function(Be){Be.width=Be.value*Ae})}function j(fe){J.forEach(function(be){be.forEach(function(Ae){if(Ae.targetLinks.length){var Be=(x.sum(Ae.targetLinks,p)/x.sum(Ae.targetLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ee(fe){J.slice().reverse().forEach(function(be){be.forEach(function(Ae){if(Ae.sourceLinks.length){var Be=(x.sum(Ae.sourceLinks,T)/x.sum(Ae.sourceLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ie(){J.forEach(function(fe){var be,Ae,Be=y,Ie=fe.length,Ze;for(fe.sort(c),Ze=0;Ze0&&(be.y0+=Ae,be.y1+=Ae),Be=be.y1+z;if(Ae=Be-z-P,Ae>0)for(Be=be.y0-=Ae,be.y1-=Ae,Ze=Ie-2;Ze>=0;--Ze)be=fe[Ze],Ae=be.y1+z-Be,Ae>0&&(be.y0-=Ae,be.y1-=Ae),Be=be.y0})}}function G($){$.nodes.forEach(function(J){J.sourceLinks.sort(s),J.targetLinks.sort(n)}),$.nodes.forEach(function(J){var Z=J.y0,re=Z;J.sourceLinks.forEach(function(ne){ne.y0=Z+ne.width/2,Z+=ne.width}),J.targetLinks.forEach(function(ne){ne.y1=re+ne.width/2,re+=ne.width})})}return W};function m(u){return[u.source.x1,u.y0]}function b(u){return[u.target.x0,u.y1]}var d=function(){return M.linkHorizontal().source(m).target(b)};g.sankey=E,g.sankeyCenter=a,g.sankeyLeft=t,g.sankeyRight=r,g.sankeyJustify=o,g.sankeyLinkHorizontal=d,Object.defineProperty(g,"__esModule",{value:!0})})}}),Xq=Ye({"node_modules/elementary-circuits-directed-graph/johnson.js"(X,H){var g=Dk();H.exports=function(A,M){var e=[],t=[],r=[],o={},a=[],i;function n(S){r[S]=!1,o.hasOwnProperty(S)&&Object.keys(o[S]).forEach(function(E){delete o[S][E],r[E]&&n(E)})}function s(S){var E=!1;t.push(S),r[S]=!0;var m,b;for(m=0;m=S})}function v(S){h(S);for(var E=A,m=g(E),b=m.components.filter(function(z){return z.length>1}),d=1/0,u,y=0;y"u"?"undefined":s(Ee))!=="object"&&(Ee=Ke.source=m(Fe,Ee)),(typeof Ve>"u"?"undefined":s(Ve))!=="object"&&(Ve=Ke.target=m(Fe,Ve)),Ee.sourceLinks.push(Ke),Ve.targetLinks.push(Ke)}),yt}function jt(yt){yt.nodes.forEach(function(Fe){Fe.partOfCycle=!1,Fe.value=Math.max(x.sum(Fe.sourceLinks,p),x.sum(Fe.targetLinks,p)),Fe.sourceLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)}),Fe.targetLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)})})}function ur(yt){var Fe=0,Ke=0,Ne=0,Ee=0,Ve=x.max(yt.nodes,function(ke){return ke.column});return yt.links.forEach(function(ke){ke.circular&&(ke.circularLinkType=="top"?Fe=Fe+ke.width:Ke=Ke+ke.width,ke.target.column==0&&(Ee=Ee+ke.width),ke.source.column==Ve&&(Ne=Ne+ke.width))}),Fe=Fe>0?Fe+d+u:Fe,Ke=Ke>0?Ke+d+u:Ke,Ne=Ne>0?Ne+d+u:Ne,Ee=Ee>0?Ee+d+u:Ee,{top:Fe,bottom:Ke,left:Ee,right:Ne}}function ar(yt,Fe){var Ke=x.max(yt.nodes,function(rt){return rt.column}),Ne=at-Ie,Ee=it-Ze,Ve=Ne+Fe.right+Fe.left,ke=Ee+Fe.top+Fe.bottom,Te=Ne/Ve,Le=Ee/ke;return Ie=Ie*Te+Fe.left,at=Fe.right==0?at:at*Te,Ze=Ze*Le+Fe.top,it=it*Le,yt.nodes.forEach(function(rt){rt.x0=Ie+rt.column*((at-Ie-et)/Ke),rt.x1=rt.x0+et}),Le}function Cr(yt){var Fe,Ke,Ne;for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.depth=Ne,Ee.sourceLinks.forEach(function(Ve){Ke.indexOf(Ve.target)<0&&!Ve.circular&&Ke.push(Ve.target)})});for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.height=Ne,Ee.targetLinks.forEach(function(Ve){Ke.indexOf(Ve.source)<0&&!Ve.circular&&Ke.push(Ve.source)})});yt.nodes.forEach(function(Ee){Ee.column=Math.floor(ge.call(null,Ee,Ne))})}function vr(yt,Fe,Ke){var Ne=A.nest().key(function(rt){return rt.column}).sortKeys(x.ascending).entries(yt.nodes).map(function(rt){return rt.values});ke(Ke),Le();for(var Ee=1,Ve=Fe;Ve>0;--Ve)Te(Ee*=.99,Ke),Le();function ke(rt){if(Qe){var dt=1/0;Ne.forEach(function(Gt){var Kt=it*Qe/(Gt.length+1);dt=Kt0))if(Gt==0&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else if(Gt==xt-1&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else{var sa=0,Aa=x.mean(Kt.sourceLinks,_),La=x.mean(Kt.targetLinks,l);Aa&&La?sa=(Aa+La)/2:sa=Aa||La;var ka=(sa-T(Kt))*rt;Kt.y0+=ka,Kt.y1+=ka}})})}function Le(){Ne.forEach(function(rt){var dt,xt,It=Ze,Bt=rt.length,Gt;for(rt.sort(v),Gt=0;Gt0&&(dt.y0+=xt,dt.y1+=xt),It=dt.y1+lt;if(xt=It-lt-it,xt>0)for(It=dt.y0-=xt,dt.y1-=xt,Gt=Bt-2;Gt>=0;--Gt)dt=rt[Gt],xt=dt.y1+lt-It,xt>0&&(dt.y0-=xt,dt.y1-=xt),It=dt.y0})}}function _r(yt){yt.nodes.forEach(function(Fe){Fe.sourceLinks.sort(h),Fe.targetLinks.sort(c)}),yt.nodes.forEach(function(Fe){var Ke=Fe.y0,Ne=Ke,Ee=Fe.y1,Ve=Ee;Fe.sourceLinks.forEach(function(ke){ke.circular?(ke.y0=Ee-ke.width/2,Ee=Ee-ke.width):(ke.y0=Ke+ke.width/2,Ke+=ke.width)}),Fe.targetLinks.forEach(function(ke){ke.circular?(ke.y1=Ve-ke.width/2,Ve=Ve-ke.width):(ke.y1=Ne+ke.width/2,Ne+=ke.width)})})}return St}function P(Ie,Ze,at){var it=0;if(at===null){for(var et=[],lt=0;ltZe.source.column)}function B(Ie,Ze){var at=0;Ie.sourceLinks.forEach(function(et){at=et.circular&&!Ae(et,Ze)?at+1:at});var it=0;return Ie.targetLinks.forEach(function(et){it=et.circular&&!Ae(et,Ze)?it+1:it}),at+it}function O(Ie){var Ze=Ie.source.sourceLinks,at=0;Ze.forEach(function(lt){at=lt.circular?at+1:at});var it=Ie.target.targetLinks,et=0;return it.forEach(function(lt){et=lt.circular?et+1:et}),!(at>1||et>1)}function I(Ie,Ze,at){return Ie.sort(W),Ie.forEach(function(it,et){var lt=0;if(Ae(it,at)&&O(it))it.circularPathData.verticalBuffer=lt+it.width/2;else{var Me=0;for(Me;Melt?ge:lt}it.circularPathData.verticalBuffer=lt+it.width/2}}),Ie}function N(Ie,Ze,at,it){var et=5,lt=x.min(Ie.links,function(ce){return ce.source.y0});Ie.links.forEach(function(ce){ce.circular&&(ce.circularPathData={})});var Me=Ie.links.filter(function(ce){return ce.circularLinkType=="top"});I(Me,Ze,it);var ge=Ie.links.filter(function(ce){return ce.circularLinkType=="bottom"});I(ge,Ze,it),Ie.links.forEach(function(ce){if(ce.circular){if(ce.circularPathData.arcRadius=ce.width+u,ce.circularPathData.leftNodeBuffer=et,ce.circularPathData.rightNodeBuffer=et,ce.circularPathData.sourceWidth=ce.source.x1-ce.source.x0,ce.circularPathData.sourceX=ce.source.x0+ce.circularPathData.sourceWidth,ce.circularPathData.targetX=ce.target.x0,ce.circularPathData.sourceY=ce.y0,ce.circularPathData.targetY=ce.y1,Ae(ce,it)&&O(ce))ce.circularPathData.leftSmallArcRadius=u+ce.width/2,ce.circularPathData.leftLargeArcRadius=u+ce.width/2,ce.circularPathData.rightSmallArcRadius=u+ce.width/2,ce.circularPathData.rightLargeArcRadius=u+ce.width/2,ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=ce.source.y1+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=ce.source.y0-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius);else{var ze=ce.source.column,tt=ce.circularLinkType,nt=Ie.links.filter(function(St){return St.source.column==ze&&St.circularLinkType==tt});ce.circularLinkType=="bottom"?nt.sort(ue):nt.sort(Q);var Qe=0;nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.leftSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.leftLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ze=ce.target.column,nt=Ie.links.filter(function(St){return St.target.column==ze&&St.circularLinkType==tt}),ce.circularLinkType=="bottom"?nt.sort(he):nt.sort(se),Qe=0,nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.rightSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.rightLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=Math.max(at,ce.source.y1,ce.target.y1)+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=lt-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius)}ce.circularPathData.leftInnerExtent=ce.circularPathData.sourceX+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightInnerExtent=ce.circularPathData.targetX-ce.circularPathData.rightNodeBuffer,ce.circularPathData.leftFullExtent=ce.circularPathData.sourceX+ce.circularPathData.leftLargeArcRadius+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightFullExtent=ce.circularPathData.targetX-ce.circularPathData.rightLargeArcRadius-ce.circularPathData.rightNodeBuffer}if(ce.circular)ce.path=U(ce);else{var Ct=M.linkHorizontal().source(function(St){var Ot=St.source.x0+(St.source.x1-St.source.x0),jt=St.y0;return[Ot,jt]}).target(function(St){var Ot=St.target.x0,jt=St.y1;return[Ot,jt]});ce.path=Ct(ce)}})}function U(Ie){var Ze="";return Ie.circularLinkType=="top"?Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 0 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY-Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 0 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 0 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY-Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 0 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY:Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 1 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY+Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 1 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 1 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY+Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 1 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY,Ze}function W(Ie,Ze){return G(Ie)==G(Ze)?Ie.circularLinkType=="bottom"?ue(Ie,Ze):Q(Ie,Ze):G(Ze)-G(Ie)}function Q(Ie,Ze){return Ie.y0-Ze.y0}function ue(Ie,Ze){return Ze.y0-Ie.y0}function se(Ie,Ze){return Ie.y1-Ze.y1}function he(Ie,Ze){return Ze.y1-Ie.y1}function G(Ie){return Ie.target.column-Ie.source.column}function $(Ie){return Ie.target.x0-Ie.source.x1}function J(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1+it:Ie.y1-it;return et}function Z(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1-it:Ie.y1+it;return et}function re(Ie,Ze,at,it){Ie.links.forEach(function(et){if(!et.circular&&et.target.column-et.source.column>1){var lt=et.source.column+1,Me=et.target.column-1,ge=1,ce=Me-lt+1;for(ge=1;lt<=Me;lt++,ge++)Ie.nodes.forEach(function(ze){if(ze.column==lt){var tt=ge/(ce+1),nt=Math.pow(1-tt,3),Qe=3*tt*Math.pow(1-tt,2),Ct=3*Math.pow(tt,2)*(1-tt),St=Math.pow(tt,3),Ot=nt*et.y0+Qe*et.y0+Ct*et.y1+St*et.y1,jt=Ot-et.width/2,ur=Ot+et.width/2,ar;jt>ze.y0&&jtze.y0&&urze.y1&&j(Cr,ar,Ze,at)})):jtze.y1&&(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0ze.y1&&j(Cr,ar,Ze,at)}))}})}})}function ne(Ie,Ze){return Ie.y0>Ze.y0&&Ie.y0Ze.y0&&Ie.y1Ze.y1}function j(Ie,Ze,at,it){return Ie.y0+Ze>=at&&Ie.y1+Ze<=it&&(Ie.y0=Ie.y0+Ze,Ie.y1=Ie.y1+Ze,Ie.targetLinks.forEach(function(et){et.y1=et.y1+Ze}),Ie.sourceLinks.forEach(function(et){et.y0=et.y0+Ze})),Ie}function ee(Ie,Ze,at,it){Ie.nodes.forEach(function(et){it&&et.y+(et.y1-et.y0)>Ze&&(et.y=et.y-(et.y+(et.y1-et.y0)-Ze));var lt=Ie.links.filter(function(ce){return b(ce.source,at)==b(et,at)}),Me=lt.length;Me>1&<.sort(function(ce,ze){if(!ce.circular&&!ze.circular){if(ce.target.column==ze.target.column)return ce.y1-ze.y1;if(fe(ce,ze)){if(ce.target.column>ze.target.column){var tt=Z(ze,ce);return ce.y1-tt}if(ze.target.column>ce.target.column){var nt=Z(ce,ze);return nt-ze.y1}}else return ce.y1-ze.y1}if(ce.circular&&!ze.circular)return ce.circularLinkType=="top"?-1:1;if(ze.circular&&!ce.circular)return ze.circularLinkType=="top"?1:-1;if(ce.circular&&ze.circular)return ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="top"?ce.target.column===ze.target.column?ce.target.y1-ze.target.y1:ze.target.column-ce.target.column:ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="bottom"?ce.target.column===ze.target.column?ze.target.y1-ce.target.y1:ce.target.column-ze.target.column:ce.circularLinkType=="top"?-1:1});var ge=et.y0;lt.forEach(function(ce){ce.y0=ge+ce.width/2,ge=ge+ce.width}),lt.forEach(function(ce,ze){if(ce.circularLinkType=="bottom"){var tt=ze+1,nt=0;for(tt;tt1&&et.sort(function(ge,ce){if(!ge.circular&&!ce.circular){if(ge.source.column==ce.source.column)return ge.y0-ce.y0;if(fe(ge,ce)){if(ce.source.column0?"up":"down"}function Ae(Ie,Ze){return b(Ie.source,Ze)==b(Ie.target,Ze)}function Be(Ie,Ze,at){var it=Ie.nodes,et=Ie.links,lt=!1,Me=!1;if(et.forEach(function(Qe){Qe.circularLinkType=="top"?lt=!0:Qe.circularLinkType=="bottom"&&(Me=!0)}),lt==!1||Me==!1){var ge=x.min(it,function(Qe){return Qe.y0}),ce=x.max(it,function(Qe){return Qe.y1}),ze=ce-ge,tt=at-Ze,nt=tt/ze;it.forEach(function(Qe){var Ct=(Qe.y1-Qe.y0)*nt;Qe.y0=(Qe.y0-ge)*nt,Qe.y1=Qe.y0+Ct}),et.forEach(function(Qe){Qe.y0=(Qe.y0-ge)*nt,Qe.y1=(Qe.y1-ge)*nt,Qe.width=Qe.width*nt})}}g.sankeyCircular=f,g.sankeyCenter=i,g.sankeyLeft=r,g.sankeyRight=o,g.sankeyJustify=a,Object.defineProperty(g,"__esModule",{value:!0})})}}),Fk=Ye({"src/traces/sankey/constants.js"(X,H){"use strict";H.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}}}),Kq=Ye({"src/traces/sankey/render.js"(X,H){"use strict";var g=Gq(),x=(f0(),Hf(fg)).interpolateNumber,A=_n(),M=Zq(),e=Yq(),t=Fk(),r=bh(),o=Fn(),a=Bo(),i=ta(),n=i.strTranslate,s=i.strRotate,c=kv(),h=c.keyFun,v=c.repeat,p=c.unwrap,T=jl(),l=Hn(),_=oh(),w=_.CAP_SHIFT,S=_.LINE_SPACING,E=3;function m(J,Z,re){var ne=p(Z),j=ne.trace,ee=j.domain,ie=j.orientation==="h",fe=j.node.pad,be=j.node.thickness,Ae={justify:M.sankeyJustify,left:M.sankeyLeft,right:M.sankeyRight,center:M.sankeyCenter}[j.node.align],Be=J.width*(ee.x[1]-ee.x[0]),Ie=J.height*(ee.y[1]-ee.y[0]),Ze=ne._nodes,at=ne._links,it=ne.circular,et;it?et=e.sankeyCircular().circularLinkGap(0):et=M.sankey(),et.iterations(t.sankeyIterations).size(ie?[Be,Ie]:[Ie,Be]).nodeWidth(be).nodePadding(fe).nodeId(function(Cr){return Cr.pointNumber}).nodeAlign(Ae).nodes(Ze).links(at);var lt=et();et.nodePadding()=Fe||(yt=Fe-_r.y0,yt>1e-6&&(_r.y0+=yt,_r.y1+=yt)),Fe=_r.y1+fe})}function Ot(Cr){var vr=Cr.map(function(Ve,ke){return{x0:Ve.x0,index:ke}}).sort(function(Ve,ke){return Ve.x0-ke.x0}),_r=[],yt=-1,Fe,Ke=-1/0,Ne;for(Me=0;MeKe+be&&(yt+=1,Fe=Ee.x0),Ke=Ee.x0,_r[yt]||(_r[yt]=[]),_r[yt].push(Ee),Ne=Fe-Ee.x0,Ee.x0+=Ne,Ee.x1+=Ne}return _r}if(j.node.x.length&&j.node.y.length){for(Me=0;Me0?" L "+j.targetX+" "+j.targetY:"")+"Z"):(re="M "+(j.targetX-Z)+" "+(j.targetY-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-ne-Z)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent-Z-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.leftInnerExtent+" "+(j.sourceY+ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent+ne-Z+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent-Z-ne)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+" L "+(j.targetX-Z)+" "+(j.targetY+ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"),re}function u(){var J=.5;function Z(re){var ne=re.linkArrowLength;if(re.link.circular)return d(re.link,ne);var j=Math.abs((re.link.target.x0-re.link.source.x1)/2);ne>j&&(ne=j);var ee=re.link.source.x1,ie=re.link.target.x0-ne,fe=x(ee,ie),be=fe(J),Ae=fe(1-J),Be=re.link.y0-re.link.width/2,Ie=re.link.y0+re.link.width/2,Ze=re.link.y1-re.link.width/2,at=re.link.y1+re.link.width/2,it="M"+ee+","+Be,et="C"+be+","+Be+" "+Ae+","+Ze+" "+ie+","+Ze,lt="C"+Ae+","+at+" "+be+","+Ie+" "+ee+","+Ie,Me=ne>0?"L"+(ie+ne)+","+(Ze+re.link.width/2):"";return Me+="L"+ie+","+at,it+et+Me+lt+"Z"}return Z}function y(J,Z){var re=r(Z.color),ne=t.nodePadAcross,j=J.nodePad/2;Z.dx=Z.x1-Z.x0,Z.dy=Z.y1-Z.y0;var ee=Z.dx,ie=Math.max(.5,Z.dy),fe="node_"+Z.pointNumber;return Z.group&&(fe=i.randstr()),Z.trace=J.trace,Z.curveNumber=J.trace.index,{index:Z.pointNumber,key:fe,partOfGroup:Z.partOfGroup||!1,group:Z.group,traceId:J.key,trace:J.trace,node:Z,nodePad:J.nodePad,nodeLineColor:J.nodeLineColor,nodeLineWidth:J.nodeLineWidth,textFont:J.textFont,size:J.horizontal?J.height:J.width,visibleWidth:Math.ceil(ee),visibleHeight:ie,zoneX:-ne,zoneY:-j,zoneWidth:ee+2*ne,zoneHeight:ie+2*j,labelY:J.horizontal?Z.dy/2+1:Z.dx/2+1,left:Z.originalLayer===1,sizeAcross:J.width,forceLayouts:J.forceLayouts,horizontal:J.horizontal,darkBackground:re.getBrightness()<=128,tinyColorHue:o.tinyRGB(re),tinyColorAlpha:re.getAlpha(),valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,graph:J.graph,arrangement:J.arrangement,uniqueNodeLabelPathId:[J.guid,J.key,fe].join("_"),interactionState:J.interactionState,figure:J}}function f(J){J.attr("transform",function(Z){return n(Z.node.x0.toFixed(3),Z.node.y0.toFixed(3))})}function P(J){J.call(f)}function L(J,Z){J.call(P),Z.attr("d",u())}function z(J){J.attr("width",function(Z){return Z.node.x1-Z.node.x0}).attr("height",function(Z){return Z.visibleHeight})}function F(J){return J.link.width>1||J.linkLineWidth>0}function B(J){var Z=n(J.translateX,J.translateY);return Z+(J.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function O(J,Z,re){J.on(".basic",null).on("mouseover.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.hover(this,ne,Z),ne.interactionState.hovered=[this,ne])}).on("mousemove.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.follow(this,ne),ne.interactionState.hovered=[this,ne])}).on("mouseout.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1)}).on("click.basic",function(ne){ne.interactionState.hovered&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1),!ne.interactionState.dragInProgress&&!ne.partOfGroup&&re.select(this,ne,Z)})}function I(J,Z,re,ne){var j=A.behavior.drag().origin(function(ee){return{x:ee.node.x0+ee.visibleWidth/2,y:ee.node.y0+ee.visibleHeight/2}}).on("dragstart",function(ee){if(ee.arrangement!=="fixed"&&(i.ensureSingle(ne._fullLayout._infolayer,"g","dragcover",function(fe){ne._fullLayout._dragCover=fe}),i.raiseToTop(this),ee.interactionState.dragInProgress=ee.node,se(ee.node),ee.interactionState.hovered&&(re.nodeEvents.unhover.apply(0,ee.interactionState.hovered),ee.interactionState.hovered=!1),ee.arrangement==="snap")){var ie=ee.traceId+"|"+ee.key;ee.forceLayouts[ie]?ee.forceLayouts[ie].alpha(1):N(J,ie,ee,ne),U(J,Z,ee,ie,ne)}}).on("drag",function(ee){if(ee.arrangement!=="fixed"){var ie=A.event.x,fe=A.event.y;ee.arrangement==="snap"?(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2,ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2):(ee.arrangement==="freeform"&&(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2),fe=Math.max(0,Math.min(ee.size-ee.visibleHeight/2,fe)),ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2),se(ee.node),ee.arrangement!=="snap"&&(ee.sankey.update(ee.graph),L(J.filter(he(ee)),Z))}}).on("dragend",function(ee){if(ee.arrangement!=="fixed"){ee.interactionState.dragInProgress=!1;for(var ie=0;ie0)window.requestAnimationFrame(ee);else{var be=re.node.originalX;re.node.x0=be-re.visibleWidth/2,re.node.x1=be+re.visibleWidth/2,Q(re,j)}})}function W(J,Z,re,ne){return function(){for(var ee=0,ie=0;ie0&&ne.forceLayouts[Z].alpha(0)}}function Q(J,Z){for(var re=[],ne=[],j=0;j"),color:_(G,"bgcolor")||t.addOpacity(ne.color,1),borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:g.event.x"),color:_(G,"bgcolor")||he.tinyColorHue,borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[he.node]},{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S});n(be,.85),s(be)}}},ue=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(p,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_unhover",{event:g.event,points:[he.node]})),e.loneUnhover(m._hoverlayer.node()))};M(S,b,E,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{linkEvents:{hover:P,follow:I,unhover:N,select:f},nodeEvents:{hover:W,follow:Q,unhover:ue,select:U}})}}}),Jq=Ye({"src/traces/sankey/base_plot.js"(X){"use strict";var H=Ou().overrideAll,g=jh().getModuleCalcData,x=Ok(),A=Zm(),M=Kd(),e=bp(),t=ff().prepSelect,r=ta(),o=Hn(),a="sankey";X.name=a,X.baseLayoutAttrOverrides=H({hoverlabel:A.hoverlabel},"plot","nested"),X.plot=function(n){var s=g(n.calcdata,a)[0];x(n,s),X.updateFx(n)},X.clean=function(n,s,c,h){var v=h._has&&h._has(a),p=s._has&&s._has(a);v&&!p&&(h._paperdiv.selectAll(".sankey").remove(),h._paperdiv.selectAll(".bgsankey").remove())},X.updateFx=function(n){for(var s=0;s0}H.exports=function(F,B,O,I){var N=F._fullLayout,U;w(O)&&I&&(U=I()),M.makeTraceGroups(N._indicatorlayer,B,"trace").each(function(W){var Q=W[0],ue=Q.trace,se=g.select(this),he=ue._hasGauge,G=ue._isAngular,$=ue._isBullet,J=ue.domain,Z={w:N._size.w*(J.x[1]-J.x[0]),h:N._size.h*(J.y[1]-J.y[0]),l:N._size.l+N._size.w*J.x[0],r:N._size.r+N._size.w*(1-J.x[1]),t:N._size.t+N._size.h*(1-J.y[1]),b:N._size.b+N._size.h*J.y[0]},re=Z.l+Z.w/2,ne=Z.t+Z.h/2,j=Math.min(Z.w/2,Z.h),ee=i.innerRadius*j,ie,fe,be,Ae=ue.align||"center";if(fe=ne,!he)ie=Z.l+l[Ae]*Z.w,be=function(ce){return y(ce,Z.w,Z.h)};else if(G&&(ie=re,fe=ne+j/2,be=function(ce){return f(ce,.9*ee)}),$){var Be=i.bulletPadding,Ie=1-i.bulletNumberDomainSize+Be;ie=Z.l+(Ie+(1-Ie)*l[Ae])*Z.w,be=function(ce){return y(ce,(i.bulletNumberDomainSize-Be)*Z.w,Z.h)}}m(F,se,W,{numbersX:ie,numbersY:fe,numbersScaler:be,transitionOpts:O,onComplete:U});var Ze,at;he&&(Ze={range:ue.gauge.axis.range,color:ue.gauge.bgcolor,line:{color:ue.gauge.bordercolor,width:0},thickness:1},at={range:ue.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:ue.gauge.bordercolor,width:ue.gauge.borderwidth},thickness:1});var it=se.selectAll("g.angular").data(G?W:[]);it.exit().remove();var et=se.selectAll("g.angularaxis").data(G?W:[]);et.exit().remove(),G&&E(F,se,W,{radius:j,innerRadius:ee,gauge:it,layer:et,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var lt=se.selectAll("g.bullet").data($?W:[]);lt.exit().remove();var Me=se.selectAll("g.bulletaxis").data($?W:[]);Me.exit().remove(),$&&S(F,se,W,{gauge:lt,layer:Me,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var ge=se.selectAll("text.title").data(W);ge.exit().remove(),ge.enter().append("text").classed("title",!0),ge.attr("text-anchor",function(){return $?T.right:T[ue.title.align]}).text(ue.title.text).call(a.font,ue.title.font).call(n.convertToTspans,F),ge.attr("transform",function(){var ce=Z.l+Z.w*l[ue.title.align],ze,tt=i.titlePadding,nt=a.bBox(ge.node());if(he){if(G)if(ue.gauge.axis.visible){var Qe=a.bBox(et.node());ze=Qe.top-tt-nt.bottom}else ze=Z.t+Z.h/2-j/2-nt.bottom-tt;$&&(ze=fe-(nt.top+nt.bottom)/2,ce=Z.l-i.bulletPadding*Z.w)}else ze=ue._numbersTop-tt-nt.bottom;return t(ce,ze)})})};function S(z,F,B,O){var I=B[0].trace,N=O.gauge,U=O.layer,W=O.gaugeBg,Q=O.gaugeOutline,ue=O.size,se=I.domain,he=O.transitionOpts,G=O.onComplete,$,J,Z,re,ne;N.enter().append("g").classed("bullet",!0),N.attr("transform",t(ue.l,ue.t)),U.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),U.selectAll("g.xbulletaxistick,path,text").remove();var j=ue.h,ee=I.gauge.bar.thickness*j,ie=se.x[0],fe=se.x[0]+(se.x[1]-se.x[0])*(I._hasNumber||I._hasDelta?1-i.bulletNumberDomainSize:1);$=u(z,I.gauge.axis),$._id="xbulletaxis",$.domain=[ie,fe],$.setScale(),J=s.calcTicks($),Z=s.makeTransTickFn($),re=s.getTickSigns($)[2],ne=ue.t+ue.h,$.visible&&(s.drawTicks(z,$,{vals:$.ticks==="inside"?s.clipEnds($,J):J,layer:U,path:s.makeTickPath($,ne,re),transFn:Z}),s.drawLabels(z,$,{vals:J,layer:U,transFn:Z,labelFns:s.makeLabelFns($,ne)}));function be(et){et.attr("width",function(lt){return Math.max(0,$.c2p(lt.range[1])-$.c2p(lt.range[0]))}).attr("x",function(lt){return $.c2p(lt.range[0])}).attr("y",function(lt){return .5*(1-lt.thickness)*j}).attr("height",function(lt){return lt.thickness*j})}var Ae=[W].concat(I.gauge.steps),Be=N.selectAll("g.bg-bullet").data(Ae);Be.enter().append("g").classed("bg-bullet",!0).append("rect"),Be.select("rect").call(be).call(b),Be.exit().remove();var Ie=N.selectAll("g.value-bullet").data([I.gauge.bar]);Ie.enter().append("g").classed("value-bullet",!0).append("rect"),Ie.select("rect").attr("height",ee).attr("y",(j-ee)/2).call(b),w(he)?Ie.select("rect").transition().duration(he.duration).ease(he.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()}).attr("width",Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y)))):Ie.select("rect").attr("width",typeof B[0].y=="number"?Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y))):0),Ie.exit().remove();var Ze=B.filter(function(){return I.gauge.threshold.value||I.gauge.threshold.value===0}),at=N.selectAll("g.threshold-bullet").data(Ze);at.enter().append("g").classed("threshold-bullet",!0).append("line"),at.select("line").attr("x1",$.c2p(I.gauge.threshold.value)).attr("x2",$.c2p(I.gauge.threshold.value)).attr("y1",(1-I.gauge.threshold.thickness)/2*j).attr("y2",(1-(1-I.gauge.threshold.thickness)/2)*j).call(p.stroke,I.gauge.threshold.line.color).style("stroke-width",I.gauge.threshold.line.width),at.exit().remove();var it=N.selectAll("g.gauge-outline").data([Q]);it.enter().append("g").classed("gauge-outline",!0).append("rect"),it.select("rect").call(be).call(b),it.exit().remove()}function E(z,F,B,O){var I=B[0].trace,N=O.size,U=O.radius,W=O.innerRadius,Q=O.gaugeBg,ue=O.gaugeOutline,se=[N.l+N.w/2,N.t+N.h/2+U/2],he=O.gauge,G=O.layer,$=O.transitionOpts,J=O.onComplete,Z=Math.PI/2;function re(Ct){var St=I.gauge.axis.range[0],Ot=I.gauge.axis.range[1],jt=(Ct-St)/(Ot-St)*Math.PI-Z;return jt<-Z?-Z:jt>Z?Z:jt}function ne(Ct){return g.svg.arc().innerRadius((W+U)/2-Ct/2*(U-W)).outerRadius((W+U)/2+Ct/2*(U-W)).startAngle(-Z)}function j(Ct){Ct.attr("d",function(St){return ne(St.thickness).startAngle(re(St.range[0])).endAngle(re(St.range[1]))()})}var ee,ie,fe,be;he.enter().append("g").classed("angular",!0),he.attr("transform",t(se[0],se[1])),G.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),G.selectAll("g.xangularaxistick,path,text").remove(),ee=u(z,I.gauge.axis),ee.type="linear",ee.range=I.gauge.axis.range,ee._id="xangularaxis",ee.ticklabeloverflow="allow",ee.setScale();var Ae=function(Ct){return(ee.range[0]-Ct.x)/(ee.range[1]-ee.range[0])*Math.PI+Math.PI},Be={},Ie=s.makeLabelFns(ee,0),Ze=Ie.labelStandoff;Be.xFn=function(Ct){var St=Ae(Ct);return Math.cos(St)*Ze},Be.yFn=function(Ct){var St=Ae(Ct),Ot=Math.sin(St)>0?.2:1;return-Math.sin(St)*(Ze+Ct.fontSize*Ot)+Math.abs(Math.cos(St))*(Ct.fontSize*o)},Be.anchorFn=function(Ct){var St=Ae(Ct),Ot=Math.cos(St);return Math.abs(Ot)<.1?"middle":Ot>0?"start":"end"},Be.heightFn=function(Ct,St,Ot){var jt=Ae(Ct);return-.5*(1+Math.sin(jt))*Ot};var at=function(Ct){return t(se[0]+U*Math.cos(Ct),se[1]-U*Math.sin(Ct))};fe=function(Ct){return at(Ae(Ct))};var it=function(Ct){var St=Ae(Ct);return at(St)+"rotate("+-r(St)+")"};if(ie=s.calcTicks(ee),be=s.getTickSigns(ee)[2],ee.visible){be=ee.ticks==="inside"?-1:1;var et=(ee.linewidth||1)/2;s.drawTicks(z,ee,{vals:ie,layer:G,path:"M"+be*et+",0h"+be*ee.ticklen,transFn:it}),s.drawLabels(z,ee,{vals:ie,layer:G,transFn:fe,labelFns:Be})}var lt=[Q].concat(I.gauge.steps),Me=he.selectAll("g.bg-arc").data(lt);Me.enter().append("g").classed("bg-arc",!0).append("path"),Me.select("path").call(j).call(b),Me.exit().remove();var ge=ne(I.gauge.bar.thickness),ce=he.selectAll("g.value-arc").data([I.gauge.bar]);ce.enter().append("g").classed("value-arc",!0).append("path");var ze=ce.select("path");w($)?(ze.transition().duration($.duration).ease($.easing).each("end",function(){J&&J()}).each("interrupt",function(){J&&J()}).attrTween("d",d(ge,re(B[0].lastY),re(B[0].y))),I._lastValue=B[0].y):ze.attr("d",typeof B[0].y=="number"?ge.endAngle(re(B[0].y)):"M0,0Z"),ze.call(b),ce.exit().remove(),lt=[];var tt=I.gauge.threshold.value;(tt||tt===0)&<.push({range:[tt,tt],color:I.gauge.threshold.color,line:{color:I.gauge.threshold.line.color,width:I.gauge.threshold.line.width},thickness:I.gauge.threshold.thickness});var nt=he.selectAll("g.threshold-arc").data(lt);nt.enter().append("g").classed("threshold-arc",!0).append("path"),nt.select("path").call(j).call(b),nt.exit().remove();var Qe=he.selectAll("g.gauge-outline").data([ue]);Qe.enter().append("g").classed("gauge-outline",!0).append("path"),Qe.select("path").call(j).call(b),Qe.exit().remove()}function m(z,F,B,O){var I=B[0].trace,N=O.numbersX,U=O.numbersY,W=I.align||"center",Q=T[W],ue=O.transitionOpts,se=O.onComplete,he=M.ensureSingle(F,"g","numbers"),G,$,J,Z=[];I._hasNumber&&Z.push("number"),I._hasDelta&&(Z.push("delta"),I.delta.position==="left"&&Z.reverse());var re=he.selectAll("text").data(Z);re.enter().append("text"),re.attr("text-anchor",function(){return Q}).attr("class",function(at){return at}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),re.exit().remove();function ne(at,it,et,lt){if(at.match("s")&&et>=0!=lt>=0&&!it(et).slice(-1).match(_)&&!it(lt).slice(-1).match(_)){var Me=at.slice().replace("s","f").replace(/\d+/,function(ce){return parseInt(ce)-1}),ge=u(z,{tickformat:Me});return function(ce){return Math.abs(ce)<1?s.tickText(ge,ce).text:it(ce)}}else return it}function j(){var at=u(z,{tickformat:I.number.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(ce){return s.tickText(at,ce).text},et=I.number.suffix,lt=I.number.prefix,Me=he.select("text.number");function ge(){var ce=typeof B[0].y=="number"?lt+it(B[0].y)+et:"-";Me.text(ce).call(a.font,I.number.font).call(n.convertToTspans,z)}return w(ue)?Me.transition().duration(ue.duration).ease(ue.easing).each("end",function(){ge(),se&&se()}).each("interrupt",function(){ge(),se&&se()}).attrTween("text",function(){var ce=g.select(this),ze=A(B[0].lastY,B[0].y);I._lastValue=B[0].y;var tt=ne(I.number.valueformat,it,B[0].lastY,B[0].y);return function(nt){ce.text(lt+tt(ze(nt))+et)}}):ge(),G=P(lt+it(B[0].y)+et,I.number.font,Q,z),Me}function ee(){var at=u(z,{tickformat:I.delta.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(nt){return s.tickText(at,nt).text},et=I.delta.suffix,lt=I.delta.prefix,Me=function(nt){var Qe=I.delta.relative?nt.relativeDelta:nt.delta;return Qe},ge=function(nt,Qe){return nt===0||typeof nt!="number"||isNaN(nt)?"-":(nt>0?I.delta.increasing.symbol:I.delta.decreasing.symbol)+lt+Qe(nt)+et},ce=function(nt){return nt.delta>=0?I.delta.increasing.color:I.delta.decreasing.color};I._deltaLastValue===void 0&&(I._deltaLastValue=Me(B[0]));var ze=he.select("text.delta");ze.call(a.font,I.delta.font).call(p.fill,ce({delta:I._deltaLastValue}));function tt(){ze.text(ge(Me(B[0]),it)).call(p.fill,ce(B[0])).call(n.convertToTspans,z)}return w(ue)?ze.transition().duration(ue.duration).ease(ue.easing).tween("text",function(){var nt=g.select(this),Qe=Me(B[0]),Ct=I._deltaLastValue,St=ne(I.delta.valueformat,it,Ct,Qe),Ot=A(Ct,Qe);return I._deltaLastValue=Qe,function(jt){nt.text(ge(Ot(jt),St)),nt.call(p.fill,ce({delta:Ot(jt)}))}}).each("end",function(){tt(),se&&se()}).each("interrupt",function(){tt(),se&&se()}):tt(),$=P(ge(Me(B[0]),it),I.delta.font,Q,z),ze}var ie=I.mode+I.align,fe;if(I._hasDelta&&(fe=ee(),ie+=I.delta.position+I.delta.font.size+I.delta.font.family+I.delta.valueformat,ie+=I.delta.increasing.symbol+I.delta.decreasing.symbol,J=$),I._hasNumber&&(j(),ie+=I.number.font.size+I.number.font.family+I.number.valueformat+I.number.suffix+I.number.prefix,J=G),I._hasDelta&&I._hasNumber){var be=[(G.left+G.right)/2,(G.top+G.bottom)/2],Ae=[($.left+$.right)/2,($.top+$.bottom)/2],Be,Ie,Ze=.75*I.delta.font.size;I.delta.position==="left"&&(Be=L(I,"deltaPos",0,-1*(G.width*l[I.align]+$.width*(1-l[I.align])+Ze),ie,Math.min),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:$.left+Be,right:G.right,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="right"&&(Be=L(I,"deltaPos",0,G.width*(1-l[I.align])+$.width*l[I.align]+Ze,ie,Math.max),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:G.left,right:$.right+Be,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="bottom"&&(Be=null,Ie=$.height,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height,bottom:G.bottom+$.height}),I.delta.position==="top"&&(Be=null,Ie=G.top,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height-$.height,bottom:G.bottom}),fe.attr({dx:Be,dy:Ie})}(I._hasNumber||I._hasDelta)&&he.attr("transform",function(){var at=O.numbersScaler(J);ie+=at[2];var it=L(I,"numbersScale",1,at[0],ie,Math.min),et;I._scaleNumbers||(it=1),I._isAngular?et=U-it*J.bottom:et=U-it*(J.top+J.bottom)/2,I._numbersTop=it*J.top+et;var lt=J[W];W==="center"&&(lt=(J.left+J.right)/2);var Me=N-it*lt;return Me=L(I,"numbersTranslate",0,Me,ie,Math.max),t(Me,et)+e(it)})}function b(z){z.each(function(F){p.stroke(g.select(this),F.line.color)}).each(function(F){p.fill(g.select(this),F.color)}).style("stroke-width",function(F){return F.line.width})}function d(z,F,B){return function(){var O=x(F,B);return function(I){return z.endAngle(O(I))()}}}function u(z,F,B){var O=z._fullLayout,I=M.extendFlat({type:"linear",ticks:"outside",range:B,showline:!0},F),N={type:"linear",_id:"x"+F._id},U={letter:"x",font:O.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function W(Q,ue){return M.coerce(I,N,v,Q,ue)}return c(I,N,W,U,O),h(I,N,W,U),N}function y(z,F,B){var O=Math.min(F/z.width,B/z.height);return[O,z,F+"x"+B]}function f(z,F){var B=Math.sqrt(z.width/2*(z.width/2)+z.height*z.height),O=F/B;return[O,z,F]}function P(z,F,B,O){var I=document.createElementNS("http://www.w3.org/2000/svg","text"),N=g.select(I);return N.text(z).attr("x",0).attr("y",0).attr("text-anchor",B).attr("data-unformatted",z).call(n.convertToTspans,O).call(a.font,F),a.bBox(N.node())}function L(z,F,B,O,I,N){var U="_cache"+F;z[U]&&z[U].key===I||(z[U]={key:I,value:B});var W=M.aggNums(N,null,[z[U].value,O],2);return z[U].value=W,W}}}),nH=Ye({"src/traces/indicator/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"indicator",basePlotModule:tH(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Bk(),supplyDefaults:rH().supplyDefaults,calc:aH().calc,plot:iH(),meta:{}}}}),oH=Ye({"lib/indicator.js"(X,H){"use strict";H.exports=nH()}}),Uk=Ye({"src/traces/table/attributes.js"(X,H){"use strict";var g=Kg(),x=Oo().extendFlat,A=Ou().overrideAll,M=Au(),e=Wu().attributes,t=Cc().descriptionOnlyNumbers,r=H.exports=A({domain:e({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))}},"calc","from-root")}}),sH=Ye({"src/traces/table/defaults.js"(X,H){"use strict";var g=ta(),x=Uk(),A=Wu().defaults;function M(e,t){for(var r=e.columnorder||[],o=e.header.values.length,a=r.slice(0,o),i=a.slice().sort(function(c,h){return c-h}),n=a.map(function(c){return i.indexOf(c)}),s=n.length;s",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}}}),uH=Ye({"src/traces/table/data_preparation_helper.js"(X,H){"use strict";var g=jk(),x=Oo().extendFlat,A=jo(),M=xp().isTypedArray,e=xp().isArrayOrTypedArray;H.exports=function(v,p){var T=o(p.cells.values),l=function(Q){return Q.slice(p.header.values.length,Q.length)},_=o(p.header.values);_.length&&!_[0].length&&(_[0]=[""],_=o(_));var w=_.concat(l(T).map(function(){return a((_[0]||[""]).length)})),S=p.domain,E=Math.floor(v._fullLayout._size.w*(S.x[1]-S.x[0])),m=Math.floor(v._fullLayout._size.h*(S.y[1]-S.y[0])),b=p.header.values.length?w[0].map(function(){return p.header.height}):[g.emptyHeaderHeight],d=T.length?T[0].map(function(){return p.cells.height}):[],u=b.reduce(r,0),y=m-u,f=y+g.uplift,P=s(d,f),L=s(b,u),z=n(L,[]),F=n(P,z),B={},O=p._fullInput.columnorder;e(O)&&(O=Array.from(O)),O=O.concat(l(T.map(function(Q,ue){return ue})));var I=w.map(function(Q,ue){var se=e(p.columnwidth)?p.columnwidth[Math.min(ue,p.columnwidth.length-1)]:p.columnwidth;return A(se)?Number(se):1}),N=I.reduce(r,0);I=I.map(function(Q){return Q/N*E});var U=Math.max(t(p.header.line.width),t(p.cells.line.width)),W={key:p.uid+v._context.staticPlot,translateX:S.x[0]*v._fullLayout._size.w,translateY:v._fullLayout._size.h*(1-S.y[1]),size:v._fullLayout._size,width:E,maxLineWidth:U,height:m,columnOrder:O,groupHeight:m,rowBlocks:F,headerRowBlocks:z,scrollY:0,cells:x({},p.cells,{values:T}),headerCells:x({},p.header,{values:w}),gdColumns:w.map(function(Q){return Q[0]}),gdColumnsOriginalOrder:w.map(function(Q){return Q[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:w.map(function(Q,ue){var se=B[Q];B[Q]=(se||0)+1;var he=Q+"__"+B[Q];return{key:he,label:Q,specIndex:ue,xIndex:O[ue],xScale:i,x:void 0,calcdata:void 0,columnWidth:I[ue]}})};return W.columns.forEach(function(Q){Q.calcdata=W,Q.x=i(Q)}),W};function t(h){if(e(h)){for(var v=0,p=0;p=v||m===h.length-1)&&(p[l]=w,w.key=E++,w.firstRowIndex=S,w.lastRowIndex=m,w=c(),l+=_,S=m+1,_=0);return p}function c(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}}}),cH=Ye({"src/traces/table/data_split_helpers.js"(X){"use strict";var H=Oo().extendFlat;X.splitToPanels=function(x){var A=[0,0],M=H({},x,{key:"header",type:"header",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!0,values:x.calcdata.headerCells.values[x.specIndex],rowBlocks:x.calcdata.headerRowBlocks,calcdata:H({},x.calcdata,{cells:x.calcdata.headerCells})}),e=H({},x,{key:"cells1",type:"cells",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks}),t=H({},x,{key:"cells2",type:"cells",page:1,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks});return[e,t,M]},X.splitToCells=function(x){var A=g(x);return(x.values||[]).slice(A[0],A[1]).map(function(M,e){var t=typeof M=="string"&&M.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:e+t,key:A[0]+e,column:x,calcdata:x.calcdata,page:x.page,rowBlocks:x.rowBlocks,value:M}})};function g(x){var A=x.rowBlocks[x.page],M=A?A.rows[0].rowIndex:0,e=A?M+A.rows.length:0;return[M,e]}}}),Vk=Ye({"src/traces/table/plot.js"(X,H){"use strict";var g=jk(),x=_n(),A=ta(),M=A.numberFormat,e=kv(),t=Bo(),r=jl(),o=ta().raiseToTop,a=ta().strTranslate,i=ta().cancelTransition,n=uH(),s=cH(),c=Fn();H.exports=function(ie,fe){var be=!ie._context.staticPlot,Ae=ie._fullLayout._paper.selectAll("."+g.cn.table).data(fe.map(function(Qe){var Ct=e.unwrap(Qe),St=Ct.trace;return n(ie,St)}),e.keyFun);Ae.exit().remove(),Ae.enter().append("g").classed(g.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),Ae.attr("width",function(Qe){return Qe.width+Qe.size.l+Qe.size.r}).attr("height",function(Qe){return Qe.height+Qe.size.t+Qe.size.b}).attr("transform",function(Qe){return a(Qe.translateX,Qe.translateY)});var Be=Ae.selectAll("."+g.cn.tableControlView).data(e.repeat,e.keyFun),Ie=Be.enter().append("g").classed(g.cn.tableControlView,!0).style("box-sizing","content-box");if(be){var Ze="onwheel"in document?"wheel":"mousewheel";Ie.on("mousemove",function(Qe){Be.filter(function(Ct){return Qe===Ct}).call(l,ie)}).on(Ze,function(Qe){if(!Qe.scrollbarState.wheeling){Qe.scrollbarState.wheeling=!0;var Ct=Qe.scrollY+x.event.deltaY,St=Q(ie,Be,null,Ct)(Qe);St||(x.event.stopPropagation(),x.event.preventDefault()),Qe.scrollbarState.wheeling=!1}}).call(l,ie,!0)}Be.attr("transform",function(Qe){return a(Qe.size.l,Qe.size.t)});var at=Be.selectAll("."+g.cn.scrollBackground).data(e.repeat,e.keyFun);at.enter().append("rect").classed(g.cn.scrollBackground,!0).attr("fill","none"),at.attr("width",function(Qe){return Qe.width}).attr("height",function(Qe){return Qe.height}),Be.each(function(Qe){t.setClipUrl(x.select(this),v(ie,Qe),ie)});var it=Be.selectAll("."+g.cn.yColumn).data(function(Qe){return Qe.columns},e.keyFun);it.enter().append("g").classed(g.cn.yColumn,!0),it.exit().remove(),it.attr("transform",function(Qe){return a(Qe.x,0)}),be&&it.call(x.behavior.drag().origin(function(Qe){var Ct=x.select(this);return B(Ct,Qe,-g.uplift),o(this),Qe.calcdata.columnDragInProgress=!0,l(Be.filter(function(St){return Qe.calcdata.key===St.key}),ie),Qe}).on("drag",function(Qe){var Ct=x.select(this),St=function(ur){return(Qe===ur?x.event.x:ur.x)+ur.columnWidth/2};Qe.x=Math.max(-g.overdrag,Math.min(Qe.calcdata.width+g.overdrag-Qe.columnWidth,x.event.x));var Ot=T(it).filter(function(ur){return ur.calcdata.key===Qe.calcdata.key}),jt=Ot.sort(function(ur,ar){return St(ur)-St(ar)});jt.forEach(function(ur,ar){ur.xIndex=ar,ur.x=Qe===ur?ur.x:ur.xScale(ur)}),it.filter(function(ur){return Qe!==ur}).transition().ease(g.transitionEase).duration(g.transitionDuration).attr("transform",function(ur){return a(ur.x,0)}),Ct.call(i).attr("transform",a(Qe.x,-g.uplift))}).on("dragend",function(Qe){var Ct=x.select(this),St=Qe.calcdata;Qe.x=Qe.xScale(Qe),Qe.calcdata.columnDragInProgress=!1,B(Ct,Qe,0),z(ie,St,St.columns.map(function(Ot){return Ot.xIndex}))})),it.each(function(Qe){t.setClipUrl(x.select(this),p(ie,Qe),ie)});var et=it.selectAll("."+g.cn.columnBlock).data(s.splitToPanels,e.keyFun);et.enter().append("g").classed(g.cn.columnBlock,!0).attr("id",function(Qe){return Qe.key}),et.style("cursor",function(Qe){return Qe.dragHandle?"ew-resize":Qe.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var lt=et.filter(I),Me=et.filter(O);be&&Me.call(x.behavior.drag().origin(function(Qe){return x.event.stopPropagation(),Qe}).on("drag",Q(ie,Be,-1)).on("dragend",function(){})),_(ie,Be,lt,et),_(ie,Be,Me,et);var ge=Be.selectAll("."+g.cn.scrollAreaClip).data(e.repeat,e.keyFun);ge.enter().append("clipPath").classed(g.cn.scrollAreaClip,!0).attr("id",function(Qe){return v(ie,Qe)});var ce=ge.selectAll("."+g.cn.scrollAreaClipRect).data(e.repeat,e.keyFun);ce.enter().append("rect").classed(g.cn.scrollAreaClipRect,!0).attr("x",-g.overdrag).attr("y",-g.uplift).attr("fill","none"),ce.attr("width",function(Qe){return Qe.width+2*g.overdrag}).attr("height",function(Qe){return Qe.height+g.uplift});var ze=it.selectAll("."+g.cn.columnBoundary).data(e.repeat,e.keyFun);ze.enter().append("g").classed(g.cn.columnBoundary,!0);var tt=it.selectAll("."+g.cn.columnBoundaryClippath).data(e.repeat,e.keyFun);tt.enter().append("clipPath").classed(g.cn.columnBoundaryClippath,!0),tt.attr("id",function(Qe){return p(ie,Qe)});var nt=tt.selectAll("."+g.cn.columnBoundaryRect).data(e.repeat,e.keyFun);nt.enter().append("rect").classed(g.cn.columnBoundaryRect,!0).attr("fill","none"),nt.attr("width",function(Qe){return Qe.columnWidth+2*h(Qe)}).attr("height",function(Qe){return Qe.calcdata.height+2*h(Qe)+g.uplift}).attr("x",function(Qe){return-h(Qe)}).attr("y",function(Qe){return-h(Qe)}),W(null,Me,Be)};function h(ee){return Math.ceil(ee.calcdata.maxLineWidth/2)}function v(ee,ie){return"clip"+ee._fullLayout._uid+"_scrollAreaBottomClip_"+ie.key}function p(ee,ie){return"clip"+ee._fullLayout._uid+"_columnBoundaryClippath_"+ie.calcdata.key+"_"+ie.specIndex}function T(ee){return[].concat.apply([],ee.map(function(ie){return ie})).map(function(ie){return ie.__data__})}function l(ee,ie,fe){function be(it){var et=it.rowBlocks;return J(et,et.length-1)+(et.length?Z(et[et.length-1],1/0):1)}var Ae=ee.selectAll("."+g.cn.scrollbarKit).data(e.repeat,e.keyFun);Ae.enter().append("g").classed(g.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),Ae.each(function(it){var et=it.scrollbarState;et.totalHeight=be(it),et.scrollableAreaHeight=it.groupHeight-N(it),et.currentlyVisibleHeight=Math.min(et.totalHeight,et.scrollableAreaHeight),et.ratio=et.currentlyVisibleHeight/et.totalHeight,et.barLength=Math.max(et.ratio*et.currentlyVisibleHeight,g.goldenRatio*g.scrollbarWidth),et.barWiggleRoom=et.currentlyVisibleHeight-et.barLength,et.wiggleRoom=Math.max(0,et.totalHeight-et.scrollableAreaHeight),et.topY=et.barWiggleRoom===0?0:it.scrollY/et.wiggleRoom*et.barWiggleRoom,et.bottomY=et.topY+et.barLength,et.dragMultiplier=et.wiggleRoom/et.barWiggleRoom}).attr("transform",function(it){var et=it.width+g.scrollbarWidth/2+g.scrollbarOffset;return a(et,N(it))});var Be=Ae.selectAll("."+g.cn.scrollbar).data(e.repeat,e.keyFun);Be.enter().append("g").classed(g.cn.scrollbar,!0);var Ie=Be.selectAll("."+g.cn.scrollbarSlider).data(e.repeat,e.keyFun);Ie.enter().append("g").classed(g.cn.scrollbarSlider,!0),Ie.attr("transform",function(it){return a(0,it.scrollbarState.topY||0)});var Ze=Ie.selectAll("."+g.cn.scrollbarGlyph).data(e.repeat,e.keyFun);Ze.enter().append("line").classed(g.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",g.scrollbarWidth).attr("stroke-linecap","round").attr("y1",g.scrollbarWidth/2),Ze.attr("y2",function(it){return it.scrollbarState.barLength-g.scrollbarWidth/2}).attr("stroke-opacity",function(it){return it.columnDragInProgress||!it.scrollbarState.barWiggleRoom||fe?0:.4}),Ze.transition().delay(0).duration(0),Ze.transition().delay(g.scrollbarHideDelay).duration(g.scrollbarHideDuration).attr("stroke-opacity",0);var at=Be.selectAll("."+g.cn.scrollbarCaptureZone).data(e.repeat,e.keyFun);at.enter().append("line").classed(g.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",g.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(it){var et=x.event.y,lt=this.getBoundingClientRect(),Me=it.scrollbarState,ge=et-lt.top,ce=x.scale.linear().domain([0,Me.scrollableAreaHeight]).range([0,Me.totalHeight]).clamp(!0);Me.topY<=ge&&ge<=Me.bottomY||Q(ie,ee,null,ce(ge-Me.barLength/2))(it)}).call(x.behavior.drag().origin(function(it){return x.event.stopPropagation(),it.scrollbarState.scrollbarScrollInProgress=!0,it}).on("drag",Q(ie,ee)).on("dragend",function(){})),at.attr("y2",function(it){return it.scrollbarState.scrollableAreaHeight}),ie._context.staticPlot&&(Ze.remove(),at.remove())}function _(ee,ie,fe,be){var Ae=w(fe),Be=S(Ae);d(Be);var Ie=E(Be);y(Ie);var Ze=b(Be),at=m(Ze);u(at),f(at,ie,be,ee),$(Be)}function w(ee){var ie=ee.selectAll("."+g.cn.columnCells).data(e.repeat,e.keyFun);return ie.enter().append("g").classed(g.cn.columnCells,!0),ie.exit().remove(),ie}function S(ee){var ie=ee.selectAll("."+g.cn.columnCell).data(s.splitToCells,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.columnCell,!0),ie.exit().remove(),ie}function E(ee){var ie=ee.selectAll("."+g.cn.cellRect).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("rect").classed(g.cn.cellRect,!0),ie}function m(ee){var ie=ee.selectAll("."+g.cn.cellText).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("text").classed(g.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){x.event.stopPropagation()}),ie}function b(ee){var ie=ee.selectAll("."+g.cn.cellTextHolder).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ie}function d(ee){ee.each(function(ie,fe){var be=ie.calcdata.cells.font,Ae=ie.column.specIndex,Be={size:F(be.size,Ae,fe),color:F(be.color,Ae,fe),family:F(be.family,Ae,fe),weight:F(be.weight,Ae,fe),style:F(be.style,Ae,fe),variant:F(be.variant,Ae,fe),textcase:F(be.textcase,Ae,fe),lineposition:F(be.lineposition,Ae,fe),shadow:F(be.shadow,Ae,fe)};ie.rowNumber=ie.key,ie.align=F(ie.calcdata.cells.align,Ae,fe),ie.cellBorderWidth=F(ie.calcdata.cells.line.width,Ae,fe),ie.font=Be})}function u(ee){ee.each(function(ie){t.font(x.select(this),ie.font)})}function y(ee){ee.attr("width",function(ie){return ie.column.columnWidth}).attr("stroke-width",function(ie){return ie.cellBorderWidth}).each(function(ie){var fe=x.select(this);c.stroke(fe,F(ie.calcdata.cells.line.color,ie.column.specIndex,ie.rowNumber)),c.fill(fe,F(ie.calcdata.cells.fill.color,ie.column.specIndex,ie.rowNumber))})}function f(ee,ie,fe,be){ee.text(function(Ae){var Be=Ae.column.specIndex,Ie=Ae.rowNumber,Ze=Ae.value,at=typeof Ze=="string",it=at&&Ze.match(/
/i),et=!at||it;Ae.mayHaveMarkup=at&&Ze.match(/[<&>]/);var lt=P(Ze);Ae.latex=lt;var Me=lt?"":F(Ae.calcdata.cells.prefix,Be,Ie)||"",ge=lt?"":F(Ae.calcdata.cells.suffix,Be,Ie)||"",ce=lt?null:F(Ae.calcdata.cells.format,Be,Ie)||null,ze=Me+(ce?M(ce)(Ae.value):Ae.value)+ge,tt;Ae.wrappingNeeded=!Ae.wrapped&&!et&&!lt&&(tt=L(ze)),Ae.cellHeightMayIncrease=it||lt||Ae.mayHaveMarkup||(tt===void 0?L(ze):tt),Ae.needsConvertToTspans=Ae.mayHaveMarkup||Ae.wrappingNeeded||Ae.latex;var nt;if(Ae.wrappingNeeded){var Qe=g.wrapSplitCharacter===" "?ze.replace(/Ae&&be.push(Be),Ae+=at}return be}function W(ee,ie,fe){var be=T(ie)[0];if(be!==void 0){var Ae=be.rowBlocks,Be=be.calcdata,Ie=J(Ae,Ae.length),Ze=be.calcdata.groupHeight-N(be),at=Be.scrollY=Math.max(0,Math.min(Ie-Ze,Be.scrollY)),it=U(Ae,at,Ze);it.length===1&&(it[0]===Ae.length-1?it.unshift(it[0]-1):it.push(it[0]+1)),it[0]%2&&it.reverse(),ie.each(function(et,lt){et.page=it[lt],et.scrollY=at}),ie.attr("transform",function(et){var lt=J(et.rowBlocks,et.page)-et.scrollY;return a(0,lt)}),ee&&(ue(ee,fe,ie,it,be.prevPages,be,0),ue(ee,fe,ie,it,be.prevPages,be,1),l(fe,ee))}}function Q(ee,ie,fe,be){return function(Be){var Ie=Be.calcdata?Be.calcdata:Be,Ze=ie.filter(function(lt){return Ie.key===lt.key}),at=fe||Ie.scrollbarState.dragMultiplier,it=Ie.scrollY;Ie.scrollY=be===void 0?Ie.scrollY+at*x.event.dy:be;var et=Ze.selectAll("."+g.cn.yColumn).selectAll("."+g.cn.columnBlock).filter(O);return W(ee,et,Ze),Ie.scrollY===it}}function ue(ee,ie,fe,be,Ae,Be,Ie){var Ze=be[Ie]!==Ae[Ie];Ze&&(clearTimeout(Be.currentRepaint[Ie]),Be.currentRepaint[Ie]=setTimeout(function(){var at=fe.filter(function(it,et){return et===Ie&&be[et]!==Ae[et]});_(ee,ie,at,fe),Ae[Ie]=be[Ie]}))}function se(ee,ie,fe,be){return function(){var Be=x.select(ie.parentNode);Be.each(function(Ie){var Ze=Ie.fragments;Be.selectAll("tspan.line").each(function(ze,tt){Ze[tt].width=this.getComputedTextLength()});var at=Ze[Ze.length-1].width,it=Ze.slice(0,-1),et=[],lt,Me,ge=0,ce=Ie.column.columnWidth-2*g.cellPad;for(Ie.value="";it.length;)lt=it.shift(),Me=lt.width+at,ge+Me>ce&&(Ie.value+=et.join(g.wrapSpacer)+g.lineBreaker,et=[],ge=0),et.push(lt.text),ge+=Me;ge&&(Ie.value+=et.join(g.wrapSpacer)),Ie.wrapped=!0}),Be.selectAll("tspan.line").remove(),f(Be.select("."+g.cn.cellText),fe,ee,be),x.select(ie.parentNode.parentNode).call($)}}function he(ee,ie,fe,be,Ae){return function(){if(!Ae.settledY){var Ie=x.select(ie.parentNode),Ze=ne(Ae),at=Ae.key-Ze.firstRowIndex,it=Ze.rows[at].rowHeight,et=Ae.cellHeightMayIncrease?ie.parentNode.getBoundingClientRect().height+2*g.cellPad:it,lt=Math.max(et,it),Me=lt-Ze.rows[at].rowHeight;Me&&(Ze.rows[at].rowHeight=lt,ee.selectAll("."+g.cn.columnCell).call($),W(null,ee.filter(O),0),l(fe,be,!0)),Ie.attr("transform",function(){var ge=this,ce=ge.parentNode,ze=ce.getBoundingClientRect(),tt=x.select(ge.parentNode).select("."+g.cn.cellRect).node().getBoundingClientRect(),nt=ge.transform.baseVal.consolidate(),Qe=tt.top-ze.top+(nt?nt.matrix.f:g.cellPad);return a(G(Ae,x.select(ge.parentNode).select("."+g.cn.cellTextHolder).node().getBoundingClientRect().width),Qe)}),Ae.settledY=!0}}}function G(ee,ie){switch(ee.align){case"left":return g.cellPad;case"right":return ee.column.columnWidth-(ie||0)-g.cellPad;case"center":return(ee.column.columnWidth-(ie||0))/2;default:return g.cellPad}}function $(ee){ee.attr("transform",function(ie){var fe=ie.rowBlocks[0].auxiliaryBlocks.reduce(function(Ie,Ze){return Ie+Z(Ze,1/0)},0),be=ne(ie),Ae=Z(be,ie.key),Be=Ae+fe;return a(0,Be)}).selectAll("."+g.cn.cellRect).attr("height",function(ie){return j(ne(ie),ie.key).rowHeight})}function J(ee,ie){for(var fe=0,be=ie-1;be>=0;be--)fe+=re(ee[be]);return fe}function Z(ee,ie){for(var fe=0,be=0;beM.length&&(A=A.slice(0,M.length)):A=[],t=0;t90&&(v-=180,i=-i),{angle:v,flip:i,p:x.c2p(e,A,M),offsetMultplier:n}}}}),xH=Ye({"src/traces/carpet/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=qk(),M=Hk(),e=_H(),t=jl(),r=ta(),o=r.strRotate,a=r.strTranslate,i=oh();H.exports=function(_,w,S,E){var m=_._context.staticPlot,b=w.xaxis,d=w.yaxis,u=_._fullLayout,y=u._clips;r.makeTraceGroups(E,S,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace,F=z.aaxis,B=z.baxis,O=r.ensureSingle(P,"g","minorlayer"),I=r.ensureSingle(P,"g","majorlayer"),N=r.ensureSingle(P,"g","boundarylayer"),U=r.ensureSingle(P,"g","labellayer");P.style("opacity",z.opacity),s(b,d,I,F,"a",F._gridlines,!0,m),s(b,d,I,B,"b",B._gridlines,!0,m),s(b,d,O,F,"a",F._minorgridlines,!0,m),s(b,d,O,B,"b",B._minorgridlines,!0,m),s(b,d,N,F,"a-boundary",F._boundarylines,m),s(b,d,N,B,"b-boundary",B._boundarylines,m);var W=c(_,b,d,z,L,U,F._labels,"a-label"),Q=c(_,b,d,z,L,U,B._labels,"b-label");h(_,U,z,L,b,d,W,Q),n(z,L,y,b,d)})};function n(l,_,w,S,E){var m,b,d,u,y=w.select("#"+l._clipPathId);y.size()||(y=w.append("clipPath").classed("carpetclip",!0));var f=r.ensureSingle(y,"path","carpetboundary"),P=_.clipsegments,L=[];for(u=0;u0?"start":"end","data-notex":1}).call(x.font,P.font).text(P.text).call(t.convertToTspans,l),I=x.bBox(this);O.attr("transform",a(z.p[0],z.p[1])+o(z.angle)+a(P.axis.labelpadding*B,I.height*.3)),y=Math.max(y,I.width+P.axis.labelpadding)}),u.exit().remove(),f.maxExtent=y,f}function h(l,_,w,S,E,m,b,d){var u,y,f,P,L=r.aggNums(Math.min,null,w.a),z=r.aggNums(Math.max,null,w.a),F=r.aggNums(Math.min,null,w.b),B=r.aggNums(Math.max,null,w.b);u=.5*(L+z),y=F,f=w.ab2xy(u,y,!0),P=w.dxyda_rough(u,y),b.angle===void 0&&r.extendFlat(b,e(w,E,m,f,w.dxydb_rough(u,y))),T(l,_,w,S,f,P,w.aaxis,E,m,b,"a-title"),u=L,y=.5*(F+B),f=w.ab2xy(u,y,!0),P=w.dxydb_rough(u,y),d.angle===void 0&&r.extendFlat(d,e(w,E,m,f,w.dxyda_rough(u,y))),T(l,_,w,S,f,P,w.baxis,E,m,d,"b-title")}var v=i.LINE_SPACING,p=(1-i.MID_SHIFT)/v+1;function T(l,_,w,S,E,m,b,d,u,y,f){var P=[];b.title.text&&P.push(b.title.text);var L=_.selectAll("text."+f).data(P),z=y.maxExtent;L.enter().append("text").classed(f,!0),L.each(function(){var F=e(w,d,u,E,m);["start","both"].indexOf(b.showticklabels)===-1&&(z=0);var B=b.title.font.size;z+=B+b.title.offset;var O=y.angle+(y.flip<0?180:0),I=(O-F.angle+450)%360,N=I>90&&I<270,U=g.select(this);U.text(b.title.text).call(t.convertToTspans,l),N&&(z=(-t.lineCount(U)+p)*v*B-z),U.attr("transform",a(F.p[0],F.p[1])+o(F.angle)+a(0,z)).attr("text-anchor","middle").call(x.font,b.title.font)}),L.exit().remove()}}}),bH=Ye({"src/traces/carpet/cheater_basis.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M){var e,t,r,o,a,i,n=[],s=g(x)?x.length:x,c=g(A)?A.length:A,h=g(x)?x:null,v=g(A)?A:null;h&&(r=(h.length-1)/(h[h.length-1]-h[0])/(s-1)),v&&(o=(v.length-1)/(v[v.length-1]-v[0])/(c-1));var p,T=1/0,l=-1/0;for(t=0;t=10)return null;for(var e=1/0,t=-1/0,r=A.length,o=0;o0&&(Z=M.dxydi([],W-1,ue,0,se),ee.push(he[0]+Z[0]/3),ie.push(he[1]+Z[1]/3),re=M.dxydi([],W-1,ue,1,se),ee.push(J[0]-re[0]/3),ie.push(J[1]-re[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;else for(W=M.a2i(U),G=Math.floor(Math.max(0,Math.min(F-2,W))),$=W-G,fe.length=F,fe.crossLength=B,fe.xy=function(be){return M.evalxy([],W,be)},fe.dxy=function(be,Ae){return M.dxydj([],G,be,$,Ae)},Q=0;Q0&&(ne=M.dxydj([],G,Q-1,$,0),ee.push(he[0]+ne[0]/3),ie.push(he[1]+ne[1]/3),j=M.dxydj([],G,Q-1,$,1),ee.push(J[0]-j[0]/3),ie.push(J[1]-j[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;return fe.axisLetter=e,fe.axis=E,fe.crossAxis=y,fe.value=U,fe.constvar=t,fe.index=h,fe.x=ee,fe.y=ie,fe.smoothing=y.smoothing,fe}function N(U){var W,Q,ue,se,he,G=[],$=[],J={};if(J.length=S.length,J.crossLength=u.length,e==="b")for(ue=Math.max(0,Math.min(B-2,U)),he=Math.min(1,Math.max(0,U-ue)),J.xy=function(Z){return M.evalxy([],Z,U)},J.dxy=function(Z,re){return M.dxydi([],Z,ue,re,he)},W=0;WS.length-1)&&m.push(x(N(o),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s;hS.length-1)&&!(T<0||T>S.length-1))for(l=S[a],_=S[T],r=0;rS[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&d.push(x(N(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(N(S.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(i=5e-15,n=[Math.floor((S[S.length-1]-E.tick0)/E.dtick*(1+i)),Math.ceil((S[0]-E.tick0)/E.dtick/(1+i))].sort(function(U,W){return U-W}),s=n[0],c=n[1],h=s;h<=c;h++)v=E.tick0+E.dtick*h,m.push(x(I(v),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s-1;hS[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&d.push(x(I(S[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(I(S[S.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}}}),AH=Ye({"src/traces/carpet/calc_labels.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e){var t,r,o,a,i,n=e._labels=[],s=e._gridlines;for(t=0;t=0;t--)r[s-t]=x[c][t],o[s-t]=A[c][t];for(a.push({x:r,y:o,bicubic:i}),t=c,r=[],o=[];t>=0;t--)r[c-t]=x[t][0],o[c-t]=A[t][0];return a.push({x:r,y:o,bicubic:n}),a}}}),MH=Ye({"src/traces/carpet/smooth_fill_2d_array.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e){var t,r,o,a=[],i=[],n=A[0].length,s=A.length;function c(Q,ue){var se=0,he,G=0;return Q>0&&(he=A[ue][Q-1])!==void 0&&(G++,se+=he),Q0&&(he=A[ue-1][Q])!==void 0&&(G++,se+=he),ue0&&r0&&tu);return g.log("Smoother converged to",y,"after",P,"iterations"),A}}}),EH=Ye({"src/traces/carpet/constants.js"(X,H){"use strict";H.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),kH=Ye({"src/traces/carpet/catmull_rom.js"(X,H){"use strict";var g=.5;H.exports=function(A,M,e,t){var r=A[0]-M[0],o=A[1]-M[1],a=e[0]-M[0],i=e[1]-M[1],n=Math.pow(r*r+o*o,g/2),s=Math.pow(a*a+i*i,g/2),c=(s*s*r-n*n*a)*t,h=(s*s*o-n*n*i)*t,v=s*(n+s)*3,p=n*(n+s)*3;return[[M[0]+(v&&c/v),M[1]+(v&&h/v)],[M[0]-(p&&c/p),M[1]-(p&&h/p)]]}}}),CH=Ye({"src/traces/carpet/compute_control_points.js"(X,H){"use strict";var g=kH(),x=ta().ensureArray;function A(M,e,t){var r=-.5*t[0]+1.5*e[0],o=-.5*t[1]+1.5*e[1];return[(2*r+M[0])/3,(2*o+M[1])/3]}H.exports=function(e,t,r,o,a,i){var n,s,c,h,v,p,T,l,_,w,S=r[0].length,E=r.length,m=a?3*S-2:S,b=i?3*E-2:E;for(e=x(e,b),t=x(t,b),c=0;cv&&mT&&bp||bl},o.setScale=function(){var m=o._x,b=o._y,d=A(o._xctrl,o._yctrl,m,b,c.smoothing,h.smoothing);o._xctrl=d[0],o._yctrl=d[1],o.evalxy=M([o._xctrl,o._yctrl],n,s,c.smoothing,h.smoothing),o.dxydi=e([o._xctrl,o._yctrl],c.smoothing,h.smoothing),o.dxydj=t([o._xctrl,o._yctrl],c.smoothing,h.smoothing)},o.i2a=function(m){var b=Math.max(0,Math.floor(m[0]),n-2),d=m[0]-b;return(1-d)*a[b]+d*a[b+1]},o.j2b=function(m){var b=Math.max(0,Math.floor(m[1]),n-2),d=m[1]-b;return(1-d)*i[b]+d*i[b+1]},o.ij2ab=function(m){return[o.i2a(m[0]),o.j2b(m[1])]},o.a2i=function(m){var b=Math.max(0,Math.min(x(m,a),n-2)),d=a[b],u=a[b+1];return Math.max(0,Math.min(n-1,b+(m-d)/(u-d)))},o.b2j=function(m){var b=Math.max(0,Math.min(x(m,i),s-2)),d=i[b],u=i[b+1];return Math.max(0,Math.min(s-1,b+(m-d)/(u-d)))},o.ab2ij=function(m){return[o.a2i(m[0]),o.b2j(m[1])]},o.i2c=function(m,b){return o.evalxy([],m,b)},o.ab2xy=function(m,b,d){if(!d&&(ma[n-1]|bi[s-1]))return[!1,!1];var u=o.a2i(m),y=o.b2j(b),f=o.evalxy([],u,y);if(d){var P=0,L=0,z=[],F,B,O,I;ma[n-1]?(F=n-2,B=1,P=(m-a[n-1])/(a[n-1]-a[n-2])):(F=Math.max(0,Math.min(n-2,Math.floor(u))),B=u-F),bi[s-1]?(O=s-2,I=1,L=(b-i[s-1])/(i[s-1]-i[s-2])):(O=Math.max(0,Math.min(s-2,Math.floor(y))),I=y-O),P&&(o.dxydi(z,F,O,B,I),f[0]+=z[0]*P,f[1]+=z[1]*P),L&&(o.dxydj(z,F,O,B,I),f[0]+=z[0]*L,f[1]+=z[1]*L)}return f},o.c2p=function(m,b,d){return[b.c2p(m[0]),d.c2p(m[1])]},o.p2x=function(m,b,d){return[b.p2c(m[0]),d.p2c(m[1])]},o.dadi=function(m){var b=Math.max(0,Math.min(a.length-2,m));return a[b+1]-a[b]},o.dbdj=function(m){var b=Math.max(0,Math.min(i.length-2,m));return i[b+1]-i[b]},o.dxyda=function(m,b,d,u){var y=o.dxydi(null,m,b,d,u),f=o.dadi(m,d);return[y[0]/f,y[1]/f]},o.dxydb=function(m,b,d,u){var y=o.dxydj(null,m,b,d,u),f=o.dbdj(b,u);return[y[0]/f,y[1]/f]},o.dxyda_rough=function(m,b,d){var u=_*(d||.1),y=o.ab2xy(m+u,b,!0),f=o.ab2xy(m-u,b,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dxydb_rough=function(m,b,d){var u=w*(d||.1),y=o.ab2xy(m,b+u,!0),f=o.ab2xy(m,b-u,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dpdx=function(m){return m._m},o.dpdy=function(m){return m._m}}}}),DH=Ye({"src/traces/carpet/calc.js"(X,H){"use strict";var g=Co(),x=ta().isArray1D,A=bH(),M=wH(),e=TH(),t=AH(),r=SH(),o=X2(),a=MH(),i=Z2(),n=RH();H.exports=function(c,h){var v=g.getFromId(c,h.xaxis),p=g.getFromId(c,h.yaxis),T=h.aaxis,l=h.baxis,_=h.x,w=h.y,S=[];_&&x(_)&&S.push("x"),w&&x(w)&&S.push("y"),S.length&&i(h,T,l,"a","b",S);var E=h._a=h._a||h.a,m=h._b=h._b||h.b;_=h._x||h.x,w=h._y||h.y;var b={};if(h._cheater){var d=T.cheatertype==="index"?E.length:E,u=l.cheatertype==="index"?m.length:m;_=A(d,u,h.cheaterslope)}h._x=_=o(_),h._y=w=o(w),a(_,E,m),a(w,E,m),n(h),h.setScale();var y=M(_),f=M(w),P=.5*(y[1]-y[0]),L=.5*(y[1]+y[0]),z=.5*(f[1]-f[0]),F=.5*(f[1]+f[0]),B=1.3;return y=[L-P*B,L+P*B],f=[F-z*B,F+z*B],h._extremes[v._id]=g.findExtremes(v,y,{padded:!0}),h._extremes[p._id]=g.findExtremes(p,f,{padded:!0}),e(h,"a","b"),e(h,"b","a"),t(h,T),t(h,l),b.clipsegments=r(h._xctrl,h._yctrl,T,l),b.x=_,b.y=w,b.a=E,b.b=m,[b]}}}),zH=Ye({"src/traces/carpet/index.js"(X,H){"use strict";H.exports={attributes:LT(),supplyDefaults:yH(),plot:xH(),calc:DH(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),FH=Ye({"lib/carpet.js"(X,H){"use strict";H.exports=zH()}}),Gk=Ye({"src/traces/scattercarpet/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Pl(),M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=tu(),r=Oo().extendFlat,o=x.marker,a=x.line,i=o.line;H.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:r({},x.mode,{dflt:"markers"}),text:r({},x.text,{}),texttemplate:e({editType:"plot"},{keys:["a","b","text"]}),hovertext:r({},x.hovertext,{}),line:{color:a.color,width:a.width,dash:a.dash,backoff:a.backoff,shape:r({},a.shape,{values:["linear","spline"]}),smoothing:a.smoothing,editType:"calc"},connectgaps:x.connectgaps,fill:r({},x.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:g(),marker:r({symbol:o.symbol,opacity:o.opacity,maxdisplayed:o.maxdisplayed,angle:o.angle,angleref:o.angleref,standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,line:r({width:i.width,editType:"calc"},t("marker.line")),gradient:o.gradient,editType:"calc"},t("marker")),textfont:x.textfont,textposition:x.textposition,selected:x.selected,unselected:x.unselected,hoverinfo:r({},A.hoverinfo,{flags:["a","b","text","name"]}),hoveron:x.hoveron,hovertemplate:M(),zorder:x.zorder}}}),OH=Ye({"src/traces/scattercarpet/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=Gk();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}v("carpet"),s.xaxis="x",s.yaxis="y";var p=v("a"),T=v("b"),l=Math.min(p.length,T.length);if(!l){s.visible=!1;return}s._length=l,v("text"),v("texttemplate"),v("hovertext");var _=l0?b=E.labelprefix.replace(/ = $/,""):b=E._hovertitle,l.push(b+": "+m.toFixed(3)+E.labelsuffix)}if(!v.hovertemplate){var w=h.hi||v.hoverinfo,S=w.split("+");S.indexOf("all")!==-1&&(S=["a","b","text"]),S.indexOf("a")!==-1&&_(p.aaxis,h.a),S.indexOf("b")!==-1&&_(p.baxis,h.b),l.push("y: "+a.yLabel),S.indexOf("text")!==-1&&x(h,v,l),a.extraText=l.join("
")}return o}}}),VH=Ye({"src/traces/scattercarpet/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=e[t];return x.a=r.a,x.b=r.b,x.y=r.y,x}}}),qH=Ye({"src/traces/scattercarpet/index.js"(X,H){"use strict";H.exports={attributes:Gk(),supplyDefaults:OH(),colorbar:cp(),formatLabels:BH(),calc:NH(),plot:UH(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:jH(),selectPoints:u1(),eventData:VH(),moduleType:"trace",name:"scattercarpet",basePlotModule:Pf(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),HH=Ye({"lib/scattercarpet.js"(X,H){"use strict";H.exports=qH()}}),Wk=Ye({"src/traces/contourcarpet/attributes.js"(X,H){"use strict";var g=h1(),x=U_(),A=tu(),M=Oo().extendFlat,e=x.contours;H.exports=M({carpet:{valType:"string",editType:"calc"},z:g.z,a:g.x,a0:g.x0,da:g.dx,b:g.y,b0:g.y0,db:g.dy,text:g.text,hovertext:g.hovertext,transpose:g.transpose,atype:g.xtype,btype:g.ytype,fillcolor:x.fillcolor,autocontour:x.autocontour,ncontours:x.ncontours,contours:{type:e.type,start:e.start,end:e.end,size:e.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:e.showlines,showlabels:e.showlabels,labelfont:e.labelfont,labelformat:e.labelformat,operation:e.operation,value:e.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:x.line.color,width:x.line.width,dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},zorder:x.zorder},A("",{cLetter:"z",autoColorDflt:!1}))}}),Zk=Ye({"src/traces/contourcarpet/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Wk(),M=bM(),e=o3(),t=s3();H.exports=function(o,a,i,n){function s(p,T){return g.coerce(o,a,A,p,T)}function c(p){return g.coerce2(o,a,A,p)}if(s("carpet"),o.a&&o.b){var h=x(o,a,s,n,"a","b");if(!h){a.visible=!1;return}s("text");var v=s("contours.type")==="constraint";v?M(o,a,s,n,i,{hasHover:!1}):(e(o,a,s,c),t(o,a,s,n,{hasHover:!1}))}else a._defaultColor=i,a._length=null;s("zorder")}}}),GH=Ye({"src/traces/contourcarpet/calc.js"(X,H){"use strict";var g=jp(),x=ta(),A=Z2(),M=X2(),e=Y2(),t=K2(),r=nM(),o=Zk(),a=PT(),i=hM();H.exports=function(c,h){var v=h._carpetTrace=a(c,h);if(!(!v||!v.visible||v.visible==="legendonly")){if(!h.a||!h.b){var p=c.data[v.index],T=c.data[h.index];T.a||(T.a=p.a),T.b||(T.b=p.b),o(T,h,h._defaultColor,c._fullLayout)}var l=n(c,h);return i(h,h._z),l}};function n(s,c){var h=c._carpetTrace,v=h.aaxis,p=h.baxis,T,l,_,w,S,E,m;v._minDtick=0,p._minDtick=0,x.isArray1D(c.z)&&A(c,v,p,"a","b",["z"]),T=c._a=c._a||c.a,w=c._b=c._b||c.b,T=T?v.makeCalcdata(c,"_a"):[],w=w?p.makeCalcdata(c,"_b"):[],l=c.a0||0,_=c.da||1,S=c.b0||0,E=c.db||1,m=c._z=M(c._z||c.z,c.transpose),c._emptypoints=t(m),e(m,c._emptypoints);var b=x.maxRowLength(m),d=c.xtype==="scaled"?"":T,u=r(c,d,l,_,b,v),y=c.ytype==="scaled"?"":w,f=r(c,y,S,E,m.length,p),P={a:u,b:f,z:m};return c.contours.type==="levels"&&c.contours.coloring!=="none"&&g(s,c,{vals:m,containerStr:"",cLetter:"z"}),[P]}}}),WH=Ye({"src/traces/carpet/axis_aligned_line.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M,e){var t,r,o,a,i,n,s,c,h,v,p,T,l,_=g(M)?"a":"b",w=_==="a"?x.aaxis:x.baxis,S=w.smoothing,E=_==="a"?x.a2i:x.b2j,m=_==="a"?M:e,b=_==="a"?e:M,d=_==="a"?A.a.length:A.b.length,u=_==="a"?A.b.length:A.a.length,y=Math.floor(_==="a"?x.b2j(b):x.a2i(b)),f=_==="a"?function(ue){return x.evalxy([],ue,y)}:function(ue){return x.evalxy([],y,ue)};S&&(o=Math.max(0,Math.min(u-2,y)),a=y-o,r=_==="a"?function(ue,se){return x.dxydi([],ue,o,se,a)}:function(ue,se){return x.dxydj([],o,ue,a,se)});var P=E(m[0]),L=E(m[1]),z=P0?Math.floor:Math.ceil,O=z>0?Math.ceil:Math.floor,I=z>0?Math.min:Math.max,N=z>0?Math.max:Math.min,U=B(P+F),W=O(L-F);s=f(P);var Q=[[s]];for(t=U;t*z=0;fe--)j=N.clipsegments[fe],ee=x([],j.x,P.c2p),ie=x([],j.y,L.c2p),ee.reverse(),ie.reverse(),be.push(A(ee,ie,j.bicubic));var Ae="M"+be.join("L")+"Z";S(F,N.clipsegments,P,L,se,G),E(O,F,P,L,ne,J,$,I,N,G,Ae),p(F,ue,d,B,Q,u,I),M.setClipUrl(F,I._clipPathId,d)})};function v(b,d){var u,y,f,P,L,z,F,B,O;for(u=0;uue&&(y.max=ue),y.len=y.max-y.min}function l(b,d,u){var y=b.getPointAtLength(d),f=b.getPointAtLength(u),P=f.x-y.x,L=f.y-y.y,z=Math.sqrt(P*P+L*L);return[P/z,L/z]}function _(b){var d=Math.sqrt(b[0]*b[0]+b[1]*b[1]);return[b[0]/d,b[1]/d]}function w(b,d){var u=Math.abs(b[0]*d[0]+b[1]*d[1]),y=Math.sqrt(1-u*u);return y/u}function S(b,d,u,y,f,P){var L,z,F,B,O=e.ensureSingle(b,"g","contourbg"),I=O.selectAll("path").data(P==="fill"&&!f?[0]:[]);I.enter().append("path"),I.exit().remove();var N=[];for(B=0;B=0&&(U=ee,Q=ue):Math.abs(N[1]-U[1])=0&&(U=ee,Q=ue):e.log("endpt to newendpt is not vert. or horz.",N,U,ee)}if(Q>=0)break;B+=ne(N,U),N=U}if(Q===d.edgepaths.length){e.log("unclosed perimeter path");break}F=Q,I=O.indexOf(F)===-1,I&&(F=O[0],B+=ne(N,U)+"Z",N=null)}for(F=0;Fm):E=z>f,m=z;var F=v(f,P,L,z);F.pos=y,F.yc=(f+z)/2,F.i=u,F.dir=E?"increasing":"decreasing",F.x=F.pos,F.y=[L,P],b&&(F.orig_p=s[u]),w&&(F.tx=n.text[u]),S&&(F.htx=n.hovertext[u]),d.push(F)}else d.push({pos:y,empty:!0})}return n._extremes[h._id]=A.findExtremes(h,g.concat(l,T),{padded:!0}),d.length&&(d[0].t={labels:{open:x(i,"open:")+" ",high:x(i,"high:")+" ",low:x(i,"low:")+" ",close:x(i,"close:")+" "}}),d}function a(i,n,s){var c=s._minDiff;if(!c){var h=i._fullData,v=[];c=1/0;var p;for(p=0;p"+_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat)):(O=x.extendFlat({},S),O.y0=O.y1=B,O.yLabelVal=F,O.yLabel=_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat),O.name="",w.push(O),P[F]=O)}return w}function n(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=a(s,c,h,v);if(!w)return[];var S=w.index,E=p[S],m=w.index=E.i,b=E.dir;function d(F){return _.labels[F]+g.hoverLabelText(T,l[F][m],l.yhoverformat)}var u=E.hi||l.hoverinfo,y=u.split("+"),f=u==="all",P=f||y.indexOf("y")!==-1,L=f||y.indexOf("text")!==-1,z=P?[d("open"),d("high"),d("low"),d("close")+" "+r[b]]:[];return L&&e(E,l,z),w.extraText=z.join("
"),w.y0=w.y1=T.c2p(E.yc,!0),[w]}H.exports={hoverPoints:o,hoverSplit:i,hoverOnPoints:n}}}),Jk=Ye({"src/traces/ohlc/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a=M[0].t.bPos||0;if(A===!1)for(o=0;oc?function(l){return l<=0}:function(l){return l>=0};a.c2g=function(l){var _=a.c2l(l)-s;return(T(_)?_:0)+p},a.g2c=function(l){return a.l2c(l+s-p)},a.g2p=function(l){return l*v},a.c2p=function(l){return a.g2p(a.c2g(l))}}}function t(a,i){return i==="degrees"?A(a):a}function r(a,i){return i==="degrees"?M(a):a}function o(a,i){var n=a.type;if(n==="linear"){var s=a.d2c,c=a.c2d;a.d2c=function(h,v){return t(s(h),v)},a.c2d=function(h,v){return c(r(h,v))}}a.makeCalcdata=function(h,v){var p=h[v],T=h._length,l,_,w=function(d){return a.d2c(d,h.thetaunit)};if(p)for(l=new Array(T),_=0;_0?d:1/0},E=A(w,S),m=g.mod(E+1,w.length);return[w[E],w[m]]}function v(_){return Math.abs(_)>1e-10?_:0}function p(_,w,S){w=w||0,S=S||0;for(var E=_.length,m=new Array(E),b=0;b0?1:0}function x(r){var o=r[0],a=r[1];if(!isFinite(o)||!isFinite(a))return[1,0];var i=(o+1)*(o+1)+a*a;return[(o*o+a*a-1)/i,2*a/i]}function A(r,o){var a=o[0],i=o[1];return[a*r.radius+r.cx,-i*r.radius+r.cy]}function M(r,o){return o*r.radius}function e(r,o,a,i){var n=A(r,x([a,o])),s=n[0],c=n[1],h=A(r,x([i,o])),v=h[0],p=h[1];if(o===0)return["M"+s+","+c,"L"+v+","+p].join(" ");var T=M(r,1/Math.abs(o));return["M"+s+","+c,"A"+T+","+T+" 0 0,"+(o<0?1:0)+" "+v+","+p].join(" ")}function t(r,o,a,i){var n=M(r,1/(o+1)),s=A(r,x([o,a])),c=s[0],h=s[1],v=A(r,x([o,i])),p=v[0],T=v[1];if(g(a)!==g(i)){var l=A(r,x([o,0])),_=l[0],w=l[1];return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(0at?(it=ie,et=ie*at,ge=(fe-et)/Z.h/2,lt=[j[0],j[1]],Me=[ee[0]+ge,ee[1]-ge]):(it=fe/at,et=fe,ge=(ie-it)/Z.w/2,lt=[j[0]+ge,j[1]-ge],Me=[ee[0],ee[1]]),$.xLength2=it,$.yLength2=et,$.xDomain2=lt,$.yDomain2=Me;var ce=$.xOffset2=Z.l+Z.w*lt[0],ze=$.yOffset2=Z.t+Z.h*(1-Me[1]),tt=$.radius=it/Be,nt=$.innerRadius=$.getHole(G)*tt,Qe=$.cx=ce-tt*Ae[0],Ct=$.cy=ze+tt*Ae[3],St=$.cxx=Qe-ce,Ot=$.cyy=Ct-ze,jt=re.side,ur;jt==="counterclockwise"?(ur=jt,jt="top"):jt==="clockwise"&&(ur=jt,jt="bottom"),$.radialAxis=$.mockAxis(he,G,re,{_id:"x",side:jt,_trueSide:ur,domain:[nt/Z.w,tt/Z.w]}),$.angularAxis=$.mockAxis(he,G,ne,{side:"right",domain:[0,Math.PI],autorange:!1}),$.doAutoRange(he,G),$.updateAngularAxis(he,G),$.updateRadialAxis(he,G),$.updateRadialAxisTitle(he,G),$.xaxis=$.mockCartesianAxis(he,G,{_id:"x",domain:lt}),$.yaxis=$.mockCartesianAxis(he,G,{_id:"y",domain:Me});var ar=$.pathSubplot();$.clipPaths.forTraces.select("path").attr("d",ar).attr("transform",t(St,Ot)),J.frontplot.attr("transform",t(ce,ze)).call(o.setClipUrl,$._hasClipOnAxisFalse?null:$.clipIds.forTraces,$.gd),J.bg.attr("d",ar).attr("transform",t(Qe,Ct)).call(r.fill,G.bgcolor)},U.mockAxis=function(he,G,$,J){var Z=M.extendFlat({},$,J);return s(Z,G,he),Z},U.mockCartesianAxis=function(he,G,$){var J=this,Z=J.isSmith,re=$._id,ne=M.extendFlat({type:"linear"},$);n(ne,he);var j={x:[0,2],y:[1,3]};return ne.setRange=function(){var ee=J.sectorBBox,ie=j[re],fe=J.radialAxis._rl,be=(fe[1]-fe[0])/(1-J.getHole(G));ne.range=[ee[ie[0]]*be,ee[ie[1]]*be]},ne.isPtWithinRange=re==="x"&&!Z?function(ee){return J.isPtInside(ee)}:function(){return!0},ne.setRange(),ne.setScale(),ne},U.doAutoRange=function(he,G){var $=this,J=$.gd,Z=$.radialAxis,re=$.getRadial(G);c(J,Z);var ne=Z.range;if(re.range=ne.slice(),re._input.range=ne.slice(),Z._rl=[Z.r2l(ne[0],null,"gregorian"),Z.r2l(ne[1],null,"gregorian")],Z.minallowed!==void 0){var j=Z.r2l(Z.minallowed);Z._rl[0]>Z._rl[1]?Z._rl[1]=Math.max(Z._rl[1],j):Z._rl[0]=Math.max(Z._rl[0],j)}if(Z.maxallowed!==void 0){var ee=Z.r2l(Z.maxallowed);Z._rl[0]90&&fe<=270&&(be.tickangle=180);var Ie=Be?function(tt){var nt=z($,f([tt.x,0]));return t(nt[0]-j,nt[1]-ee)}:function(tt){return t(be.l2p(tt.x)+ne,0)},Ze=Be?function(tt){return L($,tt.x,-1/0,1/0)}:function(tt){return $.pathArc(be.r2p(tt.x)+ne)},at=W(ie);if($.radialTickLayout!==at&&(Z["radial-axis"].selectAll(".xtick").remove(),$.radialTickLayout=at),Ae){be.setScale();var it=0,et=Be?(be.tickvals||[]).filter(function(tt){return tt>=0}).map(function(tt){return i.tickText(be,tt,!0,!1)}):i.calcTicks(be),lt=Be?et:i.clipEnds(be,et),Me=i.getTickSigns(be)[2];Be&&((be.ticks==="top"&&be.side==="bottom"||be.ticks==="bottom"&&be.side==="top")&&(Me=-Me),be.ticks==="top"&&be.side==="top"&&(it=-be.ticklen),be.ticks==="bottom"&&be.side==="bottom"&&(it=be.ticklen)),i.drawTicks(J,be,{vals:et,layer:Z["radial-axis"],path:i.makeTickPath(be,0,Me),transFn:Ie,crisp:!1}),i.drawGrid(J,be,{vals:lt,layer:Z["radial-grid"],path:Ze,transFn:M.noop,crisp:!1}),i.drawLabels(J,be,{vals:et,layer:Z["radial-axis"],transFn:Ie,labelFns:i.makeLabelFns(be,it)})}var ge=$.radialAxisAngle=$.vangles?I(ue(O(ie.angle),$.vangles)):ie.angle,ce=t(j,ee),ze=ce+e(-ge);se(Z["radial-axis"],Ae&&(ie.showticklabels||ie.ticks),{transform:ze}),se(Z["radial-grid"],Ae&&ie.showgrid,{transform:Be?"":ce}),se(Z["radial-line"].select("line"),Ae&&ie.showline,{x1:Be?-re:ne,y1:0,x2:re,y2:0,transform:ze}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateRadialAxisTitle=function(he,G,$){if(!this.isSmith){var J=this,Z=J.gd,re=J.radius,ne=J.cx,j=J.cy,ee=J.getRadial(G),ie=J.id+"title",fe=0;if(ee.title){var be=o.bBox(J.layers["radial-axis"].node()).height,Ae=ee.title.font.size,Be=ee.side;fe=Be==="top"?Ae:Be==="counterclockwise"?-(be+Ae*.4):be+Ae*.8}var Ie=$!==void 0?$:J.radialAxisAngle,Ze=O(Ie),at=Math.cos(Ze),it=Math.sin(Ze),et=ne+re/2*at+fe*it,lt=j-re/2*it+fe*at;J.layers["radial-axis-title"]=T.draw(Z,ie,{propContainer:ee,propName:J.id+".radialaxis.title",placeholder:F(Z,"Click to enter radial axis title"),attributes:{x:et,y:lt,"text-anchor":"middle"},transform:{rotate:-Ie}})}},U.updateAngularAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getAngular(G),fe=$.angularAxis,be=$.isSmith;be||($.fillViewInitialKey("angularaxis.rotation",ie.rotation),fe.setGeometry(),fe.setScale());var Ae=be?function(nt){var Qe=z($,f([0,nt.x]));return Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2}:function(nt){return fe.t2g(nt.x)};fe.type==="linear"&&fe.thetaunit==="radians"&&(fe.tick0=I(fe.tick0),fe.dtick=I(fe.dtick));var Be=function(nt){return t(j+re*Math.cos(nt),ee-re*Math.sin(nt))},Ie=be?function(nt){var Qe=z($,f([0,nt.x]));return t(Qe[0],Qe[1])}:function(nt){return Be(Ae(nt))},Ze=be?function(nt){var Qe=z($,f([0,nt.x])),Ct=Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2;return t(Qe[0],Qe[1])+e(-I(Ct))}:function(nt){var Qe=Ae(nt);return Be(Qe)+e(-I(Qe))},at=be?function(nt){return P($,nt.x,0,1/0)}:function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe),St=Math.sin(Qe);return"M"+[j+ne*Ct,ee-ne*St]+"L"+[j+re*Ct,ee-re*St]},it=i.makeLabelFns(fe,0),et=it.labelStandoff,lt={};lt.xFn=function(nt){var Qe=Ae(nt);return Math.cos(Qe)*et},lt.yFn=function(nt){var Qe=Ae(nt),Ct=Math.sin(Qe)>0?.2:1;return-Math.sin(Qe)*(et+nt.fontSize*Ct)+Math.abs(Math.cos(Qe))*(nt.fontSize*b)},lt.anchorFn=function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe);return Math.abs(Ct)<.1?"middle":Ct>0?"start":"end"},lt.heightFn=function(nt,Qe,Ct){var St=Ae(nt);return-.5*(1+Math.sin(St))*Ct};var Me=W(ie);$.angularTickLayout!==Me&&(Z["angular-axis"].selectAll("."+fe._id+"tick").remove(),$.angularTickLayout=Me);var ge=be?[1/0].concat(fe.tickvals||[]).map(function(nt){return i.tickText(fe,nt,!0,!1)}):i.calcTicks(fe);be&&(ge[0].text="\u221E",ge[0].fontSize*=1.75);var ce;if(G.gridshape==="linear"?(ce=ge.map(Ae),M.angleDelta(ce[0],ce[1])<0&&(ce=ce.slice().reverse())):ce=null,$.vangles=ce,fe.type==="category"&&(ge=ge.filter(function(nt){return M.isAngleInsideSector(Ae(nt),$.sectorInRad)})),fe.visible){var ze=fe.ticks==="inside"?-1:1,tt=(fe.linewidth||1)/2;i.drawTicks(J,fe,{vals:ge,layer:Z["angular-axis"],path:"M"+ze*tt+",0h"+ze*fe.ticklen,transFn:Ze,crisp:!1}),i.drawGrid(J,fe,{vals:ge,layer:Z["angular-grid"],path:at,transFn:M.noop,crisp:!1}),i.drawLabels(J,fe,{vals:ge,layer:Z["angular-axis"],repositionOnUpdate:!0,transFn:Ie,labelFns:lt})}se(Z["angular-line"].select("path"),ie.showline,{d:$.pathSubplot(),transform:t(j,ee)}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateFx=function(he,G){if(!this.gd._context.staticPlot){var $=!this.isSmith;$&&(this.updateAngularDrag(he),this.updateRadialDrag(he,G,0),this.updateRadialDrag(he,G,1)),this.updateHoverAndMainDrag(he)}},U.updateHoverAndMainDrag=function(he){var G=this,$=G.isSmith,J=G.gd,Z=G.layers,re=he._zoomlayer,ne=d.MINZOOM,j=d.OFFEDGE,ee=G.radius,ie=G.innerRadius,fe=G.cx,be=G.cy,Ae=G.cxx,Be=G.cyy,Ie=G.sectorInRad,Ze=G.vangles,at=G.radialAxis,it=u.clampTiny,et=u.findXYatLength,lt=u.findEnclosingVertexAngles,Me=d.cornerHalfWidth,ge=d.cornerLen/2,ce,ze,tt=h.makeDragger(Z,"path","maindrag",he.dragmode===!1?"none":"crosshair");g.select(tt).attr("d",G.pathSubplot()).attr("transform",t(fe,be)),tt.onmousemove=function(Gt){p.hover(J,Gt,G.id),J._fullLayout._lasthover=tt,J._fullLayout._hoversubplot=G.id},tt.onmouseout=function(Gt){J._dragging||v.unhover(J,Gt)};var nt={element:tt,gd:J,subplot:G.id,plotinfo:{id:G.id,xaxis:G.xaxis,yaxis:G.yaxis},xaxes:[G.xaxis],yaxes:[G.yaxis]},Qe,Ct,St,Ot,jt,ur,ar,Cr,vr;function _r(Gt,Kt){return Math.sqrt(Gt*Gt+Kt*Kt)}function yt(Gt,Kt){return _r(Gt-Ae,Kt-Be)}function Fe(Gt,Kt){return Math.atan2(Be-Kt,Gt-Ae)}function Ke(Gt,Kt){return[Gt*Math.cos(Kt),Gt*Math.sin(-Kt)]}function Ne(Gt,Kt){if(Gt===0)return G.pathSector(2*Me);var sr=ge/Gt,sa=Kt-sr,Aa=Kt+sr,La=Math.max(0,Math.min(Gt,ee)),ka=La-Me,Ga=La+Me;return"M"+Ke(ka,sa)+"A"+[ka,ka]+" 0,0,0 "+Ke(ka,Aa)+"L"+Ke(Ga,Aa)+"A"+[Ga,Ga]+" 0,0,1 "+Ke(Ga,sa)+"Z"}function Ee(Gt,Kt,sr){if(Gt===0)return G.pathSector(2*Me);var sa=Ke(Gt,Kt),Aa=Ke(Gt,sr),La=it((sa[0]+Aa[0])/2),ka=it((sa[1]+Aa[1])/2),Ga,Ma;if(La&&ka){var Ua=ka/La,ni=-1/Ua,Wt=et(Me,Ua,La,ka);Ga=et(ge,ni,Wt[0][0],Wt[0][1]),Ma=et(ge,ni,Wt[1][0],Wt[1][1])}else{var zt,Vt;ka?(zt=ge,Vt=Me):(zt=Me,Vt=ge),Ga=[[La-zt,ka-Vt],[La+zt,ka-Vt]],Ma=[[La-zt,ka+Vt],[La+zt,ka+Vt]]}return"M"+Ga.join("L")+"L"+Ma.reverse().join("L")+"Z"}function Ve(){St=null,Ot=null,jt=G.pathSubplot(),ur=!1;var Gt=J._fullLayout[G.id];ar=x(Gt.bgcolor).getLuminance(),Cr=h.makeZoombox(re,ar,fe,be,jt),Cr.attr("fill-rule","evenodd"),vr=h.makeCorners(re,fe,be),w(J)}function ke(Gt,Kt){return Kt=Math.max(Math.min(Kt,ee),ie),Gtne?(Gt-1&&Gt===1&&_(Kt,J,[G.xaxis],[G.yaxis],G.id,nt),sr.indexOf("event")>-1&&p.click(J,Kt,G.id)}nt.prepFn=function(Gt,Kt,sr){var sa=J._fullLayout.dragmode,Aa=tt.getBoundingClientRect();J._fullLayout._calcInverseTransform(J);var La=J._fullLayout._invTransform;ce=J._fullLayout._invScaleX,ze=J._fullLayout._invScaleY;var ka=M.apply3DTransform(La)(Kt-Aa.left,sr-Aa.top);if(Qe=ka[0],Ct=ka[1],Ze){var Ga=u.findPolygonOffset(ee,Ie[0],Ie[1],Ze);Qe+=Ae+Ga[0],Ct+=Be+Ga[1]}switch(sa){case"zoom":nt.clickFn=Bt,$||(Ze?nt.moveFn=dt:nt.moveFn=Le,nt.doneFn=xt,Ve(Gt,Kt,sr));break;case"select":case"lasso":l(Gt,Kt,sr,nt,sa);break}},v.init(nt)},U.updateRadialDrag=function(he,G,$){var J=this,Z=J.gd,re=J.layers,ne=J.radius,j=J.innerRadius,ee=J.cx,ie=J.cy,fe=J.radialAxis,be=d.radialDragBoxSize,Ae=be/2;if(!fe.visible)return;var Be=O(J.radialAxisAngle),Ie=fe._rl,Ze=Ie[0],at=Ie[1],it=Ie[$],et=.75*(Ie[1]-Ie[0])/(1-J.getHole(G))/ne,lt,Me,ge;$?(lt=ee+(ne+Ae)*Math.cos(Be),Me=ie-(ne+Ae)*Math.sin(Be),ge="radialdrag"):(lt=ee+(j-Ae)*Math.cos(Be),Me=ie-(j-Ae)*Math.sin(Be),ge="radialdrag-inner");var ce=h.makeRectDragger(re,ge,"crosshair",-Ae,-Ae,be,be),ze={element:ce,gd:Z};he.dragmode===!1&&(ze.dragmode=!1),se(g.select(ce),fe.visible&&j0!=($?Qe>Ze:Qe=90||Z>90&&re>=450?Be=1:j<=0&&ie<=0?Be=0:Be=Math.max(j,ie),Z<=180&&re>=180||Z>180&&re>=540?fe=-1:ne>=0&&ee>=0?fe=0:fe=Math.min(ne,ee),Z<=270&&re>=270||Z>270&&re>=630?be=-1:j>=0&&ie>=0?be=0:be=Math.min(j,ie),re>=360?Ae=1:ne<=0&&ee<=0?Ae=0:Ae=Math.max(ne,ee),[fe,be,Ae,Be]}function ue(he,G){var $=function(Z){return M.angleDist(he,Z)},J=M.findIndexOfMin(G,$);return G[J]}function se(he,G,$){return G?(he.attr("display",null),he.attr($)):he&&he.attr("display","none"),he}}}),rC=Ye({"src/plots/polar/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,ticklabelstep:x.ticklabelstep,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickfont:x.tickfont,tickangle:x.tickangle,tickformat:x.tickformat,tickformatstops:x.tickformatstops,layer:x.layer},"plot","from-root"),o={visible:M({},x.visible,{dflt:!0}),type:M({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},autorange:M({},x.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:M({},x.minallowed,{editType:"plot"}),maxallowed:M({},x.maxallowed,{editType:"plot"}),range:M({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:x.categoryorder,categoryarray:x.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:x.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:M({},x.title.text,{editType:"plot",dflt:""}),font:M({},x.title.font,{editType:"plot"}),editType:"plot"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(o,t,r);var a={visible:M({},x.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:x.autotypenumbers,categoryorder:x.categoryorder,categoryarray:x.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(a,t,r),H.exports={domain:A({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:g.background},radialaxis:o,angularaxis:a,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),nG=Ye({"src/plots/polar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Zg(),r=e1(),o=$m(),a=Qm(),i=P2(),n=I_(),s=cS(),c=r1(),h=rC(),v=Qk(),p=RT(),T=p.axisNames;function l(w,S,E,m){var b=E("bgcolor");m.bgColor=x.combine(b,m.paper_bgcolor);var d=E("sector");E("hole");var u=e(m.fullData,p.name,m.id),y=m.layoutOut,f;function P(be,Ae){return E(f+"."+be,Ae)}for(var L=0;L")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),lG=Ye({"src/traces/scatterpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:zT(),categories:["polar","symbols","showLegend","scatter-like"],attributes:Ex(),supplyDefaults:FT().supplyDefaults,colorbar:cp(),formatLabels:OT(),calc:oG(),plot:sG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:BT().hoverPoints,selectPoints:u1(),meta:{}}}}),uG=Ye({"lib/scatterpolar.js"(X,H){"use strict";H.exports=lG()}}),aC=Ye({"src/traces/scatterpolargl/attributes.js"(X,H){"use strict";var g=Ex(),x=yx(),A=xs().texttemplateAttrs;H.exports={mode:g.mode,r:g.r,theta:g.theta,r0:g.r0,dr:g.dr,theta0:g.theta0,dtheta:g.dtheta,thetaunit:g.thetaunit,text:g.text,texttemplate:A({editType:"plot"},{keys:["r","theta","text"]}),hovertext:g.hovertext,hovertemplate:g.hovertemplate,line:{color:x.line.color,width:x.line.width,dash:x.line.dash,editType:"calc"},connectgaps:x.connectgaps,marker:x.marker,fill:x.fill,fillcolor:x.fillcolor,textposition:x.textposition,textfont:x.textfont,hoverinfo:g.hoverinfo,selected:g.selected,unselected:g.unselected}}}),cG=Ye({"src/traces/scatterpolargl/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=FT().handleRThetaDefaults,M=md(),e=Dd(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=aC();H.exports=function(n,s,c,h){function v(T,l){return g.coerce(n,s,a,T,l)}var p=A(n,s,h,v);if(!p){s.visible=!1;return}v("thetaunit"),v("mode",p=r&&(m.marker.cluster=_.tree),m.marker&&(m.markerSel.positions=m.markerUnsel.positions=m.marker.positions=y),m.line&&y.length>1&&t.extendFlat(m.line,e.linePositions(i,l,y)),m.text&&(t.extendFlat(m.text,{positions:y},e.textPosition(i,l,m.text,m.marker)),t.extendFlat(m.textSel,{positions:y},e.textPosition(i,l,m.text,m.markerSel)),t.extendFlat(m.textUnsel,{positions:y},e.textPosition(i,l,m.text,m.markerUnsel))),m.fill&&!v.fill2d&&(v.fill2d=!0),m.marker&&!v.scatter2d&&(v.scatter2d=!0),m.line&&!v.line2d&&(v.line2d=!0),m.text&&!v.glText&&(v.glText=!0),v.lineOptions.push(m.line),v.fillOptions.push(m.fill),v.markerOptions.push(m.marker),v.markerSelectedOptions.push(m.markerSel),v.markerUnselectedOptions.push(m.markerUnsel),v.textOptions.push(m.text),v.textSelectedOptions.push(m.textSel),v.textUnselectedOptions.push(m.textUnsel),v.selectBatch.push([]),v.unselectBatch.push([]),_.x=f,_.y=P,_.rawx=f,_.rawy=P,_.r=S,_.theta=E,_.positions=y,_._scene=v,_.index=v.count,v.count++}}),A(i,n,s)}},H.exports.reglPrecompiled=o}}),mG=Ye({"src/traces/scatterpolargl/index.js"(X,H){"use strict";var g=dG();g.plot=vG(),H.exports=g}}),gG=Ye({"lib/scatterpolargl.js"(X,H){"use strict";H.exports=mG()}}),iC=Ye({"src/traces/barpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=Oo().extendFlat,A=Ex(),M=Sv();H.exports={r:A.r,theta:A.theta,r0:A.r0,dr:A.dr,theta0:A.theta0,dtheta:A.dtheta,thetaunit:A.thetaunit,base:x({},M.base,{}),offset:x({},M.offset,{}),width:x({},M.width,{}),text:x({},M.text,{}),hovertext:x({},M.hovertext,{}),marker:e(),hoverinfo:A.hoverinfo,hovertemplate:g(),selected:M.selected,unselected:M.unselected};function e(){var t=x({},M.marker);return delete t.cornerradius,t}}}),nC=Ye({"src/traces/barpolar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),yG=Ye({"src/traces/barpolar/defaults.js"(X,H){"use strict";var g=ta(),x=FT().handleRThetaDefaults,A=U2(),M=iC();H.exports=function(t,r,o,a){function i(s,c){return g.coerce(t,r,M,s,c)}var n=x(t,r,a,i);if(!n){r.visible=!1;return}i("thetaunit"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),A(t,r,i,o,a),g.coerceSelectionMarkerOpacity(r,i)}}}),_G=Ye({"src/traces/barpolar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=nC();H.exports=function(A,M,e){var t={},r;function o(n,s){return g.coerce(A[r]||{},M[r],x,n,s)}for(var a=0;a0?(h=s,v=c):(h=c,v=s);var p=e.findEnclosingVertexAngles(h,r.vangles)[0],T=e.findEnclosingVertexAngles(v,r.vangles)[1],l=[p,(h+v)/2,T];return e.pathPolygonAnnulus(i,n,h,v,l,o,a)}:function(i,n,s,c){return A.pathAnnulus(i,n,s,c,o,a)}}}}),bG=Ye({"src/traces/barpolar/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=c1().getTraceColor,M=x.fillText,e=BT().makeHoverPointText,t=DT().isPtInsidePolygon;H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.subplot,h=c.radialAxis,v=c.angularAxis,p=c.vangles,T=p?t:x.isPtInsideSector,l=o.maxHoverDistance,_=v._period||2*Math.PI,w=Math.abs(h.g2p(Math.sqrt(a*a+i*i))),S=Math.atan2(i,a);h.range[0]>h.range[1]&&(S+=Math.PI);var E=function(u){return T(w,S,[u.rp0,u.rp1],[u.thetag0,u.thetag1],p)?l+Math.min(1,Math.abs(u.thetag1-u.thetag0)/_)-1+(u.rp1-w)/(u.rp1-u.rp0)-1:1/0};if(g.getClosest(n,E,o),o.index!==!1){var m=o.index,b=n[m];o.x0=o.x1=b.ct[0],o.y0=o.y1=b.ct[1];var d=x.extendFlat({},b,{r:b.s,theta:b.p});return M(b,s,o),e(d,s,c,o),o.hovertemplate=s.hovertemplate,o.color=A(s,b),o.xLabelVal=o.yLabelVal=void 0,b.s<0&&(o.idealAlign="left"),[o]}}}}),wG=Ye({"src/traces/barpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"barpolar",basePlotModule:zT(),categories:["polar","bar","showLegend"],attributes:iC(),layoutAttributes:nC(),supplyDefaults:yG(),supplyLayoutDefaults:_G(),calc:oC().calc,crossTraceCalc:oC().crossTraceCalc,plot:xG(),colorbar:cp(),formatLabels:OT(),style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:bG(),selectPoints:f1(),meta:{}}}}),TG=Ye({"lib/barpolar.js"(X,H){"use strict";H.exports=wG()}}),sC=Ye({"src/plots/smith/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),lC=Ye({"src/plots/smith/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({ticklen:x.ticklen,tickwidth:M({},x.tickwidth,{dflt:2}),tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,tickfont:x.tickfont,tickformat:x.tickformat,hoverformat:x.hoverformat,layer:x.layer},"plot","from-root"),o=M({visible:M({},x.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:M({},x.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},t,r),a=M({visible:M({},x.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:x.ticks,editType:"calc"},t,r);H.exports={domain:A({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:g.background},realaxis:o,imaginaryaxis:a,editType:"calc"}}}),AG=Ye({"src/plots/smith/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Qm(),r=$m(),o=I_(),a=wv(),i=lC(),n=sC(),s=n.axisNames,c=v(function(p){return g.isTypedArray(p)&&(p=Array.from(p)),p.slice().reverse().map(function(T){return-T}).concat([0]).concat(p)},String);function h(p,T,l,_){var w=l("bgcolor");_.bgColor=x.combine(w,_.paper_bgcolor);var S=e(_.fullData,n.name,_.id),E=_.layoutOut,m;function b(U,W){return l(m+"."+U,W)}for(var d=0;d")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),PG=Ye({"src/traces/scattersmith/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scattersmith",basePlotModule:SG(),categories:["smith","symbols","showLegend","scatter-like"],attributes:uC(),supplyDefaults:MG(),colorbar:cp(),formatLabels:EG(),calc:kG(),plot:CG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:LG().hoverPoints,selectPoints:u1(),meta:{}}}}),IG=Ye({"lib/scattersmith.js"(X,H){"use strict";H.exports=PG()}}),Tp=Ye({"node_modules/world-calendars/dist/main.js"(X,H){var g=Wf();function x(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}g(x.prototype,{instance:function(o,a){o=(o||"gregorian").toLowerCase(),a=a||"";var i=this._localCals[o+"-"+a];if(!i&&this.calendars[o]&&(i=new this.calendars[o](a),this._localCals[o+"-"+a]=i),!i)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,o);return i},newDate:function(o,a,i,n,s){return n=(o!=null&&o.year?o.calendar():typeof n=="string"?this.instance(n,s):n)||this.instance(),n.newDate(o,a,i)},substituteDigits:function(o){return function(a){return(a+"").replace(/[0-9]/g,function(i){return o[i]})}},substituteChineseDigits:function(o,a){return function(i){for(var n="",s=0;i>0;){var c=i%10;n=(c===0?"":o[c]+a[s])+n,s++,i=Math.floor(i/10)}return n.indexOf(o[1]+a[1])===0&&(n=n.substr(1)),n||o[0]}}});function A(o,a,i,n){if(this._calendar=o,this._year=a,this._month=i,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function M(o,a){return o=""+o,"000000".substring(0,a-o.length)+o}g(A.prototype,{newDate:function(o,a,i){return this._calendar.newDate(o??this,a,i)},year:function(o){return arguments.length===0?this._year:this.set(o,"y")},month:function(o){return arguments.length===0?this._month:this.set(o,"m")},day:function(o){return arguments.length===0?this._day:this.set(o,"d")},date:function(o,a,i){if(!this._calendar.isValid(o,a,i))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=o,this._month=a,this._day=i,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(o,a){return this._calendar.add(this,o,a)},set:function(o,a){return this._calendar.set(this,o,a)},compareTo:function(o){if(this._calendar.name!==o._calendar.name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,o._calendar.local.name);var a=this._year!==o._year?this._year-o._year:this._month!==o._month?this.monthOfYear()-o.monthOfYear():this._day-o._day;return a===0?0:a<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(o){return this._calendar.fromJD(o)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(o){return this._calendar.fromJSDate(o)},toString:function(){return(this.year()<0?"-":"")+M(Math.abs(this.year()),4)+"-"+M(this.month(),2)+"-"+M(this.day(),2)}});function e(){this.shortYearCutoff="+10"}g(e.prototype,{_validateLevel:0,newDate:function(o,a,i){return o==null?this.today():(o.year&&(this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),i=o.day(),a=o.month(),o=o.year()),new A(this,o,a,i))},today:function(){return this.fromJSDate(new Date)},epoch:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return a.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return(a.year()<0?"-":"")+M(Math.abs(a.year()),4)},monthsInYear:function(o){return this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),12},monthOfYear:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return(i.month()+this.monthsInYear(i)-this.firstMonth)%this.monthsInYear(i)+this.minMonth},fromMonthOfYear:function(o,a){var i=(a+this.firstMonth-2*this.minMonth)%this.monthsInYear(o)+this.minMonth;return this._validate(o,i,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth),i},daysInYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return this.leapYear(a)?366:365},dayOfYear:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(o,a,i){return this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),{}},add:function(o,a,i){return this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate),this._correctAdd(o,this._add(o,a,i),a,i)},_add:function(o,a,i){if(this._validateLevel++,i==="d"||i==="w"){var n=o.toJD()+a*(i==="w"?this.daysInWeek():1),s=o.calendar().fromJD(n);return this._validateLevel--,[s.year(),s.month(),s.day()]}try{var c=o.year()+(i==="y"?a:0),h=o.monthOfYear()+(i==="m"?a:0),s=o.day(),v=function(l){for(;h_-1+l.minMonth;)c++,h-=_,_=l.monthsInYear(c)};i==="y"?(o.month()!==this.fromMonthOfYear(c,h)&&(h=this.newDate(c,o.month(),this.minDay).monthOfYear()),h=Math.min(h,this.monthsInYear(c)),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h)))):i==="m"&&(v(this),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h))));var p=[c,this.fromMonthOfYear(c,h),s];return this._validateLevel--,p}catch(T){throw this._validateLevel--,T}},_correctAdd:function(o,a,i,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(a[0]===0||o.year()>0!=a[0]>0)){var s={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],c=i<0?-1:1;a=this._add(o,i*s[0]+c*s[1],s[2])}return o.date(a[0],a[1],a[2])},set:function(o,a,i){this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate);var n=i==="y"?a:o.year(),s=i==="m"?a:o.month(),c=i==="d"?a:o.day();return(i==="y"||i==="m")&&(c=Math.min(c,this.daysInMonth(n,s))),o.date(n,s,c)},isValid:function(o,a,i){this._validateLevel++;var n=this.hasYearZero||o!==0;if(n){var s=this.newDate(o,a,this.minDay);n=a>=this.minMonth&&a-this.minMonth=this.minDay&&i-this.minDay13.5?13:1),T=s-(p>2.5?4716:4715);return T<=0&&T--,this.newDate(T,p,v)},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),s=new Date(n.year(),n.month()-1,n.day());return s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0),s.setHours(s.getHours()>12?s.getHours()+2:0),s},fromJSDate:function(o){return this.newDate(o.getFullYear(),o.getMonth()+1,o.getDate())}});var r=H.exports=new x;r.cdate=A,r.baseCalendar=e,r.calendars.gregorian=t}}),RG=Ye({"node_modules/world-calendars/dist/plus.js"(){var X=Wf(),H=Tp();X(H.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"}),H.local=H.regionalOptions[""],X(H.cdate.prototype,{formatDate:function(g,x){return typeof g!="string"&&(x=g,g=""),this._calendar.formatDate(g||"",this,x)}}),X(H.baseCalendar.prototype,{UNIX_EPOCH:H.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:H.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(g,x,A){if(typeof g!="string"&&(A=x,x=g,g=""),!x)return"";if(x.calendar()!==this)throw H.local.invalidFormat||H.regionalOptions[""].invalidFormat;g=g||this.local.dateFormat,A=A||{};for(var M=A.dayNamesShort||this.local.dayNamesShort,e=A.dayNames||this.local.dayNames,t=A.monthNumbers||this.local.monthNumbers,r=A.monthNamesShort||this.local.monthNamesShort,o=A.monthNames||this.local.monthNames,a=A.calculateWeek||this.local.calculateWeek,i=function(S,E){for(var m=1;w+m1},n=function(S,E,m,b){var d=""+E;if(i(S,b))for(;d.length1},_=function(P,L){var z=l(P,L),F=[2,3,z?4:2,z?4:2,10,11,20]["oyYJ@!".indexOf(P)+1],B=new RegExp("^-?\\d{1,"+F+"}"),O=x.substring(d).match(B);if(!O)throw(H.local.missingNumberAt||H.regionalOptions[""].missingNumberAt).replace(/\{0\}/,d);return d+=O[0].length,parseInt(O[0],10)},w=this,S=function(){if(typeof o=="function"){l("m");var P=o.call(w,x.substring(d));return d+=P.length,P}return _("m")},E=function(P,L,z,F){for(var B=l(P,F)?z:L,O=0;O-1){c=1,h=v;for(var f=this.daysInMonth(s,c);h>f;f=this.daysInMonth(s,c))c++,h-=f}return n>-1?this.fromJD(n):this.newDate(s,c,h)},determineDate:function(g,x,A,M,e){A&&typeof A!="object"&&(e=M,M=A,A=null),typeof M!="string"&&(e=M,M="");var t=this,r=function(o){try{return t.parseDate(M,o,e)}catch{}o=o.toLowerCase();for(var a=(o.match(/^c/)&&A?A.newDate():null)||t.today(),i=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,n=i.exec(o);n;)a.add(parseInt(n[1],10),n[2]||"d"),n=i.exec(o);return a};return x=x?x.newDate():null,g=g==null?x:typeof g=="string"?r(g):typeof g=="number"?isNaN(g)||g===1/0||g===-1/0?x:t.today().add(g,"d"):t.newDate(g),g}})}}),DG=Ye({"node_modules/world-calendars/dist/calendars/chinese.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(n){this.local=this.regionalOptions[n||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(n,s){if(typeof n=="string"){var c=n.match(M);return c?c[0]:""}var h=this._validateYear(n),v=n.month(),p=""+this.toChineseMonth(h,v);return s&&p.length<2&&(p="0"+p),this.isIntercalaryMonth(h,v)&&(p+="i"),p},monthNames:function(n){if(typeof n=="string"){var s=n.match(e);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},monthNamesShort:function(n){if(typeof n=="string"){var s=n.match(t);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},parseMonth:function(n,s){n=this._validateYear(n);var c=parseInt(s),h;if(isNaN(c))s[0]==="\u95F0"&&(h=!0,s=s.substring(1)),s[s.length-1]==="\u6708"&&(s=s.substring(0,s.length-1)),c=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(s);else{var v=s[s.length-1];h=v==="i"||v==="I"}var p=this.toMonthIndex(n,c,h);return p},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(n,s){if(n.year&&(n=n.year()),typeof n!="number"||n<1888||n>2111)throw s.replace(/\{0\}/,this.local.name);return n},toMonthIndex:function(n,s,c){var h=this.intercalaryMonth(n),v=c&&s!==h;if(v||s<1||s>12)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p;return h?!c&&s<=h?p=s-1:p=s:p=s-1,p},toChineseMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n),h=c?12:11;if(s<0||s>h)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var v;return c?s>13;return c},isIntercalaryMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n);return!!c&&c===s},leapYear:function(n){return this.intercalaryMonth(n)!==0},weekOfYear:function(n,s,c){var h=this._validateYear(n,X.local.invalidyear),v=o[h-o[0]],p=v>>9&4095,T=v>>5&15,l=v&31,_;_=g.newDate(p,T,l),_.add(4-(_.dayOfWeek()||7),"d");var w=this.toJD(n,s,c)-_.toJD();return 1+Math.floor(w/7)},monthsInYear:function(n){return this.leapYear(n)?13:12},daysInMonth:function(n,s){n.year&&(s=n.month(),n=n.year()),n=this._validateYear(n);var c=r[n-r[0]],h=c>>13,v=h?12:11;if(s>v)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p=c&1<<12-s?30:29;return p},weekDay:function(n,s,c){return(this.dayOfWeek(n,s,c)||7)<6},toJD:function(n,s,c){var h=this._validate(n,p,c,X.local.invalidDate);n=this._validateYear(h.year()),s=h.month(),c=h.day();var v=this.isIntercalaryMonth(n,s),p=this.toChineseMonth(n,s),T=i(n,p,c,v);return g.toJD(T.year,T.month,T.day)},fromJD:function(n){var s=g.fromJD(n),c=a(s.year(),s.month(),s.day()),h=this.toMonthIndex(c.year,c.month,c.isIntercalary);return this.newDate(c.year,h,c.day)},fromString:function(n){var s=n.match(A),c=this._validateYear(+s[1]),h=+s[2],v=!!s[3],p=this.toMonthIndex(c,h,v),T=+s[4];return this.newDate(c,p,T)},add:function(n,s,c){var h=n.year(),v=n.month(),p=this.isIntercalaryMonth(h,v),T=this.toChineseMonth(h,v),l=Object.getPrototypeOf(x.prototype).add.call(this,n,s,c);if(c==="y"){var _=l.year(),w=l.month(),S=this.isIntercalaryMonth(_,T),E=p&&S?this.toMonthIndex(_,T,!0):this.toMonthIndex(_,T,!1);E!==w&&l.month(E)}return l}});var A=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,M=/^\d?\d[iI]?/m,e=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;X.calendars.chinese=x;var r=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],o=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function a(n,s,c,h){var v,p;if(typeof n=="object")v=n,p=s||{};else{var T=typeof n=="number"&&n>=1888&&n<=2111;if(!T)throw new Error("Solar year outside range 1888-2111");var l=typeof s=="number"&&s>=1&&s<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var _=typeof c=="number"&&c>=1&&c<=31;if(!_)throw new Error("Solar day outside range 1 - 31");v={year:n,month:s,day:c},p=h||{}}var w=o[v.year-o[0]],S=v.year<<9|v.month<<5|v.day;p.year=S>=w?v.year:v.year-1,w=o[p.year-o[0]];var E=w>>9&4095,m=w>>5&15,b=w&31,d,u=new Date(E,m-1,b),y=new Date(v.year,v.month-1,v.day);d=Math.round((y-u)/(24*3600*1e3));var f=r[p.year-r[0]],P;for(P=0;P<13;P++){var L=f&1<<12-P?30:29;if(d>13;return!z||P=1888&&n<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var _=typeof s=="number"&&s>=1&&s<=12;if(!_)throw new Error("Lunar month outside range 1 - 12");var w=typeof c=="number"&&c>=1&&c<=30;if(!w)throw new Error("Lunar day outside range 1 - 30");var S;typeof h=="object"?(S=!1,p=h):(S=!!h,p=v||{}),T={year:n,month:s,day:c,isIntercalary:S}}var E;E=T.day-1;var m=r[T.year-r[0]],b=m>>13,d;b&&(T.month>b||T.isIntercalary)?d=T.month:d=T.month-1;for(var u=0;u>9&4095,L=f>>5&15,z=f&31,F=new Date(P,L-1,z+E);return p.year=F.getFullYear(),p.month=1+F.getMonth(),p.day=F.getDate(),p}}}),zG=Ye({"node_modules/world-calendars/dist/calendars/coptic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.coptic=g}}),FG=Ye({"node_modules/world-calendars/dist/calendars/discworld.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),!1},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),13},daysInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),400},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return(t.day()+1)%8},weekDay:function(A,M,e){var t=this.dayOfWeek(A,M,e);return t>=2&&t<=6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{century:x[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return A=t.year()+(t.year()<0?1:0),M=t.month(),e=t.day(),e+(M>1?16:0)+(M>2?(M-2)*32:0)+(A-1)*400+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A+.5)-Math.floor(this.jdEpoch)-1;var M=Math.floor(A/400)+1;A-=(M-1)*400,A+=A>15?16:0;var e=Math.floor(A/32)+1,t=A-(e-1)*32+1;return this.newDate(M<=0?M-1:M,e,t)}});var x={20:"Fruitbat",21:"Anchovy"};X.calendars.discworld=g}}),OG=Ye({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.ethiopian=g}}),BG=Ye({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this._leapYear(M.year())},_leapYear:function(A){return A=A<0?A+1:A,x(A*7+1,19)<7},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),this._leapYear(A.year?A.year():A)?13:12},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return A=M.year(),this.toJD(A===-1?1:A+1,7,1)-this.toJD(A,7,1)},daysInMonth:function(A,M){return A.year&&(M=A.month(),A=A.year()),this._validate(A,M,this.minDay,X.local.invalidMonth),M===12&&this.leapYear(A)||M===8&&x(this.daysInYear(A),10)===5?30:M===9&&x(this.daysInYear(A),10)===3?29:this.daysPerMonth[M-1]},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A<=0?A+1:A,o=this.jdEpoch+this._delay1(r)+this._delay2(r)+e+1;if(M<7){for(var a=7;a<=this.monthsInYear(A);a++)o+=this.daysInMonth(A,a);for(var a=1;a=this.toJD(M===-1?1:M+1,7,1);)M++;for(var e=Athis.toJD(M,e,this.daysInMonth(M,e));)e++;var t=A-this.toJD(M,e,1)+1;return this.newDate(M,e,t)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.hebrew=g}}),NG=Ye({"node_modules/world-calendars/dist/calendars/islamic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);return(A.year()*11+14)%30<11},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){return this.leapYear(x)?355:354},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===12&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==5},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x=x<=0?x+1:x,M+Math.ceil(29.5*(A-1))+(x-1)*354+Math.floor((3+11*x)/30)+this.jdEpoch-1},fromJD:function(x){x=Math.floor(x)+.5;var A=Math.floor((30*(x-this.jdEpoch)+10646)/10631);A=A<=0?A-1:A;var M=Math.min(12,Math.ceil((x-29-this.toJD(A,1,1))/29.5)+1),e=x-this.toJD(A,M,1)+1;return this.newDate(A,M,e)}}),X.calendars.islamic=g}}),UG=Ye({"node_modules/world-calendars/dist/calendars/julian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()<0?A.year()+1:A.year();return M%4===0},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(4-(e.dayOfWeek()||7),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===2&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x<0&&x++,A<=2&&(x--,A+=12),Math.floor(365.25*(x+4716))+Math.floor(30.6001*(A+1))+M-1524.5},fromJD:function(x){var A=Math.floor(x+.5),M=A+1524,e=Math.floor((M-122.1)/365.25),t=Math.floor(365.25*e),r=Math.floor((M-t)/30.6001),o=r-Math.floor(r<14?1:13),a=e-Math.floor(o>2?4716:4715),i=M-t-Math.floor(30.6001*r);return a<=0&&a--,this.newDate(a,o,i)}}),X.calendars.julian=g}}),jG=Ye({"node_modules/world-calendars/dist/calendars/mayan.js"(){var X=Tp(),H=Wf();function g(M){this.local=this.regionalOptions[M||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),!1},formatYear:function(M){var e=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear);M=e.year();var t=Math.floor(M/400);M=M%400,M+=M<0?400:0;var r=Math.floor(M/20);return t+"."+r+"."+M%20},forYear:function(M){if(M=M.split("."),M.length<3)throw"Invalid Mayan year";for(var e=0,t=0;t19||t>0&&r<0)throw"Invalid Mayan year";e=e*20+r}return e},monthsInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),18},weekOfYear:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),0},daysInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),360},daysInMonth:function(M,e){return this._validate(M,e,this.minDay,X.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()},weekDay:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),!0},extraInfo:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate),o=r.toJD(),a=this._toHaab(o),i=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(M){M-=this.jdEpoch;var e=x(M+8+17*20,365);return[Math.floor(e/20)+1,x(e,20)]},_toTzolkin:function(M){return M-=this.jdEpoch,[A(M+20,20),A(M+4,13)]},toJD:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()+r.month()*20+r.year()*360+this.jdEpoch},fromJD:function(M){M=Math.floor(M)+.5-this.jdEpoch;var e=Math.floor(M/360);M=M%360,M+=M<0?360:0;var t=Math.floor(M/20),r=M%20;return this.newDate(e,t,r)}});function x(M,e){return M-e*Math.floor(M/e)}function A(M,e){return x(M-1,e)+1}X.calendars.mayan=g}}),VG=Ye({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar;var x=X.instance("gregorian");H(g.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear);return x.leapYear(M.year()+(M.year()<1?1:0)+1469)},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidMonth),r=t.year();r<0&&r++;for(var o=t.day(),a=1;a=this.toJD(M+1,1,1);)M++;for(var e=A-Math.floor(this.toJD(M,1,1)+.5)+1,t=1;e>this.daysInMonth(M,t);)e-=this.daysInMonth(M,t),t++;return this.newDate(M,t,e)}}),X.calendars.nanakshahi=g}}),qG=Ye({"node_modules/world-calendars/dist/calendars/nepali.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(x){return this.daysInYear(x)!==this.daysPerYear},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);if(x=A.year(),typeof this.NEPALI_CALENDAR_DATA[x]>"u")return this.daysPerYear;for(var M=0,e=this.minMonth;e<=12;e++)M+=this.NEPALI_CALENDAR_DATA[x][e];return M},daysInMonth:function(x,A){return x.year&&(A=x.month(),x=x.year()),this._validate(x,A,this.minDay,X.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[x]>"u"?this.daysPerMonth[A-1]:this.NEPALI_CALENDAR_DATA[x][A]},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);x=e.year(),A=e.month(),M=e.day();var t=X.instance(),r=0,o=A,a=x;this._createMissingCalendarData(x);var i=x-(o>9||o===9&&M>=this.NEPALI_CALENDAR_DATA[a][0]?56:57);for(A!==9&&(r=M,o--);o!==9;)o<=0&&(o=12,a--),r+=this.NEPALI_CALENDAR_DATA[a][o],o--;return A===9?(r+=M-this.NEPALI_CALENDAR_DATA[a][0],r<0&&(r+=t.daysInYear(i))):r+=this.NEPALI_CALENDAR_DATA[a][9]-this.NEPALI_CALENDAR_DATA[a][0],t.newDate(i,1,1).add(r,"d").toJD()},fromJD:function(x){var A=X.instance(),M=A.fromJD(x),e=M.year(),t=M.dayOfYear(),r=e+56;this._createMissingCalendarData(r);for(var o=9,a=this.NEPALI_CALENDAR_DATA[r][0],i=this.NEPALI_CALENDAR_DATA[r][o]-a+1;t>i;)o++,o>12&&(o=1,r++),i+=this.NEPALI_CALENDAR_DATA[r][o];var n=this.NEPALI_CALENDAR_DATA[r][o]-(i-t);return this.newDate(r,o,n)},_createMissingCalendarData:function(x){var A=this.daysPerMonth.slice(0);A.unshift(17);for(var M=x-1;M"u"&&(this.NEPALI_CALENDAR_DATA[M]=A)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),X.calendars.nepali=g}}),HG=Ye({"node_modules/world-calendars/dist/calendars/persian.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xE6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xE6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return((M.year()-(M.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-((t.dayOfWeek()+1)%7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A-(A>=0?474:473),o=474+x(r,2820);return e+(M<=7?(M-1)*31:(M-1)*30+6)+Math.floor((o*682-110)/2816)+(o-1)*365+Math.floor(r/2820)*1029983+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A)+.5;var M=A-this.toJD(475,1,1),e=Math.floor(M/1029983),t=x(M,1029983),r=2820;if(t!==1029982){var o=Math.floor(t/366),a=x(t,366);r=Math.floor((2134*o+2816*a+2815)/1028522)+o+1}var i=r+2820*e+474;i=i<=0?i-1:i;var n=A-this.toJD(i,1,1)+1,s=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),c=A-this.toJD(i,s,1)+1;return this.newDate(i,s,c)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.persian=g,X.calendars.jalali=g}}),GG=Ye({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)},_g2tYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)}}),X.calendars.taiwan=x}}),WG=Ye({"node_modules/world-calendars/dist/calendars/thai.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)},_g2tYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)}}),X.calendars.thai=x}}),ZG=Ye({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this.daysInYear(M.year())===355},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){for(var M=0,e=1;e<=12;e++)M+=this.daysInMonth(A,e);return M},daysInMonth:function(A,M){for(var e=this._validate(A,M,this.minDay,X.local.invalidMonth),t=e.toJD()-24e5+.5,r=0,o=0;ot)return x[r]-x[r-1];r++}return 30},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate),r=12*(t.year()-1)+t.month()-15292,o=t.day()+x[r-1]-1;return o+24e5-.5},fromJD:function(A){for(var M=A-24e5+.5,e=0,t=0;tM);t++)e++;var r=e+15292,o=Math.floor((r-1)/12),a=o+1,i=r-12*o,n=M-x[e-1]+1;return this.newDate(a,i,n)},isValid:function(A,M,e){var t=X.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(A=A.year!=null?A.year:A,t=A>=1276&&A<=1500),t},_validate:function(A,M,e,t){var r=X.baseCalendar.prototype._validate.apply(this,arguments);if(r.year<1276||r.year>1500)throw t.replace(/\{0\}/,this.local.name);return r}}),X.calendars.ummalqura=g;var x=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]}}),XG=Ye({"src/components/calendars/calendars.js"(X,H){"use strict";H.exports=Tp(),RG(),DG(),zG(),FG(),OG(),BG(),NG(),UG(),jG(),VG(),qG(),HG(),GG(),WG(),ZG()}}),YG=Ye({"src/components/calendars/index.js"(X,H){"use strict";var g=XG(),x=ta(),A=ks(),M=A.EPOCHJD,e=A.ONEDAY,t={valType:"enumerated",values:x.sortObjectKeys(g.calendars),editType:"calc",dflt:"gregorian"},r=function(m,b,d,u){var y={};return y[d]=t,x.coerce(m,b,y,d,u)},o=function(m,b,d,u){for(var y=0;y0){if(++me>=wX)return arguments[0]}else me=0;return le.apply(void 0,arguments)}}var Cb=SX;var MX=Cb(wb),Lb=MX;var EX=/\{\n\/\* \[wrapped with (.+)\] \*/,kX=/,? & /;function CX(le){var me=le.match(EX);return me?me[1].split(kX):[]}var nL=CX;var LX=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;function PX(le,me){var Xe=me.length;if(!Xe)return le;var Mt=Xe-1;return me[Mt]=(Xe>1?"& ":"")+me[Mt],me=me.join(Xe>2?", ":" "),le.replace(LX,`{ +/* [wrapped with `+me+`] */ +`)}var oL=PX;function IX(le){return function(){return le}}var J0=IX;var RX=function(){try{var le=ld(Object,"defineProperty");return le({},"",{}),le}catch{}}(),$0=RX;var DX=$0?function(le,me){return $0(le,"toString",{configurable:!0,enumerable:!1,value:J0(me),writable:!0})}:ic,sL=DX;var zX=Cb(sL),Q0=zX;function FX(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe-1}var Sm=jX;var VX=1,qX=2,HX=8,GX=16,WX=32,ZX=64,XX=128,YX=256,KX=512,JX=[["ary",XX],["bind",VX],["bindKey",qX],["curry",HX],["curryRight",GX],["flip",KX],["partial",WX],["partialRight",ZX],["rearg",YX]];function $X(le,me){return zh(JX,function(Xe){var Mt="_."+Xe[0];me&Xe[1]&&!Sm(le,Mt)&&le.push(Mt)}),le.sort()}var uL=$X;function QX(le,me,Xe){var Mt=me+"";return Q0(le,oL(Mt,uL(nL(Mt),Xe)))}var Ib=QX;var eY=1,tY=2,rY=4,aY=8,cL=32,fL=64;function iY(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&aY,gn=Ji?xa:void 0,wo=Ji?void 0:xa,ps=Ji?Nr:void 0,Qn=Ji?void 0:Nr;me|=Ji?cL:fL,me&=~(Ji?fL:cL),me&rY||(me&=~(eY|tY));var Ye=[le,me,rr,ps,gn,Qn,wo,Ha,Za,un],Ps=Xe.apply(void 0,Ye);return r_(le)&&Lb(Ps,Ye),Ps.placeholder=Mt,Ib(Ps,le,me)}var Rb=iY;function nY(le){var me=le;return me.placeholder}var Sd=nY;var oY=9007199254740991,sY=/^(?:0|[1-9]\d*)$/;function lY(le,me){var Xe=typeof le;return me=me??oY,!!me&&(Xe=="number"||Xe!="symbol"&&sY.test(le))&&le>-1&&le%1==0&&le1&&Ul.reverse(),Ji&&Za-1&&le%1==0&&le<=BY}var Mm=NY;function UY(le){return le!=null&&Mm(le.length)&&!tp(le)}var gc=UY;function jY(le,me,Xe){if(!ll(Xe))return!1;var Mt=typeof me;return(Mt=="number"?gc(Xe)&&rp(me,Xe.length):Mt=="string"&&me in Xe)?qf(Xe[me],le):!1}var nc=jY;function VY(le){return ko(function(me,Xe){var Mt=-1,rr=Xe.length,Nr=rr>1?Xe[rr-1]:void 0,xa=rr>2?Xe[2]:void 0;for(Nr=le.length>3&&typeof Nr=="function"?(rr--,Nr):void 0,xa&&nc(Xe[0],Xe[1],xa)&&(Nr=rr<3?void 0:Nr,rr=1),me=Object(me);++Mt-1}var GL=gJ;function yJ(le,me){var Xe=this.__data__,Mt=km(Xe,le);return Mt<0?(++this.size,Xe.push([le,me])):Xe[Mt][1]=me,this}var WL=yJ;function oy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me0&&Xe(Ha)?me>1?rP(Ha,me-1,Xe,Mt,rr):Dp(rr,Ha):Mt||(rr[rr.length]=Ha)}return rr}var wu=rP;function VJ(le){var me=le==null?0:le.length;return me?wu(le,1):[]}var Ub=VJ;function qJ(le){return Q0(zb(le,void 0,Ub),le+"")}var op=qJ;var HJ=op(uy),aP=HJ;var GJ=Ob(Object.getPrototypeOf,Object),Im=GJ;var WJ="[object Object]",ZJ=Function.prototype,XJ=Object.prototype,iP=ZJ.toString,YJ=XJ.hasOwnProperty,KJ=iP.call(Object);function JJ(le){if(!ul(le)||ac(le)!=WJ)return!1;var me=Im(le);if(me===null)return!0;var Xe=YJ.call(me,"constructor")&&me.constructor;return typeof Xe=="function"&&Xe instanceof Xe&&iP.call(Xe)==KJ}var gv=JJ;var $J="[object DOMException]",QJ="[object Error]";function e$(le){if(!ul(le))return!1;var me=ac(le);return me==QJ||me==$J||typeof le.message=="string"&&typeof le.name=="string"&&!gv(le)}var cy=e$;var t$=ko(function(le,me){try{return sf(le,void 0,me)}catch(Xe){return cy(Xe)?Xe:new Error(Xe)}}),jb=t$;var r$="Expected a function";function a$(le,me){var Xe;if(typeof me!="function")throw new TypeError(r$);return le=Eo(le),function(){return--le>0&&(Xe=me.apply(this,arguments)),le<=1&&(me=void 0),Xe}}var Vb=a$;var i$=1,n$=32,LA=ko(function(le,me,Xe){var Mt=i$;if(Xe.length){var rr=Yp(Xe,Sd(LA));Mt|=n$}return ap(le,Mt,me,Xe,rr)});LA.placeholder={};var qb=LA;var o$=op(function(le,me){return zh(me,function(Xe){Xe=yh(Xe),ip(le,Xe,qb(le[Xe],le))}),le}),nP=o$;var s$=1,l$=2,u$=32,PA=ko(function(le,me,Xe){var Mt=s$|l$;if(Xe.length){var rr=Yp(Xe,Sd(PA));Mt|=u$}return ap(me,Mt,le,Xe,rr)});PA.placeholder={};var oP=PA;function c$(le,me,Xe){var Mt=-1,rr=le.length;me<0&&(me=-me>rr?0:rr+me),Xe=Xe>rr?rr:Xe,Xe<0&&(Xe+=rr),rr=me>Xe?0:Xe-me>>>0,me>>>=0;for(var Nr=Array(rr);++Mt=Mt?le:Lf(le,me,Xe)}var zp=f$;var h$="\\ud800-\\udfff",p$="\\u0300-\\u036f",d$="\\ufe20-\\ufe2f",v$="\\u20d0-\\u20ff",m$=p$+d$+v$,g$="\\ufe0e\\ufe0f",y$="\\u200d",_$=RegExp("["+y$+h$+m$+g$+"]");function x$(le){return _$.test(le)}var kd=x$;function b$(le){return le.split("")}var sP=b$;var lP="\\ud800-\\udfff",w$="\\u0300-\\u036f",T$="\\ufe20-\\ufe2f",A$="\\u20d0-\\u20ff",S$=w$+T$+A$,M$="\\ufe0e\\ufe0f",E$="["+lP+"]",IA="["+S$+"]",RA="\\ud83c[\\udffb-\\udfff]",k$="(?:"+IA+"|"+RA+")",uP="[^"+lP+"]",cP="(?:\\ud83c[\\udde6-\\uddff]){2}",fP="[\\ud800-\\udbff][\\udc00-\\udfff]",C$="\\u200d",hP=k$+"?",pP="["+M$+"]?",L$="(?:"+C$+"(?:"+[uP,cP,fP].join("|")+")"+pP+hP+")*",P$=pP+hP+L$,I$="(?:"+[uP+IA+"?",IA,cP,fP,E$].join("|")+")",R$=RegExp(RA+"(?="+RA+")|"+I$+P$,"g");function D$(le){return le.match(R$)||[]}var dP=D$;function z$(le){return kd(le)?dP(le):sP(le)}var Fh=z$;function F$(le){return function(me){me=ws(me);var Xe=kd(me)?Fh(me):void 0,Mt=Xe?Xe[0]:me.charAt(0),rr=Xe?zp(Xe,1).join(""):me.slice(1);return Mt[le]()+rr}}var Hb=F$;var O$=Hb("toUpperCase"),fy=O$;function B$(le){return fy(ws(le).toLowerCase())}var Gb=B$;function N$(le,me,Xe,Mt){var rr=-1,Nr=le==null?0:le.length;for(Mt&&Nr&&(Xe=le[++rr]);++rr=me?le:me)),le}var cd=BQ;function NQ(le,me,Xe){return Xe===void 0&&(Xe=me,me=void 0),Xe!==void 0&&(Xe=mh(Xe),Xe=Xe===Xe?Xe:0),me!==void 0&&(me=mh(me),me=me===me?me:0),cd(mh(le),me,Xe)}var UP=NQ;function UQ(){this.__data__=new Cm,this.size=0}var jP=UQ;function jQ(le){var me=this.__data__,Xe=me.delete(le);return this.size=me.size,Xe}var VP=jQ;function VQ(le){return this.__data__.get(le)}var qP=VQ;function qQ(le){return this.__data__.has(le)}var HP=qQ;var HQ=200;function GQ(le,me){var Xe=this.__data__;if(Xe instanceof Cm){var Mt=Xe.__data__;if(!Lm||Mt.lengthHa))return!1;var un=Nr.get(le),Ji=Nr.get(me);if(un&&Ji)return un==me&&Ji==le;var gn=-1,wo=!0,ps=Xe&Gte?new Dm:void 0;for(Nr.set(le,me),Nr.set(me,le);++gn=me||$p<0||gn&&Np>=Nr}function Ml(){var _n=Cy();if(Ps(_n))return Ul(_n);Ha=setTimeout(Ml,Ye(_n))}function Ul(_n){return Ha=void 0,wo&&Mt?ps(_n):(Mt=rr=void 0,xa)}function Hf(){Ha!==void 0&&clearTimeout(Ha),un=0,Mt=Za=rr=Ha=void 0}function xh(){return Ha===void 0?xa:Ul(Cy())}function Bp(){var _n=Cy(),$p=Ps(_n);if(Mt=arguments,rr=this,Za=_n,$p){if(Ha===void 0)return Qn(Za);if(gn)return clearTimeout(Ha),Ha=setTimeout(Ml,me),ps(Za)}return Ha===void 0&&(Ha=setTimeout(Ml,me)),xa}return Bp.cancel=Hf,Bp.flush=xh,Bp}var yw=iae;function nae(le,me){return le==null||le!==le?me:le}var X6=nae;var Y6=Object.prototype,oae=Y6.hasOwnProperty,sae=ko(function(le,me){le=Object(le);var Xe=-1,Mt=me.length,rr=Mt>2?me[2]:void 0;for(rr&&nc(me[0],me[1],rr)&&(Mt=1);++Xe=xae&&(Nr=Hv,xa=!1,me=new Dm(me));e:for(;++rr=0&&le.slice(Xe,rr)==me}var pI=Nae;function Uae(le,me){return nl(me,function(Xe){return[Xe,le[Xe]]})}var dI=Uae;function jae(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=[Mt,Mt]}),Xe}var vI=jae;var Vae="[object Map]",qae="[object Set]";function Hae(le){return function(me){var Xe=Oh(me);return Xe==Vae?Ty(me):Xe==qae?vI(me):dI(me,le(me))}}var Aw=Hae;var Gae=Aw(Gl),f_=Gae;var Wae=Aw(yc),h_=Wae;var Zae={"&":"&","<":"<",">":">",'"':""","'":"'"},Xae=py(Zae),mI=Xae;var gI=/[&<>"']/g,Yae=RegExp(gI.source);function Kae(le){return le=ws(le),le&&Yae.test(le)?le.replace(gI,mI):le}var Sw=Kae;var yI=/[\\^$.*+?()[\]{}|]/g,Jae=RegExp(yI.source);function $ae(le){return le=ws(le),le&&Jae.test(le)?le.replace(yI,"\\$&"):le}var _I=$ae;function Qae(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xerr?0:rr+Xe),Mt=Mt===void 0||Mt>rr?rr:Eo(Mt),Mt<0&&(Mt+=rr),Mt=Xe>Mt?0:Ew(Mt);Xe-1?rr[Nr?me[xa]:xa]:void 0}}var Cw=lie;var uie=Math.max;function cie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=uie(Mt+rr,0)),Am(le,io(me,3),rr)}var Lw=cie;var fie=Cw(Lw),SI=fie;function hie(le,me,Xe){var Mt;return Xe(le,function(rr,Nr,xa){if(me(rr,Nr,xa))return Mt=Nr,!1}),Mt}var Pw=hie;function pie(le,me){return Pw(le,io(me,3),lp)}var MI=pie;var die=Math.max,vie=Math.min;function mie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt-1;return Xe!==void 0&&(rr=Eo(Xe),rr=Xe<0?die(Mt+rr,0):vie(rr,Mt-1)),Am(le,io(me,3),rr,!0)}var Iw=mie;var gie=Cw(Iw),EI=gie;function yie(le,me){return Pw(le,io(me,3),Iy)}var kI=yie;function _ie(le){return le&&le.length?le[0]:void 0}var p_=_ie;function xie(le,me){var Xe=-1,Mt=gc(le)?Array(le.length):[];return Op(le,function(rr,Nr,xa){Mt[++Xe]=me(rr,Nr,xa)}),Mt}var Rw=xie;function bie(le,me){var Xe=mo(le)?nl:Rw;return Xe(le,io(me,3))}var Nm=bie;function wie(le,me){return wu(Nm(le,me),1)}var CI=wie;var Tie=1/0;function Aie(le,me){return wu(Nm(le,me),Tie)}var LI=Aie;function Sie(le,me,Xe){return Xe=Xe===void 0?1:Eo(Xe),wu(Nm(le,me),Xe)}var PI=Sie;var Mie=1/0;function Eie(le){var me=le==null?0:le.length;return me?wu(le,Mie):[]}var II=Eie;function kie(le,me){var Xe=le==null?0:le.length;return Xe?(me=me===void 0?1:Eo(me),wu(le,me)):[]}var RI=kie;var Cie=512;function Lie(le){return ap(le,Cie)}var DI=Lie;var Pie=vy("floor"),zI=Pie;var Iie="Expected a function",Rie=8,Die=32,zie=128,Fie=256;function Oie(le){return op(function(me){var Xe=me.length,Mt=Xe,rr=Ip.prototype.thru;for(le&&me.reverse();Mt--;){var Nr=me[Mt];if(typeof Nr!="function")throw new TypeError(Iie);if(rr&&!xa&&K0(Nr)=="wrapper")var xa=new Ip([],!0)}for(Mt=xa?Mt:Xe;++Mtme}var Ry=Jie;function $ie(le){return function(me,Xe){return typeof me=="string"&&typeof Xe=="string"||(me=mh(me),Xe=mh(Xe)),le(me,Xe)}}var jm=$ie;var Qie=jm(Ry),WI=Qie;var ene=jm(function(le,me){return le>=me}),ZI=ene;var tne=Object.prototype,rne=tne.hasOwnProperty;function ane(le,me){return le!=null&&rne.call(le,me)}var XI=ane;function ine(le,me){return le!=null&&hw(le,me,XI)}var YI=ine;var nne=Math.max,one=Math.min;function sne(le,me,Xe){return le>=one(me,Xe)&&le-1:!!rr&&Ad(le,me,Xe)>-1}var $I=dne;var vne=Math.max;function mne(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=vne(Mt+rr,0)),Ad(le,me,rr)}var QI=mne;function gne(le){var me=le==null?0:le.length;return me?Lf(le,0,-1):[]}var eR=gne;var yne=Math.min;function _ne(le,me,Xe){for(var Mt=Xe?Py:Sm,rr=le[0].length,Nr=le.length,xa=Nr,Ha=Array(Nr),Za=1/0,un=[];xa--;){var Ji=le[xa];xa&&me&&(Ji=nl(Ji,uf(me))),Za=yne(Ji.length,Za),Ha[xa]=!Xe&&(me||rr>=120&&Ji.length>=120)?new Dm(xa&&Ji):void 0}Ji=le[0];var gn=-1,wo=Ha[0];e:for(;++gn=-PR&&le<=PR}var IR=doe;function voe(le){return le===void 0}var RR=voe;var moe="[object WeakMap]";function goe(le){return ul(le)&&Oh(le)==moe}var DR=goe;var yoe="[object WeakSet]";function _oe(le){return ul(le)&&ac(le)==yoe}var zR=_oe;var xoe=1;function boe(le){return io(typeof le=="function"?le:sp(le,xoe))}var FR=boe;var woe=Array.prototype,Toe=woe.join;function Aoe(le,me){return le==null?"":Toe.call(le,me)}var OR=Aoe;var Soe=Cd(function(le,me,Xe){return le+(Xe?"-":"")+me.toLowerCase()}),BR=Soe;var Moe=Om(function(le,me,Xe){ip(le,Xe,me)}),NR=Moe;function Eoe(le,me,Xe){for(var Mt=Xe+1;Mt--;)if(le[Mt]===me)return Mt;return Mt}var UR=Eoe;var koe=Math.max,Coe=Math.min;function Loe(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt;return Xe!==void 0&&(rr=Eo(Xe),rr=rr<0?koe(Mt+rr,0):Coe(rr,Mt-1)),me===me?UR(le,me,rr):Am(le,Pb,rr,!0)}var jR=Loe;var Poe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toLowerCase()}),VR=Poe;var Ioe=Hb("toLowerCase"),qR=Ioe;function Roe(le,me){return le=this.__values__.length,me=le?void 0:this.__values__[this.__index__++];return{done:le,value:me}}var sD=use;function cse(le,me){var Xe=le.length;if(Xe)return me+=me<0?Xe:0,rp(me,Xe)?le[me]:void 0}var Vw=cse;function fse(le,me){return le&&le.length?Vw(le,Eo(me)):void 0}var lD=fse;function hse(le){return le=Eo(le),ko(function(me){return Vw(me,le)})}var uD=hse;function pse(le,me){return me=Rp(me,le),le=Fw(le,me),le==null||delete le[yh(cf(me))]}var Uy=pse;function dse(le){return gv(le)?void 0:le}var cD=dse;var vse=1,mse=2,gse=4,yse=op(function(le,me){var Xe={};if(le==null)return Xe;var Mt=!1;me=nl(me,function(Nr){return Nr=Rp(Nr,le),Mt||(Mt=Nr.length>1),Nr}),gh(le,_y(le),Xe),Mt&&(Xe=sp(Xe,vse|mse|gse,cD));for(var rr=me.length;rr--;)Uy(Xe,me[rr]);return Xe}),fD=yse;function _se(le,me,Xe,Mt){if(!ll(le))return le;me=Rp(me,le);for(var rr=-1,Nr=me.length,xa=Nr-1,Ha=le;Ha!=null&&++rrme||Nr&&xa&&Za&&!Ha&&!un||Mt&&xa&&Za||!Xe&&Za||!rr)return 1;if(!Mt&&!Nr&&!un&&le=Ha)return Za;var un=Xe[Mt];return Za*(un=="desc"?-1:1)}}return le.index-me.index}var vD=Mse;function Ese(le,me,Xe){me.length?me=nl(me,function(Nr){return mo(Nr)?function(xa){return ud(xa,Nr.length===1?Nr[0]:Nr)}:Nr}):me=[ic];var Mt=-1;me=nl(me,uf(io));var rr=Rw(le,function(Nr,xa,Ha){var Za=nl(me,function(un){return un(Nr)});return{criteria:Za,index:++Mt,value:Nr}});return dD(rr,function(Nr,xa){return vD(Nr,xa,Xe)})}var Ww=Ese;function kse(le,me,Xe,Mt){return le==null?[]:(mo(me)||(me=me==null?[]:[me]),Xe=Mt?void 0:Xe,mo(Xe)||(Xe=Xe==null?[]:[Xe]),Ww(le,me,Xe))}var mD=kse;function Cse(le){return op(function(me){return me=nl(me,uf(io)),ko(function(Xe){var Mt=this;return le(me,function(rr){return sf(rr,Mt,Xe)})})})}var jy=Cse;var Lse=jy(nl),gD=Lse;var Pse=ko,yD=Pse;var Ise=Math.min,Rse=yD(function(le,me){me=me.length==1&&mo(me[0])?nl(me[0],uf(io)):nl(wu(me,1),uf(io));var Xe=me.length;return ko(function(Mt){for(var rr=-1,Nr=Ise(Mt.length,Xe);++rrFse)return Xe;do me%2&&(Xe+=le),me=Ose(me/2),me&&(le+=le);while(me);return Xe}var d_=Bse;var Nse=Ey("length"),wD=Nse;var AD="\\ud800-\\udfff",Use="\\u0300-\\u036f",jse="\\ufe20-\\ufe2f",Vse="\\u20d0-\\u20ff",qse=Use+jse+Vse,Hse="\\ufe0e\\ufe0f",Gse="["+AD+"]",BA="["+qse+"]",NA="\\ud83c[\\udffb-\\udfff]",Wse="(?:"+BA+"|"+NA+")",SD="[^"+AD+"]",MD="(?:\\ud83c[\\udde6-\\uddff]){2}",ED="[\\ud800-\\udbff][\\udc00-\\udfff]",Zse="\\u200d",kD=Wse+"?",CD="["+Hse+"]?",Xse="(?:"+Zse+"(?:"+[SD,MD,ED].join("|")+")"+CD+kD+")*",Yse=CD+kD+Xse,Kse="(?:"+[SD+BA+"?",BA,MD,ED,Gse].join("|")+")",TD=RegExp(NA+"(?="+NA+")|"+Kse+Yse,"g");function Jse(le){for(var me=TD.lastIndex=0;TD.test(le);)++me;return me}var LD=Jse;function $se(le){return kd(le)?LD(le):wD(le)}var Pd=$se;var Qse=Math.ceil;function ele(le,me){me=me===void 0?" ":Vf(me);var Xe=me.length;if(Xe<2)return Xe?d_(me,le):me;var Mt=d_(me,Qse(le/Pd(me)));return kd(me)?zp(Fh(Mt),0,le).join(""):Mt.slice(0,le)}var qg=ele;var tle=Math.ceil,rle=Math.floor;function ale(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;if(!me||Mt>=me)return le;var rr=(me-Mt)/2;return qg(rle(rr),Xe)+le+qg(tle(rr),Xe)}var PD=ale;function ile(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt-1;)Ha!==le&&VD.call(Ha,Za,1),VD.call(le,Za,1);return le}var Vy=yle;function _le(le,me){return le&&le.length&&me&&me.length?Vy(le,me):le}var Xw=_le;var xle=ko(Xw),qD=xle;function ble(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,io(Xe,2)):le}var HD=ble;function wle(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,void 0,Xe):le}var GD=wle;var Tle=Array.prototype,Ale=Tle.splice;function Sle(le,me){for(var Xe=le?me.length:0,Mt=Xe-1;Xe--;){var rr=me[Xe];if(Xe==Mt||rr!==Nr){var Nr=rr;rp(rr)?Ale.call(le,rr,1):Uy(le,rr)}}return le}var Yw=Sle;var Mle=op(function(le,me){var Xe=le==null?0:le.length,Mt=uy(le,me);return Yw(le,nl(me,function(rr){return rp(rr,Xe)?+rr:rr}).sort(Gw)),Mt}),WD=Mle;var Ele=Math.floor,kle=Math.random;function Cle(le,me){return le+Ele(kle()*(me-le+1))}var qy=Cle;var Lle=parseFloat,Ple=Math.min,Ile=Math.random;function Rle(le,me,Xe){if(Xe&&typeof Xe!="boolean"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe===void 0&&(typeof me=="boolean"?(Xe=me,me=void 0):typeof le=="boolean"&&(Xe=le,le=void 0)),le===void 0&&me===void 0?(le=0,me=1):(le=sd(le),me===void 0?(me=le,le=0):me=sd(me)),le>me){var Mt=le;le=me,me=Mt}if(Xe||le%1||me%1){var rr=Ile();return Ple(le+rr*(me-le+Lle("1e-"+((rr+"").length-1))),me)}return qy(le,me)}var ZD=Rle;var Dle=Math.ceil,zle=Math.max;function Fle(le,me,Xe,Mt){for(var rr=-1,Nr=zle(Dle((me-le)/(Xe||1)),0),xa=Array(Nr);Nr--;)xa[Mt?Nr:++rr]=le,le+=Xe;return xa}var XD=Fle;function Ole(le){return function(me,Xe,Mt){return Mt&&typeof Mt!="number"&&nc(me,Xe,Mt)&&(Xe=Mt=void 0),me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),Mt=Mt===void 0?me1&&nc(le,me[0],me[1])?me=[]:Xe>2&&nc(me[0],me[1],me[2])&&(me=[me[0]]),Ww(le,wu(me,1),[])}),Tz=wue;var Tue=4294967295,Aue=Tue-1,Sue=Math.floor,Mue=Math.min;function Eue(le,me,Xe,Mt){var rr=0,Nr=le==null?0:le.length;if(Nr===0)return 0;me=Xe(me);for(var xa=me!==me,Ha=me===null,Za=_f(me),un=me===void 0;rr>>1;function Lue(le,me,Xe){var Mt=0,rr=le==null?Mt:le.length;if(typeof me=="number"&&me===me&&rr<=Cue){for(;Mt>>1,xa=le[Nr];xa!==null&&!_f(xa)&&(Xe?xa<=me:xa>>0,Xe?(le=ws(le),le&&(typeof me=="string"||me!=null&&!Oy(me))&&(me=Vf(me),!me&&kd(le))?zp(Fh(le),0,Xe):le.split(me,Xe)):[]}var Iz=jue;var Vue="Expected a function",que=Math.max;function Hue(le,me){if(typeof le!="function")throw new TypeError(Vue);return me=me==null?0:que(Eo(me),0),ko(function(Xe){var Mt=Xe[me],rr=zp(Xe,0,me);return Mt&&Dp(rr,Mt),sf(le,this,rr)})}var Rz=Hue;var Gue=Cd(function(le,me,Xe){return le+(Xe?" ":"")+fy(me)}),Dz=Gue;function Wue(le,me,Xe){return le=ws(le),Xe=Xe==null?0:cd(Eo(Xe),0,le.length),me=Vf(me),le.slice(Xe,Xe+me.length)==me}var zz=Wue;function Zue(){return{}}var Fz=Zue;function Xue(){return""}var Oz=Xue;function Yue(){return!0}var Bz=Yue;var Kue=bm(function(le,me){return le-me},0),Nz=Kue;function Jue(le){return le&&le.length?Ny(le,ic):0}var Uz=Jue;function $ue(le,me){return le&&le.length?Ny(le,io(me,2)):0}var jz=$ue;function Que(le){var me=le==null?0:le.length;return me?Lf(le,1,me):[]}var Vz=Que;function ece(le,me,Xe){return le&&le.length?(me=Xe||me===void 0?1:Eo(me),Lf(le,0,me<0?0:me)):[]}var qz=ece;function tce(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,me<0?0:me,Mt)):[]}var Hz=tce;function rce(le,me){return le&&le.length?Bm(le,io(me,3),!1,!0):[]}var Gz=rce;function ace(le,me){return le&&le.length?Bm(le,io(me,3)):[]}var Wz=ace;function ice(le,me){return me(le),le}var Zz=ice;var Xz=Object.prototype,nce=Xz.hasOwnProperty;function oce(le,me,Xe,Mt){return le===void 0||qf(le,Xz[Xe])&&!nce.call(Mt,Xe)?me:le}var VA=oce;var sce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"};function lce(le){return"\\"+sce[le]}var Yz=lce;var uce=/<%=([\s\S]+?)%>/g,e2=uce;var cce=/<%-([\s\S]+?)%>/g,Kz=cce;var fce=/<%([\s\S]+?)%>/g,Jz=fce;var hce={escape:Kz,evaluate:Jz,interpolate:e2,variable:"",imports:{_:{escape:Sw}}},m_=hce;var pce="Invalid `variable` option passed into `_.template`",dce=/\b__p \+= '';/g,vce=/\b(__p \+=) '' \+/g,mce=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gce=/[()=,{}\[\]\/\s]/,yce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,t2=/($^)/,_ce=/['\n\r\u2028\u2029\\]/g,xce=Object.prototype,$z=xce.hasOwnProperty;function bce(le,me,Xe){var Mt=m_.imports._.templateSettings||m_;Xe&&nc(le,me,Xe)&&(me=void 0),le=ws(le),me=Em({},me,Mt,VA);var rr=Em({},me.imports,Mt.imports,VA),Nr=Gl(rr),xa=Dy(rr,Nr),Ha,Za,un=0,Ji=me.interpolate||t2,gn="__p += '",wo=RegExp((me.escape||t2).source+"|"+Ji.source+"|"+(Ji===e2?yce:t2).source+"|"+(me.evaluate||t2).source+"|$","g"),ps=$z.call(me,"sourceURL")?"//# sourceURL="+(me.sourceURL+"").replace(/\s/g," ")+` +`:"";le.replace(wo,function(Ps,Ml,Ul,Hf,xh,Bp){return Ul||(Ul=Hf),gn+=le.slice(un,Bp).replace(_ce,Yz),Ml&&(Ha=!0,gn+=`' + +__e(`+Ml+`) + +'`),xh&&(Za=!0,gn+=`'; +`+xh+`; +__p += '`),Ul&&(gn+=`' + +((__t = (`+Ul+`)) == null ? '' : __t) + +'`),un=Bp+Ps.length,Ps}),gn+=`'; +`;var Qn=$z.call(me,"variable")&&me.variable;if(!Qn)gn=`with (obj) { +`+gn+` +} +`;else if(gce.test(Qn))throw new Error(pce);gn=(Za?gn.replace(dce,""):gn).replace(vce,"$1").replace(mce,"$1;"),gn="function("+(Qn||"obj")+`) { +`+(Qn?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(Ha?", __e = _.escape":"")+(Za?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+gn+`return __p +}`;var Ye=jb(function(){return Function(Nr,ps+"return "+gn).apply(void 0,xa)});if(Ye.source=gn,cy(Ye))throw Ye;return Ye}var Qz=bce;var wce="Expected a function";function Tce(le,me,Xe){var Mt=!0,rr=!0;if(typeof le!="function")throw new TypeError(wce);return ll(Xe)&&(Mt="leading"in Xe?!!Xe.leading:Mt,rr="trailing"in Xe?!!Xe.trailing:rr),yw(le,me,{leading:Mt,maxWait:me,trailing:rr})}var e8=Tce;function Ace(le,me){return me(le)}var Wv=Ace;var Sce=9007199254740991,qA=4294967295,Mce=Math.min;function Ece(le,me){if(le=Eo(le),le<1||le>Sce)return[];var Xe=qA,Mt=Mce(le,qA);me=_h(me),le-=qA;for(var rr=ty(Mt,me);++Xe-1;);return Xe}var a2=Fce;function Oce(le,me){for(var Xe=-1,Mt=le.length;++Xe-1;);return Xe}var i2=Oce;function Bce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return xb(le);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=Fh(me),Nr=i2(Mt,rr),xa=a2(Mt,rr)+1;return zp(Mt,Nr,xa).join("")}var u8=Bce;function Nce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.slice(0,_b(le)+1);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=a2(Mt,Fh(me))+1;return zp(Mt,0,rr).join("")}var c8=Nce;var Uce=/^\s+/;function jce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.replace(Uce,"");if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=i2(Mt,Fh(me));return zp(Mt,rr).join("")}var f8=jce;var Vce=30,qce="...",Hce=/\w*$/;function Gce(le,me){var Xe=Vce,Mt=qce;if(ll(me)){var rr="separator"in me?me.separator:rr;Xe="length"in me?Eo(me.length):Xe,Mt="omission"in me?Vf(me.omission):Mt}le=ws(le);var Nr=le.length;if(kd(le)){var xa=Fh(le);Nr=xa.length}if(Xe>=Nr)return le;var Ha=Xe-Pd(Mt);if(Ha<1)return Mt;var Za=xa?zp(xa,0,Ha).join(""):le.slice(0,Ha);if(rr===void 0)return Za+Mt;if(xa&&(Ha+=Za.length-Ha),Oy(rr)){if(le.slice(Ha).search(rr)){var un,Ji=Za;for(rr.global||(rr=RegExp(rr.source,ws(Hce.exec(rr))+"g")),rr.lastIndex=0;un=rr.exec(Ji);)var gn=un.index;Za=Za.slice(0,gn===void 0?Ha:gn)}}else if(le.indexOf(Vf(rr),Ha)!=Ha){var wo=Za.lastIndexOf(rr);wo>-1&&(Za=Za.slice(0,wo))}return Za+Mt}var h8=Gce;function Wce(le){return Db(le,1)}var p8=Wce;var Zce={"&":"&","<":"<",">":">",""":'"',"'":"'"},Xce=py(Zce),d8=Xce;var v8=/&(?:amp|lt|gt|quot|#39);/g,Yce=RegExp(v8.source);function Kce(le){return le=ws(le),le&&Yce.test(le)?le.replace(v8,d8):le}var m8=Kce;var Jce=1/0,$ce=Rm&&1/zm(new Rm([,-0]))[1]==Jce?function(le){return new Rm(le)}:X0,g8=$ce;var Qce=200;function efe(le,me,Xe){var Mt=-1,rr=Sm,Nr=le.length,xa=!0,Ha=[],Za=Ha;if(Xe)xa=!1,rr=Py;else if(Nr>=Qce){var un=me?null:g8(le);if(un)return zm(un);xa=!1,rr=Hv,Za=new Dm}else Za=me?[]:Ha;e:for(;++Mt1||this.__actions__.length||!(Mt instanceof dl)||!rp(Xe)?this.thru(rr):(Mt=Mt.slice(Xe,+Xe+(me?1:0)),Mt.__actions__.push({func:Wv,args:[rr],thisArg:void 0}),new Ip(Mt,this.__chain__).thru(function(Nr){return me&&!Nr.length&&Nr.push(void 0),Nr}))}),I8=xfe;function bfe(){return Xb(this)}var R8=bfe;function wfe(){var le=this.__wrapped__;if(le instanceof dl){var me=le;return this.__actions__.length&&(me=new dl(this)),me=me.reverse(),me.__actions__.push({func:Wv,args:[v_],thisArg:void 0}),new Ip(me,this.__chain__)}return this.thru(v_)}var D8=wfe;function Tfe(le,me,Xe){var Mt=le.length;if(Mt<2)return Mt?Jp(le[0]):[];for(var rr=-1,Nr=Array(Mt);++rr1?le[me-1]:void 0;return Xe=typeof Xe=="function"?(le.pop(),Xe):void 0,n2(le,Xe)}),j8=Pfe;var is={chunk:NP,compact:A6,concat:S6,difference:iI,differenceBy:nI,differenceWith:oI,drop:lI,dropRight:uI,dropRightWhile:cI,dropWhile:fI,fill:TI,findIndex:Lw,findLastIndex:Iw,first:p_,flatten:Ub,flattenDeep:II,flattenDepth:RI,fromPairs:VI,head:p_,indexOf:QI,initial:eR,intersection:tR,intersectionBy:rR,intersectionWith:aR,join:OR,last:cf,lastIndexOf:jR,nth:lD,pull:qD,pullAll:Xw,pullAllBy:HD,pullAllWith:GD,pullAt:WD,remove:rz,reverse:v_,slice:_z,sortedIndex:Az,sortedIndexBy:Sz,sortedIndexOf:Mz,sortedLastIndex:Ez,sortedLastIndexBy:kz,sortedLastIndexOf:Cz,sortedUniq:Lz,sortedUniqBy:Pz,tail:Vz,take:qz,takeRight:Hz,takeRightWhile:Gz,takeWhile:Wz,union:y8,unionBy:_8,unionWith:x8,uniq:b8,uniqBy:w8,uniqWith:T8,unzip:Gy,unzipWith:n2,without:L8,xor:z8,xorBy:F8,xorWith:O8,zip:B8,zipObject:N8,zipObjectDeep:U8,zipWith:j8};var Hu={countBy:H6,each:u_,eachRight:c_,every:bI,filter:AI,find:SI,findLast:EI,flatMap:CI,flatMapDeep:LI,flatMapDepth:PI,forEach:u_,forEachRight:c_,groupBy:GI,includes:$I,invokeMap:uR,keyBy:NR,map:Nm,orderBy:mD,partition:FD,reduce:$D,reduceRight:ez,reject:tz,sample:uz,sampleSize:hz,shuffle:gz,size:yz,some:wz,sortBy:Tz};var HA={now:Cy};var xf={after:$C,ary:Db,before:Vb,bind:qb,bindKey:oP,curry:W6,curryRight:Z6,debounce:yw,defer:rI,delay:aI,flip:DI,memoize:Bb,negate:Gv,once:pD,overArgs:_D,partial:Zw,partialRight:zD,rearg:JD,rest:nz,spread:Rz,throttle:e8,unary:p8,wrap:P8};var Es={castArray:OP,clone:_6,cloneDeep:x6,cloneDeepWith:b6,cloneWith:w6,conformsTo:j6,eq:qf,gt:WI,gte:ZI,isArguments:dd,isArray:mo,isArrayBuffer:hR,isArrayLike:gc,isArrayLikeObject:eu,isBoolean:pR,isBuffer:Kp,isDate:mR,isElement:gR,isEmpty:yR,isEqual:_R,isEqualWith:xR,isError:cy,isFinite:bR,isFunction:tp,isInteger:Ow,isLength:Mm,isMap:aw,isMatch:wR,isMatchWith:TR,isNaN:AR,isNative:MR,isNil:ER,isNull:kR,isNumber:Bw,isObject:ll,isObjectLike:ul,isPlainObject:gv,isRegExp:Oy,isSafeInteger:IR,isSet:iw,isString:Vm,isSymbol:_f,isTypedArray:Ed,isUndefined:RR,isWeakMap:DR,isWeakSet:zR,lt:HR,lte:GR,toArray:jw,toFinite:sd,toInteger:Eo,toLength:Ew,toNumber:mh,toPlainObject:_w,toSafeInteger:o8,toString:ws};var _p={add:YC,ceil:BP,divide:sI,floor:zI,max:KR,maxBy:JR,mean:$R,meanBy:QR,min:aD,minBy:iD,multiply:nD,round:sz,subtract:Nz,sum:Uz,sumBy:jz};var g_={clamp:UP,inRange:JI,random:ZD};var Js={assign:RL,assignIn:n_,assignInWith:Em,assignWith:FL,at:aP,create:G6,defaults:K6,defaultsDeep:tI,entries:f_,entriesIn:h_,extend:n_,extendWith:Em,findKey:MI,findLastKey:kI,forIn:BI,forInRight:NI,forOwn:UI,forOwnRight:jI,functions:qI,functionsIn:HI,get:ly,has:YI,hasIn:My,invert:nR,invertBy:sR,invoke:lR,keys:Gl,keysIn:yc,mapKeys:WR,mapValues:ZR,merge:eD,mergeWith:xw,omit:fD,omitBy:hD,pick:BD,pickBy:Hw,result:oz,set:pz,setWith:dz,toPairs:f_,toPairsIn:h_,transform:l8,unset:S8,update:M8,updateWith:E8,values:Ld,valuesIn:C8};var Id={at:I8,chain:Xb,commit:T6,lodash:ua,next:sD,plant:ND,reverse:D8,tap:Zz,thru:Wv,toIterator:r8,toJSON:Wm,value:Wm,valueOf:Wm,wrapperChain:R8};var du={camelCase:FP,capitalize:Gb,deburr:Wb,endsWith:pI,escape:Sw,escapeRegExp:_I,kebabCase:BR,lowerCase:VR,lowerFirst:qR,pad:PD,padEnd:ID,padStart:RD,parseInt:DD,repeat:az,replace:iz,snakeCase:xz,split:Iz,startCase:Dz,startsWith:zz,template:Qz,templateSettings:m_,toLower:a8,toUpper:s8,trim:u8,trimEnd:c8,trimStart:f8,truncate:h8,unescape:m8,upperCase:k8,upperFirst:fy,words:Zb};var Tu={attempt:jb,bindAll:nP,cond:B6,conforms:U6,constant:J0,defaultTo:X6,flow:FI,flowRight:OI,identity:ic,iteratee:FR,matches:XR,matchesProperty:YR,method:tD,methodOf:rD,mixin:Uw,noop:X0,nthArg:uD,over:gD,overEvery:xD,overSome:bD,property:dw,propertyOf:UD,range:YD,rangeRight:KD,stubArray:gy,stubFalse:ry,stubObject:Fz,stubString:Oz,stubTrue:Bz,times:t8,toPath:i8,uniqueId:A8};function Ife(){var le=new dl(this.__wrapped__);return le.__actions__=Wc(this.__actions__),le.__dir__=this.__dir__,le.__filtered__=this.__filtered__,le.__iteratees__=Wc(this.__iteratees__),le.__takeCount__=this.__takeCount__,le.__views__=Wc(this.__views__),le}var V8=Ife;function Rfe(){if(this.__filtered__){var le=new dl(this);le.__dir__=-1,le.__filtered__=!0}else le=this.clone(),le.__dir__*=-1;return le}var q8=Rfe;var Dfe=Math.max,zfe=Math.min;function Ffe(le,me,Xe){for(var Mt=-1,rr=Xe.length;++Mt0||me<0)?new dl(Xe):(le<0?Xe=Xe.takeRight(-le):le&&(Xe=Xe.drop(le)),me!==void 0&&(me=Eo(me),Xe=me<0?Xe.dropRight(-me):Xe.take(me-le)),Xe)};dl.prototype.takeRightWhile=function(le){return this.reverse().takeWhile(le).reverse()};dl.prototype.toArray=function(){return this.take(X8)};lp(dl.prototype,function(le,me){var Xe=/^(?:filter|find|map|reject)|While$/.test(me),Mt=/^(?:head|last)$/.test(me),rr=ua[Mt?"take"+(me=="last"?"Right":""):me],Nr=Mt||/^find/.test(me);rr&&(ua.prototype[me]=function(){var xa=this.__wrapped__,Ha=Mt?[1]:arguments,Za=xa instanceof dl,un=Ha[0],Ji=Za||mo(xa),gn=function(Ml){var Ul=rr.apply(ua,Dp([Ml],Ha));return Mt&&wo?Ul[0]:Ul};Ji&&Xe&&typeof un=="function"&&un.length!=1&&(Za=Ji=!1);var wo=this.__chain__,ps=!!this.__actions__.length,Qn=Nr&&!wo,Ye=Za&&!ps;if(!Nr&&Ji){xa=Ye?xa:new dl(this);var Ps=le.apply(xa,Ha);return Ps.__actions__.push({func:Wv,args:[gn],thisArg:void 0}),new Ip(Ps,wo)}return Qn&&Ye?le.apply(this,Ha):(Ps=this.thru(gn),Qn?Mt?Ps.value()[0]:Ps.value():Ps)})});zh(["pop","push","shift","sort","splice","unshift"],function(le){var me=Gfe[le],Xe=/^(?:push|sort|unshift)$/.test(le)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(le);ua.prototype[le]=function(){var rr=arguments;if(Mt&&!this.__chain__){var Nr=this.value();return me.apply(mo(Nr)?Nr:[],rr)}return this[Xe](function(xa){return me.apply(mo(xa)?xa:[],rr)})}});lp(dl.prototype,function(le,me){var Xe=ua[me];if(Xe){var Mt=Xe.name+"";Y8.call(Tm,Mt)||(Tm[Mt]=[]),Tm[Mt].push({name:me,func:Xe})}});Tm[ey(void 0,Vfe).name]=[{name:"wrapper",func:void 0}];dl.prototype.clone=V8;dl.prototype.reverse=q8;dl.prototype.value=G8;ua.prototype.at=Id.at;ua.prototype.chain=Id.wrapperChain;ua.prototype.commit=Id.commit;ua.prototype.next=Id.next;ua.prototype.plant=Id.plant;ua.prototype.reverse=Id.reverse;ua.prototype.toJSON=ua.prototype.valueOf=ua.prototype.value=Id.value;ua.prototype.first=ua.prototype.head;W8&&(ua.prototype[W8]=Id.toIterator);var kc=ua;var Rd=HW($8());window.PlotlyConfig={MathJaxConfig:"local"};var WA=class{constructor(me,Xe){this.model=me,this.serializers=Xe}get(me){let Xe=this.serializers[me],Mt=this.model.get(me);return Xe?.deserialize?Xe.deserialize(Mt):Mt}set(me,Xe){let Mt=this.serializers[me];Mt?.serialize&&(Xe=Mt.serialize(Xe)),this.model.set(me,Xe)}on(me,Xe){this.model.on(me,Xe)}save_changes(){this.model.save_changes()}defaults(){return{_widget_data:[],_widget_layout:{},_config:{},_py2js_addTraces:null,_py2js_deleteTraces:null,_py2js_moveTraces:null,_py2js_restyle:null,_py2js_relayout:null,_py2js_update:null,_py2js_animate:null,_py2js_removeLayoutProps:null,_py2js_removeTraceProps:null,_js2py_restyle:null,_js2py_relayout:null,_js2py_update:null,_js2py_layoutDelta:null,_js2py_traceDeltas:null,_js2py_pointsCallback:null,_last_layout_edit_id:0,_last_trace_edit_id:0}}initialize(){this.model.on("change:_widget_data",()=>this.do_data()),this.model.on("change:_widget_layout",()=>this.do_layout()),this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),this.model.on("change:_py2js_removeLayoutProps",()=>this.do_removeLayoutProps()),this.model.on("change:_py2js_removeTraceProps",()=>this.do_removeTraceProps())}_normalize_trace_indexes(me){if(me==null){var Xe=this.model.get("_widget_data").length;me=kc.range(Xe)}return Array.isArray(me)||(me=[me]),me}do_data(){}do_layout(){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.trace_data;kc.forEach(Mt,function(rr){Xe.push(rr)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this.model.get("_widget_data");Xe.slice().reverse().forEach(function(rr){Mt.splice(rr,1)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.current_trace_inds,rr=me.new_trace_inds;$fe(Xe,Mt,rr)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this._normalize_trace_indexes(me.restyle_traces);eF(this.model.get("_widget_data"),Xe,Mt)}}do_relayout(){var me=this.model.get("_py2js_relayout");me!==null&&u2(this.model.get("_widget_layout"),me.relayout_data)}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces);eF(this.model.get("_widget_data"),Xe,rr),u2(this.model.get("_widget_layout"),Mt)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){for(var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces),Nr=0;Nrthis.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),window?.MathJax?.Hub?.Config?.({SVG:{font:"STIX-Web"}});var Xe=this.model.get("_last_layout_edit_id"),Mt=this.model.get("_last_trace_edit_id");this.viewID=rF();var rr=kc.cloneDeep(this.model.get("_widget_data")),Nr=kc.cloneDeep(this.model.get("_widget_layout"));Nr.height||(Nr.height=360);var xa=this.model.get("_config");xa.editSelection=!1,Rd.default.newPlot(me.el,rr,Nr,xa).then(function(){me._sendTraceDeltas(Mt),me._sendLayoutDelta(Xe),me.el.on("plotly_restyle",function(Za){me.handle_plotly_restyle(Za)}),me.el.on("plotly_relayout",function(Za){me.handle_plotly_relayout(Za)}),me.el.on("plotly_update",function(Za){me.handle_plotly_update(Za)}),me.el.on("plotly_click",function(Za){me.handle_plotly_click(Za)}),me.el.on("plotly_hover",function(Za){me.handle_plotly_hover(Za)}),me.el.on("plotly_unhover",function(Za){me.handle_plotly_unhover(Za)}),me.el.on("plotly_selected",function(Za){me.handle_plotly_selected(Za)}),me.el.on("plotly_deselect",function(Za){me.handle_plotly_deselect(Za)}),me.el.on("plotly_doubleclick",function(Za){me.handle_plotly_doubleclick(Za)});var Ha=new CustomEvent("plotlywidget-after-render",{detail:{element:me.el,viewID:me.viewID}});document.dispatchEvent(Ha)})}_processLuminoMessage(me,Xe){Xe.apply(this,arguments);var Mt=this;switch(me.type){case"before-attach":var rr={showgrid:!1,showline:!1,tickvals:[]};Rd.default.newPlot(Mt.el,[],{xaxis:rr,yaxis:rr}),this.resizeEventListener=()=>{this.autosizeFigure()},window.addEventListener("resize",this.resizeEventListener);break;case"after-attach":this.perform_render();break;case"after-show":case"resize":this.autosizeFigure();break}}autosizeFigure(){var me=this,Xe=me.model.get("_widget_layout");(kc.isNil(Xe)||kc.isNil(Xe.width))&&Rd.default.Plots.resize(me.el).then(function(){var Mt=me.model.get("_last_layout_edit_id");me._sendLayoutDelta(Mt)})}remove(){Rd.default.purge(this.el),window.removeEventListener("resize",this.resizeEventListener)}getFullData(){return kc.mergeWith({},this.el._fullData,this.el.data,Q8)}getFullLayout(){return kc.mergeWith({},this.el._fullLayout,this.el.layout,Q8)}buildPointsObject(me){var Xe;if(me.hasOwnProperty("points")){var Mt=me.points,rr=Mt.length,Nr=!0;for(let Ji=0;Ji=0;rr--)Mt.splice(0,0,le[me[rr]]),le.splice(me[rr],1);var Nr=kc(Xe).zip(Mt).sortBy(0).unzip().value();Xe=Nr[0],Mt=Nr[1];for(var xa=0;xa0&&typeof Nr[0]=="object"){Xe[Mt]=new Array(Nr.length);for(var xa=0;xa0&&(Xe[Mt]=Ha)}else typeof Nr=="object"&&!Array.isArray(Nr)?Xe[Mt]=y_(Nr,{}):Nr!==void 0&&typeof Nr!="function"&&(Xe[Mt]=Nr)}}return Xe}function rF(le,me,Xe,Mt){if(Xe||(Xe=16),me===void 0&&(me=24),me<=0)return"0";var rr=Math.log(Math.pow(2,me))/Math.log(Xe),Nr="",xa,Ha,Za;for(xa=2;rr===1/0;xa*=2)rr=Math.log(Math.pow(2,me/xa))/Math.log(Xe)*xa;var un=rr-Math.floor(rr);for(xa=0;xa=Math.pow(2,me)?Mt>10?(console.warn("randstr failed uniqueness"),Nr):rF(le,me,Xe,(Mt||0)+1):Nr}var lGe=()=>{let le;return{initialize(me){le=new WA(me.model,Xfe),le.initialize()},render({el:me}){let Xe=new ZA(le,me);return Xe.perform_render(),()=>Xe.remove()}}};export{WA as FigureModel,ZA as FigureView,lGe as default}; +/*! Bundled license information: + +plotly.js/dist/plotly.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + (*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! + * pad-left + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT license. + *) + (*! + * repeat-string + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + *) + (*! Bundled license information: + + native-promise-only/lib/npo.src.js: + (*! Native Promise Only + v0.8.1 (c) Kyle Simpson + MIT License: http://getify.mit-license.org + *) + + polybooljs/index.js: + (* + * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc + * @license MIT + * @preserve Project Home: https://github.com/voidqk/polybooljs + *) + + ieee754/index.js: + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + + buffer/index.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + + assert/build/internal/util/comparisons.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + + object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) + + maplibre-gl/dist/maplibre-gl.js: + (** + * MapLibre GL JS + * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt + *) + *) + +lodash-es/lodash.default.js: + (** + * @license + * Lodash (Custom Build) + * Build: `lodash modularize exports="es" -o ./` + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) + +lodash-es/lodash.js: + (** + * @license + * Lodash (Custom Build) + * Build: `lodash modularize exports="es" -o ./` + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) +*/ diff --git a/pyproject.toml b/pyproject.toml index 579a914d6a..7cc8b33a51 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools"] +requires = ["setuptools>=61", "hatch", "jupyter_packaging~=0.10.0", "wheel"] build-backend = "setuptools.build_meta" [project.urls] @@ -66,7 +66,6 @@ include = '\.pyi?$' exclude = ''' ( - /( \.eggs # exclude a few common directories in the | \.git # root of the project | \.hg @@ -77,9 +76,36 @@ exclude = ''' | buck-out | build | dist + | js | submodules | plotly/matplotlylib/mplexporter - )/ - | versioneer.py ) ''' + +[tool.jupyter-packaging.builder] +factory = "jupyter_packaging.npm_builder" +auto_data_files = true + +[tool.jupyter-packaging.build-args] +build_cmd = "build:prod" +npm = ["jlpm"] + +[tool.hatch.build.hooks.jupyter-builder] +editable-frontend = true + +[tool.hatch.build.hooks.jupyter-builder.editable-build-kwargs] +build_cmd = "build" +npm = ["jlpm"] +source_dir = "js" +build_dir = "plotly/labextension" +skip_symlink = true + +[tool.setuptools.data-files] +"share/jupyter/labextensions/jupyterlab-plotly" = [ + "plotly/labextension/package.json", + "js/install.json" +] + +"share/jupyter/labextensions/jupyterlab-plotly/static" = [ + "plotly/labextension/static/*.js" +] \ No newline at end of file