@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 +1017 -1015
- package/dist/index.js.map +1 -1
- package/dist/types/maps/google-maps.d.ts +1 -1
- package/dist/types/maps/map-libre.d.ts +1 -1
- package/dist/types/providers/map/types.d.ts +2 -2
- package/dist/types/types.d.ts +2 -0
- package/package.json +1 -1
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
|
|
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
|
|
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
|
|
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
|
-
},
|
|
28
|
+
}, lA = {
|
|
29
29
|
darkMatter: "darkMatter",
|
|
30
30
|
positron: "positron",
|
|
31
31
|
voyager: "voyager"
|
|
32
32
|
}, UA = {
|
|
33
|
-
[
|
|
34
|
-
[
|
|
35
|
-
[
|
|
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
|
-
},
|
|
40
|
-
[
|
|
41
|
-
url: UA[
|
|
39
|
+
}, MA = {
|
|
40
|
+
[lA.positron]: {
|
|
41
|
+
url: UA[lA.positron],
|
|
42
42
|
type: uA.maplibre
|
|
43
43
|
},
|
|
44
|
-
[
|
|
45
|
-
url: UA[
|
|
44
|
+
[lA.voyager]: {
|
|
45
|
+
url: UA[lA.voyager],
|
|
46
46
|
type: uA.maplibre
|
|
47
47
|
},
|
|
48
|
-
[
|
|
49
|
-
url: UA[
|
|
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(
|
|
80
|
-
let e, r, n, i, o, s, a,
|
|
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:
|
|
87
|
-
mapStyle:
|
|
88
|
-
parameters:
|
|
86
|
+
layers: l,
|
|
87
|
+
mapStyle: a,
|
|
88
|
+
parameters: g,
|
|
89
89
|
getCursor: n,
|
|
90
90
|
getTooltip: i,
|
|
91
|
-
onLoad:
|
|
92
|
-
|
|
91
|
+
onLoad: p,
|
|
92
|
+
onIdle: f,
|
|
93
|
+
onViewStateChange: c,
|
|
93
94
|
attributionProps: e,
|
|
94
|
-
...
|
|
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] =
|
|
96
|
-
let
|
|
97
|
-
A[
|
|
98
|
-
const
|
|
99
|
-
let
|
|
100
|
-
A[
|
|
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[
|
|
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[
|
|
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[
|
|
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[
|
|
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[
|
|
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
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
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,
|
|
155
|
+
let s, l;
|
|
155
156
|
A[3] !== n ? (s = () => (r.setMap(n), () => {
|
|
156
157
|
r.finalize();
|
|
157
|
-
}),
|
|
158
|
-
let
|
|
159
|
-
return A[6] !== t ? (
|
|
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
|
-
},
|
|
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(
|
|
165
|
-
let e, r, n, i, o, s, a,
|
|
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:
|
|
173
|
-
parameters:
|
|
173
|
+
overlayRef: f,
|
|
174
|
+
parameters: p,
|
|
174
175
|
controller: r,
|
|
175
|
-
onLoad:
|
|
176
|
+
onLoad: l,
|
|
177
|
+
onIdle: s,
|
|
176
178
|
onViewStateChange: a,
|
|
177
|
-
...
|
|
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] =
|
|
179
|
-
let
|
|
180
|
-
A[
|
|
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[
|
|
183
|
-
let
|
|
184
|
-
A[
|
|
185
|
-
apiKey:
|
|
186
|
-
APIProviderProps:
|
|
187
|
-
...
|
|
188
|
-
} =
|
|
189
|
-
let
|
|
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[
|
|
195
|
+
A[19] !== r ? (oA = {
|
|
194
196
|
dragPan: r,
|
|
195
197
|
doubleClickZoom: r,
|
|
196
198
|
scrollZoom: r
|
|
197
|
-
}, A[
|
|
199
|
+
}, A[19] = r, A[20] = oA) : oA = A[20], d = oA;
|
|
198
200
|
break A;
|
|
199
201
|
}
|
|
200
|
-
const X = r,
|
|
201
|
-
let
|
|
202
|
-
A[
|
|
203
|
-
dragPan:
|
|
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[
|
|
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
|
|
209
|
-
let
|
|
210
|
-
A[
|
|
211
|
-
const
|
|
212
|
-
let
|
|
213
|
-
A[
|
|
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:
|
|
217
|
+
detail: AA
|
|
216
218
|
} = X, {
|
|
217
219
|
center: Z,
|
|
218
|
-
zoom:
|
|
219
|
-
heading:
|
|
220
|
+
zoom: W,
|
|
221
|
+
heading: eA,
|
|
220
222
|
tilt: oA
|
|
221
|
-
} =
|
|
223
|
+
} = AA;
|
|
222
224
|
return {
|
|
223
|
-
maxZoom:
|
|
224
|
-
minZoom:
|
|
225
|
+
maxZoom: c.initialViewState?.maxZoom,
|
|
226
|
+
minZoom: c.initialViewState?.minZoom,
|
|
225
227
|
latitude: Z.lat,
|
|
226
228
|
longitude: Z.lng,
|
|
227
|
-
zoom:
|
|
228
|
-
bearing:
|
|
229
|
+
zoom: W - 1,
|
|
230
|
+
bearing: eA,
|
|
229
231
|
pitch: oA
|
|
230
232
|
};
|
|
231
|
-
}, A[
|
|
232
|
-
const
|
|
233
|
-
let
|
|
234
|
-
A[
|
|
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
|
-
},
|
|
239
|
-
|
|
240
|
-
latitude:
|
|
241
|
-
longitude:
|
|
242
|
-
zoom:
|
|
243
|
-
pitch:
|
|
244
|
-
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:
|
|
251
|
+
viewState: eA,
|
|
250
252
|
interactionState: {
|
|
251
253
|
isZooming: !0
|
|
252
254
|
}
|
|
253
255
|
});
|
|
254
|
-
}, A[
|
|
255
|
-
const
|
|
256
|
-
let
|
|
257
|
-
A[
|
|
258
|
-
const
|
|
259
|
-
|
|
260
|
-
}, A[
|
|
261
|
-
const
|
|
262
|
-
let
|
|
263
|
-
A[
|
|
264
|
-
lat:
|
|
265
|
-
lng:
|
|
266
|
-
}, A[
|
|
267
|
-
const
|
|
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[
|
|
270
|
-
|
|
271
|
+
A[39] !== C || A[40] !== l || A[41] !== c.initialViewState ? (L = () => {
|
|
272
|
+
l({
|
|
271
273
|
type: "load",
|
|
272
274
|
value: !0
|
|
273
|
-
}),
|
|
274
|
-
}, A[
|
|
275
|
-
const
|
|
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[
|
|
280
|
-
|
|
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[
|
|
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[
|
|
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[
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
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,
|
|
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:
|
|
326
|
-
id:
|
|
327
|
-
layers:
|
|
327
|
+
controller: l,
|
|
328
|
+
id: a,
|
|
329
|
+
layers: f,
|
|
328
330
|
gmapsProps: e,
|
|
329
|
-
getCursor:
|
|
330
|
-
getTooltip:
|
|
331
|
+
getCursor: p,
|
|
332
|
+
getTooltip: c,
|
|
331
333
|
onLoad: n,
|
|
332
|
-
onViewStateChange:
|
|
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] =
|
|
335
|
-
const
|
|
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] !==
|
|
338
|
-
const
|
|
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
|
-
} =
|
|
346
|
+
} = MA[g], x = S === uA.googleMaps;
|
|
345
347
|
let D;
|
|
346
|
-
A[16] === Symbol.for("react.memo_cache_sentinel") ? (D = (
|
|
347
|
-
const
|
|
348
|
-
M((z) => z.map((
|
|
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
|
|
352
|
+
const P = D;
|
|
351
353
|
let R, N;
|
|
352
354
|
A[17] === Symbol.for("react.memo_cache_sentinel") ? (R = () => () => {
|
|
353
|
-
|
|
355
|
+
P({
|
|
354
356
|
type: "load",
|
|
355
357
|
value: !1
|
|
356
|
-
}),
|
|
358
|
+
}), P({
|
|
357
359
|
type: "deckgl",
|
|
358
360
|
value: !1
|
|
359
361
|
});
|
|
360
|
-
}, 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
|
|
364
|
-
n?.(
|
|
365
|
-
}, _ = [B, n], A[19] = B, A[20] = n, A[21] = E, A[22] = _) : (E = A[21], _ = A[22]),
|
|
366
|
-
let
|
|
367
|
-
return A[23] !==
|
|
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] !==
|
|
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(
|
|
392
|
-
return A(
|
|
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
|
|
399
|
-
return
|
|
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,
|
|
409
|
-
return
|
|
410
|
+
function s(u, d) {
|
|
411
|
+
return d.clone !== !1 && d.isMergeableObject(u) ? w(o(u), u, d) : u;
|
|
410
412
|
}
|
|
411
|
-
function
|
|
412
|
-
return u.concat(
|
|
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
|
|
417
|
-
if (!
|
|
418
|
+
function a(u, d) {
|
|
419
|
+
if (!d.customMerge)
|
|
418
420
|
return w;
|
|
419
|
-
var m =
|
|
421
|
+
var m = d.customMerge(u);
|
|
420
422
|
return typeof m == "function" ? m : w;
|
|
421
423
|
}
|
|
422
|
-
function
|
|
423
|
-
return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(
|
|
424
|
-
return Object.propertyIsEnumerable.call(u,
|
|
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
|
|
428
|
-
return Object.keys(u).concat(
|
|
429
|
+
function p(u) {
|
|
430
|
+
return Object.keys(u).concat(f(u));
|
|
429
431
|
}
|
|
430
|
-
function
|
|
432
|
+
function c(u, d) {
|
|
431
433
|
try {
|
|
432
|
-
return
|
|
434
|
+
return d in u;
|
|
433
435
|
} catch {
|
|
434
436
|
return !1;
|
|
435
437
|
}
|
|
436
438
|
}
|
|
437
|
-
function
|
|
438
|
-
return
|
|
439
|
+
function h(u, d) {
|
|
440
|
+
return c(u, d) && !(Object.hasOwnProperty.call(u, d) && Object.propertyIsEnumerable.call(u, d));
|
|
439
441
|
}
|
|
440
|
-
function
|
|
442
|
+
function g(u, d, m) {
|
|
441
443
|
var v = {};
|
|
442
|
-
return m.isMergeableObject(u) &&
|
|
444
|
+
return m.isMergeableObject(u) && p(u).forEach(function(y) {
|
|
443
445
|
v[y] = s(u[y], m);
|
|
444
|
-
}),
|
|
445
|
-
|
|
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,
|
|
449
|
-
m = m || {}, m.arrayMerge = m.arrayMerge ||
|
|
450
|
-
var v = Array.isArray(
|
|
451
|
-
return k ? v ? m.arrayMerge(u,
|
|
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(
|
|
454
|
-
if (!Array.isArray(
|
|
455
|
+
w.all = function(d, m) {
|
|
456
|
+
if (!Array.isArray(d))
|
|
455
457
|
throw new Error("first argument should be an array");
|
|
456
|
-
return
|
|
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
|
|
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
|
-
} =
|
|
489
|
-
type:
|
|
490
|
-
} =
|
|
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:
|
|
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:
|
|
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 ??
|
|
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
|
|
541
|
-
if (!
|
|
542
|
-
const
|
|
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:
|
|
545
|
-
longitude:
|
|
546
|
-
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
|
-
},
|
|
555
|
+
}, l = s[n]?.layers ?? [], a = /* @__PURE__ */ new Set([...l, ...i]);
|
|
554
556
|
return s[n] = {
|
|
555
557
|
...s[n],
|
|
556
|
-
layers: [...
|
|
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
|
-
},
|
|
566
|
+
}, l = s[n]?.layers ?? [];
|
|
565
567
|
return s[n] = {
|
|
566
568
|
...s[n],
|
|
567
|
-
layers:
|
|
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 ?? {},
|
|
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:
|
|
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
|
|
623
|
-
e((
|
|
624
|
+
const l = new xe(s);
|
|
625
|
+
e((a) => ({
|
|
624
626
|
viewports: {
|
|
625
|
-
...
|
|
626
|
-
[n]:
|
|
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
|
|
728
|
-
if (!a || !
|
|
729
|
-
const [
|
|
730
|
-
if (
|
|
731
|
-
const
|
|
732
|
-
x:
|
|
733
|
-
y:
|
|
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 (!
|
|
738
|
-
const
|
|
739
|
-
...
|
|
740
|
-
x:
|
|
741
|
-
y:
|
|
742
|
-
},
|
|
743
|
-
|
|
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 = (
|
|
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 = (
|
|
788
|
-
const
|
|
789
|
-
let
|
|
790
|
-
return A[5] !== i || A[6] !== e || A[7] !==
|
|
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:
|
|
793
|
-
}), A[5] = i, A[6] = e, A[7] =
|
|
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
|
|
819
|
-
id:
|
|
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
|
-
},
|
|
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((
|
|
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:
|
|
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 = (
|
|
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 = (
|
|
949
|
-
const s = I(o),
|
|
950
|
-
type:
|
|
951
|
-
} =
|
|
952
|
-
let
|
|
953
|
-
A[4] !==
|
|
954
|
-
let
|
|
955
|
-
if (
|
|
956
|
-
const w =
|
|
957
|
-
|
|
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
|
|
963
|
+
return a(r, {
|
|
962
964
|
props: {
|
|
963
|
-
eventManager:
|
|
965
|
+
eventManager: g
|
|
964
966
|
}
|
|
965
967
|
}), () => {
|
|
966
|
-
|
|
968
|
+
g?.destroy(), g = null;
|
|
967
969
|
};
|
|
968
|
-
},
|
|
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 =
|
|
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 =
|
|
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: (
|
|
1061
|
+
dataComparator: (l, a) => l.features[0] === a.features[0]
|
|
1060
1062
|
});
|
|
1061
|
-
return
|
|
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:
|
|
1070
|
-
modeSelected:
|
|
1071
|
-
values:
|
|
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:
|
|
1077
|
-
modeSelected:
|
|
1078
|
-
values:
|
|
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
|
-
},
|
|
1099
|
+
}, l = s[n] ?? {
|
|
1098
1100
|
type: "mask"
|
|
1099
1101
|
};
|
|
1100
1102
|
return s[n] = {
|
|
1101
|
-
...
|
|
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
|
-
},
|
|
1120
|
-
return
|
|
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]:
|
|
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
|
|
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 =
|
|
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
|
|
1185
|
-
let
|
|
1186
|
-
A[4] !== e ? (
|
|
1187
|
-
const
|
|
1188
|
-
let
|
|
1189
|
-
A[6] !== e ? (
|
|
1190
|
-
const w =
|
|
1191
|
-
let u,
|
|
1192
|
-
A[8] !== i || A[9] !== e || A[10] !==
|
|
1193
|
-
const C = w[
|
|
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
|
-
},
|
|
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] !==
|
|
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] !==
|
|
1205
|
-
o(e, !!C),
|
|
1206
|
-
}, A[17] = e, A[18] = o, A[19] =
|
|
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] !==
|
|
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] !==
|
|
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
|
|
1215
|
-
A[38] !== e || A[39] !==
|
|
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:
|
|
1221
|
+
modeSelected: c,
|
|
1220
1222
|
values: {
|
|
1221
1223
|
mask: y
|
|
1222
1224
|
},
|
|
1223
1225
|
setValue: C,
|
|
1224
1226
|
setEnabled: S,
|
|
1225
|
-
setVisibility:
|
|
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] =
|
|
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"],
|
|
1304
|
-
let
|
|
1305
|
-
if (
|
|
1306
|
-
const
|
|
1307
|
-
let
|
|
1308
|
-
|
|
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
|
-
|
|
1311
|
-
let
|
|
1312
|
+
f = BA[A], p = fe(t, A, o);
|
|
1313
|
+
let c = `${Te(p, e, {
|
|
1312
1314
|
style: "unit",
|
|
1313
|
-
unit:
|
|
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" && (
|
|
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(),
|
|
1371
|
+
const s = this.getClickSequence(), l = [...s, s[0]];
|
|
1370
1372
|
this.area = le({
|
|
1371
1373
|
type: "Polygon",
|
|
1372
|
-
coordinates: [
|
|
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
|
|
1607
|
-
id:
|
|
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
|
-
},
|
|
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
|
-
[
|
|
1674
|
-
[
|
|
1675
|
-
[
|
|
1676
|
-
[
|
|
1675
|
+
[gA.squareMeter]: "m2",
|
|
1676
|
+
[gA.squareKilometer]: "km2",
|
|
1677
|
+
[gA.squareMile]: "mi2",
|
|
1678
|
+
[gA.squareFeet]: "ft2"
|
|
1677
1679
|
}, LA = {
|
|
1678
|
-
[j.meter]:
|
|
1679
|
-
[j.kilometer]:
|
|
1680
|
-
[j.mile]:
|
|
1681
|
-
[j.feet]:
|
|
1682
|
-
},
|
|
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 = [
|
|
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),
|
|
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:
|
|
1762
|
-
}),
|
|
1763
|
+
layerId: wA
|
|
1764
|
+
}), $(() => {
|
|
1763
1765
|
const E = o(A);
|
|
1764
|
-
return
|
|
1766
|
+
return l && s(A, {
|
|
1765
1767
|
doubleClickZoom: !1,
|
|
1766
|
-
dragPan:
|
|
1768
|
+
dragPan: h !== "lasso"
|
|
1767
1769
|
}), () => {
|
|
1768
1770
|
s(A, E);
|
|
1769
1771
|
};
|
|
1770
|
-
}, [
|
|
1772
|
+
}, [l, o, A, h, s]);
|
|
1771
1773
|
const v = RA(() => ee({
|
|
1772
|
-
values:
|
|
1773
|
-
}), [
|
|
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([]),
|
|
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
|
-
|
|
1789
|
-
|
|
1790
|
-
}, [
|
|
1790
|
+
$(() => {
|
|
1791
|
+
x();
|
|
1792
|
+
}, [x]);
|
|
1791
1793
|
const D = TA(v.length);
|
|
1792
|
-
|
|
1793
|
-
b(A, [
|
|
1794
|
+
$(() => (w(A, [wA]), () => {
|
|
1795
|
+
b(A, [wA]);
|
|
1794
1796
|
}), [w, A, b]);
|
|
1795
|
-
const
|
|
1796
|
-
|
|
1797
|
-
}, [A,
|
|
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
|
|
1801
|
-
|
|
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,
|
|
1809
|
+
}, [i, r?.mask, A, p]), N = EA(({
|
|
1808
1810
|
editType: E,
|
|
1809
1811
|
updatedData: _
|
|
1810
1812
|
}) => {
|
|
1811
1813
|
if (E === rA.cancel) {
|
|
1812
|
-
|
|
1814
|
+
P();
|
|
1813
1815
|
return;
|
|
1814
1816
|
}
|
|
1815
|
-
M(_), E !== rA.updateTentativeFeature && E === rA.addFeature && (
|
|
1816
|
-
}, [R,
|
|
1817
|
-
return
|
|
1818
|
-
const E =
|
|
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:
|
|
1823
|
+
fill: O
|
|
1822
1824
|
} = e.colors.editing, {
|
|
1823
|
-
border:
|
|
1825
|
+
border: L,
|
|
1824
1826
|
fill: z
|
|
1825
|
-
} = e.colors.finished,
|
|
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: (
|
|
1835
|
-
const V =
|
|
1836
|
+
onClick: (G) => {
|
|
1837
|
+
const V = G;
|
|
1836
1838
|
V.isGuide || S([V.index]);
|
|
1837
1839
|
}
|
|
1838
1840
|
},
|
|
1839
|
-
getLineColor: (
|
|
1840
|
-
getFillColor: (
|
|
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 ?
|
|
1848
|
+
mode: E ? c : new mt()
|
|
1847
1849
|
});
|
|
1848
|
-
|
|
1849
|
-
}, [B,
|
|
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
|
|
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,
|
|
1865
|
-
!
|
|
1866
|
-
}, [B.features,
|
|
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 _ =
|
|
1870
|
+
const _ = d(A)?.props.layers.find((O) => O.props.id === E);
|
|
1869
1871
|
if (!_) return;
|
|
1870
|
-
|
|
1871
|
-
const T = !
|
|
1872
|
-
|
|
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: !
|
|
1878
|
+
maskId: !l && k.length ? QA : void 0
|
|
1877
1879
|
}
|
|
1878
1880
|
});
|
|
1879
1881
|
});
|
|
1880
|
-
}, [
|
|
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:
|
|
1911
|
+
textOptions: l
|
|
1910
1912
|
}) {
|
|
1911
|
-
const
|
|
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: (
|
|
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: (
|
|
1934
|
-
meters:
|
|
1935
|
+
getText: (c) => t?.getTooltipText?.({
|
|
1936
|
+
meters: c.text,
|
|
1935
1937
|
locale: e,
|
|
1936
1938
|
unit: n,
|
|
1937
|
-
options:
|
|
1939
|
+
options: l
|
|
1938
1940
|
}),
|
|
1939
1941
|
updateTriggers: {
|
|
1940
|
-
getText: [n, e,
|
|
1942
|
+
getText: [n, e, l]
|
|
1941
1943
|
}
|
|
1942
1944
|
}
|
|
1943
1945
|
}
|
|
1944
|
-
}),
|
|
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
|
|
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:
|
|
1963
|
-
distance:
|
|
1964
|
-
finished:
|
|
1965
|
-
locale:
|
|
1966
|
-
positions:
|
|
1967
|
-
clearLayerOnStart:
|
|
1968
|
-
unit:
|
|
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:
|
|
1975
|
+
units: l,
|
|
1974
1976
|
modeSelected: o,
|
|
1975
|
-
distance:
|
|
1976
|
-
finished:
|
|
1977
|
-
locale:
|
|
1978
|
-
positions:
|
|
1979
|
-
unit:
|
|
1980
|
-
clearLayerOnStart:
|
|
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
|
|
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[
|
|
2106
|
-
const
|
|
2107
|
-
let
|
|
2108
|
-
A[
|
|
2109
|
-
const
|
|
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
|
|
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] !==
|
|
2121
|
-
|
|
2122
|
-
}, A[18] = y, A[19] = e, A[20] =
|
|
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[
|
|
2132
|
-
const
|
|
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
|
|
2140
|
+
const O = H(T), L = H(ur);
|
|
2139
2141
|
let z;
|
|
2140
|
-
A[34] !==
|
|
2141
|
-
const
|
|
2142
|
-
let
|
|
2143
|
-
A[37] !== e ? (
|
|
2144
|
-
const V = H(
|
|
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
|
|
2149
|
-
A[42] !== e ? (
|
|
2150
|
-
const
|
|
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[
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
A[
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
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] !==
|
|
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:
|
|
2169
|
-
clearLayerOnStart:
|
|
2170
|
+
distance: l,
|
|
2171
|
+
clearLayerOnStart: h,
|
|
2170
2172
|
modeSelected: v,
|
|
2171
2173
|
enabled: w,
|
|
2172
2174
|
finished: C,
|
|
2173
2175
|
locale: R,
|
|
2174
|
-
modeInstance:
|
|
2176
|
+
modeInstance: O,
|
|
2175
2177
|
positions: V,
|
|
2176
|
-
unit:
|
|
2177
|
-
setDistance:
|
|
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:
|
|
2184
|
+
setUnit: Z,
|
|
2185
|
+
setEnabled: d,
|
|
2184
2186
|
toggleLayer: FA,
|
|
2185
|
-
clearLayer:
|
|
2186
|
-
setModeInstance:
|
|
2187
|
-
}, A[52] =
|
|
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:
|
|
2227
|
-
setDistance:
|
|
2228
|
-
clearLayerOnStart:
|
|
2229
|
-
modeSelected:
|
|
2230
|
-
setModeSelected:
|
|
2231
|
-
enabled:
|
|
2232
|
-
setEnabled:
|
|
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:
|
|
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
|
|
2247
|
-
A[2] !==
|
|
2248
|
-
if (
|
|
2249
|
-
const _ = o[
|
|
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] =
|
|
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] !==
|
|
2258
|
-
let
|
|
2259
|
-
A[13] !== S || A[14] !== C || A[15] !==
|
|
2260
|
-
_ && (
|
|
2261
|
-
}, A[13] = S, A[14] = C, A[15] =
|
|
2262
|
-
const R =
|
|
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] !==
|
|
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:
|
|
2267
|
-
enabled:
|
|
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:
|
|
2275
|
+
modeSelected: p,
|
|
2274
2276
|
modes: o,
|
|
2275
2277
|
units: s,
|
|
2276
2278
|
value: OA({
|
|
2277
|
-
meters:
|
|
2279
|
+
meters: l,
|
|
2278
2280
|
unit: B,
|
|
2279
2281
|
locale: u,
|
|
2280
2282
|
options: r
|
|
2281
2283
|
}),
|
|
2282
2284
|
modeInstance: m,
|
|
2283
|
-
setModeSelected:
|
|
2284
|
-
setDistance:
|
|
2285
|
+
setModeSelected: c,
|
|
2286
|
+
setDistance: a,
|
|
2285
2287
|
setFinished: b,
|
|
2286
|
-
setLocale:
|
|
2288
|
+
setLocale: d,
|
|
2287
2289
|
setPositions: k,
|
|
2288
2290
|
setUnit: M,
|
|
2289
|
-
setEnabled:
|
|
2291
|
+
setEnabled: g,
|
|
2290
2292
|
toggleLayer: R,
|
|
2291
2293
|
clearLayer: C
|
|
2292
|
-
}), A[18] = n, A[19] = C, A[20] =
|
|
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 = [
|
|
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:
|
|
2309
|
-
} = s,
|
|
2310
|
-
let
|
|
2311
|
-
A[2] !== r ? (
|
|
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] =
|
|
2315
|
+
}, A[2] = r, A[3] = f) : f = A[3];
|
|
2314
2316
|
const {
|
|
2315
|
-
setDistance:
|
|
2316
|
-
enabled:
|
|
2317
|
-
finished:
|
|
2318
|
-
setFinished:
|
|
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:
|
|
2323
|
-
} = je(
|
|
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 = (
|
|
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[
|
|
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:
|
|
2334
|
-
}, A[7] = r, A[8] =
|
|
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] !==
|
|
2337
|
-
const
|
|
2338
|
-
return
|
|
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, [
|
|
2343
|
+
B(r, [hA]), y(r, U);
|
|
2342
2344
|
};
|
|
2343
|
-
}, N = [k,
|
|
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] !==
|
|
2346
|
-
C?.forEach((
|
|
2347
|
-
const
|
|
2348
|
-
if (!
|
|
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
|
-
|
|
2351
|
-
const V = !
|
|
2352
|
-
m(
|
|
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
|
-
}, _ = [
|
|
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] !==
|
|
2362
|
+
A[24] !== d || A[25] !== p || A[26] !== g || A[27] !== b ? (T = (U) => {
|
|
2361
2363
|
const {
|
|
2362
|
-
editType:
|
|
2364
|
+
editType: G,
|
|
2363
2365
|
editContext: V
|
|
2364
|
-
} =
|
|
2365
|
-
if (
|
|
2366
|
-
|
|
2366
|
+
} = U;
|
|
2367
|
+
if (G === rA.cancel) {
|
|
2368
|
+
d.resetClickSequence();
|
|
2367
2369
|
return;
|
|
2368
2370
|
}
|
|
2369
|
-
|
|
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] =
|
|
2373
|
-
const
|
|
2374
|
-
let
|
|
2375
|
-
return A[29] !==
|
|
2376
|
-
const
|
|
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 ?? !
|
|
2381
|
+
pickable: i?.pickable ?? !h
|
|
2380
2382
|
},
|
|
2381
|
-
enabled:
|
|
2382
|
-
guideColor:
|
|
2383
|
-
pointColor:
|
|
2383
|
+
enabled: c,
|
|
2384
|
+
guideColor: U,
|
|
2385
|
+
pointColor: G,
|
|
2384
2386
|
locale: w,
|
|
2385
|
-
onEdit:
|
|
2387
|
+
onEdit: O,
|
|
2386
2388
|
unit: u,
|
|
2387
|
-
mode:
|
|
2389
|
+
mode: d,
|
|
2388
2390
|
textOptions: o
|
|
2389
2391
|
});
|
|
2390
|
-
m(
|
|
2391
|
-
}, z = [
|
|
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 = (
|
|
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 =
|
|
2425
|
+
} = I(r), i = CA(Sr);
|
|
2424
2426
|
let o;
|
|
2425
2427
|
if (A[2] !== i || A[3] !== n) {
|
|
2426
|
-
let
|
|
2427
|
-
A[5] !== i ? (
|
|
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,
|
|
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 = (
|
|
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
|
|
2457
|
-
A[7] !== e ? (
|
|
2458
|
-
const
|
|
2459
|
-
let
|
|
2460
|
-
A[9] !== e ? (
|
|
2461
|
-
const
|
|
2462
|
-
let
|
|
2463
|
-
A[11] !== e ? (
|
|
2464
|
-
const
|
|
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 = (
|
|
2467
|
-
const b = I(w), u = I(Qr),
|
|
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] !==
|
|
2478
|
-
const z =
|
|
2479
|
-
if (
|
|
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(
|
|
2484
|
+
n(L, z);
|
|
2483
2485
|
return;
|
|
2484
2486
|
}
|
|
2485
|
-
z(e,
|
|
2486
|
-
}, A[19] = e, A[20] = n, A[21] =
|
|
2487
|
-
const
|
|
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 = (
|
|
2490
|
-
m(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
|
|
2494
|
+
const P = D;
|
|
2493
2495
|
let R;
|
|
2494
|
-
A[29] !== u || A[30] !== e || A[31] !== i || A[32] !== v ? (R = (
|
|
2495
|
-
const
|
|
2496
|
-
v(e,
|
|
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 ? (_ = (...
|
|
2501
|
-
const z =
|
|
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
|
|
2506
|
-
return A[38] !== s || A[39] !== C || A[40] !== b || A[41] !== N || A[42] !== T || A[43] !==
|
|
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",
|
|
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
|
|
2556
|
-
return
|
|
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,
|
|
2566
|
-
return
|
|
2567
|
+
function s(u, d) {
|
|
2568
|
+
return d.clone !== !1 && d.isMergeableObject(u) ? w(o(u), u, d) : u;
|
|
2567
2569
|
}
|
|
2568
|
-
function
|
|
2569
|
-
return u.concat(
|
|
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
|
|
2574
|
-
if (!
|
|
2575
|
-
var m =
|
|
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
|
|
2579
|
-
return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(u).filter(function(
|
|
2580
|
-
return Object.propertyIsEnumerable.call(u,
|
|
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
|
|
2584
|
-
return Object.keys(u).concat(
|
|
2585
|
+
function p(u) {
|
|
2586
|
+
return Object.keys(u).concat(f(u));
|
|
2585
2587
|
}
|
|
2586
|
-
function
|
|
2588
|
+
function c(u, d) {
|
|
2587
2589
|
try {
|
|
2588
|
-
return
|
|
2590
|
+
return d in u;
|
|
2589
2591
|
} catch {
|
|
2590
2592
|
return !1;
|
|
2591
2593
|
}
|
|
2592
2594
|
}
|
|
2593
|
-
function
|
|
2594
|
-
return
|
|
2595
|
+
function h(u, d) {
|
|
2596
|
+
return c(u, d) && !(Object.hasOwnProperty.call(u, d) && Object.propertyIsEnumerable.call(u, d));
|
|
2595
2597
|
}
|
|
2596
|
-
function
|
|
2598
|
+
function g(u, d, m) {
|
|
2597
2599
|
var v = {};
|
|
2598
|
-
return m.isMergeableObject(u) &&
|
|
2600
|
+
return m.isMergeableObject(u) && p(u).forEach(function(y) {
|
|
2599
2601
|
v[y] = s(u[y], m);
|
|
2600
|
-
}),
|
|
2601
|
-
|
|
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,
|
|
2605
|
-
m = m || {}, m.arrayMerge = m.arrayMerge ||
|
|
2606
|
-
var v = Array.isArray(
|
|
2607
|
-
return k ? v ? m.arrayMerge(u,
|
|
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,
|
|
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,
|
|
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:
|
|
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:
|
|
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 =
|
|
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
|
-
...
|
|
2677
|
+
...l
|
|
2676
2678
|
}) {
|
|
2677
|
-
let
|
|
2679
|
+
let a = Rr({
|
|
2678
2680
|
url: o,
|
|
2679
2681
|
params: i
|
|
2680
|
-
}),
|
|
2681
|
-
n ===
|
|
2682
|
-
const
|
|
2683
|
-
body:
|
|
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:
|
|
2686
|
-
...
|
|
2687
|
+
method: p,
|
|
2688
|
+
...l
|
|
2687
2689
|
});
|
|
2688
|
-
t && (
|
|
2689
|
-
const
|
|
2690
|
-
if (!
|
|
2691
|
-
const
|
|
2692
|
-
throw new Error(
|
|
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
|
|
2696
|
+
return h.status === 204 ? Promise.resolve() : await h.json();
|
|
2695
2697
|
}
|
|
2696
|
-
const
|
|
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 =
|
|
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 ===
|
|
2757
|
+
if (e === bA.Custom)
|
|
2756
2758
|
throw new Error("Custom aggregation not supported for geojson");
|
|
2757
|
-
(A && A !== "*" || e !==
|
|
2758
|
-
const
|
|
2759
|
-
return
|
|
2760
|
-
value:
|
|
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 =
|
|
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
|
|
2773
|
-
return
|
|
2774
|
-
data:
|
|
2775
|
-
valuesColumns:
|
|
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 =
|
|
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:
|
|
2790
|
-
orderBy:
|
|
2791
|
-
rawResult:
|
|
2791
|
+
othersThreshold: l,
|
|
2792
|
+
orderBy: a = "frequency_desc",
|
|
2793
|
+
rawResult: f
|
|
2792
2794
|
}) {
|
|
2793
|
-
const
|
|
2794
|
-
if (!
|
|
2795
|
+
const p = this._getFilteredFeatures(s, i, o);
|
|
2796
|
+
if (!p.length)
|
|
2795
2797
|
return Promise.resolve([]);
|
|
2796
|
-
|
|
2797
|
-
const
|
|
2798
|
-
data:
|
|
2799
|
-
valuesColumns:
|
|
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:
|
|
2804
|
-
orderBy:
|
|
2805
|
+
othersThreshold: l,
|
|
2806
|
+
orderBy: a
|
|
2805
2807
|
});
|
|
2806
|
-
return
|
|
2808
|
+
return f ? Promise.resolve(c) : l ? Promise.resolve([...c?.rows ?? [], {
|
|
2807
2809
|
name: Nt,
|
|
2808
|
-
value:
|
|
2809
|
-
}]) : Promise.resolve(
|
|
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
|
|
2821
|
-
return
|
|
2822
|
-
data:
|
|
2823
|
-
xAxisColumns:
|
|
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:
|
|
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:
|
|
2838
|
-
filters:
|
|
2839
|
-
filterOwner:
|
|
2840
|
-
spatialFilter:
|
|
2839
|
+
limit: l = 10,
|
|
2840
|
+
filters: a,
|
|
2841
|
+
filterOwner: f,
|
|
2842
|
+
spatialFilter: p
|
|
2841
2843
|
}) {
|
|
2842
|
-
let
|
|
2843
|
-
if (!
|
|
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.'),
|
|
2849
|
-
let
|
|
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
|
|
2855
|
-
return
|
|
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:
|
|
2863
|
-
totalCount:
|
|
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:
|
|
2876
|
+
spatialFilter: l
|
|
2875
2877
|
}) {
|
|
2876
|
-
const
|
|
2877
|
-
if (!
|
|
2878
|
+
const a = this._getFilteredFeatures(l, o, s);
|
|
2879
|
+
if (!a.length)
|
|
2878
2880
|
return Promise.resolve({
|
|
2879
2881
|
rows: []
|
|
2880
2882
|
});
|
|
2881
|
-
|
|
2882
|
-
const
|
|
2883
|
-
data:
|
|
2884
|
-
valuesColumns:
|
|
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:
|
|
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 ? (
|
|
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
|
-
|
|
2919
|
+
_A(typeof A != "string", "Unsupported geojson SQL aggregation");
|
|
2918
2920
|
const o = {}, s = /* @__PURE__ */ new Set();
|
|
2919
2921
|
for (const {
|
|
2920
|
-
column:
|
|
2921
|
-
operation:
|
|
2922
|
-
alias:
|
|
2922
|
+
column: l,
|
|
2923
|
+
operation: a,
|
|
2924
|
+
alias: f
|
|
2923
2925
|
} of A) {
|
|
2924
|
-
(
|
|
2925
|
-
const
|
|
2926
|
-
|
|
2927
|
-
const
|
|
2928
|
-
|
|
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
|
|
2951
|
+
function _A(t, A) {
|
|
2950
2952
|
if (!t)
|
|
2951
2953
|
throw new Error(A);
|
|
2952
2954
|
}
|
|
2953
|
-
function
|
|
2954
|
-
const e = Array.from(new Set(A.map(
|
|
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
|
|
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:
|
|
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
|
|
3014
|
-
const
|
|
3015
|
-
|
|
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
|
|
3019
|
+
function a() {
|
|
3018
3020
|
s(new Error(String(r.reason)));
|
|
3019
3021
|
}
|
|
3020
|
-
n.addEventListener("message",
|
|
3021
|
-
const
|
|
3022
|
-
o =
|
|
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
|
|
3029
|
-
n.removeEventListener("message",
|
|
3030
|
-
}),
|
|
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:
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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],
|
|
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
|
|
3130
|
-
source:
|
|
3131
|
-
}), i[e] =
|
|
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,
|
|
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
|
|
3332
|
-
e[6] !== s || e[7] !== n || e[8] !== i ? (
|
|
3333
|
-
const
|
|
3334
|
-
if (!
|
|
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
|
-
|
|
3337
|
-
const
|
|
3338
|
-
let
|
|
3339
|
-
e[10] !==
|
|
3340
|
-
const
|
|
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] !==
|
|
3360
|
+
if (e[17] !== b || e[18] !== g || e[19] !== p) {
|
|
3359
3361
|
let m;
|
|
3360
|
-
e[21] !== b || e[22] !==
|
|
3362
|
+
e[21] !== b || e[22] !== g ? (m = (v, y) => {
|
|
3361
3363
|
const k = b[y];
|
|
3362
3364
|
if (!k?.length)
|
|
3363
|
-
return
|
|
3364
|
-
if (!
|
|
3365
|
+
return g[y];
|
|
3366
|
+
if (!g[y])
|
|
3365
3367
|
return k.reduce(An, {});
|
|
3366
3368
|
const B = k.reduce(Xr, {});
|
|
3367
|
-
return
|
|
3368
|
-
}, e[21] = b, e[22] =
|
|
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
|
|
3372
|
-
return s ?
|
|
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
|
|
3399
|
-
e[4] !== s || e[5] !== i || e[6] !== o ? (
|
|
3400
|
-
const
|
|
3401
|
-
if (!
|
|
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
|
-
|
|
3404
|
-
const
|
|
3405
|
-
let
|
|
3406
|
-
if (e[8] !== n || e[9] !==
|
|
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],
|
|
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
|
-
|
|
3414
|
-
const
|
|
3415
|
-
return s ?
|
|
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
|
|
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[
|
|
3445
|
-
const
|
|
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] !==
|
|
3449
|
+
if (A[9] !== e || A[10] !== c || A[11] !== g || A[12] !== a) {
|
|
3448
3450
|
let u;
|
|
3449
|
-
A[14] !== e || A[15] !==
|
|
3450
|
-
const v = [
|
|
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 =
|
|
3454
|
+
const k = c[m];
|
|
3453
3455
|
return k && v.push(k), v;
|
|
3454
|
-
}, A[14] = e, A[15] =
|
|
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
|
|
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
|
|
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,
|
|
3490
|
-
let
|
|
3491
|
-
A[0] !==
|
|
3492
|
-
const
|
|
3493
|
-
if (!
|
|
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
|
|
3496
|
-
let
|
|
3497
|
-
A[4] !== e || A[5] !==
|
|
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:
|
|
3500
|
-
}, A[4] = e, A[5] =
|
|
3501
|
-
const
|
|
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] !==
|
|
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] !==
|
|
3508
|
+
if (A[9] !== g || A[10] !== o) {
|
|
3507
3509
|
let B;
|
|
3508
|
-
A[12] !==
|
|
3509
|
-
const S = "column" in o ? $e(o.column, C,
|
|
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
|
-
...
|
|
3515
|
-
operationExp:
|
|
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(
|
|
3522
|
-
}, A[12] =
|
|
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
|
|
3527
|
+
const d = u;
|
|
3526
3528
|
let m;
|
|
3527
|
-
if (A[15] !==
|
|
3529
|
+
if (A[15] !== g || A[16] !== b || A[17] !== d) {
|
|
3528
3530
|
let B;
|
|
3529
|
-
A[19] !== b || A[20] !==
|
|
3530
|
-
const S =
|
|
3531
|
-
return D &&
|
|
3532
|
-
}, A[19] = b, A[20] =
|
|
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 (
|
|
3537
|
-
const B =
|
|
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] !==
|
|
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] !==
|
|
3550
|
+
return A[28] !== v || A[29] !== y || A[30] !== c ? (k = {
|
|
3549
3551
|
mergedFilters: y,
|
|
3550
|
-
widgetModel:
|
|
3552
|
+
widgetModel: c,
|
|
3551
3553
|
queryKey: v
|
|
3552
|
-
}, A[28] = v, A[29] = y, A[30] =
|
|
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
|
|
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:
|
|
3566
|
-
widgetProps:
|
|
3567
|
-
additionalFilter:
|
|
3568
|
-
useQueryProps:
|
|
3567
|
+
sourcesId: l,
|
|
3568
|
+
widgetProps: a,
|
|
3569
|
+
additionalFilter: f,
|
|
3570
|
+
useQueryProps: p
|
|
3569
3571
|
} = n;
|
|
3570
|
-
let
|
|
3571
|
-
i[0] !==
|
|
3572
|
-
let
|
|
3573
|
-
i[2] !==
|
|
3574
|
-
enabled:
|
|
3575
|
-
...
|
|
3576
|
-
} =
|
|
3577
|
-
const w =
|
|
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] !==
|
|
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
|
|
3582
|
-
i[8] !== u || i[9] !== o || i[10] !==
|
|
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:
|
|
3587
|
+
additionalFilter: f,
|
|
3586
3588
|
sourcesId: u,
|
|
3587
|
-
widgetProps:
|
|
3588
|
-
}, i[8] = u, i[9] = o, i[10] =
|
|
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(
|
|
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] !==
|
|
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
|
-
} =
|
|
3601
|
-
const
|
|
3602
|
-
if (!
|
|
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
|
|
3605
|
-
...
|
|
3606
|
-
..."column" in
|
|
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
|
-
|
|
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
|
|
3621
|
+
return L({
|
|
3620
3622
|
...q,
|
|
3621
3623
|
filters: m?.[T],
|
|
3622
3624
|
signal: D
|
|
3623
3625
|
});
|
|
3624
|
-
}), R = await Promise.allSettled(
|
|
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] =
|
|
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] !==
|
|
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
|
-
...
|
|
3647
|
-
}, i[21] = k, i[22] = B, i[23] = M, i[24] =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
-
} =
|
|
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
|
|
3766
|
-
A[2] !== i ? (
|
|
3767
|
-
const
|
|
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[
|
|
3772
|
-
let
|
|
3773
|
-
|
|
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 =
|
|
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
|
|
3787
|
-
let
|
|
3788
|
-
e[8] !== n ? (
|
|
3788
|
+
const l = s;
|
|
3789
|
+
let a;
|
|
3790
|
+
e[8] !== n ? (a = (b) => {
|
|
3789
3791
|
const {
|
|
3790
3792
|
id: u,
|
|
3791
|
-
visible:
|
|
3793
|
+
visible: d,
|
|
3792
3794
|
...m
|
|
3793
3795
|
} = b;
|
|
3794
3796
|
n(u, {
|
|
3795
3797
|
props: {
|
|
3796
|
-
visible:
|
|
3798
|
+
visible: d
|
|
3797
3799
|
},
|
|
3798
3800
|
legend: m
|
|
3799
3801
|
});
|
|
3800
|
-
}, e[8] = n, e[9] =
|
|
3801
|
-
const
|
|
3802
|
-
let
|
|
3803
|
-
e[10] !== n ? (
|
|
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:
|
|
3808
|
+
collapsed: d
|
|
3807
3809
|
} = b;
|
|
3808
3810
|
n(u, {
|
|
3809
3811
|
legend: {
|
|
3810
|
-
collapsed:
|
|
3812
|
+
collapsed: d
|
|
3811
3813
|
}
|
|
3812
3814
|
});
|
|
3813
|
-
}, e[10] = n, e[11] =
|
|
3814
|
-
const
|
|
3815
|
-
let
|
|
3816
|
-
e[12] !== n ? (
|
|
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:
|
|
3821
|
+
opacity: d
|
|
3820
3822
|
} = b;
|
|
3821
3823
|
n(u, {
|
|
3822
3824
|
props: {
|
|
3823
|
-
opacity:
|
|
3825
|
+
opacity: d
|
|
3824
3826
|
}
|
|
3825
3827
|
});
|
|
3826
|
-
}, e[12] = n, e[13] =
|
|
3827
|
-
const
|
|
3828
|
+
}, e[12] = n, e[13] = h) : h = e[13];
|
|
3829
|
+
const g = h;
|
|
3828
3830
|
let w;
|
|
3829
|
-
return e[14] !==
|
|
3830
|
-
legend:
|
|
3831
|
-
onChangeVisibility:
|
|
3832
|
-
onChangeOpacity:
|
|
3833
|
-
onChangeRowCollapse:
|
|
3834
|
-
}, e[14] =
|
|
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),
|
|
3849
|
-
type:
|
|
3850
|
-
} =
|
|
3851
|
-
const u =
|
|
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 (
|
|
3857
|
-
const k =
|
|
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 =
|
|
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
|
-
}, [
|
|
3878
|
+
}, [l, g, t, a]);
|
|
3877
3879
|
return {
|
|
3878
|
-
takeScreenshot:
|
|
3879
|
-
o(void 0), n(!0),
|
|
3880
|
-
}, [w,
|
|
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
|
|
3905
|
-
let
|
|
3906
|
-
return A[6] !== o || A[7] !==
|
|
3907
|
-
spatialFilter:
|
|
3908
|
-
staticSpatialFilter:
|
|
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] =
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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
|
|
4007
|
-
let
|
|
4008
|
-
A[6] !== e ? (
|
|
4008
|
+
const l = yn(s);
|
|
4009
|
+
let a;
|
|
4010
|
+
A[6] !== e ? (a = {
|
|
4009
4011
|
mapId: e
|
|
4010
|
-
}, A[6] = e, A[7] =
|
|
4011
|
-
const
|
|
4012
|
-
let
|
|
4013
|
-
return A[8] !==
|
|
4014
|
-
spatialFilter:
|
|
4015
|
-
staticSpatialFilter:
|
|
4016
|
-
lassoToolsSpatialFilter:
|
|
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] =
|
|
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 = (
|
|
4028
|
-
const i =
|
|
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
|
|
4034
|
+
const a = ee({
|
|
4033
4035
|
values: i
|
|
4034
4036
|
}).filter(Bn);
|
|
4035
|
-
if (!
|
|
4036
|
-
let
|
|
4037
|
-
A[4] === Symbol.for("react.memo_cache_sentinel") ? (
|
|
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 =
|
|
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
|
|
4048
|
+
let l;
|
|
4047
4049
|
if (A[5] !== r || A[6] !== s || A[7] !== e) {
|
|
4048
|
-
|
|
4049
|
-
let
|
|
4050
|
-
|
|
4051
|
-
const
|
|
4052
|
-
let
|
|
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
|
|
4055
|
-
A[9] !== r ? (
|
|
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
|
|
4058
|
-
const
|
|
4059
|
-
if (
|
|
4060
|
-
const w =
|
|
4061
|
-
|
|
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
|
|
4065
|
-
const
|
|
4066
|
-
return
|
|
4067
|
-
}).map((
|
|
4068
|
-
const w = s[
|
|
4069
|
-
return `${
|
|
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
|
|
4072
|
-
|
|
4073
|
-
A[5] = r, A[6] = s, A[7] = e, A[8] =
|
|
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
|
-
|
|
4076
|
-
return
|
|
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 = (
|
|
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
|
|
4110
|
-
A[2] === Symbol.for("react.memo_cache_sentinel") ? (
|
|
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
|
|
4114
|
-
A[3] !== i ? (
|
|
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
|
|
4119
|
+
let l;
|
|
4118
4120
|
if (A[5] !== r || A[6] !== s || A[7] !== e) {
|
|
4119
|
-
|
|
4120
|
-
let
|
|
4121
|
-
|
|
4122
|
-
const
|
|
4123
|
-
let
|
|
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
|
|
4126
|
-
A[9] !== r ? (
|
|
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
|
|
4129
|
-
const
|
|
4130
|
-
if (
|
|
4131
|
-
const w =
|
|
4132
|
-
if (!
|
|
4133
|
-
const u =
|
|
4134
|
-
|
|
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
|
-
|
|
4138
|
+
l.push(a.get(b));
|
|
4137
4139
|
}
|
|
4138
4140
|
}
|
|
4139
|
-
const
|
|
4140
|
-
const
|
|
4141
|
-
return
|
|
4142
|
-
}).map((
|
|
4143
|
-
const w = s[
|
|
4144
|
-
return `static:${
|
|
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
|
|
4147
|
-
|
|
4148
|
-
A[5] = r, A[6] = s, A[7] = e, A[8] =
|
|
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
|
-
|
|
4151
|
-
return
|
|
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
|
|
4174
|
+
const mA = {
|
|
4173
4175
|
currency: "CURRENCY",
|
|
4174
4176
|
default: "DEFAULT",
|
|
4175
4177
|
number: "NUMBER"
|
|
4176
4178
|
}, Be = {
|
|
4177
|
-
[
|
|
4178
|
-
type:
|
|
4179
|
+
[mA.currency]: {
|
|
4180
|
+
type: mA.currency,
|
|
4179
4181
|
format: (t, A) => It(t, A)
|
|
4180
4182
|
},
|
|
4181
|
-
[
|
|
4182
|
-
type:
|
|
4183
|
+
[mA.number]: {
|
|
4184
|
+
type: mA.number,
|
|
4183
4185
|
format: (t, A) => Te(t, A)
|
|
4184
4186
|
},
|
|
4185
|
-
[
|
|
4186
|
-
type:
|
|
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:
|
|
4200
|
-
getValue:
|
|
4201
|
+
getTitle: l = Ln,
|
|
4202
|
+
getValue: a = Qn
|
|
4201
4203
|
}) {
|
|
4202
|
-
const
|
|
4203
|
-
const w = A[
|
|
4204
|
-
return
|
|
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
|
|
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[
|
|
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) =>
|
|
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
|
|
4269
|
-
A[2] !== r ? (
|
|
4270
|
-
const
|
|
4271
|
-
let
|
|
4272
|
-
A[4] !== r || A[5] !==
|
|
4273
|
-
const w =
|
|
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] !==
|
|
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
|
|
4278
|
-
A[10] !== r || A[11] !==
|
|
4279
|
-
const m =
|
|
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] !==
|
|
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:
|
|
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] =
|
|
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:
|
|
4312
|
-
apiVersion:
|
|
4313
|
+
params: l,
|
|
4314
|
+
apiVersion: a = re
|
|
4313
4315
|
}) {
|
|
4314
|
-
const
|
|
4316
|
+
const f = `${t}/${a}/stats/${A}/${n}`;
|
|
4315
4317
|
return He({
|
|
4316
4318
|
accessToken: e,
|
|
4317
4319
|
signal: i,
|
|
4318
|
-
url:
|
|
4319
|
-
method:
|
|
4320
|
+
url: f,
|
|
4321
|
+
method: yA.get,
|
|
4320
4322
|
params: {
|
|
4321
4323
|
q: r,
|
|
4322
4324
|
...s,
|
|
4323
|
-
...
|
|
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:
|
|
4341
|
+
apiVersion: l = re
|
|
4340
4342
|
}) {
|
|
4341
|
-
const
|
|
4343
|
+
const a = `${t}/${l}/stats/${A}/${r}/${n}`;
|
|
4342
4344
|
return He({
|
|
4343
4345
|
accessToken: e,
|
|
4344
4346
|
signal: o,
|
|
4345
|
-
url:
|
|
4346
|
-
method:
|
|
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
|
|
4363
|
-
A[0] !== s ? (
|
|
4364
|
-
let
|
|
4365
|
-
A[2] !==
|
|
4366
|
-
enabled:
|
|
4367
|
-
...
|
|
4368
|
-
} =
|
|
4369
|
-
const
|
|
4370
|
-
let
|
|
4371
|
-
A[5] !== r ? (
|
|
4372
|
-
const
|
|
4373
|
-
let
|
|
4374
|
-
A[7] !==
|
|
4375
|
-
queryKeyPrefix:
|
|
4376
|
-
sourceId:
|
|
4377
|
-
}, A[7] =
|
|
4378
|
-
const w = Ke(
|
|
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] !==
|
|
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(
|
|
4393
|
+
select(d) {
|
|
4392
4394
|
return {
|
|
4393
|
-
...
|
|
4394
|
-
type:
|
|
4395
|
+
...d,
|
|
4396
|
+
type: d.type.toLowerCase()
|
|
4395
4397
|
};
|
|
4396
4398
|
},
|
|
4397
|
-
enabled: !!e &&
|
|
4398
|
-
...
|
|
4399
|
-
}, A[16] =
|
|
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
|
|
4493
|
-
return o.sum +=
|
|
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
|
|
4504
|
-
|
|
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
|
-
|
|
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
|
-
|
|
4560
|
+
BA as INTL_UNITS,
|
|
4559
4561
|
rr as LassoTools,
|
|
4560
4562
|
F0 as LassoToolsProvider,
|
|
4561
|
-
|
|
4562
|
-
|
|
4563
|
+
MA as MAPS_BASEMAP,
|
|
4564
|
+
wA as MAP_LASSO_TOOLS_LAYER_ID,
|
|
4563
4565
|
QA as MAP_MASK_LAYER_ID,
|
|
4564
|
-
|
|
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
|
-
|
|
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
|
-
|
|
4612
|
-
|
|
4613
|
+
K as useLassoToolsState,
|
|
4614
|
+
CA as useLayerStore,
|
|
4613
4615
|
_r as useLayers,
|
|
4614
4616
|
Hi as useLegend,
|
|
4615
4617
|
Yi as useMapScreenshot,
|