var RemoteClient; (() => { var e = { 88277: (e, t, r) => { r.p = self.esriConfig.assetsPath + "/esri/core/workers/" }, 68773: (e, t, r) => { "use strict"; r.d(t, {Z: () => s}), r(80442); var n, o = r(78286); const s = { apiKey: void 0, applicationUrl: void 0 , 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", portalUrl: "https://www.arcgis.com", routeServiceUrl: "https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World", workers: {loaderConfig: {has: {}, paths: {}, map: {}, packages: []}}, request: { httpsDomains: ["arcgis.com", "arcgisonline.com", "esrikr.com", "premiumservices.blackbridge.com", "esripremium.accuweather.com", "gbm.digitalglobe.com", "firstlook.digitalglobe.com", "msi.digitalglobe.com"], interceptors: [], maxUrlLength: 2e3, proxyRules: [], proxyUrl: null, timeout: 6e4, trustedServers: [], useIdentity: !0 }, log: {interceptors: [], level: null} }; if (globalThis.esriConfig && ((0, o.RH)(s, globalThis.esriConfig, !0), delete s.has), !s.assetsPath) { const e = "4.23.7"; s.assetsPath = `https://js.arcgis.com/${e.slice(0, -2)}/@arcgis/core/assets` } s.baseUrl && console.warn("[esri.config]", "baseUrl has been replaced by assetsPath"), Object.defineProperty(s, "baseUrl", { set() { console.warn("[esri.config]", "baseUrl has been replaced by assetsPath") } }), s.request.corsEnabledServers = [], s.request.corsEnabledServers.push = function () { return console.warn("[esri.config]", "request.corsEnabledServers is not supported and will be removed in a future release. See http://esriurl.com/cors8664"), 0 } }, 20102: (e, t, r) => { "use strict"; r.d(t, {Z: () => i}); var n = r(22974), o = r(92604), s = r(58896); class i extends s.Z { constructor(e, t, r) { if (super(e, t, r), !(this instanceof i)) return new i(e, t, r) } 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.d9)(t) } catch (e) { return "[object]" } }))) } } catch (e) { throw o.Z.getLogger("esri.core.Error").error(e), e } return {name: this.name, message: this.message, details: this.details} } static fromJSON(e) { return new i(e.name, e.message, e.details) } } i.prototype.type = "error" }, 92604: (e, t, r) => { "use strict"; r.d(t, {Z: () => a}); var n = r(68773), o = (r(80442), r(70586)), s = r(19153); const i = {info: 0, warn: 1, error: 2, none: 3}; class a { 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, a._loggers[this.module] = this; const t = this.module.lastIndexOf("."); -1 !== t && (this._parent = a.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() { const e = this; return {loggedMessages: e._loggedMessages, clearLoggedWarnings: () => e._loggedMessages.warn.clear()} } static get testSingleton() { return { resetLoggers(e = {}) { const t = a._loggers; return a._loggers = e, t }, set throttlingDisabled(e) { a._throttlingDisabled = e } } } static getLogger(e) { let t = a._loggers[e]; return t || (t = new a({module: e})), t } _log(e, t, ...r) { if (this._matchLevel(e)) { if ("always" !== t && !a._throttlingDisabled) { const n = this._argsToKey(r), o = this._loggedMessages[e].get(n); if ("once" === t && null != o || "oncePerTick" === t && o && o >= a._tickCounter) return; this._loggedMessages[e].set(n, a._tickCounter), a._scheduleTickCounterIncrement() } for (const t of n.Z.log.interceptors) if (t(e, this.module, ...r)) return; this._inheritedWriter()(e, this.module, ...r) } } _parentWithMember(e, t) { let r = this; for (; (0, o.pC)(r);) { const t = r[e]; if ((0, o.pC)(t)) return t; r = r.parent } return t } _inheritedWriter() { return this._parentWithMember("writer", this._consoleWriter) } _consoleWriter(e, t, ...r) { console[e](`[${t}]`, ...r) } _matchLevel(e) { const t = n.Z.log.level ? n.Z.log.level : "warn"; return i[this._parentWithMember("level", t)] <= i[e] } _argsToKey(...e) { return (0, s.hP)(JSON.stringify(e, ((e, t) => "object" != typeof t || Array.isArray(t) ? t : "[Object]"))) } static _scheduleTickCounterIncrement() { a._tickCounterScheduled || (a._tickCounterScheduled = !0, Promise.resolve().then((() => { a._tickCounter++, a._tickCounterScheduled = !1 }))) } } a._loggers = {}, a._tickCounter = 0, a._tickCounterScheduled = !1, a._throttlingDisabled = !1 }, 58896: (e, t, r) => { "use strict"; r.d(t, {Z: () => o}); var n = r(78286); class o { constructor(e, t, r) { this.name = e, this.details = r, this.message = void 0, this instanceof o && (this.message = t && function (e, t) { return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g, (function (e, r) { if ("" === r) return "$"; const o = (0, n.hS)(r, t), s = null == o ? "" : o; if (void 0 === s) throw new Error(`could not find key "${r}" in template`); return s.toString() })) }(t, r) || "") } toString() { return "[" + this.name + "]: " + this.message } } }, 77734: (e, t, r) => { "use strict"; r.d(t, {Z: () => n}); class n { constructor(e = 1) { this._seed = e } set seed(e) { this._seed = null == e ? Math.random() * n._m : e } 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 } } n._m = 2147483647, n._a = 48271, n._c = 0 }, 67676: (e, t, r) => { "use strict"; r.d(t, { SO: () => u, a9: () => c, fS: () => s, cq: () => d, zG: () => i, w6: () => l, Od: () => g, e$: () => h, FY: () => b }); var n = r(70586), o = r(77734); function s(e, t, r) { if ((0, n.Wi)(e) && (0, n.Wi)(t)) return !0; if ((0, n.Wi)(e) || (0, n.Wi)(t) || e.length !== t.length) return !1; if (r) { for (let n = 0; n < e.length; n++) if (!r(e[n], t[n])) return !1 } else for (let r = 0; r < e.length; r++) if (e[r] !== t[r]) return !1; return !0 } function i(e) { return e && "number" == typeof e.length } const a = !!Array.prototype.fill; function c(e, t) { if (a) return new Array(e).fill(t); const r = new Array(e); for (let n = 0; n < e; n++) r[n] = t; return r } function l(e, t) { void 0 === t && (t = e, e = 0); const r = new Array(t - e); for (let n = e; n < t; n++) r[n - e] = n; return r } class u { constructor() { this.last = 0 } } const f = new u; function d(e, t, r, n) { n = n || f; const o = Math.max(0, n.last - 10); for (let s = o; s < r; ++s) if (e[s] === t) return n.last = s, s; const s = Math.min(o, r); for (let r = 0; r < s; ++r) if (e[r] === t) return n.last = r, r; return -1 } function h(e, t, r, n) { const o = null == r ? e.length : r, s = d(e, t, o, n); if (-1 !== s) return e[s] = e[o - 1], null == r && e.pop(), t } const p = new Set; function b(e, t, r = e.length, n = t.length, o, s) { if (0 === n || 0 === r) return r; p.clear(); for (let e = 0; e < n; ++e) p.add(t[e]); o = o || f; const i = Math.max(0, o.last - 10); for (let t = i; t < r; ++t) if (p.has(e[t]) && (s && s.push(e[t]), p.delete(e[t]), e[t] = e[r - 1], --r, --t, 0 === p.size || 0 === r)) return p.clear(), r; for (let t = 0; t < i; ++t) if (p.has(e[t]) && (s && s.push(e[t]), p.delete(e[t]), e[t] = e[r - 1], --r, --t, 0 === p.size || 0 === r)) return p.clear(), r; return p.clear(), r } function g(e, t) { const r = e.indexOf(t); return -1 !== r ? (e.splice(r, 1), t) : null } new o.Z }, 91460: (e, t, r) => { "use strict"; function n(e) { return e && ("function" == typeof e.on || "function" == typeof e.addEventListener) } function o(e, t, r) { if (!n(e)) throw new TypeError("target is not a Evented or EventTarget object"); if ("on" in e) return e.on(t, r); if (Array.isArray(t)) { const n = t.slice(); for (const t of n) e.addEventListener(t, r); return { remove() { for (const t of n) e.removeEventListener(t, r) } } } return e.addEventListener(t, r), { remove() { e.removeEventListener(t, r) } } } function s(e, t, r) { if (!n(e)) throw new TypeError("target is not a Evented or EventTarget object"); if ("once" in e) return e.once(t, r); const s = o(e, t, (t => { s.remove(), r.call(e, t) })); return { remove() { s.remove() } } } r.d(t, {vT: () => n, on: () => o, IH: () => s}) }, 80442: (e, t, r) => { "use strict"; var n, o; let s; var i, a; function c(e) { return "function" == typeof s[e] ? s[e] = s[e](globalThis) : s[e] } r.d(t, {Z: () => c}), s = null != (n = globalThis.dojoConfig) && n.has || null != (o = globalThis.esriConfig) && o.has ? {...null == (i = globalThis.dojoConfig) ? void 0 : i.has, ...null == (a = globalThis.esriConfig) ? void 0 : a.has} : {}, c.add = (e, t, r, n) => ((n || void 0 === s[e]) && (s[e] = t), r && c(e)), c.cache = s, c.add("esri-deprecation-warnings", !0), (() => { var e; c.add("host-webworker", void 0 !== globalThis.WorkerGlobalScope && self instanceof globalThis.WorkerGlobalScope); const t = "undefined" != typeof window && "undefined" != typeof location && "undefined" != typeof document && window.location === location && window.document === document; if (c.add("host-browser", t), c.add("host-node", "object" == typeof globalThis.process && (null == (e = globalThis.process.versions) ? void 0 : e.node) && globalThis.process.versions.v8), c.add("dom", t), c("host-browser")) { const e = navigator, t = e.userAgent, r = e.appVersion, n = parseFloat(r); if (c.add("wp", parseFloat(t.split("Windows Phone")[1]) || void 0), c.add("msapp", parseFloat(t.split("MSAppHost/")[1]) || void 0), c.add("khtml", r.includes("Konqueror") ? n : void 0), c.add("edge", parseFloat(t.split("Edge/")[1]) || void 0), c.add("opr", parseFloat(t.split("OPR/")[1]) || void 0), c.add("webkit", !c("wp") && !c("edge") && parseFloat(t.split("WebKit/")[1]) || void 0), c.add("chrome", !c("edge") && !c("opr") && parseFloat(t.split("Chrome/")[1]) || void 0), c.add("android", !c("wp") && parseFloat(t.split("Android ")[1]) || void 0), c.add("safari", !r.includes("Safari") || c("wp") || c("chrome") || c("android") || c("edge") || c("opr") ? void 0 : parseFloat(r.split("Version/")[1])), c.add("mac", r.includes("Macintosh")), !c("wp") && t.match(/(iPhone|iPod|iPad)/)) { const e = RegExp.$1.replace(/P/, "p"), r = t.match(/OS ([\d_]+)/) ? RegExp.$1 : "1", n = parseFloat(r.replace(/_/, ".").replace(/_/g, "")); c.add(e, n), c.add("ios", n) } c.add("trident", parseFloat(r.split("Trident/")[1]) || void 0), c("webkit") || (!t.includes("Gecko") || c("wp") || c("khtml") || c("trident") || c("edge") || c.add("mozilla", n), c("mozilla") && c.add("ff", parseFloat(t.split("Firefox/")[1] || t.split("Minefield/")[1]) || void 0)) } })(), (() => { if (globalThis.navigator) { const e = navigator.userAgent, t = /Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e), r = /iPhone/i.test(e); t && c.add("esri-mobile", t), r && c.add("esri-iPhone", r), c.add("esri-geolocation", !!navigator.geolocation) } c.add("esri-canvas-svg-support", !c("trident")), c.add("esri-wasm", "WebAssembly" in globalThis), c.add("esri-shared-array-buffer", (() => { const e = "SharedArrayBuffer" in globalThis, t = !1 === globalThis.crossOriginIsolated; return e && !t })), c.add("esri-atomics", "Atomics" in globalThis), c.add("esri-workers", "Worker" in globalThis), c.add("web-feat:cache", "caches" in globalThis), c.add("esri-workers-arraybuffer-transfer", !c("safari") || Number(c("safari")) >= 12), c.add("featurelayer-simplify-thresholds", [.5, .5, .5, .5]), c.add("featurelayer-simplify-payload-size-factors", [1, 1, 4]), c.add("featurelayer-snapshot-enabled", !0), c.add("featurelayer-snapshot-point-min-threshold", 8e4), c.add("featurelayer-snapshot-point-max-threshold", 4e5), c.add("featurelayer-snapshot-point-coverage", .1), c.add("featurelayer-advanced-symbols", !1), c.add("featurelayer-pbf", !0), c.add("featurelayer-pbf-statistics", !1), c.add("feature-layers-workers", !0), c.add("feature-polyline-generalization-factor", 1), c.add("mapview-transitions-duration", 200), c.add("mapview-srswitch-adjust-rotation-scale-threshold", 24e6), c.add("mapserver-pbf-enabled", !1), c("host-webworker") || c("host-browser") && (c.add("esri-csp-restrictions", (() => { try { new Function } catch { return !0 } return !1 })), c.add("esri-image-decode", (() => { if ("decode" in new Image) { const e = new Image; return e.src = 'data:image/svg+xml;charset=UTF-8,', void e.decode().then((() => { c.add("esri-image-decode", !0, !0, !0) })).catch((() => { c.add("esri-image-decode", !1, !0, !0) })) } return !1 })), c.add("esri-url-encodes-apostrophe", (() => { const e = window.document.createElement("a"); return e.href = "?'", e.href.includes("?%27") }))) })() }, 22974: (e, t, r) => { "use strict"; r.d(t, {d9: () => i, fS: () => d, yd: () => s, Vo: () => a}), r(67676), r(80442); var n = r(70586), o = r(1533); function s(e, t) { let r; if (t) for (r in e) e.hasOwnProperty(r) && (void 0 === e[r] ? delete e[r] : e[r] instanceof Object && s(e[r], !0)); else for (r in e) e.hasOwnProperty(r) && void 0 === e[r] && delete e[r]; return e } function i(e) { if (!e || "object" != typeof e || "function" == typeof e) return e; const t = f(e); if ((0, n.pC)(t)) return t; if (c(e)) return e.clone(); if (l(e)) return e.map(i); if (u(e)) return e.clone(); const r = {}; for (const t of Object.getOwnPropertyNames(e)) r[t] = i(e[t]); return r } function a(e) { if (!e || "object" != typeof e || "function" == typeof e) return e; const t = f(e); if ((0, n.pC)(t)) return t; if (l(e)) { let t = !0; const r = e.map((e => { const r = a(e); return null != e && null == r && (t = !1), r })); return t ? r : null } if (c(e)) return e.clone(); if (!u(e)) { const t = new (0, Object.getPrototypeOf(e).constructor); for (const r of Object.getOwnPropertyNames(e)) { const n = e[r], o = a(n); if (null != n && null == o) return null; t[r] = o } return t } return null } function c(e) { return "function" == typeof e.clone } function l(e) { return "function" == typeof e.map && "function" == typeof e.forEach } function u(e) { return "function" == typeof e.notifyChange && "function" == typeof e.watch } function f(e) { if ((0, o.W0)(e) || (0, o.lq)(e) || (0, o.KZ)(e) || (0, o.z3)(e) || (0, o.Uc)(e) || (0, o.Hx)(e) || (0, o.ZY)(e) || (0, o.xZ)(e) || (0, o.fS)(e)) return (0, o.tP)(e); if (e instanceof Date) return new Date(e.getTime()); if (e instanceof ArrayBuffer) return e.slice(0, e.byteLength); if (e instanceof Map) { const t = new Map; return e.forEach(((e, r) => { t.set(r, i(e)) })), t } if (e instanceof Set) { const t = new Set; return e.forEach((e => { t.add(i(e)) })), t } return null } function d(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 } }, 70586: (e, t, r) => { "use strict"; function n(e) { return null != e } function o(e) { return null == e } function s(e) { return void 0 === e } function i(e, t) { return n(e) ? t(e) : null } function a(e) { return e } function c(e, t) { if (o(e)) throw new Error(t); return e } function l(e, t) { return n(e) ? e : "function" == typeof t ? t() : t } function u(e, t) { return n(e) ? e : t } function f(e) { return n(e) && e.destroy(), null } function d(e) { return n(e) && e.dispose(), null } function h(e) { return n(e) && e.remove(), null } function p(e) { return n(e) && e.release(), null } function b(e) { return null } function g(e, t) { const r = new Array; for (const n of e) r.push(y(n, null, t)); return r } function m(e, t) { for (const r of e) i(r, t) } function y(e, t, r) { return n(e) ? r(e) : t } function v(e) { return e.filter((e => n(e))) } function w(e, ...t) { let r = e; for (let e = 0; e < t.length && r; ++e) r = r[t[e]]; return r } function _(e) { return e } r.d(t, { yw: () => i, j0: () => _, SC: () => f, O3: () => d, lV: () => v, JR: () => m, U2: () => w, Wi: () => o, pC: () => n, o8: () => s, Fd: () => g, R2: () => y, Bd: () => b, RY: () => p, hw: () => h, Wg: () => a, Pt: () => l, s3: () => c, yl: () => u }) }, 78286: (e, t, r) => { "use strict"; r.d(t, {RH: () => o, hS: () => s, RB: () => i}); var n = r(22974); function o(e, t, r = !1) { return c(e, t, r) } function s(e, t) { if (null != t) return t[e] || a(e.split("."), !1, t) } function i(e, t, r) { const n = e.split("."), o = n.pop(), s = a(n, !0, r); s && o && (s[o] = t) } function a(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 c(e, t, r) { return t ? Object.keys(t).reduce((function (e, o) { let s = e[o], i = t[o]; return s === i ? e : void 0 === s ? (e[o] = (0, n.d9)(i), e) : (Array.isArray(i) || Array.isArray(e) ? (s = s ? Array.isArray(s) ? e[o] = s.concat() : e[o] = [s] : e[o] = [], i && (Array.isArray(i) || (i = [i]), r ? i.forEach((e => { -1 === s.indexOf(e) && s.push(e) })) : e[o] = i.concat())) : i && "object" == typeof i ? e[o] = c(s, i, r) : e.hasOwnProperty(o) && !t.hasOwnProperty(o) || (e[o] = i), e) }), e || {}) : e } }, 95330: (e, t, r) => { "use strict"; r.d(t, { e4: () => C, $6: () => c, Ue: () => l, zE: () => u, dD: () => _, hh: () => T, vr: () => x, Ds: () => j, as: () => O, WW: () => P, R8: () => w, D_: () => v, Hc: () => h, y8: () => E, fu: () => g, $F: () => m, d1: () => k, DB: () => S, r9: () => p, k_: () => f, H9: () => b, Yn: () => M, gx: () => A, Hl: () => y }); const n = (o = globalThis, { setTimeout: (e, t) => { const r = o.setTimeout(e, t); return {remove: () => o.clearTimeout(r)} } }); var o, s = r(20102), i = r(91460), a = (r(92604), r(70586)); function c(e) { return Promise.all(e) } function l(e) { return new Promise(((t, r) => { try { e(t, r) } catch (e) { Promise.resolve().then((() => r(e))) } })) } function u(e = "Aborted") { return new s.Z("AbortError", e) } function f(e, t = "Aborted") { if (h(e)) throw u(t) } function d(e) { return (0, a.pC)(e) ? "aborted" in e ? e : e.signal : e } function h(e) { const t = d(e); return (0, a.pC)(t) && t.aborted } function p(e) { if (v(e)) throw e } function b(e) { if (!v(e)) throw e } function g(e, t) { const r = d(e); if (!(0, a.Wi)(r)) { if (!r.aborted) return (0, i.IH)(r, "abort", (() => t())); t() } } function m(e, t) { const r = d(e); if (!(0, a.Wi)(r)) return f(r), (0, i.IH)(r, "abort", (() => t(u()))) } function y(e, t) { const r = d(t); return (0, a.Wi)(r) ? e : new Promise(((r, n) => { let o = g(t, (() => n(u()))); const s = () => o = (0, a.hw)(o); e.then(s, s), e.then(r, n) })) } function v(e) { return e && "AbortError" === e.name } function w(e) { return e.catch((e => { if (!v(e)) throw e })) } function _() { let e = null; const t = new Promise(((t, r) => { e = {promise: void 0, resolve: t, reject: r} })); return e.promise = t, e } function O(e) { if (!e) return; if ("function" != typeof e.forEach) { const t = Object.keys(e); return O(t.map((t => e[t]))).then((e => { const r = {}; return t.forEach(((t, n) => r[t] = e[n])), r })) } const t = e; return l((e => { const r = []; let n = t.length; 0 === n && e(r), t.forEach((t => { const o = {promise: t || Promise.resolve(t)}; r.push(o), o.promise.then((e => { o.value = e })).catch((e => { o.error = e })).then((() => { --n, 0 === n && e(r) })) })) })) } function P(e) { return O(e).then((e => e.filter((e => !!e.value)).map((e => e.value)))) } function k(e) { return Promise.reject(e) } function S(e) { return Promise.resolve(e) } function C(e, t, r) { const n = new AbortController; return g(r, (() => n.abort())), new Promise(((r, o) => { let s = setTimeout((() => { s = 0, r(t) }), e); g(n, (() => { s && (clearTimeout(s), o(u())) })) })) } function E(e) { return e && "function" == typeof e.then } function A(e) { return E(e) ? e : Promise.resolve(e) } function j(e, t = -1) { let r, n, o, s, i = null; const c = (...l) => { if (r) { n = l, s && s.reject(u()), s = _(); const e = (0, a.j0)(s.promise); if (i) { const e = i; i = null, e.abort() } return e } if (o = s || _(), s = null, t > 0) { const n = new AbortController; r = A(e(...l, n.signal)); const o = r; C(t).then((() => { r === o && (s ? n.abort() : i = n) })) } else r = 1, r = A(e(...l)); const f = () => { const e = n; n = o = r = i = null, null != e && c(...e) }, d = r, h = o; return d.then(f, f), d.then(h.resolve, h.reject), (0, a.j0)(h.promise) }; return c } function T() { let e, t; const r = new Promise(((r, n) => { e = r, t = n })), o = t => { e(t) }; return o.resolve = t => e(t), o.reject = e => t(e), o.timeout = (e, t) => n.setTimeout((() => o.reject(t)), e), o.promise = r, o } function x(e, t) { let r, n = new AbortController; const o = e(n.signal); let s = { promise: o, finished: !1, abort: () => { n && (n.abort(), n = null) } }; const i = () => { s && (s.finished = !0, s = null), (0, a.pC)(r) && (r.remove(), r = null), n = null }; return o.then(i, i), r = g(t, (() => { (0, a.pC)(s) && s.abort() })), s } function M(e) { return Promise.resolve().then((() => { f(e) })) } }, 19153: (e, t, r) => { "use strict"; r.d(t, {Qs: () => a, hP: () => c, gx: () => i, Cb: () => l}); var n = r(78286); const o = /\{([^\}]+)\}/g; function s(e) { return null == e ? "" : e } function i(e, t) { return e.replace(o, "object" == typeof t ? (e, r) => s((0, n.hS)(r, t)) : (e, r) => s(t(r))) } function a(e, t) { return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g, (e => t && -1 !== t.indexOf(e) ? e : `\\${e}`)) } function c(e) { let t = 0; for (let r = 0; r < e.length; r++) t = (t << 5) - t + e.charCodeAt(r), t |= 0; return t } function l(e) { return (new DOMParser).parseFromString(e || "", "text/html").body.innerText || "" } }, 1533: (e, t, r) => { "use strict"; function n(e, t) { if (e.forEach) e.forEach(t); else for (let r = 0; r < e.length; r++) t(e[r], r, e) } function o(e, t, r) { if (e.slice) return e.slice(t, r); void 0 === t ? t = 0 : (t < 0 && (t += e.length), t = Math.min(e.length, Math.max(0, t))), void 0 === r ? r = e.length : (r < 0 && (r += e.length), r = Math.min(e.length, Math.max(0, r))); const n = Math.max(0, r - t), o = new (0, e.constructor)(n); for (let r = 0; r < n; r++) o[r] = e[t + r]; return o } function s(e) { return e instanceof ArrayBuffer || e && e.constructor && "ArrayBuffer" === e.constructor.name } function i(e) { return e instanceof Int8Array || e && e.constructor && "Int8Array" === e.constructor.name } function a(e) { return e instanceof Uint8Array || e && e.constructor && "Uint8Array" === e.constructor.name } function c(e) { return e instanceof Uint8ClampedArray || e && e.constructor && "Uint8ClampedArray" === e.constructor.name } function l(e) { return e instanceof Int16Array || e && e.constructor && "Int16Array" === e.constructor.name } function u(e) { return e instanceof Uint16Array || e && e.constructor && "Uint16Array" === e.constructor.name } function f(e) { return e instanceof Int32Array || e && e.constructor && "Int32Array" === e.constructor.name } function d(e) { return e instanceof Uint32Array || e && e.constructor && "Uint32Array" === e.constructor.name } function h(e) { return e instanceof Float32Array || e && e.constructor && "Float32Array" === e.constructor.name } function p(e) { return e instanceof Float64Array || e && e.constructor && "Float64Array" === e.constructor.name } r.d(t, { Ed: () => n, eP: () => s, xZ: () => h, fS: () => p, z3: () => l, Hx: () => f, W0: () => i, Uc: () => u, ZY: () => d, lq: () => a, KZ: () => c, tP: () => o }) }, 17452: (e, t, r) => { "use strict"; r.d(t, { R9: () => y, qg: () => j, tD: () => $, ZN: () => he, fl: () => pe, rS: () => V, Ie: () => ue, sJ: () => Y, AH: () => Q, io: () => ee, L: () => P, TI: () => O, vt: () => ce, oh: () => U, P$: () => D, Ml: () => be, ed: () => I, b7: () => A, D6: () => W, tm: () => R, YP: () => H, jc: () => z, HK: () => K, $U: () => ne, oC: () => te, kl: () => L, v_: () => B, hF: () => q, _l: () => X, PF: () => F, Fv: () => Z, B7: () => E, u0: () => S, Yd: () => ae, Hu: () => de, Qj: () => le, hO: () => oe, mN: () => k }); var n = r(68773), o = r(20102), s = r(92604), i = r(70586); const a = s.Z.getLogger("esri.core.urlUtils"), c = n.Z.request, l = "esri/config: esriConfig.request.proxyUrl is not set.", u = /^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i, f = /^\s*http:/i, d = /^\s*https:/i, h = /^\s*file:/i, p = /:\d+$/, b = /^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i, g = new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"), m = new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$"); class y { 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 = (0, i.j0)(this.uri.match(g)); 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 = (0, i.j0)(this.authority.match(m)), 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 v = {}; let w = new y(n.Z.applicationUrl); let _ = function () { const e = (0, i.j0)(w.path), t = e.substring(0, e.lastIndexOf(e.split("/")[e.split("/").length - 1])); return `${w.scheme}://${w.host}${null != w.port ? `:${w.port}` : ""}${t}` }(); const O = () => w, P = () => _; function k(e) { const t = {path: null, query: null}, r = new y(e), n = e.indexOf("?"); return null === r.query ? t.path = e : (t.path = e.substring(0, n), t.query = S(r.query)), r.fragment && (t.hash = r.fragment, null === r.query && (t.path = t.path.substring(0, t.path.length - (r.fragment.length + 1)))), t } function S(e) { const t = e.split("&"), r = {}; for (const e of t) { if (!e) continue; const t = e.indexOf("="); let n, o; t < 0 ? (n = decodeURIComponent(e), o = "") : (n = decodeURIComponent(e.slice(0, t)), o = decodeURIComponent(e.slice(t + 1))); let s = r[n]; "string" == typeof s && (s = r[n] = [s]), Array.isArray(s) ? s.push(o) : r[n] = o } return r } function C(e) { return e && "object" == typeof e && "toJSON" in e && "function" == typeof e.toJSON } function E(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 o = encodeURIComponent(r) + "=", s = t && t[r]; return s ? o + encodeURIComponent(s(n)) : Array.isArray(n) ? n.map((e => C(e) ? o + encodeURIComponent(JSON.stringify(e)) : o + encodeURIComponent(e))).join("&") : C(n) ? o + encodeURIComponent(JSON.stringify(n)) : o + encodeURIComponent(n) })).filter((e => e)).join("&") : "" } function A(e = !1) { let t, r = c.proxyUrl; if ("string" == typeof e) { t = ne(e); const n = I(e); n && (r = n.proxyUrl) } else t = !!e; if (!r) throw a.warn(l), new o.Z("urlutils:proxy-not-set", l); return t && se() && (r = oe(r)), k(r) } function j(e) { const t = I(e); let r, n; if (t) { const e = x(t.proxyUrl); r = e.path, n = e.query ? S(e.query) : null } if (r) { const t = k(e); e = r + "?" + t.path; const o = E({...n, ...t.query}); o && (e = `${e}?${o}`) } return e } const T = {path: "", query: ""}; function x(e) { const t = e.indexOf("?"); return -1 !== t ? (T.path = e.slice(0, t), T.query = e.slice(t + 1)) : (T.path = e, T.query = null), T } function M(e) { return (e = ie(e = function (e) { return e && "/" === e[e.length - 1] ? e : `${e}/` }(e = x(e).path), !0)).toLowerCase() } function $(e) { const t = {proxyUrl: e.proxyUrl, urlPrefix: M(e.urlPrefix)}, r = c.proxyRules, n = t.urlPrefix; let o = r.length; for (let e = 0; e < r.length; e++) { const t = r[e].urlPrefix; if (0 === n.indexOf(t)) { if (n.length === t.length) return -1; o = e; break } 0 === t.indexOf(n) && (o = e + 1) } return r.splice(o, 0, t), o } function I(e) { const t = c.proxyRules, r = M(e); for (let e = 0; e < t.length; e++) if (0 === r.indexOf(t[e].urlPrefix)) return t[e] } function R(e, t) { return e = N(e), t = N(t), ie(e) === ie(t) } function N(e) { const t = (e = Z(e)).indexOf("/sharing"); return t > 0 ? e.substring(0, t) : e.replace(/\/+$/, "") } function U(e) { const t = t => null == t || t instanceof RegExp && t.test(e) || "string" == typeof t && e.startsWith(t), r = c.interceptors; if (r) for (const e of r) if (Array.isArray(e.urls)) { if (e.urls.some(t)) return e } else if (t(e.urls)) return e; return null } function W(e, t, r = !1) { const n = fe(e), o = fe(t); return !(!r && n.scheme !== o.scheme) && null != n.host && null != o.host && n.host.toLowerCase() === o.host.toLowerCase() && n.port === o.port } function L(e) { if ("string" == typeof e) { if (!H(e)) return !0; e = fe(e) } if (W(e, w)) return !0; const t = c.trustedServers || []; for (let r = 0; r < t.length; r++) { const n = J(t[r]); for (let t = 0; t < n.length; t++) if (W(e, n[t])) return !0 } return !1 } function J(e) { return v[e] || (re(e) || te(e) ? v[e] = [new y(q(e))] : v[e] = [new y(`http://${e}`), new y(`https://${e}`)]), v[e] } function q(e, t = _, r) { return te(e) ? r && r.preserveProtocolRelative ? e : "http" === w.scheme && w.authority === D(e).slice(2) ? `http:${e}` : `https:${e}` : re(e) ? e : (0, i.j0)(B("/" === e[0] ? function (e) { const t = e.indexOf("//"), r = e.indexOf("/", t + 2); return -1 === r ? e : e.slice(0, r) }(t) : t, e)) } function F(e, t = _, r) { if (!H(e)) return e; const n = Z(e), o = n.toLowerCase(), s = Z(t).toLowerCase().replace(/\/+$/, ""), i = r ? Z(r).toLowerCase().replace(/\/+$/, "") : null; if (i && 0 !== s.indexOf(i)) return e; const a = (e, t, r) => -1 === (r = e.indexOf(t, r)) ? e.length : r; let c = a(o, "/", o.indexOf("//") + 2), l = -1; for (; o.slice(0, c + 1) === s.slice(0, c) + "/" && (l = c + 1, c !== o.length);) c = a(o, "/", c + 1); if (-1 === l) return e; if (i && l < i.length) return e; e = n.slice(l); const u = s.slice(l - 1).replace(/[^/]+/g, "").length; if (u > 0) for (let t = 0; t < u; t++) e = `../${e}`; else e = `./${e}`; return e } function Z(e) { return function (e) { const t = c.httpsDomains; if (!function (e) { return f.test(e) || "http" === w.scheme && te(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), p.test(n)) { if (!n.endsWith(":80")) return e; n = n.slice(0, -3), e = e.replace(":80", "") } return "http" === w.scheme && n === w.authority && !b.test(e) || (se() && n === w.authority || t && t.some((e => n === e || n.endsWith(`.${e}`))) || se() && !I(e)) && (e = oe(e)), e }(e = function (e) { return e.replace(/^(https?:\/\/)(arcgis\.com)/i, "$1www.$2") }(e = function (e) { if (/^https?:\/\//i.test(e)) { const t = x(e); e = (e = t.path.replace(/\/{2,}/g, "/")).replace("/", "//"), t.query && (e += `?${t.query}`) } return e }(e = q(e = e.trim())))) } function B(...e) { const t = e.filter(i.pC); if (!t || !t.length) return; const r = []; if (H(t[0])) { const e = t[0], n = e.indexOf("//"); -1 !== n && (r.push(e.slice(0, n + 1)), function (e) { return h.test(e) }(t[0]) && (r[0] += "/"), t[0] = e.slice(n + 2)) } else "/" === t[0][0] && 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 D(e, t = !1) { if (z(e) || K(e)) return null; let r = e.indexOf("://"); if (-1 === r && te(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 = ie(e, !0)), e } function H(e) { return te(e) || re(e) } function z(e) { return null != e && "blob:" === e.slice(0, 5) } function K(e) { return "data:" === e.slice(0, 5) } function Q(e) { const t = Y(e); if (!t || !t.isBase64) return null; const r = atob(t.data), n = new Uint8Array(r.length); for (let e = 0; e < r.length; e++) n[e] = r.charCodeAt(e); return n.buffer } function V(e) { return btoa(String.fromCharCode.apply(null, e)).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "") } const G = /^data:(.*?)(;base64)?,(.*)$/; function Y(e) { const t = e.match(G); if (!t) return null; const [, r, n, o] = t; return {mediaType: r, isBase64: !!n, data: o} } function X(e) { return e.isBase64 ? `data:${e.mediaType};base64,${e.data}` : `data:${e.mediaType},${e.data}` } function ee(e, t) { (function (e, t) { if (!e) return !1; const r = document.createElement("a"); if (!("download" in r)) return !1; const n = URL.createObjectURL(e); return r.download = t, r.href = n, r.style.display = "none", document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n), !0 })(e, t) || function (e, t) { !!window.navigator.msSaveOrOpenBlob && window.navigator.msSaveOrOpenBlob(e, t) }(e, t) } function te(e) { return null != e && void 0 !== e && "/" === e[0] && "/" === e[1] } function re(e) { return u.test(e) } function ne(e) { return d.test(e) || "https" === w.scheme && te(e) } function oe(e) { return te(e) ? `https:${e}` : e.replace(f, "https:") } function se() { return "https" === w.scheme } function ie(e, t = !1) { return te(e) ? e.slice(2) : (e = e.replace(u, ""), t && e.length > 1 && "/" === e[0] && "/" === e[1] && (e = e.slice(2)), e) } function ae(e) { let t = 0; if (H(e)) { const r = e.indexOf("//"); -1 !== r && (t = r + 2) } const r = e.lastIndexOf("/"); return r < t ? e : e.slice(0, r + 1) } function ce(e, t) { if (!e) return ""; const r = k(e).path.replace(/\/+$/, ""), n = r.substring(r.lastIndexOf("/") + 1); if (null == t || !t.length) return n; const o = new RegExp(`.(${t.join("|")})$`, "ig"); return n.replace(o, "") } function le(e) { return e.replace(/\/+$/, "") } function ue(e, t, r) { if (!(t && r && e && H(e))) return e; const n = e.indexOf("//"), o = e.indexOf("/", n + 2), s = e.indexOf(":", n + 2), i = Math.min(o < 0 ? e.length : o, s < 0 ? e.length : s); return e.slice(n + 2, i).toLowerCase() !== t.toLowerCase() ? e : `${e.slice(0, n + 2)}${r}${e.slice(i)}` } function fe(e) { return "string" == typeof e ? new y(q(e)) : (e.scheme || (e.scheme = w.scheme), e) } function de(e, t) { const r = k(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 he(e, t, r) { const n = k(e), o = n.query || {}; return o[t] = String(r), `${n.path}?${E(o)}` } function pe(e, t) { const r = k(e), n = r.query || {}; for (const e in t) n[e] = t[e]; const o = E(n); return o ? `${r.path}?${o}` : r.path } function be(e) { if ((0, i.Wi)(e)) return null; const t = e.match(ge); return t ? t[1] : null } const ge = /.*?\.([^\/]*)$/ }, 25045: (e, t, r) => { "use strict"; r.r(t), r.d(t, {default: () => y}); var n = r(40330), o = r(20102), s = r(91460), i = r(70586), a = r(95330), c = r(94362), l = r(17202); const u = { statsWorker: () => Promise.all([r.e(1400), r.e(1562), r.e(5406), r.e(6841)]).then(r.bind(r, 36841)), geometryEngineWorker: () => Promise.all([r.e(5837), r.e(8227)]).then(r.bind(r, 48227)), CSVSourceWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(7793)]).then(r.bind(r, 27793)), EdgeProcessingWorker: () => Promise.all([r.e(6481), r.e(8936)]).then(r.bind(r, 18936)), ElevationSamplerWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(5257), r.e(6481), r.e(6459), r.e(7996)]).then(r.bind(r, 61787)), FeatureServiceSnappingSourceWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(9662), r.e(6353)]).then(r.bind(r, 98363)), GeoJSONSourceWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(7845)]).then(r.bind(r, 97845)), LercWorker: () => r.e(3027).then(r.bind(r, 23027)), MemorySourceWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(639)]).then(r.bind(r, 30639)), PBFDecoderWorker: () => Promise.all([r.e(1400), r.e(1562), r.e(5886), r.e(1916)]).then(r.bind(r, 61916)), Pipeline: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(9662), r.e(4325), r.e(1684)]).then(r.bind(r, 70299)), PointCloudWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(5257), r.e(6347)]).then(r.bind(r, 16583)), RasterWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(5257), r.e(176), r.e(2398), r.e(7282)]).then(r.bind(r, 61576)), SceneLayerWorker: () => r.e(1412).then(r.bind(r, 31412)), WFSSourceWorker: () => Promise.all([r.e(4547), r.e(1400), r.e(1562), r.e(1534), r.e(5257), r.e(9870), r.e(5886), r.e(5406), r.e(7054), r.e(3230)]).then(r.bind(r, 43230)), WorkerTileHandler: () => Promise.all([r.e(4325), r.e(1785), r.e(6810), r.e(3388)]).then(r.bind(r, 56456)) }, {CLOSE: f, ABORT: d, INVOKE: h, RESPONSE: p, OPEN_PORT: b, ON: g} = c.Cs; class m { constructor(e) { this._timer = null, this._cancelledJobIds = new Set, this._invokeMessages = [], this._invoke = e, this._timer = null, this._process = this._process.bind(this) } push(e) { e.type === c.Cs.ABORT ? 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 y { constructor(e, t) { this._port = e, this._outJobs = new Map, this._inJobs = new Map, this._invokeQueue = new m((e => this._onInvokeMessage(e))), this._client = t.client, this._onMessage = this._onMessage.bind(this), this._channel = t.channel, this._schedule = t.schedule, this._port.addEventListener("message", this._onMessage), this._port.start() } static connect(e) { const t = new MessageChannel; let r; r = "function" == typeof e ? new e : "default" in e && "function" == typeof e.default ? new e.default : e; const n = new y(t.port1, {channel: t, client: r}); return "object" == typeof r && "remoteClient" in r && (r.remoteClient = n), y.clients.set(n, r), t.port2 } static loadWorker(e) { const t = u[e]; return t ? t() : Promise.resolve(null) } close() { this._post({type: f}), this._close() } isBusy() { return this._outJobs.size > 0 } invoke(e, t, r) { const n = r && r.signal, s = r && r.transferList; if (!this._port) return Promise.reject(new o.Z("worker:port-closed", `Cannot call invoke('${e}'), port is closed`, { methodName: e, data: t })); const i = (0, c.jt)(); return new Promise(((r, o) => { const c = (0, a.$F)(n, (() => { var e; const t = this._outJobs.get(i); t && (this._outJobs.delete(i), null == (e = t.abortHandle) || e.remove(), this._post({ type: d, jobId: i }), o((0, a.zE)())) })), l = {resolve: r, reject: o, abortHandle: c, debugInfo: e}; this._outJobs.set(i, l), this._post({type: h, jobId: i, methodName: e, abortable: null != n}, t, s) })) } on(e, t) { const r = new MessageChannel; function n(e) { t(e.data) } return this._port.postMessage({ type: c.Cs.ON, eventType: e, port: r.port2 }, [r.port2]), r.port1.addEventListener("message", n), r.port1.start(), { remove() { r.port1.postMessage({type: c.Cs.CLOSE}), r.port1.close(), r.port1.removeEventListener("message", n) } } } openPort() { const e = new MessageChannel; return this._post({type: b, port: e.port2}), e.port1 } _close() { this._channel && (this._channel = null), this._port.removeEventListener("message", this._onMessage), this._port.close(), this._outJobs.forEach((e => { var t; null == (t = e.abortHandle) || t.remove(), e.reject((0, a.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`)) })), this._inJobs.clear(), this._outJobs.clear(), this._invokeQueue.clear(), this._port = this._client = this._schedule = null } _onMessage(e) { (0, i.pC)(this._schedule) ? this._schedule((() => this._processMessage(e))) : this._processMessage(e) } _processMessage(e) { const t = (0, c.QM)(e); if (t) switch (t.type) { case p: this._onResponseMessage(t); break; case h: this._invokeQueue.push(t); break; case d: this._onAbortMessage(t); break; case f: this._onCloseMessage(); break; case b: this._onOpenPortMessage(t); break; case g: this._onOnMessage(t) } } _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 && y.clients.get(this) === e && e.destroy(), y.clients.delete(this), e && e.remoteClient && (e.remoteClient = null) } _onInvokeMessage(e) { const {methodName: t, jobId: r, data: n, abortable: o} = e, s = o ? new AbortController : null, i = this._inJobs; let l, u = this._client, f = u[t]; try { if (!f && t && -1 !== t.indexOf(".")) { const e = t.split("."); for (let t = 0; t < e.length - 1; t++) u = u[e[t]], f = u[e[t + 1]] } if ("function" != typeof f) throw new TypeError(`${t} is not a function`); l = f.call(u, n, {client: this, signal: s ? s.signal : null}) } catch (e) { return void this._post({type: p, jobId: r, error: (0, c.AB)(e)}) } (0, a.y8)(l) ? (i.set(r, {controller: s, promise: l}), l.then((e => { i.has(r) && (i.delete(r), this._post({type: p, jobId: r}, e)) }), (e => { i.has(r) && (i.delete(r), (0, a.D_)(e) || this._post({ type: p, jobId: r, error: (0, c.AB)(e || {message: `Error encountered at method ${t}`}) })) }))) : this._post({type: p, jobId: r}, l) } _onOpenPortMessage(e) { new y(e.port, {client: this._client}) } _onOnMessage(e) { const {port: t} = e, r = this._client.on(e.eventType, (e => { t.postMessage(e) })), n = (0, s.on)(e.port, "message", (e => { (0, c.QM)(e).type === c.Cs.CLOSE && (n.remove(), r.remove(), t.close()) })) } _onResponseMessage(e) { var t; const {jobId: r, error: n, data: s} = e, i = this._outJobs; if (!i.has(r)) return; const a = i.get(r); i.delete(r), null == (t = a.abortHandle) || t.remove(), n ? a.reject(o.Z.fromJSON(JSON.parse(n))) : a.resolve(s) } _post(e, t, r) { return (0, c.oi)(this._port, e, t, r) } } y.kernelInfo = {revision: l.$, version: n.i8, buildDate: l.r}, y.clients = new Map }, 94362: (e, t, r) => { "use strict"; r.d(t, {Cs: () => n, jt: () => a, oi: () => l, QM: () => u, AB: () => c}); var n, o, s = r(80442); (o = n || (n = {}))[o.HANDSHAKE = 0] = "HANDSHAKE", o[o.OPEN = 1] = "OPEN", o[o.OPENED = 2] = "OPENED", o[o.RESPONSE = 3] = "RESPONSE", o[o.INVOKE = 4] = "INVOKE", o[o.ABORT = 5] = "ABORT", o[o.CLOSE = 6] = "CLOSE", o[o.OPEN_PORT = 7] = "OPEN_PORT", o[o.ON = 8] = "ON"; let i = 0; function a() { return i++ } function c(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, o) { if (t.type === n.OPEN_PORT) return void e.postMessage(t, [t.port]); if (t.type !== n.INVOKE && t.type !== n.RESPONSE) return void e.postMessage(t); let s; !function (e) { return e && "object" == typeof e && ("result" in e || "transferList" in e) }(r) ? (s = f(o), t.data = r) : (s = f(r.transferList), t.data = r.result), s ? e.postMessage(t, s) : e.postMessage(t) } function u(e) { if (!e) return null; const t = e.data; return t ? "string" == typeof t ? JSON.parse(t) : t : null } function f(e) { if (!e || !e.length) return null; if ((0, s.Z)("esri-workers-arraybuffer-transfer")) return e; const t = e.filter((e => !function (e) { return e instanceof ArrayBuffer || e && e.constructor && "ArrayBuffer" === e.constructor.name }(e))); return t.length ? t : null } }, 40330: (e, t, r) => { "use strict"; r.d(t, {Dp: () => l, id: () => a, qh: () => c, i8: () => s, Nv: () => i}); var n = r(80442), o = r(17452); const s = "4.23", i = { async request(e, t) { var n; const {default: s} = await r.e(3172).then(r.bind(r, 3172)), i = e.options, a = i.responseType; i.signal = null == t ? void 0 : t.signal, i.responseType = "native" === a || "native-request-init" === a ? "native-request-init" : ["blob", "json", "text"].includes(a) && null != (n = (0, o.oh)(e.url)) && n.after ? a : "array-buffer"; const c = await s(e.url, i), l = {data: c.data, ssl: c.ssl}; switch (c.requestOptions.responseType) { case"native-request-init": return delete l.data.signal, l; case"blob": l.data = await l.data.arrayBuffer(); break; case"json": l.data = (new TextEncoder).encode(JSON.stringify(l.data)).buffer; break; case"text": l.data = (new TextEncoder).encode(l.data).buffer } return {result: l, transferList: [l.data]} } }; let a; function c(e) { a = e } function l(e) { const t = a && a.findCredential(e); return t && t.token ? (0, o.ZN)(e, "token", t.token) : e } (0, n.Z)("host-webworker") || ((0, n.Z)("edge") || (0, n.Z)("trident")) && console.warn("Deprecated browser - see http://esriurl.com/oldbrowser") }, 17202: (e, t, r) => { "use strict"; r.d(t, {r: () => n, $: () => o}); const n = "20220404", o = "ecb69ff5e08a61c162de0ddc0b1f397ed5d4071b" } }, t = {}; function r(n) { var o = t[n]; if (void 0 !== o) return o.exports; var s = t[n] = {exports: {}}; return e[n](s, s.exports, r), s.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/" + { 24: "5d5fa2b1fc48a17eb9ab", 86: "666f3fc44eaee390d2b1", 176: "93ace2e16c102db1bc29", 214: "53a150a1eec3894e2a9e", 223: "5bdd4df2b0ea60dba368", 247: "a0450fbf01de854f5c97", 280: "73a3ad2146bfea9f5dce", 565: "0018053ac16a09feba70", 576: "812a5abfadd747a09b6f", 609: "792fc86380a84b6ac98e", 635: "86ec93705546377103b0", 639: "db2604563294bf49bbf9", 678: "ea313474f460ce31b6d5", 712: "93bd67b4258e84c1e6f0", 819: "5d3e774ce7b006c8cba8", 999: "da7cce130c459c84a794", 1188: "fcd87df3909e94410950", 1197: "e9d59300727f5e52e148", 1400: "de337486515d9aff478b", 1412: "8d95f3a3f776fef3f9cb", 1421: "7fa2d758a24bbaaab0bf", 1433: "52489e2f7748dc610263", 1534: "6ef8de3aa9a8d9c22161", 1562: "6141d433dda78b29e6e1", 1684: "74b3b2d6b8d33d778469", 1773: "4d2ef57ff3a5cfc1313f", 1785: "d88cb7568e2f8ac9905b", 1916: "3011f1c1ee5631df98b2", 2133: "3403cb53e4e60923c5fc", 2134: "070a78b488f92d022495", 2279: "cab3f15de3686ca966ec", 2304: "d006b4a239e93eeb9619", 2397: "3d70f945621de60c7b14", 2398: "2a1adc5de77f832b31de", 2399: "467b5faa1c90d9821609", 2515: "68fc1d7c3fd10a7205c4", 3003: "2dcdad8e77bb4bd82680", 3027: "0c711b129d501b1d4439", 3127: "45155ec947e3f4511c08", 3172: "10322d990cda5aedf2f0", 3230: "29eb733e18be5a778f4a", 3388: "dd47b92663f21fc442b8", 3529: "2f6bff1aa485cf22527d", 3668: "85fde4b92b0c212f5ff6", 3852: "62c683f44c297d239ab8", 4166: "8cfefa829131ec234de3", 4325: "c7da2f1bdda4de915210", 4358: "f977977564b2b75332a9", 4369: "2758b8c1fc9a29b71470", 4475: "e07cd9d316923546745c", 4499: "f971884d4e7400d88a21", 4547: "592e91f00549c5b20a2f", 4579: "11a45709b703be84caaf", 4695: "778d55486ce1e96338d4", 4720: "113362697da1b69deaed", 4889: "28a5878cbe5880476855", 4959: "ae7dbdab79bca1e11741", 5163: "3d52f71bf73811246d52", 5235: "8b4c76cebb100e6c06f8", 5257: "49d645e0bce92c156a4b", 5307: "19e74eebecf4aac8cb72", 5313: "15a969377bab11e7fd77", 5318: "4837b6dc4b4878b01018", 5329: "0a4401a148c3cb73d6ff", 5358: "7691aa2227321066149d", 5406: "4fc0a5f51be0ee462f0e", 5410: "3e030fef8292b5e42295", 5517: "591dd9e631437f92fa6b", 5808: "096eb783027492e82937", 5823: "fe1f3c93c92bc80810a4", 5837: "42c67e6579b54844ec06", 5853: "341dfd1b8201725518b9", 5886: "2dd00e2bc45445cac33c", 6088: "c087477e016da3827f3e", 6233: "a66fd506069e3c776e1b", 6237: "c544df83e86a9d36b68c", 6347: "cc2bbd979dde20369b47", 6353: "c52feec2175d8378ec90", 6459: "7dcf52d3db3903c8eb9f", 6481: "e84b935c285888a892c1", 6550: "3894fe150674f64d6f19", 6619: "b6d3d3b4807a2c6be002", 6690: "6b6ad7d34669e2a8e52f", 6710: "d11d1d294ccc4ccdf60f", 6748: "7110152ed817433ceec0", 6774: "4a830f056c4d0ed93928", 6785: "43586fec92d0e9545972", 6810: "411db587521e12c593be", 6841: "b426f7b4c3dc60a366f6", 6903: "e57b71ba70f088a3a052", 6968: "f9579dd231563114fb30", 7039: "60553206e233bf18a0a2", 7054: "7adf62addc056a6309a5", 7055: "8fb2fb11646d3973e8da", 7277: "c23d965a55215168a1a2", 7282: "b160857d5d25e8b56335", 7284: "160052071932e0deda52", 7319: "36df90c086bdb14d903b", 7572: "6f827a32646bab0a8777", 7604: "6d01a79473d6556b5c90", 7682: "2a40d566961cce44426e", 7793: "bfe8ca8b69975bfb2167", 7845: "5b696059d1c392353fc1", 7873: "93eb468381bfcf0e47d7", 7913: "9f458f10dc65b185f66e", 7996: "a6a2131bb9e10463c6fb", 8014: "013eefcf29d02f955676", 8062: "3bbff5ea1ea0e955c592", 8121: "4f90019bf2a1fbf3c754", 8163: "c75745292f7eb5f8d3f1", 8227: "1f394b20410fddb30a96", 8234: "c415af3787d6af66fc9e", 8297: "b59a296f0371b6e26508", 8326: "d34daffae237de764aab", 8422: "7f91f70ef69a7e24f8e2", 8625: "e4019b63a1fe74e2c842", 8734: "f6e7506ee0a7b132a65f", 8739: "98a63d4a405b11ac70b5", 8758: "6d7fa026f58fd0c68a39", 8828: "13b04d5bf348ab5054c2", 8833: "fa42e7b062e44940617e", 8927: "1e0498dc9836658d9aba", 8936: "fffea9587ec14c6d34e8", 9032: "f720ce44e0af6a68b608", 9070: "1d4bc5b86d436fd09603", 9127: "5cd20be7d545e84937a2", 9151: "9bcec5ff5afc2bcd753a", 9153: "9c6be39f1f21ab8b1c2d", 9169: "f7ae0344257e6e08469b", 9254: "f19feacc02a2091b6583", 9291: "214910032945dd2d86b0", 9296: "78ccff2011adbd73f10b", 9490: "8fcabb9332d1d425e64f", 9662: "d50d2bf051ed9f2d2008", 9754: "c512898c1fc9072c2c5e", 9870: "52c972e98d60a0c62a6b", 9884: "356db8b8297282c77291", 9932: "3d6d9906a534ddd8fa37", 9941: "365176c3b81e191ede66", 9989: "807ffca9c71313cf2ea8" }[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 && (e = t.currentScript.src), !e)) { var n = t.getElementsByTagName("script"); n.length && (e = n[n.length - 1].src) } if (!e) throw new Error("Automatic publicPath is not supported in this browser"); e = e.replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/"), r.p = e })(), (() => { var e = {134: 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 [o, s, i] = t; for (var a in s) r.o(s, a) && (r.m[a] = s[a]); for (i && i(r); o.length;) e[o.pop()] = 1; n(t) } })(), r(88277); var n = r(25045); RemoteClient = n })();