@carto/ps-react-maps 4.7.3 → 4.7.5

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.
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { jsx as Y, jsxs as _e } from "react/jsx-runtime";
2
2
  import { c as F } from "react/compiler-runtime";
3
- import { useImperativeHandle as WA, useEffect as K, useState as cA, createContext as KA, useContext as $A, useRef as TA, useMemo as RA, useCallback as vA } from "react";
3
+ import { useImperativeHandle as WA, useEffect as $, useState as cA, createContext as KA, useContext as $A, useRef as TA, useMemo as RA, useCallback as EA } from "react";
4
4
  import { AttributionControl as Je, MapProvider as Xe, Map as At, useMap as et } from "react-map-gl/maplibre";
5
5
  import tt from "@deck.gl/react";
6
6
  import { useMap as Me, Map as rt, APIProvider as nt } from "@vis.gl/react-google-maps";
@@ -12,41 +12,41 @@ import { DataFilterExtension as wt, MaskExtension as yt } from "@deck.gl/extensi
12
12
  import { Pan as oe, InputDirection as bt, EventManager as vt, Tap as se, Pinch as Et } from "mjolnir.js";
13
13
  import { GeoJsonLayer as kt } from "@deck.gl/layers";
14
14
  import { useShallow as IA } from "zustand/shallow";
15
- import { area as le, centroid as Pe, lineIntersect as Ct, booleanIntersects as Bt, feature as _t, bbox as Mt, featureCollection as St, multiPolygon as MA, multiLineString as xt, multiPoint as Dt, polygon as Pt, lineString as Tt, point as Lt } from "@turf/turf";
15
+ import { area as le, centroid as Pe, lineIntersect as Ct, booleanIntersects as Bt, feature as _t, bbox as Mt, featureCollection as St, multiPolygon as SA, multiLineString as xt, multiPoint as Dt, polygon as Pt, lineString as Tt, point as Lt } from "@turf/turf";
16
16
  import { formatNumber as Te, formatCurrency as It } from "@carto/ps-utils";
17
17
  import Le from "convert-units";
18
18
  import Qt from "convert-units/definitions/length";
19
19
  import Ot from "convert-units/definitions/area";
20
20
  import { useQuery as Ie } from "@tanstack/react-query";
21
- import { WidgetSource as Qe, AggregationTypes as yA, aggregationFunctions as DA, histogram as Ft, groupValuesByColumn as Rt, OTHERS_CATEGORY_NAME as Nt, scatterPlot as Ut, applySorting as Gt, groupValuesByDateColumn as zt, applyFilters as jt, getApplicableFilters as Vt, removeFilter as Ht, addFilter as XA, WidgetRasterSource as Yt, WidgetTilesetSource as qt, TileFormat as Wt, WidgetTableSource as Kt, WidgetQuerySource as $t, createViewportSpatialFilter as Zt, vectorTilesetSource as Jt } from "@carto/api-client";
21
+ import { WidgetSource as Qe, AggregationTypes as bA, aggregationFunctions as DA, histogram as Ft, groupValuesByColumn as Rt, OTHERS_CATEGORY_NAME as Nt, scatterPlot as Ut, applySorting as Gt, groupValuesByDateColumn as zt, applyFilters as jt, getApplicableFilters as Vt, removeFilter as Ht, addFilter as XA, WidgetRasterSource as Yt, WidgetTilesetSource as qt, TileFormat as Wt, WidgetTableSource as Kt, WidgetQuerySource as $t, createViewportSpatialFilter as Zt, vectorTilesetSource as Jt } from "@carto/api-client";
22
22
  import { devtools as Xt } from "zustand/middleware";
23
23
  import A0 from "html2canvas";
24
24
  const NA = {
25
25
  roadmap: "roadmap",
26
26
  satellite: "satellite",
27
27
  hybrid: "hybrid"
28
- }, sA = {
28
+ }, lA = {
29
29
  darkMatter: "darkMatter",
30
30
  positron: "positron",
31
31
  voyager: "voyager"
32
32
  }, UA = {
33
- [sA.positron]: "https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",
34
- [sA.voyager]: "https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",
35
- [sA.darkMatter]: "https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json"
33
+ [lA.positron]: "https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",
34
+ [lA.voyager]: "https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",
35
+ [lA.darkMatter]: "https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json"
36
36
  }, uA = {
37
37
  maplibre: "maplibre",
38
38
  googleMaps: "google-maps"
39
- }, _A = {
40
- [sA.positron]: {
41
- url: UA[sA.positron],
39
+ }, MA = {
40
+ [lA.positron]: {
41
+ url: UA[lA.positron],
42
42
  type: uA.maplibre
43
43
  },
44
- [sA.voyager]: {
45
- url: UA[sA.voyager],
44
+ [lA.voyager]: {
45
+ url: UA[lA.voyager],
46
46
  type: uA.maplibre
47
47
  },
48
- [sA.darkMatter]: {
49
- url: UA[sA.darkMatter],
48
+ [lA.darkMatter]: {
49
+ url: UA[lA.darkMatter],
50
50
  type: uA.maplibre,
51
51
  dark: !0
52
52
  },
@@ -76,52 +76,53 @@ function t0(t) {
76
76
  } : null;
77
77
  }
78
78
  function r0(t) {
79
- const A = F(43);
80
- let e, r, n, i, o, s, a, l, c, f, h, p, d;
79
+ const A = F(45);
80
+ let e, r, n, i, o, s, l, a, f, p, c, h, g, w;
81
81
  A[0] !== t ? ({
82
82
  instanceRef: s,
83
83
  overlayRef: h,
84
84
  controller: r,
85
85
  id: o,
86
- layers: a,
87
- mapStyle: l,
88
- parameters: p,
86
+ layers: l,
87
+ mapStyle: a,
88
+ parameters: g,
89
89
  getCursor: n,
90
90
  getTooltip: i,
91
- onLoad: c,
92
- onViewStateChange: f,
91
+ onLoad: p,
92
+ onIdle: f,
93
+ onViewStateChange: c,
93
94
  attributionProps: e,
94
- ...d
95
- } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = a, A[8] = l, A[9] = c, A[10] = f, A[11] = h, A[12] = p, A[13] = d) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], a = A[7], l = A[8], c = A[9], f = A[10], h = A[11], p = A[12], d = A[13]);
96
- let w;
97
- A[14] !== a ? (w = a.filter(i0).map(n0), A[14] = a, A[15] = w) : w = A[15];
98
- const b = w, u = s;
99
- let g;
100
- A[16] !== c ? (g = () => c({
95
+ ...w
96
+ } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = l, A[8] = a, A[9] = f, A[10] = p, A[11] = c, A[12] = h, A[13] = g, A[14] = w) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], l = A[7], a = A[8], f = A[9], p = A[10], c = A[11], h = A[12], g = A[13], w = A[14]);
97
+ let b;
98
+ A[15] !== l ? (b = l.filter(i0).map(n0), A[15] = l, A[16] = b) : b = A[16];
99
+ const u = b, d = s;
100
+ let m;
101
+ A[17] !== p ? (m = () => p({
101
102
  type: "deckgl",
102
103
  value: !0
103
- }), A[16] = c, A[17] = g) : g = A[17];
104
- let m;
105
- A[18] !== p ? (m = {
106
- depthTest: !1,
107
- ...p
108
- }, A[18] = p, A[19] = m) : m = A[19];
104
+ }), A[17] = p, A[18] = m) : m = A[18];
109
105
  let v;
110
- A[20] !== h ? (v = /* @__PURE__ */ Y(o0, { overlayRef: h }), A[20] = h, A[21] = v) : v = A[21];
106
+ A[19] !== g ? (v = {
107
+ depthTest: !1,
108
+ ...g
109
+ }, A[19] = g, A[20] = v) : v = A[20];
111
110
  let y;
112
- A[22] !== c ? (y = () => c({
111
+ A[21] !== h ? (y = /* @__PURE__ */ Y(o0, { overlayRef: h }), A[21] = h, A[22] = y) : y = A[22];
112
+ let k;
113
+ A[23] !== p ? (k = () => p({
113
114
  type: "load",
114
115
  value: !0
115
- }), A[22] = c, A[23] = y) : y = A[23];
116
- let k;
117
- A[24] !== e ? (k = /* @__PURE__ */ Y(Je, { compact: !1, ...e }), A[24] = e, A[25] = k) : k = A[25];
116
+ }), A[23] = p, A[24] = k) : k = A[24];
118
117
  let B;
119
- A[26] !== l || A[27] !== y || A[28] !== k ? (B = /* @__PURE__ */ Y(At, { reuseMaps: !1, mapStyle: l, attributionControl: !1, onLoad: y, children: k }), A[26] = l, A[27] = y, A[28] = k, A[29] = B) : B = A[29];
118
+ A[25] !== e ? (B = /* @__PURE__ */ Y(Je, { compact: !1, ...e }), A[25] = e, A[26] = B) : B = A[26];
120
119
  let M;
121
- return A[30] !== b || A[31] !== r || A[32] !== n || A[33] !== i || A[34] !== o || A[35] !== f || A[36] !== d || A[37] !== u || A[38] !== g || A[39] !== m || A[40] !== v || A[41] !== B ? (M = /* @__PURE__ */ Y(Xe, { children: /* @__PURE__ */ Y("div", { className: "deckgl-map", children: /* @__PURE__ */ _e(tt, { controller: r, id: o, ref: u, layers: b, getCursor: n, getTooltip: i, onLoad: g, onViewStateChange: f, parameters: m, ...d, children: [
122
- v,
123
- B
124
- ] }) }) }), A[30] = b, A[31] = r, A[32] = n, A[33] = i, A[34] = o, A[35] = f, A[36] = d, A[37] = u, A[38] = g, A[39] = m, A[40] = v, A[41] = B, A[42] = M) : M = A[42], M;
120
+ A[27] !== a || A[28] !== f || A[29] !== k || A[30] !== B ? (M = /* @__PURE__ */ Y(At, { reuseMaps: !1, mapStyle: a, attributionControl: !1, onLoad: k, onIdle: f, children: B }), A[27] = a, A[28] = f, A[29] = k, A[30] = B, A[31] = M) : M = A[31];
121
+ let C;
122
+ return A[32] !== u || A[33] !== r || A[34] !== n || A[35] !== i || A[36] !== o || A[37] !== c || A[38] !== w || A[39] !== d || A[40] !== m || A[41] !== v || A[42] !== y || A[43] !== M ? (C = /* @__PURE__ */ Y(Xe, { children: /* @__PURE__ */ Y("div", { className: "deckgl-map", children: /* @__PURE__ */ _e(tt, { controller: r, id: o, ref: d, layers: u, getCursor: n, getTooltip: i, onLoad: m, onViewStateChange: c, parameters: v, ...w, children: [
123
+ y,
124
+ M
125
+ ] }) }) }), A[32] = u, A[33] = r, A[34] = n, A[35] = i, A[36] = o, A[37] = c, A[38] = w, A[39] = d, A[40] = m, A[41] = v, A[42] = y, A[43] = M, A[44] = C) : C = A[44], C;
125
126
  }
126
127
  function n0(t) {
127
128
  const {
@@ -151,151 +152,152 @@ const s0 = (t) => {
151
152
  const r = e, n = Me();
152
153
  let i, o;
153
154
  A[1] === Symbol.for("react.memo_cache_sentinel") ? (i = () => r, o = [r], A[1] = i, A[2] = o) : (i = A[1], o = A[2]), WA(t.instanceRef, i, o);
154
- let s, a;
155
+ let s, l;
155
156
  A[3] !== n ? (s = () => (r.setMap(n), () => {
156
157
  r.finalize();
157
- }), a = [r, n], A[3] = n, A[4] = s, A[5] = a) : (s = A[4], a = A[5]), K(s, a);
158
- let l, c;
159
- return A[6] !== t ? (l = () => {
158
+ }), l = [r, n], A[3] = n, A[4] = s, A[5] = l) : (s = A[4], l = A[5]), $(s, l);
159
+ let a, f;
160
+ return A[6] !== t ? (a = () => {
160
161
  r.setProps(t);
161
- }, c = [r, t], A[6] = t, A[7] = l, A[8] = c) : (l = A[7], c = A[8]), K(l, c), null;
162
+ }, f = [r, t], A[6] = t, A[7] = a, A[8] = f) : (a = A[7], f = A[8]), $(a, f), null;
162
163
  };
163
164
  function l0(t) {
164
- const A = F(77);
165
- let e, r, n, i, o, s, a, l, c, f, h;
165
+ const A = F(79);
166
+ let e, r, n, i, o, s, l, a, f, p, c, h;
166
167
  A[0] !== t ? ({
167
168
  id: n,
168
169
  instanceRef: i,
169
170
  basemap: e,
170
171
  layers: o,
171
172
  gmapsProps: h,
172
- overlayRef: l,
173
- parameters: c,
173
+ overlayRef: f,
174
+ parameters: p,
174
175
  controller: r,
175
- onLoad: s,
176
+ onLoad: l,
177
+ onIdle: s,
176
178
  onViewStateChange: a,
177
- ...f
178
- } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = a, A[8] = l, A[9] = c, A[10] = f, A[11] = h) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], a = A[7], l = A[8], c = A[9], f = A[10], h = A[11]);
179
- let p;
180
- A[12] !== h ? (p = h === void 0 ? {
179
+ ...c
180
+ } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = l, A[8] = a, A[9] = f, A[10] = p, A[11] = c, A[12] = h) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], l = A[7], a = A[8], f = A[9], p = A[10], c = A[11], h = A[12]);
181
+ let g;
182
+ A[13] !== h ? (g = h === void 0 ? {
181
183
  apiKey: ""
182
- } : h, A[12] = h, A[13] = p) : p = A[13];
183
- let d, w, b;
184
- A[14] !== p ? ({
185
- apiKey: b,
186
- APIProviderProps: d,
187
- ...w
188
- } = p, A[14] = p, A[15] = d, A[16] = w, A[17] = b) : (d = A[15], w = A[16], b = A[17]);
189
- let u;
184
+ } : h, A[13] = h, A[14] = g) : g = A[14];
185
+ let w, b, u;
186
+ A[15] !== g ? ({
187
+ apiKey: u,
188
+ APIProviderProps: w,
189
+ ...b
190
+ } = g, A[15] = g, A[16] = w, A[17] = b, A[18] = u) : (w = A[16], b = A[17], u = A[18]);
191
+ let d;
190
192
  A: {
191
193
  if (typeof r == "boolean") {
192
194
  let oA;
193
- A[18] !== r ? (oA = {
195
+ A[19] !== r ? (oA = {
194
196
  dragPan: r,
195
197
  doubleClickZoom: r,
196
198
  scrollZoom: r
197
- }, A[18] = r, A[19] = oA) : oA = A[19], u = oA;
199
+ }, A[19] = r, A[20] = oA) : oA = A[20], d = oA;
198
200
  break A;
199
201
  }
200
- const X = r, eA = X?.dragPan ?? !0, Z = X?.doubleClickZoom ?? !0, $ = X?.scrollZoom ?? !0;
201
- let AA;
202
- A[20] !== eA || A[21] !== Z || A[22] !== $ ? (AA = {
203
- dragPan: eA,
202
+ const X = r, AA = X?.dragPan ?? !0, Z = X?.doubleClickZoom ?? !0, W = X?.scrollZoom ?? !0;
203
+ let eA;
204
+ A[21] !== AA || A[22] !== Z || A[23] !== W ? (eA = {
205
+ dragPan: AA,
204
206
  doubleClickZoom: Z,
205
- scrollZoom: $
206
- }, A[20] = eA, A[21] = Z, A[22] = $, A[23] = AA) : AA = A[23], u = AA;
207
+ scrollZoom: W
208
+ }, A[21] = AA, A[22] = Z, A[23] = W, A[24] = eA) : eA = A[24], d = eA;
207
209
  }
208
- const g = u;
209
- let m;
210
- A[24] !== o ? (m = o.filter(u0).map(a0), A[24] = o, A[25] = m) : m = A[25];
211
- const v = m;
212
- let y;
213
- A[26] !== f.initialViewState?.maxZoom || A[27] !== f.initialViewState?.minZoom ? (y = (X) => {
210
+ const m = d;
211
+ let v;
212
+ A[25] !== o ? (v = o.filter(u0).map(a0), A[25] = o, A[26] = v) : v = A[26];
213
+ const y = v;
214
+ let k;
215
+ A[27] !== c.initialViewState?.maxZoom || A[28] !== c.initialViewState?.minZoom ? (k = (X) => {
214
216
  const {
215
- detail: eA
217
+ detail: AA
216
218
  } = X, {
217
219
  center: Z,
218
- zoom: $,
219
- heading: AA,
220
+ zoom: W,
221
+ heading: eA,
220
222
  tilt: oA
221
- } = eA;
223
+ } = AA;
222
224
  return {
223
- maxZoom: f.initialViewState?.maxZoom,
224
- minZoom: f.initialViewState?.minZoom,
225
+ maxZoom: c.initialViewState?.maxZoom,
226
+ minZoom: c.initialViewState?.minZoom,
225
227
  latitude: Z.lat,
226
228
  longitude: Z.lng,
227
- zoom: $ - 1,
228
- bearing: AA,
229
+ zoom: W - 1,
230
+ bearing: eA,
229
231
  pitch: oA
230
232
  };
231
- }, A[26] = f.initialViewState?.maxZoom, A[27] = f.initialViewState?.minZoom, A[28] = y) : y = A[28], f.initialViewState?.maxZoom, f.initialViewState?.minZoom;
232
- const k = y;
233
- let B;
234
- A[29] !== i || A[30] !== a ? (B = (X) => {
235
- const Z = i?.current?._deck, $ = {
233
+ }, A[27] = c.initialViewState?.maxZoom, A[28] = c.initialViewState?.minZoom, A[29] = k) : k = A[29], c.initialViewState?.maxZoom, c.initialViewState?.minZoom;
234
+ const B = k;
235
+ let M;
236
+ A[30] !== i || A[31] !== a ? (M = (X) => {
237
+ const Z = i?.current?._deck, W = {
236
238
  ...Z?.viewState,
237
239
  ...X
238
- }, AA = {
239
- ...$,
240
- latitude: $.latitude,
241
- longitude: $.longitude,
242
- zoom: $.zoom,
243
- pitch: $.pitch,
244
- bearing: $.bearing,
240
+ }, eA = {
241
+ ...W,
242
+ latitude: W.latitude,
243
+ longitude: W.longitude,
244
+ zoom: W.zoom,
245
+ pitch: W.pitch,
246
+ bearing: W.bearing,
245
247
  width: Z?.width,
246
248
  height: Z?.height
247
249
  };
248
250
  a?.({
249
- viewState: AA,
251
+ viewState: eA,
250
252
  interactionState: {
251
253
  isZooming: !0
252
254
  }
253
255
  });
254
- }, A[29] = i, A[30] = a, A[31] = B) : B = A[31];
255
- const M = B;
256
- let C;
257
- A[32] !== M || A[33] !== k ? (C = (X) => {
258
- const eA = k(X);
259
- M(eA);
260
- }, A[32] = M, A[33] = k, A[34] = C) : C = A[34];
261
- const S = C, P = f.initialViewState?.latitude ?? 0, D = f.initialViewState?.longitude ?? 0;
262
- let x;
263
- A[35] !== P || A[36] !== D ? (x = {
264
- lat: P,
265
- lng: D
266
- }, A[35] = P, A[36] = D, A[37] = x) : x = A[37];
267
- const R = (f.initialViewState?.zoom ?? 0) + 1, N = (f.initialViewState?.maxZoom ?? 23) + 1, E = (f.initialViewState?.minZoom ?? 0) + 1, _ = f.initialViewState?.pitch, T = f.initialViewState?.bearing;
256
+ }, A[30] = i, A[31] = a, A[32] = M) : M = A[32];
257
+ const C = M;
258
+ let S;
259
+ A[33] !== C || A[34] !== B ? (S = (X) => {
260
+ const AA = B(X);
261
+ C(AA);
262
+ }, A[33] = C, A[34] = B, A[35] = S) : S = A[35];
263
+ const x = S, D = c.initialViewState?.latitude ?? 0, P = c.initialViewState?.longitude ?? 0;
264
+ let R;
265
+ A[36] !== D || A[37] !== P ? (R = {
266
+ lat: D,
267
+ lng: P
268
+ }, A[36] = D, A[37] = P, A[38] = R) : R = A[38];
269
+ const N = (c.initialViewState?.zoom ?? 0) + 1, E = (c.initialViewState?.maxZoom ?? 23) + 1, _ = (c.initialViewState?.minZoom ?? 0) + 1, T = c.initialViewState?.pitch, O = c.initialViewState?.bearing;
268
270
  let L;
269
- A[38] !== M || A[39] !== s || A[40] !== f.initialViewState ? (L = () => {
270
- s({
271
+ A[39] !== C || A[40] !== l || A[41] !== c.initialViewState ? (L = () => {
272
+ l({
271
273
  type: "load",
272
274
  value: !0
273
- }), M(f.initialViewState);
274
- }, A[38] = M, A[39] = s, A[40] = f.initialViewState, A[41] = L) : L = A[41];
275
- const O = typeof g.scrollZoom == "boolean" ? g.scrollZoom : !!g.scrollZoom, z = g.dragPan ? "greedy" : "none", G = !g.doubleClickZoom;
276
- let U;
277
- A[42] !== n || A[43] !== l ? (U = /* @__PURE__ */ Y(c0, { id: n, overlayRef: l }), A[42] = n, A[43] = l, A[44] = U) : U = A[44];
275
+ }), C(c.initialViewState);
276
+ }, A[39] = C, A[40] = l, A[41] = c.initialViewState, A[42] = L) : L = A[42];
277
+ const z = typeof m.scrollZoom == "boolean" ? m.scrollZoom : !!m.scrollZoom, U = m.dragPan ? "greedy" : "none", G = !m.doubleClickZoom;
278
278
  let V;
279
- A[45] !== s ? (V = () => {
280
- s({
279
+ A[43] !== n || A[44] !== f ? (V = /* @__PURE__ */ Y(c0, { id: n, overlayRef: f }), A[43] = n, A[44] = f, A[45] = V) : V = A[45];
280
+ let q;
281
+ A[46] !== l ? (q = () => {
282
+ l({
281
283
  type: "deckgl",
282
284
  value: !0
283
285
  });
284
- }, A[45] = s, A[46] = V) : V = A[46];
285
- let q;
286
- A[47] !== c ? (q = {
287
- depthTest: !1,
288
- ...c
289
- }, A[47] = c, A[48] = q) : q = A[48];
286
+ }, A[46] = l, A[47] = q) : q = A[47];
290
287
  let nA;
291
- A[49] !== v || A[50] !== n || A[51] !== i || A[52] !== f || A[53] !== V || A[54] !== q ? (nA = /* @__PURE__ */ Y(s0, { id: n, instanceRef: i, layers: v, onLoad: V, parameters: q, ...f }), A[49] = v, A[50] = n, A[51] = i, A[52] = f, A[53] = V, A[54] = q, A[55] = nA) : nA = A[55];
288
+ A[48] !== p ? (nA = {
289
+ depthTest: !1,
290
+ ...p
291
+ }, A[48] = p, A[49] = nA) : nA = A[49];
292
292
  let J;
293
- A[56] !== w || A[57] !== e || A[58] !== S || A[59] !== n || A[60] !== x || A[61] !== R || A[62] !== N || A[63] !== E || A[64] !== _ || A[65] !== T || A[66] !== L || A[67] !== O || A[68] !== z || A[69] !== G || A[70] !== U || A[71] !== nA ? (J = /* @__PURE__ */ Y("div", { className: "deckgl-map", children: /* @__PURE__ */ _e(rt, { id: n, mapTypeId: e, disableDefaultUI: !0, ...w, center: x, zoom: R, maxZoom: N, minZoom: E, tilt: _, heading: T, onTilesLoaded: L, onBoundsChanged: S, onZoomChanged: S, scrollwheel: O, gestureHandling: z, disableDoubleClickZoom: G, children: [
294
- U,
295
- nA
296
- ] }) }), A[56] = w, A[57] = e, A[58] = S, A[59] = n, A[60] = x, A[61] = R, A[62] = N, A[63] = E, A[64] = _, A[65] = T, A[66] = L, A[67] = O, A[68] = z, A[69] = G, A[70] = U, A[71] = nA, A[72] = J) : J = A[72];
297
- let aA;
298
- return A[73] !== d || A[74] !== b || A[75] !== J ? (aA = /* @__PURE__ */ Y(nt, { apiKey: b, ...d, children: J }), A[73] = d, A[74] = b, A[75] = J, A[76] = aA) : aA = A[76], aA;
293
+ A[50] !== y || A[51] !== n || A[52] !== i || A[53] !== c || A[54] !== q || A[55] !== nA ? (J = /* @__PURE__ */ Y(s0, { id: n, instanceRef: i, layers: y, onLoad: q, parameters: nA, ...c }), A[50] = y, A[51] = n, A[52] = i, A[53] = c, A[54] = q, A[55] = nA, A[56] = J) : J = A[56];
294
+ let iA;
295
+ A[57] !== b || A[58] !== e || A[59] !== x || A[60] !== n || A[61] !== s || A[62] !== R || A[63] !== N || A[64] !== E || A[65] !== _ || A[66] !== T || A[67] !== O || A[68] !== L || A[69] !== z || A[70] !== U || A[71] !== G || A[72] !== V || A[73] !== J ? (iA = /* @__PURE__ */ Y("div", { className: "deckgl-map", children: /* @__PURE__ */ _e(rt, { id: n, mapTypeId: e, disableDefaultUI: !0, ...b, center: R, zoom: N, maxZoom: E, minZoom: _, tilt: T, heading: O, onIdle: s, onTilesLoaded: L, onBoundsChanged: x, onZoomChanged: x, scrollwheel: z, gestureHandling: U, disableDoubleClickZoom: G, children: [
296
+ V,
297
+ J
298
+ ] }) }), A[57] = b, A[58] = e, A[59] = x, A[60] = n, A[61] = s, A[62] = R, A[63] = N, A[64] = E, A[65] = _, A[66] = T, A[67] = O, A[68] = L, A[69] = z, A[70] = U, A[71] = G, A[72] = V, A[73] = J, A[74] = iA) : iA = A[74];
299
+ let fA;
300
+ return A[75] !== w || A[76] !== u || A[77] !== iA ? (fA = /* @__PURE__ */ Y(nt, { apiKey: u, ...w, children: iA }), A[75] = w, A[76] = u, A[77] = iA, A[78] = fA) : fA = A[78], fA;
299
301
  }
300
302
  function a0(t) {
301
303
  const {
@@ -317,57 +319,57 @@ function c0(t) {
317
319
  }
318
320
  function f0(t) {
319
321
  const A = F(46);
320
- let e, r, n, i, o, s, a, l, c, f, h, p;
322
+ let e, r, n, i, o, s, l, a, f, p, c, h;
321
323
  A[0] !== t ? ({
322
324
  instanceRef: r,
323
325
  overlayRef: i,
324
326
  basemap: s,
325
- controller: a,
326
- id: l,
327
- layers: c,
327
+ controller: l,
328
+ id: a,
329
+ layers: f,
328
330
  gmapsProps: e,
329
- getCursor: f,
330
- getTooltip: h,
331
+ getCursor: p,
332
+ getTooltip: c,
331
333
  onLoad: n,
332
- onViewStateChange: p,
334
+ onViewStateChange: h,
333
335
  ...o
334
- } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = a, A[8] = l, A[9] = c, A[10] = f, A[11] = h, A[12] = p) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], a = A[7], l = A[8], c = A[9], f = A[10], h = A[11], p = A[12]);
335
- const d = s === void 0 ? sA.positron : s, w = a === void 0 ? !0 : a, b = l === void 0 ? "deck-gl-map" : l;
336
+ } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i, A[5] = o, A[6] = s, A[7] = l, A[8] = a, A[9] = f, A[10] = p, A[11] = c, A[12] = h) : (e = A[1], r = A[2], n = A[3], i = A[4], o = A[5], s = A[6], l = A[7], a = A[8], f = A[9], p = A[10], c = A[11], h = A[12]);
337
+ const g = s === void 0 ? lA.positron : s, w = l === void 0 ? !0 : l, b = a === void 0 ? "deck-gl-map" : a;
336
338
  let u;
337
- A[13] !== c ? (u = c === void 0 ? [] : c, A[13] = c, A[14] = u) : u = A[14];
338
- const g = u, m = f === void 0 ? e0 : f, v = h === void 0 ? t0 : h, y = p === void 0 ? g0 : p;
339
+ A[13] !== f ? (u = f === void 0 ? [] : f, A[13] = f, A[14] = u) : u = A[14];
340
+ const d = u, m = p === void 0 ? e0 : p, v = c === void 0 ? t0 : c, y = h === void 0 ? g0 : h;
339
341
  let k;
340
342
  A[15] === Symbol.for("react.memo_cache_sentinel") ? (k = [!1, !1], A[15] = k) : k = A[15];
341
343
  const [B, M] = cA(k), {
342
344
  url: C,
343
345
  type: S
344
- } = _A[d], P = S === uA.googleMaps;
346
+ } = MA[g], x = S === uA.googleMaps;
345
347
  let D;
346
- A[16] === Symbol.for("react.memo_cache_sentinel") ? (D = (L) => {
347
- const O = L.type === "deckgl" ? 0 : 1;
348
- M((z) => z.map((G, U) => U === O ? L.value : G));
348
+ A[16] === Symbol.for("react.memo_cache_sentinel") ? (D = (O) => {
349
+ const L = O.type === "deckgl" ? 0 : 1;
350
+ M((z) => z.map((U, G) => G === L ? O.value : U));
349
351
  }, A[16] = D) : D = A[16];
350
- const x = D;
352
+ const P = D;
351
353
  let R, N;
352
354
  A[17] === Symbol.for("react.memo_cache_sentinel") ? (R = () => () => {
353
- x({
355
+ P({
354
356
  type: "load",
355
357
  value: !1
356
- }), x({
358
+ }), P({
357
359
  type: "deckgl",
358
360
  value: !1
359
361
  });
360
- }, N = [x], A[17] = R, A[18] = N) : (R = A[17], N = A[18]), K(R, N);
362
+ }, N = [P], A[17] = R, A[18] = N) : (R = A[17], N = A[18]), $(R, N);
361
363
  let E, _;
362
364
  if (A[19] !== B || A[20] !== n ? (E = () => {
363
- const L = B.every(h0);
364
- n?.(L);
365
- }, _ = [B, n], A[19] = B, A[20] = n, A[21] = E, A[22] = _) : (E = A[21], _ = A[22]), K(E, _), P) {
366
- let L;
367
- return A[23] !== d || A[24] !== w || A[25] !== m || A[26] !== v || A[27] !== e || A[28] !== b || A[29] !== r || A[30] !== g || A[31] !== y || A[32] !== i || A[33] !== o ? (L = /* @__PURE__ */ Y(l0, { instanceRef: r, overlayRef: i, controller: w, id: b, basemap: d, layers: g, gmapsProps: e, getCursor: m, getTooltip: v, onLoad: x, onViewStateChange: y, ...o }), A[23] = d, A[24] = w, A[25] = m, A[26] = v, A[27] = e, A[28] = b, A[29] = r, A[30] = g, A[31] = y, A[32] = i, A[33] = o, A[34] = L) : L = A[34], L;
365
+ const O = B.every(h0);
366
+ n?.(O);
367
+ }, _ = [B, n], A[19] = B, A[20] = n, A[21] = E, A[22] = _) : (E = A[21], _ = A[22]), $(E, _), x) {
368
+ let O;
369
+ return A[23] !== g || A[24] !== w || A[25] !== m || A[26] !== v || A[27] !== e || A[28] !== b || A[29] !== r || A[30] !== d || A[31] !== y || A[32] !== i || A[33] !== o ? (O = /* @__PURE__ */ Y(l0, { instanceRef: r, overlayRef: i, controller: w, id: b, basemap: g, layers: d, gmapsProps: e, getCursor: m, getTooltip: v, onLoad: P, onViewStateChange: y, ...o }), A[23] = g, A[24] = w, A[25] = m, A[26] = v, A[27] = e, A[28] = b, A[29] = r, A[30] = d, A[31] = y, A[32] = i, A[33] = o, A[34] = O) : O = A[34], O;
368
370
  }
369
371
  let T;
370
- return A[35] !== w || A[36] !== m || A[37] !== v || A[38] !== b || A[39] !== r || A[40] !== g || A[41] !== C || A[42] !== y || A[43] !== i || A[44] !== o ? (T = /* @__PURE__ */ Y(r0, { instanceRef: r, overlayRef: i, controller: w, id: b, layers: g, mapStyle: C, getCursor: m, getTooltip: v, onLoad: x, onViewStateChange: y, ...o }), A[35] = w, A[36] = m, A[37] = v, A[38] = b, A[39] = r, A[40] = g, A[41] = C, A[42] = y, A[43] = i, A[44] = o, A[45] = T) : T = A[45], T;
372
+ return A[35] !== w || A[36] !== m || A[37] !== v || A[38] !== b || A[39] !== r || A[40] !== d || A[41] !== C || A[42] !== y || A[43] !== i || A[44] !== o ? (T = /* @__PURE__ */ Y(r0, { instanceRef: r, overlayRef: i, controller: w, id: b, layers: d, mapStyle: C, getCursor: m, getTooltip: v, onLoad: P, onViewStateChange: y, ...o }), A[35] = w, A[36] = m, A[37] = v, A[38] = b, A[39] = r, A[40] = d, A[41] = C, A[42] = y, A[43] = i, A[44] = o, A[45] = T) : T = A[45], T;
371
373
  }
372
374
  function h0(t) {
373
375
  return t;
@@ -388,15 +390,15 @@ var GA, ae;
388
390
  function m0() {
389
391
  if (ae) return GA;
390
392
  ae = 1;
391
- var t = function(g) {
392
- return A(g) && !e(g);
393
+ var t = function(d) {
394
+ return A(d) && !e(d);
393
395
  };
394
396
  function A(u) {
395
397
  return !!u && typeof u == "object";
396
398
  }
397
399
  function e(u) {
398
- var g = Object.prototype.toString.call(u);
399
- return g === "[object RegExp]" || g === "[object Date]" || i(u);
400
+ var d = Object.prototype.toString.call(u);
401
+ return d === "[object RegExp]" || d === "[object Date]" || i(u);
400
402
  }
401
403
  var r = typeof Symbol == "function" && Symbol.for, n = r ? Symbol.for("react.element") : 60103;
402
404
  function i(u) {
@@ -405,55 +407,55 @@ function m0() {
405
407
  function o(u) {
406
408
  return Array.isArray(u) ? [] : {};
407
409
  }
408
- function s(u, g) {
409
- return g.clone !== !1 && g.isMergeableObject(u) ? w(o(u), u, g) : u;
410
+ function s(u, d) {
411
+ return d.clone !== !1 && d.isMergeableObject(u) ? w(o(u), u, d) : u;
410
412
  }
411
- function a(u, g, m) {
412
- return u.concat(g).map(function(v) {
413
+ function l(u, d, m) {
414
+ return u.concat(d).map(function(v) {
413
415
  return s(v, m);
414
416
  });
415
417
  }
416
- function l(u, g) {
417
- if (!g.customMerge)
418
+ function a(u, d) {
419
+ if (!d.customMerge)
418
420
  return w;
419
- var m = g.customMerge(u);
421
+ var m = d.customMerge(u);
420
422
  return typeof m == "function" ? m : w;
421
423
  }
422
- function c(u) {
423
- return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(g) {
424
- return Object.propertyIsEnumerable.call(u, g);
424
+ function f(u) {
425
+ return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(d) {
426
+ return Object.propertyIsEnumerable.call(u, d);
425
427
  }) : [];
426
428
  }
427
- function f(u) {
428
- return Object.keys(u).concat(c(u));
429
+ function p(u) {
430
+ return Object.keys(u).concat(f(u));
429
431
  }
430
- function h(u, g) {
432
+ function c(u, d) {
431
433
  try {
432
- return g in u;
434
+ return d in u;
433
435
  } catch {
434
436
  return !1;
435
437
  }
436
438
  }
437
- function p(u, g) {
438
- return h(u, g) && !(Object.hasOwnProperty.call(u, g) && Object.propertyIsEnumerable.call(u, g));
439
+ function h(u, d) {
440
+ return c(u, d) && !(Object.hasOwnProperty.call(u, d) && Object.propertyIsEnumerable.call(u, d));
439
441
  }
440
- function d(u, g, m) {
442
+ function g(u, d, m) {
441
443
  var v = {};
442
- return m.isMergeableObject(u) && f(u).forEach(function(y) {
444
+ return m.isMergeableObject(u) && p(u).forEach(function(y) {
443
445
  v[y] = s(u[y], m);
444
- }), f(g).forEach(function(y) {
445
- p(u, y) || (h(u, y) && m.isMergeableObject(g[y]) ? v[y] = l(y, m)(u[y], g[y], m) : v[y] = s(g[y], m));
446
+ }), p(d).forEach(function(y) {
447
+ h(u, y) || (c(u, y) && m.isMergeableObject(d[y]) ? v[y] = a(y, m)(u[y], d[y], m) : v[y] = s(d[y], m));
446
448
  }), v;
447
449
  }
448
- function w(u, g, m) {
449
- m = m || {}, m.arrayMerge = m.arrayMerge || a, m.isMergeableObject = m.isMergeableObject || t, m.cloneUnlessOtherwiseSpecified = s;
450
- var v = Array.isArray(g), y = Array.isArray(u), k = v === y;
451
- return k ? v ? m.arrayMerge(u, g, m) : d(u, g, m) : s(g, m);
450
+ function w(u, d, m) {
451
+ m = m || {}, m.arrayMerge = m.arrayMerge || l, m.isMergeableObject = m.isMergeableObject || t, m.cloneUnlessOtherwiseSpecified = s;
452
+ var v = Array.isArray(d), y = Array.isArray(u), k = v === y;
453
+ return k ? v ? m.arrayMerge(u, d, m) : g(u, d, m) : s(d, m);
452
454
  }
453
- w.all = function(g, m) {
454
- if (!Array.isArray(g))
455
+ w.all = function(d, m) {
456
+ if (!Array.isArray(d))
455
457
  throw new Error("first argument should be an array");
456
- return g.reduce(function(v, y) {
458
+ return d.reduce(function(v, y) {
457
459
  return w(v, y, m);
458
460
  }, {});
459
461
  };
@@ -461,7 +463,7 @@ function m0() {
461
463
  return GA = b, GA;
462
464
  }
463
465
  var w0 = m0();
464
- const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
466
+ const pA = /* @__PURE__ */ d0(w0), y0 = (t) => {
465
467
  const A = t.reduce((e, r) => {
466
468
  const {
467
469
  id: n,
@@ -485,15 +487,15 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
485
487
  setBasemap: (n, i) => e((o) => {
486
488
  const {
487
489
  type: s
488
- } = _A[o.maps[n].basemap], {
489
- type: a
490
- } = _A[i], l = s === a && !!o.maps[n]?.isLoaded;
490
+ } = MA[o.maps[n].basemap], {
491
+ type: l
492
+ } = MA[i], a = s === l && !!o.maps[n]?.isLoaded;
491
493
  return {
492
494
  maps: {
493
495
  ...o.maps,
494
496
  [n]: {
495
497
  ...o.maps[n],
496
- isLoaded: l,
498
+ isLoaded: a,
497
499
  basemap: i
498
500
  }
499
501
  }
@@ -521,7 +523,7 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
521
523
  if (!o?.viewState) return;
522
524
  const {
523
525
  width: s = 0,
524
- height: a = 0
526
+ height: l = 0
525
527
  } = o;
526
528
  return {
527
529
  // @ts-expect-error - viewState is not in the types
@@ -529,7 +531,7 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
529
531
  // @ts-expect-error - viewState is not in the types
530
532
  width: o.viewState.width ?? s,
531
533
  // @ts-expect-error - viewState is not in the types
532
- height: o.viewState.height ?? a
534
+ height: o.viewState.height ?? l
533
535
  };
534
536
  },
535
537
  getViewports: (n, i) => r().getDeckInstance(n)?.getViewports(i),
@@ -537,23 +539,23 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
537
539
  getBounds: (n, i, o) => {
538
540
  const s = r();
539
541
  if (!s.maps?.[n]?.isLoaded) return;
540
- const a = s.getViewState(n);
541
- if (!a) return;
542
- const c = new xe(a).fitBounds(i, o?.boundsOptions);
542
+ const l = s.getViewState(n);
543
+ if (!l) return;
544
+ const f = new xe(l).fitBounds(i, o?.boundsOptions);
543
545
  return {
544
- latitude: c.latitude,
545
- longitude: c.longitude,
546
- zoom: c.zoom,
546
+ latitude: f.latitude,
547
+ longitude: f.longitude,
548
+ zoom: f.zoom,
547
549
  ...o?.viewStateOptions
548
550
  };
549
551
  },
550
552
  addLayers: (n, i) => e((o) => {
551
553
  const s = {
552
554
  ...o.maps
553
- }, a = s[n]?.layers ?? [], l = /* @__PURE__ */ new Set([...a, ...i]);
555
+ }, l = s[n]?.layers ?? [], a = /* @__PURE__ */ new Set([...l, ...i]);
554
556
  return s[n] = {
555
557
  ...s[n],
556
- layers: [...l]
558
+ layers: [...a]
557
559
  }, {
558
560
  maps: s
559
561
  };
@@ -561,23 +563,23 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
561
563
  removeLayers: (n, i) => e((o) => {
562
564
  const s = {
563
565
  ...o.maps
564
- }, a = s[n]?.layers ?? [];
566
+ }, l = s[n]?.layers ?? [];
565
567
  return s[n] = {
566
568
  ...s[n],
567
- layers: a.filter((l) => !i.includes(l))
569
+ layers: l.filter((a) => !i.includes(a))
568
570
  }, {
569
571
  maps: s
570
572
  };
571
573
  }),
572
574
  getController: (n) => r().maps[n]?.controller ?? {},
573
575
  setController: (n, i) => e((o) => {
574
- const s = o.maps[n]?.controller ?? {}, l = !i || typeof i == "boolean" ? i : gA(typeof s == "boolean" ? {} : s, i);
576
+ const s = o.maps[n]?.controller ?? {}, a = !i || typeof i == "boolean" ? i : pA(typeof s == "boolean" ? {} : s, i);
575
577
  return {
576
578
  maps: {
577
579
  ...o.maps,
578
580
  [n]: {
579
581
  ...o.maps[n],
580
- controller: l
582
+ controller: a
581
583
  }
582
584
  }
583
585
  };
@@ -619,11 +621,11 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
619
621
  ...i
620
622
  };
621
623
  if (!s) return;
622
- const a = new xe(s);
623
- e((l) => ({
624
+ const l = new xe(s);
625
+ e((a) => ({
624
626
  viewports: {
625
- ...l.viewports,
626
- [n]: a
627
+ ...a.viewports,
628
+ [n]: l
627
629
  }
628
630
  }));
629
631
  },
@@ -723,24 +725,24 @@ const gA = /* @__PURE__ */ d0(w0), y0 = (t) => {
723
725
  }
724
726
  }));
725
727
  }, C0 = ((t, A) => ({
726
- setLayerHover: (e, r, n) => {
727
- const i = A(), o = i.getDeckInstance(e), s = i.getViewport(e), a = o?.widgetManager;
728
- if (!a || !s) return;
729
- const [l, c] = s.project(n);
730
- if (l == null || c == null || isNaN(l) || isNaN(c)) return;
731
- const f = o.pickObject({
732
- x: l,
733
- y: c,
728
+ setLayerHover: (e, r, n, i = (o) => o[0]) => {
729
+ const o = A(), s = o.getDeckInstance(e), l = o.getViewport(e), a = s?.widgetManager;
730
+ if (!a || !l) return;
731
+ const [f, p] = l.project(n);
732
+ if (f == null || p == null || isNaN(f) || isNaN(p)) return;
733
+ const c = s.pickMultipleObjects({
734
+ x: f,
735
+ y: p,
734
736
  radius: 5,
735
737
  layerIds: [r]
736
- });
737
- if (!f) return;
738
- const h = {
739
- ...f,
740
- x: l,
741
- y: c
742
- }, p = new MouseEvent("mouseenter");
743
- f.layer?.onHover?.(h, p), a.onHover?.(h, p);
738
+ }), h = i(c);
739
+ if (!h) return;
740
+ const g = {
741
+ ...h,
742
+ x: f,
743
+ y: p
744
+ }, w = new MouseEvent("mouseenter");
745
+ h.layer?.onHover?.(g, w), a.onHover?.(g, w);
744
746
  },
745
747
  clearLayersHover: (e) => {
746
748
  const i = A().getDeckInstance(e)?.widgetManager;
@@ -779,18 +781,18 @@ function wi(t) {
779
781
  mapId: r
780
782
  } = t;
781
783
  let n;
782
- A[0] !== r ? (n = (c) => c.maps[r], A[0] = r, A[1] = n) : n = A[1];
784
+ A[0] !== r ? (n = (f) => f.maps[r], A[0] = r, A[1] = n) : n = A[1];
783
785
  const {
784
786
  basemap: i
785
787
  } = I(n), o = I(M0);
786
788
  let s;
787
- A[2] !== r || A[3] !== o ? (s = (c) => o(r, c), A[2] = r, A[3] = o, A[4] = s) : s = A[4];
788
- const a = s;
789
- let l;
790
- return A[5] !== i || A[6] !== e || A[7] !== a ? (l = e({
789
+ A[2] !== r || A[3] !== o ? (s = (f) => o(r, f), A[2] = r, A[3] = o, A[4] = s) : s = A[4];
790
+ const l = s;
791
+ let a;
792
+ return A[5] !== i || A[6] !== e || A[7] !== l ? (a = e({
791
793
  basemap: i,
792
- setBasemap: a
793
- }), A[5] = i, A[6] = e, A[7] = a, A[8] = l) : l = A[8], l;
794
+ setBasemap: l
795
+ }), A[5] = i, A[6] = e, A[7] = l, A[8] = a) : a = A[8], a;
794
796
  }
795
797
  function M0(t) {
796
798
  return t.setBasemap;
@@ -815,8 +817,8 @@ class S0 extends st {
815
817
  }));
816
818
  }
817
819
  }
818
- const mA = "lassoLayer", QA = "maskLayer", x0 = {
819
- id: mA,
820
+ const wA = "lassoLayer", QA = "maskLayer", x0 = {
821
+ id: wA,
820
822
  billboard: !1,
821
823
  editHandlePointRadiusUnits: "pixels",
822
824
  editHandlePointRadiusMinPixels: 1,
@@ -878,7 +880,7 @@ const mA = "lassoLayer", QA = "maskLayer", x0 = {
878
880
  value: "edit",
879
881
  mode: S0
880
882
  }
881
- }, kA = Se((t, A) => ({
883
+ }, CA = Se((t, A) => ({
882
884
  layers: {},
883
885
  setLayer: (e, r) => t((n) => {
884
886
  const i = {
@@ -886,7 +888,7 @@ const mA = "lassoLayer", QA = "maskLayer", x0 = {
886
888
  }, o = i[e] ?? {
887
889
  type: null,
888
890
  props: {}
889
- }, s = [...o.props.extensions ?? [], ...r.props?.extensions ?? []].reduce((l, c) => (l.some((f) => f.equals(c)) || l.push(c), l), []), a = o.legend || r.legend ? {
891
+ }, s = [...o.props.extensions ?? [], ...r.props?.extensions ?? []].reduce((a, f) => (a.some((p) => p.equals(f)) || a.push(f), a), []), l = o.legend || r.legend ? {
890
892
  ...o.legend,
891
893
  ...r.legend
892
894
  } : void 0;
@@ -903,7 +905,7 @@ const mA = "lassoLayer", QA = "maskLayer", x0 = {
903
905
  },
904
906
  extensions: s
905
907
  },
906
- legend: a
908
+ legend: l
907
909
  }, {
908
910
  layers: i
909
911
  };
@@ -942,30 +944,30 @@ function Re(t) {
942
944
  layerId: r
943
945
  } = t;
944
946
  let n;
945
- A[0] !== e ? (n = (d) => d.maps[e]?.basemap, A[0] = e, A[1] = n) : n = A[1];
947
+ A[0] !== e ? (n = (g) => g.maps[e]?.basemap, A[0] = e, A[1] = n) : n = A[1];
946
948
  const i = I(n);
947
949
  let o;
948
- A[2] !== e ? (o = (d) => d.maps[e]?.isLoaded, A[2] = e, A[3] = o) : o = A[3];
949
- const s = I(o), a = I(L0), l = kA(T0), {
950
- type: c
951
- } = _A[i], f = c === uA.googleMaps;
952
- let h, p;
953
- A[4] !== a || A[5] !== f || A[6] !== s || A[7] !== r || A[8] !== e || A[9] !== l ? (h = () => {
954
- let d = null;
955
- if (f && s) {
956
- const w = a(e);
957
- d = new vt(w.getDiv(), {
950
+ A[2] !== e ? (o = (g) => g.maps[e]?.isLoaded, A[2] = e, A[3] = o) : o = A[3];
951
+ const s = I(o), l = I(L0), a = CA(T0), {
952
+ type: f
953
+ } = MA[i], p = f === uA.googleMaps;
954
+ let c, h;
955
+ A[4] !== l || A[5] !== p || A[6] !== s || A[7] !== r || A[8] !== e || A[9] !== a ? (c = () => {
956
+ let g = null;
957
+ if (p && s) {
958
+ const w = l(e);
959
+ g = new vt(w.getDiv(), {
958
960
  recognizers: Object.keys(Fe).map(P0)
959
961
  });
960
962
  }
961
- return l(r, {
963
+ return a(r, {
962
964
  props: {
963
- eventManager: d
965
+ eventManager: g
964
966
  }
965
967
  }), () => {
966
- d?.destroy(), d = null;
968
+ g?.destroy(), g = null;
967
969
  };
968
- }, p = [a, f, s, r, e, l], A[4] = a, A[5] = f, A[6] = s, A[7] = r, A[8] = e, A[9] = l, A[10] = h, A[11] = p) : (h = A[10], p = A[11]), K(h, p);
970
+ }, h = [l, p, s, r, e, a], A[4] = l, A[5] = p, A[6] = s, A[7] = r, A[8] = e, A[9] = a, A[10] = c, A[11] = h) : (c = A[10], h = A[11]), $(c, h);
969
971
  }
970
972
  function P0(t) {
971
973
  const [A, e, r, n] = Fe[t], i = {
@@ -1040,7 +1042,7 @@ function Q0({
1040
1042
  getFillColor: r,
1041
1043
  pointColor: n
1042
1044
  }) {
1043
- const i = gA(t, {
1045
+ const i = pA(t, {
1044
1046
  modeConfig: {
1045
1047
  // // We force distance due to conversion is addressed at feature getText level
1046
1048
  // formatTooltip: (_distance: number) => {
@@ -1049,16 +1051,16 @@ function Q0({
1049
1051
  preventOverlappingLines: !0
1050
1052
  },
1051
1053
  onEdit: A
1052
- }), o = gA(x0, {
1054
+ }), o = pA(x0, {
1053
1055
  getTentativeLineColor: e,
1054
1056
  getTentativeFillColor: r,
1055
1057
  getLineColor: e,
1056
1058
  getFillColor: r,
1057
1059
  getEditHandlePointColor: n.fill,
1058
1060
  getEditHandlePointOutlineColor: n.outline,
1059
- dataComparator: (a, l) => a.features[0] === l.features[0]
1061
+ dataComparator: (l, a) => l.features[0] === a.features[0]
1060
1062
  });
1061
- return gA(o, i);
1063
+ return pA(o, i);
1062
1064
  }
1063
1065
  const O0 = (t) => ZA()((A) => ({
1064
1066
  data: t.reduce((r, n) => {
@@ -1066,16 +1068,16 @@ const O0 = (t) => ZA()((A) => ({
1066
1068
  enabled: i = !1,
1067
1069
  mapId: o,
1068
1070
  modeInstance: s = new jA.polygon.mode(),
1069
- modes: a = jA,
1070
- modeSelected: l = jA.polygon.value,
1071
- values: c = {}
1071
+ modes: l = jA,
1072
+ modeSelected: a = jA.polygon.value,
1073
+ values: f = {}
1072
1074
  } = n;
1073
1075
  return r[o] = {
1074
1076
  enabled: i,
1075
1077
  modeInstance: s,
1076
- modes: a,
1077
- modeSelected: l,
1078
- values: c
1078
+ modes: l,
1079
+ modeSelected: a,
1080
+ values: f
1079
1081
  }, r;
1080
1082
  }, {}),
1081
1083
  setEnabled: (r, n) => {
@@ -1094,11 +1096,11 @@ const O0 = (t) => ZA()((A) => ({
1094
1096
  A((o) => {
1095
1097
  const s = {
1096
1098
  ...o.data[r].values
1097
- }, a = s[n] ?? {
1099
+ }, l = s[n] ?? {
1098
1100
  type: "mask"
1099
1101
  };
1100
1102
  return s[n] = {
1101
- ...a,
1103
+ ...l,
1102
1104
  ...i,
1103
1105
  id: n
1104
1106
  }, i || delete s[n], {
@@ -1116,15 +1118,15 @@ const O0 = (t) => ZA()((A) => ({
1116
1118
  A((o) => {
1117
1119
  const s = {
1118
1120
  ...o.data[r].values
1119
- }, a = s[n] ?? {};
1120
- return a.properties.visible = i, {
1121
+ }, l = s[n] ?? {};
1122
+ return l.properties.visible = i, {
1121
1123
  data: {
1122
1124
  ...o.data,
1123
1125
  [r]: {
1124
1126
  ...o.data[r],
1125
1127
  values: {
1126
1128
  ...s,
1127
- [n]: a
1129
+ [n]: l
1128
1130
  }
1129
1131
  }
1130
1132
  }
@@ -1165,7 +1167,7 @@ function F0(t) {
1165
1167
  let o;
1166
1168
  return A[2] !== e || A[3] !== i ? (o = /* @__PURE__ */ Y(Ne.Provider, { value: i, children: e }), A[2] = e, A[3] = i, A[4] = o) : o = A[4], o;
1167
1169
  }
1168
- function W(t) {
1170
+ function K(t) {
1169
1171
  const A = $A(Ne);
1170
1172
  if (!Object.keys(A).length)
1171
1173
  throw new Error("Missing LassoToolsProvider in the tree");
@@ -1178,53 +1180,53 @@ function R0(t) {
1178
1180
  } = t;
1179
1181
  let n;
1180
1182
  A[0] !== e ? (n = (C) => C.data[e]?.enabled, A[0] = e, A[1] = n) : n = A[1];
1181
- const i = W(n), o = W(H0);
1183
+ const i = K(n), o = K(H0);
1182
1184
  let s;
1183
1185
  A[2] !== e ? (s = (C) => C.data[e]?.values, A[2] = e, A[3] = s) : s = A[3];
1184
- const a = W(s), l = W(V0), c = W(j0);
1185
- let f;
1186
- A[4] !== e ? (f = (C) => C.data[e]?.modeSelected, A[4] = e, A[5] = f) : f = A[5];
1187
- const h = W(f), p = W(z0);
1188
- let d;
1189
- A[6] !== e ? (d = (C) => C.data[e]?.modes, A[6] = e, A[7] = d) : d = A[7];
1190
- const w = W(d), b = W(G0);
1191
- let u, g;
1192
- A[8] !== i || A[9] !== e || A[10] !== h || A[11] !== w || A[12] !== b ? (u = () => {
1193
- const C = w[h];
1186
+ const l = K(s), a = K(V0), f = K(j0);
1187
+ let p;
1188
+ A[4] !== e ? (p = (C) => C.data[e]?.modeSelected, A[4] = e, A[5] = p) : p = A[5];
1189
+ const c = K(p), h = K(z0);
1190
+ let g;
1191
+ A[6] !== e ? (g = (C) => C.data[e]?.modes, A[6] = e, A[7] = g) : g = A[7];
1192
+ const w = K(g), b = K(G0);
1193
+ let u, d;
1194
+ A[8] !== i || A[9] !== e || A[10] !== c || A[11] !== w || A[12] !== b ? (u = () => {
1195
+ const C = w[c];
1194
1196
  if (C && i) {
1195
1197
  const S = C.mode;
1196
1198
  b(e, new S());
1197
1199
  }
1198
- }, g = [i, e, h, w, b], A[8] = i, A[9] = e, A[10] = h, A[11] = w, A[12] = b, A[13] = u, A[14] = g) : (u = A[13], g = A[14]), K(u, g);
1200
+ }, d = [i, e, c, w, b], A[8] = i, A[9] = e, A[10] = c, A[11] = w, A[12] = b, A[13] = u, A[14] = d) : (u = A[13], d = A[14]), $(u, d);
1199
1201
  const m = U0;
1200
1202
  let v;
1201
- A[15] !== a ? (v = [Object.values(a).filter(N0).map(m)], A[15] = a, A[16] = v) : v = A[16];
1203
+ A[15] !== l ? (v = [Object.values(l).filter(N0).map(m)], A[15] = l, A[16] = v) : v = A[16];
1202
1204
  const [y] = v;
1203
1205
  let k;
1204
- A[17] !== e || A[18] !== o || A[19] !== p ? (k = (C) => {
1205
- o(e, !!C), p(e, C);
1206
- }, A[17] = e, A[18] = o, A[19] = p, A[20] = k) : k = A[20];
1206
+ A[17] !== e || A[18] !== o || A[19] !== h ? (k = (C) => {
1207
+ o(e, !!C), h(e, C);
1208
+ }, A[17] = e, A[18] = o, A[19] = h, A[20] = k) : k = A[20];
1207
1209
  const B = k;
1208
1210
  let M;
1209
- if (A[21] !== r || A[22] !== i || A[23] !== B || A[24] !== e || A[25] !== y || A[26] !== h || A[27] !== w || A[28] !== o || A[29] !== l || A[30] !== c) {
1211
+ if (A[21] !== r || A[22] !== i || A[23] !== B || A[24] !== e || A[25] !== y || A[26] !== c || A[27] !== w || A[28] !== o || A[29] !== a || A[30] !== f) {
1210
1212
  let C;
1211
- A[32] !== e || A[33] !== l ? (C = (D, x) => l(e, D, x), A[32] = e, A[33] = l, A[34] = C) : C = A[34];
1213
+ A[32] !== e || A[33] !== a ? (C = (D, P) => a(e, D, P), A[32] = e, A[33] = a, A[34] = C) : C = A[34];
1212
1214
  let S;
1213
1215
  A[35] !== e || A[36] !== o ? (S = (D) => o(e, D), A[35] = e, A[36] = o, A[37] = S) : S = A[37];
1214
- let P;
1215
- A[38] !== e || A[39] !== c ? (P = (D, x) => c(e, D, x), A[38] = e, A[39] = c, A[40] = P) : P = A[40], M = r({
1216
+ let x;
1217
+ A[38] !== e || A[39] !== f ? (x = (D, P) => f(e, D, P), A[38] = e, A[39] = f, A[40] = x) : x = A[40], M = r({
1216
1218
  mapId: e,
1217
1219
  enabled: i,
1218
1220
  modes: w,
1219
- modeSelected: h,
1221
+ modeSelected: c,
1220
1222
  values: {
1221
1223
  mask: y
1222
1224
  },
1223
1225
  setValue: C,
1224
1226
  setEnabled: S,
1225
- setVisibility: P,
1227
+ setVisibility: x,
1226
1228
  setModeSelected: B
1227
- }), A[21] = r, A[22] = i, A[23] = B, A[24] = e, A[25] = y, A[26] = h, A[27] = w, A[28] = o, A[29] = l, A[30] = c, A[31] = M;
1229
+ }), A[21] = r, A[22] = i, A[23] = B, A[24] = e, A[25] = y, A[26] = c, A[27] = w, A[28] = o, A[29] = a, A[30] = f, A[31] = M;
1228
1230
  } else
1229
1231
  M = A[31];
1230
1232
  return M;
@@ -1300,24 +1302,24 @@ function OA({
1300
1302
  },
1301
1303
  dimension: o = "length"
1302
1304
  }) {
1303
- const s = A === qA["m-km"], a = A === qA["ft-mi"], l = s || a;
1304
- let c, f;
1305
- if (l) {
1306
- const p = t < (r ?? he);
1307
- let d = p ? j.meter : j.kilometer;
1308
- c = p ? CA.meter : CA.kilometer, a && (c = p ? CA.feet : CA.mile, d = p ? j.feet : j.mile), f = fe(t, d, o);
1305
+ const s = A === qA["m-km"], l = A === qA["ft-mi"], a = s || l;
1306
+ let f, p;
1307
+ if (a) {
1308
+ const h = t < (r ?? he);
1309
+ let g = h ? j.meter : j.kilometer;
1310
+ f = h ? BA.meter : BA.kilometer, l && (f = h ? BA.feet : BA.mile, g = h ? j.feet : j.mile), p = fe(t, g, o);
1309
1311
  } else
1310
- c = CA[A], f = fe(t, A, o);
1311
- let h = `${Te(f, e, {
1312
+ f = BA[A], p = fe(t, A, o);
1313
+ let c = `${Te(p, e, {
1312
1314
  style: "unit",
1313
- unit: c,
1315
+ unit: f,
1314
1316
  unitDisplay: "short",
1315
1317
  notation: "standard",
1316
1318
  minimumFractionDigits: 2,
1317
1319
  maximumFractionDigits: 2,
1318
1320
  ...i
1319
1321
  })}`;
1320
- return o === "area" && (h += "2"), n ? n(h) : h;
1322
+ return o === "area" && (c += "2"), n ? n(c) : c;
1321
1323
  }
1322
1324
  function yi(t, {
1323
1325
  hasDoubleClickZoom: A
@@ -1366,10 +1368,10 @@ class K0 extends gt {
1366
1368
  } = A, n = pt(r), i = this.getClickSequence();
1367
1369
  let o = !1;
1368
1370
  !n && !this.allowOverlapping(e) && (this.addClickSequence(A), o = !0);
1369
- const s = this.getClickSequence(), a = [...s, s[0]];
1371
+ const s = this.getClickSequence(), l = [...s, s[0]];
1370
1372
  this.area = le({
1371
1373
  type: "Polygon",
1372
- coordinates: [a]
1374
+ coordinates: [l]
1373
1375
  }), this.isFinalizedEdition(i, n) ? this.finalizeEdition(e) : o && e.onEdit({
1374
1376
  // data is the same
1375
1377
  updatedData: e.data,
@@ -1603,8 +1605,8 @@ class Ge extends dt {
1603
1605
  });
1604
1606
  }
1605
1607
  }
1606
- const fA = "mapMeasureLayer", Z0 = {
1607
- id: fA,
1608
+ const hA = "mapMeasureLayer", Z0 = {
1609
+ id: hA,
1608
1610
  pickable: !1,
1609
1611
  billboard: !1,
1610
1612
  editHandlePointRadiusUnits: "pixels",
@@ -1648,7 +1650,7 @@ const fA = "mapMeasureLayer", Z0 = {
1648
1650
  mile: "mile",
1649
1651
  yard: "yard",
1650
1652
  feet: "feet"
1651
- }, hA = {
1653
+ }, gA = {
1652
1654
  squareMeter: "squareMeter",
1653
1655
  squareKilometer: "squareKilometer",
1654
1656
  squareMile: "squareMile",
@@ -1670,16 +1672,16 @@ const fA = "mapMeasureLayer", Z0 = {
1670
1672
  [j.yard]: "yd",
1671
1673
  [j.feet]: "ft"
1672
1674
  }, de = {
1673
- [hA.squareMeter]: "m2",
1674
- [hA.squareKilometer]: "km2",
1675
- [hA.squareMile]: "mi2",
1676
- [hA.squareFeet]: "ft2"
1675
+ [gA.squareMeter]: "m2",
1676
+ [gA.squareKilometer]: "km2",
1677
+ [gA.squareMile]: "mi2",
1678
+ [gA.squareFeet]: "ft2"
1677
1679
  }, LA = {
1678
- [j.meter]: hA.squareMeter,
1679
- [j.kilometer]: hA.squareKilometer,
1680
- [j.mile]: hA.squareMile,
1681
- [j.feet]: hA.squareFeet
1682
- }, CA = {
1680
+ [j.meter]: gA.squareMeter,
1681
+ [j.kilometer]: gA.squareKilometer,
1682
+ [j.mile]: gA.squareMile,
1683
+ [j.feet]: gA.squareFeet
1684
+ }, BA = {
1683
1685
  [j.kilometer]: "kilometer",
1684
1686
  [j.meter]: "meter",
1685
1687
  [j.centimeter]: "centimeter",
@@ -1741,7 +1743,7 @@ const fA = "mapMeasureLayer", Z0 = {
1741
1743
  distance: me,
1742
1744
  buffer: me,
1743
1745
  area: X0
1744
- }, tr = [mA, QA, fA];
1746
+ }, tr = [wA, QA, hA];
1745
1747
  function rr({
1746
1748
  children: t,
1747
1749
  mapId: A,
@@ -1755,22 +1757,22 @@ function rr({
1755
1757
  layerProps: n = {},
1756
1758
  defaultType: i = "mask"
1757
1759
  }) {
1758
- const o = I((E) => E.getController), s = I((E) => E.setController), a = W((E) => E.data[A]?.enabled), l = W((E) => E.setEnabled), c = W((E) => E.data[A]?.values), f = W((E) => E.setValue), h = W((E) => E.data[A]?.modeInstance), p = W((E) => E.data[A]?.modeSelected), d = kA((E) => E.setLayer), w = I((E) => E.addLayers), b = I((E) => E.removeLayers), u = I(IA((E) => E.maps[A]?.layers.filter((_) => !tr.includes(_)))), g = I((E) => E.getDeckInstance), m = TA({});
1760
+ const o = I((E) => E.getController), s = I((E) => E.setController), l = K((E) => E.data[A]?.enabled), a = K((E) => E.setEnabled), f = K((E) => E.data[A]?.values), p = K((E) => E.setValue), c = K((E) => E.data[A]?.modeInstance), h = K((E) => E.data[A]?.modeSelected), g = CA((E) => E.setLayer), w = I((E) => E.addLayers), b = I((E) => E.removeLayers), u = I(IA((E) => E.maps[A]?.layers.filter((_) => !tr.includes(_)))), d = I((E) => E.getDeckInstance), m = TA({});
1759
1761
  Re({
1760
1762
  mapId: A,
1761
- layerId: mA
1762
- }), K(() => {
1763
+ layerId: wA
1764
+ }), $(() => {
1763
1765
  const E = o(A);
1764
- return a && s(A, {
1766
+ return l && s(A, {
1765
1767
  doubleClickZoom: !1,
1766
- dragPan: p !== "lasso"
1768
+ dragPan: h !== "lasso"
1767
1769
  }), () => {
1768
1770
  s(A, E);
1769
1771
  };
1770
- }, [a, o, A, p, s]);
1772
+ }, [l, o, A, h, s]);
1771
1773
  const v = RA(() => ee({
1772
- values: c
1773
- }), [c]), y = RA(() => ({
1774
+ values: f
1775
+ }), [f]), y = RA(() => ({
1774
1776
  type: "FeatureCollection",
1775
1777
  features: v.map((E) => ({
1776
1778
  type: "Feature",
@@ -1778,51 +1780,51 @@ function rr({
1778
1780
  properties: E.properties,
1779
1781
  id: E.id
1780
1782
  }))
1781
- }), [v]), k = RA(() => v.filter((E) => E.properties.visible).map((E) => E.id), [v]), [B, M] = cA(y), [C, S] = cA([]), P = vA(() => {
1783
+ }), [v]), k = RA(() => v.filter((E) => E.properties.visible).map((E) => E.id), [v]), [B, M] = cA(y), [C, S] = cA([]), x = EA(() => {
1782
1784
  const E = {
1783
1785
  ...y,
1784
1786
  features: y.features.filter((_) => _.properties?.visible)
1785
1787
  };
1786
1788
  M(E);
1787
1789
  }, [y]);
1788
- K(() => {
1789
- P();
1790
- }, [P]);
1790
+ $(() => {
1791
+ x();
1792
+ }, [x]);
1791
1793
  const D = TA(v.length);
1792
- K(() => (w(A, [mA]), () => {
1793
- b(A, [mA]);
1794
+ $(() => (w(A, [wA]), () => {
1795
+ b(A, [wA]);
1794
1796
  }), [w, A, b]);
1795
- const x = vA(() => {
1796
- P(), S([]), l(A, !1);
1797
- }, [A, P, l]), R = vA((E) => {
1797
+ const P = EA(() => {
1798
+ x(), S([]), a(A, !1);
1799
+ }, [A, x, a]), R = EA((E) => {
1798
1800
  E.forEach((_, T) => {
1799
1801
  _.properties.label ??= `${r?.mask} ${D.current}`, _.properties.index = T, _.properties.visible = _.properties.visible ?? !0;
1800
- const L = _.id ?? crypto.randomUUID();
1801
- f(A, L, {
1802
+ const O = _.id ?? crypto.randomUUID();
1803
+ p(A, O, {
1802
1804
  geometry: _.geometry,
1803
1805
  properties: _.properties,
1804
1806
  type: i
1805
1807
  });
1806
1808
  });
1807
- }, [i, r?.mask, A, f]), N = vA(({
1809
+ }, [i, r?.mask, A, p]), N = EA(({
1808
1810
  editType: E,
1809
1811
  updatedData: _
1810
1812
  }) => {
1811
1813
  if (E === rA.cancel) {
1812
- x();
1814
+ P();
1813
1815
  return;
1814
1816
  }
1815
- M(_), E !== rA.updateTentativeFeature && E === rA.addFeature && (p !== "edit" && (D.current = D.current + 1), R(_.features), x());
1816
- }, [R, x, p]);
1817
- return K(() => {
1818
- const E = a, {
1817
+ M(_), E !== rA.updateTentativeFeature && E === rA.addFeature && (h !== "edit" && (D.current = D.current + 1), R(_.features), P());
1818
+ }, [R, P, h]);
1819
+ return $(() => {
1820
+ const E = l, {
1819
1821
  border: _,
1820
1822
  point: T,
1821
- fill: L
1823
+ fill: O
1822
1824
  } = e.colors.editing, {
1823
- border: O,
1825
+ border: L,
1824
1826
  fill: z
1825
- } = e.colors.finished, G = I0({
1827
+ } = e.colors.finished, U = I0({
1826
1828
  layerProps: {
1827
1829
  ...n.mask,
1828
1830
  pickable: E,
@@ -1831,22 +1833,22 @@ function rr({
1831
1833
  updateTriggers: {
1832
1834
  getFilterValue: k
1833
1835
  },
1834
- onClick: (U) => {
1835
- const V = U;
1836
+ onClick: (G) => {
1837
+ const V = G;
1836
1838
  V.isGuide || S([V.index]);
1837
1839
  }
1838
1840
  },
1839
- getLineColor: (U) => C[0] === U.properties.index ? _ : O,
1840
- getFillColor: (U) => C[0] === U.properties.index ? L : z,
1841
+ getLineColor: (G) => C[0] === G.properties.index ? _ : L,
1842
+ getFillColor: (G) => C[0] === G.properties.index ? O : z,
1841
1843
  pointColor: {
1842
1844
  fill: T,
1843
1845
  outline: _
1844
1846
  },
1845
1847
  onEdit: N,
1846
- mode: E ? h : new mt()
1848
+ mode: E ? c : new mt()
1847
1849
  });
1848
- d(mA, G);
1849
- }, [B, a, n.mask, k, h, N, C, d, e.colors.editing, e.colors.finished]), K(() => {
1850
+ g(wA, U);
1851
+ }, [B, l, n.mask, k, c, N, C, g, e.colors.editing, e.colors.finished]), $(() => {
1850
1852
  const E = {
1851
1853
  ...PA,
1852
1854
  data: y,
@@ -1855,29 +1857,29 @@ function rr({
1855
1857
  getFilterValue: k
1856
1858
  }
1857
1859
  };
1858
- return d(PA.id, {
1860
+ return g(PA.id, {
1859
1861
  type: kt,
1860
1862
  props: E
1861
1863
  }), w(A, [PA.id]), () => {
1862
1864
  b(A, [PA.id]);
1863
1865
  };
1864
- }, [w, A, y, k, b, d]), K(() => {
1865
- !a && C.length && B.features.length && (R(B.features), x());
1866
- }, [B.features, a, R, x, C.length]), K(() => {
1866
+ }, [w, A, y, k, b, g]), $(() => {
1867
+ !l && C.length && B.features.length && (R(B.features), P());
1868
+ }, [B.features, l, R, P, C.length]), $(() => {
1867
1869
  u?.forEach((E) => {
1868
- const _ = g(A)?.props.layers.find((L) => L.props.id === E);
1870
+ const _ = d(A)?.props.layers.find((O) => O.props.id === E);
1869
1871
  if (!_) return;
1870
- a && (m.current[E] = _?.props.pickable);
1871
- const T = !a && (m.current[E] ?? _?.props.pickable);
1872
- d(E, {
1872
+ l && (m.current[E] = _?.props.pickable);
1873
+ const T = !l && (m.current[E] ?? _?.props.pickable);
1874
+ g(E, {
1873
1875
  props: {
1874
1876
  pickable: T,
1875
1877
  extensions: [new yt()],
1876
- maskId: !a && k.length ? QA : void 0
1878
+ maskId: !l && k.length ? QA : void 0
1877
1879
  }
1878
1880
  });
1879
1881
  });
1880
- }, [a, g, A, u, k.length, d]), t;
1882
+ }, [l, d, A, u, k.length, g]), t;
1881
1883
  }
1882
1884
  rr.Controls = R0;
1883
1885
  function nr({
@@ -1906,14 +1908,14 @@ function ir({
1906
1908
  onEdit: i,
1907
1909
  guideColor: o,
1908
1910
  pointColor: s,
1909
- textOptions: a
1911
+ textOptions: l
1910
1912
  }) {
1911
- const l = gA(A, {
1913
+ const a = pA(A, {
1912
1914
  visible: r,
1913
1915
  pickable: r,
1914
1916
  modeConfig: {
1915
1917
  // We force distance due to conversion is addressed at feature getText level
1916
- formatTooltip: (h) => h,
1918
+ formatTooltip: (c) => c,
1917
1919
  turfOptions: {
1918
1920
  units: J0.meters
1919
1921
  }
@@ -1930,18 +1932,18 @@ function ir({
1930
1932
  // needed for the outlineWidth and outlineColor attributes to be effective
1931
1933
  smoothing: 0.2
1932
1934
  },
1933
- getText: (h) => t?.getTooltipText?.({
1934
- meters: h.text,
1935
+ getText: (c) => t?.getTooltipText?.({
1936
+ meters: c.text,
1935
1937
  locale: e,
1936
1938
  unit: n,
1937
- options: a
1939
+ options: l
1938
1940
  }),
1939
1941
  updateTriggers: {
1940
- getText: [n, e, a]
1942
+ getText: [n, e, l]
1941
1943
  }
1942
1944
  }
1943
1945
  }
1944
- }), c = gA(Z0, {
1946
+ }), f = pA(Z0, {
1945
1947
  _subLayerProps: {
1946
1948
  guides: {
1947
1949
  getLineColor: o,
@@ -1951,7 +1953,7 @@ function ir({
1951
1953
  getEditHandlePointColor: s,
1952
1954
  getEditHandlePointOutlineColor: o
1953
1955
  });
1954
- return gA(c, l);
1956
+ return pA(f, a);
1955
1957
  }
1956
1958
  const or = (t) => ZA()((A) => ({
1957
1959
  measurements: t.reduce((r, n) => {
@@ -1959,25 +1961,25 @@ const or = (t) => ZA()((A) => ({
1959
1961
  mapId: i,
1960
1962
  modeSelected: o,
1961
1963
  modes: s = Ar,
1962
- units: a = er,
1963
- distance: l = 0,
1964
- finished: c = !1,
1965
- locale: f = "en",
1966
- positions: h = [],
1967
- clearLayerOnStart: p = !1,
1968
- unit: d = qA["m-km"],
1964
+ units: l = er,
1965
+ distance: a = 0,
1966
+ finished: f = !1,
1967
+ locale: p = "en",
1968
+ positions: c = [],
1969
+ clearLayerOnStart: h = !1,
1970
+ unit: g = qA["m-km"],
1969
1971
  enabled: w = !1
1970
1972
  } = n;
1971
1973
  return r[i] = {
1972
1974
  modes: s,
1973
- units: a,
1975
+ units: l,
1974
1976
  modeSelected: o,
1975
- distance: l,
1976
- finished: c,
1977
- locale: f,
1978
- positions: h,
1979
- unit: d,
1980
- clearLayerOnStart: p,
1977
+ distance: a,
1978
+ finished: f,
1979
+ locale: p,
1980
+ positions: c,
1981
+ unit: g,
1982
+ clearLayerOnStart: h,
1981
1983
  enabled: w
1982
1984
  }, r;
1983
1985
  }, {}),
@@ -2100,91 +2102,91 @@ function je(t) {
2100
2102
  const o = H(i);
2101
2103
  let s;
2102
2104
  A[4] !== e ? (s = (Q) => Q.measurements[e].distance, A[4] = e, A[5] = s) : s = A[5];
2103
- const a = H(s), l = H(pr);
2105
+ const l = H(s), a = H(pr);
2106
+ let f;
2107
+ A[6] !== a || A[7] !== e ? (f = (Q) => a(e, Q), A[6] = a, A[7] = e, A[8] = f) : f = A[8];
2108
+ const p = f;
2104
2109
  let c;
2105
- A[6] !== l || A[7] !== e ? (c = (Q) => l(e, Q), A[6] = l, A[7] = e, A[8] = c) : c = A[8];
2106
- const f = c;
2107
- let h;
2108
- A[9] !== e ? (h = (Q) => Q.measurements[e].clearLayerOnStart, A[9] = e, A[10] = h) : h = A[10];
2109
- const p = H(h);
2110
- let d;
2111
- A[11] !== e ? (d = (Q) => Q.measurements[e].enabled, A[11] = e, A[12] = d) : d = A[12];
2112
- const w = H(d), b = H(gr);
2110
+ A[9] !== e ? (c = (Q) => Q.measurements[e].clearLayerOnStart, A[9] = e, A[10] = c) : c = A[10];
2111
+ const h = H(c);
2112
+ let g;
2113
+ A[11] !== e ? (g = (Q) => Q.measurements[e].enabled, A[11] = e, A[12] = g) : g = A[12];
2114
+ const w = H(g), b = H(gr);
2113
2115
  let u;
2114
2116
  A[13] !== b || A[14] !== e ? (u = (Q) => b(e, Q), A[13] = b, A[14] = e, A[15] = u) : u = A[15];
2115
- const g = u;
2117
+ const d = u;
2116
2118
  let m;
2117
2119
  A[16] !== e ? (m = (Q) => Q.measurements[e].modeSelected, A[16] = e, A[17] = m) : m = A[17];
2118
2120
  const v = H(m), y = H(hr);
2119
2121
  let k;
2120
- A[18] !== y || A[19] !== e || A[20] !== g ? (k = (Q) => {
2121
- g(!!Q), y(e, Q);
2122
- }, A[18] = y, A[19] = e, A[20] = g, A[21] = k) : k = A[21];
2122
+ A[18] !== y || A[19] !== e || A[20] !== d ? (k = (Q) => {
2123
+ d(!!Q), y(e, Q);
2124
+ }, A[18] = y, A[19] = e, A[20] = d, A[21] = k) : k = A[21];
2123
2125
  const B = k;
2124
2126
  let M;
2125
2127
  A[22] !== e ? (M = (Q) => Q.measurements[e].finished, A[22] = e, A[23] = M) : M = A[23];
2126
2128
  const C = H(M), S = H(fr);
2127
- let P;
2128
- A[24] !== S || A[25] !== e ? (P = (Q) => S(e, Q), A[24] = S, A[25] = e, A[26] = P) : P = A[26];
2129
- const D = P;
2130
2129
  let x;
2131
- A[27] !== e ? (x = (Q) => Q.measurements[e].locale, A[27] = e, A[28] = x) : x = A[28];
2132
- const R = H(x), N = H(cr);
2130
+ A[24] !== S || A[25] !== e ? (x = (Q) => S(e, Q), A[24] = S, A[25] = e, A[26] = x) : x = A[26];
2131
+ const D = x;
2132
+ let P;
2133
+ A[27] !== e ? (P = (Q) => Q.measurements[e].locale, A[27] = e, A[28] = P) : P = A[28];
2134
+ const R = H(P), N = H(cr);
2133
2135
  let E;
2134
2136
  A[29] !== N || A[30] !== e ? (E = (Q) => N(e, Q), A[29] = N, A[30] = e, A[31] = E) : E = A[31];
2135
2137
  const _ = E;
2136
2138
  let T;
2137
2139
  A[32] !== e ? (T = (Q) => Q.measurements[e].modeInstance, A[32] = e, A[33] = T) : T = A[33];
2138
- const L = H(T), O = H(ur);
2140
+ const O = H(T), L = H(ur);
2139
2141
  let z;
2140
- A[34] !== O || A[35] !== e ? (z = (Q) => O(e, Q), A[34] = O, A[35] = e, A[36] = z) : z = A[36];
2141
- const G = z;
2142
- let U;
2143
- A[37] !== e ? (U = (Q) => Q.measurements[e].positions, A[37] = e, A[38] = U) : U = A[38];
2144
- const V = H(U), q = H(ar);
2142
+ A[34] !== L || A[35] !== e ? (z = (Q) => L(e, Q), A[34] = L, A[35] = e, A[36] = z) : z = A[36];
2143
+ const U = z;
2144
+ let G;
2145
+ A[37] !== e ? (G = (Q) => Q.measurements[e].positions, A[37] = e, A[38] = G) : G = A[38];
2146
+ const V = H(G), q = H(ar);
2145
2147
  let nA;
2146
2148
  A[39] !== q || A[40] !== e ? (nA = (Q) => q(e, Q), A[39] = q, A[40] = e, A[41] = nA) : nA = A[41];
2147
2149
  const J = nA;
2148
- let aA;
2149
- A[42] !== e ? (aA = (Q) => Q.measurements[e].unit, A[42] = e, A[43] = aA) : aA = A[43];
2150
- const X = H(aA), eA = H(lr);
2151
- let Z;
2152
- A[44] !== eA || A[45] !== e ? (Z = (Q) => eA(e, Q), A[44] = eA, A[45] = e, A[46] = Z) : Z = A[46];
2153
- const $ = Z;
2150
+ let iA;
2151
+ A[42] !== e ? (iA = (Q) => Q.measurements[e].unit, A[42] = e, A[43] = iA) : iA = A[43];
2152
+ const fA = H(iA), X = H(lr);
2154
2153
  let AA;
2155
- A[47] !== L || A[48] !== J ? (AA = () => {
2156
- L?.resetClickSequence(), J([]);
2157
- }, A[47] = L, A[48] = J, A[49] = AA) : AA = A[49];
2158
- const oA = AA;
2159
- let SA;
2160
- A[50] !== g ? (SA = (Q) => {
2161
- g(Q);
2162
- }, A[50] = g, A[51] = SA) : SA = A[51];
2163
- const FA = SA;
2154
+ A[44] !== X || A[45] !== e ? (AA = (Q) => X(e, Q), A[44] = X, A[45] = e, A[46] = AA) : AA = A[46];
2155
+ const Z = AA;
2156
+ let W;
2157
+ A[47] !== O || A[48] !== J ? (W = () => {
2158
+ O?.resetClickSequence(), J([]);
2159
+ }, A[47] = O, A[48] = J, A[49] = W) : W = A[49];
2160
+ const eA = W;
2161
+ let oA;
2162
+ A[50] !== d ? (oA = (Q) => {
2163
+ d(Q);
2164
+ }, A[50] = d, A[51] = oA) : oA = A[51];
2165
+ const FA = oA;
2164
2166
  let xA;
2165
- return A[52] !== oA || A[53] !== p || A[54] !== a || A[55] !== w || A[56] !== C || A[57] !== R || A[58] !== L || A[59] !== v || A[60] !== n || A[61] !== V || A[62] !== f || A[63] !== g || A[64] !== D || A[65] !== _ || A[66] !== G || A[67] !== B || A[68] !== J || A[69] !== $ || A[70] !== FA || A[71] !== X || A[72] !== o ? (xA = {
2167
+ return A[52] !== eA || A[53] !== h || A[54] !== l || A[55] !== w || A[56] !== C || A[57] !== R || A[58] !== O || A[59] !== v || A[60] !== n || A[61] !== V || A[62] !== p || A[63] !== d || A[64] !== D || A[65] !== _ || A[66] !== U || A[67] !== B || A[68] !== J || A[69] !== Z || A[70] !== FA || A[71] !== fA || A[72] !== o ? (xA = {
2166
2168
  modes: n,
2167
2169
  units: o,
2168
- distance: a,
2169
- clearLayerOnStart: p,
2170
+ distance: l,
2171
+ clearLayerOnStart: h,
2170
2172
  modeSelected: v,
2171
2173
  enabled: w,
2172
2174
  finished: C,
2173
2175
  locale: R,
2174
- modeInstance: L,
2176
+ modeInstance: O,
2175
2177
  positions: V,
2176
- unit: X,
2177
- setDistance: f,
2178
+ unit: fA,
2179
+ setDistance: p,
2178
2180
  setModeSelected: B,
2179
2181
  setFinished: D,
2180
2182
  setLocale: _,
2181
2183
  setPositions: J,
2182
- setUnit: $,
2183
- setEnabled: g,
2184
+ setUnit: Z,
2185
+ setEnabled: d,
2184
2186
  toggleLayer: FA,
2185
- clearLayer: oA,
2186
- setModeInstance: G
2187
- }, A[52] = oA, A[53] = p, A[54] = a, A[55] = w, A[56] = C, A[57] = R, A[58] = L, A[59] = v, A[60] = n, A[61] = V, A[62] = f, A[63] = g, A[64] = D, A[65] = _, A[66] = G, A[67] = B, A[68] = J, A[69] = $, A[70] = FA, A[71] = X, A[72] = o, A[73] = xA) : xA = A[73], xA;
2187
+ clearLayer: eA,
2188
+ setModeInstance: U
2189
+ }, A[52] = eA, A[53] = h, A[54] = l, A[55] = w, A[56] = C, A[57] = R, A[58] = O, A[59] = v, A[60] = n, A[61] = V, A[62] = p, A[63] = d, A[64] = D, A[65] = _, A[66] = U, A[67] = B, A[68] = J, A[69] = Z, A[70] = FA, A[71] = fA, A[72] = o, A[73] = xA) : xA = A[73], xA;
2188
2190
  }
2189
2191
  function lr(t) {
2190
2192
  return t.setUnit;
@@ -2223,17 +2225,17 @@ function dr(t) {
2223
2225
  const {
2224
2226
  modes: o,
2225
2227
  units: s,
2226
- distance: a,
2227
- setDistance: l,
2228
- clearLayerOnStart: c,
2229
- modeSelected: f,
2230
- setModeSelected: h,
2231
- enabled: p,
2232
- setEnabled: d,
2228
+ distance: l,
2229
+ setDistance: a,
2230
+ clearLayerOnStart: f,
2231
+ modeSelected: p,
2232
+ setModeSelected: c,
2233
+ enabled: h,
2234
+ setEnabled: g,
2233
2235
  finished: w,
2234
2236
  setFinished: b,
2235
2237
  locale: u,
2236
- setLocale: g,
2238
+ setLocale: d,
2237
2239
  modeInstance: m,
2238
2240
  setModeInstance: v,
2239
2241
  positions: y,
@@ -2243,55 +2245,55 @@ function dr(t) {
2243
2245
  clearLayer: C,
2244
2246
  toggleLayer: S
2245
2247
  } = je(i);
2246
- let P;
2247
- A[2] !== f || A[3] !== o || A[4] !== v || A[5] !== k ? (P = () => {
2248
- if (f && o[f]) {
2249
- const _ = o[f].mode;
2248
+ let x;
2249
+ A[2] !== p || A[3] !== o || A[4] !== v || A[5] !== k ? (x = () => {
2250
+ if (p && o[p]) {
2251
+ const _ = o[p].mode;
2250
2252
  v(new _());
2251
2253
  }
2252
2254
  return () => {
2253
2255
  k([]);
2254
2256
  };
2255
- }, A[2] = f, A[3] = o, A[4] = v, A[5] = k, A[6] = P) : P = A[6];
2257
+ }, A[2] = p, A[3] = o, A[4] = v, A[5] = k, A[6] = x) : x = A[6];
2256
2258
  let D;
2257
- A[7] !== f || A[8] !== o || A[9] !== d || A[10] !== v || A[11] !== k ? (D = [o, f, k, v, d], A[7] = f, A[8] = o, A[9] = d, A[10] = v, A[11] = k, A[12] = D) : D = A[12], K(P, D);
2258
- let x;
2259
- A[13] !== S || A[14] !== C || A[15] !== c || A[16] !== w ? (x = (_) => {
2260
- _ && (c || !w) && C(), S(_);
2261
- }, A[13] = S, A[14] = C, A[15] = c, A[16] = w, A[17] = x) : x = A[17];
2262
- const R = x, N = !!c;
2259
+ A[7] !== p || A[8] !== o || A[9] !== g || A[10] !== v || A[11] !== k ? (D = [o, p, k, v, g], A[7] = p, A[8] = o, A[9] = g, A[10] = v, A[11] = k, A[12] = D) : D = A[12], $(x, D);
2260
+ let P;
2261
+ A[13] !== S || A[14] !== C || A[15] !== f || A[16] !== w ? (P = (_) => {
2262
+ _ && (f || !w) && C(), S(_);
2263
+ }, A[13] = S, A[14] = C, A[15] = f, A[16] = w, A[17] = P) : P = A[17];
2264
+ const R = P, N = !!f;
2263
2265
  let E;
2264
- return A[18] !== n || A[19] !== C || A[20] !== a || A[21] !== p || A[22] !== w || A[23] !== u || A[24] !== e || A[25] !== m || A[26] !== f || A[27] !== o || A[28] !== y || A[29] !== l || A[30] !== d || A[31] !== b || A[32] !== g || A[33] !== h || A[34] !== k || A[35] !== M || A[36] !== N || A[37] !== r || A[38] !== R || A[39] !== B || A[40] !== s ? (E = n({
2266
+ return A[18] !== n || A[19] !== C || A[20] !== l || A[21] !== h || A[22] !== w || A[23] !== u || A[24] !== e || A[25] !== m || A[26] !== p || A[27] !== o || A[28] !== y || A[29] !== a || A[30] !== g || A[31] !== b || A[32] !== d || A[33] !== c || A[34] !== k || A[35] !== M || A[36] !== N || A[37] !== r || A[38] !== R || A[39] !== B || A[40] !== s ? (E = n({
2265
2267
  mapId: e,
2266
- distance: a,
2267
- enabled: p,
2268
+ distance: l,
2269
+ enabled: h,
2268
2270
  finished: w,
2269
2271
  locale: u,
2270
2272
  positions: y,
2271
2273
  unit: B,
2272
2274
  clearLayerOnStart: N,
2273
- modeSelected: f,
2275
+ modeSelected: p,
2274
2276
  modes: o,
2275
2277
  units: s,
2276
2278
  value: OA({
2277
- meters: a,
2279
+ meters: l,
2278
2280
  unit: B,
2279
2281
  locale: u,
2280
2282
  options: r
2281
2283
  }),
2282
2284
  modeInstance: m,
2283
- setModeSelected: h,
2284
- setDistance: l,
2285
+ setModeSelected: c,
2286
+ setDistance: a,
2285
2287
  setFinished: b,
2286
- setLocale: g,
2288
+ setLocale: d,
2287
2289
  setPositions: k,
2288
2290
  setUnit: M,
2289
- setEnabled: d,
2291
+ setEnabled: g,
2290
2292
  toggleLayer: R,
2291
2293
  clearLayer: C
2292
- }), A[18] = n, A[19] = C, A[20] = a, A[21] = p, A[22] = w, A[23] = u, A[24] = e, A[25] = m, A[26] = f, A[27] = o, A[28] = y, A[29] = l, A[30] = d, A[31] = b, A[32] = g, A[33] = h, A[34] = k, A[35] = M, A[36] = N, A[37] = r, A[38] = R, A[39] = B, A[40] = s, A[41] = E) : E = A[41], E;
2294
+ }), A[18] = n, A[19] = C, A[20] = l, A[21] = h, A[22] = w, A[23] = u, A[24] = e, A[25] = m, A[26] = p, A[27] = o, A[28] = y, A[29] = a, A[30] = g, A[31] = b, A[32] = d, A[33] = c, A[34] = k, A[35] = M, A[36] = N, A[37] = r, A[38] = R, A[39] = B, A[40] = s, A[41] = E) : E = A[41], E;
2293
2295
  }
2294
- const mr = [fA];
2296
+ const mr = [hA];
2295
2297
  function wr(t) {
2296
2298
  const A = F(43), {
2297
2299
  children: e,
@@ -2305,90 +2307,90 @@ function wr(t) {
2305
2307
  styles: ge.styles
2306
2308
  } : n, A[0] = n, A[1] = s) : s = A[1];
2307
2309
  const {
2308
- styles: a
2309
- } = s, l = a === void 0 ? ge.styles : a;
2310
- let c;
2311
- A[2] !== r ? (c = {
2310
+ styles: l
2311
+ } = s, a = l === void 0 ? ge.styles : l;
2312
+ let f;
2313
+ A[2] !== r ? (f = {
2312
2314
  mapId: r
2313
- }, A[2] = r, A[3] = c) : c = A[3];
2315
+ }, A[2] = r, A[3] = f) : f = A[3];
2314
2316
  const {
2315
- setDistance: f,
2316
- enabled: h,
2317
- finished: p,
2318
- setFinished: d,
2317
+ setDistance: p,
2318
+ enabled: c,
2319
+ finished: h,
2320
+ setFinished: g,
2319
2321
  locale: w,
2320
2322
  setPositions: b,
2321
2323
  unit: u,
2322
- modeInstance: g
2323
- } = je(c), m = kA(Br), v = I(Cr), y = I(kr), k = I(Er), B = I(vr);
2324
+ modeInstance: d
2325
+ } = je(f), m = CA(Br), v = I(Cr), y = I(kr), k = I(Er), B = I(vr);
2324
2326
  let M;
2325
- A[4] !== r ? (M = (G) => G.maps[r]?.layers.filter(br), A[4] = r, A[5] = M) : M = A[5];
2327
+ A[4] !== r ? (M = (U) => U.maps[r]?.layers.filter(br), A[4] = r, A[5] = M) : M = A[5];
2326
2328
  const C = I(IA(M)), S = I(yr);
2327
- let P;
2328
- A[6] === Symbol.for("react.memo_cache_sentinel") ? (P = {}, A[6] = P) : P = A[6];
2329
- const D = TA(P);
2330
2329
  let x;
2331
- A[7] !== r ? (x = {
2330
+ A[6] === Symbol.for("react.memo_cache_sentinel") ? (x = {}, A[6] = x) : x = A[6];
2331
+ const D = TA(x);
2332
+ let P;
2333
+ A[7] !== r ? (P = {
2332
2334
  mapId: r,
2333
- layerId: fA
2334
- }, A[7] = r, A[8] = x) : x = A[8], Re(x);
2335
+ layerId: hA
2336
+ }, A[7] = r, A[8] = P) : P = A[8], Re(P);
2335
2337
  let R, N;
2336
- A[9] !== k || A[10] !== h || A[11] !== v || A[12] !== r || A[13] !== B || A[14] !== y ? (R = () => {
2337
- const G = v(r);
2338
- return h && (k(r, [fA]), y(r, {
2338
+ A[9] !== k || A[10] !== c || A[11] !== v || A[12] !== r || A[13] !== B || A[14] !== y ? (R = () => {
2339
+ const U = v(r);
2340
+ return c && (k(r, [hA]), y(r, {
2339
2341
  doubleClickZoom: !1
2340
2342
  })), () => {
2341
- B(r, [fA]), y(r, G);
2343
+ B(r, [hA]), y(r, U);
2342
2344
  };
2343
- }, N = [k, h, v, r, B, y], A[9] = k, A[10] = h, A[11] = v, A[12] = r, A[13] = B, A[14] = y, A[15] = R, A[16] = N) : (R = A[15], N = A[16]), K(R, N);
2345
+ }, N = [k, c, v, r, B, y], A[9] = k, A[10] = c, A[11] = v, A[12] = r, A[13] = B, A[14] = y, A[15] = R, A[16] = N) : (R = A[15], N = A[16]), $(R, N);
2344
2346
  let E, _;
2345
- A[17] !== h || A[18] !== S || A[19] !== r || A[20] !== C || A[21] !== m ? (E = () => {
2346
- C?.forEach((G) => {
2347
- const U = S(r)?.props.layers.find((q) => q.props.id === G);
2348
- if (!U)
2347
+ A[17] !== c || A[18] !== S || A[19] !== r || A[20] !== C || A[21] !== m ? (E = () => {
2348
+ C?.forEach((U) => {
2349
+ const G = S(r)?.props.layers.find((q) => q.props.id === U);
2350
+ if (!G)
2349
2351
  return;
2350
- h && (D.current[G] = U?.props.pickable);
2351
- const V = !h && (D.current[G] ?? U?.props.pickable);
2352
- m(G, {
2352
+ c && (D.current[U] = G?.props.pickable);
2353
+ const V = !c && (D.current[U] ?? G?.props.pickable);
2354
+ m(U, {
2353
2355
  props: {
2354
2356
  pickable: V
2355
2357
  }
2356
2358
  });
2357
2359
  });
2358
- }, _ = [h, S, r, C, m], A[17] = h, A[18] = S, A[19] = r, A[20] = C, A[21] = m, A[22] = E, A[23] = _) : (E = A[22], _ = A[23]), K(E, _);
2360
+ }, _ = [c, S, r, C, m], A[17] = c, A[18] = S, A[19] = r, A[20] = C, A[21] = m, A[22] = E, A[23] = _) : (E = A[22], _ = A[23]), $(E, _);
2359
2361
  let T;
2360
- A[24] !== g || A[25] !== f || A[26] !== d || A[27] !== b ? (T = (G) => {
2362
+ A[24] !== d || A[25] !== p || A[26] !== g || A[27] !== b ? (T = (U) => {
2361
2363
  const {
2362
- editType: U,
2364
+ editType: G,
2363
2365
  editContext: V
2364
- } = G;
2365
- if (U === rA.cancel) {
2366
- g.resetClickSequence();
2366
+ } = U;
2367
+ if (G === rA.cancel) {
2368
+ d.resetClickSequence();
2367
2369
  return;
2368
2370
  }
2369
- U === rA.addPosition && f(V.distance), d(!!V.finished);
2371
+ G === rA.addPosition && p(V.distance), g(!!V.finished);
2370
2372
  const q = V.positions;
2371
2373
  q?.length && b(q);
2372
- }, A[24] = g, A[25] = f, A[26] = d, A[27] = b, A[28] = T) : T = A[28];
2373
- const L = T;
2374
- let O, z;
2375
- return A[29] !== h || A[30] !== p || A[31] !== i || A[32] !== w || A[33] !== g || A[34] !== L || A[35] !== m || A[36] !== l.colors.editing || A[37] !== l.colors.finished || A[38] !== l.colors.point || A[39] !== o || A[40] !== u ? (O = () => {
2376
- const G = p ? l.colors.finished : l.colors.editing, U = p ? l.colors.finished : l.colors.point, V = nr({
2374
+ }, A[24] = d, A[25] = p, A[26] = g, A[27] = b, A[28] = T) : T = A[28];
2375
+ const O = T;
2376
+ let L, z;
2377
+ return A[29] !== c || A[30] !== h || A[31] !== i || A[32] !== w || A[33] !== d || A[34] !== O || A[35] !== m || A[36] !== a.colors.editing || A[37] !== a.colors.finished || A[38] !== a.colors.point || A[39] !== o || A[40] !== u ? (L = () => {
2378
+ const U = h ? a.colors.finished : a.colors.editing, G = h ? a.colors.finished : a.colors.point, V = nr({
2377
2379
  layerProps: {
2378
2380
  ...i,
2379
- pickable: i?.pickable ?? !p
2381
+ pickable: i?.pickable ?? !h
2380
2382
  },
2381
- enabled: h,
2382
- guideColor: G,
2383
- pointColor: U,
2383
+ enabled: c,
2384
+ guideColor: U,
2385
+ pointColor: G,
2384
2386
  locale: w,
2385
- onEdit: L,
2387
+ onEdit: O,
2386
2388
  unit: u,
2387
- mode: g,
2389
+ mode: d,
2388
2390
  textOptions: o
2389
2391
  });
2390
- m(fA, V);
2391
- }, z = [p, g, i, w, L, m, l.colors.editing, l.colors.finished, l.colors.point, o, u, h], A[29] = h, A[30] = p, A[31] = i, A[32] = w, A[33] = g, A[34] = L, A[35] = m, A[36] = l.colors.editing, A[37] = l.colors.finished, A[38] = l.colors.point, A[39] = o, A[40] = u, A[41] = O, A[42] = z) : (O = A[41], z = A[42]), K(O, z), e;
2392
+ m(hA, V);
2393
+ }, z = [h, d, i, w, O, m, a.colors.editing, a.colors.finished, a.colors.point, o, u, c], A[29] = c, A[30] = h, A[31] = i, A[32] = w, A[33] = d, A[34] = O, A[35] = m, A[36] = a.colors.editing, A[37] = a.colors.finished, A[38] = a.colors.point, A[39] = o, A[40] = u, A[41] = L, A[42] = z) : (L = A[41], z = A[42]), $(L, z), e;
2392
2394
  }
2393
2395
  function yr(t) {
2394
2396
  return t.getDeckInstance;
@@ -2417,14 +2419,14 @@ function _r(t) {
2417
2419
  mapId: e
2418
2420
  } = t;
2419
2421
  let r;
2420
- A[0] !== e ? (r = (a) => a.maps[e], A[0] = e, A[1] = r) : r = A[1];
2422
+ A[0] !== e ? (r = (l) => l.maps[e], A[0] = e, A[1] = r) : r = A[1];
2421
2423
  const {
2422
2424
  layers: n
2423
- } = I(r), i = kA(Sr);
2425
+ } = I(r), i = CA(Sr);
2424
2426
  let o;
2425
2427
  if (A[2] !== i || A[3] !== n) {
2426
- let a;
2427
- A[5] !== i ? (a = (l) => i[l], A[5] = i, A[6] = a) : a = A[6], o = n.map(a).filter(Mr), A[2] = i, A[3] = n, A[4] = o;
2428
+ let l;
2429
+ A[5] !== i ? (l = (a) => i[a], A[5] = i, A[6] = l) : l = A[6], o = n.map(l).filter(Mr), A[2] = i, A[3] = n, A[4] = o;
2428
2430
  } else
2429
2431
  o = A[4];
2430
2432
  return o;
@@ -2435,7 +2437,7 @@ function Mr(t) {
2435
2437
  function Sr(t) {
2436
2438
  return t.layers;
2437
2439
  }
2438
- const we = [QA, mA, fA];
2440
+ const we = [QA, wA, hA];
2439
2441
  function Ve(t) {
2440
2442
  const A = t.filter((r) => !we.includes(r.props.id)).sort((r, n) => (r.order ?? 1 / 0) - (n.order ?? 1 / 0)), e = we.map((r) => t.find((n) => n.props.id === r)).filter((r) => !!r);
2441
2443
  return [...A, ...e];
@@ -2451,20 +2453,20 @@ function bi(t) {
2451
2453
  ...i
2452
2454
  } = t, A[0] = t, A[1] = e, A[2] = r, A[3] = n, A[4] = i) : (e = A[1], r = A[2], n = A[3], i = A[4]);
2453
2455
  let o;
2454
- A[5] !== e ? (o = (O) => O.maps[e].basemap, A[5] = e, A[6] = o) : o = A[6];
2456
+ A[5] !== e ? (o = (L) => L.maps[e].basemap, A[5] = e, A[6] = o) : o = A[6];
2455
2457
  const s = I(o);
2456
- let a;
2457
- A[7] !== e ? (a = (O) => O.maps[e].instanceRef, A[7] = e, A[8] = a) : a = A[8];
2458
- const l = I(a);
2459
- let c;
2460
- A[9] !== e ? (c = (O) => O.maps[e].overlayRef, A[9] = e, A[10] = c) : c = A[10];
2461
- const f = I(c), h = TA(null);
2462
- let p;
2463
- A[11] !== e ? (p = (O) => O.viewStates[e], A[11] = e, A[12] = p) : p = A[12];
2464
- const d = I(p);
2458
+ let l;
2459
+ A[7] !== e ? (l = (L) => L.maps[e].instanceRef, A[7] = e, A[8] = l) : l = A[8];
2460
+ const a = I(l);
2461
+ let f;
2462
+ A[9] !== e ? (f = (L) => L.maps[e].overlayRef, A[9] = e, A[10] = f) : f = A[10];
2463
+ const p = I(f), c = TA(null);
2464
+ let h;
2465
+ A[11] !== e ? (h = (L) => L.viewStates[e], A[11] = e, A[12] = h) : h = A[12];
2466
+ const g = I(h);
2465
2467
  let w;
2466
- A[13] !== e ? (w = (O) => O.maps[e].controller, A[13] = e, A[14] = w) : w = A[14];
2467
- const b = I(w), u = I(Qr), g = I(Ir), m = I(Lr), v = I(Tr), y = I(Pr);
2468
+ A[13] !== e ? (w = (L) => L.maps[e].controller, A[13] = e, A[14] = w) : w = A[14];
2469
+ const b = I(w), u = I(Qr), d = I(Ir), m = I(Lr), v = I(Tr), y = I(Pr);
2468
2470
  let k;
2469
2471
  A[15] !== e ? (k = {
2470
2472
  mapId: e
@@ -2474,36 +2476,36 @@ function bi(t) {
2474
2476
  A[17] !== B ? (M = Ve(B), A[17] = B, A[18] = M) : M = A[18];
2475
2477
  const C = M;
2476
2478
  let S;
2477
- A[19] !== e || A[20] !== n || A[21] !== g || A[22] !== y ? (S = (O) => {
2478
- const z = g;
2479
- if (h.current && clearInterval(h.current), h.current = setTimeout(() => {
2479
+ A[19] !== e || A[20] !== n || A[21] !== d || A[22] !== y ? (S = (L) => {
2480
+ const z = d;
2481
+ if (c.current && clearInterval(c.current), c.current = setTimeout(() => {
2480
2482
  y(e);
2481
2483
  }, xr), n) {
2482
- n(O, z);
2484
+ n(L, z);
2483
2485
  return;
2484
2486
  }
2485
- z(e, O.viewState);
2486
- }, A[19] = e, A[20] = n, A[21] = g, A[22] = y, A[23] = S) : S = A[23];
2487
- const P = S;
2487
+ z(e, L.viewState);
2488
+ }, A[19] = e, A[20] = n, A[21] = d, A[22] = y, A[23] = S) : S = A[23];
2489
+ const x = S;
2488
2490
  let D;
2489
- A[24] !== e || A[25] !== r || A[26] !== m || A[27] !== y ? (D = (O) => {
2490
- m(e, O), r?.(O), y(e);
2491
+ A[24] !== e || A[25] !== r || A[26] !== m || A[27] !== y ? (D = (L) => {
2492
+ m(e, L), r?.(L), y(e);
2491
2493
  }, A[24] = e, A[25] = r, A[26] = m, A[27] = y, A[28] = D) : D = A[28];
2492
- const x = D;
2494
+ const P = D;
2493
2495
  let R;
2494
- A[29] !== u || A[30] !== e || A[31] !== i || A[32] !== v ? (R = (O) => {
2495
- const G = !!u(e)?.props.layers?.every(Dr);
2496
- v(e, G), i.onAfterRender?.(O);
2496
+ A[29] !== u || A[30] !== e || A[31] !== i || A[32] !== v ? (R = (L) => {
2497
+ const U = !!u(e)?.props.layers?.every(Dr);
2498
+ v(e, U), i.onAfterRender?.(L);
2497
2499
  }, A[29] = u, A[30] = e, A[31] = i, A[32] = v, A[33] = R) : R = A[33];
2498
2500
  const N = R, E = i.onDragEnd;
2499
2501
  let _;
2500
- A[34] !== E || A[35] !== e || A[36] !== y ? (_ = (...O) => {
2501
- const z = O;
2502
+ A[34] !== E || A[35] !== e || A[36] !== y ? (_ = (...L) => {
2503
+ const z = L;
2502
2504
  y(e), E && E(...z);
2503
2505
  }, A[34] = E, A[35] = e, A[36] = y, A[37] = _) : _ = A[37];
2504
2506
  const T = _;
2505
- let L;
2506
- return A[38] !== s || A[39] !== C || A[40] !== b || A[41] !== N || A[42] !== T || A[43] !== x || A[44] !== P || A[45] !== e || A[46] !== l || A[47] !== f || A[48] !== i || A[49] !== d ? (L = /* @__PURE__ */ Y(f0, { ...i, controller: b, id: e, layers: C, instanceRef: l, overlayRef: f, basemap: s, initialViewState: d, onLoad: x, onViewStateChange: P, onAfterRender: N, onDragEnd: T }), A[38] = s, A[39] = C, A[40] = b, A[41] = N, A[42] = T, A[43] = x, A[44] = P, A[45] = e, A[46] = l, A[47] = f, A[48] = i, A[49] = d, A[50] = L) : L = A[50], L;
2507
+ let O;
2508
+ return A[38] !== s || A[39] !== C || A[40] !== b || A[41] !== N || A[42] !== T || A[43] !== P || A[44] !== x || A[45] !== e || A[46] !== a || A[47] !== p || A[48] !== i || A[49] !== g ? (O = /* @__PURE__ */ Y(f0, { ...i, controller: b, id: e, layers: C, instanceRef: a, overlayRef: p, basemap: s, initialViewState: g, onLoad: P, onViewStateChange: x, onAfterRender: N, onDragEnd: T }), A[38] = s, A[39] = C, A[40] = b, A[41] = N, A[42] = T, A[43] = P, A[44] = x, A[45] = e, A[46] = a, A[47] = p, A[48] = i, A[49] = g, A[50] = O) : O = A[50], O;
2507
2509
  }
2508
2510
  function Dr(t) {
2509
2511
  return t?.isLoaded;
@@ -2523,7 +2525,7 @@ function Ir(t) {
2523
2525
  function Qr(t) {
2524
2526
  return t.getDeckInstance;
2525
2527
  }
2526
- const te = "https://gcp-us-east1.api.carto.com", re = "v3", Or = "ps", wA = {
2528
+ const te = "https://gcp-us-east1.api.carto.com", re = "v3", Or = "ps", yA = {
2527
2529
  get: "GET",
2528
2530
  post: "POST"
2529
2531
  };
@@ -2552,8 +2554,8 @@ function Ur() {
2552
2554
  return !!u && typeof u == "object";
2553
2555
  }
2554
2556
  function e(u) {
2555
- var g = Object.prototype.toString.call(u);
2556
- return g === "[object RegExp]" || g === "[object Date]" || i(u);
2557
+ var d = Object.prototype.toString.call(u);
2558
+ return d === "[object RegExp]" || d === "[object Date]" || i(u);
2557
2559
  }
2558
2560
  var r = typeof Symbol == "function" && Symbol.for, n = r ? Symbol.for("react.element") : 60103;
2559
2561
  function i(u) {
@@ -2562,54 +2564,54 @@ function Ur() {
2562
2564
  function o(u) {
2563
2565
  return Array.isArray(u) ? [] : {};
2564
2566
  }
2565
- function s(u, g) {
2566
- return g.clone !== !1 && g.isMergeableObject(u) ? w(o(u), u, g) : u;
2567
+ function s(u, d) {
2568
+ return d.clone !== !1 && d.isMergeableObject(u) ? w(o(u), u, d) : u;
2567
2569
  }
2568
- function a(u, g, m) {
2569
- return u.concat(g).map(function(v) {
2570
+ function l(u, d, m) {
2571
+ return u.concat(d).map(function(v) {
2570
2572
  return s(v, m);
2571
2573
  });
2572
2574
  }
2573
- function l(u, g) {
2574
- if (!g.customMerge) return w;
2575
- var m = g.customMerge(u);
2575
+ function a(u, d) {
2576
+ if (!d.customMerge) return w;
2577
+ var m = d.customMerge(u);
2576
2578
  return typeof m == "function" ? m : w;
2577
2579
  }
2578
- function c(u) {
2579
- return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(g) {
2580
- return Object.propertyIsEnumerable.call(u, g);
2580
+ function f(u) {
2581
+ return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(d) {
2582
+ return Object.propertyIsEnumerable.call(u, d);
2581
2583
  }) : [];
2582
2584
  }
2583
- function f(u) {
2584
- return Object.keys(u).concat(c(u));
2585
+ function p(u) {
2586
+ return Object.keys(u).concat(f(u));
2585
2587
  }
2586
- function h(u, g) {
2588
+ function c(u, d) {
2587
2589
  try {
2588
- return g in u;
2590
+ return d in u;
2589
2591
  } catch {
2590
2592
  return !1;
2591
2593
  }
2592
2594
  }
2593
- function p(u, g) {
2594
- return h(u, g) && !(Object.hasOwnProperty.call(u, g) && Object.propertyIsEnumerable.call(u, g));
2595
+ function h(u, d) {
2596
+ return c(u, d) && !(Object.hasOwnProperty.call(u, d) && Object.propertyIsEnumerable.call(u, d));
2595
2597
  }
2596
- function d(u, g, m) {
2598
+ function g(u, d, m) {
2597
2599
  var v = {};
2598
- return m.isMergeableObject(u) && f(u).forEach(function(y) {
2600
+ return m.isMergeableObject(u) && p(u).forEach(function(y) {
2599
2601
  v[y] = s(u[y], m);
2600
- }), f(g).forEach(function(y) {
2601
- p(u, y) || (h(u, y) && m.isMergeableObject(g[y]) ? v[y] = l(y, m)(u[y], g[y], m) : v[y] = s(g[y], m));
2602
+ }), p(d).forEach(function(y) {
2603
+ h(u, y) || (c(u, y) && m.isMergeableObject(d[y]) ? v[y] = a(y, m)(u[y], d[y], m) : v[y] = s(d[y], m));
2602
2604
  }), v;
2603
2605
  }
2604
- function w(u, g, m) {
2605
- m = m || {}, m.arrayMerge = m.arrayMerge || a, m.isMergeableObject = m.isMergeableObject || t, m.cloneUnlessOtherwiseSpecified = s;
2606
- var v = Array.isArray(g), y = Array.isArray(u), k = v === y;
2607
- return k ? v ? m.arrayMerge(u, g, m) : d(u, g, m) : s(g, m);
2606
+ function w(u, d, m) {
2607
+ m = m || {}, m.arrayMerge = m.arrayMerge || l, m.isMergeableObject = m.isMergeableObject || t, m.cloneUnlessOtherwiseSpecified = s;
2608
+ var v = Array.isArray(d), y = Array.isArray(u), k = v === y;
2609
+ return k ? v ? m.arrayMerge(u, d, m) : g(u, d, m) : s(d, m);
2608
2610
  }
2609
- w.all = function(u, g) {
2611
+ w.all = function(u, d) {
2610
2612
  if (!Array.isArray(u)) throw new Error("first argument should be an array");
2611
2613
  return u.reduce(function(m, v) {
2612
- return w(m, v, g);
2614
+ return w(m, v, d);
2613
2615
  }, {});
2614
2616
  };
2615
2617
  var b = w;
@@ -2619,7 +2621,7 @@ var Gr = Ur();
2619
2621
  const ne = /* @__PURE__ */ Nr(Gr);
2620
2622
  function be(t) {
2621
2623
  return ne({
2622
- method: wA.get,
2624
+ method: yA.get,
2623
2625
  headers: {
2624
2626
  Accept: "application/json"
2625
2627
  }
@@ -2627,7 +2629,7 @@ function be(t) {
2627
2629
  }
2628
2630
  function YA(t, A) {
2629
2631
  return ne({
2630
- method: wA.post,
2632
+ method: yA.post,
2631
2633
  headers: {
2632
2634
  Accept: "application/json",
2633
2635
  "Content-Type": "application/json"
@@ -2664,7 +2666,7 @@ async function He({
2664
2666
  body: A,
2665
2667
  accessToken: e,
2666
2668
  credentials: r,
2667
- method: n = wA.get,
2669
+ method: n = yA.get,
2668
2670
  params: i,
2669
2671
  url: o,
2670
2672
  requestOptions: {
@@ -2672,28 +2674,28 @@ async function He({
2672
2674
  } = {
2673
2675
  getMaxUrlLength: Vr
2674
2676
  },
2675
- ...a
2677
+ ...l
2676
2678
  }) {
2677
- let l = Rr({
2679
+ let a = Rr({
2678
2680
  url: o,
2679
2681
  params: i
2680
- }), c = A, f = n;
2681
- n === wA.get && l.length > s && (c = i, f = wA.post, l = o);
2682
- const h = jr({
2683
- body: c,
2682
+ }), f = A, p = n;
2683
+ n === yA.get && a.length > s && (f = i, p = yA.post, a = o);
2684
+ const c = jr({
2685
+ body: f,
2684
2686
  accessToken: e ?? r?.accessToken,
2685
- method: f,
2686
- ...a
2687
+ method: p,
2688
+ ...l
2687
2689
  });
2688
- t && (h.signal = t);
2689
- const p = await fetch(l, h);
2690
- if (!p.ok) {
2691
- const d = await p.text();
2692
- throw new Error(d);
2690
+ t && (c.signal = t);
2691
+ const h = await fetch(a, c);
2692
+ if (!h.ok) {
2693
+ const g = await h.text();
2694
+ throw new Error(g);
2693
2695
  }
2694
- return p.status === 204 ? Promise.resolve() : await p.json();
2696
+ return h.status === 204 ? Promise.resolve() : await h.json();
2695
2697
  }
2696
- const iA = {
2698
+ const sA = {
2697
2699
  INIT: "init",
2698
2700
  LOAD_GEOJSON: "loadGeoJSON",
2699
2701
  GET_FORMULA: "getFormula",
@@ -2741,7 +2743,7 @@ class Yr extends Qe {
2741
2743
  }
2742
2744
  getFormula({
2743
2745
  column: A = "*",
2744
- operation: e = yA.Count,
2746
+ operation: e = bA.Count,
2745
2747
  joinOperation: r,
2746
2748
  filters: n,
2747
2749
  filterOwner: i,
@@ -2752,16 +2754,16 @@ class Yr extends Qe {
2752
2754
  return Promise.resolve({
2753
2755
  value: null
2754
2756
  });
2755
- if (e === yA.Custom)
2757
+ if (e === bA.Custom)
2756
2758
  throw new Error("Custom aggregation not supported for geojson");
2757
- (A && A !== "*" || e !== yA.Count) && pA(s, A);
2758
- const a = DA[e];
2759
- return BA(a, `Unsupported aggregation operation: ${e}`), Promise.resolve({
2760
- value: a(s.map((l) => l?.properties), A, r)
2759
+ (A && A !== "*" || e !== bA.Count) && dA(s, A);
2760
+ const l = DA[e];
2761
+ return _A(l, `Unsupported aggregation operation: ${e}`), Promise.resolve({
2762
+ value: l(s.map((a) => a?.properties), A, r)
2761
2763
  });
2762
2764
  }
2763
2765
  getHistogram({
2764
- operation: A = yA.Count,
2766
+ operation: A = bA.Count,
2765
2767
  ticks: e,
2766
2768
  column: r,
2767
2769
  joinOperation: n,
@@ -2769,10 +2771,10 @@ class Yr extends Qe {
2769
2771
  filterOwner: o,
2770
2772
  spatialFilter: s
2771
2773
  }) {
2772
- const a = this._getFilteredFeatures(s, i, o);
2773
- return a.length ? (pA(a, r), Promise.resolve(Ft({
2774
- data: a,
2775
- valuesColumns: bA(r),
2774
+ const l = this._getFilteredFeatures(s, i, o);
2775
+ return l.length ? (dA(l, r), Promise.resolve(Ft({
2776
+ data: l,
2777
+ valuesColumns: vA(r),
2776
2778
  joinOperation: n,
2777
2779
  ticks: e,
2778
2780
  operation: A
@@ -2780,33 +2782,33 @@ class Yr extends Qe {
2780
2782
  }
2781
2783
  getCategories({
2782
2784
  column: A,
2783
- operation: e = yA.Count,
2785
+ operation: e = bA.Count,
2784
2786
  operationColumn: r,
2785
2787
  joinOperation: n,
2786
2788
  filters: i,
2787
2789
  filterOwner: o,
2788
2790
  spatialFilter: s,
2789
- othersThreshold: a,
2790
- orderBy: l = "frequency_desc",
2791
- rawResult: c
2791
+ othersThreshold: l,
2792
+ orderBy: a = "frequency_desc",
2793
+ rawResult: f
2792
2794
  }) {
2793
- const f = this._getFilteredFeatures(s, i, o);
2794
- if (!f.length)
2795
+ const p = this._getFilteredFeatures(s, i, o);
2796
+ if (!p.length)
2795
2797
  return Promise.resolve([]);
2796
- pA(f, A, r);
2797
- const h = Rt({
2798
- data: f,
2799
- valuesColumns: bA(r ?? A),
2798
+ dA(p, A, r);
2799
+ const c = Rt({
2800
+ data: p,
2801
+ valuesColumns: vA(r ?? A),
2800
2802
  joinOperation: n,
2801
2803
  keysColumn: A,
2802
2804
  operation: e,
2803
- othersThreshold: a,
2804
- orderBy: l
2805
+ othersThreshold: l,
2806
+ orderBy: a
2805
2807
  });
2806
- return c ? Promise.resolve(h) : a ? Promise.resolve([...h?.rows ?? [], {
2808
+ return f ? Promise.resolve(c) : l ? Promise.resolve([...c?.rows ?? [], {
2807
2809
  name: Nt,
2808
- value: h?.metadata?.others ?? 0
2809
- }]) : Promise.resolve(h?.rows ?? []);
2810
+ value: c?.metadata?.others ?? 0
2811
+ }]) : Promise.resolve(c?.rows ?? []);
2810
2812
  }
2811
2813
  getScatter({
2812
2814
  xAxisColumn: A,
@@ -2817,12 +2819,12 @@ class Yr extends Qe {
2817
2819
  filterOwner: o,
2818
2820
  spatialFilter: s
2819
2821
  }) {
2820
- const a = this._getFilteredFeatures(s, i, o);
2821
- return a.length ? (pA(a, A, e), Promise.resolve(Ut({
2822
- data: a,
2823
- xAxisColumns: bA(A),
2822
+ const l = this._getFilteredFeatures(s, i, o);
2823
+ return l.length ? (dA(l, A, e), Promise.resolve(Ut({
2824
+ data: l,
2825
+ xAxisColumns: vA(A),
2824
2826
  xAxisJoinOperation: r,
2825
- yAxisColumns: bA(e),
2827
+ yAxisColumns: vA(e),
2826
2828
  yAxisJoinOperation: n
2827
2829
  }))) : Promise.resolve([]);
2828
2830
  }
@@ -2834,33 +2836,33 @@ class Yr extends Qe {
2834
2836
  sortDirection: i,
2835
2837
  sortByColumnType: o,
2836
2838
  offset: s = 0,
2837
- limit: a = 10,
2838
- filters: l,
2839
- filterOwner: c,
2840
- spatialFilter: f
2839
+ limit: l = 10,
2840
+ filters: a,
2841
+ filterOwner: f,
2842
+ spatialFilter: p
2841
2843
  }) {
2842
- let h = this._getFilteredFeatures(f, l, c);
2843
- if (!h.length)
2844
+ let c = this._getFilteredFeatures(p, a, f);
2845
+ if (!c.length)
2844
2846
  return Promise.resolve({
2845
2847
  rows: [],
2846
2848
  totalCount: 0
2847
2849
  });
2848
- e && r && (console.warn('WidgetGeoJsonSource: "searchFilterText" is deprecated, use "filters" and FilterType.STRING_SEARCH instead.'), h = h.filter((w) => w[e] && String(w[e]).toLowerCase().includes(String(r).toLowerCase())));
2849
- let p = Gt(h, {
2850
+ e && r && (console.warn('WidgetGeoJsonSource: "searchFilterText" is deprecated, use "filters" and FilterType.STRING_SEARCH instead.'), c = c.filter((w) => w[e] && String(w[e]).toLowerCase().includes(String(r).toLowerCase())));
2851
+ let h = Gt(c, {
2850
2852
  sortBy: n,
2851
2853
  sortByDirection: i,
2852
2854
  sortByColumnType: o
2853
2855
  });
2854
- const d = p.length;
2855
- return p = p.slice(Math.min(s, d), Math.min(s + a, d)), p = p.map((w) => {
2856
+ const g = h.length;
2857
+ return h = h.slice(Math.min(s, g), Math.min(s + l, g)), h = h.map((w) => {
2856
2858
  const b = {};
2857
2859
  if (w)
2858
2860
  for (const u of A)
2859
2861
  b[u] = w[u];
2860
2862
  return b;
2861
2863
  }), Promise.resolve({
2862
- rows: p,
2863
- totalCount: d
2864
+ rows: h,
2865
+ totalCount: g
2864
2866
  });
2865
2867
  }
2866
2868
  getTimeSeries({
@@ -2871,24 +2873,24 @@ class Yr extends Qe {
2871
2873
  joinOperation: i,
2872
2874
  filters: o,
2873
2875
  filterOwner: s,
2874
- spatialFilter: a
2876
+ spatialFilter: l
2875
2877
  }) {
2876
- const l = this._getFilteredFeatures(a, o, s);
2877
- if (!l.length)
2878
+ const a = this._getFilteredFeatures(l, o, s);
2879
+ if (!a.length)
2878
2880
  return Promise.resolve({
2879
2881
  rows: []
2880
2882
  });
2881
- pA(l, A, n), BA(r !== "custom", "Custom operation not supported for geojson");
2882
- const c = zt({
2883
- data: l,
2884
- valuesColumns: bA(n ?? A),
2883
+ dA(a, A, n), _A(r !== "custom", "Custom operation not supported for geojson");
2884
+ const f = zt({
2885
+ data: a,
2886
+ valuesColumns: vA(n ?? A),
2885
2887
  keysColumn: A,
2886
2888
  groupType: e,
2887
2889
  operation: r,
2888
2890
  joinOperation: i
2889
2891
  }) ?? [];
2890
2892
  return Promise.resolve({
2891
- rows: c
2893
+ rows: f
2892
2894
  });
2893
2895
  }
2894
2896
  getRange({
@@ -2898,7 +2900,7 @@ class Yr extends Qe {
2898
2900
  spatialFilter: n
2899
2901
  }) {
2900
2902
  const i = this._getFilteredFeatures(n, e, r);
2901
- return i.length ? (pA(i, A), Promise.resolve({
2903
+ return i.length ? (dA(i, A), Promise.resolve({
2902
2904
  min: DA.min(i, A),
2903
2905
  max: DA.max(i, A)
2904
2906
  })) : Promise.resolve(null);
@@ -2914,18 +2916,18 @@ class Yr extends Qe {
2914
2916
  return Promise.resolve({
2915
2917
  rows: []
2916
2918
  });
2917
- BA(typeof A != "string", "Unsupported geojson SQL aggregation");
2919
+ _A(typeof A != "string", "Unsupported geojson SQL aggregation");
2918
2920
  const o = {}, s = /* @__PURE__ */ new Set();
2919
2921
  for (const {
2920
- column: a,
2921
- operation: l,
2922
- alias: c
2922
+ column: l,
2923
+ operation: a,
2924
+ alias: f
2923
2925
  } of A) {
2924
- (a && a !== "*" || l !== yA.Count) && pA(i, a);
2925
- const f = c.toLowerCase();
2926
- BA(!s.has(f), `Duplicate alias: ${f}`), s.add(f);
2927
- const h = DA[l];
2928
- BA(h, `Unsupported operation: ${l}`), o[c] = h(i, a);
2926
+ (l && l !== "*" || a !== bA.Count) && dA(i, l);
2927
+ const p = f.toLowerCase();
2928
+ _A(!s.has(p), `Duplicate alias: ${p}`), s.add(p);
2929
+ const c = DA[a];
2930
+ _A(c, `Unsupported operation: ${a}`), o[f] = c(i, l);
2929
2931
  }
2930
2932
  return Promise.resolve({
2931
2933
  rows: [o]
@@ -2946,16 +2948,16 @@ class Yr extends Qe {
2946
2948
  return jt(n.map((i) => i.properties ?? {}), Vt(r, e ?? this.props.filters), this.props.filtersLogicalOperator ?? "and");
2947
2949
  }
2948
2950
  }
2949
- function BA(t, A) {
2951
+ function _A(t, A) {
2950
2952
  if (!t)
2951
2953
  throw new Error(A);
2952
2954
  }
2953
- function pA(t, ...A) {
2954
- const e = Array.from(new Set(A.map(bA).flat())), r = Object.keys(t[0] ?? {}), n = e.filter((i) => i && !r.includes(i));
2955
+ function dA(t, ...A) {
2956
+ const e = Array.from(new Set(A.map(vA).flat())), r = Object.keys(t[0] ?? {}), n = e.filter((i) => i && !r.includes(i));
2955
2957
  if (n.length)
2956
2958
  throw new Error(`Missing column(s): ${n.join(", ")}`);
2957
2959
  }
2958
- function bA(t) {
2960
+ function vA(t) {
2959
2961
  return Array.isArray(t) ? t : typeof t == "string" ? [t] : [];
2960
2962
  }
2961
2963
  const Ye = '(function(){"use strict";const Ln={INIT:"init"};var Je=(function(u){u=u||{};var o=typeof u<"u"?u:{},h={},c;for(c in o)o.hasOwnProperty(c)&&(h[c]=o[c]);var w="";function m(W){return o.locateFile?o.locateFile(W,w):w+W}var k;typeof document<"u"&&document.currentScript&&(w=document.currentScript.src),w.indexOf("blob:")!==0?w=w.substr(0,w.lastIndexOf("/")+1):w="",k=function(AA,fA,tA){var e=new XMLHttpRequest;e.open("GET",AA,!0),e.responseType="arraybuffer",e.onload=function(){if(e.status==200||e.status==0&&e.response){fA(e.response);return}var zA=nr(AA);if(zA){fA(zA.buffer);return}tA()},e.onerror=tA,e.send(null)};var C=o.print||console.log.bind(console),_=o.printErr||console.warn.bind(console);for(c in h)h.hasOwnProperty(c)&&(o[c]=h[c]);h=null,o.arguments&&o.arguments;var P=0,Y=function(W){P=W},O=function(){return P},q=8;function J(W,AA,fA,tA){switch(fA=fA||"i8",fA.charAt(fA.length-1)==="*"&&(fA="i32"),fA){case"i1":I[W>>0]=AA;break;case"i8":I[W>>0]=AA;break;case"i16":V[W>>1]=AA;break;case"i32":L[W>>2]=AA;break;case"i64":ir=[AA>>>0,(ve=AA,+E0(ve)>=1?ve>0?(ao(+JA(ve/4294967296),4294967295)|0)>>>0:~~+f0((ve-+(~~ve>>>0))/4294967296)>>>0:0)],L[W>>2]=ir[0],L[W+4>>2]=ir[1];break;case"float":U[W>>2]=AA;break;case"double":H[W>>3]=AA;break;default:be("invalid type for setValue: "+fA)}}function oA(W,AA,fA){switch(AA=AA||"i8",AA.charAt(AA.length-1)==="*"&&(AA="i32"),AA){case"i1":return I[W>>0];case"i8":return I[W>>0];case"i16":return V[W>>1];case"i32":return L[W>>2];case"i64":return L[W>>2];case"float":return U[W>>2];case"double":return H[W>>3];default:be("invalid type for getValue: "+AA)}return null}var lA=!1;function gA(W,AA){W||be("Assertion failed: "+AA)}function aA(W){var AA=o["_"+W];return gA(AA,"Cannot call unknown function "+W+", make sure it is exported"),AA}function Z(W,AA,fA,tA,e){var E={string:function(OA){var x0=0;if(OA!=null&&OA!==0){var dt=(OA.length<<2)+1;x0=Li(dt),B(OA,x0,dt)}return x0},array:function(OA){var x0=Li(OA.length);return M(OA,x0),x0}};function zA(OA){return AA==="string"?GA(OA):AA==="boolean"?!!OA:OA}var VA=aA(W),s0=[],IA=0;if(tA)for(var YA=0;YA<tA.length;YA++){var W0=E[fA[YA]];W0?(IA===0&&(IA=Po()),s0[YA]=W0(tA[YA])):s0[YA]=tA[YA]}var jA=VA.apply(null,s0);return jA=zA(jA),IA!==0&&Mo(IA),jA}function RA(W,AA,fA,tA){fA=fA||[];var e=fA.every(function(zA){return zA==="number"}),E=AA!=="string";return E&&e&&!tA?aA(W):function(){return Z(W,AA,fA,arguments)}}var FA=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function TA(W,AA,fA){for(var tA=AA+fA,e=AA;W[e]&&!(e>=tA);)++e;if(e-AA>16&&W.subarray&&FA)return FA.decode(W.subarray(AA,e));for(var E="";AA<e;){var zA=W[AA++];if(!(zA&128)){E+=String.fromCharCode(zA);continue}var VA=W[AA++]&63;if((zA&224)==192){E+=String.fromCharCode((zA&31)<<6|VA);continue}var s0=W[AA++]&63;if((zA&240)==224?zA=(zA&15)<<12|VA<<6|s0:zA=(zA&7)<<18|VA<<12|s0<<6|W[AA++]&63,zA<65536)E+=String.fromCharCode(zA);else{var IA=zA-65536;E+=String.fromCharCode(55296|IA>>10,56320|IA&1023)}}return E}function GA(W,AA){return W?TA(N,W,AA):""}function XA(W,AA,fA,tA){if(!(tA>0))return 0;for(var e=fA,E=fA+tA-1,zA=0;zA<W.length;++zA){var VA=W.charCodeAt(zA);if(VA>=55296&&VA<=57343){var s0=W.charCodeAt(++zA);VA=65536+((VA&1023)<<10)|s0&1023}if(VA<=127){if(fA>=E)break;AA[fA++]=VA}else if(VA<=2047){if(fA+1>=E)break;AA[fA++]=192|VA>>6,AA[fA++]=128|VA&63}else if(VA<=65535){if(fA+2>=E)break;AA[fA++]=224|VA>>12,AA[fA++]=128|VA>>6&63,AA[fA++]=128|VA&63}else{if(fA+3>=E)break;AA[fA++]=240|VA>>18,AA[fA++]=128|VA>>12&63,AA[fA++]=128|VA>>6&63,AA[fA++]=128|VA&63}}return AA[fA]=0,fA-e}function B(W,AA,fA){return XA(W,N,AA,fA)}typeof TextDecoder<"u"&&new TextDecoder("utf-16le");function M(W,AA){I.set(W,AA)}function Q(W,AA){return W%AA>0&&(W+=AA-W%AA),W}var R,I,N,V,L,U,H;function j(W){R=W,o.HEAP8=I=new Int8Array(W),o.HEAP16=V=new Int16Array(W),o.HEAP32=L=new Int32Array(W),o.HEAPU8=N=new Uint8Array(W),o.HEAPU16=new Uint16Array(W),o.HEAPU32=new Uint32Array(W),o.HEAPF32=U=new Float32Array(W),o.HEAPF64=H=new Float64Array(W)}var $=5271520,mA=28608,vA=o.TOTAL_MEMORY||33554432;o.buffer?R=o.buffer:R=new ArrayBuffer(vA),vA=R.byteLength,j(R),L[mA>>2]=$;function NA(W){for(;W.length>0;){var AA=W.shift();if(typeof AA=="function"){AA();continue}var fA=AA.func;typeof fA=="number"?AA.arg===void 0?o.dynCall_v(fA):o.dynCall_vi(fA,AA.arg):fA(AA.arg===void 0?null:AA.arg)}}var ZA=[],e0=[],UA=[],HA=[];function n0(){if(o.preRun)for(typeof o.preRun=="function"&&(o.preRun=[o.preRun]);o.preRun.length;)d0(o.preRun.shift());NA(ZA)}function ye(){NA(e0)}function Ue(){NA(UA)}function ze(){if(o.postRun)for(typeof o.postRun=="function"&&(o.postRun=[o.postRun]);o.postRun.length;)se(o.postRun.shift());NA(HA)}function d0(W){ZA.unshift(W)}function se(W){HA.unshift(W)}var E0=Math.abs,f0=Math.ceil,JA=Math.floor,ao=Math.min,oe=0,Ye=null;function go(W){oe++,o.monitorRunDependencies&&o.monitorRunDependencies(oe)}function co(W){if(oe--,o.monitorRunDependencies&&o.monitorRunDependencies(oe),oe==0&&Ye){var AA=Ye;Ye=null,AA()}}o.preloadedImages={},o.preloadedAudios={};var U0=null,rr="data:application/octet-stream;base64,";function Oi(W){return String.prototype.startsWith?W.startsWith(rr):W.indexOf(rr)===0}var ve,ir;U0="data:application/octet-stream;base64,AAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAAAQAAAAQAAAADAAAABgAAAAUAAAACAAAAAAAAAAIAAAADAAAAAQAAAAQAAAAGAAAAAAAAAAUAAAADAAAABgAAAAQAAAAFAAAAAAAAAAEAAAACAAAABAAAAAUAAAAGAAAAAAAAAAIAAAADAAAAAQAAAAUAAAACAAAAAAAAAAEAAAADAAAABgAAAAQAAAAGAAAAAAAAAAUAAAACAAAAAQAAAAQAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAIAAAADAAAAAAAAAAAAAAACAAAAAAAAAAEAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAYAAAAAAAAABQAAAAAAAAAAAAAABAAAAAUAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAAAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAAAAAAAQAAAAMAAAAEAAAABQAAAAYAAAAAAAAAAQAAAAIAAAAEAAAABQAAAAYAAAAAAAAAAQAAAAIAAAADAAAABQAAAAYAAAAAAAAAAQAAAAIAAAADAAAABAAAAAYAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAYAAAAAAAAAAwAAAAIAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAFAAAABAAAAAAAAAABAAAAAAAAAAAAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAYAAAAAAAAABAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAgAAAAQAAAADAAAACAAAAAEAAAAHAAAABgAAAAkAAAAAAAAAAwAAAAIAAAACAAAA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AAAAAAAAAAAFAAAAAQAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAABAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAADAAAABQAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAEAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAFAAAABQAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAABAAAAAwAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAFAAAABQAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAwAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAwAAAAAAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAwAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAFAAAAAAAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAABAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAFAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAFAAAAAAAAAAAAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAUAAAABAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAABAAAAAUAAAABAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAIAAAAFAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAADAAAAAQAAAAAAAAABAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAD/////AQAAAAAAAAADAAAABAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAUAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAUAAAABAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAEAAAD//////////wEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAACAAAAAAAAAAAAAAABAAAAAgAAAAYAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAQAAAAEAAAAFAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAACAAAAAAAAAAAAAAABAAAAAwAAAAcAAAAGAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAABwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAADgAAAAIAAAAAAAAAAAAAAAEAAAAAAAAACQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAMAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAIAAAAAAAAAAAAAAAEAAAAEAAAACAAAAAoAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAACQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAAgAAAAAAAAAAAAAAAQAAAAsAAAAPAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAIAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAgAAAAAAAAAAAAAAAQAAAAwAAAAQAAAADAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAADwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAACAAAAAAAAAAAAAAABAAAACgAAABMAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAQAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAIAAAAAAAAAAAAAAAEAAAANAAAAEQAAAA0AAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAATAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAACAAAAAAAAAAAAAAABAAAADgAAABIAAAAPAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAASAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEwAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAATAAAAAgAAAAAAAAAAAAAAAQAAAP//////////EwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAASAAAAAAAAABgAAAAAAAAAIQAAAAAAAAAeAAAAAAAAACAAAAADAAAAMQAAAAEAAAAwAAAAAwAAADIAAAADAAAACAAAAAAAAAAFAAAABQAAAAoAAAAFAAAAFgAAAAAAAAAQAAAAAAAAABIAAAAAAAAAKQAAAAEAAAAhAAAAAAAAAB4AAAAAAAAABAAAAAAAAAAAAAAABQAAAAIAAAAFAAAADwAAAAEAAAAIAAAAAAAAAAUAAAAFAAAAHwAAAAEAAAAWAAAAAAAAABAAAAAAAAAAAgAAAAAAAAAGAAAAAAAAAA4AAAAAAAAACgAAAAAAAAALAAAAAAAAABEAAAADAAAAGAAAAAEAAAAXAAAAAwAAABkAAAADAAAAAAAAAAAAAAABAAAABQAAAAkAAAAFAAAABQAAAAAAAAACAAAAAAAAAAYAAAAAAAAAEgAAAAEAAAAKAAAAAAAAAAsAAAAAAAAABAAAAAEAAAADAAAABQAAAAcAAAAFAAAACAAAAAEAAAAAAAAAAAAAAAEAAAAFAAAAEAAAAAEAAAAFAAAAAAAAAAIAAAAAAAAABwAAAAAAAAAVAAAAAAAAACYAAAAAAAAACQAAAAAAAAATAAAAAAAAACIAAAADAAAADgAAAAEAAAAUAAAAAwAAACQAAAADAAAAAwAAAAAAAAANAAAABQAAAB0AAAAFAAAAAQAAAAAAAAAHAAAAAAAAABUAAAAAAAAABgAAAAEAAAAJAAAAAAAAABMAAAAAAAAABAAAAAIAAAAMAAAA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Zhu25b633D8c1YgmzowSQNM25BRKWARArGS08/lNxD+LFssHwmMRQLC5aNcxBgJABL9HT0WRF0CjCmJmOGEOQHsuaVzMP/s/TWJCaGGwBUCeu1PAPLzjP9nqN9DZOBNAKE4JcydbCkCGtbd1qjPzP8dgm9U8jhVAtPeKTkVwDkCeCLss5l37P401XMPLmBdAFd29VMVQDUBg0yA55h75Pz6odcYLCRdApBM4rBrkAkDyAVWgQxbRP4XDMnK20hFAymLlF7EmzD8GUgo9XBHlP3lbK7T9COc/k+OhPthhy7+YGEpnrOvCPzBFhLs15u4/epbqB6H4uz9IuuLF5svev6lzLKY31es/CaQ0envF5z8ZY0xlUADXv7zaz7HYEuI/CfbK1sn16T8uAQfWwxLWPzKn/YuFN94/5KdbC1AFu793fyCSnlfvPzK2y4doAMY/NRg5t1/X6b/shq4QJaHDP5yNIAKPOeI/vpn7BSE30r/X4YQrO6nrv78Ziv/Thto/DqJ1Y6+y5z9l51NaxFrlv8QlA65HOLS/86dxiEc96z+Hj0+LFjneP6LzBZ8LTc2/DaJ1Y6+y579l51NaxFrlP8QlA65HOLQ/8qdxiEc967+Jj0+LFjnev6LzBZ8LTc0/1qdbC1AFuz93fyCSnlfvvzK2y4doAMa/NRg5t1/X6T/vhq4QJaHDv5yNIAKPOeK/wJn7BSE30j/W4YQrO6nrP78Ziv/Thtq/CaQ0envF578XY0xlUADXP7zaz7HYEuK/CvbK1sn16b8rAQfWwxLWvzKn/YuFN96/zWLlF7EmzL8GUgo9XBHlv3lbK7T9COe/kOOhPthhyz+cGEpnrOvCvzBFhLs15u6/c5bqB6H4u79IuuLF5sveP6lzLKY31eu/AQAAAP////8HAAAA/////zEAAAD/////VwEAAP////9hCQAA/////6dBAAD/////kcsBAP/////3kAwA/////8H2VwAAAAAAAAAAAAAAAAACAAAA/////w4AAAD/////YgAAAP////+uAgAA/////8ISAAD/////ToMAAP////8ilwMA/////+4hGQD/////gu2vAAAAAAAAAAAAAAAAAAAAAAACAAAA//////////8BAAAAAwAAAP//////////////////////////////////////////////////////////////////////////AQAAAAAAAAACAAAA////////////////AwAAAP//////////////////////////////////////////////////////////////////////////AQAAAAAAAAACAAAA////////////////AwAAAP//////////////////////////////////////////////////////////////////////////AQAAAAAAAAACAAAA////////////////AwAAAP//////////////////////////////////////////////////////////AgAAAP//////////AQAAAAAAAAD/////////////////////AwAAAP////////////////////////////////////////////////////8DAAAA/////////////////////wAAAAD/////////////////////AQAAAP///////////////wIAAAD///////////////////////////////8DAAAA/////////////////////wAAAAD///////////////8CAAAAAQAAAP////////////////////////////////////////////////////8DAAAA/////////////////////wAAAAD///////////////8CAAAAAQAAAP////////////////////////////////////////////////////8DAAAA/////////////////////wAAAAD///////////////8CAAAAAQAAAP////////////////////////////////////////////////////8DAAAA/////////////////////wAAAAD///////////////8CAAAAAQAAAP////////////////////////////////////////////////////8BAAAAAgAAAP///////////////wAAAAD/////////////////////AwAAAP////////////////////////////////////////////////////8BAAAAAgAAAP///////////////wAAAAD/////////////////////AwAAAP////////////////////////////////////////////////////8BAAAAAgAAAP///////////////wAAAAD/////////////////////AwAAAP////////////////////////////////////////////////////8BAAAAAgAAAP///////////////wAAAAD/////////////////////AwAAAP///////////////////////////////wIAAAD///////////////8BAAAA/////////////////////wAAAAD/////////////////////AwAAAP////////////////////////////////////////////////////8DAAAA/////////////////////wAAAAABAAAA//////////8CAAAA//////////////////////////////////////////////////////////8DAAAA////////////////AgAAAAAAAAABAAAA//////////////////////////////////////////////////////////////////////////8DAAAA////////////////AgAAAAAAAAABAAAA//////////////////////////////////////////////////////////////////////////8DAAAA////////////////AgAAAAAAAAABAAAA//////////////////////////////////////////////////////////////////////////8DAAAAAQAAAP//////////AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAIAAAABAAAAAQAAAAIAAAACAAAAAAAAAAUAAAAFAAAAAAAAAAIAAAACAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAgAAAAEAAAACAAAAAgAAAAIAAAAAAAAABQAAAAYAAAAAAAAAAgAAAAIAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAAAAAACAAAAAQAAAAMAAAACAAAAAgAAAAAAAAAFAAAABwAAAAAAAAACAAAAAgAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAAAAAAIAAAABAAAABAAAAAIAAAACAAAAAAAAAAUAAAAIAAAAAAAAAAIAAAACAAAAAwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAIAAAAAAAAAAgAAAAEAAAAAAAAAAgAAAAIAAAAAAAAABQAAAAkAAAAAAAAAAgAAAAIAAAADAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAgAAAAIAAAAAAAAAAwAAAA4AAAACAAAAAAAAAAIAAAADAAAAAAAAAAAAAAACAAAAAgAAAAMAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAACAAAAAgAAAAAAAAADAAAACgAAAAIAAAAAAAAAAgAAAAMAAAABAAAAAAAAAAIAAAACAAAAAwAAAAcAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAIAAAACAAAAAAAAAAMAAAALAAAAAgAAAAAAAAACAAAAAwAAAAIAAAAAAAAAAgAAAAIAAAADAAAACAAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAgAAAAIAAAAAAAAAAwAAAAwAAAACAAAAAAAAAAIAAAADAAAAAwAAAAAAAAACAAAAAgAAAAMAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAACAAAAAgAAAAAAAAADAAAADQAAAAIAAAAAAAAAAgAAAAMAAAAEAAAAAAAAAAIAAAACAAAAAwAAAAoAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAIAAAACAAAAAAAAAAMAAAAGAAAAAgAAAAAAAAACAAAAAwAAAA8AAAAAAAAAAgAAAAIAAAADAAAACwAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAAgAAAAIAAAAAAAAAAwAAAAcAAAACAAAAAAAAAAIAAAADAAAAEAAAAAAAAAACAAAAAgAAAAMAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAACAAAAAgAAAAAAAAADAAAACAAAAAIAAAAAAAAAAgAAAAMAAAARAAAAAAAAAAIAAAACAAAAAwAAAA0AAAAAAAAAAAAAAAAAAAAAAAAACAAAAAIAAAACAAAAAAAAAAMAAAAJAAAAAgAAAAAAAAACAAAAAwAAABIAAAAAAAAAAgAAAAIAAAADAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAAgAAAAIAAAAAAAAAAwAAAAUAAAACAAAA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ZV0gPT0gS0kAZmFjZWlqay5jAF9mYWNlSWprUGVudFRvQ2VsbEJvdW5kYXJ5AGFkamFjZW50RmFjZURpcltjZW50ZXJJSksuZmFjZV1bZmFjZTJdID09IEtJAF9mYWNlSWprVG9DZWxsQm91bmRhcnkAaDNJbmRleC5jAGNvbXBhY3RDZWxscwBsYXRMbmdUb0NlbGwAY2VsbFRvQ2hpbGRQb3MAdmFsaWRhdGVDaGlsZFBvcwBsYXRMbmcuYwBjZWxsQXJlYVJhZHMyAHBvbHlnb24tPm5leHQgPT0gTlVMTABsaW5rZWRHZW8uYwBhZGROZXdMaW5rZWRQb2x5Z29uAG5leHQgIT0gTlVMTABsb29wICE9IE5VTEwAYWRkTmV3TGlua2VkTG9vcABwb2x5Z29uLT5maXJzdCA9PSBOVUxMAGFkZExpbmtlZExvb3AAY29vcmQgIT0gTlVMTABhZGRMaW5rZWRDb29yZABsb29wLT5maXJzdCA9PSBOVUxMAGlubmVyTG9vcHMgIT0gTlVMTABub3JtYWxpemVNdWx0aVBvbHlnb24AYmJveGVzICE9IE5VTEwAY2FuZGlkYXRlcyAhPSBOVUxMAGZpbmRQb2x5Z29uRm9ySG9sZQBjYW5kaWRhdGVCQm94ZXMgIT0gTlVMTAByZXZEaXIgIT0gSU5WQUxJRF9ESUdJVABsb2NhbGlqLmMAY2VsbFRvTG9jYWxJamsAYmFzZUNlbGwgIT0gb3JpZ2luQmFzZUNlbGwAIShvcmlnaW5PblBlbnQgJiYgaW5kZXhPblBlbnQpAGJhc2VDZWxsID09IG9yaWdpbkJhc2VDZWxsAGJhc2VDZWxsICE9IElOVkFMSURfQkFTRV9DRUxMAGxvY2FsSWprVG9DZWxsACFfaXNCYXNlQ2VsbFBlbnRhZ29uKGJhc2VDZWxsKQBiYXNlQ2VsbFJvdGF0aW9ucyA+PSAwAGdyaWRQYXRoQ2VsbHMAcG9seWZpbGwuYwBpdGVyU3RlcFBvbHlnb25Db21wYWN0ADAAdmVydGV4LmMAY2VsbFRvVmVydGV4AGdyYXBoLT5idWNrZXRzICE9IE5VTEwAdmVydGV4R3JhcGguYwBpbml0VmVydGV4R3JhcGgAbm9kZSAhPSBOVUxMAGFkZFZlcnRleE5vZGU=";var wo=28624;function po(W,AA,fA,tA){be("Assertion failed: "+GA(W)+", at: "+[AA?GA(AA):"unknown filename",fA,tA?GA(tA):"unknown function"])}function Ri(){return I.length}function mo(W,AA,fA){N.set(N.subarray(AA,AA+fA),W)}function Eo(W){return o.___errno_location&&(L[o.___errno_location()>>2]=W),W}function yo(W){be("OOM")}function vo(W){try{var AA=new ArrayBuffer(W);return AA.byteLength!=W?void 0:(new Int8Array(AA).set(I),Do(AA),j(AA),1)}catch{}}function bo(W){var AA=Ri(),fA=16777216,tA=2147483648-fA;if(W>tA)return!1;for(var e=16777216,E=Math.max(AA,e);E<W;)E<=536870912?E=Q(2*E,fA):E=Math.min(Q((3*E+2147483648)/4,fA),tA);var zA=vo(E);return!!zA}var ko=typeof atob=="function"?atob:function(W){var AA="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",fA="",tA,e,E,zA,VA,s0,IA,YA=0;W=W.replace(/[^A-Za-z0-9\\+\\/\\=]/g,"");do zA=AA.indexOf(W.charAt(YA++)),VA=AA.indexOf(W.charAt(YA++)),s0=AA.indexOf(W.charAt(YA++)),IA=AA.indexOf(W.charAt(YA++)),tA=zA<<2|VA>>4,e=(VA&15)<<4|s0>>2,E=(s0&3)<<6|IA,fA=fA+String.fromCharCode(tA),s0!==64&&(fA=fA+String.fromCharCode(e)),IA!==64&&(fA=fA+String.fromCharCode(E));while(YA<W.length);return fA};function Bo(W){try{for(var AA=ko(W),fA=new Uint8Array(AA.length),tA=0;tA<AA.length;++tA)fA[tA]=AA.charCodeAt(tA);return fA}catch{throw new Error("Converting base64 string to bytes failed.")}}function nr(W){if(Oi(W))return Bo(W.slice(rr.length))}var Co={Math,Int8Array,Int32Array,Uint8Array,Float32Array,Float64Array},xo={b:Y,c:O,d:po,e:Eo,f:Ri,g:mo,h:bo,i:yo,o:wo,p:mA},rA=(function(W,AA,fA){"almost asm";var tA=new W.Int8Array(fA),e=new W.Int32Array(fA);new W.Uint8Array(fA),new W.Float32Array(fA);var E=new W.Float64Array(fA),zA=AA.o|0,VA=AA.p|0,s0=W.Math.floor,IA=W.Math.abs,YA=W.Math.sqrt,W0=W.Math.pow,jA=W.Math.cos,OA=W.Math.sin,x0=W.Math.tan,dt=W.Math.acos,_o=W.Math.asin,lr=W.Math.atan,D0=W.Math.atan2,ke=W.Math.ceil,O0=W.Math.imul,fr=W.Math.min,Qo=W.Math.max,z0=W.Math.clz32,MA=AA.b,b=AA.c,BA=AA.d,Ui=AA.e,So=AA.f,To=AA.g,Io=AA.h,Oo=AA.i,y=28640;function Ro(A){return tA=new Int8Array(A),e=new Int32Array(A),E=new Float64Array(A),fA=A,!0}function Lo(A){A=A|0;var t=0;return t=y,y=y+A|0,y=y+15&-16,t|0}function Fo(){return y|0}function No(A){A=A|0,y=A}function Go(A,t){A=A|0,y=A}function Uo(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;return(A|0)<0?(t=2,t|0):(A|0)>13780509?(t=_t(15,t)|0,t|0):(r=((A|0)<0)<<31>>31,n=l0(A|0,r|0,3,0)|0,i=b()|0,r=EA(A|0,r|0,1,0)|0,r=l0(n|0,i|0,r|0,b()|0)|0,r=EA(r|0,b()|0,1,0)|0,A=b()|0,e[t>>2]=r,e[t+4>>2]=A,t=0,t|0)}function zi(A,t,r,i){return A=A|0,t=t|0,r=r|0,i=i|0,Yi(A,t,r,i,0)|0}function Yi(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0;if(a=y,y=y+16|0,l=a,!(ji(A,t,r,i,n)|0))return i=0,y=a,i|0;do if((r|0)>=0){if((r|0)>13780509){if(s=_t(15,l)|0,s|0)break;f=l,l=e[f>>2]|0,f=e[f+4>>2]|0}else s=((r|0)<0)<<31>>31,g=l0(r|0,s|0,3,0)|0,f=b()|0,s=EA(r|0,s|0,1,0)|0,s=l0(g|0,f|0,s|0,b()|0)|0,s=EA(s|0,b()|0,1,0)|0,f=b()|0,e[l>>2]=s,e[l+4>>2]=f,l=s;if(Ae(i|0,0,l<<3|0)|0,n|0){Ae(n|0,0,l<<2|0)|0,s=R0(A,t,r,i,n,l,f,0)|0;break}s=v0(l,4)|0,s?(g=R0(A,t,r,i,s,l,f,0)|0,yA(s),s=g):s=13}else s=2;while(!1);return g=s,y=a,g|0}function ji(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0;if(S=y,y=y+16|0,x=S,D=S+8|0,d=x,e[d>>2]=A,e[d+4>>2]=t,(r|0)<0)return D=2,y=S,D|0;if(s=i,e[s>>2]=A,e[s+4>>2]=t,s=(n|0)!=0,s&&(e[n>>2]=0),WA(A,t)|0)return D=9,y=S,D|0;e[D>>2]=0;A:do if((r|0)>=1)if(s)for(p=1,g=0,v=0,d=1,s=A;;){if(!(g|v)){if(s=o0(s,t,4,D,x)|0,s|0)break A;if(t=x,s=e[t>>2]|0,t=e[t+4>>2]|0,WA(s,t)|0){s=9;break A}}if(s=o0(s,t,e[26800+(v<<2)>>2]|0,D,x)|0,s|0)break A;if(t=x,s=e[t>>2]|0,t=e[t+4>>2]|0,A=i+(p<<3)|0,e[A>>2]=s,e[A+4>>2]=t,e[n+(p<<2)>>2]=d,A=g+1|0,l=(A|0)==(d|0),f=v+1|0,a=(f|0)==6,WA(s,t)|0){s=9;break A}if(d=d+(a&l&1)|0,(d|0)>(r|0)){s=0;break}else p=p+1|0,g=l?0:A,v=l?a?0:f:v}else for(p=1,g=0,v=0,d=1,s=A;;){if(!(g|v)){if(s=o0(s,t,4,D,x)|0,s|0)break A;if(t=x,s=e[t>>2]|0,t=e[t+4>>2]|0,WA(s,t)|0){s=9;break A}}if(s=o0(s,t,e[26800+(v<<2)>>2]|0,D,x)|0,s|0)break A;if(t=x,s=e[t>>2]|0,t=e[t+4>>2]|0,A=i+(p<<3)|0,e[A>>2]=s,e[A+4>>2]=t,A=g+1|0,l=(A|0)==(d|0),f=v+1|0,a=(f|0)==6,WA(s,t)|0){s=9;break A}if(d=d+(a&l&1)|0,(d|0)>(r|0)){s=0;break}else p=p+1|0,g=l?0:A,v=l?a?0:f:v}else s=0;while(!1);return D=s,y=S,D|0}function R0(A,t,r,i,n,s,l,f){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0,l=l|0,f=f|0;var a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0;if(S=y,y=y+16|0,x=S+8|0,D=S,a=Me(A|0,t|0,s|0,l|0)|0,p=b()|0,v=i+(a<<3)|0,F=v,K=e[F>>2]|0,F=e[F+4>>2]|0,g=(K|0)==(A|0)&(F|0)==(t|0),!((K|0)==0&(F|0)==0|g))do a=EA(a|0,p|0,1,0)|0,a=De(a|0,b()|0,s|0,l|0)|0,p=b()|0,v=i+(a<<3)|0,K=v,F=e[K>>2]|0,K=e[K+4>>2]|0,g=(F|0)==(A|0)&(K|0)==(t|0);while(!((F|0)==0&(K|0)==0|g));if(a=n+(a<<2)|0,g&&(e[a>>2]|0)<=(f|0)||(K=v,e[K>>2]=A,e[K+4>>2]=t,e[a>>2]=f,(f|0)>=(r|0)))return K=0,y=S,K|0;switch(g=f+1|0,e[x>>2]=0,a=o0(A,t,2,x,D)|0,a|0){case 9:{d=9;break}case 0:{a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a||(d=9);break}}A:do if((d|0)==9){switch(e[x>>2]=0,a=o0(A,t,3,x,D)|0,a|0){case 9:break;case 0:{if(a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a|0)break A;break}default:break A}switch(e[x>>2]=0,a=o0(A,t,1,x,D)|0,a|0){case 9:break;case 0:{if(a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a|0)break A;break}default:break A}switch(e[x>>2]=0,a=o0(A,t,5,x,D)|0,a|0){case 9:break;case 0:{if(a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a|0)break A;break}default:break A}switch(e[x>>2]=0,a=o0(A,t,4,x,D)|0,a|0){case 9:break;case 0:{if(a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a|0)break A;break}default:break A}switch(e[x>>2]=0,a=o0(A,t,6,x,D)|0,a|0){case 9:break;case 0:{if(a=D,a=R0(e[a>>2]|0,e[a+4>>2]|0,r,i,n,s,l,g)|0,a|0)break A;break}default:break A}return K=0,y=S,K|0}while(!1);return K=a,y=S,K|0}function o0(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0;if(r>>>0>6)return n=1,n|0;if(v=(e[i>>2]|0)%6|0,e[i>>2]=v,(v|0)>0){s=0;do r=ue(r)|0,s=s+1|0;while((s|0)<(e[i>>2]|0))}if(v=eA(A|0,t|0,45)|0,b()|0,p=v&127,p>>>0>121)return n=5,n|0;a=y0(A,t)|0,s=eA(A|0,t|0,52)|0,b()|0,s=s&15;A:do if(!s)g=8;else{for(;;){if(l=(15-s|0)*3|0,f=eA(A|0,t|0,l|0)|0,b()|0,f=f&7,(f|0)==7){t=5;break}if(D=(M0(s)|0)==0,s=s+-1|0,d=sA(7,0,l|0)|0,t=t&~(b()|0),x=sA(e[(D?432:16)+(f*28|0)+(r<<2)>>2]|0,0,l|0)|0,l=b()|0,r=e[(D?640:224)+(f*28|0)+(r<<2)>>2]|0,A=x|A&~d,t=l|t,!r){r=0;break A}if(!s){g=8;break A}}return t|0}while(!1);(g|0)==8&&(D=e[848+(p*28|0)+(r<<2)>>2]|0,x=sA(D|0,0,45)|0,A=x|A,t=b()|0|t&-1040385,r=e[4272+(p*28|0)+(r<<2)>>2]|0,(D&127|0)==127&&(D=sA(e[848+(p*28|0)+20>>2]|0,0,45)|0,t=b()|0|t&-1040385,r=e[4272+(p*28|0)+20>>2]|0,A=he(D|A,t)|0,t=b()|0,e[i>>2]=(e[i>>2]|0)+1)),f=eA(A|0,t|0,45)|0,b()|0,f=f&127;A:do if($A(f)|0){e:do if((y0(A,t)|0)==1){if((p|0)!=(f|0))if(qi(f,e[7696+(p*28|0)>>2]|0)|0){A=Cr(A,t)|0,l=1,t=b()|0;break}else BA(27795,26864,533,26872);switch(a|0){case 3:{A=he(A,t)|0,t=b()|0,e[i>>2]=(e[i>>2]|0)+1,l=0;break e}case 5:{A=Cr(A,t)|0,t=b()|0,e[i>>2]=(e[i>>2]|0)+5,l=0;break e}case 0:return D=9,D|0;default:return D=1,D|0}}else l=0;while(!1);if((r|0)>0){s=0;do A=Br(A,t)|0,t=b()|0,s=s+1|0;while((s|0)!=(r|0))}if((p|0)!=(f|0)){if(!(hr(f)|0)){if((l|0)!=0|(y0(A,t)|0)!=5)break;e[i>>2]=(e[i>>2]|0)+1;break}switch(v&127){case 8:case 118:break A}(y0(A,t)|0)!=3&&(e[i>>2]=(e[i>>2]|0)+1)}}else if((r|0)>0){s=0;do A=he(A,t)|0,t=b()|0,s=s+1|0;while((s|0)!=(r|0))}while(!1);return e[i>>2]=((e[i>>2]|0)+r|0)%6|0,D=n,e[D>>2]=A,e[D+4>>2]=t,D=0,D|0}function zo(A,t,r,i){return A=A|0,t=t|0,r=r|0,i=i|0,Hi(A,t,r,i)|0?(Ae(i|0,0,r*48|0)|0,i=Yo(A,t,r,i)|0,i|0):(i=0,i|0)}function Hi(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0;if(D=y,y=y+16|0,d=D,x=D+8|0,v=d,e[v>>2]=A,e[v+4>>2]=t,(r|0)<0)return x=2,y=D,x|0;if(!r)return x=i,e[x>>2]=A,e[x+4>>2]=t,x=0,y=D,x|0;e[x>>2]=0;A:do if(WA(A,t)|0)A=9;else{n=0,v=A;do{if(A=o0(v,t,4,x,d)|0,A|0)break A;if(t=d,v=e[t>>2]|0,t=e[t+4>>2]|0,n=n+1|0,WA(v,t)|0){A=9;break A}}while((n|0)<(r|0));p=i,e[p>>2]=v,e[p+4>>2]=t,p=r+-1|0,g=0,A=1;do{if(n=26800+(g<<2)|0,(g|0)==5)for(l=e[n>>2]|0,s=0,n=A;;){if(A=d,A=o0(e[A>>2]|0,e[A+4>>2]|0,l,x,d)|0,A|0)break A;if((s|0)!=(p|0))if(a=d,f=e[a>>2]|0,a=e[a+4>>2]|0,A=i+(n<<3)|0,e[A>>2]=f,e[A+4>>2]=a,!(WA(f,a)|0))A=n+1|0;else{A=9;break A}else A=n;if(s=s+1|0,(s|0)>=(r|0))break;n=A}else for(l=d,a=e[n>>2]|0,f=0,n=A,s=e[l>>2]|0,l=e[l+4>>2]|0;;){if(A=o0(s,l,a,x,d)|0,A|0)break A;if(l=d,s=e[l>>2]|0,l=e[l+4>>2]|0,A=i+(n<<3)|0,e[A>>2]=s,e[A+4>>2]=l,A=n+1|0,WA(s,l)|0){A=9;break A}if(f=f+1|0,(f|0)>=(r|0))break;n=A}g=g+1|0}while(g>>>0<6);A=d,A=(v|0)==(e[A>>2]|0)&&(t|0)==(e[A+4>>2]|0)?0:9}while(!1);return x=A,y=D,x|0}function Yo(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;if(v=y,y=y+16|0,l=v,!r)return e[i>>2]=A,e[i+4>>2]=t,i=0,y=v,i|0;do if((r|0)>=0){if((r|0)>13780509){if(n=_t(15,l)|0,n|0)break;s=l,n=e[s>>2]|0,s=e[s+4>>2]|0}else n=((r|0)<0)<<31>>31,p=l0(r|0,n|0,3,0)|0,s=b()|0,n=EA(r|0,n|0,1,0)|0,n=l0(p|0,s|0,n|0,b()|0)|0,n=EA(n|0,b()|0,1,0)|0,s=b()|0,p=l,e[p>>2]=n,e[p+4>>2]=s;if(g=v0(n,8)|0,!g)n=13;else{if(p=v0(n,4)|0,!p){yA(g),n=13;break}if(n=R0(A,t,r,g,p,n,s,0)|0,n|0){yA(g),yA(p);break}if(t=e[l>>2]|0,l=e[l+4>>2]|0,(l|0)>0|(l|0)==0&t>>>0>0){n=0,f=0,a=0;do A=g+(f<<3)|0,s=e[A>>2]|0,A=e[A+4>>2]|0,!((s|0)==0&(A|0)==0)&&(e[p+(f<<2)>>2]|0)==(r|0)&&(d=i+(n<<3)|0,e[d>>2]=s,e[d+4>>2]=A,n=n+1|0),f=EA(f|0,a|0,1,0)|0,a=b()|0;while((a|0)<(l|0)|(a|0)==(l|0)&f>>>0<t>>>0)}yA(g),yA(p),n=0}}else n=2;while(!1);return d=n,y=v,d|0}function ur(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0;for(f=y,y=y+16|0,s=f,l=f+8|0,n=(WA(A,t)|0)==0,n=n?1:2;;){if(e[l>>2]=0,g=(o0(A,t,n,l,s)|0)==0,a=s,g&((e[a>>2]|0)==(r|0)?(e[a+4>>2]|0)==(i|0):0)){A=4;break}if(n=n+1|0,n>>>0>=7){n=7,A=4;break}}return(A|0)==4?(y=f,n|0):0}function jo(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0;if(f=y,y=y+48|0,n=f+16|0,s=f+8|0,l=f,r=We(r)|0,r|0)return l=r,y=f,l|0;if(g=A,a=e[g+4>>2]|0,r=s,e[r>>2]=e[g>>2],e[r+4>>2]=a,vn(s,n),r=$i(n,t,l)|0,!r){if(t=e[s>>2]|0,s=e[A+8>>2]|0,(s|0)>0){n=e[A+12>>2]|0,r=0;do t=(e[n+(r<<3)>>2]|0)+t|0,r=r+1|0;while((r|0)<(s|0))}r=l,n=e[r>>2]|0,r=e[r+4>>2]|0,s=((t|0)<0)<<31>>31,(r|0)<(s|0)|(r|0)==(s|0)&n>>>0<t>>>0?(r=l,e[r>>2]=t,e[r+4>>2]=s,r=s):t=n,a=EA(t|0,r|0,12,0)|0,g=b()|0,r=l,e[r>>2]=a,e[r+4>>2]=g,r=i,e[r>>2]=a,e[r+4>>2]=g,r=0}return g=r,y=f,g|0}function Vi(A,t,r,i,n,s,l){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0,l=l|0;var f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0,wA=0,iA=0,SA=0,KA=0,_A=0,qA=0,w0=0,In=0;if(KA=y,y=y+64|0,kA=KA+48|0,wA=KA+32|0,iA=KA+24|0,nA=KA+8|0,cA=KA,a=e[A>>2]|0,(a|0)<=0)return SA=0,y=KA,SA|0;for(uA=A+4|0,DA=kA+8|0,PA=wA+8|0,LA=nA+8|0,f=0,G=0;;){g=e[uA>>2]|0,z=g+(G<<4)|0,e[kA>>2]=e[z>>2],e[kA+4>>2]=e[z+4>>2],e[kA+8>>2]=e[z+8>>2],e[kA+12>>2]=e[z+12>>2],(G|0)==(a+-1|0)?(e[wA>>2]=e[g>>2],e[wA+4>>2]=e[g+4>>2],e[wA+8>>2]=e[g+8>>2],e[wA+12>>2]=e[g+12>>2]):(z=g+(G+1<<4)|0,e[wA>>2]=e[z>>2],e[wA+4>>2]=e[z+4>>2],e[wA+8>>2]=e[z+8>>2],e[wA+12>>2]=e[z+12>>2]),a=tl(kA,wA,i,iA)|0;A:do if(a)g=0,f=a;else if(a=iA,g=e[a>>2]|0,a=e[a+4>>2]|0,(a|0)>0|(a|0)==0&g>>>0>0){K=0,z=0;e:for(;;){if(qA=1/(+(g>>>0)+4294967296*+(a|0)),In=+E[kA>>3],a=u0(g|0,a|0,K|0,z|0)|0,w0=+(a>>>0)+4294967296*+(b()|0),_A=+(K>>>0)+4294967296*+(z|0),E[nA>>3]=qA*(In*w0)+qA*(+E[wA>>3]*_A),E[LA>>3]=qA*(+E[DA>>3]*w0)+qA*(+E[PA>>3]*_A),a=dr(nA,i,cA)|0,a|0){f=a;break}F=cA,S=e[F>>2]|0,F=e[F+4>>2]|0,d=Me(S|0,F|0,t|0,r|0)|0,p=b()|0,a=l+(d<<3)|0,v=a,g=e[v>>2]|0,v=e[v+4>>2]|0;t:do if((g|0)==0&(v|0)==0)T=a,SA=16;else for(x=0,D=0;;){if((x|0)>(r|0)|(x|0)==(r|0)&D>>>0>t>>>0){f=1;break e}if((g|0)==(S|0)&(v|0)==(F|0))break t;if(a=EA(d|0,p|0,1,0)|0,d=De(a|0,b()|0,t|0,r|0)|0,p=b()|0,D=EA(D|0,x|0,1,0)|0,x=b()|0,a=l+(d<<3)|0,v=a,g=e[v>>2]|0,v=e[v+4>>2]|0,(g|0)==0&(v|0)==0){T=a,SA=16;break}}while(!1);if((SA|0)==16&&(SA=0,!((S|0)==0&(F|0)==0))&&(D=T,e[D>>2]=S,e[D+4>>2]=F,D=s+(e[n>>2]<<3)|0,e[D>>2]=S,e[D+4>>2]=F,D=n,D=EA(e[D>>2]|0,e[D+4>>2]|0,1,0)|0,S=b()|0,F=n,e[F>>2]=D,e[F+4>>2]=S),K=EA(K|0,z|0,1,0)|0,z=b()|0,a=iA,g=e[a>>2]|0,a=e[a+4>>2]|0,!((a|0)>(z|0)|(a|0)==(z|0)&g>>>0>K>>>0)){g=1;break A}}g=0}else g=1;while(!1);if(G=G+1|0,!g){SA=21;break}if(a=e[A>>2]|0,(G|0)>=(a|0)){f=0,SA=21;break}}return(SA|0)==21?(y=KA,f|0):0}function Ho(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0,wA=0,iA=0,SA=0,KA=0,_A=0,qA=0,w0=0;if(w0=y,y=y+112|0,SA=w0+80|0,a=w0+72|0,KA=w0,_A=w0+56|0,n=We(r)|0,n|0)return qA=n,y=w0,qA|0;if(g=A+8|0,qA=L0((e[g>>2]<<5)+32|0)|0,!qA)return qA=13,y=w0,qA|0;if(Sr(A,qA),n=We(r)|0,!n){if(wA=A,iA=e[wA+4>>2]|0,n=a,e[n>>2]=e[wA>>2],e[n+4>>2]=iA,vn(a,SA),n=$i(SA,t,KA)|0,n)wA=0,iA=0;else{if(n=e[a>>2]|0,s=e[g>>2]|0,(s|0)>0){l=e[A+12>>2]|0,r=0;do n=(e[l+(r<<3)>>2]|0)+n|0,r=r+1|0;while((r|0)!=(s|0));r=n}else r=n;n=KA,s=e[n>>2]|0,n=e[n+4>>2]|0,l=((r|0)<0)<<31>>31,(n|0)<(l|0)|(n|0)==(l|0)&s>>>0<r>>>0?(n=KA,e[n>>2]=r,e[n+4>>2]=l,n=l):r=s,wA=EA(r|0,n|0,12,0)|0,iA=b()|0,n=KA,e[n>>2]=wA,e[n+4>>2]=iA,n=0}if(!n){if(r=v0(wA,8)|0,!r)return yA(qA),qA=13,y=w0,qA|0;if(f=v0(wA,8)|0,!f)return yA(qA),yA(r),qA=13,y=w0,qA|0;LA=SA,e[LA>>2]=0,e[LA+4>>2]=0,LA=A,kA=e[LA+4>>2]|0,n=a,e[n>>2]=e[LA>>2],e[n+4>>2]=kA,n=Vi(a,wA,iA,t,SA,r,f)|0;A:do if(n)yA(r),yA(f),yA(qA);else{e:do if((e[g>>2]|0)>0){for(l=A+12|0,s=0;n=Vi((e[l>>2]|0)+(s<<3)|0,wA,iA,t,SA,r,f)|0,s=s+1|0,!(n|0);)if((s|0)>=(e[g>>2]|0))break e;yA(r),yA(f),yA(qA);break A}while(!1);(iA|0)>0|(iA|0)==0&wA>>>0>0&&Ae(f|0,0,wA<<3|0)|0,kA=SA,LA=e[kA+4>>2]|0;e:do if((LA|0)>0|(LA|0)==0&(e[kA>>2]|0)>>>0>0){uA=r,DA=f,PA=r,LA=f,kA=r,n=r,T=r,nA=f,cA=f,r=f;t:for(;;){for(F=0,K=0,z=0,G=0,s=0,l=0;;){f=KA,a=f+56|0;do e[f>>2]=0,f=f+4|0;while((f|0)<(a|0));if(t=uA+(F<<3)|0,g=e[t>>2]|0,t=e[t+4>>2]|0,ji(g,t,1,KA,0)|0){f=KA,a=f+56|0;do e[f>>2]=0,f=f+4|0;while((f|0)<(a|0));f=v0(7,4)|0,f|0&&(R0(g,t,1,KA,f,7,0,0)|0,yA(f))}for(S=0;;){D=KA+(S<<3)|0,x=e[D>>2]|0,D=e[D+4>>2]|0;r:do if((x|0)==0&(D|0)==0)f=s,a=l;else{if(p=Me(x|0,D|0,wA|0,iA|0)|0,g=b()|0,f=i+(p<<3)|0,t=f,a=e[t>>2]|0,t=e[t+4>>2]|0,!((a|0)==0&(t|0)==0)){v=0,d=0;do{if((v|0)>(iA|0)|(v|0)==(iA|0)&d>>>0>wA>>>0)break t;if((a|0)==(x|0)&(t|0)==(D|0)){f=s,a=l;break r}f=EA(p|0,g|0,1,0)|0,p=De(f|0,b()|0,wA|0,iA|0)|0,g=b()|0,d=EA(d|0,v|0,1,0)|0,v=b()|0,f=i+(p<<3)|0,t=f,a=e[t>>2]|0,t=e[t+4>>2]|0}while(!((a|0)==0&(t|0)==0))}if((x|0)==0&(D|0)==0){f=s,a=l;break}ae(x,D,_A)|0,Tr(A,qA,_A)|0&&(d=EA(s|0,l|0,1,0)|0,l=b()|0,v=f,e[v>>2]=x,e[v+4>>2]=D,s=DA+(s<<3)|0,e[s>>2]=x,e[s+4>>2]=D,s=d),f=s,a=l}while(!1);if(S=S+1|0,S>>>0>=7)break;s=f,l=a}if(F=EA(F|0,K|0,1,0)|0,K=b()|0,z=EA(z|0,G|0,1,0)|0,G=b()|0,l=SA,s=e[l>>2]|0,l=e[l+4>>2]|0,(G|0)<(l|0)|(G|0)==(l|0)&z>>>0<s>>>0)s=f,l=a;else break}if((l|0)>0|(l|0)==0&s>>>0>0){s=0,l=0;do G=uA+(s<<3)|0,e[G>>2]=0,e[G+4>>2]=0,s=EA(s|0,l|0,1,0)|0,l=b()|0,G=SA,z=e[G+4>>2]|0;while((l|0)<(z|0)|((l|0)==(z|0)?s>>>0<(e[G>>2]|0)>>>0:0))}if(G=SA,e[G>>2]=f,e[G+4>>2]=a,(a|0)>0|(a|0)==0&f>>>0>0)S=r,F=cA,K=kA,z=nA,G=DA,r=T,cA=n,nA=PA,T=S,n=F,kA=LA,LA=K,PA=z,DA=uA,uA=G;else break e}yA(PA),yA(LA),yA(qA),n=1;break A}else n=f;while(!1);yA(qA),yA(r),yA(n),n=0}while(!1);return qA=n,y=w0,qA|0}}return yA(qA),qA=n,y=w0,qA|0}function Vo(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(p=y,y=y+176|0,a=p,(t|0)<1)return dn(r,0,0),g=0,y=p,g|0;for(f=A,f=eA(e[f>>2]|0,e[f+4>>2]|0,52)|0,b()|0,dn(r,(t|0)>6?t:6,f&15),f=0;i=A+(f<<3)|0,i=de(e[i>>2]|0,e[i+4>>2]|0,a)|0,!(i|0);){if(i=e[a>>2]|0,(i|0)>0){l=0;do s=a+8+(l<<4)|0,l=l+1|0,i=a+8+(((l|0)%(i|0)|0)<<4)|0,n=v1(r,i,s)|0,n?Mn(r,n)|0:y1(r,s,i)|0,i=e[a>>2]|0;while((l|0)<(i|0))}if(f=f+1|0,(f|0)>=(t|0)){i=0,g=13;break}}return(g|0)==13?(y=p,i|0):(xn(r),g=i,y=p,g|0)}function Ko(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;if(s=y,y=y+32|0,i=s,n=s+16|0,A=Vo(A,t,n)|0,A|0)return r=A,y=s,r|0;if(e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,A=Dn(n)|0,A|0)do{t=ql(r)|0;do Wl(t,A)|0,l=A+16|0,e[i>>2]=e[l>>2],e[i+4>>2]=e[l+4>>2],e[i+8>>2]=e[l+8>>2],e[i+12>>2]=e[l+12>>2],Mn(n,A)|0,A=b1(n,i)|0;while((A|0)!=0);A=Dn(n)|0}while((A|0)!=0);return xn(n),A=Xl(r)|0,A?(pn(r),l=A,y=s,l|0):(l=0,y=s,l|0)}function $A(A){return A=A|0,A>>>0>121?(A=0,A|0):(A=e[7696+(A*28|0)+16>>2]|0,A|0)}function hr(A){return A=A|0,(A|0)==4|(A|0)==117|0}function Ki(A){return A=A|0,e[11120+((e[A>>2]|0)*216|0)+((e[A+4>>2]|0)*72|0)+((e[A+8>>2]|0)*24|0)+(e[A+12>>2]<<3)>>2]|0}function qo(A){return A=A|0,e[11120+((e[A>>2]|0)*216|0)+((e[A+4>>2]|0)*72|0)+((e[A+8>>2]|0)*24|0)+(e[A+12>>2]<<3)+4>>2]|0}function Wo(A,t){A=A|0,t=t|0,A=7696+(A*28|0)|0,e[t>>2]=e[A>>2],e[t+4>>2]=e[A+4>>2],e[t+8>>2]=e[A+8>>2],e[t+12>>2]=e[A+12>>2]}function Xo(A,t){A=A|0,t=t|0;var r=0,i=0;if(t>>>0>20)return t=-1,t|0;do if((e[11120+(t*216|0)>>2]|0)!=(A|0))if((e[11120+(t*216|0)+8>>2]|0)!=(A|0))if((e[11120+(t*216|0)+16>>2]|0)!=(A|0))if((e[11120+(t*216|0)+24>>2]|0)!=(A|0))if((e[11120+(t*216|0)+32>>2]|0)!=(A|0))if((e[11120+(t*216|0)+40>>2]|0)!=(A|0))if((e[11120+(t*216|0)+48>>2]|0)!=(A|0))if((e[11120+(t*216|0)+56>>2]|0)!=(A|0))if((e[11120+(t*216|0)+64>>2]|0)!=(A|0))if((e[11120+(t*216|0)+72>>2]|0)!=(A|0))if((e[11120+(t*216|0)+80>>2]|0)!=(A|0))if((e[11120+(t*216|0)+88>>2]|0)!=(A|0))if((e[11120+(t*216|0)+96>>2]|0)!=(A|0))if((e[11120+(t*216|0)+104>>2]|0)!=(A|0))if((e[11120+(t*216|0)+112>>2]|0)!=(A|0))if((e[11120+(t*216|0)+120>>2]|0)!=(A|0))if((e[11120+(t*216|0)+128>>2]|0)!=(A|0))if((e[11120+(t*216|0)+136>>2]|0)==(A|0))A=2,r=1,i=2;else{if((e[11120+(t*216|0)+144>>2]|0)==(A|0)){A=0,r=2,i=0;break}if((e[11120+(t*216|0)+152>>2]|0)==(A|0)){A=0,r=2,i=1;break}if((e[11120+(t*216|0)+160>>2]|0)==(A|0)){A=0,r=2,i=2;break}if((e[11120+(t*216|0)+168>>2]|0)==(A|0)){A=1,r=2,i=0;break}if((e[11120+(t*216|0)+176>>2]|0)==(A|0)){A=1,r=2,i=1;break}if((e[11120+(t*216|0)+184>>2]|0)==(A|0)){A=1,r=2,i=2;break}if((e[11120+(t*216|0)+192>>2]|0)==(A|0)){A=2,r=2,i=0;break}if((e[11120+(t*216|0)+200>>2]|0)==(A|0)){A=2,r=2,i=1;break}if((e[11120+(t*216|0)+208>>2]|0)==(A|0)){A=2,r=2,i=2;break}else A=-1;return A|0}else A=2,r=1,i=1;else A=2,r=1,i=0;else A=1,r=1,i=2;else A=1,r=1,i=1;else A=1,r=1,i=0;else A=0,r=1,i=2;else A=0,r=1,i=1;else A=0,r=1,i=0;else A=2,r=0,i=2;else A=2,r=0,i=1;else A=2,r=0,i=0;else A=1,r=0,i=2;else A=1,r=0,i=1;else A=1,r=0,i=0;else A=0,r=0,i=2;else A=0,r=0,i=1;else A=0,r=0,i=0;while(!1);return t=e[11120+(t*216|0)+(r*72|0)+(A*24|0)+(i<<3)+4>>2]|0,t|0}function qi(A,t){return A=A|0,t=t|0,(e[7696+(A*28|0)+20>>2]|0)==(t|0)?(t=1,t|0):(t=(e[7696+(A*28|0)+24>>2]|0)==(t|0),t|0)}function ar(A,t){return A=A|0,t=t|0,e[848+(A*28|0)+(t<<2)>>2]|0}function gr(A,t){return A=A|0,t=t|0,(e[848+(A*28|0)>>2]|0)==(t|0)?(t=0,t|0):(e[848+(A*28|0)+4>>2]|0)==(t|0)?(t=1,t|0):(e[848+(A*28|0)+8>>2]|0)==(t|0)?(t=2,t|0):(e[848+(A*28|0)+12>>2]|0)==(t|0)?(t=3,t|0):(e[848+(A*28|0)+16>>2]|0)==(t|0)?(t=4,t|0):(e[848+(A*28|0)+20>>2]|0)==(t|0)?(t=5,t|0):((e[848+(A*28|0)+24>>2]|0)==(t|0)?6:7)|0}function Zo(){return 122}function $o(A){A=A|0;var t=0,r=0,i=0;t=0;do sA(t|0,0,45)|0,i=b()|0|134225919,r=A+(t<<3)|0,e[r>>2]=-1,e[r+4>>2]=i,t=t+1|0;while((t|0)!=122);return 0}function Jo(A){A=A|0;var t=0,r=0,i=0;return i=+E[A+16>>3],r=+E[A+24>>3],t=i-r,+(i<r?t+6.283185307179586:t)}function Wi(A){return A=A|0,+E[A+16>>3]<+E[A+24>>3]|0}function Al(A){return A=A|0,+(+E[A>>3]-+E[A+8>>3])}function cr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;return r=+E[t>>3],!(r>=+E[A+8>>3])||!(r<=+E[A>>3])?(t=0,t|0):(i=+E[A+16>>3],r=+E[A+24>>3],n=+E[t+8>>3],t=n>=r,A=n<=i&1,i<r?t&&(A=1):t||(A=0),t=(A|0)!=0,t|0)}function wr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;return+E[A>>3]<+E[t+8>>3]||+E[A+8>>3]>+E[t>>3]?(i=0,i|0):(s=+E[A+16>>3],r=A+24|0,p=+E[r>>3],l=s<p,i=t+16|0,g=+E[i>>3],n=t+24|0,a=+E[n>>3],f=g<a,t=p-g<a-s,A=l?f|t?1:2:0,t=f?l?1:t?2:1:0,s=+b0(s,A),s<+b0(+E[n>>3],t)||(p=+b0(+E[r>>3],A),p>+b0(+E[i>>3],t))?(f=0,f|0):(f=1,f|0))}function el(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0;s=+E[A+16>>3],a=+E[A+24>>3],A=s<a,f=+E[t+16>>3],l=+E[t+24>>3],n=f<l,t=a-f<l-s,e[r>>2]=A?n|t?1:2:0,e[i>>2]=n?A?1:t?2:1:0}function Xi(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;return+E[A>>3]<+E[t>>3]||+E[A+8>>3]>+E[t+8>>3]?(i=0,i|0):(i=A+16|0,a=+E[i>>3],s=+E[A+24>>3],l=a<s,r=t+16|0,p=+E[r>>3],n=t+24|0,g=+E[n>>3],f=p<g,t=s-p<g-a,A=l?f|t?1:2:0,t=f?l?1:t?2:1:0,s=+b0(s,A),s<=+b0(+E[n>>3],t)?(p=+b0(+E[i>>3],A),f=p>=+b0(+E[r>>3],t),f|0):(f=0,f|0))}function Zi(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0;n=y,y=y+176|0,i=n,e[i>>2]=4,f=+E[t>>3],E[i+8>>3]=f,s=+E[t+16>>3],E[i+16>>3]=s,E[i+24>>3]=f,f=+E[t+24>>3],E[i+32>>3]=f,l=+E[t+8>>3],E[i+40>>3]=l,E[i+48>>3]=f,E[i+56>>3]=l,E[i+64>>3]=s,t=i+72|0,r=t+96|0;do e[t>>2]=0,t=t+4|0;while((t|0)<(r|0));Pe(A|0,i|0,168)|0,y=n}function $i(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0;D=y,y=y+288|0,p=D+264|0,v=D+96|0,g=D,f=g,a=f+96|0;do e[f>>2]=0,f=f+4|0;while((f|0)<(a|0));return t=Dr(t,g)|0,t|0?(x=t,y=D,x|0):(a=g,g=e[a>>2]|0,a=e[a+4>>2]|0,ae(g,a,p)|0,de(g,a,v)|0,l=+Ke(p,v+8|0),E[p>>3]=+E[A>>3],a=p+8|0,E[a>>3]=+E[A+16>>3],E[v>>3]=+E[A+8>>3],g=v+8|0,E[g>>3]=+E[A+24>>3],n=+Ke(p,v),F=+E[a>>3]-+E[g>>3],s=+IA(+F),S=+E[p>>3]-+E[v>>3],i=+IA(+S),!(F==0|S==0)&&(F=+Sn(+s,+i),F=+ke(+(n*n/+Tt(+(F/+Tt(+s,+i)),3)/(l*(l*2.59807621135)*.8))),E[zA>>3]=F,d=~~F>>>0,x=+IA(F)>=1?F>0?~~+fr(+s0(F/4294967296),4294967295)>>>0:~~+ke((F-+(~~F>>>0))/4294967296)>>>0:0,(e[zA+4>>2]&2146435072|0)!=2146435072)?(v=(d|0)==0&(x|0)==0,t=r,e[t>>2]=v?1:d,e[t+4>>2]=v?0:x,t=0):t=1,x=t,y=D,x|0)}function tl(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0;g=y,y=y+288|0,l=g+264|0,f=g+96|0,a=g,n=a,s=n+96|0;do e[n>>2]=0,n=n+4|0;while((n|0)<(s|0));return r=Dr(r,a)|0,r|0?(i=r,y=g,i|0):(r=a,n=e[r>>2]|0,r=e[r+4>>2]|0,ae(n,r,l)|0,de(n,r,f)|0,p=+Ke(l,f+8|0),p=+ke(+(+Ke(A,t)/(p*2))),E[zA>>3]=p,r=~~p>>>0,n=+IA(p)>=1?p>0?~~+fr(+s0(p/4294967296),4294967295)>>>0:~~+ke((p-+(~~p>>>0))/4294967296)>>>0:0,(e[zA+4>>2]&2146435072|0)==2146435072?(i=1,y=g,i|0):(a=(r|0)==0&(n|0)==0,e[i>>2]=a?1:r,e[i+4>>2]=a?0:n,i=0,y=g,i|0))}function rl(A,t){A=A|0,t=+t;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;s=A+16|0,l=+E[s>>3],r=A+24|0,n=+E[r>>3],i=l-n,i=l<n?i+6.283185307179586:i,g=+E[A>>3],f=A+8|0,a=+E[f>>3],p=g-a,i=(i*t-i)*.5,t=(p*t-p)*.5,g=g+t,E[A>>3]=g>1.5707963267948966?1.5707963267948966:g,t=a-t,E[f>>3]=t<-1.5707963267948966?-1.5707963267948966:t,t=l+i,t=t>3.141592653589793?t+-6.283185307179586:t,E[s>>3]=t<-3.141592653589793?t+6.283185307179586:t,t=n-i,t=t>3.141592653589793?t+-6.283185307179586:t,E[r>>3]=t<-3.141592653589793?t+6.283185307179586:t}function il(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0,e[A>>2]=t,e[A+4>>2]=r,e[A+8>>2]=i}function nl(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;v=t+8|0,e[v>>2]=0,a=+E[A>>3],l=+IA(+a),g=+E[A+8>>3],f=+IA(+g)*1.1547005383792515,l=l+f*.5,r=~~l,A=~~f,l=l-+(r|0),f=f-+(A|0);do if(l<.5)if(l<.3333333333333333)if(e[t>>2]=r,f<(l+1)*.5){e[t+4>>2]=A;break}else{A=A+1|0,e[t+4>>2]=A;break}else if(d=1-l,A=(!(f<d)&1)+A|0,e[t+4>>2]=A,d<=f&f<l*2){r=r+1|0,e[t>>2]=r;break}else{e[t>>2]=r;break}else{if(!(l<.6666666666666666))if(r=r+1|0,e[t>>2]=r,f<l*.5){e[t+4>>2]=A;break}else{A=A+1|0,e[t+4>>2]=A;break}if(f<1-l){if(e[t+4>>2]=A,l*2+-1<f){e[t>>2]=r;break}}else A=A+1|0,e[t+4>>2]=A;r=r+1|0,e[t>>2]=r}while(!1);do if(a<0)if(A&1){p=(A+1|0)/2|0,p=u0(r|0,((r|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0,r=~~(+(r|0)-((+(p>>>0)+4294967296*+(b()|0))*2+1)),e[t>>2]=r;break}else{p=(A|0)/2|0,p=u0(r|0,((r|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0,r=~~(+(r|0)-(+(p>>>0)+4294967296*+(b()|0))*2),e[t>>2]=r;break}while(!1);p=t+4|0,g<0&&(r=r-((A<<1|1|0)/2|0)|0,e[t>>2]=r,A=0-A|0,e[p>>2]=A),i=A-r|0,(r|0)<0?(n=0-r|0,e[p>>2]=i,e[v>>2]=n,e[t>>2]=0,A=i,r=0):n=0,(A|0)<0&&(r=r-A|0,e[t>>2]=r,n=n-A|0,e[v>>2]=n,e[p>>2]=0,A=0),s=r-n|0,i=A-n|0,(n|0)<0&&(e[t>>2]=s,e[p>>2]=i,e[v>>2]=0,A=i,r=s,n=0),i=(A|0)<(r|0)?A:r,i=(n|0)<(i|0)?n:i,!((i|0)<=0)&&(e[t>>2]=r-i,e[p>>2]=A-i,e[v>>2]=n-i)}function a0(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0;t=e[A>>2]|0,l=A+4|0,r=e[l>>2]|0,(t|0)<0&&(r=r-t|0,e[l>>2]=r,s=A+8|0,e[s>>2]=(e[s>>2]|0)-t,e[A>>2]=0,t=0),(r|0)<0?(t=t-r|0,e[A>>2]=t,s=A+8|0,n=(e[s>>2]|0)-r|0,e[s>>2]=n,e[l>>2]=0,r=0):(n=A+8|0,s=n,n=e[n>>2]|0),(n|0)<0&&(t=t-n|0,e[A>>2]=t,r=r-n|0,e[l>>2]=r,e[s>>2]=0,n=0),i=(r|0)<(t|0)?r:t,i=(n|0)<(i|0)?n:i,!((i|0)<=0)&&(e[A>>2]=t-i,e[l>>2]=r-i,e[s>>2]=n-i)}function le(A,t){A=A|0,t=t|0;var r=0,i=0;i=e[A+8>>2]|0,r=+((e[A+4>>2]|0)-i|0),E[t>>3]=+((e[A>>2]|0)-i|0)-r*.5,E[t+8>>3]=r*.8660254037844386}function c0(A,t,r){A=A|0,t=t|0,r=r|0,e[r>>2]=(e[t>>2]|0)+(e[A>>2]|0),e[r+4>>2]=(e[t+4>>2]|0)+(e[A+4>>2]|0),e[r+8>>2]=(e[t+8>>2]|0)+(e[A+8>>2]|0)}function pr(A,t,r){A=A|0,t=t|0,r=r|0,e[r>>2]=(e[A>>2]|0)-(e[t>>2]|0),e[r+4>>2]=(e[A+4>>2]|0)-(e[t+4>>2]|0),e[r+8>>2]=(e[A+8>>2]|0)-(e[t+8>>2]|0)}function Ji(A,t){A=A|0,t=t|0;var r=0,i=0;r=O0(e[A>>2]|0,t)|0,e[A>>2]=r,r=A+4|0,i=O0(e[r>>2]|0,t)|0,e[r>>2]=i,A=A+8|0,t=O0(e[A>>2]|0,t)|0,e[A>>2]=t}function xt(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;l=e[A>>2]|0,f=(l|0)<0,i=(e[A+4>>2]|0)-(f?l:0)|0,s=(i|0)<0,n=(s?0-i|0:0)+((e[A+8>>2]|0)-(f?l:0))|0,r=(n|0)<0,A=r?0:n,t=(s?0:i)-(r?n:0)|0,n=(f?0:l)-(s?i:0)-(r?n:0)|0,r=(t|0)<(n|0)?t:n,r=(A|0)<(r|0)?A:r,i=(r|0)>0,A=A-(i?r:0)|0,t=t-(i?r:0)|0;A:do switch(n-(i?r:0)|0){case 0:switch(t|0){case 0:return f=(A|0)==0?0:(A|0)==1?1:7,f|0;case 1:return f=(A|0)==0?2:(A|0)==1?3:7,f|0;default:break A}case 1:switch(t|0){case 0:return f=(A|0)==0?4:(A|0)==1?5:7,f|0;case 1:{if(!A)A=6;else break A;return A|0}default:break A}}while(!1);return f=7,f|0}function sl(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0;if(a=A+8|0,l=e[a>>2]|0,f=(e[A>>2]|0)-l|0,g=A+4|0,l=(e[g>>2]|0)-l|0,f>>>0>715827881|l>>>0>715827881){if(i=(f|0)>0,n=2147483647-f|0,s=-2147483648-f|0,(i?(n|0)<(f|0):(s|0)>(f|0))||(r=f<<1,i?(2147483647-r|0)<(f|0):(-2147483648-r|0)>(f|0))||((l|0)>0?(2147483647-l|0)<(l|0):(-2147483648-l|0)>(l|0))||(t=f*3|0,r=l<<1,(i?(n|0)<(r|0):(s|0)>(r|0))||((f|0)>-1?(t|-2147483648|0)>=(l|0):(t^-2147483648|0)<(l|0))))return g=1,g|0}else r=l<<1,t=f*3|0;return i=$0(+(t-l|0)*.14285714285714285)|0,e[A>>2]=i,n=$0(+(r+f|0)*.14285714285714285)|0,e[g>>2]=n,e[a>>2]=0,r=(n|0)<(i|0),t=r?i:n,r=r?n:i,(r|0)<0&&(((r|0)==-2147483648||((t|0)>0?(2147483647-t|0)<(r|0):(-2147483648-t|0)>(r|0)))&&BA(27795,26892,354,26903),((t|0)>-1?(t|-2147483648|0)>=(r|0):(t^-2147483648|0)<(r|0))&&BA(27795,26892,354,26903)),t=n-i|0,(i|0)<0?(r=0-i|0,e[g>>2]=t,e[a>>2]=r,e[A>>2]=0,i=0):(t=n,r=0),(t|0)<0&&(i=i-t|0,e[A>>2]=i,r=r-t|0,e[a>>2]=r,e[g>>2]=0,t=0),s=i-r|0,n=t-r|0,(r|0)<0?(e[A>>2]=s,e[g>>2]=n,e[a>>2]=0,t=n,n=s,r=0):n=i,i=(t|0)<(n|0)?t:n,i=(r|0)<(i|0)?r:i,(i|0)<=0?(g=0,g|0):(e[A>>2]=n-i,e[g>>2]=t-i,e[a>>2]=r-i,g=0,g|0)}function ol(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0;if(l=A+8|0,n=e[l>>2]|0,s=(e[A>>2]|0)-n|0,f=A+4|0,n=(e[f>>2]|0)-n|0,s>>>0>715827881|n>>>0>715827881){if(r=(s|0)>0,(r?(2147483647-s|0)<(s|0):(-2147483648-s|0)>(s|0))||(t=s<<1,i=(n|0)>0,i?(2147483647-n|0)<(n|0):(-2147483648-n|0)>(n|0)))return f=1,f|0;if(a=n<<1,(i?(2147483647-a|0)<(n|0):(-2147483648-a|0)>(n|0))||(r?(2147483647-t|0)<(n|0):(-2147483648-t|0)>(n|0))||(r=n*3|0,(n|0)>-1?(r|-2147483648|0)>=(s|0):(r^-2147483648|0)<(s|0)))return a=1,a|0}else r=n*3|0,t=s<<1;return i=$0(+(t+n|0)*.14285714285714285)|0,e[A>>2]=i,n=$0(+(r-s|0)*.14285714285714285)|0,e[f>>2]=n,e[l>>2]=0,r=(n|0)<(i|0),t=r?i:n,r=r?n:i,(r|0)<0&&(((r|0)==-2147483648||((t|0)>0?(2147483647-t|0)<(r|0):(-2147483648-t|0)>(r|0)))&&BA(27795,26892,402,26917),((t|0)>-1?(t|-2147483648|0)>=(r|0):(t^-2147483648|0)<(r|0))&&BA(27795,26892,402,26917)),t=n-i|0,(i|0)<0?(r=0-i|0,e[f>>2]=t,e[l>>2]=r,e[A>>2]=0,i=0):(t=n,r=0),(t|0)<0&&(i=i-t|0,e[A>>2]=i,r=r-t|0,e[l>>2]=r,e[f>>2]=0,t=0),s=i-r|0,n=t-r|0,(r|0)<0?(e[A>>2]=s,e[f>>2]=n,e[l>>2]=0,t=n,n=s,r=0):n=i,i=(t|0)<(n|0)?t:n,i=(r|0)<(i|0)?r:i,(i|0)<=0?(a=0,a|0):(e[A>>2]=n-i,e[f>>2]=t-i,e[l>>2]=r-i,a=0,a|0)}function ll(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;l=A+8|0,r=e[l>>2]|0,t=(e[A>>2]|0)-r|0,f=A+4|0,r=(e[f>>2]|0)-r|0,i=$0(+((t*3|0)-r|0)*.14285714285714285)|0,e[A>>2]=i,t=$0(+((r<<1)+t|0)*.14285714285714285)|0,e[f>>2]=t,e[l>>2]=0,r=t-i|0,(i|0)<0?(s=0-i|0,e[f>>2]=r,e[l>>2]=s,e[A>>2]=0,t=r,i=0,r=s):r=0,(t|0)<0&&(i=i-t|0,e[A>>2]=i,r=r-t|0,e[l>>2]=r,e[f>>2]=0,t=0),s=i-r|0,n=t-r|0,(r|0)<0?(e[A>>2]=s,e[f>>2]=n,e[l>>2]=0,t=n,n=s,r=0):n=i,i=(t|0)<(n|0)?t:n,i=(r|0)<(i|0)?r:i,!((i|0)<=0)&&(e[A>>2]=n-i,e[f>>2]=t-i,e[l>>2]=r-i)}function An(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;l=A+8|0,r=e[l>>2]|0,t=(e[A>>2]|0)-r|0,f=A+4|0,r=(e[f>>2]|0)-r|0,i=$0(+((t<<1)+r|0)*.14285714285714285)|0,e[A>>2]=i,t=$0(+((r*3|0)-t|0)*.14285714285714285)|0,e[f>>2]=t,e[l>>2]=0,r=t-i|0,(i|0)<0?(s=0-i|0,e[f>>2]=r,e[l>>2]=s,e[A>>2]=0,t=r,i=0,r=s):r=0,(t|0)<0&&(i=i-t|0,e[A>>2]=i,r=r-t|0,e[l>>2]=r,e[f>>2]=0,t=0),s=i-r|0,n=t-r|0,(r|0)<0?(e[A>>2]=s,e[f>>2]=n,e[l>>2]=0,t=n,n=s,r=0):n=i,i=(t|0)<(n|0)?t:n,i=(r|0)<(i|0)?r:i,!((i|0)<=0)&&(e[A>>2]=n-i,e[f>>2]=t-i,e[l>>2]=r-i)}function Dt(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;t=e[A>>2]|0,l=A+4|0,r=e[l>>2]|0,f=A+8|0,i=e[f>>2]|0,n=r+(t*3|0)|0,e[A>>2]=n,r=i+(r*3|0)|0,e[l>>2]=r,t=(i*3|0)+t|0,e[f>>2]=t,i=r-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=i,e[f>>2]=t,e[A>>2]=0,r=i,i=0):i=n,(r|0)<0&&(i=i-r|0,e[A>>2]=i,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=i-t|0,n=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=n,e[f>>2]=0,i=s,t=0):n=r,r=(n|0)<(i|0)?n:i,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=i-r,e[l>>2]=n-r,e[f>>2]=t-r)}function fe(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;n=e[A>>2]|0,l=A+4|0,t=e[l>>2]|0,f=A+8|0,r=e[f>>2]|0,i=(t*3|0)+n|0,n=r+(n*3|0)|0,e[A>>2]=n,e[l>>2]=i,t=(r*3|0)+t|0,e[f>>2]=t,r=i-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=r,e[f>>2]=t,e[A>>2]=0,n=0):r=i,(r|0)<0&&(n=n-r|0,e[A>>2]=n,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=n-t|0,i=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=i,e[f>>2]=0,n=s,t=0):i=r,r=(i|0)<(n|0)?i:n,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=n-r,e[l>>2]=i-r,e[f>>2]=t-r)}function en(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0;(t+-1|0)>>>0>=6||(n=(e[15440+(t*12|0)>>2]|0)+(e[A>>2]|0)|0,e[A>>2]=n,f=A+4|0,i=(e[15440+(t*12|0)+4>>2]|0)+(e[f>>2]|0)|0,e[f>>2]=i,l=A+8|0,t=(e[15440+(t*12|0)+8>>2]|0)+(e[l>>2]|0)|0,e[l>>2]=t,r=i-n|0,(n|0)<0?(t=t-n|0,e[f>>2]=r,e[l>>2]=t,e[A>>2]=0,i=0):(r=i,i=n),(r|0)<0&&(i=i-r|0,e[A>>2]=i,t=t-r|0,e[l>>2]=t,e[f>>2]=0,r=0),s=i-t|0,n=r-t|0,(t|0)<0?(e[A>>2]=s,e[f>>2]=n,e[l>>2]=0,i=s,t=0):n=r,r=(n|0)<(i|0)?n:i,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=i-r,e[f>>2]=n-r,e[l>>2]=t-r))}function tn(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;n=e[A>>2]|0,l=A+4|0,t=e[l>>2]|0,f=A+8|0,r=e[f>>2]|0,i=t+n|0,n=r+n|0,e[A>>2]=n,e[l>>2]=i,t=r+t|0,e[f>>2]=t,r=i-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=r,e[f>>2]=t,e[A>>2]=0,i=0):(r=i,i=n),(r|0)<0&&(i=i-r|0,e[A>>2]=i,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=i-t|0,n=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=n,e[f>>2]=0,i=s,t=0):n=r,r=(n|0)<(i|0)?n:i,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=i-r,e[l>>2]=n-r,e[f>>2]=t-r)}function Mt(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;t=e[A>>2]|0,l=A+4|0,i=e[l>>2]|0,f=A+8|0,r=e[f>>2]|0,n=i+t|0,e[A>>2]=n,i=r+i|0,e[l>>2]=i,t=r+t|0,e[f>>2]=t,r=i-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=r,e[f>>2]=t,e[A>>2]=0,i=0):(r=i,i=n),(r|0)<0&&(i=i-r|0,e[A>>2]=i,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=i-t|0,n=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=n,e[f>>2]=0,i=s,t=0):n=r,r=(n|0)<(i|0)?n:i,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=i-r,e[l>>2]=n-r,e[f>>2]=t-r)}function ue(A){switch(A=A|0,A|0){case 1:{A=5;break}case 5:{A=4;break}case 4:{A=6;break}case 6:{A=2;break}case 2:{A=3;break}case 3:{A=1;break}}return A|0}function X0(A){switch(A=A|0,A|0){case 1:{A=3;break}case 3:{A=2;break}case 2:{A=6;break}case 6:{A=4;break}case 4:{A=5;break}case 5:{A=1;break}}return A|0}function rn(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;t=e[A>>2]|0,l=A+4|0,r=e[l>>2]|0,f=A+8|0,i=e[f>>2]|0,n=r+(t<<1)|0,e[A>>2]=n,r=i+(r<<1)|0,e[l>>2]=r,t=(i<<1)+t|0,e[f>>2]=t,i=r-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=i,e[f>>2]=t,e[A>>2]=0,r=i,i=0):i=n,(r|0)<0&&(i=i-r|0,e[A>>2]=i,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=i-t|0,n=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=n,e[f>>2]=0,i=s,t=0):n=r,r=(n|0)<(i|0)?n:i,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=i-r,e[l>>2]=n-r,e[f>>2]=t-r)}function nn(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;n=e[A>>2]|0,l=A+4|0,t=e[l>>2]|0,f=A+8|0,r=e[f>>2]|0,i=(t<<1)+n|0,n=r+(n<<1)|0,e[A>>2]=n,e[l>>2]=i,t=(r<<1)+t|0,e[f>>2]=t,r=i-n|0,(n|0)<0?(t=t-n|0,e[l>>2]=r,e[f>>2]=t,e[A>>2]=0,n=0):r=i,(r|0)<0&&(n=n-r|0,e[A>>2]=n,t=t-r|0,e[f>>2]=t,e[l>>2]=0,r=0),s=n-t|0,i=r-t|0,(t|0)<0?(e[A>>2]=s,e[l>>2]=i,e[f>>2]=0,n=s,t=0):i=r,r=(i|0)<(n|0)?i:n,r=(t|0)<(r|0)?t:r,!((r|0)<=0)&&(e[A>>2]=n-r,e[l>>2]=i-r,e[f>>2]=t-r)}function mr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0;return l=(e[A>>2]|0)-(e[t>>2]|0)|0,f=(l|0)<0,i=(e[A+4>>2]|0)-(e[t+4>>2]|0)-(f?l:0)|0,s=(i|0)<0,n=(f?0-l|0:0)+(e[A+8>>2]|0)-(e[t+8>>2]|0)+(s?0-i|0:0)|0,A=(n|0)<0,t=A?0:n,r=(s?0:i)-(A?n:0)|0,n=(f?0:l)-(s?i:0)-(A?n:0)|0,A=(r|0)<(n|0)?r:n,A=(t|0)<(A|0)?t:A,i=(A|0)>0,t=t-(i?A:0)|0,r=r-(i?A:0)|0,A=n-(i?A:0)|0,A=(A|0)>-1?A:0-A|0,r=(r|0)>-1?r:0-r|0,t=(t|0)>-1?t:0-t|0,t=(r|0)>(t|0)?r:t,((A|0)>(t|0)?A:t)|0}function fl(A,t){A=A|0,t=t|0;var r=0;r=e[A+8>>2]|0,e[t>>2]=(e[A>>2]|0)-r,e[t+4>>2]=(e[A+4>>2]|0)-r}function ul(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0;return i=e[A>>2]|0,e[t>>2]=i,n=e[A+4>>2]|0,l=t+4|0,e[l>>2]=n,f=t+8|0,e[f>>2]=0,r=(n|0)<(i|0),A=r?i:n,r=r?n:i,(r|0)<0&&((r|0)==-2147483648||((A|0)>0?(2147483647-A|0)<(r|0):(-2147483648-A|0)>(r|0))||((A|0)>-1?(A|-2147483648|0)>=(r|0):(A^-2147483648|0)<(r|0)))?(t=1,t|0):(A=n-i|0,(i|0)<0?(r=0-i|0,e[l>>2]=A,e[f>>2]=r,e[t>>2]=0,i=0):(A=n,r=0),(A|0)<0&&(i=i-A|0,e[t>>2]=i,r=r-A|0,e[f>>2]=r,e[l>>2]=0,A=0),s=i-r|0,n=A-r|0,(r|0)<0?(e[t>>2]=s,e[l>>2]=n,e[f>>2]=0,A=n,n=s,r=0):n=i,i=(A|0)<(n|0)?A:n,i=(r|0)<(i|0)?r:i,(i|0)<=0?(t=0,t|0):(e[t>>2]=n-i,e[l>>2]=A-i,e[f>>2]=r-i,t=0,t|0))}function sn(A){A=A|0;var t=0,r=0,i=0,n=0;t=A+8|0,n=e[t>>2]|0,r=n-(e[A>>2]|0)|0,e[A>>2]=r,i=A+4|0,A=(e[i>>2]|0)-n|0,e[i>>2]=A,e[t>>2]=0-(A+r)}function hl(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;r=e[A>>2]|0,t=0-r|0,e[A>>2]=t,l=A+8|0,e[l>>2]=0,f=A+4|0,i=e[f>>2]|0,n=i+r|0,(r|0)>0?(e[f>>2]=n,e[l>>2]=r,e[A>>2]=0,t=0,i=n):r=0,(i|0)<0?(s=t-i|0,e[A>>2]=s,r=r-i|0,e[l>>2]=r,e[f>>2]=0,n=s-r|0,t=0-r|0,(r|0)<0?(e[A>>2]=n,e[f>>2]=t,e[l>>2]=0,i=t,r=0):(i=0,n=s)):n=t,t=(i|0)<(n|0)?i:n,t=(r|0)<(t|0)?r:t,!((t|0)<=0)&&(e[A>>2]=n-t,e[f>>2]=i-t,e[l>>2]=r-t)}function al(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0;if(v=y,y=y+64|0,p=v,f=v+56|0,!(!0&(t&2013265920|0)==134217728&(!0&(i&2013265920|0)==134217728)))return n=5,y=v,n|0;if((A|0)==(r|0)&(t|0)==(i|0))return e[n>>2]=0,n=0,y=v,n|0;if(l=eA(A|0,t|0,52)|0,b()|0,l=l&15,g=eA(r|0,i|0,52)|0,b()|0,(l|0)!=(g&15|0))return n=12,y=v,n|0;if(s=l+-1|0,l>>>0>1){kr(A,t,s,p)|0,kr(r,i,s,f)|0,g=p,a=e[g>>2]|0,g=e[g+4>>2]|0;A:do if((a|0)==(e[f>>2]|0)&&(g|0)==(e[f+4>>2]|0)){l=(l^15)*3|0,s=eA(A|0,t|0,l|0)|0,b()|0,s=s&7,l=eA(r|0,i|0,l|0)|0,b()|0,l=l&7;do if((s|0)==0|(l|0)==0)e[n>>2]=1,s=0;else if((s|0)==7)s=5;else{if((s|0)==1|(l|0)==1&&WA(a,g)|0){s=5;break}if((e[15536+(s<<2)>>2]|0)!=(l|0)&&(e[15568+(s<<2)>>2]|0)!=(l|0))break A;e[n>>2]=1,s=0}while(!1);return n=s,y=v,n|0}while(!1)}s=p,l=s+56|0;do e[s>>2]=0,s=s+4|0;while((s|0)<(l|0));return zi(A,t,1,p)|0,t=p,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0))&&(t=p+8|0,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0)))&&(t=p+16|0,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0)))&&(t=p+24|0,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0)))&&(t=p+32|0,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0)))&&(t=p+40|0,!((e[t>>2]|0)==(r|0)&&(e[t+4>>2]|0)==(i|0)))?(s=p+48|0,s=((e[s>>2]|0)==(r|0)?(e[s+4>>2]|0)==(i|0):0)&1):s=1,e[n>>2]=s,n=0,y=v,n|0}function gl(A,t,r,i,n){return A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,r=ur(A,t,r,i)|0,(r|0)==7?(n=11,n|0):(i=sA(r|0,0,56)|0,t=t&-2130706433|(b()|0)|268435456,e[n>>2]=A|i,e[n+4>>2]=t,n=0,n|0)}function cl(A,t,r){return A=A|0,t=t|0,r=r|0,!0&(t&2013265920|0)==268435456?(e[r>>2]=A,e[r+4>>2]=t&-2130706433|134217728,r=0,r|0):(r=6,r|0)}function wl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;return n=y,y=y+16|0,i=n,e[i>>2]=0,!0&(t&2013265920|0)==268435456?(s=eA(A|0,t|0,56)|0,b()|0,i=o0(A,t&-2130706433|134217728,s&7,i,r)|0,y=n,i|0):(i=6,y=n,i|0)}function pl(A,t){A=A|0,t=t|0;var r=0;switch(r=eA(A|0,t|0,56)|0,b()|0,r&7){case 0:case 7:return r=0,r|0}return r=t&-2130706433|134217728,!(!0&(t&2013265920|0)==268435456)||!0&(t&117440512|0)==16777216&(WA(A,r)|0)!=0?(r=0,r|0):(r=vr(A,r)|0,r|0)}function ml(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;return n=y,y=y+16|0,i=n,!0&(t&2013265920|0)==268435456?(s=t&-2130706433|134217728,l=r,e[l>>2]=A,e[l+4>>2]=s,e[i>>2]=0,t=eA(A|0,t|0,56)|0,b()|0,i=o0(A,s,t&7,i,r+8|0)|0,y=n,i|0):(i=6,y=n,i|0)}function El(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0;return n=(WA(A,t)|0)==0,t=t&-2130706433,i=r,e[i>>2]=n?A:0,e[i+4>>2]=n?t|285212672:0,i=r+8|0,e[i>>2]=A,e[i+4>>2]=t|301989888,i=r+16|0,e[i>>2]=A,e[i+4>>2]=t|318767104,i=r+24|0,e[i>>2]=A,e[i+4>>2]=t|335544320,i=r+32|0,e[i>>2]=A,e[i+4>>2]=t|352321536,r=r+40|0,e[r>>2]=A,e[r+4>>2]=t|369098752,0}function Pt(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;return l=y,y=y+16|0,n=l,s=t&-2130706433|134217728,!0&(t&2013265920|0)==268435456?(i=eA(A|0,t|0,56)|0,b()|0,i=w1(A,s,i&7)|0,(i|0)==-1?(e[r>>2]=0,s=6,y=l,s|0):(Ce(A,s,n)|0&&BA(27795,26932,282,26947),t=eA(A|0,t|0,52)|0,b()|0,t=t&15,WA(A,s)|0?Er(n,t,i,2,r):yr(n,t,i,2,r),s=0,y=l,s|0)):(s=6,y=l,s|0)}function yl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0;i=y,y=y+16|0,n=i,vl(A,t,r,n),nl(n,r+4|0),y=i}function vl(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0;if(f=y,y=y+16|0,a=f,bl(A,r,a),s=+dt(+(1-+E[a>>3]*.5)),s<1e-16){e[i>>2]=0,e[i+4>>2]=0,e[i+8>>2]=0,e[i+12>>2]=0,y=f;return}if(a=e[r>>2]|0,n=+E[15920+(a*24|0)>>3],n=+Ve(n-+Ve(+Fl(15600+(a<<4)|0,A))),M0(t)|0?l=+Ve(n+-.3334731722518321):l=n,n=+x0(+s)*2.618033988749896,(t|0)>0){A=0;do n=n*2.6457513110645907,A=A+1|0;while((A|0)!=(t|0))}s=+jA(+l)*n,E[i>>3]=s,l=+OA(+l)*n,E[i+8>>3]=l,y=f}function bl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;if(s=y,y=y+32|0,n=s,c1(A,n),e[t>>2]=0,E[r>>3]=5,i=+t0(16400,n),i<+E[r>>3]&&(e[t>>2]=0,E[r>>3]=i),i=+t0(16424,n),i<+E[r>>3]&&(e[t>>2]=1,E[r>>3]=i),i=+t0(16448,n),i<+E[r>>3]&&(e[t>>2]=2,E[r>>3]=i),i=+t0(16472,n),i<+E[r>>3]&&(e[t>>2]=3,E[r>>3]=i),i=+t0(16496,n),i<+E[r>>3]&&(e[t>>2]=4,E[r>>3]=i),i=+t0(16520,n),i<+E[r>>3]&&(e[t>>2]=5,E[r>>3]=i),i=+t0(16544,n),i<+E[r>>3]&&(e[t>>2]=6,E[r>>3]=i),i=+t0(16568,n),i<+E[r>>3]&&(e[t>>2]=7,E[r>>3]=i),i=+t0(16592,n),i<+E[r>>3]&&(e[t>>2]=8,E[r>>3]=i),i=+t0(16616,n),i<+E[r>>3]&&(e[t>>2]=9,E[r>>3]=i),i=+t0(16640,n),i<+E[r>>3]&&(e[t>>2]=10,E[r>>3]=i),i=+t0(16664,n),i<+E[r>>3]&&(e[t>>2]=11,E[r>>3]=i),i=+t0(16688,n),i<+E[r>>3]&&(e[t>>2]=12,E[r>>3]=i),i=+t0(16712,n),i<+E[r>>3]&&(e[t>>2]=13,E[r>>3]=i),i=+t0(16736,n),i<+E[r>>3]&&(e[t>>2]=14,E[r>>3]=i),i=+t0(16760,n),i<+E[r>>3]&&(e[t>>2]=15,E[r>>3]=i),i=+t0(16784,n),i<+E[r>>3]&&(e[t>>2]=16,E[r>>3]=i),i=+t0(16808,n),i<+E[r>>3]&&(e[t>>2]=17,E[r>>3]=i),i=+t0(16832,n),i<+E[r>>3]&&(e[t>>2]=18,E[r>>3]=i),i=+t0(16856,n),!(i<+E[r>>3])){y=s;return}e[t>>2]=19,E[r>>3]=i,y=s}function je(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0;if(s=+g1(A),s<1e-16){t=15600+(t<<4)|0,e[n>>2]=e[t>>2],e[n+4>>2]=e[t+4>>2],e[n+8>>2]=e[t+8>>2],e[n+12>>2]=e[t+12>>2];return}if(l=+D0(+ +E[A+8>>3],+ +E[A>>3]),(r|0)>0){A=0;do s=s*.37796447300922725,A=A+1|0;while((A|0)!=(r|0))}f=s*.3333333333333333,i?(r=(M0(r)|0)==0,s=+lr(+((r?f:f*.37796447300922725)*.381966011250105))):(s=+lr(+(s*.381966011250105)),M0(r)|0&&(l=+Ve(l+.3334731722518321))),Nl(15600+(t<<4)|0,+Ve(+E[15920+(t*24|0)>>3]-l),s,n)}function kl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0;i=y,y=y+16|0,n=i,le(A+4|0,n),je(n,e[A>>2]|0,t,0,r),y=i}function Er(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0,wA=0,iA=0,SA=0,KA=0,_A=0;if(SA=y,y=y+272|0,s=SA+256|0,z=SA+240|0,kA=SA,wA=SA+224|0,iA=SA+208|0,G=SA+176|0,T=SA+160|0,nA=SA+192|0,cA=SA+144|0,uA=SA+128|0,DA=SA+112|0,PA=SA+96|0,LA=SA+80|0,e[s>>2]=t,e[z>>2]=e[A>>2],e[z+4>>2]=e[A+4>>2],e[z+8>>2]=e[A+8>>2],e[z+12>>2]=e[A+12>>2],on(z,s,kA),e[n>>2]=0,z=i+r+((i|0)==5&1)|0,(z|0)<=(r|0)){y=SA;return}a=e[s>>2]|0,g=wA+4|0,p=G+4|0,v=r+5|0,d=16880+(a<<2)|0,x=16960+(a<<2)|0,D=uA+8|0,S=DA+8|0,F=PA+8|0,K=iA+4|0,f=r;A:for(;;){l=kA+(((f|0)%5|0)<<4)|0,e[iA>>2]=e[l>>2],e[iA+4>>2]=e[l+4>>2],e[iA+8>>2]=e[l+8>>2],e[iA+12>>2]=e[l+12>>2];do;while((Be(iA,a,0,1)|0)==2);if((f|0)>(r|0)&(M0(t)|0)!=0){if(e[G>>2]=e[iA>>2],e[G+4>>2]=e[iA+4>>2],e[G+8>>2]=e[iA+8>>2],e[G+12>>2]=e[iA+12>>2],le(g,T),i=e[G>>2]|0,s=e[17040+(i*80|0)+(e[wA>>2]<<2)>>2]|0,e[G>>2]=e[18640+(i*80|0)+(s*20|0)>>2],l=e[18640+(i*80|0)+(s*20|0)+16>>2]|0,(l|0)>0){A=0;do tn(p),A=A+1|0;while((A|0)<(l|0))}switch(l=18640+(i*80|0)+(s*20|0)+4|0,e[nA>>2]=e[l>>2],e[nA+4>>2]=e[l+4>>2],e[nA+8>>2]=e[l+8>>2],Ji(nA,(e[d>>2]|0)*3|0),c0(p,nA,p),a0(p),le(p,cA),KA=+(e[x>>2]|0),E[uA>>3]=KA*3,E[D>>3]=0,_A=KA*-1.5,E[DA>>3]=_A,E[S>>3]=KA*2.598076211353316,E[PA>>3]=_A,E[F>>3]=KA*-2.598076211353316,e[17040+((e[G>>2]|0)*80|0)+(e[iA>>2]<<2)>>2]|0){case 1:{A=DA,i=uA;break}case 3:{A=PA,i=DA;break}case 2:{A=uA,i=PA;break}default:{A=12;break A}}Bn(T,cA,i,A,LA),je(LA,e[G>>2]|0,a,1,n+8+(e[n>>2]<<4)|0),e[n>>2]=(e[n>>2]|0)+1}if((f|0)<(v|0)&&(le(K,G),je(G,e[iA>>2]|0,a,1,n+8+(e[n>>2]<<4)|0),e[n>>2]=(e[n>>2]|0)+1),e[wA>>2]=e[iA>>2],e[wA+4>>2]=e[iA+4>>2],e[wA+8>>2]=e[iA+8>>2],e[wA+12>>2]=e[iA+12>>2],f=f+1|0,(f|0)>=(z|0)){A=3;break}}if((A|0)==3){y=SA;return}else(A|0)==12&&BA(26970,27017,572,27027)}function on(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0;a=y,y=y+128|0,i=a+64|0,n=a,s=i,l=20240,f=s+60|0;do e[s>>2]=e[l>>2],s=s+4|0,l=l+4|0;while((s|0)<(f|0));s=n,l=20304,f=s+60|0;do e[s>>2]=e[l>>2],s=s+4|0,l=l+4|0;while((s|0)<(f|0));f=(M0(e[t>>2]|0)|0)==0,i=f?i:n,n=A+4|0,rn(n),nn(n),M0(e[t>>2]|0)|0&&(fe(n),e[t>>2]=(e[t>>2]|0)+1),e[r>>2]=e[A>>2],t=r+4|0,c0(n,i,t),a0(t),e[r+16>>2]=e[A>>2],t=r+20|0,c0(n,i+12|0,t),a0(t),e[r+32>>2]=e[A>>2],t=r+36|0,c0(n,i+24|0,t),a0(t),e[r+48>>2]=e[A>>2],t=r+52|0,c0(n,i+36|0,t),a0(t),e[r+64>>2]=e[A>>2],r=r+68|0,c0(n,i+48|0,r),a0(r),y=a}function Be(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0;if(D=y,y=y+32|0,d=D+12|0,f=D,x=A+4|0,v=e[16960+(t<<2)>>2]|0,p=(i|0)!=0,v=p?v*3|0:v,n=e[x>>2]|0,g=A+8|0,l=e[g>>2]|0,p){if(s=A+12|0,i=e[s>>2]|0,n=l+n+i|0,(n|0)==(v|0))return x=1,y=D,x|0;a=s}else a=A+12|0,i=e[a>>2]|0,n=l+n+i|0;if((n|0)<=(v|0))return x=0,y=D,x|0;do if((i|0)>0){if(i=e[A>>2]|0,(l|0)>0){s=18640+(i*80|0)+60|0,i=A;break}i=18640+(i*80|0)+40|0,r?(il(d,v,0,0),pr(x,d,f),Mt(f),c0(f,d,x),s=i,i=A):(s=i,i=A)}else s=18640+((e[A>>2]|0)*80|0)+20|0,i=A;while(!1);if(e[i>>2]=e[s>>2],n=s+16|0,(e[n>>2]|0)>0){i=0;do tn(x),i=i+1|0;while((i|0)<(e[n>>2]|0))}return A=s+4|0,e[d>>2]=e[A>>2],e[d+4>>2]=e[A+4>>2],e[d+8>>2]=e[A+8>>2],t=e[16880+(t<<2)>>2]|0,Ji(d,p?t*3|0:t),c0(x,d,x),a0(x),p?i=((e[g>>2]|0)+(e[x>>2]|0)+(e[a>>2]|0)|0)==(v|0)?1:2:i=2,x=i,y=D,x|0}function Bl(A,t){A=A|0,t=t|0;var r=0;do r=Be(A,t,0,1)|0;while((r|0)==2);return r|0}function yr(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0;if(PA=y,y=y+240|0,s=PA+224|0,nA=PA+208|0,cA=PA,uA=PA+192|0,DA=PA+176|0,F=PA+160|0,K=PA+144|0,z=PA+128|0,G=PA+112|0,T=PA+96|0,e[s>>2]=t,e[nA>>2]=e[A>>2],e[nA+4>>2]=e[A+4>>2],e[nA+8>>2]=e[A+8>>2],e[nA+12>>2]=e[A+12>>2],ln(nA,s,cA),e[n>>2]=0,S=i+r+((i|0)==6&1)|0,(S|0)<=(r|0)){y=PA;return}a=e[s>>2]|0,g=r+6|0,p=16960+(a<<2)|0,v=K+8|0,d=z+8|0,x=G+8|0,D=uA+4|0,l=0,f=r,i=-1;A:for(;;){if(s=(f|0)%6|0,A=cA+(s<<4)|0,e[uA>>2]=e[A>>2],e[uA+4>>2]=e[A+4>>2],e[uA+8>>2]=e[A+8>>2],e[uA+12>>2]=e[A+12>>2],A=l,l=Be(uA,a,0,1)|0,(f|0)>(r|0)&(M0(t)|0)!=0&&(A|0)!=1&&(e[uA>>2]|0)!=(i|0)){switch(le(cA+(((s+5|0)%6|0)<<4)+4|0,DA),le(cA+(s<<4)+4|0,F),LA=+(e[p>>2]|0),E[K>>3]=LA*3,E[v>>3]=0,kA=LA*-1.5,E[z>>3]=kA,E[d>>3]=LA*2.598076211353316,E[G>>3]=kA,E[x>>3]=LA*-2.598076211353316,s=e[nA>>2]|0,e[17040+(s*80|0)+(((i|0)==(s|0)?e[uA>>2]|0:i)<<2)>>2]|0){case 1:{A=z,i=K;break}case 3:{A=G,i=z;break}case 2:{A=K,i=G;break}default:{A=8;break A}}Bn(DA,F,i,A,T),!(Cn(DA,T)|0)&&!(Cn(F,T)|0)&&(je(T,e[nA>>2]|0,a,1,n+8+(e[n>>2]<<4)|0),e[n>>2]=(e[n>>2]|0)+1)}if((f|0)<(g|0)&&(le(D,DA),je(DA,e[uA>>2]|0,a,1,n+8+(e[n>>2]<<4)|0),e[n>>2]=(e[n>>2]|0)+1),f=f+1|0,(f|0)>=(S|0)){A=3;break}else i=e[uA>>2]|0}if((A|0)==3){y=PA;return}else(A|0)==8&&BA(27054,27017,737,27099)}function ln(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0;a=y,y=y+160|0,i=a+80|0,n=a,s=i,l=20368,f=s+72|0;do e[s>>2]=e[l>>2],s=s+4|0,l=l+4|0;while((s|0)<(f|0));s=n,l=20448,f=s+72|0;do e[s>>2]=e[l>>2],s=s+4|0,l=l+4|0;while((s|0)<(f|0));f=(M0(e[t>>2]|0)|0)==0,i=f?i:n,n=A+4|0,rn(n),nn(n),M0(e[t>>2]|0)|0&&(fe(n),e[t>>2]=(e[t>>2]|0)+1),e[r>>2]=e[A>>2],t=r+4|0,c0(n,i,t),a0(t),e[r+16>>2]=e[A>>2],t=r+20|0,c0(n,i+12|0,t),a0(t),e[r+32>>2]=e[A>>2],t=r+36|0,c0(n,i+24|0,t),a0(t),e[r+48>>2]=e[A>>2],t=r+52|0,c0(n,i+36|0,t),a0(t),e[r+64>>2]=e[A>>2],t=r+68|0,c0(n,i+48|0,t),a0(t),e[r+80>>2]=e[A>>2],r=r+84|0,c0(n,i+60|0,r),a0(r),y=a}function Cl(A,t){return A=A|0,t=t|0,t=eA(A|0,t|0,52)|0,b()|0,t&15|0}function fn(A,t){return A=A|0,t=t|0,t=eA(A|0,t|0,45)|0,b()|0,t&127|0}function vr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0;return!(!0&(t&-16777216|0)==134217728)||(i=eA(A|0,t|0,52)|0,b()|0,i=i&15,r=eA(A|0,t|0,45)|0,b()|0,r=r&127,r>>>0>121)?(A=0,A|0):(l=(i^15)*3|0,n=eA(A|0,t|0,l|0)|0,l=sA(n|0,b()|0,l|0)|0,n=b()|0,s=u0(-1227133514,-1171,l|0,n|0)|0,!((l&613566756&s|0)==0&(n&4681&(b()|0)|0)==0)||(l=(i*3|0)+19|0,s=sA(~A|0,~t|0,l|0)|0,l=eA(s|0,b()|0,l|0)|0,!((i|0)==15|(l|0)==0&(b()|0)==0))?(l=0,l|0):!(tA[20528+r>>0]|0)||(t=t&8191,(A|0)==0&(t|0)==0)?(l=1,l|0):(l=Qn(A|0,t|0)|0,b()|0,((63-l|0)%3|0|0)!=0|0))}function br(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0;if(n=sA(t|0,0,52)|0,s=b()|0,r=sA(r|0,0,45)|0,r=s|(b()|0)|134225919,(t|0)<1){s=-1,i=r,t=A,e[t>>2]=s,A=A+4|0,e[A>>2]=i;return}for(s=1,n=-1;l=(15-s|0)*3|0,f=sA(7,0,l|0)|0,r=r&~(b()|0),l=sA(i|0,0,l|0)|0,n=n&~f|l,r=r|(b()|0),(s|0)!=(t|0);)s=s+1|0;f=A,l=f,e[l>>2]=n,f=f+4|0,e[f>>2]=r}function kr(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0;if(s=eA(A|0,t|0,52)|0,b()|0,s=s&15,r>>>0>15)return i=4,i|0;if((s|0)<(r|0))return i=12,i|0;if((s|0)==(r|0))return e[i>>2]=A,e[i+4>>2]=t,i=0,i|0;if(n=sA(r|0,0,52)|0,n=n|A,A=b()|0|t&-15728641,(s|0)>(r|0))do t=sA(7,0,(14-r|0)*3|0)|0,r=r+1|0,n=t|n,A=b()|0|A;while((r|0)<(s|0));return e[i>>2]=n,e[i+4>>2]=A,i=0,i|0}function He(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0;if(s=eA(A|0,t|0,52)|0,b()|0,s=s&15,!((r|0)<16&(s|0)<=(r|0)))return i=4,i|0;n=r-s|0,r=eA(A|0,t|0,45)|0,b()|0;A:do if(!($A(r&127)|0))r=Z0(7,0,n,((n|0)<0)<<31>>31)|0,n=b()|0;else{e:do if(s|0){for(r=1;l=sA(7,0,(15-r|0)*3|0)|0,!!((l&A|0)==0&((b()|0)&t|0)==0);)if(r>>>0<s>>>0)r=r+1|0;else break e;r=Z0(7,0,n,((n|0)<0)<<31>>31)|0,n=b()|0;break A}while(!1);r=Z0(7,0,n,((n|0)<0)<<31>>31)|0,r=l0(r|0,b()|0,5,0)|0,r=EA(r|0,b()|0,-5,-1)|0,r=J0(r|0,b()|0,6,0)|0,r=EA(r|0,b()|0,1,0)|0,n=b()|0}while(!1);return l=i,e[l>>2]=r,e[l+4>>2]=n,l=0,l|0}function WA(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;if(n=eA(A|0,t|0,45)|0,b()|0,!($A(n&127)|0))return n=0,n|0;n=eA(A|0,t|0,52)|0,b()|0,n=n&15;A:do if(!n)r=0;else for(i=1;;){if(r=eA(A|0,t|0,(15-i|0)*3|0)|0,b()|0,r=r&7,r|0)break A;if(i>>>0<n>>>0)i=i+1|0;else{r=0;break}}while(!1);return n=(r|0)==0&1,n|0}function dl(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0;if(l=y,y=y+16|0,s=l,Mr(s,A,t,r),t=s,A=e[t>>2]|0,t=e[t+4>>2]|0,(A|0)==0&(t|0)==0)return y=l,0;n=0,r=0;do f=i+(n<<3)|0,e[f>>2]=A,e[f+4>>2]=t,n=EA(n|0,r|0,1,0)|0,r=b()|0,Pr(s),f=s,A=e[f>>2]|0,t=e[f+4>>2]|0;while(!((A|0)==0&(t|0)==0));return y=l,0}function un(A,t,r,i){return A=A|0,t=t|0,r=r|0,i=i|0,(i|0)<(r|0)?(r=t,i=A,MA(r|0),i|0):(r=sA(-1,-1,((i-r|0)*3|0)+3|0)|0,i=sA(~r|0,~(b()|0)|0,(15-i|0)*3|0)|0,r=~(b()|0)&t,i=~i&A,MA(r|0),i|0)}function hn(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0;return n=eA(A|0,t|0,52)|0,b()|0,n=n&15,(r|0)<16&(n|0)<=(r|0)?((n|0)<(r|0)&&(n=sA(-1,-1,((r+-1-n|0)*3|0)+3|0)|0,n=sA(~n|0,~(b()|0)|0,(15-r|0)*3|0)|0,t=~(b()|0)&t,A=~n&A),n=sA(r|0,0,52)|0,r=t&-15728641|(b()|0),e[i>>2]=A|n,e[i+4>>2]=r,i=0,i|0):(i=4,i|0)}function xl(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0,wA=0,iA=0;if((r|0)==0&(i|0)==0)return iA=0,iA|0;if(n=A,s=e[n>>2]|0,n=e[n+4>>2]|0,!0&(n&15728640|0)==0){if(!((i|0)>0|(i|0)==0&r>>>0>0)||(iA=t,e[iA>>2]=s,e[iA+4>>2]=n,(r|0)==1&(i|0)==0))return iA=0,iA|0;n=1,s=0;do kA=A+(n<<3)|0,wA=e[kA+4>>2]|0,iA=t+(n<<3)|0,e[iA>>2]=e[kA>>2],e[iA+4>>2]=wA,n=EA(n|0,s|0,1,0)|0,s=b()|0;while((s|0)<(i|0)|(s|0)==(i|0)&n>>>0<r>>>0);return n=0,n|0}if(LA=r<<3,wA=L0(LA)|0,!wA)return iA=13,iA|0;if(Pe(wA|0,A|0,LA|0)|0,kA=v0(r,8)|0,!kA)return yA(wA),iA=13,iA|0;A:for(;;){n=wA,g=e[n>>2]|0,n=e[n+4>>2]|0,DA=eA(g|0,n|0,52)|0,b()|0,DA=DA&15,PA=DA+-1|0,uA=(DA|0)!=0,cA=(i|0)>0|(i|0)==0&r>>>0>0;e:do if(uA&cA){if(z=sA(PA|0,0,52)|0,G=b()|0,PA>>>0>15){if(!((g|0)==0&(n|0)==0)){iA=16;break A}for(s=0,A=0;;){if(s=EA(s|0,A|0,1,0)|0,A=b()|0,!((A|0)<(i|0)|(A|0)==(i|0)&s>>>0<r>>>0))break e;if(l=wA+(s<<3)|0,nA=e[l>>2]|0,l=e[l+4>>2]|0,!((nA|0)==0&(l|0)==0)){n=l,iA=16;break A}}}for(f=g,A=n,s=0,l=0;;){if(!((f|0)==0&(A|0)==0)){if(!(!0&(A&117440512|0)==0)){iA=21;break A}if(p=eA(f|0,A|0,52)|0,b()|0,p=p&15,(p|0)<(PA|0)){n=12,iA=27;break A}if((p|0)!=(PA|0)&&(f=f|z,A=A&-15728641|G,p>>>0>=DA>>>0)){a=PA;do nA=sA(7,0,(14-a|0)*3|0)|0,a=a+1|0,f=nA|f,A=b()|0|A;while(a>>>0<p>>>0)}if(d=Me(f|0,A|0,r|0,i|0)|0,x=b()|0,a=kA+(d<<3)|0,p=a,v=e[p>>2]|0,p=e[p+4>>2]|0,!((v|0)==0&(p|0)==0)){F=0,K=0;do{if((F|0)>(i|0)|(F|0)==(i|0)&K>>>0>r>>>0){iA=31;break A}if((v|0)==(f|0)&(p&-117440513|0)==(A|0)){D=eA(v|0,p|0,56)|0,b()|0,D=D&7,S=D+1|0,nA=eA(v|0,p|0,45)|0,b()|0;t:do if(!($A(nA&127)|0))p=7;else{if(v=eA(v|0,p|0,52)|0,b()|0,v=v&15,!v){p=6;break}for(p=1;;){if(nA=sA(7,0,(15-p|0)*3|0)|0,!((nA&f|0)==0&((b()|0)&A|0)==0)){p=7;break t}if(p>>>0<v>>>0)p=p+1|0;else{p=6;break}}}while(!1);if((D+2|0)>>>0>p>>>0){iA=41;break A}nA=sA(S|0,0,56)|0,A=b()|0|A&-117440513,T=a,e[T>>2]=0,e[T+4>>2]=0,f=nA|f}else d=EA(d|0,x|0,1,0)|0,d=De(d|0,b()|0,r|0,i|0)|0,x=b()|0;K=EA(K|0,F|0,1,0)|0,F=b()|0,a=kA+(d<<3)|0,p=a,v=e[p>>2]|0,p=e[p+4>>2]|0}while(!((v|0)==0&(p|0)==0))}nA=a,e[nA>>2]=f,e[nA+4>>2]=A}if(s=EA(s|0,l|0,1,0)|0,l=b()|0,!((l|0)<(i|0)|(l|0)==(i|0)&s>>>0<r>>>0))break e;A=wA+(s<<3)|0,f=e[A>>2]|0,A=e[A+4>>2]|0}}while(!1);if(nA=EA(r|0,i|0,5,0)|0,T=b()|0,T>>>0<0|(T|0)==0&nA>>>0<11){iA=85;break}if(nA=J0(r|0,i|0,6,0)|0,b()|0,nA=v0(nA,8)|0,!nA){iA=48;break}do if(cA){for(S=0,A=0,D=0,F=0;;){if(p=kA+(S<<3)|0,l=p,s=e[l>>2]|0,l=e[l+4>>2]|0,(s|0)==0&(l|0)==0)T=D;else{v=eA(s|0,l|0,56)|0,b()|0,v=v&7,f=v+1|0,d=l&-117440513,T=eA(s|0,l|0,45)|0,b()|0;e:do if($A(T&127)|0){if(x=eA(s|0,l|0,52)|0,b()|0,x=x&15,x|0)for(a=1;;){if(T=sA(7,0,(15-a|0)*3|0)|0,!((s&T|0)==0&(d&(b()|0)|0)==0))break e;if(a>>>0<x>>>0)a=a+1|0;else break}l=sA(f|0,0,56)|0,s=l|s,l=b()|0|d,f=p,e[f>>2]=s,e[f+4>>2]=l,f=v+2|0}while(!1);(f|0)==7?(T=nA+(A<<3)|0,e[T>>2]=s,e[T+4>>2]=l&-117440513,A=EA(A|0,D|0,1,0)|0,T=b()|0):T=D}if(S=EA(S|0,F|0,1,0)|0,F=b()|0,(F|0)<(i|0)|(F|0)==(i|0)&S>>>0<r>>>0)D=T;else break}if(cA){if(K=PA>>>0>15,z=sA(PA|0,0,52)|0,G=b()|0,!uA){for(s=0,a=0,f=0,l=0;(g|0)==0&(n|0)==0||(PA=t+(s<<3)|0,e[PA>>2]=g,e[PA+4>>2]=n,s=EA(s|0,a|0,1,0)|0,a=b()|0),f=EA(f|0,l|0,1,0)|0,l=b()|0,!!((l|0)<(i|0)|(l|0)==(i|0)&f>>>0<r>>>0);)n=wA+(f<<3)|0,g=e[n>>2]|0,n=e[n+4>>2]|0;n=T;break}for(s=0,a=0,l=0,f=0;;){do if(!((g|0)==0&(n|0)==0)){if(x=eA(g|0,n|0,52)|0,b()|0,x=x&15,K|(x|0)<(PA|0)){iA=80;break A}if((x|0)!=(PA|0)){if(p=g|z,v=n&-15728641|G,x>>>0>=DA>>>0){d=PA;do uA=sA(7,0,(14-d|0)*3|0)|0,d=d+1|0,p=uA|p,v=b()|0|v;while(d>>>0<x>>>0)}}else p=g,v=n;D=Me(p|0,v|0,r|0,i|0)|0,d=0,x=0,F=b()|0;do{if((d|0)>(i|0)|(d|0)==(i|0)&x>>>0>r>>>0){iA=81;break A}if(uA=kA+(D<<3)|0,S=e[uA+4>>2]|0,(S&-117440513|0)==(v|0)&&(e[uA>>2]|0)==(p|0)){iA=65;break}uA=EA(D|0,F|0,1,0)|0,D=De(uA|0,b()|0,r|0,i|0)|0,F=b()|0,x=EA(x|0,d|0,1,0)|0,d=b()|0,uA=kA+(D<<3)|0}while(!((e[uA>>2]|0)==(p|0)&&(e[uA+4>>2]|0)==(v|0)));if((iA|0)==65&&(iA=0,!0&(S&117440512|0)==100663296))break;uA=t+(s<<3)|0,e[uA>>2]=g,e[uA+4>>2]=n,s=EA(s|0,a|0,1,0)|0,a=b()|0}while(!1);if(l=EA(l|0,f|0,1,0)|0,f=b()|0,!((f|0)<(i|0)|(f|0)==(i|0)&l>>>0<r>>>0))break;n=wA+(l<<3)|0,g=e[n>>2]|0,n=e[n+4>>2]|0}n=T}else s=0,n=T}else s=0,A=0,n=0;while(!1);if(Ae(kA|0,0,LA|0)|0,Pe(wA|0,nA|0,A<<3|0)|0,yA(nA),(A|0)==0&(n|0)==0){iA=89;break}else t=t+(s<<3)|0,i=n,r=A}if((iA|0)==16)!0&(n&117440512|0)==0?(n=4,iA=27):iA=21;else if((iA|0)==31)BA(27795,27122,529,27132);else{if((iA|0)==41)return yA(wA),yA(kA),iA=10,iA|0;if((iA|0)==48)return yA(wA),yA(kA),iA=13,iA|0;(iA|0)==80?BA(27795,27122,620,27132):(iA|0)==81?BA(27795,27122,632,27132):(iA|0)==85&&(Pe(t|0,wA|0,r<<3|0)|0,iA=89)}return(iA|0)==21?(yA(wA),yA(kA),iA=5,iA|0):(iA|0)==27?(yA(wA),yA(kA),iA=n,iA|0):(iA|0)==89?(yA(wA),yA(kA),iA=0,iA|0):0}function Dl(A,t,r,i,n,s,l){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0,l=l|0;var f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0;if(S=y,y=y+16|0,D=S,!((r|0)>0|(r|0)==0&t>>>0>0))return D=0,y=S,D|0;if((l|0)>=16)return D=12,y=S,D|0;d=0,x=0,v=0,f=0;A:for(;;){if(g=A+(d<<3)|0,a=e[g>>2]|0,g=e[g+4>>2]|0,p=eA(a|0,g|0,52)|0,b()|0,(p&15|0)>(l|0)){f=12,a=11;break}if(Mr(D,a,g,l),p=D,g=e[p>>2]|0,p=e[p+4>>2]|0,(g|0)==0&(p|0)==0)a=v;else{a=v;do{if(!((f|0)<(s|0)|(f|0)==(s|0)&a>>>0<n>>>0)){a=10;break A}v=i+(a<<3)|0,e[v>>2]=g,e[v+4>>2]=p,a=EA(a|0,f|0,1,0)|0,f=b()|0,Pr(D),v=D,g=e[v>>2]|0,p=e[v+4>>2]|0}while(!((g|0)==0&(p|0)==0))}if(d=EA(d|0,x|0,1,0)|0,x=b()|0,(x|0)<(r|0)|(x|0)==(r|0)&d>>>0<t>>>0)v=a;else{f=0,a=11;break}}return(a|0)==10?(D=14,y=S,D|0):(a|0)==11?(y=S,f|0):0}function Ml(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;d=y,y=y+16|0,v=d;A:do if((r|0)>0|(r|0)==0&t>>>0>0){for(g=0,l=0,s=0,p=0;;){if(a=A+(g<<3)|0,f=e[a>>2]|0,a=e[a+4>>2]|0,!((f|0)==0&(a|0)==0)&&(a=(He(f,a,i,v)|0)==0,f=v,l=EA(e[f>>2]|0,e[f+4>>2]|0,l|0,s|0)|0,s=b()|0,!a)){s=12;break}if(g=EA(g|0,p|0,1,0)|0,p=b()|0,!((p|0)<(r|0)|(p|0)==(r|0)&g>>>0<t>>>0))break A}return y=d,s|0}else l=0,s=0;while(!1);return e[n>>2]=l,e[n+4>>2]=s,n=0,y=d,n|0}function Pl(A,t){return A=A|0,t=t|0,t=eA(A|0,t|0,52)|0,b()|0,t&1|0}function y0(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;if(n=eA(A|0,t|0,52)|0,b()|0,n=n&15,!n)return n=0,n|0;for(i=1;;){if(r=eA(A|0,t|0,(15-i|0)*3|0)|0,b()|0,r=r&7,r|0){i=5;break}if(i>>>0<n>>>0)i=i+1|0;else{r=0,i=5;break}}return(i|0)==5?r|0:0}function Br(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0;if(a=eA(A|0,t|0,52)|0,b()|0,a=a&15,!a)return f=t,a=A,MA(f|0),a|0;for(f=1,r=0;;){s=(15-f|0)*3|0,i=sA(7,0,s|0)|0,n=b()|0,l=eA(A|0,t|0,s|0)|0,b()|0,s=sA(ue(l&7)|0,0,s|0)|0,l=b()|0,A=s|A&~i,t=l|t&~n;A:do if(!r)if((s&i|0)==0&(l&n|0)==0)r=0;else if(i=eA(A|0,t|0,52)|0,b()|0,i=i&15,!i)r=1;else{r=1;e:for(;;){switch(l=eA(A|0,t|0,(15-r|0)*3|0)|0,b()|0,l&7){case 1:break e;case 0:break;default:{r=1;break A}}if(r>>>0<i>>>0)r=r+1|0;else{r=1;break A}}for(r=1;;)if(l=(15-r|0)*3|0,n=eA(A|0,t|0,l|0)|0,b()|0,s=sA(7,0,l|0)|0,t=t&~(b()|0),l=sA(ue(n&7)|0,0,l|0)|0,A=A&~s|l,t=t|(b()|0),r>>>0<i>>>0)r=r+1|0;else{r=1;break}}while(!1);if(f>>>0<a>>>0)f=f+1|0;else break}return MA(t|0),A|0}function he(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0;if(i=eA(A|0,t|0,52)|0,b()|0,i=i&15,!i)return r=t,i=A,MA(r|0),i|0;for(r=1;s=(15-r|0)*3|0,l=eA(A|0,t|0,s|0)|0,b()|0,n=sA(7,0,s|0)|0,t=t&~(b()|0),s=sA(ue(l&7)|0,0,s|0)|0,A=s|A&~n,t=b()|0|t,r>>>0<i>>>0;)r=r+1|0;return MA(t|0),A|0}function _l(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0;if(a=eA(A|0,t|0,52)|0,b()|0,a=a&15,!a)return f=t,a=A,MA(f|0),a|0;for(f=1,r=0;;){s=(15-f|0)*3|0,i=sA(7,0,s|0)|0,n=b()|0,l=eA(A|0,t|0,s|0)|0,b()|0,s=sA(X0(l&7)|0,0,s|0)|0,l=b()|0,A=s|A&~i,t=l|t&~n;A:do if(!r)if((s&i|0)==0&(l&n|0)==0)r=0;else if(i=eA(A|0,t|0,52)|0,b()|0,i=i&15,!i)r=1;else{r=1;e:for(;;){switch(l=eA(A|0,t|0,(15-r|0)*3|0)|0,b()|0,l&7){case 1:break e;case 0:break;default:{r=1;break A}}if(r>>>0<i>>>0)r=r+1|0;else{r=1;break A}}for(r=1;;)if(n=(15-r|0)*3|0,s=sA(7,0,n|0)|0,l=t&~(b()|0),t=eA(A|0,t|0,n|0)|0,b()|0,t=sA(X0(t&7)|0,0,n|0)|0,A=A&~s|t,t=l|(b()|0),r>>>0<i>>>0)r=r+1|0;else{r=1;break}}while(!1);if(f>>>0<a>>>0)f=f+1|0;else break}return MA(t|0),A|0}function Cr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0;if(i=eA(A|0,t|0,52)|0,b()|0,i=i&15,!i)return r=t,i=A,MA(r|0),i|0;for(r=1;l=(15-r|0)*3|0,s=sA(7,0,l|0)|0,n=t&~(b()|0),t=eA(A|0,t|0,l|0)|0,b()|0,t=sA(X0(t&7)|0,0,l|0)|0,A=t|A&~s,t=b()|0|n,r>>>0<i>>>0;)r=r+1|0;return MA(t|0),A|0}function Ql(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(a=y,y=y+64|0,f=a+40|0,i=a+24|0,n=a+12|0,s=a,sA(t|0,0,52)|0,r=b()|0|134225919,!t)return(e[A+4>>2]|0)>2||(e[A+8>>2]|0)>2||(e[A+12>>2]|0)>2?(l=0,f=0,MA(l|0),y=a,f|0):(sA(Ki(A)|0,0,45)|0,l=b()|0|r,f=-1,MA(l|0),y=a,f|0);if(e[f>>2]=e[A>>2],e[f+4>>2]=e[A+4>>2],e[f+8>>2]=e[A+8>>2],e[f+12>>2]=e[A+12>>2],l=f+4|0,(t|0)>0)for(A=-1;e[i>>2]=e[l>>2],e[i+4>>2]=e[l+4>>2],e[i+8>>2]=e[l+8>>2],t&1?(ll(l),e[n>>2]=e[l>>2],e[n+4>>2]=e[l+4>>2],e[n+8>>2]=e[l+8>>2],Dt(n)):(An(l),e[n>>2]=e[l>>2],e[n+4>>2]=e[l+4>>2],e[n+8>>2]=e[l+8>>2],fe(n)),pr(i,n,s),a0(s),p=(15-t|0)*3|0,g=sA(7,0,p|0)|0,r=r&~(b()|0),p=sA(xt(s)|0,0,p|0)|0,A=p|A&~g,r=b()|0|r,(t|0)>1;)t=t+-1|0;else A=-1;A:do if((e[l>>2]|0)<=2&&(e[f+8>>2]|0)<=2&&(e[f+12>>2]|0)<=2){if(i=Ki(f)|0,t=sA(i|0,0,45)|0,t=t|A,A=b()|0|r&-1040385,s=qo(f)|0,!($A(i)|0)){if((s|0)<=0)break;for(n=0;;){if(i=eA(t|0,A|0,52)|0,b()|0,i=i&15,i)for(r=1;p=(15-r|0)*3|0,f=eA(t|0,A|0,p|0)|0,b()|0,g=sA(7,0,p|0)|0,A=A&~(b()|0),p=sA(ue(f&7)|0,0,p|0)|0,t=t&~g|p,A=A|(b()|0),r>>>0<i>>>0;)r=r+1|0;if(n=n+1|0,(n|0)==(s|0))break A}}n=eA(t|0,A|0,52)|0,b()|0,n=n&15;e:do if(n){r=1;t:for(;;){switch(p=eA(t|0,A|0,(15-r|0)*3|0)|0,b()|0,p&7){case 1:break t;case 0:break;default:break e}if(r>>>0<n>>>0)r=r+1|0;else break e}if(qi(i,e[f>>2]|0)|0)for(r=1;f=(15-r|0)*3|0,g=sA(7,0,f|0)|0,p=A&~(b()|0),A=eA(t|0,A|0,f|0)|0,b()|0,A=sA(X0(A&7)|0,0,f|0)|0,t=t&~g|A,A=p|(b()|0),r>>>0<n>>>0;)r=r+1|0;else for(r=1;p=(15-r|0)*3|0,f=eA(t|0,A|0,p|0)|0,b()|0,g=sA(7,0,p|0)|0,A=A&~(b()|0),p=sA(ue(f&7)|0,0,p|0)|0,t=t&~g|p,A=A|(b()|0),r>>>0<n>>>0;)r=r+1|0}while(!1);if((s|0)>0){r=0;do t=Br(t,A)|0,A=b()|0,r=r+1|0;while((r|0)!=(s|0))}}else t=0,A=0;while(!1);return g=A,p=t,MA(g|0),y=a,p|0}function M0(A){return A=A|0,(A|0)%2|0|0}function dr(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0;return n=y,y=y+16|0,i=n,t>>>0>15?(i=4,y=n,i|0):(e[A+4>>2]&2146435072|0)==2146435072||(e[A+8+4>>2]&2146435072|0)==2146435072?(i=3,y=n,i|0):(yl(A,t,i),t=Ql(i,t)|0,i=b()|0,e[r>>2]=t,e[r+4>>2]=i,(t|0)==0&(i|0)==0&&BA(27795,27122,959,27145),i=0,y=n,i|0)}function xr(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;if(n=r+4|0,s=eA(A|0,t|0,52)|0,b()|0,s=s&15,l=eA(A|0,t|0,45)|0,b()|0,i=(s|0)==0,$A(l&127)|0){if(i)return l=1,l|0;i=1}else{if(i)return l=0,l|0;(e[n>>2]|0)==0&&(e[r+8>>2]|0)==0?i=(e[r+12>>2]|0)!=0&1:i=1}for(r=1;r&1?Dt(n):fe(n),l=eA(A|0,t|0,(15-r|0)*3|0)|0,b()|0,en(n,l&7),r>>>0<s>>>0;)r=r+1|0;return i|0}function Ce(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(p=y,y=y+16|0,a=p,g=eA(A|0,t|0,45)|0,b()|0,g=g&127,g>>>0>121)return e[r>>2]=0,e[r+4>>2]=0,e[r+8>>2]=0,e[r+12>>2]=0,g=5,y=p,g|0;A:do if(($A(g)|0)!=0&&(s=eA(A|0,t|0,52)|0,b()|0,s=s&15,(s|0)!=0)){i=1;e:for(;;){switch(f=eA(A|0,t|0,(15-i|0)*3|0)|0,b()|0,f&7){case 5:break e;case 0:break;default:{i=t;break A}}if(i>>>0<s>>>0)i=i+1|0;else{i=t;break A}}for(n=1,i=t;t=(15-n|0)*3|0,l=sA(7,0,t|0)|0,f=i&~(b()|0),i=eA(A|0,i|0,t|0)|0,b()|0,i=sA(X0(i&7)|0,0,t|0)|0,A=A&~l|i,i=f|(b()|0),n>>>0<s>>>0;)n=n+1|0}else i=t;while(!1);if(f=7696+(g*28|0)|0,e[r>>2]=e[f>>2],e[r+4>>2]=e[f+4>>2],e[r+8>>2]=e[f+8>>2],e[r+12>>2]=e[f+12>>2],!(xr(A,i,r)|0))return g=0,y=p,g|0;if(l=r+4|0,e[a>>2]=e[l>>2],e[a+4>>2]=e[l+4>>2],e[a+8>>2]=e[l+8>>2],s=eA(A|0,i|0,52)|0,b()|0,f=s&15,s&1?(fe(l),s=f+1|0):s=f,!($A(g)|0))i=0;else{A:do if(!f)i=0;else for(t=1;;){if(n=eA(A|0,i|0,(15-t|0)*3|0)|0,b()|0,n=n&7,n|0){i=n;break A}if(t>>>0<f>>>0)t=t+1|0;else{i=0;break}}while(!1);i=(i|0)==4&1}if(!(Be(r,s,i,0)|0))(s|0)!=(f|0)&&(e[l>>2]=e[a>>2],e[l+4>>2]=e[a+4>>2],e[l+8>>2]=e[a+8>>2]);else{if($A(g)|0)do;while((Be(r,s,0,0)|0)!=0);(s|0)!=(f|0)&&An(l)}return g=0,y=p,g|0}function ae(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;return s=y,y=y+16|0,i=s,n=Ce(A,t,i)|0,n|0?(y=s,n|0):(n=eA(A|0,t|0,52)|0,b()|0,kl(i,n&15,r),n=0,y=s,n|0)}function de(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0;if(l=y,y=y+16|0,s=l,i=Ce(A,t,s)|0,i|0)return s=i,y=l,s|0;i=eA(A|0,t|0,45)|0,b()|0,i=($A(i&127)|0)==0,n=eA(A|0,t|0,52)|0,b()|0,n=n&15;A:do if(!i){if(n|0)for(i=1;;){if(f=sA(7,0,(15-i|0)*3|0)|0,!((f&A|0)==0&((b()|0)&t|0)==0))break A;if(i>>>0<n>>>0)i=i+1|0;else break}return Er(s,n,0,5,r),f=0,y=l,f|0}while(!1);return yr(s,n,0,6,r),f=0,y=l,f|0}function Sl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;if(n=eA(A|0,t|0,45)|0,b()|0,!($A(n&127)|0))return n=2,e[r>>2]=n,0;if(n=eA(A|0,t|0,52)|0,b()|0,n=n&15,!n)return n=5,e[r>>2]=n,0;for(i=1;;){if(s=sA(7,0,(15-i|0)*3|0)|0,!((s&A|0)==0&((b()|0)&t|0)==0)){i=2,A=6;break}if(i>>>0<n>>>0)i=i+1|0;else{i=5,A=6;break}}return(A|0)==6&&(e[r>>2]=i),0}function an(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0;v=y,y=y+128|0,g=v+112|0,s=v+96|0,p=v,n=eA(A|0,t|0,52)|0,b()|0,f=n&15,e[g>>2]=f,l=eA(A|0,t|0,45)|0,b()|0,l=l&127;A:do if($A(l)|0){if(f|0)for(i=1;;){if(a=sA(7,0,(15-i|0)*3|0)|0,!((a&A|0)==0&((b()|0)&t|0)==0)){n=0;break A}if(i>>>0<f>>>0)i=i+1|0;else break}if(n&1)n=1;else return a=sA(f+1|0,0,52)|0,p=b()|0|t&-15728641,g=sA(7,0,(14-f|0)*3|0)|0,p=an((a|A)&~g,p&~(b()|0),r)|0,y=v,p|0}else n=0;while(!1);if(i=Ce(A,t,s)|0,!i){n?(on(s,g,p),a=5):(ln(s,g,p),a=6);A:do if($A(l)|0)if(!f)A=5;else for(i=1;;){if(l=sA(7,0,(15-i|0)*3|0)|0,!((l&A|0)==0&((b()|0)&t|0)==0)){A=2;break A}if(i>>>0<f>>>0)i=i+1|0;else{A=5;break}}else A=2;while(!1);Ae(r|0,-1,A<<2|0)|0;A:do if(n)for(s=0;;){if(l=p+(s<<4)|0,Bl(l,e[g>>2]|0)|0,l=e[l>>2]|0,f=e[r>>2]|0,(f|0)==-1|(f|0)==(l|0))i=r;else{n=0;do{if(n=n+1|0,n>>>0>=A>>>0){i=1;break A}i=r+(n<<2)|0,f=e[i>>2]|0}while(!((f|0)==-1|(f|0)==(l|0)))}if(e[i>>2]=l,s=s+1|0,s>>>0>=a>>>0){i=0;break}}else for(s=0;;){if(l=p+(s<<4)|0,Be(l,e[g>>2]|0,0,1)|0,l=e[l>>2]|0,f=e[r>>2]|0,(f|0)==-1|(f|0)==(l|0))i=r;else{n=0;do{if(n=n+1|0,n>>>0>=A>>>0){i=1;break A}i=r+(n<<2)|0,f=e[i>>2]|0}while(!((f|0)==-1|(f|0)==(l|0)))}if(e[i>>2]=l,s=s+1|0,s>>>0>=a>>>0){i=0;break}}while(!1)}return p=i,y=v,p|0}function Tl(){return 12}function Dr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0;if(A>>>0>15)return f=4,f|0;if(sA(A|0,0,52)|0,f=b()|0|134225919,!A){r=0,i=0;do $A(i)|0&&(sA(i|0,0,45)|0,l=f|(b()|0),A=t+(r<<3)|0,e[A>>2]=-1,e[A+4>>2]=l,r=r+1|0),i=i+1|0;while((i|0)!=122);return r=0,r|0}r=0,l=0;do{if($A(l)|0){for(sA(l|0,0,45)|0,i=1,n=-1,s=f|(b()|0);a=sA(7,0,(15-i|0)*3|0)|0,n=n&~a,s=s&~(b()|0),(i|0)!=(A|0);)i=i+1|0;a=t+(r<<3)|0,e[a>>2]=n,e[a+4>>2]=s,r=r+1|0}l=l+1|0}while((l|0)!=122);return r=0,r|0}function Il(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0;if(z=y,y=y+16|0,F=z,K=eA(A|0,t|0,52)|0,b()|0,K=K&15,r>>>0>15)return K=4,y=z,K|0;if((K|0)<(r|0))return K=12,y=z,K|0;if((K|0)!=(r|0))if(s=sA(r|0,0,52)|0,s=s|A,f=b()|0|t&-15728641,(K|0)>(r|0)){a=r;do S=sA(7,0,(14-a|0)*3|0)|0,a=a+1|0,s=S|s,f=b()|0|f;while((a|0)<(K|0));S=s}else S=s;else S=A,f=t;D=eA(S|0,f|0,45)|0,b()|0;A:do if($A(D&127)|0){if(a=eA(S|0,f|0,52)|0,b()|0,a=a&15,a|0)for(s=1;;){if(D=sA(7,0,(15-s|0)*3|0)|0,!((D&S|0)==0&((b()|0)&f|0)==0)){g=33;break A}if(s>>>0<a>>>0)s=s+1|0;else break}if(D=i,e[D>>2]=0,e[D+4>>2]=0,(K|0)>(r|0)){for(D=t&-15728641,x=K;;){if(d=x,x=x+-1|0,x>>>0>15|(K|0)<(x|0)){g=19;break}if((K|0)!=(x|0))if(s=sA(x|0,0,52)|0,s=s|A,a=b()|0|D,(K|0)<(d|0))v=s;else{g=x;do v=sA(7,0,(14-g|0)*3|0)|0,g=g+1|0,s=v|s,a=b()|0|a;while((g|0)<(K|0));v=s}else v=A,a=t;if(p=eA(v|0,a|0,45)|0,b()|0,!($A(p&127)|0))s=0;else{p=eA(v|0,a|0,52)|0,b()|0,p=p&15;e:do if(!p)s=0;else for(g=1;;){if(s=eA(v|0,a|0,(15-g|0)*3|0)|0,b()|0,s=s&7,s|0)break e;if(g>>>0<p>>>0)g=g+1|0;else{s=0;break}}while(!1);s=(s|0)==0&1}if(a=eA(A|0,t|0,(15-d|0)*3|0)|0,b()|0,a=a&7,(a|0)==7){n=5,g=42;break}if(s=(s|0)!=0,(a|0)==1&s){n=5,g=42;break}if(v=a+(((a|0)!=0&s)<<31>>31)|0,v|0&&(g=K-d|0,g=Z0(7,0,g,((g|0)<0)<<31>>31)|0,p=b()|0,s?(s=l0(g|0,p|0,5,0)|0,s=EA(s|0,b()|0,-5,-1)|0,s=J0(s|0,b()|0,6,0)|0,s=EA(s|0,b()|0,1,0)|0,a=b()|0):(s=g,a=p),d=v+-1|0,d=l0(g|0,p|0,d|0,((d|0)<0)<<31>>31|0)|0,d=EA(s|0,a|0,d|0,b()|0)|0,v=b()|0,p=i,p=EA(d|0,v|0,e[p>>2]|0,e[p+4>>2]|0)|0,v=b()|0,d=i,e[d>>2]=p,e[d+4>>2]=v),(x|0)<=(r|0)){g=37;break}}if((g|0)==19)BA(27795,27122,1276,27158);else if((g|0)==37){l=i,n=e[l+4>>2]|0,l=e[l>>2]|0;break}else if((g|0)==42)return y=z,n|0}else n=0,l=0}else g=33;while(!1);A:do if((g|0)==33)if(D=i,e[D>>2]=0,e[D+4>>2]=0,(K|0)>(r|0)){for(s=K;;){if(n=eA(A|0,t|0,(15-s|0)*3|0)|0,b()|0,n=n&7,(n|0)==7){n=5;break}if(l=K-s|0,l=Z0(7,0,l,((l|0)<0)<<31>>31)|0,n=l0(l|0,b()|0,n|0,0)|0,l=b()|0,D=i,l=EA(e[D>>2]|0,e[D+4>>2]|0,n|0,l|0)|0,n=b()|0,D=i,e[D>>2]=l,e[D+4>>2]=n,s=s+-1|0,(s|0)<=(r|0))break A}return y=z,n|0}else n=0,l=0;while(!1);return He(S,f,K,F)|0&&BA(27795,27122,1236,27173),K=F,F=e[K+4>>2]|0,((n|0)>-1|(n|0)==-1&l>>>0>4294967295)&((F|0)>(n|0)|((F|0)==(n|0)?(e[K>>2]|0)>>>0>l>>>0:0))?(K=0,y=z,K|0):(BA(27795,27122,1316,27158),0)}function Ol(A,t,r,i,n,s){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0;var l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0;if(v=y,y=y+16|0,l=v,n>>>0>15)return s=4,y=v,s|0;if(f=eA(r|0,i|0,52)|0,b()|0,f=f&15,(f|0)>(n|0))return s=12,y=v,s|0;if(He(r,i,n,l)|0&&BA(27795,27122,1236,27173),p=l,g=e[p+4>>2]|0,!(((t|0)>-1|(t|0)==-1&A>>>0>4294967295)&((g|0)>(t|0)|((g|0)==(t|0)?(e[p>>2]|0)>>>0>A>>>0:0))))return s=2,y=v,s|0;p=n-f|0,n=sA(n|0,0,52)|0,a=b()|0|i&-15728641,g=s,e[g>>2]=n|r,e[g+4>>2]=a,g=eA(r|0,i|0,45)|0,b()|0;A:do if($A(g&127)|0){if(f|0)for(l=1;;){if(g=sA(7,0,(15-l|0)*3|0)|0,!((g&r|0)==0&((b()|0)&i|0)==0))break A;if(l>>>0<f>>>0)l=l+1|0;else break}if((p|0)<1)return s=0,y=v,s|0;for(g=f^15,i=-1,a=1,l=1;;){f=p-a|0,f=Z0(7,0,f,((f|0)<0)<<31>>31)|0,r=b()|0;do if(l)if(l=l0(f|0,r|0,5,0)|0,l=EA(l|0,b()|0,-5,-1)|0,l=J0(l|0,b()|0,6,0)|0,n=b()|0,(t|0)>(n|0)|(t|0)==(n|0)&A>>>0>l>>>0){t=EA(A|0,t|0,-1,-1)|0,t=u0(t|0,b()|0,l|0,n|0)|0,l=b()|0,d=s,D=e[d>>2]|0,d=e[d+4>>2]|0,S=(g+i|0)*3|0,x=sA(7,0,S|0)|0,d=d&~(b()|0),i=J0(t|0,l|0,f|0,r|0)|0,A=b()|0,n=EA(i|0,A|0,2,0)|0,S=sA(n|0,b()|0,S|0)|0,d=b()|0|d,n=s,e[n>>2]=S|D&~x,e[n+4>>2]=d,A=l0(i|0,A|0,f|0,r|0)|0,A=u0(t|0,l|0,A|0,b()|0)|0,l=0,t=b()|0;break}else{S=s,x=e[S>>2]|0,S=e[S+4>>2]|0,D=sA(7,0,(g+i|0)*3|0)|0,S=S&~(b()|0),l=s,e[l>>2]=x&~D,e[l+4>>2]=S,l=1;break}else x=s,n=e[x>>2]|0,x=e[x+4>>2]|0,i=(g+i|0)*3|0,d=sA(7,0,i|0)|0,x=x&~(b()|0),S=J0(A|0,t|0,f|0,r|0)|0,l=b()|0,i=sA(S|0,l|0,i|0)|0,x=b()|0|x,D=s,e[D>>2]=i|n&~d,e[D+4>>2]=x,l=l0(S|0,l|0,f|0,r|0)|0,A=u0(A|0,t|0,l|0,b()|0)|0,l=0,t=b()|0;while(!1);if((p|0)>(a|0))i=~a,a=a+1|0;else{t=0;break}}return y=v,t|0}while(!1);if((p|0)<1)return S=0,y=v,S|0;for(n=f^15,l=1;;)if(D=p-l|0,D=Z0(7,0,D,((D|0)<0)<<31>>31)|0,S=b()|0,a=s,r=e[a>>2]|0,a=e[a+4>>2]|0,f=(n-l|0)*3|0,i=sA(7,0,f|0)|0,a=a&~(b()|0),d=J0(A|0,t|0,D|0,S|0)|0,x=b()|0,f=sA(d|0,x|0,f|0)|0,a=b()|0|a,g=s,e[g>>2]=f|r&~i,e[g+4>>2]=a,S=l0(d|0,x|0,D|0,S|0)|0,A=u0(A|0,t|0,S|0,b()|0)|0,t=b()|0,(p|0)<=(l|0)){t=0;break}else l=l+1|0;return y=v,t|0}function Mr(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0;n=eA(t|0,r|0,52)|0,b()|0,n=n&15,(t|0)==0&(r|0)==0|((i|0)>15|(n|0)>(i|0))?(s=-1,t=-1,r=0,n=0):(t=un(t,r,n+1|0,i)|0,l=(b()|0)&-15728641,r=sA(i|0,0,52)|0,r=t|r,l=l|(b()|0),t=(WA(r,l)|0)==0,s=n,t=t?-1:i,n=l),l=A,e[l>>2]=r,e[l+4>>2]=n,e[A+8>>2]=s,e[A+12>>2]=t}function gn(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0;if(n=eA(A|0,t|0,52)|0,b()|0,n=n&15,s=i+8|0,e[s>>2]=n,(A|0)==0&(t|0)==0|((r|0)>15|(n|0)>(r|0))){r=i,e[r>>2]=0,e[r+4>>2]=0,e[s>>2]=-1,e[i+12>>2]=-1;return}if(A=un(A,t,n+1|0,r)|0,s=(b()|0)&-15728641,n=sA(r|0,0,52)|0,n=A|n,s=s|(b()|0),A=i,e[A>>2]=n,e[A+4>>2]=s,A=i+12|0,WA(n,s)|0){e[A>>2]=r;return}else{e[A>>2]=-1;return}}function Pr(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0;if(r=A,t=e[r>>2]|0,r=e[r+4>>2]|0,!((t|0)==0&(r|0)==0)&&(i=eA(t|0,r|0,52)|0,b()|0,i=i&15,f=sA(1,0,(i^15)*3|0)|0,t=EA(f|0,b()|0,t|0,r|0)|0,r=b()|0,f=A,e[f>>2]=t,e[f+4>>2]=r,f=A+8|0,l=e[f>>2]|0,!((i|0)<(l|0)))){for(a=A+12|0,s=i;;){if((s|0)==(l|0)){i=5;break}if(g=(s|0)==(e[a>>2]|0),n=(15-s|0)*3|0,i=eA(t|0,r|0,n|0)|0,b()|0,i=i&7,g&((i|0)==1&!0)){i=7;break}if(!((i|0)==7&!0)){i=10;break}if(g=sA(1,0,n|0)|0,t=EA(t|0,r|0,g|0,b()|0)|0,r=b()|0,g=A,e[g>>2]=t,e[g+4>>2]=r,(s|0)>(l|0))s=s+-1|0;else{i=10;break}}if((i|0)==5){g=A,e[g>>2]=0,e[g+4>>2]=0,e[f>>2]=-1,e[a>>2]=-1;return}else if((i|0)==7){l=sA(1,0,n|0)|0,l=EA(t|0,r|0,l|0,b()|0)|0,f=b()|0,g=A,e[g>>2]=l,e[g+4>>2]=f,e[a>>2]=s+-1;return}else if((i|0)==10)return}}function Ve(A){A=+A;var t=0;return t=A<0?A+6.283185307179586:A,+(A>=6.283185307179586?t+-6.283185307179586:t)}function xe(A,t){return A=A|0,t=t|0,+IA(+(+E[A>>3]-+E[t>>3]))<17453292519943298e-27?(t=+IA(+(+E[A+8>>3]-+E[t+8>>3]))<17453292519943298e-27,t|0):(t=0,t|0)}function b0(A,t){switch(A=+A,t=t|0,t|0){case 1:{A=A<0?A+6.283185307179586:A;break}case 2:{A=A>0?A+-6.283185307179586:A;break}}return+A}function Rl(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;return n=+E[t>>3],i=+E[A>>3],s=+OA(+((n-i)*.5)),r=+OA(+((+E[t+8>>3]-+E[A+8>>3])*.5)),r=s*s+r*(+jA(+n)*+jA(+i)*r),+(+D0(+ +YA(+r),+ +YA(+(1-r)))*2)}function Ke(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;return n=+E[t>>3],i=+E[A>>3],s=+OA(+((n-i)*.5)),r=+OA(+((+E[t+8>>3]-+E[A+8>>3])*.5)),r=s*s+r*(+jA(+n)*+jA(+i)*r),+(+D0(+ +YA(+r),+ +YA(+(1-r)))*2*6371.007180918475)}function Ll(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;return n=+E[t>>3],i=+E[A>>3],s=+OA(+((n-i)*.5)),r=+OA(+((+E[t+8>>3]-+E[A+8>>3])*.5)),r=s*s+r*(+jA(+n)*+jA(+i)*r),+(+D0(+ +YA(+r),+ +YA(+(1-r)))*2*6371.007180918475*1e3)}function Fl(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0;return s=+E[t>>3],i=+jA(+s),n=+E[t+8>>3]-+E[A+8>>3],l=i*+OA(+n),r=+E[A>>3],+ +D0(+l,+(+OA(+s)*+jA(+r)-+jA(+n)*(i*+OA(+r))))}function Nl(A,t,r,i){A=A|0,t=+t,r=+r,i=i|0;var n=0,s=0,l=0,f=0;if(r<1e-16){e[i>>2]=e[A>>2],e[i+4>>2]=e[A+4>>2],e[i+8>>2]=e[A+8>>2],e[i+12>>2]=e[A+12>>2];return}s=t<0?t+6.283185307179586:t,s=t>=6.283185307179586?s+-6.283185307179586:s;do if(s<1e-16)t=+E[A>>3]+r,E[i>>3]=t,n=i;else{if(n=+IA(+(s+-3.141592653589793))<1e-16,t=+E[A>>3],n){t=t-r,E[i>>3]=t,n=i;break}if(l=+jA(+r),r=+OA(+r),t=l*+OA(+t)+ +jA(+s)*(r*+jA(+t)),t=t>1?1:t,t=+_o(+(t<-1?-1:t)),E[i>>3]=t,+IA(+(t+-1.5707963267948966))<1e-16){E[i>>3]=1.5707963267948966,E[i+8>>3]=0;return}if(+IA(+(t+1.5707963267948966))<1e-16){E[i>>3]=-1.5707963267948966,E[i+8>>3]=0;return}if(f=1/+jA(+t),s=r*+OA(+s)*f,r=+E[A>>3],t=f*((l-+OA(+t)*+OA(+r))/+jA(+r)),l=s>1?1:s,t=t>1?1:t,t=+E[A+8>>3]+ +D0(+(l<-1?-1:l),+(t<-1?-1:t)),t>3.141592653589793)do t=t+-6.283185307179586;while(t>3.141592653589793);if(t<-3.141592653589793)do t=t+6.283185307179586;while(t<-3.141592653589793);E[i+8>>3]=t;return}while(!1);if(+IA(+(t+-1.5707963267948966))<1e-16){E[n>>3]=1.5707963267948966,E[i+8>>3]=0;return}if(+IA(+(t+1.5707963267948966))<1e-16){E[n>>3]=-1.5707963267948966,E[i+8>>3]=0;return}if(t=+E[A+8>>3],t>3.141592653589793)do t=t+-6.283185307179586;while(t>3.141592653589793);if(t<-3.141592653589793)do t=t+6.283185307179586;while(t<-3.141592653589793);E[i+8>>3]=t}function cn(A,t){return A=A|0,t=t|0,A>>>0>15?(t=4,t|0):(E[t>>3]=+E[20656+(A<<3)>>3],t=0,t|0)}function Gl(A,t){return A=A|0,t=t|0,A>>>0>15?(t=4,t|0):(E[t>>3]=+E[20784+(A<<3)>>3],t=0,t|0)}function Ul(A,t){return A=A|0,t=t|0,A>>>0>15?(t=4,t|0):(E[t>>3]=+E[20912+(A<<3)>>3],t=0,t|0)}function zl(A,t){return A=A|0,t=t|0,A>>>0>15?(t=4,t|0):(E[t>>3]=+E[21040+(A<<3)>>3],t=0,t|0)}function _t(A,t){A=A|0,t=t|0;var r=0;return A>>>0>15?(t=4,t|0):(r=Z0(7,0,A,((A|0)<0)<<31>>31)|0,r=l0(r|0,b()|0,120,0)|0,A=b()|0,e[t>>2]=r|2,e[t+4>>2]=A,t=0,t|0)}function wn(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;return d=+E[t>>3],p=+E[A>>3],a=+OA(+((d-p)*.5)),s=+E[t+8>>3],g=+E[A+8>>3],l=+OA(+((s-g)*.5)),f=+jA(+p),v=+jA(+d),l=a*a+l*(v*f*l),l=+D0(+ +YA(+l),+ +YA(+(1-l)))*2,a=+E[r>>3],d=+OA(+((a-d)*.5)),i=+E[r+8>>3],s=+OA(+((i-s)*.5)),n=+jA(+a),s=d*d+s*(v*n*s),s=+D0(+ +YA(+s),+ +YA(+(1-s)))*2,a=+OA(+((p-a)*.5)),i=+OA(+((g-i)*.5)),i=a*a+i*(f*n*i),i=+D0(+ +YA(+i),+ +YA(+(1-i)))*2,n=(l+s+i)*.5,+(+lr(+ +YA(+(+x0(+(n*.5))*+x0(+((n-l)*.5))*+x0(+((n-s)*.5))*+x0(+((n-i)*.5)))))*4)}function _r(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0;if(f=y,y=y+192|0,s=f+168|0,l=f,n=ae(A,t,s)|0,n|0)return r=n,y=f,r|0;if(de(A,t,l)|0&&BA(27795,27190,415,27199),t=e[l>>2]|0,(t|0)>0){if(i=+wn(l+8|0,l+8+(((t|0)!=1&1)<<4)|0,s)+0,(t|0)!=1){A=1;do n=A,A=A+1|0,i=i+ +wn(l+8+(n<<4)|0,l+8+(((A|0)%(t|0)|0)<<4)|0,s);while((A|0)<(t|0))}}else i=0;return E[r>>3]=i,r=0,y=f,r|0}function Yl(A,t,r){return A=A|0,t=t|0,r=r|0,A=_r(A,t,r)|0,A|0||(E[r>>3]=+E[r>>3]*6371.007180918475*6371.007180918475),A|0}function jl(A,t,r){return A=A|0,t=t|0,r=r|0,A=_r(A,t,r)|0,A|0||(E[r>>3]=+E[r>>3]*6371.007180918475*6371.007180918475*1e3*1e3),A|0}function Hl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(f=y,y=y+176|0,l=f,A=Pt(A,t,l)|0,A|0)return l=A,y=f,l|0;if(E[r>>3]=0,A=e[l>>2]|0,(A|0)<=1)return l=0,y=f,l|0;t=A+-1|0,A=0,i=+E[l+8>>3],n=+E[l+16>>3],s=0;do A=A+1|0,g=i,i=+E[l+8+(A<<4)>>3],p=+OA(+((i-g)*.5)),a=n,n=+E[l+8+(A<<4)+8>>3],a=+OA(+((n-a)*.5)),a=p*p+a*(+jA(+i)*+jA(+g)*a),s=s+ +D0(+ +YA(+a),+ +YA(+(1-a)))*2;while((A|0)<(t|0));return E[r>>3]=s,l=0,y=f,l|0}function Vl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(f=y,y=y+176|0,l=f,A=Pt(A,t,l)|0,A|0)return l=A,s=+E[r>>3],s=s*6371.007180918475,E[r>>3]=s,y=f,l|0;if(E[r>>3]=0,A=e[l>>2]|0,(A|0)<=1)return l=0,s=0,s=s*6371.007180918475,E[r>>3]=s,y=f,l|0;t=A+-1|0,A=0,i=+E[l+8>>3],n=+E[l+16>>3],s=0;do A=A+1|0,g=i,i=+E[l+8+(A<<4)>>3],p=+OA(+((i-g)*.5)),a=n,n=+E[l+8+(A<<4)+8>>3],a=+OA(+((n-a)*.5)),a=p*p+a*(+jA(+g)*+jA(+i)*a),s=s+ +D0(+ +YA(+a),+ +YA(+(1-a)))*2;while((A|0)!=(t|0));return E[r>>3]=s,l=0,p=s,p=p*6371.007180918475,E[r>>3]=p,y=f,l|0}function Kl(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(f=y,y=y+176|0,l=f,A=Pt(A,t,l)|0,A|0)return l=A,s=+E[r>>3],s=s*6371.007180918475,s=s*1e3,E[r>>3]=s,y=f,l|0;if(E[r>>3]=0,A=e[l>>2]|0,(A|0)<=1)return l=0,s=0,s=s*6371.007180918475,s=s*1e3,E[r>>3]=s,y=f,l|0;t=A+-1|0,A=0,i=+E[l+8>>3],n=+E[l+16>>3],s=0;do A=A+1|0,g=i,i=+E[l+8+(A<<4)>>3],p=+OA(+((i-g)*.5)),a=n,n=+E[l+8+(A<<4)+8>>3],a=+OA(+((n-a)*.5)),a=p*p+a*(+jA(+g)*+jA(+i)*a),s=s+ +D0(+ +YA(+a),+ +YA(+(1-a)))*2;while((A|0)!=(t|0));return E[r>>3]=s,l=0,p=s,p=p*6371.007180918475,p=p*1e3,E[r>>3]=p,y=f,l|0}function ql(A){A=A|0;var t=0,r=0,i=0;return t=v0(1,12)|0,t||BA(27280,27235,49,27293),r=A+4|0,i=e[r>>2]|0,i|0?(i=i+8|0,e[i>>2]=t,e[r>>2]=t,t|0):(e[A>>2]|0&&BA(27310,27235,61,27333),i=A,e[i>>2]=t,e[r>>2]=t,t|0)}function Wl(A,t){A=A|0,t=t|0;var r=0,i=0;return i=L0(24)|0,i||BA(27347,27235,78,27361),e[i>>2]=e[t>>2],e[i+4>>2]=e[t+4>>2],e[i+8>>2]=e[t+8>>2],e[i+12>>2]=e[t+12>>2],e[i+16>>2]=0,t=A+4|0,r=e[t>>2]|0,r|0?(e[r+16>>2]=i,e[t>>2]=i,i|0):(e[A>>2]|0&&BA(27376,27235,82,27361),e[A>>2]=i,e[t>>2]=i,i|0)}function pn(A){A=A|0;var t=0,r=0,i=0,n=0;if(A)for(i=1;;){if(t=e[A>>2]|0,t|0)do{if(r=e[t>>2]|0,r|0)do n=r,r=e[r+16>>2]|0,yA(n);while((r|0)!=0);n=t,t=e[t+8>>2]|0,yA(n)}while((t|0)!=0);if(t=A,A=e[A+8>>2]|0,i||yA(t),A)i=0;else break}}function Xl(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0,PA=0,LA=0,kA=0,wA=0,iA=0,SA=0,KA=0,_A=0;if(n=A+8|0,e[n>>2]|0)return _A=1,_A|0;if(i=e[A>>2]|0,!i)return _A=0,_A|0;t=i,r=0;do r=r+1|0,t=e[t+8>>2]|0;while((t|0)!=0);if(r>>>0<2)return _A=0,_A|0;SA=L0(r<<2)|0,SA||BA(27396,27235,317,27415),iA=L0(r<<5)|0,iA||BA(27437,27235,321,27415),e[A>>2]=0,cA=A+4|0,e[cA>>2]=0,e[n>>2]=0,r=0,wA=0,nA=0,v=0;A:for(;;){if(p=e[i>>2]|0,p){s=0,l=p;do{if(a=+E[l+8>>3],t=l,l=e[l+16>>2]|0,g=(l|0)==0,n=g?p:l,f=+E[n+8>>3],+IA(+(a-f))>3.141592653589793){_A=14;break}s=s+(f-a)*(+E[t>>3]+ +E[n>>3])}while(!g);if((_A|0)==14){_A=0,s=0,t=p;do T=+E[t+8>>3],kA=t+16|0,LA=e[kA>>2]|0,LA=(LA|0)==0?p:LA,G=+E[LA+8>>3],s=s+(+E[t>>3]+ +E[LA>>3])*((G<0?G+6.283185307179586:G)-(T<0?T+6.283185307179586:T)),t=e[((t|0)==0?i:kA)>>2]|0;while((t|0)!=0)}s>0?(e[SA+(wA<<2)>>2]=i,wA=wA+1|0,n=nA,t=v):_A=19}else _A=19;if((_A|0)==19){_A=0;do if(r){if(t=r+8|0,e[t>>2]|0){_A=21;break A}if(r=v0(1,12)|0,!r){_A=23;break A}e[t>>2]=r,n=r+4|0,l=r,t=v}else if(v){n=cA,l=v+8|0,t=i,r=A;break}else if(e[A>>2]|0){_A=27;break A}else{n=cA,l=A,t=i,r=A;break}while(!1);if(e[l>>2]=i,e[n>>2]=i,l=iA+(nA<<5)|0,g=e[i>>2]|0,g){for(p=iA+(nA<<5)+8|0,E[p>>3]=17976931348623157e292,v=iA+(nA<<5)+24|0,E[v>>3]=17976931348623157e292,E[l>>3]=-17976931348623157e292,d=iA+(nA<<5)+16|0,E[d>>3]=-17976931348623157e292,K=17976931348623157e292,z=-17976931348623157e292,n=0,x=g,a=17976931348623157e292,S=17976931348623157e292,F=-17976931348623157e292,f=-17976931348623157e292;s=+E[x>>3],T=+E[x+8>>3],x=e[x+16>>2]|0,D=(x|0)==0,G=+E[(D?g:x)+8>>3],s<a&&(E[p>>3]=s,a=s),T<S&&(E[v>>3]=T,S=T),s>F?E[l>>3]=s:s=F,T>f&&(E[d>>3]=T,f=T),K=T>0&T<K?T:K,z=T<0&T>z?T:z,n=n|+IA(+(T-G))>3.141592653589793,!D;)F=s;n&&(E[d>>3]=z,E[v>>3]=K)}else e[l>>2]=0,e[l+4>>2]=0,e[l+8>>2]=0,e[l+12>>2]=0,e[l+16>>2]=0,e[l+20>>2]=0,e[l+24>>2]=0,e[l+28>>2]=0;n=nA+1|0}if(kA=i+8|0,i=e[kA>>2]|0,e[kA>>2]=0,i)nA=n,v=t;else{_A=45;break}}if((_A|0)==21)BA(27213,27235,35,27247);else if((_A|0)==23)BA(27267,27235,37,27247);else if((_A|0)==27)BA(27310,27235,61,27333);else if((_A|0)==45){A:do if((wA|0)>0){for(kA=(n|0)==0,PA=n<<2,LA=(A|0)==0,DA=0,t=0;;){if(uA=e[SA+(DA<<2)>>2]|0,kA)_A=73;else{if(nA=L0(PA)|0,!nA){_A=50;break}if(cA=L0(PA)|0,!cA){_A=52;break}e:do if(LA)r=0;else{for(n=0,r=0,l=A;i=iA+(n<<5)|0,mn(e[l>>2]|0,i,e[uA>>2]|0)|0?(e[nA+(r<<2)>>2]=l,e[cA+(r<<2)>>2]=i,D=r+1|0):D=r,l=e[l+8>>2]|0,l;)n=n+1|0,r=D;if((D|0)>0)if(i=e[nA>>2]|0,(D|0)==1)r=i;else for(d=0,x=-1,r=i,v=i;;){for(g=e[v>>2]|0,i=0,l=0;n=e[e[nA+(l<<2)>>2]>>2]|0,(n|0)==(g|0)?p=i:p=i+((mn(n,e[cA+(l<<2)>>2]|0,e[g>>2]|0)|0)&1)|0,l=l+1|0,(l|0)!=(D|0);)i=p;if(n=(p|0)>(x|0),r=n?v:r,i=d+1|0,(i|0)==(D|0))break e;d=i,x=n?p:x,v=e[nA+(i<<2)>>2]|0}else r=0}while(!1);if(yA(nA),yA(cA),r){if(n=r+4|0,i=e[n>>2]|0,i)r=i+8|0;else if(e[r>>2]|0){_A=70;break}e[r>>2]=uA,e[n>>2]=uA}else _A=73}if((_A|0)==73){if(_A=0,t=e[uA>>2]|0,t|0)do cA=t,t=e[t+16>>2]|0,yA(cA);while((t|0)!=0);yA(uA),t=1}if(DA=DA+1|0,(DA|0)>=(wA|0)){KA=t;break A}}(_A|0)==50?BA(27452,27235,249,27471):(_A|0)==52?BA(27490,27235,252,27471):(_A|0)==70&&BA(27310,27235,61,27333)}else KA=0;while(!1);return yA(SA),yA(iA),_A=KA,_A|0}return 0}function mn(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(!(cr(t,r)|0)||(t=Wi(t)|0,i=+E[r>>3],n=+E[r+8>>3],n=t&n<0?n+6.283185307179586:n,A=e[A>>2]|0,!A))return A=0,A|0;if(t){t=0,g=n,r=A;A:for(;;){for(;l=+E[r>>3],n=+E[r+8>>3],r=r+16|0,p=e[r>>2]|0,p=(p|0)==0?A:p,s=+E[p>>3],f=+E[p+8>>3],l>s?(a=l,l=f):(a=s,s=l,l=n,n=f),i=i==s|i==a?i+2220446049250313e-31:i,!!(i<s|i>a);)if(r=e[r>>2]|0,!r){r=22;break A}if(f=l<0?l+6.283185307179586:l,l=n<0?n+6.283185307179586:n,g=f==g|l==g?g+-2220446049250313e-31:g,a=f+(l-f)*((i-s)/(a-s)),(a<0?a+6.283185307179586:a)>g&&(t=t^1),r=e[r>>2]|0,!r){r=22;break}}if((r|0)==22)return t|0}else{t=0,g=n,r=A;A:for(;;){for(;l=+E[r>>3],n=+E[r+8>>3],r=r+16|0,p=e[r>>2]|0,p=(p|0)==0?A:p,s=+E[p>>3],f=+E[p+8>>3],l>s?(a=l,l=f):(a=s,s=l,l=n,n=f),i=i==s|i==a?i+2220446049250313e-31:i,!!(i<s|i>a);)if(r=e[r>>2]|0,!r){r=22;break A}if(g=l==g|n==g?g+-2220446049250313e-31:g,l+(n-l)*((i-s)/(a-s))>g&&(t=t^1),r=e[r>>2]|0,!r){r=22;break}}if((r|0)==22)return t|0}return 0}function Y0(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0;if(z=y,y=y+32|0,K=z+16|0,F=z,s=eA(A|0,t|0,52)|0,b()|0,s=s&15,x=eA(r|0,i|0,52)|0,b()|0,(s|0)!=(x&15|0))return K=12,y=z,K|0;if(g=eA(A|0,t|0,45)|0,b()|0,g=g&127,p=eA(r|0,i|0,45)|0,b()|0,p=p&127,g>>>0>121|p>>>0>121)return K=5,y=z,K|0;if(x=(g|0)!=(p|0),x){if(f=gr(g,p)|0,(f|0)==7)return K=1,y=z,K|0;a=gr(p,g)|0,(a|0)==7?BA(27514,27538,161,27548):(D=f,l=a)}else D=0,l=0;v=$A(g)|0,d=$A(p)|0,e[K>>2]=0,e[K+4>>2]=0,e[K+8>>2]=0,e[K+12>>2]=0;do if(D){if(p=e[4272+(g*28|0)+(D<<2)>>2]|0,f=(p|0)>0,d)if(f){g=0,a=r,f=i;do a=_l(a,f)|0,f=b()|0,l=X0(l)|0,(l|0)==1&&(l=X0(1)|0),g=g+1|0;while((g|0)!=(p|0));p=l,g=a,a=f}else p=l,g=r,a=i;else if(f){g=0,a=r,f=i;do a=Cr(a,f)|0,f=b()|0,l=X0(l)|0,g=g+1|0;while((g|0)!=(p|0));p=l,g=a,a=f}else p=l,g=r,a=i;if(xr(g,a,K)|0,x||BA(27563,27538,191,27548),f=(v|0)!=0,l=(d|0)!=0,f&l&&BA(27590,27538,192,27548),f){if(l=y0(A,t)|0,(l|0)==7){s=5;break}if(tA[22e3+(l*7|0)+D>>0]|0){s=1;break}a=e[21168+(l*28|0)+(D<<2)>>2]|0,g=a}else if(l){if(l=y0(g,a)|0,(l|0)==7){s=5;break}if(tA[22e3+(l*7|0)+p>>0]|0){s=1;break}g=0,a=e[21168+(p*28|0)+(l<<2)>>2]|0}else g=0,a=0;if((g|a|0)<0)s=5;else{if((a|0)>0){f=K+4|0,l=0;do Mt(f),l=l+1|0;while((l|0)!=(a|0))}if(e[F>>2]=0,e[F+4>>2]=0,e[F+8>>2]=0,en(F,D),s|0)for(;M0(s)|0?Dt(F):fe(F),(s|0)>1;)s=s+-1|0;if((g|0)>0){s=0;do Mt(F),s=s+1|0;while((s|0)!=(g|0))}S=K+4|0,c0(S,F,S),a0(S),S=51}}else if(xr(r,i,K)|0,(v|0)!=0&(d|0)!=0)if((p|0)!=(g|0)&&BA(27621,27538,261,27548),l=y0(A,t)|0,s=y0(r,i)|0,(l|0)==7|(s|0)==7)s=5;else if(tA[22e3+(l*7|0)+s>>0]|0)s=1;else if(l=e[21168+(l*28|0)+(s<<2)>>2]|0,(l|0)>0){f=K+4|0,s=0;do Mt(f),s=s+1|0;while((s|0)!=(l|0));S=51}else S=51;else S=51;while(!1);return(S|0)==51&&(s=K+4|0,e[n>>2]=e[s>>2],e[n+4>>2]=e[s+4>>2],e[n+8>>2]=e[s+8>>2],s=0),K=s,y=z,K|0}function En(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0;if(S=y,y=y+48|0,g=S+36|0,l=S+24|0,f=S+12|0,a=S,n=eA(A|0,t|0,52)|0,b()|0,n=n&15,d=eA(A|0,t|0,45)|0,b()|0,d=d&127,d>>>0>121)return i=5,y=S,i|0;if(p=$A(d)|0,sA(n|0,0,52)|0,F=b()|0|134225919,s=i,e[s>>2]=-1,e[s+4>>2]=F,!n)return n=xt(r)|0,(n|0)==7||(n=ar(d,n)|0,(n|0)==127)?(F=1,y=S,F|0):(x=sA(n|0,0,45)|0,D=b()|0,d=i,D=e[d+4>>2]&-1040385|D,F=i,e[F>>2]=e[d>>2]|x,e[F+4>>2]=D,F=0,y=S,F|0);for(e[g>>2]=e[r>>2],e[g+4>>2]=e[r+4>>2],e[g+8>>2]=e[r+8>>2],r=n;;){if(s=r,r=r+-1|0,e[l>>2]=e[g>>2],e[l+4>>2]=e[g+4>>2],e[l+8>>2]=e[g+8>>2],M0(s)|0){if(n=sl(g)|0,n|0){r=13;break}e[f>>2]=e[g>>2],e[f+4>>2]=e[g+4>>2],e[f+8>>2]=e[g+8>>2],Dt(f)}else{if(n=ol(g)|0,n|0){r=13;break}e[f>>2]=e[g>>2],e[f+4>>2]=e[g+4>>2],e[f+8>>2]=e[g+8>>2],fe(f)}if(pr(l,f,a),a0(a),n=i,z=e[n>>2]|0,n=e[n+4>>2]|0,G=(15-s|0)*3|0,K=sA(7,0,G|0)|0,n=n&~(b()|0),G=sA(xt(a)|0,0,G|0)|0,n=b()|0|n,F=i,e[F>>2]=G|z&~K,e[F+4>>2]=n,(s|0)<=1){r=14;break}}A:do if((r|0)!=13&&(r|0)==14)if((e[g>>2]|0)<=1&&(e[g+4>>2]|0)<=1&&(e[g+8>>2]|0)<=1){r=xt(g)|0,n=ar(d,r)|0,(n|0)==127?a=0:a=$A(n)|0;e:do if(r){if(p){if(n=y0(A,t)|0,(n|0)==7){n=5;break A}if(s=e[21376+(n*28|0)+(r<<2)>>2]|0,(s|0)>0){n=r,r=0;do n=ue(n)|0,r=r+1|0;while((r|0)!=(s|0))}else n=r;if((n|0)==1){n=9;break A}r=ar(d,n)|0,(r|0)==127&&BA(27648,27538,411,27678),$A(r)|0?BA(27693,27538,412,27678):(D=r,x=s,v=n)}else D=n,x=0,v=r;if(f=e[4272+(d*28|0)+(v<<2)>>2]|0,(f|0)<=-1&&BA(27724,27538,419,27678),!a){if((x|0)<0){n=5;break A}if(x|0){s=i,n=0,r=e[s>>2]|0,s=e[s+4>>2]|0;do r=he(r,s)|0,s=b()|0,G=i,e[G>>2]=r,e[G+4>>2]=s,n=n+1|0;while((n|0)<(x|0))}if((f|0)<=0){n=D,r=58;break}for(s=i,n=0,r=e[s>>2]|0,s=e[s+4>>2]|0;;)if(r=he(r,s)|0,s=b()|0,G=i,e[G>>2]=r,e[G+4>>2]=s,n=n+1|0,(n|0)==(f|0)){n=D,r=58;break e}}if(l=gr(D,d)|0,(l|0)==7&&BA(27514,27538,428,27678),n=i,r=e[n>>2]|0,n=e[n+4>>2]|0,(f|0)>0){s=0;do r=he(r,n)|0,n=b()|0,G=i,e[G>>2]=r,e[G+4>>2]=n,s=s+1|0;while((s|0)!=(f|0))}if(n=y0(r,n)|0,(n|0)==7&&BA(27795,27538,440,27678),r=hr(D)|0,r=e[(r?21792:21584)+(l*28|0)+(n<<2)>>2]|0,(r|0)<0&&BA(27795,27538,454,27678),!r)n=D,r=58;else{l=i,n=0,s=e[l>>2]|0,l=e[l+4>>2]|0;do s=Br(s,l)|0,l=b()|0,G=i,e[G>>2]=s,e[G+4>>2]=l,n=n+1|0;while((n|0)<(r|0));n=D,r=58}}else if((p|0)!=0&(a|0)!=0){if(r=y0(A,t)|0,s=i,s=y0(e[s>>2]|0,e[s+4>>2]|0)|0,(r|0)==7|(s|0)==7){n=5;break A}if(s=e[21376+(r*28|0)+(s<<2)>>2]|0,(s|0)<0){n=5;break A}if(!s)r=59;else{f=i,r=0,l=e[f>>2]|0,f=e[f+4>>2]|0;do l=he(l,f)|0,f=b()|0,G=i,e[G>>2]=l,e[G+4>>2]=f,r=r+1|0;while((r|0)<(s|0));r=58}}else r=58;while(!1);if((r|0)==58&&a&&(r=59),(r|0)==59&&(G=i,(y0(e[G>>2]|0,e[G+4>>2]|0)|0)==1)){n=9;break}G=i,K=e[G>>2]|0,G=e[G+4>>2]&-1040385,z=sA(n|0,0,45)|0,G=G|(b()|0),n=i,e[n>>2]=K|z,e[n+4>>2]=G,n=0}else n=1;while(!1);return G=n,y=S,G|0}function Zl(A,t,r,i,n,s){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0;var l=0,f=0;return f=y,y=y+16|0,l=f,n?A=15:(A=Y0(A,t,r,i,l)|0,A||(fl(l,s),A=0)),y=f,A|0}function $l(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0;return l=y,y=y+16|0,s=l,i?r=15:(r=ul(r,s)|0,r||(r=En(A,t,s,n)|0)),y=l,r|0}function Jl(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0;return a=y,y=y+32|0,l=a+12|0,f=a,s=Y0(A,t,A,t,l)|0,s|0?(f=s,y=a,f|0):(A=Y0(A,t,r,i,f)|0,A|0?(f=A,y=a,f|0):(l=mr(l,f)|0,f=n,e[f>>2]=l,e[f+4>>2]=((l|0)<0)<<31>>31,f=0,y=a,f|0))}function A1(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0;return a=y,y=y+32|0,l=a+12|0,f=a,s=Y0(A,t,A,t,l)|0,!s&&(s=Y0(A,t,r,i,f)|0,!s)?(i=mr(l,f)|0,i=EA(i|0,((i|0)<0)<<31>>31|0,1,0)|0,l=b()|0,f=n,e[f>>2]=i,e[f+4>>2]=l,f=0,y=a,f|0):(f=s,y=a,f|0)}function e1(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0;if(uA=y,y=y+48|0,nA=uA+24|0,l=uA+12|0,cA=uA,s=Y0(A,t,A,t,nA)|0,!s&&(s=Y0(A,t,r,i,l)|0,!s)){G=mr(nA,l)|0,T=((G|0)<0)<<31>>31,e[nA>>2]=0,e[nA+4>>2]=0,e[nA+8>>2]=0,e[l>>2]=0,e[l+4>>2]=0,e[l+8>>2]=0,Y0(A,t,A,t,nA)|0&&BA(27795,27538,692,27747),Y0(A,t,r,i,l)|0&&BA(27795,27538,697,27747),sn(nA),sn(l),p=(G|0)==0?0:1/+(G|0),r=e[nA>>2]|0,S=p*+((e[l>>2]|0)-r|0),F=nA+4|0,i=e[F>>2]|0,K=p*+((e[l+4>>2]|0)-i|0),z=nA+8|0,s=e[z>>2]|0,p=p*+((e[l+8>>2]|0)-s|0),e[cA>>2]=r,v=cA+4|0,e[v>>2]=i,d=cA+8|0,e[d>>2]=s;A:do if((G|0)<0)s=0;else for(x=0,D=0;;){a=+(D>>>0)+4294967296*+(x|0),DA=S*a+ +(r|0),f=K*a+ +(i|0),a=p*a+ +(s|0),r=~~+It(+DA),l=~~+It(+f),s=~~+It(+a),DA=+IA(+(+(r|0)-DA)),f=+IA(+(+(l|0)-f)),a=+IA(+(+(s|0)-a));do if(DA>f&DA>a)r=0-(l+s)|0,i=l;else if(g=0-r|0,f>a){i=g-s|0;break}else{i=l,s=g-l|0;break}while(!1);if(e[cA>>2]=r,e[v>>2]=i,e[d>>2]=s,hl(cA),s=En(A,t,cA,n+(D<<3)|0)|0,s|0)break A;if(!((x|0)<(T|0)|(x|0)==(T|0)&D>>>0<G>>>0)){s=0;break A}r=EA(D|0,x|0,1,0)|0,i=b()|0,x=i,D=r,r=e[nA>>2]|0,i=e[F>>2]|0,s=e[z>>2]|0}while(!1);return cA=s,y=uA,cA|0}return cA=s,y=uA,cA|0}function Z0(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0;if((r|0)==0&(i|0)==0)return n=0,s=1,MA(n|0),s|0;s=A,n=t,A=1,t=0;do l=(r&1|0)==0&!0,A=l0((l?1:s)|0,(l?0:n)|0,A|0,t|0)|0,t=b()|0,r=_n(r|0,i|0,1)|0,i=b()|0,s=l0(s|0,n|0,s|0,n|0)|0,n=b()|0;while(!((r|0)==0&(i|0)==0));return MA(t|0),A|0}function Qr(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0;f=y,y=y+16|0,s=f,l=eA(A|0,t|0,52)|0,b()|0,l=l&15;do if(l){if(n=ae(A,t,s)|0,!n){g=+E[s>>3],a=1/+jA(+g),p=+E[25968+(l<<3)>>3],E[r>>3]=g+p,E[r+8>>3]=g-p,g=+E[s+8>>3],a=p*a,E[r+16>>3]=a+g,E[r+24>>3]=g-a;break}return l=n,y=f,l|0}else{if(n=eA(A|0,t|0,45)|0,b()|0,n=n&127,n>>>0>121)return l=5,y=f,l|0;s=22064+(n<<5)|0,e[r>>2]=e[s>>2],e[r+4>>2]=e[s+4>>2],e[r+8>>2]=e[s+8>>2],e[r+12>>2]=e[s+12>>2],e[r+16>>2]=e[s+16>>2],e[r+20>>2]=e[s+20>>2],e[r+24>>2]=e[s+24>>2],e[r+28>>2]=e[s+28>>2];break}while(!1);return rl(r,i?1.4:1.1),i=26096+(l<<3)|0,(e[i>>2]|0)==(A|0)&&(e[i+4>>2]|0)==(t|0)&&(E[r>>3]=1.5707963267948966),l=26224+(l<<3)|0,(e[l>>2]|0)==(A|0)&&(e[l+4>>2]|0)==(t|0)&&(E[r+8>>3]=-1.5707963267948966),+E[r>>3]!=1.5707963267948966&&+E[r+8>>3]!=-1.5707963267948966?(l=0,y=f,l|0):(E[r+16>>3]=3.141592653589793,E[r+24>>3]=-3.141592653589793,l=0,y=f,l|0)}function t1(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0;g=y,y=y+48|0,l=g+32|0,s=g+40|0,f=g,br(l,0,0,0),a=e[l>>2]|0,l=e[l+4>>2]|0;do if(r>>>0<=15){if(n=We(i)|0,n|0){i=f,e[i>>2]=0,e[i+4>>2]=0,e[f+8>>2]=n,e[f+12>>2]=-1,i=f+16|0,a=f+29|0,e[i>>2]=0,e[i+4>>2]=0,e[i+8>>2]=0,tA[i+12>>0]=0,tA[a>>0]=tA[s>>0]|0,tA[a+1>>0]=tA[s+1>>0]|0,tA[a+2>>0]=tA[s+2>>0]|0;break}if(n=v0((e[t+8>>2]|0)+1|0,32)|0,n){Sr(t,n),p=f,e[p>>2]=a,e[p+4>>2]=l,e[f+8>>2]=0,e[f+12>>2]=r,e[f+16>>2]=i,e[f+20>>2]=t,e[f+24>>2]=n,tA[f+28>>0]=0,a=f+29|0,tA[a>>0]=tA[s>>0]|0,tA[a+1>>0]=tA[s+1>>0]|0,tA[a+2>>0]=tA[s+2>>0]|0;break}else{i=f,e[i>>2]=0,e[i+4>>2]=0,e[f+8>>2]=13,e[f+12>>2]=-1,i=f+16|0,a=f+29|0,e[i>>2]=0,e[i+4>>2]=0,e[i+8>>2]=0,tA[i+12>>0]=0,tA[a>>0]=tA[s>>0]|0,tA[a+1>>0]=tA[s+1>>0]|0,tA[a+2>>0]=tA[s+2>>0]|0;break}}else a=f,e[a>>2]=0,e[a+4>>2]=0,e[f+8>>2]=4,e[f+12>>2]=-1,a=f+16|0,p=f+29|0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,tA[a+12>>0]=0,tA[p>>0]=tA[s>>0]|0,tA[p+1>>0]=tA[s+1>>0]|0,tA[p+2>>0]=tA[s+2>>0]|0;while(!1);Qt(f),e[A>>2]=e[f>>2],e[A+4>>2]=e[f+4>>2],e[A+8>>2]=e[f+8>>2],e[A+12>>2]=e[f+12>>2],e[A+16>>2]=e[f+16>>2],e[A+20>>2]=e[f+20>>2],e[A+24>>2]=e[f+24>>2],e[A+28>>2]=e[f+28>>2],y=g}function Qt(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0;if(T=y,y=y+336|0,x=T+168|0,D=T,i=A,r=e[i>>2]|0,i=e[i+4>>2]|0,(r|0)==0&(i|0)==0){y=T;return}if(t=A+28|0,tA[t>>0]|0?(r=yn(r,i)|0,i=b()|0):tA[t>>0]=1,G=A+20|0,!(e[e[G>>2]>>2]|0)){t=A+24|0,r=e[t>>2]|0,r|0&&yA(r),z=A,e[z>>2]=0,e[z+4>>2]=0,e[A+8>>2]=0,e[G>>2]=0,e[A+12>>2]=-1,e[A+16>>2]=0,e[t>>2]=0,y=T;return}z=A+16|0,t=e[z>>2]|0,n=t&15;A:do if((r|0)==0&(i|0)==0)K=A+24|0;else{S=A+12|0,v=(n|0)==3,p=t&255,a=(n|1|0)==3,d=A+24|0,g=(n+-1|0)>>>0<3,l=(n|2|0)==3,f=D+8|0;e:for(;;){if(s=eA(r|0,i|0,52)|0,b()|0,s=s&15,(s|0)==(e[S>>2]|0)){switch(p&15){case 0:case 2:case 3:{if(n=ae(r,i,x)|0,n|0){F=15;break e}if(Tr(e[G>>2]|0,e[d>>2]|0,x)|0){F=19;break e}break}}if(a&&(n=e[(e[G>>2]|0)+4>>2]|0,e[x>>2]=e[n>>2],e[x+4>>2]=e[n+4>>2],e[x+8>>2]=e[n+8>>2],e[x+12>>2]=e[n+12>>2],cr(26832,x)|0)){if(dr(e[(e[G>>2]|0)+4>>2]|0,s,D)|0){F=25;break}if(n=D,(e[n>>2]|0)==(r|0)&&(e[n+4>>2]|0)==(i|0)){F=29;break}}if(g){if(n=de(r,i,x)|0,n|0){F=32;break}if(Qr(r,i,D,0)|0){F=36;break}if(l&&bn(e[G>>2]|0,e[d>>2]|0,x,D)|0){F=42;break}if(a&&kn(e[G>>2]|0,e[d>>2]|0,x,D)|0){F=42;break}}if(v){if(t=Qr(r,i,x,1)|0,n=e[d>>2]|0,t|0){F=45;break}if(wr(n,x)|0){if(Zi(D,x),Xi(x,e[d>>2]|0)|0){F=53;break}if(Tr(e[G>>2]|0,e[d>>2]|0,f)|0){F=53;break}if(kn(e[G>>2]|0,e[d>>2]|0,D,x)|0){F=53;break}}}}do if((s|0)<(e[S>>2]|0)){if(t=Qr(r,i,x,1)|0,n=e[d>>2]|0,t|0){F=58;break e}if(!(wr(n,x)|0)){F=73;break}if(Xi(e[d>>2]|0,x)|0&&(Zi(D,x),bn(e[G>>2]|0,e[d>>2]|0,D,x)|0)){F=65;break e}if(r=hn(r,i,s+1|0,D)|0,r|0){F=67;break e}i=D,r=e[i>>2]|0,i=e[i+4>>2]|0}else F=73;while(!1);if((F|0)==73&&(F=0,r=yn(r,i)|0,i=b()|0),(r|0)==0&(i|0)==0){K=d;break A}}switch(F|0){case 15:{t=e[d>>2]|0,t|0&&yA(t),F=A,e[F>>2]=0,e[F+4>>2]=0,e[G>>2]=0,e[S>>2]=-1,e[z>>2]=0,e[d>>2]=0,e[A+8>>2]=n,F=20;break}case 19:{e[A>>2]=r,e[A+4>>2]=i,F=20;break}case 25:{BA(27795,27761,470,27772);break}case 29:{e[A>>2]=r,e[A+4>>2]=i,y=T;return}case 32:{t=e[d>>2]|0,t|0&&yA(t),K=A,e[K>>2]=0,e[K+4>>2]=0,e[G>>2]=0,e[S>>2]=-1,e[z>>2]=0,e[d>>2]=0,e[A+8>>2]=n,y=T;return}case 36:{BA(27795,27761,493,27772);break}case 42:{e[A>>2]=r,e[A+4>>2]=i,y=T;return}case 45:{n|0&&yA(n),F=A,e[F>>2]=0,e[F+4>>2]=0,e[G>>2]=0,e[S>>2]=-1,e[z>>2]=0,e[d>>2]=0,e[A+8>>2]=t,F=55;break}case 53:{e[A>>2]=r,e[A+4>>2]=i,F=55;break}case 58:{n|0&&yA(n),F=A,e[F>>2]=0,e[F+4>>2]=0,e[G>>2]=0,e[S>>2]=-1,e[z>>2]=0,e[d>>2]=0,e[A+8>>2]=t,F=71;break}case 65:{e[A>>2]=r,e[A+4>>2]=i,F=71;break}case 67:{t=e[d>>2]|0,t|0&&yA(t),K=A,e[K>>2]=0,e[K+4>>2]=0,e[G>>2]=0,e[S>>2]=-1,e[z>>2]=0,e[d>>2]=0,e[A+8>>2]=r,y=T;return}}if((F|0)==20){y=T;return}else if((F|0)==55){y=T;return}else if((F|0)==71){y=T;return}}while(!1);t=e[K>>2]|0,t|0&&yA(t),F=A,e[F>>2]=0,e[F+4>>2]=0,e[A+8>>2]=0,e[G>>2]=0,e[A+12>>2]=-1,e[z>>2]=0,e[K>>2]=0,y=T}function yn(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0;v=y,y=y+16|0,p=v,i=eA(A|0,t|0,52)|0,b()|0,i=i&15,r=eA(A|0,t|0,45)|0,b()|0;do if(i){for(;r=sA(i+4095|0,0,52)|0,n=b()|0|t&-15728641,s=(15-i|0)*3|0,l=sA(7,0,s|0)|0,f=b()|0,r=r|A|l,n=n|f,a=eA(A|0,t|0,s|0)|0,b()|0,a=a&7,i=i+-1|0,!(a>>>0<6);)if(i)t=n,A=r;else{g=4;break}if((g|0)==4){r=eA(r|0,n|0,45)|0,b()|0;break}return p=(a|0)==0&(WA(r,n)|0)!=0,p=sA((p?2:1)+a|0,0,s|0)|0,g=b()|0|t&~f,p=p|A&~l,MA(g|0),y=v,p|0}while(!1);return r=r&127,r>>>0>120?(g=0,p=0,MA(g|0),y=v,p|0):(br(p,0,r+1|0,0),g=e[p+4>>2]|0,p=e[p>>2]|0,MA(g|0),y=v,p|0)}function r1(A,t,r,i,n,s){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0,s=s|0;var l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0;F=y,y=y+160|0,v=F+80|0,f=F+64|0,d=F+112|0,S=F,t1(v,A,t,r),g=v,Mr(f,e[g>>2]|0,e[g+4>>2]|0,t),g=f,a=e[g>>2]|0,g=e[g+4>>2]|0,l=e[v+8>>2]|0,x=d+4|0,e[x>>2]=e[v>>2],e[x+4>>2]=e[v+4>>2],e[x+8>>2]=e[v+8>>2],e[x+12>>2]=e[v+12>>2],e[x+16>>2]=e[v+16>>2],e[x+20>>2]=e[v+20>>2],e[x+24>>2]=e[v+24>>2],e[x+28>>2]=e[v+28>>2],x=S,e[x>>2]=a,e[x+4>>2]=g,x=S+8|0,e[x>>2]=l,A=S+12|0,t=d,r=A+36|0;do e[A>>2]=e[t>>2],A=A+4|0,t=t+4|0;while((A|0)<(r|0));if(d=S+48|0,e[d>>2]=e[f>>2],e[d+4>>2]=e[f+4>>2],e[d+8>>2]=e[f+8>>2],e[d+12>>2]=e[f+12>>2],(a|0)==0&(g|0)==0)return S=l,y=F,S|0;r=S+16|0,p=S+24|0,v=S+28|0,l=0,f=0,t=a,A=g;do{if(!((l|0)<(n|0)|(l|0)==(n|0)&f>>>0<i>>>0)){D=4;break}if(g=f,f=EA(f|0,l|0,1,0)|0,l=b()|0,g=s+(g<<3)|0,e[g>>2]=t,e[g+4>>2]=A,Pr(d),A=d,t=e[A>>2]|0,A=e[A+4>>2]|0,(t|0)==0&(A|0)==0){if(Qt(r),t=r,A=e[t>>2]|0,t=e[t+4>>2]|0,(A|0)==0&(t|0)==0){D=10;break}gn(A,t,e[v>>2]|0,d),A=d,t=e[A>>2]|0,A=e[A+4>>2]|0}g=S,e[g>>2]=t,e[g+4>>2]=A}while(!((t|0)==0&(A|0)==0));return(D|0)==4?(A=S+40|0,t=e[A>>2]|0,t|0&&yA(t),D=S+16|0,e[D>>2]=0,e[D+4>>2]=0,e[p>>2]=0,e[S+36>>2]=0,e[v>>2]=-1,e[S+32>>2]=0,e[A>>2]=0,gn(0,0,0,d),e[S>>2]=0,e[S+4>>2]=0,e[x>>2]=0,S=14,y=F,S|0):((D|0)==10&&(e[S>>2]=0,e[S+4>>2]=0,e[x>>2]=e[p>>2]),S=e[x>>2]|0,y=F,S|0)}function i1(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0;if(v=y,y=y+48|0,a=v+32|0,f=v+40|0,g=v,!(e[A>>2]|0))return p=i,e[p>>2]=0,e[p+4>>2]=0,p=0,y=v,p|0;br(a,0,0,0),l=a,n=e[l>>2]|0,l=e[l+4>>2]|0;do if(t>>>0>15)p=g,e[p>>2]=0,e[p+4>>2]=0,e[g+8>>2]=4,e[g+12>>2]=-1,p=g+16|0,r=g+29|0,e[p>>2]=0,e[p+4>>2]=0,e[p+8>>2]=0,tA[p+12>>0]=0,tA[r>>0]=tA[f>>0]|0,tA[r+1>>0]=tA[f+1>>0]|0,tA[r+2>>0]=tA[f+2>>0]|0,r=4,p=9;else{if(r=We(r)|0,r|0){a=g,e[a>>2]=0,e[a+4>>2]=0,e[g+8>>2]=r,e[g+12>>2]=-1,a=g+16|0,p=g+29|0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,tA[a+12>>0]=0,tA[p>>0]=tA[f>>0]|0,tA[p+1>>0]=tA[f+1>>0]|0,tA[p+2>>0]=tA[f+2>>0]|0,p=9;break}if(r=v0((e[A+8>>2]|0)+1|0,32)|0,!r){p=g,e[p>>2]=0,e[p+4>>2]=0,e[g+8>>2]=13,e[g+12>>2]=-1,p=g+16|0,r=g+29|0,e[p>>2]=0,e[p+4>>2]=0,e[p+8>>2]=0,tA[p+12>>0]=0,tA[r>>0]=tA[f>>0]|0,tA[r+1>>0]=tA[f+1>>0]|0,tA[r+2>>0]=tA[f+2>>0]|0,r=13,p=9;break}Sr(A,r),x=g,e[x>>2]=n,e[x+4>>2]=l,l=g+8|0,e[l>>2]=0,e[g+12>>2]=t,e[g+20>>2]=A,e[g+24>>2]=r,tA[g+28>>0]=0,n=g+29|0,tA[n>>0]=tA[f>>0]|0,tA[n+1>>0]=tA[f+1>>0]|0,tA[n+2>>0]=tA[f+2>>0]|0,e[g+16>>2]=3,d=+Al(r),d=d*+Jo(r),s=+IA(+ +E[r>>3]),s=d/+jA(+ +Tt(+s,+ +IA(+ +E[r+8>>3])))*6371.007180918475*6371.007180918475,n=g+12|0,r=e[n>>2]|0;A:do if((r|0)>0)do{if(cn(r+-1|0,a)|0,!(s/+E[a>>3]>10))break A;x=e[n>>2]|0,r=x+-1|0,e[n>>2]=r}while((x|0)>1);while(!1);if(Qt(g),n=i,e[n>>2]=0,e[n+4>>2]=0,n=g,r=e[n>>2]|0,n=e[n+4>>2]|0,!((r|0)==0&(n|0)==0))do He(r,n,t,a)|0,f=a,A=i,f=EA(e[A>>2]|0,e[A+4>>2]|0,e[f>>2]|0,e[f+4>>2]|0)|0,A=b()|0,x=i,e[x>>2]=f,e[x+4>>2]=A,Qt(g),x=g,r=e[x>>2]|0,n=e[x+4>>2]|0;while(!((r|0)==0&(n|0)==0));r=e[l>>2]|0}while(!1);return x=r,y=v,x|0}function qe(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;if(!(cr(t,r)|0)||(t=Wi(t)|0,i=+E[r>>3],n=+E[r+8>>3],n=t&n<0?n+6.283185307179586:n,d=e[A>>2]|0,(d|0)<=0))return d=0,d|0;if(v=e[A+4>>2]|0,t){t=0,p=n,r=-1,A=0;A:for(;;){for(g=A;l=+E[v+(g<<4)>>3],n=+E[v+(g<<4)+8>>3],A=(r+2|0)%(d|0)|0,s=+E[v+(A<<4)>>3],f=+E[v+(A<<4)+8>>3],l>s?(a=l,l=f):(a=s,s=l,l=n,n=f),i=i==s|i==a?i+2220446049250313e-31:i,!!(i<s|i>a);)if(r=g+1|0,(r|0)>=(d|0)){r=22;break A}else A=g,g=r,r=A;if(f=l<0?l+6.283185307179586:l,l=n<0?n+6.283185307179586:n,p=f==p|l==p?p+-2220446049250313e-31:p,a=f+(l-f)*((i-s)/(a-s)),(a<0?a+6.283185307179586:a)>p&&(t=t^1),A=g+1|0,(A|0)>=(d|0)){r=22;break}else r=g}if((r|0)==22)return t|0}else{t=0,p=n,r=-1,A=0;A:for(;;){for(g=A;l=+E[v+(g<<4)>>3],n=+E[v+(g<<4)+8>>3],A=(r+2|0)%(d|0)|0,s=+E[v+(A<<4)>>3],f=+E[v+(A<<4)+8>>3],l>s?(a=l,l=f):(a=s,s=l,l=n,n=f),i=i==s|i==a?i+2220446049250313e-31:i,!!(i<s|i>a);)if(r=g+1|0,(r|0)>=(d|0)){r=22;break A}else A=g,g=r,r=A;if(p=l==p|n==p?p+-2220446049250313e-31:p,l+(n-l)*((i-s)/(a-s))>p&&(t=t^1),A=g+1|0,(A|0)>=(d|0)){r=22;break}else r=g}if((r|0)==22)return t|0}return 0}function vn(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0;if(D=e[A>>2]|0,!D){e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;return}if(S=t+8|0,E[S>>3]=17976931348623157e292,F=t+24|0,E[F>>3]=17976931348623157e292,E[t>>3]=-17976931348623157e292,K=t+16|0,E[K>>3]=-17976931348623157e292,!((D|0)<=0)){for(d=e[A+4>>2]|0,g=17976931348623157e292,p=-17976931348623157e292,v=0,A=-1,s=17976931348623157e292,l=17976931348623157e292,a=-17976931348623157e292,i=-17976931348623157e292,x=0;r=+E[d+(x<<4)>>3],f=+E[d+(x<<4)+8>>3],A=A+2|0,n=+E[d+(((A|0)==(D|0)?0:A)<<4)+8>>3],r<s&&(E[S>>3]=r,s=r),f<l&&(E[F>>3]=f,l=f),r>a?E[t>>3]=r:r=a,f>i&&(E[K>>3]=f,i=f),g=f>0&f<g?f:g,p=f<0&f>p?f:p,v=v|+IA(+(f-n))>3.141592653589793,A=x+1|0,(A|0)!=(D|0);)z=x,a=r,x=A,A=z;v&&(E[K>>3]=p,E[F>>3]=g)}}function We(A){return A=A|0,(A>>>0<4?0:15)|0}function Sr(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0;if(D=e[A>>2]|0,D){if(S=t+8|0,E[S>>3]=17976931348623157e292,F=t+24|0,E[F>>3]=17976931348623157e292,E[t>>3]=-17976931348623157e292,K=t+16|0,E[K>>3]=-17976931348623157e292,(D|0)>0){for(n=e[A+4>>2]|0,d=17976931348623157e292,x=-17976931348623157e292,i=0,r=-1,a=17976931348623157e292,g=17976931348623157e292,v=-17976931348623157e292,l=-17976931348623157e292,z=0;s=+E[n+(z<<4)>>3],p=+E[n+(z<<4)+8>>3],cA=r+2|0,f=+E[n+(((cA|0)==(D|0)?0:cA)<<4)+8>>3],s<a&&(E[S>>3]=s,a=s),p<g&&(E[F>>3]=p,g=p),s>v?E[t>>3]=s:s=v,p>l&&(E[K>>3]=p,l=p),d=p>0&p<d?p:d,x=p<0&p>x?p:x,i=i|+IA(+(p-f))>3.141592653589793,r=z+1|0,(r|0)!=(D|0);)cA=z,v=s,z=r,r=cA;i&&(E[K>>3]=x,E[F>>3]=d)}}else e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;if(cA=A+8|0,r=e[cA>>2]|0,!((r|0)<=0)){nA=A+12|0,T=0;do if(n=e[nA>>2]|0,i=T,T=T+1|0,F=t+(T<<5)|0,K=e[n+(i<<3)>>2]|0,K){if(z=t+(T<<5)+8|0,E[z>>3]=17976931348623157e292,A=t+(T<<5)+24|0,E[A>>3]=17976931348623157e292,E[F>>3]=-17976931348623157e292,G=t+(T<<5)+16|0,E[G>>3]=-17976931348623157e292,(K|0)>0){for(D=e[n+(i<<3)+4>>2]|0,d=17976931348623157e292,x=-17976931348623157e292,n=0,i=-1,S=0,a=17976931348623157e292,g=17976931348623157e292,p=-17976931348623157e292,l=-17976931348623157e292;s=+E[D+(S<<4)>>3],v=+E[D+(S<<4)+8>>3],i=i+2|0,f=+E[D+(((i|0)==(K|0)?0:i)<<4)+8>>3],s<a&&(E[z>>3]=s,a=s),v<g&&(E[A>>3]=v,g=v),s>p?E[F>>3]=s:s=p,v>l&&(E[G>>3]=v,l=v),d=v>0&v<d?v:d,x=v<0&v>x?v:x,n=n|+IA(+(v-f))>3.141592653589793,i=S+1|0,(i|0)!=(K|0);)uA=S,S=i,p=s,i=uA;n&&(E[G>>3]=x,E[A>>3]=d)}}else e[F>>2]=0,e[F+4>>2]=0,e[F+8>>2]=0,e[F+12>>2]=0,e[F+16>>2]=0,e[F+20>>2]=0,e[F+24>>2]=0,e[F+28>>2]=0,r=e[cA>>2]|0;while((T|0)<(r|0))}}function Tr(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;if(!(qe(A,t,r)|0))return n=0,n|0;if(n=A+8|0,(e[n>>2]|0)<=0)return n=1,n|0;for(i=A+12|0,A=0;;){if(s=A,A=A+1|0,qe((e[i>>2]|0)+(s<<3)|0,t+(A<<5)|0,r)|0){A=0,i=6;break}if((A|0)>=(e[n>>2]|0)){A=1,i=6;break}}return(i|0)==6?A|0:0}function bn(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0;if(g=y,y=y+16|0,f=g,l=r+8|0,!(qe(A,t,l)|0))return a=0,y=g,a|0;a=A+8|0;A:do if((e[a>>2]|0)>0){for(s=A+12|0,n=0;;){if(p=n,n=n+1|0,qe((e[s>>2]|0)+(p<<3)|0,t+(n<<5)|0,l)|0){n=0;break}if((n|0)>=(e[a>>2]|0))break A}return y=g,n|0}while(!1);if(St(A,t,r,i)|0)return p=0,y=g,p|0;e[f>>2]=e[r>>2],e[f+4>>2]=l,n=e[a>>2]|0;A:do if((n|0)>0)for(A=A+12|0,l=0,s=n;;){if(n=e[A>>2]|0,(e[n+(l<<3)>>2]|0)>0){if(qe(f,i,e[n+(l<<3)+4>>2]|0)|0){n=0;break A}if(n=l+1|0,St((e[A>>2]|0)+(l<<3)|0,t+(n<<5)|0,r,i)|0){n=0;break A}s=e[a>>2]|0}else n=l+1|0;if((n|0)<(s|0))l=n;else{n=1;break}}else n=1;while(!1);return p=n,y=g,p|0}function St(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0,cA=0,uA=0,DA=0;if(cA=y,y=y+176|0,z=cA+172|0,n=cA+168|0,G=cA,!(wr(t,i)|0))return A=0,y=cA,A|0;if(el(t,i,z,n),Pe(G|0,r|0,168)|0,(e[r>>2]|0)>0){t=0;do uA=G+8+(t<<4)+8|0,K=+b0(+E[uA>>3],e[n>>2]|0),E[uA>>3]=K,t=t+1|0;while((t|0)<(e[r>>2]|0))}S=+E[i>>3],F=+E[i+8>>3],K=+b0(+E[i+16>>3],e[n>>2]|0),x=+b0(+E[i+24>>3],e[n>>2]|0);A:do if((e[A>>2]|0)>0){if(i=A+4|0,n=e[G>>2]|0,(n|0)<=0){for(t=0;;)if(t=t+1|0,(t|0)>=(e[A>>2]|0)){t=0;break A}}for(r=0;;){if(t=e[i>>2]|0,d=+E[t+(r<<4)>>3],D=+b0(+E[t+(r<<4)+8>>3],e[z>>2]|0),t=e[i>>2]|0,r=r+1|0,uA=(r|0)%(e[A>>2]|0)|0,s=+E[t+(uA<<4)>>3],l=+b0(+E[t+(uA<<4)+8>>3],e[z>>2]|0),!(d>=S)|!(s>=S)&&!(d<=F)|!(s<=F)&&!(D<=x)|!(l<=x)&&!(D>=K)|!(l>=K)){v=s-d,g=l-D,t=0;do if(DA=t,t=t+1|0,uA=(t|0)==(n|0)?0:t,s=+E[G+8+(DA<<4)+8>>3],l=+E[G+8+(uA<<4)+8>>3]-s,f=+E[G+8+(DA<<4)>>3],a=+E[G+8+(uA<<4)>>3]-f,p=v*l-g*a,p!=0&&(T=D-s,nA=d-f,a=(T*a-l*nA)/p,!(a<0|a>1))&&(p=(v*T-g*nA)/p,p>=0&p<=1)){t=1;break A}while((t|0)<(n|0))}if((r|0)>=(e[A>>2]|0)){t=0;break}}}else t=0;while(!1);return DA=t,y=cA,DA|0}function kn(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0;if(St(A,t,r,i)|0)return s=1,s|0;if(s=A+8|0,(e[s>>2]|0)<=0)return s=0,s|0;for(n=A+12|0,A=0;;){if(l=A,A=A+1|0,St((e[n>>2]|0)+(l<<3)|0,t+(A<<5)|0,r,i)|0){A=1,n=6;break}if((A|0)>=(e[s>>2]|0)){A=0,n=6;break}}return(n|0)==6?A|0:0}function n1(){return 8}function s1(){return 16}function o1(){return 168}function l1(){return 8}function f1(){return 16}function u1(){return 12}function h1(){return 8}function a1(A){return A=A|0,+(+((e[A>>2]|0)>>>0)+4294967296*+(e[A+4>>2]|0))}function g1(A){A=A|0;var t=0,r=0;return r=+E[A>>3],t=+E[A+8>>3],+ +YA(+(r*r+t*t))}function Bn(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0;g=+E[A>>3],a=+E[t>>3]-g,f=+E[A+8>>3],l=+E[t+8>>3]-f,v=+E[r>>3],s=+E[i>>3]-v,d=+E[r+8>>3],p=+E[i+8>>3]-d,s=(s*(f-d)-(g-v)*p)/(a*p-l*s),E[n>>3]=g+a*s,E[n+8>>3]=f+l*s}function Cn(A,t){return A=A|0,t=t|0,+IA(+(+E[A>>3]-+E[t>>3]))<11920928955078125e-23?(t=+IA(+(+E[A+8>>3]-+E[t+8>>3]))<11920928955078125e-23,t|0):(t=0,t|0)}function t0(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;return n=+E[A>>3]-+E[t>>3],i=+E[A+8>>3]-+E[t+8>>3],r=+E[A+16>>3]-+E[t+16>>3],+(n*n+i*i+r*r)}function c1(A,t){A=A|0,t=t|0;var r=0,i=0,n=0;r=+E[A>>3],i=+jA(+r),r=+OA(+r),E[t+16>>3]=r,r=+E[A+8>>3],n=i*+jA(+r),E[t>>3]=n,r=i*+OA(+r),E[t+8>>3]=r}function w1(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;if(s=y,y=y+16|0,n=s,i=WA(A,t)|0,(r+-1|0)>>>0>5||(i=(i|0)!=0,(r|0)==1&i))return n=-1,y=s,n|0;do if(Xe(A,t,n)|0)i=-1;else if(i){i=((e[26352+(r<<2)>>2]|0)+5-(e[n>>2]|0)|0)%5|0;break}else{i=((e[26384+(r<<2)>>2]|0)+6-(e[n>>2]|0)|0)%6|0;break}while(!1);return n=i,y=s,n|0}function Xe(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0,g=0;if(g=y,y=y+32|0,l=g+16|0,f=g,i=Ce(A,t,l)|0,i|0)return r=i,y=g,r|0;s=fn(A,t)|0,a=y0(A,t)|0,Wo(s,f),i=Xo(s,e[l>>2]|0)|0;A:do if($A(s)|0){do switch(s|0){case 4:{A=0;break}case 14:{A=1;break}case 24:{A=2;break}case 38:{A=3;break}case 49:{A=4;break}case 58:{A=5;break}case 63:{A=6;break}case 72:{A=7;break}case 83:{A=8;break}case 97:{A=9;break}case 107:{A=10;break}case 117:{A=11;break}default:{i=1;break A}}while(!1);if(n=e[26416+(A*24|0)+8>>2]|0,t=e[26416+(A*24|0)+16>>2]|0,A=e[l>>2]|0,(A|0)!=(e[f>>2]|0)&&(f=hr(s)|0,A=e[l>>2]|0,f|(A|0)==(t|0)&&(i=(i+1|0)%6|0)),(a|0)==3&(A|0)==(t|0)){i=(i+5|0)%6|0,n=22;break}(a|0)==5&(A|0)==(n|0)&&(i=(i+1|0)%6|0),n=22}else n=22;while(!1);return(n|0)==22&&(e[r>>2]=i,i=0),r=i,y=g,r|0}function P0(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0;if(G=y,y=y+32|0,z=G+24|0,F=G+20|0,D=G+8|0,x=G+16|0,d=G,a=(WA(A,t)|0)==0,a=a?6:5,p=eA(A|0,t|0,52)|0,b()|0,p=p&15,a>>>0<=r>>>0)return i=2,y=G,i|0;v=(p|0)==0,!v&&(S=sA(7,0,(p^15)*3|0)|0,(S&A|0)==0&((b()|0)&t|0)==0)?n=r:s=4;A:do if((s|0)==4){if(n=(WA(A,t)|0)!=0,((n?4:5)|0)<(r|0)||Xe(A,t,z)|0||(s=(e[z>>2]|0)+r|0,n?n=26704+(((s|0)%5|0)<<2)|0:n=26736+(((s|0)%6|0)<<2)|0,S=e[n>>2]|0,(S|0)==7))return i=1,y=G,i|0;e[F>>2]=0,n=o0(A,t,S,F,D)|0;do if(!n){if(f=D,g=e[f>>2]|0,f=e[f+4>>2]|0,l=f>>>0<t>>>0|(f|0)==(t|0)&g>>>0<A>>>0,s=l?g:A,l=l?f:t,!v&&(v=sA(7,0,(p^15)*3|0)|0,(g&v|0)==0&(f&(b()|0)|0)==0))n=r;else{if(f=(r+-1+a|0)%(a|0)|0,n=WA(A,t)|0,(f|0)<0&&BA(27795,27797,246,27806),a=(n|0)!=0,((a?4:5)|0)<(f|0)&&BA(27795,27797,246,27806),Xe(A,t,z)|0&&BA(27795,27797,246,27806),n=(e[z>>2]|0)+f|0,a?n=26704+(((n|0)%5|0)<<2)|0:n=26736+(((n|0)%6|0)<<2)|0,f=e[n>>2]|0,(f|0)==7&&BA(27795,27797,246,27806),e[x>>2]=0,n=o0(A,t,f,x,d)|0,n|0)break;g=d,a=e[g>>2]|0,g=e[g+4>>2]|0;do if(g>>>0<l>>>0|(g|0)==(l|0)&a>>>0<s>>>0){if(WA(a,g)|0?s=ur(a,g,A,t)|0:s=e[26800+((((e[x>>2]|0)+(e[26768+(f<<2)>>2]|0)|0)%6|0)<<2)>>2]|0,n=WA(a,g)|0,(s+-1|0)>>>0>5){n=-1,s=a,l=g;break}if(n=(n|0)!=0,(s|0)==1&n){n=-1,s=a,l=g;break}do if(Xe(a,g,z)|0)n=-1;else if(n){n=((e[26352+(s<<2)>>2]|0)+5-(e[z>>2]|0)|0)%5|0;break}else{n=((e[26384+(s<<2)>>2]|0)+6-(e[z>>2]|0)|0)%6|0;break}while(!1);s=a,l=g}else n=r;while(!1);f=D,g=e[f>>2]|0,f=e[f+4>>2]|0}if((s|0)==(g|0)&(l|0)==(f|0)){if(a=(WA(g,f)|0)!=0,a?A=ur(g,f,A,t)|0:A=e[26800+((((e[F>>2]|0)+(e[26768+(S<<2)>>2]|0)|0)%6|0)<<2)>>2]|0,n=WA(g,f)|0,(A+-1|0)>>>0<=5&&(K=(n|0)!=0,!((A|0)==1&K)))do if(Xe(g,f,z)|0)n=-1;else if(K){n=((e[26352+(A<<2)>>2]|0)+5-(e[z>>2]|0)|0)%5|0;break}else{n=((e[26384+(A<<2)>>2]|0)+6-(e[z>>2]|0)|0)%6|0;break}while(!1);else n=-1;n=n+1|0,n=(n|0)==6|a&(n|0)==5?0:n}t=l,A=s;break A}while(!1);return i=n,y=G,i|0}while(!1);return K=sA(n|0,0,56)|0,z=b()|0|t&-2130706433|536870912,e[i>>2]=K|A,e[i+4>>2]=z,i=0,y=G,i|0}function p1(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;return s=(WA(A,t)|0)==0,i=P0(A,t,0,r)|0,n=(i|0)==0,s?!n||(i=P0(A,t,1,r+8|0)|0,i|0)||(i=P0(A,t,2,r+16|0)|0,i|0)||(i=P0(A,t,3,r+24|0)|0,i|0)||(i=P0(A,t,4,r+32|0)|0,i)?(s=i,s|0):P0(A,t,5,r+40|0)|0:!n||(i=P0(A,t,1,r+8|0)|0,i|0)||(i=P0(A,t,2,r+16|0)|0,i|0)||(i=P0(A,t,3,r+24|0)|0,i|0)||(i=P0(A,t,4,r+32|0)|0,i|0)?(s=i,s|0):(s=r+40|0,e[s>>2]=0,e[s+4>>2]=0,s=0,s|0)}function m1(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0,f=0,a=0;return a=y,y=y+192|0,n=a,s=a+168|0,l=eA(A|0,t|0,56)|0,b()|0,l=l&7,f=t&-2130706433|134217728,i=Ce(A,f,s)|0,i|0?(f=i,y=a,f|0):(t=eA(A|0,t|0,52)|0,b()|0,t=t&15,WA(A,f)|0?Er(s,t,l,1,n):yr(s,t,l,1,n),f=n+8|0,e[r>>2]=e[f>>2],e[r+4>>2]=e[f+4>>2],e[r+8>>2]=e[f+8>>2],e[r+12>>2]=e[f+12>>2],f=0,y=a,f|0)}function E1(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;return n=y,y=y+16|0,r=n,!(!0&(t&2013265920|0)==536870912)||(i=t&-2130706433|134217728,!(vr(A,i)|0))?(i=0,y=n,i|0):(s=eA(A|0,t|0,56)|0,b()|0,s=(P0(A,i,s&7,r)|0)==0,i=r,i=s&((e[i>>2]|0)==(A|0)?(e[i+4>>2]|0)==(t|0):0)&1,y=n,i|0)}function dn(A,t,r){A=A|0,t=t|0,r=r|0;var i=0;(t|0)>0?(i=v0(t,4)|0,e[A>>2]=i,i||BA(27819,27842,40,27856)):e[A>>2]=0,e[A+4>>2]=t,e[A+8>>2]=0,e[A+12>>2]=r}function xn(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0;n=A+4|0,s=A+12|0,l=A+8|0;A:for(;;){for(r=e[n>>2]|0,t=0;;){if((t|0)>=(r|0))break A;if(i=e[A>>2]|0,f=e[i+(t<<2)>>2]|0,!f)t=t+1|0;else break}t=i+(~~(+IA(+(+W0(10,+ +(15-(e[s>>2]|0)|0))*(+E[f>>3]+ +E[f+8>>3])))%+(r|0))>>>0<<2)|0,r=e[t>>2]|0;e:do if(r|0){if(i=f+32|0,(r|0)==(f|0))e[t>>2]=e[i>>2];else{if(r=r+32|0,t=e[r>>2]|0,!t)break;for(;(t|0)!=(f|0);)if(r=t+32|0,t=e[r>>2]|0,!t)break e;e[r>>2]=e[i>>2]}yA(f),e[l>>2]=(e[l>>2]|0)+-1}while(!1)}yA(e[A>>2]|0)}function Dn(A){A=A|0;var t=0,r=0,i=0;for(i=e[A+4>>2]|0,r=0;;){if((r|0)>=(i|0)){t=0,r=4;break}if(t=e[(e[A>>2]|0)+(r<<2)>>2]|0,!t)r=r+1|0;else{r=4;break}}return(r|0)==4?t|0:0}function Mn(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;if(r=~~(+IA(+(+W0(10,+ +(15-(e[A+12>>2]|0)|0))*(+E[t>>3]+ +E[t+8>>3])))%+(e[A+4>>2]|0))>>>0,r=(e[A>>2]|0)+(r<<2)|0,i=e[r>>2]|0,!i)return s=1,s|0;s=t+32|0;do if((i|0)!=(t|0)){if(r=e[i+32>>2]|0,!r)return s=1,s|0;for(n=r;;){if((n|0)==(t|0)){n=8;break}if(r=e[n+32>>2]|0,r)i=n,n=r;else{r=1,n=10;break}}if((n|0)==8){e[i+32>>2]=e[s>>2];break}else if((n|0)==10)return r|0}else e[r>>2]=e[s>>2];while(!1);return yA(t),s=A+8|0,e[s>>2]=(e[s>>2]|0)+-1,s=0,s|0}function y1(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;s=L0(40)|0,s||BA(27872,27842,98,27885),e[s>>2]=e[t>>2],e[s+4>>2]=e[t+4>>2],e[s+8>>2]=e[t+8>>2],e[s+12>>2]=e[t+12>>2],n=s+16|0,e[n>>2]=e[r>>2],e[n+4>>2]=e[r+4>>2],e[n+8>>2]=e[r+8>>2],e[n+12>>2]=e[r+12>>2],e[s+32>>2]=0,n=~~(+IA(+(+W0(10,+ +(15-(e[A+12>>2]|0)|0))*(+E[t>>3]+ +E[t+8>>3])))%+(e[A+4>>2]|0))>>>0,n=(e[A>>2]|0)+(n<<2)|0,i=e[n>>2]|0;do if(!i)e[n>>2]=s;else{for(;!(xe(i,t)|0&&xe(i+16|0,r)|0);)if(n=e[i+32>>2]|0,i=(n|0)==0?i:n,!(e[i+32>>2]|0)){l=10;break}if((l|0)==10){e[i+32>>2]=s;break}return yA(s),l=i,l|0}while(!1);return l=A+8|0,e[l>>2]=(e[l>>2]|0)+1,l=s,l|0}function v1(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0;if(n=~~(+IA(+(+W0(10,+ +(15-(e[A+12>>2]|0)|0))*(+E[t>>3]+ +E[t+8>>3])))%+(e[A+4>>2]|0))>>>0,n=e[(e[A>>2]|0)+(n<<2)>>2]|0,!n)return r=0,r|0;if(!r){for(A=n;;){if(xe(A,t)|0){i=10;break}if(A=e[A+32>>2]|0,!A){A=0,i=10;break}}if((i|0)==10)return A|0}for(A=n;;){if(xe(A,t)|0&&xe(A+16|0,r)|0){i=10;break}if(A=e[A+32>>2]|0,!A){A=0,i=10;break}}return(i|0)==10?A|0:0}function b1(A,t){A=A|0,t=t|0;var r=0;if(r=~~(+IA(+(+W0(10,+ +(15-(e[A+12>>2]|0)|0))*(+E[t>>3]+ +E[t+8>>3])))%+(e[A+4>>2]|0))>>>0,A=e[(e[A>>2]|0)+(r<<2)>>2]|0,!A)return r=0,r|0;for(;;){if(xe(A,t)|0){t=5;break}if(A=e[A+32>>2]|0,!A){A=0,t=5;break}}return(t|0)==5?A|0:0}function k1(){return 27904}function $0(A){return A=+A,~~+Tn(+A)|0}function L0(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0,S=0,F=0,K=0,z=0,G=0,T=0,nA=0;nA=y,y=y+16|0,d=nA;do if(A>>>0<245){if(g=A>>>0<11?16:A+11&-8,A=g>>>3,v=e[6977]|0,r=v>>>A,r&3|0)return t=(r&1^1)+A|0,A=27948+(t<<1<<2)|0,r=A+8|0,i=e[r>>2]|0,n=i+8|0,s=e[n>>2]|0,(s|0)==(A|0)?e[6977]=v&~(1<<t):(e[s+12>>2]=A,e[r>>2]=s),T=t<<3,e[i+4>>2]=T|3,T=i+T+4|0,e[T>>2]=e[T>>2]|1,T=n,y=nA,T|0;if(p=e[6979]|0,g>>>0>p>>>0){if(r|0)return t=2<<A,t=r<<A&(t|0-t),t=(t&0-t)+-1|0,f=t>>>12&16,t=t>>>f,r=t>>>5&8,t=t>>>r,s=t>>>2&4,t=t>>>s,A=t>>>1&2,t=t>>>A,i=t>>>1&1,i=(r|f|s|A|i)+(t>>>i)|0,t=27948+(i<<1<<2)|0,A=t+8|0,s=e[A>>2]|0,f=s+8|0,r=e[f>>2]|0,(r|0)==(t|0)?(A=v&~(1<<i),e[6977]=A):(e[r+12>>2]=t,e[A>>2]=r,A=v),T=i<<3,l=T-g|0,e[s+4>>2]=g|3,n=s+g|0,e[n+4>>2]=l|1,e[s+T>>2]=l,p|0&&(i=e[6982]|0,t=p>>>3,r=27948+(t<<1<<2)|0,t=1<<t,A&t?(A=r+8|0,t=e[A>>2]|0):(e[6977]=A|t,t=r,A=r+8|0),e[A>>2]=i,e[t+12>>2]=i,e[i+8>>2]=t,e[i+12>>2]=r),e[6979]=l,e[6982]=n,T=f,y=nA,T|0;if(s=e[6978]|0,s){for(r=(s&0-s)+-1|0,n=r>>>12&16,r=r>>>n,i=r>>>5&8,r=r>>>i,l=r>>>2&4,r=r>>>l,f=r>>>1&2,r=r>>>f,a=r>>>1&1,a=e[28212+((i|n|l|f|a)+(r>>>a)<<2)>>2]|0,r=a,f=a,a=(e[a+4>>2]&-8)-g|0;A=e[r+16>>2]|0,!(!A&&(A=e[r+20>>2]|0,!A));)l=(e[A+4>>2]&-8)-g|0,n=l>>>0<a>>>0,r=A,f=n?A:f,a=n?l:a;if(l=f+g|0,l>>>0>f>>>0){n=e[f+24>>2]|0,t=e[f+12>>2]|0;do if((t|0)==(f|0)){if(A=f+20|0,t=e[A>>2]|0,!t&&(A=f+16|0,t=e[A>>2]|0,!t)){r=0;break}for(;;)if(i=t+20|0,r=e[i>>2]|0,r)t=r,A=i;else if(i=t+16|0,r=e[i>>2]|0,r)t=r,A=i;else break;e[A>>2]=0,r=t}else r=e[f+8>>2]|0,e[r+12>>2]=t,e[t+8>>2]=r,r=t;while(!1);do if(n|0){if(t=e[f+28>>2]|0,A=28212+(t<<2)|0,(f|0)==(e[A>>2]|0)){if(e[A>>2]=r,!r){e[6978]=s&~(1<<t);break}}else if(T=n+16|0,e[((e[T>>2]|0)==(f|0)?T:n+20|0)>>2]=r,!r)break;e[r+24>>2]=n,t=e[f+16>>2]|0,t|0&&(e[r+16>>2]=t,e[t+24>>2]=r),t=e[f+20>>2]|0,t|0&&(e[r+20>>2]=t,e[t+24>>2]=r)}while(!1);return a>>>0<16?(T=a+g|0,e[f+4>>2]=T|3,T=f+T+4|0,e[T>>2]=e[T>>2]|1):(e[f+4>>2]=g|3,e[l+4>>2]=a|1,e[l+a>>2]=a,p|0&&(i=e[6982]|0,t=p>>>3,r=27948+(t<<1<<2)|0,t=1<<t,t&v?(A=r+8|0,t=e[A>>2]|0):(e[6977]=t|v,t=r,A=r+8|0),e[A>>2]=i,e[t+12>>2]=i,e[i+8>>2]=t,e[i+12>>2]=r),e[6979]=a,e[6982]=l),T=f+8|0,y=nA,T|0}else v=g}else v=g}else v=g}else if(A>>>0<=4294967231)if(A=A+11|0,g=A&-8,i=e[6978]|0,i){n=0-g|0,A=A>>>8,A?g>>>0>16777215?a=31:(v=(A+1048320|0)>>>16&8,S=A<<v,f=(S+520192|0)>>>16&4,S=S<<f,a=(S+245760|0)>>>16&2,a=14-(f|v|a)+(S<<a>>>15)|0,a=g>>>(a+7|0)&1|a<<1):a=0,r=e[28212+(a<<2)>>2]|0;A:do if(!r)r=0,A=0,S=61;else for(A=0,f=g<<((a|0)==31?0:25-(a>>>1)|0),s=0;;){if(l=(e[r+4>>2]&-8)-g|0,l>>>0<n>>>0)if(l)A=r,n=l;else{A=r,n=0,S=65;break A}if(S=e[r+20>>2]|0,r=e[r+16+(f>>>31<<2)>>2]|0,s=(S|0)==0|(S|0)==(r|0)?s:S,r)f=f<<1;else{r=s,S=61;break}}while(!1);if((S|0)==61){if((r|0)==0&(A|0)==0){if(A=2<<a,A=(A|0-A)&i,!A){v=g;break}v=(A&0-A)+-1|0,l=v>>>12&16,v=v>>>l,s=v>>>5&8,v=v>>>s,f=v>>>2&4,v=v>>>f,a=v>>>1&2,v=v>>>a,r=v>>>1&1,A=0,r=e[28212+((s|l|f|a|r)+(v>>>r)<<2)>>2]|0}r?S=65:(f=A,l=n)}if((S|0)==65)for(s=r;;)if(v=(e[s+4>>2]&-8)-g|0,r=v>>>0<n>>>0,n=r?v:n,A=r?s:A,r=e[s+16>>2]|0,r||(r=e[s+20>>2]|0),r)s=r;else{f=A,l=n;break}if((f|0)!=0&&l>>>0<((e[6979]|0)-g|0)>>>0&&(p=f+g|0,p>>>0>f>>>0)){s=e[f+24>>2]|0,t=e[f+12>>2]|0;do if((t|0)==(f|0)){if(A=f+20|0,t=e[A>>2]|0,!t&&(A=f+16|0,t=e[A>>2]|0,!t)){t=0;break}for(;;)if(n=t+20|0,r=e[n>>2]|0,r)t=r,A=n;else if(n=t+16|0,r=e[n>>2]|0,r)t=r,A=n;else break;e[A>>2]=0}else T=e[f+8>>2]|0,e[T+12>>2]=t,e[t+8>>2]=T;while(!1);do if(s){if(A=e[f+28>>2]|0,r=28212+(A<<2)|0,(f|0)==(e[r>>2]|0)){if(e[r>>2]=t,!t){i=i&~(1<<A),e[6978]=i;break}}else if(T=s+16|0,e[((e[T>>2]|0)==(f|0)?T:s+20|0)>>2]=t,!t)break;e[t+24>>2]=s,A=e[f+16>>2]|0,A|0&&(e[t+16>>2]=A,e[A+24>>2]=t),A=e[f+20>>2]|0,A&&(e[t+20>>2]=A,e[A+24>>2]=t)}while(!1);A:do if(l>>>0<16)T=l+g|0,e[f+4>>2]=T|3,T=f+T+4|0,e[T>>2]=e[T>>2]|1;else{if(e[f+4>>2]=g|3,e[p+4>>2]=l|1,e[p+l>>2]=l,t=l>>>3,l>>>0<256){r=27948+(t<<1<<2)|0,A=e[6977]|0,t=1<<t,A&t?(A=r+8|0,t=e[A>>2]|0):(e[6977]=A|t,t=r,A=r+8|0),e[A>>2]=p,e[t+12>>2]=p,e[p+8>>2]=t,e[p+12>>2]=r;break}if(t=l>>>8,t?l>>>0>16777215?r=31:(G=(t+1048320|0)>>>16&8,T=t<<G,z=(T+520192|0)>>>16&4,T=T<<z,r=(T+245760|0)>>>16&2,r=14-(z|G|r)+(T<<r>>>15)|0,r=l>>>(r+7|0)&1|r<<1):r=0,t=28212+(r<<2)|0,e[p+28>>2]=r,A=p+16|0,e[A+4>>2]=0,e[A>>2]=0,A=1<<r,!(i&A)){e[6978]=i|A,e[t>>2]=p,e[p+24>>2]=t,e[p+12>>2]=p,e[p+8>>2]=p;break}t=e[t>>2]|0;e:do if((e[t+4>>2]&-8|0)!=(l|0)){for(i=l<<((r|0)==31?0:25-(r>>>1)|0);r=t+16+(i>>>31<<2)|0,A=e[r>>2]|0,!!A;)if((e[A+4>>2]&-8|0)==(l|0)){t=A;break e}else i=i<<1,t=A;e[r>>2]=p,e[p+24>>2]=t,e[p+12>>2]=p,e[p+8>>2]=p;break A}while(!1);G=t+8|0,T=e[G>>2]|0,e[T+12>>2]=p,e[G>>2]=p,e[p+8>>2]=T,e[p+12>>2]=t,e[p+24>>2]=0}while(!1);return T=f+8|0,y=nA,T|0}else v=g}else v=g;else v=-1;while(!1);if(r=e[6979]|0,r>>>0>=v>>>0)return t=r-v|0,A=e[6982]|0,t>>>0>15?(T=A+v|0,e[6982]=T,e[6979]=t,e[T+4>>2]=t|1,e[A+r>>2]=t,e[A+4>>2]=v|3):(e[6979]=0,e[6982]=0,e[A+4>>2]=r|3,T=A+r+4|0,e[T>>2]=e[T>>2]|1),T=A+8|0,y=nA,T|0;if(l=e[6980]|0,l>>>0>v>>>0)return z=l-v|0,e[6980]=z,T=e[6983]|0,G=T+v|0,e[6983]=G,e[G+4>>2]=z|1,e[T+4>>2]=v|3,T=T+8|0,y=nA,T|0;if(e[7095]|0?A=e[7097]|0:(e[7097]=4096,e[7096]=4096,e[7098]=-1,e[7099]=-1,e[7100]=0,e[7088]=0,e[7095]=d&-16^1431655768,A=4096),f=v+48|0,a=v+47|0,s=A+a|0,n=0-A|0,g=s&n,g>>>0<=v>>>0||(A=e[7087]|0,A|0&&(p=e[7085]|0,d=p+g|0,d>>>0<=p>>>0|d>>>0>A>>>0)))return T=0,y=nA,T|0;A:do if(e[7088]&4)t=0,S=143;else{r=e[6983]|0;e:do if(r){for(i=28356;d=e[i>>2]|0,!(d>>>0<=r>>>0&&(d+(e[i+4>>2]|0)|0)>>>0>r>>>0);)if(A=e[i+8>>2]|0,A)i=A;else{S=128;break e}if(t=s-l&n,t>>>0<2147483647)if(A=ee(t|0)|0,(A|0)==((e[i>>2]|0)+(e[i+4>>2]|0)|0)){if((A|0)!=-1){l=t,s=A,S=145;break A}}else i=A,S=136;else t=0}else S=128;while(!1);do if((S|0)==128)if(r=ee(0)|0,(r|0)!=-1&&(t=r,x=e[7096]|0,D=x+-1|0,t=((D&t|0)==0?0:(D+t&0-x)-t|0)+g|0,x=e[7085]|0,D=t+x|0,t>>>0>v>>>0&t>>>0<2147483647)){if(d=e[7087]|0,d|0&&D>>>0<=x>>>0|D>>>0>d>>>0){t=0;break}if(A=ee(t|0)|0,(A|0)==(r|0)){l=t,s=r,S=145;break A}else i=A,S=136}else t=0;while(!1);do if((S|0)==136){if(r=0-t|0,!(f>>>0>t>>>0&(t>>>0<2147483647&(i|0)!=-1)))if((i|0)==-1){t=0;break}else{l=t,s=i,S=145;break A}if(A=e[7097]|0,A=a-t+A&0-A,A>>>0>=2147483647){l=t,s=i,S=145;break A}if((ee(A|0)|0)==-1){ee(r|0)|0,t=0;break}else{l=A+t|0,s=i,S=145;break A}}while(!1);e[7088]=e[7088]|4,S=143}while(!1);if((S|0)==143&&g>>>0<2147483647&&(z=ee(g|0)|0,D=ee(0)|0,F=D-z|0,K=F>>>0>(v+40|0)>>>0,!((z|0)==-1|K^1|z>>>0<D>>>0&((z|0)!=-1&(D|0)!=-1)^1))&&(l=K?F:t,s=z,S=145),(S|0)==145){t=(e[7085]|0)+l|0,e[7085]=t,t>>>0>(e[7086]|0)>>>0&&(e[7086]=t),a=e[6983]|0;A:do if(a){for(t=28356;;){if(A=e[t>>2]|0,r=e[t+4>>2]|0,(s|0)==(A+r|0)){S=154;break}if(i=e[t+8>>2]|0,i)t=i;else break}if((S|0)==154&&(G=t+4|0,(e[t+12>>2]&8|0)==0)&&s>>>0>a>>>0&A>>>0<=a>>>0){e[G>>2]=r+l,T=(e[6980]|0)+l|0,z=a+8|0,z=(z&7|0)==0?0:0-z&7,G=a+z|0,z=T-z|0,e[6983]=G,e[6980]=z,e[G+4>>2]=z|1,e[a+T+4>>2]=40,e[6984]=e[7099];break}for(s>>>0<(e[6981]|0)>>>0&&(e[6981]=s),r=s+l|0,t=28356;;){if((e[t>>2]|0)==(r|0)){S=162;break}if(A=e[t+8>>2]|0,A)t=A;else break}if((S|0)==162&&(e[t+12>>2]&8|0)==0){e[t>>2]=s,p=t+4|0,e[p>>2]=(e[p>>2]|0)+l,p=s+8|0,p=s+((p&7|0)==0?0:0-p&7)|0,t=r+8|0,t=r+((t&7|0)==0?0:0-t&7)|0,g=p+v|0,f=t-p-v|0,e[p+4>>2]=v|3;e:do if((a|0)==(t|0))T=(e[6980]|0)+f|0,e[6980]=T,e[6983]=g,e[g+4>>2]=T|1;else{if((e[6982]|0)==(t|0)){T=(e[6979]|0)+f|0,e[6979]=T,e[6982]=g,e[g+4>>2]=T|1,e[g+T>>2]=T;break}if(A=e[t+4>>2]|0,(A&3|0)==1){l=A&-8,i=A>>>3;t:do if(A>>>0<256)if(A=e[t+8>>2]|0,r=e[t+12>>2]|0,(r|0)==(A|0)){e[6977]=e[6977]&~(1<<i);break}else{e[A+12>>2]=r,e[r+8>>2]=A;break}else{s=e[t+24>>2]|0,A=e[t+12>>2]|0;do if((A|0)==(t|0)){if(r=t+16|0,i=r+4|0,A=e[i>>2]|0,A)r=i;else if(A=e[r>>2]|0,!A){A=0;break}for(;;)if(n=A+20|0,i=e[n>>2]|0,i)A=i,r=n;else if(n=A+16|0,i=e[n>>2]|0,i)A=i,r=n;else break;e[r>>2]=0}else T=e[t+8>>2]|0,e[T+12>>2]=A,e[A+8>>2]=T;while(!1);if(!s)break;r=e[t+28>>2]|0,i=28212+(r<<2)|0;do if((e[i>>2]|0)!=(t|0)){if(T=s+16|0,e[((e[T>>2]|0)==(t|0)?T:s+20|0)>>2]=A,!A)break t}else{if(e[i>>2]=A,A|0)break;e[6978]=e[6978]&~(1<<r);break t}while(!1);if(e[A+24>>2]=s,r=t+16|0,i=e[r>>2]|0,i|0&&(e[A+16>>2]=i,e[i+24>>2]=A),r=e[r+4>>2]|0,!r)break;e[A+20>>2]=r,e[r+24>>2]=A}while(!1);t=t+l|0,n=l+f|0}else n=f;if(t=t+4|0,e[t>>2]=e[t>>2]&-2,e[g+4>>2]=n|1,e[g+n>>2]=n,t=n>>>3,n>>>0<256){r=27948+(t<<1<<2)|0,A=e[6977]|0,t=1<<t,A&t?(A=r+8|0,t=e[A>>2]|0):(e[6977]=A|t,t=r,A=r+8|0),e[A>>2]=g,e[t+12>>2]=g,e[g+8>>2]=t,e[g+12>>2]=r;break}t=n>>>8;do if(!t)i=0;else{if(n>>>0>16777215){i=31;break}G=(t+1048320|0)>>>16&8,T=t<<G,z=(T+520192|0)>>>16&4,T=T<<z,i=(T+245760|0)>>>16&2,i=14-(z|G|i)+(T<<i>>>15)|0,i=n>>>(i+7|0)&1|i<<1}while(!1);if(t=28212+(i<<2)|0,e[g+28>>2]=i,A=g+16|0,e[A+4>>2]=0,e[A>>2]=0,A=e[6978]|0,r=1<<i,!(A&r)){e[6978]=A|r,e[t>>2]=g,e[g+24>>2]=t,e[g+12>>2]=g,e[g+8>>2]=g;break}t=e[t>>2]|0;t:do if((e[t+4>>2]&-8|0)!=(n|0)){for(i=n<<((i|0)==31?0:25-(i>>>1)|0);r=t+16+(i>>>31<<2)|0,A=e[r>>2]|0,!!A;)if((e[A+4>>2]&-8|0)==(n|0)){t=A;break t}else i=i<<1,t=A;e[r>>2]=g,e[g+24>>2]=t,e[g+12>>2]=g,e[g+8>>2]=g;break e}while(!1);G=t+8|0,T=e[G>>2]|0,e[T+12>>2]=g,e[G>>2]=g,e[g+8>>2]=T,e[g+12>>2]=t,e[g+24>>2]=0}while(!1);return T=p+8|0,y=nA,T|0}for(t=28356;A=e[t>>2]|0,!(A>>>0<=a>>>0&&(T=A+(e[t+4>>2]|0)|0,T>>>0>a>>>0));)t=e[t+8>>2]|0;n=T+-47|0,A=n+8|0,A=n+((A&7|0)==0?0:0-A&7)|0,n=a+16|0,A=A>>>0<n>>>0?a:A,t=A+8|0,r=l+-40|0,z=s+8|0,z=(z&7|0)==0?0:0-z&7,G=s+z|0,z=r-z|0,e[6983]=G,e[6980]=z,e[G+4>>2]=z|1,e[s+r+4>>2]=40,e[6984]=e[7099],r=A+4|0,e[r>>2]=27,e[t>>2]=e[7089],e[t+4>>2]=e[7090],e[t+8>>2]=e[7091],e[t+12>>2]=e[7092],e[7089]=s,e[7090]=l,e[7092]=0,e[7091]=t,t=A+24|0;do G=t,t=t+4|0,e[t>>2]=7;while((G+8|0)>>>0<T>>>0);if((A|0)!=(a|0)){if(s=A-a|0,e[r>>2]=e[r>>2]&-2,e[a+4>>2]=s|1,e[A>>2]=s,t=s>>>3,s>>>0<256){r=27948+(t<<1<<2)|0,A=e[6977]|0,t=1<<t,A&t?(A=r+8|0,t=e[A>>2]|0):(e[6977]=A|t,t=r,A=r+8|0),e[A>>2]=a,e[t+12>>2]=a,e[a+8>>2]=t,e[a+12>>2]=r;break}if(t=s>>>8,t?s>>>0>16777215?i=31:(G=(t+1048320|0)>>>16&8,T=t<<G,z=(T+520192|0)>>>16&4,T=T<<z,i=(T+245760|0)>>>16&2,i=14-(z|G|i)+(T<<i>>>15)|0,i=s>>>(i+7|0)&1|i<<1):i=0,r=28212+(i<<2)|0,e[a+28>>2]=i,e[a+20>>2]=0,e[n>>2]=0,t=e[6978]|0,A=1<<i,!(t&A)){e[6978]=t|A,e[r>>2]=a,e[a+24>>2]=r,e[a+12>>2]=a,e[a+8>>2]=a;break}t=e[r>>2]|0;e:do if((e[t+4>>2]&-8|0)!=(s|0)){for(i=s<<((i|0)==31?0:25-(i>>>1)|0);r=t+16+(i>>>31<<2)|0,A=e[r>>2]|0,!!A;)if((e[A+4>>2]&-8|0)==(s|0)){t=A;break e}else i=i<<1,t=A;e[r>>2]=a,e[a+24>>2]=t,e[a+12>>2]=a,e[a+8>>2]=a;break A}while(!1);G=t+8|0,T=e[G>>2]|0,e[T+12>>2]=a,e[G>>2]=a,e[a+8>>2]=T,e[a+12>>2]=t,e[a+24>>2]=0}}else T=e[6981]|0,(T|0)==0|s>>>0<T>>>0&&(e[6981]=s),e[7089]=s,e[7090]=l,e[7092]=0,e[6986]=e[7095],e[6985]=-1,e[6990]=27948,e[6989]=27948,e[6992]=27956,e[6991]=27956,e[6994]=27964,e[6993]=27964,e[6996]=27972,e[6995]=27972,e[6998]=27980,e[6997]=27980,e[7e3]=27988,e[6999]=27988,e[7002]=27996,e[7001]=27996,e[7004]=28004,e[7003]=28004,e[7006]=28012,e[7005]=28012,e[7008]=28020,e[7007]=28020,e[7010]=28028,e[7009]=28028,e[7012]=28036,e[7011]=28036,e[7014]=28044,e[7013]=28044,e[7016]=28052,e[7015]=28052,e[7018]=28060,e[7017]=28060,e[7020]=28068,e[7019]=28068,e[7022]=28076,e[7021]=28076,e[7024]=28084,e[7023]=28084,e[7026]=28092,e[7025]=28092,e[7028]=28100,e[7027]=28100,e[7030]=28108,e[7029]=28108,e[7032]=28116,e[7031]=28116,e[7034]=28124,e[7033]=28124,e[7036]=28132,e[7035]=28132,e[7038]=28140,e[7037]=28140,e[7040]=28148,e[7039]=28148,e[7042]=28156,e[7041]=28156,e[7044]=28164,e[7043]=28164,e[7046]=28172,e[7045]=28172,e[7048]=28180,e[7047]=28180,e[7050]=28188,e[7049]=28188,e[7052]=28196,e[7051]=28196,T=l+-40|0,z=s+8|0,z=(z&7|0)==0?0:0-z&7,G=s+z|0,z=T-z|0,e[6983]=G,e[6980]=z,e[G+4>>2]=z|1,e[s+T+4>>2]=40,e[6984]=e[7099];while(!1);if(t=e[6980]|0,t>>>0>v>>>0)return z=t-v|0,e[6980]=z,T=e[6983]|0,G=T+v|0,e[6983]=G,e[G+4>>2]=z|1,e[T+4>>2]=v|3,T=T+8|0,y=nA,T|0}return T=k1()|0,e[T>>2]=12,T=0,y=nA,T|0}function yA(A){A=A|0;var t=0,r=0,i=0,n=0,s=0,l=0,f=0,a=0;if(A){r=A+-8|0,n=e[6981]|0,A=e[A+-4>>2]|0,t=A&-8,a=r+t|0;do if(A&1)f=r,l=r;else{if(i=e[r>>2]|0,!(A&3)||(l=r+(0-i)|0,s=i+t|0,l>>>0<n>>>0))return;if((e[6982]|0)==(l|0)){if(A=a+4|0,t=e[A>>2]|0,(t&3|0)!=3){f=l,t=s;break}e[6979]=s,e[A>>2]=t&-2,e[l+4>>2]=s|1,e[l+s>>2]=s;return}if(r=i>>>3,i>>>0<256)if(A=e[l+8>>2]|0,t=e[l+12>>2]|0,(t|0)==(A|0)){e[6977]=e[6977]&~(1<<r),f=l,t=s;break}else{e[A+12>>2]=t,e[t+8>>2]=A,f=l,t=s;break}n=e[l+24>>2]|0,A=e[l+12>>2]|0;do if((A|0)==(l|0)){if(t=l+16|0,r=t+4|0,A=e[r>>2]|0,A)t=r;else if(A=e[t>>2]|0,!A){A=0;break}for(;;)if(i=A+20|0,r=e[i>>2]|0,r)A=r,t=i;else if(i=A+16|0,r=e[i>>2]|0,r)A=r,t=i;else break;e[t>>2]=0}else f=e[l+8>>2]|0,e[f+12>>2]=A,e[A+8>>2]=f;while(!1);if(n){if(t=e[l+28>>2]|0,r=28212+(t<<2)|0,(e[r>>2]|0)==(l|0)){if(e[r>>2]=A,!A){e[6978]=e[6978]&~(1<<t),f=l,t=s;break}}else if(f=n+16|0,e[((e[f>>2]|0)==(l|0)?f:n+20|0)>>2]=A,!A){f=l,t=s;break}e[A+24>>2]=n,t=l+16|0,r=e[t>>2]|0,r|0&&(e[A+16>>2]=r,e[r+24>>2]=A),t=e[t+4>>2]|0,t?(e[A+20>>2]=t,e[t+24>>2]=A,f=l,t=s):(f=l,t=s)}else f=l,t=s}while(!1);if(!(l>>>0>=a>>>0)&&(A=a+4|0,i=e[A>>2]|0,!!(i&1))){if(i&2)e[A>>2]=i&-2,e[f+4>>2]=t|1,e[l+t>>2]=t,n=t;else{if((e[6983]|0)==(a|0)){if(a=(e[6980]|0)+t|0,e[6980]=a,e[6983]=f,e[f+4>>2]=a|1,(f|0)!=(e[6982]|0))return;e[6982]=0,e[6979]=0;return}if((e[6982]|0)==(a|0)){a=(e[6979]|0)+t|0,e[6979]=a,e[6982]=l,e[f+4>>2]=a|1,e[l+a>>2]=a;return}n=(i&-8)+t|0,r=i>>>3;do if(i>>>0<256)if(t=e[a+8>>2]|0,A=e[a+12>>2]|0,(A|0)==(t|0)){e[6977]=e[6977]&~(1<<r);break}else{e[t+12>>2]=A,e[A+8>>2]=t;break}else{s=e[a+24>>2]|0,A=e[a+12>>2]|0;do if((A|0)==(a|0)){if(t=a+16|0,r=t+4|0,A=e[r>>2]|0,A)t=r;else if(A=e[t>>2]|0,!A){r=0;break}for(;;)if(i=A+20|0,r=e[i>>2]|0,r)A=r,t=i;else if(i=A+16|0,r=e[i>>2]|0,r)A=r,t=i;else break;e[t>>2]=0,r=A}else r=e[a+8>>2]|0,e[r+12>>2]=A,e[A+8>>2]=r,r=A;while(!1);if(s|0){if(A=e[a+28>>2]|0,t=28212+(A<<2)|0,(e[t>>2]|0)==(a|0)){if(e[t>>2]=r,!r){e[6978]=e[6978]&~(1<<A);break}}else if(i=s+16|0,e[((e[i>>2]|0)==(a|0)?i:s+20|0)>>2]=r,!r)break;e[r+24>>2]=s,A=a+16|0,t=e[A>>2]|0,t|0&&(e[r+16>>2]=t,e[t+24>>2]=r),A=e[A+4>>2]|0,A|0&&(e[r+20>>2]=A,e[A+24>>2]=r)}}while(!1);if(e[f+4>>2]=n|1,e[l+n>>2]=n,(f|0)==(e[6982]|0)){e[6979]=n;return}}if(A=n>>>3,n>>>0<256){r=27948+(A<<1<<2)|0,t=e[6977]|0,A=1<<A,t&A?(t=r+8|0,A=e[t>>2]|0):(e[6977]=t|A,A=r,t=r+8|0),e[t>>2]=f,e[A+12>>2]=f,e[f+8>>2]=A,e[f+12>>2]=r;return}A=n>>>8,A?n>>>0>16777215?i=31:(l=(A+1048320|0)>>>16&8,a=A<<l,s=(a+520192|0)>>>16&4,a=a<<s,i=(a+245760|0)>>>16&2,i=14-(s|l|i)+(a<<i>>>15)|0,i=n>>>(i+7|0)&1|i<<1):i=0,A=28212+(i<<2)|0,e[f+28>>2]=i,e[f+20>>2]=0,e[f+16>>2]=0,t=e[6978]|0,r=1<<i;A:do if(!(t&r))e[6978]=t|r,e[A>>2]=f,e[f+24>>2]=A,e[f+12>>2]=f,e[f+8>>2]=f;else{A=e[A>>2]|0;e:do if((e[A+4>>2]&-8|0)!=(n|0)){for(i=n<<((i|0)==31?0:25-(i>>>1)|0);r=A+16+(i>>>31<<2)|0,t=e[r>>2]|0,!!t;)if((e[t+4>>2]&-8|0)==(n|0)){A=t;break e}else i=i<<1,A=t;e[r>>2]=f,e[f+24>>2]=A,e[f+12>>2]=f,e[f+8>>2]=f;break A}while(!1);l=A+8|0,a=e[l>>2]|0,e[a+12>>2]=f,e[l>>2]=f,e[f+8>>2]=a,e[f+12>>2]=A,e[f+24>>2]=0}while(!1);if(a=(e[6985]|0)+-1|0,e[6985]=a,!(a|0)){for(A=28364;A=e[A>>2]|0,A;)A=A+8|0;e[6985]=-1}}}}function v0(A,t){A=A|0,t=t|0;var r=0;return A?(r=O0(t,A)|0,(t|A)>>>0>65535&&(r=((r>>>0)/(A>>>0)|0|0)==(t|0)?r:-1)):r=0,A=L0(r)|0,!A||!(e[A+-4>>2]&3)||Ae(A|0,0,r|0)|0,A|0}function EA(A,t,r,i){return A=A|0,t=t|0,r=r|0,i=i|0,r=A+r>>>0,MA(t+i+(r>>>0<A>>>0|0)>>>0|0),r|0|0}function u0(A,t,r,i){return A=A|0,t=t|0,r=r|0,i=i|0,i=t-i-(r>>>0>A>>>0|0)>>>0,MA(i|0),A-r>>>0|0|0}function Pn(A){return A=A|0,(A?31-(z0(A^A-1)|0)|0:32)|0}function Ir(A,t,r,i,n){A=A|0,t=t|0,r=r|0,i=i|0,n=n|0;var s=0,l=0,f=0,a=0,g=0,p=0,v=0,d=0,x=0,D=0;if(p=A,a=t,g=a,l=r,d=i,f=d,!g)return s=(n|0)!=0,f?s?(e[n>>2]=A|0,e[n+4>>2]=t&0,d=0,n=0,MA(d|0),n|0):(d=0,n=0,MA(d|0),n|0):(s&&(e[n>>2]=(p>>>0)%(l>>>0),e[n+4>>2]=0),d=0,n=(p>>>0)/(l>>>0)>>>0,MA(d|0),n|0);s=(f|0)==0;do if(l){if(!s){if(s=(z0(f|0)|0)-(z0(g|0)|0)|0,s>>>0<=31){v=s+1|0,f=31-s|0,t=s-31>>31,l=v,A=p>>>(v>>>0)&t|g<<f,t=g>>>(v>>>0)&t,s=0,f=p<<f;break}return n?(e[n>>2]=A|0,e[n+4>>2]=a|t&0,d=0,n=0,MA(d|0),n|0):(d=0,n=0,MA(d|0),n|0)}if(s=l-1|0,s&l|0){f=(z0(l|0)|0)+33-(z0(g|0)|0)|0,D=64-f|0,v=32-f|0,a=v>>31,x=f-32|0,t=x>>31,l=f,A=v-1>>31&g>>>(x>>>0)|(g<<v|p>>>(f>>>0))&t,t=t&g>>>(f>>>0),s=p<<D&a,f=(g<<D|p>>>(x>>>0))&a|p<<v&f-33>>31;break}return n|0&&(e[n>>2]=s&p,e[n+4>>2]=0),(l|0)==1?(x=a|t&0,D=A|0|0,MA(x|0),D|0):(D=Pn(l|0)|0,x=g>>>(D>>>0)|0,D=g<<32-D|p>>>(D>>>0)|0,MA(x|0),D|0)}else{if(s)return n|0&&(e[n>>2]=(g>>>0)%(l>>>0),e[n+4>>2]=0),x=0,D=(g>>>0)/(l>>>0)>>>0,MA(x|0),D|0;if(!p)return n|0&&(e[n>>2]=0,e[n+4>>2]=(g>>>0)%(f>>>0)),x=0,D=(g>>>0)/(f>>>0)>>>0,MA(x|0),D|0;if(s=f-1|0,!(s&f))return n|0&&(e[n>>2]=A|0,e[n+4>>2]=s&g|t&0),x=0,D=g>>>((Pn(f|0)|0)>>>0),MA(x|0),D|0;if(s=(z0(f|0)|0)-(z0(g|0)|0)|0,s>>>0<=30){t=s+1|0,f=31-s|0,l=t,A=g<<f|p>>>(t>>>0),t=g>>>(t>>>0),s=0,f=p<<f;break}return n?(e[n>>2]=A|0,e[n+4>>2]=a|t&0,x=0,D=0,MA(x|0),D|0):(x=0,D=0,MA(x|0),D|0)}while(!1);if(!l)g=f,a=0,f=0;else{v=r|0|0,p=d|i&0,g=EA(v|0,p|0,-1,-1)|0,r=b()|0,a=f,f=0;do i=a,a=s>>>31|a<<1,s=f|s<<1,i=A<<1|i>>>31|0,d=A>>>31|t<<1|0,u0(g|0,r|0,i|0,d|0)|0,D=b()|0,x=D>>31|((D|0)<0?-1:0)<<1,f=x&1,A=u0(i|0,d|0,x&v|0,(((D|0)<0?-1:0)>>31|((D|0)<0?-1:0)<<1)&p|0)|0,t=b()|0,l=l-1|0;while((l|0)!=0);g=a,a=0}return l=0,n|0&&(e[n>>2]=A,e[n+4>>2]=t),x=(s|0)>>>31|(g|l)<<1|(l<<1|s>>>31)&0|a,D=(s<<1|0)&-2|f,MA(x|0),D|0}function J0(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0;return g=t>>31|((t|0)<0?-1:0)<<1,a=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1,s=i>>31|((i|0)<0?-1:0)<<1,n=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1,f=u0(g^A|0,a^t|0,g|0,a|0)|0,l=b()|0,A=s^g,t=n^a,u0((Ir(f,l,u0(s^r|0,n^i|0,s|0,n|0)|0,b()|0,0)|0)^A|0,(b()|0)^t|0,A|0,t|0)|0}function B1(A,t){A=A|0,t=t|0;var r=0,i=0,n=0,s=0;return s=A&65535,n=t&65535,r=O0(n,s)|0,i=A>>>16,A=(r>>>16)+(O0(n,i)|0)|0,n=t>>>16,t=O0(n,s)|0,MA((A>>>16)+(O0(n,i)|0)+(((A&65535)+t|0)>>>16)|0),A+t<<16|r&65535|0|0}function l0(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0;return n=A,s=r,r=B1(n,s)|0,A=b()|0,MA((O0(t,s)|0)+(O0(i,n)|0)+A|A&0|0),r|0|0|0}function De(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0,l=0,f=0,a=0,g=0;return n=y,y=y+16|0,f=n|0,l=t>>31|((t|0)<0?-1:0)<<1,s=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1,g=i>>31|((i|0)<0?-1:0)<<1,a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1,A=u0(l^A|0,s^t|0,l|0,s|0)|0,t=b()|0,Ir(A,t,u0(g^r|0,a^i|0,g|0,a|0)|0,b()|0,f)|0,i=u0(e[f>>2]^l|0,e[f+4>>2]^s|0,l|0,s|0)|0,r=b()|0,y=n,MA(r|0),i|0}function Me(A,t,r,i){A=A|0,t=t|0,r=r|0,i=i|0;var n=0,s=0;return s=y,y=y+16|0,n=s|0,Ir(A,t,r,i,n)|0,y=s,MA(e[n+4>>2]|0),e[n>>2]|0|0}function _n(A,t,r){return A=A|0,t=t|0,r=r|0,(r|0)<32?(MA(t>>r|0),A>>>r|(t&(1<<r)-1)<<32-r):(MA(((t|0)<0?-1:0)|0),t>>r-32|0)}function eA(A,t,r){return A=A|0,t=t|0,r=r|0,(r|0)<32?(MA(t>>>r|0),A>>>r|(t&(1<<r)-1)<<32-r):(MA(0),t>>>r-32|0)}function sA(A,t,r){return A=A|0,t=t|0,r=r|0,(r|0)<32?(MA(t<<r|(A&(1<<r)-1<<32-r)>>>32-r|0),A<<r):(MA(A<<r-32|0),0)}function Qn(A,t,r){return A=A|0,t=t|0,t=z0(t)|0,(t|0)==32&&(t=t+(z0(A)|0)|0),MA(0),t|0}function Sn(A,t){return A=+A,t=+t,A!=A?+t:t!=t?+A:+Qo(+A,+t)}function Tt(A,t){return A=+A,t=+t,A!=A?+t:t!=t?+A:+fr(+A,+t)}function It(A){return A=+A,A>=0?+s0(A+.5):+ke(A-.5)}function Pe(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0;if((r|0)>=8192)return To(A|0,t|0,r|0)|0,A|0;if(s=A|0,n=A+r|0,(A&3)==(t&3)){for(;A&3;){if(!r)return s|0;tA[A>>0]=tA[t>>0]|0,A=A+1|0,t=t+1|0,r=r-1|0}for(r=n&-4|0,i=r-64|0;(A|0)<=(i|0);)e[A>>2]=e[t>>2],e[A+4>>2]=e[t+4>>2],e[A+8>>2]=e[t+8>>2],e[A+12>>2]=e[t+12>>2],e[A+16>>2]=e[t+16>>2],e[A+20>>2]=e[t+20>>2],e[A+24>>2]=e[t+24>>2],e[A+28>>2]=e[t+28>>2],e[A+32>>2]=e[t+32>>2],e[A+36>>2]=e[t+36>>2],e[A+40>>2]=e[t+40>>2],e[A+44>>2]=e[t+44>>2],e[A+48>>2]=e[t+48>>2],e[A+52>>2]=e[t+52>>2],e[A+56>>2]=e[t+56>>2],e[A+60>>2]=e[t+60>>2],A=A+64|0,t=t+64|0;for(;(A|0)<(r|0);)e[A>>2]=e[t>>2],A=A+4|0,t=t+4|0}else for(r=n-4|0;(A|0)<(r|0);)tA[A>>0]=tA[t>>0]|0,tA[A+1>>0]=tA[t+1>>0]|0,tA[A+2>>0]=tA[t+2>>0]|0,tA[A+3>>0]=tA[t+3>>0]|0,A=A+4|0,t=t+4|0;for(;(A|0)<(n|0);)tA[A>>0]=tA[t>>0]|0,A=A+1|0,t=t+1|0;return s|0}function Ae(A,t,r){A=A|0,t=t|0,r=r|0;var i=0,n=0,s=0,l=0;if(s=A+r|0,t=t&255,(r|0)>=67){for(;A&3;)tA[A>>0]=t,A=A+1|0;for(i=s&-4|0,l=t|t<<8|t<<16|t<<24,n=i-64|0;(A|0)<=(n|0);)e[A>>2]=l,e[A+4>>2]=l,e[A+8>>2]=l,e[A+12>>2]=l,e[A+16>>2]=l,e[A+20>>2]=l,e[A+24>>2]=l,e[A+28>>2]=l,e[A+32>>2]=l,e[A+36>>2]=l,e[A+40>>2]=l,e[A+44>>2]=l,e[A+48>>2]=l,e[A+52>>2]=l,e[A+56>>2]=l,e[A+60>>2]=l,A=A+64|0;for(;(A|0)<(i|0);)e[A>>2]=l,A=A+4|0}for(;(A|0)<(s|0);)tA[A>>0]=t,A=A+1|0;return s-r|0}function Tn(A){return A=+A,A>=0?+s0(A+.5):+ke(A-.5)}function ee(A){A=A|0;var t=0,r=0,i=0;return i=So()|0,r=e[VA>>2]|0,t=r+A|0,(A|0)>0&(t|0)<(r|0)|(t|0)<0?(Oo(t|0)|0,Ui(12),-1):(t|0)>(i|0)&&!(Io(t|0)|0)?(Ui(12),-1):(e[VA>>2]=t,r|0)}return{___divdi3:J0,___muldi3:l0,___remdi3:De,___uremdi3:Me,_areNeighborCells:al,_bitshift64Ashr:_n,_bitshift64Lshr:eA,_bitshift64Shl:sA,_calloc:v0,_cellAreaKm2:Yl,_cellAreaM2:jl,_cellAreaRads2:_r,_cellToBoundary:de,_cellToCenterChild:hn,_cellToChildPos:Il,_cellToChildren:dl,_cellToChildrenSize:He,_cellToLatLng:ae,_cellToLocalIj:Zl,_cellToParent:kr,_cellToVertex:P0,_cellToVertexes:p1,_cellsToDirectedEdge:gl,_cellsToLinkedMultiPolygon:Ko,_childPosToCell:Ol,_compactCells:xl,_destroyLinkedMultiPolygon:pn,_directedEdgeToBoundary:Pt,_directedEdgeToCells:ml,_edgeLengthKm:Vl,_edgeLengthM:Kl,_edgeLengthRads:Hl,_emscripten_replace_memory:Ro,_free:yA,_getBaseCellNumber:fn,_getDirectedEdgeDestination:wl,_getDirectedEdgeOrigin:cl,_getHexagonAreaAvgKm2:cn,_getHexagonAreaAvgM2:Gl,_getHexagonEdgeLengthAvgKm:Ul,_getHexagonEdgeLengthAvgM:zl,_getIcosahedronFaces:an,_getNumCells:_t,_getPentagons:Dr,_getRes0Cells:$o,_getResolution:Cl,_greatCircleDistanceKm:Ke,_greatCircleDistanceM:Ll,_greatCircleDistanceRads:Rl,_gridDisk:zi,_gridDiskDistances:Yi,_gridDistance:Jl,_gridPathCells:e1,_gridPathCellsSize:A1,_gridRing:zo,_gridRingUnsafe:Hi,_i64Add:EA,_i64Subtract:u0,_isPentagon:WA,_isResClassIII:Pl,_isValidCell:vr,_isValidDirectedEdge:pl,_isValidVertex:E1,_latLngToCell:dr,_llvm_ctlz_i64:Qn,_llvm_maxnum_f64:Sn,_llvm_minnum_f64:Tt,_llvm_round_f64:It,_localIjToCell:$l,_malloc:L0,_maxFaceCount:Sl,_maxGridDiskSize:Uo,_maxPolygonToCellsSize:jo,_maxPolygonToCellsSizeExperimental:i1,_memcpy:Pe,_memset:Ae,_originToDirectedEdges:El,_pentagonCount:Tl,_polygonToCells:Ho,_polygonToCellsExperimental:r1,_readInt64AsDoubleFromPointer:a1,_res0CellCount:Zo,_round:Tn,_sbrk:ee,_sizeOfCellBoundary:o1,_sizeOfCoordIJ:h1,_sizeOfGeoLoop:l1,_sizeOfGeoPolygon:f1,_sizeOfH3Index:n1,_sizeOfLatLng:s1,_sizeOfLinkedGeoPolygon:u1,_uncompactCells:Dl,_uncompactCellsSize:Ml,_vertexToLatLng:m1,establishStackSpace:Go,stackAlloc:Lo,stackRestore:No,stackSave:Fo}})(Co,xo,R);o.___divdi3=rA.___divdi3,o.___muldi3=rA.___muldi3,o.___remdi3=rA.___remdi3,o.___uremdi3=rA.___uremdi3,o._areNeighborCells=rA._areNeighborCells,o._bitshift64Ashr=rA._bitshift64Ashr,o._bitshift64Lshr=rA._bitshift64Lshr,o._bitshift64Shl=rA._bitshift64Shl,o._calloc=rA._calloc,o._cellAreaKm2=rA._cellAreaKm2,o._cellAreaM2=rA._cellAreaM2,o._cellAreaRads2=rA._cellAreaRads2,o._cellToBoundary=rA._cellToBoundary,o._cellToCenterChild=rA._cellToCenterChild,o._cellToChildPos=rA._cellToChildPos,o._cellToChildren=rA._cellToChildren,o._cellToChildrenSize=rA._cellToChildrenSize,o._cellToLatLng=rA._cellToLatLng,o._cellToLocalIj=rA._cellToLocalIj,o._cellToParent=rA._cellToParent,o._cellToVertex=rA._cellToVertex,o._cellToVertexes=rA._cellToVertexes,o._cellsToDirectedEdge=rA._cellsToDirectedEdge,o._cellsToLinkedMultiPolygon=rA._cellsToLinkedMultiPolygon,o._childPosToCell=rA._childPosToCell,o._compactCells=rA._compactCells,o._destroyLinkedMultiPolygon=rA._destroyLinkedMultiPolygon,o._directedEdgeToBoundary=rA._directedEdgeToBoundary,o._directedEdgeToCells=rA._directedEdgeToCells,o._edgeLengthKm=rA._edgeLengthKm,o._edgeLengthM=rA._edgeLengthM,o._edgeLengthRads=rA._edgeLengthRads;var Do=o._emscripten_replace_memory=rA._emscripten_replace_memory;o._free=rA._free,o._getBaseCellNumber=rA._getBaseCellNumber,o._getDirectedEdgeDestination=rA._getDirectedEdgeDestination,o._getDirectedEdgeOrigin=rA._getDirectedEdgeOrigin,o._getHexagonAreaAvgKm2=rA._getHexagonAreaAvgKm2,o._getHexagonAreaAvgM2=rA._getHexagonAreaAvgM2,o._getHexagonEdgeLengthAvgKm=rA._getHexagonEdgeLengthAvgKm,o._getHexagonEdgeLengthAvgM=rA._getHexagonEdgeLengthAvgM,o._getIcosahedronFaces=rA._getIcosahedronFaces,o._getNumCells=rA._getNumCells,o._getPentagons=rA._getPentagons,o._getRes0Cells=rA._getRes0Cells,o._getResolution=rA._getResolution,o._greatCircleDistanceKm=rA._greatCircleDistanceKm,o._greatCircleDistanceM=rA._greatCircleDistanceM,o._greatCircleDistanceRads=rA._greatCircleDistanceRads,o._gridDisk=rA._gridDisk,o._gridDiskDistances=rA._gridDiskDistances,o._gridDistance=rA._gridDistance,o._gridPathCells=rA._gridPathCells,o._gridPathCellsSize=rA._gridPathCellsSize,o._gridRing=rA._gridRing,o._gridRingUnsafe=rA._gridRingUnsafe,o._i64Add=rA._i64Add,o._i64Subtract=rA._i64Subtract,o._isPentagon=rA._isPentagon,o._isResClassIII=rA._isResClassIII,o._isValidCell=rA._isValidCell,o._isValidDirectedEdge=rA._isValidDirectedEdge,o._isValidVertex=rA._isValidVertex,o._latLngToCell=rA._latLngToCell,o._llvm_ctlz_i64=rA._llvm_ctlz_i64,o._llvm_maxnum_f64=rA._llvm_maxnum_f64,o._llvm_minnum_f64=rA._llvm_minnum_f64,o._llvm_round_f64=rA._llvm_round_f64,o._localIjToCell=rA._localIjToCell,o._malloc=rA._malloc,o._maxFaceCount=rA._maxFaceCount,o._maxGridDiskSize=rA._maxGridDiskSize,o._maxPolygonToCellsSize=rA._maxPolygonToCellsSize,o._maxPolygonToCellsSizeExperimental=rA._maxPolygonToCellsSizeExperimental,o._memcpy=rA._memcpy,o._memset=rA._memset,o._originToDirectedEdges=rA._originToDirectedEdges,o._pentagonCount=rA._pentagonCount,o._polygonToCells=rA._polygonToCells,o._polygonToCellsExperimental=rA._polygonToCellsExperimental,o._readInt64AsDoubleFromPointer=rA._readInt64AsDoubleFromPointer,o._res0CellCount=rA._res0CellCount,o._round=rA._round,o._sbrk=rA._sbrk,o._sizeOfCellBoundary=rA._sizeOfCellBoundary,o._sizeOfCoordIJ=rA._sizeOfCoordIJ,o._sizeOfGeoLoop=rA._sizeOfGeoLoop,o._sizeOfGeoPolygon=rA._sizeOfGeoPolygon,o._sizeOfH3Index=rA._sizeOfH3Index,o._sizeOfLatLng=rA._sizeOfLatLng,o._sizeOfLinkedGeoPolygon=rA._sizeOfLinkedGeoPolygon,o._uncompactCells=rA._uncompactCells,o._uncompactCellsSize=rA._uncompactCellsSize,o._vertexToLatLng=rA._vertexToLatLng,o.establishStackSpace=rA.establishStackSpace;var Li=o.stackAlloc=rA.stackAlloc,Mo=o.stackRestore=rA.stackRestore,Po=o.stackSave=rA.stackSave;if(o.asm=rA,o.cwrap=RA,o.setValue=J,o.getValue=oA,U0){Oi(U0)||(U0=m(U0));{go();var sr=function(W){W.byteLength&&(W=new Uint8Array(W)),N.set(W,q),o.memoryInitializerRequest&&delete o.memoryInitializerRequest.response,co()},Fi=function(){k(U0,sr,function(){throw"could not load memory initializer "+U0})},Ni=nr(U0);if(Ni)sr(Ni.buffer);else if(o.memoryInitializerRequest){var Gi=function(){var W=o.memoryInitializerRequest,AA=W.response;if(W.status!==200&&W.status!==0){var fA=nr(o.memoryInitializerRequestURL);if(fA)AA=fA.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+W.status+", retrying "+U0),Fi();return}}sr(AA)};o.memoryInitializerRequest.response?setTimeout(Gi,0):o.memoryInitializerRequest.addEventListener("load",Gi)}else Fi()}}var Ct;Ye=function W(){Ct||or(),Ct||(Ye=W)};function or(W){if(oe>0||(n0(),oe>0))return;function AA(){Ct||(Ct=!0,!lA&&(ye(),Ue(),o.onRuntimeInitialized&&o.onRuntimeInitialized(),ze()))}o.setStatus?(o.setStatus("Running..."),setTimeout(function(){setTimeout(function(){o.setStatus("")},1),AA()},1)):AA()}o.run=or;function be(W){throw o.onAbort&&o.onAbort(W),W+="",C(W),_(W),lA=!0,"abort("+W+"). Build with -s ASSERTIONS=1 for more info."}if(o.abort=be,o.preInit)for(typeof o.preInit=="function"&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();return or(),u})(typeof Je=="object"?Je:{}),CA="number",bA=CA,_e=CA,dA=CA,xA=CA,r0=CA,hA=CA,Fn=[["sizeOfH3Index",CA],["sizeOfLatLng",CA],["sizeOfCellBoundary",CA],["sizeOfGeoLoop",CA],["sizeOfGeoPolygon",CA],["sizeOfLinkedGeoPolygon",CA],["sizeOfCoordIJ",CA],["readInt64AsDoubleFromPointer",CA],["isValidCell",_e,[dA,xA]],["latLngToCell",bA,[CA,CA,r0,hA]],["cellToLatLng",bA,[dA,xA,hA]],["cellToBoundary",bA,[dA,xA,hA]],["maxGridDiskSize",bA,[CA,hA]],["gridDisk",bA,[dA,xA,CA,hA]],["gridDiskDistances",bA,[dA,xA,CA,hA,hA]],["gridRing",bA,[dA,xA,CA,hA]],["gridRingUnsafe",bA,[dA,xA,CA,hA]],["maxPolygonToCellsSize",bA,[hA,r0,CA,hA]],["polygonToCells",bA,[hA,r0,CA,hA]],["maxPolygonToCellsSizeExperimental",bA,[hA,r0,CA,hA]],["polygonToCellsExperimental",bA,[hA,r0,CA,CA,CA,hA]],["cellsToLinkedMultiPolygon",bA,[hA,CA,hA]],["destroyLinkedMultiPolygon",null,[hA]],["compactCells",bA,[hA,hA,CA,CA]],["uncompactCells",bA,[hA,CA,CA,hA,CA,r0]],["uncompactCellsSize",bA,[hA,CA,CA,r0,hA]],["isPentagon",_e,[dA,xA]],["isResClassIII",_e,[dA,xA]],["getBaseCellNumber",CA,[dA,xA]],["getResolution",CA,[dA,xA]],["maxFaceCount",bA,[dA,xA,hA]],["getIcosahedronFaces",bA,[dA,xA,hA]],["cellToParent",bA,[dA,xA,r0,hA]],["cellToChildren",bA,[dA,xA,r0,hA]],["cellToCenterChild",bA,[dA,xA,r0,hA]],["cellToChildrenSize",bA,[dA,xA,r0,hA]],["cellToChildPos",bA,[dA,xA,r0,hA]],["childPosToCell",bA,[CA,CA,dA,xA,r0,hA]],["areNeighborCells",bA,[dA,xA,dA,xA,hA]],["cellsToDirectedEdge",bA,[dA,xA,dA,xA,hA]],["getDirectedEdgeOrigin",bA,[dA,xA,hA]],["getDirectedEdgeDestination",bA,[dA,xA,hA]],["isValidDirectedEdge",_e,[dA,xA]],["directedEdgeToCells",bA,[dA,xA,hA]],["originToDirectedEdges",bA,[dA,xA,hA]],["directedEdgeToBoundary",bA,[dA,xA,hA]],["gridDistance",bA,[dA,xA,dA,xA,hA]],["gridPathCells",bA,[dA,xA,dA,xA,hA]],["gridPathCellsSize",bA,[dA,xA,dA,xA,hA]],["cellToLocalIj",bA,[dA,xA,dA,xA,CA,hA]],["localIjToCell",bA,[dA,xA,hA,CA,hA]],["getHexagonAreaAvgM2",bA,[r0,hA]],["getHexagonAreaAvgKm2",bA,[r0,hA]],["getHexagonEdgeLengthAvgM",bA,[r0,hA]],["getHexagonEdgeLengthAvgKm",bA,[r0,hA]],["greatCircleDistanceM",CA,[hA,hA]],["greatCircleDistanceKm",CA,[hA,hA]],["greatCircleDistanceRads",CA,[hA,hA]],["cellAreaM2",bA,[dA,xA,hA]],["cellAreaKm2",bA,[dA,xA,hA]],["cellAreaRads2",bA,[dA,xA,hA]],["edgeLengthM",bA,[dA,xA,hA]],["edgeLengthKm",bA,[dA,xA,hA]],["edgeLengthRads",bA,[dA,xA,hA]],["getNumCells",bA,[r0,hA]],["getRes0Cells",bA,[hA]],["res0CellCount",CA],["getPentagons",bA,[CA,hA]],["pentagonCount",CA],["cellToVertex",bA,[dA,xA,CA,hA]],["cellToVertexes",bA,[dA,xA,hA]],["vertexToLatLng",bA,[dA,xA,hA]],["isValidVertex",_e,[dA,xA]]],j0={};Fn.forEach(function(o){j0[o[0]]=Je.cwrap.apply(Je,o)}),j0.sizeOfH3Index(),j0.sizeOfLatLng(),j0.sizeOfCellBoundary(),j0.sizeOfGeoPolygon(),j0.sizeOfGeoLoop(),j0.sizeOfLinkedGeoPolygon(),j0.sizeOfCoordIJ();class Nn{add(o,h,c){if(typeof arguments[0]!="string")for(let w in arguments[0])this.add(w,arguments[0][w],arguments[1]);else(Array.isArray(o)?o:[o]).forEach(function(w){this[w]=this[w]||[],h&&this[w][c?"unshift":"push"](h)},this)}run(o,h){this[o]=this[o]||[],this[o].forEach(function(c){c.call(h&&h.context?h.context:h,h)})}}class Gn{constructor(o){this.jsep=o,this.registered={}}register(...o){o.forEach(h=>{if(typeof h!="object"||!h.name||!h.init)throw new Error("Invalid JSEP plugin format");this.registered[h.name]||(h.init(this.jsep),this.registered[h.name]=h)})}}class X{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+X.version}static addUnaryOp(o){return X.max_unop_len=Math.max(o.length,X.max_unop_len),X.unary_ops[o]=1,X}static addBinaryOp(o,h,c){return X.max_binop_len=Math.max(o.length,X.max_binop_len),X.binary_ops[o]=h,c?X.right_associative.add(o):X.right_associative.delete(o),X}static addIdentifierChar(o){return X.additional_identifier_chars.add(o),X}static addLiteral(o,h){return X.literals[o]=h,X}static removeUnaryOp(o){return delete X.unary_ops[o],o.length===X.max_unop_len&&(X.max_unop_len=X.getMaxKeyLen(X.unary_ops)),X}static removeAllUnaryOps(){return X.unary_ops={},X.max_unop_len=0,X}static removeIdentifierChar(o){return X.additional_identifier_chars.delete(o),X}static removeBinaryOp(o){return delete X.binary_ops[o],o.length===X.max_binop_len&&(X.max_binop_len=X.getMaxKeyLen(X.binary_ops)),X.right_associative.delete(o),X}static removeAllBinaryOps(){return X.binary_ops={},X.max_binop_len=0,X}static removeLiteral(o){return delete X.literals[o],X}static removeAllLiterals(){return X.literals={},X}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(o){this.expr=o,this.index=0}static parse(o){return new X(o).parse()}static getMaxKeyLen(o){return Math.max(0,...Object.keys(o).map(h=>h.length))}static isDecimalDigit(o){return o>=48&&o<=57}static binaryPrecedence(o){return X.binary_ops[o]||0}static isIdentifierStart(o){return o>=65&&o<=90||o>=97&&o<=122||o>=128&&!X.binary_ops[String.fromCharCode(o)]||X.additional_identifier_chars.has(String.fromCharCode(o))}static isIdentifierPart(o){return X.isIdentifierStart(o)||X.isDecimalDigit(o)}throwError(o){const h=new Error(o+" at character "+this.index);throw h.index=this.index,h.description=o,h}runHook(o,h){if(X.hooks[o]){const c={context:this,node:h};return X.hooks.run(o,c),c.node}return h}searchHook(o){if(X.hooks[o]){const h={context:this};return X.hooks[o].find(function(c){return c.call(h.context,h),h.node}),h.node}}gobbleSpaces(){let o=this.code;for(;o===X.SPACE_CODE||o===X.TAB_CODE||o===X.LF_CODE||o===X.CR_CODE;)o=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");const o=this.gobbleExpressions(),h=o.length===1?o[0]:{type:X.COMPOUND,body:o};return this.runHook("after-all",h)}gobbleExpressions(o){let h=[],c,w;for(;this.index<this.expr.length;)if(c=this.code,c===X.SEMCOL_CODE||c===X.COMMA_CODE)this.index++;else if(w=this.gobbleExpression())h.push(w);else if(this.index<this.expr.length){if(c===o)break;this.throwError(\'Unexpected "\'+this.char+\'"\')}return h}gobbleExpression(){const o=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",o)}gobbleBinaryOp(){this.gobbleSpaces();let o=this.expr.substr(this.index,X.max_binop_len),h=o.length;for(;h>0;){if(X.binary_ops.hasOwnProperty(o)&&(!X.isIdentifierStart(this.code)||this.index+o.length<this.expr.length&&!X.isIdentifierPart(this.expr.charCodeAt(this.index+o.length))))return this.index+=h,o;o=o.substr(0,--h)}return!1}gobbleBinaryExpression(){let o,h,c,w,m,k,C,_,P;if(k=this.gobbleToken(),!k||(h=this.gobbleBinaryOp(),!h))return k;for(m={value:h,prec:X.binaryPrecedence(h),right_a:X.right_associative.has(h)},C=this.gobbleToken(),C||this.throwError("Expected expression after "+h),w=[k,m,C];h=this.gobbleBinaryOp();){if(c=X.binaryPrecedence(h),c===0){this.index-=h.length;break}m={value:h,prec:c,right_a:X.right_associative.has(h)},P=h;const Y=O=>m.right_a&&O.right_a?c>O.prec:c<=O.prec;for(;w.length>2&&Y(w[w.length-2]);)C=w.pop(),h=w.pop().value,k=w.pop(),o={type:X.BINARY_EXP,operator:h,left:k,right:C},w.push(o);o=this.gobbleToken(),o||this.throwError("Expected expression after "+P),w.push(m,o)}for(_=w.length-1,o=w[_];_>1;)o={type:X.BINARY_EXP,operator:w[_-1].value,left:w[_-2],right:o},_-=2;return o}gobbleToken(){let o,h,c,w;if(this.gobbleSpaces(),w=this.searchHook("gobble-token"),w)return this.runHook("after-token",w);if(o=this.code,X.isDecimalDigit(o)||o===X.PERIOD_CODE)return this.gobbleNumericLiteral();if(o===X.SQUOTE_CODE||o===X.DQUOTE_CODE)w=this.gobbleStringLiteral();else if(o===X.OBRACK_CODE)w=this.gobbleArray();else{for(h=this.expr.substr(this.index,X.max_unop_len),c=h.length;c>0;){if(X.unary_ops.hasOwnProperty(h)&&(!X.isIdentifierStart(this.code)||this.index+h.length<this.expr.length&&!X.isIdentifierPart(this.expr.charCodeAt(this.index+h.length)))){this.index+=c;const m=this.gobbleToken();return m||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:X.UNARY_EXP,operator:h,argument:m,prefix:!0})}h=h.substr(0,--c)}X.isIdentifierStart(o)?(w=this.gobbleIdentifier(),X.literals.hasOwnProperty(w.name)?w={type:X.LITERAL,value:X.literals[w.name],raw:w.name}:w.name===X.this_str&&(w={type:X.THIS_EXP})):o===X.OPAREN_CODE&&(w=this.gobbleGroup())}return w?(w=this.gobbleTokenProperty(w),this.runHook("after-token",w)):this.runHook("after-token",!1)}gobbleTokenProperty(o){this.gobbleSpaces();let h=this.code;for(;h===X.PERIOD_CODE||h===X.OBRACK_CODE||h===X.OPAREN_CODE||h===X.QUMARK_CODE;){let c;if(h===X.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==X.PERIOD_CODE)break;c=!0,this.index+=2,this.gobbleSpaces(),h=this.code}this.index++,h===X.OBRACK_CODE?(o={type:X.MEMBER_EXP,computed:!0,object:o,property:this.gobbleExpression()},o.property||this.throwError(\'Unexpected "\'+this.char+\'"\'),this.gobbleSpaces(),h=this.code,h!==X.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):h===X.OPAREN_CODE?o={type:X.CALL_EXP,arguments:this.gobbleArguments(X.CPAREN_CODE),callee:o}:(h===X.PERIOD_CODE||c)&&(c&&this.index--,this.gobbleSpaces(),o={type:X.MEMBER_EXP,computed:!1,object:o,property:this.gobbleIdentifier()}),c&&(o.optional=!0),this.gobbleSpaces(),h=this.code}return o}gobbleNumericLiteral(){let o="",h,c;for(;X.isDecimalDigit(this.code);)o+=this.expr.charAt(this.index++);if(this.code===X.PERIOD_CODE)for(o+=this.expr.charAt(this.index++);X.isDecimalDigit(this.code);)o+=this.expr.charAt(this.index++);if(h=this.char,h==="e"||h==="E"){for(o+=this.expr.charAt(this.index++),h=this.char,(h==="+"||h==="-")&&(o+=this.expr.charAt(this.index++));X.isDecimalDigit(this.code);)o+=this.expr.charAt(this.index++);X.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+o+this.char+")")}return c=this.code,X.isIdentifierStart(c)?this.throwError("Variable names cannot start with a number ("+o+this.char+")"):(c===X.PERIOD_CODE||o.length===1&&o.charCodeAt(0)===X.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:X.LITERAL,value:parseFloat(o),raw:o}}gobbleStringLiteral(){let o="";const h=this.index,c=this.expr.charAt(this.index++);let w=!1;for(;this.index<this.expr.length;){let m=this.expr.charAt(this.index++);if(m===c){w=!0;break}else if(m==="\\\\")switch(m=this.expr.charAt(this.index++),m){case"n":o+=`\n`;break;case"r":o+="\\r";break;case"t":o+=" ";break;case"b":o+="\\b";break;case"f":o+="\\f";break;case"v":o+="\\v";break;default:o+=m}else o+=m}return w||this.throwError(\'Unclosed quote after "\'+o+\'"\'),{type:X.LITERAL,value:o,raw:this.expr.substring(h,this.index)}}gobbleIdentifier(){let o=this.code,h=this.index;for(X.isIdentifierStart(o)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(o=this.code,X.isIdentifierPart(o));)this.index++;return{type:X.IDENTIFIER,name:this.expr.slice(h,this.index)}}gobbleArguments(o){const h=[];let c=!1,w=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let m=this.code;if(m===o){c=!0,this.index++,o===X.CPAREN_CODE&&w&&w>=h.length&&this.throwError("Unexpected token "+String.fromCharCode(o));break}else if(m===X.COMMA_CODE){if(this.index++,w++,w!==h.length){if(o===X.CPAREN_CODE)this.throwError("Unexpected token ,");else if(o===X.CBRACK_CODE)for(let k=h.length;k<w;k++)h.push(null)}}else if(h.length!==w&&w!==0)this.throwError("Expected comma");else{const k=this.gobbleExpression();(!k||k.type===X.COMPOUND)&&this.throwError("Expected comma"),h.push(k)}}return c||this.throwError("Expected "+String.fromCharCode(o)),h}gobbleGroup(){this.index++;let o=this.gobbleExpressions(X.CPAREN_CODE);if(this.code===X.CPAREN_CODE)return this.index++,o.length===1?o[0]:o.length?{type:X.SEQUENCE_EXP,expressions:o}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:X.ARRAY_EXP,elements:this.gobbleArguments(X.CBRACK_CODE)}}}const Un=new Nn;Object.assign(X,{hooks:Un,plugins:new Gn(X),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"??":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),X.max_unop_len=X.getMaxKeyLen(X.unary_ops),X.max_binop_len=X.getMaxKeyLen(X.binary_ops);const At=u=>new X(u).parse(),zn=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(X).filter(u=>!zn.includes(u)&&At[u]===void 0).forEach(u=>{At[u]=X[u]}),At.Jsep=X;const Yn="ConditionalExpression";var jn={name:"ternary",init(u){u.hooks.add("after-expression",function(h){if(h.node&&this.code===u.QUMARK_CODE){this.index++;const c=h.node,w=this.gobbleExpression();if(w||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===u.COLON_CODE){this.index++;const m=this.gobbleExpression();if(m||this.throwError("Expected expression"),h.node={type:Yn,test:c,consequent:w,alternate:m},c.operator&&u.binary_ops[c.operator]<=.9){let k=c;for(;k.right.operator&&u.binary_ops[k.right.operator]<=.9;)k=k.right;h.node.test=k.right,k.right=h.node,h.node=c}}else this.throwError("Expected :")}})}};At.plugins.register(jn);function Hn(u){return Math.abs(u=Math.round(u))>=1e21?u.toLocaleString("en").replace(/,/g,""):u.toString(10)}function et(u,o){if((h=(u=o?u.toExponential(o-1):u.toExponential()).indexOf("e"))<0)return null;var h,c=u.slice(0,h);return[c.length>1?c[0]+c.slice(2):c,+u.slice(h+1)]}function Vn(u){return u=et(Math.abs(u)),u?u[1]:NaN}function Kn(u,o){return function(h,c){for(var w=h.length,m=[],k=0,C=u[0],_=0;w>0&&C>0&&(_+C+1>c&&(C=Math.max(1,c-_)),m.push(h.substring(w-=C,w+C)),!((_+=C+1)>c));)C=u[k=(k+1)%u.length];return m.reverse().join(o)}}function qn(u){return function(o){return o.replace(/[0-9]/g,function(h){return u[+h]})}}var Wn=/^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;function Rt(u){if(!(o=Wn.exec(u)))throw new Error("invalid format: "+u);var o;return new Lt({fill:o[1],align:o[2],sign:o[3],symbol:o[4],zero:o[5],width:o[6],comma:o[7],precision:o[8]&&o[8].slice(1),trim:o[9],type:o[10]})}Rt.prototype=Lt.prototype;function Lt(u){this.fill=u.fill===void 0?" ":u.fill+"",this.align=u.align===void 0?">":u.align+"",this.sign=u.sign===void 0?"-":u.sign+"",this.symbol=u.symbol===void 0?"":u.symbol+"",this.zero=!!u.zero,this.width=u.width===void 0?void 0:+u.width,this.comma=!!u.comma,this.precision=u.precision===void 0?void 0:+u.precision,this.trim=!!u.trim,this.type=u.type===void 0?"":u.type+""}Lt.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Xn(u){A:for(var o=u.length,h=1,c=-1,w;h<o;++h)switch(u[h]){case".":c=w=h;break;case"0":c===0&&(c=h),w=h;break;default:if(!+u[h])break A;c>0&&(c=0);break}return c>0?u.slice(0,c)+u.slice(w+1):u}var Rr;function Zn(u,o){var h=et(u,o);if(!h)return u+"";var c=h[0],w=h[1],m=w-(Rr=Math.max(-8,Math.min(8,Math.floor(w/3)))*3)+1,k=c.length;return m===k?c:m>k?c+new Array(m-k+1).join("0"):m>0?c.slice(0,m)+"."+c.slice(m):"0."+new Array(1-m).join("0")+et(u,Math.max(0,o+m-1))[0]}function Lr(u,o){var h=et(u,o);if(!h)return u+"";var c=h[0],w=h[1];return w<0?"0."+new Array(-w).join("0")+c:c.length>w+1?c.slice(0,w+1)+"."+c.slice(w+1):c+new Array(w-c.length+2).join("0")}var Fr={"%":(u,o)=>(u*100).toFixed(o),b:u=>Math.round(u).toString(2),c:u=>u+"",d:Hn,e:(u,o)=>u.toExponential(o),f:(u,o)=>u.toFixed(o),g:(u,o)=>u.toPrecision(o),o:u=>Math.round(u).toString(8),p:(u,o)=>Lr(u*100,o),r:Lr,s:Zn,X:u=>Math.round(u).toString(16).toUpperCase(),x:u=>Math.round(u).toString(16)};function Nr(u){return u}var Gr=Array.prototype.map,Ur=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function $n(u){var o=u.grouping===void 0||u.thousands===void 0?Nr:Kn(Gr.call(u.grouping,Number),u.thousands+""),h=u.currency===void 0?"":u.currency[0]+"",c=u.currency===void 0?"":u.currency[1]+"",w=u.decimal===void 0?".":u.decimal+"",m=u.numerals===void 0?Nr:qn(Gr.call(u.numerals,String)),k=u.percent===void 0?"%":u.percent+"",C=u.minus===void 0?"−":u.minus+"",_=u.nan===void 0?"NaN":u.nan+"";function P(O){O=Rt(O);var q=O.fill,J=O.align,oA=O.sign,lA=O.symbol,gA=O.zero,aA=O.width,Z=O.comma,RA=O.precision,FA=O.trim,TA=O.type;TA==="n"?(Z=!0,TA="g"):Fr[TA]||(RA===void 0&&(RA=12),FA=!0,TA="g"),(gA||q==="0"&&J==="=")&&(gA=!0,q="0",J="=");var GA=lA==="$"?h:lA==="#"&&/[boxX]/.test(TA)?"0"+TA.toLowerCase():"",XA=lA==="$"?c:/[%p]/.test(TA)?k:"",B=Fr[TA],M=/[defgprs%]/.test(TA);RA=RA===void 0?6:/[gprs]/.test(TA)?Math.max(1,Math.min(21,RA)):Math.max(0,Math.min(20,RA));function Q(R){var I=GA,N=XA,V,L,U;if(TA==="c")N=B(R)+N,R="";else{R=+R;var H=R<0||1/R<0;if(R=isNaN(R)?_:B(Math.abs(R),RA),FA&&(R=Xn(R)),H&&+R==0&&oA!=="+"&&(H=!1),I=(H?oA==="("?oA:C:oA==="-"||oA==="("?"":oA)+I,N=(TA==="s"?Ur[8+Rr/3]:"")+N+(H&&oA==="("?")":""),M){for(V=-1,L=R.length;++V<L;)if(U=R.charCodeAt(V),48>U||U>57){N=(U===46?w+R.slice(V+1):R.slice(V))+N,R=R.slice(0,V);break}}}Z&&!gA&&(R=o(R,1/0));var j=I.length+R.length+N.length,$=j<aA?new Array(aA-j+1).join(q):"";switch(Z&&gA&&(R=o($+R,$.length?aA-N.length:1/0),$=""),J){case"<":R=I+R+N+$;break;case"=":R=I+$+R+N;break;case"^":R=$.slice(0,j=$.length>>1)+I+R+N+$.slice(j);break;default:R=$+I+R+N;break}return m(R)}return Q.toString=function(){return O+""},Q}function Y(O,q){var J=P((O=Rt(O),O.type="f",O)),oA=Math.max(-8,Math.min(8,Math.floor(Vn(q)/3)))*3,lA=Math.pow(10,-oA),gA=Ur[8+oA/3];return function(aA){return J(lA*aA)+gA}}return{format:P,formatPrefix:Y}}var tt,Ft;Jn({thousands:",",grouping:[3],currency:["$",""]});function Jn(u){return tt=$n(u),Ft=tt.format,tt.formatPrefix,tt}var As=Object.create,Nt=Object.defineProperty,es=Object.getOwnPropertyDescriptor,zr=Object.getOwnPropertyNames,ts=Object.getPrototypeOf,rs=Object.prototype.hasOwnProperty,is=(u,o,h)=>o in u?Nt(u,o,{enumerable:!0,configurable:!0,writable:!0,value:h}):u[o]=h,ns=(u,o)=>function(){return o||(0,u[zr(u)[0]])((o={exports:{}}).exports,o),o.exports},ss=(u,o,h,c)=>{if(o&&typeof o=="object"||typeof o=="function")for(let w of zr(o))!rs.call(u,w)&&w!==h&&Nt(u,w,{get:()=>o[w],enumerable:!(c=es(o,w))||c.enumerable});return u},os=(u,o,h)=>(h=u!=null?As(ts(u)):{},ss(Nt(h,"default",{value:u,enumerable:!0}),u)),pA=(u,o,h)=>is(u,typeof o!="symbol"?o+"":o,h),ls=ns({"node_modules/thenby/thenBy.module.js"(u,o){o.exports=(function(){function h(k){return k}function c(k){return typeof k=="string"?k.toLowerCase():k}function w(k,C){if(C=typeof C=="object"?C:{direction:C},typeof k!="function"){var _=k;k=function(J){return J[_]?J[_]:""}}if(k.length===1){var P=k,Y=C.ignoreCase?c:h,O=C.cmp||function(J,oA){return J<oA?-1:J>oA?1:0};k=function(J,oA){return O(Y(P(J)),Y(P(oA)))}}const q={"-1":"",desc:""};return C.direction in q?function(J,oA){return-k(J,oA)}:k}function m(k,C){var _=typeof this=="function"&&!this.firstBy?this:!1,P=w(k,C),Y=_?function(O,q){return _(O,q)||P(O,q)}:P;return Y.thenBy=m,Y}return m.firstBy=m,m})()}}),fs="deck-gl-carto";function Yr(){return fs}var Gt=(u=>(u.IN="in",u.BETWEEN="between",u.CLOSED_OPEN="closed_open",u.TIME="time",u.STRING_SEARCH="stringSearch",u))(Gt||{}),jr=(u=>(u.V1="v1",u.V2="v2",u.V3="v3",u))(jr||{}),us="https://gcp-us-east1.api.carto.com",ge={Count:"count",Custom:"custom"};function Hr(u){return u.map(o=>o[0]===void 0||o[0]===null?[Number.MIN_SAFE_INTEGER,o[1]]:o[1]===void 0||o[1]===null?[o[0],Number.MAX_SAFE_INTEGER]:o)}var hs={in:as,between:Vr,time:gs,closed_open:cs,stringSearch:ws};function as(u,o){return u.includes(o)}function Vr(u,o){const h=c=>{const[w,m]=c;return o>=w&&o<=m};return Hr(u).some(h)}function gs(u,o){const h=new Date(o).getTime();if(isFinite(h))return Vr(u,h);throw new Error("Column used to filter by time isn\'t well formatted.")}function cs(u,o){const h=c=>{const[w,m]=c;return o>=w&&o<m};return Hr(u).some(h)}function ws(u,o,h={}){const c=Kr(o,h),w=h.useRegExp?u:u.map(k=>{let C=Es(Kr(k,h));return h.mustStart&&(C=`^${C}`),h.mustEnd&&(C=`${C}$`),C}),m=new RegExp(w.join("|"),h.caseSensitive?"g":"gi");return!!c.match(m)}var ps=/[.*+?^${}()|[\\]\\\\]/g,ms=new RegExp("\\\\p{Diacritic}","gu");function Es(u){return u.replace(ps,"\\\\$&")}function Kr(u,o){let h=String(u);return o.keepSpecialCharacters||(h=h.normalize("NFD").replace(ms,"")),h}var ys={and:"every",or:"some"};function vs(u,o,h,c){const w=ys[c];return u[w](m=>{const k=o[m],C=Object.keys(k);return!h||h[m]===null||h[m]===void 0?!1:C.every(_=>{const P=hs[_];if(!P)throw new Error(`"${_}" filter is not implemented.`);return P(k[_].values,h[m],k[_].params)})})}function bs({filters:u={},type:o="boolean",filtersLogicalOperator:h="and"}){const c=Object.keys(u);return c.length?w=>{const m=w.properties||w,k=vs(c,u,m,h);return o==="number"?Number(k):k}:()=>o==="number"?1:!0}function ks(u,o,h){return Object.keys(o).length?u.filter(bs({filters:o,filtersLogicalOperator:h})):u}var Bs={EPSILON:1e-12,debug:!1,precision:4,printTypes:!1,printDegrees:!1,printRowMajor:!0,_cartographicRadians:!1};globalThis.mathgl=globalThis.mathgl||{config:{...Bs}},globalThis.mathgl.config;var Cs=/^-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?$/i,Ut=Math.ceil,k0=Math.floor,p0="[BigNumber Error] ",qr=p0+"Number primitive has more than 15 significant digits: ",_0=1e14,QA=14,zt=9007199254740991,Yt=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],H0=1e7,i0=1e9;function Wr(u){var o,h,c,w=Z.prototype={constructor:Z,toString:null,valueOf:null},m=new Z(1),k=20,C=4,_=-7,P=21,Y=-1e7,O=1e7,q=!1,J=1,oA=0,lA={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},gA="0123456789abcdefghijklmnopqrstuvwxyz",aA=!0;function Z(B,M){var Q,R,I,N,V,L,U,H,j=this;if(!(j instanceof Z))return new Z(B,M);if(M==null){if(B&&B._isBigNumber===!0){j.s=B.s,!B.c||B.e>O?j.c=j.e=null:B.e<Y?j.c=[j.e=0]:(j.e=B.e,j.c=B.c.slice());return}if((L=typeof B=="number")&&B*0==0){if(j.s=1/B<0?(B=-B,-1):1,B===~~B){for(N=0,V=B;V>=10;V/=10,N++);N>O?j.c=j.e=null:(j.e=N,j.c=[B]);return}H=String(B)}else{if(!Cs.test(H=String(B)))return c(j,H,L);j.s=H.charCodeAt(0)==45?(H=H.slice(1),-1):1}(N=H.indexOf("."))>-1&&(H=H.replace(".","")),(V=H.search(/e/i))>0?(N<0&&(N=V),N+=+H.slice(V+1),H=H.substring(0,V)):N<0&&(N=H.length)}else{if(A0(M,2,gA.length,"Base"),M==10&&aA)return j=new Z(B),GA(j,k+j.e+1,C);if(H=String(B),L=typeof B=="number"){if(B*0!=0)return c(j,H,L,M);if(j.s=1/B<0?(H=H.slice(1),-1):1,Z.DEBUG&&H.replace(/^0\\.0*|\\./,"").length>15)throw Error(qr+B)}else j.s=H.charCodeAt(0)===45?(H=H.slice(1),-1):1;for(Q=gA.slice(0,M),N=V=0,U=H.length;V<U;V++)if(Q.indexOf(R=H.charAt(V))<0){if(R=="."){if(V>N){N=U;continue}}else if(!I&&(H==H.toUpperCase()&&(H=H.toLowerCase())||H==H.toLowerCase()&&(H=H.toUpperCase()))){I=!0,V=-1,N=0;continue}return c(j,String(B),L,M)}L=!1,H=h(H,M,10,j.s),(N=H.indexOf("."))>-1?H=H.replace(".",""):N=H.length}for(V=0;H.charCodeAt(V)===48;V++);for(U=H.length;H.charCodeAt(--U)===48;);if(H=H.slice(V,++U)){if(U-=V,L&&Z.DEBUG&&U>15&&(B>zt||B!==k0(B)))throw Error(qr+j.s*B);if((N=N-V-1)>O)j.c=j.e=null;else if(N<Y)j.c=[j.e=0];else{if(j.e=N,j.c=[],V=(N+1)%QA,N<0&&(V+=QA),V<U){for(V&&j.c.push(+H.slice(0,V)),U-=QA;V<U;)j.c.push(+H.slice(V,V+=QA));V=QA-(H=H.slice(V)).length}else V-=U;for(;V--;H+="0");j.c.push(+H)}}else j.c=[j.e=0]}Z.clone=Wr,Z.ROUND_UP=0,Z.ROUND_DOWN=1,Z.ROUND_CEIL=2,Z.ROUND_FLOOR=3,Z.ROUND_HALF_UP=4,Z.ROUND_HALF_DOWN=5,Z.ROUND_HALF_EVEN=6,Z.ROUND_HALF_CEIL=7,Z.ROUND_HALF_FLOOR=8,Z.EUCLID=9,Z.config=Z.set=function(B){var M,Q;if(B!=null)if(typeof B=="object"){if(B.hasOwnProperty(M="DECIMAL_PLACES")&&(Q=B[M],A0(Q,0,i0,M),k=Q),B.hasOwnProperty(M="ROUNDING_MODE")&&(Q=B[M],A0(Q,0,8,M),C=Q),B.hasOwnProperty(M="EXPONENTIAL_AT")&&(Q=B[M],Q&&Q.pop?(A0(Q[0],-i0,0,M),A0(Q[1],0,i0,M),_=Q[0],P=Q[1]):(A0(Q,-i0,i0,M),_=-(P=Q<0?-Q:Q))),B.hasOwnProperty(M="RANGE"))if(Q=B[M],Q&&Q.pop)A0(Q[0],-i0,-1,M),A0(Q[1],1,i0,M),Y=Q[0],O=Q[1];else if(A0(Q,-i0,i0,M),Q)Y=-(O=Q<0?-Q:Q);else throw Error(p0+M+" cannot be zero: "+Q);if(B.hasOwnProperty(M="CRYPTO"))if(Q=B[M],Q===!!Q)if(Q)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))q=Q;else throw q=!Q,Error(p0+"crypto unavailable");else q=Q;else throw Error(p0+M+" not true or false: "+Q);if(B.hasOwnProperty(M="MODULO_MODE")&&(Q=B[M],A0(Q,0,9,M),J=Q),B.hasOwnProperty(M="POW_PRECISION")&&(Q=B[M],A0(Q,0,i0,M),oA=Q),B.hasOwnProperty(M="FORMAT"))if(Q=B[M],typeof Q=="object")lA=Q;else throw Error(p0+M+" not an object: "+Q);if(B.hasOwnProperty(M="ALPHABET"))if(Q=B[M],typeof Q=="string"&&!/^.?$|[+\\-.\\s]|(.).*\\1/.test(Q))aA=Q.slice(0,10)=="0123456789",gA=Q;else throw Error(p0+M+" invalid: "+Q)}else throw Error(p0+"Object expected: "+B);return{DECIMAL_PLACES:k,ROUNDING_MODE:C,EXPONENTIAL_AT:[_,P],RANGE:[Y,O],CRYPTO:q,MODULO_MODE:J,POW_PRECISION:oA,FORMAT:lA,ALPHABET:gA}},Z.isBigNumber=function(B){if(!B||B._isBigNumber!==!0)return!1;if(!Z.DEBUG)return!0;var M,Q,R=B.c,I=B.e,N=B.s;A:if({}.toString.call(R)=="[object Array]"){if((N===1||N===-1)&&I>=-i0&&I<=i0&&I===k0(I)){if(R[0]===0){if(I===0&&R.length===1)return!0;break A}if(M=(I+1)%QA,M<1&&(M+=QA),String(R[0]).length==M){for(M=0;M<R.length;M++)if(Q=R[M],Q<0||Q>=_0||Q!==k0(Q))break A;if(Q!==0)return!0}}}else if(R===null&&I===null&&(N===null||N===1||N===-1))return!0;throw Error(p0+"Invalid BigNumber: "+B)},Z.maximum=Z.max=function(){return FA(arguments,-1)},Z.minimum=Z.min=function(){return FA(arguments,1)},Z.random=(function(){var B=9007199254740992,M=Math.random()*B&2097151?function(){return k0(Math.random()*B)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(Q){var R,I,N,V,L,U=0,H=[],j=new Z(m);if(Q==null?Q=k:A0(Q,0,i0),V=Ut(Q/QA),q)if(crypto.getRandomValues){for(R=crypto.getRandomValues(new Uint32Array(V*=2));U<V;)L=R[U]*131072+(R[U+1]>>>11),L>=9e15?(I=crypto.getRandomValues(new Uint32Array(2)),R[U]=I[0],R[U+1]=I[1]):(H.push(L%1e14),U+=2);U=V/2}else if(crypto.randomBytes){for(R=crypto.randomBytes(V*=7);U<V;)L=(R[U]&31)*281474976710656+R[U+1]*1099511627776+R[U+2]*4294967296+R[U+3]*16777216+(R[U+4]<<16)+(R[U+5]<<8)+R[U+6],L>=9e15?crypto.randomBytes(7).copy(R,U):(H.push(L%1e14),U+=7);U=V/7}else throw q=!1,Error(p0+"crypto unavailable");if(!q)for(;U<V;)L=M(),L<9e15&&(H[U++]=L%1e14);for(V=H[--U],Q%=QA,V&&Q&&(L=Yt[QA-Q],H[U]=k0(V/L)*L);H[U]===0;H.pop(),U--);if(U<0)H=[N=0];else{for(N=-1;H[0]===0;H.splice(0,1),N-=QA);for(U=1,L=H[0];L>=10;L/=10,U++);U<QA&&(N-=QA-U)}return j.e=N,j.c=H,j}})(),Z.sum=function(){for(var B=1,M=arguments,Q=new Z(M[0]);B<M.length;)Q=Q.plus(M[B++]);return Q},h=(function(){var B="0123456789";function M(Q,R,I,N){for(var V,L=[0],U,H=0,j=Q.length;H<j;){for(U=L.length;U--;L[U]*=R);for(L[0]+=N.indexOf(Q.charAt(H++)),V=0;V<L.length;V++)L[V]>I-1&&(L[V+1]==null&&(L[V+1]=0),L[V+1]+=L[V]/I|0,L[V]%=I)}return L.reverse()}return function(Q,R,I,N,V){var L,U,H,j,$,mA,vA,NA,ZA=Q.indexOf("."),e0=k,UA=C;for(ZA>=0&&(j=oA,oA=0,Q=Q.replace(".",""),NA=new Z(R),mA=NA.pow(Q.length-ZA),oA=j,NA.c=M(F0(C0(mA.c),mA.e,"0"),10,I,B),NA.e=NA.c.length),vA=M(Q,R,I,V?(L=gA,B):(L=B,gA)),H=j=vA.length;vA[--j]==0;vA.pop());if(!vA[0])return L.charAt(0);if(ZA<0?--H:(mA.c=vA,mA.e=H,mA.s=N,mA=o(mA,NA,e0,UA,I),vA=mA.c,$=mA.r,H=mA.e),U=H+e0+1,ZA=vA[U],j=I/2,$=$||U<0||vA[U+1]!=null,$=UA<4?(ZA!=null||$)&&(UA==0||UA==(mA.s<0?3:2)):ZA>j||ZA==j&&(UA==4||$||UA==6&&vA[U-1]&1||UA==(mA.s<0?8:7)),U<1||!vA[0])Q=$?F0(L.charAt(1),-e0,L.charAt(0)):L.charAt(0);else{if(vA.length=U,$)for(--I;++vA[--U]>I;)vA[U]=0,U||(++H,vA=[1].concat(vA));for(j=vA.length;!vA[--j];);for(ZA=0,Q="";ZA<=j;Q+=L.charAt(vA[ZA++]));Q=F0(Q,H,L.charAt(0))}return Q}})(),o=(function(){function B(R,I,N){var V,L,U,H,j=0,$=R.length,mA=I%H0,vA=I/H0|0;for(R=R.slice();$--;)U=R[$]%H0,H=R[$]/H0|0,V=vA*U+H*mA,L=mA*U+V%H0*H0+j,j=(L/N|0)+(V/H0|0)+vA*H,R[$]=L%N;return j&&(R=[j].concat(R)),R}function M(R,I,N,V){var L,U;if(N!=V)U=N>V?1:-1;else for(L=U=0;L<N;L++)if(R[L]!=I[L]){U=R[L]>I[L]?1:-1;break}return U}function Q(R,I,N,V){for(var L=0;N--;)R[N]-=L,L=R[N]<I[N]?1:0,R[N]=L*V+R[N]-I[N];for(;!R[0]&&R.length>1;R.splice(0,1));}return function(R,I,N,V,L){var U,H,j,$,mA,vA,NA,ZA,e0,UA,HA,n0,ye,Ue,ze,d0,se,E0=R.s==I.s?1:-1,f0=R.c,JA=I.c;if(!f0||!f0[0]||!JA||!JA[0])return new Z(!R.s||!I.s||(f0?JA&&f0[0]==JA[0]:!JA)?NaN:f0&&f0[0]==0||!JA?E0*0:E0/0);for(ZA=new Z(E0),e0=ZA.c=[],H=R.e-I.e,E0=N+H+1,L||(L=_0,H=B0(R.e/QA)-B0(I.e/QA),E0=E0/QA|0),j=0;JA[j]==(f0[j]||0);j++);if(JA[j]>(f0[j]||0)&&H--,E0<0)e0.push(1),$=!0;else{for(Ue=f0.length,d0=JA.length,j=0,E0+=2,mA=k0(L/(JA[0]+1)),mA>1&&(JA=B(JA,mA,L),f0=B(f0,mA,L),d0=JA.length,Ue=f0.length),ye=d0,UA=f0.slice(0,d0),HA=UA.length;HA<d0;UA[HA++]=0);se=JA.slice(),se=[0].concat(se),ze=JA[0],JA[1]>=L/2&&ze++;do{if(mA=0,U=M(JA,UA,d0,HA),U<0){if(n0=UA[0],d0!=HA&&(n0=n0*L+(UA[1]||0)),mA=k0(n0/ze),mA>1)for(mA>=L&&(mA=L-1),vA=B(JA,mA,L),NA=vA.length,HA=UA.length;M(vA,UA,NA,HA)==1;)mA--,Q(vA,d0<NA?se:JA,NA,L),NA=vA.length,U=1;else mA==0&&(U=mA=1),vA=JA.slice(),NA=vA.length;if(NA<HA&&(vA=[0].concat(vA)),Q(UA,vA,HA,L),HA=UA.length,U==-1)for(;M(JA,UA,d0,HA)<1;)mA++,Q(UA,d0<HA?se:JA,HA,L),HA=UA.length}else U===0&&(mA++,UA=[0]);e0[j++]=mA,UA[0]?UA[HA++]=f0[ye]||0:(UA=[f0[ye]],HA=1)}while((ye++<Ue||UA[0]!=null)&&E0--);$=UA[0]!=null,e0[0]||e0.splice(0,1)}if(L==_0){for(j=1,E0=e0[0];E0>=10;E0/=10,j++);GA(ZA,N+(ZA.e=j+H*QA-1)+1,V,$)}else ZA.e=H,ZA.r=+$;return ZA}})();function RA(B,M,Q,R){var I,N,V,L,U;if(Q==null?Q=C:A0(Q,0,8),!B.c)return B.toString();if(I=B.c[0],V=B.e,M==null)U=C0(B.c),U=R==1||R==2&&(V<=_||V>=P)?it(U,V):F0(U,V,"0");else if(B=GA(new Z(B),M,Q),N=B.e,U=C0(B.c),L=U.length,R==1||R==2&&(M<=N||N<=_)){for(;L<M;U+="0",L++);U=it(U,N)}else if(M-=V,U=F0(U,N,"0"),N+1>L){if(--M>0)for(U+=".";M--;U+="0");}else if(M+=N-L,M>0)for(N+1==L&&(U+=".");M--;U+="0");return B.s<0&&I?"-"+U:U}function FA(B,M){for(var Q,R,I=1,N=new Z(B[0]);I<B.length;I++)R=new Z(B[I]),(!R.s||(Q=te(N,R))===M||Q===0&&N.s===M)&&(N=R);return N}function TA(B,M,Q){for(var R=1,I=M.length;!M[--I];M.pop());for(I=M[0];I>=10;I/=10,R++);return(Q=R+Q*QA-1)>O?B.c=B.e=null:Q<Y?B.c=[B.e=0]:(B.e=Q,B.c=M),B}c=(function(){var B=/^(-?)0([xbo])(?=\\w[\\w.]*$)/i,M=/^([^.]+)\\.$/,Q=/^\\.([^.]+)$/,R=/^-?(Infinity|NaN)$/,I=/^\\s*\\+(?=[\\w.])|^\\s+|\\s+$/g;return function(N,V,L,U){var H,j=L?V:V.replace(I,"");if(R.test(j))N.s=isNaN(j)?null:j<0?-1:1;else{if(!L&&(j=j.replace(B,function($,mA,vA){return H=(vA=vA.toLowerCase())=="x"?16:vA=="b"?2:8,!U||U==H?mA:$}),U&&(H=U,j=j.replace(M,"$1").replace(Q,"0.$1")),V!=j))return new Z(j,H);if(Z.DEBUG)throw Error(p0+"Not a"+(U?" base "+U:"")+" number: "+V);N.s=null}N.c=N.e=null}})();function GA(B,M,Q,R){var I,N,V,L,U,H,j,$=B.c,mA=Yt;if($){A:{for(I=1,L=$[0];L>=10;L/=10,I++);if(N=M-I,N<0)N+=QA,V=M,U=$[H=0],j=k0(U/mA[I-V-1]%10);else if(H=Ut((N+1)/QA),H>=$.length)if(R){for(;$.length<=H;$.push(0));U=j=0,I=1,N%=QA,V=N-QA+1}else break A;else{for(U=L=$[H],I=1;L>=10;L/=10,I++);N%=QA,V=N-QA+I,j=V<0?0:k0(U/mA[I-V-1]%10)}if(R=R||M<0||$[H+1]!=null||(V<0?U:U%mA[I-V-1]),R=Q<4?(j||R)&&(Q==0||Q==(B.s<0?3:2)):j>5||j==5&&(Q==4||R||Q==6&&(N>0?V>0?U/mA[I-V]:0:$[H-1])%10&1||Q==(B.s<0?8:7)),M<1||!$[0])return $.length=0,R?(M-=B.e+1,$[0]=mA[(QA-M%QA)%QA],B.e=-M||0):$[0]=B.e=0,B;if(N==0?($.length=H,L=1,H--):($.length=H+1,L=mA[QA-N],$[H]=V>0?k0(U/mA[I-V]%mA[V])*L:0),R)for(;;)if(H==0){for(N=1,V=$[0];V>=10;V/=10,N++);for(V=$[0]+=L,L=1;V>=10;V/=10,L++);N!=L&&(B.e++,$[0]==_0&&($[0]=1));break}else{if($[H]+=L,$[H]!=_0)break;$[H--]=0,L=1}for(N=$.length;$[--N]===0;$.pop());}B.e>O?B.c=B.e=null:B.e<Y&&(B.c=[B.e=0])}return B}function XA(B){var M,Q=B.e;return Q===null?B.toString():(M=C0(B.c),M=Q<=_||Q>=P?it(M,Q):F0(M,Q,"0"),B.s<0?"-"+M:M)}return w.absoluteValue=w.abs=function(){var B=new Z(this);return B.s<0&&(B.s=1),B},w.comparedTo=function(B,M){return te(this,new Z(B,M))},w.decimalPlaces=w.dp=function(B,M){var Q,R,I,N=this;if(B!=null)return A0(B,0,i0),M==null?M=C:A0(M,0,8),GA(new Z(N),B+N.e+1,M);if(!(Q=N.c))return null;if(R=((I=Q.length-1)-B0(this.e/QA))*QA,I=Q[I])for(;I%10==0;I/=10,R--);return R<0&&(R=0),R},w.dividedBy=w.div=function(B,M){return o(this,new Z(B,M),k,C)},w.dividedToIntegerBy=w.idiv=function(B,M){return o(this,new Z(B,M),0,1)},w.exponentiatedBy=w.pow=function(B,M){var Q,R,I,N,V,L,U,H,j,$=this;if(B=new Z(B),B.c&&!B.isInteger())throw Error(p0+"Exponent not an integer: "+XA(B));if(M!=null&&(M=new Z(M)),L=B.e>14,!$.c||!$.c[0]||$.c[0]==1&&!$.e&&$.c.length==1||!B.c||!B.c[0])return j=new Z(Math.pow(+XA($),L?B.s*(2-rt(B)):+XA(B))),M?j.mod(M):j;if(U=B.s<0,M){if(M.c?!M.c[0]:!M.s)return new Z(NaN);R=!U&&$.isInteger()&&M.isInteger(),R&&($=$.mod(M))}else{if(B.e>9&&($.e>0||$.e<-1||($.e==0?$.c[0]>1||L&&$.c[1]>=24e7:$.c[0]<8e13||L&&$.c[0]<=9999975e7)))return N=$.s<0&&rt(B)?-0:0,$.e>-1&&(N=1/N),new Z(U?1/N:N);oA&&(N=Ut(oA/QA+2))}for(L?(Q=new Z(.5),U&&(B.s=1),H=rt(B)):(I=Math.abs(+XA(B)),H=I%2),j=new Z(m);;){if(H){if(j=j.times($),!j.c)break;N?j.c.length>N&&(j.c.length=N):R&&(j=j.mod(M))}if(I){if(I=k0(I/2),I===0)break;H=I%2}else if(B=B.times(Q),GA(B,B.e+1,1),B.e>14)H=rt(B);else{if(I=+XA(B),I===0)break;H=I%2}$=$.times($),N?$.c&&$.c.length>N&&($.c.length=N):R&&($=$.mod(M))}return R?j:(U&&(j=m.div(j)),M?j.mod(M):N?GA(j,oA,C,V):j)},w.integerValue=function(B){var M=new Z(this);return B==null?B=C:A0(B,0,8),GA(M,M.e+1,B)},w.isEqualTo=w.eq=function(B,M){return te(this,new Z(B,M))===0},w.isFinite=function(){return!!this.c},w.isGreaterThan=w.gt=function(B,M){return te(this,new Z(B,M))>0},w.isGreaterThanOrEqualTo=w.gte=function(B,M){return(M=te(this,new Z(B,M)))===1||M===0},w.isInteger=function(){return!!this.c&&B0(this.e/QA)>this.c.length-2},w.isLessThan=w.lt=function(B,M){return te(this,new Z(B,M))<0},w.isLessThanOrEqualTo=w.lte=function(B,M){return(M=te(this,new Z(B,M)))===-1||M===0},w.isNaN=function(){return!this.s},w.isNegative=function(){return this.s<0},w.isPositive=function(){return this.s>0},w.isZero=function(){return!!this.c&&this.c[0]==0},w.minus=function(B,M){var Q,R,I,N,V=this,L=V.s;if(B=new Z(B,M),M=B.s,!L||!M)return new Z(NaN);if(L!=M)return B.s=-M,V.plus(B);var U=V.e/QA,H=B.e/QA,j=V.c,$=B.c;if(!U||!H){if(!j||!$)return j?(B.s=-M,B):new Z($?V:NaN);if(!j[0]||!$[0])return $[0]?(B.s=-M,B):new Z(j[0]?V:C==3?-0:0)}if(U=B0(U),H=B0(H),j=j.slice(),L=U-H){for((N=L<0)?(L=-L,I=j):(H=U,I=$),I.reverse(),M=L;M--;I.push(0));I.reverse()}else for(R=(N=(L=j.length)<(M=$.length))?L:M,L=M=0;M<R;M++)if(j[M]!=$[M]){N=j[M]<$[M];break}if(N&&(I=j,j=$,$=I,B.s=-B.s),M=(R=$.length)-(Q=j.length),M>0)for(;M--;j[Q++]=0);for(M=_0-1;R>L;){if(j[--R]<$[R]){for(Q=R;Q&&!j[--Q];j[Q]=M);--j[Q],j[R]+=_0}j[R]-=$[R]}for(;j[0]==0;j.splice(0,1),--H);return j[0]?TA(B,j,H):(B.s=C==3?-1:1,B.c=[B.e=0],B)},w.modulo=w.mod=function(B,M){var Q,R,I=this;return B=new Z(B,M),!I.c||!B.s||B.c&&!B.c[0]?new Z(NaN):!B.c||I.c&&!I.c[0]?new Z(I):(J==9?(R=B.s,B.s=1,Q=o(I,B,0,3),B.s=R,Q.s*=R):Q=o(I,B,0,J),B=I.minus(Q.times(B)),!B.c[0]&&J==1&&(B.s=I.s),B)},w.multipliedBy=w.times=function(B,M){var Q,R,I,N,V,L,U,H,j,$,mA,vA,NA,ZA,e0,UA=this,HA=UA.c,n0=(B=new Z(B,M)).c;if(!HA||!n0||!HA[0]||!n0[0])return!UA.s||!B.s||HA&&!HA[0]&&!n0||n0&&!n0[0]&&!HA?B.c=B.e=B.s=null:(B.s*=UA.s,!HA||!n0?B.c=B.e=null:(B.c=[0],B.e=0)),B;for(R=B0(UA.e/QA)+B0(B.e/QA),B.s*=UA.s,U=HA.length,$=n0.length,U<$&&(NA=HA,HA=n0,n0=NA,I=U,U=$,$=I),I=U+$,NA=[];I--;NA.push(0));for(ZA=_0,e0=H0,I=$;--I>=0;){for(Q=0,mA=n0[I]%e0,vA=n0[I]/e0|0,V=U,N=I+V;N>I;)H=HA[--V]%e0,j=HA[V]/e0|0,L=vA*H+j*mA,H=mA*H+L%e0*e0+NA[N]+Q,Q=(H/ZA|0)+(L/e0|0)+vA*j,NA[N--]=H%ZA;NA[N]=Q}return Q?++R:NA.splice(0,1),TA(B,NA,R)},w.negated=function(){var B=new Z(this);return B.s=-B.s||null,B},w.plus=function(B,M){var Q,R=this,I=R.s;if(B=new Z(B,M),M=B.s,!I||!M)return new Z(NaN);if(I!=M)return B.s=-M,R.minus(B);var N=R.e/QA,V=B.e/QA,L=R.c,U=B.c;if(!N||!V){if(!L||!U)return new Z(I/0);if(!L[0]||!U[0])return U[0]?B:new Z(L[0]?R:I*0)}if(N=B0(N),V=B0(V),L=L.slice(),I=N-V){for(I>0?(V=N,Q=U):(I=-I,Q=L),Q.reverse();I--;Q.push(0));Q.reverse()}for(I=L.length,M=U.length,I-M<0&&(Q=U,U=L,L=Q,M=I),I=0;M;)I=(L[--M]=L[M]+U[M]+I)/_0|0,L[M]=_0===L[M]?0:L[M]%_0;return I&&(L=[I].concat(L),++V),TA(B,L,V)},w.precision=w.sd=function(B,M){var Q,R,I,N=this;if(B!=null&&B!==!!B)return A0(B,1,i0),M==null?M=C:A0(M,0,8),GA(new Z(N),B,M);if(!(Q=N.c))return null;if(I=Q.length-1,R=I*QA+1,I=Q[I]){for(;I%10==0;I/=10,R--);for(I=Q[0];I>=10;I/=10,R++);}return B&&N.e+1>R&&(R=N.e+1),R},w.shiftedBy=function(B){return A0(B,-zt,zt),this.times("1e"+B)},w.squareRoot=w.sqrt=function(){var B,M,Q,R,I,N=this,V=N.c,L=N.s,U=N.e,H=k+4,j=new Z("0.5");if(L!==1||!V||!V[0])return new Z(!L||L<0&&(!V||V[0])?NaN:V?N:1/0);if(L=Math.sqrt(+XA(N)),L==0||L==1/0?(M=C0(V),(M.length+U)%2==0&&(M+="0"),L=Math.sqrt(+M),U=B0((U+1)/2)-(U<0||U%2),L==1/0?M="5e"+U:(M=L.toExponential(),M=M.slice(0,M.indexOf("e")+1)+U),Q=new Z(M)):Q=new Z(L+""),Q.c[0]){for(U=Q.e,L=U+H,L<3&&(L=0);;)if(I=Q,Q=j.times(I.plus(o(N,I,H,1))),C0(I.c).slice(0,L)===(M=C0(Q.c)).slice(0,L))if(Q.e<U&&--L,M=M.slice(L-3,L+1),M=="9999"||!R&&M=="4999"){if(!R&&(GA(I,I.e+k+2,0),I.times(I).eq(N))){Q=I;break}H+=4,L+=4,R=1}else{(!+M||!+M.slice(1)&&M.charAt(0)=="5")&&(GA(Q,Q.e+k+2,1),B=!Q.times(Q).eq(N));break}}return GA(Q,Q.e+k+1,C,B)},w.toExponential=function(B,M){return B!=null&&(A0(B,0,i0),B++),RA(this,B,M,1)},w.toFixed=function(B,M){return B!=null&&(A0(B,0,i0),B=B+this.e+1),RA(this,B,M)},w.toFormat=function(B,M,Q){var R,I=this;if(Q==null)B!=null&&M&&typeof M=="object"?(Q=M,M=null):B&&typeof B=="object"?(Q=B,B=M=null):Q=lA;else if(typeof Q!="object")throw Error(p0+"Argument not an object: "+Q);if(R=I.toFixed(B,M),I.c){var N,V=R.split("."),L=+Q.groupSize,U=+Q.secondaryGroupSize,H=Q.groupSeparator||"",j=V[0],$=V[1],mA=I.s<0,vA=mA?j.slice(1):j,NA=vA.length;if(U&&(N=L,L=U,U=N,NA-=N),L>0&&NA>0){for(N=NA%L||L,j=vA.substr(0,N);N<NA;N+=L)j+=H+vA.substr(N,L);U>0&&(j+=H+vA.slice(N)),mA&&(j="-"+j)}R=$?j+(Q.decimalSeparator||"")+((U=+Q.fractionGroupSize)?$.replace(new RegExp("\\\\d{"+U+"}\\\\B","g"),"$&"+(Q.fractionGroupSeparator||"")):$):j}return(Q.prefix||"")+R+(Q.suffix||"")},w.toFraction=function(B){var M,Q,R,I,N,V,L,U,H,j,$,mA,vA=this,NA=vA.c;if(B!=null&&(L=new Z(B),!L.isInteger()&&(L.c||L.s!==1)||L.lt(m)))throw Error(p0+"Argument "+(L.isInteger()?"out of range: ":"not an integer: ")+XA(L));if(!NA)return new Z(vA);for(M=new Z(m),H=Q=new Z(m),R=U=new Z(m),mA=C0(NA),N=M.e=mA.length-vA.e-1,M.c[0]=Yt[(V=N%QA)<0?QA+V:V],B=!B||L.comparedTo(M)>0?N>0?M:H:L,V=O,O=1/0,L=new Z(mA),U.c[0]=0;j=o(L,M,0,1),I=Q.plus(j.times(R)),I.comparedTo(B)!=1;)Q=R,R=I,H=U.plus(j.times(I=H)),U=I,M=L.minus(j.times(I=M)),L=I;return I=o(B.minus(Q),R,0,1),U=U.plus(I.times(H)),Q=Q.plus(I.times(R)),U.s=H.s=vA.s,N=N*2,$=o(H,R,N,C).minus(vA).abs().comparedTo(o(U,Q,N,C).minus(vA).abs())<1?[H,R]:[U,Q],O=V,$},w.toNumber=function(){return+XA(this)},w.toPrecision=function(B,M){return B!=null&&A0(B,1,i0),RA(this,B,M,2)},w.toString=function(B){var M,Q=this,R=Q.s,I=Q.e;return I===null?R?(M="Infinity",R<0&&(M="-"+M)):M="NaN":(B==null?M=I<=_||I>=P?it(C0(Q.c),I):F0(C0(Q.c),I,"0"):B===10&&aA?(Q=GA(new Z(Q),k+I+1,C),M=F0(C0(Q.c),Q.e,"0")):(A0(B,2,gA.length,"Base"),M=h(F0(C0(Q.c),I,"0"),10,B,R,!0)),R<0&&Q.c[0]&&(M="-"+M)),M},w.valueOf=w.toJSON=function(){return XA(this)},w._isBigNumber=!0,w[Symbol.toStringTag]="BigNumber",w[Symbol.for("nodejs.util.inspect.custom")]=w.valueOf,u!=null&&Z.set(u),Z}function B0(u){var o=u|0;return u>0||u===o?o:o-1}function C0(u){for(var o,h,c=1,w=u.length,m=u[0]+"";c<w;){for(o=u[c++]+"",h=QA-o.length;h--;o="0"+o);m+=o}for(w=m.length;m.charCodeAt(--w)===48;);return m.slice(0,w+1||1)}function te(u,o){var h,c,w=u.c,m=o.c,k=u.s,C=o.s,_=u.e,P=o.e;if(!k||!C)return null;if(h=w&&!w[0],c=m&&!m[0],h||c)return h?c?0:-C:k;if(k!=C)return k;if(h=k<0,c=_==P,!w||!m)return c?0:!w^h?1:-1;if(!c)return _>P^h?1:-1;for(C=(_=w.length)<(P=m.length)?_:P,k=0;k<C;k++)if(w[k]!=m[k])return w[k]>m[k]^h?1:-1;return _==P?0:_>P^h?1:-1}function A0(u,o,h,c){if(u<o||u>h||u!==k0(u))throw Error(p0+(c||"Argument")+(typeof u=="number"?u<o||u>h?" out of range: ":" not an integer: ":" not a primitive number: ")+String(u))}function rt(u){var o=u.c.length-1;return B0(u.e/QA)==o&&u.c[o]%2!=0}function it(u,o){return(u.length>1?u.charAt(0)+"."+u.slice(1):u)+(o<0?"e":"e+")+o}function F0(u,o,h){var c,w;if(o<0){for(w=h+".";++o;w+=h);u=w+u}else if(c=u.length,++o>c){for(w=h,o-=c;--o;w+=h);u+=w}else o<c&&(u=u.slice(0,o)+"."+u.slice(o));return u}var ds=Wr(),S0=ds,xs=class{constructor(u){pA(this,"key"),pA(this,"left",null),pA(this,"right",null),this.key=u}},Qe=class extends xs{constructor(u){super(u)}},Ds=class{constructor(){pA(this,"size",0),pA(this,"modificationCount",0),pA(this,"splayCount",0)}splay(u){const o=this.root;if(o==null)return this.compare(u,u),-1;let h=null,c=null,w=null,m=null,k=o;const C=this.compare;let _;for(;;)if(_=C(k.key,u),_>0){let P=k.left;if(P==null||(_=C(P.key,u),_>0&&(k.left=P.right,P.right=k,k=P,P=k.left,P==null)))break;h==null?c=k:h.left=k,h=k,k=P}else if(_<0){let P=k.right;if(P==null||(_=C(P.key,u),_<0&&(k.right=P.left,P.left=k,k=P,P=k.right,P==null)))break;w==null?m=k:w.right=k,w=k,k=P}else break;return w!=null&&(w.right=k.left,k.left=m),h!=null&&(h.left=k.right,k.right=c),this.root!==k&&(this.root=k,this.splayCount++),_}splayMin(u){let o=u,h=o.left;for(;h!=null;){const c=h;o.left=c.right,c.right=o,o=c,h=o.left}return o}splayMax(u){let o=u,h=o.right;for(;h!=null;){const c=h;o.right=c.left,c.left=o,o=c,h=o.right}return o}_delete(u){if(this.root==null||this.splay(u)!=0)return null;let h=this.root;const c=h,w=h.left;if(this.size--,w==null)this.root=h.right;else{const m=h.right;h=this.splayMax(w),h.right=m,this.root=h}return this.modificationCount++,c}addNewRoot(u,o){this.size++,this.modificationCount++;const h=this.root;if(h==null){this.root=u;return}o<0?(u.left=h,u.right=h.right,h.right=null):(u.right=h,u.left=h.left,h.left=null),this.root=u}_first(){const u=this.root;return u==null?null:(this.root=this.splayMin(u),this.root)}_last(){const u=this.root;return u==null?null:(this.root=this.splayMax(u),this.root)}clear(){this.root=null,this.size=0,this.modificationCount++}has(u){return this.validKey(u)&&this.splay(u)==0}defaultCompare(){return(u,o)=>u<o?-1:u>o?1:0}wrap(){return{getRoot:()=>this.root,setRoot:u=>{this.root=u},getSize:()=>this.size,getModificationCount:()=>this.modificationCount,getSplayCount:()=>this.splayCount,setSplayCount:u=>{this.splayCount=u},splay:u=>this.splay(u),has:u=>this.has(u)}}},Xr,Zr,nt=class Ze extends Ds{constructor(o,h){super(),pA(this,"root",null),pA(this,"compare"),pA(this,"validKey"),pA(this,Xr,"[object Set]"),this.compare=o??this.defaultCompare(),this.validKey=h??(c=>c!=null&&c!=null)}delete(o){return this.validKey(o)?this._delete(o)!=null:!1}deleteAll(o){for(const h of o)this.delete(h)}forEach(o){const h=this[Symbol.iterator]();let c;for(;c=h.next(),!c.done;)o(c.value,c.value,this)}add(o){const h=this.splay(o);return h!=0&&this.addNewRoot(new Qe(o),h),this}addAndReturn(o){const h=this.splay(o);return h!=0&&this.addNewRoot(new Qe(o),h),this.root.key}addAll(o){for(const h of o)this.add(h)}isEmpty(){return this.root==null}isNotEmpty(){return this.root!=null}single(){if(this.size==0)throw"Bad state: No element";if(this.size>1)throw"Bad state: Too many element";return this.root.key}first(){if(this.size==0)throw"Bad state: No element";return this._first().key}last(){if(this.size==0)throw"Bad state: No element";return this._last().key}lastBefore(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)<0)return this.root.key;let c=this.root.left;if(c==null)return null;let w=c.right;for(;w!=null;)c=w,w=c.right;return c.key}firstAfter(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)>0)return this.root.key;let c=this.root.right;if(c==null)return null;let w=c.left;for(;w!=null;)c=w,w=c.left;return c.key}retainAll(o){const h=new Ze(this.compare,this.validKey),c=this.modificationCount;for(const w of o){if(c!=this.modificationCount)throw"Concurrent modification during iteration.";this.validKey(w)&&this.splay(w)==0&&h.add(this.root.key)}h.size!=this.size&&(this.root=h.root,this.size=h.size,this.modificationCount++)}lookup(o){return!this.validKey(o)||this.splay(o)!=0?null:this.root.key}intersection(o){const h=new Ze(this.compare,this.validKey);for(const c of this)o.has(c)&&h.add(c);return h}difference(o){const h=new Ze(this.compare,this.validKey);for(const c of this)o.has(c)||h.add(c);return h}union(o){const h=this.clone();return h.addAll(o),h}clone(){const o=new Ze(this.compare,this.validKey);return o.size=this.size,o.root=this.copyNode(this.root),o}copyNode(o){if(o==null)return null;function h(w,m){let k,C;do{if(k=w.left,C=w.right,k!=null){const _=new Qe(k.key);m.left=_,h(k,_)}if(C!=null){const _=new Qe(C.key);m.right=_,w=C,m=_}}while(C!=null)}const c=new Qe(o.key);return h(o,c),c}toSet(){return this.clone()}entries(){return new Ps(this.wrap())}keys(){return this[Symbol.iterator]()}values(){return this[Symbol.iterator]()}[(Zr=Symbol.iterator,Xr=Symbol.toStringTag,Zr)](){return new Ms(this.wrap())}},$r=class{constructor(u){pA(this,"tree"),pA(this,"path",new Array),pA(this,"modificationCount",null),pA(this,"splayCount"),this.tree=u,this.splayCount=u.getSplayCount()}[Symbol.iterator](){return this}next(){return this.moveNext()?{done:!1,value:this.current()}:{done:!0,value:null}}current(){if(!this.path.length)return null;const u=this.path[this.path.length-1];return this.getValue(u)}rebuildPath(u){this.path.splice(0,this.path.length),this.tree.splay(u),this.path.push(this.tree.getRoot()),this.splayCount=this.tree.getSplayCount()}findLeftMostDescendent(u){for(;u!=null;)this.path.push(u),u=u.left}moveNext(){if(this.modificationCount!=this.tree.getModificationCount()){if(this.modificationCount==null){this.modificationCount=this.tree.getModificationCount();let h=this.tree.getRoot();for(;h!=null;)this.path.push(h),h=h.left;return this.path.length>0}throw"Concurrent modification during iteration."}if(!this.path.length)return!1;this.splayCount!=this.tree.getSplayCount()&&this.rebuildPath(this.path[this.path.length-1].key);let u=this.path[this.path.length-1],o=u.right;if(o!=null){for(;o!=null;)this.path.push(o),o=o.left;return!0}for(this.path.pop();this.path.length&&this.path[this.path.length-1].right===u;)u=this.path.pop();return this.path.length>0}},Ms=class extends $r{getValue(u){return u.key}},Ps=class extends $r{getValue(u){return[u.key,u.key]}},Jr=u=>()=>u,jt=u=>{const o=u?(h,c)=>c.minus(h).abs().isLessThanOrEqualTo(u):Jr(!1);return(h,c)=>o(h,c)?0:h.comparedTo(c)};function _s(u){const o=u?(h,c,w,m,k)=>h.exponentiatedBy(2).isLessThanOrEqualTo(m.minus(c).exponentiatedBy(2).plus(k.minus(w).exponentiatedBy(2)).times(u)):Jr(!1);return(h,c,w)=>{const m=h.x,k=h.y,C=w.x,_=w.y,P=k.minus(_).times(c.x.minus(C)).minus(m.minus(C).times(c.y.minus(_)));return o(P,m,k,C,_)?0:P.comparedTo(0)}}var Qs=u=>u,Ss=u=>{if(u){const o=new nt(jt(u)),h=new nt(jt(u)),c=(m,k)=>k.addAndReturn(m),w=m=>({x:c(m.x,o),y:c(m.y,h)});return w({x:new S0(0),y:new S0(0)}),w}return Qs},Ht=u=>({set:o=>{N0=Ht(o)},reset:()=>Ht(u),compare:jt(u),snap:Ss(u),orient:_s(u)}),N0=Ht(),Se=(u,o)=>u.ll.x.isLessThanOrEqualTo(o.x)&&o.x.isLessThanOrEqualTo(u.ur.x)&&u.ll.y.isLessThanOrEqualTo(o.y)&&o.y.isLessThanOrEqualTo(u.ur.y),Vt=(u,o)=>{if(o.ur.x.isLessThan(u.ll.x)||u.ur.x.isLessThan(o.ll.x)||o.ur.y.isLessThan(u.ll.y)||u.ur.y.isLessThan(o.ll.y))return null;const h=u.ll.x.isLessThan(o.ll.x)?o.ll.x:u.ll.x,c=u.ur.x.isLessThan(o.ur.x)?u.ur.x:o.ur.x,w=u.ll.y.isLessThan(o.ll.y)?o.ll.y:u.ll.y,m=u.ur.y.isLessThan(o.ur.y)?u.ur.y:o.ur.y;return{ll:{x:h,y:w},ur:{x:c,y:m}}},st=(u,o)=>u.x.times(o.y).minus(u.y.times(o.x)),Ai=(u,o)=>u.x.times(o.x).plus(u.y.times(o.y)),ot=u=>Ai(u,u).sqrt(),Ts=(u,o,h)=>{const c={x:o.x.minus(u.x),y:o.y.minus(u.y)},w={x:h.x.minus(u.x),y:h.y.minus(u.y)};return st(w,c).div(ot(w)).div(ot(c))},Is=(u,o,h)=>{const c={x:o.x.minus(u.x),y:o.y.minus(u.y)},w={x:h.x.minus(u.x),y:h.y.minus(u.y)};return Ai(w,c).div(ot(w)).div(ot(c))},ei=(u,o,h)=>o.y.isZero()?null:{x:u.x.plus(o.x.div(o.y).times(h.minus(u.y))),y:h},ti=(u,o,h)=>o.x.isZero()?null:{x:h,y:u.y.plus(o.y.div(o.x).times(h.minus(u.x)))},Os=(u,o,h,c)=>{if(o.x.isZero())return ti(h,c,u.x);if(c.x.isZero())return ti(u,o,h.x);if(o.y.isZero())return ei(h,c,u.y);if(c.y.isZero())return ei(u,o,h.y);const w=st(o,c);if(w.isZero())return null;const m={x:h.x.minus(u.x),y:h.y.minus(u.y)},k=st(m,o).div(w),C=st(m,c).div(w),_=u.x.plus(C.times(o.x)),P=h.x.plus(k.times(c.x)),Y=u.y.plus(C.times(o.y)),O=h.y.plus(k.times(c.y)),q=_.plus(P).div(2),J=Y.plus(O).div(2);return{x:q,y:J}},T0=class On{constructor(o,h){pA(this,"point"),pA(this,"isLeft"),pA(this,"segment"),pA(this,"otherSE"),pA(this,"consumedBy"),o.events===void 0?o.events=[this]:o.events.push(this),this.point=o,this.isLeft=h}static compare(o,h){const c=On.comparePoints(o.point,h.point);return c!==0?c:(o.point!==h.point&&o.link(h),o.isLeft!==h.isLeft?o.isLeft?1:-1:lt.compare(o.segment,h.segment))}static comparePoints(o,h){return o.x.isLessThan(h.x)?-1:o.x.isGreaterThan(h.x)?1:o.y.isLessThan(h.y)?-1:o.y.isGreaterThan(h.y)?1:0}link(o){if(o.point===this.point)throw new Error("Tried to link already linked events");const h=o.point.events;for(let c=0,w=h.length;c<w;c++){const m=h[c];this.point.events.push(m),m.point=this.point}this.checkForConsuming()}checkForConsuming(){const o=this.point.events.length;for(let h=0;h<o;h++){const c=this.point.events[h];if(c.segment.consumedBy===void 0)for(let w=h+1;w<o;w++){const m=this.point.events[w];m.consumedBy===void 0&&c.otherSE.point.events===m.otherSE.point.events&&c.segment.consume(m.segment)}}}getAvailableLinkedEvents(){const o=[];for(let h=0,c=this.point.events.length;h<c;h++){const w=this.point.events[h];w!==this&&!w.segment.ringOut&&w.segment.isInResult()&&o.push(w)}return o}getLeftmostComparator(o){const h=new Map,c=w=>{const m=w.otherSE;h.set(w,{sine:Ts(this.point,o.point,m.point),cosine:Is(this.point,o.point,m.point)})};return(w,m)=>{h.has(w)||c(w),h.has(m)||c(m);const{sine:k,cosine:C}=h.get(w),{sine:_,cosine:P}=h.get(m);return k.isGreaterThanOrEqualTo(0)&&_.isGreaterThanOrEqualTo(0)?C.isLessThan(P)?1:C.isGreaterThan(P)?-1:0:k.isLessThan(0)&&_.isLessThan(0)?C.isLessThan(P)?-1:C.isGreaterThan(P)?1:0:_.isLessThan(k)?-1:_.isGreaterThan(k)?1:0}}},Rs=class Or{constructor(o){pA(this,"events"),pA(this,"poly"),pA(this,"_isExteriorRing"),pA(this,"_enclosingRing"),this.events=o;for(let h=0,c=o.length;h<c;h++)o[h].segment.ringOut=this;this.poly=null}static factory(o){const h=[];for(let c=0,w=o.length;c<w;c++){const m=o[c];if(!m.isInResult()||m.ringOut)continue;let k=null,C=m.leftSE,_=m.rightSE;const P=[C],Y=C.point,O=[];for(;k=C,C=_,P.push(C),C.point!==Y;)for(;;){const q=C.getAvailableLinkedEvents();if(q.length===0){const lA=P[0].point,gA=P[P.length-1].point;throw new Error(`Unable to complete output ring starting at [${lA.x}, ${lA.y}]. Last matching segment found ends at [${gA.x}, ${gA.y}].`)}if(q.length===1){_=q[0].otherSE;break}let J=null;for(let lA=0,gA=O.length;lA<gA;lA++)if(O[lA].point===C.point){J=lA;break}if(J!==null){const lA=O.splice(J)[0],gA=P.splice(lA.index);gA.unshift(gA[0].otherSE),h.push(new Or(gA.reverse()));continue}O.push({index:P.length,point:C.point});const oA=C.getLeftmostComparator(k);_=q.sort(oA)[0].otherSE;break}h.push(new Or(P))}return h}getGeom(){let o=this.events[0].point;const h=[o];for(let P=1,Y=this.events.length-1;P<Y;P++){const O=this.events[P].point,q=this.events[P+1].point;N0.orient(O,o,q)!==0&&(h.push(O),o=O)}if(h.length===1)return null;const c=h[0],w=h[1];N0.orient(c,o,w)===0&&h.shift(),h.push(h[0]);const m=this.isExteriorRing()?1:-1,k=this.isExteriorRing()?0:h.length-1,C=this.isExteriorRing()?h.length:-1,_=[];for(let P=k;P!=C;P+=m)_.push([h[P].x.toNumber(),h[P].y.toNumber()]);return _}isExteriorRing(){if(this._isExteriorRing===void 0){const o=this.enclosingRing();this._isExteriorRing=o?!o.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){let o=this.events[0];for(let w=1,m=this.events.length;w<m;w++){const k=this.events[w];T0.compare(o,k)>0&&(o=k)}let h=o.segment.prevInResult(),c=h?h.prevInResult():null;for(;;){if(!h)return null;if(!c)return h.ringOut;if(c.ringOut!==h.ringOut)return c.ringOut?.enclosingRing()!==h.ringOut?h.ringOut:h.ringOut?.enclosingRing();h=c.prevInResult(),c=h?h.prevInResult():null}}},ri=class{constructor(u){pA(this,"exteriorRing"),pA(this,"interiorRings"),this.exteriorRing=u,u.poly=this,this.interiorRings=[]}addInterior(u){this.interiorRings.push(u),u.poly=this}getGeom(){const u=this.exteriorRing.getGeom();if(u===null)return null;const o=[u];for(let h=0,c=this.interiorRings.length;h<c;h++){const w=this.interiorRings[h].getGeom();w!==null&&o.push(w)}return o}},Ls=class{constructor(u){pA(this,"rings"),pA(this,"polys"),this.rings=u,this.polys=this._composePolys(u)}getGeom(){const u=[];for(let o=0,h=this.polys.length;o<h;o++){const c=this.polys[o].getGeom();c!==null&&u.push(c)}return u}_composePolys(u){const o=[];for(let h=0,c=u.length;h<c;h++){const w=u[h];if(!w.poly)if(w.isExteriorRing())o.push(new ri(w));else{const m=w.enclosingRing();m?.poly||o.push(new ri(m)),m?.poly?.addInterior(w)}}return o}},Fs=class{constructor(u,o=lt.compare){pA(this,"queue"),pA(this,"tree"),pA(this,"segments"),this.queue=u,this.tree=new nt(o),this.segments=[]}process(u){const o=u.segment,h=[];if(u.consumedBy)return u.isLeft?this.queue.delete(u.otherSE):this.tree.delete(o),h;u.isLeft&&this.tree.add(o);let c=o,w=o;do c=this.tree.lastBefore(c);while(c!=null&&c.consumedBy!=null);do w=this.tree.firstAfter(w);while(w!=null&&w.consumedBy!=null);if(u.isLeft){let m=null;if(c){const C=c.getIntersection(o);if(C!==null&&(o.isAnEndpoint(C)||(m=C),!c.isAnEndpoint(C))){const _=this._splitSafely(c,C);for(let P=0,Y=_.length;P<Y;P++)h.push(_[P])}}let k=null;if(w){const C=w.getIntersection(o);if(C!==null&&(o.isAnEndpoint(C)||(k=C),!w.isAnEndpoint(C))){const _=this._splitSafely(w,C);for(let P=0,Y=_.length;P<Y;P++)h.push(_[P])}}if(m!==null||k!==null){let C=null;m===null?C=k:k===null?C=m:C=T0.comparePoints(m,k)<=0?m:k,this.queue.delete(o.rightSE),h.push(o.rightSE);const _=o.split(C);for(let P=0,Y=_.length;P<Y;P++)h.push(_[P])}h.length>0?(this.tree.delete(o),h.push(u)):(this.segments.push(o),o.prev=c)}else{if(c&&w){const m=c.getIntersection(w);if(m!==null){if(!c.isAnEndpoint(m)){const k=this._splitSafely(c,m);for(let C=0,_=k.length;C<_;C++)h.push(k[C])}if(!w.isAnEndpoint(m)){const k=this._splitSafely(w,m);for(let C=0,_=k.length;C<_;C++)h.push(k[C])}}}this.tree.delete(o)}return h}_splitSafely(u,o){this.tree.delete(u);const h=u.rightSE;this.queue.delete(h);const c=u.split(o);return c.push(h),u.consumedBy===void 0&&this.tree.add(u),c}},Ns=class{constructor(){pA(this,"type"),pA(this,"numMultiPolys")}run(u,o,h){Te.type=u;const c=[new si(o,!0)];for(let P=0,Y=h.length;P<Y;P++)c.push(new si(h[P],!1));if(Te.numMultiPolys=c.length,Te.type==="difference"){const P=c[0];let Y=1;for(;Y<c.length;)Vt(c[Y].bbox,P.bbox)!==null?Y++:c.splice(Y,1)}if(Te.type==="intersection")for(let P=0,Y=c.length;P<Y;P++){const O=c[P];for(let q=P+1,J=c.length;q<J;q++)if(Vt(O.bbox,c[q].bbox)===null)return[]}const w=new nt(T0.compare);for(let P=0,Y=c.length;P<Y;P++){const O=c[P].getSweepEvents();for(let q=0,J=O.length;q<J;q++)w.add(O[q])}const m=new Fs(w);let k=null;for(w.size!=0&&(k=w.first(),w.delete(k));k;){const P=m.process(k);for(let Y=0,O=P.length;Y<O;Y++){const q=P[Y];q.consumedBy===void 0&&w.add(q)}w.size!=0?(k=w.first(),w.delete(k)):k=null}N0.reset();const C=Rs.factory(m.segments);return new Ls(C).getGeom()}},Te=new Ns,ii=Te,Gs=0,lt=class Ot{constructor(o,h,c,w){pA(this,"id"),pA(this,"leftSE"),pA(this,"rightSE"),pA(this,"rings"),pA(this,"windings"),pA(this,"ringOut"),pA(this,"consumedBy"),pA(this,"prev"),pA(this,"_prevInResult"),pA(this,"_beforeState"),pA(this,"_afterState"),pA(this,"_isInResult"),this.id=++Gs,this.leftSE=o,o.segment=this,o.otherSE=h,this.rightSE=h,h.segment=this,h.otherSE=o,this.rings=c,this.windings=w}static compare(o,h){const c=o.leftSE.point.x,w=h.leftSE.point.x,m=o.rightSE.point.x,k=h.rightSE.point.x;if(k.isLessThan(c))return 1;if(m.isLessThan(w))return-1;const C=o.leftSE.point.y,_=h.leftSE.point.y,P=o.rightSE.point.y,Y=h.rightSE.point.y;if(c.isLessThan(w)){if(_.isLessThan(C)&&_.isLessThan(P))return 1;if(_.isGreaterThan(C)&&_.isGreaterThan(P))return-1;const O=o.comparePoint(h.leftSE.point);if(O<0)return 1;if(O>0)return-1;const q=h.comparePoint(o.rightSE.point);return q!==0?q:-1}if(c.isGreaterThan(w)){if(C.isLessThan(_)&&C.isLessThan(Y))return-1;if(C.isGreaterThan(_)&&C.isGreaterThan(Y))return 1;const O=h.comparePoint(o.leftSE.point);if(O!==0)return O;const q=o.comparePoint(h.rightSE.point);return q<0?1:q>0?-1:1}if(C.isLessThan(_))return-1;if(C.isGreaterThan(_))return 1;if(m.isLessThan(k)){const O=h.comparePoint(o.rightSE.point);if(O!==0)return O}if(m.isGreaterThan(k)){const O=o.comparePoint(h.rightSE.point);if(O<0)return 1;if(O>0)return-1}if(!m.eq(k)){const O=P.minus(C),q=m.minus(c),J=Y.minus(_),oA=k.minus(w);if(O.isGreaterThan(q)&&J.isLessThan(oA))return 1;if(O.isLessThan(q)&&J.isGreaterThan(oA))return-1}return m.isGreaterThan(k)?1:m.isLessThan(k)||P.isLessThan(Y)?-1:P.isGreaterThan(Y)?1:o.id<h.id?-1:o.id>h.id?1:0}static fromRing(o,h,c){let w,m,k;const C=T0.comparePoints(o,h);if(C<0)w=o,m=h,k=1;else if(C>0)w=h,m=o,k=-1;else throw new Error(`Tried to create degenerate segment at [${o.x}, ${o.y}]`);const _=new T0(w,!0),P=new T0(m,!1);return new Ot(_,P,[c],[k])}replaceRightSE(o){this.rightSE=o,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){const o=this.leftSE.point.y,h=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:o.isLessThan(h)?o:h},ur:{x:this.rightSE.point.x,y:o.isGreaterThan(h)?o:h}}}vector(){return{x:this.rightSE.point.x.minus(this.leftSE.point.x),y:this.rightSE.point.y.minus(this.leftSE.point.y)}}isAnEndpoint(o){return o.x.eq(this.leftSE.point.x)&&o.y.eq(this.leftSE.point.y)||o.x.eq(this.rightSE.point.x)&&o.y.eq(this.rightSE.point.y)}comparePoint(o){return N0.orient(this.leftSE.point,o,this.rightSE.point)}getIntersection(o){const h=this.bbox(),c=o.bbox(),w=Vt(h,c);if(w===null)return null;const m=this.leftSE.point,k=this.rightSE.point,C=o.leftSE.point,_=o.rightSE.point,P=Se(h,C)&&this.comparePoint(C)===0,Y=Se(c,m)&&o.comparePoint(m)===0,O=Se(h,_)&&this.comparePoint(_)===0,q=Se(c,k)&&o.comparePoint(k)===0;if(Y&&P)return q&&!O?k:!q&&O?_:null;if(Y)return O&&m.x.eq(_.x)&&m.y.eq(_.y)?null:m;if(P)return q&&k.x.eq(C.x)&&k.y.eq(C.y)?null:C;if(q&&O)return null;if(q)return k;if(O)return _;const J=Os(m,this.vector(),C,o.vector());return J===null||!Se(w,J)?null:N0.snap(J)}split(o){const h=[],c=o.events!==void 0,w=new T0(o,!0),m=new T0(o,!1),k=this.rightSE;this.replaceRightSE(m),h.push(m),h.push(w);const C=new Ot(w,k,this.rings.slice(),this.windings.slice());return T0.comparePoints(C.leftSE.point,C.rightSE.point)>0&&C.swapEvents(),T0.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),c&&(w.checkForConsuming(),m.checkForConsuming()),h}swapEvents(){const o=this.rightSE;this.rightSE=this.leftSE,this.leftSE=o,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let h=0,c=this.windings.length;h<c;h++)this.windings[h]*=-1}consume(o){let h=this,c=o;for(;h.consumedBy;)h=h.consumedBy;for(;c.consumedBy;)c=c.consumedBy;const w=Ot.compare(h,c);if(w!==0){if(w>0){const m=h;h=c,c=m}if(h.prev===c){const m=h;h=c,c=m}for(let m=0,k=c.rings.length;m<k;m++){const C=c.rings[m],_=c.windings[m],P=h.rings.indexOf(C);P===-1?(h.rings.push(C),h.windings.push(_)):h.windings[P]+=_}c.rings=null,c.windings=null,c.consumedBy=h,c.leftSE.consumedBy=h.leftSE,c.rightSE.consumedBy=h.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{const o=this.prev.consumedBy||this.prev;this._beforeState=o.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;const o=this.beforeState();this._afterState={rings:o.rings.slice(0),windings:o.windings.slice(0),multiPolys:[]};const h=this._afterState.rings,c=this._afterState.windings,w=this._afterState.multiPolys;for(let C=0,_=this.rings.length;C<_;C++){const P=this.rings[C],Y=this.windings[C],O=h.indexOf(P);O===-1?(h.push(P),c.push(Y)):c[O]+=Y}const m=[],k=[];for(let C=0,_=h.length;C<_;C++){if(c[C]===0)continue;const P=h[C],Y=P.poly;if(k.indexOf(Y)===-1)if(P.isExterior)m.push(Y);else{k.indexOf(Y)===-1&&k.push(Y);const O=m.indexOf(P.poly);O!==-1&&m.splice(O,1)}}for(let C=0,_=m.length;C<_;C++){const P=m[C].multiPoly;w.indexOf(P)===-1&&w.push(P)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;const o=this.beforeState().multiPolys,h=this.afterState().multiPolys;switch(ii.type){case"union":{const c=o.length===0,w=h.length===0;this._isInResult=c!==w;break}case"intersection":{let c,w;o.length<h.length?(c=o.length,w=h.length):(c=h.length,w=o.length),this._isInResult=w===ii.numMultiPolys&&c<w;break}case"xor":{const c=Math.abs(o.length-h.length);this._isInResult=c%2===1;break}case"difference":{const c=w=>w.length===1&&w[0].isSubject;this._isInResult=c(o)!==c(h);break}}return this._isInResult}},ni=class{constructor(u,o,h){if(pA(this,"poly"),pA(this,"isExterior"),pA(this,"segments"),pA(this,"bbox"),!Array.isArray(u)||u.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=o,this.isExterior=h,this.segments=[],typeof u[0][0]!="number"||typeof u[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");const c=N0.snap({x:new S0(u[0][0]),y:new S0(u[0][1])});this.bbox={ll:{x:c.x,y:c.y},ur:{x:c.x,y:c.y}};let w=c;for(let m=1,k=u.length;m<k;m++){if(typeof u[m][0]!="number"||typeof u[m][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");const C=N0.snap({x:new S0(u[m][0]),y:new S0(u[m][1])});C.x.eq(w.x)&&C.y.eq(w.y)||(this.segments.push(lt.fromRing(w,C,this)),C.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=C.x),C.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=C.y),C.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=C.x),C.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=C.y),w=C)}(!c.x.eq(w.x)||!c.y.eq(w.y))&&this.segments.push(lt.fromRing(w,c,this))}getSweepEvents(){const u=[];for(let o=0,h=this.segments.length;o<h;o++){const c=this.segments[o];u.push(c.leftSE),u.push(c.rightSE)}return u}},Us=class{constructor(u,o){if(pA(this,"multiPoly"),pA(this,"exteriorRing"),pA(this,"interiorRings"),pA(this,"bbox"),!Array.isArray(u))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new ni(u[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let h=1,c=u.length;h<c;h++){const w=new ni(u[h],this,!1);w.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=w.bbox.ll.x),w.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=w.bbox.ll.y),w.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=w.bbox.ur.x),w.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=w.bbox.ur.y),this.interiorRings.push(w)}this.multiPoly=o}getSweepEvents(){const u=this.exteriorRing.getSweepEvents();for(let o=0,h=this.interiorRings.length;o<h;o++){const c=this.interiorRings[o].getSweepEvents();for(let w=0,m=c.length;w<m;w++)u.push(c[w])}return u}},si=class{constructor(u,o){if(pA(this,"isSubject"),pA(this,"polys"),pA(this,"bbox"),!Array.isArray(u))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof u[0][0][0]=="number"&&(u=[u])}catch{}this.polys=[],this.bbox={ll:{x:new S0(Number.POSITIVE_INFINITY),y:new S0(Number.POSITIVE_INFINITY)},ur:{x:new S0(Number.NEGATIVE_INFINITY),y:new S0(Number.NEGATIVE_INFINITY)}};for(let h=0,c=u.length;h<c;h++){const w=new Us(u[h],this);w.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=w.bbox.ll.x),w.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=w.bbox.ll.y),w.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=w.bbox.ur.x),w.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=w.bbox.ur.y),this.polys.push(w)}this.isSubject=o}getSweepEvents(){const u=[];for(let o=0,h=this.polys.length;o<h;o++){const c=this.polys[o].getSweepEvents();for(let w=0,m=c.length;w<m;w++)u.push(c[w])}return u}};N0.set,new Set(Object.values(Gt));var zs=class $e extends Error{constructor(o){super(`${$e.NAME}: ${o}`),this.name=$e.NAME}static is(o){return o instanceof $e||o.message?.includes($e.NAME)}};pA(zs,"NAME","InvalidColumnError");var oi=class Rn{constructor(o){pA(this,"props"),this.props={...Rn.defaultProps,clientId:Yr(),...o}}destroy(){}};pA(oi,"defaultProps",{apiVersion:"v3",apiBaseUrl:us,clientId:Yr(),filters:{},filtersLogicalOperator:"and"});var Ys=oi,{V3:C1}=jr,js=new Set(Object.values(Gt)),Hs=u=>js.has(u);function Vs(u,o){if(!o)return{};const h={};for(const c in o)for(const w in o[c]){if(!Hs(w))continue;const m=o[c][w],k=!u||!m?.owner||m?.owner!==u;m&&k&&(h[c]||(h[c]={}),h[c][w]=m)}return h}var Ks="_carto_others",V0={count:u=>u.length,min:(...u)=>ft(Xs,...u),max:(...u)=>ft(Zs,...u),sum:(...u)=>ft(fi,...u),avg:(...u)=>ft(Ws,...u)};function K0(u,o,h){if(o?.length){if(o.length===1){const w=u[o[0]];return li(w)?Number(w):w}}else throw new Error("Cannot aggregate a feature without having keys");const c=V0[h];if(!c)throw new Error(`${h} isn\'t a valid aggregation function`);return c(o.map(w=>{const m=u[w];return li(m)?Number(m):m}))}function li(u){return typeof u=="string"&&u.trim().length>0}var ft=(u,o,h,c)=>{const w=ut(h),m=(w?.length||0)<=1?qs(o,w||[]):o;return u(m,h,c)};function qs(u,o){const h=c=>c!=null;return o?.length?u.filter(c=>h(c[o[0]])):u.filter(h)}function Ws(u,o,h){return fi(u,o,h)/(u.length||1)}function fi(u,o,h){const c=ut(o);return c?u.reduce((w,m)=>w+K0(m,c,h),0):u.reduce((w,m)=>w+m,0)}function Xs(u,o,h){const c=ut(o);if(c)return u.reduce((m,k)=>Math.min(m,K0(k,c,h)),1/0);let w=Number.POSITIVE_INFINITY;for(const m of u)w=Math.min(w,m);return w}function Zs(u,o,h){const c=ut(o);if(c)return u.reduce((m,k)=>Math.max(m,K0(k,c,h)),-1/0);let w=Number.NEGATIVE_INFINITY;for(const m of u)w=Math.max(w,m);return w}function ut(u){return Array.isArray(u)?u:typeof u=="string"?[u]:void 0}var $s=os(ls());function Js(u,{sortBy:o,sortByDirection:h="asc",sortByColumnType:c="string"}={}){if(o===void 0)return u;if(!(Array.isArray(o)&&o.length||typeof o=="string"))throw new Error("Sorting options are bad formatted");const m=A2({sortBy:o,sortByDirection:h,sortByColumnType:c||"string"});return u.sort(m)}function A2({sortBy:u,sortByDirection:o,sortByColumnType:h}){const[c,...w]=e2({sortBy:u,sortByDirection:o,sortByColumnType:h});let m=(0,$s.firstBy)(...c);for(const k of w)m=m.thenBy(...k);return m}function e2({sortBy:u,sortByDirection:o,sortByColumnType:h}){const c=h==="number"&&{cmp:(w,m)=>w-m};return Array.isArray(u)||(u=[u]),u.map(w=>{if(typeof w=="string")return[w,{direction:o,...c}];if(Array.isArray(w)){if(w[1]===void 0)return[w,{direction:o,...c}];if(typeof w[1]=="object"){const m=c?{...c,...w[1]}:w[1];return[w[0],{direction:o,...m}]}}return w})}function t2({data:u,valuesColumns:o,joinOperation:h,keysColumn:c,operation:w,othersThreshold:m,orderBy:k="frequency_desc"}){if(Array.isArray(u)&&u.length===0)return{rows:null};const C=u.reduce((Y,O)=>{const q=O[c],J=Y.get(q)||[];Y.set(q,J);const oA=K0(O,o,h);return(w==="count"?!0:oA!==null)&&oA!==void 0&&(J.push(oA),Y.set(q,J)),Y},new Map),_=V0[w];if(!_)return{rows:[]};const P=Array.from(C).map(([Y,O])=>({name:Y,value:_(O)})).sort(r2(k));if(m&&P.length>m){const Y=P.slice(m).flatMap(({name:O})=>C.get(O));return{rows:P,metadata:{others:_(Y)}}}return{rows:P}}function r2(u){switch(u){case"frequency_asc":return(o,h)=>o.value-h.value||ht(o.name,h.name);case"frequency_desc":return(o,h)=>h.value-o.value||ht(o.name,h.name);case"alphabetical_asc":return(o,h)=>ht(o.name,h.name)||h.value-o.value;case"alphabetical_desc":return(o,h)=>ht(h.name,o.name)||h.value-o.value}}function ht(u,o){return typeof u=="number"&&typeof o=="number"?u-o:String(u??"null").localeCompare(String(o??"null"))}function i2(u){const o=new Date(u),h=o.getUTCDay(),c=o.getUTCDate()-h+(h?1:-6);return o.setUTCDate(c),Date.UTC(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate())}var n2={year:u=>Date.UTC(u.getUTCFullYear()),month:u=>Date.UTC(u.getUTCFullYear(),u.getUTCMonth()),week:u=>i2(u),day:u=>Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),hour:u=>Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate(),u.getUTCHours()),minute:u=>Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate(),u.getUTCHours(),u.getUTCMinutes()),second:u=>Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate(),u.getUTCHours(),u.getUTCMinutes(),u.getUTCSeconds())};function s2({data:u,valuesColumns:o,joinOperation:h,keysColumn:c,groupType:w,operation:m}){if(Array.isArray(u)&&u.length===0)return null;const k=n2[w];if(!k)return null;const C=u.reduce((P,Y)=>{const O=Y[c],q=new Date(O),J=k(q);if(!isNaN(J)){let oA=P.get(J);oA||(oA=[],P.set(J,oA));const lA=K0(Y,o,h);lA!=null&&(oA.push(lA),P.set(J,oA))}return P},new Map),_=V0[m];return[...C.entries()].map(([P,Y])=>({name:P,value:_(Y)})).sort((P,Y)=>P.name-Y.name)}function o2({data:u,valuesColumns:o,joinOperation:h,ticks:c,operation:w}){if(Array.isArray(u)&&u.length===0)return[];const m=[Number.MIN_SAFE_INTEGER,...c].map((_,P,Y)=>({bin:P,start:_,end:P===Y.length-1?Number.MAX_SAFE_INTEGER:Y[P+1],values:[]}));u.forEach(_=>{const P=K0(_,o,h);if(!(P!=null))return;const O=m.find(q=>q.start<=P&&q.end>P);O&&O.values.push(P)});const k=V0[w];return m.map(_=>_.values).map(_=>_.length?k(_):0)}function l2({data:u,xAxisColumns:o,xAxisJoinOperation:h,yAxisColumns:c,yAxisJoinOperation:w}){return u.reduce((m,k)=>{const C=K0(k,o,h),_=C!=null,P=K0(k,c,w),Y=P!=null;return _&&Y&&m.push([C,P]),m},[])}var f2=Object.defineProperty,ce=(u,o)=>f2(u,"name",{value:o,configurable:!0}),ui=class{constructor(o){this.direction=!1,this.compareProperties=!0;var h,c,w;this.precision=10**-((h=o?.precision)!=null?h:17),this.direction=(c=o?.direction)!=null?c:!1,this.compareProperties=(w=o?.compareProperties)!=null?w:!0}compare(o,h){if(o.type!==h.type||!Ie(o,h))return!1;switch(o.type){case"Point":return this.compareCoord(o.coordinates,h.coordinates);case"LineString":return this.compareLine(o.coordinates,h.coordinates);case"Polygon":return this.comparePolygon(o,h);case"GeometryCollection":return this.compareGeometryCollection(o,h);case"Feature":return this.compareFeature(o,h);case"FeatureCollection":return this.compareFeatureCollection(o,h);default:if(o.type.startsWith("Multi")){const c=Kt(o),w=Kt(h);return c.every(m=>w.some(k=>this.compare(m,k)))}}return!1}compareCoord(o,h){return o.length===h.length&&o.every((c,w)=>Math.abs(c-h[w])<this.precision)}compareLine(o,h,c=0,w=!1){if(!Ie(o,h))return!1;const m=o;let k=h;if(w&&!this.compareCoord(m[0],k[0])){const _=this.fixStartIndex(k,m);if(_)k=_;else return!1}const C=this.compareCoord(m[c],k[c]);return this.direction||C?this.comparePath(m,k):this.compareCoord(m[c],k[k.length-(1+c)])?this.comparePath(m.slice().reverse(),k):!1}fixStartIndex(o,h){let c,w=-1;for(let m=0;m<o.length;m++)if(this.compareCoord(o[m],h[0])){w=m;break}return w>=0&&(c=[].concat(o.slice(w,o.length),o.slice(1,w+1))),c}comparePath(o,h){return o.every((c,w)=>this.compareCoord(c,h[w]))}comparePolygon(o,h){if(this.compareLine(o.coordinates[0],h.coordinates[0],1,!0)){const c=o.coordinates.slice(1,o.coordinates.length),w=h.coordinates.slice(1,h.coordinates.length);return c.every(m=>w.some(k=>this.compareLine(m,k,1,!0)))}return!1}compareGeometryCollection(o,h){return Ie(o.geometries,h.geometries)&&this.compareBBox(o,h)&&o.geometries.every((c,w)=>this.compare(c,h.geometries[w]))}compareFeature(o,h){return o.id===h.id&&(this.compareProperties?qt(o.properties,h.properties):!0)&&this.compareBBox(o,h)&&this.compare(o.geometry,h.geometry)}compareFeatureCollection(o,h){return Ie(o.features,h.features)&&this.compareBBox(o,h)&&o.features.every((c,w)=>this.compare(c,h.features[w]))}compareBBox(o,h){return!o.bbox&&!h.bbox||(o.bbox&&h.bbox?this.compareCoord(o.bbox,h.bbox):!1)}};ce(ui,"GeojsonEquality");var u2=ui;function Ie(u,o){return u.coordinates?u.coordinates.length===o.coordinates.length:u.length===o.length}ce(Ie,"sameLength");function Kt(u){return u.coordinates.map(o=>({type:u.type.replace("Multi",""),coordinates:o}))}ce(Kt,"explode");function h2(u,o,h){return new u2(h).compare(u,o)}ce(h2,"geojsonEquality");function qt(u,o){if(u===null&&o===null)return!0;if(u===null||o===null)return!1;const h=Object.keys(u),c=Object.keys(o);if(h.length!==c.length)return!1;for(var w of h){const m=u[w],k=o[w],C=hi(m)&&hi(k);if(C&&!qt(m,k)||!C&&m!==k)return!1}return!0}ce(qt,"equal");var hi=ce(u=>u!=null&&typeof u=="object","isObject"),a2="https://basemaps.cartocdn.com/gl/{basemap}-gl-style/style.json";function we(u){return a2.replace("{basemap}",u)}we("voyager"),we("positron"),we("dark-matter"),we("voyager-nolabels"),we("positron-nolabels"),we("dark-matter-nolabels");function at(u,o=u.length){return new Array(o)}var g2=u=>(o,h)=>{const c=Math.min(o.length,h.length),w=at(o,c);for(let m=0;m<c;m++)w[m]=u(o[m],h[m]);return w},c2=u=>(o,h)=>{const c=o.length,w=at(o,c);for(let m=0;m<c;m++)w[m]=u(o[m],h);return w},w2=u=>(o,h)=>{const c=h.length,w=at(h,c);for(let m=0;m<c;m++)w[m]=u(o,h[m]);return w},p2=u=>o=>{const h=o.length,c=at(o,h);for(let w=0;w<h;w++)c[w]=u(o[w]);return c};function gt(u,o){return Object.keys(u).reduce((h,c)=>(h[c]=o(u[c]),h),{})}var Wt={"||":(u,o)=>u||o,"&&":(u,o)=>u&&o,"|":(u,o)=>u|o,"^":(u,o)=>u^o,"&":(u,o)=>u&o,"==":(u,o)=>+(u==o),"!=":(u,o)=>+(u!=o),"===":(u,o)=>+(u===o),"!==":(u,o)=>+(u!==o),"<":(u,o)=>+(u<o),">":(u,o)=>+(u>o),"<=":(u,o)=>+(u<=o),">=":(u,o)=>+(u>=o),"<<":(u,o)=>u<<o,">>":(u,o)=>u>>o,">>>":(u,o)=>u>>>o,"+":(u,o)=>u+o,"-":(u,o)=>u-o,"*":(u,o)=>u*o,"/":(u,o)=>u/o,"%":(u,o)=>u%o},m2={"-":u=>-u,"+":u=>+u,"~":u=>~u,"!":u=>+!u};gt(Wt,g2),gt(Wt,w2),gt(Wt,c2),gt(m2,p2);function Xt(u,o,h){u.prototype=o.prototype=h,h.constructor=u}function ai(u,o){var h=Object.create(u.prototype);for(var c in o)h[c]=o[c];return h}function Oe(){}var Re=.7,ct=1/Re,pe="\\\\s*([+-]?\\\\d+)\\\\s*",Le="\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*",I0="\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*",E2=/^#([0-9a-f]{3,8})$/,y2=new RegExp(`^rgb\\\\(${pe},${pe},${pe}\\\\)$`),v2=new RegExp(`^rgb\\\\(${I0},${I0},${I0}\\\\)$`),b2=new RegExp(`^rgba\\\\(${pe},${pe},${pe},${Le}\\\\)$`),k2=new RegExp(`^rgba\\\\(${I0},${I0},${I0},${Le}\\\\)$`),B2=new RegExp(`^hsl\\\\(${Le},${I0},${I0}\\\\)$`),C2=new RegExp(`^hsla\\\\(${Le},${I0},${I0},${Le}\\\\)$`),gi={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Xt(Oe,Zt,{copy(u){return Object.assign(new this.constructor,this,u)},displayable(){return this.rgb().displayable()},hex:ci,formatHex:ci,formatHex8:d2,formatHsl:x2,formatRgb:wi,toString:wi});function ci(){return this.rgb().formatHex()}function d2(){return this.rgb().formatHex8()}function x2(){return bi(this).formatHsl()}function wi(){return this.rgb().formatRgb()}function Zt(u){var o,h;return u=(u+"").trim().toLowerCase(),(o=E2.exec(u))?(h=o[1].length,o=parseInt(o[1],16),h===6?pi(o):h===3?new m0(o>>8&15|o>>4&240,o>>4&15|o&240,(o&15)<<4|o&15,1):h===8?wt(o>>24&255,o>>16&255,o>>8&255,(o&255)/255):h===4?wt(o>>12&15|o>>8&240,o>>8&15|o>>4&240,o>>4&15|o&240,((o&15)<<4|o&15)/255):null):(o=y2.exec(u))?new m0(o[1],o[2],o[3],1):(o=v2.exec(u))?new m0(o[1]*255/100,o[2]*255/100,o[3]*255/100,1):(o=b2.exec(u))?wt(o[1],o[2],o[3],o[4]):(o=k2.exec(u))?wt(o[1]*255/100,o[2]*255/100,o[3]*255/100,o[4]):(o=B2.exec(u))?vi(o[1],o[2]/100,o[3]/100,1):(o=C2.exec(u))?vi(o[1],o[2]/100,o[3]/100,o[4]):gi.hasOwnProperty(u)?pi(gi[u]):u==="transparent"?new m0(NaN,NaN,NaN,0):null}function pi(u){return new m0(u>>16&255,u>>8&255,u&255,1)}function wt(u,o,h,c){return c<=0&&(u=o=h=NaN),new m0(u,o,h,c)}function D2(u){return u instanceof Oe||(u=Zt(u)),u?(u=u.rgb(),new m0(u.r,u.g,u.b,u.opacity)):new m0}function mi(u,o,h,c){return arguments.length===1?D2(u):new m0(u,o,h,c??1)}function m0(u,o,h,c){this.r=+u,this.g=+o,this.b=+h,this.opacity=+c}Xt(m0,mi,ai(Oe,{brighter(u){return u=u==null?ct:Math.pow(ct,u),new m0(this.r*u,this.g*u,this.b*u,this.opacity)},darker(u){return u=u==null?Re:Math.pow(Re,u),new m0(this.r*u,this.g*u,this.b*u,this.opacity)},rgb(){return this},clamp(){return new m0(re(this.r),re(this.g),re(this.b),pt(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Ei,formatHex:Ei,formatHex8:M2,formatRgb:yi,toString:yi}));function Ei(){return`#${ie(this.r)}${ie(this.g)}${ie(this.b)}`}function M2(){return`#${ie(this.r)}${ie(this.g)}${ie(this.b)}${ie((isNaN(this.opacity)?1:this.opacity)*255)}`}function yi(){const u=pt(this.opacity);return`${u===1?"rgb(":"rgba("}${re(this.r)}, ${re(this.g)}, ${re(this.b)}${u===1?")":`, ${u})`}`}function pt(u){return isNaN(u)?1:Math.max(0,Math.min(1,u))}function re(u){return Math.max(0,Math.min(255,Math.round(u)||0))}function ie(u){return u=re(u),(u<16?"0":"")+u.toString(16)}function vi(u,o,h,c){return c<=0?u=o=h=NaN:h<=0||h>=1?u=o=NaN:o<=0&&(u=NaN),new Q0(u,o,h,c)}function bi(u){if(u instanceof Q0)return new Q0(u.h,u.s,u.l,u.opacity);if(u instanceof Oe||(u=Zt(u)),!u)return new Q0;if(u instanceof Q0)return u;u=u.rgb();var o=u.r/255,h=u.g/255,c=u.b/255,w=Math.min(o,h,c),m=Math.max(o,h,c),k=NaN,C=m-w,_=(m+w)/2;return C?(o===m?k=(h-c)/C+(h<c)*6:h===m?k=(c-o)/C+2:k=(o-h)/C+4,C/=_<.5?m+w:2-m-w,k*=60):C=_>0&&_<1?0:k,new Q0(k,C,_,u.opacity)}function P2(u,o,h,c){return arguments.length===1?bi(u):new Q0(u,o,h,c??1)}function Q0(u,o,h,c){this.h=+u,this.s=+o,this.l=+h,this.opacity=+c}Xt(Q0,P2,ai(Oe,{brighter(u){return u=u==null?ct:Math.pow(ct,u),new Q0(this.h,this.s,this.l*u,this.opacity)},darker(u){return u=u==null?Re:Math.pow(Re,u),new Q0(this.h,this.s,this.l*u,this.opacity)},rgb(){var u=this.h%360+(this.h<0)*360,o=isNaN(u)||isNaN(this.s)?0:this.s,h=this.l,c=h+(h<.5?h:1-h)*o,w=2*h-c;return new m0($t(u>=240?u-240:u+120,w,c),$t(u,w,c),$t(u<120?u+240:u-120,w,c),this.opacity)},clamp(){return new Q0(ki(this.h),mt(this.s),mt(this.l),pt(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const u=pt(this.opacity);return`${u===1?"hsl(":"hsla("}${ki(this.h)}, ${mt(this.s)*100}%, ${mt(this.l)*100}%${u===1?")":`, ${u})`}`}}));function ki(u){return u=(u||0)%360,u<0?u+360:u}function mt(u){return Math.max(0,Math.min(1,u||0))}function $t(u,o,h){return(u<60?o+(h-o)*u/60:u<180?h:u<240?o+(h-o)*(240-u)/60:o)*255}var _2=u=>{const{r:o,g:h,b:c}=mi(u);return[o,h,c]},Q2="#868d91";_2(Q2),Ft("i"),Ft(".5f");function S2({geojson:u,uniqueIdProperty:o}){return u.map(h=>{const c=h.properties??{},w=o&&c[o]!=null?c:{...c,id:o?String(c[o]):""};return{...h,properties:w}})}function q0(u,o,h={}){const c={type:"Feature"};return(h.id===0||h.id)&&(c.id=h.id),h.bbox&&(c.bbox=h.bbox),c.properties=o||{},c.geometry=u,c}function T2(u,o,h={}){if(!u)throw new Error("coordinates is required");if(!Array.isArray(u))throw new Error("coordinates must be an Array");if(u.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Bi(u[0])||!Bi(u[1]))throw new Error("coordinates must contain numbers");return q0({type:"Point",coordinates:u},o,h)}function I2(u,o,h={}){if(u.length<2)throw new Error("coordinates must be an array of two or more positions");return q0({type:"LineString",coordinates:u},o,h)}function Et(u,o={}){const h={type:"FeatureCollection"};return o.id&&(h.id=o.id),o.bbox&&(h.bbox=o.bbox),h.features=u,h}function O2(u,o,h={}){return q0({type:"MultiLineString",coordinates:u},o,h)}function Bi(u){return!isNaN(u)&&u!==null&&!Array.isArray(u)}function R2(u){if(!u)throw new Error("coord is required");if(!Array.isArray(u)){if(u.type==="Feature"&&u.geometry!==null&&u.geometry.type==="Point")return[...u.geometry.coordinates];if(u.type==="Point")return[...u.coordinates]}if(Array.isArray(u)&&u.length>=2&&!Array.isArray(u[0])&&!Array.isArray(u[1]))return[...u];throw new Error("coord must be GeoJSON Point or an Array of numbers")}function yt(u){return u.type==="Feature"?u.geometry:u}function Ci(u,o,h){if(u!==null)for(var c,w,m,k,C,_,P,Y=0,O=0,q,J=u.type,oA=J==="FeatureCollection",lA=J==="Feature",gA=oA?u.features.length:1,aA=0;aA<gA;aA++){P=oA?u.features[aA].geometry:lA?u.geometry:u,q=P?P.type==="GeometryCollection":!1,C=q?P.geometries.length:1;for(var Z=0;Z<C;Z++){var RA=0,FA=0;if(k=q?P.geometries[Z]:P,k!==null){_=k.coordinates;var TA=k.type;switch(Y=0,TA){case null:break;case"Point":if(o(_,O,aA,RA,FA)===!1)return!1;O++,RA++;break;case"LineString":case"MultiPoint":for(c=0;c<_.length;c++){if(o(_[c],O,aA,RA,FA)===!1)return!1;O++,TA==="MultiPoint"&&RA++}TA==="LineString"&&RA++;break;case"Polygon":case"MultiLineString":for(c=0;c<_.length;c++){for(w=0;w<_[c].length-Y;w++){if(o(_[c][w],O,aA,RA,FA)===!1)return!1;O++}TA==="MultiLineString"&&RA++,TA==="Polygon"&&FA++}TA==="Polygon"&&RA++;break;case"MultiPolygon":for(c=0;c<_.length;c++){for(FA=0,w=0;w<_[c].length;w++){for(m=0;m<_[c][w].length-Y;m++){if(o(_[c][w][m],O,aA,RA,FA)===!1)return!1;O++}FA++}RA++}break;case"GeometryCollection":for(c=0;c<k.geometries.length;c++)if(Ci(k.geometries[c],o)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function L2(u,o){var h,c,w,m,k,C,_,P,Y,O,q=0,J=u.type==="FeatureCollection",oA=u.type==="Feature",lA=J?u.features.length:1;for(h=0;h<lA;h++){for(C=J?u.features[h].geometry:oA?u.geometry:u,P=J?u.features[h].properties:oA?u.properties:{},Y=J?u.features[h].bbox:oA?u.bbox:void 0,O=J?u.features[h].id:oA?u.id:void 0,_=C?C.type==="GeometryCollection":!1,k=_?C.geometries.length:1,w=0;w<k;w++){if(m=_?C.geometries[w]:C,m===null){if(o(null,q,P,Y,O)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(o(m,q,P,Y,O)===!1)return!1;break}case"GeometryCollection":{for(c=0;c<m.geometries.length;c++)if(o(m.geometries[c],q,P,Y,O)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}q++}}function vt(u,o){L2(u,function(h,c,w,m,k){var C=h===null?null:h.type;switch(C){case null:case"Point":case"LineString":case"Polygon":return o(q0(h,w,{bbox:m,id:k}),c,0)===!1?!1:void 0}var _;switch(C){case"MultiPoint":_="Point";break;case"MultiLineString":_="LineString";break;case"MultiPolygon":_="Polygon";break}for(var P=0;P<h.coordinates.length;P++){var Y=h.coordinates[P],O={type:_,coordinates:Y};if(o(q0(O,w),c,P)===!1)return!1}})}function F2(u,o={}){if(u.bbox!=null&&o.recompute!==!0)return u.bbox;const h=[1/0,1/0,-1/0,-1/0];return Ci(u,c=>{h[0]>c[0]&&(h[0]=c[0]),h[1]>c[1]&&(h[1]=c[1]),h[2]<c[0]&&(h[2]=c[0]),h[3]<c[1]&&(h[3]=c[1])}),h}const G0=11102230246251565e-32,h0=134217729,N2=(3+8*G0)*G0;function Jt(u,o,h,c,w){let m,k,C,_,P=o[0],Y=c[0],O=0,q=0;Y>P==Y>-P?(m=P,P=o[++O]):(m=Y,Y=c[++q]);let J=0;if(O<u&&q<h)for(Y>P==Y>-P?(k=P+m,C=m-(k-P),P=o[++O]):(k=Y+m,C=m-(k-Y),Y=c[++q]),m=k,C!==0&&(w[J++]=C);O<u&&q<h;)Y>P==Y>-P?(k=m+P,_=k-m,C=m-(k-_)+(P-_),P=o[++O]):(k=m+Y,_=k-m,C=m-(k-_)+(Y-_),Y=c[++q]),m=k,C!==0&&(w[J++]=C);for(;O<u;)k=m+P,_=k-m,C=m-(k-_)+(P-_),P=o[++O],m=k,C!==0&&(w[J++]=C);for(;q<h;)k=m+Y,_=k-m,C=m-(k-_)+(Y-_),Y=c[++q],m=k,C!==0&&(w[J++]=C);return(m!==0||J===0)&&(w[J++]=m),J}function G2(u,o){let h=o[0];for(let c=1;c<u;c++)h+=o[c];return h}function Fe(u){return new Float64Array(u)}const U2=(3+16*G0)*G0,z2=(2+12*G0)*G0,Y2=(9+64*G0)*G0*G0,me=Fe(4),di=Fe(8),xi=Fe(12),Di=Fe(16),g0=Fe(4);function j2(u,o,h,c,w,m,k){let C,_,P,Y,O,q,J,oA,lA,gA,aA,Z,RA,FA,TA,GA,XA,B;const M=u-w,Q=h-w,R=o-m,I=c-m;FA=M*I,q=h0*M,J=q-(q-M),oA=M-J,q=h0*I,lA=q-(q-I),gA=I-lA,TA=oA*gA-(FA-J*lA-oA*lA-J*gA),GA=R*Q,q=h0*R,J=q-(q-R),oA=R-J,q=h0*Q,lA=q-(q-Q),gA=Q-lA,XA=oA*gA-(GA-J*lA-oA*lA-J*gA),aA=TA-XA,O=TA-aA,me[0]=TA-(aA+O)+(O-XA),Z=FA+aA,O=Z-FA,RA=FA-(Z-O)+(aA-O),aA=RA-GA,O=RA-aA,me[1]=RA-(aA+O)+(O-GA),B=Z+aA,O=B-Z,me[2]=Z-(B-O)+(aA-O),me[3]=B;let N=G2(4,me),V=z2*k;if(N>=V||-N>=V||(O=u-M,C=u-(M+O)+(O-w),O=h-Q,P=h-(Q+O)+(O-w),O=o-R,_=o-(R+O)+(O-m),O=c-I,Y=c-(I+O)+(O-m),C===0&&_===0&&P===0&&Y===0)||(V=Y2*k+N2*Math.abs(N),N+=M*Y+I*C-(R*P+Q*_),N>=V||-N>=V))return N;FA=C*I,q=h0*C,J=q-(q-C),oA=C-J,q=h0*I,lA=q-(q-I),gA=I-lA,TA=oA*gA-(FA-J*lA-oA*lA-J*gA),GA=_*Q,q=h0*_,J=q-(q-_),oA=_-J,q=h0*Q,lA=q-(q-Q),gA=Q-lA,XA=oA*gA-(GA-J*lA-oA*lA-J*gA),aA=TA-XA,O=TA-aA,g0[0]=TA-(aA+O)+(O-XA),Z=FA+aA,O=Z-FA,RA=FA-(Z-O)+(aA-O),aA=RA-GA,O=RA-aA,g0[1]=RA-(aA+O)+(O-GA),B=Z+aA,O=B-Z,g0[2]=Z-(B-O)+(aA-O),g0[3]=B;const L=Jt(4,me,4,g0,di);FA=M*Y,q=h0*M,J=q-(q-M),oA=M-J,q=h0*Y,lA=q-(q-Y),gA=Y-lA,TA=oA*gA-(FA-J*lA-oA*lA-J*gA),GA=R*P,q=h0*R,J=q-(q-R),oA=R-J,q=h0*P,lA=q-(q-P),gA=P-lA,XA=oA*gA-(GA-J*lA-oA*lA-J*gA),aA=TA-XA,O=TA-aA,g0[0]=TA-(aA+O)+(O-XA),Z=FA+aA,O=Z-FA,RA=FA-(Z-O)+(aA-O),aA=RA-GA,O=RA-aA,g0[1]=RA-(aA+O)+(O-GA),B=Z+aA,O=B-Z,g0[2]=Z-(B-O)+(aA-O),g0[3]=B;const U=Jt(L,di,4,g0,xi);FA=C*Y,q=h0*C,J=q-(q-C),oA=C-J,q=h0*Y,lA=q-(q-Y),gA=Y-lA,TA=oA*gA-(FA-J*lA-oA*lA-J*gA),GA=_*P,q=h0*_,J=q-(q-_),oA=_-J,q=h0*P,lA=q-(q-P),gA=P-lA,XA=oA*gA-(GA-J*lA-oA*lA-J*gA),aA=TA-XA,O=TA-aA,g0[0]=TA-(aA+O)+(O-XA),Z=FA+aA,O=Z-FA,RA=FA-(Z-O)+(aA-O),aA=RA-GA,O=RA-aA,g0[1]=RA-(aA+O)+(O-GA),B=Z+aA,O=B-Z,g0[2]=Z-(B-O)+(aA-O),g0[3]=B;const H=Jt(U,xi,4,g0,Di);return Di[H-1]}function H2(u,o,h,c,w,m){const k=(o-m)*(h-w),C=(u-w)*(c-m),_=k-C,P=Math.abs(k+C);return Math.abs(_)>=U2*P?_:-j2(u,o,h,c,w,m,P)}function V2(u,o){var h,c,w=0,m,k,C,_,P,Y,O,q=u[0],J=u[1],oA=o.length;for(h=0;h<oA;h++){c=0;var lA=o[h],gA=lA.length-1;if(Y=lA[0],Y[0]!==lA[gA][0]&&Y[1]!==lA[gA][1])throw new Error("First and last coordinates in a ring must be the same");for(k=Y[0]-q,C=Y[1]-J,c;c<gA;c++){if(O=lA[c+1],_=O[0]-q,P=O[1]-J,C===0&&P===0){if(_<=0&&k>=0||k<=0&&_>=0)return 0}else if(P>=0&&C<=0||P<=0&&C>=0){if(m=H2(k,_,C,P,0,0),m===0)return 0;(m>0&&P>0&&C<=0||m<0&&P<=0&&C>0)&&w++}Y=O,C=P,k=_}}return w%2!==0}function Ne(u,o,h={}){if(!u)throw new Error("point is required");if(!o)throw new Error("polygon is required");const c=R2(u),w=yt(o),m=w.type,k=o.bbox;let C=w.coordinates;if(k&&K2(c,k)===!1)return!1;m==="Polygon"&&(C=[C]);let _=!1;for(var P=0;P<C.length;++P){const Y=V2(c,C[P]);if(Y===0)return!h.ignoreBoundary;Y&&(_=!0)}return _}function K2(u,o){return o[0]<=u[0]&&o[1]<=u[1]&&o[2]>=u[0]&&o[3]>=u[1]}class Mi{constructor(o=[],h=q2){if(this.data=o,this.length=this.data.length,this.compare=h,this.length>0)for(let c=(this.length>>1)-1;c>=0;c--)this._down(c)}push(o){this.data.push(o),this.length++,this._up(this.length-1)}pop(){if(this.length===0)return;const o=this.data[0],h=this.data.pop();return this.length--,this.length>0&&(this.data[0]=h,this._down(0)),o}peek(){return this.data[0]}_up(o){const{data:h,compare:c}=this,w=h[o];for(;o>0;){const m=o-1>>1,k=h[m];if(c(w,k)>=0)break;h[o]=k,o=m}h[o]=w}_down(o){const{data:h,compare:c}=this,w=this.length>>1,m=h[o];for(;o<w;){let k=(o<<1)+1,C=h[k];const _=k+1;if(_<this.length&&c(h[_],C)<0&&(k=_,C=h[_]),c(C,m)>=0)break;h[o]=C,o=k}h[o]=m}}function q2(u,o){return u<o?-1:u>o?1:0}function Pi(u,o){return u.p.x>o.p.x?1:u.p.x<o.p.x?-1:u.p.y!==o.p.y?u.p.y>o.p.y?1:-1:1}function W2(u,o){return u.rightSweepEvent.p.x>o.rightSweepEvent.p.x?1:u.rightSweepEvent.p.x<o.rightSweepEvent.p.x?-1:u.rightSweepEvent.p.y!==o.rightSweepEvent.p.y?u.rightSweepEvent.p.y<o.rightSweepEvent.p.y?1:-1:1}class _i{constructor(o,h,c,w){this.p={x:o[0],y:o[1]},this.featureId=h,this.ringId=c,this.eventId=w,this.otherEvent=null,this.isLeftEndpoint=null}isSamePoint(o){return this.p.x===o.p.x&&this.p.y===o.p.y}}function X2(u,o){if(u.type==="FeatureCollection"){const h=u.features;for(let c=0;c<h.length;c++)Qi(h[c],o)}else Qi(u,o)}let bt=0,kt=0,Bt=0;function Qi(u,o){const h=u.type==="Feature"?u.geometry:u;let c=h.coordinates;(h.type==="Polygon"||h.type==="MultiLineString")&&(c=[c]),h.type==="LineString"&&(c=[[c]]);for(let w=0;w<c.length;w++)for(let m=0;m<c[w].length;m++){let k=c[w][m][0],C=null;kt=kt+1;for(let _=0;_<c[w][m].length-1;_++){C=c[w][m][_+1];const P=new _i(k,bt,kt,Bt),Y=new _i(C,bt,kt,Bt+1);P.otherEvent=Y,Y.otherEvent=P,Pi(P,Y)>0?(Y.isLeftEndpoint=!0,P.isLeftEndpoint=!1):(P.isLeftEndpoint=!0,Y.isLeftEndpoint=!1),o.push(P),o.push(Y),k=C,Bt=Bt+1}}bt=bt+1}class Z2{constructor(o){this.leftSweepEvent=o,this.rightSweepEvent=o.otherEvent}}function $2(u,o){if(u===null||o===null||u.leftSweepEvent.ringId===o.leftSweepEvent.ringId&&(u.rightSweepEvent.isSamePoint(o.leftSweepEvent)||u.rightSweepEvent.isSamePoint(o.leftSweepEvent)||u.rightSweepEvent.isSamePoint(o.rightSweepEvent)||u.leftSweepEvent.isSamePoint(o.leftSweepEvent)||u.leftSweepEvent.isSamePoint(o.rightSweepEvent)))return!1;const h=u.leftSweepEvent.p.x,c=u.leftSweepEvent.p.y,w=u.rightSweepEvent.p.x,m=u.rightSweepEvent.p.y,k=o.leftSweepEvent.p.x,C=o.leftSweepEvent.p.y,_=o.rightSweepEvent.p.x,P=o.rightSweepEvent.p.y,Y=(P-C)*(w-h)-(_-k)*(m-c),O=(_-k)*(c-C)-(P-C)*(h-k),q=(w-h)*(c-C)-(m-c)*(h-k);if(Y===0)return!1;const J=O/Y,oA=q/Y;if(J>=0&&J<=1&&oA>=0&&oA<=1){const lA=h+J*(w-h),gA=c+J*(m-c);return[lA,gA]}return!1}function J2(u,o){o=o||!1;const h=[],c=new Mi([],W2);for(;u.length;){const w=u.pop();if(w.isLeftEndpoint){const m=new Z2(w);for(let k=0;k<c.data.length;k++){const C=c.data[k];if(o&&C.leftSweepEvent.featureId===w.featureId)continue;const _=$2(m,C);_!==!1&&h.push(_)}c.push(m)}else w.isLeftEndpoint===!1&&c.pop()}return h}function Ao(u,o){const h=new Mi([],Pi);return X2(u,h),J2(h,o)}var eo=Ao;function Ar(u,o,h={}){const{removeDuplicates:c=!0,ignoreSelfIntersections:w=!0}=h;let m=[];u.type==="FeatureCollection"?m=m.concat(u.features):u.type==="Feature"?m.push(u):(u.type==="LineString"||u.type==="Polygon"||u.type==="MultiLineString"||u.type==="MultiPolygon")&&m.push(q0(u)),o.type==="FeatureCollection"?m=m.concat(o.features):o.type==="Feature"?m.push(o):(o.type==="LineString"||o.type==="Polygon"||o.type==="MultiLineString"||o.type==="MultiPolygon")&&m.push(q0(o));const k=eo(Et(m),w);let C=[];if(c){const _={};k.forEach(P=>{const Y=P.join(",");_[Y]||(_[Y]=!0,C.push(P))})}else C=k;return Et(C.map(_=>T2(_)))}function er(u,o={}){const h=yt(u);switch(!o.properties&&u.type==="Feature"&&(o.properties=u.properties),h.type){case"Polygon":return to(h,o);case"MultiPolygon":return ro(h,o);default:throw new Error("invalid poly")}}function to(u,o={}){const c=yt(u).coordinates,w=o.properties?o.properties:u.type==="Feature"?u.properties:{};return Si(c,w)}function ro(u,o={}){const c=yt(u).coordinates,w=o.properties?o.properties:u.type==="Feature"?u.properties:{},m=[];return c.forEach(k=>{m.push(Si(k,w))}),Et(m)}function Si(u,o){return u.length>1?O2(u,o):I2(u[0],o)}function io(u,o,{ignoreSelfIntersections:h=!0}={ignoreSelfIntersections:!0}){let c=!0;return vt(u,w=>{vt(o,m=>{if(c===!1)return!1;c=no(w.geometry,m.geometry,h)})}),c}function no(u,o,h){switch(u.type){case"Point":switch(o.type){case"Point":return!fo(u.coordinates,o.coordinates);case"LineString":return!Ti(o,u);case"Polygon":return!Ne(u,o)}break;case"LineString":switch(o.type){case"Point":return!Ti(u,o);case"LineString":return!so(u,o,h);case"Polygon":return!Ii(o,u,h)}break;case"Polygon":switch(o.type){case"Point":return!Ne(o,u);case"LineString":return!Ii(u,o,h);case"Polygon":return!oo(o,u,h)}}return!1}function Ti(u,o){for(let h=0;h<u.coordinates.length-1;h++)if(lo(u.coordinates[h],u.coordinates[h+1],o.coordinates))return!0;return!1}function so(u,o,h){return Ar(u,o,{ignoreSelfIntersections:h}).features.length>0}function Ii(u,o,h){for(const w of o.coordinates)if(Ne(w,u))return!0;return Ar(o,er(u),{ignoreSelfIntersections:h}).features.length>0}function oo(u,o,h){for(const w of u.coordinates[0])if(Ne(w,o))return!0;for(const w of o.coordinates[0])if(Ne(w,u))return!0;return Ar(er(u),er(o),{ignoreSelfIntersections:h}).features.length>0}function lo(u,o,h){const c=h[0]-u[0],w=h[1]-u[1],m=o[0]-u[0],k=o[1]-u[1];return c*k-w*m!==0?!1:Math.abs(m)>=Math.abs(k)?m>0?u[0]<=h[0]&&h[0]<=o[0]:o[0]<=h[0]&&h[0]<=u[0]:k>0?u[1]<=h[1]&&h[1]<=o[1]:o[1]<=h[1]&&h[1]<=u[1]}function fo(u,o){return u[0]===o[0]&&u[1]===o[1]}function uo(u,o,{ignoreSelfIntersections:h=!0}={}){let c=!1;return vt(u,w=>{vt(o,m=>{if(c===!0)return!0;c=!io(w.geometry,m.geometry,{ignoreSelfIntersections:h})})}),c}class ho extends Ys{features=[];_filterFeaturesBySpatial(o){return o?this.features.filter(h=>uo(h,q0(o))):this.features}loadGeoJSON({geojson:o}){this.features=S2({geojson:o})}getFeatures(){return Promise.reject(new Error("getFeatures not supported for geojson"))}getFormula({column:o="*",operation:h=ge.Count,joinOperation:c,filters:w,filterOwner:m,spatialFilter:k}){const C=this._getFilteredFeatures(k,w,m);if(C.length===0)return Promise.resolve({value:null});if(h===ge.Custom)throw new Error("Custom aggregation not supported for geojson");(o&&o!=="*"||h!==ge.Count)&&ne(C,o);const _=V0[h];return Ge(_,`Unsupported aggregation operation: ${h}`),Promise.resolve({value:_(C.map(P=>P?.properties),o,c)})}getHistogram({operation:o=ge.Count,ticks:h,column:c,joinOperation:w,filters:m,filterOwner:k,spatialFilter:C}){const _=this._getFilteredFeatures(C,m,k);return _.length?(ne(_,c),Promise.resolve(o2({data:_,valuesColumns:Ee(c),joinOperation:w,ticks:h,operation:o}))):Promise.resolve([])}getCategories({column:o,operation:h=ge.Count,operationColumn:c,joinOperation:w,filters:m,filterOwner:k,spatialFilter:C,othersThreshold:_,orderBy:P="frequency_desc",rawResult:Y}){const O=this._getFilteredFeatures(C,m,k);if(!O.length)return Promise.resolve([]);ne(O,o,c);const q=t2({data:O,valuesColumns:Ee(c??o),joinOperation:w,keysColumn:o,operation:h,othersThreshold:_,orderBy:P});return Y?Promise.resolve(q):_?Promise.resolve([...q?.rows??[],{name:Ks,value:q?.metadata?.others??0}]):Promise.resolve(q?.rows??[])}getScatter({xAxisColumn:o,yAxisColumn:h,xAxisJoinOperation:c,yAxisJoinOperation:w,filters:m,filterOwner:k,spatialFilter:C}){const _=this._getFilteredFeatures(C,m,k);return _.length?(ne(_,o,h),Promise.resolve(l2({data:_,xAxisColumns:Ee(o),xAxisJoinOperation:c,yAxisColumns:Ee(h),yAxisJoinOperation:w}))):Promise.resolve([])}getTable({columns:o,searchFilterColumn:h,searchFilterText:c,sortBy:w,sortDirection:m,sortByColumnType:k,offset:C=0,limit:_=10,filters:P,filterOwner:Y,spatialFilter:O}){let q=this._getFilteredFeatures(O,P,Y);if(!q.length)return Promise.resolve({rows:[],totalCount:0});h&&c&&(console.warn(\'WidgetGeoJsonSource: "searchFilterText" is deprecated, use "filters" and FilterType.STRING_SEARCH instead.\'),q=q.filter(lA=>lA[h]&&String(lA[h]).toLowerCase().includes(String(c).toLowerCase())));let J=Js(q,{sortBy:w,sortByDirection:m,sortByColumnType:k});const oA=J.length;return J=J.slice(Math.min(C,oA),Math.min(C+_,oA)),J=J.map(lA=>{const gA={};if(lA)for(const aA of o)gA[aA]=lA[aA];return gA}),Promise.resolve({rows:J,totalCount:oA})}getTimeSeries({column:o,stepSize:h,operation:c,operationColumn:w,joinOperation:m,filters:k,filterOwner:C,spatialFilter:_}){const P=this._getFilteredFeatures(_,k,C);if(!P.length)return Promise.resolve({rows:[]});ne(P,o,w),Ge(c!=="custom","Custom operation not supported for geojson");const Y=s2({data:P,valuesColumns:Ee(w??o),keysColumn:o,groupType:h,operation:c,joinOperation:m})??[];return Promise.resolve({rows:Y})}getRange({column:o,filters:h,filterOwner:c,spatialFilter:w}){const m=this._getFilteredFeatures(w,h,c);return m.length?(ne(m,o),Promise.resolve({min:V0.min(m,o),max:V0.max(m,o)})):Promise.resolve(null)}getAggregations({aggregations:o,filters:h,filterOwner:c,spatialFilter:w}){const m=this._getFilteredFeatures(w,h,c);if(!m.length)return Promise.resolve({rows:[]});Ge(typeof o!="string","Unsupported geojson SQL aggregation");const k={},C=new Set;for(const{column:_,operation:P,alias:Y}of o){(_&&_!=="*"||P!==ge.Count)&&ne(m,_);const O=Y.toLowerCase();Ge(!C.has(O),`Duplicate alias: ${O}`),C.add(O);const q=V0[P];Ge(q,`Unsupported operation: ${P}`),k[Y]=q(m,_)}return Promise.resolve({rows:[k]})}getExtent(){const o=F2(Et(this.features));return Promise.resolve({bbox:o})}_getFilteredFeatures(o,h,c){const w=this._filterFeaturesBySpatial(o);return ks(w.map(m=>m.properties??{}),Vs(c,h??this.props.filters),this.props.filtersLogicalOperator??"and")}}function Ge(u,o){if(!u)throw new Error(o)}function ne(u,...o){const h=Array.from(new Set(o.map(Ee).flat())),c=Object.keys(u[0]??{}),w=h.filter(m=>m&&!c.includes(m));if(w.length)throw new Error(`Missing column(s): ${w.join(", ")}`)}function Ee(u){return Array.isArray(u)?u:typeof u=="string"?[u]:[]}let tr;addEventListener("message",u=>{const{method:o,params:h,requestId:c}=u.data;if(o===Ln.INIT){tr=new ho({...h[0],widgetWorker:!1});return}if(!tr){const w=`Cannot execute "${o}" on uninitialized source.`;postMessage({ok:!1,error:w,requestId:c});return}Promise.resolve(tr[o](...h)).then(w=>{postMessage({ok:!0,result:w,requestId:c})}).catch(w=>{postMessage({ok:!1,error:w,requestId:c})})})})();\n//# sourceMappingURL=widget-geojson-worker-9J7Q5sUJ.js.map\n', ve = typeof self < "u" && self.Blob && new Blob(["(self.URL || self.webkitURL).revokeObjectURL(self.location.href);", Ye], {
@@ -3000,7 +3002,7 @@ class qr extends Qe {
3000
3002
  }), this._workerImpl.addEventListener("error", (A) => {
3001
3003
  console.error("widget-geojson-source worker error", A);
3002
3004
  }), this._workerImpl.postMessage({
3003
- method: iA.INIT,
3005
+ method: sA.INIT,
3004
3006
  params: [this.props]
3005
3007
  }), this._workerImpl);
3006
3008
  }
@@ -3010,24 +3012,24 @@ class qr extends Qe {
3010
3012
  return this._localImpl ? this._localImpl[A](...e) : Promise.reject(new Error("Local implementation not initialized"));
3011
3013
  const n = this._getWorker(), i = this._workerNextRequestId++;
3012
3014
  let o = null, s = null;
3013
- function a(f) {
3014
- const h = f.data;
3015
- h.requestId === i && (r?.aborted || (h.ok ? o(h.result) : s(new Error(h.error))));
3015
+ function l(p) {
3016
+ const c = p.data;
3017
+ c.requestId === i && (r?.aborted || (c.ok ? o(c.result) : s(new Error(c.error))));
3016
3018
  }
3017
- function l() {
3019
+ function a() {
3018
3020
  s(new Error(String(r.reason)));
3019
3021
  }
3020
- n.addEventListener("message", a), r?.addEventListener("abort", l);
3021
- const c = new Promise((f, h) => {
3022
- o = f, s = h, n.postMessage({
3022
+ n.addEventListener("message", l), r?.addEventListener("abort", a);
3023
+ const f = new Promise((p, c) => {
3024
+ o = p, s = c, n.postMessage({
3023
3025
  requestId: i,
3024
3026
  method: A,
3025
3027
  params: e
3026
3028
  });
3027
3029
  });
3028
- return c.finally(() => {
3029
- n.removeEventListener("message", a), r?.removeEventListener("abort", l);
3030
- }), c;
3030
+ return f.finally(() => {
3031
+ n.removeEventListener("message", l), r?.removeEventListener("abort", a);
3032
+ }), f;
3031
3033
  }
3032
3034
  /////////////////////////////////////////////////////////////////////////////
3033
3035
  // DATA LOADING
@@ -3042,7 +3044,7 @@ class qr extends Qe {
3042
3044
  geojson: A
3043
3045
  });
3044
3046
  this._getWorker().postMessage({
3045
- method: iA.LOAD_GEOJSON,
3047
+ method: sA.LOAD_GEOJSON,
3046
3048
  params: [{
3047
3049
  geojson: A
3048
3050
  }]
@@ -3058,56 +3060,56 @@ class qr extends Qe {
3058
3060
  signal: A,
3059
3061
  ...e
3060
3062
  }) {
3061
- return this._executeWorkerMethod(iA.GET_FORMULA, [e], A);
3063
+ return this._executeWorkerMethod(sA.GET_FORMULA, [e], A);
3062
3064
  }
3063
3065
  async getHistogram({
3064
3066
  signal: A,
3065
3067
  ...e
3066
3068
  }) {
3067
- return this._executeWorkerMethod(iA.GET_HISTOGRAM, [e], A);
3069
+ return this._executeWorkerMethod(sA.GET_HISTOGRAM, [e], A);
3068
3070
  }
3069
3071
  async getCategories({
3070
3072
  signal: A,
3071
3073
  ...e
3072
3074
  }) {
3073
- return this._executeWorkerMethod(iA.GET_CATEGORIES, [e], A);
3075
+ return this._executeWorkerMethod(sA.GET_CATEGORIES, [e], A);
3074
3076
  }
3075
3077
  async getScatter({
3076
3078
  signal: A,
3077
3079
  ...e
3078
3080
  }) {
3079
- return this._executeWorkerMethod(iA.GET_SCATTER, [e], A);
3081
+ return this._executeWorkerMethod(sA.GET_SCATTER, [e], A);
3080
3082
  }
3081
3083
  async getTable({
3082
3084
  signal: A,
3083
3085
  ...e
3084
3086
  }) {
3085
- return this._executeWorkerMethod(iA.GET_TABLE, [e], A);
3087
+ return this._executeWorkerMethod(sA.GET_TABLE, [e], A);
3086
3088
  }
3087
3089
  async getTimeSeries({
3088
3090
  signal: A,
3089
3091
  ...e
3090
3092
  }) {
3091
- return this._executeWorkerMethod(iA.GET_TIME_SERIES, [e], A);
3093
+ return this._executeWorkerMethod(sA.GET_TIME_SERIES, [e], A);
3092
3094
  }
3093
3095
  async getRange({
3094
3096
  signal: A,
3095
3097
  ...e
3096
3098
  }) {
3097
- return this._executeWorkerMethod(iA.GET_RANGE, [e], A);
3099
+ return this._executeWorkerMethod(sA.GET_RANGE, [e], A);
3098
3100
  }
3099
3101
  async getAggregations({
3100
3102
  signal: A,
3101
3103
  ...e
3102
3104
  }) {
3103
- return this._executeWorkerMethod(iA.GET_AGGREGATIONS, [e], A);
3105
+ return this._executeWorkerMethod(sA.GET_AGGREGATIONS, [e], A);
3104
3106
  }
3105
3107
  /** @experimental */
3106
3108
  async getExtent({
3107
3109
  signal: A,
3108
3110
  ...e
3109
3111
  }) {
3110
- return this._executeWorkerMethod(iA.GET_EXTENT, [e], A);
3112
+ return this._executeWorkerMethod(sA.GET_EXTENT, [e], A);
3111
3113
  }
3112
3114
  }
3113
3115
  const ie = Se()(Xt((t, A) => ({
@@ -3118,7 +3120,7 @@ const ie = Se()(Xt((t, A) => ({
3118
3120
  ...n.sources
3119
3121
  }, o = i[e]?.widgets;
3120
3122
  o && (o.destroy(), delete i[e].widgets);
3121
- const s = i[e], a = {
3123
+ const s = i[e], l = {
3122
3124
  apiBaseUrl: te,
3123
3125
  clientId: Or,
3124
3126
  apiVersion: re,
@@ -3126,9 +3128,9 @@ const ie = Se()(Xt((t, A) => ({
3126
3128
  ...r,
3127
3129
  id: e
3128
3130
  };
3129
- return a.widgets = Zr({
3130
- source: a
3131
- }), i[e] = a, {
3131
+ return l.widgets = Zr({
3132
+ source: l
3133
+ }), i[e] = l, {
3132
3134
  sources: i
3133
3135
  };
3134
3136
  }, void 0, "setSource"),
@@ -3141,7 +3143,7 @@ const ie = Se()(Xt((t, A) => ({
3141
3143
  };
3142
3144
  }, void 0, "removeSource"),
3143
3145
  setFilters: (e, r) => t((n) => {
3144
- const i = n.filters[e] ?? {}, o = r.reduce((s, a) => XA(s, a), i);
3146
+ const i = n.filters[e] ?? {}, o = r.reduce((s, l) => XA(s, l), i);
3145
3147
  return {
3146
3148
  filters: {
3147
3149
  ...n.filters,
@@ -3328,16 +3330,16 @@ function Jr(t, A) {
3328
3330
  sourcesId: i,
3329
3331
  additionalFilter: o
3330
3332
  } = r, s = !!n;
3331
- let a, l;
3332
- e[6] !== s || e[7] !== n || e[8] !== i ? (l = s ? [n] : i, e[6] = s, e[7] = n, e[8] = i, e[9] = l) : l = e[9];
3333
- const c = l;
3334
- if (!c)
3333
+ let l, a;
3334
+ e[6] !== s || e[7] !== n || e[8] !== i ? (a = s ? [n] : i, e[6] = s, e[7] = n, e[8] = i, e[9] = a) : a = e[9];
3335
+ const f = a;
3336
+ if (!f)
3335
3337
  throw new Error("Either sourceId or sourcesId must be provided");
3336
- a = c;
3337
- const f = a, h = We(f);
3338
- let p;
3339
- e[10] !== h ? (p = Array.isArray(h) ? h : [h], e[10] = h, e[11] = p) : p = e[11];
3340
- const d = p;
3338
+ l = f;
3339
+ const p = l, c = We(p);
3340
+ let h;
3341
+ e[10] !== c ? (h = Array.isArray(c) ? c : [c], e[10] = c, e[11] = h) : h = e[11];
3342
+ const g = h;
3341
3343
  let w;
3342
3344
  A: {
3343
3345
  if (!o?.length) {
@@ -3355,21 +3357,21 @@ function Jr(t, A) {
3355
3357
  }
3356
3358
  const b = w;
3357
3359
  let u;
3358
- if (e[17] !== b || e[18] !== d || e[19] !== f) {
3360
+ if (e[17] !== b || e[18] !== g || e[19] !== p) {
3359
3361
  let m;
3360
- e[21] !== b || e[22] !== d ? (m = (v, y) => {
3362
+ e[21] !== b || e[22] !== g ? (m = (v, y) => {
3361
3363
  const k = b[y];
3362
3364
  if (!k?.length)
3363
- return d[y];
3364
- if (!d[y])
3365
+ return g[y];
3366
+ if (!g[y])
3365
3367
  return k.reduce(An, {});
3366
3368
  const B = k.reduce(Xr, {});
3367
- return gA(d[y], B);
3368
- }, e[21] = b, e[22] = d, e[23] = m) : m = e[23], u = f.map(m), e[17] = b, e[18] = d, e[19] = f, e[20] = u;
3369
+ return pA(g[y], B);
3370
+ }, e[21] = b, e[22] = g, e[23] = m) : m = e[23], u = p.map(m), e[17] = b, e[18] = g, e[19] = p, e[20] = u;
3369
3371
  } else
3370
3372
  u = e[20];
3371
- const g = u;
3372
- return s ? g[0] : g;
3373
+ const d = u;
3374
+ return s ? d[0] : d;
3373
3375
  }
3374
3376
  function Xr(t, A) {
3375
3377
  return XA(t, A);
@@ -3395,24 +3397,24 @@ function en(t, A) {
3395
3397
  sourceId: i,
3396
3398
  sourcesId: o
3397
3399
  } = r, s = !!i;
3398
- let a, l;
3399
- e[4] !== s || e[5] !== i || e[6] !== o ? (l = s ? [i] : o, e[4] = s, e[5] = i, e[6] = o, e[7] = l) : l = e[7];
3400
- const c = l;
3401
- if (!c)
3400
+ let l, a;
3401
+ e[4] !== s || e[5] !== i || e[6] !== o ? (a = s ? [i] : o, e[4] = s, e[5] = i, e[6] = o, e[7] = a) : a = e[7];
3402
+ const f = a;
3403
+ if (!f)
3402
3404
  throw new Error("Either sourceId or sourcesId must be provided");
3403
- a = c;
3404
- const h = qe(a);
3405
- let p;
3406
- if (e[8] !== n || e[9] !== h) {
3405
+ l = f;
3406
+ const c = qe(l);
3407
+ let h;
3408
+ if (e[8] !== n || e[9] !== c) {
3407
3409
  let w;
3408
3410
  e[11] !== n ? (w = (b) => {
3409
3411
  const u = b.widgets;
3410
3412
  return !u || !n ? null : (u.props.accessToken = n, u);
3411
- }, e[11] = n, e[12] = w) : w = e[12], p = h.map(w), e[8] = n, e[9] = h, e[10] = p;
3413
+ }, e[11] = n, e[12] = w) : w = e[12], h = c.map(w), e[8] = n, e[9] = c, e[10] = h;
3412
3414
  } else
3413
- p = e[10];
3414
- const d = p;
3415
- return s ? d[0] : d;
3415
+ h = e[10];
3416
+ const g = h;
3417
+ return s ? g[0] : g;
3416
3418
  }
3417
3419
  const tn = ["authorization", "cache-control"];
3418
3420
  function rn(t) {
@@ -3436,22 +3438,22 @@ function Ke(t) {
3436
3438
  const o = i;
3437
3439
  let s;
3438
3440
  A[2] !== r || A[3] !== o ? (s = r !== void 0 ? [r] : o, A[2] = r, A[3] = o, A[4] = s) : s = A[4];
3439
- const l = s, c = qe(l);
3440
- let f;
3441
- A[5] !== c ? (f = c.map(on), A[5] = c, A[6] = f) : f = A[6];
3442
- const h = f;
3441
+ const a = s, f = qe(a);
3443
3442
  let p;
3444
- A[7] !== c ? (p = c.map(nn), A[7] = c, A[8] = p) : p = A[8];
3445
- const d = p;
3443
+ A[5] !== f ? (p = f.map(on), A[5] = f, A[6] = p) : p = A[6];
3444
+ const c = p;
3445
+ let h;
3446
+ A[7] !== f ? (h = f.map(nn), A[7] = f, A[8] = h) : h = A[8];
3447
+ const g = h;
3446
3448
  let w;
3447
- if (A[9] !== e || A[10] !== h || A[11] !== d || A[12] !== l) {
3449
+ if (A[9] !== e || A[10] !== c || A[11] !== g || A[12] !== a) {
3448
3450
  let u;
3449
- A[14] !== e || A[15] !== h || A[16] !== d ? (u = (g, m) => {
3450
- const v = [g, ...e], y = d[m];
3451
+ A[14] !== e || A[15] !== c || A[16] !== g ? (u = (d, m) => {
3452
+ const v = [d, ...e], y = g[m];
3451
3453
  y && v.push(y);
3452
- const k = h[m];
3454
+ const k = c[m];
3453
3455
  return k && v.push(k), v;
3454
- }, A[14] = e, A[15] = h, A[16] = d, A[17] = u) : u = A[17], w = l.map(u), A[9] = e, A[10] = h, A[11] = d, A[12] = l, A[13] = w;
3456
+ }, A[14] = e, A[15] = c, A[16] = g, A[17] = u) : u = A[17], w = a.map(u), A[9] = e, A[10] = c, A[11] = g, A[12] = a, A[13] = w;
3455
3457
  } else
3456
3458
  w = A[13];
3457
3459
  const b = w;
@@ -3466,7 +3468,7 @@ function on(t) {
3466
3468
  if (!(!t || !("queryParameters" in t) || !t.queryParameters))
3467
3469
  return JSON.stringify(t.queryParameters);
3468
3470
  }
3469
- function EA(t, A, e, r) {
3471
+ function kA(t, A, e, r) {
3470
3472
  if (t) {
3471
3473
  if (!Array.isArray(t)) return t;
3472
3474
  if (t.length === 1) return t.at(0);
@@ -3476,7 +3478,7 @@ function EA(t, A, e, r) {
3476
3478
  }
3477
3479
  }
3478
3480
  function $e(t, A, e) {
3479
- return EA(t, A, e, "column");
3481
+ return kA(t, A, e, "column");
3480
3482
  }
3481
3483
  function sn(t) {
3482
3484
  const A = F(32), {
@@ -3486,55 +3488,55 @@ function sn(t) {
3486
3488
  sourcesId: i,
3487
3489
  widgetProps: o,
3488
3490
  additionalFilter: s
3489
- } = t, a = !!n;
3490
- let l;
3491
- A[0] !== a || A[1] !== n || A[2] !== i ? (l = a ? [n] : i, A[0] = a, A[1] = n, A[2] = i, A[3] = l) : l = A[3];
3492
- const c = l;
3493
- if (!c)
3491
+ } = t, l = !!n;
3492
+ let a;
3493
+ A[0] !== l || A[1] !== n || A[2] !== i ? (a = l ? [n] : i, A[0] = l, A[1] = n, A[2] = i, A[3] = a) : a = A[3];
3494
+ const f = a;
3495
+ if (!f)
3494
3496
  throw new Error("Either sourceId or sourcesId must be provided");
3495
- const f = Jr(c, s), h = en(r, c);
3496
- let p;
3497
- A[4] !== e || A[5] !== c ? (p = {
3497
+ const p = Jr(f, s), c = en(r, f);
3498
+ let h;
3499
+ A[4] !== e || A[5] !== f ? (h = {
3498
3500
  queryKeyPrefix: e,
3499
- sourcesId: c
3500
- }, A[4] = e, A[5] = c, A[6] = p) : p = A[6];
3501
- const d = Ke(p);
3501
+ sourcesId: f
3502
+ }, A[4] = e, A[5] = f, A[6] = h) : h = A[6];
3503
+ const g = Ke(h);
3502
3504
  let w;
3503
- A[7] !== f ? (w = f?.map(ln), A[7] = f, A[8] = w) : w = A[8];
3505
+ A[7] !== p ? (w = p?.map(ln), A[7] = p, A[8] = w) : w = A[8];
3504
3506
  const b = w;
3505
3507
  let u;
3506
- if (A[9] !== d || A[10] !== o) {
3508
+ if (A[9] !== g || A[10] !== o) {
3507
3509
  let B;
3508
- A[12] !== d.length || A[13] !== o ? (B = (M, C) => {
3509
- const S = "column" in o ? $e(o.column, C, d.length) : void 0, P = "operationExp" in o ? EA(o.operationExp, C, d.length, "operationExp") : void 0, D = "operationColumn" in o ? EA(o.operationColumn, C, d.length, "operationColumn") : void 0, x = {
3510
+ A[12] !== g.length || A[13] !== o ? (B = (M, C) => {
3511
+ const S = "column" in o ? $e(o.column, C, g.length) : void 0, x = "operationExp" in o ? kA(o.operationExp, C, g.length, "operationExp") : void 0, D = "operationColumn" in o ? kA(o.operationColumn, C, g.length, "operationColumn") : void 0, P = {
3510
3512
  ...o,
3511
3513
  ..."column" in o && {
3512
3514
  column: S
3513
3515
  },
3514
- ...P !== void 0 && {
3515
- operationExp: P
3516
+ ...x !== void 0 && {
3517
+ operationExp: x
3516
3518
  },
3517
3519
  ...D !== void 0 && {
3518
3520
  operationColumn: D
3519
3521
  }
3520
3522
  };
3521
- return JSON.stringify(x);
3522
- }, A[12] = d.length, A[13] = o, A[14] = B) : B = A[14], u = d.map(B), A[9] = d, A[10] = o, A[11] = u;
3523
+ return JSON.stringify(P);
3524
+ }, A[12] = g.length, A[13] = o, A[14] = B) : B = A[14], u = g.map(B), A[9] = g, A[10] = o, A[11] = u;
3523
3525
  } else
3524
3526
  u = A[11];
3525
- const g = u;
3527
+ const d = u;
3526
3528
  let m;
3527
- if (A[15] !== d || A[16] !== b || A[17] !== g) {
3529
+ if (A[15] !== g || A[16] !== b || A[17] !== d) {
3528
3530
  let B;
3529
- A[19] !== b || A[20] !== g ? (B = (M, C) => {
3530
- const S = g[C], P = [...M, S], D = b?.[C];
3531
- return D && P.push(D), P;
3532
- }, A[19] = b, A[20] = g, A[21] = B) : B = A[21], m = d.map(B), A[15] = d, A[16] = b, A[17] = g, A[18] = m;
3531
+ A[19] !== b || A[20] !== d ? (B = (M, C) => {
3532
+ const S = d[C], x = [...M, S], D = b?.[C];
3533
+ return D && x.push(D), x;
3534
+ }, A[19] = b, A[20] = d, A[21] = B) : B = A[21], m = g.map(B), A[15] = g, A[16] = b, A[17] = d, A[18] = m;
3533
3535
  } else
3534
3536
  m = A[18];
3535
3537
  const v = m;
3536
- if (a) {
3537
- const B = f?.[0], M = h[0] ?? null, C = v[0];
3538
+ if (l) {
3539
+ const B = p?.[0], M = c[0] ?? null, C = v[0];
3538
3540
  let S;
3539
3541
  return A[22] !== B || A[23] !== M || A[24] !== C ? (S = {
3540
3542
  mergedFilters: B,
@@ -3543,18 +3545,18 @@ function sn(t) {
3543
3545
  }, A[22] = B, A[23] = M, A[24] = C, A[25] = S) : S = A[25], S;
3544
3546
  }
3545
3547
  let y;
3546
- A[26] !== f ? (y = f ?? [], A[26] = f, A[27] = y) : y = A[27];
3548
+ A[26] !== p ? (y = p ?? [], A[26] = p, A[27] = y) : y = A[27];
3547
3549
  let k;
3548
- return A[28] !== v || A[29] !== y || A[30] !== h ? (k = {
3550
+ return A[28] !== v || A[29] !== y || A[30] !== c ? (k = {
3549
3551
  mergedFilters: y,
3550
- widgetModel: h,
3552
+ widgetModel: c,
3551
3553
  queryKey: v
3552
- }, A[28] = v, A[29] = y, A[30] = h, A[31] = k) : k = A[31], k;
3554
+ }, A[28] = v, A[29] = y, A[30] = c, A[31] = k) : k = A[31], k;
3553
3555
  }
3554
3556
  function ln(t) {
3555
3557
  return t ? JSON.stringify(t) : void 0;
3556
3558
  }
3557
- function lA({
3559
+ function aA({
3558
3560
  queryKeyPrefix: t,
3559
3561
  getWidgetMethod: A
3560
3562
  }) {
@@ -3562,66 +3564,66 @@ function lA({
3562
3564
  const i = F(26), {
3563
3565
  accessToken: o,
3564
3566
  sourceId: s,
3565
- sourcesId: a,
3566
- widgetProps: l,
3567
- additionalFilter: c,
3568
- useQueryProps: f
3567
+ sourcesId: l,
3568
+ widgetProps: a,
3569
+ additionalFilter: f,
3570
+ useQueryProps: p
3569
3571
  } = n;
3570
- let h;
3571
- i[0] !== f ? (h = f === void 0 ? {} : f, i[0] = f, i[1] = h) : h = i[1];
3572
- let p, d;
3573
- i[2] !== h ? ({
3574
- enabled: p,
3575
- ...d
3576
- } = h, i[2] = h, i[3] = p, i[4] = d) : (p = i[3], d = i[4]);
3577
- const w = p === void 0 ? !0 : p;
3572
+ let c;
3573
+ i[0] !== p ? (c = p === void 0 ? {} : p, i[0] = p, i[1] = c) : c = i[1];
3574
+ let h, g;
3575
+ i[2] !== c ? ({
3576
+ enabled: h,
3577
+ ...g
3578
+ } = c, i[2] = c, i[3] = h, i[4] = g) : (h = i[3], g = i[4]);
3579
+ const w = h === void 0 ? !0 : h;
3578
3580
  let b;
3579
- i[5] !== s || i[6] !== a ? (b = s ? [s] : a, i[5] = s, i[6] = a, i[7] = b) : b = i[7];
3581
+ i[5] !== s || i[6] !== l ? (b = s ? [s] : l, i[5] = s, i[6] = l, i[7] = b) : b = i[7];
3580
3582
  const u = b;
3581
- let g;
3582
- i[8] !== u || i[9] !== o || i[10] !== c || i[11] !== l ? (g = {
3583
+ let d;
3584
+ i[8] !== u || i[9] !== o || i[10] !== f || i[11] !== a ? (d = {
3583
3585
  queryKeyPrefix: t,
3584
3586
  accessToken: o,
3585
- additionalFilter: c,
3587
+ additionalFilter: f,
3586
3588
  sourcesId: u,
3587
- widgetProps: l
3588
- }, i[8] = u, i[9] = o, i[10] = c, i[11] = l, i[12] = g) : g = i[12];
3589
+ widgetProps: a
3590
+ }, i[8] = u, i[9] = o, i[10] = f, i[11] = a, i[12] = d) : d = i[12];
3589
3591
  const {
3590
3592
  mergedFilters: m,
3591
3593
  queryKey: v,
3592
3594
  widgetModel: y
3593
- } = sn(g);
3595
+ } = sn(d);
3594
3596
  let k;
3595
3597
  i[13] !== v ? (k = v.flat(), i[13] = v, i[14] = k) : k = i[14];
3596
3598
  let B;
3597
- i[15] !== u || i[16] !== m || i[17] !== s || i[18] !== y || i[19] !== l ? (B = async (P) => {
3599
+ i[15] !== u || i[16] !== m || i[17] !== s || i[18] !== y || i[19] !== a ? (B = async (x) => {
3598
3600
  const {
3599
3601
  signal: D
3600
- } = P, x = u.map((_, T) => {
3601
- const L = y?.[T];
3602
- if (!L)
3602
+ } = x, P = u.map((_, T) => {
3603
+ const O = y?.[T];
3604
+ if (!O)
3603
3605
  return Promise.reject(new Error("widgetModel is not available"));
3604
- const O = A(L), z = "column" in l ? $e(l.column, T, u.length) : void 0, G = "operationExp" in l ? EA(l.operationExp, T, u.length, "operationExp") : void 0, U = "operationColumn" in l ? EA(l.operationColumn, T, u.length, "operationColumn") : void 0, V = "spatialFilter" in l ? EA(l.spatialFilter, T, u.length, "spatialFilter") : void 0, q = {
3605
- ...l,
3606
- ..."column" in l && {
3606
+ const L = A(O), z = "column" in a ? $e(a.column, T, u.length) : void 0, U = "operationExp" in a ? kA(a.operationExp, T, u.length, "operationExp") : void 0, G = "operationColumn" in a ? kA(a.operationColumn, T, u.length, "operationColumn") : void 0, V = "spatialFilter" in a ? kA(a.spatialFilter, T, u.length, "spatialFilter") : void 0, q = {
3607
+ ...a,
3608
+ ..."column" in a && {
3607
3609
  column: z
3608
3610
  },
3609
- ...G !== void 0 && {
3610
- operationExp: G
3611
- },
3612
3611
  ...U !== void 0 && {
3613
- operationColumn: U
3612
+ operationExp: U
3613
+ },
3614
+ ...G !== void 0 && {
3615
+ operationColumn: G
3614
3616
  },
3615
3617
  ...V !== void 0 && {
3616
3618
  spatialFilter: V
3617
3619
  }
3618
3620
  };
3619
- return O({
3621
+ return L({
3620
3622
  ...q,
3621
3623
  filters: m?.[T],
3622
3624
  signal: D
3623
3625
  });
3624
- }), R = await Promise.allSettled(x), N = [];
3626
+ }), R = await Promise.allSettled(P), N = [];
3625
3627
  let E;
3626
3628
  for (const [_, T] of R.entries()) {
3627
3629
  if (T.status === "fulfilled") {
@@ -3636,15 +3638,15 @@ function lA({
3636
3638
  if (E)
3637
3639
  throw E;
3638
3640
  return s ? N.at(0) : N;
3639
- }, i[15] = u, i[16] = m, i[17] = s, i[18] = y, i[19] = l, i[20] = B) : B = i[20];
3641
+ }, i[15] = u, i[16] = m, i[17] = s, i[18] = y, i[19] = a, i[20] = B) : B = i[20];
3640
3642
  const M = !!y.length && w;
3641
3643
  let C;
3642
- return i[21] !== k || i[22] !== B || i[23] !== M || i[24] !== d ? (C = {
3644
+ return i[21] !== k || i[22] !== B || i[23] !== M || i[24] !== g ? (C = {
3643
3645
  queryKey: k,
3644
3646
  queryFn: B,
3645
3647
  enabled: M,
3646
- ...d
3647
- }, i[21] = k, i[22] = B, i[23] = M, i[24] = d, i[25] = C) : C = i[25], Ie(C);
3648
+ ...g
3649
+ }, i[21] = k, i[22] = B, i[23] = M, i[24] = g, i[25] = C) : C = i[25], Ie(C);
3648
3650
  }
3649
3651
  function r(n) {
3650
3652
  const i = F(3), o = e(n);
@@ -3659,7 +3661,7 @@ function lA({
3659
3661
  const {
3660
3662
  useModelHook: ki,
3661
3663
  ModelComponent: Ci
3662
- } = lA({
3664
+ } = aA({
3663
3665
  queryKeyPrefix: ["aggregations"],
3664
3666
  getWidgetMethod: (t) => (A) => {
3665
3667
  const e = A.aggregations;
@@ -3700,55 +3702,55 @@ function an(t) {
3700
3702
  const {
3701
3703
  useModelHook: Bi,
3702
3704
  ModelComponent: _i
3703
- } = lA({
3705
+ } = aA({
3704
3706
  queryKeyPrefix: ["categories"],
3705
3707
  getWidgetMethod: (t) => (A) => t.getCategories(A)
3706
3708
  }), {
3707
3709
  useModelHook: Mi,
3708
3710
  ModelComponent: Si
3709
- } = lA({
3711
+ } = aA({
3710
3712
  queryKeyPrefix: ["features"],
3711
3713
  getWidgetMethod: (t) => (A) => t.getFeatures(A)
3712
3714
  }), {
3713
3715
  useModelHook: xi,
3714
3716
  ModelComponent: Di
3715
- } = lA({
3717
+ } = aA({
3716
3718
  queryKeyPrefix: ["formula"],
3717
3719
  getWidgetMethod: (t) => (A) => t.getFormula(A)
3718
3720
  }), {
3719
3721
  useModelHook: Pi,
3720
3722
  ModelComponent: Ti
3721
- } = lA({
3723
+ } = aA({
3722
3724
  queryKeyPrefix: ["histogram"],
3723
3725
  getWidgetMethod: (t) => (A) => t.getHistogram(A)
3724
3726
  }), {
3725
3727
  useModelHook: Li,
3726
3728
  ModelComponent: Ii
3727
- } = lA({
3729
+ } = aA({
3728
3730
  queryKeyPrefix: ["range"],
3729
3731
  getWidgetMethod: (t) => (A) => t.getRange(A)
3730
3732
  }), {
3731
3733
  useModelHook: Qi,
3732
3734
  ModelComponent: Oi
3733
- } = lA({
3735
+ } = aA({
3734
3736
  queryKeyPrefix: ["scatter"],
3735
3737
  getWidgetMethod: (t) => (A) => t.getScatter(A)
3736
3738
  }), {
3737
3739
  useModelHook: Fi,
3738
3740
  ModelComponent: Ri
3739
- } = lA({
3741
+ } = aA({
3740
3742
  queryKeyPrefix: ["spread"],
3741
3743
  getWidgetMethod: (t) => (A) => t.getRange(A)
3742
3744
  }), {
3743
3745
  useModelHook: Ni,
3744
3746
  ModelComponent: Ui
3745
- } = lA({
3747
+ } = aA({
3746
3748
  queryKeyPrefix: ["table"],
3747
3749
  getWidgetMethod: (t) => (A) => t.getTable(A)
3748
3750
  }), {
3749
3751
  useModelHook: Gi,
3750
3752
  ModelComponent: zi
3751
- } = lA({
3753
+ } = aA({
3752
3754
  queryKeyPrefix: ["timeSeries"],
3753
3755
  getWidgetMethod: (t) => (A) => t.getTimeSeries(A)
3754
3756
  }), ji = "ps";
@@ -3762,18 +3764,18 @@ function Vi(t) {
3762
3764
  let o;
3763
3765
  A[0] !== n ? (o = n === void 0 ? [] : n, A[0] = n, A[1] = o) : o = A[1];
3764
3766
  const s = o;
3765
- let a;
3766
- A[2] !== i ? (a = i === void 0 ? [] : i, A[2] = i, A[3] = a) : a = A[3];
3767
- const l = a;
3768
- let c;
3769
- A[4] !== e || A[5] !== l ? (c = /* @__PURE__ */ Y(sr, { values: l, children: e }), A[4] = e, A[5] = l, A[6] = c) : c = A[6];
3767
+ let l;
3768
+ A[2] !== i ? (l = i === void 0 ? [] : i, A[2] = i, A[3] = l) : l = A[3];
3769
+ const a = l;
3770
3770
  let f;
3771
- A[7] !== s || A[8] !== c ? (f = /* @__PURE__ */ Y(F0, { values: s, children: c }), A[7] = s, A[8] = c, A[9] = f) : f = A[9];
3772
- let h;
3773
- return A[10] !== r || A[11] !== f ? (h = /* @__PURE__ */ Y(_0, { values: r, children: f }), A[10] = r, A[11] = f, A[12] = h) : h = A[12], h;
3771
+ A[4] !== e || A[5] !== a ? (f = /* @__PURE__ */ Y(sr, { values: a, children: e }), A[4] = e, A[5] = a, A[6] = f) : f = A[6];
3772
+ let p;
3773
+ A[7] !== s || A[8] !== f ? (p = /* @__PURE__ */ Y(F0, { values: s, children: f }), A[7] = s, A[8] = f, A[9] = p) : p = A[9];
3774
+ let c;
3775
+ return A[10] !== r || A[11] !== p ? (c = /* @__PURE__ */ Y(_0, { values: r, children: p }), A[10] = r, A[11] = p, A[12] = c) : c = A[12], c;
3774
3776
  }
3775
3777
  function Hi(t, A) {
3776
- const e = F(19), r = kA(fn), n = kA(cn);
3778
+ const e = F(19), r = CA(fn), n = CA(cn);
3777
3779
  let i;
3778
3780
  if (e[0] !== r || e[1] !== t) {
3779
3781
  let b;
@@ -3783,55 +3785,55 @@ function Hi(t, A) {
3783
3785
  const o = i;
3784
3786
  let s;
3785
3787
  e[5] !== A || e[6] !== o ? (s = o.map(A), e[5] = A, e[6] = o, e[7] = s) : s = e[7];
3786
- const a = s;
3787
- let l;
3788
- e[8] !== n ? (l = (b) => {
3788
+ const l = s;
3789
+ let a;
3790
+ e[8] !== n ? (a = (b) => {
3789
3791
  const {
3790
3792
  id: u,
3791
- visible: g,
3793
+ visible: d,
3792
3794
  ...m
3793
3795
  } = b;
3794
3796
  n(u, {
3795
3797
  props: {
3796
- visible: g
3798
+ visible: d
3797
3799
  },
3798
3800
  legend: m
3799
3801
  });
3800
- }, e[8] = n, e[9] = l) : l = e[9];
3801
- const c = l;
3802
- let f;
3803
- e[10] !== n ? (f = (b) => {
3802
+ }, e[8] = n, e[9] = a) : a = e[9];
3803
+ const f = a;
3804
+ let p;
3805
+ e[10] !== n ? (p = (b) => {
3804
3806
  const {
3805
3807
  id: u,
3806
- collapsed: g
3808
+ collapsed: d
3807
3809
  } = b;
3808
3810
  n(u, {
3809
3811
  legend: {
3810
- collapsed: g
3812
+ collapsed: d
3811
3813
  }
3812
3814
  });
3813
- }, e[10] = n, e[11] = f) : f = e[11];
3814
- const h = f;
3815
- let p;
3816
- e[12] !== n ? (p = (b) => {
3815
+ }, e[10] = n, e[11] = p) : p = e[11];
3816
+ const c = p;
3817
+ let h;
3818
+ e[12] !== n ? (h = (b) => {
3817
3819
  const {
3818
3820
  id: u,
3819
- opacity: g
3821
+ opacity: d
3820
3822
  } = b;
3821
3823
  n(u, {
3822
3824
  props: {
3823
- opacity: g
3825
+ opacity: d
3824
3826
  }
3825
3827
  });
3826
- }, e[12] = n, e[13] = p) : p = e[13];
3827
- const d = p;
3828
+ }, e[12] = n, e[13] = h) : h = e[13];
3829
+ const g = h;
3828
3830
  let w;
3829
- return e[14] !== a || e[15] !== d || e[16] !== h || e[17] !== c ? (w = {
3830
- legend: a,
3831
- onChangeVisibility: c,
3832
- onChangeOpacity: d,
3833
- onChangeRowCollapse: h
3834
- }, e[14] = a, e[15] = d, e[16] = h, e[17] = c, e[18] = w) : w = e[18], w;
3831
+ return e[14] !== l || e[15] !== g || e[16] !== c || e[17] !== f ? (w = {
3832
+ legend: l,
3833
+ onChangeVisibility: f,
3834
+ onChangeOpacity: g,
3835
+ onChangeRowCollapse: c
3836
+ }, e[14] = l, e[15] = g, e[16] = c, e[17] = f, e[18] = w) : w = e[18], w;
3835
3837
  }
3836
3838
  function un(t) {
3837
3839
  return !!t?.legend;
@@ -3845,16 +3847,16 @@ function fn(t) {
3845
3847
  function Yi({
3846
3848
  mapId: t
3847
3849
  }) {
3848
- const [A, e] = cA(void 0), [r, n] = cA(!1), [i, o] = cA(void 0), s = I((u) => u.maps[t]?.basemap), a = I((u) => u.getDeckInstance), l = I((u) => u.getOverlayInstance), c = I((u) => u.areLayersLoaded[t]), h = I((u) => u.maps[t]?.isLoaded) && c, {
3849
- type: p
3850
- } = _A[s], d = p === uA.googleMaps, w = vA(async () => {
3851
- const u = a(t), g = l(t);
3850
+ const [A, e] = cA(void 0), [r, n] = cA(!1), [i, o] = cA(void 0), s = I((u) => u.maps[t]?.basemap), l = I((u) => u.getDeckInstance), a = I((u) => u.getOverlayInstance), f = I((u) => u.areLayersLoaded[t]), c = I((u) => u.maps[t]?.isLoaded) && f, {
3851
+ type: h
3852
+ } = MA[s], g = h === uA.googleMaps, w = EA(async () => {
3853
+ const u = l(t), d = a(t);
3852
3854
  try {
3853
3855
  const m = document.createElement("canvas");
3854
3856
  m.width = u.width ?? 0, m.height = u.height ?? 0;
3855
3857
  const v = m.getContext("2d");
3856
- if (d) {
3857
- const k = g;
3858
+ if (g) {
3859
+ const k = d;
3858
3860
  if (k.getRenderingType() !== "RASTER")
3859
3861
  throw new Error("Only raster type is supported for Google Maps");
3860
3862
  const B = await A0(k.getDiv(), {
@@ -3862,7 +3864,7 @@ function Yi({
3862
3864
  });
3863
3865
  v?.drawImage(B, 0, 0, u.width, u.height);
3864
3866
  } else {
3865
- const k = g;
3867
+ const k = d;
3866
3868
  k.redraw(), v?.drawImage(k.getMap().getCanvas(), 0, 0, u.width, u.height);
3867
3869
  }
3868
3870
  u?.redraw("screenshot"), v?.drawImage(u.getCanvas(), 0, 0, u.width, u.height);
@@ -3873,11 +3875,11 @@ function Yi({
3873
3875
  } finally {
3874
3876
  n(!1);
3875
3877
  }
3876
- }, [a, d, t, l]);
3878
+ }, [l, g, t, a]);
3877
3879
  return {
3878
- takeScreenshot: vA(() => {
3879
- o(void 0), n(!0), h && w();
3880
- }, [w, h]),
3880
+ takeScreenshot: EA(() => {
3881
+ o(void 0), n(!0), c && w();
3882
+ }, [w, c]),
3881
3883
  isLoading: r,
3882
3884
  screenshot: A,
3883
3885
  error: i
@@ -3901,14 +3903,14 @@ function qi(t) {
3901
3903
  A[4] !== e ? (s = {
3902
3904
  mapId: e
3903
3905
  }, A[4] = e, A[5] = s) : s = A[5];
3904
- const a = dn(s), l = o ?? a ?? n;
3905
- let c;
3906
- return A[6] !== o || A[7] !== a || A[8] !== l || A[9] !== n ? (c = {
3907
- spatialFilter: l,
3908
- staticSpatialFilter: a,
3906
+ const l = dn(s), a = o ?? l ?? n;
3907
+ let f;
3908
+ return A[6] !== o || A[7] !== l || A[8] !== a || A[9] !== n ? (f = {
3909
+ spatialFilter: a,
3910
+ staticSpatialFilter: l,
3909
3911
  lassoToolsSpatialFilter: o,
3910
3912
  viewportSpatialFilter: n
3911
- }, A[6] = o, A[7] = a, A[8] = l, A[9] = n, A[10] = c) : c = A[10], c;
3913
+ }, A[6] = o, A[7] = l, A[8] = a, A[9] = n, A[10] = f) : f = A[10], f;
3912
3914
  }
3913
3915
  function Ze(t) {
3914
3916
  const A = F(4), {
@@ -3934,7 +3936,7 @@ function hn(t) {
3934
3936
  } = t;
3935
3937
  let r;
3936
3938
  A[0] !== e ? (r = (o) => o.data[e]?.values, A[0] = e, A[1] = r) : r = A[1];
3937
- const n = W(r);
3939
+ const n = K(r);
3938
3940
  let i;
3939
3941
  if (A[2] !== n) {
3940
3942
  A: {
@@ -3945,7 +3947,7 @@ function hn(t) {
3945
3947
  i = void 0;
3946
3948
  break A;
3947
3949
  }
3948
- i = MA(o.map(gn)).geometry;
3950
+ i = SA(o.map(gn)).geometry;
3949
3951
  }
3950
3952
  A[2] = n, A[3] = i;
3951
3953
  } else
@@ -3974,7 +3976,7 @@ function dn(t) {
3974
3976
  let o;
3975
3977
  if (A[2] !== n) {
3976
3978
  const s = Object.values(n).filter(wn).flatMap(mn);
3977
- o = MA(s), A[2] = n, A[3] = o;
3979
+ o = SA(s), A[2] = n, A[3] = o;
3978
3980
  } else
3979
3981
  o = A[3];
3980
3982
  i = o.geometry;
@@ -4003,19 +4005,19 @@ function Wi(t) {
4003
4005
  A[4] !== e ? (s = {
4004
4006
  mapId: e
4005
4007
  }, A[4] = e, A[5] = s) : s = A[5];
4006
- const a = yn(s);
4007
- let l;
4008
- A[6] !== e ? (l = {
4008
+ const l = yn(s);
4009
+ let a;
4010
+ A[6] !== e ? (a = {
4009
4011
  mapId: e
4010
- }, A[6] = e, A[7] = l) : l = A[7];
4011
- const c = _n(l), f = a.length ? a : c.length ? c : o;
4012
- let h;
4013
- return A[8] !== a || A[9] !== c || A[10] !== f || A[11] !== o ? (h = {
4014
- spatialFilter: f,
4015
- staticSpatialFilter: c,
4016
- lassoToolsSpatialFilter: a,
4012
+ }, A[6] = e, A[7] = a) : a = A[7];
4013
+ const f = _n(a), p = l.length ? l : f.length ? f : o;
4014
+ let c;
4015
+ return A[8] !== l || A[9] !== f || A[10] !== p || A[11] !== o ? (c = {
4016
+ spatialFilter: p,
4017
+ staticSpatialFilter: f,
4018
+ lassoToolsSpatialFilter: l,
4017
4019
  viewportSpatialFilter: o
4018
- }, A[8] = a, A[9] = c, A[10] = f, A[11] = o, A[12] = h) : h = A[12], h;
4020
+ }, A[8] = l, A[9] = f, A[10] = p, A[11] = o, A[12] = c) : c = A[12], c;
4019
4021
  }
4020
4022
  const ke = /* @__PURE__ */ new Map();
4021
4023
  function yn(t) {
@@ -4024,56 +4026,56 @@ function yn(t) {
4024
4026
  groupIds: r
4025
4027
  } = t;
4026
4028
  let n;
4027
- A[0] !== e ? (n = (l) => l.data[e]?.values, A[0] = e, A[1] = n) : n = A[1];
4028
- const i = W(n);
4029
+ A[0] !== e ? (n = (a) => a.data[e]?.values, A[0] = e, A[1] = n) : n = A[1];
4030
+ const i = K(n);
4029
4031
  let o;
4030
4032
  if (A[2] !== i) {
4031
4033
  A: {
4032
- const l = ee({
4034
+ const a = ee({
4033
4035
  values: i
4034
4036
  }).filter(Bn);
4035
- if (!l?.length) {
4036
- let c;
4037
- A[4] === Symbol.for("react.memo_cache_sentinel") ? (c = {}, A[4] = c) : c = A[4], o = c;
4037
+ if (!a?.length) {
4038
+ let f;
4039
+ A[4] === Symbol.for("react.memo_cache_sentinel") ? (f = {}, A[4] = f) : f = A[4], o = f;
4038
4040
  break A;
4039
4041
  }
4040
- o = l.reduce(Cn, {});
4042
+ o = a.reduce(Cn, {});
4041
4043
  }
4042
4044
  A[2] = i, A[3] = o;
4043
4045
  } else
4044
4046
  o = A[3];
4045
4047
  const s = o;
4046
- let a;
4048
+ let l;
4047
4049
  if (A[5] !== r || A[6] !== s || A[7] !== e) {
4048
- a = [];
4049
- let l = ke.get(e);
4050
- l || (l = /* @__PURE__ */ new Map(), ke.set(e, l));
4051
- const c = Object.keys(s).map(Number);
4052
- let f = [...c].sort(kn);
4050
+ l = [];
4051
+ let a = ke.get(e);
4052
+ a || (a = /* @__PURE__ */ new Map(), ke.set(e, a));
4053
+ const f = Object.keys(s).map(Number);
4054
+ let p = [...f].sort(kn);
4053
4055
  if (r && r.length > 0) {
4054
- let p;
4055
- A[9] !== r ? (p = (d) => r.includes(d), A[9] = r, A[10] = p) : p = A[10], f = f.filter(p);
4056
+ let h;
4057
+ A[9] !== r ? (h = (g) => r.includes(g), A[9] = r, A[10] = h) : h = A[10], p = p.filter(h);
4056
4058
  }
4057
- for (const p of f) {
4058
- const d = s[p];
4059
- if (d && d.length > 0) {
4060
- const w = d.map(En).join("|"), b = `${p}:${w}`;
4061
- l.has(b) || l.set(b, MA(d.map(vn)).geometry), a.push(l.get(b));
4059
+ for (const h of p) {
4060
+ const g = s[h];
4061
+ if (g && g.length > 0) {
4062
+ const w = g.map(En).join("|"), b = `${h}:${w}`;
4063
+ a.has(b) || a.set(b, SA(g.map(vn)).geometry), l.push(a.get(b));
4062
4064
  }
4063
4065
  }
4064
- const h = new Set(c.filter((p) => {
4065
- const d = s[p];
4066
- return d && d.length > 0;
4067
- }).map((p) => {
4068
- const w = s[p].map(bn).join("|");
4069
- return `${p}:${w}`;
4066
+ const c = new Set(f.filter((h) => {
4067
+ const g = s[h];
4068
+ return g && g.length > 0;
4069
+ }).map((h) => {
4070
+ const w = s[h].map(bn).join("|");
4071
+ return `${h}:${w}`;
4070
4072
  }));
4071
- for (const p of l.keys())
4072
- h.has(p) || l.delete(p);
4073
- A[5] = r, A[6] = s, A[7] = e, A[8] = a;
4073
+ for (const h of a.keys())
4074
+ c.has(h) || a.delete(h);
4075
+ A[5] = r, A[6] = s, A[7] = e, A[8] = l;
4074
4076
  } else
4075
- a = A[8];
4076
- return a;
4077
+ l = A[8];
4078
+ return l;
4077
4079
  }
4078
4080
  function bn(t) {
4079
4081
  return `${t.id}:${t.properties.visible ? "1" : "0"}`;
@@ -4101,54 +4103,54 @@ function _n(t) {
4101
4103
  groupIds: r
4102
4104
  } = t;
4103
4105
  let n;
4104
- A[0] !== e ? (n = (l) => l.spatialFilter[e], A[0] = e, A[1] = n) : n = A[1];
4106
+ A[0] !== e ? (n = (a) => a.spatialFilter[e], A[0] = e, A[1] = n) : n = A[1];
4105
4107
  const i = I(n);
4106
4108
  let o;
4107
4109
  A: {
4108
4110
  if (!i || !Object.keys(i).length) {
4109
- let c;
4110
- A[2] === Symbol.for("react.memo_cache_sentinel") ? (c = {}, A[2] = c) : c = A[2], o = c;
4111
+ let f;
4112
+ A[2] === Symbol.for("react.memo_cache_sentinel") ? (f = {}, A[2] = f) : f = A[2], o = f;
4111
4113
  break A;
4112
4114
  }
4113
- let l;
4114
- A[3] !== i ? (l = Object.values(i).filter(Tn).reduce(Pn, {}), A[3] = i, A[4] = l) : l = A[4], o = l;
4115
+ let a;
4116
+ A[3] !== i ? (a = Object.values(i).filter(Tn).reduce(Pn, {}), A[3] = i, A[4] = a) : a = A[4], o = a;
4115
4117
  }
4116
4118
  const s = o;
4117
- let a;
4119
+ let l;
4118
4120
  if (A[5] !== r || A[6] !== s || A[7] !== e) {
4119
- a = [];
4120
- let l = Ce.get(e);
4121
- l || (l = /* @__PURE__ */ new Map(), Ce.set(e, l));
4122
- const c = Object.keys(s).map(Number);
4123
- let f = [...c].sort(Dn);
4121
+ l = [];
4122
+ let a = Ce.get(e);
4123
+ a || (a = /* @__PURE__ */ new Map(), Ce.set(e, a));
4124
+ const f = Object.keys(s).map(Number);
4125
+ let p = [...f].sort(Dn);
4124
4126
  if (r && r.length > 0) {
4125
- let p;
4126
- A[9] !== r ? (p = (d) => r.includes(d), A[9] = r, A[10] = p) : p = A[10], f = f.filter(p);
4127
+ let h;
4128
+ A[9] !== r ? (h = (g) => r.includes(g), A[9] = r, A[10] = h) : h = A[10], p = p.filter(h);
4127
4129
  }
4128
- for (const p of f) {
4129
- const d = s[p];
4130
- if (d && d.length > 0) {
4131
- const w = d.map(xn).join("|"), b = `static:${p}:${w}`;
4132
- if (!l.has(b)) {
4133
- const u = d.flatMap(Sn);
4134
- l.set(b, MA(u).geometry);
4130
+ for (const h of p) {
4131
+ const g = s[h];
4132
+ if (g && g.length > 0) {
4133
+ const w = g.map(xn).join("|"), b = `static:${h}:${w}`;
4134
+ if (!a.has(b)) {
4135
+ const u = g.flatMap(Sn);
4136
+ a.set(b, SA(u).geometry);
4135
4137
  }
4136
- a.push(l.get(b));
4138
+ l.push(a.get(b));
4137
4139
  }
4138
4140
  }
4139
- const h = new Set(c.filter((p) => {
4140
- const d = s[p];
4141
- return d && d.length > 0;
4142
- }).map((p) => {
4143
- const w = s[p].map(Mn).join("|");
4144
- return `static:${p}:${w}`;
4141
+ const c = new Set(f.filter((h) => {
4142
+ const g = s[h];
4143
+ return g && g.length > 0;
4144
+ }).map((h) => {
4145
+ const w = s[h].map(Mn).join("|");
4146
+ return `static:${h}:${w}`;
4145
4147
  }));
4146
- for (const p of l.keys())
4147
- h.has(p) || l.delete(p);
4148
- A[5] = r, A[6] = s, A[7] = e, A[8] = a;
4148
+ for (const h of a.keys())
4149
+ c.has(h) || a.delete(h);
4150
+ A[5] = r, A[6] = s, A[7] = e, A[8] = l;
4149
4151
  } else
4150
- a = A[8];
4151
- return a;
4152
+ l = A[8];
4153
+ return l;
4152
4154
  }
4153
4155
  function Mn(t) {
4154
4156
  return `${t.type}:${JSON.stringify(t.coordinates).length}`;
@@ -4169,21 +4171,21 @@ function Pn(t, A) {
4169
4171
  function Tn(t) {
4170
4172
  return t != null;
4171
4173
  }
4172
- const dA = {
4174
+ const mA = {
4173
4175
  currency: "CURRENCY",
4174
4176
  default: "DEFAULT",
4175
4177
  number: "NUMBER"
4176
4178
  }, Be = {
4177
- [dA.currency]: {
4178
- type: dA.currency,
4179
+ [mA.currency]: {
4180
+ type: mA.currency,
4179
4181
  format: (t, A) => It(t, A)
4180
4182
  },
4181
- [dA.number]: {
4182
- type: dA.number,
4183
+ [mA.number]: {
4184
+ type: mA.number,
4183
4185
  format: (t, A) => Te(t, A)
4184
4186
  },
4185
- [dA.default]: {
4186
- type: dA.default,
4187
+ [mA.default]: {
4188
+ type: mA.default,
4187
4189
  format: (t) => t.toLocaleString()
4188
4190
  }
4189
4191
  };
@@ -4196,14 +4198,14 @@ function Ki({
4196
4198
  title: i,
4197
4199
  getColumnName: o = Fn,
4198
4200
  getFieldHtml: s = In,
4199
- getTitle: a = Ln,
4200
- getValue: l = Qn
4201
+ getTitle: l = Ln,
4202
+ getValue: a = Qn
4201
4203
  }) {
4202
- const c = i ? a(i) : "", h = e.reduce((p, d) => {
4203
- const w = A[d], b = t[d], u = l(b, r, w), g = n ? o(d) : "";
4204
- return p + s(g, u);
4204
+ const f = i ? l(i) : "", c = e.reduce((h, g) => {
4205
+ const w = A[g], b = t[g], u = a(b, r, w), d = n ? o(g) : "";
4206
+ return h + s(d, u);
4205
4207
  }, "");
4206
- return c + h;
4208
+ return f + c;
4207
4209
  }
4208
4210
  function Ln(t) {
4209
4211
  return `<h3 style="margin: 0"><strong>${t}</strong></h3></br>`;
@@ -4219,7 +4221,7 @@ function Qn(t, A, e) {
4219
4221
  }
4220
4222
  }
4221
4223
  function On(t) {
4222
- return typeof t == "function" ? t : ((t && Be[t]) ?? Be[dA.default]).format;
4224
+ return typeof t == "function" ? t : ((t && Be[t]) ?? Be[mA.default]).format;
4223
4225
  }
4224
4226
  function Fn(t) {
4225
4227
  return `<strong>${t}</strong>: `;
@@ -4246,7 +4248,7 @@ const Rn = {
4246
4248
  Polygon: (t) => Pt(t.coordinates),
4247
4249
  MultiPoint: (t) => Dt(t.coordinates),
4248
4250
  MultiLineString: (t) => xt(t.coordinates),
4249
- MultiPolygon: (t) => MA(t.coordinates)
4251
+ MultiPolygon: (t) => SA(t.coordinates)
4250
4252
  };
4251
4253
  function Zi(t) {
4252
4254
  const A = Rn[t.type], e = A?.(t);
@@ -4265,28 +4267,28 @@ function Ji(t) {
4265
4267
  maxZoom: o,
4266
4268
  minZoom: s
4267
4269
  } = I(n);
4268
- let a;
4269
- A[2] !== r ? (a = (y) => y.areLayersLoaded[r], A[2] = r, A[3] = a) : a = A[3];
4270
- const l = I(a), c = I(Gn), f = I(Un), h = I(Nn), p = !l;
4271
- let d;
4272
- A[4] !== r || A[5] !== c ? (d = (y) => c(r, y), A[4] = r, A[5] = c, A[6] = d) : d = A[6];
4273
- const w = d;
4270
+ let l;
4271
+ A[2] !== r ? (l = (y) => y.areLayersLoaded[r], A[2] = r, A[3] = l) : l = A[3];
4272
+ const a = I(l), f = I(Gn), p = I(Un), c = I(Nn), h = !a;
4273
+ let g;
4274
+ A[4] !== r || A[5] !== f ? (g = (y) => f(r, y), A[4] = r, A[5] = f, A[6] = g) : g = A[6];
4275
+ const w = g;
4274
4276
  let b;
4275
- A[7] !== f || A[8] !== r ? (b = (y) => f(r, y), A[7] = f, A[8] = r, A[9] = b) : b = A[9];
4277
+ A[7] !== p || A[8] !== r ? (b = (y) => p(r, y), A[7] = p, A[8] = r, A[9] = b) : b = A[9];
4276
4278
  const u = b;
4277
- let g;
4278
- A[10] !== r || A[11] !== h ? (g = () => h(r), A[10] = r, A[11] = h, A[12] = g) : g = A[12];
4279
- const m = g;
4279
+ let d;
4280
+ A[10] !== r || A[11] !== c ? (d = () => c(r), A[10] = r, A[11] = c, A[12] = d) : d = A[12];
4281
+ const m = d;
4280
4282
  let v;
4281
- return A[13] !== e || A[14] !== o || A[15] !== s || A[16] !== p || A[17] !== w || A[18] !== u || A[19] !== m || A[20] !== i ? (v = e({
4283
+ return A[13] !== e || A[14] !== o || A[15] !== s || A[16] !== h || A[17] !== w || A[18] !== u || A[19] !== m || A[20] !== i ? (v = e({
4282
4284
  zoom: i,
4283
4285
  maxZoom: o,
4284
4286
  minZoom: s,
4285
- isLoading: p,
4287
+ isLoading: h,
4286
4288
  setZoom: w,
4287
4289
  flyTo: u,
4288
4290
  resetViewState: m
4289
- }), A[13] = e, A[14] = o, A[15] = s, A[16] = p, A[17] = w, A[18] = u, A[19] = m, A[20] = i, A[21] = v) : v = A[21], v;
4291
+ }), A[13] = e, A[14] = o, A[15] = s, A[16] = h, A[17] = w, A[18] = u, A[19] = m, A[20] = i, A[21] = v) : v = A[21], v;
4290
4292
  }
4291
4293
  function Nn(t) {
4292
4294
  return t.resetViewState;
@@ -4308,19 +4310,19 @@ async function zn({
4308
4310
  ...o
4309
4311
  } = {},
4310
4312
  queryParameters: s,
4311
- params: a,
4312
- apiVersion: l = re
4313
+ params: l,
4314
+ apiVersion: a = re
4313
4315
  }) {
4314
- const c = `${t}/${l}/stats/${A}/${n}`;
4316
+ const f = `${t}/${a}/stats/${A}/${n}`;
4315
4317
  return He({
4316
4318
  accessToken: e,
4317
4319
  signal: i,
4318
- url: c,
4319
- method: wA.get,
4320
+ url: f,
4321
+ method: yA.get,
4320
4322
  params: {
4321
4323
  q: r,
4322
4324
  ...s,
4323
- ...a
4325
+ ...l
4324
4326
  },
4325
4327
  ...o
4326
4328
  });
@@ -4336,14 +4338,14 @@ async function jn({
4336
4338
  signal: o,
4337
4339
  ...s
4338
4340
  } = {},
4339
- apiVersion: a = re
4341
+ apiVersion: l = re
4340
4342
  }) {
4341
- const l = `${t}/${a}/stats/${A}/${r}/${n}`;
4343
+ const a = `${t}/${l}/stats/${A}/${r}/${n}`;
4342
4344
  return He({
4343
4345
  accessToken: e,
4344
4346
  signal: o,
4345
- url: l,
4346
- method: wA.get,
4347
+ url: a,
4348
+ method: yA.get,
4347
4349
  params: {
4348
4350
  ...i
4349
4351
  },
@@ -4359,23 +4361,23 @@ function Xi(t) {
4359
4361
  fetcherOptions: o,
4360
4362
  useQueryProps: s
4361
4363
  } = t;
4362
- let a;
4363
- A[0] !== s ? (a = s === void 0 ? {} : s, A[0] = s, A[1] = a) : a = A[1];
4364
- let l, c;
4365
- A[2] !== a ? ({
4366
- enabled: l,
4367
- ...c
4368
- } = a, A[2] = a, A[3] = l, A[4] = c) : (l = A[3], c = A[4]);
4369
- const f = l === void 0 ? !0 : l;
4370
- let h;
4371
- A[5] !== r ? (h = ["stats", r], A[5] = r, A[6] = h) : h = A[6];
4372
- const p = e?.id;
4373
- let d;
4374
- A[7] !== h || A[8] !== p ? (d = {
4375
- queryKeyPrefix: h,
4376
- sourceId: p
4377
- }, A[7] = h, A[8] = p, A[9] = d) : d = A[9];
4378
- const w = Ke(d);
4364
+ let l;
4365
+ A[0] !== s ? (l = s === void 0 ? {} : s, A[0] = s, A[1] = l) : l = A[1];
4366
+ let a, f;
4367
+ A[2] !== l ? ({
4368
+ enabled: a,
4369
+ ...f
4370
+ } = l, A[2] = l, A[3] = a, A[4] = f) : (a = A[3], f = A[4]);
4371
+ const p = a === void 0 ? !0 : a;
4372
+ let c;
4373
+ A[5] !== r ? (c = ["stats", r], A[5] = r, A[6] = c) : c = A[6];
4374
+ const h = e?.id;
4375
+ let g;
4376
+ A[7] !== c || A[8] !== h ? (g = {
4377
+ queryKeyPrefix: c,
4378
+ sourceId: h
4379
+ }, A[7] = c, A[8] = h, A[9] = g) : g = A[9];
4380
+ const w = Ke(g);
4379
4381
  let b;
4380
4382
  A[10] !== n || A[11] !== r || A[12] !== o || A[13] !== i || A[14] !== e ? (b = () => Vn({
4381
4383
  source: e,
@@ -4385,18 +4387,18 @@ function Xi(t) {
4385
4387
  fetcherOptions: o
4386
4388
  }), A[10] = n, A[11] = r, A[12] = o, A[13] = i, A[14] = e, A[15] = b) : b = A[15];
4387
4389
  let u;
4388
- return A[16] !== f || A[17] !== w || A[18] !== e || A[19] !== b || A[20] !== c ? (u = {
4390
+ return A[16] !== p || A[17] !== w || A[18] !== e || A[19] !== b || A[20] !== f ? (u = {
4389
4391
  queryKey: w,
4390
4392
  queryFn: b,
4391
- select(g) {
4393
+ select(d) {
4392
4394
  return {
4393
- ...g,
4394
- type: g.type.toLowerCase()
4395
+ ...d,
4396
+ type: d.type.toLowerCase()
4395
4397
  };
4396
4398
  },
4397
- enabled: !!e && f,
4398
- ...c
4399
- }, A[16] = f, A[17] = w, A[18] = e, A[19] = b, A[20] = c, A[21] = u) : u = A[21], Ie(u);
4399
+ enabled: !!e && p,
4400
+ ...f
4401
+ }, A[16] = p, A[17] = w, A[18] = e, A[19] = b, A[20] = f, A[21] = u) : u = A[21], Ie(u);
4400
4402
  }
4401
4403
  function Vn({
4402
4404
  source: t,
@@ -4489,8 +4491,8 @@ function qn({
4489
4491
  attribute: A
4490
4492
  }) {
4491
4493
  const e = t.reduce((o, s) => {
4492
- const a = s.properties?.[A];
4493
- return o.sum += a, o.max = Math.max(o.max, a), o.min = Math.min(o.min, a), o.values.push(a), o;
4494
+ const l = s.properties?.[A];
4495
+ return o.sum += l, o.max = Math.max(o.max, l), o.min = Math.min(o.min, l), o.values.push(l), o;
4494
4496
  }, {
4495
4497
  max: -1 / 0,
4496
4498
  min: 1 / 0,
@@ -4500,8 +4502,8 @@ function qn({
4500
4502
  for (let o = 3; o <= 20; o++) {
4501
4503
  n[o] = [];
4502
4504
  for (let s = 0; s <= o; s++) {
4503
- const a = Math.floor(s * (r.length - 1) / o), l = r[a];
4504
- l !== void 0 && n[o]?.push(l);
4505
+ const l = Math.floor(s * (r.length - 1) / o), a = r[l];
4506
+ a !== void 0 && n[o]?.push(a);
4505
4507
  }
4506
4508
  }
4507
4509
  return {
@@ -4534,7 +4536,7 @@ export {
4534
4536
  wi as BasemapsControls,
4535
4537
  pe as CONVERSIONS_UNITS,
4536
4538
  UA as CartoBasemapURL,
4537
- sA as CartoBasemaps,
4539
+ lA as CartoBasemaps,
4538
4540
  _i as CategoriesModel,
4539
4541
  S0 as CustomCompositeEditMode,
4540
4542
  Ae as CustomEditableGeojsonLayer,
@@ -4555,13 +4557,13 @@ export {
4555
4557
  Di as FormulaModel,
4556
4558
  NA as GmapsBasemap,
4557
4559
  Ti as HistogramModel,
4558
- CA as INTL_UNITS,
4560
+ BA as INTL_UNITS,
4559
4561
  rr as LassoTools,
4560
4562
  F0 as LassoToolsProvider,
4561
- _A as MAPS_BASEMAP,
4562
- mA as MAP_LASSO_TOOLS_LAYER_ID,
4563
+ MA as MAPS_BASEMAP,
4564
+ wA as MAP_LASSO_TOOLS_LAYER_ID,
4563
4565
  QA as MAP_MASK_LAYER_ID,
4564
- fA as MAP_MEASURE_LAYER_ID,
4566
+ hA as MAP_MEASURE_LAYER_ID,
4565
4567
  X0 as MEASUREMENT_TOOLS_UNITS_AREA,
4566
4568
  me as MEASUREMENT_TOOLS_UNITS_DISTANCE,
4567
4569
  tA as MEASUREMENT_TOOLS_UNITS_DISTANCE_VALUES,
@@ -4584,7 +4586,7 @@ export {
4584
4586
  O0 as createLassoToolsStore,
4585
4587
  B0 as createMapStore,
4586
4588
  or as createMeasurementToolsStore,
4587
- dA as formatterTypes,
4589
+ mA as formatterTypes,
4588
4590
  Zi as getCentroid,
4589
4591
  e0 as getCursorDefault,
4590
4592
  yi as getDeckController,
@@ -4608,8 +4610,8 @@ export {
4608
4610
  _n as useGroupedStaticSpatialFilters,
4609
4611
  Pi as useHistogram,
4610
4612
  hn as useLassoToolsSpatialFilter,
4611
- W as useLassoToolsState,
4612
- kA as useLayerStore,
4613
+ K as useLassoToolsState,
4614
+ CA as useLayerStore,
4613
4615
  _r as useLayers,
4614
4616
  Hi as useLegend,
4615
4617
  Yi as useMapScreenshot,