@arcgis/core 5.1.0-next.25 → 5.1.0-next.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +4 -5
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/{f1c1f7583fa13dff9b5c.js → 7fbee83c9463892f4808.js} +1 -1
  4. package/assets/esri/core/workers/chunks/{ef267b938327c41727c1.js → f89b7b0ccfbd1e5f9a0f.js} +1 -1
  5. package/chunks/MeasurementArrow.glsl.js +5 -8
  6. package/config.d.ts +2 -2
  7. package/config.js +1 -1
  8. package/editing/templateUtils.js +1 -1
  9. package/kernel.js +1 -1
  10. package/layers/support/FeatureReductionBinning.d.ts +3 -4
  11. package/layers/support/FeatureReductionBinning.js +1 -1
  12. package/layers/support/FeatureReductionCluster.d.ts +3 -4
  13. package/layers/support/FeatureReductionCluster.js +1 -1
  14. package/layers/support/featureReductionProperties.js +1 -1
  15. package/package.json +1 -1
  16. package/renderers/FlowRenderer.d.ts +6 -2
  17. package/support/revision.js +1 -1
  18. package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
  19. package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
  20. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  21. package/views/2d/layers/MediaLayerView2D.js +1 -1
  22. package/views/2d/layers/imagery/VectorFieldView2D.js +1 -1
  23. package/views/3d/GroundView3D.js +1 -1
  24. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  25. package/views/3d/environment/CloudsComposition.js +1 -1
  26. package/views/3d/environment/CloudsRenderer.js +1 -1
  27. package/views/3d/environment/Fog.js +1 -1
  28. package/views/3d/environment/LocalAtmosphere.js +1 -1
  29. package/views/3d/environment/MarsAtmosphere.js +1 -1
  30. package/views/3d/environment/NoiseTextureAtlas.js +1 -1
  31. package/views/3d/environment/Precipitation.js +1 -1
  32. package/views/3d/environment/PrecipitationTechnique.js +1 -1
  33. package/views/3d/layers/MediaLayerView3D.js +1 -1
  34. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  35. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js +1 -1
  36. package/views/3d/webgl-engine/effects/RenderNodes.js +1 -1
  37. package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
  38. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorNode.js +1 -1
  39. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  40. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +1 -1
  41. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechnique.js +1 -1
  42. package/views/3d/webgl-engine/effects/glow/GlowRenderNode.js +1 -1
  43. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  44. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  45. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
  46. package/views/3d/webgl-engine/effects/laserlines/LaserLineRenderer.js +1 -1
  47. package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
  48. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  49. package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
  50. package/views/3d/webgl-engine/effects/stars/Stars.js +1 -1
  51. package/views/3d/webgl-engine/lib/CutFillColor.js +1 -1
  52. package/views/3d/webgl-engine/lib/CutFillDepth.js +1 -1
  53. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  54. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  55. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  56. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  57. package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
  58. package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
  59. package/views/3d/webgl-engine/shaders/MeasurementArrowTechniqueConfiguration.js +1 -1
  60. package/views/layers/MediaLayerView.d.ts +90 -4
  61. package/views/layers/MediaLayerView.js +1 -1
  62. package/widgets/Measurement.d.ts +1 -1
  63. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  64. package/widgets/ValuePicker.d.ts +1 -1
  65. package/views/layers/MediaLayerViewMixin.d.ts +0 -109
  66. package/views/layers/MediaLayerViewMixin.js +0 -2
package/README.md CHANGED
@@ -2,27 +2,26 @@
2
2
 
3
3
  A minified, unbuilt version of the [ArcGIS Maps SDK for JavaScript](https://developers.arcgis.com/javascript/) core API's ES modules. Use the ArcGIS Maps SDK for JavaScript to build compelling web apps that unlock your data's potential with interactive user experiences and stunning 2D and 3D visualizations. The SDK includes the core API and a set of [web component](https://developer.mozilla.org/en-US/docs/Web/API/Web_components) libraries that encapsulate the API's functionality into ready-to-use UI elements.
4
4
 
5
- Want to get started immediately? See [Get started](https://developers.arcgis.com/javascript/latest/get-started/) or try out the [sample applications](https://github.com/Esri/jsapi-resources/tree/main/templates) for a variety of popular frameworks, module bundlers, and TypeScript.
5
+ Want to get started immediately? See [Get started](https://developers.arcgis.com/javascript/latest/get-started/#create-an-app-with-npm) or try out various [templates](https://github.com/Esri/jsapi-resources/tree/main/templates) for popular frameworks, module bundlers, and TypeScript.
6
6
 
7
7
  ## Documentation
8
8
 
9
9
  - [Key Features](https://developers.arcgis.com/javascript/latest/key-features/)
10
- - [Build with npm](https://developers.arcgis.com/javascript/latest/get-started/#npm)
11
10
  - [References](https://developers.arcgis.com/javascript/latest/references/)
12
11
  - [Functionality samples](https://developers.arcgis.com/javascript/latest/sample-code/)
13
12
  - [TypeScript setup](https://developers.arcgis.com/javascript/latest/typescript-setup/)
14
13
 
15
14
  ## Get started
16
15
 
17
- Install the package into your project:
16
+ Install the required packages into your project:
18
17
 
19
18
  ```sh
20
- npm install @arcgis/core
19
+ npm install @arcgis/map-components @arcgis/core @esri/calcite-components
21
20
  ```
22
21
 
23
22
  ## Resources
24
23
 
25
- - [ArcGIS blog](https://blogs.esri.com/esri/arcgis/tag/javascript/)
24
+ - [ArcGIS blog](https://www.esri.com/arcgis-blog/?s=#ArcGIS%20Maps%20SDK%20for%20JavaScript&)
26
25
  - [System Requirements](https://developers.arcgis.com/javascript/latest/system-requirements/)
27
26
  - [Terms of Use](https://www.esri.com/en-us/legal/terms/product-specific-scope-of-use)
28
27
  - [Licensing](https://developers.arcgis.com/javascript/latest/licensing/)
@@ -1 +1 @@
1
- var RemoteClient;(()=>{"use strict";var e={66358(e,t,r){r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},92602(e,t,r){r.d(t,{A:()=>a}),r(44208);var n=r(93637);const a={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.$N)(a,globalThis.esriConfig,!0),delete a.has),!a.assetsPath){{const e="5.1.0-next.25";a.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}a.defaultAssetsPath=a.assetsPath}},49186(e,t,r){r.d(t,{A:()=>s});var n=r(4718),a=r(53966),o=r(799);class s{constructor(e,t,r){this.type="error",this.name=e,this.message=t?(0,o.V2)(t,r):"",this.details=r}toString(){const{name:e,message:t}=this;return`[${e}]: ${t}`}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,(e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.o8)(t)}catch(e){return"[object]"}}))}}catch(e){throw a.A.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s(e.name,e.message,e.details)}}},53966(e,t,r){r.d(t,{A:()=>i});var n=r(92602),a=r(51447),o=(r(44208),r(799));const s={info:0,warn:1,error:2,none:3};class i{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,i._loggers.set(this.module,this);const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=i.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){}static get test(){}static getLogger(e){return e="string"!=typeof e?e.declaredClass:e,i._loggers.get(e)||new i({module:e})}static{this._loggers=new Map}static{this._tickCounter=0}static{this._tickCounterScheduled=!1}static{this._throttlingDisabled=!1}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!i._throttlingDisabled){const n=function(...e){return(0,o.Wm)(JSON.stringify(e,(e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]"))}(r),a=this._loggedMessages[e].get(n);if("once"===t&&null!=a||"oncePerTick"===t&&a&&a>=i._tickCounter)return;this._loggedMessages[e].set(n,i._tickCounter),i._scheduleTickCounterIncrement()}for(const t of n.A.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;null!=r;){const t=r[e];if(null!=t)return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",c)}_matchLevel(e){const t=n.A.log.level||"warn";return s[this._parentWithMember("level",t)]<=s[e]}static _scheduleTickCounterIncrement(){i._tickCounterScheduled||(i._tickCounterScheduled=!0,Promise.resolve().then(()=>{i._tickCounter++,i._tickCounterScheduled=!1}))}}function c(e,t,...r){console[e](`[${(0,a.u3)(t)}]`,...r)}},87811(e,t,r){r.d(t,{A:()=>n});class n{static{this._m=2147483647}static{this._a=48271}static{this._c=0}constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}},4576(e,t,r){r.d(t,{Am:()=>s,Ho:()=>u,Ji:()=>o,MJ:()=>i,Mo:()=>w,Ru:()=>O,TF:()=>k,UT:()=>P,VO:()=>f,Xj:()=>d,Xy:()=>m,aI:()=>c,iv:()=>l,k4:()=>_,mW:()=>y,qh:()=>p,vW:()=>b,yc:()=>A});var n=r(21818),a=r(87811);const o=1.5;function s(e,t){return t?e.filter((e,r,n)=>n.findIndex(t.bind(null,e))===r):Array.from(new Set(e))}function i(e,t,r,n,a,o,s){if(null==e&&null==n)return!0;t=Math.max(0,t),a=Math.max(0,a),r=Math.max(0,r<0?(e?.length??0)+r:r),o=Math.max(0,o<0?(n?.length??0)+o:o);const i=r-t;if(null==e||null==n||i!==o-a)return!1;if(s){for(let r=0;r<i;r++)if(!s(e[t+r],n[a+r]))return!1}else for(let r=0;r<i;r++)if(e[t+r]!==n[a+r])return!1;return!0}function c(e,t,r){return i(e,0,e?.length??0,t,0,t?.length??0,r)}function f(){return(e,t)=>{if(null==e&&null==t)return!0;if(null==e||null==t||e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}}function l(e,t,r){let n,a;return r?(n=t.filter(t=>!e.some(e=>r(e,t))),a=e.filter(e=>!t.some(t=>r(t,e)))):(n=t.filter(t=>!e.includes(t)),a=e.filter(e=>!t.includes(e))),{added:n,removed:a}}function d(e){return e&&"number"==typeof e.length}function u(e,t){const r=e.length;if(0===r)return[];const n=[];for(let a=0;a<r;a+=t)n.push(e.slice(a,a+t));return n}class b{constructor(){this.last=0}}const h=new b;function p(e,t,r,n){n=n||h;const a=Math.max(0,n.last-10);for(let o=a;o<r;++o)if(e[o]===t)return n.last=o,o;const o=Math.min(a,r);for(let r=0;r<o;++r)if(e[r]===t)return n.last=r,r;return-1}function m(e,t,r,a){const o=r??e.length,s=p(e,(0,n.z)(t),o,a);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const g=new Set;function y(e,t,r=e.length,n=t.length,a,o){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);a=a||h;const s=Math.max(0,a.last-10);for(let t=s;t<r;++t)if(g.has(e[t])&&(o?.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<s;++t)if(g.has(e[t])&&(o?.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function w(e){return e?(v.seed=e,()=>v.getFloat()):Math.random}const v=new a.A;function _(e,t){if(!e)return e;const r=w(t);for(let t=e.length-1;t>0;t--){const n=Math.floor(r()*(t+1)),a=e[t];e[t]=e[n],e[n]=a}return e}function k(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}function O(e,t){return null!=e}function A(e){return Array.isArray(e)}function P(e,t){return e-t}},21818(e,t,r){function n(e){return e}r.d(t,{z:()=>n})},51447(e,t,r){r.d(t,{Lx:()=>c,eF:()=>f,eO:()=>i,io:()=>l,u3:()=>d,uW:()=>s});var n=r(44208);const a=new WeakMap;function o(e,t,r=!1){const n=`🛑 DEPRECATED - ${t}`;if(!r)return void e.warn(n);let o=a.get(e);o||(o=new Set,a.set(e,o)),o.has(t)||(o.add(t),e.warn(n))}function s(e,t,r={}){(0,n.A)("esri-deprecation-warnings")&&l(e,`Module: ${d(t)}`,r)}function i(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{moduleName:n}=r;l(e,"Function: "+(n?d(n)+"::":"")+t+"()",r)}}function c(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{moduleName:n}=r;l(e,"Property: "+(n?d(n)+"::":"")+t,r)}}function f(e,t,r={}){(0,n.A)("esri-deprecation-warnings")&&l(e,`Multiple argument constructor: ${t=d(t)}`,{warnOnce:!0,replacement:`new ${t}({ <your properties here> })`,...r})}function l(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{replacement:n,version:a,see:s,warnOnce:i}=r;let c=t;if(n&&(c+=`\n\t🛠️ Replacement: ${n}`),a&&(c+=`\n\t⚙️ Version: ${a}`),s)if(Array.isArray(s)){c+="\n\t🔗 See for more details:";for(const e of s)c+=`\n\t\t${e}`}else c+=`\n\t🔗 See ${s} for more details.`;o(e,c,i)}}function d(e){return e.startsWith("esri.")?e.replace("esri.","@arcgis/core/").replaceAll(".","/"):e}},37955(e,t,r){r.d(t,{Oo:()=>i,on:()=>s,wb:()=>a});var n=r(36563);function a(e){return function(e){return null!=e&&"object"==typeof e&&"on"in e&&"function"==typeof e.on}(e)||o(e)}function o(e){return null!=e&&"object"==typeof e&&"addEventListener"in e&&"function"==typeof e.addEventListener}function s(e,t,r){if(!a(e))throw new TypeError("target is not a Evented or EventTarget object");return o(e)?function(e,t,r,a){if(Array.isArray(t)){const o=t.slice();for(const t of o)e.addEventListener(t,r,a);return(0,n.hA)(()=>{for(const t of o)e.removeEventListener(t,r,a)})}return e.addEventListener(t,r,a),(0,n.hA)(()=>e.removeEventListener(t,r,a))}(e,t,r):e.on(t,r)}function i(e,t,r){if(!a(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const n=s(e,t,t=>{n.remove(),r.call(e,t)});return n}},36563(e,t,r){r.d(t,{hA:()=>a,rE:()=>s,vE:()=>o});const n={remove:()=>{}};function a(e){return e?{remove(){e&&(e(),e=void 0)}}:n}function o(e){return a(()=>function(e){e.forEach(e=>e?.remove())}(e))}function s(e){return a(()=>e?.abort())}},44208(e,t,r){r.d(t,{A:()=>o});const n=globalThis,a={...n.esriConfig?.has};function o(e){return"function"==typeof a[e]?a[e]=a[e](n):a[e]}o.add=(e,t,r,n)=>{(n||void 0===a[e])&&(a[e]=t),r&&o(e)},o.cache=a,o.add("big-integer-warning-enabled",!0),o.add("esri-deprecation-warnings",!0),o.add("esri-tests-disable-screenshots",!1),o.add("esri-tests-use-full-window",!1),o.add("esri-tests-post-to-influx",!0),o.add("esri-cim-animations-enable-status","enabled"),o.add("esri-cim-animations-spotlight",!1),o.add("esri-cim-animations-freeze-time",!1),(()=>{o.add("host-webworker",void 0!==n.WorkerGlobalScope&&self instanceof n.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(o.add("host-browser",e),o.add("host-node",!("object"!=typeof n.process||!n.process.versions?.node||!n.process.versions.v8)),o.add("dom",e),o("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(o.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),o.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),o.add("khtml",r.includes("Konqueror")?n:void 0),o.add("edge",parseFloat(t.split("Edge/")[1])||void 0),o.add("opr",parseFloat(t.split("OPR/")[1])||void 0),o.add("webkit",!o("wp")&&!o("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),o.add("chrome",!o("edge")&&!o("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),o.add("android",!o("wp")&&parseFloat(t.split("Android ")[1])||void 0),o.add("safari",!r.includes("Safari")||o("wp")||o("chrome")||o("android")||o("edge")||o("opr")?void 0:parseFloat(r.split("Version/")[1])),o.add("mac",r.includes("Macintosh")),!o("wp")&&/(iPhone|iPod|iPad)/.test(t)){const e=RegExp.$1.replace(/P/,"p"),r=/OS ([\d_]+)/.test(t)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replaceAll("_",""));o.add(e,n),o.add("ios",n)}o("webkit")||(!t.includes("Gecko")||o("wp")||o("khtml")||o("edge")||o.add("mozilla",n),o("mozilla")&&o.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(n.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&o.add("esri-mobile",t),r&&o.add("esri-iPhone",r),o.add("esri-geolocation",!!navigator.geolocation)}o.add("esri-wasm","WebAssembly"in n),o.add("esri-performance-mode-frames-between-render",20),o.add("esri-force-performance-mode",!1),o.add("esri-shared-array-buffer",()=>{const e="SharedArrayBuffer"in n,t=!1===n.crossOriginIsolated;return e&&!t}),o.add("wasm-simd",()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]))),o.add("esri-atomics","Atomics"in n),o.add("esri-workers","Worker"in n),o.add("web-feat:cache","caches"in n),o.add("esri-workers-arraybuffer-transfer",!o("safari")||Number(o("safari"))>=12),o.add("workers-pool-size",8),o.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),o.add("featurelayer-simplify-payload-size-factors",[1,1,4]),o.add("featurelayer-animation-enabled",!0),o.add("featurelayer-snapshot-enabled",!0),o.add("featurelayer-snapshot-initial-tolerance",0),o.add("featurelayer-snapshot-point-min-threshold",8e4),o.add("featurelayer-snapshot-point-max-threshold",4e5),o.add("featurelayer-snapshot-multipoint-min-threshold",2e4),o.add("featurelayer-snapshot-multipoint-max-threshold",1e5),o.add("featurelayer-snapshot-polygon-min-threshold",2e3),o.add("featurelayer-snapshot-polygon-max-threshold",2e3),o.add("featurelayer-snapshot-polyline-min-threshold",2e3),o.add("featurelayer-snapshot-polyline-max-threshold",2e3),o.add("featurelayer-snapshot-max-vertex-count",25e4),o.add("featurelayer-snapshot-non-hosted-exceedslimit-enabled",!0),o.add("featurelayer-snapshot-concurrency",4),o.add("featurelayer-snapshot-allow-editable",!1),o.add("featurelayer-snapshot-coverage",.1),o.add("featurelayer-query-max-depth",4),o.add("featurelayer-query-max-page-size",8e3),o.add("featurelayer-query-pausing-enabled",!1),o.add("featurelayer-query-tile-concurrency",4),o.add("featurelayer-query-tile-max-features",6e5),o.add("featurelayer-advanced-symbols",!1),o.add("featurelayer-pbf",!0),o.add("featurelayer-pbf-statistics",!1),o.add("featurelayer-pbf-true-curves",!0),o.add("feature-layers-workers",!0),o.add("feature-polyline-generalization-factor",1),o.add("featurelayer-relative-time-queries-enabled",!0),o.add("featurelayer-relative-time-queries-bin-window-public",1),o.add("featurelayer-relative-time-queries-bin-window-private",60),o.add("parquetlayer-full-query-feature-count",2e4),o.add("parquetlayer-hittest-max-feature-count",1),o.add("parquetlayer-persistence-enabled",!1),o.add("parquetlayer-cache-enabled",!0),o.add("mapview-transitions-duration",200),o.add("mapview-essential-goto-duration",200),o.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),o.add("mapserver-pbf-version-support",10.81),o.add("mapservice-popup-identify-max-tolerance",20),o.add("request-queue-concurrency-global",50),o.add("request-queue-concurrency-hosted",16),o.add("request-queue-concurrency-non-hosted",6),o.add("curve-densification-coarse-segments",128),o.add("curve-densification-max-segments",2e3),o.add("curve-densification-min-segments",3),o.add("curve-densification-pixel-deviation",.5),o.add("view-readyState-waiting-delay",1e3),o.add("gradient-depth-bias",.01),o.add("gradient-depth-epsilon",1e-8),o.add("enable-feature:esri-compress-textures",!0),o.add("enable-feature:basemap-groundlayers",!0),o.add("enable-feature:oit-ground",!0),o.add("enable-feature:im-shading",!0),!o("host-webworker")&&o("host-browser")&&(o.add("esri-csp-restrictions",()=>{try{new Function}catch{return!0}return!1}),o.add("esri-url-encodes-apostrophe",()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")}))})()},4718(e,t,r){r.d(t,{Nb:()=>c,TU:()=>i,aI:()=>b,gh:()=>h,o8:()=>s,oy:()=>o});var n=r(4576),a=r(34275);function o(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&o(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function s(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=u(e);if(null!=t)return t;if(c(e))return e.clone();if(f(e))return e.map(s);if(l(e))throw new Error("Trying to clone an unclonable Accessor instance");const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=s(e[t]);return r}function i(e,t){if(!e||"object"!=typeof e||"function"==typeof e||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const r=u(e);if(null!=r)return r;if(f(e)){let r=!0;const n=e.map(e=>{const n=i(e,t);return null!=e&&null==n&&(r=!1),n});return r?n:null}if(c(e))return e.clone(t);if(e instanceof File||e instanceof Blob)return e;if(l(e))return null;const n=new(0,Object.getPrototypeOf(e).constructor);for(const t of Object.getOwnPropertyNames(e)){const r=e[t],a=i(r);if(null!=r&&null==a)return null;n[t]=a}return n}function c(e){return"function"==typeof e.clone}function f(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function l(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function u(e){if((0,a.dz)(e)||(0,a.mg)(e)||(0,a.UR)(e)||(0,a.IY)(e)||(0,a.jq)(e)||(0,a._G)(e)||(0,a.XJ)(e)||(0,a.vZ)(e)||(0,a.aI)(e))return e.slice();if(e instanceof Date)return new Date(e);if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;for(const[r,n]of e)t.set(r,s(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(s(r));return t}return null}function b(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof e?.getTime&&"function"==typeof t?.getTime&&e.getTime()===t.getTime()||!1}function h(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.aI)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!d(e)&&d(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},97768(e,t,r){function n(e,t){if(null==e)throw new Error(t??"value is None")}function a(e){return e?.destroy(),null}function o(e){return e?.dispose(),null}function s(e){return e?.remove(),null}function i(e){return e?.abort(),null}function c(e){return e?.release(),null}function f(e,t,r){return null!=e&&null!=t?null!=r?r(e,t):e.equals(t):e===t}function l(e,t){let r;return e.some((e,n)=>(r=t(e,n),null!=r)),r??void 0}r.d(t,{CM:()=>f,DC:()=>i,Gz:()=>c,Lw:()=>n,Pb:()=>l,WD:()=>o,pR:()=>a,xt:()=>s})},93637(e,t,r){r.d(t,{$N:()=>a,a4:()=>d,i7:()=>l,i8:()=>i,sM:()=>s,wc:()=>o});var n=r(4718);function a(e,t,r=!1){return f(e,t,r)}function o(e,t){if(null!=t)return t[e]||c(e.split("."),!1,t)}function s(e,t,r){const n=e.split("."),a=n.pop(),o=c(n,!0,r);o&&a&&(o[a]=t)}function i(e,t){if(null==e&&null==t)return!1;if(null==e)return!0;if(null==t)return!0;if("object"==typeof e){if(Array.isArray(e)){const r=t;if(e.length!==r.length)return!0;for(let t=0;t<e.length;t++)if(i(e[t],r[t]))return!0;return!1}if(Object.keys(e).length!==Object.keys(t).length)return!0;for(const r in e)if(i(e[r],t[r]))return!0;return!1}return e!==t}function c(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function f(e,t,r){return t?Object.keys(t).reduce((e,a)=>{if("__proto__"===a)return e;let o=e[a],s=t[a];return o===s?e:void 0===o?(e[a]=(0,n.o8)(s),e):(Array.isArray(s)||Array.isArray(e)?(o=o?Array.isArray(o)?e[a]=o.slice():e[a]=[o]:e[a]=[],s&&(Array.isArray(s)||(s=[s]),r?s.forEach(e=>{o.includes(e)||o.push(e)}):e[a]=s.slice())):s&&"object"==typeof s?e[a]=f(o,s,r):e.hasOwnProperty(a)&&!t.hasOwnProperty(a)||(e[a]=s),e)},e||{}):e}function l(e,t){for(const r of Object.entries(e))if(t===r[1])return r[0]}function d(e,t){return Object.values(e).includes(t)}},74887(e,t,r){r.d(t,{Pl:()=>O,Ol:()=>k,nA:()=>_,NK:()=>f,Tw:()=>x,sg:()=>S,Lx:()=>v,QZ:()=>w,zf:()=>y,G4:()=>u,$X:()=>A,u7:()=>p,NY:()=>m,hn:()=>M,Mq:()=>d,QP:()=>b,Te:()=>l,jH:()=>h,NO:()=>j,z7:()=>P,qr:()=>g});var n=r(36563);const a=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return(0,n.hA)(()=>o.clearTimeout(r))}});var o,s=r(49186),i=r(37955),c=(r(53966),r(97768));function f(e="Aborted"){return new s.A("AbortError",e)}function l(e,t="Aborted"){if(u(e))throw f(t)}function d(e){return e instanceof AbortSignal?e:e?.signal??void 0}function u(e){const t=d(e);return null!=t&&t.aborted}function b(e){if(y(e))throw e}function h(e){if(!y(e))throw e}function p(e,t){const r=d(e);if(null!=r){if(!r.aborted)return(0,i.Oo)(r,"abort",()=>t());t()}}function m(e,t){const r=d(e);if(null!=r)return l(r),(0,i.Oo)(r,"abort",()=>t(f()))}function g(e,t){return null==d(t)?e:new Promise((r,n)=>{let a=p(t,()=>n(f()));const o=()=>{a=(0,c.xt)(a)};e.then(o,o),e.then(r,n)})}function y(e){return"AbortError"===e?.name}async function w(e){try{return await e}catch(e){if(!y(e))throw e;return}}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map(t=>e[t]),n=await v(r),a={};return t.map((e,t)=>a[e]=n[t]),a}const t=e;return Promise.allSettled(t).then(e=>Array.from(t,(t,r)=>{const n=e[r];return"fulfilled"===n.status?{promise:t,value:n.value}:{promise:t,error:n.reason}}))}async function _(e){return(await Promise.allSettled(e)).filter(e=>"fulfilled"===e.status).map(e=>e.value)}async function k(e){return(await Promise.allSettled(e)).filter(e=>"rejected"===e.status).map(e=>e.reason)}function O(e,t=void 0,r){const n=new AbortController;return p(r,()=>n.abort()),new Promise((r,a)=>{let o=setTimeout(()=>{o=0,r(t)},e);p(n,()=>{o&&(clearTimeout(o),a(f()))})})}function A(e){return e&&"function"==typeof e.then}function P(e){return A(e)?e:Promise.resolve(e)}function S(e,t=-1){let r,n,a,o,s=null;const i=(...c)=>{if(r){n=c,o&&o.reject(f()),o=x();const e=o.promise;if(s){const e=s;s=null,e.abort()}return e}if(a=o||x(),o=null,t>0){const n=new AbortController;r=P(e(...c,n.signal));const a=r;O(t).then(()=>{r===a&&(o?n.abort():s=n)})}else r=1,r=P(e(...c));const l=()=>{const e=n;n=a=r=s=null,null!=e&&i(...e)},d=r,u=a;return d.then(l,l),d.then(u.resolve,u.reject),u.promise};return i}function x(){let e,t;const r=new Promise((r,n)=>{e=r,t=n}),n=t=>{e(t)};return n.resolve=t=>e(t),n.reject=e=>t(e),n.timeout=(e,t)=>a.setTimeout(()=>n.reject(t),e),n.promise=r,n}function M(e,t){t.then(e.resolve,e.reject)}async function j(e){await Promise.resolve(),l(e)}},799(e,t,r){r.d(t,{Cj:()=>c,HC:()=>s,V2:()=>i,Wm:()=>f,_e:()=>d});var n=r(93637);const a=/\{([^}]+)\}/g;function o(e){return e??""}function s(e,t){return t?e.replaceAll(a,"object"==typeof t?(e,r)=>o((0,n.wc)(r,t)):(e,r)=>o(t(r))):e}function i(e,t){return e.replaceAll(/\$\{([^\s:}]*)(?::([^\s:}]+))?\}/g,(e,r)=>""===r?"$":((0,n.wc)(r,t)??"").toString())}function c(e,t){return e.replaceAll(/([.$?*|{}()[\]\\/+\-^])/g,e=>t?.includes(e)?e:`\\${e}`)}function f(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}let l;function d(e){return l??=new DOMParser,l.parseFromString(e||"","text/html").body.innerText||""}},12195(e,t,r){function n(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}r.d(t,{W:()=>n})},34275(e,t,r){function n(e){return e instanceof ArrayBuffer}function a(e){return"Int8Array"===e?.constructor?.name}function o(e){return"Uint8Array"===e?.constructor?.name}function s(e){return"Uint8ClampedArray"===e?.constructor?.name}function i(e){return"Int16Array"===e?.constructor?.name}function c(e){return"Uint16Array"===e?.constructor?.name}function f(e){return"Int32Array"===e?.constructor?.name}function l(e){return"Uint32Array"===e?.constructor?.name}function d(e){return"Float16Array"===e?.constructor?.name}function u(e){return"Float32Array"===e?.constructor?.name}function b(e){return"Float64Array"===e?.constructor?.name}function h(e){return"buffer"in e}r.d(t,{IY:()=>i,JI:()=>m,LW:()=>d,PI:()=>w,UR:()=>s,XJ:()=>l,_G:()=>f,a3:()=>y,aI:()=>b,dk:()=>g,dz:()=>a,h2:()=>v,iu:()=>h,jq:()=>c,mg:()=>o,mw:()=>n,vZ:()=>u,y9:()=>p});const p=1024;function m(e){return b(e)||u(e)||f(e)||i(e)||a(e)}function g(e){return b(e)||u(e)}function y(e){return b(e)?179769e303:d(e)?65504:u(e)?3402823e32:l(e)?4294967295:c(e)?65535:o(e)||s(e)?255:f(e)?2147483647:i(e)?32767:a(e)?127:256}const w=-32768,v=-2147483648},84952(e,t,r){r.d(t,{$1:()=>Y,$z:()=>G,An:()=>S,BQ:()=>ae,DB:()=>K,FL:()=>J,FX:()=>L,Hg:()=>te,Il:()=>ue,Ln:()=>me,N9:()=>ne,S8:()=>H,T1:()=>he,UC:()=>be,V1:()=>B,Xq:()=>A,Zo:()=>_e,_0:()=>Oe,a6:()=>ve,b8:()=>T,e7:()=>de,fj:()=>D,gd:()=>P,hf:()=>pe,lJ:()=>X,lM:()=>ie,m3:()=>se,nM:()=>le,oP:()=>V,oy:()=>E,r$:()=>ee,rs:()=>we,s0:()=>v,s2:()=>z,sC:()=>U,s_:()=>j,tk:()=>re,ut:()=>q,w8:()=>Q,x0:()=>M,xw:()=>ke,yM:()=>C,zf:()=>x,zi:()=>ye,zs:()=>N});var n=r(92602),a=r(4576),o=r(49186),s=r(53966),i=r(12195),c=r(39131),f=r(26306);const l=n.A.request,d="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,b=/^\s*http:/i,h=/^\s*https:/i,p=/^\s*file:/i,m=/:\d+$/,g=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,y=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),w=new RegExp("^((([^[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^[:]*))(:([0-9]+))?$");class v{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=this.uri.match(y);this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=this.authority.match(w),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const _={};let k=new v(n.A.applicationUrl);let O=function(){const e=k.path,t=e.slice(0,e.lastIndexOf("/")+1);return`${k.scheme}://${k.host}${null!=k.port?`:${k.port}`:""}${t}`}();const A=()=>k,P=()=>O;function S(e){if(!e)return null;const t={path:null,query:null},r=new v(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.slice(0,n),t.query=x(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.slice(0,t.path.length-(r.fragment.length+1)))),t}function x(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,a;t<0?(n=decodeURIComponent(e),a=""):(n=decodeURIComponent(e.slice(0,t)),a=decodeURIComponent(e.slice(t+1)));let o=r[n];"string"==typeof o&&(o=r[n]=[o]),Array.isArray(o)?o.push(a):r[n]=a}return r}function M(e,t){return e?t&&"function"==typeof t?Object.keys(e).map(r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r]))).join("&"):Object.keys(e).map(r=>{const n=e[r];if(null==n)return"";const a=encodeURIComponent(r)+"=",o=t?.[r];return o?a+encodeURIComponent(o(n)):Array.isArray(n)?n.map(e=>(0,i.W)(e)?a+encodeURIComponent(JSON.stringify(e)):a+encodeURIComponent(e)).join("&"):(0,i.W)(n)?a+encodeURIComponent(JSON.stringify(n)):a+encodeURIComponent(n)}).filter(e=>e).join("&"):""}function j(e=!1){let t,r=l.proxyUrl;if("string"==typeof e){t=se(e);const n=N(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw s.A.getLogger("esri.core.urlUtils").warn(d),new o.A("urlUtils:proxy-not-set",d);return t&&ce()&&(r=ie(r)),S(r)}function C(e,t=!1){const r=N(e);let n,a;if(r){const e=W(r.proxyUrl);n=e.path,a=e.query?x(e.query):null}else if(t){const t=j(e);n=t.path,a=t.query}if(n){const t=S(e);e=n+"?"+t.path;const r=M({...a,...t.query});r&&(e=`${e}?${r}`)}return e}const $={path:"",query:""};function W(e){const t=e.indexOf("?");return-1!==t?($.path=e.slice(0,t),$.query=e.slice(t+1)):($.path=e,$.query=null),$}function I(e){return(e=fe(e=ue(e=W(e).path),!0)).toLowerCase()}function E(e){const t={proxyUrl:e.proxyUrl,urlPrefix:I(e.urlPrefix)},r=l.proxyRules,n=t.urlPrefix;let a=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(n.startsWith(t)){if(n.length===t.length)return-1;a=e;break}t.startsWith(n)&&(a=e+1)}return r.splice(a,0,t),a}function N(e){const t=l.proxyRules,r=I(e);for(let e=0;e<t.length;e++)if(r.startsWith(t[e].urlPrefix))return t[e]}function T(e,t){if(!e||!t)return!1;e=R(e),t=R(t);const r=(0,c.py)(e),n=(0,c.py)(t);return null!=r&&null!=n?r.portalHostname===n.portalHostname:null==r&&null==n&&L(e,t,!0)}function q(e,t){return e=R(e),t=R(t),fe(e)===fe(t)}function R(e){const t=(e=H(e)).indexOf("/sharing");return t>0?e.slice(0,t):e.replace(/\/+$/,"")}function U(e,t=l.interceptors){const r=t=>t instanceof RegExp?t.test(e):"string"==typeof t?e.startsWith(t):null==t;if(t)for(const e of t)if(Array.isArray(e.urls)){if(e.urls.some(r))return e}else if(r(e.urls))return e;return null}function L(e,t,r=!1){if(!e||!t)return!1;const n=ge(e),a=ge(t);return!(!r&&n.scheme!==a.scheme)&&null!=n.host&&null!=a.host&&n.host.toLowerCase()===a.host.toLowerCase()&&n.port===a.port}function J(e){if("string"==typeof e){if(!V(e))return!0;e=ge(e)}if(L(e,k))return!0;const t=l.trustedServers||[];for(let r=0;r<t.length;r++){const n=F(t[r]);for(let t=0;t<n.length;t++)if(L(e,n[t]))return!0}return!1}function F(e){return _[e]||(oe(e)||ae(e)?_[e]=[new v(z(e))]:_[e]=[new v(`http://${e}`),new v(`https://${e}`)]),_[e]}function z(e,t=O,r){return ae(e)?r?.preserveProtocolRelative?e:"http"===k.scheme&&k.authority===G(e).slice(2)?`http:${e}`:`https:${e}`:oe(e)?e:D(e.startsWith("/")?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e)}function B(e,t=O,r){if(null==e||!V(e))return e;const n=H(e),a=n.toLowerCase(),o=H(t).toLowerCase().replace(/\/+$/,""),s=r?H(r).toLowerCase().replace(/\/+$/,""):null;if(s&&!o.startsWith(s))return e;const i=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=i(a,"/",a.indexOf("//")+2),f=-1;for(;a.slice(0,c+1)===o.slice(0,c)+"/"&&(f=c+1,c!==a.length);)c=i(a,"/",c+1);if(-1===f)return e;if(s&&f<s.length)return e;e=n.slice(f);const l=o.slice(f-1).replaceAll(/[^/]+/g,"").length;if(l>0)for(let t=0;t<l;t++)e=`../${e}`;else e=`./${e}`;return e}function H(e){return function(e){const t=l.httpsDomains;if(!function(e){return null!=e&&b.test(e)||"http"===k.scheme&&ae(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),m.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===k.scheme&&n===k.authority&&!g.test(e)||(ce()&&n===k.authority||t&&t.some(e=>n===e||n.endsWith(`.${e}`))||ce()&&!N(e))&&(e=ie(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=W(e);e=(e=t.path.replaceAll(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=z(e=e.trim()))))}function D(...e){const t=e.filter(a.Ru);if(!t?.length)return;const r=[];if(V(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&p.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else t[0].startsWith("/")&&r.push("");const n=t.reduce((e,t)=>t?e.concat(t.split("/")):e,[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function G(e,t=!1){if(null==e||Q(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&ae(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=fe(e,!0)),e}function V(e){return ae(e)||oe(e)}function Q(e){return null!=e&&e.startsWith("blob:")}function K(e){return null!=e&&e.startsWith("data:")}function X(e){const t=ee(e);return t?.isBase64?(0,f.M)(t.data):null}function Y(e){return(0,f.Y)(e).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}const Z=/^data:(.*?)(;base64)?,(.*)$/;function ee(e){const t=e.match(Z);if(!t)return null;const[,r,n,a]=t;return{mediaType:r,isBase64:!!n,data:a}}function te(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}async function re(e){return(await fetch(e)).blob()}function ne(e){const t=X(e);if(!t)return null;const r=ee(e);return new Blob([t],{type:r.mediaType})}function ae(e){return null!=e&&e.startsWith("/")&&"/"===e[1]}function oe(e){return null!=e&&u.test(e)}function se(e){return null!=e&&h.test(e)||"https"===k.scheme&&ae(e)}function ie(e){return ae(e)?`https:${e}`:e.replace(b,"https:")}function ce(){return"https"===k.scheme}function fe(e,t=!1){return ae(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&e.startsWith("/")&&"/"===e[1]&&(e=e.slice(2)),e)}function le(e){let t=0;if(V(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function de(e,t){if(!e)return"";const r=S(e).path.replace(/\/+$/,""),n=r.slice(r.lastIndexOf("/")+1);if(!t?.length)return n;const a=new RegExp(`\\.(${t.join("|")})$`,"i");return n.replace(a,"")}function ue(e){return e.endsWith("/")?e:`${e}/`}function be(e){return e.replace(/\/+$/,"")}function he(e,t,r){if(!(t&&r&&e&&V(e)))return e;const n=e.indexOf("//"),a=e.indexOf("/",n+2),o=e.indexOf(":",n+2),s=Math.min(a<0?e.length:a,o<0?e.length:o);return e.slice(n+2,s).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(s)}`}function pe(e,t){const r=new URL(e);return r.host=t,r.port&&!m.test(t)&&(r.port=""),r.toString()}function me(e){return new URL(e).host}function ge(e){return"string"==typeof e?new v(z(e)):(e.scheme||(e.scheme=k.scheme),e)}function ye(e,t){const r=S(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function we(e,t,r){const n=S(e),a=n.query||{};return a[t]=String(r),`${n.path}?${M(a)}`}function ve(e,t){if(!t)return e;const r=S(e),n=r.query||{};for(const[e,r]of Object.entries(t))null!=r&&(n[e]=r);const a=M(n);return a?`${r.path}?${a}`:r.path}function _e(e){if(null==e)return null;const t=e.match(Ae);return t?t[2]:null}function ke(e){if(null==e)return null;const t=e.match(Ae);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}async function Oe(e){return"string"==typeof e?ee(e)??{data:e}:new Promise((t,r)=>{const n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(ee(n.result)),n.onerror=e=>r(e)})}const Ae=/([^.]*)\.([^/]*)$/},52268(e,t,r){function n(e,t){return new Proxy({},{get:(r,n,a)=>(...r)=>{let a,o;const s=r[r.length-1];return function(e){return"object"==typeof e&&!Array.isArray(e)&&null!=e&&("signal"in e||"transferList"in e||0===Object.keys(e).length)}(s)&&(a=s.signal,o=s.transferList,r.pop()),e.apply(t?`${t}.${n.toString()}`:n.toString(),r,{transferList:o,signal:a})}})}r.d(t,{L:()=>n})},61322(e,t,r){r.r(t),r.d(t,{default:()=>v});var n=r(70333),a=r(49186),o=r(37955),s=r(36563),i=r(97768),c=r(74887),f=r(52268);const l={CSVSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(2109)]).then(r.bind(r,25209)),EdgeProcessingWorker:()=>Promise.all([r.e(7380),r.e(3607)]).then(r.bind(r,71936)),ElevationSamplerWorker:()=>Promise.all([r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(8487),r.e(2455)]).then(r.bind(r,38419)),FeaturePipelineWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9953),r.e(8065),r.e(8303),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(893),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(7733),r.e(5859),r.e(6682),r.e(2330),r.e(3443),r.e(4104)]).then(r.bind(r,94104)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(893),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(2330),r.e(88)]).then(r.bind(r,20401)),FlowWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(9616)]).then(r.bind(r,49616)),GaussianSplatSortWorker:()=>r.e(5856).then(r.bind(r,35856)),MeasurementWorker:()=>Promise.all([r.e(3661),r.e(1878),r.e(8885),r.e(5756),r.e(3299),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(1366)]).then(r.bind(r,69396)),GeoJSONSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(6368)]).then(r.bind(r,71202)),LercWorker:()=>r.e(7087).then(r.bind(r,57087)),Lyr3DWorker:()=>Promise.all([r.e(2741),r.e(2772)]).then(r.bind(r,72772)),MemorySourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(4948)]).then(r.bind(r,29432)),PBFDecoderWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(9679)]).then(r.bind(r,39078)),PanoramicMeshWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(4314)]).then(r.bind(r,96982)),ParquetSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(7733),r.e(6682),r.e(7867)]).then(r.bind(r,48459)),PointCloudWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(6269),r.e(7005),r.e(3082)]).then(r.bind(r,64798)),RasterWorker:()=>Promise.all([r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(8610),r.e(7373),r.e(9235),r.e(2496)]).then(r.bind(r,63966)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(9466),r.e(6269),r.e(7380),r.e(9535)]).then(r.bind(r,70491)),SceneLayerWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9953),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(8574)]).then(r.bind(r,18003)),TextureCompressionWorker:()=>Promise.all([r.e(2741),r.e(5902)]).then(r.bind(r,95902)),WFSSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(5781)]).then(r.bind(r,33771)),WorkerTileHandler:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(5859),r.e(5013),r.e(3443),r.e(3875)]).then(r.bind(r,36849)),arcadeGeometryOperatorsWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(5750)]).then(r.bind(r,1123)),statsWorker:()=>Promise.all([r.e(6408),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(6269),r.e(4560),r.e(7445),r.e(3832),r.e(3009)]).then(r.bind(r,33009)),ImageMeasurementWorker:()=>Promise.all([r.e(6408),r.e(3661),r.e(1878),r.e(8885),r.e(5756),r.e(3299),r.e(1218),r.e(3508),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(8065),r.e(8303),r.e(4903),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(893),r.e(4800),r.e(812),r.e(3832),r.e(8610),r.e(9186),r.e(4341),r.e(1695),r.e(8434),r.e(1775)]).then(r.bind(r,68747))};var d=r(8341),u=r(18357);const{CLOSE:b,ABORT:h,INVOKE:p,RESPONSE:m,OPEN_PORT:g,ON:y}=d.Go;class w{constructor(e){this._invoke=e,this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._timer=null,this._process=this._process.bind(this)}push(e){e.type===h?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class v{static{this.kernelInfo={buildDate:u.$,fullVersion:n.ol,revision:u.u}}static{this.clients=new Map}static connect(e,t){const r=new MessageChannel;let n;n="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const a=new v(r.port1,{channel:r,client:n,schedule:t});return"object"==typeof n&&"remoteClient"in n&&(n.remoteClient=a),v.clients.set(a,n),r.port2}static loadWorker(e){const t=l[e];return t?t():Promise.resolve(null)}constructor(e,t,r,n){this._port=e,this._jobQueue=r,this._lowPriorityJobQueue=n,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new w(e=>this._onInvokeMessage(e)),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._maxNumberOfConcurrentJobs=t.maxNumberOfConcurrentJobs??2,this._port.addEventListener("message",this._onMessage),this._port.start()}close(){this._post({type:b}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){return this.apply(e,[t],r)}apply(e,t,r){const n=r?.signal,o=r?.transferList;if(!this._port)return Promise.reject(new a.A(d.T,`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const s=(0,d.Jc)();return new Promise((r,a)=>{if((0,c.G4)(n))return this._processWork(),void a((0,c.NK)());const f=(0,c.u7)(n,()=>{const e=this._outJobs.get(s);e&&(this._outJobs.delete(s),this._processWork(),(0,i.xt)(e.abortHandle),this._post({type:h,jobId:s}),a((0,c.NK)()))}),l={resolve:r,reject:a,abortHandle:f,debugInfo:e};this._outJobs.set(s,l),this._post({type:p,jobId:s,methodName:e,abortable:null!=n},t,o)})}createInvokeProxy(e){return(0,f.L)(this,e)}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:y,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),(0,s.hA)(()=>{r.port1.postMessage({type:b}),r.port1.close(),r.port1.removeEventListener("message",n)})}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:g,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=this._maxNumberOfConcurrentJobs)return;const e=this._jobQueue?.pop()??this._lowPriorityJobQueue?.pop();if(!e)return;const{methodName:t,data:r,invokeOptions:n,resolver:a}=e;this.apply(t,r,n).then(e=>a.resolve(e)).catch(e=>a.reject(e))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach(e=>{(0,i.xt)(e.abortHandle),e.reject((0,c.NK)(`Worker closing, aborting job calling '${e.debugInfo}'`))}),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=null,this._client=null,this._schedule=null,this._onMessage=null,this._channel=null,this._jobQueue=void 0,this._invokeQueue=void 0,this._lowPriorityJobQueue=void 0}_onMessage(e){null!=this._schedule?this._schedule(()=>this._processMessage(e,!0)):this._processMessage(e,!1)}_processMessage(e,t){const r=(0,d.VI)(e);if(r)switch(r.type){case m:this._onResponseMessage(r);break;case p:t?this._onInvokeMessage(r):this._invokeQueue.push(r);break;case h:this._onAbortMessage(r);break;case b:this._onCloseMessage();break;case g:this._onOpenPortMessage(r);break;case y:this._onOnMessage(r)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&v.clients.get(this)===e&&e.destroy(),v.clients.delete(this),e?.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n=[],abortable:a}=e,o=a?new AbortController:null,s=this._inJobs;let i,f=this._client,l=f[t];try{if(!l&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)f=f[e[t]],l=f[e[t+1]]}if("function"!=typeof l)throw new TypeError(`${t} is not a function`);n.push({client:this,signal:o?o.signal:null}),i=l.apply(f,n)}catch(e){return void this._post({type:m,jobId:r,error:(0,d.mF)(e)})}(0,c.$X)(i)?(s.set(r,{controller:o,promise:i}),i.then(e=>{s.has(r)&&(s.delete(r),this._post({type:m,jobId:r},e))},e=>{s.has(r)&&(s.delete(r),(0,c.zf)(e)||this._post({type:m,jobId:r,error:(0,d.mF)(e||{message:`Error encountered at method ${t}`})}))})):this._post({type:m,jobId:r},i)}_onOpenPortMessage(e){new v(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,e=>{t.postMessage(e)}),n=(0,o.on)(e.port,"message",e=>{const a=(0,d.VI)(e);a?.type===b&&(n.remove(),r.remove(),t.close())})}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,o=this._outJobs;if(!o.has(t))return;const s=o.get(t);o.delete(t),this._processWork(),(0,i.xt)(s.abortHandle),r?s.reject(a.A.fromJSON(JSON.parse(r))):s.resolve(n)}_post(e,t,r){return(0,d.u1)(this._port,e,t,r)}}},8341(e,t,r){r.d(t,{Go:()=>s,Jc:()=>c,T:()=>o,VI:()=>d,mF:()=>f,oV:()=>b,u1:()=>l});var n=r(44208),a=r(74887);const o="worker:port-closed",s={HANDSHAKE:0,OPEN:1,OPENED:2,RESPONSE:3,INVOKE:4,ABORT:5,CLOSE:6,OPEN_PORT:7,ON:8};let i=0;function c(){return i++}function f(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function l(e,t,r,n){if(t.type===s.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==s.INVOKE&&t.type!==s.RESPONSE)return void e.postMessage(t);let a;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(a=u(n),t.data=r):(a=u(r.transferList),t.data=r.result),a?e.postMessage(t,a):e.postMessage(t)}function d(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!e?.length)return null;if((0,n.A)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter(e=>!function(e){return e instanceof ArrayBuffer||"ArrayBuffer"===e?.constructor?.name}(e));return t.length?t:null}async function b(e){try{return await e}catch(e){const t=e?.name===o;if(!(0,a.zf)(e)&&!t)throw e;return}}},70333(e,t,r){r.d(t,{Aq:()=>c,Y3:()=>f,id:()=>s,ol:()=>i,rE:()=>o});var n=r(44208),a=r(84952);Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const o="5.1";let s,i=o;function c(e){s=e}function f(e){const t=s?.findCredential(e);return t?.token?(0,a.rs)(e,"token",t.token):e}i="5.1.0-next.25",(0,n.A)("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),(0,n.A)("host-webworker")},39131(e,t,r){r.d(t,{$E:()=>s,py:()=>o,qG:()=>i});const n=/^https:\/\/([a-z\d-]+)(\.maps([^.]*))?\.arcgis\.com/i,a={devext:{customBaseUrl:"mapsdevext.arcgis.com",portalHostname:"devext.arcgis.com"},qaext:{customBaseUrl:"mapsqa.arcgis.com",portalHostname:"qaext.arcgis.com"},www:{customBaseUrl:"maps.arcgis.com",portalHostname:"www.arcgis.com"}};function o(e){const t=e?.match(n);if(!t)return null;const[,r,o,s]=t;if(!r)return null;let i=null,c=null,f=null;const{devext:l,qaext:d,www:u}=a;if(o)if(i=r,s)switch(s.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:f}=l);break;case"qa":({customBaseUrl:c,portalHostname:f}=d);break;default:return null}else({customBaseUrl:c,portalHostname:f}=u);else switch(r.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:f}=l);break;case"qaext":({customBaseUrl:c,portalHostname:f}=d);break;case"www":({customBaseUrl:c,portalHostname:f}=u);break;default:return null}return{customBaseUrl:c,isPortal:!1,portalHostname:f,urlKey:i}}function s(e){return!!e&&/\/(sharing|usrsvcs)\/(appservices|servers)\//i.test(e)}function i(e){const t=/^https?:\/\/(?:cdn|[a-z\d-]+\.maps)\.arcgis\.com/i,r=/^https?:\/\/(?:cdndev|[a-z\d-]+\.mapsdevext)\.arcgis\.com/i,n=/^https?:\/\/(?:cdnqa|[a-z\d-]+\.mapsqa)\.arcgis\.com/i;return t.test(e)?e=e.replace(t,"https://www.arcgis.com"):r.test(e)?e=e.replace(r,"https://devext.arcgis.com"):n.test(e)&&(e=e.replace(n,"https://qaext.arcgis.com")),e}},26306(e,t,r){function n(e){const t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r.buffer}function a(e){const t=new Uint8Array(e);let r="";for(let e=0;e<t.length;e++)r+=String.fromCharCode(t[e]);return btoa(r)}r.d(t,{M:()=>n,Y:()=>a})},18357(e,t,r){r.d(t,{$:()=>n,u:()=>a});const n="20260224",a="66d520d2d9ee5931d90f28c0c1bd76d4bfea694b"}},t={};function r(n){var a=t[n];if(void 0!==a)return a.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>"chunks/"+{5:"c6d5f6cfbb31a3fd11ff",36:"0140dc583e20b031eac9",88:"9e7eea56e96f012f9ff4",91:"9c6e96b1c2b0418a4f1c",146:"15d7c9f5a55985ed00b4",148:"f5c5a9e771074f780fc8",182:"1482262d0788ee65ddf7",217:"a1a12552d34ea9eea130",262:"efb2a8879011d2d77a81",309:"568d32ceee1409809e5a",349:"7908aed639521cf572e8",353:"65520a443e3811255bea",368:"8021cb732f8136d87048",369:"8a0a13f398ab488dbbe9",382:"d28169816c768d55aa09",390:"b553264db0f10bb8c5f7",427:"06df187a116709f69952",490:"bcd701892ee120e13a18",547:"63934843c9f4ef779a07",561:"6792e981a3c73063a3e6",563:"c7f27a84268a9b0d8cdb",566:"3c2eb386c0165150e039",609:"d44217de4c73475f9c66",648:"d72d5031887373d35610",671:"d70678598f4080adfb39",692:"34207774bc371e95ba3c",708:"cce2ea441adb47d15a06",777:"7b297a2f712361bfae2e",788:"d31f62ecbb54bffc54f2",795:"5afee66e182f79a0fc46",812:"a3a28c4887f802e8d96d",820:"aafa33f661462f5afd2b",883:"973e3743cb7fdaa27f80",891:"f4480636a910eaa4c531",893:"5e3019ba1b4c88977a19",923:"dad9c25f1b7cacf7b052",926:"f1f78bb3d34f973c19de",980:"74e1826ad9e2c4fd3b42",1003:"6c853fd89f0e9f102c6e",1005:"835a929e37811d0f82cb",1017:"ef267b938327c41727c1",1023:"5b278b9980752ef495a2",1054:"46d28a0c20263012faff",1072:"8c2e5b116bac21e7d577",1086:"f12f96770a45ce6d1ed7",1088:"e8ae71e482b8d5f54a72",1132:"1cd091fa567fc4026356",1190:"e3a73d9acebccd3ba49b",1204:"210ef3f1cc6ef8a831bf",1214:"6b56c8ba978ec6edd6b8",1218:"561484ab6ed564e4b90f",1267:"925980d26d71987ac80c",1273:"cc697c4d9cdc116373dc",1277:"7a474ce61cf484df87b4",1285:"a0d459bdb91ee892d4b6",1352:"cb903ccbce87172a0757",1366:"84124c1a41a96192f81c",1384:"1fa2bf0d6740092ec619",1512:"cada79c174027f7a0df8",1550:"d10c65cde3565d399275",1598:"dcdddbc02b7d7febc56d",1666:"61ebbae0773fccc1f2bf",1695:"deee88e3f1641c6ef5db",1698:"114aecdbd2bd92b24de2",1728:"6a0c371ec3acd7529fe6",1763:"601e44839fd46e449aa8",1775:"868c8a152cb1452b9a94",1787:"e6220c1fa887e21ffbbd",1797:"4150774059d67a8def74",1812:"845bbd82ddacbb62ad28",1837:"3a8320a40916c755c031",1878:"4c54cb80c4dc9bbbd395",1882:"a495e60996a36ce19a32",1894:"de6b3f80070abdd61d0f",1918:"73e384fd93cf22503d84",1956:"e67bdd8bf38ebe89a344",1965:"03d11c7056fea763cbac",2025:"57b620d7e029747adca3",2061:"aec33bdb355bd04f28ae",2109:"14792047c5519dd89828",2158:"278409028bc5af45b507",2165:"48a56b19bf825f05cc6e",2174:"e44ed205f74df34adb8b",2186:"c45a5bcf26659daf02a1",2260:"fb3a42cdd0d3105ec551",2261:"2c61a53962093a331225",2266:"aa60f735ccd39cedef7e",2274:"91e56959b2fddf1a9743",2288:"b35ea099334c867bde02",2303:"5e4ea6a2784eed1423f1",2330:"57e375d8a8db9fa57193",2343:"bd278f8081be8304be8d",2369:"ce063df750018024c9ed",2372:"7cb0681cc6a5e956cb15",2390:"68abe4e70ea48e978642",2409:"f890cfa4932955ecd4e7",2423:"2b2283f1ee4bfc1baa18",2455:"36da644678e6acf3bdb5",2496:"72cd450b24fdfcef6547",2555:"18a40606e4c39f244ecd",2558:"2d956dacb26d71d1c174",2741:"a78ac951c00f090d9024",2764:"cc62e5095e328bed3e01",2772:"23cb0611abe1031c513c",2806:"85f309c1888c1c8411b1",2869:"74e3c224e879edb37812",2892:"018859b79f9ce7528ac7",2942:"7c417d2bf432e4055b3d",2958:"e021b2f0e15aee5bf3ad",2980:"3087910d19959fdc546b",2990:"63c297b6b7438f49e7ee",2997:"836d10ceb93ed19f0aa6",3009:"9de8149ae0a0726a4ab2",3052:"b4254fcb2051c873f2ba",3082:"f379f94adbe79dc305a2",3103:"4d7f7b1e7663cf6088d1",3116:"e6f51f66b71e0d6525ec",3166:"861817be5e050e9522ab",3202:"c80c6e60c87c3e5f5e62",3212:"cb6a7ca4ba2cf0b5ced7",3224:"33de1d899a4fa9ab6ab1",3276:"f0e6a26a3625068b08ab",3299:"dd6efa0afe879bd11a2e",3304:"b2a67fe89f6505498bc3",3354:"e839c5f3a0213091a399",3359:"5a6a6e7151085a3cd3dd",3390:"73c87eb9bd8f0f848481",3443:"166652b7d69bf216d7a4",3447:"91718795fc4ca6516ac7",3456:"5480d4cc342a2669a8ab",3463:"9f1f5fb648302c43ad12",3494:"11058e660139c427c3e7",3500:"7975abb2162a82c88edb",3508:"6f079f1fd6d00d2d174c",3514:"a010fc1123bc0eeda478",3543:"deaca3cd202851ecf9c2",3561:"1d0153c7d65bd9ea7d39",3607:"241ef4a1bea20b49d812",3620:"527547fa10d52cb3a7b1",3636:"835d6dd8c5a00682d879",3637:"854fe80272b59fafc2e9",3661:"e09722903e63f6cc2540",3666:"53817ef8c00d8cce4b8e",3693:"0a66a2b4aaab0774c34f",3708:"19fcc74d34cbbaa56a41",3773:"7da48362c103bf9ad8bf",3813:"75fd96fd9557ac1f8e10",3832:"d3734c8de029f1a65315",3875:"7873ee080c175d17a444",3902:"f27bbb4e26297d3c68de",3910:"cc3939983cf6f78f7243",3937:"86161025b53b916328ff",4038:"c91993503de5faa404f0",4097:"af75e91b88e747aa76ac",4104:"a7dbd38bc216713044fc",4167:"ce3e192fbb53a9c6eb3b",4168:"10a8612e7b2c74a8ce9a",4246:"db005d9419bb718b3962",4314:"8d6da6573d07385f4ed5",4341:"eb4934d3a3b82316c7c6",4347:"9736299a4ac0e21f08a7",4383:"9c6d34bb666f630d511f",4387:"b859d98fa1c39f8e4099",4423:"02cab89336504e95ed99",4447:"f82a95c46f0d579d5bf5",4496:"1be4e308280149eae4fb",4560:"1dcd057695f8db79eca2",4575:"75664587bb80f4e187e1",4579:"6f12854c5846edfe3239",4594:"6fde745f3a62e7f5a97d",4642:"9b2d0d36ee6c04c347df",4674:"eef102e13fd8878eeb96",4690:"f563dd6cace047108b3c",4724:"8cf58806671ed491a456",4795:"1bb5aa1e3693e0c68b18",4800:"41a95ad470ec42ecd5a2",4903:"d7229019876c0e4ff545",4935:"9694b4b85168a38ca24b",4948:"6e32e7b2ea2ea1a1fc04",4996:"01dd849a2d335e9f3e16",5013:"2b76a8897ad7ba284d33",5020:"21e04705cad9fef1b01b",5098:"aa3bdfd00f666c6cc521",5141:"e2661d39c48376163adf",5165:"e2bdb0e87422e222646e",5181:"777b0e07f72c42470d36",5217:"cf100c80b75ba74b479c",5243:"c3e4f8664988e50bda55",5335:"bc982142e61598bd367c",5356:"05e5b9082c0a396df7e5",5367:"c20aaca8085ce897bd12",5404:"593e9c8ac3b3b02deeb9",5482:"305b2a8dc6438c5fd4aa",5567:"f7d67b7c9785a1955b17",5605:"56c7d7c7217557375fb6",5613:"2ecfd6edab796194bf88",5666:"5f6942ac94acd7842926",5673:"eaeb95be8d4032513247",5740:"3e26f9af6b8c75bad97a",5750:"e9dd60d0220036545ebb",5756:"f5144e570952ca62a1b0",5781:"c794f7be868e53ca4a8c",5804:"0c13591347d51d684561",5841:"25bc7c7bc2793d209640",5856:"2541724a29f6058718f8",5859:"b65550b2f685ba760b2c",5902:"c1a26956713262cb3cb3",5977:"1e6062dc68c26fcf608f",5993:"51ade971dda3ebe90f31",6033:"879ce85c50b0348056b2",6052:"5d87316d6f973d95745c",6061:"493a0981e90a5799fb5b",6122:"1ede8666d804c553803e",6129:"0d9d33f29124d464a4cb",6154:"f1c1f7583fa13dff9b5c",6160:"bb3ab2453ccde2f2611c",6187:"2ecb21c402cdd8c82533",6269:"5a6d6082c5bcb1a80eda",6276:"08445fcba84ed7c23b3f",6312:"a4a4ce33de6432ba4dc3",6320:"0df585420c9cec6a7265",6342:"3e61e7805dc6ff284831",6343:"8d1d0c3f0532aa98487d",6364:"7189e03cc24f5c10865a",6368:"4fc6dd1423075e145b29",6408:"a96c7432ca97cbeef4b8",6418:"764d080f77dec5e7a02c",6491:"576995021660e8b34705",6554:"f4301ea9a6cb3bcef906",6558:"f7506c9d57b2ae0c5fd3",6606:"5690b49f355a5e2083a9",6618:"4754610760f3f634adf9",6650:"5028de543cc1b8e60e65",6671:"9647f3983f955da21093",6682:"abc2471cfa9430ca5645",6708:"e37e7ae2de974cef9a90",6859:"6ac84e6d33104e74398d",6861:"31eb59eae4c89b76e302",6956:"e0344b45af88081fa186",6960:"1a1e57267306c07e5bdb",6989:"592f6bf0283152481f21",7005:"f6c9742691ccdaed44a2",7087:"b8005b1996f42dee8237",7217:"416c57df61fbd193078b",7301:"465cc0e00f03cdb640b2",7316:"d587b7842091affdaac3",7367:"c327fe276238af60fda4",7373:"6997b4d5bcc9c4755375",7380:"c4dc60617152d885f3da",7433:"6cdda5aa35fa12ea9345",7444:"de5719ef663224860af5",7445:"c9a42d86185a0ad35dd1",7451:"2de299ff3a902d380be6",7464:"285f3b07de852bfc1604",7528:"b3950d5f1f3352521504",7546:"f50bba74ae72c07e131a",7548:"2f3aeaa25a76ab94b8e5",7557:"a4919dd9963f853a0077",7561:"d3c760109a70a71448c5",7609:"889835e61ea97f090082",7617:"70263c2182dc43046742",7632:"612873df0c8659ac2aa5",7656:"ea245d3a6fd601fffd88",7705:"9a2b1f0ca66c1b87c830",7716:"63b5b57f27c7c6194d44",7733:"7601408e242dca1d25bd",7772:"0c706cdff6eac940eaab",7809:"c1dc14b07282474a7c2d",7835:"804c31973f7d116523cb",7837:"452d71789a1b77cff48d",7867:"d7840c3e792efcccee35",7883:"5b70ee8122262de5bbdf",7885:"2e06baf6469820697f17",7916:"aa9c11f25d95372998a3",7982:"209acb3ad16c99bb506c",7987:"c09bc36347e8eb9fff00",7992:"87a7d405a0b9a541d7f2",8008:"b730131e52f9220db031",8010:"1ee3d44e6d7add0b24cb",8018:"8f6833671c071b522923",8065:"190bc75254bc0542a6be",8125:"5b3bb636e3bec625e515",8303:"5e360f933da02d8d2455",8345:"a35d1be700ebd3109397",8366:"feececf6809231f72c5a",8377:"4d16b6ac52e25bd7e6aa",8399:"7cec3252e3ee56424b9e",8414:"21decfc1e477fb769204",8434:"359d3ba9d6e3b1de05d1",8457:"43f60f41d353d3fc7c4b",8487:"1df8330823841b5bb6a5",8574:"2063b49607a03f7718ee",8594:"0711c856144cd8700e7e",8599:"108d652a959e7de31cbf",8610:"a34e3c6da7d98569c052",8679:"5cbc12545f42a32fb960",8692:"ca64867bc322a354be8e",8714:"0d6afba80d2f8dcb5cf7",8812:"88c3b60b403e2454b56e",8885:"a7a9716582b256d76e5b",8902:"b364ec104dd59faa41b6",8948:"5fa5a2fb69f84e9092ba",9013:"953f671bdeb2ca9b9f37",9028:"7dd1e93469d0b1d652bc",9036:"179b3385c24ad8a05e1d",9062:"5eb9fdb076488de9cd83",9126:"b1c6a1759febad66927f",9134:"de33ce9b6f4e6c0e1389",9156:"1d697642fb2a6332b7f9",9159:"99101789035f1787c630",9169:"c2cda93905f0a49a6931",9186:"403060849a2573bbf110",9187:"8351012ceb466f01b8fd",9192:"2ce845c990bb4d701362",9235:"666f201d222c50ab8428",9239:"74d9dd484b9bc4dc7e3d",9321:"4b24f72b56edc28bb15e",9397:"0a73767d0a930519772d",9466:"2bd8bf6749d101d82d61",9506:"faad127dc07e54e7f6d1",9535:"ef72f4822284bcad75d8",9550:"da780342f16e65b55ac8",9588:"7a2e9626d0853a6d1547",9597:"551fee27bf3abf0c41fd",9598:"9522430d34d29c1ffb1a",9616:"e3fe1db9380633292b27",9657:"544bfa97837770a8792f",9679:"7386a61f9610b8e5c608",9695:"38d5dd4d457428244302",9696:"1f54ed4a5238ba1a2551",9697:"e063cce778944fe97dd3",9784:"7a2dd3d85d31dce29d94",9790:"7d274a077bdfa8c485e8",9835:"2f23af31b1190754ce13",9838:"8838ff9668b472af16a1",9926:"d01a98c13501c89205b6",9933:"54794b18edc584fd7515",9938:"7b59ddad3c73f5f44b4d",9953:"dcef87f7d06c45cd928b",9958:"8ab39731775b0867a512",9962:"2abb64323839367c9205"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={76:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[a,o,s]=t;for(var i in o)r.o(o,i)&&(r.m[i]=o[i]);for(s&&s(r);a.length;)e[a.pop()]=1;n(t)}})(),r(66358);var n=r(61322);RemoteClient=n})();
1
+ var RemoteClient;(()=>{"use strict";var e={66358(e,t,r){r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},92602(e,t,r){r.d(t,{A:()=>a}),r(44208);var n=r(93637);const a={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.$N)(a,globalThis.esriConfig,!0),delete a.has),!a.assetsPath){{const e="5.1.0-next.26";a.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}a.defaultAssetsPath=a.assetsPath}},49186(e,t,r){r.d(t,{A:()=>s});var n=r(4718),a=r(53966),o=r(799);class s{constructor(e,t,r){this.type="error",this.name=e,this.message=t?(0,o.V2)(t,r):"",this.details=r}toString(){const{name:e,message:t}=this;return`[${e}]: ${t}`}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,(e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.o8)(t)}catch(e){return"[object]"}}))}}catch(e){throw a.A.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s(e.name,e.message,e.details)}}},53966(e,t,r){r.d(t,{A:()=>i});var n=r(92602),a=r(51447),o=(r(44208),r(799));const s={info:0,warn:1,error:2,none:3};class i{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,i._loggers.set(this.module,this);const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=i.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){}static get test(){}static getLogger(e){return e="string"!=typeof e?e.declaredClass:e,i._loggers.get(e)||new i({module:e})}static{this._loggers=new Map}static{this._tickCounter=0}static{this._tickCounterScheduled=!1}static{this._throttlingDisabled=!1}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!i._throttlingDisabled){const n=function(...e){return(0,o.Wm)(JSON.stringify(e,(e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]"))}(r),a=this._loggedMessages[e].get(n);if("once"===t&&null!=a||"oncePerTick"===t&&a&&a>=i._tickCounter)return;this._loggedMessages[e].set(n,i._tickCounter),i._scheduleTickCounterIncrement()}for(const t of n.A.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;null!=r;){const t=r[e];if(null!=t)return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",c)}_matchLevel(e){const t=n.A.log.level||"warn";return s[this._parentWithMember("level",t)]<=s[e]}static _scheduleTickCounterIncrement(){i._tickCounterScheduled||(i._tickCounterScheduled=!0,Promise.resolve().then(()=>{i._tickCounter++,i._tickCounterScheduled=!1}))}}function c(e,t,...r){console[e](`[${(0,a.u3)(t)}]`,...r)}},87811(e,t,r){r.d(t,{A:()=>n});class n{static{this._m=2147483647}static{this._a=48271}static{this._c=0}constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}},4576(e,t,r){r.d(t,{Am:()=>s,Ho:()=>u,Ji:()=>o,MJ:()=>i,Mo:()=>w,Ru:()=>O,TF:()=>k,UT:()=>P,VO:()=>f,Xj:()=>d,Xy:()=>m,aI:()=>c,iv:()=>l,k4:()=>_,mW:()=>y,qh:()=>p,vW:()=>b,yc:()=>A});var n=r(21818),a=r(87811);const o=1.5;function s(e,t){return t?e.filter((e,r,n)=>n.findIndex(t.bind(null,e))===r):Array.from(new Set(e))}function i(e,t,r,n,a,o,s){if(null==e&&null==n)return!0;t=Math.max(0,t),a=Math.max(0,a),r=Math.max(0,r<0?(e?.length??0)+r:r),o=Math.max(0,o<0?(n?.length??0)+o:o);const i=r-t;if(null==e||null==n||i!==o-a)return!1;if(s){for(let r=0;r<i;r++)if(!s(e[t+r],n[a+r]))return!1}else for(let r=0;r<i;r++)if(e[t+r]!==n[a+r])return!1;return!0}function c(e,t,r){return i(e,0,e?.length??0,t,0,t?.length??0,r)}function f(){return(e,t)=>{if(null==e&&null==t)return!0;if(null==e||null==t||e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}}function l(e,t,r){let n,a;return r?(n=t.filter(t=>!e.some(e=>r(e,t))),a=e.filter(e=>!t.some(t=>r(t,e)))):(n=t.filter(t=>!e.includes(t)),a=e.filter(e=>!t.includes(e))),{added:n,removed:a}}function d(e){return e&&"number"==typeof e.length}function u(e,t){const r=e.length;if(0===r)return[];const n=[];for(let a=0;a<r;a+=t)n.push(e.slice(a,a+t));return n}class b{constructor(){this.last=0}}const h=new b;function p(e,t,r,n){n=n||h;const a=Math.max(0,n.last-10);for(let o=a;o<r;++o)if(e[o]===t)return n.last=o,o;const o=Math.min(a,r);for(let r=0;r<o;++r)if(e[r]===t)return n.last=r,r;return-1}function m(e,t,r,a){const o=r??e.length,s=p(e,(0,n.z)(t),o,a);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const g=new Set;function y(e,t,r=e.length,n=t.length,a,o){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);a=a||h;const s=Math.max(0,a.last-10);for(let t=s;t<r;++t)if(g.has(e[t])&&(o?.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<s;++t)if(g.has(e[t])&&(o?.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function w(e){return e?(v.seed=e,()=>v.getFloat()):Math.random}const v=new a.A;function _(e,t){if(!e)return e;const r=w(t);for(let t=e.length-1;t>0;t--){const n=Math.floor(r()*(t+1)),a=e[t];e[t]=e[n],e[n]=a}return e}function k(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}function O(e,t){return null!=e}function A(e){return Array.isArray(e)}function P(e,t){return e-t}},21818(e,t,r){function n(e){return e}r.d(t,{z:()=>n})},51447(e,t,r){r.d(t,{Lx:()=>c,eF:()=>f,eO:()=>i,io:()=>l,u3:()=>d,uW:()=>s});var n=r(44208);const a=new WeakMap;function o(e,t,r=!1){const n=`🛑 DEPRECATED - ${t}`;if(!r)return void e.warn(n);let o=a.get(e);o||(o=new Set,a.set(e,o)),o.has(t)||(o.add(t),e.warn(n))}function s(e,t,r={}){(0,n.A)("esri-deprecation-warnings")&&l(e,`Module: ${d(t)}`,r)}function i(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{moduleName:n}=r;l(e,"Function: "+(n?d(n)+"::":"")+t+"()",r)}}function c(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{moduleName:n}=r;l(e,"Property: "+(n?d(n)+"::":"")+t,r)}}function f(e,t,r={}){(0,n.A)("esri-deprecation-warnings")&&l(e,`Multiple argument constructor: ${t=d(t)}`,{warnOnce:!0,replacement:`new ${t}({ <your properties here> })`,...r})}function l(e,t,r={}){if((0,n.A)("esri-deprecation-warnings")){const{replacement:n,version:a,see:s,warnOnce:i}=r;let c=t;if(n&&(c+=`\n\t🛠️ Replacement: ${n}`),a&&(c+=`\n\t⚙️ Version: ${a}`),s)if(Array.isArray(s)){c+="\n\t🔗 See for more details:";for(const e of s)c+=`\n\t\t${e}`}else c+=`\n\t🔗 See ${s} for more details.`;o(e,c,i)}}function d(e){return e.startsWith("esri.")?e.replace("esri.","@arcgis/core/").replaceAll(".","/"):e}},37955(e,t,r){r.d(t,{Oo:()=>i,on:()=>s,wb:()=>a});var n=r(36563);function a(e){return function(e){return null!=e&&"object"==typeof e&&"on"in e&&"function"==typeof e.on}(e)||o(e)}function o(e){return null!=e&&"object"==typeof e&&"addEventListener"in e&&"function"==typeof e.addEventListener}function s(e,t,r){if(!a(e))throw new TypeError("target is not a Evented or EventTarget object");return o(e)?function(e,t,r,a){if(Array.isArray(t)){const o=t.slice();for(const t of o)e.addEventListener(t,r,a);return(0,n.hA)(()=>{for(const t of o)e.removeEventListener(t,r,a)})}return e.addEventListener(t,r,a),(0,n.hA)(()=>e.removeEventListener(t,r,a))}(e,t,r):e.on(t,r)}function i(e,t,r){if(!a(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const n=s(e,t,t=>{n.remove(),r.call(e,t)});return n}},36563(e,t,r){r.d(t,{hA:()=>a,rE:()=>s,vE:()=>o});const n={remove:()=>{}};function a(e){return e?{remove(){e&&(e(),e=void 0)}}:n}function o(e){return a(()=>function(e){e.forEach(e=>e?.remove())}(e))}function s(e){return a(()=>e?.abort())}},44208(e,t,r){r.d(t,{A:()=>o});const n=globalThis,a={...n.esriConfig?.has};function o(e){return"function"==typeof a[e]?a[e]=a[e](n):a[e]}o.add=(e,t,r,n)=>{(n||void 0===a[e])&&(a[e]=t),r&&o(e)},o.cache=a,o.add("big-integer-warning-enabled",!0),o.add("esri-deprecation-warnings",!0),o.add("esri-tests-disable-screenshots",!1),o.add("esri-tests-use-full-window",!1),o.add("esri-tests-post-to-influx",!0),o.add("esri-cim-animations-enable-status","enabled"),o.add("esri-cim-animations-spotlight",!1),o.add("esri-cim-animations-freeze-time",!1),(()=>{o.add("host-webworker",void 0!==n.WorkerGlobalScope&&self instanceof n.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(o.add("host-browser",e),o.add("host-node",!("object"!=typeof n.process||!n.process.versions?.node||!n.process.versions.v8)),o.add("dom",e),o("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(o.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),o.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),o.add("khtml",r.includes("Konqueror")?n:void 0),o.add("edge",parseFloat(t.split("Edge/")[1])||void 0),o.add("opr",parseFloat(t.split("OPR/")[1])||void 0),o.add("webkit",!o("wp")&&!o("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),o.add("chrome",!o("edge")&&!o("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),o.add("android",!o("wp")&&parseFloat(t.split("Android ")[1])||void 0),o.add("safari",!r.includes("Safari")||o("wp")||o("chrome")||o("android")||o("edge")||o("opr")?void 0:parseFloat(r.split("Version/")[1])),o.add("mac",r.includes("Macintosh")),!o("wp")&&/(iPhone|iPod|iPad)/.test(t)){const e=RegExp.$1.replace(/P/,"p"),r=/OS ([\d_]+)/.test(t)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replaceAll("_",""));o.add(e,n),o.add("ios",n)}o("webkit")||(!t.includes("Gecko")||o("wp")||o("khtml")||o("edge")||o.add("mozilla",n),o("mozilla")&&o.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(n.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&o.add("esri-mobile",t),r&&o.add("esri-iPhone",r),o.add("esri-geolocation",!!navigator.geolocation)}o.add("esri-wasm","WebAssembly"in n),o.add("esri-performance-mode-frames-between-render",20),o.add("esri-force-performance-mode",!1),o.add("esri-shared-array-buffer",()=>{const e="SharedArrayBuffer"in n,t=!1===n.crossOriginIsolated;return e&&!t}),o.add("wasm-simd",()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]))),o.add("esri-atomics","Atomics"in n),o.add("esri-workers","Worker"in n),o.add("web-feat:cache","caches"in n),o.add("esri-workers-arraybuffer-transfer",!o("safari")||Number(o("safari"))>=12),o.add("workers-pool-size",8),o.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),o.add("featurelayer-simplify-payload-size-factors",[1,1,4]),o.add("featurelayer-animation-enabled",!0),o.add("featurelayer-snapshot-enabled",!0),o.add("featurelayer-snapshot-initial-tolerance",0),o.add("featurelayer-snapshot-point-min-threshold",8e4),o.add("featurelayer-snapshot-point-max-threshold",4e5),o.add("featurelayer-snapshot-multipoint-min-threshold",2e4),o.add("featurelayer-snapshot-multipoint-max-threshold",1e5),o.add("featurelayer-snapshot-polygon-min-threshold",2e3),o.add("featurelayer-snapshot-polygon-max-threshold",2e3),o.add("featurelayer-snapshot-polyline-min-threshold",2e3),o.add("featurelayer-snapshot-polyline-max-threshold",2e3),o.add("featurelayer-snapshot-max-vertex-count",25e4),o.add("featurelayer-snapshot-non-hosted-exceedslimit-enabled",!0),o.add("featurelayer-snapshot-concurrency",4),o.add("featurelayer-snapshot-allow-editable",!1),o.add("featurelayer-snapshot-coverage",.1),o.add("featurelayer-query-max-depth",4),o.add("featurelayer-query-max-page-size",8e3),o.add("featurelayer-query-pausing-enabled",!1),o.add("featurelayer-query-tile-concurrency",4),o.add("featurelayer-query-tile-max-features",6e5),o.add("featurelayer-advanced-symbols",!1),o.add("featurelayer-pbf",!0),o.add("featurelayer-pbf-statistics",!1),o.add("featurelayer-pbf-true-curves",!0),o.add("feature-layers-workers",!0),o.add("feature-polyline-generalization-factor",1),o.add("featurelayer-relative-time-queries-enabled",!0),o.add("featurelayer-relative-time-queries-bin-window-public",1),o.add("featurelayer-relative-time-queries-bin-window-private",60),o.add("parquetlayer-full-query-feature-count",2e4),o.add("parquetlayer-hittest-max-feature-count",1),o.add("parquetlayer-persistence-enabled",!1),o.add("parquetlayer-cache-enabled",!0),o.add("mapview-transitions-duration",200),o.add("mapview-essential-goto-duration",200),o.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),o.add("mapserver-pbf-version-support",10.81),o.add("mapservice-popup-identify-max-tolerance",20),o.add("request-queue-concurrency-global",50),o.add("request-queue-concurrency-hosted",16),o.add("request-queue-concurrency-non-hosted",6),o.add("curve-densification-coarse-segments",128),o.add("curve-densification-max-segments",2e3),o.add("curve-densification-min-segments",3),o.add("curve-densification-pixel-deviation",.5),o.add("view-readyState-waiting-delay",1e3),o.add("gradient-depth-bias",.01),o.add("gradient-depth-epsilon",1e-8),o.add("enable-feature:esri-compress-textures",!0),o.add("enable-feature:basemap-groundlayers",!0),o.add("enable-feature:oit-ground",!0),o.add("enable-feature:im-shading",!0),!o("host-webworker")&&o("host-browser")&&(o.add("esri-csp-restrictions",()=>{try{new Function}catch{return!0}return!1}),o.add("esri-url-encodes-apostrophe",()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")}))})()},4718(e,t,r){r.d(t,{Nb:()=>c,TU:()=>i,aI:()=>b,gh:()=>h,o8:()=>s,oy:()=>o});var n=r(4576),a=r(34275);function o(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&o(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function s(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=u(e);if(null!=t)return t;if(c(e))return e.clone();if(f(e))return e.map(s);if(l(e))throw new Error("Trying to clone an unclonable Accessor instance");const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=s(e[t]);return r}function i(e,t){if(!e||"object"!=typeof e||"function"==typeof e||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const r=u(e);if(null!=r)return r;if(f(e)){let r=!0;const n=e.map(e=>{const n=i(e,t);return null!=e&&null==n&&(r=!1),n});return r?n:null}if(c(e))return e.clone(t);if(e instanceof File||e instanceof Blob)return e;if(l(e))return null;const n=new(0,Object.getPrototypeOf(e).constructor);for(const t of Object.getOwnPropertyNames(e)){const r=e[t],a=i(r);if(null!=r&&null==a)return null;n[t]=a}return n}function c(e){return"function"==typeof e.clone}function f(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function l(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function u(e){if((0,a.dz)(e)||(0,a.mg)(e)||(0,a.UR)(e)||(0,a.IY)(e)||(0,a.jq)(e)||(0,a._G)(e)||(0,a.XJ)(e)||(0,a.vZ)(e)||(0,a.aI)(e))return e.slice();if(e instanceof Date)return new Date(e);if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;for(const[r,n]of e)t.set(r,s(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(s(r));return t}return null}function b(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof e?.getTime&&"function"==typeof t?.getTime&&e.getTime()===t.getTime()||!1}function h(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.aI)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!d(e)&&d(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},97768(e,t,r){function n(e,t){if(null==e)throw new Error(t??"value is None")}function a(e){return e?.destroy(),null}function o(e){return e?.dispose(),null}function s(e){return e?.remove(),null}function i(e){return e?.abort(),null}function c(e){return e?.release(),null}function f(e,t,r){return null!=e&&null!=t?null!=r?r(e,t):e.equals(t):e===t}function l(e,t){let r;return e.some((e,n)=>(r=t(e,n),null!=r)),r??void 0}r.d(t,{CM:()=>f,DC:()=>i,Gz:()=>c,Lw:()=>n,Pb:()=>l,WD:()=>o,pR:()=>a,xt:()=>s})},93637(e,t,r){r.d(t,{$N:()=>a,a4:()=>d,i7:()=>l,i8:()=>i,sM:()=>s,wc:()=>o});var n=r(4718);function a(e,t,r=!1){return f(e,t,r)}function o(e,t){if(null!=t)return t[e]||c(e.split("."),!1,t)}function s(e,t,r){const n=e.split("."),a=n.pop(),o=c(n,!0,r);o&&a&&(o[a]=t)}function i(e,t){if(null==e&&null==t)return!1;if(null==e)return!0;if(null==t)return!0;if("object"==typeof e){if(Array.isArray(e)){const r=t;if(e.length!==r.length)return!0;for(let t=0;t<e.length;t++)if(i(e[t],r[t]))return!0;return!1}if(Object.keys(e).length!==Object.keys(t).length)return!0;for(const r in e)if(i(e[r],t[r]))return!0;return!1}return e!==t}function c(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function f(e,t,r){return t?Object.keys(t).reduce((e,a)=>{if("__proto__"===a)return e;let o=e[a],s=t[a];return o===s?e:void 0===o?(e[a]=(0,n.o8)(s),e):(Array.isArray(s)||Array.isArray(e)?(o=o?Array.isArray(o)?e[a]=o.slice():e[a]=[o]:e[a]=[],s&&(Array.isArray(s)||(s=[s]),r?s.forEach(e=>{o.includes(e)||o.push(e)}):e[a]=s.slice())):s&&"object"==typeof s?e[a]=f(o,s,r):e.hasOwnProperty(a)&&!t.hasOwnProperty(a)||(e[a]=s),e)},e||{}):e}function l(e,t){for(const r of Object.entries(e))if(t===r[1])return r[0]}function d(e,t){return Object.values(e).includes(t)}},74887(e,t,r){r.d(t,{Pl:()=>O,Ol:()=>k,nA:()=>_,NK:()=>f,Tw:()=>x,sg:()=>S,Lx:()=>v,QZ:()=>w,zf:()=>y,G4:()=>u,$X:()=>A,u7:()=>p,NY:()=>m,hn:()=>M,Mq:()=>d,QP:()=>b,Te:()=>l,jH:()=>h,NO:()=>j,z7:()=>P,qr:()=>g});var n=r(36563);const a=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return(0,n.hA)(()=>o.clearTimeout(r))}});var o,s=r(49186),i=r(37955),c=(r(53966),r(97768));function f(e="Aborted"){return new s.A("AbortError",e)}function l(e,t="Aborted"){if(u(e))throw f(t)}function d(e){return e instanceof AbortSignal?e:e?.signal??void 0}function u(e){const t=d(e);return null!=t&&t.aborted}function b(e){if(y(e))throw e}function h(e){if(!y(e))throw e}function p(e,t){const r=d(e);if(null!=r){if(!r.aborted)return(0,i.Oo)(r,"abort",()=>t());t()}}function m(e,t){const r=d(e);if(null!=r)return l(r),(0,i.Oo)(r,"abort",()=>t(f()))}function g(e,t){return null==d(t)?e:new Promise((r,n)=>{let a=p(t,()=>n(f()));const o=()=>{a=(0,c.xt)(a)};e.then(o,o),e.then(r,n)})}function y(e){return"AbortError"===e?.name}async function w(e){try{return await e}catch(e){if(!y(e))throw e;return}}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map(t=>e[t]),n=await v(r),a={};return t.map((e,t)=>a[e]=n[t]),a}const t=e;return Promise.allSettled(t).then(e=>Array.from(t,(t,r)=>{const n=e[r];return"fulfilled"===n.status?{promise:t,value:n.value}:{promise:t,error:n.reason}}))}async function _(e){return(await Promise.allSettled(e)).filter(e=>"fulfilled"===e.status).map(e=>e.value)}async function k(e){return(await Promise.allSettled(e)).filter(e=>"rejected"===e.status).map(e=>e.reason)}function O(e,t=void 0,r){const n=new AbortController;return p(r,()=>n.abort()),new Promise((r,a)=>{let o=setTimeout(()=>{o=0,r(t)},e);p(n,()=>{o&&(clearTimeout(o),a(f()))})})}function A(e){return e&&"function"==typeof e.then}function P(e){return A(e)?e:Promise.resolve(e)}function S(e,t=-1){let r,n,a,o,s=null;const i=(...c)=>{if(r){n=c,o&&o.reject(f()),o=x();const e=o.promise;if(s){const e=s;s=null,e.abort()}return e}if(a=o||x(),o=null,t>0){const n=new AbortController;r=P(e(...c,n.signal));const a=r;O(t).then(()=>{r===a&&(o?n.abort():s=n)})}else r=1,r=P(e(...c));const l=()=>{const e=n;n=a=r=s=null,null!=e&&i(...e)},d=r,u=a;return d.then(l,l),d.then(u.resolve,u.reject),u.promise};return i}function x(){let e,t;const r=new Promise((r,n)=>{e=r,t=n}),n=t=>{e(t)};return n.resolve=t=>e(t),n.reject=e=>t(e),n.timeout=(e,t)=>a.setTimeout(()=>n.reject(t),e),n.promise=r,n}function M(e,t){t.then(e.resolve,e.reject)}async function j(e){await Promise.resolve(),l(e)}},799(e,t,r){r.d(t,{Cj:()=>c,HC:()=>s,V2:()=>i,Wm:()=>f,_e:()=>d});var n=r(93637);const a=/\{([^}]+)\}/g;function o(e){return e??""}function s(e,t){return t?e.replaceAll(a,"object"==typeof t?(e,r)=>o((0,n.wc)(r,t)):(e,r)=>o(t(r))):e}function i(e,t){return e.replaceAll(/\$\{([^\s:}]*)(?::([^\s:}]+))?\}/g,(e,r)=>""===r?"$":((0,n.wc)(r,t)??"").toString())}function c(e,t){return e.replaceAll(/([.$?*|{}()[\]\\/+\-^])/g,e=>t?.includes(e)?e:`\\${e}`)}function f(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}let l;function d(e){return l??=new DOMParser,l.parseFromString(e||"","text/html").body.innerText||""}},12195(e,t,r){function n(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}r.d(t,{W:()=>n})},34275(e,t,r){function n(e){return e instanceof ArrayBuffer}function a(e){return"Int8Array"===e?.constructor?.name}function o(e){return"Uint8Array"===e?.constructor?.name}function s(e){return"Uint8ClampedArray"===e?.constructor?.name}function i(e){return"Int16Array"===e?.constructor?.name}function c(e){return"Uint16Array"===e?.constructor?.name}function f(e){return"Int32Array"===e?.constructor?.name}function l(e){return"Uint32Array"===e?.constructor?.name}function d(e){return"Float16Array"===e?.constructor?.name}function u(e){return"Float32Array"===e?.constructor?.name}function b(e){return"Float64Array"===e?.constructor?.name}function h(e){return"buffer"in e}r.d(t,{IY:()=>i,JI:()=>m,LW:()=>d,PI:()=>w,UR:()=>s,XJ:()=>l,_G:()=>f,a3:()=>y,aI:()=>b,dk:()=>g,dz:()=>a,h2:()=>v,iu:()=>h,jq:()=>c,mg:()=>o,mw:()=>n,vZ:()=>u,y9:()=>p});const p=1024;function m(e){return b(e)||u(e)||f(e)||i(e)||a(e)}function g(e){return b(e)||u(e)}function y(e){return b(e)?179769e303:d(e)?65504:u(e)?3402823e32:l(e)?4294967295:c(e)?65535:o(e)||s(e)?255:f(e)?2147483647:i(e)?32767:a(e)?127:256}const w=-32768,v=-2147483648},84952(e,t,r){r.d(t,{$1:()=>Y,$z:()=>G,An:()=>S,BQ:()=>ae,DB:()=>K,FL:()=>J,FX:()=>L,Hg:()=>te,Il:()=>ue,Ln:()=>me,N9:()=>ne,S8:()=>H,T1:()=>he,UC:()=>be,V1:()=>B,Xq:()=>A,Zo:()=>_e,_0:()=>Oe,a6:()=>ve,b8:()=>T,e7:()=>de,fj:()=>D,gd:()=>P,hf:()=>pe,lJ:()=>X,lM:()=>ie,m3:()=>se,nM:()=>le,oP:()=>V,oy:()=>E,r$:()=>ee,rs:()=>we,s0:()=>v,s2:()=>z,sC:()=>U,s_:()=>j,tk:()=>re,ut:()=>q,w8:()=>Q,x0:()=>M,xw:()=>ke,yM:()=>C,zf:()=>x,zi:()=>ye,zs:()=>N});var n=r(92602),a=r(4576),o=r(49186),s=r(53966),i=r(12195),c=r(39131),f=r(26306);const l=n.A.request,d="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,b=/^\s*http:/i,h=/^\s*https:/i,p=/^\s*file:/i,m=/:\d+$/,g=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,y=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),w=new RegExp("^((([^[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^[:]*))(:([0-9]+))?$");class v{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=this.uri.match(y);this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=this.authority.match(w),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const _={};let k=new v(n.A.applicationUrl);let O=function(){const e=k.path,t=e.slice(0,e.lastIndexOf("/")+1);return`${k.scheme}://${k.host}${null!=k.port?`:${k.port}`:""}${t}`}();const A=()=>k,P=()=>O;function S(e){if(!e)return null;const t={path:null,query:null},r=new v(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.slice(0,n),t.query=x(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.slice(0,t.path.length-(r.fragment.length+1)))),t}function x(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,a;t<0?(n=decodeURIComponent(e),a=""):(n=decodeURIComponent(e.slice(0,t)),a=decodeURIComponent(e.slice(t+1)));let o=r[n];"string"==typeof o&&(o=r[n]=[o]),Array.isArray(o)?o.push(a):r[n]=a}return r}function M(e,t){return e?t&&"function"==typeof t?Object.keys(e).map(r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r]))).join("&"):Object.keys(e).map(r=>{const n=e[r];if(null==n)return"";const a=encodeURIComponent(r)+"=",o=t?.[r];return o?a+encodeURIComponent(o(n)):Array.isArray(n)?n.map(e=>(0,i.W)(e)?a+encodeURIComponent(JSON.stringify(e)):a+encodeURIComponent(e)).join("&"):(0,i.W)(n)?a+encodeURIComponent(JSON.stringify(n)):a+encodeURIComponent(n)}).filter(e=>e).join("&"):""}function j(e=!1){let t,r=l.proxyUrl;if("string"==typeof e){t=se(e);const n=N(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw s.A.getLogger("esri.core.urlUtils").warn(d),new o.A("urlUtils:proxy-not-set",d);return t&&ce()&&(r=ie(r)),S(r)}function C(e,t=!1){const r=N(e);let n,a;if(r){const e=W(r.proxyUrl);n=e.path,a=e.query?x(e.query):null}else if(t){const t=j(e);n=t.path,a=t.query}if(n){const t=S(e);e=n+"?"+t.path;const r=M({...a,...t.query});r&&(e=`${e}?${r}`)}return e}const $={path:"",query:""};function W(e){const t=e.indexOf("?");return-1!==t?($.path=e.slice(0,t),$.query=e.slice(t+1)):($.path=e,$.query=null),$}function I(e){return(e=fe(e=ue(e=W(e).path),!0)).toLowerCase()}function E(e){const t={proxyUrl:e.proxyUrl,urlPrefix:I(e.urlPrefix)},r=l.proxyRules,n=t.urlPrefix;let a=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(n.startsWith(t)){if(n.length===t.length)return-1;a=e;break}t.startsWith(n)&&(a=e+1)}return r.splice(a,0,t),a}function N(e){const t=l.proxyRules,r=I(e);for(let e=0;e<t.length;e++)if(r.startsWith(t[e].urlPrefix))return t[e]}function T(e,t){if(!e||!t)return!1;e=R(e),t=R(t);const r=(0,c.py)(e),n=(0,c.py)(t);return null!=r&&null!=n?r.portalHostname===n.portalHostname:null==r&&null==n&&L(e,t,!0)}function q(e,t){return e=R(e),t=R(t),fe(e)===fe(t)}function R(e){const t=(e=H(e)).indexOf("/sharing");return t>0?e.slice(0,t):e.replace(/\/+$/,"")}function U(e,t=l.interceptors){const r=t=>t instanceof RegExp?t.test(e):"string"==typeof t?e.startsWith(t):null==t;if(t)for(const e of t)if(Array.isArray(e.urls)){if(e.urls.some(r))return e}else if(r(e.urls))return e;return null}function L(e,t,r=!1){if(!e||!t)return!1;const n=ge(e),a=ge(t);return!(!r&&n.scheme!==a.scheme)&&null!=n.host&&null!=a.host&&n.host.toLowerCase()===a.host.toLowerCase()&&n.port===a.port}function J(e){if("string"==typeof e){if(!V(e))return!0;e=ge(e)}if(L(e,k))return!0;const t=l.trustedServers||[];for(let r=0;r<t.length;r++){const n=F(t[r]);for(let t=0;t<n.length;t++)if(L(e,n[t]))return!0}return!1}function F(e){return _[e]||(oe(e)||ae(e)?_[e]=[new v(z(e))]:_[e]=[new v(`http://${e}`),new v(`https://${e}`)]),_[e]}function z(e,t=O,r){return ae(e)?r?.preserveProtocolRelative?e:"http"===k.scheme&&k.authority===G(e).slice(2)?`http:${e}`:`https:${e}`:oe(e)?e:D(e.startsWith("/")?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e)}function B(e,t=O,r){if(null==e||!V(e))return e;const n=H(e),a=n.toLowerCase(),o=H(t).toLowerCase().replace(/\/+$/,""),s=r?H(r).toLowerCase().replace(/\/+$/,""):null;if(s&&!o.startsWith(s))return e;const i=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=i(a,"/",a.indexOf("//")+2),f=-1;for(;a.slice(0,c+1)===o.slice(0,c)+"/"&&(f=c+1,c!==a.length);)c=i(a,"/",c+1);if(-1===f)return e;if(s&&f<s.length)return e;e=n.slice(f);const l=o.slice(f-1).replaceAll(/[^/]+/g,"").length;if(l>0)for(let t=0;t<l;t++)e=`../${e}`;else e=`./${e}`;return e}function H(e){return function(e){const t=l.httpsDomains;if(!function(e){return null!=e&&b.test(e)||"http"===k.scheme&&ae(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),m.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===k.scheme&&n===k.authority&&!g.test(e)||(ce()&&n===k.authority||t&&t.some(e=>n===e||n.endsWith(`.${e}`))||ce()&&!N(e))&&(e=ie(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=W(e);e=(e=t.path.replaceAll(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=z(e=e.trim()))))}function D(...e){const t=e.filter(a.Ru);if(!t?.length)return;const r=[];if(V(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&p.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else t[0].startsWith("/")&&r.push("");const n=t.reduce((e,t)=>t?e.concat(t.split("/")):e,[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function G(e,t=!1){if(null==e||Q(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&ae(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=fe(e,!0)),e}function V(e){return ae(e)||oe(e)}function Q(e){return null!=e&&e.startsWith("blob:")}function K(e){return null!=e&&e.startsWith("data:")}function X(e){const t=ee(e);return t?.isBase64?(0,f.M)(t.data):null}function Y(e){return(0,f.Y)(e).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}const Z=/^data:(.*?)(;base64)?,(.*)$/;function ee(e){const t=e.match(Z);if(!t)return null;const[,r,n,a]=t;return{mediaType:r,isBase64:!!n,data:a}}function te(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}async function re(e){return(await fetch(e)).blob()}function ne(e){const t=X(e);if(!t)return null;const r=ee(e);return new Blob([t],{type:r.mediaType})}function ae(e){return null!=e&&e.startsWith("/")&&"/"===e[1]}function oe(e){return null!=e&&u.test(e)}function se(e){return null!=e&&h.test(e)||"https"===k.scheme&&ae(e)}function ie(e){return ae(e)?`https:${e}`:e.replace(b,"https:")}function ce(){return"https"===k.scheme}function fe(e,t=!1){return ae(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&e.startsWith("/")&&"/"===e[1]&&(e=e.slice(2)),e)}function le(e){let t=0;if(V(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function de(e,t){if(!e)return"";const r=S(e).path.replace(/\/+$/,""),n=r.slice(r.lastIndexOf("/")+1);if(!t?.length)return n;const a=new RegExp(`\\.(${t.join("|")})$`,"i");return n.replace(a,"")}function ue(e){return e.endsWith("/")?e:`${e}/`}function be(e){return e.replace(/\/+$/,"")}function he(e,t,r){if(!(t&&r&&e&&V(e)))return e;const n=e.indexOf("//"),a=e.indexOf("/",n+2),o=e.indexOf(":",n+2),s=Math.min(a<0?e.length:a,o<0?e.length:o);return e.slice(n+2,s).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(s)}`}function pe(e,t){const r=new URL(e);return r.host=t,r.port&&!m.test(t)&&(r.port=""),r.toString()}function me(e){return new URL(e).host}function ge(e){return"string"==typeof e?new v(z(e)):(e.scheme||(e.scheme=k.scheme),e)}function ye(e,t){const r=S(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function we(e,t,r){const n=S(e),a=n.query||{};return a[t]=String(r),`${n.path}?${M(a)}`}function ve(e,t){if(!t)return e;const r=S(e),n=r.query||{};for(const[e,r]of Object.entries(t))null!=r&&(n[e]=r);const a=M(n);return a?`${r.path}?${a}`:r.path}function _e(e){if(null==e)return null;const t=e.match(Ae);return t?t[2]:null}function ke(e){if(null==e)return null;const t=e.match(Ae);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}async function Oe(e){return"string"==typeof e?ee(e)??{data:e}:new Promise((t,r)=>{const n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(ee(n.result)),n.onerror=e=>r(e)})}const Ae=/([^.]*)\.([^/]*)$/},52268(e,t,r){function n(e,t){return new Proxy({},{get:(r,n,a)=>(...r)=>{let a,o;const s=r[r.length-1];return function(e){return"object"==typeof e&&!Array.isArray(e)&&null!=e&&("signal"in e||"transferList"in e||0===Object.keys(e).length)}(s)&&(a=s.signal,o=s.transferList,r.pop()),e.apply(t?`${t}.${n.toString()}`:n.toString(),r,{transferList:o,signal:a})}})}r.d(t,{L:()=>n})},61322(e,t,r){r.r(t),r.d(t,{default:()=>v});var n=r(70333),a=r(49186),o=r(37955),s=r(36563),i=r(97768),c=r(74887),f=r(52268);const l={CSVSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(2109)]).then(r.bind(r,25209)),EdgeProcessingWorker:()=>Promise.all([r.e(7380),r.e(3607)]).then(r.bind(r,71936)),ElevationSamplerWorker:()=>Promise.all([r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(8487),r.e(2455)]).then(r.bind(r,38419)),FeaturePipelineWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9953),r.e(8065),r.e(8303),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(893),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(7733),r.e(5859),r.e(6682),r.e(2330),r.e(3443),r.e(4104)]).then(r.bind(r,94104)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(893),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(2330),r.e(88)]).then(r.bind(r,20401)),FlowWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(9616)]).then(r.bind(r,49616)),GaussianSplatSortWorker:()=>r.e(5856).then(r.bind(r,35856)),MeasurementWorker:()=>Promise.all([r.e(3661),r.e(1878),r.e(8885),r.e(5756),r.e(3299),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(1366)]).then(r.bind(r,69396)),GeoJSONSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(6368)]).then(r.bind(r,71202)),LercWorker:()=>r.e(7087).then(r.bind(r,57087)),Lyr3DWorker:()=>Promise.all([r.e(2741),r.e(2772)]).then(r.bind(r,72772)),MemorySourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(4948)]).then(r.bind(r,29432)),PBFDecoderWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(9679)]).then(r.bind(r,39078)),PanoramicMeshWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(4314)]).then(r.bind(r,96982)),ParquetSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(7733),r.e(6682),r.e(7867)]).then(r.bind(r,48459)),PointCloudWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(6269),r.e(7005),r.e(3082)]).then(r.bind(r,64798)),RasterWorker:()=>Promise.all([r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(8610),r.e(7373),r.e(9235),r.e(2496)]).then(r.bind(r,63966)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(9466),r.e(6269),r.e(7380),r.e(9535)]).then(r.bind(r,70491)),SceneLayerWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9953),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(8574)]).then(r.bind(r,18003)),TextureCompressionWorker:()=>Promise.all([r.e(2741),r.e(5902)]).then(r.bind(r,95902)),WFSSourceWorker:()=>Promise.all([r.e(6408),r.e(1218),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(708),r.e(9696),r.e(4560),r.e(4800),r.e(7445),r.e(4347),r.e(3832),r.e(5781)]).then(r.bind(r,33771)),WorkerTileHandler:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(5859),r.e(5013),r.e(3443),r.e(3875)]).then(r.bind(r,36849)),arcadeGeometryOperatorsWorker:()=>Promise.all([r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(5750)]).then(r.bind(r,1123)),statsWorker:()=>Promise.all([r.e(6408),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(6269),r.e(4560),r.e(7445),r.e(3832),r.e(3009)]).then(r.bind(r,33009)),ImageMeasurementWorker:()=>Promise.all([r.e(6408),r.e(3661),r.e(1878),r.e(8885),r.e(5756),r.e(3299),r.e(1218),r.e(3508),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(8065),r.e(8303),r.e(4903),r.e(1956),r.e(9466),r.e(5482),r.e(2741),r.e(4996),r.e(8902),r.e(1882),r.e(6269),r.e(893),r.e(4800),r.e(812),r.e(3832),r.e(8610),r.e(9186),r.e(4341),r.e(1695),r.e(8434),r.e(1775)]).then(r.bind(r,68747))};var d=r(8341),u=r(18357);const{CLOSE:b,ABORT:h,INVOKE:p,RESPONSE:m,OPEN_PORT:g,ON:y}=d.Go;class w{constructor(e){this._invoke=e,this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._timer=null,this._process=this._process.bind(this)}push(e){e.type===h?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class v{static{this.kernelInfo={buildDate:u.$,fullVersion:n.ol,revision:u.u}}static{this.clients=new Map}static connect(e,t){const r=new MessageChannel;let n;n="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const a=new v(r.port1,{channel:r,client:n,schedule:t});return"object"==typeof n&&"remoteClient"in n&&(n.remoteClient=a),v.clients.set(a,n),r.port2}static loadWorker(e){const t=l[e];return t?t():Promise.resolve(null)}constructor(e,t,r,n){this._port=e,this._jobQueue=r,this._lowPriorityJobQueue=n,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new w(e=>this._onInvokeMessage(e)),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._maxNumberOfConcurrentJobs=t.maxNumberOfConcurrentJobs??2,this._port.addEventListener("message",this._onMessage),this._port.start()}close(){this._post({type:b}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){return this.apply(e,[t],r)}apply(e,t,r){const n=r?.signal,o=r?.transferList;if(!this._port)return Promise.reject(new a.A(d.T,`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const s=(0,d.Jc)();return new Promise((r,a)=>{if((0,c.G4)(n))return this._processWork(),void a((0,c.NK)());const f=(0,c.u7)(n,()=>{const e=this._outJobs.get(s);e&&(this._outJobs.delete(s),this._processWork(),(0,i.xt)(e.abortHandle),this._post({type:h,jobId:s}),a((0,c.NK)()))}),l={resolve:r,reject:a,abortHandle:f,debugInfo:e};this._outJobs.set(s,l),this._post({type:p,jobId:s,methodName:e,abortable:null!=n},t,o)})}createInvokeProxy(e){return(0,f.L)(this,e)}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:y,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),(0,s.hA)(()=>{r.port1.postMessage({type:b}),r.port1.close(),r.port1.removeEventListener("message",n)})}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:g,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=this._maxNumberOfConcurrentJobs)return;const e=this._jobQueue?.pop()??this._lowPriorityJobQueue?.pop();if(!e)return;const{methodName:t,data:r,invokeOptions:n,resolver:a}=e;this.apply(t,r,n).then(e=>a.resolve(e)).catch(e=>a.reject(e))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach(e=>{(0,i.xt)(e.abortHandle),e.reject((0,c.NK)(`Worker closing, aborting job calling '${e.debugInfo}'`))}),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=null,this._client=null,this._schedule=null,this._onMessage=null,this._channel=null,this._jobQueue=void 0,this._invokeQueue=void 0,this._lowPriorityJobQueue=void 0}_onMessage(e){null!=this._schedule?this._schedule(()=>this._processMessage(e,!0)):this._processMessage(e,!1)}_processMessage(e,t){const r=(0,d.VI)(e);if(r)switch(r.type){case m:this._onResponseMessage(r);break;case p:t?this._onInvokeMessage(r):this._invokeQueue.push(r);break;case h:this._onAbortMessage(r);break;case b:this._onCloseMessage();break;case g:this._onOpenPortMessage(r);break;case y:this._onOnMessage(r)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&v.clients.get(this)===e&&e.destroy(),v.clients.delete(this),e?.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n=[],abortable:a}=e,o=a?new AbortController:null,s=this._inJobs;let i,f=this._client,l=f[t];try{if(!l&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)f=f[e[t]],l=f[e[t+1]]}if("function"!=typeof l)throw new TypeError(`${t} is not a function`);n.push({client:this,signal:o?o.signal:null}),i=l.apply(f,n)}catch(e){return void this._post({type:m,jobId:r,error:(0,d.mF)(e)})}(0,c.$X)(i)?(s.set(r,{controller:o,promise:i}),i.then(e=>{s.has(r)&&(s.delete(r),this._post({type:m,jobId:r},e))},e=>{s.has(r)&&(s.delete(r),(0,c.zf)(e)||this._post({type:m,jobId:r,error:(0,d.mF)(e||{message:`Error encountered at method ${t}`})}))})):this._post({type:m,jobId:r},i)}_onOpenPortMessage(e){new v(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,e=>{t.postMessage(e)}),n=(0,o.on)(e.port,"message",e=>{const a=(0,d.VI)(e);a?.type===b&&(n.remove(),r.remove(),t.close())})}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,o=this._outJobs;if(!o.has(t))return;const s=o.get(t);o.delete(t),this._processWork(),(0,i.xt)(s.abortHandle),r?s.reject(a.A.fromJSON(JSON.parse(r))):s.resolve(n)}_post(e,t,r){return(0,d.u1)(this._port,e,t,r)}}},8341(e,t,r){r.d(t,{Go:()=>s,Jc:()=>c,T:()=>o,VI:()=>d,mF:()=>f,oV:()=>b,u1:()=>l});var n=r(44208),a=r(74887);const o="worker:port-closed",s={HANDSHAKE:0,OPEN:1,OPENED:2,RESPONSE:3,INVOKE:4,ABORT:5,CLOSE:6,OPEN_PORT:7,ON:8};let i=0;function c(){return i++}function f(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function l(e,t,r,n){if(t.type===s.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==s.INVOKE&&t.type!==s.RESPONSE)return void e.postMessage(t);let a;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(a=u(n),t.data=r):(a=u(r.transferList),t.data=r.result),a?e.postMessage(t,a):e.postMessage(t)}function d(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!e?.length)return null;if((0,n.A)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter(e=>!function(e){return e instanceof ArrayBuffer||"ArrayBuffer"===e?.constructor?.name}(e));return t.length?t:null}async function b(e){try{return await e}catch(e){const t=e?.name===o;if(!(0,a.zf)(e)&&!t)throw e;return}}},70333(e,t,r){r.d(t,{Aq:()=>c,Y3:()=>f,id:()=>s,ol:()=>i,rE:()=>o});var n=r(44208),a=r(84952);Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const o="5.1";let s,i=o;function c(e){s=e}function f(e){const t=s?.findCredential(e);return t?.token?(0,a.rs)(e,"token",t.token):e}i="5.1.0-next.26",(0,n.A)("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),(0,n.A)("host-webworker")},39131(e,t,r){r.d(t,{$E:()=>s,py:()=>o,qG:()=>i});const n=/^https:\/\/([a-z\d-]+)(\.maps([^.]*))?\.arcgis\.com/i,a={devext:{customBaseUrl:"mapsdevext.arcgis.com",portalHostname:"devext.arcgis.com"},qaext:{customBaseUrl:"mapsqa.arcgis.com",portalHostname:"qaext.arcgis.com"},www:{customBaseUrl:"maps.arcgis.com",portalHostname:"www.arcgis.com"}};function o(e){const t=e?.match(n);if(!t)return null;const[,r,o,s]=t;if(!r)return null;let i=null,c=null,f=null;const{devext:l,qaext:d,www:u}=a;if(o)if(i=r,s)switch(s.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:f}=l);break;case"qa":({customBaseUrl:c,portalHostname:f}=d);break;default:return null}else({customBaseUrl:c,portalHostname:f}=u);else switch(r.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:f}=l);break;case"qaext":({customBaseUrl:c,portalHostname:f}=d);break;case"www":({customBaseUrl:c,portalHostname:f}=u);break;default:return null}return{customBaseUrl:c,isPortal:!1,portalHostname:f,urlKey:i}}function s(e){return!!e&&/\/(sharing|usrsvcs)\/(appservices|servers)\//i.test(e)}function i(e){const t=/^https?:\/\/(?:cdn|[a-z\d-]+\.maps)\.arcgis\.com/i,r=/^https?:\/\/(?:cdndev|[a-z\d-]+\.mapsdevext)\.arcgis\.com/i,n=/^https?:\/\/(?:cdnqa|[a-z\d-]+\.mapsqa)\.arcgis\.com/i;return t.test(e)?e=e.replace(t,"https://www.arcgis.com"):r.test(e)?e=e.replace(r,"https://devext.arcgis.com"):n.test(e)&&(e=e.replace(n,"https://qaext.arcgis.com")),e}},26306(e,t,r){function n(e){const t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r.buffer}function a(e){const t=new Uint8Array(e);let r="";for(let e=0;e<t.length;e++)r+=String.fromCharCode(t[e]);return btoa(r)}r.d(t,{M:()=>n,Y:()=>a})},18357(e,t,r){r.d(t,{$:()=>n,u:()=>a});const n="20260225",a="d86b9eb5c48a1d00f227659479a140b4858df3c6"}},t={};function r(n){var a=t[n];if(void 0!==a)return a.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>"chunks/"+{5:"c6d5f6cfbb31a3fd11ff",36:"0140dc583e20b031eac9",88:"9e7eea56e96f012f9ff4",91:"9c6e96b1c2b0418a4f1c",146:"15d7c9f5a55985ed00b4",148:"f5c5a9e771074f780fc8",182:"1482262d0788ee65ddf7",217:"a1a12552d34ea9eea130",262:"efb2a8879011d2d77a81",309:"568d32ceee1409809e5a",349:"7908aed639521cf572e8",353:"65520a443e3811255bea",368:"8021cb732f8136d87048",369:"8a0a13f398ab488dbbe9",382:"d28169816c768d55aa09",390:"b553264db0f10bb8c5f7",427:"06df187a116709f69952",490:"bcd701892ee120e13a18",547:"63934843c9f4ef779a07",561:"6792e981a3c73063a3e6",563:"c7f27a84268a9b0d8cdb",566:"3c2eb386c0165150e039",609:"d44217de4c73475f9c66",648:"d72d5031887373d35610",671:"d70678598f4080adfb39",692:"34207774bc371e95ba3c",708:"cce2ea441adb47d15a06",777:"7b297a2f712361bfae2e",788:"d31f62ecbb54bffc54f2",795:"5afee66e182f79a0fc46",812:"a3a28c4887f802e8d96d",820:"aafa33f661462f5afd2b",883:"973e3743cb7fdaa27f80",891:"f4480636a910eaa4c531",893:"5e3019ba1b4c88977a19",923:"dad9c25f1b7cacf7b052",926:"f1f78bb3d34f973c19de",980:"74e1826ad9e2c4fd3b42",1003:"6c853fd89f0e9f102c6e",1005:"835a929e37811d0f82cb",1017:"f89b7b0ccfbd1e5f9a0f",1023:"5b278b9980752ef495a2",1054:"46d28a0c20263012faff",1072:"8c2e5b116bac21e7d577",1086:"f12f96770a45ce6d1ed7",1088:"e8ae71e482b8d5f54a72",1132:"1cd091fa567fc4026356",1190:"e3a73d9acebccd3ba49b",1204:"210ef3f1cc6ef8a831bf",1214:"6b56c8ba978ec6edd6b8",1218:"561484ab6ed564e4b90f",1267:"925980d26d71987ac80c",1273:"cc697c4d9cdc116373dc",1277:"7a474ce61cf484df87b4",1285:"a0d459bdb91ee892d4b6",1352:"cb903ccbce87172a0757",1366:"84124c1a41a96192f81c",1384:"1fa2bf0d6740092ec619",1512:"cada79c174027f7a0df8",1550:"d10c65cde3565d399275",1598:"dcdddbc02b7d7febc56d",1666:"61ebbae0773fccc1f2bf",1695:"deee88e3f1641c6ef5db",1698:"114aecdbd2bd92b24de2",1728:"6a0c371ec3acd7529fe6",1763:"601e44839fd46e449aa8",1775:"868c8a152cb1452b9a94",1787:"e6220c1fa887e21ffbbd",1797:"4150774059d67a8def74",1812:"845bbd82ddacbb62ad28",1837:"3a8320a40916c755c031",1878:"4c54cb80c4dc9bbbd395",1882:"a495e60996a36ce19a32",1894:"de6b3f80070abdd61d0f",1918:"73e384fd93cf22503d84",1956:"e67bdd8bf38ebe89a344",1965:"03d11c7056fea763cbac",2025:"57b620d7e029747adca3",2061:"aec33bdb355bd04f28ae",2109:"14792047c5519dd89828",2158:"278409028bc5af45b507",2165:"48a56b19bf825f05cc6e",2174:"e44ed205f74df34adb8b",2186:"c45a5bcf26659daf02a1",2260:"fb3a42cdd0d3105ec551",2261:"2c61a53962093a331225",2266:"aa60f735ccd39cedef7e",2274:"91e56959b2fddf1a9743",2288:"b35ea099334c867bde02",2303:"5e4ea6a2784eed1423f1",2330:"57e375d8a8db9fa57193",2343:"bd278f8081be8304be8d",2369:"ce063df750018024c9ed",2372:"7cb0681cc6a5e956cb15",2390:"68abe4e70ea48e978642",2409:"f890cfa4932955ecd4e7",2423:"2b2283f1ee4bfc1baa18",2455:"36da644678e6acf3bdb5",2496:"72cd450b24fdfcef6547",2555:"18a40606e4c39f244ecd",2558:"2d956dacb26d71d1c174",2741:"a78ac951c00f090d9024",2764:"cc62e5095e328bed3e01",2772:"23cb0611abe1031c513c",2806:"85f309c1888c1c8411b1",2869:"74e3c224e879edb37812",2892:"018859b79f9ce7528ac7",2942:"7c417d2bf432e4055b3d",2958:"e021b2f0e15aee5bf3ad",2980:"3087910d19959fdc546b",2990:"63c297b6b7438f49e7ee",2997:"836d10ceb93ed19f0aa6",3009:"9de8149ae0a0726a4ab2",3052:"b4254fcb2051c873f2ba",3082:"f379f94adbe79dc305a2",3103:"4d7f7b1e7663cf6088d1",3116:"e6f51f66b71e0d6525ec",3166:"861817be5e050e9522ab",3202:"c80c6e60c87c3e5f5e62",3212:"cb6a7ca4ba2cf0b5ced7",3224:"33de1d899a4fa9ab6ab1",3276:"f0e6a26a3625068b08ab",3299:"dd6efa0afe879bd11a2e",3304:"b2a67fe89f6505498bc3",3354:"e839c5f3a0213091a399",3359:"5a6a6e7151085a3cd3dd",3390:"73c87eb9bd8f0f848481",3443:"166652b7d69bf216d7a4",3447:"91718795fc4ca6516ac7",3456:"5480d4cc342a2669a8ab",3463:"9f1f5fb648302c43ad12",3494:"11058e660139c427c3e7",3500:"7975abb2162a82c88edb",3508:"6f079f1fd6d00d2d174c",3514:"a010fc1123bc0eeda478",3543:"deaca3cd202851ecf9c2",3561:"1d0153c7d65bd9ea7d39",3607:"241ef4a1bea20b49d812",3620:"527547fa10d52cb3a7b1",3636:"835d6dd8c5a00682d879",3637:"854fe80272b59fafc2e9",3661:"e09722903e63f6cc2540",3666:"53817ef8c00d8cce4b8e",3693:"0a66a2b4aaab0774c34f",3708:"19fcc74d34cbbaa56a41",3773:"7da48362c103bf9ad8bf",3813:"75fd96fd9557ac1f8e10",3832:"d3734c8de029f1a65315",3875:"7873ee080c175d17a444",3902:"f27bbb4e26297d3c68de",3910:"cc3939983cf6f78f7243",3937:"86161025b53b916328ff",4038:"c91993503de5faa404f0",4097:"af75e91b88e747aa76ac",4104:"a7dbd38bc216713044fc",4167:"ce3e192fbb53a9c6eb3b",4168:"10a8612e7b2c74a8ce9a",4246:"db005d9419bb718b3962",4314:"8d6da6573d07385f4ed5",4341:"eb4934d3a3b82316c7c6",4347:"9736299a4ac0e21f08a7",4383:"9c6d34bb666f630d511f",4387:"b859d98fa1c39f8e4099",4423:"02cab89336504e95ed99",4447:"f82a95c46f0d579d5bf5",4496:"1be4e308280149eae4fb",4560:"1dcd057695f8db79eca2",4575:"75664587bb80f4e187e1",4579:"6f12854c5846edfe3239",4594:"6fde745f3a62e7f5a97d",4642:"9b2d0d36ee6c04c347df",4674:"eef102e13fd8878eeb96",4690:"f563dd6cace047108b3c",4724:"8cf58806671ed491a456",4795:"1bb5aa1e3693e0c68b18",4800:"41a95ad470ec42ecd5a2",4903:"d7229019876c0e4ff545",4935:"9694b4b85168a38ca24b",4948:"6e32e7b2ea2ea1a1fc04",4996:"01dd849a2d335e9f3e16",5013:"2b76a8897ad7ba284d33",5020:"21e04705cad9fef1b01b",5098:"aa3bdfd00f666c6cc521",5141:"e2661d39c48376163adf",5165:"e2bdb0e87422e222646e",5181:"777b0e07f72c42470d36",5217:"cf100c80b75ba74b479c",5243:"c3e4f8664988e50bda55",5335:"bc982142e61598bd367c",5356:"05e5b9082c0a396df7e5",5367:"c20aaca8085ce897bd12",5404:"593e9c8ac3b3b02deeb9",5482:"305b2a8dc6438c5fd4aa",5567:"f7d67b7c9785a1955b17",5605:"56c7d7c7217557375fb6",5613:"2ecfd6edab796194bf88",5666:"5f6942ac94acd7842926",5673:"eaeb95be8d4032513247",5740:"3e26f9af6b8c75bad97a",5750:"e9dd60d0220036545ebb",5756:"f5144e570952ca62a1b0",5781:"c794f7be868e53ca4a8c",5804:"0c13591347d51d684561",5841:"25bc7c7bc2793d209640",5856:"2541724a29f6058718f8",5859:"b65550b2f685ba760b2c",5902:"c1a26956713262cb3cb3",5977:"1e6062dc68c26fcf608f",5993:"51ade971dda3ebe90f31",6033:"879ce85c50b0348056b2",6052:"5d87316d6f973d95745c",6061:"493a0981e90a5799fb5b",6122:"1ede8666d804c553803e",6129:"0d9d33f29124d464a4cb",6154:"7fbee83c9463892f4808",6160:"bb3ab2453ccde2f2611c",6187:"2ecb21c402cdd8c82533",6269:"5a6d6082c5bcb1a80eda",6276:"08445fcba84ed7c23b3f",6312:"a4a4ce33de6432ba4dc3",6320:"0df585420c9cec6a7265",6342:"3e61e7805dc6ff284831",6343:"8d1d0c3f0532aa98487d",6364:"7189e03cc24f5c10865a",6368:"4fc6dd1423075e145b29",6408:"a96c7432ca97cbeef4b8",6418:"764d080f77dec5e7a02c",6491:"576995021660e8b34705",6554:"f4301ea9a6cb3bcef906",6558:"f7506c9d57b2ae0c5fd3",6606:"5690b49f355a5e2083a9",6618:"4754610760f3f634adf9",6650:"5028de543cc1b8e60e65",6671:"9647f3983f955da21093",6682:"abc2471cfa9430ca5645",6708:"e37e7ae2de974cef9a90",6859:"6ac84e6d33104e74398d",6861:"31eb59eae4c89b76e302",6956:"e0344b45af88081fa186",6960:"1a1e57267306c07e5bdb",6989:"592f6bf0283152481f21",7005:"f6c9742691ccdaed44a2",7087:"b8005b1996f42dee8237",7217:"416c57df61fbd193078b",7301:"465cc0e00f03cdb640b2",7316:"d587b7842091affdaac3",7367:"c327fe276238af60fda4",7373:"6997b4d5bcc9c4755375",7380:"c4dc60617152d885f3da",7433:"6cdda5aa35fa12ea9345",7444:"de5719ef663224860af5",7445:"c9a42d86185a0ad35dd1",7451:"2de299ff3a902d380be6",7464:"285f3b07de852bfc1604",7528:"b3950d5f1f3352521504",7546:"f50bba74ae72c07e131a",7548:"2f3aeaa25a76ab94b8e5",7557:"a4919dd9963f853a0077",7561:"d3c760109a70a71448c5",7609:"889835e61ea97f090082",7617:"70263c2182dc43046742",7632:"612873df0c8659ac2aa5",7656:"ea245d3a6fd601fffd88",7705:"9a2b1f0ca66c1b87c830",7716:"63b5b57f27c7c6194d44",7733:"7601408e242dca1d25bd",7772:"0c706cdff6eac940eaab",7809:"c1dc14b07282474a7c2d",7835:"804c31973f7d116523cb",7837:"452d71789a1b77cff48d",7867:"d7840c3e792efcccee35",7883:"5b70ee8122262de5bbdf",7885:"2e06baf6469820697f17",7916:"aa9c11f25d95372998a3",7982:"209acb3ad16c99bb506c",7987:"c09bc36347e8eb9fff00",7992:"87a7d405a0b9a541d7f2",8008:"b730131e52f9220db031",8010:"1ee3d44e6d7add0b24cb",8018:"8f6833671c071b522923",8065:"190bc75254bc0542a6be",8125:"5b3bb636e3bec625e515",8303:"5e360f933da02d8d2455",8345:"a35d1be700ebd3109397",8366:"feececf6809231f72c5a",8377:"4d16b6ac52e25bd7e6aa",8399:"7cec3252e3ee56424b9e",8414:"21decfc1e477fb769204",8434:"359d3ba9d6e3b1de05d1",8457:"43f60f41d353d3fc7c4b",8487:"1df8330823841b5bb6a5",8574:"2063b49607a03f7718ee",8594:"0711c856144cd8700e7e",8599:"108d652a959e7de31cbf",8610:"a34e3c6da7d98569c052",8679:"5cbc12545f42a32fb960",8692:"ca64867bc322a354be8e",8714:"0d6afba80d2f8dcb5cf7",8812:"88c3b60b403e2454b56e",8885:"a7a9716582b256d76e5b",8902:"b364ec104dd59faa41b6",8948:"5fa5a2fb69f84e9092ba",9013:"953f671bdeb2ca9b9f37",9028:"7dd1e93469d0b1d652bc",9036:"179b3385c24ad8a05e1d",9062:"5eb9fdb076488de9cd83",9126:"b1c6a1759febad66927f",9134:"de33ce9b6f4e6c0e1389",9156:"1d697642fb2a6332b7f9",9159:"99101789035f1787c630",9169:"c2cda93905f0a49a6931",9186:"403060849a2573bbf110",9187:"8351012ceb466f01b8fd",9192:"2ce845c990bb4d701362",9235:"666f201d222c50ab8428",9239:"74d9dd484b9bc4dc7e3d",9321:"4b24f72b56edc28bb15e",9397:"0a73767d0a930519772d",9466:"2bd8bf6749d101d82d61",9506:"faad127dc07e54e7f6d1",9535:"ef72f4822284bcad75d8",9550:"da780342f16e65b55ac8",9588:"7a2e9626d0853a6d1547",9597:"551fee27bf3abf0c41fd",9598:"9522430d34d29c1ffb1a",9616:"e3fe1db9380633292b27",9657:"544bfa97837770a8792f",9679:"7386a61f9610b8e5c608",9695:"38d5dd4d457428244302",9696:"1f54ed4a5238ba1a2551",9697:"e063cce778944fe97dd3",9784:"7a2dd3d85d31dce29d94",9790:"7d274a077bdfa8c485e8",9835:"2f23af31b1190754ce13",9838:"8838ff9668b472af16a1",9926:"d01a98c13501c89205b6",9933:"54794b18edc584fd7515",9938:"7b59ddad3c73f5f44b4d",9953:"dcef87f7d06c45cd928b",9958:"8ab39731775b0867a512",9962:"2abb64323839367c9205"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={76:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[a,o,s]=t;for(var i in o)r.o(o,i)&&(r.m[i]=o[i]);for(s&&s(r);a.length;)e[a.pop()]=1;n(t)}})(),r(66358);var n=r(61322);RemoteClient=n})();
@@ -554,7 +554,7 @@ vec3 rawNormal = textureLookup(normalTexture, uv).rgb * 2.0 - 1.0;`),v&&r.code.a
554
554
  normalTextureTransformMatrix[1][0]/scale[0], normalTextureTransformMatrix[1][1]/scale[1], 0.0,
555
555
  0.0, 0.0, 0.0 );
556
556
  rawNormal.xy = (normalRotation * vec3(rawNormal.x, rawNormal.y, 1.0)).xy;`),r.code.add(l.H`return tangentSpace * rawNormal;
557
- }`))}(e,t)}},14527(e,t,r){r.d(t,{n:()=>_t});var i=r(31821),n=r(12791),o=r(5482),s=r(34727),a=r(97768),l=r(36708),c=r(78659),u=r(91429),d=r(37585),h=r(69540);let m=class extends h.Pw{constructor(e){super(e),this.row=0,this.column=0,this.rows=1,this.columns=1}equals(e){return null!=e&&this.row===e.row&&this.rows===e.rows&&this.column===e.column&&this.columns===e.columns}};(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"row",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"column",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"rows",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"columns",void 0),m=(0,o.Cg)([(0,u.$K)("esri.CameraLayout")],m);const p=m;var f=r(69052),g=r(25482),v=r(56507),_=r(86738),x=r(43937),y=r(36005);let w=class extends((0,h.OU)(g.o)){constructor(...e){super(...e),this.position=new _.A([0,0,0]),this.heading=0,this.tilt=0,this.fov=55,this.layout=new p}normalizeCtorArgs(e,t,r,i){if(e&&"object"==typeof e&&("x"in e||Array.isArray(e))){const n={position:e};return null!=t&&(n.heading=t),null!=r&&(n.tilt=r),null!=i&&(n.fov=i),n}return e}writePosition(e,t,r,i){const n=e.clone();n.x=(0,v.GB)(e.x||0),n.y=(0,v.GB)(e.y||0),n.z=e.hasZ?(0,v.GB)(e.z||0):e.z,t[r]=n.write({},i)}readPosition(e,t){const r=new _.A;return r.read(e,t),r.x=(0,v.GB)(r.x||0),r.y=(0,v.GB)(r.y||0),r.z=r.hasZ?(0,v.GB)(r.z||0):r.z,r}equals(e){return null!=e&&this.tilt===e.tilt&&this.heading===e.heading&&this.fov===e.fov&&this.position.equals(e.position)&&this.layout.equals(e.layout)}};(0,o.Cg)([(0,u.MZ)({type:_.A,json:{write:{isRequired:!0}}})],w.prototype,"position",void 0),(0,o.Cg)([(0,x.K)("position")],w.prototype,"writePosition",null),(0,o.Cg)([(0,y.w)("position")],w.prototype,"readPosition",null),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}}),(0,u.wg)(e=>f.ie.normalize((0,v.GB)(e)))],w.prototype,"heading",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}}),(0,u.wg)(e=>(0,s.qE)((0,v.GB)(e),-180,180))],w.prototype,"tilt",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{default:55,write:!0}}),(0,u.wg)(e=>(0,s.qE)((0,v.GB)(e,55),1,170))],w.prototype,"fov",void 0),(0,o.Cg)([(0,u.MZ)({type:p,nonNullable:!0,json:{read:!1,write:!1}})],w.prototype,"layout",void 0),w=(0,o.Cg)([(0,u.$K)("esri.Camera")],w);var b=r(9093),M=r(35522),T=r(51850),S=r(16930),C=(r(48353),r(9762),r(65806)),A=r(27993),E=r(73941),R=(r(19419),r(71351)),I=r(69622),O=r(53966),F=r(90629),P=r(58083),D=r(48163),N=r(78955),H=r(91829),L=r(82919),B=r(44280);function z(e,t,r){e.worldUpAtPosition(t,U),(0,M.Re)(G,r,t);const i=(0,M.Bw)(G);return 0===i?0:(0,s.XM)((0,M.Om)(G,U)/i)}const U=(0,T.vt)(),G=(0,T.vt)();var V;let j=V=class extends I.A{constructor(e){super(e),this._ray=(0,R.vt)(),this._viewport=(0,H.fA)(0,0,1,1),this._padding=(0,H.fA)(0,0,0,0),this._fov=55/180*Math.PI,this._nearFar=(0,D.fA)(1,1e3),this._viewDirty=!0,this._viewMatrix=(0,b.vt)(),this._viewProjectionDirty=!0,this._viewProjectionMatrix=(0,b.vt)(),this._viewInverseTransposeMatrixDirty=!0,this._viewInverseTransposeMatrix=(0,b.vt)(),this._frustumDirty=!0,this._frustum=(0,L.vt)(),this._fullViewport=(0,H.vt)(),this._pixelRatio=1,this.row=0,this.column=0,this._rows=1,this._columns=1,this._center=(0,T.vt)(),this._up=(0,T.vt)(),this.relativeElevation=0}get pixelRatio(){return this._pixelRatio}set pixelRatio(e){this._pixelRatio=e>0?e:1}get rows(){return this._rows}set rows(e){this._rows=Math.max(1,e)}get columns(){return this._columns}set columns(e){this._columns=Math.max(1,e)}get eye(){return this._ray.origin}set eye(e){this._compareAndSetView(e,this._ray.origin)}get center(){return this._center}set center(e){this._compareAndSetView(e,this._center,"_center")}get ray(){return(0,M.Re)(this._ray.direction,this.center,this.eye),this._ray}get up(){return this._up}set up(e){this._compareAndSetView(e,this._up,"_up")}get viewMatrix(){return this._ensureViewClean(),this._viewMatrix}set viewMatrix(e){(0,P.C)(this._viewMatrix,e),this.notifyChange("_viewMatrix"),this._viewDirty=!1,this._viewInverseTransposeMatrixDirty=!0,this._viewProjectionDirty=!0,this._frustumDirty=!0}get viewForward(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),-this._viewMatrix[2],-this._viewMatrix[6],-this._viewMatrix[10])}get viewUp(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),this._viewMatrix[1],this._viewMatrix[5],this._viewMatrix[9])}get viewRight(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),this._viewMatrix[0],this._viewMatrix[4],this._viewMatrix[8])}get nearFar(){return this._nearFar}get near(){return this._nearFar[0]}set near(e){this._nearFar[0]!==e&&(this._nearFar[0]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_nearFar"))}get far(){return this._nearFar[1]}set far(e){this._nearFar[1]!==e&&(this._nearFar[1]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_nearFar"))}get viewport(){return this._viewport}set viewport(e){this.x=e[0],this.y=e[1],this.width=e[2],this.height=e[3]}get screenViewport(){if(1===this.pixelRatio)return this._viewport;const e=(0,N.hs)((0,H.vt)(),this._viewport,1/this.pixelRatio),t=this._get("screenViewport");return t&&(0,N.aI)(e,t)?t:e}get screenPadding(){if(1===this.pixelRatio)return this._padding;const e=(0,N.hs)((0,H.vt)(),this._padding,1/this.pixelRatio),t=this._get("screenPadding");return t&&(0,N.aI)(e,t)?t:e}get x(){return this._viewport[0]}set x(e){e+=this._padding[3],this._viewport[0]!==e&&(this._viewport[0]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get y(){return this._viewport[1]}set y(e){e+=this._padding[2],this._viewport[1]!==e&&(this._viewport[1]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get width(){return this._viewport[2]}set width(e){this._viewport[2]!==e&&(this._viewport[2]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get height(){return this._viewport[3]}set height(e){this._viewport[3]!==e&&(this._viewport[3]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get fullWidth(){return this._viewport[2]+this._padding[1]+this._padding[3]}set fullWidth(e){this.width=e-(this._padding[1]+this._padding[3])}get fullHeight(){return this._viewport[3]+this._padding[0]+this._padding[2]}set fullHeight(e){this.height=e-(this._padding[0]+this._padding[2])}get fullViewport(){return this._fullViewport[0]=this._viewport[0]-this._padding[3],this._fullViewport[1]=this._viewport[1]-this._padding[2],this._fullViewport[2]=this.fullWidth,this._fullViewport[3]=this.fullHeight,this._fullViewport}get _aspect(){return this.width/this.height}get padding(){return this._padding}set padding(e){(0,N.t2)(this._padding,e)||(this._viewport[0]+=e[3]-this._padding[3],this._viewport[1]+=e[2]-this._padding[2],this._viewport[2]-=e[1]+e[3]-(this._padding[1]+this._padding[3]),this._viewport[3]-=e[0]+e[2]-(this._padding[0]+this._padding[2]),(0,N.C)(this._padding,e),this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_padding"),this.notifyChange("_viewport"))}get viewProjectionMatrix(){return this._viewProjectionDirty&&((0,P.lw)(this._viewProjectionMatrix,this.projectionMatrix,this.viewMatrix),this._viewProjectionDirty=!1),this._viewProjectionMatrix}get projectionMatrix(){return this._projectionMatrixInternal}get inverseProjectionMatrix(){return(0,P.B8)((0,b.vt)(),this.projectionMatrix)||this._get("inverseProjectionMatrix")||(0,b.vt)()}get fov(){return this._fov}set fov(e){this._fov=e,this._viewProjectionDirty=!0,this._frustumDirty=!0}get fovX(){return e=this._fov,t=this.width,r=this.height,2*Math.atan(t*Math.tan(.5*e)/Math.sqrt(t*t+r*r));var e,t,r}set fovX(e){this._fov=function(e,t,r){return 2*Math.atan(Math.sqrt(t*t+r*r)*Math.tan(.5*e)/t)}(e,this.width,this.height),this._viewProjectionDirty=!0,this._frustumDirty=!0}get fovY(){return e=this._fov,t=this.width,r=this.height,2*Math.atan(r*Math.tan(.5*e)/Math.sqrt(t*t+r*r));var e,t,r}set fovY(e){this._fov=function(e,t,r){return 2*Math.atan(Math.sqrt(t*t+r*r)*Math.tan(.5*e)/r)}(e,this.width,this.height),this._viewProjectionDirty=!0,this._frustumDirty=!0}get distance(){return(0,M.Io)(this.center,this.eye)}get frustum(){return this._recomputeFrustum(),this._frustum}get viewInverseTransposeMatrix(){return(this._viewInverseTransposeMatrixDirty||this._viewDirty)&&((0,P.B8)(this._viewInverseTransposeMatrix,this.viewMatrix),(0,P.mg)(this._viewInverseTransposeMatrix,this._viewInverseTransposeMatrix),this._viewInverseTransposeMatrixDirty=!1),this._viewInverseTransposeMatrix}depthNDCToWorld(e){const{near:t,far:r}=this;return 2*t*r/(r+t-e*(r-t))}get perRenderPixelRatio(){return Math.tan(this.fovX/2)/(this.width/2)}get perScreenPixelRatio(){return this.perRenderPixelRatio*this.pixelRatio}get aboveGround(){return null!=this.relativeElevation&&this.relativeElevation>=0}get _projectionMatrixInternal(){const e=this.width,t=this.height,r=this.near*Math.tan(this.fovY/2)*2,i=r*this._aspect,n=r/this.rows,o=i/this.columns,s=-i/2+this.column*o,a=s+o,l=-r/2+this.row*n,c=l+n,u=(0,P.$h)((0,b.vt)(),s*(1+2*this._padding[3]/e),a*(1+2*this._padding[1]/e),l*(1+2*this._padding[2]/t),c*(1+2*this._padding[0]/t),this.near,this.far),d=this._get("projectionMatrix");return d&&(0,P.aI)(d,u)?d:u}copyFrom(e){(0,M.C)(this._ray.origin,e.eye),this.center=e.center,this.up=e.up,(0,N.C)(this._viewport,e.viewport),this.notifyChange("_viewport"),(0,N.C)(this._padding,e.padding),this.notifyChange("_padding"),(0,d.C)(this._nearFar,e.nearFar),this.notifyChange("_nearFar"),this._fov=e.fov,this.row=e.row,this.column=e.column,this.rows=e.rows,this.columns=e.columns,this.relativeElevation=e.relativeElevation;const t=e;return this._viewDirty=t._viewDirty,this._viewDirty||((0,P.C)(this._viewMatrix,e.viewMatrix),this.notifyChange("_viewMatrix")),this._viewProjectionDirty=!0,this._frustumDirty=t._frustumDirty,this._frustumDirty||((0,L.C)(this._frustum,e.frustum),this._frustumDirty=!1),t._viewInverseTransposeMatrixDirty?this._viewInverseTransposeMatrixDirty=!0:((0,P.C)(this._viewInverseTransposeMatrix,e.viewInverseTransposeMatrix),this._viewInverseTransposeMatrixDirty=!1),(0,N.C)(this._fullViewport,e.fullViewport),this.pixelRatio=e.pixelRatio,this}copyViewFrom(e){this.eye=e.eye,this.center=e.center,this.up=e.up,this.fov=e.fov}clone(){return(new V).copyFrom(this)}equals(e){return(0,M.t2)(this.eye,e.eye)&&(0,M.t2)(this.center,e.center)&&(0,M.t2)(this.up,e.up)&&(0,N.t2)(this._viewport,e.viewport)&&(0,N.t2)(this._padding,e.padding)&&(0,d.t2)(this.nearFar,e.nearFar)&&this._fov===e.fov&&this.pixelRatio===e.pixelRatio&&this.relativeElevation===e.relativeElevation&&this.row===e.row&&this.column===e.column&&this.rows===e.rows&&this.columns===e.columns}almostEquals(e){const t=Math.max(1,1/this.pixelRatio,1/e.pixelRatio);if(Math.abs(e.fov-this._fov)>=.001||(0,N.hG)(e.screenPadding,this.screenPadding)>=t||(0,N.hG)(this.screenViewport,e.screenViewport)>=t||this.row!==e.row||this.column!==e.column||this.rows!==e.rows||this.columns!==e.columns)return!1;(0,M.jb)(Z,e.eye,e.center),(0,M.jb)($,this.eye,this.center);const r=(0,M.Om)(Z,$),i=(0,M.uE)(Z),n=(0,M.uE)($),o=5e-4;return r*r>=(1-1e-10)*i*n&&(0,M.lo)(e.eye,this.eye)<Math.max(i,n)*o*o}computeRenderPixelSizeAt(e){return this.computeRenderPixelSizeAtDist(this._viewDirectionDistance(e))}computeRenderPixelSizeAtDist(e){return e*this.perRenderPixelRatio}computeScreenPixelSizeAt(e){return this.computeScreenPixelSizeAtDist(this._viewDirectionDistance(e))}_viewDirectionDistance(e){return Math.abs((0,B.gr)(this.viewForward,(0,M.Re)(Z,e,this.eye)))}computeScreenPixelSizeAtDist(e){return e*this.perScreenPixelRatio}computeDistanceFromRadius(e,t){return e/Math.tan(Math.min(this.fovX,this.fovY)/(2*(t||1)))}getScreenCenter(e=(0,F.gs)()){return e[0]=(this.padding[3]+this.width/2)/this.pixelRatio,e[1]=(this.padding[0]+this.height/2)/this.pixelRatio,e}getRenderCenter(e,t=.5,r=.5){return e[0]=this.padding[3]+this.width*t,e[1]=this.padding[2]+this.height*r,e[2]=.5,e}setGLViewport(e){const t=this.viewport,r=this.padding;e.setViewport(t[0]-r[3],t[1]-r[2],t[2]+r[1]+r[3],t[3]+r[0]+r[2])}applyProjection(e,t){e!==W&&(0,M.C)(W,e),W[3]=1,(0,N.Z0)(W,W,this.projectionMatrix);const r=Math.abs(W[3]);(0,M.hs)(W,W,1/r);const i=this.fullViewport;t[0]=(0,s.Cc)(0,i[0]+i[2],.5+.5*W[0]),t[1]=(0,s.Cc)(0,i[1]+i[3],.5+.5*W[1]),t[2]=.5*(W[2]+1),t[3]=r}unapplyProjection(e,t){const r=this.fullViewport;W[0]=(e[0]/(r[0]+r[2])*2-1)*e[3],W[1]=(e[1]/(r[1]+r[3])*2-1)*e[3],W[2]=(2*e[2]-1)*e[3],W[3]=e[3],null!=this.inverseProjectionMatrix&&((0,N.Z0)(W,W,this.inverseProjectionMatrix),t[0]=W[0],t[1]=W[1],t[2]=W[2])}projectToScreen(e,t){return this.projectToRenderScreen(e,q),this.renderToScreen(q,t),t}projectToRenderScreen(e,t){if(W[0]=e[0],W[1]=e[1],W[2]=e[2],W[3]=1,(0,N.Z0)(W,W,this.viewProjectionMatrix),0===W[3])return null;const r=W;(0,M.hs)(r,r,1/Math.abs(W[3]));const i=this.fullViewport,n=(0,s.Cc)(0,i[0]+i[2],.5+.5*r[0]),o=(0,s.Cc)(0,i[1]+i[3],.5+.5*r[1]);return"x"in t?(t.x=n,t.y=o):(t[0]=n,t[1]=o,t.length>2&&(t[2]=.5*(r[2]+1))),t}unprojectFromScreen(e,t){return this.unprojectFromRenderScreen(this.screenToRender(e,q),t)}unprojectFromRenderScreen(e,t){if((0,P.lw)(k,this.projectionMatrix,this.viewMatrix),!(0,P.B8)(k,k))return null;const r=this.fullViewport;return W[0]=2*(e[0]-r[0])/r[2]-1,W[1]=2*(e[1]-r[1])/r[3]-1,W[2]=2*e[2]-1,W[3]=1,(0,N.Z0)(W,W,k),0===W[3]?null:(t[0]=W[0]/W[3],t[1]=W[1]/W[3],t[2]=W[2]/W[3],t)}constrainWindowSize(e,t,r,i){const n=e*this.pixelRatio,o=t*this.pixelRatio,s=Math.max(n-r/2,0),a=Math.max(this.fullHeight-o-i/2,0),l=-Math.min(n-r/2,0),c=-Math.min(this.fullHeight-o-i/2,0),u=r-l- -Math.min(this.fullWidth-n-r/2,0),d=i-c- -Math.min(o-i/2,0);return[Math.round(s),Math.round(a),Math.round(u),Math.round(d)]}computeUp(e){1===e?this._computeUpGlobal():this._computeUpLocal()}screenToRender(e,t){const r=e[0]*this.pixelRatio,i=this.fullHeight-e[1]*this.pixelRatio;return t[0]=r,t[1]=i,t}renderToScreen(e,t){const r=e[0]/this.pixelRatio,i=(this.fullHeight-e[1])/this.pixelRatio;t[0]=r,t[1]=i}sphereFrustumCoverage(e,t){const{center:r,eye:i,distance:n,fovY:o}=this,s=Math.abs(Math.PI/2-z(t,r,i));return e.frustumCoverage(s,n,o)}_computeUpGlobal(){(0,M.Re)(Z,this.center,this.eye);const e=(0,M.Bw)(this.center);e<1?(0,M.t2)(this._up,T.Cb)&&((0,M.C)(this._up,T.Cb),this._markViewDirty(),this.notifyChange("_up")):Math.abs((0,M.Om)(Z,this.center))>.9999*(0,M.Bw)(Z)*e||((0,M.$A)($,Z,this.center),(0,M.$A)($,$,Z),(0,M.S8)($,$),(0,M.t2)(this._up,$)||((0,M.C)(this._up,$),this.notifyChange("_up"),this._markViewDirty()))}_computeUpLocal(){(0,M.oW)(Z,this.eye,this.center),Math.abs(Z[2])<=.9999&&((0,M.hs)(Z,Z,Z[2]),(0,M.hZ)(Z,-Z[0],-Z[1],1-Z[2]),(0,M.S8)(Z,Z),(0,M.t2)(this._up,Z)||((0,M.C)(this._up,Z),this.notifyChange("_up"),this._markViewDirty()))}_compareAndSetView(e,t,r=""){"number"==typeof e[0]&&isFinite(e[0])&&"number"==typeof e[1]&&isFinite(e[1])&&"number"==typeof e[2]&&isFinite(e[2])?(0,M.t2)(e,t)||((0,M.C)(t,e),this._markViewDirty(),r.length&&this.notifyChange(r)):O.A.getLogger("esri.views.3d.webgl-engine.lib.RenderCamera").warn("RenderCamera vector contains invalid number, ignoring value")}_markViewDirty(){this._viewDirty=!0,this._frustumDirty=!0,this._viewProjectionDirty=!0}_recomputeFrustum(){this._frustumDirty&&((0,L.ui)(this.viewMatrix,this.projectionMatrix,this._frustum),this._frustumDirty=!1)}_ensureViewClean(){this._viewDirty&&((0,P.t5)(this._viewMatrix,this.eye,this.center,this.up),this.notifyChange("_viewMatrix"),this._viewDirty=!1,this._viewInverseTransposeMatrixDirty=!0)}};(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewport",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_padding",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_fov",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_nearFar",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewDirty",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewMatrix",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_pixelRatio",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"pixelRatio",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"row",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"column",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_rows",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"rows",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_columns",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"columns",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"eye",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"center",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_center",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"up",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_up",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewForward",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewUp",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewRight",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"nearFar",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"near",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"far",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewport",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"screenViewport",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"screenPadding",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"x",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"y",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"width",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"height",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fullWidth",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fullHeight",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"_aspect",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"padding",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"projectionMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"inverseProjectionMatrix",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fov",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fovX",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fovY",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewInverseTransposeMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"_projectionMatrixInternal",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"relativeElevation",void 0),j=V=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl.RenderCamera")],j);const W=(0,H.vt)(),k=(0,b.vt)(),Z=(0,T.vt)(),$=(0,T.vt)(),q=(0,F.r_)();r(49718),r(6867),r(16396),(0,T.vt)(),(0,T.vt)(),(0,T.vt)();var Y=r(5443),X=r(39829),K=r(95108);function J(e,t,r,i){const n=function(e,t){const r=0===t||2===t?0:1,i=e[t],n=0===t||1===t?1:-1,o=0===r?1:0;return(e,t,s)=>{if(t[r]<i&&s[r]<i)return 1===n?0:1;if(t[r]>i&&s[r]>i)return 1===n?1:0;const a=(s[o]-t[o])/(s[r]-t[r]),l=t[o]+a*(i-t[r]);return e[r]=i,e[o]=l,(t[r]<i?1:-1)*n>0?2:3}}(r,i);if(e.length=0,t.length){1===n(ee,t[0],t[0])&&Q(e,t[0]);for(let r=0;r<t.length;r++){const i=t[r===t.length-1?0:r+1];switch(n(ee,t[r],i)){case 1:Q(e,i);break;case 3:Q(e,(0,D.o8)(ee));break;case 2:Q(e,(0,D.o8)(ee)),Q(e,i)}}}}function Q(e,t){0!==e.length&&(0,d.aI)(e.at(-1),t)||e.push(t)}const ee=(0,D.vt)();var te=r(11964),re=r(27921);const ie=(0,T.vt)(),ne=(0,T.vt)();function oe(){return{direction:(0,T.vt)(),up:(0,T.vt)()}}function se(e,t,r,i,n){let o=(0,M.S8)(ie,e),a=(0,M.Om)(o,i);const l=a>0;a=Math.abs(a),a>.99&&(a=Math.abs((0,M.Om)(t,i)),a<.99?((0,M.C)(o,t),l&&(0,M.hs)(o,o,-1)):o=null);let c=0;if(o){(0,M.hs)(ne,i,(0,M.Om)(i,o)),(0,M.Re)(o,o,ne);const e=(0,M.Om)(o,n)/((0,M.Bw)(o)*(0,M.Bw)(n));(0,M.$A)(ne,o,n),c=((0,M.Om)(ne,i)>0?1:-1)*(0,s.KJ)((0,s.XM)(e))}const u=(0,s.KJ)((0,s.XM)(-(0,M.Om)(i,e)/(0,M.Bw)(e)));return r?(r.heading=c,r.tilt=u,r):{heading:c,tilt:u}}function ae(e,t,r,i){(0,M.Re)(le,r,t),(0,re.T7)(i,(0,te.LV)(t,le),e)||e===r||(0,M.C)(e,r)}const le=(0,T.vt)(),ce=(0,T.fA)(0,1,0),ue=(0,T.fA)(0,0,1),de=(0,b.vt)(),he=(0,T.vt)(),me=(0,T.vt)();function pe(e,t,r,i=oe()){const{direction:n,up:o}=i;return(0,P.N9)(de,-(0,s.kU)(t)),(0,P.eL)(de,de,(0,s.kU)(r)),(0,M.Z0)(n,ue,de),(0,M.hs)(n,n,-1),(0,M.Z0)(o,ce,de),i}function fe(e,t,r,i,n){const o=t.lines[11].direction,s=(n-r.getAltitude(i))/o[2];(0,M.Ln)(e,i,o,s)}const ge=(0,T.vt)();Object.freeze(Object.defineProperty({__proto__:null,directionToHeadingTilt:function(e,t,r,i){return se(t,r,i,ue,ce)},eyeForCenterWithHeadingTilt:function(e,t,r,i){const n=pe(0,r,i),o=(0,T.vt)();return(0,M.hs)(o,n.direction,-t),(0,M.WQ)(o,o,e),{up:n.up,eye:o,heading:r,tilt:i}},eyeTiltToLookAtTilt:function(e){return(0,s.kU)(e)},headingTiltToDirectionUp:pe,lookAtTiltToEyeTilt:function(e){return(0,s.KJ)(e)},toArea:function(e,t){const r=e.frustum,{renderCoordsHelper:i}=e,n=i.getAltitude(t),o=e.spatialReference,s=e.state.camera.eye,a=[],l=r.planes[5];for(let e=0;e<4;e++){const t=r.lines[e];i.intersectInfiniteManifold((0,R.LV)(t.origin,t.direction),n,ge)||fe(ge,r,i,t.endpoint,n),ae(ge,s,ge,l),a.push((0,D.fA)(ge[0],ge[1]))}return function(e,t,r){const i=e.map(e=>((0,M.hZ)(ge,e[0],e[1],0),t.fromRenderCoords(ge,ge,r),[ge[0],ge[1]]));return i.length<=2?new X.A({spatialReference:r}):(i.push(i[0].slice()),(0,K.$3)(i)||i.reverse(),new X.A({rings:[i],spatialReference:r}))}(function(e,t){const r=[],i=[];return J(r,e,t,0),J(i,r,t,1),J(r,i,t,2),J(i,r,t,3),i}(a,i.extent),i,o)},toExtent:function(e,t,r,i,n){const o=e.renderSpatialReference,s=e.spatialReference??t.spatialReference;return(0,C.g)(t,he,o),(0,C.g)(t,me,o),he[0]-=r/2,me[0]+=r/2,he[1]-=i/2,me[1]+=i/2,(0,A.F)(he,o,he,s),(0,A.F)(me,o,me,s),n?(n.xmin=he[0],n.ymin=he[1],n.xmax=me[0],n.ymax=me[1],n.spatialReference=s):n=new Y.A(he[0],he[1],me[0],me[1],s),n}},Symbol.toStringTag,{value:"Module"}));var ve=r(34304),_e=r(17136),xe=r(94008),ye=r(28735);class we{get planes(){return this.frustum}get points(){return this._points}get mutablePoints(){return this._points}get direction(){return this._direction}get origin(){return this._origin}get boundingSphere(){return this._boundingSphereDirty&&this._updateBoundingSphere(),this._boundingSphere}constructor(e){this.renderCoordsHelper=e,this.frustum=(0,L.vt)(),this._points=(0,L.Qy)(),this.lines=new Array(12),this._origin=(0,T.vt)(),this._direction=(0,T.vt)(),this._boundingSphere=new xe.iy,this._altitude=null,this._boundingSphereDirty=!0;for(let e=0;e<12;e++)this.lines[e]={origin:null,direction:(0,T.vt)(),endpoint:null}}update(e){(0,L.ui)(e.viewMatrix,e.projectionMatrix,this.frustum,this._points),(0,M.C)(this._origin,e.eye),(0,M.C)(this._direction,e.viewForward),this._altitude=this.renderCoordsHelper.getAltitude(this._origin),this._updateLines(),this._boundingSphereDirty=!0}updatePoints(e){for(let t=0;t<this._points.length;t++)(0,M.C)(this._points[t],e[t]);(0,L.DV)(this.frustum,this._points),this._updateLines()}get altitude(){return this._altitude}intersectsSphere(e){return(0,L.m7)(this.frustum,e)}intersectsRay(e){return(0,L.pw)(this.frustum,e)}intersectsLineSegment(e,t){return(0,L.ST)(this.frustum,e,t)}intersectsPoint(e){return(0,L.bU)(this.frustum,e)}_updateLines(){const e=this._points;for(let t=0;t<4;t++){const r=t+4;be(this.lines[t],e[t],e[r]),be(this.lines[t+4],e[t],3===t?e[0]:e[t+1]),be(this.lines[t+8],e[r],3===t?e[4]:e[r+1])}}_updateBoundingSphere(){const{origin:e}=this,t=Te;(0,M.S8)(t,this.direction);const r=Me;(0,M.jb)(r,this.points[4],e);const i=.5*(0,M.Om)(r,r)/(0,M.Om)(t,r),n=this._boundingSphere,o=(0,M.Ln)(Se,e,t,i);n.center=o,n.radius=i}static{this.planePointIndices=L.c8}static{this.nearFarLineIndices=[[0,4],[1,5],[2,6],[3,7]]}}function be(e,t,r){e.origin=t,e.endpoint=r,(0,M.oW)(e.direction,t,r)}const Me=(0,T.vt)(),Te=(0,T.vt)(),Se=(0,T.vt)();r(86211);const Ce=(0,T.fA)(5802e-9,13558e-9,331e-7),Ae=(0,T.fA)(65e-8*3,5643e-9,255e-9);(0,T.fA)(Ce[0]+Ae[0],Ce[1]+Ae[1],Ce[2]+Ae[2]);class Ee{constructor(e=1/0,t=-1/0){this.near=e,this.far=t}set(e,t){this.near=e,this.far=t}union(e){return null!=e&&(this.near=Math.min(this.near,e.near),this.far=Math.max(this.far,e.far)),this}within(e){return this.near<=e&&e<=this.far}equals(e){return this.near===e.near&&this.far===e.far}static{this.Zero=new Ee(0,0)}static{this.Infinite=new Ee}}(0,T.vt)(),(0,T.vt)(),new xe.iy,(0,R.vt)(),new Y.A({xmin:0,ymin:0,zmin:0,xmax:0,ymax:0,zmax:0});var Re=r(32728);const Ie=(0,T.fA)(0,0,1),Oe=(0,M.S8)((0,T.vt)(),(0,T.fA)(1,1,1)),Fe=(0,b.vt)(),Pe=(0,T.vt)(),De=(0,T.vt)();function Ne(e,t,r,i=oe()){(0,M.$A)(Pe,e,Ie),0===(0,M.Om)(Pe,Pe)&&(0,M.$A)(Pe,e,Oe),(0,P.$0)(Fe,-(0,s.kU)(t),e),(0,P.e$)(Fe,Fe,-(0,s.kU)(r),Pe);const{up:n,direction:o}=i;return(0,M.$A)(n,Pe,e),(0,M.S8)(n,n),(0,M.Z0)(n,n,Fe),(0,M.S8)(o,e),(0,M.ze)(o,o),(0,M.Z0)(o,o,Fe),i}function He(e){const t=e[1];e[1]=-e[2],e[2]=t}function Le(e,t){const r=Ne(t,e.heading,e.tilt);return e.up=r.up,e}function Be(e,t){const r=[],i=[],n=(0,ve.FD)();for(let o=0;o<e.length;o++){const s=e[o],a=o===e.length-1?e[0]:e[o+1],l=(0,te.Cr)(s,a,Ze),c=(0,re.vE)(t,l.origin,l.vector,0,We);switch(c){case 2:r.push(s);break;case 3:i.push(s);break;case 0:case 1:{const[e,o,a]=0===c?[1,r,i]:[-1,i,r],l=(0,re.Qj)(t),u=(0,M.Ln)((0,T.vt)(),We,l,e*n),d=(0,M.Ln)((0,T.vt)(),We,l,e*-n);o.push(s),o.push(u),a.push(d)}}}const o=[];return r.length&&o.push(r),i.length&&o.push(i),o}const ze={minCurvature:(0,s.kU)(5),maxCurvature:(0,s.kU)(50),minSamples:1,maxSamples:6},Ue=(0,T.fA)(1,0,0),Ge=(0,T.fA)(0,1,0),Ve=(0,T.vt)(),je=(0,T.vt)(),We=(0,T.vt)(),ke=new xe.iy,Ze=(0,te.vt)(),$e=(0,H.vt)();Object.freeze(Object.defineProperty({__proto__:null,directionToHeadingTilt:function(e,t,r,i){const n=Pe,o=De;return(0,M.S8)(n,e),(0,M.$A)(De,n,Ie),0===(0,M.Om)(De,De)&&(0,M.$A)(De,n,Oe),(0,M.$A)(o,De,n),se(t,r,i,n,o)},eyeForCenterWithHeadingTilt:function(e,t,r,i){const n={eye:(0,T.vt)(),up:null,tilt:i,heading:r},o=Pe;o[0]=e[0],o[1]=e[2],o[2]=-e[1];const a=t,l=(0,s.kU)(r),c=(0,s.kU)(i),u=Math.sin(l),d=Math.cos(l),h=Math.sin(c),m=Math.cos(c),p=(0,M.Bw)(o);let f;if(Math.abs(c)<1e-8)f=a+p;else{const e=p/h,t=(0,s.YN)(a/e),r=Math.PI-c-t;f=e*Math.sin(r)}const g=m*a,v=a*a*(h*h),_=d*d*v,x=f-g,y=x*x,w=_*(_+y-o[1]*o[1]);if(w<0)return(0,M.hs)(n.eye,o,f/p),n.tilt=0,Le(n,e);const b=Math.sqrt(w),S=o[1]*x,C=_+y;let A;if(A=d>0?-b+S:b+S,Math.abs(C)<1e-8)return p<1e-8?(n.eye[0]=0,n.eye[1]=0,n.eye[2]=a):(0,M.hs)(n.eye,o,f/p),n.tilt=0,He(n.eye),Le(n,e);n.eye[1]=A/C;const E=u*u*v,R=h*a,I=d*R*n.eye[1],O=n.eye[1]*n.eye[1],F=1-O,P=Math.sqrt(F),D=_*O+E-2*I*P*x+F*y;return Math.abs(D)<1e-8?((0,M.hs)(n.eye,o,f/p),n.tilt=0,He(n.eye),Le(n,e)):(n.eye[0]=(F*(f*o[0]-g*o[0])-R*P*(o[0]*n.eye[1]*d+o[2]*u))/D,n.eye[2]=(F*(f*o[2]-g*o[2])-R*P*(o[2]*n.eye[1]*d-o[0]*u))/D,(0,M.hs)(n.eye,n.eye,f),He(n.eye),Le(n,e))},eyeTiltToLookAtTilt:function(e,t,r){const i=(0,s.kU)(e),n=(0,M.Bw)(t);return(0,s.YN)(r/(n/Math.sin(i)))+i},headingTiltToDirectionUp:Ne,lookAtTiltToEyeTilt:function(e,t,r){const i=(0,M.Bw)(t),n=Math.sqrt(r*r+i*i-2*r*i*Math.cos(Math.PI-e)),o=(0,s.YN)(r/(n/Math.sin(e)));return(0,s.KJ)(e-o)},toArea:function(e,t){const{renderCoordsHelper:r}=e,i=e.state.camera.clone(),n=new we(r);i.near=2,n.update(i);const o=r.getAltitude(t),a=e.spatialReference,l=r.referenceEllipsoid.radius,c=i.eye,u=1+(0,M.Io)(c,t)/(l+o),d=Math.sqrt(u*u-1),{minCurvature:h,maxCurvature:m,minSamples:p,maxSamples:f}=ze,g=function(e){const{renderCoordsHelper:t,state:r}=e,i=Math.abs(t.getAltitude(r.camera.center));return ke.radius=t.referenceEllipsoid.radius+i,r.camera.sphereFrustumCoverage(ke,t)}(e),v=(0,s.qE)((d-h)/(m-h),0,1),_=Math.round((0,s.Cc)(p,f,v)),x=i.aboveGround,y=n.planes[5],w=[],b=(0,re.O_)(T.uY,Ue,(0,re.vt)()),S=(0,re.O_)(T.uY,Ge,(0,re.vt)());(0,N.hZ)($e,0,0,0,0);const C=e=>{};for(let e=0;e<4;e++){const t=1===e&&!x||3===e&&x?1-g:0,i=1===e&&x||3===e&&!x?g:1,a=n.lines[e],l=n.lines[3===e?0:e+1];for(let n=0;n<_;n++){const u=n/_,d=0===n?0:(0,s.Cc)(t,i,1===e?1-(1-u)**2:3===e?u**2:u),h=(0,M.Cc)(je,a.origin,l.origin,d),m=(0,Re.nu)(a.direction,l.direction,d,Ve);r.intersectManifoldClosestSilhouette((0,R.LV)(h,m),o,We),ae(We,c,We,y),w.push((0,T.o8)(We)),0!==w.length&&C((0,M.lo)(w.at(-1),We));const p=((0,re.Tj)(b,We)?1:0)|((0,re.Tj)(S,We)?2:0);$e[p]=1}}w.length>2&&(0,M.lo)(w[0],w.at(-1));const A=function(e,t,r){const i=2*(0,ve.FD)();return e.map(e=>{const n=[];let o=!1;for(const s of e)t.fromRenderCoords(s,We,r),Math.abs(s[0])<i&&Math.abs(s[1])<i?(n.push([null,We[1]]),n.push([null,We[1]]),o=!0):n.push([We[0],We[1]]);if(o)for(let e=0;e<n.length;e++){const t=n[e];if(null!=t[0])continue;const r=n[e+1],i=n.at(0===e?-1:e-1);t[0]=i[0],e++;const o=n.at(e===n.length-1?0:e+1);r[0]=o[0]}return n.push(n[0]),(0,K.$3)(n)||n.reverse(),n})}((0,N.m3)($e)>1?function(e,t){const r=[];for(const i of e)r.push(...Be(i,t));return r}(Be(w,b),S):[w],r,a);return new X.A({rings:A,spatialReference:a})},toExtent:function(e,t,r,i,n){let o,a,l,c;const u=t.latitude,d=(0,E.tO)(e.spatialReference).radius,h=t.longitude,m=function(e,t,r){const i=t/r,n=(0,s.kU)(e),o=Math.sin(i/2),a=Math.cos(n),l=2*(0,s.YN)(Math.sqrt(o*o/(a*a)));return(0,s.KJ)(l)}(u,r,d)/2;o=h-m,a=h+m;const p=(0,s.kU)(u),g=(1+Math.sin(p))/(1-Math.sin(p)),v=(g+1)*Math.tan(i/d/2),_=v*v;function x(e){const t=Math.PI/2;return(e=f.uC.normalize(e,-t))>t&&(e=Math.PI-e),e}if(l=1.5*Math.PI-2*Math.atan(.5*(v+Math.sqrt(4*g+_))),c=l+i/d,l=x(l),c=x(c),c<l){const e=c;c=l,l=e}if(l=Math.max((0,s.KJ)(l),-90),c=Math.min((0,s.KJ)(c),90),a=_e.Y_.monotonic(o,a),a-o>180){const e=(a-o-180)/2;o+=e,a-=e}const y=e.spatialReference&&e.spatialReference.isGeographic?e.spatialReference:S.A.WGS84;return n?(n.xmin=o,n.ymin=l,n.xmax=a,n.ymax=c,n.spatialReference=y):n=new Y.A(o,l,a,c,y),e.spatialReference&&e.spatialReference.isWebMercator&&(0,ye.Gh)(n,!1,n),n}},Symbol.toStringTag,{value:"Module"}));const qe="composite-color",Ye=["final-color",qe,"opaque-color","transparent-color"],Xe={ANTIALIASING:"aa-color",CUTFILL_COLOR:"cutfill-color",CUTFILL_DEPTH:"cutfill-depth",FOCUSAREA_COLOR:"focusarea-color",FOCUSAREA:"focusarea",GAUSSIAN_SPLAT:"gaussian-splat",HIGHLIGHT_COLOR:"highlight-color",LASERLINES:"laserline-color",MAGNIFIER:"magnifier-color",OCCLUDED:"occluded-color",OPAQUE_ENVIRONMENT:"opaque-environment-color",OPAQUE_TERRAIN:"opaque-terrain-color",SSAO:"ssao",TRANSPARENT_ENVIRONMENT:"transparent-environment-color",VIEWSHED:"viewshed-color"};Array.from(Object.values(Xe)).concat(Ye),(0,T.vt)();var Ke=r(49186),Je=r(10107),Qe=r(64108);let et=class extends I.A{constructor(e){super(e),this.view=null,this.consumes={required:[]},this.produces=qe,this.requireGeometryDepth=!1,this._dirty=!0}initialize(){this.addHandles([(0,l.wB)(()=>this.view.ready,e=>{e&&this.view.stage?.renderer.addRenderNode(this)},l.Vh)])}destroy(){this.view.stage?.renderer?.removeRenderNode(this)}precompile(){}render(){throw new Ke.A("RenderNode:render-function-not-implemented","render() is not implemented.")}get camera(){return this.view.state.camera.clone()}get sunLight(){return this.bindParameters.lighting.legacy}get gl(){return this.view.stage.renderView.renderingContext.gl}get techniques(){return this.view.stage.renderView.techniques}acquireOutputFramebuffer(){const e=this._frameBuffer?.getTexture()?.descriptor,t=this.view.stage.renderer.fboCache.acquire(e?.width??640,e?.height??480,this.produces);return t.fbo?.initializeAndBind(),t}bindRenderTarget(){return this._frameBuffer?.fbo?.initializeAndBind(),this._frameBuffer}requestRender(e){switch(e){case 2:this.view.state.fading=!0;case 1:this.view.stage?.renderView.requestRender(e);case 0:case void 0:this._dirty=!0}}resetWebGLState(){this.renderingContext.resetState(),this.renderingContext.bindFramebuffer(this._frameBuffer?.fbo)}get fboCache(){return this.view.stage.renderer.fboCache}get bindParameters(){return this.renderContext.bind}get renderingContext(){return this.view.stage.renderView.renderingContext}get renderContext(){return this.view.stage?.renderer.renderContext}updateAnimation(e){return!!this._dirty&&(this._dirty=!1,!0)}doRender(e){this._frameBuffer=e.find(({name:e})=>e===this.produces);try{return this.render(e)}finally{this._frameBuffer=null}}};(0,o.Cg)([(0,Je.MZ)({constructOnly:!0})],et.prototype,"view",void 0),(0,o.Cg)([(0,Je.MZ)({constructOnly:!0})],et.prototype,"consumes",void 0),(0,o.Cg)([(0,Je.MZ)()],et.prototype,"produces",void 0),(0,o.Cg)([(0,Je.MZ)({readOnly:!0})],et.prototype,"techniques",null),et=(0,o.Cg)([(0,Qe.$)("esri.views.3d.webgl.RenderNode")],et);var tt=r(15581),rt=r(13840),it=r(42958),nt=r(95774),ot=r(90644);let st=class extends it.w{constructor(){super(...arguments),this.shader=new rt.r(nt.S,()=>r.e(1285).then(r.bind(r,91285))),this.ignoreUnused=!0}initializePipeline(){return(0,ot.Ey)({colorWrite:ot.kn})}};st=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAOBlurTechnique")],st);var at=r(65786);class lt extends at.Y{constructor(){super(...arguments),this.projScale=1}}class ct extends lt{constructor(){super(...arguments),this.intensity=1}}class ut extends at.Y{}class dt extends ut{constructor(){super(...arguments),this.blurSize=(0,D.vt)()}}let ht=class extends it.w{constructor(){super(...arguments),this.shader=new rt.r(tt.S,()=>r.e(6122).then(r.bind(r,86122)))}initializePipeline(){return(0,ot.Ey)({colorWrite:ot.kn})}};ht=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAOTechnique")],ht);var mt=r(63907),pt=r(76284),ft=r(67171);let gt=class extends et{constructor(e){super(e),this.consumes={required:["normals"]},this.produces=Xe.SSAO,this.isEnabled=()=>!1,this._enableTime=(0,c.l5)(0),this._passParameters=new ct,this._drawParameters=new dt}initialize(){const e=Uint8Array.from(atob("eXKEvZaUc66cjIKElE1jlJ6MjJ6Ufkl+jn2fcXp5jBx7c6KEflSGiXuXeW6OWs+tfqZ2Yot2Y7Zzfo2BhniEj3xoiXuXj4eGZpqEaHKDWjSMe7palFlzc3BziYOGlFVzg6Zzg7CUY5JrjFF7eYJ4jIKEcyyEonSXe7qUfqZ7j3xofqZ2c4R5lFZ5Y0WUbppoe1l2cIh2ezyUho+BcHN2cG6DbpqJhqp2e1GcezhrdldzjFGUcyxjc3aRjDyEc1h7Sl17c6aMjH92pb6Mjpd4dnqBjMOEhqZleIOBYzB7gYx+fnqGjJuEkWlwnCx7fGl+c4hjfGyRe5qMlNOMfnqGhIWHc6OMi4GDc6aMfqZuc6aMzqJzlKZ+lJ6Me3qRfoFue0WUhoR5UraEa6qMkXiPjMOMlJOGe7JrUqKMjK6MeYRzdod+Sl17boiPc6qEeYBlcIh2c1WEe7GDiWCDa0WMjEmMdod+Y0WcdntzhmN8WjyMjKJjiXtzgYxYaGd+a89zlEV7e2GJfnd+lF1rcK5zc4p5cHuBhL6EcXp5eYB7fnh8iX6HjIKEeaxuiYOGc66RfG2Ja5hzjlGMjEmMe9OEgXuPfHyGhPeEdl6JY02McGuMfnqGhFiMa3WJfnx2l4hwcG1uhmN8c0WMc39og1GBbrCEjE2EZY+JcIh2cIuGhIWHe0mEhIVrc09+gY5+eYBlnCyMhGCDl3drfmmMgX15aGd+gYx+fnuRfnhzY1SMsluJfnd+hm98WtNrcIuGh4SEj0qPdkqOjFF7jNNjdnqBgaqUjMt7boeBhnZ4jDR7c5pze4GGjEFrhLqMjHyMc0mUhKZze4WEa117kWlwbpqJjHZ2eX2Bc09zeId+e0V7WlF7jHJ2l72BfId8l3eBgXyBe897jGl7c66cgW+Xc76EjKNbgaSEjGx4fId8jFFjgZB8cG6DhlFziZhrcIh2fH6HgUqBgXiPY8dahGFzjEmMhEFre2dxhoBzc5SGfleGe6alc7aUeYBlhKqUdlp+cH5za4OEczxza0Gcc4J2jHZ5iXuXjH2Jh5yRjH2JcFx+hImBjH+MpddCl3dreZeJjIt8ZW18bm1zjoSEeIOBlF9oh3N7hlqBY4+UeYFwhLJjeYFwaGd+gUqBYxiEYot2fqZ2ondzhL6EYyiEY02Ea0VjgZB8doaGjHxoc66cjEGEiXuXiXWMiZhreHx8frGMe75rY02Ec5pzfnhzlEp4a3VzjM+EhFFza3mUY7Zza1V5e2iMfGyRcziEhDyEkXZ2Y4OBnCx7g5t2eyBjgV6EhEFrcIh2dod+c4Z+nJ5zjm15jEmUeYxijJp7nL6clIpjhoR5WrZraGd+fnuRa6pzlIiMg6ZzfHx5foh+eX1ufnB5eX1ufnB5aJt7UqKMjIh+e3aBfm5lbYSBhGFze6J4c39oc0mUc4Z+e0V7fKFVe0WEdoaGY02Ec4Z+Y02EZYWBfH6HgU1+gY5+hIWUgW+XjJ57ebWRhFVScHuBfJ6PhBx7WqJzlM+Ujpd4gHZziX6HjHmEgZN+lJt5boiPe2GJgX+GjIGJgHZzeaxufnB5hF2JtdN7jJ57hp57hK6ElFVzg6ZzbmiEbndzhIWHe3uJfoFue3qRhJd2j3xoc65zlE1jc3p8lE1jhniEgXJ7e657vZaUc3qBh52BhIF4aHKDa9drgY5+c52GWqZzbpqJe8tjnM+UhIeMfo2BfGl+hG1zSmmMjKJjZVaGgX15c1lze0mEp4OHa3mUhIWHhDyclJ6MeYOJkXiPc0VzhFiMlKaEboSJa5Jze41re3qRhn+HZYWBe0mEc4p5fnORbox5lEp4hGFjhGGEjJuEc1WEhLZjeHeGa7KlfHx2hLaMeX1ugY5+hIWHhKGPjMN7c1WEho1zhoBzZYx7fnhzlJt5exyUhFFziXtzfmmMa6qMYyiEiXxweV12kZSMeWqXSl17fnhzxmmMrVGEe1mcc4p5eHeGjK6MgY5+doaGa6pzlGV7g1qBh4KHkXiPeW6OaKqafqZ2eXZ5e1V7jGd7boSJc3BzhJd2e0mcYot2h1RoY8dahK6EQmWEWjx7e1l2lL6UgXyBdnR4eU9zc0VreX1umqaBhld7fo2Bc6KEc5Z+hDyEcIeBWtNrfHyGe5qMhMuMe5qMhEGEbVVupcNzg3aHhIF4boeBe0mEdlptc39ofFl5Y8uUlJOGiYt2UmGEcyxjjGx4jFF7a657ZYWBnElzhp57iXtrgZN+tfOEhIOBjE2HgU1+e8tjjKNbiWCDhE15gUqBgYN7fnqGc66ce9d7iYSBj0qPcG6DnGGcT3eGa6qMZY+JlIiMl4hwc3aRdnqBlGV7eHJ2hLZjfnuRhDyEeX6MSk17g6Z+c6aUjHmEhIF4gXyBc76EZW18fGl+fkl+jCxrhoVwhDyUhIqGlL2DlI6EhJd2tdN7eYORhEGMa2Faa6pzc3Bzc4R5lIRznM+UY9eMhDycc5Z+c4p5c4iGY117pb6MgXuPrbJafnx2eYOJeXZ5e657hDyEcziElKZjfoB5eHeGj4WRhGGEe6KGeX1utTStc76EhFGJnCyMa5hzfH6HnNeceYB7hmN8gYuMhIVrczSMgYF8h3N7c5pza5hzjJqEYIRdgYuMlL2DeYRzhGGEeX1uhLaEc4iGeZ1zdl6JhrVteX6Me2iMfm5lWqJzSpqEa6pzdnmchHx2c6OMhNdrhoR5g3aHczxzeW52gV6Ejm15frGMc0Vzc4Z+l3drfniJe+9rWq5rlF1rhGGEhoVwe9OEfoh+e7pac09+c3qBY0lrhDycdnp2lJ6MiYOGhGCDc3aRlL2DlJt5doaGdnp2gYF8gWeOjF2Uc4R5c5Z+jEmMe7KEc4mEeYJ4dmyBe0mcgXiPbqJ7eYB7fmGGiYSJjICGlF1reZ2PnElzbpqJfH6Hc39oe4WEc5eJhK6EhqyJc3qBgZB8c09+hEmEaHKDhFGJc5SGiXWMUpaEa89zc6OMnCyMiXtrho+Be5qMc7KEjJ57dmN+hKGPjICGbmiEe7prdod+hGCDdnmchBx7eX6MkXZ2hGGEa657hm98jFFjY5JreYOJgY2EjHZ2a295Y3FajJ6Mc1J+YzB7e4WBjF2Uc4R5eV12gYxzg1qBeId+c9OUc5pzjFFjgY5+hFiMlIaPhoR5lIpjjIKBlNdSe7KEeX2BfrGMhIqGc65zjE2UhK6EklZ+QmWEeziMWqZza3VzdnR4foh+gYF8n3iJiZhrnKp7gYF8eId+lJ6Me1lrcIuGjKJjhmN8c66MjFF7a6prjJ6UnJ5zezyUfruRWlF7nI5zfHyGe657h4SEe8tjhBx7jFFjc09+c39ojICMeZeJeXt+YzRzjHZ2c0WEcIeBeXZ5onSXkVR+gYJ+eYFwdldzgYF7eX2BjJ6UiXuXlE1jh4SEe1mchLJjc4Z+hqZ7eXZ5bm1zlL6Ue5p7iWeGhKqUY5pzjKJjcIeBe8t7gXyBYIRdlEp4a3mGnK6EfmmMZpqEfFl5gYxzjKZuhGFjhoKGhHx2fnx2eXuMe3aBiWeGvbKMe6KGa5hzYzB7gZOBlGV7hmN8hqZlYot2Y117a6pzc6KEfId8foB5rctrfneJfJ6PcHN2hFiMc5pzjH92c0VzgY2EcElzdmCBlFVzg1GBc65zY4OBboeBcHiBeYJ4ewxzfHx5lIRzlEmEnLKEbk1zfJ6PhmN8eYBljBiEnMOEiXxwezyUcIeBe76EdsKEeX2BdnR4jGWUrXWMjGd7fkl+j4WRlEGMa5Jzho+BhDyEfnqMeXt+g3aHlE1jczClhNN7ZW18eHx8hGFjZW18iXWMjKJjhH57gYuMcIuGWjyMe4ZtjJuExmmMj4WRdntzi4GDhFFzYIRdnGGcjJp7Y0F7e4WEkbCGiX57fnSHa657a6prhBCMe3Z+SmmMjH92eHJ2hK6EY1FzexhrvbKMnI5za4OEfnd+eXuMhImBe897hLaMjN+EfG+BeIOBhF1+eZeJi4GDkXZ2eXKEgZ6Ejpd4c2GHa1V5e5KUfqZuhCx7jKp7lLZrg11+hHx2hFWUoot2nI5zgbh5mo9zvZaUe3qRbqKMfqZ2kbCGhFiM"),e=>e.charCodeAt(0)),t=new ft.R(32);t.wrapMode=33071,t.pixelFormat=6407,t.wrapMode=10497,t.hasMipmap=!0,this._passParameters.noiseTexture=new pt.A(this.renderingContext,t,e),this.addHandles((0,l.wB)(()=>this.isEnabled(),()=>this._enableTime=(0,c.l5)(0)))}destroy(){this._passParameters.noiseTexture=(0,a.WD)(this._passParameters.noiseTexture)}precompile(){this.techniques.precompile(ht),this.techniques.precompile(st)}render(e){const t=e.find(({name:e})=>"normals"===e),r=t?.getTexture(),i=t?.getTexture(mt.nI);if(!r||!i)return;const n=this.techniques.get(ht),o=this.techniques.get(st);if(!n.compiled||!o.compiled)return this._enableTime=(0,c.l5)(performance.now()),void this.requestRender(1);0===this._enableTime&&(this._enableTime=(0,c.l5)(performance.now()));const a=this.renderingContext,l=this.view.qualitySettings.fadeDuration,u=this.bindParameters,h=u.camera,m=h.relativeElevation,p=(0,s.qE)((5e5-m)/2e5,0,1),f=l>0?Math.min(l,performance.now()-this._enableTime)/l:1,g=f*p;this._passParameters.normalTexture=r,this._passParameters.depthTexture=i,this._passParameters.projScale=1/h.computeScreenPixelSizeAtDist(1),this._passParameters.intensity=4*vt/(0,tt.g)(h)**6*g;const v=h.fullViewport[2],_=h.fullViewport[3],x=this.fboCache.acquire(v,_,"ssao input",2);a.bindFramebuffer(x.fbo),a.setViewport(0,0,v,_),a.bindTechnique(n,u,this._passParameters,this._drawParameters),a.screen.draw();const y=Math.round(v/2),w=Math.round(_/2),b=this.fboCache.acquire(y,w,"ssao blur",0);a.bindFramebuffer(b.fbo),this._drawParameters.colorTexture=x.getTexture(),(0,d.hZ)(this._drawParameters.blurSize,0,2/_),a.bindTechnique(o,u,this._passParameters,this._drawParameters),a.setViewport(0,0,y,w),a.screen.draw(),x.release();const M=this.fboCache.acquire(y,w,Xe.SSAO,0);return a.bindFramebuffer(M.fbo),a.setViewport(0,0,v,_),a.setClearColor(1,1,1,0),a.clear(16384),this._drawParameters.colorTexture=b.getTexture(),(0,d.hZ)(this._drawParameters.blurSize,2/v,0),a.bindTechnique(o,u,this._passParameters,this._drawParameters),a.setViewport(0,0,y,w),a.screen.draw(),a.setViewport4fv(h.fullViewport),b.release(),f<1&&this.requestRender(2),M}};(0,o.Cg)([(0,u.MZ)()],gt.prototype,"consumes",void 0),(0,o.Cg)([(0,u.MZ)()],gt.prototype,"produces",void 0),(0,o.Cg)([(0,u.MZ)({constructOnly:!0})],gt.prototype,"isEnabled",void 0),gt=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAO")],gt);const vt=.5;function _t(e,t){t.receiveAmbientOcclusion?(e.uniforms.add(new n.x("ssaoTex",e=>e.ssao?.getTexture())),e.constants.add("blurSizePixelsInverse","float",.5),e.code.add(i.H`float evaluateAmbientOcclusionInverse() {
557
+ }`))}(e,t)}},14527(e,t,r){r.d(t,{n:()=>_t});var i=r(31821),n=r(12791),o=r(5482),s=r(34727),a=r(97768),l=r(36708),c=r(78659),u=r(91429),d=r(37585),h=r(69540);let m=class extends h.Pw{constructor(e){super(e),this.row=0,this.column=0,this.rows=1,this.columns=1}equals(e){return null!=e&&this.row===e.row&&this.rows===e.rows&&this.column===e.column&&this.columns===e.columns}};(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"row",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"column",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"rows",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{read:!1,write:!1}})],m.prototype,"columns",void 0),m=(0,o.Cg)([(0,u.$K)("esri.CameraLayout")],m);const p=m;var f=r(69052),g=r(25482),v=r(56507),_=r(86738),x=r(43937),y=r(36005);let w=class extends((0,h.OU)(g.o)){constructor(...e){super(...e),this.position=new _.A([0,0,0]),this.heading=0,this.tilt=0,this.fov=55,this.layout=new p}normalizeCtorArgs(e,t,r,i){if(e&&"object"==typeof e&&("x"in e||Array.isArray(e))){const n={position:e};return null!=t&&(n.heading=t),null!=r&&(n.tilt=r),null!=i&&(n.fov=i),n}return e}writePosition(e,t,r,i){const n=e.clone();n.x=(0,v.GB)(e.x||0),n.y=(0,v.GB)(e.y||0),n.z=e.hasZ?(0,v.GB)(e.z||0):e.z,t[r]=n.write({},i)}readPosition(e,t){const r=new _.A;return r.read(e,t),r.x=(0,v.GB)(r.x||0),r.y=(0,v.GB)(r.y||0),r.z=r.hasZ?(0,v.GB)(r.z||0):r.z,r}equals(e){return null!=e&&this.tilt===e.tilt&&this.heading===e.heading&&this.fov===e.fov&&this.position.equals(e.position)&&this.layout.equals(e.layout)}};(0,o.Cg)([(0,u.MZ)({type:_.A,json:{write:{isRequired:!0}}})],w.prototype,"position",void 0),(0,o.Cg)([(0,x.K)("position")],w.prototype,"writePosition",null),(0,o.Cg)([(0,y.w)("position")],w.prototype,"readPosition",null),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}}),(0,u.wg)(e=>f.ie.normalize((0,v.GB)(e)))],w.prototype,"heading",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}}),(0,u.wg)(e=>(0,s.qE)((0,v.GB)(e),-180,180))],w.prototype,"tilt",void 0),(0,o.Cg)([(0,u.MZ)({type:Number,nonNullable:!0,json:{default:55,write:!0}}),(0,u.wg)(e=>(0,s.qE)((0,v.GB)(e,55),1,170))],w.prototype,"fov",void 0),(0,o.Cg)([(0,u.MZ)({type:p,nonNullable:!0,json:{read:!1,write:!1}})],w.prototype,"layout",void 0),w=(0,o.Cg)([(0,u.$K)("esri.Camera")],w);var b=r(9093),M=r(35522),T=r(51850),S=r(16930),C=(r(48353),r(9762),r(65806)),A=r(27993),E=r(73941),R=(r(19419),r(71351)),I=r(69622),O=r(53966),F=r(90629),P=r(58083),D=r(48163),N=r(78955),H=r(91829),L=r(82919),B=r(44280);function z(e,t,r){e.worldUpAtPosition(t,U),(0,M.Re)(G,r,t);const i=(0,M.Bw)(G);return 0===i?0:(0,s.XM)((0,M.Om)(G,U)/i)}const U=(0,T.vt)(),G=(0,T.vt)();var V;let j=V=class extends I.A{constructor(e){super(e),this._ray=(0,R.vt)(),this._viewport=(0,H.fA)(0,0,1,1),this._padding=(0,H.fA)(0,0,0,0),this._fov=55/180*Math.PI,this._nearFar=(0,D.fA)(1,1e3),this._viewDirty=!0,this._viewMatrix=(0,b.vt)(),this._viewProjectionDirty=!0,this._viewProjectionMatrix=(0,b.vt)(),this._viewInverseTransposeMatrixDirty=!0,this._viewInverseTransposeMatrix=(0,b.vt)(),this._frustumDirty=!0,this._frustum=(0,L.vt)(),this._fullViewport=(0,H.vt)(),this._pixelRatio=1,this.row=0,this.column=0,this._rows=1,this._columns=1,this._center=(0,T.vt)(),this._up=(0,T.vt)(),this.relativeElevation=0}get pixelRatio(){return this._pixelRatio}set pixelRatio(e){this._pixelRatio=e>0?e:1}get rows(){return this._rows}set rows(e){this._rows=Math.max(1,e)}get columns(){return this._columns}set columns(e){this._columns=Math.max(1,e)}get eye(){return this._ray.origin}set eye(e){this._compareAndSetView(e,this._ray.origin)}get center(){return this._center}set center(e){this._compareAndSetView(e,this._center,"_center")}get ray(){return(0,M.Re)(this._ray.direction,this.center,this.eye),this._ray}get up(){return this._up}set up(e){this._compareAndSetView(e,this._up,"_up")}get viewMatrix(){return this._ensureViewClean(),this._viewMatrix}set viewMatrix(e){(0,P.C)(this._viewMatrix,e),this.notifyChange("_viewMatrix"),this._viewDirty=!1,this._viewInverseTransposeMatrixDirty=!0,this._viewProjectionDirty=!0,this._frustumDirty=!0}get viewForward(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),-this._viewMatrix[2],-this._viewMatrix[6],-this._viewMatrix[10])}get viewUp(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),this._viewMatrix[1],this._viewMatrix[5],this._viewMatrix[9])}get viewRight(){return this._ensureViewClean(),(0,M.hZ)((0,T.vt)(),this._viewMatrix[0],this._viewMatrix[4],this._viewMatrix[8])}get nearFar(){return this._nearFar}get near(){return this._nearFar[0]}set near(e){this._nearFar[0]!==e&&(this._nearFar[0]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_nearFar"))}get far(){return this._nearFar[1]}set far(e){this._nearFar[1]!==e&&(this._nearFar[1]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_nearFar"))}get viewport(){return this._viewport}set viewport(e){this.x=e[0],this.y=e[1],this.width=e[2],this.height=e[3]}get screenViewport(){if(1===this.pixelRatio)return this._viewport;const e=(0,N.hs)((0,H.vt)(),this._viewport,1/this.pixelRatio),t=this._get("screenViewport");return t&&(0,N.aI)(e,t)?t:e}get screenPadding(){if(1===this.pixelRatio)return this._padding;const e=(0,N.hs)((0,H.vt)(),this._padding,1/this.pixelRatio),t=this._get("screenPadding");return t&&(0,N.aI)(e,t)?t:e}get x(){return this._viewport[0]}set x(e){e+=this._padding[3],this._viewport[0]!==e&&(this._viewport[0]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get y(){return this._viewport[1]}set y(e){e+=this._padding[2],this._viewport[1]!==e&&(this._viewport[1]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get width(){return this._viewport[2]}set width(e){this._viewport[2]!==e&&(this._viewport[2]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get height(){return this._viewport[3]}set height(e){this._viewport[3]!==e&&(this._viewport[3]=e,this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_viewport"))}get fullWidth(){return this._viewport[2]+this._padding[1]+this._padding[3]}set fullWidth(e){this.width=e-(this._padding[1]+this._padding[3])}get fullHeight(){return this._viewport[3]+this._padding[0]+this._padding[2]}set fullHeight(e){this.height=e-(this._padding[0]+this._padding[2])}get fullViewport(){return this._fullViewport[0]=this._viewport[0]-this._padding[3],this._fullViewport[1]=this._viewport[1]-this._padding[2],this._fullViewport[2]=this.fullWidth,this._fullViewport[3]=this.fullHeight,this._fullViewport}get _aspect(){return this.width/this.height}get padding(){return this._padding}set padding(e){(0,N.t2)(this._padding,e)||(this._viewport[0]+=e[3]-this._padding[3],this._viewport[1]+=e[2]-this._padding[2],this._viewport[2]-=e[1]+e[3]-(this._padding[1]+this._padding[3]),this._viewport[3]-=e[0]+e[2]-(this._padding[0]+this._padding[2]),(0,N.C)(this._padding,e),this._viewProjectionDirty=!0,this._frustumDirty=!0,this.notifyChange("_padding"),this.notifyChange("_viewport"))}get viewProjectionMatrix(){return this._viewProjectionDirty&&((0,P.lw)(this._viewProjectionMatrix,this.projectionMatrix,this.viewMatrix),this._viewProjectionDirty=!1),this._viewProjectionMatrix}get projectionMatrix(){return this._projectionMatrixInternal}get inverseProjectionMatrix(){return(0,P.B8)((0,b.vt)(),this.projectionMatrix)||this._get("inverseProjectionMatrix")||(0,b.vt)()}get fov(){return this._fov}set fov(e){this._fov=e,this._viewProjectionDirty=!0,this._frustumDirty=!0}get fovX(){return e=this._fov,t=this.width,r=this.height,2*Math.atan(t*Math.tan(.5*e)/Math.sqrt(t*t+r*r));var e,t,r}set fovX(e){this._fov=function(e,t,r){return 2*Math.atan(Math.sqrt(t*t+r*r)*Math.tan(.5*e)/t)}(e,this.width,this.height),this._viewProjectionDirty=!0,this._frustumDirty=!0}get fovY(){return e=this._fov,t=this.width,r=this.height,2*Math.atan(r*Math.tan(.5*e)/Math.sqrt(t*t+r*r));var e,t,r}set fovY(e){this._fov=function(e,t,r){return 2*Math.atan(Math.sqrt(t*t+r*r)*Math.tan(.5*e)/r)}(e,this.width,this.height),this._viewProjectionDirty=!0,this._frustumDirty=!0}get distance(){return(0,M.Io)(this.center,this.eye)}get frustum(){return this._recomputeFrustum(),this._frustum}get viewInverseTransposeMatrix(){return(this._viewInverseTransposeMatrixDirty||this._viewDirty)&&((0,P.B8)(this._viewInverseTransposeMatrix,this.viewMatrix),(0,P.mg)(this._viewInverseTransposeMatrix,this._viewInverseTransposeMatrix),this._viewInverseTransposeMatrixDirty=!1),this._viewInverseTransposeMatrix}depthNDCToWorld(e){const{near:t,far:r}=this;return 2*t*r/(r+t-e*(r-t))}get perRenderPixelRatio(){return Math.tan(this.fovX/2)/(this.width/2)}get perScreenPixelRatio(){return this.perRenderPixelRatio*this.pixelRatio}get aboveGround(){return null!=this.relativeElevation&&this.relativeElevation>=0}get _projectionMatrixInternal(){const e=this.width,t=this.height,r=this.near*Math.tan(this.fovY/2)*2,i=r*this._aspect,n=r/this.rows,o=i/this.columns,s=-i/2+this.column*o,a=s+o,l=-r/2+this.row*n,c=l+n,u=(0,P.$h)((0,b.vt)(),s*(1+2*this._padding[3]/e),a*(1+2*this._padding[1]/e),l*(1+2*this._padding[2]/t),c*(1+2*this._padding[0]/t),this.near,this.far),d=this._get("projectionMatrix");return d&&(0,P.aI)(d,u)?d:u}copyFrom(e){(0,M.C)(this._ray.origin,e.eye),this.center=e.center,this.up=e.up,(0,N.C)(this._viewport,e.viewport),this.notifyChange("_viewport"),(0,N.C)(this._padding,e.padding),this.notifyChange("_padding"),(0,d.C)(this._nearFar,e.nearFar),this.notifyChange("_nearFar"),this._fov=e.fov,this.row=e.row,this.column=e.column,this.rows=e.rows,this.columns=e.columns,this.relativeElevation=e.relativeElevation;const t=e;return this._viewDirty=t._viewDirty,this._viewDirty||((0,P.C)(this._viewMatrix,e.viewMatrix),this.notifyChange("_viewMatrix")),this._viewProjectionDirty=!0,this._frustumDirty=t._frustumDirty,this._frustumDirty||((0,L.C)(this._frustum,e.frustum),this._frustumDirty=!1),t._viewInverseTransposeMatrixDirty?this._viewInverseTransposeMatrixDirty=!0:((0,P.C)(this._viewInverseTransposeMatrix,e.viewInverseTransposeMatrix),this._viewInverseTransposeMatrixDirty=!1),(0,N.C)(this._fullViewport,e.fullViewport),this.pixelRatio=e.pixelRatio,this}copyViewFrom(e){this.eye=e.eye,this.center=e.center,this.up=e.up,this.fov=e.fov}clone(){return(new V).copyFrom(this)}equals(e){return(0,M.t2)(this.eye,e.eye)&&(0,M.t2)(this.center,e.center)&&(0,M.t2)(this.up,e.up)&&(0,N.t2)(this._viewport,e.viewport)&&(0,N.t2)(this._padding,e.padding)&&(0,d.t2)(this.nearFar,e.nearFar)&&this._fov===e.fov&&this.pixelRatio===e.pixelRatio&&this.relativeElevation===e.relativeElevation&&this.row===e.row&&this.column===e.column&&this.rows===e.rows&&this.columns===e.columns}almostEquals(e){const t=Math.max(1,1/this.pixelRatio,1/e.pixelRatio);if(Math.abs(e.fov-this._fov)>=.001||(0,N.hG)(e.screenPadding,this.screenPadding)>=t||(0,N.hG)(this.screenViewport,e.screenViewport)>=t||this.row!==e.row||this.column!==e.column||this.rows!==e.rows||this.columns!==e.columns)return!1;(0,M.jb)(Z,e.eye,e.center),(0,M.jb)($,this.eye,this.center);const r=(0,M.Om)(Z,$),i=(0,M.uE)(Z),n=(0,M.uE)($),o=5e-4;return r*r>=(1-1e-10)*i*n&&(0,M.lo)(e.eye,this.eye)<Math.max(i,n)*o*o}computeRenderPixelSizeAt(e){return this.computeRenderPixelSizeAtDist(this._viewDirectionDistance(e))}computeRenderPixelSizeAtDist(e){return e*this.perRenderPixelRatio}computeScreenPixelSizeAt(e){return this.computeScreenPixelSizeAtDist(this._viewDirectionDistance(e))}_viewDirectionDistance(e){return Math.abs((0,B.gr)(this.viewForward,(0,M.Re)(Z,e,this.eye)))}computeScreenPixelSizeAtDist(e){return e*this.perScreenPixelRatio}computeDistanceFromRadius(e,t){return e/Math.tan(Math.min(this.fovX,this.fovY)/(2*(t||1)))}getScreenCenter(e=(0,F.gs)()){return e[0]=(this.padding[3]+this.width/2)/this.pixelRatio,e[1]=(this.padding[0]+this.height/2)/this.pixelRatio,e}getRenderCenter(e,t=.5,r=.5){return e[0]=this.padding[3]+this.width*t,e[1]=this.padding[2]+this.height*r,e[2]=.5,e}setGLViewport(e){const t=this.viewport,r=this.padding;e.setViewport(t[0]-r[3],t[1]-r[2],t[2]+r[1]+r[3],t[3]+r[0]+r[2])}applyProjection(e,t){e!==W&&(0,M.C)(W,e),W[3]=1,(0,N.Z0)(W,W,this.projectionMatrix);const r=Math.abs(W[3]);(0,M.hs)(W,W,1/r);const i=this.fullViewport;t[0]=(0,s.Cc)(0,i[0]+i[2],.5+.5*W[0]),t[1]=(0,s.Cc)(0,i[1]+i[3],.5+.5*W[1]),t[2]=.5*(W[2]+1),t[3]=r}unapplyProjection(e,t){const r=this.fullViewport;W[0]=(e[0]/(r[0]+r[2])*2-1)*e[3],W[1]=(e[1]/(r[1]+r[3])*2-1)*e[3],W[2]=(2*e[2]-1)*e[3],W[3]=e[3],null!=this.inverseProjectionMatrix&&((0,N.Z0)(W,W,this.inverseProjectionMatrix),t[0]=W[0],t[1]=W[1],t[2]=W[2])}projectToScreen(e,t){return this.projectToRenderScreen(e,q),this.renderToScreen(q,t),t}projectToRenderScreen(e,t){if(W[0]=e[0],W[1]=e[1],W[2]=e[2],W[3]=1,(0,N.Z0)(W,W,this.viewProjectionMatrix),0===W[3])return null;const r=W;(0,M.hs)(r,r,1/Math.abs(W[3]));const i=this.fullViewport,n=(0,s.Cc)(0,i[0]+i[2],.5+.5*r[0]),o=(0,s.Cc)(0,i[1]+i[3],.5+.5*r[1]);return"x"in t?(t.x=n,t.y=o):(t[0]=n,t[1]=o,t.length>2&&(t[2]=.5*(r[2]+1))),t}unprojectFromScreen(e,t){return this.unprojectFromRenderScreen(this.screenToRender(e,q),t)}unprojectFromRenderScreen(e,t){if((0,P.lw)(k,this.projectionMatrix,this.viewMatrix),!(0,P.B8)(k,k))return null;const r=this.fullViewport;return W[0]=2*(e[0]-r[0])/r[2]-1,W[1]=2*(e[1]-r[1])/r[3]-1,W[2]=2*e[2]-1,W[3]=1,(0,N.Z0)(W,W,k),0===W[3]?null:(t[0]=W[0]/W[3],t[1]=W[1]/W[3],t[2]=W[2]/W[3],t)}constrainWindowSize(e,t,r,i){const n=e*this.pixelRatio,o=t*this.pixelRatio,s=Math.max(n-r/2,0),a=Math.max(this.fullHeight-o-i/2,0),l=-Math.min(n-r/2,0),c=-Math.min(this.fullHeight-o-i/2,0),u=r-l- -Math.min(this.fullWidth-n-r/2,0),d=i-c- -Math.min(o-i/2,0);return[Math.round(s),Math.round(a),Math.round(u),Math.round(d)]}computeUp(e){1===e?this._computeUpGlobal():this._computeUpLocal()}screenToRender(e,t){const r=e[0]*this.pixelRatio,i=this.fullHeight-e[1]*this.pixelRatio;return t[0]=r,t[1]=i,t}renderToScreen(e,t){const r=e[0]/this.pixelRatio,i=(this.fullHeight-e[1])/this.pixelRatio;t[0]=r,t[1]=i}sphereFrustumCoverage(e,t){const{center:r,eye:i,distance:n,fovY:o}=this,s=Math.abs(Math.PI/2-z(t,r,i));return e.frustumCoverage(s,n,o)}_computeUpGlobal(){(0,M.Re)(Z,this.center,this.eye);const e=(0,M.Bw)(this.center);e<1?(0,M.t2)(this._up,T.Cb)&&((0,M.C)(this._up,T.Cb),this._markViewDirty(),this.notifyChange("_up")):Math.abs((0,M.Om)(Z,this.center))>.9999*(0,M.Bw)(Z)*e||((0,M.$A)($,Z,this.center),(0,M.$A)($,$,Z),(0,M.S8)($,$),(0,M.t2)(this._up,$)||((0,M.C)(this._up,$),this.notifyChange("_up"),this._markViewDirty()))}_computeUpLocal(){(0,M.oW)(Z,this.eye,this.center),Math.abs(Z[2])<=.9999&&((0,M.hs)(Z,Z,Z[2]),(0,M.hZ)(Z,-Z[0],-Z[1],1-Z[2]),(0,M.S8)(Z,Z),(0,M.t2)(this._up,Z)||((0,M.C)(this._up,Z),this.notifyChange("_up"),this._markViewDirty()))}_compareAndSetView(e,t,r=""){"number"==typeof e[0]&&isFinite(e[0])&&"number"==typeof e[1]&&isFinite(e[1])&&"number"==typeof e[2]&&isFinite(e[2])?(0,M.t2)(e,t)||((0,M.C)(t,e),this._markViewDirty(),r.length&&this.notifyChange(r)):O.A.getLogger("esri.views.3d.webgl-engine.lib.RenderCamera").warn("RenderCamera vector contains invalid number, ignoring value")}_markViewDirty(){this._viewDirty=!0,this._frustumDirty=!0,this._viewProjectionDirty=!0}_recomputeFrustum(){this._frustumDirty&&((0,L.ui)(this.viewMatrix,this.projectionMatrix,this._frustum),this._frustumDirty=!1)}_ensureViewClean(){this._viewDirty&&((0,P.t5)(this._viewMatrix,this.eye,this.center,this.up),this.notifyChange("_viewMatrix"),this._viewDirty=!1,this._viewInverseTransposeMatrixDirty=!0)}};(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewport",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_padding",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_fov",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_nearFar",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewDirty",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_viewMatrix",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_pixelRatio",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"pixelRatio",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"row",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"column",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_rows",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"rows",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_columns",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"columns",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"eye",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"center",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_center",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"up",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"_up",void 0),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewForward",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewUp",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"viewRight",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"nearFar",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"near",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"far",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewport",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"screenViewport",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"screenPadding",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"x",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"y",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"width",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"height",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fullWidth",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fullHeight",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"_aspect",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"padding",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"projectionMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"inverseProjectionMatrix",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fov",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fovX",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"fovY",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"viewInverseTransposeMatrix",null),(0,o.Cg)([(0,u.MZ)({readOnly:!0})],j.prototype,"_projectionMatrixInternal",null),(0,o.Cg)([(0,u.MZ)()],j.prototype,"relativeElevation",void 0),j=V=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl.RenderCamera")],j);const W=(0,H.vt)(),k=(0,b.vt)(),Z=(0,T.vt)(),$=(0,T.vt)(),q=(0,F.r_)();r(49718),r(6867),r(16396),(0,T.vt)(),(0,T.vt)(),(0,T.vt)();var Y=r(5443),X=r(39829),K=r(95108);function J(e,t,r,i){const n=function(e,t){const r=0===t||2===t?0:1,i=e[t],n=0===t||1===t?1:-1,o=0===r?1:0;return(e,t,s)=>{if(t[r]<i&&s[r]<i)return 1===n?0:1;if(t[r]>i&&s[r]>i)return 1===n?1:0;const a=(s[o]-t[o])/(s[r]-t[r]),l=t[o]+a*(i-t[r]);return e[r]=i,e[o]=l,(t[r]<i?1:-1)*n>0?2:3}}(r,i);if(e.length=0,t.length){1===n(ee,t[0],t[0])&&Q(e,t[0]);for(let r=0;r<t.length;r++){const i=t[r===t.length-1?0:r+1];switch(n(ee,t[r],i)){case 1:Q(e,i);break;case 3:Q(e,(0,D.o8)(ee));break;case 2:Q(e,(0,D.o8)(ee)),Q(e,i)}}}}function Q(e,t){0!==e.length&&(0,d.aI)(e.at(-1),t)||e.push(t)}const ee=(0,D.vt)();var te=r(11964),re=r(27921);const ie=(0,T.vt)(),ne=(0,T.vt)();function oe(){return{direction:(0,T.vt)(),up:(0,T.vt)()}}function se(e,t,r,i,n){let o=(0,M.S8)(ie,e),a=(0,M.Om)(o,i);const l=a>0;a=Math.abs(a),a>.99&&(a=Math.abs((0,M.Om)(t,i)),a<.99?((0,M.C)(o,t),l&&(0,M.hs)(o,o,-1)):o=null);let c=0;if(o){(0,M.hs)(ne,i,(0,M.Om)(i,o)),(0,M.Re)(o,o,ne);const e=(0,M.Om)(o,n)/((0,M.Bw)(o)*(0,M.Bw)(n));(0,M.$A)(ne,o,n),c=((0,M.Om)(ne,i)>0?1:-1)*(0,s.KJ)((0,s.XM)(e))}const u=(0,s.KJ)((0,s.XM)(-(0,M.Om)(i,e)/(0,M.Bw)(e)));return r?(r.heading=c,r.tilt=u,r):{heading:c,tilt:u}}function ae(e,t,r,i){(0,M.Re)(le,r,t),(0,re.T7)(i,(0,te.LV)(t,le),e)||e===r||(0,M.C)(e,r)}const le=(0,T.vt)(),ce=(0,T.fA)(0,1,0),ue=(0,T.fA)(0,0,1),de=(0,b.vt)(),he=(0,T.vt)(),me=(0,T.vt)();function pe(e,t,r,i=oe()){const{direction:n,up:o}=i;return(0,P.N9)(de,-(0,s.kU)(t)),(0,P.eL)(de,de,(0,s.kU)(r)),(0,M.Z0)(n,ue,de),(0,M.hs)(n,n,-1),(0,M.Z0)(o,ce,de),i}function fe(e,t,r,i,n){const o=t.lines[11].direction,s=(n-r.getAltitude(i))/o[2];(0,M.Ln)(e,i,o,s)}const ge=(0,T.vt)();Object.freeze(Object.defineProperty({__proto__:null,directionToHeadingTilt:function(e,t,r,i){return se(t,r,i,ue,ce)},eyeForCenterWithHeadingTilt:function(e,t,r,i){const n=pe(0,r,i),o=(0,T.vt)();return(0,M.hs)(o,n.direction,-t),(0,M.WQ)(o,o,e),{up:n.up,eye:o,heading:r,tilt:i}},eyeTiltToLookAtTilt:function(e){return(0,s.kU)(e)},headingTiltToDirectionUp:pe,lookAtTiltToEyeTilt:function(e){return(0,s.KJ)(e)},toArea:function(e,t){const r=e.frustum,{renderCoordsHelper:i}=e,n=i.getAltitude(t),o=e.spatialReference,s=e.state.camera.eye,a=[],l=r.planes[5];for(let e=0;e<4;e++){const t=r.lines[e];i.intersectInfiniteManifold((0,R.LV)(t.origin,t.direction),n,ge)||fe(ge,r,i,t.endpoint,n),ae(ge,s,ge,l),a.push((0,D.fA)(ge[0],ge[1]))}return function(e,t,r){const i=e.map(e=>((0,M.hZ)(ge,e[0],e[1],0),t.fromRenderCoords(ge,ge,r),[ge[0],ge[1]]));return i.length<=2?new X.A({spatialReference:r}):(i.push(i[0].slice()),(0,K.$3)(i)||i.reverse(),new X.A({rings:[i],spatialReference:r}))}(function(e,t){const r=[],i=[];return J(r,e,t,0),J(i,r,t,1),J(r,i,t,2),J(i,r,t,3),i}(a,i.extent),i,o)},toExtent:function(e,t,r,i,n){const o=e.renderSpatialReference,s=e.spatialReference??t.spatialReference;return(0,C.g)(t,he,o),(0,C.g)(t,me,o),he[0]-=r/2,me[0]+=r/2,he[1]-=i/2,me[1]+=i/2,(0,A.F)(he,o,he,s),(0,A.F)(me,o,me,s),n?(n.xmin=he[0],n.ymin=he[1],n.xmax=me[0],n.ymax=me[1],n.spatialReference=s):n=new Y.A(he[0],he[1],me[0],me[1],s),n}},Symbol.toStringTag,{value:"Module"}));var ve=r(34304),_e=r(17136),xe=r(94008),ye=r(28735);class we{get planes(){return this.frustum}get points(){return this._points}get mutablePoints(){return this._points}get direction(){return this._direction}get origin(){return this._origin}get boundingSphere(){return this._boundingSphereDirty&&this._updateBoundingSphere(),this._boundingSphere}constructor(e){this.renderCoordsHelper=e,this.frustum=(0,L.vt)(),this._points=(0,L.Qy)(),this.lines=new Array(12),this._origin=(0,T.vt)(),this._direction=(0,T.vt)(),this._boundingSphere=new xe.iy,this._altitude=null,this._boundingSphereDirty=!0;for(let e=0;e<12;e++)this.lines[e]={origin:null,direction:(0,T.vt)(),endpoint:null}}update(e){(0,L.ui)(e.viewMatrix,e.projectionMatrix,this.frustum,this._points),(0,M.C)(this._origin,e.eye),(0,M.C)(this._direction,e.viewForward),this._altitude=this.renderCoordsHelper.getAltitude(this._origin),this._updateLines(),this._boundingSphereDirty=!0}updatePoints(e){for(let t=0;t<this._points.length;t++)(0,M.C)(this._points[t],e[t]);(0,L.DV)(this.frustum,this._points),this._updateLines()}get altitude(){return this._altitude}intersectsSphere(e){return(0,L.m7)(this.frustum,e)}intersectsRay(e){return(0,L.pw)(this.frustum,e)}intersectsLineSegment(e,t){return(0,L.ST)(this.frustum,e,t)}intersectsPoint(e){return(0,L.bU)(this.frustum,e)}_updateLines(){const e=this._points;for(let t=0;t<4;t++){const r=t+4;be(this.lines[t],e[t],e[r]),be(this.lines[t+4],e[t],3===t?e[0]:e[t+1]),be(this.lines[t+8],e[r],3===t?e[4]:e[r+1])}}_updateBoundingSphere(){const{origin:e}=this,t=Te;(0,M.S8)(t,this.direction);const r=Me;(0,M.jb)(r,this.points[4],e);const i=.5*(0,M.Om)(r,r)/(0,M.Om)(t,r),n=this._boundingSphere,o=(0,M.Ln)(Se,e,t,i);n.center=o,n.radius=i}static{this.planePointIndices=L.c8}static{this.nearFarLineIndices=[[0,4],[1,5],[2,6],[3,7]]}}function be(e,t,r){e.origin=t,e.endpoint=r,(0,M.oW)(e.direction,t,r)}const Me=(0,T.vt)(),Te=(0,T.vt)(),Se=(0,T.vt)();r(86211);const Ce=(0,T.fA)(5802e-9,13558e-9,331e-7),Ae=(0,T.fA)(65e-8*3,5643e-9,255e-9);(0,T.fA)(Ce[0]+Ae[0],Ce[1]+Ae[1],Ce[2]+Ae[2]);class Ee{constructor(e=1/0,t=-1/0){this.near=e,this.far=t}set(e,t){this.near=e,this.far=t}union(e){return null!=e&&(this.near=Math.min(this.near,e.near),this.far=Math.max(this.far,e.far)),this}within(e){return this.near<=e&&e<=this.far}equals(e){return this.near===e.near&&this.far===e.far}static{this.Zero=new Ee(0,0)}static{this.Infinite=new Ee}}(0,T.vt)(),(0,T.vt)(),new xe.iy,(0,R.vt)(),new Y.A({xmin:0,ymin:0,zmin:0,xmax:0,ymax:0,zmax:0});var Re=r(32728);const Ie=(0,T.fA)(0,0,1),Oe=(0,M.S8)((0,T.vt)(),(0,T.fA)(1,1,1)),Fe=(0,b.vt)(),Pe=(0,T.vt)(),De=(0,T.vt)();function Ne(e,t,r,i=oe()){(0,M.$A)(Pe,e,Ie),0===(0,M.Om)(Pe,Pe)&&(0,M.$A)(Pe,e,Oe),(0,P.$0)(Fe,-(0,s.kU)(t),e),(0,P.e$)(Fe,Fe,-(0,s.kU)(r),Pe);const{up:n,direction:o}=i;return(0,M.$A)(n,Pe,e),(0,M.S8)(n,n),(0,M.Z0)(n,n,Fe),(0,M.S8)(o,e),(0,M.ze)(o,o),(0,M.Z0)(o,o,Fe),i}function He(e){const t=e[1];e[1]=-e[2],e[2]=t}function Le(e,t){const r=Ne(t,e.heading,e.tilt);return e.up=r.up,e}function Be(e,t){const r=[],i=[],n=(0,ve.FD)();for(let o=0;o<e.length;o++){const s=e[o],a=o===e.length-1?e[0]:e[o+1],l=(0,te.Cr)(s,a,Ze),c=(0,re.vE)(t,l.origin,l.vector,0,We);switch(c){case 2:r.push(s);break;case 3:i.push(s);break;case 0:case 1:{const[e,o,a]=0===c?[1,r,i]:[-1,i,r],l=(0,re.Qj)(t),u=(0,M.Ln)((0,T.vt)(),We,l,e*n),d=(0,M.Ln)((0,T.vt)(),We,l,e*-n);o.push(s),o.push(u),a.push(d)}}}const o=[];return r.length&&o.push(r),i.length&&o.push(i),o}const ze={minCurvature:(0,s.kU)(5),maxCurvature:(0,s.kU)(50),minSamples:1,maxSamples:6},Ue=(0,T.fA)(1,0,0),Ge=(0,T.fA)(0,1,0),Ve=(0,T.vt)(),je=(0,T.vt)(),We=(0,T.vt)(),ke=new xe.iy,Ze=(0,te.vt)(),$e=(0,H.vt)();Object.freeze(Object.defineProperty({__proto__:null,directionToHeadingTilt:function(e,t,r,i){const n=Pe,o=De;return(0,M.S8)(n,e),(0,M.$A)(De,n,Ie),0===(0,M.Om)(De,De)&&(0,M.$A)(De,n,Oe),(0,M.$A)(o,De,n),se(t,r,i,n,o)},eyeForCenterWithHeadingTilt:function(e,t,r,i){const n={eye:(0,T.vt)(),up:null,tilt:i,heading:r},o=Pe;o[0]=e[0],o[1]=e[2],o[2]=-e[1];const a=t,l=(0,s.kU)(r),c=(0,s.kU)(i),u=Math.sin(l),d=Math.cos(l),h=Math.sin(c),m=Math.cos(c),p=(0,M.Bw)(o);let f;if(Math.abs(c)<1e-8)f=a+p;else{const e=p/h,t=(0,s.YN)(a/e),r=Math.PI-c-t;f=e*Math.sin(r)}const g=m*a,v=a*a*(h*h),_=d*d*v,x=f-g,y=x*x,w=_*(_+y-o[1]*o[1]);if(w<0)return(0,M.hs)(n.eye,o,f/p),n.tilt=0,Le(n,e);const b=Math.sqrt(w),S=o[1]*x,C=_+y;let A;if(A=d>0?-b+S:b+S,Math.abs(C)<1e-8)return p<1e-8?(n.eye[0]=0,n.eye[1]=0,n.eye[2]=a):(0,M.hs)(n.eye,o,f/p),n.tilt=0,He(n.eye),Le(n,e);n.eye[1]=A/C;const E=u*u*v,R=h*a,I=d*R*n.eye[1],O=n.eye[1]*n.eye[1],F=1-O,P=Math.sqrt(F),D=_*O+E-2*I*P*x+F*y;return Math.abs(D)<1e-8?((0,M.hs)(n.eye,o,f/p),n.tilt=0,He(n.eye),Le(n,e)):(n.eye[0]=(F*(f*o[0]-g*o[0])-R*P*(o[0]*n.eye[1]*d+o[2]*u))/D,n.eye[2]=(F*(f*o[2]-g*o[2])-R*P*(o[2]*n.eye[1]*d-o[0]*u))/D,(0,M.hs)(n.eye,n.eye,f),He(n.eye),Le(n,e))},eyeTiltToLookAtTilt:function(e,t,r){const i=(0,s.kU)(e),n=(0,M.Bw)(t);return(0,s.YN)(r/(n/Math.sin(i)))+i},headingTiltToDirectionUp:Ne,lookAtTiltToEyeTilt:function(e,t,r){const i=(0,M.Bw)(t),n=Math.sqrt(r*r+i*i-2*r*i*Math.cos(Math.PI-e)),o=(0,s.YN)(r/(n/Math.sin(e)));return(0,s.KJ)(e-o)},toArea:function(e,t){const{renderCoordsHelper:r}=e,i=e.state.camera.clone(),n=new we(r);i.near=2,n.update(i);const o=r.getAltitude(t),a=e.spatialReference,l=r.referenceEllipsoid.radius,c=i.eye,u=1+(0,M.Io)(c,t)/(l+o),d=Math.sqrt(u*u-1),{minCurvature:h,maxCurvature:m,minSamples:p,maxSamples:f}=ze,g=function(e){const{renderCoordsHelper:t,state:r}=e,i=Math.abs(t.getAltitude(r.camera.center));return ke.radius=t.referenceEllipsoid.radius+i,r.camera.sphereFrustumCoverage(ke,t)}(e),v=(0,s.qE)((d-h)/(m-h),0,1),_=Math.round((0,s.Cc)(p,f,v)),x=i.aboveGround,y=n.planes[5],w=[],b=(0,re.O_)(T.uY,Ue,(0,re.vt)()),S=(0,re.O_)(T.uY,Ge,(0,re.vt)());(0,N.hZ)($e,0,0,0,0);const C=e=>{};for(let e=0;e<4;e++){const t=1===e&&!x||3===e&&x?1-g:0,i=1===e&&x||3===e&&!x?g:1,a=n.lines[e],l=n.lines[3===e?0:e+1];for(let n=0;n<_;n++){const u=n/_,d=0===n?0:(0,s.Cc)(t,i,1===e?1-(1-u)**2:3===e?u**2:u),h=(0,M.Cc)(je,a.origin,l.origin,d),m=(0,Re.nu)(a.direction,l.direction,d,Ve);r.intersectManifoldClosestSilhouette((0,R.LV)(h,m),o,We),ae(We,c,We,y),w.push((0,T.o8)(We)),0!==w.length&&C((0,M.lo)(w.at(-1),We));const p=((0,re.Tj)(b,We)?1:0)|((0,re.Tj)(S,We)?2:0);$e[p]=1}}w.length>2&&(0,M.lo)(w[0],w.at(-1));const A=function(e,t,r){const i=2*(0,ve.FD)();return e.map(e=>{const n=[];let o=!1;for(const s of e)t.fromRenderCoords(s,We,r),Math.abs(s[0])<i&&Math.abs(s[1])<i?(n.push([null,We[1]]),n.push([null,We[1]]),o=!0):n.push([We[0],We[1]]);if(o)for(let e=0;e<n.length;e++){const t=n[e];if(null!=t[0])continue;const r=n[e+1],i=n.at(0===e?-1:e-1);t[0]=i[0],e++;const o=n.at(e===n.length-1?0:e+1);r[0]=o[0]}return n.push(n[0]),(0,K.$3)(n)||n.reverse(),n})}((0,N.m3)($e)>1?function(e,t){const r=[];for(const i of e)r.push(...Be(i,t));return r}(Be(w,b),S):[w],r,a);return new X.A({rings:A,spatialReference:a})},toExtent:function(e,t,r,i,n){let o,a,l,c;const u=t.latitude,d=(0,E.tO)(e.spatialReference).radius,h=t.longitude,m=function(e,t,r){const i=t/r,n=(0,s.kU)(e),o=Math.sin(i/2),a=Math.cos(n),l=2*(0,s.YN)(Math.sqrt(o*o/(a*a)));return(0,s.KJ)(l)}(u,r,d)/2;o=h-m,a=h+m;const p=(0,s.kU)(u),g=(1+Math.sin(p))/(1-Math.sin(p)),v=(g+1)*Math.tan(i/d/2),_=v*v;function x(e){const t=Math.PI/2;return(e=f.uC.normalize(e,-t))>t&&(e=Math.PI-e),e}if(l=1.5*Math.PI-2*Math.atan(.5*(v+Math.sqrt(4*g+_))),c=l+i/d,l=x(l),c=x(c),c<l){const e=c;c=l,l=e}if(l=Math.max((0,s.KJ)(l),-90),c=Math.min((0,s.KJ)(c),90),a=_e.Y_.monotonic(o,a),a-o>180){const e=(a-o-180)/2;o+=e,a-=e}const y=e.spatialReference&&e.spatialReference.isGeographic?e.spatialReference:S.A.WGS84;return n?(n.xmin=o,n.ymin=l,n.xmax=a,n.ymax=c,n.spatialReference=y):n=new Y.A(o,l,a,c,y),e.spatialReference&&e.spatialReference.isWebMercator&&(0,ye.Gh)(n,!1,n),n}},Symbol.toStringTag,{value:"Module"}));const qe="composite-color",Ye=["final-color",qe,"opaque-color","transparent-color"],Xe={ANTIALIASING:"aa-color",CUTFILL_COLOR:"cutfill-color",CUTFILL_DEPTH:"cutfill-depth",FOCUSAREA_COLOR:"focusarea-color",FOCUSAREA:"focusarea",GAUSSIAN_SPLAT:"gaussian-splat",HIGHLIGHT_COLOR:"highlight-color",LASERLINES:"laserline-color",MAGNIFIER:"magnifier-color",OCCLUDED:"occluded-color",OPAQUE_ENVIRONMENT:"opaque-environment-color",OPAQUE_TERRAIN:"opaque-terrain-color",SSAO:"ssao",TRANSPARENT_ENVIRONMENT:"transparent-environment-color",VIEWSHED:"viewshed-color"};Array.from(Object.values(Xe)).concat(Ye),(0,T.vt)();var Ke=r(49186),Je=r(10107),Qe=r(64108);let et=class extends I.A{constructor(e){super(e),this.view=null,this.consumes={required:[]},this.produces=qe,this.requireGeometryDepth=!1,this._dirty=!0}initialize(){this.addHandles([(0,l.wB)(()=>this.view.ready,e=>{e&&this.view.stage?.renderer.addRenderNode(this)},l.Vh)])}destroy(){this.view.stage?.renderer?.removeRenderNode(this)}precompile(){}render(){throw new Ke.A("RenderNode:render-function-not-implemented","render() is not implemented.")}get camera(){return this.view.state.camera.clone()}get sunLight(){return this.bindParameters.lighting.legacy}get gl(){return this.view.stage.renderView.renderingContext.gl}get techniques(){return this.view.stage.renderView.techniques}acquireOutputFramebuffer(){const e=this._frameBuffer?.getTexture()?.descriptor,t=this.view.stage.renderer.fboCache.acquire(e?.width??640,e?.height??480,this.produces);return t.fbo?.initializeAndBind(),t}bindRenderTarget(){return this._frameBuffer?.fbo?.initializeAndBind(),this._frameBuffer}requestRender(e){switch(e){case 2:this.view.state.fading=!0;case 1:this.view.stage?.renderView.requestRender(e);case 0:case void 0:this._dirty=!0}}resetWebGLState(){this.renderingContext.resetState(),this.renderingContext.bindFramebuffer(this._frameBuffer?.fbo)}get fboCache(){return this.view.stage.renderer.fboCache}get bindParameters(){return this.renderContext.bind}get renderingContext(){return this.view.stage.renderView.renderingContext}get renderContext(){return this.view.stage?.renderer.renderContext}updateAnimation(e){return!!this._dirty&&(this._dirty=!1,!0)}doRender(e){this._frameBuffer=e.find(({name:e})=>e===this.produces);try{return this.render(e)}finally{this._frameBuffer=null}}};(0,o.Cg)([(0,Je.MZ)({constructOnly:!0})],et.prototype,"view",void 0),(0,o.Cg)([(0,Je.MZ)({constructOnly:!0})],et.prototype,"consumes",void 0),(0,o.Cg)([(0,Je.MZ)()],et.prototype,"produces",void 0),(0,o.Cg)([(0,Je.MZ)({readOnly:!0})],et.prototype,"techniques",null),et=(0,o.Cg)([(0,Qe.$)("esri.views.3d.webgl.RenderNode")],et);var tt=r(15581),rt=r(13840),it=r(42958),nt=r(95774),ot=r(90644);let st=class extends it.w{constructor(){super(...arguments),this.shader=new rt.r(nt.S,()=>r.e(1285).then(r.bind(r,91285))),this.ignoreUnused=!0}initializePipeline(){return(0,ot.Ey)({colorWrite:ot.kn})}};st=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAOBlurTechnique")],st);var at=r(65786);class lt extends at.Y{constructor(){super(...arguments),this.projScale=1}}class ct extends lt{constructor(){super(...arguments),this.intensity=1}}class ut extends at.Y{}class dt extends ut{constructor(){super(...arguments),this.blurSize=(0,D.vt)()}}let ht=class extends it.w{constructor(){super(...arguments),this.shader=new rt.r(tt.S,()=>r.e(6122).then(r.bind(r,86122)))}initializePipeline(){return(0,ot.Ey)({colorWrite:ot.kn})}};ht=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAOTechnique")],ht);var mt=r(63907),pt=r(76284),ft=r(67171);let gt=class extends et{constructor(e){super(e),this.consumes={required:["normals"]},this.produces=Xe.SSAO,this.isEnabled=()=>!1,this._enableTime=(0,c.l5)(0),this._passParameters=new ct,this._drawParameters=new dt}initialize(){const e=Uint8Array.from(atob("eXKEvZaUc66cjIKElE1jlJ6MjJ6Ufkl+jn2fcXp5jBx7c6KEflSGiXuXeW6OWs+tfqZ2Yot2Y7Zzfo2BhniEj3xoiXuXj4eGZpqEaHKDWjSMe7palFlzc3BziYOGlFVzg6Zzg7CUY5JrjFF7eYJ4jIKEcyyEonSXe7qUfqZ7j3xofqZ2c4R5lFZ5Y0WUbppoe1l2cIh2ezyUho+BcHN2cG6DbpqJhqp2e1GcezhrdldzjFGUcyxjc3aRjDyEc1h7Sl17c6aMjH92pb6Mjpd4dnqBjMOEhqZleIOBYzB7gYx+fnqGjJuEkWlwnCx7fGl+c4hjfGyRe5qMlNOMfnqGhIWHc6OMi4GDc6aMfqZuc6aMzqJzlKZ+lJ6Me3qRfoFue0WUhoR5UraEa6qMkXiPjMOMlJOGe7JrUqKMjK6MeYRzdod+Sl17boiPc6qEeYBlcIh2c1WEe7GDiWCDa0WMjEmMdod+Y0WcdntzhmN8WjyMjKJjiXtzgYxYaGd+a89zlEV7e2GJfnd+lF1rcK5zc4p5cHuBhL6EcXp5eYB7fnh8iX6HjIKEeaxuiYOGc66RfG2Ja5hzjlGMjEmMe9OEgXuPfHyGhPeEdl6JY02McGuMfnqGhFiMa3WJfnx2l4hwcG1uhmN8c0WMc39og1GBbrCEjE2EZY+JcIh2cIuGhIWHe0mEhIVrc09+gY5+eYBlnCyMhGCDl3drfmmMgX15aGd+gYx+fnuRfnhzY1SMsluJfnd+hm98WtNrcIuGh4SEj0qPdkqOjFF7jNNjdnqBgaqUjMt7boeBhnZ4jDR7c5pze4GGjEFrhLqMjHyMc0mUhKZze4WEa117kWlwbpqJjHZ2eX2Bc09zeId+e0V7WlF7jHJ2l72BfId8l3eBgXyBe897jGl7c66cgW+Xc76EjKNbgaSEjGx4fId8jFFjgZB8cG6DhlFziZhrcIh2fH6HgUqBgXiPY8dahGFzjEmMhEFre2dxhoBzc5SGfleGe6alc7aUeYBlhKqUdlp+cH5za4OEczxza0Gcc4J2jHZ5iXuXjH2Jh5yRjH2JcFx+hImBjH+MpddCl3dreZeJjIt8ZW18bm1zjoSEeIOBlF9oh3N7hlqBY4+UeYFwhLJjeYFwaGd+gUqBYxiEYot2fqZ2ondzhL6EYyiEY02Ea0VjgZB8doaGjHxoc66cjEGEiXuXiXWMiZhreHx8frGMe75rY02Ec5pzfnhzlEp4a3VzjM+EhFFza3mUY7Zza1V5e2iMfGyRcziEhDyEkXZ2Y4OBnCx7g5t2eyBjgV6EhEFrcIh2dod+c4Z+nJ5zjm15jEmUeYxijJp7nL6clIpjhoR5WrZraGd+fnuRa6pzlIiMg6ZzfHx5foh+eX1ufnB5eX1ufnB5aJt7UqKMjIh+e3aBfm5lbYSBhGFze6J4c39oc0mUc4Z+e0V7fKFVe0WEdoaGY02Ec4Z+Y02EZYWBfH6HgU1+gY5+hIWUgW+XjJ57ebWRhFVScHuBfJ6PhBx7WqJzlM+Ujpd4gHZziX6HjHmEgZN+lJt5boiPe2GJgX+GjIGJgHZzeaxufnB5hF2JtdN7jJ57hp57hK6ElFVzg6ZzbmiEbndzhIWHe3uJfoFue3qRhJd2j3xoc65zlE1jc3p8lE1jhniEgXJ7e657vZaUc3qBh52BhIF4aHKDa9drgY5+c52GWqZzbpqJe8tjnM+UhIeMfo2BfGl+hG1zSmmMjKJjZVaGgX15c1lze0mEp4OHa3mUhIWHhDyclJ6MeYOJkXiPc0VzhFiMlKaEboSJa5Jze41re3qRhn+HZYWBe0mEc4p5fnORbox5lEp4hGFjhGGEjJuEc1WEhLZjeHeGa7KlfHx2hLaMeX1ugY5+hIWHhKGPjMN7c1WEho1zhoBzZYx7fnhzlJt5exyUhFFziXtzfmmMa6qMYyiEiXxweV12kZSMeWqXSl17fnhzxmmMrVGEe1mcc4p5eHeGjK6MgY5+doaGa6pzlGV7g1qBh4KHkXiPeW6OaKqafqZ2eXZ5e1V7jGd7boSJc3BzhJd2e0mcYot2h1RoY8dahK6EQmWEWjx7e1l2lL6UgXyBdnR4eU9zc0VreX1umqaBhld7fo2Bc6KEc5Z+hDyEcIeBWtNrfHyGe5qMhMuMe5qMhEGEbVVupcNzg3aHhIF4boeBe0mEdlptc39ofFl5Y8uUlJOGiYt2UmGEcyxjjGx4jFF7a657ZYWBnElzhp57iXtrgZN+tfOEhIOBjE2HgU1+e8tjjKNbiWCDhE15gUqBgYN7fnqGc66ce9d7iYSBj0qPcG6DnGGcT3eGa6qMZY+JlIiMl4hwc3aRdnqBlGV7eHJ2hLZjfnuRhDyEeX6MSk17g6Z+c6aUjHmEhIF4gXyBc76EZW18fGl+fkl+jCxrhoVwhDyUhIqGlL2DlI6EhJd2tdN7eYORhEGMa2Faa6pzc3Bzc4R5lIRznM+UY9eMhDycc5Z+c4p5c4iGY117pb6MgXuPrbJafnx2eYOJeXZ5e657hDyEcziElKZjfoB5eHeGj4WRhGGEe6KGeX1utTStc76EhFGJnCyMa5hzfH6HnNeceYB7hmN8gYuMhIVrczSMgYF8h3N7c5pza5hzjJqEYIRdgYuMlL2DeYRzhGGEeX1uhLaEc4iGeZ1zdl6JhrVteX6Me2iMfm5lWqJzSpqEa6pzdnmchHx2c6OMhNdrhoR5g3aHczxzeW52gV6Ejm15frGMc0Vzc4Z+l3drfniJe+9rWq5rlF1rhGGEhoVwe9OEfoh+e7pac09+c3qBY0lrhDycdnp2lJ6MiYOGhGCDc3aRlL2DlJt5doaGdnp2gYF8gWeOjF2Uc4R5c5Z+jEmMe7KEc4mEeYJ4dmyBe0mcgXiPbqJ7eYB7fmGGiYSJjICGlF1reZ2PnElzbpqJfH6Hc39oe4WEc5eJhK6EhqyJc3qBgZB8c09+hEmEaHKDhFGJc5SGiXWMUpaEa89zc6OMnCyMiXtrho+Be5qMc7KEjJ57dmN+hKGPjICGbmiEe7prdod+hGCDdnmchBx7eX6MkXZ2hGGEa657hm98jFFjY5JreYOJgY2EjHZ2a295Y3FajJ6Mc1J+YzB7e4WBjF2Uc4R5eV12gYxzg1qBeId+c9OUc5pzjFFjgY5+hFiMlIaPhoR5lIpjjIKBlNdSe7KEeX2BfrGMhIqGc65zjE2UhK6EklZ+QmWEeziMWqZza3VzdnR4foh+gYF8n3iJiZhrnKp7gYF8eId+lJ6Me1lrcIuGjKJjhmN8c66MjFF7a6prjJ6UnJ5zezyUfruRWlF7nI5zfHyGe657h4SEe8tjhBx7jFFjc09+c39ojICMeZeJeXt+YzRzjHZ2c0WEcIeBeXZ5onSXkVR+gYJ+eYFwdldzgYF7eX2BjJ6UiXuXlE1jh4SEe1mchLJjc4Z+hqZ7eXZ5bm1zlL6Ue5p7iWeGhKqUY5pzjKJjcIeBe8t7gXyBYIRdlEp4a3mGnK6EfmmMZpqEfFl5gYxzjKZuhGFjhoKGhHx2fnx2eXuMe3aBiWeGvbKMe6KGa5hzYzB7gZOBlGV7hmN8hqZlYot2Y117a6pzc6KEfId8foB5rctrfneJfJ6PcHN2hFiMc5pzjH92c0VzgY2EcElzdmCBlFVzg1GBc65zY4OBboeBcHiBeYJ4ewxzfHx5lIRzlEmEnLKEbk1zfJ6PhmN8eYBljBiEnMOEiXxwezyUcIeBe76EdsKEeX2BdnR4jGWUrXWMjGd7fkl+j4WRlEGMa5Jzho+BhDyEfnqMeXt+g3aHlE1jczClhNN7ZW18eHx8hGFjZW18iXWMjKJjhH57gYuMcIuGWjyMe4ZtjJuExmmMj4WRdntzi4GDhFFzYIRdnGGcjJp7Y0F7e4WEkbCGiX57fnSHa657a6prhBCMe3Z+SmmMjH92eHJ2hK6EY1FzexhrvbKMnI5za4OEfnd+eXuMhImBe897hLaMjN+EfG+BeIOBhF1+eZeJi4GDkXZ2eXKEgZ6Ejpd4c2GHa1V5e5KUfqZuhCx7jKp7lLZrg11+hHx2hFWUoot2nI5zgbh5mo9zvZaUe3qRbqKMfqZ2kbCGhFiM"),e=>e.charCodeAt(0)),t=new ft.R(32);t.wrapMode=33071,t.pixelFormat=6407,t.wrapMode=10497,t.hasMipmap=!0,this._passParameters.noiseTexture=new pt.A(this.renderingContext,t,e),this.addHandles((0,l.wB)(()=>this.isEnabled(),()=>this._enableTime=(0,c.l5)(0)))}destroy(){this._passParameters.noiseTexture=(0,a.WD)(this._passParameters.noiseTexture)}precompile(){this.techniques.precompile(ht),this.techniques.precompile(st)}render(e){const t=e.find(({name:e})=>"normals"===e),r=t?.getTexture(),i=t?.getTexture(mt.nI);if(!r||!i)return;const n=this.techniques.getCompiled(ht),o=this.techniques.getCompiled(st);if(!n||!o)return this._enableTime=(0,c.l5)(performance.now()),void this.requestRender(1);0===this._enableTime&&(this._enableTime=(0,c.l5)(performance.now()));const a=this.renderingContext,l=this.view.qualitySettings.fadeDuration,u=this.bindParameters,h=u.camera,m=h.relativeElevation,p=(0,s.qE)((5e5-m)/2e5,0,1),f=l>0?Math.min(l,performance.now()-this._enableTime)/l:1,g=f*p;this._passParameters.normalTexture=r,this._passParameters.depthTexture=i,this._passParameters.projScale=1/h.computeScreenPixelSizeAtDist(1),this._passParameters.intensity=4*vt/(0,tt.g)(h)**6*g;const v=h.fullViewport[2],_=h.fullViewport[3],x=this.fboCache.acquire(v,_,"ssao input",2);a.bindFramebuffer(x.fbo),a.setViewport(0,0,v,_),a.bindTechnique(n,u,this._passParameters,this._drawParameters),a.screen.draw();const y=Math.round(v/2),w=Math.round(_/2),b=this.fboCache.acquire(y,w,"ssao blur",0);a.bindFramebuffer(b.fbo),this._drawParameters.colorTexture=x.getTexture(),(0,d.hZ)(this._drawParameters.blurSize,0,2/_),a.bindTechnique(o,u,this._passParameters,this._drawParameters),a.setViewport(0,0,y,w),a.screen.draw(),x.release();const M=this.fboCache.acquire(y,w,Xe.SSAO,0);return a.bindFramebuffer(M.fbo),a.setViewport(0,0,v,_),a.setClearColor(1,1,1,0),a.clear(16384),this._drawParameters.colorTexture=b.getTexture(),(0,d.hZ)(this._drawParameters.blurSize,2/v,0),a.bindTechnique(o,u,this._passParameters,this._drawParameters),a.setViewport(0,0,y,w),a.screen.draw(),a.setViewport4fv(h.fullViewport),b.release(),f<1&&this.requestRender(2),M}};(0,o.Cg)([(0,u.MZ)()],gt.prototype,"consumes",void 0),(0,o.Cg)([(0,u.MZ)()],gt.prototype,"produces",void 0),(0,o.Cg)([(0,u.MZ)({constructOnly:!0})],gt.prototype,"isEnabled",void 0),gt=(0,o.Cg)([(0,u.$K)("esri.views.3d.webgl-engine.effects.ssao.SSAO")],gt);const vt=.5;function _t(e,t){t.receiveAmbientOcclusion?(e.uniforms.add(new n.x("ssaoTex",e=>e.ssao?.getTexture())),e.constants.add("blurSizePixelsInverse","float",.5),e.code.add(i.H`float evaluateAmbientOcclusionInverse() {
558
558
  vec2 ssaoTextureSizeInverse = 1.0 / vec2(textureSize(ssaoTex, 0));
559
559
  return texture(ssaoTex, gl_FragCoord.xy * blurSizePixelsInverse * ssaoTextureSizeInverse).r;
560
560
  }